diff --git a/package-lock.json b/package-lock.json index 384d5a8a436..023a08f2968 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,17 +9,17 @@ "version": "0.0.0", "hasInstallScript": true, "dependencies": { - "@angular/animations": "^21.1.3", - "@angular/common": "^21.1.3", - "@angular/compiler": "^21.1.3", - "@angular/core": "^21.1.3", - "@angular/elements": "^21.1.3", - "@angular/forms": "^21.1.3", - "@angular/platform-browser": "^21.1.3", - "@angular/platform-browser-dynamic": "^21.1.3", - "@angular/platform-server": "^21.1.3", - "@angular/router": "^21.1.3", - "@angular/ssr": "^21.1.2", + "@angular/animations": "^22.0.0-rc.0", + "@angular/common": "^22.0.0-rc.0", + "@angular/compiler": "^22.0.0-rc.0", + "@angular/core": "^22.0.0-rc.0", + "@angular/elements": "^22.0.0-rc.0", + "@angular/forms": "^22.0.0-rc.0", + "@angular/platform-browser": "^22.0.0-rc.0", + "@angular/platform-browser-dynamic": "^22.0.0-rc.0", + "@angular/platform-server": "^22.0.0-rc.0", + "@angular/router": "^22.0.0-rc.0", + "@angular/ssr": "^22.0.0-rc.0", "@igniteui/material-icons-extended": "^3.1.0", "@lit-labs/ssr-dom-shim": "^1.3.0", "@types/source-map": "0.5.2", @@ -39,16 +39,16 @@ "zone.js": "~0.16.0" }, "devDependencies": { - "@angular-devkit/schematics": "^21.1.2", + "@angular-devkit/schematics": "^22.0.0-rc.0", "@angular-eslint/builder": "^21.2.0", "@angular-eslint/eslint-plugin": "^21.2.0", "@angular-eslint/eslint-plugin-template": "^21.2.0", "@angular-eslint/schematics": "^21.2.0", "@angular-eslint/template-parser": "^21.2.0", - "@angular/build": "^21.1.2", - "@angular/cli": "^21.1.2", - "@angular/compiler-cli": "^21.1.3", - "@angular/language-service": "^21.1.3", + "@angular/build": "^22.0.0-rc.0", + "@angular/cli": "^22.0.0-rc.0", + "@angular/compiler-cli": "^22.0.0-rc.0", + "@angular/language-service": "^22.0.0-rc.0", "@angularclass/hmr": "^3.0.0", "@microsoft/signalr": "^7.0.12", "@types/estree": "^1.0.0", @@ -82,6 +82,7 @@ "igniteui-i18n-resources": "^1.0.2", "igniteui-sassdoc-theme": "^2.1.0", "igniteui-webcomponents": "^7.0.0", + "istanbul-lib-instrument": "^6.0.3", "jasmine": "^5.6.0", "jasmine-core": "^5.6.0", "karma": "^6.4.4", @@ -93,7 +94,7 @@ "karma-parallel": "^0.3.1", "karma-spec-reporter": "^0.0.36", "lit-html": "^3.2.1", - "ng-packagr": "^21.0.0", + "ng-packagr": "^22.0.0-next.4", "postcss": "^8.5.1", "postcss-scss": "^4.0.6", "prettier": "^3.3.3", @@ -109,7 +110,7 @@ "ts-node": "^10.8.1", "typedoc": "^0.28.14", "typedoc-plugin-localization": "^3.1.0", - "typescript": "5.9.3" + "typescript": "6.0.3" } }, "node_modules/@adobe/css-tools": { @@ -120,57 +121,57 @@ "license": "MIT" }, "node_modules/@algolia/abtesting": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@algolia/abtesting/-/abtesting-1.14.1.tgz", - "integrity": "sha512-Dkj0BgPiLAaim9sbQ97UKDFHJE/880wgStAM18U++NaJ/2Cws34J5731ovJifr6E3Pv4T2CqvMXf8qLCC417Ew==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@algolia/abtesting/-/abtesting-1.18.0.tgz", + "integrity": "sha512-8siuLG+FIns1AjZ/g2SDVwHz9S+ObacDQISEJvS8XsNei1zl3FXqfqQrBpmrG7ACWCyesXHbicMJtvRbg00FEw==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-abtesting": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.48.1.tgz", - "integrity": "sha512-LV5qCJdj+/m9I+Aj91o+glYszrzd7CX6NgKaYdTOj4+tUYfbS62pwYgUfZprYNayhkQpVFcrW8x8ZlIHpS23Vw==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.52.0.tgz", + "integrity": "sha512-wtwPgyPmO7b7sQPVgoK29c1VpfS08DnnJCmxX/oU1pV2DlMRJCzQcLN7JSloYpodyKHwM8+9wOzlAM0co3TDmA==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-analytics": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.48.1.tgz", - "integrity": "sha512-/AVoMqHhPm14CcHq7mwB+bUJbfCv+jrxlNvRjXAuO+TQa+V37N8k1b0ijaRBPdmSjULMd8KtJbQyUyabXOu6Kg==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.52.0.tgz", + "integrity": "sha512-9KY36bRl4AH7RjqSeDDOKnjsz4IxQFBEOB8/fWmEbdQe+Isbs5jGzVJu9NEPQ1Tgwxlf8Uf07Swj3jZyMNUZ2g==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-common": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.48.1.tgz", - "integrity": "sha512-VXO+qu2Ep6ota28ktvBm3sG53wUHS2n7bgLWmce5jTskdlCD0/JrV4tnBm1l7qpla1CeoQb8D7ShFhad+UoSOw==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.52.0.tgz", + "integrity": "sha512-3a/qM3dzJqqfTx7Yrw7uGQ98I3Q0rDfb4Vkv0wEzko96l7YQMxfBVz/VbLq2N+c59GweYv6Vhp8mPeqnWJSITw==", "dev": true, "license": "MIT", "engines": { @@ -178,151 +179,151 @@ } }, "node_modules/@algolia/client-insights": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.48.1.tgz", - "integrity": "sha512-zl+Qyb0nLg+Y5YvKp1Ij+u9OaPaKg2/EPzTwKNiVyOHnQJlFxmXyUZL1EInczAZsEY8hVpPCLtNfhMhfxluXKQ==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.52.0.tgz", + "integrity": "sha512-Rki7ACbMcvbQW0BuM84x9dkGHY47ABmv4jU6tYssat2k02p3mIUms2YOLUAMeknhmnFsj6lb6ZzOXdMWMyc1sA==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-personalization": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.48.1.tgz", - "integrity": "sha512-r89Qf9Oo9mKWQXumRu/1LtvVJAmEDpn8mHZMc485pRfQUMAwSSrsnaw1tQ3sszqzEgAr1c7rw6fjBI+zrAXTOw==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.52.0.tgz", + "integrity": "sha512-96s4Uzc3kk+/f4jJXIVVGWP5XlngOGNQ1x6hW9AT59pOixHlOs5tqJg+ZUS/GQ6h/iYP0ceQcmxDQeLyCLTaDQ==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-query-suggestions": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.48.1.tgz", - "integrity": "sha512-TPKNPKfghKG/bMSc7mQYD9HxHRUkBZA4q1PEmHgICaSeHQscGqL4wBrKkhfPlDV1uYBKW02pbFMUhsOt7p4ZpA==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.52.0.tgz", + "integrity": "sha512-lqeycNpSPe5Qa0OUWpejVvYQjQWV5nQuLT0a4aq7XzRAvCxprV/6Lf841EygdD2nrFnuS58ok7Au1uOtXzpnkg==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-search": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.48.1.tgz", - "integrity": "sha512-4Fu7dnzQyQmMFknYwTiN/HxPbH4DyxvQ1m+IxpPp5oslOgz8m6PG5qhiGbqJzH4HiT1I58ecDiCAC716UyVA8Q==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.52.0.tgz", + "integrity": "sha512-ly1wETVGRo30cx61O7fetESN+ElL9c9K+bD/AVgnT1ar4c6v+/Yqjrhdtu6Fm4D0s4NZP081Isf6tunH1wUXHg==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/ingestion": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.48.1.tgz", - "integrity": "sha512-/RFq3TqtXDUUawwic/A9xylA2P3LDMO8dNhphHAUOU51b1ZLHrmZ6YYJm3df1APz7xLY1aht6okCQf+/vmrV9w==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.52.0.tgz", + "integrity": "sha512-U4EeTvgmluRjj39ykZSAd5X+a6LD5m7/mcOWDmB7hqm1R6QY0yT8jLxpNVEjYhzgEN5hcDGW6X67EWQY8KiYGQ==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/monitoring": { - "version": "1.48.1", - "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.48.1.tgz", - "integrity": "sha512-Of0jTeAZRyRhC7XzDSjJef0aBkgRcvRAaw0ooYRlOw57APii7lZdq+layuNdeL72BRq1snaJhoMMwkmLIpJScw==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.52.0.tgz", + "integrity": "sha512-FCPnDcILfpTE94u7BVlV4DmnSV5wE3+j25EEF+3dYPrVzkVCSoAHs318oWDGxnxsAgiL4HpL12Jc4XHmw9shpA==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/recommend": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.48.1.tgz", - "integrity": "sha512-bE7JcpFXzxF5zHwj/vkl2eiCBvyR1zQ7aoUdO+GDXxGp0DGw7nI0p8Xj6u8VmRQ+RDuPcICFQcCwRIJT5tDJFw==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.52.0.tgz", + "integrity": "sha512-br3DO7n4N8CXwTRbZS0MnB4WQ9YHfNjCwkCEzVR/wek/qNTDQKDb0nROmkFaNZ8ucUqUVKZi074dbwMwRDlK8Q==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/client-common": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.48.1.tgz", - "integrity": "sha512-MK3wZ2koLDnvH/AmqIF1EKbJlhRS5j74OZGkLpxI4rYvNi9Jn/C7vb5DytBnQ4KUWts7QsmbdwHkxY5txQHXVw==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.52.0.tgz", + "integrity": "sha512-b0T/Ca2c9KyEslKsVrGZvbe1UrrKKSdfXhBZ2pbpKahFUzJfziRZ0urbOm7V65O0tO/jwU+Lo/+bIiiyhzGt8w==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1" + "@algolia/client-common": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-fetch": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.48.1.tgz", - "integrity": "sha512-2oDT43Y5HWRSIQMPQI4tA/W+TN/N2tjggZCUsqQV440kxzzoPGsvv9QP1GhQ4CoDa+yn6ygUsGp6Dr+a9sPPSg==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.52.0.tgz", + "integrity": "sha512-ozBT8J/mtD4H4IAojw8QPirlcL2gHrI1BGuZ4/ZXXO/rTE1yQ4VIPJj4mTTbwo4FbkS1MoJsD/DsrqLzhnc4/g==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1" + "@algolia/client-common": "5.52.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-node-http": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.48.1.tgz", - "integrity": "sha512-xcaCqbhupVWhuBP1nwbk1XNvwrGljozutEiLx06mvqDf3o8cHyEgQSHS4fKJM+UAggaWVnnFW+Nne5aQ8SUJXg==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.52.0.tgz", + "integrity": "sha512-gyyWcLD22tnabmoit4iukCXuoRc5HYJuUjPSEa8a0D/f/NlRafpWi52AlAaa4Uu/rsl7saHsJFTNjTptWbu2+A==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.48.1" + "@algolia/client-common": "5.52.0" }, "engines": { "node": ">= 14.0.0" @@ -390,22 +391,67 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "21.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-21.2.7.tgz", - "integrity": "sha512-LYAjjUI1qM7pR/sd0yYt8OLA6ljOOXjcfzV40I5XQNmhAxq90YYS5xwMcixOmWX+z5zvCYGvPXvJGWjzio6SUg==", + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-22.0.0-rc.0.tgz", + "integrity": "sha512-AlkVBr7W3wUTdnFoV+y+zMa4BeRKMgiRRN0F4mLa3qMOsDzKxX+Z26fc7+Dxd/cC40n5r0SjVDXQm+cSUXa3wA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "21.2.7", + "@angular-devkit/core": "22.0.0-rc.0", "jsonc-parser": "3.3.1", "magic-string": "0.30.21", - "ora": "9.3.0", + "ora": "9.4.0", "rxjs": "7.8.2" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/@angular-devkit/core": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.0-rc.0.tgz", + "integrity": "sha512-8rXSWJZOyQQM80U4r/yIYw495TzAJNuV2G3RnxQqtfCkRYTExbERblbSx+eRNQEfmXgNGHCSkPVGUoU97YF7ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "8.20.0", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.4", + "rxjs": "7.8.2", + "source-map": "0.7.6" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^5.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/@angular-eslint/builder": { @@ -487,6 +533,106 @@ "@angular/cli": ">= 21.0.0 < 22.0.0" } }, + "node_modules/@angular-eslint/schematics/node_modules/@angular-devkit/core": { + "version": "21.2.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-21.2.11.tgz", + "integrity": "sha512-kfMNh5X2hOdyr0uNFaaHUJR3OVr4oH2+UhI+FsTu7gqogdgYlHAVHhHAFulfDgtAEOiqpeSQF9RhQnCJl+/LXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "8.18.0", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.4", + "rxjs": "7.8.2", + "source-map": "0.7.6" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^5.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-eslint/schematics/node_modules/@angular-devkit/schematics": { + "version": "21.2.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-21.2.11.tgz", + "integrity": "sha512-69CWZ5/ftLdpUPAwwdAxTNosiGXUyvwdnOfmHsd9NvCT0OSTeq0eQ0UfnGcHASrXIVmnyWiNfBWM1DLqsgBXmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "21.2.11", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.21", + "ora": "9.3.0", + "rxjs": "7.8.2" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-eslint/schematics/node_modules/chalk": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@angular-eslint/schematics/node_modules/ora": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-9.3.0.tgz", + "integrity": "sha512-lBX72MWFduWEf7v7uWf5DHp9Jn5BI8bNPGuFgtXMmr2uDz2Gz2749y3am3agSDdkhHPHYmmxEGSKH85ZLGzgXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^5.6.2", + "cli-cursor": "^5.0.0", + "cli-spinners": "^3.2.0", + "is-interactive": "^2.0.0", + "is-unicode-supported": "^2.1.0", + "log-symbols": "^7.0.1", + "stdin-discarder": "^0.3.1", + "string-width": "^8.1.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@angular-eslint/schematics/node_modules/string-width": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz", + "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-east-asian-width": "^1.5.0", + "strip-ansi": "^7.1.2" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@angular-eslint/template-parser": { "version": "21.3.1", "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-21.3.1.tgz", @@ -518,79 +664,78 @@ } }, "node_modules/@angular/animations": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-21.2.9.tgz", - "integrity": "sha512-wOWbrneivpTYx3xhiPygoNFNC8ZZ1shpgwBe1hYvfky1fkiz1c92XeHIW1V4rPqYw6d3U55aUX5InyTsVe2Xng==", + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-22.0.0-rc.0.tgz", + "integrity": "sha512-2voJV4M6uGsV9jYFfIb/2N3ZHc7WFtB2KKnsdr7U4/b6NZJRPofeO7/06+6hL1bK72K4I/N+Z6o2fqmeAzitRg==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" }, "peerDependencies": { - "@angular/core": "21.2.9" + "@angular/core": "22.0.0-rc.0" } }, "node_modules/@angular/build": { - "version": "21.2.7", - "resolved": "https://registry.npmjs.org/@angular/build/-/build-21.2.7.tgz", - "integrity": "sha512-FpSkFqpsJtdN1cROekVYkmeV1QepdP+/d7fyYQEuNmlOlyqXSDh9qJmy4iL9VNbAU0rk+vFCtYM86rO7Pt9cSw==", + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/build/-/build-22.0.0-rc.0.tgz", + "integrity": "sha512-GmZvgBWhK2lvcKRBc7D9rJVynjoyUVhfobGmmGvsx6JCCIb5znZ+Y5s/ksj0ZdCHOEqsBNVp/AJ49cwdwvZJJQ==", "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.2102.7", + "@angular-devkit/architect": "0.2200.0-rc.0", "@babel/core": "7.29.0", "@babel/helper-annotate-as-pure": "7.27.3", "@babel/helper-split-export-declaration": "7.24.7", - "@inquirer/confirm": "5.1.21", - "@vitejs/plugin-basic-ssl": "2.1.4", - "beasties": "0.4.1", + "@inquirer/confirm": "6.0.12", + "@vitejs/plugin-basic-ssl": "2.3.0", + "beasties": "0.4.2", "browserslist": "^4.26.0", - "esbuild": "0.27.3", - "https-proxy-agent": "7.0.6", - "istanbul-lib-instrument": "6.0.3", + "esbuild": "0.28.0", + "https-proxy-agent": "9.0.0", "jsonc-parser": "3.3.1", - "listr2": "9.0.5", + "listr2": "10.2.1", "magic-string": "0.30.21", "mrmime": "2.0.1", - "parse5-html-rewriting-stream": "8.0.0", + "parse5-html-rewriting-stream": "8.0.1", "picomatch": "4.0.4", "piscina": "5.1.4", - "rolldown": "1.0.0-rc.4", - "sass": "1.97.3", + "rollup": "4.60.2", + "sass": "1.99.0", "semver": "7.7.4", "source-map-support": "0.5.21", - "tinyglobby": "0.2.15", - "undici": "7.24.4", + "tinyglobby": "0.2.16", "vite": "7.3.2", "watchpack": "2.5.1" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "optionalDependencies": { - "lmdb": "3.5.1" + "lmdb": "3.5.4" }, "peerDependencies": { - "@angular/compiler": "^21.0.0", - "@angular/compiler-cli": "^21.0.0", - "@angular/core": "^21.0.0", - "@angular/localize": "^21.0.0", - "@angular/platform-browser": "^21.0.0", - "@angular/platform-server": "^21.0.0", - "@angular/service-worker": "^21.0.0", - "@angular/ssr": "^21.2.7", + "@angular/compiler": "^22.0.0-next.0", + "@angular/compiler-cli": "^22.0.0-next.0", + "@angular/core": "^22.0.0-next.0", + "@angular/localize": "^22.0.0-next.0", + "@angular/platform-browser": "^22.0.0-next.0", + "@angular/platform-server": "^22.0.0-next.0", + "@angular/service-worker": "^22.0.0-next.0", + "@angular/ssr": "^22.0.0-rc.0", + "istanbul-lib-instrument": "^6.0.0", "karma": "^6.4.0", "less": "^4.2.0", - "ng-packagr": "^21.0.0", + "ng-packagr": "^22.0.0-next.0", "postcss": "^8.4.0", "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", "tslib": "^2.3.0", - "typescript": ">=5.9 <6.0", + "typescript": ">=6.0 <6.1", "vitest": "^4.0.8" }, "peerDependenciesMeta": { @@ -612,6 +757,9 @@ "@angular/ssr": { "optional": true }, + "istanbul-lib-instrument": { + "optional": true + }, "karma": { "optional": true }, @@ -632,807 +780,1452 @@ } } }, - "node_modules/@angular/cli": { - "version": "21.2.7", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-21.2.7.tgz", - "integrity": "sha512-N/wj8fFRB718efIFYpwnYfy+MecZREZXsUNMTVndFLH6T0jCheb9PVetR6jsyZp6h46USNPOmJYJ/9255lME+Q==", + "node_modules/@angular/build/node_modules/@angular-devkit/architect": { + "version": "0.2200.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2200.0-rc.0.tgz", + "integrity": "sha512-w5KMClBlntK9vHrVKLEMClG8fD9ta3ZB4Txmm9e+XIuJ2cwqr03jgtpIWq9Avxjr+o7MRLpc/ufCJB8Pn4YV+w==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/architect": "0.2102.7", - "@angular-devkit/core": "21.2.7", - "@angular-devkit/schematics": "21.2.7", - "@inquirer/prompts": "7.10.1", - "@listr2/prompt-adapter-inquirer": "3.0.5", - "@modelcontextprotocol/sdk": "1.26.0", - "@schematics/angular": "21.2.7", - "@yarnpkg/lockfile": "1.1.0", - "algoliasearch": "5.48.1", - "ini": "6.0.0", - "jsonc-parser": "3.3.1", - "listr2": "9.0.5", - "npm-package-arg": "13.0.2", - "pacote": "21.3.1", - "parse5-html-rewriting-stream": "8.0.0", - "semver": "7.7.4", - "yargs": "18.0.0", - "zod": "4.3.6" + "@angular-devkit/core": "22.0.0-rc.0", + "rxjs": "7.8.2" }, "bin": { - "ng": "bin/ng.js" + "architect": "bin/cli.js" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } }, - "node_modules/@angular/cli/node_modules/zod": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz", - "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==", + "node_modules/@angular/build/node_modules/@angular-devkit/core": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.0-rc.0.tgz", + "integrity": "sha512-8rXSWJZOyQQM80U4r/yIYw495TzAJNuV2G3RnxQqtfCkRYTExbERblbSx+eRNQEfmXgNGHCSkPVGUoU97YF7ww==", "dev": true, "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - }, - "node_modules/@angular/common": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-21.2.9.tgz", - "integrity": "sha512-7spQcF3hPN/fjTx6Pwa32KRRdO0NcixnRuPV4lo50ejtXesjiLVR+fkaX38sawAyGoq89IuuYvUDrbLwCMypmQ==", - "license": "MIT", "dependencies": { - "tslib": "^2.3.0" + "ajv": "8.20.0", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.4", + "rxjs": "7.8.2", + "source-map": "0.7.6" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" }, "peerDependencies": { - "@angular/core": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0" + "chokidar": "^5.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } } }, - "node_modules/@angular/compiler": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-21.2.9.tgz", - "integrity": "sha512-clsK1EsSPtAuqlRl4CciA/gsvsW7xe0eWcvHxtrMW6DYaUJ6X4AAuDxEEJ5cf/3Mpw4s8KssjIUPPtbrUIGLSQ==", + "node_modules/@angular/build/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + "node": ">=18" } }, - "node_modules/@angular/compiler-cli": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-21.2.9.tgz", - "integrity": "sha512-hTTW/OiqTXrwTneS18CMp47OX0XSbLYl2rIomLS3nXVJniSETH6S/k+LqQtGWWgLbzsd3PzUOOckHnvzpTBTsA==", + "node_modules/@angular/build/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/core": "7.29.0", - "@jridgewell/sourcemap-codec": "^1.4.14", - "chokidar": "^5.0.0", - "convert-source-map": "^1.5.1", - "reflect-metadata": "^0.2.0", - "semver": "^7.0.0", - "tslib": "^2.3.0", - "yargs": "^18.0.0" - }, - "bin": { - "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/compiler": "21.2.9", - "typescript": ">=5.9 <6.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=18" } }, - "node_modules/@angular/core": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-21.2.9.tgz", - "integrity": "sha512-uZLq2aedJ+0uEZxyf6a1Nc7y1aZ7akAW7K1Kon8JUDZOvI2IDbk0i00MzkELt8q9uSmSSqg9zNKuhjspFf0Pyw==", + "node_modules/@angular/build/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/compiler": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.15.0 || ~0.16.0" - }, - "peerDependenciesMeta": { - "@angular/compiler": { - "optional": true - }, - "zone.js": { - "optional": true - } + "node": ">=18" } }, - "node_modules/@angular/elements": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/elements/-/elements-21.2.9.tgz", - "integrity": "sha512-sQhmaUGKoUqRbu0V5rU7GzxobaL+nHkPWmB1l/0KHg6C29zWwXBXcojloDM8avBPXqpox20QOviC6xwBu+gmEQ==", + "node_modules/@angular/build/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/core": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0" + "node": ">=18" } }, - "node_modules/@angular/forms": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-21.2.9.tgz", - "integrity": "sha512-qXLnzmsJoHMgV/gDU7AZgsKBhUH7k6im6V9YuY5UpHHl+nGKCWxtePAZRB0OH2AsqzLwER3Fv2S6+mtmb7651w==", - "license": "MIT", - "dependencies": { - "@standard-schema/spec": "^1.0.0", - "tslib": "^2.3.0" - }, + "node_modules/@angular/build/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.9", - "@angular/core": "21.2.9", - "@angular/platform-browser": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0" + "node": ">=18" } }, - "node_modules/@angular/language-service": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-21.2.9.tgz", - "integrity": "sha512-wxfd2sVoMrVi4mJg3Sxs4vqJrFVcw4NZf9v6dA3TYykBynK3mbxxiv/h+hNpWixeqVZpuivpa0q9ZSsTybgKOQ==", + "node_modules/@angular/build/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" + "node": ">=18" } }, - "node_modules/@angular/platform-browser": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-21.2.9.tgz", - "integrity": "sha512-MjEtFvoFtsjsAeu2yzauqGgwwEHV4ml25c9vGFmw4OmSoNme4yp41f2DegwOkn1TTHL3OF3GE65ng2U2feJU4Q==", + "node_modules/@angular/build/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/animations": "21.2.9", - "@angular/common": "21.2.9", - "@angular/core": "21.2.9" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } + "node": ">=18" } }, - "node_modules/@angular/platform-browser-dynamic": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-21.2.9.tgz", - "integrity": "sha512-Z+2vefW4GUSuTC4BOKNiyftqecLSjxOKwe1ZNljBsjesLzywIXi+v+tyEm8ODHHlf7bz/0HwXvc9OYZmfjt95A==", + "node_modules/@angular/build/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.9", - "@angular/compiler": "21.2.9", - "@angular/core": "21.2.9", - "@angular/platform-browser": "21.2.9" + "node": ">=18" } }, - "node_modules/@angular/platform-server": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/platform-server/-/platform-server-21.2.9.tgz", - "integrity": "sha512-sVkx1762qO+XDE+JFnMZU/m95W2v+Qg5Kh1IIQ9wG9krjV2Tl6ufnGYdxKf4EKnPj7oOQdhKq4cb8VhOokESBw==", + "node_modules/@angular/build/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0", - "xhr2": "^0.2.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.9", - "@angular/compiler": "21.2.9", - "@angular/core": "21.2.9", - "@angular/platform-browser": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0" + "node": ">=18" } }, - "node_modules/@angular/router": { - "version": "21.2.9", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-21.2.9.tgz", - "integrity": "sha512-ExqOEO6IUuNaI75ZcjAbOuzJKpvVze6hRdETyVf7Sny07+XSKv9t8DK9tBHmR7+67wz+zPIUgCXxsQXi8jJu0w==", + "node_modules/@angular/build/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.9", - "@angular/core": "21.2.9", - "@angular/platform-browser": "21.2.9", - "rxjs": "^6.5.3 || ^7.4.0" + "node": ">=18" } }, - "node_modules/@angular/ssr": { - "version": "21.2.7", - "resolved": "https://registry.npmjs.org/@angular/ssr/-/ssr-21.2.7.tgz", - "integrity": "sha512-NhrkeD32s3H/jU9yJLqDy2JBNNatFyzqNkwieJw0waEvBRNbxXlcg5+g6rilcg2nHlH5hyzMQUzs7ZwZH9wCqg==", + "node_modules/@angular/build/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], + "dev": true, "license": "MIT", - "dependencies": { - "tslib": "^2.3.0" - }, - "peerDependencies": { - "@angular/common": "^21.0.0", - "@angular/core": "^21.0.0", - "@angular/platform-server": "^21.0.0", - "@angular/router": "^21.0.0" - }, - "peerDependenciesMeta": { - "@angular/platform-server": { - "optional": true - } + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@angularclass/hmr": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@angularclass/hmr/-/hmr-3.0.0.tgz", - "integrity": "sha512-4A/DKmSafWUcffv7f536oY6RbpXEAD7f0NCGVLlRj9Gna8dkGc9JOHSr3NCWHd/NRc4ey8x+V0itsBqlPxEJ/A==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/@asamuzakjp/css-color": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", - "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "node_modules/@angular/build/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@csstools/css-calc": "^2.1.3", - "@csstools/css-color-parser": "^3.0.9", - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3", - "lru-cache": "^10.4.3" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/@astrojs/compiler": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-2.13.1.tgz", - "integrity": "sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@astrojs/internal-helpers": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.7.6.tgz", - "integrity": "sha512-GOle7smBWKfMSP8osUIGOlB5kaHdQLV3foCsf+5Q9Wsuu+C6Fs3Ez/ttXmhjZ1HkSgsogcM1RXSjjOVieHq16Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@astrojs/markdown-remark": { - "version": "6.3.11", - "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-6.3.11.tgz", - "integrity": "sha512-hcaxX/5aC6lQgHeGh1i+aauvSwIT6cfyFjKWvExYSxUhZZBBdvCliOtu06gbQyhbe0pGJNoNmqNlQZ5zYUuIyQ==", + "node_modules/@angular/build/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], "dev": true, "license": "MIT", - "dependencies": { - "@astrojs/internal-helpers": "0.7.6", - "@astrojs/prism": "3.3.0", - "github-slugger": "^2.0.0", - "hast-util-from-html": "^2.0.3", - "hast-util-to-text": "^4.0.2", - "import-meta-resolve": "^4.2.0", - "js-yaml": "^4.1.1", - "mdast-util-definitions": "^6.0.0", - "rehype-raw": "^7.0.0", - "rehype-stringify": "^10.0.1", - "remark-gfm": "^4.0.1", - "remark-parse": "^11.0.0", - "remark-rehype": "^11.1.2", - "remark-smartypants": "^3.0.2", - "shiki": "^3.21.0", - "smol-toml": "^1.6.0", - "unified": "^11.0.5", - "unist-util-remove-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "unist-util-visit-parents": "^6.0.2", - "vfile": "^6.0.3" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@astrojs/prism": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@astrojs/prism/-/prism-3.3.0.tgz", - "integrity": "sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==", + "node_modules/@angular/build/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], "dev": true, "license": "MIT", - "dependencies": { - "prismjs": "^1.30.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "18.20.8 || ^20.3.0 || >=22.0.0" + "node": ">=18" } }, - "node_modules/@astrojs/telemetry": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.3.0.tgz", - "integrity": "sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ==", + "node_modules/@angular/build/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], "dev": true, "license": "MIT", - "dependencies": { - "ci-info": "^4.2.0", - "debug": "^4.4.0", - "dlv": "^1.1.3", - "dset": "^3.1.4", - "is-docker": "^3.0.0", - "is-wsl": "^3.1.0", - "which-pm-runs": "^1.1.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "18.20.8 || ^20.3.0 || >=22.0.0" + "node": ">=18" } }, - "node_modules/@babel/code-frame": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", - "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "node_modules/@angular/build/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.28.5", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/compat-data": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "node_modules/@angular/build/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/core": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", - "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "node_modules/@angular/build/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-module-transforms": "^7.28.6", - "@babel/helpers": "^7.28.6", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/traverse": "^7.29.0", - "@babel/types": "^7.29.0", - "@jridgewell/remapping": "^2.3.5", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "node": ">=18" } }, - "node_modules/@babel/generator": { - "version": "7.29.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", - "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "node_modules/@angular/build/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/parser": "^7.29.0", - "@babel/types": "^7.29.0", - "@jridgewell/gen-mapping": "^0.3.12", - "@jridgewell/trace-mapping": "^0.3.28", - "jsesc": "^3.0.2" - }, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", - "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "node_modules/@angular/build/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/types": "^7.27.3" - }, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "node_modules/@angular/build/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.28.6", - "@babel/helper-validator-option": "^7.27.1", - "browserslist": "^4.24.0", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "node_modules/@angular/build/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" } }, - "node_modules/@babel/helper-globals": { - "version": "7.28.0", - "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "node_modules/@angular/build/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", - "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "node_modules/@angular/build/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.28.6", - "@babel/types": "^7.28.6" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "node_modules/@angular/build/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.28.6", - "@babel/helper-validator-identifier": "^7.28.5", - "@babel/traverse": "^7.28.6" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=18" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", - "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "node_modules/@angular/build/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@babel/types": "^7.24.7" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "node_modules/@angular/build/node_modules/agent-base": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-9.0.0.tgz", + "integrity": "sha512-TQf59BsZnytt8GdJKLPfUZ54g/iaUL2OWDSFCCvMOhsHduDQxO8xC4PNeyIkVcA5KwL2phPSv0douC0fgWzmnA==", "dev": true, "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">= 20" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "node_modules/@angular/build/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", - "engines": { - "node": ">=6.9.0" + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "node_modules/@angular/build/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", "dev": true, + "hasInstallScript": true, "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", - "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" + } + }, + "node_modules/@angular/build/node_modules/https-proxy-agent": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-9.0.0.tgz", + "integrity": "sha512-/MVmHp58WkOypgFhCLk4fzpPcFQvTJ/e6LBI7irpIO2HfxUbpmYoHF+KzipzJpxxzJu7aJNWQ0xojJ/dzV2G5g==", "dev": true, "license": "MIT", "dependencies": { - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0" + "agent-base": "9.0.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=6.9.0" + "node": ">= 20" } }, - "node_modules/@babel/parser": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", - "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "node_modules/@angular/cli": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-22.0.0-rc.0.tgz", + "integrity": "sha512-4EQBn8oTzlcSwZ+7h6UZrMPLoFduRjpek59MiIq19gMBuJJrPCZCzcWXfIyZuapagZUECAwRpqDrKXTGFSc/1w==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.29.0" - }, + "@angular-devkit/architect": "0.2200.0-rc.0", + "@angular-devkit/core": "22.0.0-rc.0", + "@angular-devkit/schematics": "22.0.0-rc.0", + "@inquirer/prompts": "8.4.2", + "@listr2/prompt-adapter-inquirer": "4.2.3", + "@modelcontextprotocol/sdk": "1.29.0", + "@schematics/angular": "22.0.0-rc.0", + "@yarnpkg/lockfile": "1.1.0", + "algoliasearch": "5.52.0", + "ini": "6.0.0", + "jsonc-parser": "3.3.1", + "listr2": "10.2.1", + "npm-package-arg": "13.0.2", + "pacote": "21.5.0", + "parse5-html-rewriting-stream": "8.0.1", + "semver": "7.7.4", + "yargs": "18.0.0", + "zod": "4.4.2" + }, "bin": { - "parser": "bin/babel-parser.js" + "ng": "bin/ng.js" }, "engines": { - "node": ">=6.0.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@babel/runtime": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", - "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==", + "node_modules/@angular/cli/node_modules/@angular-devkit/architect": { + "version": "0.2200.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2200.0-rc.0.tgz", + "integrity": "sha512-w5KMClBlntK9vHrVKLEMClG8fD9ta3ZB4Txmm9e+XIuJ2cwqr03jgtpIWq9Avxjr+o7MRLpc/ufCJB8Pn4YV+w==", + "dev": true, "license": "MIT", + "dependencies": { + "@angular-devkit/core": "22.0.0-rc.0", + "rxjs": "7.8.2" + }, + "bin": { + "architect": "bin/cli.js" + }, "engines": { - "node": ">=6.9.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "node_modules/@babel/template": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "node_modules/@angular/cli/node_modules/@angular-devkit/core": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.0-rc.0.tgz", + "integrity": "sha512-8rXSWJZOyQQM80U4r/yIYw495TzAJNuV2G3RnxQqtfCkRYTExbERblbSx+eRNQEfmXgNGHCSkPVGUoU97YF7ww==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.28.6", - "@babel/parser": "^7.28.6", - "@babel/types": "^7.28.6" + "ajv": "8.20.0", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.4", + "rxjs": "7.8.2", + "source-map": "0.7.6" }, "engines": { - "node": ">=6.9.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^5.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } } }, - "node_modules/@babel/traverse": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", - "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "node_modules/@angular/cli/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-globals": "^7.28.0", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/types": "^7.29.0", - "debug": "^4.3.1" + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@babel/types": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", - "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "node_modules/@angular/cli/node_modules/zod": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.2.tgz", + "integrity": "sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==", "dev": true, "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/@angular/common": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-22.0.0-rc.0.tgz", + "integrity": "sha512-CXANdqoAdkzBi5yqABUMbGW7RP8oOASBYA3CzvRLQbu1Cq0hMmkexaJtjmOTMl2kDyEkNK0vE+8mVAVdt8Cw0w==", + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.27.1", - "@babel/helper-validator-identifier": "^7.28.5" + "tslib": "^2.3.0" }, "engines": { - "node": ">=6.9.0" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/core": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@bufbuild/protobuf": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.11.0.tgz", - "integrity": "sha512-sBXGT13cpmPR5BMgHE6UEEfEaShh5Ror6rfN3yEK5si7QVrtZg8LEPQb0VVhiLRUslD2yLnXtnRzG035J/mZXQ==", - "license": "(Apache-2.0 AND BSD-3-Clause)" - }, - "node_modules/@cacheable/memory": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.8.tgz", - "integrity": "sha512-FvEb29x5wVwu/Kf93IWwsOOEuhHh6dYCJF3vcKLzXc0KXIW181AOzv6ceT4ZpBHDvAfG60eqb+ekmrnLHIy+jw==", - "dev": true, + "node_modules/@angular/compiler": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-22.0.0-rc.0.tgz", + "integrity": "sha512-eaOfLUJDBr6mtvuUKKS25TWbhnwhAKIml+tonkIEZtBpp2wfbuM3MIRZAntSbAJQaKHJj4oI82mBTKFuJo022Q==", "license": "MIT", "dependencies": { - "@cacheable/utils": "^2.4.0", - "@keyv/bigmap": "^1.3.1", - "hookified": "^1.15.1", - "keyv": "^5.6.0" + "tslib": "^2.3.0" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" } }, - "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz", - "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==", + "node_modules/@angular/compiler-cli": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-22.0.0-rc.0.tgz", + "integrity": "sha512-swhOCT+bwWKJSqNobGOhTw6uxBVOhRF0SN9DpvUYCDVjG/q7eDEKMRAUJ5sg+Iez7w9BOLUfSz2cCXhr7zgpVw==", "dev": true, "license": "MIT", "dependencies": { - "hashery": "^1.4.0", - "hookified": "^1.15.0" + "@babel/core": "7.29.0", + "@jridgewell/sourcemap-codec": "^1.4.14", + "chokidar": "^5.0.0", + "convert-source-map": "^1.5.1", + "reflect-metadata": "^0.2.0", + "semver": "^7.0.0", + "tslib": "^2.3.0", + "yargs": "^18.0.0" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js" }, "engines": { - "node": ">= 18" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" }, "peerDependencies": { - "keyv": "^5.6.0" + "@angular/compiler": "22.0.0-rc.0", + "typescript": ">=6.0 <6.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@cacheable/memory/node_modules/keyv": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", - "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", - "dev": true, + "node_modules/@angular/core": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-22.0.0-rc.0.tgz", + "integrity": "sha512-+P2hVciCEH3MuXTXIuFiGpvcCivgCXB3agCakWHQ7rMiEmRB2oILTSKH5rRPlwPyoETPwfPeVn7tiAAaOuuGFg==", "license": "MIT", "dependencies": { - "@keyv/serialize": "^1.1.1" + "tslib": "^2.3.0" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/compiler": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.15.0 || ~0.16.0" + }, + "peerDependenciesMeta": { + "@angular/compiler": { + "optional": true + }, + "zone.js": { + "optional": true + } } }, - "node_modules/@cacheable/utils": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz", - "integrity": "sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA==", - "dev": true, + "node_modules/@angular/elements": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/elements/-/elements-22.0.0-rc.0.tgz", + "integrity": "sha512-ZdUWBhUqPuWTh3dQSXYik1MQg/Q/8knKWmoz/SSLXcR7EN4FpFsZWJxZ4xNALzD5NAEui9z05yf3mR8GUbO+ZQ==", "license": "MIT", "dependencies": { - "hashery": "^1.5.1", - "keyv": "^5.6.0" + "tslib": "^2.3.0" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/core": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@cacheable/utils/node_modules/keyv": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", - "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", - "dev": true, + "node_modules/@angular/forms": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-22.0.0-rc.0.tgz", + "integrity": "sha512-FIXEVK+tvL8lHIsbUHa1Lot9obpJme0pmh2k9//dTKoPgiODJ8Hg4CIKwMllk4RsSukQwvZzjghvvkQ8vUXnyw==", "license": "MIT", "dependencies": { - "@keyv/serialize": "^1.1.1" + "@standard-schema/spec": "^1.0.0", + "tslib": "^2.3.0", + "zod": "^4.0.10" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/common": "22.0.0-rc.0", + "@angular/core": "22.0.0-rc.0", + "@angular/platform-browser": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@capsizecss/unpack": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@capsizecss/unpack/-/unpack-4.0.0.tgz", - "integrity": "sha512-VERIM64vtTP1C4mxQ5thVT9fK0apjPFobqybMtA1UdUujWka24ERHbRHFGmpbbhp73MhV+KSsHQH9C6uOTdEQA==", + "node_modules/@angular/forms/node_modules/zod": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/@angular/language-service": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-22.0.0-rc.0.tgz", + "integrity": "sha512-PA+jhg1+gb2SWsIIK40DEfj4GKxr+5mSH2nx3Lu1miLJRWKTQeuk1ryJz8xNhAnVBRTmGCcLxlnhbTYN91KW8w==", "dev": true, "license": "MIT", + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-22.0.0-rc.0.tgz", + "integrity": "sha512-eYFmQKQzd3lhvJj1Str7zwR42WDa3NvFHMnj4wKkd6v+3Y8QQ3SBCASe3Xidoyt3HOV37rB9NPy6Ogbirovipg==", + "license": "MIT", "dependencies": { - "fontkitten": "^1.0.0" + "tslib": "^2.3.0" }, "engines": { - "node": ">=18" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/animations": "22.0.0-rc.0", + "@angular/common": "22.0.0-rc.0", + "@angular/core": "22.0.0-rc.0" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } } }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, + "node_modules/@angular/platform-browser-dynamic": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-22.0.0-rc.0.tgz", + "integrity": "sha512-iyucPWZdGx4v60YVnQIEmyZqDKIb4PrdGCCy2fCL6Iem1q+Wzt7XpQosBWKvIPp5c8UZ6mjo8fCPIeJgeAe7DQ==", "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, "engines": { - "node": ">=0.1.90" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/common": "22.0.0-rc.0", + "@angular/compiler": "22.0.0-rc.0", + "@angular/core": "22.0.0-rc.0", + "@angular/platform-browser": "22.0.0-rc.0" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, + "node_modules/@angular/platform-server": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/platform-server/-/platform-server-22.0.0-rc.0.tgz", + "integrity": "sha512-KNgYHtOUl9yB48mdOzK7or2bVP3iEIvpW+rGzQlq70gHfUjR77w0SJWo566wXSFTsnYlt0cA+SyZ070KJwGcPg==", "license": "MIT", "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" + "tslib": "^2.3.0", + "xhr2": "^0.2.0" }, "engines": { - "node": ">=12" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/common": "22.0.0-rc.0", + "@angular/compiler": "22.0.0-rc.0", + "@angular/core": "22.0.0-rc.0", + "@angular/platform-browser": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, + "node_modules/@angular/router": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-22.0.0-rc.0.tgz", + "integrity": "sha512-c0uySQaPja15uRtQN88RlEHrejxgKm25Qj5hjMhob332CQ4/SjHFCmn+VpTx6eCSlCG1Awki/xG/sbcJeK1Usg==", "license": "MIT", "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "tslib": "^2.3.0" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" + }, + "peerDependencies": { + "@angular/common": "22.0.0-rc.0", + "@angular/core": "22.0.0-rc.0", + "@angular/platform-browser": "22.0.0-rc.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "node_modules/@csstools/color-helpers": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz", - "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==", - "dev": true, - "funding": [ - { + "node_modules/@angular/ssr": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular/ssr/-/ssr-22.0.0-rc.0.tgz", + "integrity": "sha512-xlV/jgRsSIzQVxTPJ8eN/PxN2MgKlrhDhRHvMiY0XNPaXS1/NmdfLWDOdfQIqlhC4gkGDwxaE93XI0q/UE7Wbg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": "^22.0.0-next.0", + "@angular/core": "^22.0.0-next.0", + "@angular/platform-server": "^22.0.0-next.0", + "@angular/router": "^22.0.0-next.0" + }, + "peerDependenciesMeta": { + "@angular/platform-server": { + "optional": true + } + } + }, + "node_modules/@angularclass/hmr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@angularclass/hmr/-/hmr-3.0.0.tgz", + "integrity": "sha512-4A/DKmSafWUcffv7f536oY6RbpXEAD7f0NCGVLlRj9Gna8dkGc9JOHSr3NCWHd/NRc4ey8x+V0itsBqlPxEJ/A==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/@astrojs/compiler": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-2.13.1.tgz", + "integrity": "sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@astrojs/internal-helpers": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.7.6.tgz", + "integrity": "sha512-GOle7smBWKfMSP8osUIGOlB5kaHdQLV3foCsf+5Q9Wsuu+C6Fs3Ez/ttXmhjZ1HkSgsogcM1RXSjjOVieHq16Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@astrojs/markdown-remark": { + "version": "6.3.11", + "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-6.3.11.tgz", + "integrity": "sha512-hcaxX/5aC6lQgHeGh1i+aauvSwIT6cfyFjKWvExYSxUhZZBBdvCliOtu06gbQyhbe0pGJNoNmqNlQZ5zYUuIyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@astrojs/internal-helpers": "0.7.6", + "@astrojs/prism": "3.3.0", + "github-slugger": "^2.0.0", + "hast-util-from-html": "^2.0.3", + "hast-util-to-text": "^4.0.2", + "import-meta-resolve": "^4.2.0", + "js-yaml": "^4.1.1", + "mdast-util-definitions": "^6.0.0", + "rehype-raw": "^7.0.0", + "rehype-stringify": "^10.0.1", + "remark-gfm": "^4.0.1", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.2", + "remark-smartypants": "^3.0.2", + "shiki": "^3.21.0", + "smol-toml": "^1.6.0", + "unified": "^11.0.5", + "unist-util-remove-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "unist-util-visit-parents": "^6.0.2", + "vfile": "^6.0.3" + } + }, + "node_modules/@astrojs/prism": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@astrojs/prism/-/prism-3.3.0.tgz", + "integrity": "sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prismjs": "^1.30.0" + }, + "engines": { + "node": "18.20.8 || ^20.3.0 || >=22.0.0" + } + }, + "node_modules/@astrojs/telemetry": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.3.0.tgz", + "integrity": "sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^4.2.0", + "debug": "^4.4.0", + "dlv": "^1.1.3", + "dset": "^3.1.4", + "is-docker": "^3.0.0", + "is-wsl": "^3.1.0", + "which-pm-runs": "^1.1.0" + }, + "engines": { + "node": "18.20.8 || ^20.3.0 || >=22.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz", + "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bufbuild/protobuf": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.11.0.tgz", + "integrity": "sha512-sBXGT13cpmPR5BMgHE6UEEfEaShh5Ror6rfN3yEK5si7QVrtZg8LEPQb0VVhiLRUslD2yLnXtnRzG035J/mZXQ==", + "license": "(Apache-2.0 AND BSD-3-Clause)" + }, + "node_modules/@cacheable/memory": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.8.tgz", + "integrity": "sha512-FvEb29x5wVwu/Kf93IWwsOOEuhHh6dYCJF3vcKLzXc0KXIW181AOzv6ceT4ZpBHDvAfG60eqb+ekmrnLHIy+jw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cacheable/utils": "^2.4.0", + "@keyv/bigmap": "^1.3.1", + "hookified": "^1.15.1", + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz", + "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "hashery": "^1.4.0", + "hookified": "^1.15.0" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/memory/node_modules/keyv": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", + "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@keyv/serialize": "^1.1.1" + } + }, + "node_modules/@cacheable/utils": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz", + "integrity": "sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA==", + "dev": true, + "license": "MIT", + "dependencies": { + "hashery": "^1.5.1", + "keyv": "^5.6.0" + } + }, + "node_modules/@cacheable/utils/node_modules/keyv": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz", + "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@keyv/serialize": "^1.1.1" + } + }, + "node_modules/@capsizecss/unpack": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@capsizecss/unpack/-/unpack-4.0.0.tgz", + "integrity": "sha512-VERIM64vtTP1C4mxQ5thVT9fK0apjPFobqybMtA1UdUujWka24ERHbRHFGmpbbhp73MhV+KSsHQH9C6uOTdEQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fontkitten": "^1.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@csstools/color-helpers": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz", + "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==", + "dev": true, + "funding": [ + { "type": "github", "url": "https://github.com/sponsors/csstools" }, @@ -1611,19 +2404,6 @@ "url": "https://github.com/sponsors/JounQin" } }, - "node_modules/@emnapi/core": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz", - "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "@emnapi/wasi-threads": "1.2.1", - "tslib": "^2.4.0" - } - }, "node_modules/@emnapi/runtime": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz", @@ -1635,18 +2415,6 @@ "tslib": "^2.4.0" } }, - "node_modules/@emnapi/wasi-threads": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", - "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, "node_modules/@esbuild/aix-ppc64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", @@ -2750,9 +3518,6 @@ "arm" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2770,9 +3535,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2790,9 +3552,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2810,9 +3569,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2830,9 +3586,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2850,9 +3603,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2870,9 +3620,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2890,9 +3637,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "LGPL-3.0-or-later", "optional": true, "os": [ @@ -2910,9 +3654,6 @@ "arm" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -2936,9 +3677,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -2962,9 +3700,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -2988,9 +3723,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -3014,9 +3746,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -3040,9 +3769,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -3066,9 +3792,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -3092,9 +3815,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "Apache-2.0", "optional": true, "os": [ @@ -3191,30 +3911,29 @@ } }, "node_modules/@inquirer/ansi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-1.0.2.tgz", - "integrity": "sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-2.0.5.tgz", + "integrity": "sha512-doc2sWgJpbFQ64UflSVd17ibMGDuxO1yKgOgLMwavzESnXjFWJqUeG8saYosqKpHp4kWiM5x1nXvEjbpx90gzw==", "dev": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" } }, "node_modules/@inquirer/checkbox": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.3.2.tgz", - "integrity": "sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-5.1.5.tgz", + "integrity": "sha512-Jmf9tgBHIEK5SAOB7swYfStqmtkZb00xOTpSQmkoGEpdxOTpJi9RS0A8bkfDPHTTItZRJrRdZrEMu25wyj0VfQ==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/ansi": "^2.0.5", + "@inquirer/core": "^11.1.10", + "@inquirer/figures": "^2.0.5", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3226,17 +3945,17 @@ } }, "node_modules/@inquirer/confirm": { - "version": "5.1.21", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.21.tgz", - "integrity": "sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==", + "version": "6.0.12", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-6.0.12.tgz", + "integrity": "sha512-h9FgGun3QwVYNj5TWIZZ+slii73bMoBFjPfVIGtnFuL4t8gBiNDV9PcSfIzkuxvgquJKt9nr1QzszpBzTbH8Og==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.1.9", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3248,23 +3967,22 @@ } }, "node_modules/@inquirer/core": { - "version": "10.3.2", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.3.2.tgz", - "integrity": "sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==", + "version": "11.1.10", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-11.1.10.tgz", + "integrity": "sha512-a4Q5BXHQAHa9eO202sTaFCHFYVB3x5fauDuThEAdZ9gfn76pSxiKU7wWcEH0N1O0XmQvNfQNU6QXpiRxmYQx+A==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", + "@inquirer/ansi": "^2.0.5", + "@inquirer/figures": "^2.0.5", + "@inquirer/type": "^4.0.5", "cli-width": "^4.1.0", - "mute-stream": "^2.0.0", - "signal-exit": "^4.1.0", - "wrap-ansi": "^6.2.0", - "yoctocolors-cjs": "^2.1.3" + "fast-wrap-ansi": "^0.2.0", + "mute-stream": "^3.0.0", + "signal-exit": "^4.1.0" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3276,18 +3994,18 @@ } }, "node_modules/@inquirer/editor": { - "version": "4.2.23", - "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.23.tgz", - "integrity": "sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-5.1.2.tgz", + "integrity": "sha512-Y3Nor7S/DhIPo+8Ym/dSY4efwKI4BsflKDwXh0jNeXJsSF3dteS/3Yf+z4wkibVZDvYMyCgknSTQlNahfunGHg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/external-editor": "^1.0.3", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.1.10", + "@inquirer/external-editor": "^3.0.0", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3299,18 +4017,17 @@ } }, "node_modules/@inquirer/expand": { - "version": "4.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.23.tgz", - "integrity": "sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==", + "version": "5.0.14", + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-5.0.14.tgz", + "integrity": "sha512-qyY9zcIX2eKYwaAUiQo9zORd61Lc3sXeM72fVbeHkYnDkqfr8/armcRbmVAIrExeJhI2puk+uomeKtWrpUVUmQ==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.1.10", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3322,17 +4039,17 @@ } }, "node_modules/@inquirer/external-editor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-1.0.3.tgz", - "integrity": "sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-3.0.0.tgz", + "integrity": "sha512-lDSwMgg+M5rq6JKBYaJwSX6T9e/HK2qqZ1oxmOwn4AQoJE5D+7TumsxLGC02PWS//rkIVqbZv3XA3ejsc9FYvg==", "dev": true, "license": "MIT", "dependencies": { "chardet": "^2.1.1", - "iconv-lite": "^0.7.0" + "iconv-lite": "^0.7.2" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3344,27 +4061,27 @@ } }, "node_modules/@inquirer/figures": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.15.tgz", - "integrity": "sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-2.0.5.tgz", + "integrity": "sha512-NsSs4kzfm12lNetHwAn3GEuH317IzpwrMCbOuMIVytpjnJ90YYHNwdRgYGuKmVxwuIqSgqk3M5qqQt1cDk0tGQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" } }, "node_modules/@inquirer/input": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.3.1.tgz", - "integrity": "sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==", + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-5.0.13.tgz", + "integrity": "sha512-0l0jCHlJnXIV8CTxwQC0C+5Ziq8WP22edWgmciW2xYvoeoSck4v5FvCS1ctKdqLLR0dUo93uAHgWHywgBSoRyw==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.1.10", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3376,17 +4093,17 @@ } }, "node_modules/@inquirer/number": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.23.tgz", - "integrity": "sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==", + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-4.0.13.tgz", + "integrity": "sha512-WHmkYnnJAou5gx7RgcvAfUggnHNM1zWfoh0dFPl3dxVssuqt+dK5rIbaOYQXNyOegvFnopbKupjnhw2O8gANNg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/core": "^11.1.10", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3398,18 +4115,18 @@ } }, "node_modules/@inquirer/password": { - "version": "4.0.23", - "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.23.tgz", - "integrity": "sha512-zREJHjhT5vJBMZX/IUbyI9zVtVfOLiTO66MrF/3GFZYZ7T4YILW5MSkEYHceSii/KtRk+4i3RE7E1CUXA2jHcA==", + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-5.0.13.tgz", + "integrity": "sha512-XDGu64ROHZjOOXLAANvJN7iIxWKhOSCG5VakrZ5kaScVR+snVJCFglD/hL3/677awtWcu4pXoWa280CDIYcBeg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" + "@inquirer/ansi": "^2.0.5", + "@inquirer/core": "^11.1.10", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3421,25 +4138,25 @@ } }, "node_modules/@inquirer/prompts": { - "version": "7.10.1", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.10.1.tgz", - "integrity": "sha512-Dx/y9bCQcXLI5ooQ5KyvA4FTgeo2jYj/7plWfV5Ak5wDPKQZgudKez2ixyfz7tKXzcJciTxqLeK7R9HItwiByg==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-8.4.2.tgz", + "integrity": "sha512-XJmn/wY4AX56l1BRU+ZjDrFtg9+2uBEi4JvJQj82kwJDQKiPgSn4CEsbfGGygS4Gw6rkL4W18oATjfVfaqub2Q==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/checkbox": "^4.3.2", - "@inquirer/confirm": "^5.1.21", - "@inquirer/editor": "^4.2.23", - "@inquirer/expand": "^4.0.23", - "@inquirer/input": "^4.3.1", - "@inquirer/number": "^3.0.23", - "@inquirer/password": "^4.0.23", - "@inquirer/rawlist": "^4.1.11", - "@inquirer/search": "^3.2.2", - "@inquirer/select": "^4.4.2" + "@inquirer/checkbox": "^5.1.4", + "@inquirer/confirm": "^6.0.12", + "@inquirer/editor": "^5.1.1", + "@inquirer/expand": "^5.0.13", + "@inquirer/input": "^5.0.12", + "@inquirer/number": "^4.0.12", + "@inquirer/password": "^5.0.12", + "@inquirer/rawlist": "^5.2.8", + "@inquirer/search": "^4.1.8", + "@inquirer/select": "^5.1.4" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3451,18 +4168,17 @@ } }, "node_modules/@inquirer/rawlist": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.11.tgz", - "integrity": "sha512-+LLQB8XGr3I5LZN/GuAHo+GpDJegQwuPARLChlMICNdwW7OwV2izlCSCxN6cqpL0sMXmbKbFcItJgdQq5EBXTw==", + "version": "5.2.9", + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-5.2.9.tgz", + "integrity": "sha512-a1ErXEfgjfPYpyQ89dp+7n2IISjH9oQg3ygvF5adz8B7aHn4n2PjEgu1wpVTp69K3bj3lVLxP0qJ2b1clk1Whw==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.1.10", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3474,19 +4190,18 @@ } }, "node_modules/@inquirer/search": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.2.2.tgz", - "integrity": "sha512-p2bvRfENXCZdWF/U2BXvnSI9h+tuA8iNqtUKb9UWbmLYCRQxd8WkvwWvYn+3NgYaNwdUkHytJMGG4MMLucI1kA==", + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-4.1.9.tgz", + "integrity": "sha512-ZlbM28Q9lmLkFPNAIv+ZuY530n5Km8U1WW48oYEvDhe9yc2uL3m3t+JSdRUkQlk5fuIuskgiIVjcb7czFzQpuA==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/core": "^11.1.10", + "@inquirer/figures": "^2.0.5", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3498,20 +4213,19 @@ } }, "node_modules/@inquirer/select": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.4.2.tgz", - "integrity": "sha512-l4xMuJo55MAe+N7Qr4rX90vypFwCajSakx59qe/tMaC1aEHWLyw68wF4o0A4SLAY4E0nd+Vt+EyskeDIqu1M6w==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-5.1.5.tgz", + "integrity": "sha512-6SRg6kHfK/sjLXOsuqNebuir+sjwrf/iWuRUnXgB2slzEewppI1WfzeS16XxDcOQmXBruMmmB9Cgrz7wsAxqMg==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" + "@inquirer/ansi": "^2.0.5", + "@inquirer/core": "^11.1.10", + "@inquirer/figures": "^2.0.5", + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3523,13 +4237,13 @@ } }, "node_modules/@inquirer/type": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.10.tgz", - "integrity": "sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-4.0.5.tgz", + "integrity": "sha512-aetVUNeKNc/VriqXlw1NRSW0zhMBB0W4bNbWRJgzRl/3d0QNDQFfk0GO5SDdtjMZVg6o8ZKEiadd7SCCzoOn5Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=18" + "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0" }, "peerDependencies": { "@types/node": ">=18" @@ -3708,20 +4422,20 @@ "license": "MIT" }, "node_modules/@listr2/prompt-adapter-inquirer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-3.0.5.tgz", - "integrity": "sha512-WELs+hj6xcilkloBXYf9XXK8tYEnKsgLj01Xl5ONUJpKjmT5hGVUzNUS5tooUxs7pGMrw+jFD/41WpqW4V3LDA==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-4.2.3.tgz", + "integrity": "sha512-Co9U3AJ3LW0J8XBHjVoNKA79dMAyFt8EZH3OaKTMcDTj8r+6kG3vSUPq/eGLHT7P0iK3uLaFfhdFYd3033P24g==", "dev": true, "license": "MIT", "dependencies": { - "@inquirer/type": "^3.0.8" + "@inquirer/type": "^4.0.5" }, "engines": { - "node": ">=20.0.0" + "node": ">=22.13.0" }, "peerDependencies": { - "@inquirer/prompts": ">= 3 < 8", - "listr2": "9.0.5" + "@inquirer/prompts": ">= 3 < 9", + "listr2": "10.2.1" } }, "node_modules/@lit-labs/ssr-dom-shim": { @@ -3761,9 +4475,9 @@ } }, "node_modules/@lmdb/lmdb-darwin-arm64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.5.1.tgz", - "integrity": "sha512-tpfN4kKrrMpQ+If1l8bhmoNkECJi0iOu6AEdrTJvWVC+32sLxTARX5Rsu579mPImRP9YFWfWgeRQ5oav7zApQQ==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.5.4.tgz", + "integrity": "sha512-Kk4Kz3iyu1QiLsLZBS9Af1eSKUC8VR2T+/jyE2iAyuGw2VwK08pp5iTbZnXn6sWu0LogO/RFktMxOjiDA2sS3w==", "cpu": [ "arm64" ], @@ -3775,9 +4489,9 @@ ] }, "node_modules/@lmdb/lmdb-darwin-x64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.5.1.tgz", - "integrity": "sha512-+a2tTfc3rmWhLAolFUWRgJtpSuu+Fw/yjn4rF406NMxhfjbMuiOUTDRvRlMFV+DzyjkwnokisskHbCWkS3Ly5w==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-3.5.4.tgz", + "integrity": "sha512-BEe5Rp3trn26oxoXOVL5HVDoiYmjUDwr8NRPkBOdUdCSBEorKI+7JrZLRKAdxO+G6cGQLgseXk0gR7qIQa7aGw==", "cpu": [ "x64" ], @@ -3789,9 +4503,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.5.1.tgz", - "integrity": "sha512-0EgcE6reYr8InjD7V37EgXcYrloqpxVPINy3ig1MwDSbl6LF/vXTYRH9OE1Ti1D8YZnB35ZH9aTcdfSb5lql2A==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-3.5.4.tgz", + "integrity": "sha512-SGbFR7816uBcTHc2ZY4S6WyOkl9bICnzqTQd2Mv4V/j24cfds88xx2nC6cm/y8zGQL7Ds31YF/5NGxjgcdM5Hw==", "cpu": [ "arm" ], @@ -3803,9 +4517,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-arm64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.5.1.tgz", - "integrity": "sha512-aoERa5B6ywXdyFeYGQ1gbQpkMkDbEo45qVoXE5QpIRavqjnyPwjOulMkmkypkmsbJ5z4Wi0TBztON8agCTG0Vg==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-3.5.4.tgz", + "integrity": "sha512-cUXEengO8o60v1SWerJTH4/RH4U3+9jC0/4njp2Z9NdmvaGzhKsbRM2wpXuRYrN8tytsoJCg0SvWEWwHAwLbCA==", "cpu": [ "arm64" ], @@ -3817,9 +4531,9 @@ ] }, "node_modules/@lmdb/lmdb-linux-x64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.5.1.tgz", - "integrity": "sha512-SqNDY1+vpji7bh0sFH5wlWyFTOzjbDOl0/kB5RLLYDAFyd/uw3n7wyrmas3rYPpAW7z18lMOi1yKlTPv967E3g==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-3.5.4.tgz", + "integrity": "sha512-Gxq8jpgOWXwd0PUR+c9R2Ik1/uBnGd5GMIIzRRDqABCkvmjtC3KWcyhesV9jSPCz759isl0NlbsstZ2oyvk8lA==", "cpu": [ "x64" ], @@ -3831,9 +4545,9 @@ ] }, "node_modules/@lmdb/lmdb-win32-arm64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-arm64/-/lmdb-win32-arm64-3.5.1.tgz", - "integrity": "sha512-50v0O1Lt37cwrmR9vWZK5hRW0Aw+KEmxJJ75fge/zIYdvNKB/0bSMSVR5Uc2OV9JhosIUyklOmrEvavwNJ8D6w==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-arm64/-/lmdb-win32-arm64-3.5.4.tgz", + "integrity": "sha512-pKv1DJ1bPZAaHkdFsSz5IDfUG8x9vntgquXF9/Dm2xuupcIe/EkLzylpoBxppFVK5vzbV561Dq26jNY2fIMA7g==", "cpu": [ "arm64" ], @@ -3845,9 +4559,9 @@ ] }, "node_modules/@lmdb/lmdb-win32-x64": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.5.1.tgz", - "integrity": "sha512-qwosvPyl+zpUlp3gRb7UcJ3H8S28XHCzkv0Y0EgQToXjQP91ZD67EHSCDmaLjtKhe+GVIW5om1KUpzVLA0l6pg==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-3.5.4.tgz", + "integrity": "sha512-JF1BmLCm9kGEVZgYmJq43zeQVdHVgAJnTi/NURWEsy6L1ZrrlSmdltS+D17QN4LODwf+1LMXAA9auIZVXtWwzw==", "cpu": [ "x64" ], @@ -3873,10 +4587,9 @@ } }, "node_modules/@modelcontextprotocol/sdk": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.26.0.tgz", - "integrity": "sha512-Y5RmPncpiDtTXDbLKswIJzTqu2hyBKxTNsgKqKclDbhIgg1wgtf1fRuvxgTnRfcnxtvvgbIEcqUOzZrJ6iSReg==", - "dev": true, + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz", + "integrity": "sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ==", "license": "MIT", "dependencies": { "@hono/node-server": "^1.19.9", @@ -3917,7 +4630,6 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz", "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==", - "dev": true, "license": "MIT", "dependencies": { "eventsource-parser": "^3.0.1" @@ -4154,9 +4866,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4174,9 +4883,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -4194,9 +4900,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4214,9 +4917,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4234,9 +4934,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4254,9 +4951,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4274,9 +4968,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -4354,25 +5045,6 @@ "node": ">= 10" } }, - "node_modules/@napi-rs/wasm-runtime": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", - "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@tybys/wasm-util": "^0.10.1" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Brooooooklyn" - }, - "peerDependencies": { - "@emnapi/core": "^1.7.1", - "@emnapi/runtime": "^1.7.1" - } - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -4429,9 +5101,9 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", - "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -4482,9 +5154,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", - "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -4572,9 +5244,9 @@ } }, "node_modules/@npmcli/package-json/node_modules/lru-cache": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", - "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -4671,16 +5343,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@oxc-project/types": { - "version": "0.113.0", - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.113.0.tgz", - "integrity": "sha512-Tp3XmgxwNQ9pEN9vxgJBAqdRamHibi76iowQ38O2I4PMpcvNRQNVsU2n1x1nv9yh0XoTrGFzf7cZSGxmixxrhA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/Boshen" - } - }, "node_modules/@pagefind/darwin-arm64": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/@pagefind/darwin-arm64/-/darwin-arm64-1.5.2.tgz", @@ -4829,6 +5491,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4849,6 +5512,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4869,6 +5533,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4889,6 +5554,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4909,9 +5575,7 @@ "cpu": [ "arm" ], - "libc": [ - "glibc" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4932,9 +5596,7 @@ "cpu": [ "arm" ], - "libc": [ - "musl" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4955,9 +5617,7 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -4978,9 +5638,7 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5001,9 +5659,7 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5024,9 +5680,7 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5047,6 +5701,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5067,6 +5722,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5087,6 +5743,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -5197,271 +5854,31 @@ "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/@puppeteer/browsers/node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@rolldown/binding-android-arm64": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.4.tgz", - "integrity": "sha512-vRq9f4NzvbdZavhQbjkJBx7rRebDKYR9zHfO/Wg486+I7bSecdUapzCm5cyXoK+LHokTxgSq7A5baAXUZkIz0w==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-darwin-arm64": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.4.tgz", - "integrity": "sha512-kFgEvkWLqt3YCgKB5re9RlIrx9bRsvyVUnaTakEpOPuLGzLpLapYxE9BufJNvPg8GjT6mB1alN4yN1NjzoeM8Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-darwin-x64": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.4.tgz", - "integrity": "sha512-JXmaOJGsL/+rsmMfutcDjxWM2fTaVgCHGoXS7nE8Z3c9NAYjGqHvXrAhMUZvMpHS/k7Mg+X7n/MVKb7NYWKKww==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-freebsd-x64": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.4.tgz", - "integrity": "sha512-ep3Catd6sPnHTM0P4hNEvIv5arnDvk01PfyJIJ+J3wVCG1eEaPo09tvFqdtcaTrkwQy0VWR24uz+cb4IsK53Qw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-linux-arm-gnueabihf": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.4.tgz", - "integrity": "sha512-LwA5ayKIpnsgXJEwWc3h8wPiS33NMIHd9BhsV92T8VetVAbGe2qXlJwNVDGHN5cOQ22R9uYvbrQir2AB+ntT2w==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-linux-arm64-gnu": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.4.tgz", - "integrity": "sha512-AC1WsGdlV1MtGay/OQ4J9T7GRadVnpYRzTcygV1hKnypbYN20Yh4t6O1Sa2qRBMqv1etulUknqXjc3CTIsBu6A==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-linux-arm64-musl": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.4.tgz", - "integrity": "sha512-lU+6rgXXViO61B4EudxtVMXSOfiZONR29Sys5VGSetUY7X8mg9FCKIIjcPPj8xNDeYzKl+H8F/qSKOBVFJChCQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-linux-x64-gnu": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.4.tgz", - "integrity": "sha512-DZaN1f0PGp/bSvKhtw50pPsnln4T13ycDq1FrDWRiHmWt1JeW+UtYg9touPFf8yt993p8tS2QjybpzKNTxYEwg==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-linux-x64-musl": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.4.tgz", - "integrity": "sha512-RnGxwZLN7fhMMAItnD6dZ7lvy+TI7ba+2V54UF4dhaWa/p8I/ys1E73KO6HmPmgz92ZkfD8TXS1IMV8+uhbR9g==", - "cpu": [ - "x64" - ], - "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.4.tgz", - "integrity": "sha512-6lcI79+X8klGiGd8yHuTgQRjuuJYNggmEml+RsyN596P23l/zf9FVmJ7K0KVKkFAeYEdg0iMUKyIxiV5vebDNQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-wasm32-wasi": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.4.tgz", - "integrity": "sha512-wz7ohsKCAIWy91blZ/1FlpPdqrsm1xpcEOQVveWoL6+aSPKL4VUcoYmmzuLTssyZxRpEwzuIxL/GDsvpjaBtOw==", - "cpu": [ - "wasm32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@napi-rs/wasm-runtime": "^1.1.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.4.tgz", - "integrity": "sha512-cfiMrfuWCIgsFmcVG0IPuO6qTRHvF7NuG3wngX1RZzc6dU8FuBFb+J3MIR5WrdTNozlumfgL4cvz+R4ozBCvsQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.4.tgz", - "integrity": "sha512-p6UeR9y7ht82AH57qwGuFYn69S6CZ7LLKdCKy/8T3zS9VTrJei2/CGsTUV45Da4Z9Rbhc7G4gyWQ/Ioamqn09g==", - "cpu": [ - "x64" - ], + "node_modules/@puppeteer/browsers/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, "engines": { - "node": "^20.19.0 || >=22.12.0" + "node": ">=12" } }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.4.tgz", - "integrity": "sha512-1BrrmTu0TWfOP1riA8uakjFc9bpIUGzVKETsOtzY39pPga8zELGDl8eu1Dx7/gjM5CAz14UknsUMpBO8L+YntQ==", - "dev": true, - "license": "MIT" - }, "node_modules/@rollup/plugin-json": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", @@ -5605,9 +6022,6 @@ "arm" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5622,9 +6036,6 @@ "arm" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5639,9 +6050,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5656,9 +6064,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5673,9 +6078,6 @@ "loong64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5690,9 +6092,6 @@ "loong64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5707,9 +6106,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5724,9 +6120,6 @@ "ppc64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5741,9 +6134,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5758,9 +6148,6 @@ "riscv64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5775,9 +6162,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5792,9 +6176,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5809,9 +6190,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5903,9 +6281,9 @@ ] }, "node_modules/@rollup/wasm-node": { - "version": "4.60.2", - "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.60.2.tgz", - "integrity": "sha512-FOfZOg752WSyKNefpSM3WrhggSTSuKuwcSfF7tdWC9PBYYg7BLwBR267uShFAI1ZyA0gNkdqK16LL9mNOPsQ1Q==", + "version": "4.60.4", + "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.60.4.tgz", + "integrity": "sha512-j6qaRjdDujJ5utX5l6+8eiWlvMLmBfPMBht8mHP2au3xuzf+4deu6PuCquH5GvDIvIOsWHZhA1UVz/s0FvvgAA==", "dev": true, "license": "MIT", "dependencies": { @@ -5923,20 +6301,66 @@ } }, "node_modules/@schematics/angular": { - "version": "21.2.7", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-21.2.7.tgz", - "integrity": "sha512-aqEj3RyBtmH+41HZvrbfrpCo0e+0NzwyQyNSC/wLDShVqoidBtPbEdHU1FZ4+ni41da7rI3F12gUuAHws27kMA==", + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-22.0.0-rc.0.tgz", + "integrity": "sha512-V5BQFRlPfx/rJZOtkDUAunJqNfi+75J0gr41W1VId8TntsddF0jn1Fz4XQncTiu3dk8UMeRUdmyJrjYRl1Q5Wg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "21.2.7", - "@angular-devkit/schematics": "21.2.7", - "jsonc-parser": "3.3.1" + "@angular-devkit/core": "22.0.0-rc.0", + "@angular-devkit/schematics": "22.0.0-rc.0", + "jsonc-parser": "3.3.1", + "typescript": "6.0.3" }, "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0", + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@schematics/angular/node_modules/@angular-devkit/core": { + "version": "22.0.0-rc.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.0-rc.0.tgz", + "integrity": "sha512-8rXSWJZOyQQM80U4r/yIYw495TzAJNuV2G3RnxQqtfCkRYTExbERblbSx+eRNQEfmXgNGHCSkPVGUoU97YF7ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "8.20.0", + "ajv-formats": "3.0.1", + "jsonc-parser": "3.3.1", + "picomatch": "4.0.4", + "rxjs": "7.8.2", + "source-map": "0.7.6" + }, + "engines": { + "node": "^22.22.0 || ^24.13.1 || >=26.0.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^5.0.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@schematics/angular/node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, "node_modules/@shikijs/core": { @@ -6188,17 +6612,6 @@ "node": "^20.17.0 || >=22.9.0" } }, - "node_modules/@tybys/wasm-util": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", - "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, "node_modules/@types/body-parser": { "version": "1.19.6", "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.6.tgz", @@ -6707,16 +7120,16 @@ "license": "ISC" }, "node_modules/@vitejs/plugin-basic-ssl": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.1.4.tgz", - "integrity": "sha512-HXciTXN/sDBYWgeAD4V4s0DN0g72x5mlxQhHxtYu3Tt8BLa6MzcJZUyDVFCdtjNs3bfENVHVzOsmooTVuNgAAw==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.3.0.tgz", + "integrity": "sha512-bdyo8rB3NnQbikdMpHaML9Z1OZPBu6fFOBo+OtxsBlvMJtysWskmBcnbIDhUqgC8tcxNv/a+BcV5U+2nQMm1OQ==", "dev": true, "license": "MIT", "engines": { "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "peerDependencies": { - "vite": "^6.0.0 || ^7.0.0" + "vite": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/@yarnpkg/lockfile": { @@ -6860,26 +7273,26 @@ } }, "node_modules/algoliasearch": { - "version": "5.48.1", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.48.1.tgz", - "integrity": "sha512-Rf7xmeuIo7nb6S4mp4abW2faW8DauZyE2faBIKFaUfP3wnpOvNSbiI5AwVhqBNj0jPgBWEvhyCu0sLjN2q77Rg==", + "version": "5.52.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.52.0.tgz", + "integrity": "sha512-0ZzY9mjqV7gop/AH8pIBiAS8giXP7WcSiUfoFYIzYAK9QC5c37E4SIVtJVBMwlURc0/uNt2o4RcNRvdHa4CJ5w==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/abtesting": "1.14.1", - "@algolia/client-abtesting": "5.48.1", - "@algolia/client-analytics": "5.48.1", - "@algolia/client-common": "5.48.1", - "@algolia/client-insights": "5.48.1", - "@algolia/client-personalization": "5.48.1", - "@algolia/client-query-suggestions": "5.48.1", - "@algolia/client-search": "5.48.1", - "@algolia/ingestion": "1.48.1", - "@algolia/monitoring": "1.48.1", - "@algolia/recommend": "5.48.1", - "@algolia/requester-browser-xhr": "5.48.1", - "@algolia/requester-fetch": "5.48.1", - "@algolia/requester-node-http": "5.48.1" + "@algolia/abtesting": "1.18.0", + "@algolia/client-abtesting": "5.52.0", + "@algolia/client-analytics": "5.52.0", + "@algolia/client-common": "5.52.0", + "@algolia/client-insights": "5.52.0", + "@algolia/client-personalization": "5.52.0", + "@algolia/client-query-suggestions": "5.52.0", + "@algolia/client-search": "5.52.0", + "@algolia/ingestion": "1.52.0", + "@algolia/monitoring": "1.52.0", + "@algolia/recommend": "5.52.0", + "@algolia/requester-browser-xhr": "5.52.0", + "@algolia/requester-fetch": "5.52.0", + "@algolia/requester-node-http": "5.52.0" }, "engines": { "node": ">= 14.0.0" @@ -7798,6 +8211,42 @@ "url": "https://opencollective.com/express" } }, + "node_modules/astro/node_modules/tsconfck": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz", + "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==", + "dev": true, + "license": "MIT", + "bin": { + "tsconfck": "bin/tsconfck.js" + }, + "engines": { + "node": "^18 || >=20" + }, + "peerDependencies": { + "typescript": "^5.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/astro/node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, "node_modules/astro/node_modules/vite": { "version": "6.4.2", "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.2.tgz", @@ -8268,9 +8717,9 @@ } }, "node_modules/beasties": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.4.1.tgz", - "integrity": "sha512-2Imdcw3LznDuxAbJM26RHniOLAzE6WgrK8OuvVXCQtNBS8rsnD9zsSEa3fHl4hHpUY7BYTlrpvtPVbvu9G6neg==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.4.2.tgz", + "integrity": "sha512-NvcGjG/7AVUAfRbvrJmHunDQS9uHnE6Q/7AkaPr8oKE8HjOlpjRG5075z/th2Tmlezk3VlaaS8+X9I1RwHJMQw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8607,9 +9056,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", - "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -9097,9 +9546,9 @@ } }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.0.tgz", - "integrity": "sha512-6hJPQ8N0V0P3SNmP6h2J99RLuzrWz2gvT7VnK5tKvrNqJoyS9W4/Fb8mo31UiPvy00z7DQXkP2hnKBVav76thw==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz", + "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==", "dev": true, "license": "MIT", "dependencies": { @@ -9326,13 +9775,6 @@ "dev": true, "license": "MIT" }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true, - "license": "MIT" - }, "node_modules/colorjs.io": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/colorjs.io/-/colorjs.io-0.5.2.tgz", @@ -10814,13 +11256,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true, - "license": "MIT" - }, "node_modules/errno": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", @@ -11646,6 +12081,23 @@ "pako": "^2.1.0" } }, + "node_modules/fast-string-truncated-width": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-string-truncated-width/-/fast-string-truncated-width-3.0.3.tgz", + "integrity": "sha512-0jjjIEL6+0jag3l2XWWizO64/aZVtpiGE3t0Zgqxv0DPuxiMjvB3M24fCyhZUO4KomJQPj3LTSUnDP3GpdwC0g==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-string-width": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/fast-string-width/-/fast-string-width-3.0.2.tgz", + "integrity": "sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-string-truncated-width": "^3.0.2" + } + }, "node_modules/fast-uri": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", @@ -11662,6 +12114,16 @@ ], "license": "BSD-3-Clause" }, + "node_modules/fast-wrap-ansi": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/fast-wrap-ansi/-/fast-wrap-ansi-0.2.0.tgz", + "integrity": "sha512-rLV8JHxTyhVmFYhBJuMujcrHqOT2cnO5Zxj37qROj23CP39GXubJRBUFF0z8KFK77Uc0SukZUf7JZhsVEQ6n8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-string-width": "^3.0.2" + } + }, "node_modules/fastest-levenshtein": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", @@ -13805,9 +14267,9 @@ "license": "MIT" }, "node_modules/hosted-git-info": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.2.tgz", - "integrity": "sha512-M422h7o/BR3rmCQ8UHi7cyyMqKltdP9Uo+J2fXK+RSAY+wTcKOIRyhTuKv4qn+DJf3g+PL890AzId5KZpX+CBg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz", + "integrity": "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==", "dev": true, "license": "ISC", "dependencies": { @@ -13818,9 +14280,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.5.tgz", - "integrity": "sha512-NxVFwLAnrd9i7KUBxC4DrUhmgjzOs+1Qm50D3oF1/oL+r1NpZ4gA7xvG0/zJ8evR7zIKn4vLf7qTNduWFtCrRw==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -14221,46 +14683,6 @@ "igniteui-theming-mcp": "dist/mcp/index.js" } }, - "node_modules/igniteui-theming/node_modules/@modelcontextprotocol/sdk": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz", - "integrity": "sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ==", - "license": "MIT", - "dependencies": { - "@hono/node-server": "^1.19.9", - "ajv": "^8.17.1", - "ajv-formats": "^3.0.1", - "content-type": "^1.0.5", - "cors": "^2.8.5", - "cross-spawn": "^7.0.5", - "eventsource": "^3.0.2", - "eventsource-parser": "^3.0.0", - "express": "^5.2.1", - "express-rate-limit": "^8.2.1", - "hono": "^4.11.4", - "jose": "^6.1.3", - "json-schema-typed": "^8.0.2", - "pkce-challenge": "^5.0.0", - "raw-body": "^3.0.0", - "zod": "^3.25 || ^4.0", - "zod-to-json-schema": "^3.25.1" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@cfworker/json-schema": "^4.1.1", - "zod": "^3.25 || ^4.0" - }, - "peerDependenciesMeta": { - "@cfworker/json-schema": { - "optional": true - }, - "zod": { - "optional": false - } - } - }, "node_modules/igniteui-theming/node_modules/chokidar": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", @@ -14277,18 +14699,6 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/igniteui-theming/node_modules/eventsource": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz", - "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==", - "license": "MIT", - "dependencies": { - "eventsource-parser": "^3.0.1" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/igniteui-theming/node_modules/readdirp": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", @@ -14485,7 +14895,6 @@ "cpu": [ "arm" ], - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -14502,7 +14911,6 @@ "cpu": [ "arm64" ], - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -14519,7 +14927,6 @@ "cpu": [ "arm" ], - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -14536,7 +14943,6 @@ "cpu": [ "arm64" ], - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -14553,7 +14959,6 @@ "cpu": [ "riscv64" ], - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -14570,7 +14975,6 @@ "cpu": [ "x64" ], - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -14587,7 +14991,6 @@ "cpu": [ "riscv64" ], - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -14604,7 +15007,6 @@ "cpu": [ "x64" ], - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -16709,104 +17111,47 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "license": "MIT" - }, - "node_modules/linkify-it": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", - "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "uc.micro": "^2.0.0" - } - }, - "node_modules/listr2": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz", - "integrity": "sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==", - "dev": true, - "license": "MIT", - "dependencies": { - "cli-truncate": "^5.0.0", - "colorette": "^2.0.20", - "eventemitter3": "^5.0.1", - "log-update": "^6.1.0", - "rfdc": "^1.4.1", - "wrap-ansi": "^9.0.0" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "node_modules/listr2/node_modules/ansi-styles": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", - "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/listr2/node_modules/emoji-regex": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", - "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", - "dev": true, - "license": "MIT" - }, - "node_modules/listr2/node_modules/eventemitter3": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", - "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true, "license": "MIT" }, - "node_modules/listr2/node_modules/string-width": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", - "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", "dev": true, "license": "MIT", "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "uc.micro": "^2.0.0" } }, - "node_modules/listr2/node_modules/wrap-ansi": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", - "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", + "node_modules/listr2": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-10.2.1.tgz", + "integrity": "sha512-7I5knELsJKTUjXG+A6BkKAiGkW1i25fNa/xlUl9hFtk15WbE9jndA89xu5FzQKrY5llajE1hfZZFMILXkDHk/Q==", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^6.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" + "cli-truncate": "^5.2.0", + "eventemitter3": "^5.0.4", + "log-update": "^6.1.0", + "rfdc": "^1.4.1", + "wrap-ansi": "^10.0.0" }, "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=22.13.0" } }, + "node_modules/listr2/node_modules/eventemitter3": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", + "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", + "dev": true, + "license": "MIT" + }, "node_modules/lit": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/lit/-/lit-3.3.2.tgz", @@ -16839,9 +17184,9 @@ } }, "node_modules/lmdb": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.5.1.tgz", - "integrity": "sha512-NYHA0MRPjvNX+vSw8Xxg6FLKxzAG+e7Pt8RqAQA/EehzHVXq9SxDqJIN3JL1hK0dweb884y8kIh6rkWvPyg9Wg==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.5.4.tgz", + "integrity": "sha512-9FKQA6G1MMtqNxfxvSBNXD/axeG2QRjYbNh0/ykRL5xYcRbCm2vXq7B9bhc7nSuKdHzr8/BHIwfPuYYH1UsXXw==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -16858,13 +17203,13 @@ "download-lmdb-prebuilds": "bin/download-prebuilds.js" }, "optionalDependencies": { - "@lmdb/lmdb-darwin-arm64": "3.5.1", - "@lmdb/lmdb-darwin-x64": "3.5.1", - "@lmdb/lmdb-linux-arm": "3.5.1", - "@lmdb/lmdb-linux-arm64": "3.5.1", - "@lmdb/lmdb-linux-x64": "3.5.1", - "@lmdb/lmdb-win32-arm64": "3.5.1", - "@lmdb/lmdb-win32-x64": "3.5.1" + "@lmdb/lmdb-darwin-arm64": "3.5.4", + "@lmdb/lmdb-darwin-x64": "3.5.4", + "@lmdb/lmdb-linux-arm": "3.5.4", + "@lmdb/lmdb-linux-arm64": "3.5.4", + "@lmdb/lmdb-linux-x64": "3.5.4", + "@lmdb/lmdb-win32-arm64": "3.5.4", + "@lmdb/lmdb-win32-x64": "3.5.4" } }, "node_modules/locate-path": { @@ -17421,378 +17766,643 @@ "markdown-it": "bin/markdown-it.mjs" } }, - "node_modules/markdown-table": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", - "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/marked": { + "version": "17.0.6", + "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.6.tgz", + "integrity": "sha512-gB0gkNafnonOw0obSTEGZTT86IuhILt2Wfx0mWH/1Au83kybTayroZ/V6nS25mN7u8ASy+5fMhgB3XPNrOZdmA==", + "license": "MIT", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 20" + } + }, + "node_modules/marked-shiki": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/marked-shiki/-/marked-shiki-1.2.1.tgz", + "integrity": "sha512-yHxYQhPY5oYaIRnROn98foKhuClark7M373/VpLxiy5TrDu9Jd/LsMwo8w+U91Up4oDb9IXFrP0N1MFRz8W/DQ==", + "license": "MIT", + "peerDependencies": { + "marked": ">=7.0.0", + "shiki": ">=1.0.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-util-definitions": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-6.0.0.tgz", + "integrity": "sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", + "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", + "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", + "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", "dev": true, "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/marked": { - "version": "17.0.6", - "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.6.tgz", - "integrity": "sha512-gB0gkNafnonOw0obSTEGZTT86IuhILt2Wfx0mWH/1Au83kybTayroZ/V6nS25mN7u8ASy+5fMhgB3XPNrOZdmA==", + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dev": true, "license": "MIT", - "bin": { - "marked": "bin/marked.js" + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" }, - "engines": { - "node": ">= 20" - } - }, - "node_modules/marked-shiki": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/marked-shiki/-/marked-shiki-1.2.1.tgz", - "integrity": "sha512-yHxYQhPY5oYaIRnROn98foKhuClark7M373/VpLxiy5TrDu9Jd/LsMwo8w+U91Up4oDb9IXFrP0N1MFRz8W/DQ==", - "license": "MIT", - "peerDependencies": { - "marked": ">=7.0.0", - "shiki": ">=1.0.0" - } - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mathml-tag-names": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", - "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", - "dev": true, + "node_modules/mdast-util-to-hast": { + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", + "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-definitions": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-6.0.0.tgz", - "integrity": "sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==", + "node_modules/mdast-util-to-markdown": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", + "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", "dev": true, "license": "MIT", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", - "unist-util-visit": "^5.0.0" + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-find-and-replace": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz", - "integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==", + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "@types/mdast": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "node_modules/mdn-data": { + "version": "2.27.1", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", + "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "dev": true, + "license": "MIT" + }, + "node_modules/media-typer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", + "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/memoize-decorator": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/memoize-decorator/-/memoize-decorator-1.0.2.tgz", + "integrity": "sha512-G2vHcq4c+EwnBAOeWCH1mNz99QPCgm4ECjhHOd3SFZm66jVlwhBLdqhCvnHxptaRyZfm8ap3igoeDfrO92+uHQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", "dev": true, "license": "MIT", "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mdast-util-from-markdown": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz", - "integrity": "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q==", + "node_modules/merge-descriptors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", + "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", + "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", + "@types/debug": "^4.0.0", + "debug": "^4.0.0", "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark": "^4.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", + "micromark-util-encode": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-gfm": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz", - "integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==", + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", + "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-gfm-autolink-literal": "^2.0.0", - "mdast-util-gfm-footnote": "^2.0.0", - "mdast-util-gfm-strikethrough": "^2.0.0", - "mdast-util-gfm-table": "^2.0.0", - "mdast-util-gfm-task-list-item": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", - "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", + "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "ccount": "^2.0.0", - "devlop": "^1.0.0", - "mdast-util-find-and-replace": "^3.0.0", - "micromark-util-character": "^2.0.0" + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-footnote": { + "node_modules/micromark-extension-gfm-autolink-literal": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "devlop": "^1.1.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", - "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", "devlop": "^1.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", - "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", + "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", "devlop": "^1.0.0", - "mdast-util-from-markdown": "^2.0.0", - "mdast-util-to-markdown": "^2.0.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-phrasing": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", - "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", + "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", "dev": true, "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "unist-util-is": "^6.0.0" + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-hast": { - "version": "13.2.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz", - "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==", + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "dev": true, "license": "MIT", "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-markdown": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz", - "integrity": "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==", + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", + "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0", - "@types/unist": "^3.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^4.0.0", - "mdast-util-to-string": "^4.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-decode-string": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", + "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "@types/mdast": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdn-data": { - "version": "2.27.1", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz", - "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/mdurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", - "dev": true, - "license": "MIT" - }, - "node_modules/media-typer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", - "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/memoize-decorator": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/memoize-decorator/-/memoize-decorator-1.0.2.tgz", - "integrity": "sha512-G2vHcq4c+EwnBAOeWCH1mNz99QPCgm4ECjhHOd3SFZm66jVlwhBLdqhCvnHxptaRyZfm8ap3igoeDfrO92+uHQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/meow": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", - "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/merge-descriptors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", - "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/micromark-factory-space": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", + "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", - "engines": { - "node": ">= 8" + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz", - "integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==", + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", + "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", "dev": true, "funding": [ { @@ -17806,29 +18416,16 @@ ], "license": "MIT", "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-core-commonmark": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz", - "integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==", + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", + "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", "dev": true, "funding": [ { @@ -17842,157 +18439,215 @@ ], "license": "MIT", "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-extension-gfm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz", - "integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==", - "dev": true, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "micromark-extension-gfm-autolink-literal": "^2.0.0", - "micromark-extension-gfm-footnote": "^2.0.0", - "micromark-extension-gfm-strikethrough": "^2.0.0", - "micromark-extension-gfm-table": "^2.0.0", - "micromark-extension-gfm-tagfilter": "^2.0.0", - "micromark-extension-gfm-task-list-item": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", - "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", + "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-extension-gfm-footnote": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", - "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", + "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", - "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", + "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm-table": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz", - "integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==", + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", + "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", + "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz", - "integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==", + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", + "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", + "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", - "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", + "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "devlop": "^1.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-factory-destination": { + "node_modules/micromark-util-sanitize-uri": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz", - "integrity": "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==", - "dev": true, + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", "funding": [ { "type": "GitHub Sponsors", @@ -18006,14 +18661,14 @@ "license": "MIT", "dependencies": { "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/micromark-factory-label": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz", - "integrity": "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==", + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", + "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", "dev": true, "funding": [ { @@ -18028,16 +18683,15 @@ "license": "MIT", "dependencies": { "devlop": "^1.0.0", - "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, - "node_modules/micromark-factory-space": { + "node_modules/micromark-util-symbol": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz", - "integrity": "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==", - "dev": true, + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", "funding": [ { "type": "GitHub Sponsors", @@ -18048,17 +18702,12 @@ "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + "license": "MIT" }, - "node_modules/micromark-factory-title": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz", - "integrity": "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==", - "dev": true, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", "funding": [ { "type": "GitHub Sponsors", @@ -18069,822 +18718,991 @@ "url": "https://opencollective.com/unified" } ], + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, "license": "MIT", "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", + "license": "MIT", + "dependencies": { + "mime-db": "^1.54.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "brace-expansion": "^5.0.5" + }, + "engines": { + "node": "18 || 20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-5.0.2.tgz", + "integrity": "sha512-2d0q2a8eCi2IRg/IGubCNRJoYbA1+YPXAzQVRFmB45gdGZafyivnZ5YSEfo3JikbjGxOdntGFvBQGqaSMXlAFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^2.0.0", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^20.17.0 || >=22.9.0" + }, + "optionalDependencies": { + "iconv-lite": "^0.7.2" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.7.tgz", + "integrity": "sha512-TbqTz9cUwWyHS2Dy89P3ocAGUGxKjjLuR9z8w4WUTGAVgEj17/4nhgo2Du56i0Fm3Pm30g4iA8Lcqctc76jCzA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/micromark-factory-whitespace": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz", - "integrity": "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==", + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", + "license": "ISC", "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "license": "ISC", "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/micromark-util-chunked": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz", - "integrity": "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==", + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", + "license": "ISC", "dependencies": { - "micromark-util-symbol": "^2.0.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/micromark-util-classify-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz", - "integrity": "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==", + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", + "license": "ISC" + }, + "node_modules/minipass-sized": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-2.0.0.tgz", + "integrity": "sha512-zSsHhto5BcUVM2m1LurnXY6M//cGhVaegT71OfOXoprxT6o780GZd792ea6FfrQkuU4usHZIUczAQMRUE2plzA==", + "dev": true, + "license": "ISC", "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "minipass": "^7.1.2" + }, + "engines": { + "node": ">=8" } }, - "node_modules/micromark-util-combine-extensions": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz", - "integrity": "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==", + "node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" } }, - "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz", - "integrity": "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==", + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true, + "license": "MIT" + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", "dependencies": { - "micromark-util-symbol": "^2.0.0" + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "node_modules/micromark-util-decode-string": { + "node_modules/mrmime": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz", - "integrity": "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "engines": { + "node": ">=10" } }, - "node_modules/micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "license": "MIT" }, - "node_modules/micromark-util-html-tag-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz", - "integrity": "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==", + "node_modules/msgpackr": { + "version": "1.11.12", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.12.tgz", + "integrity": "sha512-RBdJ1Un7yGlXWajrkxcSa93nvQ0w4zBf60c0yYv7YtBelP8H2FA7XsfBbMHtXKXUMUxH7zV3Zuozh+kUQWhHvg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT" + "license": "MIT", + "optional": true, + "optionalDependencies": { + "msgpackr-extract": "^3.0.2" + } }, - "node_modules/micromark-util-normalize-identifier": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz", - "integrity": "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==", + "node_modules/msgpackr-extract": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz", + "integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], + "hasInstallScript": true, "license": "MIT", + "optional": true, "dependencies": { - "micromark-util-symbol": "^2.0.0" + "node-gyp-build-optional-packages": "5.2.2" + }, + "bin": { + "download-msgpackr-prebuilds": "bin/download-prebuilds.js" + }, + "optionalDependencies": { + "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3", + "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3", + "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3", + "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3", + "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3", + "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3" } }, - "node_modules/micromark-util-resolve-all": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz", - "integrity": "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==", + "node_modules/multipipe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-1.0.2.tgz", + "integrity": "sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "license": "MIT", "dependencies": { - "micromark-util-types": "^2.0.0" + "duplexer2": "^0.1.2", + "object-assign": "^4.1.0" } }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], + "node_modules/mute-stdout": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-2.0.0.tgz", + "integrity": "sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ==", + "dev": true, "license": "MIT", - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/micromark-util-subtokenize": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz", - "integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==", + "node_modules/mute-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-3.0.0.tgz", + "integrity": "sha512-dkEJPVvun4FryqBmZ5KhDo0K9iDXAwn08tMLDinNdRBNPcYEDiWYysLcc6k3mjTMlbP9KyylvRpd4wFtwrT9rw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "license": "MIT", - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "license": "ISC", + "engines": { + "node": "^20.17.0 || >=22.9.0" } }, - "node_modules/micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, "funding": [ { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "type": "github", + "url": "https://github.com/sponsors/ai" } ], - "license": "MIT" + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } }, - "node_modules/micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, "license": "MIT" }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "node_modules/needle": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.5.0.tgz", + "integrity": "sha512-jaQyPKKk2YokHrEg+vFDYxXIHTCBgiZwSHOoVx/8V3GIBS8/VN6NdVRmg8q1ERtPkMvmOvebsgga4sAj5hls/w==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" }, "engines": { - "node": ">=8.6" + "node": ">= 4.4.x" } }, - "node_modules/micromatch/node_modules/picomatch": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", - "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=8.6" + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", "license": "MIT", - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4.0.0" + "node": ">= 0.6" } }, - "node_modules/mime-db": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", - "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "license": "MIT" + }, + "node_modules/neotraverse": { + "version": "0.6.18", + "resolved": "https://registry.npmjs.org/neotraverse/-/neotraverse-0.6.18.tgz", + "integrity": "sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==", + "dev": true, "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">= 10" } }, - "node_modules/mime-types": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", - "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", + "node_modules/netmask": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.1.1.tgz", + "integrity": "sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==", + "dev": true, "license": "MIT", - "dependencies": { - "mime-db": "^1.54.0" - }, "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" + "node": ">= 0.4.0" } }, - "node_modules/mimic-function": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", - "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", + "node_modules/ng-packagr": { + "version": "22.0.0-next.4", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-22.0.0-next.4.tgz", + "integrity": "sha512-rZorWpYgRUHJ6DVgHb+Ele+spOTH/lQu6u0HA3HL4N8a+vIipEIZ/JUPXNfAhcGd0yhj7jhuokD7akIjiL3zzg==", "dev": true, "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@rollup/plugin-json": "^6.1.0", + "@rollup/wasm-node": "^4.24.0", + "ajv": "^8.17.1", + "browserslist": "^4.26.0", + "chokidar": "^5.0.0", + "commander": "^14.0.0", + "dependency-graph": "^1.0.0", + "esbuild": "^0.28.0", + "find-cache-directory": "^6.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.3.1", + "less": "^4.2.0", + "ora": "^9.0.0", + "piscina": "^5.0.0", + "postcss": "^8.4.47", + "rollup-plugin-dts": "^6.4.0", + "rxjs": "^7.8.1", + "sass": "^1.81.0", + "tinyglobby": "^0.2.12" + }, + "bin": { + "ng-packagr": "src/cli/main.js" + }, "engines": { - "node": ">=18" + "node": "^22.22.0 || ^24.13.1 || >=26.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "rollup": "^4.24.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^22.0.0-next.3", + "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "tslib": "^2.3.0", + "typescript": ">=6.0 <6.1" + }, + "peerDependenciesMeta": { + "tailwindcss": { + "optional": true + } } }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "node_modules/ng-packagr/node_modules/@esbuild/aix-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.0.tgz", + "integrity": "sha512-lhRUCeuOyJQURhTxl4WkpFTjIsbDayJHih5kZC1giwE+MhIzAb7mEsQMqMf18rHLsrb5qI1tafG20mLxEWcWlA==", + "cpu": [ + "ppc64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">=4" + "node": ">=18" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "node_modules/ng-packagr/node_modules/@esbuild/android-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.0.tgz", + "integrity": "sha512-wqh0ByljabXLKHeWXYLqoJ5jKC4XBaw6Hk08OfMrCRd2nP2ZQ5eleDZC41XHyCNgktBGYMbqnrJKq/K/lzPMSQ==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "10.2.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", - "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "brace-expansion": "^5.0.5" - }, - "engines": { - "node": "18 || 20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=18" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "node_modules/ng-packagr/node_modules/@esbuild/android-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.0.tgz", + "integrity": "sha512-+WzIXQOSaGs33tLEgYPYe/yQHf0WTU0X42Jca3y8NWMbUVhp7rUnw+vAsRC/QiDrdD31IszMrZy+qwPOPjd+rw==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - "dev": true, - "license": "BlueOak-1.0.0", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=18" } }, - "node_modules/minipass-collect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", - "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "node_modules/ng-packagr/node_modules/@esbuild/android-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.0.tgz", + "integrity": "sha512-+VJggoaKhk2VNNqVL7f6S189UzShHC/mR9EE8rDdSkdpN0KflSwWY/gWjDrNxxisg8Fp1ZCD9jLMo4m0OUfeUA==", + "cpu": [ + "x64" + ], "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=18" } }, - "node_modules/minipass-fetch": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-5.0.2.tgz", - "integrity": "sha512-2d0q2a8eCi2IRg/IGubCNRJoYbA1+YPXAzQVRFmB45gdGZafyivnZ5YSEfo3JikbjGxOdntGFvBQGqaSMXlAFQ==", + "node_modules/ng-packagr/node_modules/@esbuild/darwin-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.0.tgz", + "integrity": "sha512-0T+A9WZm+bZ84nZBtk1ckYsOvyA3x7e2Acj1KdVfV4/2tdG4fzUp91YHx+GArWLtwqp77pBXVCPn2We7Letr0Q==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^2.0.0", - "minizlib": "^3.0.1" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^20.17.0 || >=22.9.0" - }, - "optionalDependencies": { - "iconv-lite": "^0.7.2" + "node": ">=18" } }, - "node_modules/minipass-flush": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.7.tgz", - "integrity": "sha512-TbqTz9cUwWyHS2Dy89P3ocAGUGxKjjLuR9z8w4WUTGAVgEj17/4nhgo2Du56i0Fm3Pm30g4iA8Lcqctc76jCzA==", + "node_modules/ng-packagr/node_modules/@esbuild/darwin-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.0.tgz", + "integrity": "sha512-fyzLm/DLDl/84OCfp2f/XQ4flmORsjU7VKt8HLjvIXChJoFFOIL6pLJPH4Yhd1n1gGFF9mPwtlN5Wf82DZs+LQ==", + "cpu": [ + "x64" + ], "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "minipass": "^3.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 8" + "node": ">=18" } }, - "node_modules/minipass-flush/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/ng-packagr/node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.0.tgz", + "integrity": "sha512-l9GeW5UZBT9k9brBYI+0WDffcRxgHQD8ShN2Ur4xWq/NFzUKm3k5lsH4PdaRgb2w7mI9u61nr2gI2mLI27Nh3Q==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "node_modules/ng-packagr/node_modules/@esbuild/freebsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.0.tgz", + "integrity": "sha512-BXoQai/A0wPO6Es3yFJ7APCiKGc1tdAEOgeTNy3SsB491S3aHn4S4r3e976eUnPdU+NbdtmBuLncYir2tMU9Nw==", + "cpu": [ + "x64" + ], "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/minipass-pipeline/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-arm": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.0.tgz", + "integrity": "sha512-CjaaREJagqJp7iTaNQjjidaNbCKYcd4IDkzbwwxtSvjI7NZm79qiHc8HqciMddQ6CKvJT6aBd8lO9kN/ZudLlw==", + "cpu": [ + "arm" + ], "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "license": "ISC" - }, - "node_modules/minipass-sized": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-2.0.0.tgz", - "integrity": "sha512-zSsHhto5BcUVM2m1LurnXY6M//cGhVaegT71OfOXoprxT6o780GZd792ea6FfrQkuU4usHZIUczAQMRUE2plzA==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.0.tgz", + "integrity": "sha512-RVyzfb3FWsGA55n6WY0MEIEPURL1FcbhFE6BffZEMEekfCzCIMtB5yyDcFnVbTnwk+CLAgTujmV/Lgvih56W+A==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^7.1.2" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=18" } }, - "node_modules/minizlib": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", - "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.0.tgz", + "integrity": "sha512-KBnSTt1kxl9x70q+ydterVdl+Cn0H18ngRMRCEQfrbqdUuntQQ0LoMZv47uB97NljZFzY6HcfqEZ2SAyIUTQBQ==", + "cpu": [ + "ia32" + ], "dev": true, "license": "MIT", - "dependencies": { - "minipass": "^7.1.2" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 18" + "node": ">=18" } }, - "node_modules/mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true, - "license": "MIT" - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-loong64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.0.tgz", + "integrity": "sha512-zpSlUce1mnxzgBADvxKXX5sl8aYQHo2ezvMNI8I0lbblJtp8V4odlm3Yzlj7gPyt3T8ReksE6bK+pT3WD+aJRg==", + "cpu": [ + "loong64" + ], "dev": true, "license": "MIT", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/mrmime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", - "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-mips64el": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.0.tgz", + "integrity": "sha512-2jIfP6mmjkdmeTlsX/9vmdmhBmKADrWqN7zcdtHIeNSCH1SqIoNI63cYsjQR8J+wGa4Y5izRcSHSm8K3QWmk3w==", + "cpu": [ + "mips64el" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=10" + "node": ">=18" } }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/msgpackr": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.10.tgz", - "integrity": "sha512-iCZNq+HszvF+fC3anCm4nBmWEnbeIAfpDs6IStAEKhQ2YSgkjzVG2FF9XJqwwQh5bH3N9OUTUt4QwVN6MLMLtA==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-ppc64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.0.tgz", + "integrity": "sha512-bc0FE9wWeC0WBm49IQMPSPILRocGTQt3j5KPCA8os6VprfuJ7KD+5PzESSrJ6GmPIPJK965ZJHTUlSA6GNYEhg==", + "cpu": [ + "ppc64" + ], "dev": true, "license": "MIT", "optional": true, - "optionalDependencies": { - "msgpackr-extract": "^3.0.2" + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/msgpackr-extract": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz", - "integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-riscv64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.0.tgz", + "integrity": "sha512-SQPZOwoTTT/HXFXQJG/vBX8sOFagGqvZyXcgLA3NhIqcBv1BJU1d46c0rGcrij2B56Z2rNiSLaZOYW5cUk7yLQ==", + "cpu": [ + "riscv64" + ], "dev": true, - "hasInstallScript": true, "license": "MIT", "optional": true, - "dependencies": { - "node-gyp-build-optional-packages": "5.2.2" - }, - "bin": { - "download-msgpackr-prebuilds": "bin/download-prebuilds.js" - }, - "optionalDependencies": { - "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3" + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/multipipe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-1.0.2.tgz", - "integrity": "sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-s390x": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.0.tgz", + "integrity": "sha512-SCfR0HN8CEEjnYnySJTd2cw0k9OHB/YFzt5zgJEwa+wL/T/raGWYMBqwDNAC6dqFKmJYZoQBRfHjgwLHGSrn3Q==", + "cpu": [ + "s390x" + ], "dev": true, "license": "MIT", - "dependencies": { - "duplexer2": "^0.1.2", - "object-assign": "^4.1.0" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" } }, - "node_modules/mute-stdout": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-2.0.0.tgz", - "integrity": "sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ==", + "node_modules/ng-packagr/node_modules/@esbuild/linux-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.0.tgz", + "integrity": "sha512-us0dSb9iFxIi8srnpl931Nvs65it/Jd2a2K3qs7fz2WfGPHqzfzZTfec7oxZJRNPXPnNYZtanmRc4AL/JwVzHQ==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 10.13.0" + "node": ">=18" } }, - "node_modules/mute-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", - "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", + "node_modules/ng-packagr/node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.0.tgz", + "integrity": "sha512-CR/RYotgtCKwtftMwJlUU7xCVNg3lMYZ0RzTmAHSfLCXw3NtZtNpswLEj/Kkf6kEL3Gw+BpOekRX0BYCtklhUw==", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": "^18.17.0 || >=20.5.0" + "node": ">=18" } }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } + "node_modules/ng-packagr/node_modules/@esbuild/netbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.0.tgz", + "integrity": "sha512-nU1yhmYutL+fQ71Kxnhg8uEOdC0pwEW9entHykTgEbna2pw2dkbFSMeqjjyHZoCmt8SBkOSvV+yNmm94aUrrqw==", + "cpu": [ + "x64" ], + "dev": true, "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": ">=18" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "license": "MIT" - }, - "node_modules/needle": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.5.0.tgz", - "integrity": "sha512-jaQyPKKk2YokHrEg+vFDYxXIHTCBgiZwSHOoVx/8V3GIBS8/VN6NdVRmg8q1ERtPkMvmOvebsgga4sAj5hls/w==", + "node_modules/ng-packagr/node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.0.tgz", + "integrity": "sha512-cXb5vApOsRsxsEl4mcZ1XY3D4DzcoMxR/nnc4IyqYs0rTI8ZKmW6kyyg+11Z8yvgMfAEldKzP7AdP64HnSC/6g==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, + "os": [ + "openbsd" + ], "engines": { - "node": ">= 4.4.x" + "node": ">=18" } }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/ng-packagr/node_modules/@esbuild/openbsd-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.0.tgz", + "integrity": "sha512-8wZM2qqtv9UP3mzy7HiGYNH/zjTA355mpeuA+859TyR+e+Tc08IHYpLJuMsfpDJwoLo1ikIJI8jC3GFjnRClzA==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, + "os": [ + "openbsd" + ], "engines": { - "node": ">=0.10.0" + "node": ">=18" } }, - "node_modules/negotiator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", - "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "node_modules/ng-packagr/node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.0.tgz", + "integrity": "sha512-FLGfyizszcef5C3YtoyQDACyg95+dndv79i2EekILBofh5wpCa1KuBqOWKrEHZg3zrL3t5ouE5jgr94vA+Wb2w==", + "cpu": [ + "arm64" + ], + "dev": true, "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], "engines": { - "node": ">= 0.6" + "node": ">=18" } }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "node_modules/ng-packagr/node_modules/@esbuild/sunos-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.0.tgz", + "integrity": "sha512-1ZgjUoEdHZZl/YlV76TSCz9Hqj9h9YmMGAgAPYd+q4SicWNX3G5GCyx9uhQWSLcbvPW8Ni7lj4gDa1T40akdlw==", + "cpu": [ + "x64" + ], "dev": true, - "license": "MIT" + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } }, - "node_modules/neotraverse": { - "version": "0.6.18", - "resolved": "https://registry.npmjs.org/neotraverse/-/neotraverse-0.6.18.tgz", - "integrity": "sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==", + "node_modules/ng-packagr/node_modules/@esbuild/win32-arm64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.0.tgz", + "integrity": "sha512-Q9StnDmQ/enxnpxCCLSg0oo4+34B9TdXpuyPeTedN/6+iXBJ4J+zwfQI28u/Jl40nOYAxGoNi7mFP40RUtkmUA==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">= 10" + "node": ">=18" } }, - "node_modules/netmask": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.1.1.tgz", - "integrity": "sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==", + "node_modules/ng-packagr/node_modules/@esbuild/win32-ia32": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.0.tgz", + "integrity": "sha512-zF3ag/gfiCe6U2iczcRzSYJKH1DCI+ByzSENHlM2FcDbEeo5Zd2C86Aq0tKUYAJJ1obRP84ymxIAksZUcdztHA==", + "cpu": [ + "ia32" + ], "dev": true, "license": "MIT", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">= 0.4.0" + "node": ">=18" } }, - "node_modules/ng-packagr": { - "version": "21.2.3", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-21.2.3.tgz", - "integrity": "sha512-jGq6yu0G6KReVK0i5RYVoV9HDL0mU626HrLBu5xvc8ZJ92n/+rLrFJuXdCnkroB9um+FBTQe/or6/A/2GAKhLw==", + "node_modules/ng-packagr/node_modules/@esbuild/win32-x64": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.0.tgz", + "integrity": "sha512-pEl1bO9mfAmIC+tW5btTmrKaujg3zGtUmWNdCw/xs70FBjwAL3o9OEKNHvNmnyylD6ubxUERiEhdsL0xBQ9efw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@ampproject/remapping": "^2.3.0", - "@rollup/plugin-json": "^6.1.0", - "@rollup/wasm-node": "^4.24.0", - "ajv": "^8.17.1", - "ansi-colors": "^4.1.3", - "browserslist": "^4.26.0", - "chokidar": "^5.0.0", - "commander": "^14.0.0", - "dependency-graph": "^1.0.0", - "esbuild": "^0.27.0", - "find-cache-directory": "^6.0.0", - "injection-js": "^2.4.0", - "jsonc-parser": "^3.3.1", - "less": "^4.2.0", - "ora": "^9.0.0", - "piscina": "^5.0.0", - "postcss": "^8.4.47", - "rollup-plugin-dts": "^6.4.0", - "rxjs": "^7.8.1", - "sass": "^1.81.0", - "tinyglobby": "^0.2.12" - }, - "bin": { - "ng-packagr": "src/cli/main.js" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "optionalDependencies": { - "rollup": "^4.24.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^21.0.0 || ^21.2.0-next", - "tailwindcss": "^2.0.0 || ^3.0.0 || ^4.0.0", - "tslib": "^2.3.0", - "typescript": ">=5.9 <6.0" - }, - "peerDependenciesMeta": { - "tailwindcss": { - "optional": true - } + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" } }, - "node_modules/ng-packagr/node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "node_modules/ng-packagr/node_modules/esbuild": { + "version": "0.28.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.0.tgz", + "integrity": "sha512-sNR9MHpXSUV/XB4zmsFKN+QgVG82Cc7+/aaxJ8Adi8hyOac+EXptIp45QBPaVyX3N70664wRbTcLTOemCAnyqw==", "dev": true, + "hasInstallScript": true, "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, "engines": { - "node": ">=6" + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.0", + "@esbuild/android-arm": "0.28.0", + "@esbuild/android-arm64": "0.28.0", + "@esbuild/android-x64": "0.28.0", + "@esbuild/darwin-arm64": "0.28.0", + "@esbuild/darwin-x64": "0.28.0", + "@esbuild/freebsd-arm64": "0.28.0", + "@esbuild/freebsd-x64": "0.28.0", + "@esbuild/linux-arm": "0.28.0", + "@esbuild/linux-arm64": "0.28.0", + "@esbuild/linux-ia32": "0.28.0", + "@esbuild/linux-loong64": "0.28.0", + "@esbuild/linux-mips64el": "0.28.0", + "@esbuild/linux-ppc64": "0.28.0", + "@esbuild/linux-riscv64": "0.28.0", + "@esbuild/linux-s390x": "0.28.0", + "@esbuild/linux-x64": "0.28.0", + "@esbuild/netbsd-arm64": "0.28.0", + "@esbuild/netbsd-x64": "0.28.0", + "@esbuild/openbsd-arm64": "0.28.0", + "@esbuild/openbsd-x64": "0.28.0", + "@esbuild/openharmony-arm64": "0.28.0", + "@esbuild/sunos-x64": "0.28.0", + "@esbuild/win32-arm64": "0.28.0", + "@esbuild/win32-ia32": "0.28.0", + "@esbuild/win32-x64": "0.28.0" } }, "node_modules/nlcst-to-string": { @@ -18973,21 +19791,21 @@ } }, "node_modules/node-gyp": { - "version": "12.2.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-12.2.0.tgz", - "integrity": "sha512-q23WdzrQv48KozXlr0U1v9dwO/k59NHeSzn6loGcasyf0UnSrtzs8kRxM+mfwJSf0DkX0s43hcqgnSO4/VNthQ==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-12.3.0.tgz", + "integrity": "sha512-QNcUWM+HgJplcPzBvFBZ9VXacyGZ4+VTOb80PwWR+TlVzoHbRKULNEzpRsnaoxG3Wzr7Qh7BYxGDU3CbKib2Yg==", "dev": true, "license": "MIT", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^15.0.0", "nopt": "^9.0.0", "proc-log": "^6.0.0", "semver": "^7.3.5", "tar": "^7.5.4", "tinyglobby": "^0.2.12", + "undici": "^6.25.0", "which": "^6.0.0" }, "bin": { @@ -19430,9 +20248,9 @@ } }, "node_modules/ora": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/ora/-/ora-9.3.0.tgz", - "integrity": "sha512-lBX72MWFduWEf7v7uWf5DHp9Jn5BI8bNPGuFgtXMmr2uDz2Gz2749y3am3agSDdkhHPHYmmxEGSKH85ZLGzgXw==", + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-9.4.0.tgz", + "integrity": "sha512-84cglkRILFxdtA8hAvLNdMrtBpPNBTrQ9/ulg0FA7xLMnD6mifv+enAIeRmvtv+WgdCE+LPGOfQmtJRrVaIVhQ==", "dev": true, "license": "MIT", "dependencies": { @@ -19442,7 +20260,7 @@ "is-interactive": "^2.0.0", "is-unicode-supported": "^2.1.0", "log-symbols": "^7.0.1", - "stdin-discarder": "^0.3.1", + "stdin-discarder": "^0.3.2", "string-width": "^8.1.0" }, "engines": { @@ -19466,9 +20284,9 @@ } }, "node_modules/ora/node_modules/string-width": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.0.tgz", - "integrity": "sha512-6hJPQ8N0V0P3SNmP6h2J99RLuzrWz2gvT7VnK5tKvrNqJoyS9W4/Fb8mo31UiPvy00z7DQXkP2hnKBVav76thw==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz", + "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==", "dev": true, "license": "MIT", "dependencies": { @@ -19732,12 +20550,13 @@ "license": "MIT" }, "node_modules/pacote": { - "version": "21.3.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.3.1.tgz", - "integrity": "sha512-O0EDXi85LF4AzdjG74GUwEArhdvawi/YOHcsW6IijKNj7wm8IvEWNF5GnfuxNpQ/ZpO3L37+v8hqdVh8GgWYhg==", + "version": "21.5.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.5.0.tgz", + "integrity": "sha512-VtZ0SB8mb5Tzw3dXDfVAIjhyVKUHZkS/ZH9/5mpKenwC9sFOXNI0JI7kEF7IMkwOnsWMFrvAZHzx1T5fmrp9FQ==", "dev": true, "license": "ISC", "dependencies": { + "@gar/promise-retry": "^1.0.0", "@npmcli/git": "^7.0.0", "@npmcli/installed-package-contents": "^4.0.0", "@npmcli/package-json": "^7.0.0", @@ -19751,7 +20570,6 @@ "npm-pick-manifest": "^11.0.1", "npm-registry-fetch": "^19.0.0", "proc-log": "^6.0.0", - "promise-retry": "^2.0.1", "sigstore": "^4.0.0", "ssri": "^13.0.0", "tar": "^7.4.3" @@ -19905,13 +20723,13 @@ } }, "node_modules/parse5-html-rewriting-stream": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-8.0.0.tgz", - "integrity": "sha512-wzh11mj8KKkno1pZEu+l2EVeWsuKDfR5KNWZOTsslfUX8lPDZx77m9T0kIoAVkFtD1nx6YF8oh4BnPHvxMtNMw==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-8.0.1.tgz", + "integrity": "sha512-NaRku2aMpUN1Sh1Gyk1KWUh2A7EJx2c6qYzvwsPtqhoHoaURshdrceYK3LunVCm3WHhm6FS7Vcczbvdh3/UIVw==", "dev": true, "license": "MIT", "dependencies": { - "entities": "^6.0.0", + "entities": "^8.0.0", "parse5": "^8.0.0", "parse5-sax-parser": "^8.0.0" }, @@ -19920,13 +20738,13 @@ } }, "node_modules/parse5-html-rewriting-stream/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", + "integrity": "sha512-zwfzJecQ/Uej6tusMqwAqU/6KL2XaB2VZ2Jg54Je6ahNBGNH6Ek6g3jjNCF0fG9EWQKGZNddNjU5F1ZQn/sBnA==", "dev": true, "license": "BSD-2-Clause", "engines": { - "node": ">=0.12" + "node": ">=20.19.0" }, "funding": { "url": "https://github.com/fb55/entities?sponsor=1" @@ -19945,19 +20763,6 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/parse5-html-rewriting-stream/node_modules/parse5/node_modules/entities": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", - "integrity": "sha512-zwfzJecQ/Uej6tusMqwAqU/6KL2XaB2VZ2Jg54Je6ahNBGNH6Ek6g3jjNCF0fG9EWQKGZNddNjU5F1ZQn/sBnA==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=20.19.0" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/parse5-sax-parser": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-8.0.0.tgz", @@ -20507,20 +21312,6 @@ "node": ">=0.4.0" } }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -21436,16 +22227,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, "node_modules/reusify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", @@ -21544,38 +22325,6 @@ "node": "*" } }, - "node_modules/rolldown": { - "version": "1.0.0-rc.4", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.4.tgz", - "integrity": "sha512-V2tPDUrY3WSevrvU2E41ijZlpF+5PbZu4giH+VpNraaadsJGHa4fR6IFwsocVwEXDoAdIv5qgPPxgrvKAOIPtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@oxc-project/types": "=0.113.0", - "@rolldown/pluginutils": "1.0.0-rc.4" - }, - "bin": { - "rolldown": "bin/cli.mjs" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "optionalDependencies": { - "@rolldown/binding-android-arm64": "1.0.0-rc.4", - "@rolldown/binding-darwin-arm64": "1.0.0-rc.4", - "@rolldown/binding-darwin-x64": "1.0.0-rc.4", - "@rolldown/binding-freebsd-x64": "1.0.0-rc.4", - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.4", - "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.4", - "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.4", - "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.4", - "@rolldown/binding-linux-x64-musl": "1.0.0-rc.4", - "@rolldown/binding-openharmony-arm64": "1.0.0-rc.4", - "@rolldown/binding-wasm32-wasi": "1.0.0-rc.4", - "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.4", - "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.4" - } - }, "node_modules/rollup": { "version": "4.60.2", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.2.tgz", @@ -21835,14 +22584,14 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.97.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.3.tgz", - "integrity": "sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==", + "version": "1.99.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz", + "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", "dev": true, "license": "MIT", "dependencies": { "chokidar": "^4.0.0", - "immutable": "^5.0.2", + "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -22020,60 +22769,6 @@ "sass": "1.99.0" } }, - "node_modules/sass-embedded-all-unknown/node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass-embedded-all-unknown/node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass-embedded-all-unknown/node_modules/sass": { - "version": "1.99.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz", - "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^5.1.5", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, "node_modules/sass-embedded-android-arm": { "version": "1.99.0", "resolved": "https://registry.npmjs.org/sass-embedded-android-arm/-/sass-embedded-android-arm-1.99.0.tgz", @@ -22184,7 +22879,6 @@ "arm" ], "dev": true, - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -22202,7 +22896,6 @@ "arm64" ], "dev": true, - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -22220,7 +22913,6 @@ "arm" ], "dev": true, - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -22238,7 +22930,6 @@ "arm64" ], "dev": true, - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -22256,7 +22947,6 @@ "riscv64" ], "dev": true, - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -22274,7 +22964,6 @@ "x64" ], "dev": true, - "libc": "musl", "license": "MIT", "optional": true, "os": [ @@ -22292,7 +22981,6 @@ "riscv64" ], "dev": true, - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -22310,7 +22998,6 @@ "x64" ], "dev": true, - "libc": "glibc", "license": "MIT", "optional": true, "os": [ @@ -22337,60 +23024,6 @@ "sass": "1.99.0" } }, - "node_modules/sass-embedded-unknown-all/node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass-embedded-unknown-all/node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass-embedded-unknown-all/node_modules/sass": { - "version": "1.99.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz", - "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^5.1.5", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, "node_modules/sass-embedded-win32-arm64": { "version": "1.99.0", "resolved": "https://registry.npmjs.org/sass-embedded-win32-arm64/-/sass-embedded-win32-arm64-1.99.0.tgz", @@ -22624,8 +23257,10 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "extraneous": true, + "dev": true, "license": "MIT", + "optional": true, + "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -22677,8 +23312,10 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "extraneous": true, + "dev": true, "license": "ISC", + "optional": true, + "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -22726,8 +23363,10 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", - "extraneous": true, + "dev": true, "license": "MIT", + "optional": true, + "peer": true, "engines": { "node": ">=8.6" }, @@ -22739,8 +23378,10 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "extraneous": true, + "dev": true, "license": "MIT", + "optional": true, + "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -24939,9 +25580,9 @@ } }, "node_modules/tar": { - "version": "7.5.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.13.tgz", - "integrity": "sha512-tOG/7GyXpFevhXVh8jOPJrmtRpOTsYqUIkVdVooZYJS/z8WhfQUX8RJILmeuJNinGAMSu1veBr4asSHFt5/hng==", + "version": "7.5.15", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.15.tgz", + "integrity": "sha512-dzGK0boVlC4W5QFuQN1EFSl3bIDYsk7Tj40U6eIBnK2k/8ml7TZ5agbI5j5+qnoVcAA+rNtBml8SEiLxZpNqRQ==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -25119,14 +25760,14 @@ } }, "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", "dev": true, "license": "MIT", "dependencies": { "fdir": "^6.5.0", - "picomatch": "^4.0.3" + "picomatch": "^4.0.4" }, "engines": { "node": ">=12.0.0" @@ -25381,27 +26022,6 @@ "node": ">=0.3.1" } }, - "node_modules/tsconfck": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz", - "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==", - "dev": true, - "license": "MIT", - "bin": { - "tsconfck": "bin/tsconfck.js" - }, - "engines": { - "node": "^18 || >=20" - }, - "peerDependencies": { - "typescript": "^5.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", @@ -25522,9 +26142,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -25650,13 +26270,13 @@ } }, "node_modules/undici": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-7.24.4.tgz", - "integrity": "sha512-BM/JzwwaRXxrLdElV2Uo6cTLEjhSb3WXboncJamZ15NgUURmvlXvxa6xkwIOILIjPNo9i8ku136ZvWV0Uly8+w==", + "version": "6.25.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.25.0.tgz", + "integrity": "sha512-ZgpWDC5gmNiuY9CnLVXEH8rl50xhRCuLNA97fAUnKi8RRuV4E6KG31pDTsLVUKnohJE0I3XDrTeEydAXRw47xg==", "dev": true, "license": "MIT", "engines": { - "node": ">=20.18.1" + "node": ">=18.17" } }, "node_modules/undici-types": { @@ -26879,18 +27499,21 @@ "license": "MIT" }, "node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-10.0.0.tgz", + "integrity": "sha512-SGcvg80f0wUy2/fXES19feHMz8E0JoXv2uNgHOu4Dgi2OrCy1lqwFYEJz1BLbDI0exjPMe/ZdzZ/YpGECBG/aQ==", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "ansi-styles": "^6.2.3", + "string-width": "^8.2.0", + "strip-ansi": "^7.1.2" }, "engines": { - "node": ">=8" + "node": ">=20" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/wrap-ansi-cjs": { @@ -26935,27 +27558,34 @@ "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, "license": "MIT", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz", + "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "get-east-asian-width": "^1.5.0", + "strip-ansi": "^7.1.2" }, "engines": { - "node": ">=8" + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/wrappy": { @@ -27222,19 +27852,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yoctocolors-cjs": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz", - "integrity": "sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/zod": { "version": "3.25.76", "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", diff --git a/package.json b/package.json index f195603ee25..135836da856 100644 --- a/package.json +++ b/package.json @@ -64,17 +64,17 @@ }, "private": true, "dependencies": { - "@angular/animations": "^21.1.3", - "@angular/common": "^21.1.3", - "@angular/compiler": "^21.1.3", - "@angular/core": "^21.1.3", - "@angular/elements": "^21.1.3", - "@angular/forms": "^21.1.3", - "@angular/platform-browser": "^21.1.3", - "@angular/platform-browser-dynamic": "^21.1.3", - "@angular/platform-server": "^21.1.3", - "@angular/router": "^21.1.3", - "@angular/ssr": "^21.1.2", + "@angular/animations": "^22.0.0-rc.0", + "@angular/common": "^22.0.0-rc.0", + "@angular/compiler": "^22.0.0-rc.0", + "@angular/core": "^22.0.0-rc.0", + "@angular/elements": "^22.0.0-rc.0", + "@angular/forms": "^22.0.0-rc.0", + "@angular/platform-browser": "^22.0.0-rc.0", + "@angular/platform-browser-dynamic": "^22.0.0-rc.0", + "@angular/platform-server": "^22.0.0-rc.0", + "@angular/router": "^22.0.0-rc.0", + "@angular/ssr": "^22.0.0-rc.0", "@igniteui/material-icons-extended": "^3.1.0", "@lit-labs/ssr-dom-shim": "^1.3.0", "@types/source-map": "0.5.2", @@ -94,16 +94,16 @@ "zone.js": "~0.16.0" }, "devDependencies": { - "@angular-devkit/schematics": "^21.1.2", + "@angular-devkit/schematics": "^22.0.0-rc.0", "@angular-eslint/builder": "^21.2.0", "@angular-eslint/eslint-plugin": "^21.2.0", "@angular-eslint/eslint-plugin-template": "^21.2.0", "@angular-eslint/schematics": "^21.2.0", "@angular-eslint/template-parser": "^21.2.0", - "@angular/build": "^21.1.2", - "@angular/cli": "^21.1.2", - "@angular/compiler-cli": "^21.1.3", - "@angular/language-service": "^21.1.3", + "@angular/build": "^22.0.0-rc.0", + "@angular/cli": "^22.0.0-rc.0", + "@angular/compiler-cli": "^22.0.0-rc.0", + "@angular/language-service": "^22.0.0-rc.0", "@angularclass/hmr": "^3.0.0", "@microsoft/signalr": "^7.0.12", "@types/estree": "^1.0.0", @@ -137,6 +137,7 @@ "igniteui-i18n-resources": "^1.0.2", "igniteui-sassdoc-theme": "^2.1.0", "igniteui-webcomponents": "^7.0.0", + "istanbul-lib-instrument": "^6.0.3", "jasmine": "^5.6.0", "jasmine-core": "^5.6.0", "karma": "^6.4.4", @@ -148,7 +149,7 @@ "karma-parallel": "^0.3.1", "karma-spec-reporter": "^0.0.36", "lit-html": "^3.2.1", - "ng-packagr": "^21.0.0", + "ng-packagr": "^22.0.0-next.4", "postcss": "^8.5.1", "postcss-scss": "^4.0.6", "prettier": "^3.3.3", @@ -164,7 +165,7 @@ "ts-node": "^10.8.1", "typedoc": "^0.28.14", "typedoc-plugin-localization": "^3.1.0", - "typescript": "5.9.3" + "typescript": "6.0.3" }, "overrides": { "igniteui-sassdoc-theme": { @@ -173,14 +174,20 @@ } }, "igniteui-angular-charts": { - "@angular/core": "^21.0.0", - "@angular/common": "^21.0.0", - "@angular/compiler": "^21.0.0" + "@angular/core": "^22.0.0-rc.0", + "@angular/common": "^22.0.0-rc.0", + "@angular/compiler": "^22.0.0-rc.0" }, "igniteui-angular-core": { - "@angular/core": "^21.0.0", - "@angular/common": "^21.0.0", - "@angular/compiler": "^21.0.0" + "@angular/core": "^22.0.0-rc.0", + "@angular/common": "^22.0.0-rc.0", + "@angular/compiler": "^22.0.0-rc.0" + }, + "@angular-eslint/builder": { + "@angular/cli": "$@angular/cli" + }, + "@angular-eslint/schematics": { + "@angular/cli": "$@angular/cli" } } } diff --git a/projects/bundle-test/src/app/app.component.ts b/projects/bundle-test/src/app/app.component.ts index 7c7ceb186f2..d76b387d35b 100644 --- a/projects/bundle-test/src/app/app.component.ts +++ b/projects/bundle-test/src/app/app.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { RouterOutlet } from '@angular/router'; import { IgxNavbarComponent } from 'igniteui-angular/navbar'; @@ -6,6 +6,7 @@ import { IgxNavbarComponent } from 'igniteui-angular/navbar'; selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [RouterOutlet, IgxNavbarComponent] }) export class AppComponent { diff --git a/projects/bundle-test/src/app/app.config.ts b/projects/bundle-test/src/app/app.config.ts index ba8956b9e29..d7f1591bbe2 100644 --- a/projects/bundle-test/src/app/app.config.ts +++ b/projects/bundle-test/src/app/app.config.ts @@ -2,7 +2,7 @@ import { ApplicationConfig } from '@angular/core'; import { NavigationError, provideRouter, withNavigationErrorHandler } from '@angular/router'; import { routes } from './app.routes'; -import { provideClientHydration } from '@angular/platform-browser'; +import { provideClientHydration, withNoIncrementalHydration } from '@angular/platform-browser'; export const appConfig: ApplicationConfig = { providers: [ @@ -11,6 +11,6 @@ export const appConfig: ApplicationConfig = { // force failed routes to throw & fail the SSG part of the build withNavigationErrorHandler((e: NavigationError) => { throw e; }) ), - provideClientHydration() + provideClientHydration(withNoIncrementalHydration()) ] }; diff --git a/projects/bundle-test/src/app/chip/chip.component.ts b/projects/bundle-test/src/app/chip/chip.component.ts index 48ce8eb6fd0..720a0f06d18 100644 --- a/projects/bundle-test/src/app/chip/chip.component.ts +++ b/projects/bundle-test/src/app/chip/chip.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { ChipResourceStringsBG } from 'igniteui-angular-i18n'; import { IgxChipComponent } from 'igniteui-angular/chips'; @@ -6,6 +6,7 @@ import { IgxChipComponent } from 'igniteui-angular/chips'; selector: 'app-chip', imports: [IgxChipComponent], templateUrl: './chip.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrls: ['./chip.component.scss'] }) export class ChipComponent { diff --git a/projects/bundle-test/src/app/form/form.component.ts b/projects/bundle-test/src/app/form/form.component.ts index 1735df1aeaf..ee3b545537b 100644 --- a/projects/bundle-test/src/app/form/form.component.ts +++ b/projects/bundle-test/src/app/form/form.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormBuilder, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms'; import { IgxCheckboxComponent } from 'igniteui-angular/checkbox'; import { IgxButtonDirective } from 'igniteui-angular/directives'; @@ -19,6 +19,7 @@ import { IgxSwitchComponent } from 'igniteui-angular/switch'; ReactiveFormsModule ], templateUrl: './form.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrls: ['./form.component.scss'] }) export class FormComponent { diff --git a/projects/bundle-test/src/app/h-grid/h-grid.component.ts b/projects/bundle-test/src/app/h-grid/h-grid.component.ts index ef3bfb90058..8bd366a42b2 100644 --- a/projects/bundle-test/src/app/h-grid/h-grid.component.ts +++ b/projects/bundle-test/src/app/h-grid/h-grid.component.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IGX_HIERARCHICAL_GRID_DIRECTIVES } from 'igniteui-angular/grids/hierarchical-grid'; @Component({ selector: 'app-h-grid', templateUrl: './h-grid.component.html', styleUrls: ['./h-grid.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_HIERARCHICAL_GRID_DIRECTIVES] }) export class HGridComponent { diff --git a/projects/bundle-test/src/app/pivot-grid/pivot-grid.component.ts b/projects/bundle-test/src/app/pivot-grid/pivot-grid.component.ts index cf0624d6786..fe5cc61f760 100644 --- a/projects/bundle-test/src/app/pivot-grid/pivot-grid.component.ts +++ b/projects/bundle-test/src/app/pivot-grid/pivot-grid.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IGX_PIVOT_GRID_DIRECTIVES } from 'igniteui-angular/grids/pivot-grid'; import { IgxPivotDateDimension, IPivotConfiguration } from 'igniteui-angular/grids/core'; @@ -6,6 +6,7 @@ import { IgxPivotDateDimension, IPivotConfiguration } from 'igniteui-angular/gri selector: 'app-pivot-grid', templateUrl: './pivot-grid.component.html', styleUrls: ['./pivot-grid.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_PIVOT_GRID_DIRECTIVES] }) export class PivotGridComponent { diff --git a/projects/bundle-test/src/app/stepper/stepper.component.ts b/projects/bundle-test/src/app/stepper/stepper.component.ts index 2ec72ae9a0d..dcc1613dce8 100644 --- a/projects/bundle-test/src/app/stepper/stepper.component.ts +++ b/projects/bundle-test/src/app/stepper/stepper.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxStepperComponent } from 'igniteui-angular/stepper'; @Component({ @@ -6,6 +6,7 @@ import { IgxStepperComponent } from 'igniteui-angular/stepper'; standalone: true, imports: [IgxStepperComponent], templateUrl: './stepper.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrls: ['./stepper.component.scss'] }) export class StepperComponent { diff --git a/projects/bundle-test/tsconfig.app.json b/projects/bundle-test/tsconfig.app.json index 909b1086139..90fe9a70394 100644 --- a/projects/bundle-test/tsconfig.app.json +++ b/projects/bundle-test/tsconfig.app.json @@ -3,27 +3,21 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/app", - "types": [ - "node" - ], + "types": ["node"], "paths": { - "igniteui-angular": [ - "dist/igniteui-angular" - ], - "igniteui-angular/*": [ - "dist/igniteui-angular/*" - ], - "igniteui-angular-i18n": [ - "dist/igniteui-angular-i18n" - ] + "igniteui-angular": ["dist/igniteui-angular"], + "igniteui-angular/*": ["dist/igniteui-angular/*"], + "igniteui-angular-i18n": ["dist/igniteui-angular-i18n"] } }, - "files": [ - "src/main.ts", - "src/main.server.ts", - "server.ts" - ], - "include": [ - "src/**/*.d.ts" - ] + "files": ["src/main.ts", "src/main.server.ts", "server.ts"], + "include": ["src/**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/bundle-test/tsconfig.spec.json b/projects/bundle-test/tsconfig.spec.json index a9c0752ffe5..cb7183762b7 100644 --- a/projects/bundle-test/tsconfig.spec.json +++ b/projects/bundle-test/tsconfig.spec.json @@ -3,12 +3,15 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/spec", - "types": [ - "jasmine" - ] + "types": ["jasmine"] }, - "include": [ - "src/**/*.spec.ts", - "src/**/*.d.ts" - ] + "include": ["src/**/*.spec.ts", "src/**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-elements/src/app/wrapper/wrapper.component.ts b/projects/igniteui-angular-elements/src/app/wrapper/wrapper.component.ts index b5ea969f472..34579c99771 100644 --- a/projects/igniteui-angular-elements/src/app/wrapper/wrapper.component.ts +++ b/projects/igniteui-angular-elements/src/app/wrapper/wrapper.component.ts @@ -1,4 +1,4 @@ -import { ChangeDetectorRef, Component, QueryList, TemplateRef, ViewChildren, inject } from '@angular/core'; +import { ChangeDetectorRef, Component, QueryList, TemplateRef, ViewChildren, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { TemplateRefWrapper } from './template-ref-wrapper'; @@ -10,6 +10,7 @@ type TemplateFunction = (arg: any) => TemplateResult; selector: 'igx-template-wrapper', templateUrl: './wrapper.component.html', styleUrls: ['./wrapper.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [] }) export class TemplateWrapperComponent { diff --git a/projects/igniteui-angular-elements/src/lib/icon.broadcast.service.spec.ts b/projects/igniteui-angular-elements/src/lib/icon.broadcast.service.spec.ts index 3b7e199d0ea..88a8fb1f4e3 100644 --- a/projects/igniteui-angular-elements/src/lib/icon.broadcast.service.spec.ts +++ b/projects/igniteui-angular-elements/src/lib/icon.broadcast.service.spec.ts @@ -1,6 +1,6 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ActionType, BroadcastIconsChangeMessage, IgxIconBroadcastService, SvgIcon, } from './icon.broadcast.service'; -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { IconMeta, IgxIconService } from 'igniteui-angular'; import { wait } from 'igniteui-angular/test-utils/ui-interactions.spec'; @@ -107,6 +107,7 @@ describe('Icon broadcast service', () => { @Component({ template: ``, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, providers: [IgxIconBroadcastService, IgxIconService] }) export class BroadcastServiceComponent { diff --git a/projects/igniteui-angular-elements/src/lib/state.component.ts b/projects/igniteui-angular-elements/src/lib/state.component.ts index f5b142bf575..a1bb26414a6 100644 --- a/projects/igniteui-angular-elements/src/lib/state.component.ts +++ b/projects/igniteui-angular-elements/src/lib/state.component.ts @@ -1,4 +1,4 @@ -import { Component, EventEmitter, Output, inject } from '@angular/core'; +import { Component, EventEmitter, Output, inject, ChangeDetectionStrategy } from '@angular/core'; import { IFilteringExpressionsTree, IGroupingState, IPagingState, ISortingExpression } from 'igniteui-angular/core'; import { GridFeatures, GridSelectionRange, GridType, IColumnState, IGridStateCollection, IGX_GRID_BASE, IgxGridStateBaseDirective, IPinningConfig, IPivotConfiguration } from 'igniteui-angular/grids/core'; @@ -41,6 +41,7 @@ export interface IGridStateInfo { selector: 'igx-grid-state', template: ``, styles: `:host { display: none }`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxGridStateComponent extends IgxGridStateBaseDirective { diff --git a/projects/igniteui-angular-elements/tsconfig.app.json b/projects/igniteui-angular-elements/tsconfig.app.json index 6621e222c4a..e569b59f5c5 100644 --- a/projects/igniteui-angular-elements/tsconfig.app.json +++ b/projects/igniteui-angular-elements/tsconfig.app.json @@ -2,13 +2,16 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "../../out-tsc/app", + "outDir": "../../out-tsc/app" }, - "files": [ - "src/main.app.ts", - "src/polyfills.ts" - ], - "include": [ - "src/**/*.d.ts" - ] + "files": ["src/main.app.ts", "src/polyfills.ts"], + "include": ["src/**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-elements/tsconfig.main.json b/projects/igniteui-angular-elements/tsconfig.main.json index 2bd879f7fb2..b386c74bfde 100644 --- a/projects/igniteui-angular-elements/tsconfig.main.json +++ b/projects/igniteui-angular-elements/tsconfig.main.json @@ -2,13 +2,16 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "../../out-tsc/app", + "outDir": "../../out-tsc/app" }, - "files": [ - "src/main.ts", - "src/polyfills.ts" - ], - "include": [ - "src/**/*.d.ts" - ] + "files": ["src/main.ts", "src/polyfills.ts"], + "include": ["src/**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-elements/tsconfig.spec.json b/projects/igniteui-angular-elements/tsconfig.spec.json index 70dea48b858..21c54a6ea6e 100644 --- a/projects/igniteui-angular-elements/tsconfig.spec.json +++ b/projects/igniteui-angular-elements/tsconfig.spec.json @@ -4,16 +4,16 @@ "compilerOptions": { "allowJs": true, "outDir": "../../out-tsc/spec", - "types": [ - "jasmine" - ] + "types": ["jasmine"] }, - "files": [ - "src/test.ts", - "src/polyfills.ts" - ], - "include": [ - "src/**/*.spec.ts", - "src/**/*.d.ts" - ] + "files": ["src/test.ts", "src/polyfills.ts"], + "include": ["src/**/*.spec.ts", "src/**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.ts b/projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.ts index 0bdcfc028f2..2ed805da023 100644 --- a/projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.ts +++ b/projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.ts @@ -1,16 +1,17 @@ import { - AfterViewInit, - Component, - EventEmitter, - HostBinding, - OnDestroy, - Output, - ViewChild, - ViewContainerRef, - ViewEncapsulation, - ElementRef, - CUSTOM_ELEMENTS_SCHEMA, - inject + AfterViewInit, + Component, + EventEmitter, + HostBinding, + OnDestroy, + Output, + ViewChild, + ViewContainerRef, + ViewEncapsulation, + ElementRef, + CUSTOM_ELEMENTS_SCHEMA, + inject, + ChangeDetectionStrategy } from '@angular/core'; import { CommonModule } from '@angular/common'; import * as charts from '../../../images/charts'; @@ -25,6 +26,7 @@ import { SvgPipe } from '../../pipes/svg.pipe'; styleUrls: ['./chart-dialog.component.scss'], encapsulation: ViewEncapsulation.None, imports: [CommonModule, IgxIconComponent, IgxIconButtonDirective, IgxRippleDirective, IgxDividerDirective, SvgPipe], + changeDetection: ChangeDetectionStrategy.Eager, schemas: [CUSTOM_ELEMENTS_SCHEMA] }) export class IgxChartMenuComponent implements AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.ts b/projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.ts index ab16f161c60..c57c9ae1395 100644 --- a/projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.ts +++ b/projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, Component, ElementRef, ViewChild, ViewContainerRef, OnDestroy, CUSTOM_ELEMENTS_SCHEMA, inject } from '@angular/core'; +import { AfterViewInit, Component, ElementRef, ViewChild, ViewContainerRef, OnDestroy, CUSTOM_ELEMENTS_SCHEMA, inject, ChangeDetectionStrategy } from '@angular/core'; import { CommonModule } from '@angular/common'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; @@ -50,6 +50,7 @@ import { CHART_TYPE } from '../directives/chart-integration/chart-types'; IgxNumericYAxisModule, IgxIconButtonDirective ], + changeDetection: ChangeDetectionStrategy.Eager, schemas: [CUSTOM_ELEMENTS_SCHEMA] }) export class IgxContextMenuComponent implements AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular-extras/tsconfig.lib.json b/projects/igniteui-angular-extras/tsconfig.lib.json index a0ce6269c7d..e70b501273a 100644 --- a/projects/igniteui-angular-extras/tsconfig.lib.json +++ b/projects/igniteui-angular-extras/tsconfig.lib.json @@ -7,16 +7,17 @@ "inlineSources": true, "types": [], "paths": { - "igniteui-angular": [ - "dist/igniteui-angular/" - ], - "igniteui-angular/*": [ - "dist/igniteui-angular/*" - ] + "igniteui-angular": ["dist/igniteui-angular/"], + "igniteui-angular/*": ["dist/igniteui-angular/*"] } }, - "exclude": [ - "src/test.ts", - "**/*.spec.ts" - ] + "exclude": ["src/test.ts", "**/*.spec.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-extras/tsconfig.lib.prod.json b/projects/igniteui-angular-extras/tsconfig.lib.prod.json index 6330633d9b6..6e0a48df6d0 100644 --- a/projects/igniteui-angular-extras/tsconfig.lib.prod.json +++ b/projects/igniteui-angular-extras/tsconfig.lib.prod.json @@ -4,6 +4,12 @@ "declarationMap": false }, "angularCompilerOptions": { - "compilationMode": "partial" + "compilationMode": "partial", + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } } -} \ No newline at end of file +} diff --git a/projects/igniteui-angular-extras/tsconfig.spec.json b/projects/igniteui-angular-extras/tsconfig.spec.json index 16ab1f9f729..f6c5faccd17 100644 --- a/projects/igniteui-angular-extras/tsconfig.spec.json +++ b/projects/igniteui-angular-extras/tsconfig.spec.json @@ -2,13 +2,15 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/spec", - "types": [ - "jasmine", - "node" - ] + "types": ["jasmine", "node"] }, - "include": [ - "**/*.spec.ts", - "**/*.d.ts" - ] + "include": ["**/*.spec.ts", "**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-performance/src/app/app.component.ts b/projects/igniteui-angular-performance/src/app/app.component.ts index d25206dadf1..e7410c7e5f5 100644 --- a/projects/igniteui-angular-performance/src/app/app.component.ts +++ b/projects/igniteui-angular-performance/src/app/app.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { RouterLink, RouterOutlet, Routes } from '@angular/router'; import { IgxButtonDirective } from 'igniteui-angular'; import { routes } from './app.routes'; @@ -7,6 +7,7 @@ import { routes } from './app.routes'; selector: 'app-root', imports: [RouterOutlet, IgxButtonDirective, RouterLink], templateUrl: './app.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './app.component.scss' }) export class AppComponent { diff --git a/projects/igniteui-angular-performance/src/app/grid/grid.component.ts b/projects/igniteui-angular-performance/src/app/grid/grid.component.ts index 5a8bf831dc1..9d3ff84dae8 100644 --- a/projects/igniteui-angular-performance/src/app/grid/grid.component.ts +++ b/projects/igniteui-angular-performance/src/app/grid/grid.component.ts @@ -1,4 +1,4 @@ -import { Component, inject, ViewChild } from '@angular/core'; +import { Component, inject, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { GridColumnDataType, IGX_GRID_DIRECTIVES, IgxGridComponent } from "igniteui-angular" import { DataService } from '../services/data.service'; import { ActivatedRoute } from '@angular/router'; @@ -7,6 +7,7 @@ import { ActivatedRoute } from '@angular/router'; selector: 'app-grid', imports: [IGX_GRID_DIRECTIVES], templateUrl: './grid.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './grid.component.scss' }) export class GridComponent { diff --git a/projects/igniteui-angular-performance/src/app/hierarchical-grid/hierarchical-grid.component.ts b/projects/igniteui-angular-performance/src/app/hierarchical-grid/hierarchical-grid.component.ts index a23f8a5bfa0..4fd7d245868 100644 --- a/projects/igniteui-angular-performance/src/app/hierarchical-grid/hierarchical-grid.component.ts +++ b/projects/igniteui-angular-performance/src/app/hierarchical-grid/hierarchical-grid.component.ts @@ -1,4 +1,4 @@ -import { Component, inject, ViewChild } from '@angular/core'; +import { Component, inject, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { GridColumnDataType, IgxColumnComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent } from "igniteui-angular" import { DataService } from '../services/data.service'; import { ActivatedRoute } from '@angular/router'; @@ -7,6 +7,7 @@ import { ActivatedRoute } from '@angular/router'; selector: 'app-hierarchical-grid', imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent], templateUrl: './hierarchical-grid.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './hierarchical-grid.component.scss' }) export class HierarchicalGridComponent { diff --git a/projects/igniteui-angular-performance/src/app/pivot-grid/pivot-grid.component.ts b/projects/igniteui-angular-performance/src/app/pivot-grid/pivot-grid.component.ts index 9070c7202a8..6fd22bbe899 100644 --- a/projects/igniteui-angular-performance/src/app/pivot-grid/pivot-grid.component.ts +++ b/projects/igniteui-angular-performance/src/app/pivot-grid/pivot-grid.component.ts @@ -1,5 +1,5 @@ import { CurrencyPipe } from '@angular/common'; -import { Component, inject, ViewChild } from '@angular/core'; +import { Component, inject, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FilteringExpressionsTree, FilteringLogic, IgxPivotDateDimension, IgxPivotGridComponent, IPivotConfiguration, IPivotValue, SortingDirection } from 'igniteui-angular'; import { DataService } from '../services/data.service'; @@ -46,6 +46,7 @@ export class IgxSaleProfitAggregate { selector: 'app-pivot-grid', imports: [IgxPivotGridComponent], templateUrl: './pivot-grid.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './pivot-grid.component.scss' }) export class PivotGridComponent { diff --git a/projects/igniteui-angular-performance/src/app/tree-grid/tree-grid.component.ts b/projects/igniteui-angular-performance/src/app/tree-grid/tree-grid.component.ts index 2f274c23ade..e43924cadd3 100644 --- a/projects/igniteui-angular-performance/src/app/tree-grid/tree-grid.component.ts +++ b/projects/igniteui-angular-performance/src/app/tree-grid/tree-grid.component.ts @@ -1,4 +1,4 @@ -import { Component, inject, ViewChild } from '@angular/core'; +import { Component, inject, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; import { GridColumnDataType, IgxColumnComponent, IgxTreeGridComponent } from 'igniteui-angular'; import { DataService } from '../services/data.service'; @@ -7,6 +7,7 @@ import { DataService } from '../services/data.service'; selector: 'app-tree-grid', imports: [IgxTreeGridComponent, IgxColumnComponent], templateUrl: './tree-grid.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './tree-grid.component.scss' }) export class TreeGridComponent { diff --git a/projects/igniteui-angular-performance/tsconfig.app.json b/projects/igniteui-angular-performance/tsconfig.app.json index 5aec453674b..2c376d0e7b9 100644 --- a/projects/igniteui-angular-performance/tsconfig.app.json +++ b/projects/igniteui-angular-performance/tsconfig.app.json @@ -7,10 +7,14 @@ "types": [], "composite": true }, - "include": [ - "src/**/*.ts" - ], - "exclude": [ - "src/**/*.spec.ts" - ] + "include": ["src/**/*.ts"], + "exclude": ["src/**/*.spec.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular-performance/tsconfig.spec.json b/projects/igniteui-angular-performance/tsconfig.spec.json index 37243947a17..60f87e9a6ca 100644 --- a/projects/igniteui-angular-performance/tsconfig.spec.json +++ b/projects/igniteui-angular-performance/tsconfig.spec.json @@ -4,12 +4,16 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/spec", - "types": [ - "jasmine" - ], + "types": ["jasmine"], "composite": true }, - "include": [ - "src/**/*.ts" - ] + "include": ["src/**/*.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/projects/igniteui-angular/accordion/src/accordion/accordion.component.spec.ts b/projects/igniteui-angular/accordion/src/accordion/accordion.component.spec.ts index f75116923a9..3c0e4e32816 100644 --- a/projects/igniteui-angular/accordion/src/accordion/accordion.component.spec.ts +++ b/projects/igniteui-angular/accordion/src/accordion/accordion.component.spec.ts @@ -1,5 +1,5 @@ import { useAnimation } from '@angular/animations'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { waitForAsync, TestBed, fakeAsync, ComponentFixture, tick } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -403,6 +403,7 @@ describe('Rendering Tests', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAccordionComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelBodyComponent, IgxExpansionPanelTitleDirective] }) export class IgxAccordionSampleTestComponent { diff --git a/projects/igniteui-angular/accordion/src/accordion/accordion.component.ts b/projects/igniteui-angular/accordion/src/accordion/accordion.component.ts index a5516df2921..6d9af003a9d 100644 --- a/projects/igniteui-angular/accordion/src/accordion/accordion.component.ts +++ b/projects/igniteui-angular/accordion/src/accordion/accordion.component.ts @@ -1,4 +1,4 @@ -import { AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, ContentChildren, EventEmitter, HostBinding, Input, OnDestroy, Output, QueryList, booleanAttribute, inject } from '@angular/core'; +import { AfterContentInit, AfterViewInit, ChangeDetectorRef, Component, ContentChildren, EventEmitter, HostBinding, Input, OnDestroy, Output, QueryList, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { fromEvent, Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import { @@ -53,6 +53,7 @@ let NEXT_ID = 0; @Component({ selector: 'igx-accordion', templateUrl: 'accordion.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxAccordionComponent implements AfterContentInit, AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.spec.ts b/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.spec.ts index 5f17dcfc137..a8b40d2b864 100644 --- a/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.spec.ts +++ b/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.spec.ts @@ -1,5 +1,5 @@ import { IgxActionStripComponent, IgxActionStripMenuItemDirective } from './action-strip.component'; -import { Component, ViewChild, ElementRef, ViewContainerRef } from '@angular/core'; +import { Component, ViewChild, ElementRef, ViewContainerRef, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -168,6 +168,7 @@ describe('igxActionStrip', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxActionStripComponent, IgxIconComponent] }) class IgxActionStripTestingComponent { @@ -205,6 +206,7 @@ class IgxActionStripTestingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxActionStripComponent, IgxActionStripMenuItemDirective] }) class IgxActionStripMenuTestingComponent { @@ -227,6 +229,7 @@ class IgxActionStripMenuTestingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxActionStripComponent, IgxActionStripMenuItemDirective] }) class IgxActionStripCombinedMenuTestingComponent { diff --git a/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts b/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts index d56215f99d8..69dcd68830e 100644 --- a/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts +++ b/projects/igniteui-angular/action-strip/src/action-strip/action-strip.component.ts @@ -1,21 +1,22 @@ import { - Component, - Directive, - HostBinding, - Input, - Renderer2, - ViewContainerRef, - ContentChildren, - QueryList, - ViewChild, - TemplateRef, - ChangeDetectorRef, - AfterViewInit, - ElementRef, - booleanAttribute, - inject, - DestroyRef, - AfterContentInit + Component, + Directive, + HostBinding, + Input, + Renderer2, + ViewContainerRef, + ContentChildren, + QueryList, + ViewChild, + TemplateRef, + ChangeDetectorRef, + AfterViewInit, + ElementRef, + booleanAttribute, + inject, + DestroyRef, + AfterContentInit, + ChangeDetectionStrategy } from '@angular/core'; @@ -90,6 +91,7 @@ export class IgxActionStripMenuItemDirective { IgxDropDownComponent, IgxDropDownItemComponent ], + changeDetection: ChangeDetectionStrategy.Eager, providers: [{ provide: IgxActionStripToken, useExisting: IgxActionStripComponent }] }) export class IgxActionStripComponent implements IgxActionStripToken, AfterViewInit, AfterContentInit { diff --git a/projects/igniteui-angular/avatar/src/avatar/avatar.component.spec.ts b/projects/igniteui-angular/avatar/src/avatar/avatar.component.spec.ts index 5f13ec83de7..c1088467167 100644 --- a/projects/igniteui-angular/avatar/src/avatar/avatar.component.spec.ts +++ b/projects/igniteui-angular/avatar/src/avatar/avatar.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxAvatarComponent, IgxAvatarType, IgxAvatarSize } from './avatar.component'; @@ -193,6 +193,7 @@ describe('Avatar', () => { @Component({ template: `TEST`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent] }) class InitAvatarComponent { @@ -202,6 +203,7 @@ class InitAvatarComponent { @Component({ template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent] }) class AvatarWithAttribsComponent { @@ -212,6 +214,7 @@ class AvatarWithAttribsComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent] }) class InitIconAvatarComponent { @@ -220,6 +223,7 @@ class InitIconAvatarComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent] }) class InitImageAvatarComponent { diff --git a/projects/igniteui-angular/avatar/src/avatar/avatar.component.ts b/projects/igniteui-angular/avatar/src/avatar/avatar.component.ts index 91ead023fea..d23f48f369f 100644 --- a/projects/igniteui-angular/avatar/src/avatar/avatar.component.ts +++ b/projects/igniteui-angular/avatar/src/avatar/avatar.component.ts @@ -1,5 +1,5 @@ import { NgTemplateOutlet } from '@angular/common'; -import { Component, ElementRef, HostBinding, Input, OnInit, TemplateRef, ViewChild, inject } from '@angular/core'; +import { Component, ElementRef, HostBinding, Input, OnInit, TemplateRef, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { normalizeURI } from 'igniteui-angular/core'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -45,6 +45,7 @@ export type IgxAvatarType = (typeof IgxAvatarType)[keyof typeof IgxAvatarType]; @Component({ selector: 'igx-avatar', templateUrl: 'avatar.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, NgTemplateOutlet] }) export class IgxAvatarComponent implements OnInit { diff --git a/projects/igniteui-angular/badge/src/badge/badge.component.spec.ts b/projects/igniteui-angular/badge/src/badge/badge.component.spec.ts index 6d398d5e871..9c6492b9df1 100644 --- a/projects/igniteui-angular/badge/src/badge/badge.component.spec.ts +++ b/projects/igniteui-angular/badge/src/badge/badge.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxBadgeComponent, IgxBadgeType } from './badge.component'; @@ -112,6 +112,7 @@ describe('Badge', () => { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent] }) class InitBadgeComponent { @@ -120,6 +121,7 @@ class InitBadgeComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent] }) class InitBadgeWithDefaultsComponent { @@ -128,6 +130,7 @@ class InitBadgeWithDefaultsComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent] }) class InitBadgeWithIconComponent { @@ -136,6 +139,7 @@ class InitBadgeWithIconComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent] }) class InitBadgeWithIconARIAComponent { @@ -144,6 +148,7 @@ class InitBadgeWithIconARIAComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent] }) class InitBadgeWithDotComponent { diff --git a/projects/igniteui-angular/badge/src/badge/badge.component.ts b/projects/igniteui-angular/badge/src/badge/badge.component.ts index fad37ca85f6..7430385f650 100644 --- a/projects/igniteui-angular/badge/src/badge/badge.component.ts +++ b/projects/igniteui-angular/badge/src/badge/badge.component.ts @@ -1,4 +1,4 @@ -import { booleanAttribute, Component, HostBinding, Input } from '@angular/core'; +import { booleanAttribute, Component, HostBinding, Input, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconComponent } from 'igniteui-angular/icon'; let NEXT_ID = 0; @@ -41,6 +41,7 @@ export type IgxBadgeType = (typeof IgxBadgeType)[keyof typeof IgxBadgeType]; @Component({ selector: 'igx-badge', templateUrl: 'badge.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent] }) export class IgxBadgeComponent { diff --git a/projects/igniteui-angular/banner/src/banner/banner.component.spec.ts b/projects/igniteui-angular/banner/src/banner/banner.component.spec.ts index 0dad3dffeab..bd142a1254d 100644 --- a/projects/igniteui-angular/banner/src/banner/banner.component.spec.ts +++ b/projects/igniteui-angular/banner/src/banner/banner.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, DebugElement } from '@angular/core'; +import { Component, ViewChild, DebugElement, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, tick, fakeAsync, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxBannerComponent } from './banner.component'; @@ -540,6 +540,7 @@ describe('igxBanner', () => {
SOME PAGE CONTENT
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent] }) export class IgxBannerEmptyComponent { @@ -559,6 +560,7 @@ export class IgxBannerEmptyComponent {
SOME PAGE CONTENT
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent, IgxBannerActionsDirective] }) export class IgxBannerOneButtonComponent { @@ -580,6 +582,7 @@ export class IgxBannerOneButtonComponent {
SOME PAGE CONTENT
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent, IgxBannerActionsDirective, IgxIconComponent] }) export class IgxBannerSampleComponent { @@ -610,6 +613,7 @@ export class IgxBannerSampleComponent {
SOME PAGE CONTENT
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent, IgxCardComponent, IgxCardHeaderComponent, IgxCardContentDirective, IgxBannerActionsDirective, IgxAvatarComponent] }) export class IgxBannerCustomTemplateComponent { @@ -623,6 +627,7 @@ export class IgxBannerCustomTemplateComponent { Simple message
SOME PAGE CONTENT
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent] }) export class SimpleBannerEventsComponent { @@ -649,6 +654,7 @@ export class SimpleBannerEventsComponent { `, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBannerComponent] }) export class IgxBannerInitializedOpenComponent { diff --git a/projects/igniteui-angular/banner/src/banner/banner.component.ts b/projects/igniteui-angular/banner/src/banner/banner.component.ts index 8de0f4b6ed6..674766ee07d 100644 --- a/projects/igniteui-angular/banner/src/banner/banner.component.ts +++ b/projects/igniteui-angular/banner/src/banner/banner.component.ts @@ -1,14 +1,15 @@ import { - Component, - ContentChild, - DestroyRef, - ElementRef, - EventEmitter, - HostBinding, - inject, - Input, - Output, - ViewChild + Component, + ContentChild, + DestroyRef, + ElementRef, + EventEmitter, + HostBinding, + inject, + Input, + Output, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -52,6 +53,7 @@ export interface BannerCancelEventArgs extends BannerEventArgs, CancelableEventA @Component({ selector: 'igx-banner', templateUrl: 'banner.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxExpansionPanelComponent, IgxExpansionPanelBodyComponent, IgxButtonDirective, IgxRippleDirective] }) export class IgxBannerComponent implements IToggleView { diff --git a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-content.component.ts b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-content.component.ts index f9d9a3241cd..b5aee019dd4 100644 --- a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-content.component.ts +++ b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-content.component.ts @@ -1,10 +1,11 @@ -import { Component, HostBinding } from '@angular/core'; +import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxTabContentBase, IgxTabContentDirective } from 'igniteui-angular/tabs'; @Component({ selector: 'igx-bottom-nav-content', templateUrl: 'bottom-nav-content.component.html', providers: [{ provide: IgxTabContentBase, useExisting: IgxBottomNavContentComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [] }) export class IgxBottomNavContentComponent extends IgxTabContentDirective { diff --git a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-header.component.ts b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-header.component.ts index 6a043964b57..c3dd712d8f9 100644 --- a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-header.component.ts +++ b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-header.component.ts @@ -1,10 +1,11 @@ -import { Component, HostBinding } from '@angular/core'; +import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxTabHeaderBase, IgxTabHeaderDirective } from 'igniteui-angular/tabs'; @Component({ selector: 'igx-bottom-nav-header', templateUrl: 'bottom-nav-header.component.html', providers: [{ provide: IgxTabHeaderBase, useExisting: IgxBottomNavHeaderComponent }], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxBottomNavHeaderComponent extends IgxTabHeaderDirective { diff --git a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-item.component.ts b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-item.component.ts index 51c62ddc373..36147ec72f6 100644 --- a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-item.component.ts +++ b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav-item.component.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxTabItemDirective } from 'igniteui-angular/tabs'; @Component({ selector: 'igx-bottom-nav-item', templateUrl: 'bottom-nav-item.component.html', providers: [{ provide: IgxTabItemDirective, useExisting: IgxBottomNavItemComponent }], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxBottomNavItemComponent extends IgxTabItemDirective { diff --git a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav.component.ts b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav.component.ts index 90de22cd5a7..11053b51955 100644 --- a/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav.component.ts +++ b/projects/igniteui-angular/bottom-nav/src/bottom-nav/bottom-nav.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { NgTemplateOutlet } from '@angular/common'; import { IgxTabsBase, IgxTabsDirective } from 'igniteui-angular/tabs'; @@ -41,6 +41,7 @@ let NEXT_BOTTOM_NAV_ITEM_ID = 0; selector: 'igx-bottom-nav', templateUrl: 'bottom-nav.component.html', providers: [{ provide: IgxTabsBase, useExisting: IgxBottomNavComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgTemplateOutlet] }) export class IgxBottomNavComponent extends IgxTabsDirective { diff --git a/projects/igniteui-angular/button-group/src/button-group/button-group.component.spec.ts b/projects/igniteui-angular/button-group/src/button-group/button-group.component.spec.ts index dd51eec749e..13ec640d54b 100644 --- a/projects/igniteui-angular/button-group/src/button-group/button-group.component.spec.ts +++ b/projects/igniteui-angular/button-group/src/button-group/button-group.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, flushMicrotasks, waitForAsync } from '@angular/core/testing'; import { ButtonGroupAlignment, IgxButtonGroupComponent } from './button-group.component'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -461,6 +461,7 @@ describe('IgxButtonGroup', () => { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent] }) class InitButtonGroupComponent implements OnInit { @@ -495,6 +496,7 @@ class InitButtonGroupComponent implements OnInit { [values]="cities" [alignment]="alignment"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent] }) class InitButtonGroupWithValuesComponent implements OnInit { @@ -544,6 +546,7 @@ class InitButtonGroupWithValuesComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective] }) class TemplatedButtonGroupComponent { @@ -559,6 +562,7 @@ class TemplatedButtonGroupComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective] }) class TemplatedButtonGroupDesplayDensityComponent { @@ -573,6 +577,7 @@ class TemplatedButtonGroupDesplayDensityComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective] }) class ButtonGroupWithSelectedButtonComponent { @@ -587,6 +592,7 @@ class ButtonGroupWithSelectedButtonComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective] }) class ButtonGroupButtonWithBoundSelectedOutputComponent { @@ -624,6 +630,7 @@ class ButtonGroupButtonWithBoundSelectedOutputComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective, IgxRadioGroupDirective, IgxRadioComponent] }) class ButtonGroupSelectionBoundToAnotherComponent { diff --git a/projects/igniteui-angular/button-group/src/button-group/button-group.component.ts b/projects/igniteui-angular/button-group/src/button-group/button-group.component.ts index f11590b12c7..a69e1e1e47f 100644 --- a/projects/igniteui-angular/button-group/src/button-group/button-group.component.ts +++ b/projects/igniteui-angular/button-group/src/button-group/button-group.component.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, Component, ContentChildren, ChangeDetectorRef, EventEmitter, HostBinding, Input, Output, QueryList, Renderer2, ViewChildren, OnDestroy, ElementRef, booleanAttribute, inject } from '@angular/core'; +import { AfterViewInit, Component, ContentChildren, ChangeDetectorRef, EventEmitter, HostBinding, Input, Output, QueryList, Renderer2, ViewChildren, OnDestroy, ElementRef, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { IgxButtonDirective } from 'igniteui-angular/directives'; import { IgxRippleDirective } from 'igniteui-angular/directives'; @@ -41,6 +41,7 @@ let NEXT_ID = 0; @Component({ selector: 'igx-buttongroup', templateUrl: 'button-group-content.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxRippleDirective, IgxIconComponent] }) export class IgxButtonGroupComponent implements AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/calendar/src/calendar/calendar-multi-view.component.spec.ts b/projects/igniteui-angular/calendar/src/calendar/calendar-multi-view.component.spec.ts index 19e9b044c67..d1376c41439 100644 --- a/projects/igniteui-angular/calendar/src/calendar/calendar-multi-view.component.spec.ts +++ b/projects/igniteui-angular/calendar/src/calendar/calendar-multi-view.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, TestBed, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -1113,6 +1113,7 @@ describe('Multi-View Calendar - ', () => { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent] }) export class MultiViewCalendarSampleComponent { @@ -1124,6 +1125,7 @@ export class MultiViewCalendarSampleComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent] }) export class MultiViewDatePickerSampleComponent { @@ -1136,6 +1138,7 @@ export class MultiViewDatePickerSampleComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent, FormsModule] }) export class MultiViewNgModelSampleComponent { diff --git a/projects/igniteui-angular/calendar/src/calendar/calendar.component.spec.ts b/projects/igniteui-angular/calendar/src/calendar/calendar.component.spec.ts index c543d803d53..5418e3d4f49 100644 --- a/projects/igniteui-angular/calendar/src/calendar/calendar.component.spec.ts +++ b/projects/igniteui-angular/calendar/src/calendar/calendar.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, LOCALE_ID, ViewChild } from "@angular/core"; +import { Component, DebugElement, LOCALE_ID, ViewChild, ChangeDetectionStrategy } from "@angular/core"; import { TestBed, tick, @@ -3027,6 +3027,7 @@ describe("IgxCalendar - ", () => { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent, FormsModule] }) export class IgxCalendarSampleComponent { @@ -3040,6 +3041,7 @@ export class IgxCalendarSampleComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent] }) export class IgxCalendarRangeComponent { @@ -3058,6 +3060,7 @@ export class IgxCalendarRangeComponent { > `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent, FormsModule] }) export class IgxCalendarDisabledSpecialDatesComponent { @@ -3081,6 +3084,7 @@ export class IgxCalendarDisabledSpecialDatesComponent { @Component({ template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarComponent] }) export class IgxCalendarValueComponent { diff --git a/projects/igniteui-angular/calendar/src/calendar/calendar.component.ts b/projects/igniteui-angular/calendar/src/calendar/calendar.component.ts index c8c8de763ac..58f152f0791 100644 --- a/projects/igniteui-angular/calendar/src/calendar/calendar.component.ts +++ b/projects/igniteui-angular/calendar/src/calendar/calendar.component.ts @@ -1,16 +1,17 @@ import { - Component, - ContentChild, - forwardRef, - HostBinding, - Input, - ViewChild, - ElementRef, - AfterViewInit, - ViewChildren, - QueryList, - booleanAttribute, - HostListener, + Component, + ContentChild, + forwardRef, + HostBinding, + Input, + ViewChild, + ElementRef, + AfterViewInit, + ViewChildren, + QueryList, + booleanAttribute, + HostListener, + ChangeDetectionStrategy } from '@angular/core'; import { NgTemplateOutlet } from '@angular/common'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; @@ -70,6 +71,7 @@ let NEXT_ID = 0; ], selector: 'igx-calendar', templateUrl: 'calendar.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgTemplateOutlet, IgxCalendarScrollPageDirective, IgxIconComponent, IgxDaysViewComponent, IgxMonthsViewComponent, IgxYearsViewComponent, IgxDateFormatterPipe, IgxMonthViewSlotsCalendar, IgxGetViewDateCalendar] }) export class IgxCalendarComponent extends IgxCalendarBaseDirective implements AfterViewInit { diff --git a/projects/igniteui-angular/calendar/src/calendar/days-view/days-view.component.spec.ts b/projects/igniteui-angular/calendar/src/calendar/days-view/days-view.component.spec.ts index c4c8a3ff4b4..9f9455fbec1 100644 --- a/projects/igniteui-angular/calendar/src/calendar/days-view/days-view.component.spec.ts +++ b/projects/igniteui-angular/calendar/src/calendar/days-view/days-view.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, ViewChild } from "@angular/core"; +import { Component, DebugElement, ViewChild, ChangeDetectionStrategy } from "@angular/core"; import { IgxDaysViewComponent } from "./days-view.component"; import { ComponentFixture, TestBed, waitForAsync } from "@angular/core/testing"; import { By } from "@angular/platform-browser"; @@ -428,6 +428,7 @@ function getInactiveDays(fixture: ComponentFixture) { [value]="date" [disabledDates]="disabledDates" >`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDaysViewComponent] }) class InitDaysViewComponent { diff --git a/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.spec.ts b/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.spec.ts index ba98c73cb48..6ade99fc1d1 100644 --- a/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.spec.ts +++ b/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; @@ -737,6 +737,7 @@ describe('IgxMonthPicker', () => { [formatOptions]="formatOptions" [locale]="locale"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxMonthPickerComponent] }) export class IgxMonthPickerSampleComponent { diff --git a/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.ts b/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.ts index d41f3b4721d..a258192d5f6 100644 --- a/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.ts +++ b/projects/igniteui-angular/calendar/src/calendar/month-picker/month-picker.component.ts @@ -1,12 +1,13 @@ import { - Component, - HostListener, - ViewChild, - HostBinding, - Input, - ElementRef, - AfterViewInit, - OnInit, + Component, + HostListener, + ViewChild, + HostBinding, + Input, + ElementRef, + AfterViewInit, + OnInit, + ChangeDetectionStrategy } from "@angular/core"; import { NgTemplateOutlet } from "@angular/common"; import { NG_VALUE_ACCESSOR } from "@angular/forms"; @@ -35,6 +36,7 @@ let NEXT_ID = 0; ], selector: "igx-month-picker", templateUrl: "month-picker.component.html", + changeDetection: ChangeDetectionStrategy.Eager, imports: [ NgTemplateOutlet, IgxDateFormatterPipe, diff --git a/projects/igniteui-angular/calendar/src/calendar/months-view/months-view.component.ts b/projects/igniteui-angular/calendar/src/calendar/months-view/months-view.component.ts index 41e34c6e3c8..d9c75e1f5b7 100644 --- a/projects/igniteui-angular/calendar/src/calendar/months-view/months-view.component.ts +++ b/projects/igniteui-angular/calendar/src/calendar/months-view/months-view.component.ts @@ -1,10 +1,11 @@ import { - Component, - Input, - HostBinding, - ElementRef, - booleanAttribute, - inject, + Component, + Input, + HostBinding, + ElementRef, + booleanAttribute, + inject, + ChangeDetectionStrategy } from "@angular/core"; import { IgxCalendarMonthDirective } from "../calendar.directives"; import { TitleCasePipe } from "@angular/common"; @@ -32,6 +33,7 @@ let NEXT_ID = 0; ], selector: "igx-months-view", templateUrl: "months-view.component.html", + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarMonthDirective, TitleCasePipe] }) export class IgxMonthsViewComponent extends IgxCalendarViewDirective implements ControlValueAccessor { diff --git a/projects/igniteui-angular/calendar/src/calendar/years-view/years-view.component.ts b/projects/igniteui-angular/calendar/src/calendar/years-view/years-view.component.ts index adde79ae3d5..cfda9cbb0d7 100644 --- a/projects/igniteui-angular/calendar/src/calendar/years-view/years-view.component.ts +++ b/projects/igniteui-angular/calendar/src/calendar/years-view/years-view.component.ts @@ -1,9 +1,10 @@ import { - Component, - Input, - HostBinding, - ElementRef, - inject, + Component, + Input, + HostBinding, + ElementRef, + inject, + ChangeDetectionStrategy } from "@angular/core"; import { IgxCalendarYearDirective } from "../calendar.directives"; import { @@ -28,6 +29,7 @@ import { CalendarDay, calendarRange, PlatformUtil } from 'igniteui-angular/core' ], selector: "igx-years-view", templateUrl: "years-view.component.html", + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarYearDirective] }) export class IgxYearsViewComponent extends IgxCalendarViewDirective implements ControlValueAccessor { diff --git a/projects/igniteui-angular/card/src/card/card.component.ts b/projects/igniteui-angular/card/src/card/card.component.ts index 8e1dda11c68..bc6221cab55 100644 --- a/projects/igniteui-angular/card/src/card/card.component.ts +++ b/projects/igniteui-angular/card/src/card/card.component.ts @@ -1,4 +1,4 @@ -import { Component, Directive, HostBinding, Input, OnInit, OnChanges, SimpleChanges, booleanAttribute, inject } from '@angular/core'; +import { Component, Directive, HostBinding, Input, OnInit, OnChanges, SimpleChanges, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; let NEXT_ID = 0; @@ -57,6 +57,7 @@ export class IgxCardMediaDirective { @Component({ selector: 'igx-card-header', templateUrl: 'card-header.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxCardHeaderComponent { @@ -185,6 +186,7 @@ export class IgxCardFooterDirective { @Component({ selector: 'igx-card', templateUrl: 'card.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxCardComponent { @@ -269,6 +271,7 @@ export type IgxCardActionsLayout = (typeof IgxCardActionsLayout)[keyof typeof Ig @Component({ selector: 'igx-card-actions', templateUrl: 'card-actions.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxCardActionsComponent implements OnInit, OnChanges { diff --git a/projects/igniteui-angular/card/src/card/card.spec.ts b/projects/igniteui-angular/card/src/card/card.spec.ts index 3c148b30d43..123d0132c6b 100644 --- a/projects/igniteui-angular/card/src/card/card.spec.ts +++ b/projects/igniteui-angular/card/src/card/card.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { @@ -234,12 +234,14 @@ describe('Card', () => { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent] }) class InitCardComponent { } @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent] }) class InitOutlinedCardComponent { @@ -251,6 +253,7 @@ class InitOutlinedCardComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent, IgxCardHeaderComponent] }) class CardWithHeaderComponent { } @@ -261,6 +264,7 @@ class CardWithHeaderComponent { } face `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent, IgxCardContentDirective, IgxIconComponent] }) class CardContentIconComponent { } @@ -286,6 +290,7 @@ class CardContentIconComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxCardComponent, IgxCardMediaDirective, @@ -314,6 +319,7 @@ class VerticalCardComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent, IgxCardActionsComponent, IgxButtonDirective, IgxIconComponent, IgxIconButtonDirective] }) class HorizontalCardComponent { diff --git a/projects/igniteui-angular/carousel/src/carousel/carousel.component.spec.ts b/projects/igniteui-angular/carousel/src/carousel/carousel.component.spec.ts index 74ddfc755c9..d34dc0834c7 100644 --- a/projects/igniteui-angular/carousel/src/carousel/carousel.component.spec.ts +++ b/projects/igniteui-angular/carousel/src/carousel/carousel.component.spec.ts @@ -1153,6 +1153,7 @@ class HelperTestFunctions {

Slide4

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCarouselComponent, IgxSlideComponent] }) class CarouselTestComponent { @@ -1201,6 +1202,7 @@ class CarouselAnimationsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCarouselComponent, IgxSlideComponent, IgxCarouselIndicatorDirective, IgxCarouselNextButtonDirective, IgxCarouselPrevButtonDirective] }) class CarouselTemplateSetInMarkupTestComponent { @@ -1237,6 +1239,7 @@ class CarouselTemplateSetInMarkupTestComponent {

Slide4

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCarouselComponent, IgxSlideComponent] }) class CarouselTemplateSetInTypescriptTestComponent { @@ -1261,6 +1264,7 @@ class CarouselTemplateSetInTypescriptTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCarouselComponent, IgxSlideComponent] }) class CarouselDynamicSlidesComponent { diff --git a/projects/igniteui-angular/carousel/src/carousel/carousel.component.ts b/projects/igniteui-angular/carousel/src/carousel/carousel.component.ts index ae88268ca89..40ebfe2304a 100644 --- a/projects/igniteui-angular/carousel/src/carousel/carousel.component.ts +++ b/projects/igniteui-angular/carousel/src/carousel/carousel.component.ts @@ -1,5 +1,5 @@ import { NgClass, NgTemplateOutlet } from '@angular/common'; -import { AfterContentInit, Component, ContentChild, ContentChildren, ElementRef, EventEmitter, HostBinding, HostListener, Injectable, Input, IterableChangeRecord, IterableDiffer, IterableDiffers, OnDestroy, Output, QueryList, TemplateRef, ViewChild, ViewChildren, booleanAttribute, inject } from '@angular/core'; +import { AfterContentInit, Component, ContentChild, ContentChildren, ElementRef, EventEmitter, HostBinding, HostListener, Injectable, Input, IterableChangeRecord, IterableDiffer, IterableDiffers, OnDestroy, Output, QueryList, TemplateRef, ViewChild, ViewChildren, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { HammerGestureConfig, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser'; import { merge, Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; @@ -58,6 +58,7 @@ export class CarouselHammerConfig extends HammerGestureConfig { display: block; outline-style: none; }`], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxIconComponent, NgClass, NgTemplateOutlet] }) export class IgxCarouselComponent extends IgxCarouselComponentBase implements OnDestroy, AfterContentInit { diff --git a/projects/igniteui-angular/carousel/src/carousel/slide.component.ts b/projects/igniteui-angular/carousel/src/carousel/slide.component.ts index 308f5d52d16..72e6e9b139c 100644 --- a/projects/igniteui-angular/carousel/src/carousel/slide.component.ts +++ b/projects/igniteui-angular/carousel/src/carousel/slide.component.ts @@ -1,4 +1,4 @@ -import { Component, OnDestroy, Input, HostBinding, Output, EventEmitter, ElementRef, AfterContentChecked, booleanAttribute, inject } from '@angular/core'; +import { Component, OnDestroy, Input, HostBinding, Output, EventEmitter, ElementRef, AfterContentChecked, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { CarouselAnimationDirection, IgxSlideComponentBase } from './carousel-base'; @@ -17,6 +17,7 @@ import { CarouselAnimationDirection, IgxSlideComponentBase } from './carousel-ba @Component({ selector: 'igx-slide', templateUrl: 'slide.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxSlideComponent implements AfterContentChecked, OnDestroy, IgxSlideComponentBase { diff --git a/projects/igniteui-angular/chat/src/chat.spec.ts b/projects/igniteui-angular/chat/src/chat.spec.ts index e93d9552323..70bb007ca3e 100644 --- a/projects/igniteui-angular/chat/src/chat.spec.ts +++ b/projects/igniteui-angular/chat/src/chat.spec.ts @@ -1,6 +1,6 @@ import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { IgxChatComponent, IgxChatMessageContextDirective, type IgxChatTemplates } from './chat.component'; -import { Component, signal, TemplateRef, ViewRef, viewChild } from '@angular/core'; +import { Component, signal, TemplateRef, ViewRef, viewChild, ChangeDetectionStrategy } from '@angular/core'; import type { IgcChatComponent, IgcChatMessage, IgcChatMessageAttachment, IgcTextareaComponent } from 'igniteui-webcomponents'; describe('Chat wrapper', () => { @@ -336,6 +336,7 @@ describe('Chat view lifecycle (_setTemplates)', () => {

Your message: {{ message.text }}

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChatComponent, IgxChatMessageContextDirective] }) class ChatTemplatesBed { @@ -354,6 +355,7 @@ class ChatTemplatesBed {

Your message: {{ message.text }}

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChatComponent, IgxChatMessageContextDirective] }) class ChatDynamicTemplatesBed { diff --git a/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.spec.ts b/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.spec.ts index 1c0cd7e15f7..80db7e6bce1 100644 --- a/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.spec.ts +++ b/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, inject } from '@angular/core'; +import { Component, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { UntypedFormBuilder, FormsModule, ReactiveFormsModule, Validators, NgForm } from '@angular/forms'; import { By } from '@angular/platform-browser'; @@ -414,6 +414,7 @@ describe('IgxCheckbox', () => { @Component({ template: `Init`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) class InitCheckboxComponent { @@ -423,6 +424,7 @@ class InitCheckboxComponent { @Component({ template: `Simple`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, FormsModule] }) class CheckboxSimpleComponent { @@ -442,6 +444,7 @@ class CheckboxSimpleComponent { [(ngModel)]="subscribed" [indeterminate]="true" >Indeterminate`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, FormsModule] }) class CheckboxIndeterminateComponent { @@ -452,6 +455,7 @@ class CheckboxIndeterminateComponent { @Component({ template: `Required`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) class CheckboxRequiredComponent { @@ -464,6 +468,7 @@ class CheckboxRequiredComponent { [checked]="subscribed" [indeterminate]="true" [readonly]="true">Readonly`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, FormsModule] }) class CheckboxReadonlyComponent { @@ -475,6 +480,7 @@ class CheckboxReadonlyComponent { @Component({ template: `

{{label}}

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) class CheckboxExternalLabelComponent { @@ -484,6 +490,7 @@ class CheckboxExternalLabelComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) class CheckboxInvisibleLabelComponent { @@ -493,6 +500,7 @@ class CheckboxInvisibleLabelComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) class CheckboxDisabledTransitionsComponent { @@ -501,6 +509,7 @@ class CheckboxDisabledTransitionsComponent { @Component({ template: `
Form Group
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, ReactiveFormsModule] }) class CheckboxFormGroupComponent { @@ -516,6 +525,7 @@ class CheckboxFormGroupComponent { Checkbox `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, FormsModule] }) class CheckboxFormComponent { diff --git a/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.ts b/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.ts index f79b9362451..81109ad755a 100644 --- a/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.ts +++ b/projects/igniteui-angular/checkbox/src/checkbox/checkbox.component.ts @@ -1,9 +1,10 @@ import { - Component, - HostBinding, - Input, - AfterViewInit, - booleanAttribute, + Component, + HostBinding, + Input, + AfterViewInit, + booleanAttribute, + ChangeDetectionStrategy } from '@angular/core'; import { CheckboxBaseDirective, IgxRippleDirective } from 'igniteui-angular/directives'; import { ControlValueAccessor } from '@angular/forms'; @@ -42,6 +43,7 @@ import { EditorProvider, EDITOR_PROVIDER } from 'igniteui-angular/core'; ], preserveWhitespaces: false, templateUrl: 'checkbox.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRippleDirective], }) export class IgxCheckboxComponent diff --git a/projects/igniteui-angular/chips/src/chips/chip.component.ts b/projects/igniteui-angular/chips/src/chips/chip.component.ts index 237decb0311..3a1dd44b762 100644 --- a/projects/igniteui-angular/chips/src/chips/chip.component.ts +++ b/projects/igniteui-angular/chips/src/chips/chip.component.ts @@ -1,20 +1,21 @@ import { - Component, - ChangeDetectorRef, - EventEmitter, - ElementRef, - HostBinding, - HostListener, - Input, - Output, - ViewChild, - Renderer2, - TemplateRef, - OnDestroy, - booleanAttribute, - OnInit, - inject, - DOCUMENT + Component, + ChangeDetectorRef, + EventEmitter, + ElementRef, + HostBinding, + HostListener, + Input, + Output, + ViewChild, + Renderer2, + TemplateRef, + OnDestroy, + booleanAttribute, + OnInit, + inject, + DOCUMENT, + ChangeDetectionStrategy } from '@angular/core'; import { IgxDragDirective, IDragBaseEventArgs, IDragStartEventArgs, IDropBaseEventArgs, IDropDroppedEventArgs, IgxDropDirective } from 'igniteui-angular/directives'; import { IBaseEventArgs, ɵSize } from 'igniteui-angular/core'; @@ -84,6 +85,7 @@ let CHIP_ID = 0; @Component({ selector: 'igx-chip', templateUrl: 'chip.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDirective, IgxDragDirective, NgClass, NgTemplateOutlet, IgxIconComponent] }) export class IgxChipComponent implements OnInit, OnDestroy { diff --git a/projects/igniteui-angular/chips/src/chips/chip.spec.ts b/projects/igniteui-angular/chips/src/chips/chip.spec.ts index b7c54bf7951..9ca449c35ca 100644 --- a/projects/igniteui-angular/chips/src/chips/chip.spec.ts +++ b/projects/igniteui-angular/chips/src/chips/chip.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ViewChildren, QueryList, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, ViewChild, ViewChildren, QueryList, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxChipComponent } from './chip.component'; @@ -40,6 +40,7 @@ import { UIInteractions, wait } from 'igniteui-angular/test-utils/ui-interaction `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipComponent, IgxChipsAreaComponent, IgxIconComponent, IgxPrefixDirective] }) class TestChipComponent { @@ -76,6 +77,7 @@ class TestChipComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent, IgxLabelDirective, IgxSuffixDirective] }) class TestChipsLabelAndSuffixComponent { diff --git a/projects/igniteui-angular/chips/src/chips/chips-area.component.ts b/projects/igniteui-angular/chips/src/chips/chips-area.component.ts index 1146c073d6c..761b1de73e1 100644 --- a/projects/igniteui-angular/chips/src/chips/chips-area.component.ts +++ b/projects/igniteui-angular/chips/src/chips/chips-area.component.ts @@ -1,4 +1,4 @@ -import { Component, ContentChildren, ChangeDetectorRef, EventEmitter, HostBinding, Input, IterableDiffer, IterableDiffers, Output, QueryList, DoCheck, AfterViewInit, OnDestroy, ElementRef, inject } from '@angular/core'; +import { Component, ContentChildren, ChangeDetectorRef, EventEmitter, HostBinding, Input, IterableDiffer, IterableDiffers, Output, QueryList, DoCheck, AfterViewInit, OnDestroy, ElementRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxChipComponent, IChipSelectEventArgs, @@ -48,6 +48,7 @@ export interface IChipsAreaSelectEventArgs extends IBaseChipsAreaEventArgs { @Component({ selector: 'igx-chips-area', templateUrl: 'chips-area.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxChipsAreaComponent implements DoCheck, AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/chips/src/chips/chips-area.spec.ts b/projects/igniteui-angular/chips/src/chips/chips-area.spec.ts index 75cd1090f56..eafa4ed8765 100644 --- a/projects/igniteui-angular/chips/src/chips/chips-area.spec.ts +++ b/projects/igniteui-angular/chips/src/chips/chips-area.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ViewChildren, QueryList, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, ViewChild, ViewChildren, QueryList, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxChipComponent } from './chip.component'; @@ -20,6 +20,7 @@ import { UIInteractions, wait } from 'igniteui-angular/test-utils/ui-interaction } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxPrefixDirective] }) class TestChipComponent { @@ -51,6 +52,7 @@ class TestChipComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent] }) class TestChipSelectComponent extends TestChipComponent { @@ -68,6 +70,7 @@ class TestChipSelectComponent extends TestChipComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxPrefixDirective] }) class TestChipReorderComponent { diff --git a/projects/igniteui-angular/combo/src/combo/combo-add-item.component.ts b/projects/igniteui-angular/combo/src/combo/combo-add-item.component.ts index cad1b5cf927..61392952a86 100644 --- a/projects/igniteui-angular/combo/src/combo/combo-add-item.component.ts +++ b/projects/igniteui-angular/combo/src/combo/combo-add-item.component.ts @@ -1,5 +1,5 @@ import { IgxComboItemComponent } from './combo-item.component'; -import { Component, HostBinding } from '@angular/core'; +import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core'; /** * @hidden @@ -7,6 +7,7 @@ import { Component, HostBinding } from '@angular/core'; @Component({ selector: 'igx-combo-add-item', template: '', + changeDetection: ChangeDetectionStrategy.Eager, providers: [{ provide: IgxComboItemComponent, useExisting: IgxComboAddItemComponent }], }) export class IgxComboAddItemComponent extends IgxComboItemComponent { diff --git a/projects/igniteui-angular/combo/src/combo/combo-dropdown.component.ts b/projects/igniteui-angular/combo/src/combo/combo-dropdown.component.ts index 403090f2438..d27b923615b 100644 --- a/projects/igniteui-angular/combo/src/combo/combo-dropdown.component.ts +++ b/projects/igniteui-angular/combo/src/combo/combo-dropdown.component.ts @@ -1,4 +1,4 @@ -import { Component, QueryList, OnDestroy, AfterViewInit, ContentChildren, Input, booleanAttribute, inject } from '@angular/core'; +import { Component, QueryList, OnDestroy, AfterViewInit, ContentChildren, Input, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxComboBase, IGX_COMBO_COMPONENT } from './combo.common'; import { IgxComboAddItemComponent } from './combo-add-item.component'; import { IgxComboAPIService } from './combo.api'; @@ -11,6 +11,7 @@ import { DropDownActionKey, IDropDownBase, IGX_DROPDOWN_BASE, IgxDropDownCompone selector: 'igx-combo-drop-down', templateUrl: '../../../drop-down/src/drop-down/drop-down.component.html', providers: [{ provide: IGX_DROPDOWN_BASE, useExisting: IgxComboDropDownComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective] }) export class IgxComboDropDownComponent extends IgxDropDownComponent implements IDropDownBase, OnDestroy, AfterViewInit { diff --git a/projects/igniteui-angular/combo/src/combo/combo-item.component.ts b/projects/igniteui-angular/combo/src/combo/combo-item.component.ts index bd6add67e1d..615e7653bfc 100644 --- a/projects/igniteui-angular/combo/src/combo/combo-item.component.ts +++ b/projects/igniteui-angular/combo/src/combo/combo-item.component.ts @@ -1,9 +1,10 @@ import { - Component, - HostBinding, - Input, - booleanAttribute, - inject + Component, + HostBinding, + Input, + booleanAttribute, + inject, + ChangeDetectionStrategy } from '@angular/core'; import { IgxComboAPIService } from './combo.api'; import { rem } from 'igniteui-angular/core'; @@ -14,6 +15,7 @@ import { IgxDropDownItemComponent, Navigate } from 'igniteui-angular/drop-down'; @Component({ selector: 'igx-combo-item', templateUrl: 'combo-item.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent] }) export class IgxComboItemComponent extends IgxDropDownItemComponent { diff --git a/projects/igniteui-angular/combo/src/combo/combo.component.html b/projects/igniteui-angular/combo/src/combo/combo.component.html index 09210cd5e95..418d6434ab8 100644 --- a/projects/igniteui-angular/combo/src/combo/combo.component.html +++ b/projects/igniteui-angular/combo/src/combo/combo.component.html @@ -1,126 +1,240 @@ - - - - - - - - - - - - - - - @if (displayValue && !disableClear) { - - @if (clearIconTemplate) { - - } - @if (!clearIconTemplate) { - - } - - } - - @if (toggleIconTemplate) { - - } - @if (!toggleIconTemplate) { - - } + + + + + + + + + + + + + + + @if (displayValue && !disableClear) { + + @if (clearIconTemplate) { + + } + @if (!clearIconTemplate) { + + } - - - @if (displaySearchInput) { - + } + + @if (toggleIconTemplate) { + } - - -
- - @if (item?.isHeader) { - - - } - - @if (!item?.isHeader) { - - - } - + @if (!toggleIconTemplate) { + + } + + + + @if (displaySearchInput) { + - @if (filteredData.length === 0 || isAddButtonVisible()) { -
- @if (filteredData.length === 0) { -
- - -
+ } + +
+ + @if (item?.isHeader) { + - - - + " + > + + } + + @if (!item?.isHeader) { + + + } + +
+ @if (filteredData.length === 0 || isAddButtonVisible()) { +
+ @if (filteredData.length === 0) { +
+ +
- } - - + } + @if (isAddButtonVisible()) { + + + + + } +
+ } + - {{display[key]}} + {{ display[key] }} - {{display}} + {{ display }} - {{resourceStrings.igx_combo_empty_message}} + {{ resourceStrings.igx_combo_empty_message }} - + - - {{ item[key] }} + + {{ item[key] }} diff --git a/projects/igniteui-angular/combo/src/combo/combo.component.spec.ts b/projects/igniteui-angular/combo/src/combo/combo.component.spec.ts index bd28dc20954..0b3ff1f7386 100644 --- a/projects/igniteui-angular/combo/src/combo/combo.component.spec.ts +++ b/projects/igniteui-angular/combo/src/combo/combo.component.spec.ts @@ -1,5 +1,5 @@ import { AsyncPipe } from '@angular/common'; -import { AfterViewInit, ChangeDetectorRef, Component, DebugElement, ElementRef, Injectable, Injector, OnDestroy, OnInit, ViewChild, inject } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, DebugElement, ElementRef, Injectable, Injector, OnDestroy, OnInit, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { FormsModule, NgForm, NgModel, ReactiveFormsModule, UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators @@ -3728,6 +3728,7 @@ describe('igxCombo', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, IgxComboItemDirective, IgxComboHeaderDirective, IgxComboFooterDirective] }) class IgxComboSampleComponent { @@ -3806,6 +3807,7 @@ class IgxComboSampleComponent {

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, IgxLabelDirective, ReactiveFormsModule] }) class IgxComboFormComponent { @@ -3877,6 +3879,7 @@ class IgxComboFormComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, IgxLabelDirective, FormsModule] }) class IgxComboInTemplatedFormComponent { @@ -3947,6 +3950,7 @@ export class LocalService { `, providers: [LocalService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent] }) export class IgxComboBindingTestComponent { @@ -3975,6 +3979,7 @@ export class IgxComboBindingTestComponent {
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent] }) class IgxComboInContainerTestComponent { @@ -4045,6 +4050,7 @@ export class RemoteDataService { `, providers: [RemoteDataService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, AsyncPipe] }) export class IgxComboRemoteDataComponent implements OnInit, AfterViewInit, OnDestroy { @@ -4078,6 +4084,7 @@ export class IgxComboRemoteDataComponent implements OnInit, AfterViewInit, OnDes @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, FormsModule] }) export class ComboModelBindingComponent implements OnInit { @@ -4095,6 +4102,7 @@ export class ComboModelBindingComponent implements OnInit { @Component({ template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, FormsModule] }) export class IgxComboBindingDataAfterInitComponent implements AfterViewInit { @@ -4115,6 +4123,7 @@ export class IgxComboBindingDataAfterInitComponent implements AfterViewInit { @Component({ template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent] }) export class ComboArrayTypeValueKeyComponent { @@ -4143,6 +4152,7 @@ export class ComboArrayTypeValueKeyComponent { @Component({ template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent] }) export class ComboWithIdComponent { diff --git a/projects/igniteui-angular/combo/src/combo/combo.component.ts b/projects/igniteui-angular/combo/src/combo/combo.component.ts index 359ace7083c..1053022375f 100644 --- a/projects/igniteui-angular/combo/src/combo/combo.component.ts +++ b/projects/igniteui-angular/combo/src/combo/combo.component.ts @@ -1,5 +1,5 @@ import { NgClass, NgTemplateOutlet } from '@angular/common'; -import { AfterViewInit, Component, OnInit, OnDestroy, ViewChild, Input, Output, EventEmitter, HostListener, DoCheck, booleanAttribute } from '@angular/core'; +import { AfterViewInit, Component, OnInit, OnDestroy, ViewChild, Input, Output, EventEmitter, HostListener, DoCheck, booleanAttribute, ChangeDetectionStrategy } from '@angular/core'; import { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms'; @@ -99,6 +99,7 @@ const diffInSets = (set1: Set, set2: Set): any[] => { { provide: IGX_COMBO_COMPONENT, useExisting: IgxComboComponent }, { provide: NG_VALUE_ACCESSOR, useExisting: IgxComboComponent, multi: true } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ NgTemplateOutlet, NgClass, diff --git a/projects/igniteui-angular/core/src/date-common/picker-icons.common.ts b/projects/igniteui-angular/core/src/date-common/picker-icons.common.ts index c3b3b0f6e80..db285f6685e 100644 --- a/projects/igniteui-angular/core/src/date-common/picker-icons.common.ts +++ b/projects/igniteui-angular/core/src/date-common/picker-icons.common.ts @@ -1,4 +1,4 @@ -import { Component, Output, EventEmitter, HostListener, Directive, TemplateRef, inject } from '@angular/core'; +import { Component, Output, EventEmitter, HostListener, Directive, TemplateRef, inject, ChangeDetectionStrategy } from '@angular/core'; /** * Templates the default toggle icon in the picker. @@ -17,6 +17,7 @@ import { Component, Output, EventEmitter, HostListener, Directive, TemplateRef, @Component({ template: ``, selector: 'igx-picker-toggle', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxPickerToggleComponent { @@ -48,6 +49,7 @@ export class IgxPickerToggleComponent { @Component({ template: ``, selector: 'igx-picker-clear', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxPickerClearComponent extends IgxPickerToggleComponent { } diff --git a/projects/igniteui-angular/core/src/services/overlay/overlay.spec.ts b/projects/igniteui-angular/core/src/services/overlay/overlay.spec.ts index b842842803f..30dfb1eed2c 100644 --- a/projects/igniteui-angular/core/src/services/overlay/overlay.spec.ts +++ b/projects/igniteui-angular/core/src/services/overlay/overlay.spec.ts @@ -1,4 +1,4 @@ -import { Component, ComponentRef, ElementRef, HostBinding, inject, Injector, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core'; +import { Component, ComponentRef, ElementRef, HostBinding, inject, Injector, ViewChild, ViewContainerRef, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { PlatformUtil } from 'igniteui-angular'; @@ -4837,6 +4837,7 @@ describe('igxOverlay', () => { @Component({ selector: `test-simple-dynamic-component`, template: `
`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class SimpleDynamicComponent { @@ -4850,6 +4851,7 @@ export class SimpleDynamicComponent { @Component({ template: `
`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class SimpleRefComponent { @@ -4861,6 +4863,7 @@ export class SimpleRefComponent { @Component({ template: `
`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class SimpleBigSizeComponent { @@ -4890,6 +4893,7 @@ export class SimpleBigSizeComponent {
} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective] }) export class SimpleDynamicWithDirectiveComponent { @@ -4928,6 +4932,7 @@ export class SimpleDynamicWithDirectiveComponent { margin: 0; border: none; }`], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class EmptyPageComponent { @@ -4949,6 +4954,7 @@ export class EmptyPageComponent {
`, encapsulation: ViewEncapsulation.ShadowDom, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class EmptyPageInShadowDomComponent { @@ -4970,6 +4976,7 @@ export class EmptyPageInShadowDomComponent { margin: 0px; border: 0px; }`], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class DownRightButtonComponent { @@ -5011,6 +5018,7 @@ export class DownRightButtonComponent { height: 60px; border: 0px; }`], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class TopLeftOffsetComponent { @@ -5032,6 +5040,7 @@ export class TopLeftOffsetComponent {
`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class TwoButtonsComponent { @@ -5069,6 +5078,7 @@ export class TwoButtonsComponent { height: 60px; border: 0; }`], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class WidthTestOverlayComponent { @@ -5108,6 +5118,7 @@ export class WidthTestOverlayComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [] }) export class ScrollableComponent { @@ -5140,6 +5151,7 @@ export class ScrollableComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class FlexContainerComponent { diff --git a/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.spec.ts b/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.spec.ts index 7b20f510581..40cee7de9e2 100644 --- a/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.spec.ts +++ b/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, fakeAsync, TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -72,6 +72,7 @@ describe('Calendar Container', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCalendarContainerComponent, IgxPickerActionsDirective, IgxButtonDirective] }) export class IgxDatePickerTestComponent { diff --git a/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.ts b/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.ts index b2397454c80..94cc6ece61e 100644 --- a/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.ts +++ b/projects/igniteui-angular/date-picker/src/date-picker/calendar-container/calendar-container.component.ts @@ -1,10 +1,11 @@ import { NgTemplateOutlet } from '@angular/common'; import { - Component, - ViewChild, - Output, EventEmitter, - HostListener, - HostBinding + Component, + ViewChild, + Output, EventEmitter, + HostListener, + HostBinding, + ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular/directives'; import { IgxCalendarComponent } from 'igniteui-angular/calendar'; @@ -17,6 +18,7 @@ import { IgxPredefinedRangesAreaComponent } from '../../date-range-picker/predef selector: 'igx-calendar-container', styles: [':host {display: block;}'], templateUrl: 'calendar-container.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, IgxRippleDirective, diff --git a/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.spec.ts b/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.spec.ts index 2579a5b617e..17d926bc9b8 100644 --- a/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.spec.ts +++ b/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.spec.ts @@ -13,7 +13,7 @@ import { OverlayCancelableEventArgs, OverlayClosingEventArgs, OverlayEventArgs, OverlaySettings, WEEKDAYS } from 'igniteui-angular/core'; -import { ChangeDetectorRef, Component, DebugElement, ElementRef, EventEmitter, Injector, QueryList, Renderer2, ViewChild } from '@angular/core'; +import { ChangeDetectorRef, Component, DebugElement, ElementRef, EventEmitter, Injector, QueryList, Renderer2, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { By } from '@angular/platform-browser'; import { PickerCalendarOrientation, PickerHeaderOrientation, PickerInteractionMode } from '../../../core/src/date-common/types'; import { DatePart } from '../../../core/src/date-common/public_api'; @@ -1670,6 +1670,7 @@ describe('IgxDatePicker', () => { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent] }) export class IgxDatePickerTestComponent { @@ -1684,6 +1685,7 @@ export class IgxDatePickerTestComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, FormsModule] }) export class IgxDatePickerNgModelComponent { @@ -1701,6 +1703,7 @@ export class IgxDatePickerNgModelComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, IgxLabelDirective] }) export class IgxDatePickerTestKbrdComponent { @@ -1723,6 +1726,7 @@ export class IgxDatePickerTestKbrdComponent { Suffix Hint `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, IgxPickerToggleComponent, IgxPrefixDirective, IgxPickerClearComponent, IgxLabelDirective, IgxSuffixDirective, IgxHintDirective] }) export class IgxDatePickerWithProjectionsComponent { @@ -1740,6 +1744,7 @@ export class IgxDatePickerWithProjectionsComponent { {{ formatCalendar.year.value }} {{ formatCalendar.month.value }} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, IgxCalendarHeaderTemplateDirective, IgxCalendarHeaderTitleTemplateDirective] }) export class IgxDatePickerWithTemplatesComponent { @@ -1753,6 +1758,7 @@ export class IgxDatePickerWithTemplatesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, FormsModule] }) export class IgxDatePickerInFormComponent { @@ -1775,6 +1781,7 @@ export class IgxDatePickerInFormComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDatePickerComponent, ReactiveFormsModule, IgxLabelDirective] }) export class IgxDatePickerReactiveFormComponent { diff --git a/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.ts b/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.ts index 3c01a937577..3a1810a99c7 100644 --- a/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.ts +++ b/projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.ts @@ -1,24 +1,25 @@ import { - AfterViewChecked, - AfterViewInit, - AfterContentChecked, - ChangeDetectorRef, - Component, - ContentChild, - EventEmitter, - HostBinding, - HostListener, - Injector, - Input, - OnDestroy, - OnInit, - Output, - PipeTransform, - Renderer2, - ViewChild, - ViewContainerRef, - booleanAttribute, - inject + AfterViewChecked, + AfterViewInit, + AfterContentChecked, + ChangeDetectorRef, + Component, + ContentChild, + EventEmitter, + HostBinding, + HostListener, + Injector, + Input, + OnDestroy, + OnInit, + Output, + PipeTransform, + Renderer2, + ViewChild, + ViewContainerRef, + booleanAttribute, + inject, + ChangeDetectionStrategy } from '@angular/core'; import { AbstractControl, @@ -93,6 +94,7 @@ let NEXT_ID = 0; selector: 'igx-date-picker', templateUrl: 'date-picker.component.html', styles: [':host { display: block; }'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxInputGroupComponent, IgxPrefixDirective, diff --git a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker-inputs.common.ts b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker-inputs.common.ts index 62055346f83..fdde9cfe7b1 100644 --- a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker-inputs.common.ts +++ b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker-inputs.common.ts @@ -1,4 +1,4 @@ -import { Component, ContentChild, Pipe, PipeTransform, Directive, inject } from '@angular/core'; +import { Component, ContentChild, Pipe, PipeTransform, Directive, inject, ChangeDetectionStrategy } from '@angular/core'; import { NgControl } from '@angular/forms'; import { IgxInputDirective, IgxInputGroupBase, IgxInputGroupComponent, IgxInputState, IgxPrefixDirective, IgxSuffixDirective } from 'igniteui-angular/input-group'; import { IgxButtonDirective, IgxDateTimeEditorDirective } from 'igniteui-angular/directives'; @@ -48,6 +48,7 @@ export class DateRangePickerFormatPipe implements PipeTransform { template: ``, selector: `igx-date-range-base`, providers: [{ provide: IgxInputGroupBase, useExisting: IgxDateRangeInputsBaseComponent }], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxDateRangeInputsBaseComponent extends IgxInputGroupComponent { @@ -116,6 +117,7 @@ export class IgxDateRangeInputsBaseComponent extends IgxInputGroupComponent { { provide: IgxInputGroupBase, useExisting: IgxDateRangeStartComponent }, { provide: IgxDateRangeInputsBaseComponent, useExisting: IgxDateRangeStartComponent } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgTemplateOutlet, IgxPrefixDirective, IgxButtonDirective, IgxSuffixDirective, IgxIconComponent] }) export class IgxDateRangeStartComponent extends IgxDateRangeInputsBaseComponent { } @@ -151,6 +153,7 @@ export class IgxDateRangeStartComponent extends IgxDateRangeInputsBaseComponent { provide: IgxInputGroupBase, useExisting: IgxDateRangeEndComponent }, { provide: IgxDateRangeInputsBaseComponent, useExisting: IgxDateRangeEndComponent } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgTemplateOutlet, IgxPrefixDirective, IgxButtonDirective, IgxSuffixDirective, IgxIconComponent] }) export class IgxDateRangeEndComponent extends IgxDateRangeInputsBaseComponent { } diff --git a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.spec.ts b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.spec.ts index ab123988cbb..e0975a71649 100644 --- a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.spec.ts +++ b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.spec.ts @@ -2275,6 +2275,7 @@ describe('IgxDateRangePicker', () => { @Component({ selector: 'igx-date-range-test', template: '', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class DateRangeTestComponent implements OnInit { @@ -2299,6 +2300,7 @@ export class DateRangeTestComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDateRangePickerComponent] }) export class DateRangeDefaultComponent extends DateRangeTestComponent { @@ -2328,6 +2330,7 @@ export class DateRangeDefaultComponent extends DateRangeTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxDateRangePickerComponent, IgxDateRangeStartComponent, @@ -2360,6 +2363,7 @@ export class DateRangeTwoInputsTestComponent extends DateRangeTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDateRangePickerComponent, IgxDateRangeStartComponent, IgxDateRangeEndComponent, IgxInputDirective, IgxDateTimeEditorDirective, FormsModule] }) export class DateRangeTwoInputsNgModelTestComponent extends DateRangeTestComponent { @@ -2383,6 +2387,7 @@ export class DateRangeTwoInputsNgModelTestComponent extends DateRangeTestCompone `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDateRangePickerComponent, IgxDateRangeStartComponent, IgxDateRangeEndComponent, IgxInputDirective, IgxDateTimeEditorDirective, FormsModule, IgxPickerClearComponent, IgxIconComponent, IgxSuffixDirective] }) @@ -2396,6 +2401,7 @@ export class DateRangeTwoInputsClearComponent extends DateRangeTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDateRangePickerComponent, IgxLabelDirective] }) export class DateRangeCustomComponent extends DateRangeTestComponent { @@ -2459,6 +2465,7 @@ export class DateRangeCustomComponent extends DateRangeTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxDateRangePickerComponent, IgxDateRangeStartComponent, @@ -2524,6 +2531,7 @@ export class DateRangeTwoInputsDisabledComponent extends DateRangeDisabledCompon `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxDateRangePickerComponent, IgxDateRangeStartComponent, diff --git a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.ts b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.ts index 5f1eea734e8..ca22db91d1f 100644 --- a/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.ts +++ b/projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.ts @@ -1,8 +1,9 @@ import { - AfterViewInit, booleanAttribute, ChangeDetectorRef, Component, ContentChild, ContentChildren, ElementRef, - EventEmitter, HostBinding, HostListener, Injector, Input, - OnChanges, OnDestroy, OnInit, Output, QueryList, - SimpleChanges, TemplateRef, ViewChild, ViewContainerRef, inject + AfterViewInit, booleanAttribute, ChangeDetectorRef, Component, ContentChild, ContentChildren, ElementRef, + EventEmitter, HostBinding, HostListener, Injector, Input, + OnChanges, OnDestroy, OnInit, Output, QueryList, + SimpleChanges, TemplateRef, ViewChild, ViewContainerRef, inject, + ChangeDetectionStrategy } from '@angular/core'; import { NgTemplateOutlet } from '@angular/common'; import { @@ -93,6 +94,7 @@ const SingleInputDatesConcatenationString = ' - '; { provide: NG_VALUE_ACCESSOR, useExisting: IgxDateRangePickerComponent, multi: true }, { provide: NG_VALIDATORS, useExisting: IgxDateRangePickerComponent, multi: true } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ NgTemplateOutlet, IgxIconComponent, diff --git a/projects/igniteui-angular/date-picker/src/date-range-picker/predefined-ranges/predefined-ranges-area-component.spec.ts b/projects/igniteui-angular/date-picker/src/date-range-picker/predefined-ranges/predefined-ranges-area-component.spec.ts index d070babf807..e27c154dd8a 100644 --- a/projects/igniteui-angular/date-picker/src/date-range-picker/predefined-ranges/predefined-ranges-area-component.spec.ts +++ b/projects/igniteui-angular/date-picker/src/date-range-picker/predefined-ranges/predefined-ranges-area-component.spec.ts @@ -5,7 +5,7 @@ import { IgxPredefinedRangesAreaComponent } from './predefined-ranges-area.compo import { CalendarDay, CustomDateRange } from 'igniteui-angular/core'; import { IDateRangePickerResourceStrings } from '../../../../core/src/core/i18n/date-range-picker-resources'; import { IgxChipComponent } from '../../../../chips/src/chips/chip.component'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; describe('IgxPredefinedRangesAreaComponent', () => { let fixture: ComponentFixture; @@ -144,6 +144,7 @@ describe('IgxPredefinedRangesAreaComponent', () => { [customRanges]="customRanges"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPredefinedRangesAreaComponent] }) class PredefinedRangesDefaultComponent { diff --git a/projects/igniteui-angular/dialog/src/dialog/dialog.component.spec.ts b/projects/igniteui-angular/dialog/src/dialog/dialog.component.spec.ts index 3c036debae2..64edc2735ec 100644 --- a/projects/igniteui-angular/dialog/src/dialog/dialog.component.spec.ts +++ b/projects/igniteui-angular/dialog/src/dialog/dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -521,6 +521,7 @@ describe('Dialog', () => { [isModal]="isModal"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class AlertComponent { @@ -540,6 +541,7 @@ class AlertComponent { rightButtonRipple="white"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class DialogComponent { @@ -559,6 +561,7 @@ class DialogComponent { rightButtonRipple="white"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class DialogTwoWayDataBindingComponent { @@ -581,6 +584,7 @@ class DialogTwoWayDataBindingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class DialogSampleComponent { @@ -595,6 +599,7 @@ class DialogSampleComponent {
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class CustomDialogComponent { @@ -616,6 +621,7 @@ class CustomDialogComponent { [closeOnOutsideSelect]="true"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class NestedDialogsComponent { @@ -633,6 +639,7 @@ class NestedDialogsComponent {
BUTTONS 1
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective] }) class CustomTemplates1DialogComponent { @@ -645,6 +652,7 @@ class CustomTemplates1DialogComponent {
TITLE 2
BUTTONS 2
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective] }) class CustomTemplates2DialogComponent { @@ -657,6 +665,7 @@ class CustomTemplates2DialogComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDialogComponent] }) class PositionSettingsDialogComponent { diff --git a/projects/igniteui-angular/dialog/src/dialog/dialog.component.ts b/projects/igniteui-angular/dialog/src/dialog/dialog.component.ts index c6f95f29f63..1761eb9248f 100644 --- a/projects/igniteui-angular/dialog/src/dialog/dialog.component.ts +++ b/projects/igniteui-angular/dialog/src/dialog/dialog.component.ts @@ -1,4 +1,4 @@ -import { Component, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, ViewChild, AfterContentInit, booleanAttribute, inject } from '@angular/core'; +import { Component, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, ViewChild, AfterContentInit, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import { IgxNavigationService, IToggleView } from 'igniteui-angular/core'; @@ -42,6 +42,7 @@ let DIALOG_ID = 0; @Component({ selector: 'igx-dialog', templateUrl: 'dialog-content.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective, IgxFocusTrapDirective, IgxFocusDirective, IgxButtonDirective, IgxRippleDirective] }) export class IgxDialogComponent implements IToggleView, OnInit, OnDestroy, AfterContentInit { diff --git a/projects/igniteui-angular/directives/src/directives/button/button.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/button/button.directive.spec.ts index bfceddb34f1..f2876bd1d3e 100644 --- a/projects/igniteui-angular/directives/src/directives/button/button.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/button/button.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxButtonDirective } from './button.directive'; @@ -105,6 +105,7 @@ describe('IgxButton', () => { template: ` add `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxRippleDirective] }) class InitButtonComponent { @@ -114,6 +115,7 @@ class InitButtonComponent { @Component({ template: `Test`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective] }) class ButtonWithAttribsComponent { diff --git a/projects/igniteui-angular/directives/src/directives/button/icon-button.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/button/icon-button.directive.spec.ts index bcdf76e8910..24858366342 100644 --- a/projects/igniteui-angular/directives/src/directives/button/icon-button.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/button/icon-button.directive.spec.ts @@ -1,6 +1,6 @@ import { TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconButtonDirective } from './icon-button.directive'; import { IgxRippleDirective } from '../ripple/ripple.directive'; import { By } from '@angular/platform-browser'; @@ -80,6 +80,7 @@ describe('IgxIconButton', () => { template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconButtonDirective, IgxRippleDirective, IgxIconComponent] }) class IconButtonComponent { diff --git a/projects/igniteui-angular/directives/src/directives/date-time-editor/date-time-editor.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/date-time-editor/date-time-editor.directive.spec.ts index 410c0084e4b..85ae8628f00 100644 --- a/projects/igniteui-angular/directives/src/directives/date-time-editor/date-time-editor.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/date-time-editor/date-time-editor.directive.spec.ts @@ -1,6 +1,6 @@ import { IgxDateTimeEditorDirective } from './date-time-editor.directive'; import { formatDate, registerLocaleData } from '@angular/common'; -import { Component, ViewChild, DebugElement, EventEmitter, Output, SimpleChange, SimpleChanges, DOCUMENT, inject, Renderer2, ElementRef } from '@angular/core'; +import { Component, ViewChild, DebugElement, EventEmitter, Output, SimpleChange, SimpleChanges, DOCUMENT, inject, Renderer2, ElementRef, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { FormsModule, UntypedFormGroup, UntypedFormBuilder, ReactiveFormsModule, Validators, NgControl } from '@angular/forms'; import { By } from '@angular/platform-browser'; @@ -1395,6 +1395,7 @@ describe('IgxDateTimeEditor', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective] }) export class IgxDateTimeEditorBaseTestComponent { @@ -1413,6 +1414,7 @@ export class IgxDateTimeEditorBaseTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective, FormsModule] }) export class IgxDateTimeEditorSampleComponent { @@ -1438,6 +1440,7 @@ export class IgxDateTimeEditorSampleComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective, ReactiveFormsModule] }) class IgxDateTimeEditorFormComponent { @@ -1472,6 +1475,7 @@ class IgxDateTimeEditorFormComponent { `, encapsulation: ViewEncapsulation.ShadowDom, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective] }) export class IgxDateTimeEditorShadowDomComponent { diff --git a/projects/igniteui-angular/directives/src/directives/divider/divider.spec.ts b/projects/igniteui-angular/directives/src/directives/divider/divider.spec.ts index 3c6eaa204ce..886377bd9e3 100644 --- a/projects/igniteui-angular/directives/src/directives/divider/divider.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/divider/divider.spec.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; @@ -98,6 +98,7 @@ describe('Divider', () => { [inset]="inset" [role]="role"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDividerDirective] }) class TestDividerComponent { diff --git a/projects/igniteui-angular/directives/src/directives/drag-drop/drag-drop.spec.ts b/projects/igniteui-angular/directives/src/directives/drag-drop/drag-drop.spec.ts index 067d88b7581..35290451d67 100644 --- a/projects/igniteui-angular/directives/src/directives/drag-drop/drag-drop.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/drag-drop/drag-drop.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChildren, QueryList, ViewChild, ElementRef, TemplateRef, Renderer2, inject } from '@angular/core'; +import { Component, ViewChildren, QueryList, ViewChild, ElementRef, TemplateRef, Renderer2, inject, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { UIInteractions, wait} from '../../../../test-utils/ui-interactions.spec'; @@ -2154,6 +2154,7 @@ const generalStyles = [`

Drop area:

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, IgxDropDirective, IgxDragHandleDirective, IgxDragIgnoreDirective] }) class TestDragDropComponent { @@ -2191,6 +2192,7 @@ class TestDragDropComponent {

Drop area:

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, IgxDropDirective] }) class TestDragDropLinkedSingleComponent extends TestDragDropComponent { } @@ -2211,6 +2213,7 @@ class TestDragDropLinkedSingleComponent extends TestDragDropComponent { }

Drop area:

`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, IgxDropDirective] }) class TestDragDropLinkedMixedComponent extends TestDragDropComponent { } @@ -2232,6 +2235,7 @@ class TestDragDropLinkedMixedComponent extends TestDragDropComponent { }
Drag 3
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, IgxDropDirective] }) class TestDragDropStrategiesComponent extends TestDragDropLinkedSingleComponent { } @@ -2262,6 +2266,7 @@ class TestDragDropStrategiesComponent extends TestDragDropLinkedSingleComponent } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, IgxDragDirective, IgxDragHandleDirective] }) class TestDragDropNestedComponent extends TestDragDropComponent { diff --git a/projects/igniteui-angular/directives/src/directives/filter/filter.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/filter/filter.directive.spec.ts index f87edf25810..b63f00ee5bf 100644 --- a/projects/igniteui-angular/directives/src/directives/filter/filter.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/filter/filter.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixtureAutoDetect, TestBed, waitForAsync } from '@angular/core/testing'; import { IgxListComponent, IgxListItemComponent } from 'igniteui-angular/list'; import { IgxFilterDirective, IgxFilterOptions, IgxFilterPipe } from './filter.directive'; @@ -175,6 +175,7 @@ describe('Filter', () => { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxFilterDirective] }) class DeclarativeListTestComponent { @@ -213,6 +214,7 @@ class DeclarativeListTestComponent { {{item.text}} } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxFilterPipe] }) class DynamicListTestComponent { diff --git a/projects/igniteui-angular/directives/src/directives/focus-trap/focus-trap.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/focus-trap/focus-trap.directive.spec.ts index 9c32b9de424..f926db8c3f7 100644 --- a/projects/igniteui-angular/directives/src/directives/focus-trap/focus-trap.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/focus-trap/focus-trap.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxFocusTrapDirective } from './focus-trap.directive'; @@ -219,6 +219,7 @@ describe('igxFocusTrap', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFocusTrapDirective, IgxTimePickerComponent] }) class TrapFocusTestComponent { diff --git a/projects/igniteui-angular/directives/src/directives/focus/focus.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/focus/focus.directive.spec.ts index 9c0a9de5b04..9e255bcc249 100644 --- a/projects/igniteui-angular/directives/src/directives/focus/focus.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/focus/focus.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, ElementRef, ViewChild } from '@angular/core'; +import { Component, DebugElement, ElementRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxFocusDirective } from './focus.directive'; @@ -118,12 +118,14 @@ describe('igxFocus', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFocusDirective] }) class SetFocusComponent { } @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFocusDirective] }) class NoFocusComponent { } @@ -135,6 +137,7 @@ class NoFocusComponent { }
Third
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFocusDirective] }) class TriggerFocusOnClickComponent { @@ -153,6 +156,7 @@ class TriggerFocusOnClickComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFocusDirective, IgxCheckboxComponent, IgxSwitchComponent, IgxRadioComponent, IgxDatePickerComponent] }) class CheckboxPickerComponent { diff --git a/projects/igniteui-angular/directives/src/directives/for-of/display.container.ts b/projects/igniteui-angular/directives/src/directives/for-of/display.container.ts index 764807e6f32..61300db2550 100644 --- a/projects/igniteui-angular/directives/src/directives/for-of/display.container.ts +++ b/projects/igniteui-angular/directives/src/directives/for-of/display.container.ts @@ -1,4 +1,4 @@ -import { ChangeDetectorRef, Component, HostBinding, ViewChild, ViewContainerRef, inject } from '@angular/core'; +import { ChangeDetectorRef, Component, HostBinding, ViewChild, ViewContainerRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxScrollInertiaDirective } from '../scroll-inertia/scroll_inertia.directive'; @Component({ @@ -11,6 +11,7 @@ import { IgxScrollInertiaDirective } from '../scroll-inertia/scroll_inertia.dire [IgxScrollInertiaDirection]="scrollDirection"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxScrollInertiaDirective] }) export class DisplayContainerComponent { diff --git a/projects/igniteui-angular/directives/src/directives/for-of/for_of.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/for-of/for_of.directive.spec.ts index 5b0e44db0cd..0d8139e0c17 100644 --- a/projects/igniteui-angular/directives/src/directives/for-of/for_of.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/for-of/for_of.directive.spec.ts @@ -1,5 +1,5 @@ import { AsyncPipe, NgClass, NgForOfContext } from '@angular/common'; -import { AfterViewInit, ChangeDetectorRef, Component, Directive, Injectable, IterableDiffers, NgZone, OnInit, QueryList, TemplateRef, ViewChild, ViewChildren, ViewContainerRef, DebugElement, Pipe, PipeTransform, inject } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, Directive, Injectable, IterableDiffers, NgZone, OnInit, QueryList, TemplateRef, ViewChild, ViewChildren, ViewContainerRef, DebugElement, Pipe, PipeTransform, inject, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { BehaviorSubject, Observable } from 'rxjs'; @@ -1395,6 +1395,7 @@ export class TestIgxForOfDirective extends IgxForOfDirective { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class EmptyVirtualComponent { @@ -1423,6 +1424,7 @@ export class EmptyVirtualComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class VirtualComponent { @@ -1497,6 +1499,7 @@ export class VirtualComponent { `, selector: 'igx-vertical-virtual', + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class VerticalVirtualComponent extends VirtualComponent { @@ -1533,6 +1536,7 @@ export class VerticalVirtualComponent extends VirtualComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class VerticalVirtualDestroyComponent extends VerticalVirtualComponent { @@ -1572,6 +1576,7 @@ export class VerticalVirtualDestroyComponent extends VerticalVirtualComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxForOfDirective] }) export class VerticalVirtualCreateComponent extends VerticalVirtualComponent { @@ -1604,6 +1609,7 @@ export class VerticalVirtualCreateComponent extends VerticalVirtualComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class HorizontalVirtualComponent extends VirtualComponent { @@ -1627,6 +1633,7 @@ export class HorizontalVirtualComponent extends VirtualComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class VirtualVariableSizeComponent { @@ -1663,6 +1670,7 @@ export class VirtualVariableSizeComponent { `, selector: 'igx-vertical-virtual-no-data', + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) export class VerticalVirtualNoDataComponent extends VerticalVirtualComponent { @@ -1724,6 +1732,7 @@ export class LocalService { `, providers: [LocalService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective, AsyncPipe] }) export class RemoteVirtualizationComponent implements OnInit, AfterViewInit { @@ -1769,6 +1778,7 @@ export class RemoteVirtualizationComponent implements OnInit, AfterViewInit { `, providers: [LocalService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective, AsyncPipe] }) export class RemoteVirtCountComponent implements OnInit, AfterViewInit { @@ -1824,6 +1834,7 @@ export class RemoteVirtCountComponent implements OnInit, AfterViewInit { flex: 0 0 60px; border-right: 1px solid #888; }`], + changeDetection: ChangeDetectionStrategy.Eager, imports: [TestIgxForOfDirective] }) @@ -1867,6 +1878,7 @@ export class NoWidthAndHeightComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxForOfDirective, NgClass] }) export class LocalVariablesComponent { @@ -1899,6 +1911,7 @@ export class CustomSlicePipe implements PipeTransform { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxForOfDirective, CustomSlicePipe] }) export class LocalVariablesAsComponent { diff --git a/projects/igniteui-angular/directives/src/directives/for-of/horizontal.virtual.helper.component.ts b/projects/igniteui-angular/directives/src/directives/for-of/horizontal.virtual.helper.component.ts index 71981c495ef..aee71934dd0 100644 --- a/projects/igniteui-angular/directives/src/directives/for-of/horizontal.virtual.helper.component.ts +++ b/projects/igniteui-angular/directives/src/directives/for-of/horizontal.virtual.helper.component.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, Input, ViewChild, ViewContainerRef } from '@angular/core'; +import { Component, HostBinding, Input, ViewChild, ViewContainerRef, ChangeDetectionStrategy } from '@angular/core'; import { VirtualHelperBaseDirective } from './base.helper.component'; /** @@ -7,6 +7,7 @@ import { VirtualHelperBaseDirective } from './base.helper.component'; @Component({ selector: 'igx-horizontal-virtual-helper', template: '
', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class HVirtualHelperComponent extends VirtualHelperBaseDirective { diff --git a/projects/igniteui-angular/directives/src/directives/for-of/virtual.helper.component.ts b/projects/igniteui-angular/directives/src/directives/for-of/virtual.helper.component.ts index 17263004f61..b411749388c 100644 --- a/projects/igniteui-angular/directives/src/directives/for-of/virtual.helper.component.ts +++ b/projects/igniteui-angular/directives/src/directives/for-of/virtual.helper.component.ts @@ -1,10 +1,14 @@ -import { Component, HostBinding, Input, ViewChild, ViewContainerRef, - OnDestroy, OnInit} from '@angular/core'; +import { + Component, HostBinding, Input, ViewChild, ViewContainerRef, + OnDestroy, OnInit, + ChangeDetectionStrategy +} from '@angular/core'; import { VirtualHelperBaseDirective } from './base.helper.component'; @Component({ selector: 'igx-virtual-helper', template: '
', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class VirtualHelperComponent extends VirtualHelperBaseDirective implements OnInit, OnDestroy { diff --git a/projects/igniteui-angular/directives/src/directives/form-control/form-control.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/form-control/form-control.directive.spec.ts index 7de8dfb9ae5..fb57c631071 100644 --- a/projects/igniteui-angular/directives/src/directives/form-control/form-control.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/form-control/form-control.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, ElementRef, Renderer2, ViewChild } from '@angular/core'; +import { Component, DebugElement, ElementRef, Renderer2, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; @@ -118,6 +118,7 @@ describe('IgcFormControlDirective - ', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgcFormControlDirective, FormsModule] }) class IgxFormsControlComponent { diff --git a/projects/igniteui-angular/directives/src/directives/layout/layout.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/layout/layout.directive.spec.ts index 0a416c690ae..c33f72597b0 100644 --- a/projects/igniteui-angular/directives/src/directives/layout/layout.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/layout/layout.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxFlexDirective, IgxLayoutDirective } from './layout.directive'; @@ -139,6 +139,7 @@ describe('IgxLayoutDirective', () => {
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxLayoutDirective, IgxFlexDirective] }) class TestFlexLayoutComponent { diff --git a/projects/igniteui-angular/directives/src/directives/mask/mask.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/mask/mask.directive.spec.ts index 768ae9f1a3f..9d81bc6e5ec 100644 --- a/projects/igniteui-angular/directives/src/directives/mask/mask.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/mask/mask.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, Input, ViewChild, ElementRef, Pipe, PipeTransform, Renderer2 } from '@angular/core'; +import { Component, Input, ViewChild, ElementRef, Pipe, PipeTransform, Renderer2, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { FormsModule } from '@angular/forms'; import { IgxMaskDirective } from './mask.directive'; @@ -713,6 +713,7 @@ export class DisplayFormatPipe implements PipeTransform {
`, selector: 'igx-def-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class DefMaskComponent { @@ -731,6 +732,7 @@ class DefMaskComponent { `, selector: 'igx-mask-test', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class MaskComponent { @@ -749,6 +751,7 @@ class MaskComponent { `, selector: 'igx-incl-literals', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class IncludeLiteralsComponent { @@ -767,6 +770,7 @@ class IncludeLiteralsComponent { `, selector: 'igx-digit-space-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class DigitSpaceMaskComponent { @@ -782,6 +786,7 @@ class DigitSpaceMaskComponent { `, selector: 'igx-digital-plus-minus-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class DigitPlusMinusMaskComponent { @@ -797,6 +802,7 @@ class DigitPlusMinusMaskComponent { `, selector: 'igx-letter-space-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class LetterSpaceMaskComponent { @@ -812,6 +818,7 @@ class LetterSpaceMaskComponent { `, selector: 'igx-alphanum-space-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class AlphanumSpaceMaskComponent { @@ -829,6 +836,7 @@ class AlphanumSpaceMaskComponent { `, selector: 'igx-any-char-mask', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class AnyCharMaskComponent { @@ -846,6 +854,7 @@ class AnyCharMaskComponent { (valueChanged)="handleValueChanged($event)"/> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class EventFiringComponent { @@ -873,6 +882,7 @@ class EventFiringComponent { [promptChar]="'* @#'"/> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class OneWayBindComponent { @@ -892,6 +902,7 @@ class OneWayBindComponent { [igxMask]="mask"/> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class PlaceholderMaskComponent { @@ -911,6 +922,7 @@ class PlaceholderMaskComponent { [(ngModel)]="value" [igxMask]="mask"/> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class PipesMaskComponent { @@ -931,6 +943,7 @@ class PipesMaskComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class MaskTestComponent { @@ -943,6 +956,7 @@ class MaskTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxMaskDirective] }) class ReadonlyMaskTestComponent { diff --git a/projects/igniteui-angular/directives/src/directives/ripple/ripple.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/ripple/ripple.directive.spec.ts index 95c4e8d742c..2fd579e6f24 100644 --- a/projects/igniteui-angular/directives/src/directives/ripple/ripple.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/ripple/ripple.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxRippleDirective } from './ripple.directive'; @@ -222,6 +222,7 @@ describe('IgxRipple', () => { @Component({ template: ``, imports: [IgxButtonDirective, IgxRippleDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) class RippleButtonComponent { @@ -232,6 +233,7 @@ class RippleButtonComponent { @Component({ template: ``, imports: [IgxButtonDirective, IgxRippleDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) class RippleDisabledComponent { } @@ -239,6 +241,7 @@ class RippleDisabledComponent { } @Component({ template: ``, imports: [IgxButtonDirective, IgxRippleDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) class RippleCenteredComponent { } @@ -246,6 +249,7 @@ class RippleCenteredComponent { } @Component({ template: ``, imports: [IgxButtonDirective, IgxRippleDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) class RippleColorComponent { } @@ -257,6 +261,7 @@ class RippleColorComponent { } `, imports: [IgxButtonDirective, IgxRippleDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) class RippleTargetComponent { } diff --git a/projects/igniteui-angular/directives/src/directives/scroll-inertia/scroll_inertia.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/scroll-inertia/scroll_inertia.directive.spec.ts index 251e29ea7d8..a8188308b1a 100644 --- a/projects/igniteui-angular/directives/src/directives/scroll-inertia/scroll_inertia.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/scroll-inertia/scroll_inertia.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, Directive, OnInit, ViewChild, ElementRef } from '@angular/core'; +import { Component, Directive, OnInit, ViewChild, ElementRef, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { IgxScrollInertiaDirective } from './scroll_inertia.directive'; @@ -346,6 +346,7 @@ export class IgxTestScrollInertiaDirective extends IgxScrollInertiaDirective {
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTestScrollInertiaDirective] }) export class ScrollInertiaComponent implements OnInit { diff --git a/projects/igniteui-angular/directives/src/directives/size/ig-size.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/size/ig-size.directive.spec.ts index f40061fac5e..c4adb13141a 100644 --- a/projects/igniteui-angular/directives/src/directives/size/ig-size.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/size/ig-size.directive.spec.ts @@ -1,9 +1,10 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgSizeDirective } from './ig-size.directive'; import { TestBed, ComponentFixture } from '@angular/core/testing'; @Component({ template: `
Test Element
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgSizeDirective], }) class TestComponent { diff --git a/projects/igniteui-angular/directives/src/directives/text-highlight/text-highlight.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/text-highlight/text-highlight.directive.spec.ts index ed35254a47d..a9494d25210 100644 --- a/projects/igniteui-angular/directives/src/directives/text-highlight/text-highlight.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/text-highlight/text-highlight.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, inject } from '@angular/core'; +import { Component, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, waitForAsync } from '@angular/core/testing'; import { IgxTextHighlightDirective, IActiveHighlightInfo} from './text-highlight.directive'; @@ -394,6 +394,7 @@ describe('IgxHighlight', () => { {{html}} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTextHighlightDirective] }) class HighlightLoremIpsumComponent { diff --git a/projects/igniteui-angular/directives/src/directives/text-selection/text-selection.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/text-selection/text-selection.directive.spec.ts index 2446d1c1eb1..07bfbcdcd36 100644 --- a/projects/igniteui-angular/directives/src/directives/text-selection/text-selection.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/text-selection/text-selection.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, Directive, ElementRef, HostListener, ViewChild, inject } from '@angular/core'; +import { Component, DebugElement, Directive, ElementRef, HostListener, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; @@ -158,6 +158,7 @@ class IgxTestFocusDirective { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTextSelectionDirective] }) class TriggerTextSelectionComponent { } @@ -166,6 +167,7 @@ class TriggerTextSelectionComponent { } template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTextSelectionDirective] }) class TriggerTextSelectionOnClickComponent { @@ -186,6 +188,7 @@ class TriggerTextSelectionOnClickComponent { @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTextSelectionDirective, IgxTestFocusDirective] }) class TextSelectionWithMultipleFocusHandlersComponent { diff --git a/projects/igniteui-angular/directives/src/directives/toggle/toggle.directive.spec.ts b/projects/igniteui-angular/directives/src/directives/toggle/toggle.directive.spec.ts index d2034a47a3b..c5f69f39fea 100644 --- a/projects/igniteui-angular/directives/src/directives/toggle/toggle.directive.spec.ts +++ b/projects/igniteui-angular/directives/src/directives/toggle/toggle.directive.spec.ts @@ -623,6 +623,7 @@ describe('IgxToggle', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective] }) export class IgxToggleTestComponent { @@ -643,6 +644,7 @@ export class IgxToggleTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective, IgxToggleActionDirective] }) export class IgxToggleActionTestComponent { @@ -662,6 +664,7 @@ export class IgxToggleActionTestComponent { `, selector: 'igx-toggle-service-inject', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleActionDirective, IgxToggleDirective] }) export class IgxToggleServiceInjectComponent { @@ -726,6 +729,7 @@ export class TestWithOnPushComponent { Toggle 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleActionDirective, IgxToggleDirective] }) export class TestWithThreeToggleActionsComponent implements OnInit { diff --git a/projects/igniteui-angular/directives/src/directives/tooltip/tooltip-close-button.component.ts b/projects/igniteui-angular/directives/src/directives/tooltip/tooltip-close-button.component.ts index eb870b4d787..a80cea597ac 100644 --- a/projects/igniteui-angular/directives/src/directives/tooltip/tooltip-close-button.component.ts +++ b/projects/igniteui-angular/directives/src/directives/tooltip/tooltip-close-button.component.ts @@ -1,4 +1,4 @@ -import { Component, Output, EventEmitter, HostListener, Input, TemplateRef } from '@angular/core'; +import { Component, Output, EventEmitter, HostListener, Input, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconComponent } from 'igniteui-angular/icon'; import { CommonModule } from '@angular/common'; @@ -11,6 +11,7 @@ import { CommonModule } from '@angular/common'; } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, CommonModule], }) export class IgxTooltipCloseButtonComponent { diff --git a/projects/igniteui-angular/directives/src/directives/tooltip/tooltip.component.ts b/projects/igniteui-angular/directives/src/directives/tooltip/tooltip.component.ts index a049fc55dc6..57e6c84c311 100644 --- a/projects/igniteui-angular/directives/src/directives/tooltip/tooltip.component.ts +++ b/projects/igniteui-angular/directives/src/directives/tooltip/tooltip.component.ts @@ -1,9 +1,10 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxTooltipDirective } from './tooltip.directive'; @Component({ selector: 'igx-tooltip', templateUrl: 'tooltip.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective] }) diff --git a/projects/igniteui-angular/drop-down/src/drop-down/autocomplete/autocomplete.directive.spec.ts b/projects/igniteui-angular/drop-down/src/drop-down/autocomplete/autocomplete.directive.spec.ts index f0b3bc4642f..746f8a47ce7 100644 --- a/projects/igniteui-angular/drop-down/src/drop-down/autocomplete/autocomplete.directive.spec.ts +++ b/projects/igniteui-angular/drop-down/src/drop-down/autocomplete/autocomplete.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, Pipe, PipeTransform, ElementRef, inject } from '@angular/core'; +import { Component, ViewChild, Pipe, PipeTransform, ElementRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, tick, fakeAsync, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -968,6 +968,7 @@ export class IgxAutocompletePipeStartsWith implements PipeTransform { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxInputGroupComponent, @@ -1017,6 +1018,7 @@ class AutocompleteComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxAutocompleteDirective, @@ -1053,6 +1055,7 @@ class AutocompleteInputComponent extends AutocompleteComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ ReactiveFormsModule, IgxInputGroupComponent, diff --git a/projects/igniteui-angular/drop-down/src/drop-down/drop-down-group.component.ts b/projects/igniteui-angular/drop-down/src/drop-down/drop-down-group.component.ts index ef5ad79ba16..37e509dd907 100644 --- a/projects/igniteui-angular/drop-down/src/drop-down/drop-down-group.component.ts +++ b/projects/igniteui-angular/drop-down/src/drop-down/drop-down-group.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, HostBinding, booleanAttribute } from '@angular/core'; +import { Component, Input, HostBinding, booleanAttribute, ChangeDetectionStrategy } from '@angular/core'; let NEXT_ID = 0; /** @@ -11,6 +11,7 @@ let NEXT_ID = 0; `, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxDropDownGroupComponent { diff --git a/projects/igniteui-angular/drop-down/src/drop-down/drop-down-item.component.ts b/projects/igniteui-angular/drop-down/src/drop-down/drop-down-item.component.ts index 451e117226e..0ea3d1fcf06 100644 --- a/projects/igniteui-angular/drop-down/src/drop-down/drop-down-item.component.ts +++ b/projects/igniteui-angular/drop-down/src/drop-down/drop-down-item.component.ts @@ -1,6 +1,7 @@ import { - Component, - HostBinding + Component, + HostBinding, + ChangeDetectionStrategy } from '@angular/core'; import { IgxDropDownItemBaseDirective } from './drop-down-item.base'; @@ -11,6 +12,7 @@ import { IgxDropDownItemBaseDirective } from './drop-down-item.base'; @Component({ selector: 'igx-drop-down-item', templateUrl: 'drop-down-item.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxDropDownItemComponent extends IgxDropDownItemBaseDirective { diff --git a/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.spec.ts b/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.spec.ts index cd854d289a5..7d930a4b590 100644 --- a/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.spec.ts +++ b/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, ElementRef, ViewChildren, QueryList, ChangeDetectorRef, DOCUMENT } from '@angular/core'; +import { Component, ViewChild, OnInit, ElementRef, ViewChildren, QueryList, ChangeDetectorRef, DOCUMENT, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -1378,6 +1378,7 @@ describe('IgxDropDown ', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective] }) class IgxDropDownTestComponent { @@ -1426,6 +1427,7 @@ class IgxDropDownTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent] }) class DoubleIgxDropDownComponent implements OnInit { @@ -1483,6 +1485,7 @@ class DoubleIgxDropDownComponent implements OnInit { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective, IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent] }) class IgxDropDownAnchorTestComponent { @@ -1521,6 +1524,7 @@ class IgxDropDownAnchorTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective] }) class InputWithDropDownDirectiveComponent { @@ -1550,6 +1554,7 @@ class InputWithDropDownDirectiveComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownGroupComponent] }) class GroupDropDownComponent { @@ -1597,6 +1602,7 @@ class GroupDropDownComponent { height: 400px; } `], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDropDownComponent, IgxDropDownItemComponent, IgxForOfDirective, IgxButtonDirective, IgxDropDownItemNavigationDirective, IgxToggleActionDirective] }) class VirtualizedDropDownComponent { diff --git a/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.ts b/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.ts index 6b579877603..49017875e9b 100644 --- a/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.ts +++ b/projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.ts @@ -1,20 +1,22 @@ import { - Component, - ContentChildren, - ElementRef, - forwardRef, - QueryList, - OnChanges, - Input, - OnDestroy, - ViewChild, - ContentChild, - AfterViewInit, - Output, - EventEmitter, - SimpleChanges, - booleanAttribute, - inject} from '@angular/core'; + Component, + ContentChildren, + ElementRef, + forwardRef, + QueryList, + OnChanges, + Input, + OnDestroy, + ViewChild, + ContentChild, + AfterViewInit, + Output, + EventEmitter, + SimpleChanges, + booleanAttribute, + inject, + ChangeDetectionStrategy +} from '@angular/core'; import { IgxToggleDirective, ToggleViewEventArgs } from 'igniteui-angular/directives'; import { IgxDropDownItemComponent } from './drop-down-item.component'; import { IgxDropDownBaseDirective } from './drop-down.base'; @@ -51,6 +53,7 @@ import { ConnectedPositioningStrategy } from 'igniteui-angular/core'; selector: 'igx-drop-down', templateUrl: './drop-down.component.html', providers: [{ provide: IGX_DROPDOWN_BASE, useExisting: IgxDropDownComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxToggleDirective] }) export class IgxDropDownComponent extends IgxDropDownBaseDirective implements IDropDownBase, OnChanges, AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-body.component.ts b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-body.component.ts index 84902e18e43..fd60e73bea6 100644 --- a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-body.component.ts +++ b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-body.component.ts @@ -1,9 +1,10 @@ -import { Component, HostBinding, ElementRef, Input, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, HostBinding, ElementRef, Input, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxExpansionPanelBase, IGX_EXPANSION_PANEL_COMPONENT } from './expansion-panel.common'; @Component({ selector: 'igx-expansion-panel-body', template: ``, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxExpansionPanelBodyComponent { diff --git a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-header.component.ts b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-header.component.ts index 2a89c02649a..8cbd1d13889 100644 --- a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-header.component.ts +++ b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel-header.component.ts @@ -1,4 +1,4 @@ -import { Component, ChangeDetectorRef, ElementRef, HostBinding, HostListener, Input, EventEmitter, Output, ContentChild, ViewChild, booleanAttribute, inject } from '@angular/core'; +import { Component, ChangeDetectorRef, ElementRef, HostBinding, HostListener, Input, EventEmitter, Output, ContentChild, ViewChild, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxExpansionPanelIconDirective } from './expansion-panel.directives'; import { IGX_EXPANSION_PANEL_COMPONENT, IgxExpansionPanelBase, IExpansionPanelCancelableEventArgs } from './expansion-panel.common'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -17,6 +17,7 @@ export type ExpansionPanelHeaderIconPosition = (typeof ExpansionPanelHeaderIconP @Component({ selector: 'igx-expansion-panel-header', templateUrl: 'expansion-panel-header.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent] }) export class IgxExpansionPanelHeaderComponent { diff --git a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.component.ts b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.component.ts index cdd36288ff4..541150feaf5 100644 --- a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.component.ts +++ b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.component.ts @@ -1,15 +1,16 @@ import { - AfterContentInit, - ChangeDetectorRef, - Component, - ContentChild, - ElementRef, - EventEmitter, - HostBinding, - inject, - Input, - Output, - booleanAttribute + AfterContentInit, + ChangeDetectorRef, + Component, + ContentChild, + ElementRef, + EventEmitter, + HostBinding, + inject, + Input, + Output, + booleanAttribute, + ChangeDetectionStrategy } from '@angular/core'; import { IgxExpansionPanelBodyComponent } from './expansion-panel-body.component'; import { IgxExpansionPanelHeaderComponent } from './expansion-panel-header.component'; @@ -27,6 +28,7 @@ let NEXT_ID = 0; selector: 'igx-expansion-panel', templateUrl: 'expansion-panel.component.html', providers: [{ provide: IGX_EXPANSION_PANEL_COMPONENT, useExisting: IgxExpansionPanelComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [] }) export class IgxExpansionPanelComponent extends ToggleAnimationPlayer implements IgxExpansionPanelBase, AfterContentInit { diff --git a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.spec.ts b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.spec.ts index 6e6b570d4e7..8e5c22cb60c 100644 --- a/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.spec.ts +++ b/projects/igniteui-angular/expansion-panel/src/expansion-panel/expansion-panel.spec.ts @@ -1,5 +1,5 @@ -import { Component, DebugElement, ViewChild } from '@angular/core'; +import { Component, DebugElement, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, tick, fakeAsync, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { IgxExpansionPanelComponent } from './expansion-panel.component'; @@ -1291,6 +1291,7 @@ describe('igxExpansionPanel', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelBodyComponent, IgxGridComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelDescriptionDirective] }) export class IgxExpansionPanelGridComponent { @@ -1339,6 +1340,7 @@ export class IgxExpansionPanelGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelBodyComponent, IgxListComponent, IgxListItemComponent, IgxExpansionPanelTitleDirective] }) export class IgxExpansionPanelListComponent { @@ -1374,6 +1376,7 @@ export class IgxExpansionPanelListComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelBodyComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelDescriptionDirective, IgxExpansionPanelIconDirective] }) export class IgxExpansionPanelSampleComponent { @@ -1412,6 +1415,7 @@ export class IgxExpansionPanelSampleComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelBodyComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelDescriptionDirective] }) export class IgxExpansionPanelImageComponent { @@ -1440,6 +1444,7 @@ export class IgxExpansionPanelImageComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_EXPANSION_PANEL_DIRECTIVES] }) export class IgxExpansionPanelTooltipComponent { diff --git a/projects/igniteui-angular/grids/core/src/cell.component.html b/projects/igniteui-angular/grids/core/src/cell.component.html index ffb36674e6b..3b0269a40f6 100644 --- a/projects/igniteui-angular/grids/core/src/cell.component.html +++ b/projects/igniteui-angular/grids/core/src/cell.component.html @@ -1,264 +1,341 @@ - @if (displayPinnedChip) { - {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} - } + @if (displayPinnedChip) { + {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} + } - @if (column.dataType !== 'boolean' && column.dataType !== 'image' || (column.dataType === 'boolean' && this.formatter)) { -
{{ - formatter - ? (value | columnFormatter:formatter:rowData:columnData) - : column.dataType === "number" - ? (value | number:column.pipeArgs.digitsInfo:grid.locale) - : (column.dataType === 'date' || column.dataType === 'time' || column.dataType === 'dateTime') - ? (value | date:column.pipeArgs.format:column.pipeArgs.timezone:grid.locale) - : column.dataType === 'currency' - ? (value | currency:currencyCode:column.pipeArgs.display:column.pipeArgs.digitsInfo:grid.locale) + @if ( + (column.dataType !== 'boolean' && column.dataType !== 'image') || + (column.dataType === 'boolean' && this.formatter) + ) { +
- - } - @if (column.dataType === 'image') { - - } + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + " + [row]="rowData" + [column]="this.column.field" + [containerClass]="'igx-grid__td-text'" + [metadata]="searchMetadata" + > + {{ + formatter + ? (value | columnFormatter: formatter : rowData : columnData) + : column.dataType === 'number' + ? (value | number: column.pipeArgs.digitsInfo : grid.locale) + : column.dataType === 'date' || + column.dataType === 'time' || + column.dataType === 'dateTime' + ? (value + | date + : column.pipeArgs.format + : column.pipeArgs.timezone + : grid.locale) + : column.dataType === 'currency' + ? (value + | currency + : currencyCode + : column.pipeArgs.display + : column.pipeArgs.digitsInfo + : grid.locale) + : column.dataType === 'percent' + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + }} +
+ } + @if (column.dataType === 'boolean' && !this.formatter) { + + + } + @if (column.dataType === 'image') { + + } - @if (column.dataType !== 'boolean' || (column.dataType === 'boolean' && this.formatter)) { -
{{ - !isEmptyAddRowCell ? value : (column.header || column.field) - }}
- } + @if ( + column.dataType !== 'boolean' || + (column.dataType === 'boolean' && this.formatter) + ) { +
+ {{ !isEmptyAddRowCell ? value : column.header || column.field }} +
+ }
- @if (column.dataType === 'string' || column.dataType === 'image') { - - - - - - } - @if (column.dataType === 'number') { - - - - } - @if (column.dataType === 'boolean') { - - - - } - @if (column.dataType === 'date') { - - - - - } - @if (column.dataType === 'time') { - - - - } - @if (column.dataType === 'dateTime') { - - - - } - @if (column.dataType === 'currency') { - - @if (grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - @if (!grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - } - @if (column.dataType === 'percent') { - - - {{ editValue | percent:column.pipeArgs.digitsInfo:grid.locale }} - - } + @if (column.dataType === 'string' || column.dataType === 'image') { + + + + + + } + @if (column.dataType === 'number') { + + + + } + @if (column.dataType === 'boolean') { + + + + } + @if (column.dataType === 'date') { + + + + + } + @if (column.dataType === 'time') { + + + + } + @if (column.dataType === 'dateTime') { + + + + } + @if (column.dataType === 'currency') { + + @if (grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + @if (!grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + } + @if (column.dataType === 'percent') { + + + + {{ editValue | percent: column.pipeArgs.digitsInfo : grid.locale }} + + + } @if (isInvalid) { - - -
-
- -
+ + +
+
+
+
} - @let errors = formControl.errors; - @if (errors?.['required']) { -
- {{grid.resourceStrings.igx_grid_required_validation_error}} -
- } - @if (errors?.['minlength']) { -
- {{grid.resourceStrings.igx_grid_min_length_validation_error | igxStringReplace:'{0}':errors.minlength.requiredLength }} -
- } - @if (errors?.['maxlength']) { -
- {{grid.resourceStrings.igx_grid_max_length_validation_error | igxStringReplace:'{0}':errors.maxlength.requiredLength }} -
- } - @if (errors?.['min']) { -
- {{grid.resourceStrings.igx_grid_min_validation_error | igxStringReplace:'{0}':errors.min.min }} -
- } - @if (errors?.['max']) { -
- {{grid.resourceStrings.igx_grid_max_validation_error | igxStringReplace:'{0}':errors.max.max }} -
- } - @if (errors?.['email']) { -
- {{grid.resourceStrings.igx_grid_email_validation_error }} -
- } - @if (errors?.['pattern']) { -
- {{grid.resourceStrings.igx_grid_pattern_validation_error}} -
- } + @let errors = formControl.errors; + @if (errors?.['required']) { +
+ {{ grid.resourceStrings.igx_grid_required_validation_error }} +
+ } + @if (errors?.['minlength']) { +
+ {{ + grid.resourceStrings.igx_grid_min_length_validation_error + | igxStringReplace: '{0}' : errors.minlength.requiredLength + }} +
+ } + @if (errors?.['maxlength']) { +
+ {{ + grid.resourceStrings.igx_grid_max_length_validation_error + | igxStringReplace: '{0}' : errors.maxlength.requiredLength + }} +
+ } + @if (errors?.['min']) { +
+ {{ + grid.resourceStrings.igx_grid_min_validation_error + | igxStringReplace: '{0}' : errors.min.min + }} +
+ } + @if (errors?.['max']) { +
+ {{ + grid.resourceStrings.igx_grid_max_validation_error + | igxStringReplace: '{0}' : errors.max.max + }} +
+ } + @if (errors?.['email']) { +
+ {{ grid.resourceStrings.igx_grid_email_validation_error }} +
+ } + @if (errors?.['pattern']) { +
+ {{ grid.resourceStrings.igx_grid_pattern_validation_error }} +
+ }
diff --git a/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.html b/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.html index 071b64a2ac8..30883cfe68e 100644 --- a/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.html +++ b/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.html @@ -1,40 +1,67 @@
- @if (title) { -

{{ title }}

- } + @if (title) { +

+ {{ title }} +

+ } - @if (!hideFilter) { - - - - } + @if (!hideFilter) { + + + + }
-
- @for ( - column of $any(grid)?._columns - | columnActionEnabled:actionsDirective.actionEnabledColumnsFilter:pipeTrigger - | filterActionColumns:filterCriteria:pipeTrigger - | sortActionColumns:columnDisplayOrder:pipeTrigger; track column - ) { - - {{ column.header || column.field }} - - } +
+ @for ( + column of $safeNavigationMigration($any(grid)?._columns) + | columnActionEnabled + : actionsDirective.actionEnabledColumnsFilter + : pipeTrigger + | filterActionColumns: filterCriteria : pipeTrigger + | sortActionColumns: columnDisplayOrder : pipeTrigger; + track column + ) { + + {{ column.header || column.field }} + + }
- - + +
diff --git a/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.ts b/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.ts index 0c474bc8585..1e8e99f7976 100644 --- a/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.ts +++ b/projects/igniteui-angular/grids/core/src/column-actions/column-actions.component.ts @@ -1,4 +1,4 @@ -import { Component, DoCheck, EventEmitter, HostBinding, Input, IterableDiffer, IterableDiffers, Output, Pipe, PipeTransform, QueryList, ViewChildren, booleanAttribute, forwardRef, inject } from '@angular/core'; +import { Component, DoCheck, EventEmitter, HostBinding, Input, IterableDiffer, IterableDiffers, Output, Pipe, PipeTransform, QueryList, ViewChildren, booleanAttribute, forwardRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { ColumnDisplayOrder } from '../common/enums'; import { GridType } from '../common/grid.interface'; import { IColumnToggledEventArgs } from '../common/events'; @@ -19,6 +19,7 @@ let NEXT_ID = 0; @Component({ selector: 'igx-column-actions', templateUrl: './column-actions.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, FormsModule, IgxInputDirective, IgxCheckboxComponent, IgxButtonDirective, IgxRippleDirective, forwardRef(() => IgxColumnActionEnabledPipe), forwardRef(() => IgxFilterActionColumnsPipe), forwardRef(() => IgxSortActionColumnsPipe)] }) export class IgxColumnActionsComponent implements DoCheck { diff --git a/projects/igniteui-angular/grids/core/src/filtering/advanced-filtering/advanced-filtering-dialog.component.ts b/projects/igniteui-angular/grids/core/src/filtering/advanced-filtering/advanced-filtering-dialog.component.ts index f9d03a565be..03149f94305 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/advanced-filtering/advanced-filtering-dialog.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/advanced-filtering/advanced-filtering-dialog.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, ViewChild, ChangeDetectorRef, OnDestroy, HostBinding, inject } from '@angular/core'; +import { Component, Input, ViewChild, ChangeDetectorRef, OnDestroy, HostBinding, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { IActiveNode } from '../../grid-navigation.service'; import { GridType } from '../../common/grid.interface'; @@ -32,6 +32,7 @@ import { @Component({ selector: 'igx-advanced-filtering-dialog', templateUrl: './advanced-filtering-dialog.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, NgClass, IgxQueryBuilderComponent, IgxQueryBuilderHeaderComponent, IgxDragHandleDirective, IgxButtonDirective] }) export class IgxAdvancedFilteringDialogComponent implements OnDestroy { diff --git a/projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-row.component.html b/projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-row.component.html index 4b13be78963..cc5c8ef6274 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-row.component.html +++ b/projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-row.component.html @@ -1,275 +1,416 @@ - - @for (condition of conditions; track condition) { - -
- - {{ translateCondition(condition) }} -
-
- } + + @for (condition of conditions; track condition) { + +
+ + {{ + translateCondition(condition) + }} +
+
+ }
- - - - - - @if (value || value === 0) { - - @if (column.dataType === 'percent') { - {{ value | percent:column.pipeArgs.digitsInfo:filteringService.grid.locale }} - } - - - - - + + + + + + @if (value || value === 0) { + + @if (column.dataType === 'percent') { + {{ + value + | percent + : column.pipeArgs.digitsInfo + : filteringService.grid.locale + }} } - + + + + + + } + - - - - - @if (value) { - - - - - - - } - - - - + + + + + @if (value) { + + + + + + + } + + + + - - - - - @if (value) { - - - - - - - } - - - - + + + + + @if (value) { + + + + + + + } + + + + - - - - - - @if (value || value === 0) { - - - - - - - } - + + + + + + @if (value || value === 0) { + + + + + + + } + - + @if (showArrows) { - + }
-
- - - @for (item of expressionsList; track item.expression; let i = $index; let last = $last) { - - - - - {{filteringService.getChipLabel(item.expression)}} - - @if (!last) { - - - - {{filteringService.grid.resourceStrings.igx_grid_filter_operator_and}} - {{filteringService.grid.resourceStrings.igx_grid_filter_operator_or}} - - - } - - } - -
+
+ + + @for ( + item of expressionsList; + track item.expression; + let i = $index; + let last = $last + ) { + + + + + {{ filteringService.getChipLabel(item.expression) }} + + @if (!last) { + + + + {{ + filteringService.grid.resourceStrings + .igx_grid_filter_operator_and + }} + {{ + filteringService.grid.resourceStrings + .igx_grid_filter_operator_or + }} + + + } + + } + +
@if (showArrows) { - + } -
- @if (!isNarrowWidth) { - - - } - @if (isNarrowWidth) { - - - } +
+ @if (!isNarrowWidth) { + + + } + @if (isNarrowWidth) { + + + }
diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-clear-filters.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-clear-filters.component.ts index d8bb213392e..6333c55b0e7 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-clear-filters.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-clear-filters.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { NgClass } from '@angular/common'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -10,6 +10,7 @@ import { PlatformUtil } from 'igniteui-angular/core'; @Component({ selector: 'igx-excel-style-clear-filters', templateUrl: './excel-style-clear-filters.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxIconComponent] }) export class IgxExcelStyleClearFiltersComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-conditional-filter.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-conditional-filter.component.ts index bb083e85c48..4397504c167 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-conditional-filter.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-conditional-filter.component.ts @@ -1,4 +1,4 @@ -import { Component, OnDestroy, ViewChild, inject } from '@angular/core'; +import { Component, OnDestroy, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import { IgxExcelStyleCustomDialogComponent } from './excel-style-custom-dialog.component'; @@ -15,6 +15,7 @@ import { AbsoluteScrollStrategy, AutoPositionStrategy, GridColumnDataType, Horiz @Component({ selector: 'igx-excel-style-conditional-filter', templateUrl: './excel-style-conditional-filter.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxDropDownItemNavigationDirective, IgxIconComponent, IgxDropDownComponent, IgxDropDownItemComponent] }) export class IgxExcelStyleConditionalFilterComponent implements OnDestroy { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-custom-dialog.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-custom-dialog.component.ts index e1837de0c1f..460c276a6a4 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-custom-dialog.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-custom-dialog.component.ts @@ -1,5 +1,5 @@ import { NgClass } from '@angular/common'; -import { ChangeDetectorRef, Component, ElementRef, Input, QueryList, TemplateRef, ViewChild, ViewChildren, inject } from '@angular/core'; +import { ChangeDetectorRef, Component, ElementRef, Input, QueryList, TemplateRef, ViewChild, ViewChildren, inject, ChangeDetectionStrategy } from '@angular/core'; import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; import { ColumnType, FilteringLogic, GridColumnDataType, IgxBooleanFilteringOperand, IgxDateFilteringOperand, IgxDateTimeFilteringOperand, IgxNumberFilteringOperand, IgxOverlayService, IgxStringFilteringOperand, IgxTimeFilteringOperand, PlatformUtil } from 'igniteui-angular/core'; import { IgxButtonDirective } from 'igniteui-angular/directives'; @@ -16,6 +16,7 @@ import { ILogicOperatorChangedArgs, IgxExcelStyleDefaultExpressionComponent } fr @Component({ selector: 'igx-excel-style-custom-dialog', templateUrl: './excel-style-custom-dialog.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxExcelStyleDateExpressionComponent, IgxExcelStyleDefaultExpressionComponent, IgxButtonDirective, IgxIconComponent] }) export class IgxExcelStyleCustomDialogComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.html b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.html index d4f5a2cf6fd..ca089163961 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.html +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.html @@ -1,102 +1,135 @@ - - - @if (expressionUI.expression.condition) { - - } - @if (!expressionUI.expression.condition) { - - } - - @for (condition of conditions; track condition) { - - - {{translateCondition(condition)}} - + + + @if (expressionUI.expression.condition) { + } + @if (!expressionUI.expression.condition) { + + } + + @for (condition of conditions; track condition) { + + + {{ translateCondition(condition) }} + + } @if (column.dataType === 'date') { - - - - - + + + + + } @if (column.dataType === 'time') { - - - - - + + + + + } @if (column.dataType === 'dateTime') { - - - + + + } @if (!isSingle) { - + } @if (!isLast) { - - - {{ grid.resourceStrings.igx_grid_filter_operator_and }} - - - {{ grid.resourceStrings.igx_grid_filter_operator_or }} - - + + + {{ grid.resourceStrings.igx_grid_filter_operator_and }} + + + {{ grid.resourceStrings.igx_grid_filter_operator_or }} + + } -
-
+
diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.ts index abdfcb12def..b0ff9b25844 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-date-expression.component.ts @@ -1,4 +1,4 @@ -import { Component, inject, Input, ViewChild } from '@angular/core'; +import { Component, inject, Input, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxExcelStyleDefaultExpressionComponent } from './excel-style-default-expression.component'; import { FormsModule } from '@angular/forms'; import { IgxSelectComponent, IgxSelectItemComponent } from 'igniteui-angular/select'; @@ -16,6 +16,7 @@ import { IgxButtonGroupComponent } from 'igniteui-angular/button-group'; @Component({ selector: 'igx-excel-style-date-expression', templateUrl: './excel-style-date-expression.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSelectComponent, IgxPrefixDirective, IgxIconComponent, IgxSelectItemComponent, IgxDatePickerComponent, IgxPickerToggleComponent, IgxPickerClearComponent, IgxTimePickerComponent, IgxInputGroupComponent, FormsModule, IgxInputDirective, IgxDateTimeEditorDirective, IgxButtonDirective, IgxButtonGroupComponent, IgxOverlayOutletDirective, IgxIconButtonDirective] }) export class IgxExcelStyleDateExpressionComponent extends IgxExcelStyleDefaultExpressionComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-default-expression.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-default-expression.component.ts index 2f9491f00df..a93ede71e8f 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-default-expression.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-default-expression.component.ts @@ -1,4 +1,4 @@ -import { Component, AfterViewInit, Input, Output, EventEmitter, ChangeDetectorRef, ViewChild, inject } from '@angular/core'; +import { Component, AfterViewInit, Input, Output, EventEmitter, ChangeDetectorRef, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { ExpressionUI } from './common'; import { AbsoluteScrollStrategy, ColumnType, ConnectedPositioningStrategy, DataUtil, FilteringLogic, GridColumnDataType, IBaseEventArgs, IFilteringOperation, IgxOverlayOutletDirective, IgxPercentFormatterPipe, OverlaySettings, PlatformUtil } from 'igniteui-angular/core'; @@ -22,6 +22,7 @@ export interface ILogicOperatorChangedArgs extends IBaseEventArgs { @Component({ selector: 'igx-excel-style-default-expression', templateUrl: './excel-style-default-expression.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxSelectComponent, IgxPrefixDirective, IgxIconComponent, IgxSelectItemComponent, IgxInputGroupComponent, IgxInputDirective, IgxSuffixDirective, IgxButtonDirective, IgxButtonGroupComponent, IgxOverlayOutletDirective, IgxIconButtonDirective, IgxPercentFormatterPipe] }) export class IgxExcelStyleDefaultExpressionComponent implements AfterViewInit { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-header.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-header.component.ts index f01f0eee140..4d6e4080391 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-header.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-header.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, booleanAttribute, inject } from '@angular/core'; +import { Component, Input, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { NgClass } from '@angular/common'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -10,6 +10,7 @@ import { IgxIconButtonDirective } from 'igniteui-angular/directives'; @Component({ selector: 'igx-excel-style-header', templateUrl: './excel-style-header.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxIconComponent, IgxIconButtonDirective] }) export class IgxExcelStyleHeaderComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-hiding.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-hiding.component.ts index 5db40be03d4..e2b1912bc05 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-hiding.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-hiding.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -8,6 +8,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-excel-style-hiding', templateUrl: './excel-style-hiding.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent] }) export class IgxExcelStyleHidingComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-moving.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-moving.component.ts index 8eb6ff10f33..428eeac8a03 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-moving.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-moving.component.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, inject } from '@angular/core'; +import { Component, HostBinding, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { IgxButtonGroupComponent } from 'igniteui-angular/button-group'; import { IgxButtonDirective } from 'igniteui-angular/directives'; @@ -11,6 +11,7 @@ import { ColumnPinningPosition, ColumnType } from 'igniteui-angular/core'; @Component({ selector: 'igx-excel-style-moving', templateUrl: './excel-style-moving.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective, IgxIconComponent] }) export class IgxExcelStyleMovingComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-pinning.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-pinning.component.ts index 51aeaf963eb..4c40324be2c 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-pinning.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-pinning.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { NgClass } from '@angular/common'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -9,6 +9,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-excel-style-pinning', templateUrl: './excel-style-pinning.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxIconComponent] }) export class IgxExcelStylePinningComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.html b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.html index a011c9a7d04..b35eec0b30f 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.html +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.html @@ -1,176 +1,270 @@ - - + + @if (searchValue || searchValue === 0) { + + - @if (searchValue || searchValue === 0) { - - - - - } + > + + + } @if (!isHierarchical()) { - -
- - - {{ item.label }} - - -
- -
- - -
-
- - - -
- {{ esf.grid?.resourceStrings.igx_grid_excel_matches_count.replace('{0}', matchesCount) }} -
-
+ +
+ + + {{ item.label }} + + +
+ +
+ +
+
+ + + +
+ {{ + esf.grid?.resourceStrings.igx_grid_excel_matches_count.replace( + '{0}', + matchesCount + ) + }} +
+
} @if (isHierarchical()) { -
- @if (!isTreeEmpty()) { -
-
- - {{ selectAllItem.label }} - -
- @if (searchValue) { -
- - {{ addToCurrentFilterItem.label }} - -
- } -
+
+ @if (!isTreeEmpty()) { +
+
+ + {{ selectAllItem.label }} + +
+ @if (searchValue) { +
+ + {{ addToCurrentFilterItem.label }} + +
} - - @for (item of displayedListData; track item.value) { - -
{{item.label}}
- @for (childLevel1 of item.children; track childLevel1.value) { - -
{{childLevel1.label}}
- @for (childLevel2 of childLevel1.children; track childLevel2.value) { - -
{{childLevel2.label}}
- @for (childLevel3 of childLevel2.children; track childLevel3.value) { - -
{{childLevel3.label}}
- @for (childLevel4 of childLevel3.children; track childLevel4.value) { - -
{{childLevel4.label}}
- @for (childLevel5 of childLevel4.children; track childLevel5.value) { - -
{{childLevel5.label}}
- @for (childLevel6 of childLevel5.children; track childLevel6.value) { - -
{{childLevel6.label}}
- @for (childLevel7 of childLevel6.children; track childLevel7.value) { - -
{{childLevel7.label}}
- @for (childLevel8 of childLevel7.children; track childLevel8.value) { - -
{{childLevel8.label}}
- @for (childLevel9 of childLevel8.children; track childLevel9.value) { - -
{{childLevel9.label}}
-
- } -
- } -
- } -
- } -
- } -
- } +
+ } + + @for (item of displayedListData; track item.value) { + +
{{ item.label }}
+ @for (childLevel1 of item.children; track childLevel1.value) { + +
{{ childLevel1.label }}
+ @for ( + childLevel2 of childLevel1.children; + track childLevel2.value + ) { + +
{{ childLevel2.label }}
+ @for ( + childLevel3 of childLevel2.children; + track childLevel3.value + ) { + +
{{ childLevel3.label }}
+ @for ( + childLevel4 of childLevel3.children; + track childLevel4.value + ) { + +
{{ childLevel4.label }}
+ @for ( + childLevel5 of childLevel4.children; + track childLevel5.value + ) { + +
{{ childLevel5.label }}
+ @for ( + childLevel6 of childLevel5.children; + track childLevel6.value + ) { + +
{{ childLevel6.label }}
+ @for ( + childLevel7 of childLevel6.children; + track childLevel7.value + ) { + +
{{ childLevel7.label }}
+ @for ( + childLevel8 of childLevel7.children; + track childLevel8.value + ) { + +
{{ childLevel8.label }}
+ @for ( + childLevel9 of childLevel8.children; + track childLevel9.value + ) { + +
{{ childLevel9.label }}
+
+ }
- } + } +
+ }
- } + } +
+ }
- } + } +
+ }
- } -
- -
- - -
-
- @if (isTreeEmpty()) { - - } -
+ } + + } + + } + + +
+ +
+
+ @if (isTreeEmpty()) { + + } +
} -
- {{esf.grid?.resourceStrings.igx_grid_excel_no_matches}} -
+
+ {{ esf.grid?.resourceStrings.igx_grid_excel_no_matches }} +
- - +
-
- -
-
- -
+
+ +
+
+ +
diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts index 61fd8075565..c251b82b6fa 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, Component, ViewChild, ChangeDetectorRef, TemplateRef, Directive, OnDestroy, HostBinding, Input, inject } from '@angular/core'; +import { AfterViewInit, Component, ViewChild, ChangeDetectorRef, TemplateRef, Directive, OnDestroy, HostBinding, Input, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { IChangeCheckboxEventArgs, IgxCheckboxComponent } from 'igniteui-angular/checkbox'; import { takeUntil } from 'rxjs/operators'; @@ -35,6 +35,7 @@ let NEXT_ID = 0; @Component({ selector: 'igx-excel-style-search', templateUrl: './excel-style-search.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxIconComponent, IgxPrefixDirective, FormsModule, IgxInputDirective, IgxSuffixDirective, IgxListComponent, IgxForOfDirective, IgxListItemComponent, IgxCheckboxComponent, IgxDataLoadingTemplateDirective, NgTemplateOutlet, IgxEmptyListTemplateDirective, IgxTreeComponent, IgxTreeNodeComponent, IgxCircularProgressBarComponent, IgxButtonDirective] }) export class IgxExcelStyleSearchComponent implements AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-selecting.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-selecting.component.ts index 718ee62708c..ec7780fd3e1 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-selecting.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-selecting.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { BaseFilteringComponent } from './base-filtering.component'; import { NgClass } from '@angular/common'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -9,6 +9,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-excel-style-selecting', templateUrl: './excel-style-selecting.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgClass, IgxIconComponent] }) export class IgxExcelStyleSelectingComponent { diff --git a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-sorting.component.ts b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-sorting.component.ts index f42af3a270d..d1e9826291c 100644 --- a/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-sorting.component.ts +++ b/projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-sorting.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnDestroy, HostBinding, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, ViewChild, OnDestroy, HostBinding, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { takeUntil } from 'rxjs/operators'; import { Subject } from 'rxjs'; import { BaseFilteringComponent } from './base-filtering.component'; @@ -12,6 +12,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-excel-style-sorting', templateUrl: './excel-style-sorting.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective, IgxIconComponent] }) export class IgxExcelStyleSortingComponent implements OnDestroy { diff --git a/projects/igniteui-angular/grids/core/src/grid-actions/grid-action-button.component.ts b/projects/igniteui-angular/grids/core/src/grid-actions/grid-action-button.component.ts index 76b3654a8a7..5a2734cf640 100644 --- a/projects/igniteui-angular/grids/core/src/grid-actions/grid-action-button.component.ts +++ b/projects/igniteui-angular/grids/core/src/grid-actions/grid-action-button.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, TemplateRef, ViewChild, Output, EventEmitter, ElementRef, booleanAttribute } from '@angular/core'; +import { Component, Input, TemplateRef, ViewChild, Output, EventEmitter, ElementRef, booleanAttribute, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconComponent } from 'igniteui-angular/icon'; import { IgxRippleDirective } from 'igniteui-angular/directives'; import { IgxIconButtonDirective } from 'igniteui-angular/directives'; @@ -9,6 +9,7 @@ import { IgxIconButtonDirective } from 'igniteui-angular/directives'; @Component({ selector: 'igx-grid-action-button', templateUrl: 'grid-action-button.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRippleDirective, IgxIconComponent, IgxIconButtonDirective] }) export class IgxGridActionButtonComponent { diff --git a/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.spec.ts b/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.spec.ts index 52e08f45b4f..d0b51a5bad9 100644 --- a/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.spec.ts +++ b/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -459,6 +459,7 @@ describe('igxGridEditingActions #grid ', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) class IgxActionStripTestingComponent implements OnInit { @@ -512,6 +513,7 @@ class IgxActionStripTestingComponent implements OnInit { `, selector: 'igx-action-strip-pin-edit-component', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent] }) class IgxActionStripPinEditComponent extends IgxActionStripTestingComponent { @@ -533,6 +535,7 @@ class IgxActionStripPinEditComponent extends IgxActionStripTestingComponent { `, selector: 'igx-action-strip-edit-menu-component', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) class IgxActionStripEditMenuComponent extends IgxActionStripTestingComponent { @@ -555,6 +558,7 @@ class IgxActionStripEditMenuComponent extends IgxActionStripTestingComponent { `, selector: 'igx-action-strip-one-row-component', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent] }) class IgxActionStripOneRowComponent extends IgxActionStripTestingComponent { @@ -576,6 +580,7 @@ class IgxActionStripOneRowComponent extends IgxActionStripTestingComponent { `, selector: 'igx-action-strip-menu-one-row-component', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) class IgxActionStripMenuOneRowComponent extends IgxActionStripTestingComponent { diff --git a/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.ts b/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.ts index bccbbcb60c2..d9ec410458b 100644 --- a/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.ts +++ b/projects/igniteui-angular/grids/core/src/grid-actions/grid-editing-actions.component.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, Input, booleanAttribute } from '@angular/core'; +import { Component, HostBinding, Input, booleanAttribute, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridActionsBaseDirective } from './grid-actions-base.directive'; import { addRow, addChild } from '@igniteui/material-icons-extended'; import { IgxGridActionButtonComponent } from './grid-action-button.component'; @@ -18,6 +18,7 @@ import { IgxActionStripActionsToken, showMessage } from 'igniteui-angular/core'; selector: 'igx-grid-editing-actions', templateUrl: 'grid-editing-actions.component.html', providers: [{ provide: IgxActionStripActionsToken, useExisting: IgxGridEditingActionsComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridActionButtonComponent] }) export class IgxGridEditingActionsComponent extends IgxGridActionsBaseDirective { diff --git a/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.spec.ts b/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.spec.ts index 0ff5256d145..b0bfcccc2ee 100644 --- a/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.spec.ts +++ b/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { By } from '@angular/platform-browser'; @@ -132,6 +132,7 @@ describe('igxGridPinningActions #grid ', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent] }) class IgxActionStripTestingComponent implements OnInit { @@ -178,6 +179,7 @@ class IgxActionStripTestingComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent] }) class IgxActionStripPinMenuComponent extends IgxActionStripTestingComponent { diff --git a/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.ts b/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.ts index 9ade780ecb0..839ecc875c9 100644 --- a/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.ts +++ b/projects/igniteui-angular/grids/core/src/grid-actions/grid-pinning-actions.component.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding } from '@angular/core'; +import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridActionsBaseDirective } from './grid-actions-base.directive'; import { pinLeft, unpinLeft, jumpDown, jumpUp } from '@igniteui/material-icons-extended'; import { IgxGridActionButtonComponent } from './grid-action-button.component'; @@ -17,6 +17,7 @@ import { IgxActionStripActionsToken } from 'igniteui-angular/core'; selector: 'igx-grid-pinning-actions', templateUrl: 'grid-pinning-actions.component.html', providers: [{ provide: IgxActionStripActionsToken, useExisting: IgxGridPinningActionsComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridActionButtonComponent] }) diff --git a/projects/igniteui-angular/grids/core/src/grid-footer/grid-footer.component.ts b/projects/igniteui-angular/grids/core/src/grid-footer/grid-footer.component.ts index 4e49030561c..4309db98421 100644 --- a/projects/igniteui-angular/grids/core/src/grid-footer/grid-footer.component.ts +++ b/projects/igniteui-angular/grids/core/src/grid-footer/grid-footer.component.ts @@ -1,8 +1,9 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; @Component({ selector: 'igx-grid-footer', template: '', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxGridFooterComponent { diff --git a/projects/igniteui-angular/grids/core/src/state.directive.spec.ts b/projects/igniteui-angular/grids/core/src/state.directive.spec.ts index 760201be1a6..fc333a89790 100644 --- a/projects/igniteui-angular/grids/core/src/state.directive.spec.ts +++ b/projects/igniteui-angular/grids/core/src/state.directive.spec.ts @@ -1,5 +1,5 @@ import { TestBed, waitForAsync } from '@angular/core/testing'; -import { Component, TemplateRef, ViewChild } from '@angular/core'; +import { Component, TemplateRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from '../../../test-utils/sample-test-data.spec'; import { IgxGridStateDirective } from './state.directive'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -1070,6 +1070,7 @@ class HelperFunctions { Custom Content: {{cell.value}} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent, IgxGridStateDirective] }) export class IgxGridStateComponent { @@ -1098,6 +1099,7 @@ export class IgxGridStateComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent, IgxGridStateDirective] }) export class IgxGridStateWithOptionsComponent { @@ -1127,6 +1129,7 @@ export class IgxGridStateWithOptionsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridStateDirective, IgxGridDetailTemplateDirective, IgxPaginatorComponent] }) export class IgxGridStateWithDetailsComponent { @@ -1149,6 +1152,7 @@ export class IgxGridStateWithDetailsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxGridStateDirective] }) export class CollapsibleColumnGroupTestComponent { @@ -1178,6 +1182,7 @@ export class CollapsibleColumnGroupTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridStateDirective, IgxColumnComponent, IgxColumnLayoutComponent] }) export class IgxGridMRLStateComponent { diff --git a/projects/igniteui-angular/grids/core/src/state.hierarchicalgrid.spec.ts b/projects/igniteui-angular/grids/core/src/state.hierarchicalgrid.spec.ts index d103ac20d2e..9a30565484c 100644 --- a/projects/igniteui-angular/grids/core/src/state.hierarchicalgrid.spec.ts +++ b/projects/igniteui-angular/grids/core/src/state.hierarchicalgrid.spec.ts @@ -1,5 +1,5 @@ import { fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridStateDirective } from './state.directive'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { GridSelectionMode } from './common/enums'; @@ -685,6 +685,7 @@ class HelperFunctions { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxPaginatorComponent, IgxRowIslandComponent, IgxGridStateDirective] }) export class IgxHierarchicalGridTestExpandedBaseComponent { diff --git a/projects/igniteui-angular/grids/core/src/state.treegrid.spec.ts b/projects/igniteui-angular/grids/core/src/state.treegrid.spec.ts index d18e972ab3d..265b4b366ce 100644 --- a/projects/igniteui-angular/grids/core/src/state.treegrid.spec.ts +++ b/projects/igniteui-angular/grids/core/src/state.treegrid.spec.ts @@ -1,5 +1,5 @@ import { TestBed, waitForAsync } from '@angular/core/testing'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from '../../../test-utils/sample-test-data.spec'; import { IgxGridStateDirective } from './state.directive'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -368,6 +368,7 @@ class HelperFunctions { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent, IgxGridStateDirective] }) export class IgxTreeGridTreeDataTestComponent { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/common.ts b/projects/igniteui-angular/grids/core/src/toolbar/common.ts index d10096262b1..b340a45fdfb 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/common.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/common.ts @@ -1,4 +1,4 @@ -import { Component, Directive, HostBinding, TemplateRef, inject } from '@angular/core'; +import { Component, Directive, HostBinding, TemplateRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { GridType } from '../common/grid.interface'; @Directive({ @@ -40,6 +40,7 @@ export class IgxPdfTextDirective { } */ @Component({ selector: 'igx-grid-toolbar-title', template: '', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxGridToolbarTitleComponent { @@ -73,6 +74,7 @@ export class IgxGridToolbarTitleComponent { */ @Component({ selector: 'igx-grid-toolbar-actions', template: '', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxGridToolbarActionsComponent { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.html b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.html index 6a517c59ef4..9a48314022b 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.html +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.html @@ -1,17 +1,28 @@ - diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.ts b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.ts index 7de270b2214..2fc181e9c59 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-advanced-filtering.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, OnInit, inject } from '@angular/core'; +import { Component, Input, OnInit, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxToolbarToken } from './token'; import { IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular/directives'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -26,6 +26,7 @@ import { IFilteringExpressionsTree, isTree, OverlaySettings } from 'igniteui-ang @Component({ selector: 'igx-grid-toolbar-advanced-filtering', templateUrl: './grid-toolbar-advanced-filtering.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxRippleDirective, IgxIconComponent] }) export class IgxGridToolbarAdvancedFilteringComponent implements OnInit { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.html b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.html index 1c74723149c..afeb5d6d3aa 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.html +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.html @@ -1,60 +1,87 @@ -
-
    - @if (exportExcel) { -
  • - - - - @if (!excel.childNodes.length) { - - {{ grid?.resourceStrings.igx_grid_toolbar_exporter_excel_entry_text}} - - } -
  • +
      + @if (exportExcel) { +
    • + + + + @if (!excel.childNodes.length) { + + {{ + grid?.resourceStrings.igx_grid_toolbar_exporter_excel_entry_text + }} + } +
    • + } - @if (exportCSV) { -
    • - - - - @if (!csv.childNodes.length) { - - {{ grid?.resourceStrings.igx_grid_toolbar_exporter_csv_entry_text }} - - } -
    • + @if (exportCSV) { +
    • + + + + @if (!csv.childNodes.length) { + + {{ grid?.resourceStrings.igx_grid_toolbar_exporter_csv_entry_text }} + } +
    • + } - @if (exportPDF) { -
    • - - - - @if (!pdf.childNodes.length) { - - {{ grid?.resourceStrings.igx_grid_toolbar_exporter_pdf_entry_text }} - - } -
    • + @if (exportPDF) { +
    • + + + + @if (!pdf.childNodes.length) { + + {{ grid?.resourceStrings.igx_grid_toolbar_exporter_pdf_entry_text }} + } -
    + + } +
diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.ts b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.ts index 910ac5054c9..6ecd9590c7b 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-exporter.component.ts @@ -1,4 +1,4 @@ -import { Component, Input, Output, EventEmitter, booleanAttribute, inject } from '@angular/core'; +import { Component, Input, Output, EventEmitter, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { first } from 'rxjs/operators'; import { BaseToolbarDirective } from './grid-toolbar.base'; import { IgxExcelTextDirective, IgxCSVTextDirective, IgxPdfTextDirective } from './common'; @@ -45,6 +45,7 @@ export interface IgxExporterEvent { @Component({ selector: 'igx-grid-toolbar-exporter', templateUrl: './grid-toolbar-exporter.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxRippleDirective, IgxIconComponent, IgxToggleDirective, IgxExcelTextDirective, IgxCSVTextDirective, IgxPdfTextDirective] }) export class IgxGridToolbarExporterComponent extends BaseToolbarDirective { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.html b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.html index 9794e20a475..0a552b03a80 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.html +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.html @@ -1,21 +1,42 @@ @if (grid.rendered$ | async) { - - - + + + } diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.ts b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.ts index d68b0c2bad2..2eea35c2844 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-hiding.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnActionsComponent } from '../column-actions/column-actions.component'; import { IgxColumnHidingDirective } from '../column-actions/column-hiding.directive'; import { BaseToolbarColumnActionsDirective } from './grid-toolbar.base'; @@ -27,6 +27,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-grid-toolbar-hiding', templateUrl: './grid-toolbar-hiding.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxIconComponent, IgxColumnActionsComponent, IgxColumnHidingDirective, IgxToggleDirective, AsyncPipe] }) export class IgxGridToolbarHidingComponent extends BaseToolbarColumnActionsDirective { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.html b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.html index 445b4c9bea9..14d258b10b3 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.html +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.html @@ -1,21 +1,42 @@ @if (grid.rendered$ | async) { - - - + + + } diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.ts b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.ts index 3c5ecd75a2b..a63cb2b9333 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar-pinning.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnActionsComponent } from '../column-actions/column-actions.component'; import { IgxColumnPinningDirective } from '../column-actions/column-pinning.directive'; import { BaseToolbarColumnActionsDirective } from './grid-toolbar.base'; @@ -26,6 +26,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; @Component({ selector: 'igx-grid-toolbar-pinning', templateUrl: './grid-toolbar-pinning.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxIconComponent, IgxColumnActionsComponent, IgxColumnPinningDirective, IgxToggleDirective, AsyncPipe] }) export class IgxGridToolbarPinningComponent extends BaseToolbarColumnActionsDirective { diff --git a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar.component.ts b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar.component.ts index 7ed8cd6685c..0107ab40d1a 100644 --- a/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar.component.ts +++ b/projects/igniteui-angular/grids/core/src/toolbar/grid-toolbar.component.ts @@ -1,4 +1,4 @@ -import { Component, ContentChild, ElementRef, HostBinding, Input, OnDestroy, booleanAttribute, inject } from '@angular/core'; +import { Component, ContentChild, ElementRef, HostBinding, Input, OnDestroy, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subscription } from 'rxjs'; import { pinLeft, unpinLeft } from '@igniteui/material-icons-extended'; import { IgxGridToolbarActionsComponent } from './common'; @@ -29,6 +29,7 @@ import { IgxIconService } from 'igniteui-angular/icon'; selector: 'igx-grid-toolbar', templateUrl: './grid-toolbar.component.html', providers: [{ provide: IgxToolbarToken, useExisting: IgxGridToolbarComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, NgTemplateOutlet, IgxLinearProgressBarComponent] }) export class IgxGridToolbarComponent implements OnDestroy { diff --git a/projects/igniteui-angular/grids/grid/src/cell-merge.spec.ts b/projects/igniteui-angular/grids/grid/src/cell-merge.spec.ts index 97568e4a734..f86fc04879b 100644 --- a/projects/igniteui-angular/grids/grid/src/cell-merge.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/cell-merge.spec.ts @@ -1,4 +1,4 @@ -import { Component, TemplateRef, ViewChild } from '@angular/core'; +import { Component, TemplateRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { ByLevelTreeGridMergeStrategy, DefaultMergeStrategy, DefaultSortingStrategy, GridColumnDataType, GridTypeBase, IgxStringFilteringOperand, ɵSize, SortingDirection } from 'igniteui-angular/core'; @@ -1240,6 +1240,7 @@ describe('IgxGrid - Cell merging #grid', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class DefaultCellMergeGridComponent extends DataParent { @@ -1340,6 +1341,7 @@ export class DefaultCellMergeGridComponent extends DataParent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IntegrationCellMergeGridComponent extends DefaultCellMergeGridComponent { diff --git a/projects/igniteui-angular/grids/grid/src/cell.spec.ts b/projects/igniteui-angular/grids/grid/src/cell.spec.ts index 63143376997..e2b5859c7db 100644 --- a/projects/igniteui-angular/grids/grid/src/cell.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/cell.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, NgZone, DebugElement } from '@angular/core'; +import { Component, ViewChild, OnInit, NgZone, DebugElement, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { IgxGridComponent } from './public_api'; @@ -428,6 +428,7 @@ describe('IgxGrid - Cell component #grid', () => { } `, styleUrls: ['../../../test-utils/grid-cell-style-testing.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ConditionalCellStyleTestComponent implements OnInit { diff --git a/projects/igniteui-angular/grids/grid/src/column-resizing.spec.ts b/projects/igniteui-angular/grids/grid/src/column-resizing.spec.ts index 3b65edeacba..de721bf5a8f 100644 --- a/projects/igniteui-angular/grids/grid/src/column-resizing.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/column-resizing.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, OnInit, ViewChild } from '@angular/core'; +import { Component, DebugElement, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -978,6 +978,7 @@ describe('IgxGrid - Deferred Column Resizing #grid', () => { @Component({ template: GridTemplateStrings.declareGrid(`width="500px" height="300px"`, ``, ColumnDefinitions.resizableThreeOfFour), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ResizableColumnsComponent { @@ -990,6 +991,7 @@ export class ResizableColumnsComponent { template: GridTemplateStrings.declareGrid(`width="500px" height="300px"`, ``, 'Grid Toolbar' + ColumnDefinitions.resizableThreeOfFour), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarTitleComponent] }) export class ResizableColumnsWithToolbarComponent { @@ -1012,6 +1014,7 @@ export class ResizableColumnsWithToolbarComponent { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class LargePinnedColGridComponent implements OnInit { @@ -1033,6 +1036,7 @@ export class LargePinnedColGridComponent implements OnInit { @Component({ template: GridTemplateStrings.declareGrid(``, ``, ColumnDefinitions.gridFeatures), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxCellHeaderTemplateDirective, IgxAvatarComponent] }) export class GridFeaturesComponent { @@ -1046,6 +1050,7 @@ export class GridFeaturesComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="800px"`, ``, ColumnDefinitions.resizableColsComponent), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class NullColumnsComponent implements OnInit { @@ -1077,6 +1082,7 @@ export class NullColumnsComponent implements OnInit { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class MinWidthColumnsComponent implements OnInit { @@ -1096,6 +1102,7 @@ export class MinWidthColumnsComponent implements OnInit { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColGridComponent implements OnInit { @@ -1113,6 +1120,7 @@ export class ColGridComponent implements OnInit { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColPercentageGridComponent implements OnInit { @@ -1138,6 +1146,7 @@ export class ColPercentageGridComponent implements OnInit { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColAutosizeGridComponent implements OnInit { diff --git a/projects/igniteui-angular/grids/grid/src/column.spec.ts b/projects/igniteui-angular/grids/grid/src/column.spec.ts index a0ba1af08c3..a8e5ff3ccf6 100644 --- a/projects/igniteui-angular/grids/grid/src/column.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/column.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, TemplateRef, ViewChild } from '@angular/core'; +import { Component, DebugElement, TemplateRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, waitForAsync, ComponentFixture } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { getLocaleCurrencySymbol, registerLocaleData } from '@angular/common'; @@ -1729,6 +1729,7 @@ describe('IgxGrid - Column properties #grid', () => { @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.iterableComponent), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnsFromIterableComponent { @@ -1755,6 +1756,7 @@ interface IColumnConfig { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxButtonDirective] }) export class ResizableColumnsComponent { @@ -1784,6 +1786,7 @@ export class ResizableColumnsComponent { New summary text `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxCellHeaderTemplateDirective, IgxCellFooterTemplateDirective, IgxSummaryTemplateDirective] }) export class TemplatedColumnsComponent { @@ -1829,6 +1832,7 @@ export class TemplatedColumnsComponent { {{ summaryResults[0].label }}: {{ summaryResults[0].summaryResult }} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxSummaryTemplateDirective] }) export class TemplatedInputColumnsComponent { @@ -1855,6 +1859,7 @@ export class TemplatedInputColumnsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class TemplatedContextInputColumnsComponent { @@ -1879,6 +1884,7 @@ export class TemplatedContextInputColumnsComponent { `, styles: [`.headerAlignSyle {text-align: right !important;}`], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnHaederClassesComponent { @@ -1927,6 +1933,7 @@ export class ColumnHaederClassesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class DOMAttributesAsSettersComponent { diff --git a/projects/igniteui-angular/grids/grid/src/expandable-cell.component.html b/projects/igniteui-angular/grids/grid/src/expandable-cell.component.html index 80f883bdf3f..aa709550f2b 100644 --- a/projects/igniteui-angular/grids/grid/src/expandable-cell.component.html +++ b/projects/igniteui-angular/grids/grid/src/expandable-cell.component.html @@ -1,259 +1,381 @@ - @if (displayPinnedChip) { - {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} - } + @if (displayPinnedChip) { + {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} + } - @if (column.dataType !== 'boolean' && column.dataType !== 'image' || (column.dataType === 'boolean' && this.formatter)) { -
- {{ formatter ? (value | columnFormatter:formatter:rowData) : column.dataType === "number" - ? (value | number:column.pipeArgs.digitsInfo:grid.locale) : (column.dataType === 'date' || column.dataType === 'time' || column.dataType === 'dateTime') - ? (value | date:column.pipeArgs.format:column.pipeArgs.timezone:grid.locale) : column.dataType === 'currency' - ? (value | currency:currencyCode:column.pipeArgs.display:column.pipeArgs.digitsInfo:grid.locale) : column.dataType === 'percent' - ? (value | percent:column.pipeArgs.digitsInfo:grid.locale) : value}}
- } + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + " + [row]="rowData" + [column]="this.column.field" + [containerClass]="'igx-grid__td-text'" + [metadata]="searchMetadata" + > + {{ + formatter + ? (value | columnFormatter: formatter : rowData) + : column.dataType === 'number' + ? (value | number: column.pipeArgs.digitsInfo : grid.locale) + : column.dataType === 'date' || + column.dataType === 'time' || + column.dataType === 'dateTime' + ? (value + | date + : column.pipeArgs.format + : column.pipeArgs.timezone + : grid.locale) + : column.dataType === 'currency' + ? (value + | currency + : currencyCode + : column.pipeArgs.display + : column.pipeArgs.digitsInfo + : grid.locale) + : column.dataType === 'percent' + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + }} +
+ } - @if (column.dataType === 'boolean' && !this.formatter) { + @if (column.dataType === 'boolean' && !this.formatter) {
- - + +
- } - @if (column.dataType === 'image') { - - } + } + @if (column.dataType === 'image') { + + } - @if (column.dataType !== 'boolean' || (column.dataType === 'boolean' && this.formatter)) { -
- {{ value ? value : (column.header || column.field) }} -
- } + @if ( + column.dataType !== 'boolean' || + (column.dataType === 'boolean' && this.formatter) + ) { +
+ {{ value ? value : column.header || column.field }} +
+ }
- @if (column.dataType === 'string' || column.dataType === 'image') { - - - - - - } - @if (column.dataType === 'number') { - - - - } - @if (column.dataType === 'boolean') { - - - - } - @if (column.dataType === 'date') { - - - - - } - @if (column.dataType === 'time') { - - - - } - @if (column.dataType === 'dateTime') { - - - - } - @if (column.dataType === 'currency') { - - @if (grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - @if (!grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - } - @if (column.dataType === 'percent') { - - - {{ editValue | percent:column.pipeArgs.digitsInfo:grid.locale }} - - } + @if (column.dataType === 'string' || column.dataType === 'image') { + + + + + + } + @if (column.dataType === 'number') { + + + + } + @if (column.dataType === 'boolean') { + + + + } + @if (column.dataType === 'date') { + + + + + } + @if (column.dataType === 'time') { + + + + } + @if (column.dataType === 'dateTime') { + + + + } + @if (column.dataType === 'currency') { + + @if (grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + @if (!grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + } + @if (column.dataType === 'percent') { + + + + {{ editValue | percent: column.pipeArgs.digitsInfo : grid.locale }} + + + } @if (showExpanderIndicator) { -
- - -
+
+ + +
} - - + @if (isInvalid) { - - -
-
- -
+ + +
+
+
+
} - + - + - @if (formGroup?.get(column?.field).errors?.['required']) { -
- {{grid.resourceStrings.igx_grid_required_validation_error}} -
- } - @if (formGroup?.get(column?.field).errors?.['minlength']) { -
- {{grid.resourceStrings.igx_grid_min_length_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.minlength.requiredLength }} -
- } - @if (formGroup?.get(column?.field).errors?.['maxlength']) { -
- {{grid.resourceStrings.igx_grid_max_length_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.maxlength.requiredLength }} -
- } - @if (formGroup?.get(column?.field).errors?.['min']) { -
- {{grid.resourceStrings.igx_grid_min_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.min.min }} -
- } - @if (formGroup?.get(column?.field).errors?.['max']) { -
- {{grid.resourceStrings.igx_grid_max_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.max.max }} -
- } - @if (formGroup?.get(column?.field).errors?.['email']) { -
- {{grid.resourceStrings.igx_grid_email_validation_error }} -
- } - @if (formGroup?.get(column?.field).errors?.['pattern']) { -
- {{grid.resourceStrings.igx_grid_pattern_validation_error}} -
- } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['required'] + ) { +
+ {{ grid.resourceStrings.igx_grid_required_validation_error }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.[ + 'minlength' + ] + ) { +
+ {{ + grid.resourceStrings.igx_grid_min_length_validation_error + | igxStringReplace + : '{0}' + : formGroup.get(column.field).errors.minlength.requiredLength + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.[ + 'maxlength' + ] + ) { +
+ {{ + grid.resourceStrings.igx_grid_max_length_validation_error + | igxStringReplace + : '{0}' + : formGroup.get(column.field).errors.maxlength.requiredLength + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['min'] + ) { +
+ {{ + grid.resourceStrings.igx_grid_min_validation_error + | igxStringReplace: '{0}' : formGroup.get(column.field).errors.min.min + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['max'] + ) { +
+ {{ + grid.resourceStrings.igx_grid_max_validation_error + | igxStringReplace: '{0}' : formGroup.get(column.field).errors.max.max + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['email'] + ) { +
+ {{ grid.resourceStrings.igx_grid_email_validation_error }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['pattern'] + ) { +
+ {{ grid.resourceStrings.igx_grid_pattern_validation_error }} +
+ }
diff --git a/projects/igniteui-angular/grids/grid/src/grid-mrl-keyboard-nav.spec.ts b/projects/igniteui-angular/grids/grid/src/grid-mrl-keyboard-nav.spec.ts index cc54dcb646b..327bdcab091 100644 --- a/projects/igniteui-angular/grids/grid/src/grid-mrl-keyboard-nav.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid-mrl-keyboard-nav.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -2679,6 +2679,7 @@ describe('IgxGrid Multi Row Layout - Keyboard navigation #grid', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnLayoutComponent] }) export class ColumnLayoutTestComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid-row-pinning.spec.ts b/projects/igniteui-angular/grids/grid/src/grid-row-pinning.spec.ts index eb4f61a68ff..17c07ad8fd6 100644 --- a/projects/igniteui-angular/grids/grid/src/grid-row-pinning.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid-row-pinning.spec.ts @@ -1,4 +1,4 @@ -import { ViewChild, Component, DebugElement, OnInit, QueryList } from '@angular/core'; +import { ViewChild, Component, DebugElement, OnInit, QueryList, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -1491,6 +1491,7 @@ describe('Row Pinning #grid', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent] }) export class GridRowPinningComponent { @@ -1521,6 +1522,7 @@ export class GridRowPinningComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class GridRowPinningWithMRLComponent extends GridRowPinningComponent { @@ -1555,6 +1557,7 @@ export class GridRowPinningWithMRLComponent extends GridRowPinningComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridDetailTemplateDirective] }) export class GridRowPinningWithMDVComponent extends GridRowPinningComponent { } @@ -1572,6 +1575,7 @@ export class GridRowPinningWithMDVComponent extends GridRowPinningComponent { } [autoGenerate]="true"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridRowPinningWithTransactionsComponent extends GridRowPinningComponent { } @@ -1588,6 +1592,7 @@ export class GridRowPinningWithTransactionsComponent extends GridRowPinningCompo [autoGenerate]="true"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridRowPinningWithInitialPinningComponent implements OnInit { @@ -1615,6 +1620,7 @@ export class GridRowPinningWithInitialPinningComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridRowPinningWithPrimaryKeyComponent extends GridRowPinningComponent { } diff --git a/projects/igniteui-angular/grids/grid/src/grid-row.component.html b/projects/igniteui-angular/grids/grid/src/grid-row.component.html index 3804d9bbfdd..bbba977db1a 100644 --- a/projects/igniteui-angular/grids/grid/src/grid-row.component.html +++ b/projects/igniteui-angular/grids/grid/src/grid-row.component.html @@ -1,268 +1,609 @@ - + -
- -
+
+ +
- @if (rowDraggable) { -
- -
- } - @if (this.showRowSelectors) { -
- - -
- } - @if (grid.groupingExpressions.length > 0) { -
- } - + @if (rowDraggable) { +
+ +
+ } + @if (this.showRowSelectors) { +
+ + +
+ } + @if (grid.groupingExpressions.length > 0) { +
+ } - @if (!grid.hasColumnLayouts) { - @if (pinnedStartColumns.length > 0) { - @for (col of pinnedStartColumns | igxNotGrouped; track trackPinnedColumn(col)) { - @if (this.hasMergedCells) { -
- -
- } - @else { - - } - } + @if (!grid.hasColumnLayouts) { + @if (pinnedStartColumns.length > 0) { + @for ( + col of pinnedStartColumns | igxNotGrouped; + track trackPinnedColumn(col) + ) { + @if (this.hasMergedCells) { +
+ +
+ } @else { + } - - @if (this.hasMergedCells) { -
- -
- } - @else { - - } - -
- @if (pinnedEndColumns.length > 0) { - @for (col of pinnedEndColumns | igxNotGrouped; track trackPinnedColumn(col)) { - @if (this.hasMergedCells) { -
- -
- } - @else { - - } - } + } + } + + @if (this.hasMergedCells) { +
+ +
+ } @else { + + } +
+ @if (pinnedEndColumns.length > 0) { + @for ( + col of pinnedEndColumns | igxNotGrouped; + track trackPinnedColumn(col) + ) { + @if (this.hasMergedCells) { +
+ +
+ } @else { + } + } } + } - @if (grid.hasColumnLayouts) { - @if (pinnedStartColumns.length > 0) { - - } - -
- @for (col of col.children; track trackPinnedColumn(col)) { - - } -
-
- @if (pinnedEndColumns.length > 0) { - + @if (grid.hasColumnLayouts) { + @if (pinnedStartColumns.length > 0) { + + } + +
+ @for (col of col.children; track trackPinnedColumn(col)) { + } +
+
+ @if (pinnedEndColumns.length > 0) { + } + }
- @for (col of pinnedColumns | igxTopLevel; track trackPinnedColumn(col)) { -
- @for (col of col.children; track col) { - - } -
- } + @for (col of pinnedColumns | igxTopLevel; track trackPinnedColumn(col)) { +
+ @for (col of col.children; track col) { + + } +
+ }
-
- - -
+
+ + +
- - + + - - + + - - + + - - + + diff --git a/projects/igniteui-angular/grids/grid/src/grid-summary.spec.ts b/projects/igniteui-angular/grids/grid/src/grid-summary.spec.ts index 6fb1b4c5d1f..75ab25f8117 100644 --- a/projects/igniteui-angular/grids/grid/src/grid-summary.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid-summary.spec.ts @@ -1,4 +1,4 @@ -import { Component, DebugElement, ViewChild } from '@angular/core'; +import { Component, DebugElement, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { fakeAsync, TestBed, tick, ComponentFixture, flush, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -2763,6 +2763,7 @@ class AllDataAvgSummary extends IgxSummaryOperand { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) diff --git a/projects/igniteui-angular/grids/grid/src/grid-toolbar.spec.ts b/projects/igniteui-angular/grids/grid/src/grid-toolbar.spec.ts index 5c974efbd89..fa9e5dd8a79 100644 --- a/projects/igniteui-angular/grids/grid/src/grid-toolbar.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid-toolbar.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, ComponentFixture, tick, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { IgxGridComponent } from './public_api'; @@ -359,6 +359,7 @@ describe('IgxGrid - Grid Toolbar #grid - ', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarTitleComponent] }) export class DefaultToolbarComponent { @@ -396,6 +397,7 @@ export class DefaultToolbarComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxGridToolbarComponent, diff --git a/projects/igniteui-angular/grids/grid/src/grid.component.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.component.spec.ts index 5d527dcd6c7..c17ae370cb3 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.component.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.component.spec.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, ChangeDetectorRef, Component, Injectable, OnInit, ViewChild, TemplateRef, inject } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, Injectable, OnInit, ViewChild, TemplateRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, flush, waitForAsync } from '@angular/core/testing'; import { BehaviorSubject, Observable } from 'rxjs'; import { By } from '@angular/platform-browser'; @@ -3322,6 +3322,7 @@ describe('IgxGrid Component Tests #grid', () => { }
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridTestComponent { @@ -3399,6 +3400,7 @@ export class IgxGridTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridDefaultRenderingComponent { @@ -3479,6 +3481,7 @@ export class IgxGridDefaultRenderingComponent { >
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridColumnHeaderAutoSizeComponent { @@ -3510,6 +3513,7 @@ export class IgxGridColumnHeaderAutoSizeComponent { > `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class IgxGridColumnHeaderInGroupAutoSizeComponent { @@ -3524,6 +3528,7 @@ export class IgxGridColumnHeaderInGroupAutoSizeComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridColumnPercentageWidthComponent extends IgxGridDefaultRenderingComponent { @@ -3541,6 +3546,7 @@ export class IgxGridColumnPercentageWidthComponent extends IgxGridDefaultRenderi } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridColumnHiddenPercentageWidthComponent extends IgxGridDefaultRenderingComponent { @@ -3558,6 +3564,7 @@ export class IgxGridColumnHiddenPercentageWidthComponent extends IgxGridDefaultR
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridFooterComponent] }) export class IgxGridWithCustomFooterComponent extends IgxGridTestComponent { @@ -3572,6 +3579,7 @@ export class IgxGridWithCustomFooterComponent extends IgxGridTestComponent { }
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent] }) export class IgxGridWrappedInContComponent extends IgxGridTestComponent { @@ -3627,6 +3635,7 @@ export class IgxGridWrappedInContComponent extends IgxGridTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent] }) export class IgxGridFixedContainerHeightComponent extends IgxGridWrappedInContComponent { @@ -3641,6 +3650,7 @@ export class IgxGridFixedContainerHeightComponent extends IgxGridWrappedInContCo `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridMarkupDeclarationComponent extends IgxGridTestComponent { @@ -3661,6 +3671,7 @@ export class IgxGridMarkupDeclarationComponent extends IgxGridTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridEmptyMessage100PercentComponent extends IgxGridTestComponent { @@ -3712,6 +3723,7 @@ export class LocalService { `, providers: [LocalService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, AsyncPipe] }) export class IgxGridRemoteVirtualizationComponent implements OnInit, AfterViewInit { @@ -3757,6 +3769,7 @@ export class IgxGridRemoteVirtualizationComponent implements OnInit, AfterViewIn
`, providers: [LocalService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridEmptyTemplateDirective, IgxGridLoadingTemplateDirective, AsyncPipe] }) export class IgxGridRemoteOnDemandComponent { @@ -3797,6 +3810,7 @@ export class IgxGridRemoteOnDemandComponent { `), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFormattingComponent extends BasicGridComponent { @@ -3909,6 +3923,7 @@ export class IgxGridFormattingComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxTabsComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabItemComponent, IgxPaginatorComponent] }) export class IgxGridInsideIgxTabsComponent { @@ -3961,6 +3976,7 @@ export class IgxGridInsideIgxTabsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent, IgxPaginatorContentDirective, AsyncPipe] }) export class IgxGridWithCustomPaginationTemplateComponent { @@ -3976,6 +3992,7 @@ export class IgxGridWithCustomPaginationTemplateComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridPerformanceComponent implements AfterViewInit, OnInit { @@ -4028,6 +4045,7 @@ export class IgxGridPerformanceComponent implements AfterViewInit, OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridNoDataComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid.crud.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.crud.spec.ts index afd33098689..e79b26ba3cf 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.crud.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.crud.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { IgxGridComponent } from './grid.component'; @@ -351,6 +351,7 @@ describe('IgxGrid - CRUD operations #grid', () => { [primaryKey]="'index'"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class DefaultCRUDGridComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid.groupby.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.groupby.spec.ts index 9b5f56d7fa7..1dd33a0b614 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.groupby.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.groupby.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, TemplateRef, QueryList } from '@angular/core'; +import { Component, ViewChild, TemplateRef, QueryList, ChangeDetectionStrategy } from '@angular/core'; import { formatNumber } from '@angular/common' import { ComponentFixture, fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; @@ -4048,6 +4048,7 @@ describe('IgxGrid - GroupBy #grid', () => { Custom template `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent] }) export class DefaultGridComponent extends DataParent { @@ -4121,6 +4122,7 @@ class MySortingStrategy extends IgxGrouping { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class GroupableGridComponent extends DataParent { @@ -4175,6 +4177,7 @@ export class GroupableGridComponent extends DataParent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGroupByRowTemplateDirective, IgxRowExpandedIndicatorDirective, IgxRowCollapsedIndicatorDirective, IgxHeaderExpandedIndicatorDirective, IgxHeaderCollapsedIndicatorDirective] }) export class CustomTemplateGridComponent extends DataParent { @@ -4200,6 +4203,7 @@ export class CustomTemplateGridComponent extends DataParent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GroupByDataMoreColumnsComponent extends DataParent { @@ -4239,6 +4243,7 @@ export class GroupByDataMoreColumnsComponent extends DataParent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GroupByEmptyColumnFieldComponent extends DataParent { @@ -4271,6 +4276,7 @@ export class CustomSortingStrategy extends DefaultSortingStrategy { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGroupByRowSelectorDirective, IgxCheckboxComponent] }) export class GridGroupByRowCustomSelectorsComponent extends DataParent { @@ -4296,6 +4302,7 @@ export class GridGroupByRowCustomSelectorsComponent extends DataParent { dataType="string"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridGroupByCaseSensitiveComponent { @@ -4342,6 +4349,7 @@ export class GridGroupByCaseSensitiveComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridGroupByTestDateTimeDataComponent { @@ -4368,6 +4376,7 @@ export class GridGroupByTestDateTimeDataComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridStateDirective] }) export class GridGroupByStateComponent extends GridGroupByTestDateTimeDataComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid.master-detail.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.master-detail.spec.ts index 6bc40676064..792ccbd5544 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.master-detail.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.master-detail.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, DebugElement, QueryList, TemplateRef, ViewChildren } from '@angular/core'; +import { Component, ViewChild, OnInit, DebugElement, QueryList, TemplateRef, ViewChildren, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { By } from '@angular/platform-browser'; @@ -1312,6 +1312,7 @@ describe('IgxGrid Master Detail #grid', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridDetailTemplateDirective, IgxCheckboxComponent, IgxPaginatorComponent, IgxInputGroupComponent, IgxInputDirective] }) export class DefaultGridMasterDetailComponent { @@ -1363,6 +1364,7 @@ export class DefaultGridMasterDetailComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCheckboxComponent, IgxGridDetailTemplateDirective, IgxPaginatorComponent] }) export class AllExpandedGridMasterDetailComponent extends DefaultGridMasterDetailComponent implements OnInit { @@ -1407,6 +1409,7 @@ export class AllExpandedGridMasterDetailComponent extends DefaultGridMasterDetai `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridDetailTemplateDirective, IgxColumnLayoutComponent, IgxCheckboxComponent, IgxPaginatorComponent] }) export class MRLMasterDetailComponent extends DefaultGridMasterDetailComponent { } diff --git a/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.integration.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.integration.spec.ts index 018f54e75fa..7b6f43d9611 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.integration.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.integration.spec.ts @@ -3,7 +3,7 @@ import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { IgxGridComponent } from './grid.component'; import { SampleTestData } from '../../../test-utils/sample-test-data.spec'; -import { ViewChild, Component, DebugElement } from '@angular/core'; +import { ViewChild, Component, DebugElement, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnLayoutComponent, IgxGridMRLNavigationService, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent } from 'igniteui-angular/grids/core'; import { wait, UIInteractions } from '../../../test-utils/ui-interactions.spec'; import { GridFunctions, GRID_MRL_BLOCK } from '../../../test-utils/grid-functions.spec'; @@ -1243,6 +1243,7 @@ describe('IgxGrid - multi-row-layout Integration #grid - ', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarActionsComponent] }) export class ColumnLayoutHidingTestComponent { @@ -1297,6 +1298,7 @@ export class ColumnLayoutHidingTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarPinningComponent, IgxGridToolbarActionsComponent] }) export class ColumnLayoutPinningTestComponent { @@ -1344,6 +1346,7 @@ export class ColumnLayoutPinningTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class ColumnLayoutFilteringTestComponent extends ColumnLayoutPinningTestComponent { @@ -1363,6 +1366,7 @@ export class ColumnLayoutFilteringTestComponent extends ColumnLayoutPinningTestC } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class ColumnLayoutGroupingTestComponent extends ColumnLayoutPinningTestComponent { @@ -1407,6 +1411,7 @@ export class ColumnLayoutGroupingTestComponent extends ColumnLayoutPinningTestCo } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class ColumnLayoutResizingTestComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.spec.ts index ea1179d36c9..14f4a18c8c7 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.multi-row-layout.spec.ts @@ -1,6 +1,6 @@ import { TestBed, fakeAsync, tick, waitForAsync } from '@angular/core/testing'; import { IgxGridComponent } from './grid.component'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { IgxColumnLayoutComponent, IgxGridMRLNavigationService } from 'igniteui-angular/grids/core'; import { By } from '@angular/platform-browser'; @@ -1158,6 +1158,7 @@ describe('IgxGrid - multi-row-layout #grid', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class ColumnLayoutTestComponent { @@ -1199,6 +1200,7 @@ export class ColumnLayoutTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class ColumnLayoutAndGroupsTestComponent extends ColumnLayoutTestComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grid.nested.props.spec.ts b/projects/igniteui-angular/grids/grid/src/grid.nested.props.spec.ts index c69971704e9..0fb915c5525 100644 --- a/projects/igniteui-angular/grids/grid/src/grid.nested.props.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/grid.nested.props.spec.ts @@ -1,7 +1,7 @@ import { TestBed, ComponentFixture, fakeAsync, waitForAsync, tick } from '@angular/core/testing'; import { IgxGridComponent } from './grid.component'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { Component, DebugElement, ViewChild } from '@angular/core'; +import { Component, DebugElement, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { UIInteractions } from '../../../test-utils/ui-interactions.spec'; import { GridFunctions } from '../../../test-utils/grid-functions.spec'; import { IGridEditEventArgs, IgxCellEditorTemplateDirective, IgxCellTemplateDirective, IgxColumnComponent } from 'igniteui-angular/grids/core'; @@ -122,6 +122,7 @@ const DATA2 = [ @Component({ template: ``, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) class NestedPropertiesGridComponent { @@ -140,6 +141,7 @@ class NestedPropertiesGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) class NestedPropertiesGrid2Component { @@ -160,6 +162,7 @@ class NestedPropertiesGrid2Component { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxCellEditorTemplateDirective, IgxComboComponent, FormsModule] }) class NestedPropertyGridComponent { diff --git a/projects/igniteui-angular/grids/grid/src/grouping/grid-group-by-area.component.ts b/projects/igniteui-angular/grids/grid/src/grouping/grid-group-by-area.component.ts index eb391282419..96e28bf35c3 100644 --- a/projects/igniteui-angular/grids/grid/src/grouping/grid-group-by-area.component.ts +++ b/projects/igniteui-angular/grids/grid/src/grouping/grid-group-by-area.component.ts @@ -1,6 +1,7 @@ import { - Component, - Input, + Component, + Input, + ChangeDetectionStrategy } from '@angular/core'; import { IChipsAreaReorderEventArgs, IgxChipComponent, IgxChipsAreaComponent } from 'igniteui-angular/chips'; import { FlatGridType, IgxGroupByAreaDirective, IgxGroupByMetaPipe, IgxGroupAreaDropDirective } from 'igniteui-angular/grids/core'; @@ -19,6 +20,7 @@ import { IGroupingExpression, ISortingExpression } from 'igniteui-angular/core'; selector: 'igx-grid-group-by-area', templateUrl: '../../../core/src/grouping/group-by-area.component.html', providers: [{ provide: IgxGroupByAreaDirective, useExisting: IgxGridGroupByAreaComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxSuffixDirective, IgxGroupAreaDropDirective, IgxDropDirective, NgTemplateOutlet, IgxGroupByMetaPipe] }) export class IgxGridGroupByAreaComponent extends IgxGroupByAreaDirective { diff --git a/projects/igniteui-angular/grids/grid/src/row-drag.directive.spec.ts b/projects/igniteui-angular/grids/grid/src/row-drag.directive.spec.ts index a1d179f31f4..d697e8bb28a 100644 --- a/projects/igniteui-angular/grids/grid/src/row-drag.directive.spec.ts +++ b/projects/igniteui-angular/grids/grid/src/row-drag.directive.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, DebugElement, QueryList, TemplateRef } from '@angular/core'; +import { Component, ViewChild, DebugElement, QueryList, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -1196,6 +1196,7 @@ describe('Row Drag Tests', () => { [ngStyle]="{width:'100px', height:'100px', backgroundColor:'yellow'}"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxDropDirective, NgStyle] }) export class IgxGridRowDraggableComponent extends DataParent { @@ -1265,6 +1266,7 @@ export class IgxGridRowDraggableComponent extends DataParent { expand_less `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxIconComponent, IgxDropDirective, IgxRowDragGhostDirective, IgxDragIndicatorIconDirective, NgStyle] }) export class IgxGridRowCustomGhostDraggableComponent extends DataParent { @@ -1328,6 +1330,7 @@ export class IgxGridRowCustomGhostDraggableComponent extends DataParent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxDropDirective] }) export class IgxGridFeaturesRowDragComponent extends DataParent { @@ -1368,6 +1371,7 @@ export class IgxGridFeaturesRowDragComponent extends DataParent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxDropDirective] }) export class IgxHierarchicalGridTestComponent { @@ -1408,6 +1412,7 @@ export class IgxHierarchicalGridTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxRowDragGhostDirective] }) export class IgxHierarchicalGridCustomGhostTestComponent { @@ -1440,6 +1445,7 @@ export class IgxHierarchicalGridCustomGhostTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxGridComponent, IgxColumnComponent, IgxDropDirective] }) export class IgxTreeGridTestComponent { diff --git a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.navigation.spec.ts b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.navigation.spec.ts index c96232939e5..3e745261833 100644 --- a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.navigation.spec.ts +++ b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.navigation.spec.ts @@ -1,6 +1,6 @@ import { TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { Component, ViewChild, DebugElement} from '@angular/core'; +import { Component, ViewChild, DebugElement, ChangeDetectionStrategy } from '@angular/core'; import { IgxChildGridRowComponent, IgxHierarchicalGridComponent } from './hierarchical-grid.component'; import { wait, UIInteractions, waitForSelectionChange } from '../../../test-utils/ui-interactions.spec'; import { IgxRowIslandComponent } from './row-island.component'; @@ -1044,6 +1044,7 @@ describe('IgxHierarchicalGrid Navigation', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridTestBaseComponent { @@ -1087,6 +1088,7 @@ export class IgxHierarchicalGridTestBaseComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridTestComplexComponent extends IgxHierarchicalGridTestBaseComponent { @@ -1108,6 +1110,7 @@ export class IgxHierarchicalGridTestComplexComponent extends IgxHierarchicalGrid `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMultiLayoutComponent extends IgxHierarchicalGridTestBaseComponent {} @@ -1138,6 +1141,7 @@ export class IgxHierarchicalGridMultiLayoutComponent extends IgxHierarchicalGrid `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxColumnComponent] }) export class IgxHierarchicalGridSmallerChildComponent extends IgxHierarchicalGridTestBaseComponent {} diff --git a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.spec.ts b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.spec.ts index a2ac5d7c87f..9addc70d048 100644 --- a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.spec.ts +++ b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.spec.ts @@ -1,6 +1,6 @@ import { TestBed, fakeAsync, tick, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { ChangeDetectorRef, Component, ViewChild, AfterViewInit, QueryList, inject } from '@angular/core'; +import { ChangeDetectorRef, Component, ViewChild, AfterViewInit, QueryList, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxChildGridRowComponent, IgxHierarchicalGridComponent } from './hierarchical-grid.component'; import { wait, UIInteractions } from '../../../test-utils/ui-interactions.spec'; import { IgxRowIslandComponent } from './row-island.component'; @@ -2005,6 +2005,7 @@ describe('Basic IgxHierarchicalGrid #hGrid', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridTestBaseComponent { @@ -2060,6 +2061,7 @@ export class IgxHierarchicalGridTestBaseComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMultiLayoutComponent extends IgxHierarchicalGridTestBaseComponent { @@ -2080,6 +2082,7 @@ export class IgxHierarchicalGridMultiLayoutComponent extends IgxHierarchicalGrid `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHGridRemoteOnDemandComponent { @@ -2148,6 +2151,7 @@ export class IgxHGridRemoteOnDemandComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridColumnsUpdateComponent extends IgxHierarchicalGridTestBaseComponent implements AfterViewInit { @@ -2177,6 +2181,7 @@ export class IgxHierarchicalGridColumnsUpdateComponent extends IgxHierarchicalGr `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridSizingComponent { @@ -2214,6 +2219,7 @@ export class IgxHierarchicalGridSizingComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridToggleRIComponent extends IgxHierarchicalGridTestBaseComponent { @@ -2237,6 +2243,7 @@ export class IgxHierarchicalGridToggleRIComponent extends IgxHierarchicalGridTes } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridToggleRIAndColsComponent extends IgxHierarchicalGridToggleRIComponent { @@ -2269,6 +2276,7 @@ export class IgxHierarchicalGridToggleRIAndColsComponent extends IgxHierarchical EXPANDED `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxRowExpandedIndicatorDirective, IgxRowCollapsedIndicatorDirective, IgxHeaderExpandedIndicatorDirective, IgxHeaderCollapsedIndicatorDirective] }) export class IgxHierarchicalGridCustomTemplateComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -2315,6 +2323,7 @@ export class IgxHierarchicalGridCustomTemplateComponent extends IgxHierarchicalG EXPANDED `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxHierarchicalGridComponent, IgxColumnComponent, @@ -2357,6 +2366,7 @@ export class IgxHierarchicalGridCustomFilteringTemplateComponent extends IgxHier `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxIconComponent, IgxCellHeaderTemplateDirective] }) export class IgxHierarchicalGridHidingPinningColumnsComponent extends IgxHierarchicalGridTestBaseComponent { @@ -2392,6 +2402,7 @@ export class IgxHierarchicalGridHidingPinningColumnsComponent extends IgxHierarc `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxRowEditTextDirective, IgxRowEditActionsDirective] }) export class IgxHierarchicalGridCustomRowEditOverlayComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -2416,6 +2427,7 @@ export class IgxHierarchicalGridCustomRowEditOverlayComponent extends IgxHierarc `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxRowEditTextDirective, IgxRowEditActionsDirective] }) export class IgxHierarchicalGridAutoSizeColumnsComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -2457,6 +2469,7 @@ export class IgxHierarchicalGridAutoSizeColumnsComponent extends IgxHierarchical `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxIconComponent, IgxCellHeaderTemplateDirective] }) export class IgxHierarchicalGridMCHComponent { @@ -2525,6 +2538,7 @@ export class IgxHierarchicalGridMCHComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridEmptyTemplateComponent extends IgxHierarchicalGridTestBaseComponent { @@ -2556,6 +2570,7 @@ export class IgxHierarchicalGridEmptyTemplateComponent extends IgxHierarchicalGr `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMissingChildDataComponent { diff --git a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.virtualization.spec.ts b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.virtualization.spec.ts index e35f7c67bc5..6575d4812e9 100644 --- a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.virtualization.spec.ts +++ b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.virtualization.spec.ts @@ -1,6 +1,6 @@ import { TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxHierarchicalGridComponent } from './hierarchical-grid.component'; import { IgxRowIslandComponent } from './row-island.component'; import { wait, UIInteractions } from '../../../test-utils/ui-interactions.spec'; @@ -498,6 +498,7 @@ describe('IgxHierarchicalGrid Virtualization Custom Scenarios #hGrid', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridTestBaseComponent { @@ -538,6 +539,7 @@ export class IgxHierarchicalGridTestBaseComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridNoScrollTestComponent extends IgxHierarchicalGridTestBaseComponent { diff --git a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-row.component.html b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-row.component.html index ffafe6f2b43..c3ca8efb454 100644 --- a/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-row.component.html +++ b/projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-row.component.html @@ -1,139 +1,297 @@ - + - + - + - - + + -
- -
+
+ +
- - @if (rowDraggable) { -
- -
- } - - - @if (showRowSelectors) { -
- - -
- } + + @if (rowDraggable) { +
+ +
+ } - - @if (hasChildren) { -
- - -
- } + + @if (showRowSelectors) { +
+ + +
+ } - @if (pinnedStartColumns.length > 0) { - - } + + @if (hasChildren) { +
+ + +
+ } - - @if (this.hasMergedCells) { -
- -
- } - @else { - - } -
+ @if (pinnedStartColumns.length > 0) { + + } - @if (pinnedEndColumns.length > 0) { - + + @if (this.hasMergedCells) { +
+ +
+ } @else { + } +
+ + @if (pinnedEndColumns.length > 0) { + + } - -
- - -
-
+ +
+ + +
+
- - @for (col of columns | igxNotGrouped; track trackPinnedColumn(col)) { - - - } - + + @for (col of columns | igxNotGrouped; track trackPinnedColumn(col)) { + + + } +
- - + [displayPinnedChip]="shouldDisplayPinnedChip(col)" + > + diff --git a/projects/igniteui-angular/grids/lite/src/grid-lite.component.spec.ts b/projects/igniteui-angular/grids/lite/src/grid-lite.component.spec.ts index 5ad0312ac75..d4debdef72c 100644 --- a/projects/igniteui-angular/grids/lite/src/grid-lite.component.spec.ts +++ b/projects/igniteui-angular/grids/lite/src/grid-lite.component.spec.ts @@ -1,5 +1,5 @@ import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; -import { Component, viewChild } from '@angular/core'; +import { Component, viewChild, ChangeDetectionStrategy } from '@angular/core'; import { By } from '@angular/platform-browser'; import { IgxGridLiteComponent, IgxGridLiteFilteringExpression, IgxGridLiteSortingExpression } from './grid-lite.component'; import { IgxGridLiteColumnComponent, IgxGridLiteCellTemplateDirective, IgxGridLiteHeaderTemplateDirective, IgxGridLiteColumnConfiguration } from './grid-lite-column.component'; @@ -195,6 +195,7 @@ interface TestData { `, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridLiteComponent, IgxGridLiteColumnComponent] }) class BasicGridComponent { @@ -253,6 +254,7 @@ class BasicGridComponent { `, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridLiteComponent, IgxGridLiteColumnComponent] }) class GridComponentAutogenerate extends BasicGridComponent { @@ -291,6 +293,7 @@ class GridComponentAutogenerate extends BasicGridComponent { `, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridLiteComponent, IgxGridLiteColumnComponent, IgxGridLiteCellTemplateDirective, IgxGridLiteHeaderTemplateDirective] }) class GridComponentTemplate extends BasicGridComponent { diff --git a/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.html b/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.html index 5a41d48b3bb..4fa3b34c669 100644 --- a/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.html +++ b/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.html @@ -1,189 +1,201 @@
- - - - - - @for ( - item of dims | filterPivotItems: input.value:grid?.pipeTrigger; - track item.memberName - ) { - - - {{ item.displayName || item.memberName }} - - } - @for ( - item of values | filterPivotItems: input.value:grid?.pipeTrigger; - track item - ) { - - - {{ item.displayName || item.member }} - - } - + + + + + + @for ( + item of dims + | filterPivotItems + : input.value + : $safeNavigationMigration(grid?.pipeTrigger); + track item.memberName + ) { + + + {{ item.displayName || item.memberName }} + + } + @for ( + item of values + | filterPivotItems + : input.value + : $safeNavigationMigration(grid?.pipeTrigger); + track item + ) { + + + {{ item.displayName || item.member }} + + } +
- @for (panel of _panels; track panel) { - - + + +
+ {{ grid?.resourceStrings[panel.i18n] }} +
+
+ + {{ + this.grid ? this.grid[panel.dataKey].length : 0 + }} +
+
+
+ + @if (this.grid && this.grid[panel.dataKey].length > 0) { + + @for ( + item of this.grid[panel.dataKey]; + track item.memberName || item.member + ) { + - -
- {{ grid?.resourceStrings[panel.i18n] }} -
-
- - {{ this.grid ? this.grid[panel.dataKey].length : 0 }} + [id]="item[panel.itemKey]" + > +
+
+
+ @if (panel.type === null) { + {{ item.aggregate.key }} + } + @if (panel.type === null) { + ( + } + {{ + item[panel.displayKey] || item[panel.itemKey] + }} + @if (panel.type === null) { + ) + }
- - - - @if (this.grid && this.grid[panel.dataKey].length > 0) { - - @for ( - item of this.grid[panel.dataKey]; - track (item.memberName || item.member) - ) { - -
-
-
- @if (panel.type === null) { - {{ - item.aggregate.key - }} - } - @if (panel.type === null) { - ( - } - {{ item[panel.displayKey] || item[panel.itemKey] }} - @if (panel.type === null) { - ) - } -
- @if (panel.sortable && item.sortDirection) { - - - } -
-
- @if (panel.type !== null) { - - - } - @if (panel.type === null) { - - - } - @if (panel.dragChannels.length > 0) { - - - } -
-
-
- } -
+ @if (panel.sortable && item.sortDirection) { + + } - @if (this.grid && this.grid[panel.dataKey].length === 0) { -
- {{ grid?.resourceStrings.igx_grid_pivot_selector_panel_empty }} -
+
+
+ @if (panel.type !== null) { + + } - - - } + @if (panel.type === null) { + + + } + @if (panel.dragChannels.length > 0) { + + + } +
+
+ + } + + } + @if (this.grid && this.grid[panel.dataKey].length === 0) { +
+ {{ grid?.resourceStrings.igx_grid_pivot_selector_panel_empty }} +
+ } + + + } - @for (item of aggregateList; track item) { - - {{ item.label }} - - } + @for (item of aggregateList; track item) { + + {{ item.label }} + + } -
-
- - {{ ghostText }} -
- +
+
+ + {{ ghostText }}
+ +
diff --git a/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.ts b/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.ts index a8a6307ea64..a402f658c7f 100644 --- a/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.ts +++ b/projects/igniteui-angular/grids/pivot-grid/src/pivot-data-selector.component.ts @@ -1,5 +1,5 @@ import { useAnimation } from "@angular/animations"; -import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, Output, Renderer2, booleanAttribute, inject } from "@angular/core"; +import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, Output, Renderer2, booleanAttribute, inject, ChangeDetectionStrategy } from "@angular/core"; import { first } from "rxjs/operators"; import { IgxFilterPivotItemsPipe } from "./pivot-grid.pipes"; import { fadeIn, fadeOut } from 'igniteui-angular/animations'; @@ -51,6 +51,7 @@ interface IDataSelectorPanel { @Component({ selector: "igx-pivot-data-selector", templateUrl: "./pivot-data-selector.component.html", + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxIconComponent, IgxPrefixDirective, IgxInputDirective, IgxListComponent, IgxListItemComponent, IgxCheckboxComponent, IgxAccordionComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxDropDirective, IgxExpansionPanelTitleDirective, IgxChipComponent, IgxExpansionPanelBodyComponent, IgxDragDirective, IgxDropDownItemNavigationDirective, IgxDragHandleDirective, IgxDropDownComponent, IgxDropDownItemComponent, IgxFilterPivotItemsPipe] }) export class IgxPivotDataSelectorComponent { diff --git a/projects/igniteui-angular/grids/tree-grid/src/tree-cell.component.html b/projects/igniteui-angular/grids/tree-grid/src/tree-cell.component.html index 70ac5d9b5f4..a1f82633687 100644 --- a/projects/igniteui-angular/grids/tree-grid/src/tree-cell.component.html +++ b/projects/igniteui-angular/grids/tree-grid/src/tree-cell.component.html @@ -1,308 +1,411 @@ - @if (displayPinnedChip) { - {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} - } + @if (displayPinnedChip) { + {{ grid.resourceStrings.igx_grid_pinned_row_indicator }} + } - @if (column.dataType !== 'boolean' && column.dataType !== 'image' || (column.dataType === 'boolean' && this.formatter)) { -
{{ - formatter - ? (value | columnFormatter:formatter:rowData) - : column.dataType === "number" - ? (value | number:column.pipeArgs.digitsInfo:grid.locale) - : (column.dataType === 'date' || column.dataType === 'time' || column.dataType === 'dateTime') - ? (value | date:column.pipeArgs.format:column.pipeArgs.timezone:grid.locale) - : column.dataType === 'currency' - ? (value | currency:currencyCode:column.pipeArgs.display:column.pipeArgs.digitsInfo:grid.locale) + @if ( + (column.dataType !== 'boolean' && column.dataType !== 'image') || + (column.dataType === 'boolean' && this.formatter) + ) { +
- - } - @if (column.dataType === 'image') { - - } + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + " + [row]="rowData" + [column]="this.column.field" + [containerClass]="'igx-grid__td-text'" + [metadata]="searchMetadata" + > + {{ + formatter + ? (value | columnFormatter: formatter : rowData) + : column.dataType === 'number' + ? (value | number: column.pipeArgs.digitsInfo : grid.locale) + : column.dataType === 'date' || + column.dataType === 'time' || + column.dataType === 'dateTime' + ? (value + | date + : column.pipeArgs.format + : column.pipeArgs.timezone + : grid.locale) + : column.dataType === 'currency' + ? (value + | currency + : currencyCode + : column.pipeArgs.display + : column.pipeArgs.digitsInfo + : grid.locale) + : column.dataType === 'percent' + ? (value | percent: column.pipeArgs.digitsInfo : grid.locale) + : value + }} +
+ } + @if (column.dataType === 'boolean' && !this.formatter) { + + + } + @if (column.dataType === 'image') { + + } - @if (column.dataType !== 'boolean' || (column.dataType === 'boolean' && this.formatter)) { -
{{ - !isEmptyAddRowCell ? value : (column.header || column.field) - }}
- } + @if ( + column.dataType !== 'boolean' || + (column.dataType === 'boolean' && this.formatter) + ) { +
+ {{ !isEmptyAddRowCell ? value : column.header || column.field }} +
+ }
- @if (column.dataType === 'string' || column.dataType === 'image') { - - - - - - } - @if (column.dataType === 'number') { - - - - } - @if (column.dataType === 'boolean') { - - - - } - @if (column.dataType === 'date') { - - - - - } - @if (column.dataType === 'time') { - - - - } - @if (column.dataType === 'dateTime') { - - - - } - @if (column.dataType === 'currency') { - - @if (grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - @if (!grid.currencyPositionLeft) { - {{ currencyCodeSymbol }} - } - - } - @if (column.dataType === 'percent') { - - - {{ editValue | percent:column.pipeArgs.digitsInfo:grid.locale }} - - } + @if (column.dataType === 'string' || column.dataType === 'image') { + + + + + + } + @if (column.dataType === 'number') { + + + + } + @if (column.dataType === 'boolean') { + + + + } + @if (column.dataType === 'date') { + + + + + } + @if (column.dataType === 'time') { + + + + } + @if (column.dataType === 'dateTime') { + + + + } + @if (column.dataType === 'currency') { + + @if (grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + @if (!grid.currencyPositionLeft) { + {{ currencyCodeSymbol }} + } + + } + @if (column.dataType === 'percent') { + + + + {{ editValue | percent: column.pipeArgs.digitsInfo : grid.locale }} + + + } @if (!editMode) { - @if (level > 0) { -
- } - @if (!isLoading) { -
- - - - -
- } - @if (isLoading) { -
- - -
- } - - - + @if (level > 0) { +
+ } + @if (!isLoading) { +
+ + + + +
+ } + @if (isLoading) { +
+ + +
+ } + + + } @if (isInvalid) { - - -
-
- -
+ + +
+
+
+
} - + - + - @if (formGroup?.get(column?.field).errors?.['required']) { -
- {{grid.resourceStrings.igx_grid_required_validation_error}} -
- } - @if (formGroup?.get(column?.field).errors?.['minlength']) { -
- {{grid.resourceStrings.igx_grid_min_length_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.minlength.requiredLength }} -
- } - @if (formGroup?.get(column?.field).errors?.['maxlength']) { -
- {{grid.resourceStrings.igx_grid_max_length_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.maxlength.requiredLength }} -
- } - @if (formGroup?.get(column?.field).errors?.['min']) { -
- {{grid.resourceStrings.igx_grid_min_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.min.min }} -
- } - @if (formGroup?.get(column?.field).errors?.['max']) { -
- {{grid.resourceStrings.igx_grid_max_validation_error | igxStringReplace:'{0}':formGroup.get(column.field).errors.max.max }} -
- } - @if (formGroup?.get(column?.field).errors?.['email']) { -
- {{grid.resourceStrings.igx_grid_email_validation_error }} -
- } - @if (formGroup?.get(column?.field).errors?.['pattern']) { -
- {{grid.resourceStrings.igx_grid_pattern_validation_error}} -
- } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['required'] + ) { +
+ {{ grid.resourceStrings.igx_grid_required_validation_error }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.[ + 'minlength' + ] + ) { +
+ {{ + grid.resourceStrings.igx_grid_min_length_validation_error + | igxStringReplace + : '{0}' + : formGroup.get(column.field).errors.minlength.requiredLength + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.[ + 'maxlength' + ] + ) { +
+ {{ + grid.resourceStrings.igx_grid_max_length_validation_error + | igxStringReplace + : '{0}' + : formGroup.get(column.field).errors.maxlength.requiredLength + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['min'] + ) { +
+ {{ + grid.resourceStrings.igx_grid_min_validation_error + | igxStringReplace: '{0}' : formGroup.get(column.field).errors.min.min + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['max'] + ) { +
+ {{ + grid.resourceStrings.igx_grid_max_validation_error + | igxStringReplace: '{0}' : formGroup.get(column.field).errors.max.max + }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['email'] + ) { +
+ {{ grid.resourceStrings.igx_grid_email_validation_error }} +
+ } + @if ( + formGroup?.get($safeNavigationMigration(column?.field)).errors?.['pattern'] + ) { +
+ {{ grid.resourceStrings.igx_grid_pattern_validation_error }} +
+ }
diff --git a/projects/igniteui-angular/grids/tree-grid/src/tree-grid-group-by-area.component.ts b/projects/igniteui-angular/grids/tree-grid/src/tree-grid-group-by-area.component.ts index f7a9ea6a6de..41db0d7c012 100644 --- a/projects/igniteui-angular/grids/tree-grid/src/tree-grid-group-by-area.component.ts +++ b/projects/igniteui-angular/grids/tree-grid/src/tree-grid-group-by-area.component.ts @@ -1,4 +1,4 @@ -import { AfterContentInit, Component, Input, IterableDiffer, IterableDiffers, OnDestroy, booleanAttribute, inject } from '@angular/core'; +import { AfterContentInit, Component, Input, IterableDiffer, IterableDiffers, OnDestroy, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import { IChipsAreaReorderEventArgs, IgxChipComponent, IgxChipsAreaComponent } from 'igniteui-angular/chips'; @@ -18,6 +18,7 @@ import { IgxGroupAreaDropDirective, IgxGroupByAreaDirective, IgxGroupByMetaPipe selector: 'igx-tree-grid-group-by-area', templateUrl: '../../core/src/grouping/group-by-area.component.html', providers: [{ provide: IgxGroupByAreaDirective, useExisting: IgxTreeGridGroupByAreaComponent }], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxChipsAreaComponent, IgxChipComponent, IgxIconComponent, IgxSuffixDirective, IgxGroupAreaDropDirective, IgxDropDirective, NgTemplateOutlet, IgxGroupByMetaPipe] }) export class IgxTreeGridGroupByAreaComponent extends IgxGroupByAreaDirective implements AfterContentInit, OnDestroy { diff --git a/projects/igniteui-angular/grids/tree-grid/src/tree-grid-row.component.html b/projects/igniteui-angular/grids/tree-grid/src/tree-grid-row.component.html index eb03ff7750b..7245c2982bd 100644 --- a/projects/igniteui-angular/grids/tree-grid/src/tree-grid-row.component.html +++ b/projects/igniteui-angular/grids/tree-grid/src/tree-grid-row.component.html @@ -1,151 +1,342 @@ - + -
- -
+
+ +
- @if (rowDraggable) { -
- -
- } - @if (showRowSelectors) { -
- - -
- } - @if (pinnedStartColumns.length > 0) { - - } - - @if (this.hasMergedCells) { -
- -
- } - @else { - - } -
- @if (pinnedEndColumns.length > 0) { - + @if (rowDraggable) { +
+ +
+ } + @if (showRowSelectors) { +
+ + +
+ } + @if (pinnedStartColumns.length > 0) { + + } + + @if (this.hasMergedCells) { +
+ +
+ } @else { + } +
+ @if (pinnedEndColumns.length > 0) { + + }
-
- - -
+
+ + +
- @for (col of columns | igxNotGrouped; track trackPinnedColumn(col)) { - @if (this.hasMergedCells) { -
- -
- } - @else { - - } + @for (col of columns | igxNotGrouped; track trackPinnedColumn(col)) { + @if (this.hasMergedCells) { +
+ +
+ } @else { + } + }
- - + + - - + + - diff --git a/projects/igniteui-angular/grids/tree-grid/src/tree-grid.component.html b/projects/igniteui-angular/grids/tree-grid/src/tree-grid.component.html index 51aa2d8469e..2653b3e6096 100644 --- a/projects/igniteui-angular/grids/tree-grid/src/tree-grid.component.html +++ b/projects/igniteui-angular/grids/tree-grid/src/tree-grid.component.html @@ -1,257 +1,579 @@ - - + - `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBottomNavComponent, IgxBottomNavItemComponent, IgxBottomNavHeaderComponent, IgxTabHeaderLabelDirective, IgxBottomNavContentComponent] }) export class BottomNavTestHtmlAttributesComponent { diff --git a/projects/igniteui-angular/test-utils/grid-base-components.spec.ts b/projects/igniteui-angular/test-utils/grid-base-components.spec.ts index 0e718e53aae..4f93d6fcf87 100644 --- a/projects/igniteui-angular/test-utils/grid-base-components.spec.ts +++ b/projects/igniteui-angular/test-utils/grid-base-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild, AfterViewInit, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, OnInit, ViewChild, AfterViewInit, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from './sample-test-data.spec'; import { ColumnDefinitions, GridTemplateStrings } from './template-strings.spec'; import { IgxPaginatorComponent } from 'igniteui-angular/paginator'; @@ -13,6 +13,7 @@ import { IgxCellTemplateDirective, IgxColumnActionsComponent, IgxColumnComponent `, selector: 'igx-basic-grid', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class BasicGridComponent { @@ -30,6 +31,7 @@ export class BasicGridComponent { `, selector: 'igx-auto-generate-grid', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridAutoGenerateComponent extends BasicGridComponent { @@ -44,6 +46,7 @@ export class GridAutoGenerateComponent extends BasicGridComponent { [height]="height" [width]="width"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridWithSizeComponent extends GridAutoGenerateComponent { @@ -57,6 +60,7 @@ export class GridWithSizeComponent extends GridAutoGenerateComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.generatedEditable), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridNxMComponent extends GridWithSizeComponent implements OnInit { @@ -87,6 +91,7 @@ export class GridNxMComponent extends GridWithSizeComponent implements OnInit { `@if (paging) { }`), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class BasicGridSearchComponent extends GridWithSizeComponent { @@ -100,6 +105,7 @@ export class BasicGridSearchComponent extends GridWithSizeComponent { '', ColumnDefinitions.idNameJobTitle, '', `@if (paging) { }`), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class PagingComponent extends GridWithSizeComponent { @@ -110,6 +116,7 @@ export class PagingComponent extends GridWithSizeComponent { @Component({ template: GridTemplateStrings.declareGrid('[pagingMode]="pagingMode"', '', ColumnDefinitions.idNameJobTitle, '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class RemotePagingComponent extends GridWithSizeComponent { @@ -121,6 +128,7 @@ export class RemotePagingComponent extends GridWithSizeComponent { @Component({ template: GridTemplateStrings.declareGrid(` rowSelection = "multiple"`, '', ColumnDefinitions.productBasicNumberID), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SelectionComponent extends BasicGridComponent { @@ -129,6 +137,7 @@ export class SelectionComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [autoGenerate]="true" [exportExcel]="exportExcel" [exportCsv]="exportCsv"`, '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridWithToolbarComponent extends GridWithSizeComponent { @@ -143,6 +152,7 @@ export class GridWithToolbarComponent extends GridWithSizeComponent { @Component({ template: GridTemplateStrings.declareGrid(` [autoGenerate]="true" [rowClasses]="rowClasses"`, '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class GridRowConditionalStylingComponent extends GridWithSizeComponent { @@ -169,6 +179,7 @@ export class GridRowConditionalStylingComponent extends GridWithSizeComponent { '' + '' + '', '@if (paging) { }')}
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxColumnComponent, @@ -211,6 +222,7 @@ export class ColumnHidingTestComponent extends GridWithSizeComponent implements } ${GridTemplateStrings.declareGrid(' #grid [height]="height" [width]="width" [moving]="true"', '', ColumnDefinitions.contactInfoGroupableColumns)}
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnActionsComponent, IgxColumnGroupComponent, IgxColumnHidingDirective] }) export class ColumnGroupsHidingTestComponent extends ColumnHidingTestComponent { @@ -230,6 +242,7 @@ export class ColumnGroupsHidingTestComponent extends ColumnHidingTestComponent { '' + '')}
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnActionsComponent, IgxColumnPinningDirective, IgxGridToolbarComponent, IgxGridToolbarPinningComponent, IgxGridToolbarActionsComponent] }) export class ColumnPinningTestComponent extends GridWithSizeComponent implements AfterViewInit, OnInit { @@ -268,6 +281,7 @@ export class ColumnPinningTestComponent extends GridWithSizeComponent implements `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class ColumnPinningWithTemplateTestComponent extends ColumnPinningTestComponent { @@ -281,6 +295,7 @@ export class ColumnPinningWithTemplateTestComponent extends ColumnPinningTestCom ${ GridTemplateStrings.declareGrid(' #grid [height]="height" [moving]="true"', '', ColumnDefinitions.contactInfoGroupableColumns, '')}
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxGridToolbarComponent, IgxColumnActionsComponent, IgxColumnPinningDirective] }) export class ColumnGroupsPinningTestComponent extends ColumnPinningTestComponent { diff --git a/projects/igniteui-angular/test-utils/grid-mch-sample.spec.ts b/projects/igniteui-angular/test-utils/grid-mch-sample.spec.ts index b133118e0b7..efebde3954f 100644 --- a/projects/igniteui-angular/test-utils/grid-mch-sample.spec.ts +++ b/projects/igniteui-angular/test-utils/grid-mch-sample.spec.ts @@ -1,4 +1,4 @@ -import { Component, TemplateRef, ViewChild, OnInit } from '@angular/core'; +import { Component, TemplateRef, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from './sample-test-data.spec'; import { IgxGridComponent } from 'igniteui-angular/grids/grid'; import { IgxCellHeaderTemplateDirective, IgxColumnComponent, IgxColumnGroupComponent } from 'igniteui-angular/grids/core'; @@ -13,6 +13,7 @@ import { IgxCellHeaderTemplateDirective, IgxColumnComponent, IgxColumnGroupCompo `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class OneGroupOneColGridComponent { @@ -36,6 +37,7 @@ export class OneGroupOneColGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class OneGroupThreeColsGridComponent { @@ -74,6 +76,7 @@ export class OneGroupThreeColsGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class ColumnGroupTestComponent { @@ -118,6 +121,7 @@ export class ColumnGroupTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class ColumnGroupFourLevelTestComponent implements OnInit { @@ -199,6 +203,7 @@ export class ColumnGroupFourLevelTestComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class ThreeGroupsThreeColumnsGridComponent { @@ -251,6 +256,7 @@ export class ThreeGroupsThreeColumnsGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class NestedColGroupsGridComponent { @@ -290,6 +296,7 @@ export class NestedColGroupsGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class DynamicColGroupsGridComponent { @@ -359,6 +366,7 @@ export class DynamicColGroupsGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class StegosaurusGridComponent implements OnInit { @@ -484,6 +492,7 @@ export class StegosaurusGridComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class BlueWhaleGridComponent { @@ -526,6 +535,7 @@ export class BlueWhaleGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class OneColPerGroupGridComponent { @@ -566,6 +576,7 @@ export class OneColPerGroupGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class NestedColumnGroupsGridComponent { @@ -599,6 +610,7 @@ export class NestedColumnGroupsGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class DynamicGridComponent { @@ -630,6 +642,7 @@ export class DynamicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent, IgxCellHeaderTemplateDirective] }) export class NestedColGroupsWithTemplatesGridComponent { @@ -687,6 +700,7 @@ export class NestedColGroupsWithTemplatesGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnGroupComponent, IgxColumnComponent] }) export class ColumnGroupHiddenInTemplateComponent extends ColumnGroupTestComponent { } diff --git a/projects/igniteui-angular/test-utils/grid-samples.spec.ts b/projects/igniteui-angular/test-utils/grid-samples.spec.ts index 4801faf5861..78ef55e83a3 100644 --- a/projects/igniteui-angular/test-utils/grid-samples.spec.ts +++ b/projects/igniteui-angular/test-utils/grid-samples.spec.ts @@ -1,4 +1,4 @@ -import { Component, TemplateRef, ViewChild, Input, AfterViewInit, QueryList, ViewChildren, OnInit } from '@angular/core'; +import { Component, TemplateRef, ViewChild, Input, AfterViewInit, QueryList, ViewChildren, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { BasicGridComponent, BasicGridSearchComponent, GridAutoGenerateComponent, @@ -20,6 +20,7 @@ import { CellType, IGridCellEventArgs, IgxAdvancedFilteringDialogComponent, IgxC @Component({ template: GridTemplateStrings.declareGrid('', '', ``), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnHiddenFromMarkupComponent extends BasicGridComponent { @@ -40,6 +41,7 @@ export class ColumnHiddenFromMarkupComponent extends BasicGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridAddColumnComponent extends BasicGridComponent implements OnInit { @@ -57,6 +59,7 @@ export class GridAddColumnComponent extends BasicGridComponent implements OnInit @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.idNameFormatter), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnCellFormatterComponent extends BasicGridComponent { @@ -77,6 +80,7 @@ export class ColumnCellFormatterComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` height="500px"`, '', ColumnDefinitions.productFilterable), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class FilteringComponent extends BasicGridComponent { @@ -87,6 +91,7 @@ export class FilteringComponent extends BasicGridComponent { template: GridTemplateStrings.declareGrid( ` [width]="width" [height]="height" [rowSelection]="'multiple'" [primaryKey]="'ProductID'" [selectedRows]="selectedRows"`, '', ColumnDefinitions.productBasicNumberID, '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class RowSelectionComponent extends BasicGridComponent { @@ -99,6 +104,7 @@ export class RowSelectionComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [width]="width" [height]="height" [rowSelection]="'single'" [primaryKey]="'ProductID'"`, '', ColumnDefinitions.productBasicNumberID), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SingleRowSelectionComponent extends BasicGridComponent { @@ -109,6 +115,7 @@ export class SingleRowSelectionComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [width]="width" [height]="height" [rowSelection]="'multiple'"`, '', ColumnDefinitions.idFirstLastNameSortable), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class RowSelectionWithoutPrimaryKeyComponent extends BasicGridComponent { @@ -122,6 +129,7 @@ export class RowSelectionWithoutPrimaryKeyComponent extends BasicGridComponent { [width]="'900px'" [height]="'900px'" [columnWidth]="'200px'"`, '', ColumnDefinitions.idNameJobTitleCompany), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class NoScrollsComponent extends GridWithSizeComponent { @@ -144,6 +152,7 @@ class DealsSummaryMinMax extends IgxNumberSummaryOperand { } @Component({ template: GridTemplateStrings.declareGrid(` [primaryKey]="'ProductID'" [height]="null" [allowFiltering]="true"`, '', ColumnDefinitions.productDefaultSummaries), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SummaryColumnComponent extends BasicGridComponent { @@ -157,6 +166,7 @@ export class SummaryColumnComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.productBasic, '', '@if (paging) {}'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class ProductsComponent extends BasicGridComponent { @@ -170,6 +180,7 @@ export class ProductsComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.idFirstLastNameSortable), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridDeclaredColumnsComponent extends BasicGridComponent { @@ -180,6 +191,7 @@ export class GridDeclaredColumnsComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [autoGenerate]="autoGenerate" [height]="height" [width]="width"`, `${EventSubscriptions.columnInit}${EventSubscriptions.selected}`, ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class PinOnInitAndSelectionComponent extends GridWithSizeComponent { @@ -202,6 +214,7 @@ export class PinOnInitAndSelectionComponent extends GridWithSizeComponent { @Component({ template: GridTemplateStrings.declareGrid(` [autoGenerate]="autoGenerate" [height]="height" [width]="width"`, `${EventSubscriptions.columnInit}`, ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class PinOnBothSidesInitComponent extends GridWithSizeComponent { @@ -239,6 +252,7 @@ export class PinOnBothSidesInitComponent extends GridWithSizeComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class GridPinningMRLComponent extends PinOnInitAndSelectionComponent { @@ -271,6 +285,7 @@ export class GridPinningMRLComponent extends PinOnInitAndSelectionComponent { template: GridTemplateStrings.declareGrid(` [height]="height" [width]="width"`, `${EventSubscriptions.selected}${EventSubscriptions.columnPin}`, ColumnDefinitions.generatedWithWidth), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class PinningComponent extends GridWithSizeComponent @@ -306,6 +321,7 @@ export class PinningComponent extends GridWithSizeComponent @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.productFilterSortPin), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridFeaturesComponent extends BasicGridComponent { @@ -318,6 +334,7 @@ export class GridFeaturesComponent extends BasicGridComponent { ` columnWidth="200" `, '', ColumnDefinitions.idNameJobHireDate, '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class ScrollableGridSearchComponent extends BasicGridSearchComponent { @@ -330,6 +347,7 @@ export class ScrollableGridSearchComponent extends BasicGridSearchComponent { ` columnWidth="200" [height]="null" `, '', ColumnDefinitions.idNameJobTitleCompany, '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class GroupableGridSearchComponent extends ScrollableGridSearchComponent { @@ -339,6 +357,7 @@ export class GroupableGridSearchComponent extends ScrollableGridSearchComponent @Component({ template: GridTemplateStrings.declareGrid(` [height]="height" [width]="width" [columnWidth]="columnWidth" `, '', ColumnDefinitions.productAllColumnFeatures), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridAllFeaturesComponent extends GridWithSizeComponent { @@ -349,6 +368,7 @@ export class GridAllFeaturesComponent extends GridWithSizeComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.nameJobTitleId), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ReorderedColumnsComponent extends BasicGridComponent { @@ -357,6 +377,7 @@ export class ReorderedColumnsComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.simpleDatePercentColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridUserMeetingDataComponent extends BasicGridComponent { @@ -365,6 +386,7 @@ export class GridUserMeetingDataComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.idNameJobTitleEditable), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridIDNameJobTitleComponent extends PagingComponent { @@ -378,6 +400,7 @@ export class GridIDNameJobTitleComponent extends PagingComponent { @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.idNameJobHoursHireDatePerformance), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridIDNameJobTitleHireDataPerformanceComponent extends BasicGridComponent { @@ -386,6 +409,7 @@ export class GridIDNameJobTitleHireDataPerformanceComponent extends BasicGridCom @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.hireDate), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridHireDateComponent extends BasicGridComponent { @@ -395,6 +419,7 @@ export class GridHireDateComponent extends BasicGridComponent { @Component({ template: `
${GridTemplateStrings.declareGrid('[height]="height" [moving]="true" [width]="width" [rowSelection]="rowSelection" [autoGenerate]="autoGenerate"', EventSubscriptions.columnMovingStart + EventSubscriptions.columnMoving + EventSubscriptions.columnMovingEnd, ColumnDefinitions.movableColumns)}
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class MovableColumnsComponent extends BasicGridComponent { @@ -443,6 +468,7 @@ export class MovableColumnsComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`[moving]="true" height="300px" width="500px"`, '', ColumnDefinitions.movableColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class MovableTemplatedColumnsComponent extends BasicGridComponent { @@ -456,6 +482,7 @@ export class MovableTemplatedColumnsComponent extends BasicGridComponent { template: GridTemplateStrings.declareGrid(`height="300px" width="500px" [moving]="true" [autoGenerate]="autoGenerate"`, EventSubscriptions.columnInit, '', '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxPaginatorComponent] }) export class MovableColumnsLargeComponent extends GridAutoGenerateComponent { @@ -478,6 +505,7 @@ export class MovableColumnsLargeComponent extends GridAutoGenerateComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="800px"`, '', ColumnDefinitions.multiColHeadersColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxCellTemplateDirective, IgxCellHeaderTemplateDirective] }) export class MultiColumnHeadersComponent extends BasicGridComponent { @@ -487,6 +515,7 @@ export class MultiColumnHeadersComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`[moving]="true" height="800px" width="500px"`, '', ColumnDefinitions.multiColHeadersWithGroupingColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class MultiColumnHeadersWithGroupingComponent extends BasicGridComponent { @@ -497,6 +526,7 @@ export class MultiColumnHeadersWithGroupingComponent extends BasicGridComponent @Component({ template: GridTemplateStrings.declareBasicGridWithColumns(ColumnDefinitions.nameAvatar), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class GridWithAvatarComponent extends GridWithSizeComponent { @@ -509,6 +539,7 @@ export class GridWithAvatarComponent extends GridWithSizeComponent { template: GridTemplateStrings.declareGrid(`height="1000px" width="900px" primaryKey="ID"`, '', ColumnDefinitions.summariesGroupByColumns, '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class SummariesGroupByComponent extends BasicGridComponent { @@ -521,6 +552,7 @@ export class SummariesGroupByComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="600px" width="900px" [batchEditing]="true" primaryKey="ID"`, '', ColumnDefinitions.summariesGroupByTansColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SummariesGroupByTransactionsComponent extends BasicGridComponent { @@ -570,6 +602,7 @@ class AgeSummaryTest extends IgxNumberSummaryOperand { @Component({ template: GridTemplateStrings.declareGrid(`[height]="gridHeight" [columnWidth]="defaultWidth" [width]="gridWidth"`, `${EventSubscriptions.selected}`, ColumnDefinitions.generatedWithWidth), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class VirtualGridComponent extends BasicGridComponent { @@ -622,6 +655,7 @@ export class VirtualGridComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [primaryKey]="'ID'"`, '', ColumnDefinitions.idNameJobHireWithTypes), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridWithPrimaryKeyComponent extends BasicGridSearchComponent { @@ -632,6 +666,7 @@ export class GridWithPrimaryKeyComponent extends BasicGridSearchComponent { template: GridTemplateStrings.declareGrid(`height="300px" width="600px" primaryKey="ID"`, '', ColumnDefinitions.selectionWithScrollsColumns, '', '@if (paging) { }'), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class SelectionWithScrollsComponent extends BasicGridComponent { @@ -641,6 +676,7 @@ export class SelectionWithScrollsComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="300px" width="600px" primaryKey="ID" cellSelection="none"`, '', ColumnDefinitions.selectionWithScrollsColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class CellSelectionNoneComponent extends BasicGridComponent { @@ -649,6 +685,7 @@ export class CellSelectionNoneComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="300px" width="600px" primaryKey="ID" cellSelection="single"`, '', ColumnDefinitions.selectionWithScrollsColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class CellSelectionSingleComponent extends BasicGridComponent { @@ -656,6 +693,7 @@ export class CellSelectionSingleComponent extends BasicGridComponent { } @Component({ template: GridTemplateStrings.declareGrid(`height="300px" width="600px" [batchEditing]="true" primaryKey="ID"`, '', ColumnDefinitions.selectionWithScrollsColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SelectionWithTransactionsComponent extends BasicGridComponent { @@ -693,6 +731,7 @@ export class CustomFilter extends IgxFilteringOperand { dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFilteringComponent extends BasicGridComponent { @@ -711,6 +750,7 @@ export class IgxGridFilteringComponent extends BasicGridComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFilteringNumericComponent extends BasicGridComponent { @@ -737,6 +777,7 @@ export class IgxGridFilteringNumericComponent extends BasicGridComponent { dataType="currency"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridDatesFilteringComponent extends BasicGridComponent { @@ -774,6 +815,7 @@ export class IgxGridDatesFilteringComponent extends BasicGridComponent { dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridExcelStyleFilteringComponent] }) export class IgxGridExternalESFComponent extends BasicGridComponent implements AfterViewInit { @@ -827,6 +869,7 @@ export class CustomFilterStrategy extends FilteringStrategy { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class CustomFilteringStrategyComponent extends BasicGridComponent { @@ -854,6 +897,7 @@ export class LoadOnDemandFilterStrategy extends FilteringStrategy { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFilteringESFLoadOnDemandComponent extends BasicGridComponent { @@ -896,6 +940,7 @@ export class IgxGridFilteringESFLoadOnDemandComponent extends BasicGridComponent Filter Operations Template `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridExcelStyleFilteringComponent, IgxExcelStyleColumnOperationsTemplateDirective, IgxExcelStyleFilterOperationsTemplateDirective] }) export class IgxGridFilteringESFEmptyTemplatesComponent extends BasicGridComponent { @@ -940,6 +985,7 @@ export class IgxGridFilteringESFEmptyTemplatesComponent extends BasicGridCompone search `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxColumnComponent, @@ -985,6 +1031,7 @@ export class IgxGridFilteringESFTemplatesComponent extends BasicGridComponent { dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxColumnComponent, @@ -1044,6 +1091,7 @@ export class IgxGridExternalESFTemplateComponent extends BasicGridComponent impl `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxInputGroupComponent, IgxPrefixDirective, IgxSuffixDirective, IgxInputDirective, IgxFilterCellTemplateDirective, IgxIconComponent] }) export class IgxGridFilteringTemplateComponent extends BasicGridComponent { @@ -1066,6 +1114,7 @@ export class IgxGridFilteringTemplateComponent extends BasicGridComponent { dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFilteringScrollComponent extends IgxGridFilteringComponent { } @@ -1087,6 +1136,7 @@ export class IgxGridFilteringScrollComponent extends IgxGridFilteringComponent { dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class IgxGridFilteringMCHComponent extends IgxGridFilteringComponent { } @@ -1103,6 +1153,7 @@ export class IgxGridFilteringMCHComponent extends IgxGridFilteringComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent] }) export class IgxGridAdvancedFilteringComponent extends BasicGridComponent { @@ -1133,6 +1184,7 @@ export class IgxGridAdvancedFilteringComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent] }) export class IgxGridAdvancedFilteringWithToolbarComponent extends BasicGridComponent { @@ -1153,6 +1205,7 @@ export class IgxGridAdvancedFilteringWithToolbarComponent extends BasicGridCompo } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent] }) export class IgxGridAdvancedFilteringDynamicColumnsComponent extends BasicGridComponent implements OnInit { @@ -1188,6 +1241,7 @@ export class IgxGridAdvancedFilteringDynamicColumnsComponent extends BasicGridCo `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarAdvancedFilteringComponent] }) export class IgxGridAdvancedFilteringOverlaySettingsComponent extends BasicGridComponent { @@ -1213,6 +1267,7 @@ export class IgxGridAdvancedFilteringOverlaySettingsComponent extends BasicGridC `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxAdvancedFilteringDialogComponent] }) export class IgxGridExternalAdvancedFilteringComponent extends BasicGridComponent { @@ -1235,6 +1290,7 @@ export class IgxGridExternalAdvancedFilteringComponent extends BasicGridComponen `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class IgxGridAdvancedFilteringColumnGroupComponent extends BasicGridComponent { @@ -1262,6 +1318,7 @@ export class IgxGridAdvancedFilteringColumnGroupComponent extends BasicGridCompo } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridClipboardComponent extends BasicGridComponent { @@ -1274,6 +1331,7 @@ export class IgxGridClipboardComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`id="testGridSum" [height]="height" [width]="width"`, ``, ColumnDefinitions.generatedWithDataType), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class DynamicColumnsComponent extends GridWithSizeComponent { @@ -1320,6 +1378,7 @@ export class DynamicColumnsComponent extends GridWithSizeComponent { CUSTOM GROUP SELECTOR `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCheckboxComponent, IgxPaginatorComponent, IgxRowSelectorDirective, IgxHeadSelectorDirective, IgxGroupByRowSelectorDirective] }) export class GridCustomSelectorsComponent extends BasicGridComponent implements OnInit { @@ -1383,6 +1442,7 @@ export class GridCustomSelectorsComponent extends BasicGridComponent implements } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarHidingComponent, IgxPaginatorComponent] }) export class IgxGridRowEditingComponent extends BasicGridComponent { @@ -1409,6 +1469,7 @@ export class IgxGridRowEditingComponent extends BasicGridComponent { {{val}} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class IgxGridRowEditingWithoutEditableColumnsComponent extends BasicGridComponent { @@ -1449,6 +1510,7 @@ export class IgxGridRowEditingWithoutEditableColumnsComponent extends BasicGridC `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class IgxGridWithEditingAndFeaturesComponent extends BasicGridComponent { @@ -1480,6 +1542,7 @@ export class IgxGridWithEditingAndFeaturesComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxRowEditTabStopDirective, IgxRowEditTemplateDirective, IgxButtonDirective] }) export class IgxGridCustomOverlayComponent extends BasicGridComponent { @@ -1520,6 +1583,7 @@ export class IgxGridCustomOverlayComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxRowEditTemplateDirective] }) export class IgxGridEmptyRowEditTemplateComponent extends BasicGridComponent { @@ -1545,6 +1609,7 @@ export class IgxGridEmptyRowEditTemplateComponent extends BasicGridComponent { CUSTOM EDIT TEXT `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxRowEditActionsDirective, IgxRowAddTextDirective, IgxRowEditTextDirective] }) export class IgxGridCustomRowEditTemplateComponent extends BasicGridComponent { @@ -1571,6 +1636,7 @@ export class IgxGridCustomRowEditTemplateComponent extends BasicGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridRowEditingTransactionComponent extends BasicGridComponent { @@ -1592,6 +1658,7 @@ export class IgxGridRowEditingTransactionComponent extends BasicGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridCurrencyColumnComponent extends BasicGridComponent { @@ -1608,6 +1675,7 @@ export class IgxGridCurrencyColumnComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridPercentColumnComponent extends BasicGridComponent { @@ -1629,6 +1697,7 @@ export class IgxGridPercentColumnComponent extends BasicGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxGridDateTimeColumnComponent extends BasicGridComponent { @@ -1651,6 +1720,7 @@ export class IgxGridDateTimeColumnComponent extends BasicGridComponent { Custom template `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class IgxGridRowEditingWithFeaturesComponent extends DataParent { @@ -1697,6 +1767,7 @@ export class IgxGridRowEditingWithFeaturesComponent extends DataParent { Custom template `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class IgxGridGroupByComponent extends DataParent implements OnInit { @@ -1751,6 +1822,7 @@ export class IgxGridGroupByComponent extends DataParent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellEditorTemplateDirective, IgxFocusDirective] }) export class CellEditingCustomEditorTestComponent extends BasicGridComponent { @@ -1776,6 +1848,7 @@ export class CellEditingCustomEditorTestComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class CellEditingTestComponent extends BasicGridComponent { @@ -1798,6 +1871,7 @@ export class CellEditingTestComponent extends BasicGridComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class CellEditingScrollTestComponent extends BasicGridComponent { @@ -1816,6 +1890,7 @@ export class CellEditingScrollTestComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(` [width]="width" [height]="height" [primaryKey]="'ProductID'"`, '', ColumnDefinitions.productBasic, '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class GridWithUndefinedDataComponent implements OnInit { @@ -1867,6 +1942,7 @@ export class GridWithUndefinedDataComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class CollapsibleColumnGroupTestComponent { @@ -1907,6 +1983,7 @@ export class CollapsibleColumnGroupTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class ColumnSelectionGroupTestComponent { @@ -1946,6 +2023,7 @@ export class ColumnSelectionGroupTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxIconComponent, IgxCollapsibleIndicatorTemplateDirective] }) export class CollapsibleGroupsTemplatesTestComponent { @@ -1971,6 +2049,7 @@ export class CollapsibleGroupsTemplatesTestComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class CollapsibleGroupsDynamicColComponent { @@ -2033,6 +2112,7 @@ export class CollapsibleGroupsDynamicColComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class ColumnGroupsNavigationTestComponent { @@ -2050,6 +2130,7 @@ export class ColumnGroupsNavigationTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFilteringBindingComponent extends BasicGridComponent implements OnInit { @@ -2082,6 +2163,7 @@ export class IgxGridFilteringBindingComponent extends BasicGridComponent impleme `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridAdvancedFilteringBindingComponent extends BasicGridComponent implements OnInit { @@ -2114,6 +2196,7 @@ export class IgxGridAdvancedFilteringBindingComponent extends BasicGridComponent `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridAdvancedFilteringSerializedTreeComponent extends BasicGridComponent implements OnInit { @@ -2172,6 +2255,7 @@ export class IgxGridAdvancedFilteringSerializedTreeComponent extends BasicGridCo `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnEditablePropertyTestComponent extends BasicGridComponent { @@ -2186,6 +2270,7 @@ export class ColumnEditablePropertyTestComponent extends BasicGridComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class NoColumnWidthGridComponent extends BasicGridComponent { @@ -2195,6 +2280,7 @@ export class NoColumnWidthGridComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.idFirstLastNameSortable, '', '', TemplateDefinitions.sortIconTemplates) + ExternalTemplateDefinitions.sortIconTemplates, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxIconComponent, IgxSortHeaderIconDirective, IgxSortAscendingHeaderIconDirective, IgxSortDescendingHeaderIconDirective] }) export class SortByParityComponent extends GridDeclaredColumnsComponent implements ISortingStrategy { @@ -2225,6 +2311,7 @@ export class SortByParityComponent extends GridDeclaredColumnsComponent implemen @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.idFirstLastNameSortable, '', '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SortByAnotherColumnComponent extends GridDeclaredColumnsComponent implements ISortingStrategy { @@ -2244,6 +2331,7 @@ export class SortByAnotherColumnComponent extends GridDeclaredColumnsComponent i @Component({ template: GridTemplateStrings.declareGrid('[sortingOptions]="sortingOptions"', '', ColumnDefinitions.idFirstLastNameSortable, '', '', ''), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class SortOnInitComponent extends GridDeclaredColumnsComponent implements OnInit { @@ -2265,6 +2353,7 @@ export class SortOnInitComponent extends GridDeclaredColumnsComponent implements `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class IgxGridFormattedValuesSortingComponent extends BasicGridComponent { @@ -2302,6 +2391,7 @@ export class IgxGridFormattedValuesSortingComponent extends BasicGridComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent] }) export class MRLTestComponent { @@ -2358,6 +2448,7 @@ export class MRLTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxColumnComponent, @@ -2434,6 +2525,7 @@ export class IgxAddRowComponent implements OnInit { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxGridComponent, IgxColumnComponent, @@ -2469,6 +2561,7 @@ export class GridDynamicActionStripComponent implements OnInit { @Component({ template: GridTemplateStrings.declareGrid(` [hideGroupedColumns]="true"`, '', ColumnDefinitions.exportGroupedDataColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridExportGroupedDataComponent extends BasicGridComponent { @@ -2477,6 +2570,7 @@ export class GridExportGroupedDataComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`[moving]="true" height="1000px"`, '', ColumnDefinitions.multiColHeadersExportColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class MultiColumnHeadersExportComponent extends BasicGridComponent { @@ -2485,6 +2579,7 @@ export class MultiColumnHeadersExportComponent extends BasicGridComponent { @Component({ template: GridTemplateStrings.declareGrid(`height="1000px"`, '', ColumnDefinitions.multiColHeadersExportColumns), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class GridWithThreeLevelsOfMultiColumnHeadersAndTwoRowsExportComponent extends BasicGridComponent { @@ -2504,6 +2599,7 @@ export class GridWithThreeLevelsOfMultiColumnHeadersAndTwoRowsExportComponent ex `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridWithEmptyColumnsComponent { @@ -2516,6 +2612,7 @@ export class GridWithEmptyColumnsComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class EmptyGridComponent { @@ -2525,6 +2622,7 @@ export class EmptyGridComponent { /** Issue 9872 */ @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.generatedWithDataType), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class ColumnsAddedOnInitComponent extends BasicGridComponent implements OnInit { @@ -2548,6 +2646,7 @@ export class ColumnsAddedOnInitComponent extends BasicGridComponent implements O @Component({ template: GridTemplateStrings.declareGrid(' [hideGroupedColumns]="true"', '', ColumnDefinitions.generatedGroupableWithEnabledSummariesAndDataType), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GroupedGridWithSummariesComponent extends BasicGridComponent implements OnInit { @@ -2568,6 +2667,7 @@ export class GroupedGridWithSummariesComponent extends BasicGridComponent implem @Component({ template: GridTemplateStrings.declareGrid('', '', ColumnDefinitions.generatedWithColumnBasedSummariesAndDataType), + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCurrencySummariesComponent extends BasicGridComponent implements OnInit { @@ -2694,6 +2794,7 @@ class CustomSummaryWithDate { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCustomSummaryComponent extends BasicGridComponent implements OnInit { @@ -2714,6 +2815,7 @@ export class GridCustomSummaryComponent extends BasicGridComponent implements On `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCustomSummaryWithNullAndZeroComponent extends BasicGridComponent implements OnInit { @@ -2734,6 +2836,7 @@ export class GridCustomSummaryWithNullAndZeroComponent extends BasicGridComponen `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCustomSummaryWithUndefinedZeroAndValidNumberComponent extends BasicGridComponent implements OnInit { @@ -2754,6 +2857,7 @@ export class GridCustomSummaryWithUndefinedZeroAndValidNumberComponent extends B `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCustomSummaryWithUndefinedAndNullComponent extends BasicGridComponent implements OnInit { @@ -2774,6 +2878,7 @@ export class GridCustomSummaryWithUndefinedAndNullComponent extends BasicGridCom `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridCustomSummaryWithDateComponent extends BasicGridComponent implements OnInit { @@ -2807,6 +2912,7 @@ export class ObjectCloneStrategy implements IDataCloneStrategy { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxColumnComponent, IgxGridComponent] }) export class IgxGridRowEditingDefinedColumnsComponent extends BasicGridComponent { @@ -2838,6 +2944,7 @@ export class IgxGridRowEditingDefinedColumnsComponent extends BasicGridComponent dataType="string" [filters]="customFilter"> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxExcelStyleConditionalFilterComponent, IgxGridExcelStyleFilteringComponent, IgxExcelStyleFilterOperationsTemplateDirective] }) export class IgxGridConditionalFilteringComponent extends IgxGridFilteringComponent { @@ -2858,6 +2965,7 @@ export class IgxGridConditionalFilteringComponent extends IgxGridFilteringCompon `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class CollapsibleGroupWithExplicitChildWidthsComponent { diff --git a/projects/igniteui-angular/test-utils/grid-validation-samples.spec.ts b/projects/igniteui-angular/test-utils/grid-validation-samples.spec.ts index 34e76960d3c..23eb41fc43e 100644 --- a/projects/igniteui-angular/test-utils/grid-validation-samples.spec.ts +++ b/projects/igniteui-angular/test-utils/grid-validation-samples.spec.ts @@ -1,5 +1,5 @@ import { NgTemplateOutlet } from '@angular/common'; -import { Component, Input, ViewChild, Directive, TemplateRef } from '@angular/core'; +import { Component, Input, ViewChild, Directive, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { AbstractControl, FormsModule, NG_VALIDATORS, ReactiveFormsModule, ValidationErrors, ValidatorFn, Validators } from '@angular/forms'; import { data } from '../../../src/app/shared/data'; import { SampleTestData } from './sample-test-data.spec'; @@ -42,6 +42,7 @@ export class ForbiddenValidatorDirective extends Validators { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, ForbiddenValidatorDirective, IGX_GRID_VALIDATION_DIRECTIVES] }) export class IgxGridValidationTestBaseComponent { @@ -79,6 +80,7 @@ export class IgxGridValidationTestBaseComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellValidationErrorDirective, ForbiddenValidatorDirective, IGX_GRID_VALIDATION_DIRECTIVES] }) export class IgxGridValidationTestCustomErrorComponent extends IgxGridValidationTestBaseComponent { @@ -102,6 +104,7 @@ export class IgxGridValidationTestCustomErrorComponent extends IgxGridValidation `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellEditorTemplateDirective, ForbiddenValidatorDirective, IGX_GRID_VALIDATION_DIRECTIVES, ReactiveFormsModule, FormsModule] }) export class IgxGridCustomEditorsComponent extends IgxGridValidationTestCustomErrorComponent { @@ -133,6 +136,7 @@ export class IgxGridCustomEditorsComponent extends IgxGridValidationTestCustomEr } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxCellValidationErrorDirective, ForbiddenValidatorDirective, IGX_GRID_VALIDATION_DIRECTIVES, NgTemplateOutlet] }) export class IgxTreeGridValidationTestComponent { diff --git a/projects/igniteui-angular/test-utils/hierarchical-grid-components.spec.ts b/projects/igniteui-angular/test-utils/hierarchical-grid-components.spec.ts index 1e3bbef5bc5..1ccc645b797 100644 --- a/projects/igniteui-angular/test-utils/hierarchical-grid-components.spec.ts +++ b/projects/igniteui-angular/test-utils/hierarchical-grid-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, TemplateRef } from '@angular/core'; +import { Component, ViewChild, OnInit, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from './sample-test-data.spec'; import { HIERARCHICAL_SAMPLE_DATA, HIERARCHICAL_SAMPLE_DATA_SHORT } from 'src/app/shared/sample-data'; import { IgxButtonDirective } from '../directives/src/directives/button/button.directive'; @@ -48,6 +48,7 @@ import { IgxHierarchicalTransactionServiceFactory } from 'igniteui-angular/grids `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxHierarchicalGridComponent, IgxColumnComponent, @@ -124,6 +125,7 @@ export class IgxHierarchicalGridTestBaseComponent { `, providers: [IgxHierarchicalTransactionServiceFactory], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxHierarchicalGridComponent, IgxColumnComponent, @@ -181,6 +183,7 @@ export class IgxHierarchicalGridWithTransactionProviderComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridRowSelectionComponent { @@ -213,6 +216,7 @@ export class IgxHierarchicalGridRowSelectionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridRowSelectionTestSelectRowOnClickComponent { @@ -246,6 +250,7 @@ export class IgxHierarchicalGridRowSelectionTestSelectRowOnClickComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridRowSelectionNoTransactionsComponent { @@ -296,6 +301,7 @@ export class IgxHierarchicalGridRowSelectionNoTransactionsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxHierarchicalGridComponent, IgxColumnComponent, @@ -356,6 +362,7 @@ export class IgxHierarchicalGridCustomSelectorsComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxGridToolbarComponent, IgxGridToolbarDirective, IgxRowIslandComponent, IgxButtonDirective] }) export class IgxHierarchicalGridTestCustomToolbarComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -378,6 +385,7 @@ export class IgxHierarchicalGridTestCustomToolbarComponent extends IgxHierarchic `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxGridToolbarComponent, IgxRowIslandComponent, IgxButtonDirective] }) export class IgxHierarchicalGridTestInputToolbarComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -401,6 +409,7 @@ export class IgxHierarchicalGridTestInputToolbarComponent extends IgxHierarchica `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxGridToolbarComponent, IgxPaginatorComponent, IgxPaginatorContentDirective, IgxRowIslandComponent, IgxButtonDirective] }) export class IgxHierarchicalGridTestInputPaginatorComponent extends IgxHierarchicalGridTestBaseComponent { } @@ -422,6 +431,7 @@ export class IgxHierarchicalGridTestInputPaginatorComponent extends IgxHierarchi `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxHierarchicalGridComponent, IgxActionStripComponent, @@ -462,6 +472,7 @@ export class IgxHierarchicalGridActionStripComponent extends IgxHierarchicalGrid `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent, IgxAdvancedFilteringDialogComponent] }) export class IgxHierGridExternalAdvancedFilteringComponent extends IgxHierarchicalGridTestBaseComponent { @@ -510,6 +521,7 @@ export class IgxHierGridExternalAdvancedFilteringComponent extends IgxHierarchic `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridExportComponent { @@ -566,6 +578,7 @@ export class IgxHierarchicalGridExportComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMultiColumnHeadersExportComponent { @@ -592,6 +605,7 @@ export class IgxHierarchicalGridMultiColumnHeadersExportComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMCHCollapsibleComponent { @@ -627,6 +641,7 @@ export class IgxHierarchicalGridMCHCollapsibleComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMultiColumnHeaderIslandsExportComponent { @@ -658,6 +673,7 @@ export class IgxHierarchicalGridMultiColumnHeaderIslandsExportComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridSummariesExportComponent { @@ -736,6 +752,7 @@ class MyChildSummary { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridDefaultComponent { @@ -761,6 +778,7 @@ export class IgxHierarchicalGridDefaultComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridEmptyDataExportComponent { @@ -780,6 +798,7 @@ export class IgxHierarchicalGridEmptyDataExportComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class IgxHierarchicalGridMissingChildDataExportComponent { diff --git a/projects/igniteui-angular/test-utils/list-components.spec.ts b/projects/igniteui-angular/test-utils/list-components.spec.ts index 05c7b2095b3..5126b285f89 100644 --- a/projects/igniteui-angular/test-utils/list-components.spec.ts +++ b/projects/igniteui-angular/test-utils/list-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxForOfDirective } from '../directives/src/directives/for-of/for_of.directive'; import { IgxIconComponent } from '../icon/src/icon/icon.component'; import { IgxDataLoadingTemplateDirective, IgxEmptyListTemplateDirective, IgxListActionDirective, IgxListComponent, IgxListItemComponent, IgxListItemLeftPanningTemplateDirective, IgxListItemRightPanningTemplateDirective, IgxListLineDirective, IgxListLineSubTitleDirective, IgxListLineTitleDirective, IgxListThumbnailDirective } from 'igniteui-angular/list'; @@ -17,6 +17,7 @@ import { IgxDataLoadingTemplateDirective, IgxEmptyListTemplateDirective, IgxList
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxListComponent, IgxListItemComponent, @@ -41,6 +42,7 @@ export class ListDirectivesComponent { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class BasicListComponent { @@ -58,6 +60,7 @@ export class BasicListComponent { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class ListWithHeaderComponent extends BasicListComponent { @@ -73,6 +76,7 @@ export class ListWithHeaderComponent extends BasicListComponent { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class ListWithSelectedItemComponent extends BasicListComponent { @@ -87,6 +91,7 @@ export class ListWithSelectedItemComponent extends BasicListComponent { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class ListWithPanningComponent extends BasicListComponent { @@ -100,6 +105,7 @@ export class ListWithPanningComponent extends BasicListComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent] }) export class EmptyListComponent extends BasicListComponent { @@ -114,6 +120,7 @@ export class EmptyListComponent extends BasicListComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxEmptyListTemplateDirective] }) export class CustomEmptyListComponent extends BasicListComponent { @@ -125,6 +132,7 @@ export class CustomEmptyListComponent extends BasicListComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent] }) export class ListLoadingComponent extends BasicListComponent { @@ -140,6 +148,7 @@ export class ListLoadingComponent extends BasicListComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxDataLoadingTemplateDirective] }) export class ListCustomLoadingComponent extends ListLoadingComponent { @@ -157,6 +166,7 @@ export class ListCustomLoadingComponent extends ListLoadingComponent { `, selector: 'igx-list-with-headers', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class TwoHeadersListComponent extends ListWithPanningComponent { @@ -174,6 +184,7 @@ export class TwoHeadersListComponent extends ListWithPanningComponent { `, selector: 'igx-list-with-headers-no-panning', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent] }) export class TwoHeadersListNoPanningComponent extends ListWithHeaderComponent { @@ -195,6 +206,7 @@ export class TwoHeadersListNoPanningComponent extends ListWithHeaderComponent { Item 3 `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxListItemLeftPanningTemplateDirective, IgxListItemRightPanningTemplateDirective] }) export class ListWithPanningTemplatesComponent extends ListWithPanningComponent { @@ -218,6 +230,7 @@ export class ListWithPanningTemplatesComponent extends ListWithPanningComponent styles: [`.item-container { display: flex; }`], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxForOfDirective] }) export class ListWithIgxForAndScrollingComponent { diff --git a/projects/igniteui-angular/test-utils/pivot-grid-samples.spec.ts b/projects/igniteui-angular/test-utils/pivot-grid-samples.spec.ts index c553226cc3c..08e8dcd324a 100644 --- a/projects/igniteui-angular/test-utils/pivot-grid-samples.spec.ts +++ b/projects/igniteui-angular/test-utils/pivot-grid-samples.spec.ts @@ -1,4 +1,4 @@ -import { Component, TemplateRef, ViewChild } from '@angular/core'; +import { Component, TemplateRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridStateDirective, IgxPivotNumericAggregate, IPivotConfiguration, IPivotGridColumn, IPivotGridRecord, PivotAggregation } from 'igniteui-angular/grids/core'; import { IgxPivotDataSelectorComponent, IgxPivotGridComponent } from 'igniteui-angular/grids/pivot-grid'; @@ -20,6 +20,7 @@ import { IgxPivotDataSelectorComponent, IgxPivotGridComponent } from 'igniteui-a {{value.member}} `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent, IgxPivotDataSelectorComponent] }) export class IgxPivotGridTestBaseComponent { @@ -127,6 +128,7 @@ export class IgxPivotGridTestBaseComponent { [rowSelection]="'single'" [columnSelection]="'single'" [defaultExpandState]='defaultExpand'> `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent] }) export class IgxPivotGridTestComplexHierarchyComponent extends IgxPivotGridTestBaseComponent { @@ -222,6 +224,7 @@ export class IgxPivotGridTestComplexHierarchyComponent extends IgxPivotGridTestB `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent, IgxGridStateDirective] }) export class IgxPivotGridPersistanceComponent { @@ -291,6 +294,7 @@ export class IgxPivotGridPersistanceComponent { template: ` `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent] }) export class IgxPivotGridMultipleRowComponent extends IgxPivotGridTestBaseComponent { @@ -364,6 +368,7 @@ export class IgxPivotGridMultipleRowComponent extends IgxPivotGridTestBaseCompon `, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent] }) export class IgxPivotGridFlexContainerComponent extends IgxPivotGridTestBaseComponent{ diff --git a/projects/igniteui-angular/test-utils/routing-view-components.spec.ts b/projects/igniteui-angular/test-utils/routing-view-components.spec.ts index 1fb8f96622e..b3c19508fe9 100644 --- a/projects/igniteui-angular/test-utils/routing-view-components.spec.ts +++ b/projects/igniteui-angular/test-utils/routing-view-components.spec.ts @@ -1,7 +1,8 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; @Component({ template: `This is a content from view component # 1`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class RoutingView1Component { @@ -10,6 +11,7 @@ export class RoutingView1Component { @Component({ selector: 'igx-routing-view-2', template: `This is a content from view component # 2`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class RoutingView2Component { @@ -18,6 +20,7 @@ export class RoutingView2Component { @Component({ selector: 'igx-routing-view-3', template: `This is a content from view component # 3`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class RoutingView3Component { @@ -26,6 +29,7 @@ export class RoutingView3Component { @Component({ selector: 'igx-routing-view-4', template: `This is a content from view component # 4`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class RoutingView4Component { @@ -34,6 +38,7 @@ export class RoutingView4Component { @Component({ selector: 'igx-routing-view-5', template: `This is a content from view component # 5`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class RoutingView5Component { diff --git a/projects/igniteui-angular/test-utils/tabs-components.spec.ts b/projects/igniteui-angular/test-utils/tabs-components.spec.ts index 376b65c2313..7dc42a0f710 100644 --- a/projects/igniteui-angular/test-utils/tabs-components.spec.ts +++ b/projects/igniteui-angular/test-utils/tabs-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, QueryList, ViewChild, ViewChildren } from '@angular/core'; +import { Component, QueryList, ViewChild, ViewChildren, ChangeDetectionStrategy } from '@angular/core'; import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router'; import { SampleTestData } from './sample-test-data.spec'; import { IgxTabContentComponent, IgxTabHeaderComponent, IgxTabHeaderIconDirective, IgxTabHeaderLabelDirective, IgxTabItemComponent, IgxTabsComponent } from 'igniteui-angular/tabs'; @@ -39,6 +39,7 @@ import { IgxPrefixDirective, IgxSuffixDirective } from 'igniteui-angular/input-g `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent] }) export class BasicTabsComponent { @@ -86,6 +87,7 @@ export class BasicTabsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxIconComponent, IgxTabHeaderIconDirective, IgxTabHeaderLabelDirective] }) export class TabsTestComponent { @@ -106,6 +108,7 @@ export class TabsTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsTest2Component { @@ -189,6 +192,7 @@ export class TabsTest2Component { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TemplatedTabsTestComponent { @@ -208,6 +212,7 @@ export class TemplatedTabsTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective] }) export class TabsTestSelectedTabComponent { @@ -238,6 +243,7 @@ export class TabsTestSelectedTabComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsTestCustomStylesComponent { @@ -263,6 +269,7 @@ export class TabsTestCustomStylesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective, IgxDropDownComponent, IgxToggleActionDirective, IgxButtonDirective] }) export class TabsTestBug4420Component { @@ -288,6 +295,7 @@ export class TabsTestBug4420Component { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective, RouterLinkActive, RouterLink, RouterOutlet] }) export class TabsRoutingTestComponent { @@ -323,6 +331,7 @@ export class TabsRoutingTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective, RouterLink, RouterLinkActive, RouterOutlet] }) export class TabsRoutingDisabledTestComponent { @@ -346,6 +355,7 @@ export class TabsRoutingDisabledTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective, RouterLinkActive, RouterLink, RouterOutlet] }) export class TabsRoutingGuardTestComponent { @@ -369,6 +379,7 @@ export class TabsRoutingGuardTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective] }) export class TabsTabsOnlyModeTest1Component { @@ -403,6 +414,7 @@ export class TabsTabsOnlyModeTest1Component { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsDisabledTestComponent { @@ -444,6 +456,7 @@ export class TabsDisabledTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsTestHtmlAttributesComponent { @@ -494,6 +507,7 @@ export class TabsTestHtmlAttributesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective, IgxIconComponent, IgxTabHeaderIconDirective, IgxPrefixDirective, IgxSuffixDirective] }) export class TabsWithPrefixSuffixTestComponent extends TabsTestComponent { @@ -516,6 +530,7 @@ export class TabsWithPrefixSuffixTestComponent extends TabsTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsContactsComponent extends TabsTestComponent { @@ -535,6 +550,7 @@ export class TabsContactsComponent extends TabsTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class AddingSelectedTabComponent { @@ -566,6 +582,7 @@ export class AddingSelectedTabComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabContentComponent, IgxTabHeaderLabelDirective] }) export class TabsRtlComponent { diff --git a/projects/igniteui-angular/test-utils/tooltip-components.spec.ts b/projects/igniteui-angular/test-utils/tooltip-components.spec.ts index 01f45faf660..6d2d3bc16a7 100644 --- a/projects/igniteui-angular/test-utils/tooltip-components.spec.ts +++ b/projects/igniteui-angular/test-utils/tooltip-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, TemplateRef, ViewChild } from '@angular/core'; +import { Component, TemplateRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxToggleActionDirective, IgxToggleDirective, IgxTooltipDirective, IgxTooltipTargetDirective, ITooltipHideEventArgs, ITooltipShowEventArgs } from 'igniteui-angular/directives'; @@ -17,6 +17,7 @@ import { IgxToggleActionDirective, IgxToggleDirective, IgxTooltipDirective, IgxT Hello, I am a tooltip! `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective, IgxTooltipTargetDirective] }) export class IgxTooltipSingleTargetComponent { @@ -63,6 +64,7 @@ export class IgxTooltipSingleTargetComponent {
Second Custom Close Button
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective, IgxTooltipTargetDirective] }) export class IgxTooltipMultipleTargetsComponent { @@ -92,6 +94,7 @@ export class IgxTooltipMultipleTargetsComponent { Hello, I am tooltip 2! `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective, IgxTooltipTargetDirective] }) export class IgxTooltipMultipleTooltipsComponent { @@ -108,6 +111,7 @@ export class IgxTooltipMultipleTooltipsComponent { info `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipTargetDirective] }) export class IgxTooltipPlainStringComponent { @@ -122,6 +126,7 @@ export class IgxTooltipPlainStringComponent {
Toggle content
Test
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective, IgxTooltipTargetDirective, IgxToggleActionDirective, IgxToggleDirective] }) export class IgxTooltipWithToggleActionComponent { @@ -142,6 +147,7 @@ export class IgxTooltipWithToggleActionComponent {
Test
`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTooltipDirective, IgxTooltipTargetDirective] }) export class IgxTooltipWithCloseButtonComponent { @@ -162,6 +168,7 @@ export class IgxTooltipWithCloseButtonComponent { `, imports: [IgxTooltipDirective, IgxTooltipTargetDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxTooltipWithNestedContentComponent { @@ -196,6 +203,7 @@ export class IgxTooltipWithNestedContentComponent { `, imports: [IgxTooltipDirective, IgxTooltipTargetDirective], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxTooltipNestedTooltipsComponent { diff --git a/projects/igniteui-angular/test-utils/tree-grid-components.spec.ts b/projects/igniteui-angular/test-utils/tree-grid-components.spec.ts index 704f9ef36c8..adf53ef89db 100644 --- a/projects/igniteui-angular/test-utils/tree-grid-components.spec.ts +++ b/projects/igniteui-angular/test-utils/tree-grid-components.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, TemplateRef } from '@angular/core'; +import { Component, ViewChild, OnInit, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { SampleTestData } from './sample-test-data.spec'; import { DefaultSortingStrategy, GridSummaryCalculationMode, IGroupingExpression, IgxSummaryResult } from 'igniteui-angular/core'; import { IgxActionStripComponent } from 'igniteui-angular/action-strip'; @@ -17,6 +17,7 @@ import { IgxColumnComponent, IgxColumnGroupComponent, IgxExcelStyleColumnOperati `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSortingComponent { @@ -33,6 +34,7 @@ export class IgxTreeGridSortingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridFilteringComponent { @@ -62,6 +64,7 @@ export class IgxTreeGridFilteringComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxTreeGridComponent, IgxColumnComponent, @@ -92,6 +95,7 @@ export class IgxTreeGridFilteringESFTemplatesComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridSimpleComponent { @@ -112,6 +116,7 @@ export class IgxTreeGridSimpleComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridWithScrollsComponent { @@ -129,6 +134,7 @@ export class IgxTreeGridWithScrollsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridWithNoScrollsComponent { @@ -149,6 +155,7 @@ export class IgxTreeGridWithNoScrollsComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridPrimaryForeignKeyComponent implements OnInit { @@ -174,6 +181,7 @@ export class IgxTreeGridPrimaryForeignKeyComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridExpandingComponent { @@ -197,6 +205,7 @@ export class IgxTreeGridExpandingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridCellSelectionComponent { @@ -217,6 +226,7 @@ export class IgxTreeGridCellSelectionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridNoDataComponent { @@ -233,6 +243,7 @@ export class IgxTreeGridNoDataComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridStringTreeColumnComponent { @@ -250,6 +261,7 @@ export class IgxTreeGridStringTreeColumnComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridDateTreeColumnComponent { @@ -268,6 +280,7 @@ export class IgxTreeGridDateTreeColumnComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridBooleanTreeColumnComponent { @@ -285,6 +298,7 @@ export class IgxTreeGridBooleanTreeColumnComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridRowEditingComponent { @@ -302,6 +316,7 @@ export class IgxTreeGridRowEditingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridFilteringRowEditingComponent { @@ -318,6 +333,7 @@ export class IgxTreeGridFilteringRowEditingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSelectionRowEditingComponent { @@ -338,6 +354,7 @@ export class IgxTreeGridSelectionRowEditingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxColumnGroupComponent] }) export class IgxTreeGridMultiColHeadersComponent { @@ -356,6 +373,7 @@ export class IgxTreeGridMultiColHeadersComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSummariesComponent { @@ -377,6 +395,7 @@ export class IgxTreeGridSummariesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSummariesKeyScroliingComponent { @@ -395,6 +414,7 @@ export class IgxTreeGridSummariesKeyScroliingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridWithNoForeignKeyComponent { @@ -416,6 +436,7 @@ export class IgxTreeGridWithNoForeignKeyComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridSummariesKeyComponent { @@ -439,6 +460,7 @@ export class IgxTreeGridSummariesKeyComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSummariesTransactionsComponent { @@ -534,6 +556,7 @@ class PTOSummary extends IgxSummaryOperand { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridRowEditingTransactionComponent { @@ -552,6 +575,7 @@ export class IgxTreeGridRowEditingTransactionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridCustomSummariesComponent { @@ -572,6 +596,7 @@ export class IgxTreeGridCustomSummariesComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridRowEditingHierarchicalDSTransactionComponent { @@ -593,6 +618,7 @@ export class IgxTreeGridRowEditingHierarchicalDSTransactionComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridRowPinningComponent { @@ -612,6 +638,7 @@ export class IgxTreeGridRowPinningComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) @@ -668,6 +695,7 @@ export class IgxTreeGridWrappedInContComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxPaginatorComponent] }) export class IgxTreeGridSummariesScrollingComponent { @@ -686,6 +714,7 @@ export class IgxTreeGridSummariesScrollingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSearchComponent { @@ -705,6 +734,7 @@ export class IgxTreeGridSearchComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridLoadOnDemandComponent { @@ -730,6 +760,7 @@ export class IgxTreeGridLoadOnDemandComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSelectionKeyComponent { @@ -749,6 +780,7 @@ export class IgxTreeGridSelectionKeyComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridLoadOnDemandChildDataComponent { @@ -775,6 +807,7 @@ export class IgxTreeGridLoadOnDemandChildDataComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSelectionComponent { @@ -794,6 +827,7 @@ export class IgxTreeGridSelectionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridLoadOnDemandHasChildrenComponent { @@ -833,6 +867,7 @@ export class IgxTreeGridLoadOnDemandHasChildrenComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridSelectionWithTransactionComponent { @@ -851,6 +886,7 @@ export class IgxTreeGridSelectionWithTransactionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridFKeySelectionWithTransactionComponent { @@ -868,6 +904,7 @@ export class IgxTreeGridFKeySelectionWithTransactionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent] }) export class IgxTreeGridDefaultLoadingComponent implements OnInit { @@ -905,6 +942,7 @@ export class IgxTreeGridDefaultLoadingComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxCheckboxComponent, IgxPaginatorComponent, IgxHeadSelectorDirective, IgxRowSelectorDirective] }) export class IgxTreeGridCustomRowSelectorsComponent implements OnInit { @@ -956,6 +994,7 @@ export class IgxTreeGridCustomRowSelectorsComponent implements OnInit { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxRowExpandedIndicatorDirective, IgxRowCollapsedIndicatorDirective] }) export class IgxTreeGridCustomExpandersTemplateComponent { @@ -976,6 +1015,7 @@ export class IgxTreeGridCustomExpandersTemplateComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) export class IgxTreeGridEditActionsComponent { @@ -998,6 +1038,7 @@ export class IgxTreeGridEditActionsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) export class IgxTreeGridCascadingSelectionComponent { @@ -1020,6 +1061,7 @@ export class IgxTreeGridCascadingSelectionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) export class IgxTreeGridCascadingSelectionTransactionComponent { @@ -1047,6 +1089,7 @@ export class IgxTreeGridCascadingSelectionTransactionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxTreeGridGroupByAreaComponent, IgxTreeGridGroupingPipe] }) export class IgxTreeGridGroupingComponent { @@ -1073,6 +1116,7 @@ export class IgxTreeGridGroupingComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxTreeGridGroupByAreaComponent] }) export class IgxTreeGridGroupByAreaTestComponent { @@ -1093,6 +1137,7 @@ export class IgxTreeGridGroupByAreaTestComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridEditingActionsComponent] }) export class IgxTreeGridPrimaryForeignKeyCascadeSelectionComponent { @@ -1116,6 +1161,7 @@ export class IgxTreeGridPrimaryForeignKeyCascadeSelectionComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent] }) export class IgxTreeGridEditActionsPinningComponent { diff --git a/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.spec.ts b/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.spec.ts index b3fc9f630e5..6548225e6bc 100644 --- a/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.spec.ts +++ b/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, DebugElement, EventEmitter, QueryList, ElementRef, Injector, ChangeDetectorRef } from '@angular/core'; +import { Component, ViewChild, DebugElement, EventEmitter, QueryList, ElementRef, Injector, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core'; import { TestBed, fakeAsync, tick, ComponentFixture, waitForAsync } from '@angular/core/testing'; import { UntypedFormControl, UntypedFormGroup, FormsModule, NgForm, ReactiveFormsModule, Validators } from '@angular/forms'; import { By } from '@angular/platform-browser'; @@ -1938,6 +1938,7 @@ describe('IgxTimePicker', () => { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTimePickerComponent, IgxLabelDirective] }) export class IgxTimePickerTestComponent { @@ -1964,6 +1965,7 @@ export class IgxTimePickerTestComponent { Hint `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTimePickerComponent, IgxPickerToggleComponent, IgxPickerClearComponent, IgxLabelDirective, IgxPrefixDirective, IgxSuffixDirective, IgxHintDirective] }) export class IgxTimePickerWithProjectionsComponent { @@ -1981,6 +1983,7 @@ export class IgxTimePickerWithProjectionsComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTimePickerComponent, FormsModule] }) export class IgxTimePickerInFormComponent { @@ -2004,6 +2007,7 @@ export class IgxTimePickerInFormComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTimePickerComponent, IgxLabelDirective, ReactiveFormsModule] }) export class IgxTimePickerReactiveFormComponent { diff --git a/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.ts b/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.ts index 28b2ad29172..e2608189fd1 100644 --- a/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.ts +++ b/projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.ts @@ -1,22 +1,23 @@ import { NgClass, NgTemplateOutlet } from '@angular/common'; import { - Component, - ElementRef, - EventEmitter, - HostBinding, - Input, - OnDestroy, - OnInit, - Output, - ViewChild, - ContentChild, - AfterViewInit, - Injector, - PipeTransform, - ChangeDetectorRef, - HostListener, - booleanAttribute, - inject + Component, + ElementRef, + EventEmitter, + HostBinding, + Input, + OnDestroy, + OnInit, + Output, + ViewChild, + ContentChild, + AfterViewInit, + Injector, + PipeTransform, + ChangeDetectorRef, + HostListener, + booleanAttribute, + inject, + ChangeDetectionStrategy } from '@angular/core'; import { ControlValueAccessor, @@ -82,6 +83,7 @@ export interface IgxTimePickerValidationFailedEventArgs extends IBaseEventArgs { display: block; }` ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective, IgxTextSelectionDirective, IgxPrefixDirective, IgxIconComponent, IgxSuffixDirective, IgxButtonDirective, IgxToggleDirective, NgClass, IgxItemListDirective, IgxTimeItemDirective, NgTemplateOutlet, TimeFormatPipe, TimeItemPipe, IgxDividerDirective, IgxReadOnlyInputDirective] }) export class IgxTimePickerComponent extends PickerBaseDirective diff --git a/projects/igniteui-angular/toast/src/toast/toast.component.ts b/projects/igniteui-angular/toast/src/toast/toast.component.ts index 6f0ba09f023..16b863da548 100644 --- a/projects/igniteui-angular/toast/src/toast/toast.component.ts +++ b/projects/igniteui-angular/toast/src/toast/toast.component.ts @@ -1,4 +1,4 @@ -import { Component, ElementRef, EventEmitter, HostBinding, Input, OnInit, Output, inject } from '@angular/core'; +import { Component, ElementRef, EventEmitter, HostBinding, Input, OnInit, Output, inject, ChangeDetectionStrategy } from '@angular/core'; import { takeUntil } from 'rxjs/operators'; import { HorizontalAlignment, @@ -31,6 +31,7 @@ let NEXT_ID = 0; @Component({ selector: 'igx-toast', templateUrl: 'toast.component.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxToastComponent extends IgxNotificationsDirective implements OnInit { diff --git a/projects/igniteui-angular/tree/src/tree/tree-node/tree-node.component.ts b/projects/igniteui-angular/tree/src/tree/tree-node/tree-node.component.ts index 880509c5d67..8ba508ce9b7 100644 --- a/projects/igniteui-angular/tree/src/tree/tree-node/tree-node.component.ts +++ b/projects/igniteui-angular/tree/src/tree/tree-node/tree-node.component.ts @@ -1,4 +1,4 @@ -import { ChangeDetectorRef, Component, ContentChildren, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, QueryList, TemplateRef, ViewChild, booleanAttribute, inject } from '@angular/core'; +import { ChangeDetectorRef, Component, ContentChildren, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, QueryList, TemplateRef, ViewChild, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { takeUntil } from 'rxjs/operators'; import { IgxTree, @@ -128,6 +128,7 @@ export class IgxTreeNodeLinkDirective implements OnDestroy { providers: [ { provide: IGX_TREE_NODE_COMPONENT, useExisting: IgxTreeNodeComponent } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [NgTemplateOutlet, IgxIconComponent, IgxCheckboxComponent, NgClass, IgxCircularProgressBarComponent] }) export class IgxTreeNodeComponent extends ToggleAnimationPlayer implements IgxTreeNode, OnInit, OnDestroy { diff --git a/projects/igniteui-angular/tree/src/tree/tree-samples.spec.ts b/projects/igniteui-angular/tree/src/tree/tree-samples.spec.ts index 6d98bc70ed2..149c8f2f4db 100644 --- a/projects/igniteui-angular/tree/src/tree/tree-samples.spec.ts +++ b/projects/igniteui-angular/tree/src/tree/tree-samples.spec.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ChangeDetectorRef, inject } from '@angular/core'; +import { Component, ViewChild, ChangeDetectorRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxTreeComponent, IgxTreeExpandIndicatorDirective, IgxTreeNodeComponent, IgxTreeNodeLinkDirective } from './public_api'; import { HIERARCHICAL_SAMPLE_DATA } from 'src/app/shared/sample-data'; import { NgTemplateOutlet } from '@angular/common'; @@ -24,6 +24,7 @@ import { IgxIconComponent } from 'igniteui-angular/icon'; } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeComponent, IgxTreeNodeComponent] }) export class IgxTreeSimpleComponent { @@ -51,6 +52,7 @@ export class IgxTreeSimpleComponent { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeComponent, IgxTreeNodeComponent] }) export class IgxTreeSelectionSampleComponent { @@ -124,6 +126,7 @@ export class IgxTreeSelectionSampleComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeComponent, IgxTreeNodeComponent, IgxTreeNodeLinkDirective, NgTemplateOutlet] }) export class IgxTreeNavigationComponent { @@ -155,6 +158,7 @@ export class IgxTreeNavigationComponent { `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeComponent, IgxTreeNodeComponent, IgxTreeExpandIndicatorDirective, IgxIconComponent] }) export class IgxTreeScrollComponent { diff --git a/projects/igniteui-angular/tree/src/tree/tree.component.ts b/projects/igniteui-angular/tree/src/tree/tree.component.ts index d3f13fd9cdc..38702667150 100644 --- a/projects/igniteui-angular/tree/src/tree/tree.component.ts +++ b/projects/igniteui-angular/tree/src/tree/tree.component.ts @@ -1,4 +1,4 @@ -import { Component, QueryList, Input, Output, EventEmitter, ContentChild, Directive, TemplateRef, OnInit, AfterViewInit, ContentChildren, OnDestroy, HostBinding, ElementRef, booleanAttribute, inject } from '@angular/core'; +import { Component, QueryList, Input, Output, EventEmitter, ContentChild, Directive, TemplateRef, OnInit, AfterViewInit, ContentChildren, OnDestroy, HostBinding, ElementRef, booleanAttribute, inject, ChangeDetectionStrategy } from '@angular/core'; import { Subject } from 'rxjs'; import { takeUntil, throttleTime } from 'rxjs/operators'; @@ -75,6 +75,7 @@ export class IgxTreeExpandIndicatorDirective { IgxTreeNavigationService, { provide: IGX_TREE_COMPONENT, useExisting: IgxTreeComponent }, ], + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class IgxTreeComponent implements IgxTree, OnInit, AfterViewInit, OnDestroy { diff --git a/projects/igniteui-angular/tree/src/tree/tree.spec.ts b/projects/igniteui-angular/tree/src/tree/tree.spec.ts index 290c2e85944..651a42406a3 100644 --- a/projects/igniteui-angular/tree/src/tree/tree.spec.ts +++ b/projects/igniteui-angular/tree/src/tree/tree.spec.ts @@ -1,4 +1,4 @@ -import { ChangeDetectorRef, Component, DebugElement, ElementRef, EventEmitter, QueryList, ViewChild } from '@angular/core'; +import { ChangeDetectorRef, Component, DebugElement, ElementRef, EventEmitter, QueryList, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ComponentFixture, fakeAsync, TestBed, tick, waitForAsync } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @@ -743,6 +743,7 @@ describe('IgxTree #treeView', () => { } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeComponent, IgxTreeNodeComponent] }) class IgxTreeSampleComponent { diff --git a/projects/igniteui-angular/tsconfig.lib.json b/projects/igniteui-angular/tsconfig.lib.json index a16401cb00a..cd8f6bf4bfa 100644 --- a/projects/igniteui-angular/tsconfig.lib.json +++ b/projects/igniteui-angular/tsconfig.lib.json @@ -5,5 +5,13 @@ "declarationMap": true, "declaration": true, "inlineSources": true + }, + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } } } diff --git a/projects/igniteui-angular/tsconfig.lib.prod.json b/projects/igniteui-angular/tsconfig.lib.prod.json index 2a2faa884cf..6e0a48df6d0 100644 --- a/projects/igniteui-angular/tsconfig.lib.prod.json +++ b/projects/igniteui-angular/tsconfig.lib.prod.json @@ -4,6 +4,12 @@ "declarationMap": false }, "angularCompilerOptions": { - "compilationMode": "partial" + "compilationMode": "partial", + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } } } diff --git a/projects/igniteui-angular/tsconfig.spec.json b/projects/igniteui-angular/tsconfig.spec.json index b925e22baa8..e9f259bee39 100644 --- a/projects/igniteui-angular/tsconfig.spec.json +++ b/projects/igniteui-angular/tsconfig.spec.json @@ -2,19 +2,20 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/spec", - "types": [ - "jasmine", - "node", - "hammerjs" - ] + "types": ["jasmine", "node", "hammerjs"] }, "exclude": [ "migrations/**/*.spec.ts", "schematics/**/*.spec.ts", "cypress/**/*.spec.ts" ], - "include": [ - "**/*.spec.ts", - "**/*.d.ts" - ] + "include": ["**/*.spec.ts", "**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/src/app/accordion/accordion.sample.ts b/src/app/accordion/accordion.sample.ts index 1991ce04859..21e6cdea290 100644 --- a/src/app/accordion/accordion.sample.ts +++ b/src/app/accordion/accordion.sample.ts @@ -1,4 +1,4 @@ -import { Component, DestroyRef, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { Component, DestroyRef, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IGX_ACCORDION_DIRECTIVES } from 'igniteui-angular'; import { @@ -19,6 +19,7 @@ defineComponents(IgcAccordionComponent, IgcExpansionPanelComponent); templateUrl: 'accordion.sample.html', styleUrls: ['accordion.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IGX_ACCORDION_DIRECTIVES] }) export class AccordionSampleComponent { diff --git a/src/app/action-strip/action-strip.sample.ts b/src/app/action-strip/action-strip.sample.ts index 913640bbf3e..7a6ce7bbb97 100644 --- a/src/app/action-strip/action-strip.sample.ts +++ b/src/app/action-strip/action-strip.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { SizeSelectorComponent } from '../size-selector/size-selector.component'; import { IDataCloneStrategy, @@ -61,6 +61,7 @@ class User { selector: 'app-action-strip-sample', styleUrls: ['action-strip.sample.scss'], templateUrl: `action-strip.sample.html`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, IgxActionStripComponent, diff --git a/src/app/app.component.html b/src/app/app.component.html index 624afc60c87..d88ac052c83 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1,110 +1,158 @@
- - - - - - - - - filter_alt - - - @if (filterText()) { - - clear - - } - - - - Components - - @for (item of filteredComponentLinks(); track item) { - - {{item.icon}} - {{item.name}} - - } - - - web - Disabled Item - - - - Directives - - @for (item of filteredDirectiveLinks(); track item) { - - {{item.icon}} - {{item.name}} - - } - - - Style - - @for (item of filteredStyleLinks(); track item) { - - {{item.icon}} - {{item.name}} - - } - - - @if (drawerState.miniVariant) { - - @for (item of componentLinks; track item) { - - {{item.icon}} - - } - - - web - + + + + + + + + filter_alt + + + @if (filterText()) { + + clear + + } + + + + Components + + @for (item of filteredComponentLinks(); track item) { + + {{ item.icon }} + {{ item.name }} + + } + + + web + Disabled Item + + + + Directives + + @for (item of filteredDirectiveLinks(); track item) { + + {{ item.icon }} + {{ item.name }} + + } + + + Style + + @for (item of filteredStyleLinks(); track item) { + + {{ item.icon }} + {{ item.name }} + + } + + + @if (drawerState.miniVariant) { + + @for (item of componentLinks; track item) { + + {{ item.icon }} + + } - @for (item of directiveLinks; track item) { - - {{item.icon}} - - } + + web + + + @for (item of directiveLinks; track item) { + + {{ item.icon }} + + } - @for (item of styleLinks; track item) { - - {{item.icon}} - - } - + @for (item of styleLinks; track item) { + + {{ item.icon }} + } - + + } + - @let config = (propertyChangeService.panelConfig | async | keyvalue)?.length > 0; + @let config = + $safeNavigationMigration( + (propertyChangeService.panelConfig | async | keyvalue)?.length + ) > 0; - @if(config) { + @if (config) { - - - + #paneldrawer + [pin]="true" + position="right" + [isOpen]="config" + id="paneldrawer" + > + + + - } - -
- -
- -
+ } + +
+ +
+
+
diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 9da1b765f44..4e85cfc3975 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,11 +1,12 @@ import { - Component, - OnInit, - ViewChild, - HostBinding, - inject, - signal, - computed, + Component, + OnInit, + ViewChild, + HostBinding, + inject, + signal, + computed, + ChangeDetectionStrategy } from '@angular/core'; import { Router, NavigationStart, NavigationEnd, RouterLinkActive, RouterLink, RouterOutlet } from '@angular/router'; import { filter } from 'rxjs/operators'; @@ -37,6 +38,7 @@ import localeHant from '@angular/common/locales/zh-Hant'; selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxNavigationDrawerComponent, IGX_NAVIGATION_DRAWER_DIRECTIVES, diff --git a/src/app/app.config.ts b/src/app/app.config.ts index a40991aa04f..bc50c6d0fa5 100644 --- a/src/app/app.config.ts +++ b/src/app/app.config.ts @@ -2,7 +2,7 @@ import { HTTP_INTERCEPTORS, provideHttpClient, withFetch, withInterceptorsFromDi import { ApplicationConfig, importProvidersFrom } from '@angular/core'; import { TestInterceptorClass } from './interceptor.service'; import { provideAnimations } from '@angular/platform-browser/animations'; -import { HammerModule, provideClientHydration } from '@angular/platform-browser'; +import { HammerModule, provideClientHydration, withNoIncrementalHydration } from '@angular/platform-browser'; import { provideRouter } from '@angular/router'; import { appRoutes } from './app.routes'; import { provideIgniteIntl } from 'igniteui-angular/core'; @@ -17,7 +17,7 @@ export const appConfig: ApplicationConfig = { }, provideAnimations(), provideHttpClient(withInterceptorsFromDi(), withFetch()), - provideClientHydration(), + provideClientHydration(withNoIncrementalHydration()), provideRouter(appRoutes), provideIgniteIntl() ] diff --git a/src/app/autocomplete/autocomplete.sample.ts b/src/app/autocomplete/autocomplete.sample.ts index 867aab1e591..d0e53a6d41c 100644 --- a/src/app/autocomplete/autocomplete.sample.ts +++ b/src/app/autocomplete/autocomplete.sample.ts @@ -1,4 +1,4 @@ -import { Component, PipeTransform, Pipe, ViewChild } from '@angular/core'; +import { Component, PipeTransform, Pipe, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { UntypedFormBuilder, UntypedFormControl, Validators, UntypedFormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { worldInfo, attractions } from './data'; @@ -25,6 +25,7 @@ export class AutocompleteGroupPipeContains implements PipeTransform { selector: 'app-autocomplete-sample', styleUrls: ['autocomplete.sample.scss'], templateUrl: `autocomplete.sample.html`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, ReactiveFormsModule, diff --git a/src/app/avatar/avatar.sample.ts b/src/app/avatar/avatar.sample.ts index ef6b48ab91c..6e1af913d60 100644 --- a/src/app/avatar/avatar.sample.ts +++ b/src/app/avatar/avatar.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxAvatarComponent, IgxIconComponent, @@ -28,6 +28,7 @@ defineComponents(IgcAvatarComponent, IgcIconComponent); templateUrl: `avatar.sample.html`, schemas: [CUSTOM_ELEMENTS_SCHEMA], standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxAvatarComponent, IgxIconComponent, diff --git a/src/app/badge/badge.sample.ts b/src/app/badge/badge.sample.ts index 434998f13f3..b3690887869 100644 --- a/src/app/badge/badge.sample.ts +++ b/src/app/badge/badge.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxBadgeComponent, IgxAvatarComponent, @@ -33,6 +33,7 @@ registerIconFromText('bluetooth', bluetooth); styleUrls: ['badge.sample.scss'], templateUrl: 'badge.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxBadgeComponent, IgxAvatarComponent, IgxIconComponent, IgSizeDirective] }) diff --git a/src/app/banner/banner.sample.ts b/src/app/banner/banner.sample.ts index c63fc6f587d..d33c3b580fa 100644 --- a/src/app/banner/banner.sample.ts +++ b/src/app/banner/banner.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, ViewChild } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { useAnimation } from '@angular/animations'; import { IGX_BANNER_DIRECTIVES, IgxIconComponent, IgxRippleDirective, IgxNavbarModule, IgxButtonModule, IgxBannerComponent } from 'igniteui-angular'; import { growVerIn, growVerOut } from 'igniteui-angular/animations'; @@ -30,6 +30,7 @@ icons.forEach((icon) => { templateUrl: `banner.sample.html`, styleUrls: [`banner.sample.scss`], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_BANNER_DIRECTIVES, IgxIconComponent, IgxRippleDirective, IgxNavbarModule, IgxButtonModule] }) export class BannerSampleComponent { diff --git a/src/app/bottomnav-routing/bottomnav-routing-views.sample.ts b/src/app/bottomnav-routing/bottomnav-routing-views.sample.ts index 9530626fb31..b8c954994a1 100644 --- a/src/app/bottomnav-routing/bottomnav-routing-views.sample.ts +++ b/src/app/bottomnav-routing/bottomnav-routing-views.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxAvatarComponent, IgxIconComponent, IgxListActionDirective, IgxListComponent, IgxListItemComponent, IgxListLineSubTitleDirective, IgxListLineTitleDirective, IgxListThumbnailDirective, IgxRippleDirective } from 'igniteui-angular'; @Component({ @@ -15,6 +15,7 @@ import { IgxAvatarComponent, IgxIconComponent, IgxListActionDirective, IgxListCo } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxListComponent, IgxListItemComponent, @@ -72,6 +73,7 @@ export class BottomNavRoutingView1Component { arcu sollicitudin finibus. Vivamus id lorem pulvinar, accumsan justo vitae, vehicula diam. Mauris vel quam at velit venenatis vulputate in quis nisl.

`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class BottomNavRoutingView2Component { @@ -85,6 +87,7 @@ export class BottomNavRoutingView2Component { urna arcu, bibendum nec molestie ac, varius congue massa. Mauris porttitor viverra lacus. Donec efficitur purus id urna dapibus, vitae pharetra orci pellentesque.

`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class BottomNavRoutingView3Component { diff --git a/src/app/bottomnav-routing/bottomnav-routing.sample.ts b/src/app/bottomnav-routing/bottomnav-routing.sample.ts index 720a1c66a95..9887ca37881 100644 --- a/src/app/bottomnav-routing/bottomnav-routing.sample.ts +++ b/src/app/bottomnav-routing/bottomnav-routing.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { RouterOutlet, RouterLinkActive, RouterLink } from '@angular/router'; import { IgxBottomNavComponent, IgxBottomNavHeaderComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxBottomNavItemComponent, IgxIconComponent } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxBottomNavComponent, IgxBottomNavHeaderComponent, IgxBottomNavHeaderI selector: 'app-bottomnav-routing-sample', styleUrls: ['bottomnav-routing.sample.scss'], templateUrl: 'bottomnav-routing.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [RouterOutlet, IgxBottomNavComponent, IgxBottomNavItemComponent, RouterLinkActive, IgxBottomNavHeaderComponent, RouterLink, IgxIconComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective] }) export class BottomNavRoutingSampleComponent { diff --git a/src/app/bottomnav/bottomnav.sample.ts b/src/app/bottomnav/bottomnav.sample.ts index a071b4e0d21..6c23cb2772c 100644 --- a/src/app/bottomnav/bottomnav.sample.ts +++ b/src/app/bottomnav/bottomnav.sample.ts @@ -1,10 +1,11 @@ import { - AfterViewInit, - Component, - ElementRef, - QueryList, - Renderer2, - ViewChildren + AfterViewInit, + Component, + ElementRef, + QueryList, + Renderer2, + ViewChildren, + ChangeDetectionStrategy } from '@angular/core'; import { IgxAvatarComponent, IgxBottomNavComponent, IgxBottomNavContentComponent, IgxBottomNavHeaderComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxBottomNavItemComponent, IgxIconComponent, IgxListActionDirective, IgxListComponent, IgxListItemComponent, IgxListLineSubTitleDirective, IgxListLineTitleDirective, IgxListThumbnailDirective, IgxRippleDirective } from 'igniteui-angular'; @@ -12,6 +13,7 @@ import { IgxAvatarComponent, IgxBottomNavComponent, IgxBottomNavContentComponent selector: 'app-bottomnav-sample', styleUrls: ['bottomnav.sample.scss'], templateUrl: 'bottomnav.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxBottomNavComponent, IgxBottomNavItemComponent, @@ -100,6 +102,7 @@ export class BottomNavSampleComponent implements AfterViewInit { @Component({ selector: 'app-custom-content', templateUrl: 'template.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) diff --git a/src/app/button/button.sample.ts b/src/app/button/button.sample.ts index 193d53a8e85..88271f7050b 100644 --- a/src/app/button/button.sample.ts +++ b/src/app/button/button.sample.ts @@ -1,11 +1,12 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - OnInit, - TemplateRef, - ViewChild, - ViewEncapsulation, + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + OnInit, + TemplateRef, + ViewChild, + ViewEncapsulation, + ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { @@ -38,6 +39,7 @@ registerIconFromText('face', face); templateUrl: 'button.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], encapsulation: ViewEncapsulation.None, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxSwitchComponent, diff --git a/src/app/buttonGroup/buttonGroup.sample.ts b/src/app/buttonGroup/buttonGroup.sample.ts index bf51787ac5a..01256a9630f 100644 --- a/src/app/buttonGroup/buttonGroup.sample.ts +++ b/src/app/buttonGroup/buttonGroup.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxButtonGroupComponent, @@ -55,6 +55,7 @@ icons.forEach((icon) => { templateUrl: 'buttonGroup.sample.html', styleUrls: ['buttonGroup.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective, IgxIconComponent] }) diff --git a/src/app/calendar/calendar.sample.ts b/src/app/calendar/calendar.sample.ts index 83f6c5b9b6d..6ee83d0df61 100644 --- a/src/app/calendar/calendar.sample.ts +++ b/src/app/calendar/calendar.sample.ts @@ -1,10 +1,11 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - OnInit, - TemplateRef, - ViewChild, + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + OnInit, + TemplateRef, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { DATE_PIPE_DEFAULT_OPTIONS } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -42,6 +43,7 @@ defineComponents(IgcCalendarComponent); useValue: { dateFormat: 'longDate', } } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, IgxDateRangePickerModule, diff --git a/src/app/card/card.sample.ts b/src/app/card/card.sample.ts index 629acf4db5c..fbfdeabad3e 100644 --- a/src/app/card/card.sample.ts +++ b/src/app/card/card.sample.ts @@ -1,11 +1,12 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - OnInit, - TemplateRef, - ViewChild, - ViewEncapsulation, + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + OnInit, + TemplateRef, + ViewChild, + ViewEncapsulation, + ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { @@ -100,6 +101,7 @@ const cardFactory = (params: any): ICard => ({ styleUrls: ['card.sample.scss'], templateUrl: 'card.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxButtonDirective, diff --git a/src/app/carousel/carousel.sample.ts b/src/app/carousel/carousel.sample.ts index da7674e38a5..a7739de375a 100644 --- a/src/app/carousel/carousel.sample.ts +++ b/src/app/carousel/carousel.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IGX_CAROUSEL_DIRECTIVES, IgxIconComponent } from 'igniteui-angular'; import { Properties, @@ -53,6 +53,7 @@ icons.forEach((icon) => { styleUrls: ['carousel.sample.scss'], templateUrl: 'carousel.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_CAROUSEL_DIRECTIVES, IgxIconComponent, NgClass] }) export class CarouselSampleComponent { diff --git a/src/app/chips/chips.sample.ts b/src/app/chips/chips.sample.ts index 9003d3890a2..043b51abc77 100644 --- a/src/app/chips/chips.sample.ts +++ b/src/app/chips/chips.sample.ts @@ -1,10 +1,11 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - OnInit, - TemplateRef, - ViewChild, + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + OnInit, + TemplateRef, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { @@ -62,6 +63,7 @@ icons.forEach((icon) => { styleUrls: ['chips.sample.scss', '../app.component.scss'], templateUrl: 'chips.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxChipComponent, IgxCircularProgressBarComponent, diff --git a/src/app/circular-progress-showcase/circular-progress-showcase.sample.ts b/src/app/circular-progress-showcase/circular-progress-showcase.sample.ts index 312baa260eb..884bfc2d1c2 100644 --- a/src/app/circular-progress-showcase/circular-progress-showcase.sample.ts +++ b/src/app/circular-progress-showcase/circular-progress-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxCircularProgressBarComponent } from 'igniteui-angular'; import { IgcCircularProgressComponent, @@ -18,6 +18,7 @@ defineComponents(IgcCircularProgressComponent); templateUrl: 'circular-progress-showcase.sample.html', standalone: true, schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCircularProgressBarComponent] }) diff --git a/src/app/combo-showcase/combo-showcase.sample.ts b/src/app/combo-showcase/combo-showcase.sample.ts index a4ecad9cb56..76995e1987b 100644 --- a/src/app/combo-showcase/combo-showcase.sample.ts +++ b/src/app/combo-showcase/combo-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IGX_COMBO_DIRECTIVES, @@ -17,6 +17,7 @@ defineComponents(IgcComboComponent); templateUrl: './combo-showcase.sample.html', styleUrls: ['combo-showcase.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxLabelDirective, diff --git a/src/app/combo/combo.sample.ts b/src/app/combo/combo.sample.ts index dc6afdbff2c..56b6de10740 100644 --- a/src/app/combo/combo.sample.ts +++ b/src/app/combo/combo.sample.ts @@ -1,11 +1,12 @@ import { - AfterViewInit, - ChangeDetectorRef, - Component, - ElementRef, - OnInit, - TemplateRef, - ViewChild, + AfterViewInit, + ChangeDetectorRef, + Component, + ElementRef, + OnInit, + TemplateRef, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { UntypedFormBuilder, @@ -55,6 +56,7 @@ import { scaleInCenter, scaleOutCenter } from 'igniteui-angular/animations'; selector: 'combo-sample', templateUrl: './combo.sample.html', styleUrls: ['combo.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxSimpleComboComponent, diff --git a/src/app/date-picker/date-picker.sample.ts b/src/app/date-picker/date-picker.sample.ts index e7b5413497c..6f0b0e7d72f 100644 --- a/src/app/date-picker/date-picker.sample.ts +++ b/src/app/date-picker/date-picker.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, inject } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, inject, ChangeDetectionStrategy } from '@angular/core'; import { ReactiveFormsModule, UntypedFormBuilder, Validators } from '@angular/forms'; import { IGX_DATE_PICKER_DIRECTIVES, @@ -33,6 +33,7 @@ registerIconFromText('alarm', alarm); styleUrls: ['date-picker.sample.scss'], templateUrl: 'date-picker.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IGX_DATE_PICKER_DIRECTIVES, IgxButtonDirective, diff --git a/src/app/date-range/date-range.sample.ts b/src/app/date-range/date-range.sample.ts index bf7223905b5..35c61f9a018 100644 --- a/src/app/date-range/date-range.sample.ts +++ b/src/app/date-range/date-range.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ViewChild } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { JsonPipe } from '@angular/common'; import { UntypedFormGroup, UntypedFormBuilder, Validators, UntypedFormControl, ValidatorFn, AbstractControl, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { DateRange, IgxButtonDirective, IgxDateRangePickerComponent, IgxDateTimeEditorDirective, IgxInputDirective, IgxLabelDirective, IgxRadioComponent, IgxRippleDirective, IGX_INPUT_GROUP_TYPE, IChangeCheckboxEventArgs, IGX_DATE_RANGE_PICKER_DIRECTIVES, IgxIconComponent, IgSizeDirective, CustomDateRange, CalendarDay, DateRangeType } from 'igniteui-angular'; @@ -18,6 +18,7 @@ defineComponents(IgcDateRangePickerComponent, IgcButtonComponent, IgcIconCompone useValue: 'border' } ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, IgxRippleDirective, diff --git a/src/app/date-time-editor/date-time-editor.sample.ts b/src/app/date-time-editor/date-time-editor.sample.ts index 3b0f814113b..8bd82ce3260 100644 --- a/src/app/date-time-editor/date-time-editor.sample.ts +++ b/src/app/date-time-editor/date-time-editor.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxDateTimeEditorDirective, IgxDateTimeEditorEventArgs, IgxIconButtonDirective, IgxIconComponent, IgxInputDirective, IgxInputGroupComponent, IgxRippleDirective, IgxSuffixDirective } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxDateTimeEditorDirective, IgxDateTimeEditorEventArgs, IgxIconButtonDi selector: 'app-date-time-editor', templateUrl: './date-time-editor.sample.html', styleUrls: ['./date-time-editor.sample.css'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxInputGroupComponent, IgxInputDirective, IgxDateTimeEditorDirective, FormsModule, IgxSuffixDirective, IgxRippleDirective, IgxIconComponent, IgxIconButtonDirective] }) export class DateTimeEditorSampleComponent { diff --git a/src/app/dialog/dialog.sample.ts b/src/app/dialog/dialog.sample.ts index 8366ba7f543..6b807b312cd 100644 --- a/src/app/dialog/dialog.sample.ts +++ b/src/app/dialog/dialog.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IGX_DIALOG_DIRECTIVES, @@ -50,6 +50,7 @@ icons.forEach((icon) => { templateUrl: 'dialog.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IGX_DIALOG_DIRECTIVES, IgxButtonDirective, diff --git a/src/app/divider/divider.component.ts b/src/app/divider/divider.component.ts index 8212ef2282d..81aa3873f81 100644 --- a/src/app/divider/divider.component.ts +++ b/src/app/divider/divider.component.ts @@ -1,4 +1,4 @@ -import { Component, QueryList, ViewChildren } from '@angular/core'; +import { Component, QueryList, ViewChildren, ChangeDetectionStrategy } from '@angular/core'; import { IgxDividerDirective, IgxHintDirective, IgxIconComponent, @@ -29,6 +29,7 @@ import { IgxHintDirective ], templateUrl: './divider.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrls: ['./divider.component.scss'] }) export class DividerComponent { diff --git a/src/app/dockmanager-grid/dockmanager-grid.sample.ts b/src/app/dockmanager-grid/dockmanager-grid.sample.ts index a48674c5f65..4cdf2821cdc 100644 --- a/src/app/dockmanager-grid/dockmanager-grid.sample.ts +++ b/src/app/dockmanager-grid/dockmanager-grid.sample.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectorRef, Component, DoCheck, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, Renderer2, TemplateRef, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core'; +import { AfterViewInit, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectorRef, Component, DoCheck, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, Renderer2, TemplateRef, ViewChild, ViewContainerRef, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { AbsoluteScrollStrategy, ConnectedPositioningStrategy, DefaultSortingStrategy, GridColumnDataType, IGX_BUTTON_GROUP_DIRECTIVES, IGX_GRID_DIRECTIVES, IgxColumnComponent, IgxGridComponent, IgxIconModule, IgxOverlayOutletDirective, IgxSelectComponent, IgxSelectModule, IgxSwitchModule, OverlaySettings, SortingDirection } from 'igniteui-angular'; import { IgcDockManagerLayout, IgcDockManagerPaneType, IgcSplitPane, IgcSplitPaneOrientation } from 'igniteui-dockmanager'; import { defineCustomElements } from 'igniteui-dockmanager/loader'; @@ -13,6 +13,7 @@ defineCustomElements(); @Component({ selector: 'app-dock-slot', + changeDetection: ChangeDetectionStrategy.Eager, template: `
@@ -58,6 +59,7 @@ export class DockSlotComponent implements AfterViewInit, OnDestroy { IgxIconModule, IgxOverlayOutletDirective ], + changeDetection: ChangeDetectionStrategy.Eager, schemas: [CUSTOM_ELEMENTS_SCHEMA], }) export class GridDockManagerSampleComponent implements OnInit, OnDestroy, AfterViewInit, DoCheck { diff --git a/src/app/drag-drop/drag-drop.sample.ts b/src/app/drag-drop/drag-drop.sample.ts index ee4f7874798..d91dad68789 100644 --- a/src/app/drag-drop/drag-drop.sample.ts +++ b/src/app/drag-drop/drag-drop.sample.ts @@ -1,4 +1,4 @@ -import { ChangeDetectorRef, Component, ViewChild, ElementRef, ViewChildren, QueryList } from '@angular/core'; +import { ChangeDetectorRef, Component, ViewChild, ElementRef, ViewChildren, QueryList, ChangeDetectionStrategy } from '@angular/core'; import { NgClass, NgStyle } from '@angular/common'; import { ShadowGridSampleComponent } from './shadow-dom-grid/shadow-grid-sample'; @@ -8,6 +8,7 @@ import { DragDirection, GlobalPositionStrategy, IDragBaseEventArgs, IDragStartEv selector: 'app-drag-drop-sample', templateUrl: './drag-drop.sample.html', styleUrls: ['drag-drop.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ NgStyle, NgClass, IgxDragDirective, IgxDragIgnoreDirective, IgxDragHandleDirective, IgxDropDirective, diff --git a/src/app/drag-drop/shadow-dom-grid/shadow-grid-sample.ts b/src/app/drag-drop/shadow-dom-grid/shadow-grid-sample.ts index dfdcbe9de26..fcc76a127d7 100644 --- a/src/app/drag-drop/shadow-dom-grid/shadow-grid-sample.ts +++ b/src/app/drag-drop/shadow-dom-grid/shadow-grid-sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, OnInit, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; @Component({ @@ -6,6 +6,7 @@ import { IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; templateUrl: './shadow-grid-sample.html', styleUrls: ['./shadow-grid-sample.scss'], encapsulation: ViewEncapsulation.ShadowDom, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent] }) export class ShadowGridSampleComponent implements OnInit { diff --git a/src/app/drop-down/drop-down-virtual/drop-down-virtual.component.html b/src/app/drop-down/drop-down-virtual/drop-down-virtual.component.html index 8a308880bac..83e458a6413 100644 --- a/src/app/drop-down/drop-down-virtual/drop-down-virtual.component.html +++ b/src/app/drop-down/drop-down-virtual/drop-down-virtual.component.html @@ -1,12 +1,31 @@ +
- - - - - @for(item of items; track item) { - - {{ item.field }} - - } - - + + + + +
+ + + @for(item of items; track item) { + + {{ item.field }} + + } + + +
+ @for(item of items; track item.field) { +
{{ item.field }}
+ } +
+ + + @for(item of items; track item) { + + {{ item.field }} + + } + + + + @for(foodGroup of foods; track foodGroup) { + + @for(food of foodGroup.entries; track food) { + + {{ food.name }} + + } + + } + + +
+ + + + + @for(item of items; track item) { + - Clear selection - + {{ item.field }} + + } + +
diff --git a/src/app/drop-down/drop-down.sample.ts b/src/app/drop-down/drop-down.sample.ts index 582819db69f..f06120c608d 100644 --- a/src/app/drop-down/drop-down.sample.ts +++ b/src/app/drop-down/drop-down.sample.ts @@ -1,10 +1,11 @@ import { - Component, - OnInit, - ViewChild, - ElementRef, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, + Component, + OnInit, + ViewChild, + ElementRef, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + ChangeDetectionStrategy } from '@angular/core'; import { foods } from './foods'; import { @@ -82,6 +83,7 @@ icons.forEach((icon) => { IgxIconComponent, IgSizeDirective ], + changeDetection: ChangeDetectionStrategy.Eager, schemas: [CUSTOM_ELEMENTS_SCHEMA] }) export class DropDownSampleComponent implements OnInit { diff --git a/src/app/expansion-panel/expansion-panel-sample.ts b/src/app/expansion-panel/expansion-panel-sample.ts index d5982957c5e..6a1dad1decd 100644 --- a/src/app/expansion-panel/expansion-panel-sample.ts +++ b/src/app/expansion-panel/expansion-panel-sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IGX_EXPANSION_PANEL_DIRECTIVES } from 'igniteui-angular'; import { Properties, @@ -17,6 +17,7 @@ defineComponents(IgcExpansionPanelComponent); templateUrl: './expansion-panel-sample.html', styleUrls: ['expansion-panel-sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_EXPANSION_PANEL_DIRECTIVES] }) export class ExpansionPanelSampleComponent { diff --git a/src/app/gird-cell-styling/grid-cell-styling.sample.ts b/src/app/gird-cell-styling/grid-cell-styling.sample.ts index 07c2a00de5b..44806df78e4 100644 --- a/src/app/gird-cell-styling/grid-cell-styling.sample.ts +++ b/src/app/gird-cell-styling/grid-cell-styling.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { JsonPipe } from '@angular/common'; import { SAMPLE_DATA, HIERARCHICAL_SAMPLE_DATA } from '../shared/sample-data'; @@ -9,6 +9,7 @@ import { IgxActionStripComponent, IgxButtonDirective, IgxColumnComponent, IgxGri selector: 'app-grid-cell-styling.sample', styleUrls: ['grid-cell-styling.sample.scss'], templateUrl: 'grid-cell-styling.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxInputGroupComponent, IgxInputDirective, IgxHintDirective, IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxTreeGridComponent, JsonPipe] }) export class GridCellStylingSampleComponent implements OnInit { diff --git a/src/app/grid-add-row/grid-add-row.sample.ts b/src/app/grid-add-row/grid-add-row.sample.ts index f436435263c..4a2caa04259 100644 --- a/src/app/grid-add-row/grid-add-row.sample.ts +++ b/src/app/grid-add-row/grid-add-row.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IRowDataCancelableEventArgs, IRowDataEventArgs, IgxActionStripComponent, IgxButtonDirective, IgxCardComponent, IgxCardContentDirective, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxColumnComponent, IgxGridComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent, IgxInputDirective, IgxInputGroupComponent, IgxLabelDirective, IgxPaginatorComponent, IgxSelectComponent, IgxSelectItemComponent } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IRowDataCancelableEventArgs, IRowDataEventArgs, IgxActionStripComponent selector: 'app-grid-add-row', styleUrls: ['grid-add-row.sample.scss'], templateUrl: `grid-add-row.sample.html`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxPaginatorComponent, IgxCardComponent, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxCardContentDirective, IgxButtonDirective, IgxSelectComponent, FormsModule, IgxSelectItemComponent, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective] }) export class GridAddRowSampleComponent implements OnInit { diff --git a/src/app/grid-auto-size/grid-auto-size.sample.ts b/src/app/grid-auto-size/grid-auto-size.sample.ts index 07d8b95883d..e0f61558b53 100644 --- a/src/app/grid-auto-size/grid-auto-size.sample.ts +++ b/src/app/grid-auto-size/grid-auto-size.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { SAMPLE_DATA } from '../shared/sample-data'; import { GridSelectionMode, IgxGridComponent, IGX_BUTTON_GROUP_DIRECTIVES, IGX_GRID_DIRECTIVES } from 'igniteui-angular'; @@ -8,6 +8,7 @@ import { GridSelectionMode, IgxGridComponent, IGX_BUTTON_GROUP_DIRECTIVES, IGX_G selector: 'app-grid-column-moving-sample', styleUrls: ['grid-auto-size.sample.scss'], templateUrl: 'grid-auto-size.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_GRID_DIRECTIVES, IGX_BUTTON_GROUP_DIRECTIVES] }) diff --git a/src/app/grid-cell-api/grid-cell-api.sample.ts b/src/app/grid-cell-api/grid-cell-api.sample.ts index 6959ea29f40..488a55b81e7 100644 --- a/src/app/grid-cell-api/grid-cell-api.sample.ts +++ b/src/app/grid-cell-api/grid-cell-api.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, Renderer2 } from '@angular/core'; +import { Component, OnInit, Renderer2, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxGridComponent, @@ -22,6 +22,7 @@ import { HIERARCHICAL_SAMPLE_DATA, SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-cell-api-sample', styleUrls: ['grid-cell-api.sample.scss'], templateUrl: 'grid-cell-api.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxGridComponent, IgxPaginatorComponent, IgxGridDetailTemplateDirective, IgxColumnComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxButtonDirective, IgxIconComponent, IgxTreeGridComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent] }) diff --git a/src/app/grid-cellEditing/grid-cellEditing.component.ts b/src/app/grid-cellEditing/grid-cellEditing.component.ts index bbae42e5430..954231b6804 100644 --- a/src/app/grid-cellEditing/grid-cellEditing.component.ts +++ b/src/app/grid-cellEditing/grid-cellEditing.component.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, ViewChild } from '@angular/core'; +import { Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { GridSelectionMode, @@ -22,6 +22,7 @@ import { data, dataWithoutPK } from '../shared/data'; selector: 'app-grid-cellediting', templateUrl: 'grid-cellEditing.component.html', styleUrl: 'grid-cellEditing.component.scss', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IGX_SELECT_DIRECTIVES, diff --git a/src/app/grid-cellMerging/grid-cellMerging.component.ts b/src/app/grid-cellMerging/grid-cellMerging.component.ts index 0bc7007b807..0a3caa90bf0 100644 --- a/src/app/grid-cellMerging/grid-cellMerging.component.ts +++ b/src/app/grid-cellMerging/grid-cellMerging.component.ts @@ -1,4 +1,4 @@ -import { Component, OnDestroy, ViewChild, inject, signal } from '@angular/core'; +import { Component, OnDestroy, ViewChild, inject, signal, ChangeDetectionStrategy } from '@angular/core'; import { DOCUMENT } from '@angular/common'; import { FormsModule } from '@angular/forms'; import { @@ -33,6 +33,7 @@ import { INVOICE_DATA } from '../shared/invoiceData'; selector: 'app-grid-cellMerging', templateUrl: 'grid-cellMerging.component.html', styleUrl: 'grid-cellMerging.component.scss', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IgxColumnComponent, diff --git a/src/app/grid-clipboard/grid-clipboard.sample.ts b/src/app/grid-clipboard/grid-clipboard.sample.ts index 43e33dce55a..d377fb31dc2 100644 --- a/src/app/grid-clipboard/grid-clipboard.sample.ts +++ b/src/app/grid-clipboard/grid-clipboard.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxButtonDirective, IgxIconComponent, IgxSwitchComponent, IGX_GRID_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES } from 'igniteui-angular'; @@ -7,6 +7,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; @Component({ selector: 'app-grid-clipboard-sample', templateUrl: './grid-clipboard.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IGX_GRID_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES, IgxIconComponent, IgxButtonDirective, IgxSwitchComponent] }) export class GridClipboardSampleComponent { diff --git a/src/app/grid-column-actions/grid-column-actions.sample.ts b/src/app/grid-column-actions/grid-column-actions.sample.ts index 38898d7477e..14b5a920b35 100644 --- a/src/app/grid-column-actions/grid-column-actions.sample.ts +++ b/src/app/grid-column-actions/grid-column-actions.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnGroupingDirective } from './custom-action-directive'; import { IColumnToggledEventArgs, IGX_GRID_DIRECTIVES } from 'igniteui-angular'; @@ -9,6 +9,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-column-actions-sample', styleUrls: ['grid-column-actions.sample.scss'], templateUrl: 'grid-column-actions.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxColumnGroupingDirective, IGX_GRID_DIRECTIVES] }) export class GridColumnActionsSampleComponent implements OnInit { diff --git a/src/app/grid-column-groups/grid-column-groups.sample.ts b/src/app/grid-column-groups/grid-column-groups.sample.ts index 4409bb09d8a..6e91b04941a 100644 --- a/src/app/grid-column-groups/grid-column-groups.sample.ts +++ b/src/app/grid-column-groups/grid-column-groups.sample.ts @@ -1,10 +1,11 @@ -import { Component, HostBinding, ViewChild } from '@angular/core'; +import { Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ColumnPinningPosition, GridSelectionMode, IgxButtonDirective, IgxButtonGroupComponent, IgxCollapsibleIndicatorTemplateDirective, IgxColumnComponent, IgxColumnGroupComponent, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxIconComponent, IgxGridToolbarExporterComponent } from 'igniteui-angular'; @Component({ selector: 'app-grid-column-groups-sample', styleUrls: ['grid-column-groups.sample.scss'], templateUrl: 'grid-column-groups.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxCollapsibleIndicatorTemplateDirective, IgxIconComponent, diff --git a/src/app/grid-column-moving/grid-column-moving.sample.ts b/src/app/grid-column-moving/grid-column-moving.sample.ts index 2771f54c5ee..98a9ece30f5 100644 --- a/src/app/grid-column-moving/grid-column-moving.sample.ts +++ b/src/app/grid-column-moving/grid-column-moving.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -10,6 +10,7 @@ import { ColumnPinningPosition, IgxButtonDirective, IgxButtonGroupComponent, Igx selector: 'app-grid-column-moving-sample', styleUrls: ['grid-column-moving.sample.scss'], templateUrl: 'grid-column-moving.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxInputGroupComponent, FormsModule, IgxInputDirective, IgxLabelDirective, IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxPaginatorComponent, IgxColumnGroupComponent, IgxCellHeaderTemplateDirective, IgxCollapsibleIndicatorTemplateDirective, IgxIconComponent] }) export class GridColumnMovingSampleComponent implements OnInit { diff --git a/src/app/grid-column-pinning/grid-column-pinning.sample.ts b/src/app/grid-column-pinning/grid-column-pinning.sample.ts index e34efc4adf9..0997760be0d 100644 --- a/src/app/grid-column-pinning/grid-column-pinning.sample.ts +++ b/src/app/grid-column-pinning/grid-column-pinning.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { ColumnPinningPosition, GridSelectionMode, IPinningConfig, IgxButtonDirective, IgxColumnComponent, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleComponent, IgxSwitchComponent, RowPinningPosition, RowType } from 'igniteui-angular'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -10,6 +10,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-column-pinning-sample', styleUrls: ['grid-column-pinning.sample.scss'], templateUrl: 'grid-column-pinning.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarTitleComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxColumnComponent, IgxSwitchComponent, FormsModule] }) export class GridColumnPinningSampleComponent implements OnInit { diff --git a/src/app/grid-column-resizing/grid-column-resizing.sample.ts b/src/app/grid-column-resizing/grid-column-resizing.sample.ts index ad060344e22..497070600f3 100644 --- a/src/app/grid-column-resizing/grid-column-resizing.sample.ts +++ b/src/app/grid-column-resizing/grid-column-resizing.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -7,6 +7,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-column-resizing-sample', styleUrls: ['grid-column-resizing.sample.scss'], templateUrl: 'grid-column-resizing.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxButtonDirective] }) export class GridColumnResizingSampleComponent implements OnInit { diff --git a/src/app/grid-column-selection/grid-column-selection.sample.ts b/src/app/grid-column-selection/grid-column-selection.sample.ts index f3e810f4971..c177a12127d 100644 --- a/src/app/grid-column-selection/grid-column-selection.sample.ts +++ b/src/app/grid-column-selection/grid-column-selection.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, Pipe, PipeTransform, AfterViewInit, ChangeDetectorRef, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, Pipe, PipeTransform, AfterViewInit, ChangeDetectorRef, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -61,6 +61,7 @@ export class GridColumnSelectionFilterPipe implements PipeTransform { selector: 'app-grid-column-selection-sample', styleUrls: ['grid-column-selection.sample.scss'], templateUrl: 'grid-column-selection.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxToggleActionDirective, IgxDropDownItemNavigationDirective, IgxDropDownComponent, IgxDropDownItemComponent, IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxPaginatorComponent, IgxRippleDirective, IgxCheckboxComponent, IgxInputGroupComponent, FormsModule, IgxInputDirective, IgxColumnComponent, IgxColumnGroupComponent, IgxSwitchComponent, GridColumnSelectionFilterPipe, IgxLabelDirective, IgxIconComponent, IgxSuffixDirective, IgxGridToolbarTitleComponent] }) export class GridColumnSelectionSampleComponent implements OnInit, AfterViewInit { diff --git a/src/app/grid-column-types/grid-column-types.sample.ts b/src/app/grid-column-types/grid-column-types.sample.ts index bed49200f90..e719f26c067 100644 --- a/src/app/grid-column-types/grid-column-types.sample.ts +++ b/src/app/grid-column-types/grid-column-types.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { FilterMode, IgxButtonGroupComponent, IgxColumnComponent, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxIconService } from 'igniteui-angular'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -7,6 +7,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-column-types-sample', styleUrls: ['grid-column-types.sample.scss'], templateUrl: 'grid-column-types.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxColumnComponent] }) export class GridColumnTypesSampleComponent implements OnInit { diff --git a/src/app/grid-data-analysis/grid-data-analysis.component.ts b/src/app/grid-data-analysis/grid-data-analysis.component.ts index f35c4039b80..76aaebb8a30 100644 --- a/src/app/grid-data-analysis/grid-data-analysis.component.ts +++ b/src/app/grid-data-analysis/grid-data-analysis.component.ts @@ -1,5 +1,5 @@ // tslint:disable: max-line-length -import { Component, OnInit, ViewChild, AfterViewInit } from '@angular/core'; +import { Component, OnInit, ViewChild, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { CommonModule } from '@angular/common'; import { HammerModule } from '@angular/platform-browser'; import { IgxColumnComponent } from 'igniteui-angular/grids/core'; @@ -11,6 +11,7 @@ import { FinancialData } from 'src/app/data/FinancialData'; selector: 'grid-data-analysis', templateUrl: './grid-data-analysis.component.html', styleUrls: ['./grid-data-analysis.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ CommonModule, IgxGridComponent, diff --git a/src/app/grid-esf-load-on-demand/grid-esf-load-on-demand.component.ts b/src/app/grid-esf-load-on-demand/grid-esf-load-on-demand.component.ts index 09e546d4268..f9a95ee6ce9 100644 --- a/src/app/grid-esf-load-on-demand/grid-esf-load-on-demand.component.ts +++ b/src/app/grid-esf-load-on-demand/grid-esf-load-on-demand.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridComponent, IgxColumnComponent, IFilteringExpressionsTree, GridSelectionMode, IgxButtonGroupComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent } from 'igniteui-angular'; import { GridESFLoadOnDemandService } from './grid-esf-load-on-demand.service'; @@ -6,6 +6,7 @@ import { GridESFLoadOnDemandService } from './grid-esf-load-on-demand.service'; selector: 'app-grid-esf-load-on-demand', templateUrl: './grid-esf-load-on-demand.component.html', styleUrls: ['./grid-esf-load-on-demand.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnComponent] }) export class GridEsfLoadOnDemandComponent implements OnInit { diff --git a/src/app/grid-events/grid-events.component.ts b/src/app/grid-events/grid-events.component.ts index d84b89fee23..1f0212950c0 100644 --- a/src/app/grid-events/grid-events.component.ts +++ b/src/app/grid-events/grid-events.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ElementRef, Renderer2 } from '@angular/core'; +import { Component, ViewChild, ElementRef, Renderer2, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridComponent, ISortingExpression, IPinColumnEventArgs, @@ -27,6 +27,7 @@ import { data } from '../shared/data'; selector: 'app-grid-events', styleUrls: ['grid-events.component.scss'], templateUrl: 'grid-events.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSwitchComponent, IgxInputGroupComponent, IgxInputDirective, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarAdvancedFilteringComponent, IgxColumnComponent, IgxPaginatorComponent, IgxButtonDirective, IgxIconComponent] }) export class GridEventsComponent { diff --git a/src/app/grid-export/grid-export.sample.ts b/src/app/grid-export/grid-export.sample.ts index fe79e6e772e..18ae830e1fe 100644 --- a/src/app/grid-export/grid-export.sample.ts +++ b/src/app/grid-export/grid-export.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { DatePipe } from '@angular/common'; import { HGRID_DATA } from './hGridData'; @@ -58,6 +58,7 @@ class HGridChildSummary { @Component({ selector: 'app-grid-export-sample', templateUrl: 'grid-export.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxPaginatorComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxCellHeaderTemplateDirective, IgxIconComponent, IgxTreeGridComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, DatePipe] }) export class GridExportComponent { diff --git a/src/app/grid-external-filtering/grid-external-filtering.sample.ts b/src/app/grid-external-filtering/grid-external-filtering.sample.ts index 1be13309e4b..efe6572f530 100644 --- a/src/app/grid-external-filtering/grid-external-filtering.sample.ts +++ b/src/app/grid-external-filtering/grid-external-filtering.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, AfterViewInit, ChangeDetectorRef, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, AfterViewInit, ChangeDetectorRef, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { FilterMode, FilteringExpressionsTree, FilteringLogic, GridSelectionMode, IChangeCheckboxEventArgs, IgxAdvancedFilteringDialogComponent, IgxButtonDirective, IgxButtonGroupComponent, IgxCSVTextDirective, IgxCheckboxComponent, IgxColumnComponent, IgxExcelTextDirective, IgxFlexDirective, IgxGridComponent, IgxGridExcelStyleFilteringComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxLabelDirective, IgxLayoutDirective, IgxSelectComponent, IgxSelectItemComponent, IgxStringFilteringOperand } from 'igniteui-angular'; @@ -8,6 +8,7 @@ import { FilterMode, FilteringExpressionsTree, FilteringLogic, GridSelectionMode selector: 'app-grid-external-filtering-sample', styleUrls: ['grid-external-filtering.sample.scss'], templateUrl: 'grid-external-filtering.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxFlexDirective, IgxLayoutDirective, IgxButtonGroupComponent, IgxSelectComponent, IgxLabelDirective, IgxSelectItemComponent, IgxGridExcelStyleFilteringComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxColumnComponent, IgxAdvancedFilteringDialogComponent, IgxCheckboxComponent, FormsModule, IgxButtonDirective] }) export class GridExternalFilteringComponent implements OnInit, AfterViewInit { diff --git a/src/app/grid-filter-template/grid-filter-template.sample.ts b/src/app/grid-filter-template/grid-filter-template.sample.ts index 7708610da43..80669873223 100644 --- a/src/app/grid-filter-template/grid-filter-template.sample.ts +++ b/src/app/grid-filter-template/grid-filter-template.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { ColumnType, GridColumnDataType, GridSelectionMode, IGX_INPUT_GROUP_DIRECTIVES, IgxColumnComponent, IgxDateFilteringOperand, IgxFilterCellTemplateDirective, IgxGridComponent, IgxIconComponent, IgxNumberFilteringOperand, IgxStringFilteringOperand } from 'igniteui-angular'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -9,6 +9,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-filter-template-sample', styleUrls: ['grid-filter-template.sample.scss'], templateUrl: 'grid-filter-template.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxFilterCellTemplateDirective, IgxIconComponent, IGX_INPUT_GROUP_DIRECTIVES] }) diff --git a/src/app/grid-filtering/grid-filtering.sample.ts b/src/app/grid-filtering/grid-filtering.sample.ts index b3367b06ed7..6e9647c0d4c 100644 --- a/src/app/grid-filtering/grid-filtering.sample.ts +++ b/src/app/grid-filtering/grid-filtering.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { FilterMode, FilteringExpressionsTree, FilteringLogic, FormattedValuesFilteringStrategy, GridSelectionMode, IChangeCheckboxEventArgs, IGX_GRID_DIRECTIVES, IgxButtonDirective, IgxButtonGroupComponent, IgxCheckboxComponent, IgxGridComponent, IgxIconComponent, IgxStringFilteringOperand } from 'igniteui-angular'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -9,6 +9,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; selector: 'app-grid-filtering-sample', styleUrls: ['grid-filtering.sample.scss'], templateUrl: 'grid-filtering.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IGX_GRID_DIRECTIVES, diff --git a/src/app/grid-finjs/controllers.component.ts b/src/app/grid-finjs/controllers.component.ts index 15b72d0dec3..47654a0a035 100644 --- a/src/app/grid-finjs/controllers.component.ts +++ b/src/app/grid-finjs/controllers.component.ts @@ -1,4 +1,4 @@ -import { Component, EventEmitter, OnDestroy, OnInit, Output, ViewChild } from '@angular/core'; +import { Component, EventEmitter, OnDestroy, OnInit, Output, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { timer } from 'rxjs'; @@ -14,6 +14,7 @@ import { selector: 'app-finjs-controllers', styleUrls: ['./controllers.component.scss'], templateUrl: './controllers.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSwitchComponent, IgxSliderComponent, FormsModule, IgxButtonGroupComponent] }) export class ControllerComponent implements OnInit, OnDestroy { diff --git a/src/app/grid-finjs/grid-finjs.component.ts b/src/app/grid-finjs/grid-finjs.component.ts index 46bebdf85e9..97b4aa9a448 100644 --- a/src/app/grid-finjs/grid-finjs.component.ts +++ b/src/app/grid-finjs/grid-finjs.component.ts @@ -1,7 +1,8 @@ import { - Component, - Input, - ViewChild + Component, + Input, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { CurrencyPipe } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -46,6 +47,7 @@ const GROUPING_EXPRESSIONS: IGroupingExpression[] = [{ selector: 'app-finjs-grid', styleUrls: ['./grid-finjs.component.scss'], templateUrl: './grid-finjs.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, CurrencyPipe, IGX_GRID_DIRECTIVES, IGX_SELECT_DIRECTIVES, IgxFocusDirective, IgxIconComponent, IgxRippleDirective, IgxIconButtonDirective] }) export class GridFinJSComponent { diff --git a/src/app/grid-finjs/main.component.ts b/src/app/grid-finjs/main.component.ts index b30705273f4..0119a7f29d7 100644 --- a/src/app/grid-finjs/main.component.ts +++ b/src/app/grid-finjs/main.component.ts @@ -1,4 +1,4 @@ -import { Component, EventEmitter, OnDestroy, Output, ViewChild } from '@angular/core'; +import { Component, EventEmitter, OnDestroy, Output, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe } from '@angular/common'; import { Subject } from 'rxjs'; @@ -13,6 +13,7 @@ import { GridFinJSComponent } from './grid-finjs.component'; selector: 'app-finjs-main', styleUrls: ['./main.component.scss'], templateUrl: './main.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ControllerComponent, GridFinJSComponent, AsyncPipe] }) export class MainComponent implements OnDestroy { diff --git a/src/app/grid-flex-layout/grid-flex.sample.ts b/src/app/grid-flex-layout/grid-flex.sample.ts index 61c832788ec..beac0aaf475 100644 --- a/src/app/grid-flex-layout/grid-flex.sample.ts +++ b/src/app/grid-flex-layout/grid-flex.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, OnInit, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnComponent, IgxFlexDirective, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxHierarchicalGridComponent, IgxLayoutDirective, IgxPaginatorComponent, IgxRowIslandComponent, IgxTreeGridComponent } from 'igniteui-angular'; @@ -7,6 +7,7 @@ import { IgxColumnComponent, IgxFlexDirective, IgxGridComponent, IgxGridToolbarA selector: 'app-grid-flex-sample', styleUrls: ['grid-flex.sample.scss'], templateUrl: 'grid-flex.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxLayoutDirective, IgxFlexDirective, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnComponent, IgxPaginatorComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxTreeGridComponent] }) diff --git a/src/app/grid-formatting/grid-formatting.component.ts b/src/app/grid-formatting/grid-formatting.component.ts index 49793ff801f..0f9d3522bb7 100644 --- a/src/app/grid-formatting/grid-formatting.component.ts +++ b/src/app/grid-formatting/grid-formatting.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, OnInit, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { DatePipe, AsyncPipe } from '@angular/common'; import { Observable } from 'rxjs'; @@ -15,6 +15,7 @@ const ORDERS_URl = 'https://services.odata.org/V4/Northwind/Northwind.svc/Orders templateUrl: 'grid-formatting.component.html', styleUrls: ['grid-formatting.component.scss'], providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxPaginatorComponent, IgxTreeGridComponent, AsyncPipe] }) export class GridFormattingComponent implements OnInit, AfterViewInit { diff --git a/src/app/grid-groupby/grid-groupby.sample.ts b/src/app/grid-groupby/grid-groupby.sample.ts index a75a1b4823b..14636e4d9ec 100644 --- a/src/app/grid-groupby/grid-groupby.sample.ts +++ b/src/app/grid-groupby/grid-groupby.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { DefaultSortingStrategy, GridSummaryCalculationMode, GridSummaryPosition, GroupMemberCountSortingStrategy, IRowSelectionEventArgs, ISortingExpression, ISortingOptions, IgxButtonDirective, IgxButtonGroupComponent, IgxColumnComponent, IgxDropDownComponent, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxSwitchComponent, IgxToggleActionDirective, SortingDirection } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { DefaultSortingStrategy, GridSummaryCalculationMode, GridSummaryPosition selector: 'app-grid-sample', styleUrls: ['grid-groupby.sample.scss'], templateUrl: 'grid-groupby.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxSwitchComponent, FormsModule, diff --git a/src/app/grid-lite/grid-lite.sample.ts b/src/app/grid-lite/grid-lite.sample.ts index 3ad624162f4..5e67d86eac3 100644 --- a/src/app/grid-lite/grid-lite.sample.ts +++ b/src/app/grid-lite/grid-lite.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, viewChild } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, viewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridLiteCellTemplateDirective, IgxGridLiteColumnComponent, IgxGridLiteComponent, IgxGridLiteFilteringExpression, IgxGridLiteHeaderTemplateDirective, IgxGridLiteSortingExpression, IgxGridLiteSortingOptions } from "igniteui-angular/grids/lite"; import { GridLiteDataService } from './data.service'; import { IgxCheckboxComponent } from 'igniteui-angular'; @@ -7,6 +7,7 @@ import { IgxCheckboxComponent } from 'igniteui-angular'; templateUrl: 'grid-lite.sample.html', styleUrls: ['grid-lite.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCheckboxComponent, IgxGridLiteComponent, IgxGridLiteColumnComponent, IgxGridLiteHeaderTemplateDirective, IgxGridLiteCellTemplateDirective] }) export class GridLiteSampleComponent { diff --git a/src/app/grid-localization/grid-localization.sample.ts b/src/app/grid-localization/grid-localization.sample.ts index 3d82c467ac0..5b1f26f9c38 100644 --- a/src/app/grid-localization/grid-localization.sample.ts +++ b/src/app/grid-localization/grid-localization.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, OnInit, ViewChild } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { formatDate, registerLocaleData } from '@angular/common'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; @@ -42,6 +42,7 @@ import { getDateFormatter } from 'igniteui-i18n-core'; selector: 'app-grid-localization', styleUrls: ['./grid-localization.sample.scss'], templateUrl: 'grid-localization.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, ReactiveFormsModule, diff --git a/src/app/grid-master-detail/grid-master-detail.sample.ts b/src/app/grid-master-detail/grid-master-detail.sample.ts index 1d5474f10bd..98d979610b6 100644 --- a/src/app/grid-master-detail/grid-master-detail.sample.ts +++ b/src/app/grid-master-detail/grid-master-detail.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, TemplateRef, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, TemplateRef, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxCellTemplateDirective, IgxColumnComponent, IgxGridComponent, IgxGridDetailTemplateDirective, IgxGridStateDirective } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxButtonDirective, IgxCellTemplateDirective, IgxColumnComponent, IgxGr selector: 'app-grid-sample', styleUrls: ['grid-master-detail.sample.scss'], templateUrl: 'grid-master-detail.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxGridComponent, IgxGridStateDirective, IgxColumnComponent, IgxCellTemplateDirective, IgxGridDetailTemplateDirective] }) export class GridMasterDetailSampleComponent implements OnInit { diff --git a/src/app/grid-mrl-custom-navigation/grid-mrl-custom-navigation.ts b/src/app/grid-mrl-custom-navigation/grid-mrl-custom-navigation.ts index 3920b3f309d..9ceacdb04ea 100644 --- a/src/app/grid-mrl-custom-navigation/grid-mrl-custom-navigation.ts +++ b/src/app/grid-mrl-custom-navigation/grid-mrl-custom-navigation.ts @@ -1,9 +1,10 @@ -import { Component, HostBinding, ViewChild } from '@angular/core'; +import { Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridComponent, GridSelectionMode, IgxButtonGroupComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxIconModule } from 'igniteui-angular'; @Component({ selector: 'app-grid-mrl-custom-navigation-sample', templateUrl: 'grid-mrl-custom-navigation.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxColumnGroupComponent, IgxIconModule] }) export class GridMRLCustomNavigationSampleComponent { diff --git a/src/app/grid-multi-row-layout-config/grid-mrl-config.sample.ts b/src/app/grid-multi-row-layout-config/grid-mrl-config.sample.ts index 0cfa14f46de..7b6c335dbd9 100644 --- a/src/app/grid-multi-row-layout-config/grid-mrl-config.sample.ts +++ b/src/app/grid-multi-row-layout-config/grid-mrl-config.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ElementRef, ChangeDetectorRef, ViewChildren, QueryList } from '@angular/core'; +import { Component, ViewChild, ElementRef, ChangeDetectorRef, ViewChildren, QueryList, ChangeDetectionStrategy } from '@angular/core'; import { NgStyle } from '@angular/common'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -19,6 +19,7 @@ interface ColumnConfig { selector: 'app-grid-mrl-config-sample', templateUrl: 'grid-mrl-config.sample.html', styleUrls: ['grid-mrl-config.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxDragDirective, NgStyle, IgxDropDirective, IgxButtonDirective, IgxGridComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxDialogComponent] }) export class GridMRLConfigSampleComponent { diff --git a/src/app/grid-multi-row-layout/grid-mrl.sample.ts b/src/app/grid-multi-row-layout/grid-mrl.sample.ts index 1f3821ace4c..9cdd95cbcce 100644 --- a/src/app/grid-multi-row-layout/grid-mrl.sample.ts +++ b/src/app/grid-multi-row-layout/grid-mrl.sample.ts @@ -1,10 +1,11 @@ -import { Component, HostBinding, ViewChild } from '@angular/core'; +import { Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ColumnPinningPosition, GridSelectionMode, IgxActionStripComponent, IgxButtonDirective, IgxButtonGroupComponent, IgxColumnComponent, IgxColumnLayoutComponent, IgxGridComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent } from 'igniteui-angular'; @Component({ selector: 'app-grid-mrl-sample', templateUrl: 'grid-mrl.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnLayoutComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxButtonDirective] }) export class GridMRLSampleComponent { diff --git a/src/app/grid-nested-props/grid-nested-props.sample.ts b/src/app/grid-nested-props/grid-nested-props.sample.ts index 1575e658483..b98372217af 100644 --- a/src/app/grid-nested-props/grid-nested-props.sample.ts +++ b/src/app/grid-nested-props/grid-nested-props.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { GridColumnDataType, IGX_GRID_DIRECTIVES, IgxTreeGridComponent } from 'igniteui-angular'; interface GridConfig { @@ -10,6 +10,7 @@ interface GridConfig { @Component({ selector: 'app-grid-nested-props', templateUrl: 'grid-nested-props.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_GRID_DIRECTIVES, IgxTreeGridComponent] }) export class GridNestedPropsSampleComponent { diff --git a/src/app/grid-pdf-export/grid-pdf-export.sample.ts b/src/app/grid-pdf-export/grid-pdf-export.sample.ts index 410ca32f6e6..6767df628bb 100644 --- a/src/app/grid-pdf-export/grid-pdf-export.sample.ts +++ b/src/app/grid-pdf-export/grid-pdf-export.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, inject } from '@angular/core'; +import { Component, ViewChild, inject, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxGridComponent, @@ -42,6 +42,7 @@ import { IgxInputDirective, FormsModule ], + changeDetection: ChangeDetectionStrategy.Eager, providers: [IgxPdfExporterService] }) export class GridPdfExportSampleComponent { diff --git a/src/app/grid-percentage-columns/grid-percantge-widths.sample.ts b/src/app/grid-percentage-columns/grid-percantge-widths.sample.ts index c5e43ff3b19..e0085293411 100644 --- a/src/app/grid-percentage-columns/grid-percantge-widths.sample.ts +++ b/src/app/grid-percentage-columns/grid-percantge-widths.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { CurrencyPipe, DatePipe } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -10,6 +10,7 @@ import { IColumnPipeArgs, IgxButtonDirective, IgxCardComponent, IgxCardContentDi selector: 'app-grid-percantge-widths.sample', templateUrl: 'grid-percantge-widths.sample.html', styleUrls: ['grid-percantge-widths.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxCardComponent, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxCardContentDirective, IgxInputGroupComponent, IgxLabelDirective, FormsModule, IgxInputDirective, IgxSelectComponent, IgxSelectItemComponent, IgxButtonDirective, CurrencyPipe, DatePipe] }) export class GridColumnPercentageWidthsSampleComponent implements OnInit { diff --git a/src/app/grid-performance/grid-performance.sample.ts b/src/app/grid-performance/grid-performance.sample.ts index 734539ae64d..17b0c376fc4 100644 --- a/src/app/grid-performance/grid-performance.sample.ts +++ b/src/app/grid-performance/grid-performance.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { GridSelectionMode, IgxColumnComponent, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { GridSelectionMode, IgxColumnComponent, IgxGridComponent, IgxGridToolbar selector: 'app-grid-performance-sample', templateUrl: 'grid-performance.sample.html', styleUrls: ['grid-performance.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxColumnComponent] }) diff --git a/src/app/grid-re-create/grid-re-create.sample.ts b/src/app/grid-re-create/grid-re-create.sample.ts index 3a06e4a6fda..48835cc0827 100644 --- a/src/app/grid-re-create/grid-re-create.sample.ts +++ b/src/app/grid-re-create/grid-re-create.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; @@ -9,6 +9,7 @@ import { IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; standalone: true, providers: [ ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridRecreateSampleComponent implements OnInit { diff --git a/src/app/grid-remote-paging/grid-remote-paging.sample.ts b/src/app/grid-remote-paging/grid-remote-paging.sample.ts index 21a3853e39a..fbc0928de56 100644 --- a/src/app/grid-remote-paging/grid-remote-paging.sample.ts +++ b/src/app/grid-remote-paging/grid-remote-paging.sample.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, Component, OnDestroy, OnInit, ViewChild } from '@angular/core'; +import { AfterViewInit, Component, OnDestroy, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -10,6 +10,7 @@ import { GridPagingMode, IgxButtonDirective, IgxCardComponent, IgxCardContentDir selector: 'app-grid-remote-paging-sample', templateUrl: 'grid-remote-paging.sample.html', providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_GRID_DIRECTIVES, IgxPaginatorComponent, IgxCardComponent, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxCardContentDirective, IgxButtonDirective, IgxSelectComponent, FormsModule, IgxSelectItemComponent, AsyncPipe] }) export class GridRemotePagingSampleComponent implements OnInit, AfterViewInit, OnDestroy { diff --git a/src/app/grid-remote-virtualization-with-scroll/grid-remote-virtualization-scroll.sample.ts b/src/app/grid-remote-virtualization-with-scroll/grid-remote-virtualization-scroll.sample.ts index 7e494841855..29c5a80ee38 100644 --- a/src/app/grid-remote-virtualization-with-scroll/grid-remote-virtualization-scroll.sample.ts +++ b/src/app/grid-remote-virtualization-with-scroll/grid-remote-virtualization-scroll.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ChangeDetectorRef, OnInit, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, ChangeDetectorRef, OnInit, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe } from '@angular/common'; import { IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; import { debounceTime } from 'rxjs/operators'; @@ -8,6 +8,7 @@ import { RemoteVirtService } from '../shared/remoteProductsData.service'; selector: 'app-grid-remote-virtualization-scroll', templateUrl: 'grid-remote-virtualization-scroll.sample.html', providers: [RemoteVirtService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, AsyncPipe] }) diff --git a/src/app/grid-remote-virtualization/grid-remote-virtualization.sample.ts b/src/app/grid-remote-virtualization/grid-remote-virtualization.sample.ts index 5b53302738d..fd52ff487c3 100644 --- a/src/app/grid-remote-virtualization/grid-remote-virtualization.sample.ts +++ b/src/app/grid-remote-virtualization/grid-remote-virtualization.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ChangeDetectorRef, OnInit, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, ChangeDetectorRef, OnInit, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe } from '@angular/common'; import { RemoteService } from '../shared/remote.service'; @@ -8,6 +8,7 @@ import { IgxButtonDirective, IgxGridComponent } from 'igniteui-angular'; selector: 'app-grid-remote-virtualization-sample', templateUrl: 'grid-remote-virtualization.sample.html', providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxButtonDirective, AsyncPipe] }) export class GridVirtualizationSampleComponent implements OnInit, AfterViewInit { diff --git a/src/app/grid-row-api/grid-row-api.sample.ts b/src/app/grid-row-api/grid-row-api.sample.ts index 468a82af5b2..37c24859c20 100644 --- a/src/app/grid-row-api/grid-row-api.sample.ts +++ b/src/app/grid-row-api/grid-row-api.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, Renderer2, ViewChild } from '@angular/core'; +import { Component, OnInit, Renderer2, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HIERARCHICAL_SAMPLE_DATA, SAMPLE_DATA } from '../shared/sample-data'; @@ -8,6 +8,7 @@ import { GridSummaryCalculationMode, GridSummaryPosition, IPinningConfig, IgxBut selector: 'app-grid-row-api-sample', styleUrls: ['grid-row-api.sample.scss'], templateUrl: 'grid-row-api.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxGridComponent, IgxGridDetailTemplateDirective, IgxColumnComponent, IgxRowDragGhostDirective, IgxIconComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxPaginatorComponent, IgxButtonDirective, IgxTreeGridComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxPaginatorDirective] }) diff --git a/src/app/grid-row-draggable/grid-row-draggable.sample.ts b/src/app/grid-row-draggable/grid-row-draggable.sample.ts index dd412360777..e4952dc805c 100644 --- a/src/app/grid-row-draggable/grid-row-draggable.sample.ts +++ b/src/app/grid-row-draggable/grid-row-draggable.sample.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, ChangeDetectorRef, Component, HostBinding, ViewChild } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -19,6 +19,7 @@ enum DragIcon { templateUrl: 'grid-row-draggable.sample.html', styleUrls: ['grid-row-draggable.sample.scss'], providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxSwitchComponent, FormsModule, IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxIconComponent, IgxRowDragDirective, IgxRowDragGhostDirective, IgxDropDirective, IgxDragIndicatorIconDirective, IgxGridEmptyTemplateDirective, AsyncPipe] }) export class GridRowDraggableComponent implements AfterViewInit { diff --git a/src/app/grid-row-edit/grid-row-edit-sample.component.ts b/src/app/grid-row-edit/grid-row-edit-sample.component.ts index 4481d1103b9..17a37611c47 100644 --- a/src/app/grid-row-edit/grid-row-edit-sample.component.ts +++ b/src/app/grid-row-edit/grid-row-edit-sample.component.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { data } from '../shared/data'; @@ -13,6 +13,7 @@ import { GridSelectionMode, IgxCellEditorTemplateDirective, IgxCellTemplateDirec selector: 'app-grid-row-edit', styleUrls: [`grid-row-edit-sample.component.scss`], templateUrl: 'grid-row-edit-sample.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective, IgxColumnRequiredValidatorDirective, IgxCellEditorTemplateDirective, FormsModule, IgxFocusDirective, IgxCheckboxComponent, IgxButtonDirective, IgxSwitchComponent, IgxColumnGroupComponent, IgxRowEditTabStopDirective, IgxRowEditTextDirective, IgxRowEditActionsDirective, IgxPaginatorComponent, IgxToggleDirective] }) export class GridRowEditSampleComponent { diff --git a/src/app/grid-row-pinning/grid-row-pinning.sample.ts b/src/app/grid-row-pinning/grid-row-pinning.sample.ts index bf67ad8bbab..308710e421d 100644 --- a/src/app/grid-row-pinning/grid-row-pinning.sample.ts +++ b/src/app/grid-row-pinning/grid-row-pinning.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild, AfterViewInit, HostBinding } from '@angular/core'; +import { Component, OnInit, ViewChild, AfterViewInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { IgxGridComponent, @@ -28,6 +28,7 @@ import { SAMPLE_DATA } from '../shared/sample-data'; providers: [ IgxIconService ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_HIERARCHICAL_GRID_DIRECTIVES, IgxGridComponent, IgxTreeGridComponent, IgxIconComponent, GridSearchBoxComponent, IgxSwitchComponent, IgxButtonDirective] }) diff --git a/src/app/grid-row-reorder/grid-row-reorder.sample.ts b/src/app/grid-row-reorder/grid-row-reorder.sample.ts index 575c4714c1a..00342d97dfc 100644 --- a/src/app/grid-row-reorder/grid-row-reorder.sample.ts +++ b/src/app/grid-row-reorder/grid-row-reorder.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { DATA } from './nwindData'; import { IgxColumnComponent, IgxDropDirective, IgxGridComponent, IgxRowDirective } from 'igniteui-angular'; @@ -8,6 +8,7 @@ import { IgxColumnComponent, IgxDropDirective, IgxGridComponent, IgxRowDirective selector: 'app-grid-row-reorder-sample', templateUrl: 'grid-row-reorder.sample.html', styleUrls: ['grid-row-reorder.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxDropDirective, IgxColumnComponent] }) export class GridRowReorderComponent { diff --git a/src/app/grid-search-box/grid-search-box.component.ts b/src/app/grid-search-box/grid-search-box.component.ts index 175724f44ad..6c23d98b1dd 100644 --- a/src/app/grid-search-box/grid-search-box.component.ts +++ b/src/app/grid-search-box/grid-search-box.component.ts @@ -1,4 +1,4 @@ -import { Component, Input } from '@angular/core'; +import { Component, Input, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IGX_CHIPS_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES, IgxGridComponent, IgxHierarchicalGridComponent, IgxIconComponent, IgxTreeGridComponent } from 'igniteui-angular'; @@ -7,6 +7,7 @@ import { IGX_CHIPS_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES, IgxGridComponent, Igx selector: 'app-grid-search-box', styleUrls: ['./grid-search-box.component.scss'], templateUrl: './grid-search-box.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, FormsModule, IGX_INPUT_GROUP_DIRECTIVES, IGX_CHIPS_DIRECTIVES] }) export class GridSearchBoxComponent { diff --git a/src/app/grid-search/grid-search.sample.ts b/src/app/grid-search/grid-search.sample.ts index cf46bc18adf..ff158fe2b66 100644 --- a/src/app/grid-search/grid-search.sample.ts +++ b/src/app/grid-search/grid-search.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -10,6 +10,7 @@ import { GridSearchBoxComponent } from '../grid-search-box/grid-search-box.compo selector: 'app-grid-search-sample', styleUrls: ['grid-search.sample.scss'], templateUrl: 'grid-search.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_GRID_DIRECTIVES, IGX_BUTTON_GROUP_DIRECTIVES, GridSearchBoxComponent] }) diff --git a/src/app/grid-selection/grid-selection.sample.ts b/src/app/grid-selection/grid-selection.sample.ts index f2b4390b1b9..dea39cd984b 100644 --- a/src/app/grid-selection/grid-selection.sample.ts +++ b/src/app/grid-selection/grid-selection.sample.ts @@ -1,4 +1,4 @@ -import { AfterViewInit, ChangeDetectorRef, Component, ViewChild } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { Observable } from 'rxjs'; @@ -12,6 +12,7 @@ import { data } from '../shared/data'; templateUrl: 'grid-selection.sample.html', styleUrls: ['grid-selection.sample.scss'], providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, IGX_INPUT_GROUP_DIRECTIVES, diff --git a/src/app/grid-state/about.component.ts b/src/app/grid-state/about.component.ts index 310325f23a5..8520e1047cd 100644 --- a/src/app/grid-state/about.component.ts +++ b/src/app/grid-state/about.component.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { RouterLink } from '@angular/router'; import { IgxButtonDirective } from 'igniteui-angular'; @Component({ selector: 'app-about', templateUrl: './about.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, RouterLink] }) export class AboutComponent { diff --git a/src/app/grid-state/grid-state.component.ts b/src/app/grid-state/grid-state.component.ts index b4252587874..91900098f45 100644 --- a/src/app/grid-state/grid-state.component.ts +++ b/src/app/grid-state/grid-state.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild, QueryList, ViewChildren, TemplateRef } from '@angular/core'; +import { Component, OnInit, ViewChild, QueryList, ViewChildren, TemplateRef, ChangeDetectionStrategy } from '@angular/core'; import { NgTemplateOutlet } from '@angular/common'; import { Router, RouterLink } from '@angular/router'; import { FormsModule } from '@angular/forms'; @@ -51,6 +51,7 @@ interface GridState { selector: 'app-grid', styleUrls: ['./grid-state.component.scss'], templateUrl: './grid-state.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxColumnLayoutComponent, IgxExpansionPanelComponent, IgxCellHeaderTemplateDirective, IgxExpansionPanelHeaderComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelIconDirective, IgxExpansionPanelBodyComponent, NgTemplateOutlet, IgxGridComponent, IgxGridStateDirective, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxColumnComponent, IgxGridDetailTemplateDirective, IgxPaginatorComponent, IgxTooltipDirective, IgxColumnGroupComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent, IgxTreeGridComponent, RouterLink, IgxTooltipTargetDirective, IgxIconComponent, IgxSwitchComponent, FormsModule, IgxButtonDirective, IgxCellTemplateDirective] }) export class GridSaveStateComponent implements OnInit { diff --git a/src/app/grid-summaries/grid-summaries.sample.ts b/src/app/grid-summaries/grid-summaries.sample.ts index ae40bca4f09..e8be7fe76f6 100644 --- a/src/app/grid-summaries/grid-summaries.sample.ts +++ b/src/app/grid-summaries/grid-summaries.sample.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, OnInit, ViewChild } from '@angular/core'; +import { Component, HostBinding, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxGridComponent, @@ -45,6 +45,7 @@ class MySummary extends IgxNumberSummaryOperand { selector: 'app-grid-summaries-sample', styleUrls: ['./grid-summaries.component.scss'], templateUrl: 'grid-summaries.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarTitleComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxColumnComponent, IgxCellTemplateDirective, IgxSummaryTemplateDirective, IgxPaginatorComponent, FormsModule, IgxSwitchComponent] }) export class GridSummaryComponent implements OnInit { diff --git a/src/app/grid-toolbar/grid-toolbar-custom.sample.ts b/src/app/grid-toolbar/grid-toolbar-custom.sample.ts index fd68850afa3..d49a15cef5b 100644 --- a/src/app/grid-toolbar/grid-toolbar-custom.sample.ts +++ b/src/app/grid-toolbar/grid-toolbar-custom.sample.ts @@ -1,5 +1,5 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxButtonDirective, IgxCSVTextDirective, IgxColumnComponent, IgxExcelTextDirective, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxIconComponent, IgxRippleDirective, IgxSwitchComponent } from 'igniteui-angular'; @@ -8,6 +8,7 @@ import { IgxButtonDirective, IgxCSVTextDirective, IgxColumnComponent, IgxExcelTe selector: 'app-grid-toolbar-custom-sample', styleUrls: ['grid-toolbar-custom.sample.scss'], templateUrl: 'grid-toolbar-custom.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridToolbarComponent, IgxButtonDirective, IgxRippleDirective, IgxIconComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxSwitchComponent, FormsModule] }) export class GridToolbarCustomSampleComponent { diff --git a/src/app/grid-toolbar/grid-toolbar.sample.ts b/src/app/grid-toolbar/grid-toolbar.sample.ts index ecdf804e20e..cdcbfd8cf68 100644 --- a/src/app/grid-toolbar/grid-toolbar.sample.ts +++ b/src/app/grid-toolbar/grid-toolbar.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxCSVTextDirective, IgxColumnComponent, IgxCsvExporterService, IgxExcelExporterService, IgxExcelTextDirective, IgxGridComponent, IgxGridToolbarActionsComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleComponent, IgxSwitchComponent } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxCSVTextDirective, IgxColumnComponent, IgxCsvExporterService, IgxExce selector: 'app-grid-toolbar-sample', styleUrls: ['grid-toolbar.sample.scss'], templateUrl: 'grid-toolbar.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxGridToolbarComponent, IgxGridToolbarTitleComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxSwitchComponent, FormsModule] }) export class GridToolbarSampleComponent { diff --git a/src/app/grid-updates-test/grid-updates.component.ts b/src/app/grid-updates-test/grid-updates.component.ts index 6e1e90bbc25..b7c5a77272c 100644 --- a/src/app/grid-updates-test/grid-updates.component.ts +++ b/src/app/grid-updates-test/grid-updates.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IRowSelectionEventArgs, IgxColumnComponent, IgxGridComponent } from 'igniteui-angular'; import { AMINO_DATA } from './aminoData'; @@ -6,6 +6,7 @@ import { AMINO_DATA } from './aminoData'; selector: 'app-grid-updates', styleUrls: ['./grid-updates.component.scss'], templateUrl: './grid-updates.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxGridComponent, IgxColumnComponent] }) export class GridUpdatesComponent implements OnInit { diff --git a/src/app/grid-validation/grid-validation.sample.component.html b/src/app/grid-validation/grid-validation.sample.component.html index 66d0719e62c..052cb1bf47c 100644 --- a/src/app/grid-validation/grid-validation.sample.component.html +++ b/src/app/grid-validation/grid-validation.sample.component.html @@ -1,117 +1,215 @@
-
-

Grid without transactions

- Row edit - - - - {{cell.row.validation.status}} - - - - - - - - - - - @if (cell.validation.errors?.['forbiddenName']) { -
- This name is forbidden. -
- } -
-
- - - - - - -
+
+

Grid without transactions

+ Row edit + + + + {{ cell.row.validation.status }} + + + + + + + + + + @if (cell.validation.errors?.['forbiddenName']) { +
This name is forbidden.
+ } +
+
+ + + + + + +
- -
+ +
-
-

Grid with transactions

- Row edit - - - - - - - @if (cell.validation.errors?.['forbiddenName']) { -
- This name is forbidden. -
- } -
-
- - - - - - -
- - - - - -
+
+

Grid with transactions

+ Row edit + + + + + + @if (cell.validation.errors?.['forbiddenName']) { +
This name is forbidden.
+ } +
+
+ + + + + + +
+ + + + + +
+
+

TreeGrid

+ + + + {{ cell.row.validation.status }} + + + @for (c of treeColumns; track c) { + + + } + + + + + +
-
-

TreeGrid

- - - - {{cell.row.validation.status}} - - - @for (c of treeColumns; track c) { - - - } - - - - - -
- - -
-

Hierarchical Grid

- - @for (c of hColumns; track c) { - - - } - - @for (c of hColumns2; track c) { - - - - - @if (cell.validation.errors?.['forbiddenName']) { -
- This name is forbidden. -
- } -
-
- } -
-
-
+
+

Hierarchical Grid

+ + @for (c of hColumns; track c) { + + } + + @for (c of hColumns2; track c) { + + + + @if (cell.validation.errors?.['forbiddenName']) { +
This name is forbidden.
+ } +
+
+ } +
+
+
+
diff --git a/src/app/grid-validation/grid-validation.sample.component.ts b/src/app/grid-validation/grid-validation.sample.component.ts index 9b45a74a557..b4be62ccfa1 100644 --- a/src/app/grid-validation/grid-validation.sample.component.ts +++ b/src/app/grid-validation/grid-validation.sample.component.ts @@ -1,4 +1,4 @@ -import { Component, Directive, ViewChild, Input } from '@angular/core'; +import { Component, Directive, ViewChild, Input, ChangeDetectionStrategy } from '@angular/core'; import { NgTemplateOutlet } from '@angular/common'; import { AbstractControl, NG_VALIDATORS, ValidationErrors, ValidatorFn, Validators, FormsModule } from '@angular/forms'; @@ -34,6 +34,7 @@ export function forbiddenNameValidator(nameRe: RegExp): ValidatorFn { selector: 'app-grid-row-edit', styleUrls: [`grid-validation.sample.component.scss`], templateUrl: 'grid-validation.sample.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ NgTemplateOutlet, FormsModule, diff --git a/src/app/grid/grid.sample.html b/src/app/grid/grid.sample.html index 2f67f33a48f..c0529db0d97 100644 --- a/src/app/grid/grid.sample.html +++ b/src/app/grid/grid.sample.html @@ -1,147 +1,193 @@
-
-

Grid with autogenerated columns and local data

-
- - -

Add new row

-
The row is added through the grid API
-
- -
- - - - -
-
- -
- -
-
-
+
+

Grid with autogenerated columns and local data

+
+ + +

Add new row

+
+ The row is added through the grid API +
+
+ +
+ + + + +
+
+ +
+ +
+
+
- - -

Edit selected cell

-
Bound through ngModel
-
- -
- - - - -
-
-
+ + +

Edit selected cell

+
Bound through ngModel
+
+ +
+ + + + +
+
+
- - -

Delete selected row

-
Revertable for the last deleted row
-
- -
- -
-
-
+ + +

Delete selected row

+
+ Revertable for the last deleted row +
+
+ +
+ +
+
+
- - - - -
+ + + + +
-
- @for (col of grid1.columns; track col) { -
-

{{ col.field }}

-
- Filtering -
-
- Sorting -
-
- Editable -
-
- Hidden -
-
- Disable Hiding -
-
- } +
+ @for (col of grid1.columns; track col) { +
+

{{ col.field }}

+
+ Filtering
+
+ Sorting +
+
+ Editable +
+
+ Hidden +
+
+ Disable Hiding +
+
+ } +
- - - -
+ + + -
-

Grid with templated column cells and local observable data source

-
-
-
- - -
- @for (col of grid2.columns; track col) { -
-

{{ col.field }}

-
- Filtering -
-
- Sorting -
-
- Editable -
-
- Hidden -
-
- Disable Hiding -
-
- } -
+
+

+ Grid with templated column cells and local observable data source +

+
+
+
+ +
- -
-
- Enable Paging -
-
- - - - -
-
- - - - -
+ @for (col of grid2.columns; track col) { +
+

{{ col.field }}

+
+ Filtering +
+
+ Sorting +
+
+ Editable +
+
+ Hidden +
+
+ Disable Hiding +
+ } +
+
+ +
+
+ Enable Paging +
+
+ + + + +
+
+ + + + +
+
- - - - - - - - -

{{column.field}}

-
- - - -
- @if (gridPaging) { - - } -
- -
+ + + +

{{column.field}}

+
+ + + +
+ @if (gridPaging) { + + } + +
-
-

Grid with templated cell remote data

-
- - -
- - - - -
- -
- - - - - - - -

{{column.field}}

-
- - - -
- -
- -
+
+

Grid with templated cell remote data

+
+ + +
+ + + + +
+ +
+ + + + + + + +

{{column.field}}

+
+ + + +
+ +
+ +
-
- - +
+ +
diff --git a/src/app/grid/grid.sample.ts b/src/app/grid/grid.sample.ts index fc94203ef0a..bd8c211e8e2 100644 --- a/src/app/grid/grid.sample.ts +++ b/src/app/grid/grid.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild, AfterViewInit } from '@angular/core'; +import { Component, OnInit, ViewChild, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { Observable } from 'rxjs'; import { AsyncPipe } from '@angular/common'; import { FormsModule } from '@angular/forms'; @@ -16,6 +16,7 @@ import { CsvFileTypes, DefaultSortingStrategy, GridSelectionMode, IgxBaseExporte LocalService, RemoteService ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, AsyncPipe, diff --git a/src/app/hierarchical-grid-add-row/hierarchical-grid-add-row.sample.ts b/src/app/hierarchical-grid-add-row/hierarchical-grid-add-row.sample.ts index 6f5f2ca40e0..eb46f5263d0 100644 --- a/src/app/hierarchical-grid-add-row/hierarchical-grid-add-row.sample.ts +++ b/src/app/hierarchical-grid-add-row/hierarchical-grid-add-row.sample.ts @@ -1,9 +1,10 @@ -import { Component, ChangeDetectorRef, AfterViewInit } from '@angular/core'; +import { Component, ChangeDetectorRef, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { ColumnPinningPosition, IgxActionStripComponent, IgxColumnComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent, IgxGridToolbarActionsComponent, IgxGridToolbarComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxHierarchicalGridComponent, IgxRowIslandComponent } from 'igniteui-angular'; @Component({ selector: 'app-hierarchical-grid-add-row-sample', templateUrl: 'hierarchical-grid-add-row.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxHierarchicalGridComponent, IgxGridToolbarComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxRowIslandComponent] }) diff --git a/src/app/hierarchical-grid-advanced-filtering/hierarchical-grid-advanced-filtering.sample.ts b/src/app/hierarchical-grid-advanced-filtering/hierarchical-grid-advanced-filtering.sample.ts index 5e3eff812c3..cfb42969f28 100644 --- a/src/app/hierarchical-grid-advanced-filtering/hierarchical-grid-advanced-filtering.sample.ts +++ b/src/app/hierarchical-grid-advanced-filtering/hierarchical-grid-advanced-filtering.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ChangeDetectorRef, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, ChangeDetectorRef, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxHierarchicalGridComponent, IGX_HIERARCHICAL_GRID_DIRECTIVES, @@ -14,6 +14,7 @@ import { SINGERS } from './data'; selector: 'app-hierarchical-grid-advanced-filtering-sample', styleUrls: ['hierarchical-grid-advanced-filtering.sample.scss'], templateUrl: 'hierarchical-grid-advanced-filtering.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_HIERARCHICAL_GRID_DIRECTIVES] }) export class HierarchicalGridAdvancedFilteringSampleComponent implements AfterViewInit { diff --git a/src/app/hierarchical-grid-remote-virtualization/hierarchical-grid-remote-virtualization.ts b/src/app/hierarchical-grid-remote-virtualization/hierarchical-grid-remote-virtualization.ts index bd5345ae2a1..ae1597ed3b1 100644 --- a/src/app/hierarchical-grid-remote-virtualization/hierarchical-grid-remote-virtualization.ts +++ b/src/app/hierarchical-grid-remote-virtualization/hierarchical-grid-remote-virtualization.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, AfterViewInit, ChangeDetectorRef } from '@angular/core'; +import { Component, ViewChild, AfterViewInit, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core'; import { IGX_HIERARCHICAL_GRID_DIRECTIVES, IgxHierarchicalGridComponent @@ -11,6 +11,7 @@ import { debounceTime } from 'rxjs/operators'; templateUrl: 'hierarchical-grid-remote-virtualization.html', styleUrls: ['hierarchical-grid-remote-virtualization.scss'], providers: [HierarchicalRemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_HIERARCHICAL_GRID_DIRECTIVES] }) export class HierarchicalGridRemoteVirtualizationComponent implements AfterViewInit { diff --git a/src/app/hierarchical-grid-remote/hierarchical-grid-remote.sample.ts b/src/app/hierarchical-grid-remote/hierarchical-grid-remote.sample.ts index 9111a5ac319..3b216788993 100644 --- a/src/app/hierarchical-grid-remote/hierarchical-grid-remote.sample.ts +++ b/src/app/hierarchical-grid-remote/hierarchical-grid-remote.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, ChangeDetectorRef, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectorRef, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxRowIslandComponent, IgxHierarchicalGridComponent, @@ -17,6 +17,7 @@ const API_ENDPOINT = 'https://data-northwind.indigo.design'; selector: 'app-hierarchical-grid-remote-sample', templateUrl: 'hierarchical-grid-remote.sample.html', styleUrls: ['hierarchical-grid-remote.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_HIERARCHICAL_GRID_DIRECTIVES] }) export class HierarchicalGridRemoteSampleComponent implements OnInit, AfterViewInit { diff --git a/src/app/hierarchical-grid-updating/hierarchical-grid-updating.sample.ts b/src/app/hierarchical-grid-updating/hierarchical-grid-updating.sample.ts index a895c416de7..ccc1c16764b 100644 --- a/src/app/hierarchical-grid-updating/hierarchical-grid-updating.sample.ts +++ b/src/app/hierarchical-grid-updating/hierarchical-grid-updating.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, AfterViewInit } from '@angular/core'; +import { Component, ViewChild, AfterViewInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxRowIslandComponent, IgxHierarchicalGridComponent, @@ -14,6 +14,7 @@ import { RemoteService } from '../shared/remote.service'; styleUrls: ['hierarchical-grid-updating.sample.scss'], templateUrl: 'hierarchical-grid-updating.sample.html', providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxHierarchicalGridComponent, IgxColumnComponent, IgxRowIslandComponent] }) export class HierarchicalGridUpdatingSampleComponent implements AfterViewInit { diff --git a/src/app/hierarchical-grid/hierarchical-grid.sample.ts b/src/app/hierarchical-grid/hierarchical-grid.sample.ts index 96394bbd56b..c22c9c067dd 100644 --- a/src/app/hierarchical-grid/hierarchical-grid.sample.ts +++ b/src/app/hierarchical-grid/hierarchical-grid.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ChangeDetectorRef, AfterViewInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, ChangeDetectorRef, AfterViewInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { GridSearchBoxComponent } from '../grid-search-box/grid-search-box.component'; import { IgxRowIslandComponent, @@ -17,6 +17,7 @@ import { selector: 'app-hierarchical-grid-sample', styleUrls: ['hierarchical-grid.sample.scss'], templateUrl: 'hierarchical-grid.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [GridSearchBoxComponent, IGX_HIERARCHICAL_GRID_DIRECTIVES, IgxIconComponent, IGX_BUTTON_GROUP_DIRECTIVES, IgxActionStripComponent] }) export class HierarchicalGridSampleComponent implements AfterViewInit { diff --git a/src/app/hound/hound.component.ts b/src/app/hound/hound.component.ts index 8fff9069931..d791dd094c9 100644 --- a/src/app/hound/hound.component.ts +++ b/src/app/hound/hound.component.ts @@ -1,4 +1,4 @@ -import {Component, OnInit} from '@angular/core'; +import {Component, OnInit, ChangeDetectionStrategy} from '@angular/core'; import { IgxButtonModule, IgxCheckboxComponent, @@ -54,6 +54,7 @@ import {FormsModule} from "@angular/forms"; IgxTabHeaderComponent, ], templateUrl: './hound.component.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './hound.component.scss' }) export class HoundComponent implements OnInit { diff --git a/src/app/icon-button/icon-button.sample.ts b/src/app/icon-button/icon-button.sample.ts index 523fdf16770..cb6e9818127 100644 --- a/src/app/icon-button/icon-button.sample.ts +++ b/src/app/icon-button/icon-button.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconButtonDirective, IgxIconComponent, @@ -26,6 +26,7 @@ registerIconFromText('favorite', favorite); styleUrls: ['icon-button.sample.scss'], templateUrl: 'icon-button.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, IgxIconButtonDirective, IgSizeDirective] }) export class IconButtonSampleComponent { diff --git a/src/app/icon/LazyModule/LazyComponent/lazyIcon.sample.ts b/src/app/icon/LazyModule/LazyComponent/lazyIcon.sample.ts index 3ce0cdbd7aa..7c9f5dde6bc 100644 --- a/src/app/icon/LazyModule/LazyComponent/lazyIcon.sample.ts +++ b/src/app/icon/LazyModule/LazyComponent/lazyIcon.sample.ts @@ -1,11 +1,12 @@ import { HttpClient } from '@angular/common/http'; -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxIconComponent } from 'igniteui-angular'; @Component({ selector: 'app-lazy-icon-sample', styleUrls: ['./lazyIcon.sample.css'], templateUrl: 'lazyIcon.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent] }) export class LazyIconSampleComponent implements OnInit { diff --git a/src/app/icon/ThemedComponent/themed-icon.component.ts b/src/app/icon/ThemedComponent/themed-icon.component.ts index e63d7a5d22b..e37b3040a16 100644 --- a/src/app/icon/ThemedComponent/themed-icon.component.ts +++ b/src/app/icon/ThemedComponent/themed-icon.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonGroupComponent, IgxButtonDirective, @@ -19,6 +19,7 @@ import { }, IgxIconService, // Create New Icon Service Scoped to this component ], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, IgxButtonDirective, IgxButtonGroupComponent] }) export class ThemedIconComponent { diff --git a/src/app/icon/icon.sample.ts b/src/app/icon/icon.sample.ts index 10b2f88c32a..3a2d39dcd6c 100644 --- a/src/app/icon/icon.sample.ts +++ b/src/app/icon/icon.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, OnInit, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { Router } from '@angular/router'; import { IgxButtonDirective, IgxIconComponent, IgxIconService } from 'igniteui-angular'; @@ -9,6 +9,7 @@ import { ThemedIconComponent } from './ThemedComponent/themed-icon.component'; styleUrls: ['./icon.sample.scss'], templateUrl: 'icon.sample.html', encapsulation: ViewEncapsulation.None, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, IgxButtonDirective, ThemedIconComponent] }) export class IconSampleComponent implements OnInit { diff --git a/src/app/input-controls/input-controls.sample.ts b/src/app/input-controls/input-controls.sample.ts index 764a072ad23..37e1fe9be4b 100644 --- a/src/app/input-controls/input-controls.sample.ts +++ b/src/app/input-controls/input-controls.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxCheckboxComponent, IgxSwitchComponent, @@ -31,6 +31,7 @@ defineComponents( styleUrls: ['input-controls.sample.scss'], templateUrl: 'input-controls.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxCheckboxComponent, IgxSwitchComponent, diff --git a/src/app/input-group-showcase/input-group-showcase.sample.ts b/src/app/input-group-showcase/input-group-showcase.sample.ts index 5dab7ef8366..c9024f73e75 100644 --- a/src/app/input-group-showcase/input-group-showcase.sample.ts +++ b/src/app/input-group-showcase/input-group-showcase.sample.ts @@ -1,4 +1,4 @@ -import {Component, CUSTOM_ELEMENTS_SCHEMA, inject, signal, computed, viewChild, DestroyRef} from '@angular/core'; +import {Component, CUSTOM_ELEMENTS_SCHEMA, inject, signal, computed, viewChild, DestroyRef, ChangeDetectionStrategy} from '@angular/core'; import {FormsModule, ReactiveFormsModule, UntypedFormBuilder, Validators} from '@angular/forms'; import { @@ -47,6 +47,7 @@ defineComponents( IgxSelectItemComponent, IgxComboComponent, ], + changeDetection: ChangeDetectionStrategy.Eager, schemas: [CUSTOM_ELEMENTS_SCHEMA], }) export class InputGroupShowcaseSampleComponent { diff --git a/src/app/label/label.sample.ts b/src/app/label/label.sample.ts index 857c4d56457..4e3227bb93f 100644 --- a/src/app/label/label.sample.ts +++ b/src/app/label/label.sample.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import {IgxLabelDirective} from "igniteui-angular"; @Component({ selector: 'app-label', imports: [IgxLabelDirective], templateUrl: './label.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, styleUrl: './label.sample.scss' }) export class LabelSampleComponent { diff --git a/src/app/layout/layout.sample.ts b/src/app/layout/layout.sample.ts index 438316c1238..23b75585f8c 100644 --- a/src/app/layout/layout.sample.ts +++ b/src/app/layout/layout.sample.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxFlexDirective, IgxLayoutDirective } from 'igniteui-angular'; @Component({ selector: 'app-layout-sample', styleUrls: ['layout.sample.scss'], templateUrl: 'layout.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxLayoutDirective, IgxFlexDirective] }) export class LayoutSampleComponent { } diff --git a/src/app/linear-progress/linear-progress.sample.ts b/src/app/linear-progress/linear-progress.sample.ts index 674207b228f..86758c79dcc 100644 --- a/src/app/linear-progress/linear-progress.sample.ts +++ b/src/app/linear-progress/linear-progress.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxLinearProgressBarComponent, IgxTextAlign } from 'igniteui-angular'; import { IgcLinearProgressComponent, @@ -18,6 +18,7 @@ defineComponents(IgcLinearProgressComponent); templateUrl: 'linear-progress.sample.html', standalone: true, schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxLinearProgressBarComponent] }) diff --git a/src/app/list-panning/list-panning.sample.ts b/src/app/list-panning/list-panning.sample.ts index 23bf59db6f4..dbc8db5b6aa 100644 --- a/src/app/list-panning/list-panning.sample.ts +++ b/src/app/list-panning/list-panning.sample.ts @@ -1,10 +1,11 @@ -import { Component, ViewChild, ViewEncapsulation } from '@angular/core'; +import { Component, ViewChild, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { IGX_LIST_DIRECTIVES, IgxAvatarComponent, IgxButtonDirective, IgxIconComponent, IgxRippleDirective, IgxToastComponent } from 'igniteui-angular'; @Component({ selector: 'app-list-panning-sample', styleUrls: ['list-panning.sample.scss'], templateUrl: 'list-panning.sample.html', encapsulation: ViewEncapsulation.None, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRippleDirective, IgxAvatarComponent, IgxIconComponent, IgxToastComponent, IgxButtonDirective, IGX_LIST_DIRECTIVES] }) export class ListPanningSampleComponent { diff --git a/src/app/list-performance/list-performance.sample.ts b/src/app/list-performance/list-performance.sample.ts index 774f86ff013..9e4b7ce6aa5 100644 --- a/src/app/list-performance/list-performance.sample.ts +++ b/src/app/list-performance/list-performance.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IGX_INPUT_GROUP_DIRECTIVES, IGX_LIST_DIRECTIVES, IgxAvatarComponent, IgxButtonDirective, IgxCardComponent, IgxFilterOptions, IgxFilterPipe, IgxForOfDirective, IgxIconComponent, IgxRippleDirective } from 'igniteui-angular'; @@ -8,6 +8,7 @@ import { IGX_INPUT_GROUP_DIRECTIVES, IGX_LIST_DIRECTIVES, IgxAvatarComponent, Ig selector: 'app-list-performance-sample', styleUrls: ['list-performance.sample.scss'], templateUrl: 'list-performance.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxIconComponent, FormsModule, IgxButtonDirective, IgxCardComponent, IgxForOfDirective, IgxRippleDirective, IgxAvatarComponent, IgxFilterPipe, IGX_LIST_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES] }) export class ListPerformanceSampleComponent { diff --git a/src/app/list/list.sample.ts b/src/app/list/list.sample.ts index 5cc31545450..a53c2031b61 100644 --- a/src/app/list/list.sample.ts +++ b/src/app/list/list.sample.ts @@ -1,8 +1,9 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - ViewEncapsulation, + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + ViewEncapsulation, + ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { @@ -84,6 +85,7 @@ interface Employee { IgSizeDirective, HammerModule ], + changeDetection: ChangeDetectionStrategy.Eager, providers: [ { provide: HAMMER_GESTURE_CONFIG, diff --git a/src/app/mask/mask.sample.ts b/src/app/mask/mask.sample.ts index a789f1be653..90c5dbeec5c 100644 --- a/src/app/mask/mask.sample.ts +++ b/src/app/mask/mask.sample.ts @@ -1,4 +1,4 @@ -import { Component, Pipe, PipeTransform } from '@angular/core'; +import { Component, Pipe, PipeTransform, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IGX_INPUT_GROUP_DIRECTIVES, IgxMaskDirective, IgxSnackbarComponent, IgxTextSelectionDirective } from 'igniteui-angular'; @@ -15,6 +15,7 @@ interface IPerson { selector: 'app-mask-sample', styleUrls: ['mask.sample.scss'], templateUrl: './mask.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IGX_INPUT_GROUP_DIRECTIVES, IgxMaskDirective, IgxTextSelectionDirective, IgxSnackbarComponent] }) export class MaskSampleComponent { diff --git a/src/app/month-picker/month-picker.sample.ts b/src/app/month-picker/month-picker.sample.ts index 068b5a064f7..a624d67f83c 100644 --- a/src/app/month-picker/month-picker.sample.ts +++ b/src/app/month-picker/month-picker.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxMonthPickerComponent, IgxButtonDirective } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxMonthPickerComponent, IgxButtonDirective } from 'igniteui-angular'; selector: 'app-monthpicker', styleUrls: ['./month-picker.sample.scss'], templateUrl: './month-picker.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxMonthPickerComponent, IgxButtonDirective, FormsModule] }) export class MonthPickerSampleComponent { diff --git a/src/app/navbar/navbar.sample.ts b/src/app/navbar/navbar.sample.ts index caccb615668..7dda494f7d1 100644 --- a/src/app/navbar/navbar.sample.ts +++ b/src/app/navbar/navbar.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, OnInit, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import {Location} from '@angular/common'; import { IGX_NAVBAR_DIRECTIVES, @@ -19,6 +19,7 @@ const CURRENT_VIEW = 'Ignite UI for Angular Samples'; selector: 'app-navbar-sample', styleUrls: ['navbar.sample.scss'], templateUrl: 'navbar.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_NAVBAR_DIRECTIVES, IgxIconComponent, IgxButtonDirective, IgxIconButtonDirective, IgxAvatarComponent, IGX_PROGRESS_BAR_DIRECTIVES, IGX_INPUT_GROUP_DIRECTIVES, FormsModule] }) export class NavbarSampleComponent implements OnInit { diff --git a/src/app/navdrawer/navdrawer.sample.ts b/src/app/navdrawer/navdrawer.sample.ts index c9cd134b9e2..a4363ce43cd 100644 --- a/src/app/navdrawer/navdrawer.sample.ts +++ b/src/app/navdrawer/navdrawer.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxRadioComponent, IgxSwitchComponent } from 'igniteui-angular'; import { AppComponent } from '../app.component'; @@ -9,6 +9,7 @@ import { AppComponent } from '../app.component'; selector: 'app-navbar-sample', styleUrls: ['navdrawer.sample.scss'], templateUrl: 'navdrawer.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSwitchComponent, FormsModule, IgxRadioComponent] }) export class NavdrawerSampleComponent { diff --git a/src/app/overlay/overlay-animation.sample.ts b/src/app/overlay/overlay-animation.sample.ts index bea77c96e1a..48098a10b60 100644 --- a/src/app/overlay/overlay-animation.sample.ts +++ b/src/app/overlay/overlay-animation.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { AnimationReferenceMetadata, animation, style, AnimationMetadata, animate } from '@angular/animations'; import { OverlaySettings, @@ -16,6 +16,7 @@ import { selector: 'overlay-animation-sample', templateUrl: './overlay-animation.sample.html', styleUrls: ['overlay-animation.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent, IgxToggleDirective, IGX_CARD_DIRECTIVES] }) export class OverlayAnimationSampleComponent { diff --git a/src/app/overlay/overlay-presets.sample.ts b/src/app/overlay/overlay-presets.sample.ts index d552ccae19f..3305e30821d 100644 --- a/src/app/overlay/overlay-presets.sample.ts +++ b/src/app/overlay/overlay-presets.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ElementRef, OnInit } from '@angular/core'; +import { Component, ViewChild, ElementRef, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxDropDownComponent, @@ -19,6 +19,7 @@ import { selector: 'overlay-presets-sample', templateUrl: './overlay-presets.sample.html', styleUrls: ['overlay-presets.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRadioComponent, FormsModule, IgxButtonDirective, IgxRippleDirective, IgxDragDirective, IgxDropDownComponent, IgxDropDownItemComponent, IgxToggleDirective] }) export class OverlayPresetsSampleComponent implements OnInit { diff --git a/src/app/overlay/overlay.sample.ts b/src/app/overlay/overlay.sample.ts index b80fe39d7f1..37a335cca0d 100644 --- a/src/app/overlay/overlay.sample.ts +++ b/src/app/overlay/overlay.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, ElementRef, ChangeDetectorRef, OnInit } from '@angular/core'; +import { Component, ViewChild, ElementRef, ChangeDetectorRef, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxDropDownComponent, @@ -30,6 +30,7 @@ import { IAnimationParams } from 'igniteui-angular/animations'; selector: 'overlay-sample', styleUrls: ['overlay.sample.css'], templateUrl: './overlay.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRadioComponent, FormsModule, IgxSwitchComponent, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective, IgxButtonDirective, IgxRippleDirective, IgxDragDirective, IgxDropDownComponent, IgxDropDownItemComponent, IgxToggleDirective] }) export class OverlaySampleComponent implements OnInit { diff --git a/src/app/pageHeading/pageHeading.component.ts b/src/app/pageHeading/pageHeading.component.ts index 9c643019ecb..0018187902d 100644 --- a/src/app/pageHeading/pageHeading.component.ts +++ b/src/app/pageHeading/pageHeading.component.ts @@ -1,4 +1,4 @@ -import { Component, EventEmitter, inject, Input, Output } from '@angular/core'; +import { Component, EventEmitter, inject, Input, Output, ChangeDetectionStrategy } from '@angular/core'; import { AsyncPipe, KeyValuePipe } from '@angular/common'; import { IgxDropDownComponent, @@ -22,6 +22,7 @@ export type DocumentDirection = 'ltr' | 'rtl'; selector: 'app-page-header', styleUrls: ['./pageHeading.styles.scss'], templateUrl: './pageHeading.template.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxRippleDirective, IgxToggleActionDirective, diff --git a/src/app/pageHeading/pageHeading.template.html b/src/app/pageHeading/pageHeading.template.html index f4ef3ea92e3..007657fad58 100644 --- a/src/app/pageHeading/pageHeading.template.html +++ b/src/app/pageHeading/pageHeading.template.html @@ -1,63 +1,59 @@ -@let config = (propertyChangeService.panelConfig | async | keyvalue)?.length > 0; +@let config = $safeNavigationMigration((propertyChangeService.panelConfig | +async | keyvalue)?.length) > 0;
-
- -
- {{ title }} -
-
+
+ +
{{ title }}
+
-
- Localization: - - - - - @for(item of selectLocales; track item) { - - {{ item }} - - } - +
+ Localization: + + + + + @for(item of selectLocales; track item) { + {{ item }} + } + - Direction: - + Direction: + - @if(config) { - - } -
+ @if(config) { + + } +
diff --git a/src/app/pagination/pagination.component.ts b/src/app/pagination/pagination.component.ts index 4e234f318fc..175cf1d0d86 100644 --- a/src/app/pagination/pagination.component.ts +++ b/src/app/pagination/pagination.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxIconButtonDirective, IgxIconComponent, IgxPageSizeSelectorComponent, IgxPaginatorComponent, IgxPaginatorContentDirective } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxButtonDirective, IgxIconButtonDirective, IgxIconComponent, IgxPageSi selector: 'app-pagination', styleUrls: ['./pagination.styles.scss'], templateUrl: './pagination.template.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPaginatorComponent, IgxPaginatorContentDirective, IgxButtonDirective, IgxPageSizeSelectorComponent, IgxIconComponent, IgxIconButtonDirective] }) export class PaginationSampleComponent implements OnInit { diff --git a/src/app/pivot-grid-hierarchy/pivot-grid-hierarchy.sample.ts b/src/app/pivot-grid-hierarchy/pivot-grid-hierarchy.sample.ts index 8e6f51ec87a..2b5c3e5fb1c 100644 --- a/src/app/pivot-grid-hierarchy/pivot-grid-hierarchy.sample.ts +++ b/src/app/pivot-grid-hierarchy/pivot-grid-hierarchy.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxComboComponent, IgxExcelExporterOptions, IgxExcelExporterService, IgxPivotGridComponent, IgxPivotNumericAggregate, IPivotConfiguration, IPivotDimension, IPivotUISettings, PivotRowLayoutType } from 'igniteui-angular'; import { DATA } from '../shared/pivot-data'; @@ -8,6 +8,7 @@ import { DATA } from '../shared/pivot-data'; selector: 'app-pivot-grid-hierarchy-sample', styleUrls: ['pivot-grid-hierarchy.sample.scss'], templateUrl: 'pivot-grid-hierarchy.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, FormsModule, IgxPivotGridComponent] }) diff --git a/src/app/pivot-grid-noop/pivot-grid-noop.sample.ts b/src/app/pivot-grid-noop/pivot-grid-noop.sample.ts index a81f1d3da14..1e4b347f51d 100644 --- a/src/app/pivot-grid-noop/pivot-grid-noop.sample.ts +++ b/src/app/pivot-grid-noop/pivot-grid-noop.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { IGridState, IPivotConfiguration, IPivotDimension, IPivotUISettings, IPivotValue, IgxButtonDirective, IgxGridStateDirective, IgxPivotGridComponent, IgxPivotNumericAggregate, NoopPivotDimensionsStrategy, NoopSortingStrategy, PivotRowLayoutType } from 'igniteui-angular'; import { take } from 'rxjs/operators'; @@ -23,6 +23,7 @@ export class MyColumnStrategy extends NoopPivotDimensionsStrategy { selector: 'app-tree-grid-sample', styleUrls: ['pivot-grid-noop.sample.scss'], templateUrl: 'pivot-grid-noop.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxPivotGridComponent, IgxGridStateDirective, IgxButtonDirective] }) diff --git a/src/app/pivot-grid-state/pivot-grid-state.sample.ts b/src/app/pivot-grid-state/pivot-grid-state.sample.ts index 5d3a9957bdf..10ff7902929 100644 --- a/src/app/pivot-grid-state/pivot-grid-state.sample.ts +++ b/src/app/pivot-grid-state/pivot-grid-state.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxPivotNumericAggregate, @@ -54,6 +54,7 @@ export class IgxTotalSaleAggregate { selector: 'app-tree-grid-sample', styleUrls: ['pivot-grid-state.sample.scss'], templateUrl: 'pivot-grid-state.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IgxButtonDirective, IgxSwitchComponent, IgxPivotGridComponent, IgxGridStateDirective, IgxPivotDataSelectorComponent, IgxPivotRowDimensionHeaderTemplateDirective] }) diff --git a/src/app/pivot-grid/pivot-grid.sample.ts b/src/app/pivot-grid/pivot-grid.sample.ts index 132e5d4752d..1c83aa1ba44 100644 --- a/src/app/pivot-grid/pivot-grid.sample.ts +++ b/src/app/pivot-grid/pivot-grid.sample.ts @@ -1,4 +1,4 @@ -import { Component, HostBinding, ViewChild } from '@angular/core'; +import { Component, HostBinding, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxPivotNumericAggregate, @@ -55,6 +55,7 @@ export class IgxTotalSaleAggregate { selector: 'app-tree-grid-sample', styleUrls: ['pivot-grid.sample.scss'], templateUrl: 'pivot-grid.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxComboComponent, FormsModule, IgxButtonGroupComponent, IgxButtonDirective, IgxPivotGridComponent, IgxPivotValueChipTemplateDirective, IgxPivotDataSelectorComponent] }) export class PivotGridSampleComponent { diff --git a/src/app/properties-panel/properties-panel.component.html b/src/app/properties-panel/properties-panel.component.html index 4095e896edb..636260399ef 100644 --- a/src/app/properties-panel/properties-panel.component.html +++ b/src/app/properties-panel/properties-panel.component.html @@ -1,111 +1,144 @@
-
Properties Panel
- @for( key of getConfigKeys(); track key ) { -
- @if (getControlType(key) !== 'boolean') { - - } +
Properties Panel
+ @for (key of getConfigKeys(); track key) { +
+ @if (getControlType(key) !== 'boolean') { + + } - - @if (getControlType(key) === 'text') { - - - - } + + @if (getControlType(key) === 'text') { + + + + } - - @if (getControlType(key) === 'number') { - - - - } + + @if (getControlType(key) === 'number') { + + + + } - - @if (getControlType(key) === 'range') { - - - } + + @if (getControlType(key) === 'range') { + + + } - - @if (getControlType(key) === 'boolean') { -
- - - -
- } + + @if (getControlType(key) === 'boolean') { +
+ + + +
+ } - - @if (getControlType(key) === 'date') { - - } + + @if (getControlType(key) === 'date') { + + } - - @if (getControlType(key) === 'date-range') { - - } + + @if (getControlType(key) === 'date-range') { + + } - - @if (getControlType(key) === 'time') { - - } + + @if (getControlType(key) === 'time') { + + } - - @if (getControlType(key) === 'date-time') { -
- - -
- } + + @if (getControlType(key) === 'date-time') { +
+ + +
+ } - - @if ( - getControlType(key) === 'radio' || getControlType(key) === 'radio-inline' - ) { - - @for (option of getControlOptions(key); track option) { - - {{ getControlLabels(key)[getControlOptions(key).indexOf(option)] }} - - } - - } + " + > + @for (option of getControlOptions(key); track option) { + + {{ + getControlLabels(key)[getControlOptions(key).indexOf(option)] + }} + + } + + } - - @if (getControlType(key) === 'button-group') { - - @for (option of getControlOptions(key); track option) { - - } - - } + + @if (getControlType(key) === 'button-group') { + + @for (option of getControlOptions(key); track option) { + + } + + } - - @if (getControlType(key) === 'select') { - - @for (option of getControlOptions(key); track option) { - - {{ option }} - - } - - } -
- } + + @if (getControlType(key) === 'select') { + + @for (option of getControlOptions(key); track option) { + + {{ option }} + + } + + } +
+ } - @if (customControls) { - - } + @if (customControls) { + + }
diff --git a/src/app/properties-panel/properties-panel.component.ts b/src/app/properties-panel/properties-panel.component.ts index 562f789411a..d0ee377f4a3 100644 --- a/src/app/properties-panel/properties-panel.component.ts +++ b/src/app/properties-panel/properties-panel.component.ts @@ -1,9 +1,10 @@ import { - ChangeDetectorRef, - Component, - DestroyRef, - TemplateRef, - inject, + ChangeDetectorRef, + Component, + DestroyRef, + TemplateRef, + inject, + ChangeDetectionStrategy } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormGroup, FormControl, ReactiveFormsModule, FormsModule } from '@angular/forms'; @@ -34,6 +35,7 @@ import { standalone: true, templateUrl: './properties-panel.component.html', styleUrl: './properties-panel.component.scss', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ FormsModule, ReactiveFormsModule, diff --git a/src/app/query-builder/query-builder.sample.ts b/src/app/query-builder/query-builder.sample.ts index ac89ac47cb6..7f5921bf1fe 100644 --- a/src/app/query-builder/query-builder.sample.ts +++ b/src/app/query-builder/query-builder.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit } from '@angular/core'; +import { Component, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { FilteringExpressionsTree, FilteringLogic, @@ -27,6 +27,7 @@ import { FormsModule } from '@angular/forms'; selector: 'app-query-builder-sample', styleUrls: ['query-builder.sample.scss'], templateUrl: 'query-builder.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, IGX_DIALOG_DIRECTIVES, IgxComboComponent, IgxQueryBuilderComponent, IgxQueryBuilderHeaderComponent, IgxButtonDirective, IgxRippleDirective, CommonModule, IgxQueryBuilderSearchValueTemplateDirective, IgxIconComponent] }) export class QueryBuilderComponent implements OnInit { diff --git a/src/app/radio/radio-group.component.ts b/src/app/radio/radio-group.component.ts index bc1ff604c55..1559c607195 100644 --- a/src/app/radio/radio-group.component.ts +++ b/src/app/radio/radio-group.component.ts @@ -5,6 +5,7 @@ import { ComponentRef, ViewContainerRef, OnInit, + ChangeDetectionStrategy } from '@angular/core'; import { IChangeCheckboxEventArgs, @@ -16,6 +17,7 @@ import { @Component({ selector: 'app-radio-group', templateUrl: './radio-group.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRadioGroupDirective], }) export class RadioGroupComponent implements OnInit { diff --git a/src/app/rating/rating.sample.ts b/src/app/rating/rating.sample.ts index 14bfa4cba9d..f2221c56838 100644 --- a/src/app/rating/rating.sample.ts +++ b/src/app/rating/rating.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { defineComponents, IgcRatingComponent } from 'igniteui-webcomponents'; import { IgxCardComponent, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxCardContentDirective, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective, IgcFormControlDirective } from 'igniteui-angular'; @@ -10,6 +10,7 @@ defineComponents(IgcRatingComponent); selector: 'app-rating-sample', styleUrls: ['rating.sample.scss'], templateUrl: 'rating.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxCardComponent, IgxCardHeaderComponent, IgxCardHeaderTitleDirective, IgxCardContentDirective, FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective, IgcFormControlDirective] }) export class RatingSampleComponent { diff --git a/src/app/reactive-from/reactive-form-sample.component.ts b/src/app/reactive-from/reactive-form-sample.component.ts index c2088e10afb..09d563af297 100644 --- a/src/app/reactive-from/reactive-form-sample.component.ts +++ b/src/app/reactive-from/reactive-form-sample.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { IgxSelectComponent, IgxSelectGroupComponent, IgxSelectItemComponent, IgxLabelDirective, IgxSelectToggleIconDirective, IgxIconComponent, IgxInputGroupComponent, IgxInputDirective, IgxSuffixDirective, IgxPrefixDirective, IgxHintDirective, IgxComboComponent, IgxDatePickerComponent, IgxTimePickerComponent, IgxButtonDirective, IgxRippleDirective } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxSelectComponent, IgxSelectGroupComponent, IgxSelectItemComponent, Ig selector: 'app-reactive-form', styleUrls: ['reactive-form-sample.component.scss'], templateUrl: 'reactive-form-sample.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [FormsModule, ReactiveFormsModule, IgxSelectComponent, IgxSelectGroupComponent, IgxSelectItemComponent, IgxLabelDirective, IgxSelectToggleIconDirective, IgxIconComponent, IgxInputGroupComponent, IgxInputDirective, IgxSuffixDirective, IgxPrefixDirective, IgxHintDirective, IgxComboComponent, IgxDatePickerComponent, IgxTimePickerComponent, IgxButtonDirective, IgxRippleDirective] }) export class ReactiveFormSampleComponent { diff --git a/src/app/ripple/ripple.sample.ts b/src/app/ripple/ripple.sample.ts index 116e4fdd197..52749383f71 100644 --- a/src/app/ripple/ripple.sample.ts +++ b/src/app/ripple/ripple.sample.ts @@ -1,10 +1,11 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxRippleDirective } from 'igniteui-angular'; @Component({ selector: 'app-ripple-sample', styleUrls: ['ripple.sample.scss'], templateUrl: 'ripple.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxRippleDirective] }) export class RippleSampleComponent {} diff --git a/src/app/size-selector/size-selector.component.ts b/src/app/size-selector/size-selector.component.ts index b7f77d6db6a..a43c7edd6d4 100644 --- a/src/app/size-selector/size-selector.component.ts +++ b/src/app/size-selector/size-selector.component.ts @@ -1,10 +1,11 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonGroupModule } from 'igniteui-angular'; @Component({ selector: 'size-selector', styleUrls: ['size-selector.component.scss'], templateUrl: 'size-selector.component.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonGroupModule ] diff --git a/src/app/slider-showcase/slider-showcase.sample.ts b/src/app/slider-showcase/slider-showcase.sample.ts index 862a693891d..78b84709034 100644 --- a/src/app/slider-showcase/slider-showcase.sample.ts +++ b/src/app/slider-showcase/slider-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { TicksOrientation, IgxSliderComponent, @@ -22,6 +22,7 @@ defineComponents(IgcSliderComponent, IgcSliderLabelComponent); styleUrls: ['slider-showcase.sample.scss'], templateUrl: 'slider-showcase.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSliderComponent] }) export class SliderShowcaseSampleComponent { diff --git a/src/app/slider/range-slider/range-slider.component.ts b/src/app/slider/range-slider/range-slider.component.ts index dcad1c532a0..e3297d07600 100644 --- a/src/app/slider/range-slider/range-slider.component.ts +++ b/src/app/slider/range-slider/range-slider.component.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxInputDirective, IgxInputGroupComponent, IgxLabelDirective, IgxSliderComponent, IgxSliderType, IgxThumbFromTemplateDirective, IgxThumbToTemplateDirective, IRangeSliderValue } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { IgxInputDirective, IgxInputGroupComponent, IgxLabelDirective, IgxSlider selector: 'app-range-slider', templateUrl: './range-slider.component.html', styleUrls: ['./range-slider.component.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSliderComponent, IgxThumbFromTemplateDirective, IgxThumbToTemplateDirective, FormsModule, IgxInputGroupComponent, IgxLabelDirective, IgxInputDirective] }) export class RangeSliderComponent { diff --git a/src/app/slider/slider.sample.ts b/src/app/slider/slider.sample.ts index 4d78c515a29..7b39fd02dd4 100644 --- a/src/app/slider/slider.sample.ts +++ b/src/app/slider/slider.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxSliderType, ISliderValueChangeEventArgs, IRangeSliderValue, TickLabelsOrientation, TicksOrientation, IgxButtonDirective, IgxSliderComponent, IgxTickLabelTemplateDirective } from 'igniteui-angular'; @@ -16,6 +16,7 @@ class Task { selector: 'app-slider-sample', styleUrls: ['slider.sample.scss'], templateUrl: 'slider.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxSliderComponent, FormsModule, IgxTickLabelTemplateDirective, IgxButtonDirective] }) export class SliderSampleComponent { diff --git a/src/app/snackbar-showcase/snackbar-showcase.sample.ts b/src/app/snackbar-showcase/snackbar-showcase.sample.ts index 632d9c68430..066fd3a277e 100644 --- a/src/app/snackbar-showcase/snackbar-showcase.sample.ts +++ b/src/app/snackbar-showcase/snackbar-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxSnackbarComponent @@ -18,6 +18,7 @@ defineComponents(IgcSnackbarComponent); templateUrl: 'snackbar-showcase.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxSnackbarComponent, IgxButtonDirective, diff --git a/src/app/stepper/stepper.sample.ts b/src/app/stepper/stepper.sample.ts index f24f00425b7..f701a9cadbe 100644 --- a/src/app/stepper/stepper.sample.ts +++ b/src/app/stepper/stepper.sample.ts @@ -1,13 +1,14 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - DestroyRef, - Directive, - ElementRef, - HostBinding, - inject, - OnInit, - ViewChild + Component, + CUSTOM_ELEMENTS_SCHEMA, + DestroyRef, + Directive, + ElementRef, + HostBinding, + inject, + OnInit, + ViewChild, + ChangeDetectionStrategy } from '@angular/core'; import { FormsModule, @@ -104,6 +105,7 @@ export class FormControlSyncDirective implements OnInit { templateUrl: 'stepper.sample.html', styleUrls: ['stepper.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, FormControlSyncDirective, diff --git a/src/app/styleguide/animations/animations.sample.ts b/src/app/styleguide/animations/animations.sample.ts index cb17e9ace85..1ebe5c34dc3 100644 --- a/src/app/styleguide/animations/animations.sample.ts +++ b/src/app/styleguide/animations/animations.sample.ts @@ -1,5 +1,5 @@ import { AnimationReferenceMetadata } from '@angular/animations'; -import { Component, ViewChild } from '@angular/core'; +import { Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { AbsolutePosition, IgxDialogComponent, IgxListComponent, IgxListItemComponent, IgxOverlayService, IgxRippleDirective, IListItemClickEventArgs, @@ -30,6 +30,7 @@ import { selector: 'app-animations-sample', styleUrls: ['animations.sample.scss'], templateUrl: 'animations.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxRippleDirective, IgxDialogComponent] }) export class AnimationsSampleComponent { diff --git a/src/app/styleguide/colors/color.sample.ts b/src/app/styleguide/colors/color.sample.ts index dab6c1b0070..76cfb0ed8dc 100644 --- a/src/app/styleguide/colors/color.sample.ts +++ b/src/app/styleguide/colors/color.sample.ts @@ -1,9 +1,10 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; @Component({ selector: 'app-colors-sample', styleUrls: ['color.sample.scss'], templateUrl: 'color.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [] }) export class ColorsSampleComponent { diff --git a/src/app/styleguide/shadows/shadows.sample.ts b/src/app/styleguide/shadows/shadows.sample.ts index 8d7dd83b7fe..2f874573770 100644 --- a/src/app/styleguide/shadows/shadows.sample.ts +++ b/src/app/styleguide/shadows/shadows.sample.ts @@ -1,9 +1,10 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; @Component({ selector: 'app-shadows-sample', styleUrls: ['shadows.sample.css'], templateUrl: 'shadows.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class ShadowsSampleComponent {} diff --git a/src/app/styleguide/typography/typography.sample.ts b/src/app/styleguide/typography/typography.sample.ts index 9ec64ed0d22..ac5331c91df 100644 --- a/src/app/styleguide/typography/typography.sample.ts +++ b/src/app/styleguide/typography/typography.sample.ts @@ -1,9 +1,10 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; @Component({ selector: 'app-typography-sample', styleUrls: ['typography.sample.css'], templateUrl: 'typography.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class TypographySampleComponent {} diff --git a/src/app/tabs-routing/tabs-routing-views.sample.ts b/src/app/tabs-routing/tabs-routing-views.sample.ts index 760b0576bb6..27b75d20143 100644 --- a/src/app/tabs-routing/tabs-routing-views.sample.ts +++ b/src/app/tabs-routing/tabs-routing-views.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { IgxAvatarComponent } from 'igniteui-angular/avatar'; import { IgxRippleDirective } from 'igniteui-angular/directives'; import { IgxIconComponent } from 'igniteui-angular/icon'; @@ -18,6 +18,7 @@ import { IgxListActionDirective, IgxListComponent, IgxListItemComponent, IgxList } `, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxListItemComponent, IgxRippleDirective, IgxAvatarComponent, IgxListThumbnailDirective, IgxListLineTitleDirective, IgxListLineSubTitleDirective, IgxIconComponent, IgxListActionDirective] }) export class TabsRoutingView1Component { @@ -63,6 +64,7 @@ export class TabsRoutingView1Component { arcu sollicitudin finibus. Vivamus id lorem pulvinar, accumsan justo vitae, vehicula diam. Mauris vel quam at velit venenatis vulputate in quis nisl.

`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class TabsRoutingView2Component { @@ -76,6 +78,7 @@ export class TabsRoutingView2Component { urna arcu, bibendum nec molestie ac, varius congue massa. Mauris porttitor viverra lacus. Donec efficitur purus id urna dapibus, vitae pharetra orci pellentesque.

`, + changeDetection: ChangeDetectionStrategy.Eager, standalone: true }) export class TabsRoutingView3Component { diff --git a/src/app/tabs-routing/tabs-routing.sample.ts b/src/app/tabs-routing/tabs-routing.sample.ts index 542c9c27b6d..01f0a66e8a6 100644 --- a/src/app/tabs-routing/tabs-routing.sample.ts +++ b/src/app/tabs-routing/tabs-routing.sample.ts @@ -1,4 +1,4 @@ -import { Component } from '@angular/core'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; import { Router, RouterLinkActive, RouterLink, RouterOutlet } from '@angular/router'; import { IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxButtonGroupComponent, IgxIconComponent, IgxTabHeaderComponent, IgxTabItemComponent, IgxTabsComponent, ITabsSelectedItemChangeEventArgs } from 'igniteui-angular'; @@ -7,6 +7,7 @@ import { IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxB selector: 'app-tabs-routing-sample', styleUrls: ['tabs-routing.sample.scss'], templateUrl: 'tabs-routing.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxTabsComponent, IgxTabItemComponent, RouterLinkActive, IgxTabHeaderComponent, RouterLink, IgxIconComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, RouterOutlet] }) export class TabsRoutingSampleComponent { diff --git a/src/app/tabs-showcase/tabs-showcase.sample.ts b/src/app/tabs-showcase/tabs-showcase.sample.ts index fcf308b106f..f4faa803984 100644 --- a/src/app/tabs-showcase/tabs-showcase.sample.ts +++ b/src/app/tabs-showcase/tabs-showcase.sample.ts @@ -1,14 +1,15 @@ import { - Component, - CUSTOM_ELEMENTS_SCHEMA, - inject, - TemplateRef, - ViewChild, - ViewEncapsulation, - OnInit, - ElementRef, - ChangeDetectorRef, - DestroyRef, + Component, + CUSTOM_ELEMENTS_SCHEMA, + inject, + TemplateRef, + ViewChild, + ViewEncapsulation, + OnInit, + ElementRef, + ChangeDetectorRef, + DestroyRef, + ChangeDetectionStrategy } from '@angular/core'; import { @@ -42,6 +43,7 @@ registerIconFromText( schemas: [CUSTOM_ELEMENTS_SCHEMA], encapsulation: ViewEncapsulation.None, standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonDirective, IgxIconComponent, IGX_TABS_DIRECTIVES] }) export class TabsShowcaseSampleComponent implements OnInit { diff --git a/src/app/time-picker/time-picker.sample.ts b/src/app/time-picker/time-picker.sample.ts index 6023e5906f0..48ab9e3f44b 100644 --- a/src/app/time-picker/time-picker.sample.ts +++ b/src/app/time-picker/time-picker.sample.ts @@ -1,4 +1,4 @@ -import { Component, DestroyRef, inject, TemplateRef, ViewChild, OnInit } from '@angular/core'; +import { Component, DestroyRef, inject, TemplateRef, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule, ReactiveFormsModule, UntypedFormBuilder, Validators } from '@angular/forms'; import { IgxTimePickerComponent, @@ -26,6 +26,7 @@ import { selector: 'app-time-picker-sample', styleUrls: ['time-picker.sample.scss'], templateUrl: 'time-picker.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxTimePickerComponent, FormsModule, diff --git a/src/app/toast-showcase/toast-showcase.sample.ts b/src/app/toast-showcase/toast-showcase.sample.ts index a812a596968..1de40c27ee1 100644 --- a/src/app/toast-showcase/toast-showcase.sample.ts +++ b/src/app/toast-showcase/toast-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { IgxButtonDirective, IgxRippleDirective, @@ -18,6 +18,7 @@ defineComponents(IgcToastComponent); styleUrls: ['toast-showcase.sample.scss'], templateUrl: 'toast-showcase.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxButtonDirective, IgxRippleDirective, diff --git a/src/app/tooltip/tooltip.sample.ts b/src/app/tooltip/tooltip.sample.ts index 5482ab0e370..72e315fd4ae 100644 --- a/src/app/tooltip/tooltip.sample.ts +++ b/src/app/tooltip/tooltip.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, OnInit, ViewChild } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxAvatarComponent, @@ -30,6 +30,7 @@ defineComponents(IgcTooltipComponent, IgcButtonComponent); styleUrls: ['tooltip.sample.css'], templateUrl: 'tooltip.sample.html', schemas: [CUSTOM_ELEMENTS_SCHEMA], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxAvatarComponent, IgxTooltipTargetDirective, IgxTooltipDirective, IgxIconComponent, IgxIconButtonDirective, IgxSwitchComponent, FormsModule, IgxSliderComponent, IgxButtonDirective, IgxCardComponent, IgxCardContentDirective, IgxCardActionsComponent, IgxRippleDirective, IgxGridComponent, IgxColumnComponent, IgxCellTemplateDirective] }) export class TooltipSampleComponent implements OnInit { diff --git a/src/app/tree-grid-add-row/tree-grid-add-row.sample.html b/src/app/tree-grid-add-row/tree-grid-add-row.sample.html index 437a82fcaaf..918ac5cad58 100644 --- a/src/app/tree-grid-add-row/tree-grid-add-row.sample.html +++ b/src/app/tree-grid-add-row/tree-grid-add-row.sample.html @@ -1,40 +1,73 @@
- - @for (c of columns; track c) { - - - } - - - - - - + + @for (c of columns; track c) { + + + } + + + + + + +
+
+ +
-
-
- -
- -
- - - - - -
- -
- - - - - -
+
+ + + + + +
+
+ + + + +
+
+
diff --git a/src/app/tree-grid-add-row/tree-grid-add-row.sample.ts b/src/app/tree-grid-add-row/tree-grid-add-row.sample.ts index e920daa74fa..ff0f4955b77 100644 --- a/src/app/tree-grid-add-row/tree-grid-add-row.sample.ts +++ b/src/app/tree-grid-add-row/tree-grid-add-row.sample.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, ViewChild } from '@angular/core'; +import { Component, OnInit, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { ColumnPinningPosition, IgxActionStripComponent, IgxButtonDirective, IgxColumnComponent, IgxGridEditingActionsComponent, IgxGridPinningActionsComponent, IgxInputDirective, IgxInputGroupComponent, IgxLabelDirective, IgxTreeGridComponent, RowPinningPosition } from 'igniteui-angular'; @@ -6,6 +6,7 @@ import { ColumnPinningPosition, IgxActionStripComponent, IgxButtonDirective, Igx selector: 'app-tree-grid-add-row', styleUrls: ['tree-grid-add-row.sample.scss'], templateUrl: `tree-grid-add-row.sample.html`, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxTreeGridComponent, IgxColumnComponent, IgxActionStripComponent, IgxGridPinningActionsComponent, IgxGridEditingActionsComponent, IgxButtonDirective, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective] }) export class TreeGridAddRowSampleComponent implements OnInit { diff --git a/src/app/tree-grid-flat-data/tree-grid-flat-data.sample.ts b/src/app/tree-grid-flat-data/tree-grid-flat-data.sample.ts index 8d7fd37a3b5..264823c5593 100644 --- a/src/app/tree-grid-flat-data/tree-grid-flat-data.sample.ts +++ b/src/app/tree-grid-flat-data/tree-grid-flat-data.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { GridSearchBoxComponent } from '../grid-search-box/grid-search-box.component'; @@ -22,6 +22,7 @@ export class MySummaryOperand extends IgxSummaryOperand { selector: 'app-tree-grid-flat-data-sample', styleUrls: ['tree-grid-flat-data.sample.scss'], templateUrl: 'tree-grid-flat-data.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxButtonDirective, IgxTreeGridComponent, IgxColumnComponent, IgxGridToolbarComponent, GridSearchBoxComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxPaginatorComponent, IgxSwitchComponent, FormsModule] }) export class TreeGridFlatDataSampleComponent implements OnInit { diff --git a/src/app/tree-grid-groupby/tree-grid-groupby.sample.ts b/src/app/tree-grid-groupby/tree-grid-groupby.sample.ts index 466eb1ce7d5..230a983a589 100644 --- a/src/app/tree-grid-groupby/tree-grid-groupby.sample.ts +++ b/src/app/tree-grid-groupby/tree-grid-groupby.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { SAMPLE_DATA } from '../shared/sample-data'; @@ -10,6 +10,7 @@ import { IgxButtonGroupComponent, IgxSwitchComponent, IgxTreeGridComponent, IgxT selector: 'app-tree-grid-groupby-sample', styleUrls: ['tree-grid-groupby.sample.scss'], templateUrl: 'tree-grid-groupby.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxSwitchComponent, FormsModule, IgxTreeGridComponent, IgxTreeGridGroupByAreaComponent, IgxColumnComponent, IgxTreeGridGroupingPipe] }) diff --git a/src/app/tree-grid-load-on-demand/tree-grid-load-on-demand.sample.ts b/src/app/tree-grid-load-on-demand/tree-grid-load-on-demand.sample.ts index 0214c9e4209..bb33273eb88 100644 --- a/src/app/tree-grid-load-on-demand/tree-grid-load-on-demand.sample.ts +++ b/src/app/tree-grid-load-on-demand/tree-grid-load-on-demand.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { TreeGridLoadOnDemandService } from './tree-grid-load-on-demand.service'; @@ -24,6 +24,7 @@ export class MySummaryOperand extends IgxSummaryOperand { selector: 'app-tree-grid-load-on-demand-sample', styleUrls: ['tree-grid-load-on-demand.sample.scss'], templateUrl: 'tree-grid-load-on-demand.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxTreeGridComponent, IgxGridToolbarComponent, GridSearchBoxComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxColumnComponent, IgxSwitchComponent, FormsModule, IgxPaginatorComponent, IgxButtonDirective] }) export class TreeGridLoadOnDemandSampleComponent implements OnInit { diff --git a/src/app/tree-grid/tree-grid.sample.ts b/src/app/tree-grid/tree-grid.sample.ts index 44989f7d246..3ca443a8469 100644 --- a/src/app/tree-grid/tree-grid.sample.ts +++ b/src/app/tree-grid/tree-grid.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, HostBinding } from '@angular/core'; +import { Component, ViewChild, OnInit, HostBinding, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HIERARCHICAL_SAMPLE_DATA } from '../shared/sample-data'; @@ -11,6 +11,7 @@ import { IgxButtonGroupComponent, IgxTreeGridComponent, IgxGridToolbarComponent, selector: 'app-tree-grid-sample', styleUrls: ['tree-grid.sample.scss'], templateUrl: 'tree-grid.sample.html', + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxButtonGroupComponent, IgxTreeGridComponent, IgxGridToolbarComponent, GridSearchBoxComponent, IgxGridToolbarActionsComponent, IgxGridToolbarPinningComponent, IgxGridToolbarHidingComponent, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarExporterComponent, IgxExcelTextDirective, IgxCSVTextDirective, IgxPaginatorComponent, IgxSwitchComponent, FormsModule, IgxButtonDirective, IgxToggleActionDirective, IgxDropDownItemNavigationDirective, IgxDropDownComponent, IgxDropDownItemComponent] }) diff --git a/src/app/tree-showcase/tree-showcase.sample.ts b/src/app/tree-showcase/tree-showcase.sample.ts index 1b43895b2b3..50b1b690e00 100644 --- a/src/app/tree-showcase/tree-showcase.sample.ts +++ b/src/app/tree-showcase/tree-showcase.sample.ts @@ -1,4 +1,4 @@ -import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef } from '@angular/core'; +import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, ChangeDetectionStrategy } from '@angular/core'; import { HIERARCHICAL_SAMPLE_DATA } from '../shared/sample-data'; import { IGX_TREE_DIRECTIVES, @@ -30,6 +30,7 @@ interface CompanyData { styleUrls: ['tree-showcase.sample.scss'], schemas: [CUSTOM_ELEMENTS_SCHEMA], standalone: true, + changeDetection: ChangeDetectionStrategy.Eager, imports: [IGX_TREE_DIRECTIVES, IgSizeDirective], }) export class TreeShowcaseSampleComponent { diff --git a/src/app/tree/tree.sample.ts b/src/app/tree/tree.sample.ts index 28ed9c02a11..c4274b3619f 100644 --- a/src/app/tree/tree.sample.ts +++ b/src/app/tree/tree.sample.ts @@ -1,6 +1,6 @@ import { useAnimation } from '@angular/animations'; import { NgTemplateOutlet, AsyncPipe } from '@angular/common'; -import { AfterViewInit, ChangeDetectorRef, Component, ViewChild } from '@angular/core'; +import { AfterViewInit, ChangeDetectorRef, Component, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { IgxTreeNodeComponent, @@ -50,6 +50,7 @@ interface CompanyData { selector: 'app-tree-sample', templateUrl: 'tree.sample.html', styleUrls: ['tree.sample.scss'], + changeDetection: ChangeDetectionStrategy.Eager, imports: [ IgxLayoutDirective, IgxInputGroupComponent, diff --git a/src/app/virtual-for-directive/virtual-for.sample.ts b/src/app/virtual-for-directive/virtual-for.sample.ts index f315df145d1..ea38052dd41 100644 --- a/src/app/virtual-for-directive/virtual-for.sample.ts +++ b/src/app/virtual-for-directive/virtual-for.sample.ts @@ -1,4 +1,4 @@ -import { Component, ViewChild, OnInit, ViewEncapsulation } from '@angular/core'; +import { Component, ViewChild, OnInit, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core'; import { NgClass, AsyncPipe } from '@angular/common'; import { RemoteService } from '../shared/remote.service'; import { IgxForOfDirective, ButtonGroupAlignment, IgxListComponent, IgxButtonDirective, IgxButtonGroupComponent, IgxInputDirective, IgxInputGroupComponent, IgxListItemComponent, IgxSuffixDirective } from 'igniteui-angular'; @@ -10,6 +10,7 @@ import { IgxForOfDirective, ButtonGroupAlignment, IgxListComponent, IgxButtonDir styleUrls: ['virtual-for.sample.css'], encapsulation: ViewEncapsulation.None, providers: [RemoteService], + changeDetection: ChangeDetectionStrategy.Eager, imports: [IgxListComponent, IgxForOfDirective, IgxListItemComponent, IgxInputGroupComponent, IgxInputDirective, IgxSuffixDirective, IgxButtonDirective, IgxButtonGroupComponent, NgClass, AsyncPipe] }) export class VirtualForSampleComponent implements OnInit { diff --git a/src/tsconfig.app.json b/src/tsconfig.app.json index 718ed829af6..c809e717082 100644 --- a/src/tsconfig.app.json +++ b/src/tsconfig.app.json @@ -1,18 +1,18 @@ { - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/app", - "types": [ - "node" - ], - "allowSyntheticDefaultImports": true - }, - "files": [ - "main.ts", - "main.server.ts", - "server.ts" - ], - "include": [ - "**/*.d.ts" - ] + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/app", + "types": ["node"], + "allowSyntheticDefaultImports": true + }, + "files": ["main.ts", "main.server.ts", "server.ts"], + "include": ["**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } } diff --git a/src/tsconfig.spec.json b/src/tsconfig.spec.json index 12ac5090b6c..d781921c326 100644 --- a/src/tsconfig.spec.json +++ b/src/tsconfig.spec.json @@ -2,18 +2,16 @@ "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/spec", - "types": [ - "jasmine", - "node", - "hammerjs" - ] + "types": ["jasmine", "node", "hammerjs"] }, - "files": [ - "test.ts", - "polyfills.ts" - ], - "include": [ - "**/*.spec.ts", - "**/*.d.ts" - ] + "files": ["test.ts", "polyfills.ts"], + "include": ["**/*.spec.ts", "**/*.d.ts"], + "angularCompilerOptions": { + "extendedDiagnostics": { + "checks": { + "nullishCoalescingNotNullable": "suppress", + "optionalChainNotNullable": "suppress" + } + } + } }