diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index cede4d5..33556af 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,32 +1,4 @@ -# Displaying a sponsor button in your repository -# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository - -# LFX Mentorship (formerly CommunityBridge) -# https://lfx.linuxfoundation.org/tools/mentorship -community_bridge: -# GitHub Sponsors -# https://github.com/sponsors -github: [ProAngular, CodyTolene] -# IssueHunt -# https://issuehunt.io/ -issuehunt: -# Ko-fi -# https://ko-fi.com/ -ko_fi: -# Liberapay -# https://en.liberapay.com/ -liberapay: -# Open Collective -# https://opencollective.com/ -open_collective: -# Otechie -# https://otechie.com/ -otechie: -# Patreon -# https://www.patreon.com/ -patreon: -# Tidelift -# https://tidelift.com/ -tidelift: -# Custom URL +github: [CodyTolene, ProAngular] +buy_me_a_coffee: CodyTolene +patreon: CodyTolene custom: ['https://www.paypal.me/CodyTolene'] diff --git a/.github/images/screenshots/.gitkeep b/.github/images/screenshots/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/.github/images/screenshots/screenshot.png b/.github/images/screenshots/screenshot.png new file mode 100644 index 0000000..208a3e1 Binary files /dev/null and b/.github/images/screenshots/screenshot.png differ diff --git a/.github/workflows/on-merge-main-deploy-gpr.yml b/.github/workflows/on-merge-main-deploy-gpr.yml index e81b35c..5d6ee89 100644 --- a/.github/workflows/on-merge-main-deploy-gpr.yml +++ b/.github/workflows/on-merge-main-deploy-gpr.yml @@ -1,12 +1,10 @@ -# Github Package Deployment -# https://docs.github.com/en/packages -# https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages - name: Verify and Deploy to GitHub Packages + on: push: - branches: - - main + tags: + - 'v*' + jobs: deploy_gpr_package: runs-on: ubuntu-latest @@ -20,7 +18,7 @@ jobs: node-version: '20.x' registry-url: 'https://npm.pkg.github.com' - run: npm ci - - run: npm run build:package + - run: npm run npm-build-package - run: cd dist/npm && npm publish --access=public env: NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/on-merge-main-deploy-npmjs.yml b/.github/workflows/on-merge-main-deploy-npmjs.yml index d96f9d0..3dad5ef 100644 --- a/.github/workflows/on-merge-main-deploy-npmjs.yml +++ b/.github/workflows/on-merge-main-deploy-npmjs.yml @@ -1,11 +1,14 @@ -# npmjs Package Deployment -# https://docs.npmjs.com/about-packages-and-modules - name: Verify and Deploy to npmjs + +permissions: + id-token: write + contents: read + on: push: - branches: - - main + tags: + - 'v*' + jobs: deploy_npmjs_package: runs-on: ubuntu-latest @@ -15,8 +18,8 @@ jobs: with: node-version: '20.x' registry-url: 'https://registry.npmjs.org' + - name: Update npm to latest + run: npm install -g npm@latest - run: npm ci - - run: npm run build:package - - run: cd dist/npm && npm publish --access=public - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} + - run: npm run npm-build-package + - run: cd dist/npm && npm publish diff --git a/.github/workflows/verify-pull-request.yml b/.github/workflows/verify-pull-request.yml index e0de760..7f2e145 100644 --- a/.github/workflows/verify-pull-request.yml +++ b/.github/workflows/verify-pull-request.yml @@ -16,4 +16,4 @@ jobs: - name: Build πŸ”§ run: | npm run build:prod - npm run build:package + npm run npm-build-package diff --git a/.prettierignore b/.prettierignore index 8b1e811..ec71f36 100644 --- a/.prettierignore +++ b/.prettierignore @@ -11,8 +11,8 @@ public/ !eslint.config.js !package.json !src/ -!src/app/ -!src/app/public/ +!src/** +!src/**/* # Re-ignore sub-directories from the above exempt directories: .github/CODEOWNERS diff --git a/README.md b/README.md index fb7ad5f..8a070ab 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,30 @@
- +

- Pro Angular: Table Component + @proangular/pro-table

- - View Github Repository -

- An abstraction of Angular Material’s table that speeds up development time and gives you quick access to features such as type safe columns, row selection, copy on click, expandable rows, intent based sorting, and more! + + ProAngular +   |   + + GitHub Repo +   |   + + NPM Package +   |   + + Demo Page + +

+

+ An abstraction of Angular Material’s table that speeds up development time + and gives you quick access to features such as type safe columns, row + selection, copy on click, expandable rows, intent based sorting, and more!

@@ -17,57 +32,72 @@ -[![npm](https://badgen.net/badge/icon/npm?icon=npm&label)](https://www.npmjs.com/@proangular/pro-table) -[![GitHub](https://badgen.net/badge/icon/GitHub?icon=github&label)](https://github.com/ProAngular/pro-table) -[![TypeScript](https://badgen.net/badge/icon/TypeScript?icon=typescript&label)](https://github.com/ProAngular/pro-table/search?l=typescript) -[![npm Version](https://badge.fury.io/js/@proangular%2Fngx-scroll-top.svg)](https://www.npmjs.com/@proangular/pro-table) -[![Node Version](https://badgen.net/npm/node/@proangular/pro-table)](https://www.npmjs.com/@proangular/pro-table) -[![Package Downloads](https://badgen.net/npm/dw/@proangular/pro-table)](https://www.npmjs.com/@proangular/pro-table) -[![Size](https://img.shields.io/bundlephobia/minzip/@proangular/pro-table.svg)](https://bundlephobia.com/result?p=ProAngular/pro-table) -[![Demo Status](https://badgen.net/badge/Demo/Online/green)](https://www.ProAngular.com/demos/pro-table) -[![Website Status](https://img.shields.io/website?down_color=lightgrey&down_message=Offline&label=Website&up_color=green&up_message=Online&url=https%3A%2F%2Fwww.proangular.com)](https://www.proangular.com) -[![Sponsors](https://img.shields.io/github/sponsors/proangular?label=Sponsors)](https://github.com/sponsors/ProAngular) -[![License](https://img.shields.io/npm/l/express.svg?maxAge=2592000)](/LICENSE) -[![GitHub Package Status](https://github.com/ProAngular/pro-table/actions/workflows/on-merge-main-deploy-gpr.yml/badge.svg)](https://github.com/ProAngular/pro-table/actions/workflows/on-merge-main-deploy-gpr.yml) -[![npmjs Package Status](https://github.com/ProAngular/pro-table/actions/workflows/on-merge-main-deploy-npmjs.yml/badge.svg)](https://github.com/ProAngular/pro-table/actions/workflows/on-merge-main-deploy-npmjs.yml) +

+ + + + + + + + + +

+ + -## Index - -- [Preview](#preview) -- [Description](#description) -- [Installation](#installation) - - [Prerequisites](#prerequisites) - - [Install Pro Table Components](#install-pro-table-components) -- [Usage](#usage) - - [Importing](#importing) - - [Expandable Rows](#expandable-rows) - - [API](#api) -- [Compatibility](#compatibility) -- [Contributions](#contributions) -- [Licensing](#licensing) -- [Wrapping Up](#wrapping-up) +

+ ng add @proangular/pro-table +

+

+ +

+

+ Click here to preview it live! +

-## Preview - -Preview the live demo below to see the Pro Table Components in action: - -https://www.ProAngular.com/demos/pro-table +## Index -

[ Index ]

+- [πŸ“„ Description](#description) +- [πŸ“¦ Installation](#installation) + - [πŸ“‹ Prerequisites](#prerequisites) + - [πŸ“₯ Install Pro Table Components](#install-pro-table-components) +- [πŸ’» Usage](#usage) + - [πŸ“€ Importing](#importing) + - [πŸ”½ Expandable Rows](#expandable-rows) + - [πŸ“š API](#api) +- [πŸ”„ Compatibility](#compatibility) +- [🀝 Contributions](#contributions) +- [βš–οΈ Licensing](#licensing) +- [🏁 Wrapping Up](#wrapping-up) -## Description +## πŸ“„ Description `@proangular/pro-table` is a **type-safe, Angular abstraction** over Angular Material’s table. It’s designed for apps using **standalone components, signals, @@ -131,12 +161,12 @@ data. -## Installation +## πŸ“¦ Installation Using Node Package Manager ([NPM][url-node-js]) in a new terminal window run the following commands to install the required dependencies. -### Prerequisites +### πŸ“‹ Prerequisites **Angular Material** @@ -147,7 +177,7 @@ https://material.angular.io/guide/theming ng add @angular/material ``` -### Install Pro Table Components +### πŸ“₯ Install Pro Table Components ```bash ng add @proangular/pro-table@latest @@ -165,9 +195,9 @@ npm install @proangular/pro-table --save -## Usage +## πŸ’» Usage -### Importing +### πŸ“€ Importing Import the table component to use in your Angular application where used: @@ -202,7 +232,7 @@ Import the table component to use in your Angular application where used: -### Expandable Rows +### πŸ”½ Expandable Rows ```html @@ -226,7 +256,7 @@ the template when expanded. -### API +### πŸ“š API #### Input Bindings (required): @@ -312,7 +342,7 @@ interface TableTemplateReferenceExpandableObject< -## Compatibility +## πŸ”„ Compatibility | Angular version | @proangular/pro-table | Install | | --------------- | --------------------- | -------------------------------- | @@ -327,7 +357,7 @@ interface TableTemplateReferenceExpandableObject< -## Contributions +## 🀝 Contributions Please submit all issues, and feature requests here: [https://github.com/ProAngular/pro-table/issues][url-new-issue] @@ -362,7 +392,7 @@ Thank you for any and all contributions! -## Licensing +## βš–οΈ Licensing This project is licensed under the **MIT** License. See the [LICENSE](LICENSE.md) file for the pertaining license text. @@ -375,7 +405,7 @@ This project is licensed under the **MIT** License. See the -## Wrapping Up +## 🏁 Wrapping Up Thank you to the entire Angular team and community for such a great framework to build upon. If you have any questions, please let me know by opening an issue diff --git a/package-lock.json b/package-lock.json index 28b9249..c25b5cc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,27 +1,27 @@ { "name": "@proangular/pro-table", - "version": "20.4.1", + "version": "20.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@proangular/pro-table", - "version": "20.4.1", + "version": "20.5.0", "hasInstallScript": true, "license": "MIT", "devDependencies": { - "@angular/build": "^20.3.3", - "@angular/cli": "^20.3.3", - "@angular/compiler": "20.3.2", - "@angular/compiler-cli": "^20.3.2", - "@angular/platform-browser": "20.3.2", - "@angular/platform-browser-dynamic": "20.3.2", - "@angular/router": "^20.3.2", + "@angular/build": "^20.3.10", + "@angular/cli": "^20.3.10", + "@angular/compiler": "20.3.12", + "@angular/compiler-cli": "^20.3.12", + "@angular/platform-browser": "20.3.12", + "@angular/platform-browser-dynamic": "20.3.12", + "@angular/router": "^20.3.12", "@trivago/prettier-plugin-sort-imports": "^5.2.2", "@types/jasmine": "~5.1.8", "@types/luxon": "^3.4.2", "@types/node": "^24.2.1", - "angular-eslint": "^20.1.1", + "angular-eslint": "^20.6.0", "eslint": "^9.33.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", @@ -50,13 +50,13 @@ "url": "https://github.com/sponsors/proangular" }, "peerDependencies": { - "@angular/animations": ">=20 <21", - "@angular/cdk": ">=20 <21", - "@angular/common": ">=20 <21", - "@angular/core": ">=20 <21", - "@angular/forms": ">=20 <21", - "@angular/material": ">=20 <21", - "@angular/material-luxon-adapter": ">=20 <21", + "@angular/animations": "20.3.12", + "@angular/cdk": "20.2.13", + "@angular/common": "20.3.12", + "@angular/core": "20.3.12", + "@angular/forms": "20.3.12", + "@angular/material": "20.2.13", + "@angular/material-luxon-adapter": "20.2.13", "@ngneat/until-destroy": ">=10 <11", "luxon": ">=3 <4", "rxjs": ">=7.8 <8", @@ -287,13 +287,13 @@ } }, "node_modules/@angular-devkit/architect": { - "version": "0.2003.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2003.3.tgz", - "integrity": "sha512-DOnGyv9g24vaDzf5koLOcVri1kYJIBD9UKiJWOWk4H5cFlcpTXQ+PilPmDq6A+X94Tt4MZHImmKsk6LLRPIwFg==", + "version": "0.2003.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2003.10.tgz", + "integrity": "sha512-2SWetxJzS8gRX6OKQstkWx37VRvZVgcEBDLsDSaeTjpnwh81A+niZQjAVRdwL0NEt1Wixk/RxfeUuCmdyyHvhQ==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "20.3.3", + "@angular-devkit/core": "20.3.10", "rxjs": "7.8.2" }, "engines": { @@ -303,9 +303,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "20.3.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.3.tgz", - "integrity": "sha512-2T5mX2duLapZYPYmXUSUe9VW8Dhu10nVBVvEp31jSE6xvjbPM5mlsv6+fks1E4RjhzvaamY9bm3WgwYwNiEV5g==", + "version": "20.3.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.10.tgz", + "integrity": "sha512-COOT2eVebDwHhwENk12VR6m0wjL8D7p0dncEHF15zaBt1IXEnVhGESjSrs5klnPnt5T55qCBKyCTaeK7i/cS8Q==", "dev": true, "license": "MIT", "dependencies": { @@ -331,13 +331,13 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "20.3.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.3.tgz", - "integrity": "sha512-LDn39BjyQLAK/DaVamLElMtI0UoCZIs4jKcMEv8PJ/nnBmrYFHVavWPggeFWMycjeXsdX34Msiml88HZWlXypw==", + "version": "20.3.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.10.tgz", + "integrity": "sha512-2N2WF9lj+kr3uCG4+vFadYCL5hAT4dxMgzwScSdOqSd0O+GZD0CzKbDzlfvWIWC/ZealC5Sh4dFEQaRfmy72xA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "20.3.3", + "@angular-devkit/core": "20.3.10", "jsonc-parser": "3.3.1", "magic-string": "0.30.17", "ora": "8.2.0", @@ -350,9 +350,9 @@ } }, "node_modules/@angular-eslint/builder": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-20.3.0.tgz", - "integrity": "sha512-3XpWLdh+/K4+r0ChkKW00SXWyBA7ShMpE+Pt1XUmIu4srJgGRnt8e+kC4Syi+s2t5QS7PjlwRaelB1KfSMXZ5A==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-20.6.0.tgz", + "integrity": "sha512-bEvQxjnxXiajcPoSnFPRmc9MYLtultZX7Z/psqj6jiGVujgs5UObs91JcmT4QY56ZkdZjETw9RhztLmRTuLB3Q==", "dev": true, "license": "MIT", "dependencies": { @@ -365,21 +365,21 @@ } }, "node_modules/@angular-eslint/bundled-angular-compiler": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-20.3.0.tgz", - "integrity": "sha512-QwuNnmRNr/uNj89TxknPbGcs5snX1w7RoJJPNAsfb2QGcHzUTQovS8hqm9kaDZdpUJDPP7jt7B6F0+EjrPAXRA==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-20.6.0.tgz", + "integrity": "sha512-axeU33lBOcfQ/kcpBc/70vR69PFX9kqgUtroENK0lq6dBeRgi6LJVbBOAHRtR2Xfxd9Lv4YbqWuJ0oQ5BwSTGQ==", "dev": true, "license": "MIT" }, "node_modules/@angular-eslint/eslint-plugin": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-20.3.0.tgz", - "integrity": "sha512-7ghzGTiExrgTetDQ6IPP5uXSa94Xhtzp2VHCIa58EcUb7oMv06HWZ1Uss3xgFmACsLpN+vayKJIdFiboqaGVRA==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-20.6.0.tgz", + "integrity": "sha512-hvFtluNRjMqlkwxYGMO1RFgJ5N5/InFZZSHIOput+XXVXYwPrNjbyMY29/ndynpvNktcVq1UPpjv5JAucp0GlA==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "20.3.0", - "@angular-eslint/utils": "20.3.0", + "@angular-eslint/bundled-angular-compiler": "20.6.0", + "@angular-eslint/utils": "20.6.0", "ts-api-utils": "^2.1.0" }, "peerDependencies": { @@ -389,19 +389,19 @@ } }, "node_modules/@angular-eslint/eslint-plugin-template": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-20.3.0.tgz", - "integrity": "sha512-WMJDJfybOLCiN4QrOyrLl+Zt5F+A/xoDYMWTdn+LgACheLs2tguVQiwf+oCgHnHGcsTsulPYlRHldKBGZMgs4w==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-20.6.0.tgz", + "integrity": "sha512-HoV0QeZFP63vUyD+uBYdqGi95xNJ64Wsb9vG0/auY5sqHsed8tbmFZgNmr8/ho1AHMyQ2HhH7eLIsV2glftyEg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "20.3.0", - "@angular-eslint/utils": "20.3.0", + "@angular-eslint/bundled-angular-compiler": "20.6.0", + "@angular-eslint/utils": "20.6.0", "aria-query": "5.3.2", "axobject-query": "4.1.0" }, "peerDependencies": { - "@angular-eslint/template-parser": "20.3.0", + "@angular-eslint/template-parser": "20.6.0", "@typescript-eslint/types": "^7.11.0 || ^8.0.0", "@typescript-eslint/utils": "^7.11.0 || ^8.0.0", "eslint": "^8.57.0 || ^9.0.0", @@ -409,29 +409,42 @@ } }, "node_modules/@angular-eslint/schematics": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-20.3.0.tgz", - "integrity": "sha512-4n92tHKIJm1PP+FjhnmO7AMpvKdRIoF+YgF38oUU7aMJqfZ3RXIhazMMxw2u3VU1MisKH766KSll++c4LgarVA==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-20.6.0.tgz", + "integrity": "sha512-bZ3FFyfEUqnLkNj4OzU+0LQH4NiHtWbleuoaaTeIXAG9AHZP9H5PPD9loR3CUaLoHvwY22zWBkBOEuBBDkBAtw==", "dev": true, "license": "MIT", "dependencies": { "@angular-devkit/core": ">= 20.0.0 < 21.0.0", "@angular-devkit/schematics": ">= 20.0.0 < 21.0.0", - "@angular-eslint/eslint-plugin": "20.3.0", - "@angular-eslint/eslint-plugin-template": "20.3.0", + "@angular-eslint/eslint-plugin": "20.6.0", + "@angular-eslint/eslint-plugin-template": "20.6.0", "ignore": "7.0.5", - "semver": "7.7.2", + "semver": "7.7.3", "strip-json-comments": "3.1.1" } }, + "node_modules/@angular-eslint/schematics/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@angular-eslint/template-parser": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-20.3.0.tgz", - "integrity": "sha512-gB564h/kZ7siWvgHDETU++sk5e25qFfVaizLaa6KoBEYFP6dOCiedz15LTcA0TsXp0rGu6Z6zkl291iSM1qzDA==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-20.6.0.tgz", + "integrity": "sha512-dDsABCf8qoFEUmSQa2F0NBZtkxT+I4GQxKcYSpsFZdgv6zrE46lpJSuRgK8OKOq1jqMmbIEXp2h0FeHyJS/qmg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "20.3.0", + "@angular-eslint/bundled-angular-compiler": "20.6.0", "eslint-scope": "^8.0.2" }, "peerDependencies": { @@ -440,13 +453,13 @@ } }, "node_modules/@angular-eslint/utils": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-20.3.0.tgz", - "integrity": "sha512-7XOQeNXgyhznDwoP1TwPrCMq/uXKJHQgCVPFREkJGKbNf/jzNldB7iV1eqpBzUQIPEQFgfcDG67dexpMAq3N4g==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-20.6.0.tgz", + "integrity": "sha512-usjCCjbdtqy4p8I3BMPn6LrXECFLCohBa75h59PK0kV/TEb8OlnIWIWTVtZAMw/MgohtExl69GkSNmL3ElWbUQ==", "dev": true, "license": "MIT", "dependencies": { - "@angular-eslint/bundled-angular-compiler": "20.3.0" + "@angular-eslint/bundled-angular-compiler": "20.6.0" }, "peerDependencies": { "@typescript-eslint/utils": "^7.11.0 || ^8.0.0", @@ -455,9 +468,9 @@ } }, "node_modules/@angular/animations": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-20.3.2.tgz", - "integrity": "sha512-za7onSElEUbaI9iS8j7nKf8FjyvVng6wFsb2ZuHxr71dMgnYkqPfMu0KMP+mkZ3yUVc//7SllXcSkGBHShyCcw==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-20.3.12.tgz", + "integrity": "sha512-tkzruF0pbcOrC2lwsPKjkp5btazs6vcX4At7kyVFjjuPbgI6RNG+MoFXHpN9ypenscYtTAhDcPSmjBnzoDaXhQ==", "license": "MIT", "peer": true, "dependencies": { @@ -467,18 +480,18 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "20.3.2" + "@angular/core": "20.3.12" } }, "node_modules/@angular/build": { - "version": "20.3.3", - "resolved": "https://registry.npmjs.org/@angular/build/-/build-20.3.3.tgz", - "integrity": "sha512-WhwAbovHAxDbNeR5jB2IS/SVs+yQg9NETFeJ5f7T3n/414ULkGOhXn+29i1rzwJhf1uqM9lsedcv2tKn1N24/A==", + "version": "20.3.10", + "resolved": "https://registry.npmjs.org/@angular/build/-/build-20.3.10.tgz", + "integrity": "sha512-nQrj1nMNZygYDilThc7hPrD6/NIWF/BOSgMfE4VkXQp8d0QronP3HFJ/h77MeoughMRFRhix0pqQSlXJQ2SGTQ==", "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.2003.3", + "@angular-devkit/architect": "0.2003.10", "@babel/core": "7.28.3", "@babel/helper-annotate-as-pure": "7.27.3", "@babel/helper-split-export-declaration": "7.24.7", @@ -496,12 +509,12 @@ "parse5-html-rewriting-stream": "8.0.0", "picomatch": "4.0.3", "piscina": "5.1.3", - "rolldown": "1.0.0-beta.38", + "rollup": "4.52.3", "sass": "1.90.0", "semver": "7.7.2", "source-map-support": "0.5.21", "tinyglobby": "0.2.14", - "vite": "7.1.5", + "vite": "7.1.11", "watchpack": "2.4.4" }, "engines": { @@ -520,7 +533,7 @@ "@angular/platform-browser": "^20.0.0", "@angular/platform-server": "^20.0.0", "@angular/service-worker": "^20.0.0", - "@angular/ssr": "^20.3.3", + "@angular/ssr": "^20.3.10", "karma": "^6.4.0", "less": "^4.2.0", "ng-packagr": "^20.0.0", @@ -570,9 +583,9 @@ } }, "node_modules/@angular/cdk": { - "version": "20.2.7", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-20.2.7.tgz", - "integrity": "sha512-QTqxPJSMXyjaswtpUrziwdoKRhqT2P9/Ascwzjg8T/SofV1850pc3YmonoOFrurYrmd4plZzWdr7raGcBWIh/Q==", + "version": "20.2.13", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-20.2.13.tgz", + "integrity": "sha512-h1jTkCmJ/rEQQMkxgKFMCBOrMfjZEnppgdekNmSTerwdVp4vdosTDTzFH/kwiOGFeRClffmvqQ2XLG8mQOKOtA==", "license": "MIT", "peer": true, "dependencies": { @@ -586,19 +599,19 @@ } }, "node_modules/@angular/cli": { - "version": "20.3.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-20.3.3.tgz", - "integrity": "sha512-3c8xCklJ0C0T6ETSncAoXlOYNi3x7vLT3PS56rIaQ0jtlvD4Y+RQakd3+iffVAapvh/JB27WNor8pJRThLZ/jg==", + "version": "20.3.10", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-20.3.10.tgz", + "integrity": "sha512-CQzXScurBXSuMMn0jf6UYDItdggaM3bHYERKL4cUG1z5JqSozVFin1+TB1EjWYkddwdgC10R5xQurdMb+ahRNw==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/architect": "0.2003.3", - "@angular-devkit/core": "20.3.3", - "@angular-devkit/schematics": "20.3.3", + "@angular-devkit/architect": "0.2003.10", + "@angular-devkit/core": "20.3.10", + "@angular-devkit/schematics": "20.3.10", "@inquirer/prompts": "7.8.2", "@listr2/prompt-adapter-inquirer": "3.0.1", "@modelcontextprotocol/sdk": "1.17.3", - "@schematics/angular": "20.3.3", + "@schematics/angular": "20.3.10", "@yarnpkg/lockfile": "1.1.0", "algoliasearch": "5.35.0", "ini": "5.0.0", @@ -621,9 +634,9 @@ } }, "node_modules/@angular/common": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-20.3.2.tgz", - "integrity": "sha512-5V9AzLhCA1dNhF+mvihmdHoZHbEhIb1jNYRA1/JMheR+G7NR8Mznu6RmWaKSWZ4AJeSJN8rizWN2wpVPWTKjSQ==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-20.3.12.tgz", + "integrity": "sha512-rFcDfe67ffrb435C6t2lc27WGbizeOcgce30tUhH0iezwEvU+kHHWezXXX6Ylx3TFgqGkhcxL0fliuFYrpM1Vw==", "license": "MIT", "peer": true, "dependencies": { @@ -633,14 +646,14 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "20.3.2", + "@angular/core": "20.3.12", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-20.3.2.tgz", - "integrity": "sha512-5fSzkPmRomZ9H43c82FJWLwdOi7MICMimP1y1oYJZcUh3jYRhXUrQvD0jifdRVkkgKNjaZYlMr0NkrYQFgFong==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-20.3.12.tgz", + "integrity": "sha512-bGESKz97nWiEQ/sydTq/Lzv3zlLvDb8t0msLG5Xti7Ch1EdLddXS8d2D/zFsjiGbAUKVsT6RgPCLHYoi4ocbhA==", "devOptional": true, "license": "MIT", "dependencies": { @@ -651,9 +664,9 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-20.3.2.tgz", - "integrity": "sha512-rLox2THiALVQqYGUaxZ6YD8qUoXIOGTw3s0tim9/U65GuXGRtYgG0ZQWYp3yjEBes0Ksx2/15eFPp1Ol4FdEKQ==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-20.3.12.tgz", + "integrity": "sha512-3SJkexqsydYjIs0iLiJr5AdwkvumpzvjJM6s76iaxXHkRll5k/vM0wqkXLlSIwieBrecO9D4J73lDLWDevXl5A==", "dev": true, "license": "MIT", "dependencies": { @@ -674,7 +687,7 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "20.3.2", + "@angular/compiler": "20.3.12", "typescript": ">=5.8 <6.0" }, "peerDependenciesMeta": { @@ -684,9 +697,9 @@ } }, "node_modules/@angular/core": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-20.3.2.tgz", - "integrity": "sha512-88uPgs5LjtnywnQaZE2ShBb1wa8IuD6jWs4nc4feo32QdBc55tjebTBFJSHbi3mUVAp0eS4wI6ITo0YIb01H4g==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-20.3.12.tgz", + "integrity": "sha512-K7vibMr55a7+EsuDhkg4Pk+ELuMm12olllwqL/CiQUcHXZ9Zgc4KYGTUuxWB69qJCG90gdSZS7tm5Dx0wDcyjg==", "license": "MIT", "peer": true, "dependencies": { @@ -696,7 +709,7 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "20.3.2", + "@angular/compiler": "20.3.12", "rxjs": "^6.5.3 || ^7.4.0", "zone.js": "~0.15.0" }, @@ -710,9 +723,9 @@ } }, "node_modules/@angular/forms": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-20.3.2.tgz", - "integrity": "sha512-ECIbtwc7n9fPbiZXZVaoZpSiOksgcNbZ27oUN9BT7EmoXRzBw6yDL2UX6Ig7pEKhQGyBkKB+TMerRwTDVkkCWg==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-20.3.12.tgz", + "integrity": "sha512-O0Jy8ScaN3qVipDfR4s0SIxGrz/+MbCdmR05ZYVWf1W5P3dvETKt9WNjX9fYYV47GdgSveyFjuCR2NvWlv94zA==", "license": "MIT", "peer": true, "dependencies": { @@ -722,23 +735,23 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "20.3.2", - "@angular/core": "20.3.2", - "@angular/platform-browser": "20.3.2", + "@angular/common": "20.3.12", + "@angular/core": "20.3.12", + "@angular/platform-browser": "20.3.12", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/material": { - "version": "20.2.7", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-20.2.7.tgz", - "integrity": "sha512-VXsP5qkQQ3sCGkSHsgDku/OVlunGsqssOM057foOKJuajECsI3ZpGuLJ13nvLm9Z147UZOZfP463ixZIjd4XuQ==", + "version": "20.2.13", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-20.2.13.tgz", + "integrity": "sha512-9pjp2mULOxojYzOO7qdqt/gSVLrpYBwsIM3K0fxp+mNEcJgNjIxvmRKx46LY9+v0yrPY9puoQvP/T2C+o1+xsw==", "license": "MIT", "peer": true, "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/cdk": "20.2.7", + "@angular/cdk": "20.2.13", "@angular/common": "^20.0.0 || ^21.0.0", "@angular/core": "^20.0.0 || ^21.0.0", "@angular/forms": "^20.0.0 || ^21.0.0", @@ -747,9 +760,9 @@ } }, "node_modules/@angular/material-luxon-adapter": { - "version": "20.2.7", - "resolved": "https://registry.npmjs.org/@angular/material-luxon-adapter/-/material-luxon-adapter-20.2.7.tgz", - "integrity": "sha512-6L6NU1q7OWzxQ2uLQtNAGHOp4M1p/lAB2UKc5Z/F3myWx6njJMgAtxuuq7xvaCY2TyDUP7n5bFAPmGB9fmiyZQ==", + "version": "20.2.13", + "resolved": "https://registry.npmjs.org/@angular/material-luxon-adapter/-/material-luxon-adapter-20.2.13.tgz", + "integrity": "sha512-z/3BQHEfOnfN9sudcjvR/OZwWiwyYv0FfHmUFP6T1MMuydpEdY/rUcQzyyC/wCHOtM6oUrfURdkGkWNwc6T9zw==", "license": "MIT", "peer": true, "dependencies": { @@ -757,14 +770,14 @@ }, "peerDependencies": { "@angular/core": "^20.0.0 || ^21.0.0", - "@angular/material": "20.2.7", + "@angular/material": "20.2.13", "luxon": "^3.0.0" } }, "node_modules/@angular/platform-browser": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-20.3.2.tgz", - "integrity": "sha512-d9XcT2UuWZCc0UOtkCcPEnMcOFKNczahamT/Izg3H9jLS3IcT6l0ry23d/Xf0DRwhLYQdOZiG7l8HMZ1sWPMOg==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-20.3.12.tgz", + "integrity": "sha512-14KQsXZyaQhbRwFz1W58CtbXQc9L+mfuHBgwQjQo99422Yk0ye5WVMb6DHH7dH671qFVqL0XL7zdOPBebaAnJQ==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -773,9 +786,9 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/animations": "20.3.2", - "@angular/common": "20.3.2", - "@angular/core": "20.3.2" + "@angular/animations": "20.3.12", + "@angular/common": "20.3.12", + "@angular/core": "20.3.12" }, "peerDependenciesMeta": { "@angular/animations": { @@ -784,9 +797,9 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-20.3.2.tgz", - "integrity": "sha512-ehoV67Vxr3ZE8BJ3g7Q4ZLHo3qJVoDUDz/4UeCqmDeOnKxcdD53HTA/pgOO4QhKStUFbzgU19OQD4e6fkP8YoQ==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-20.3.12.tgz", + "integrity": "sha512-VviTUCpcbwErQjWd+EZklQf1Fw1FtXui6ey4rEb9g9mCEJ/o08LkM7mWV5IoE6QNCfbgkfgNjEJSJvWe409Mow==", "dev": true, "license": "MIT", "dependencies": { @@ -796,16 +809,16 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "20.3.2", - "@angular/compiler": "20.3.2", - "@angular/core": "20.3.2", - "@angular/platform-browser": "20.3.2" + "@angular/common": "20.3.12", + "@angular/compiler": "20.3.12", + "@angular/core": "20.3.12", + "@angular/platform-browser": "20.3.12" } }, "node_modules/@angular/router": { - "version": "20.3.2", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-20.3.2.tgz", - "integrity": "sha512-+Crx6QpK00juoNU3A1vbVf4DQ7fduLe3DUdAob6a9Uj+IoWj2Ijd8zUWF8E0cfNNFotJ4Gost0lJORDvqKcC7A==", + "version": "20.3.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-20.3.12.tgz", + "integrity": "sha512-hUipb9JI/Euy3bdlhzkcWlw3cTyssPTVTDwSvyGxWO4i+UKATQYmxh8EDOrDYzFp6Aexiy0Hff/H8umdsn6ZdA==", "dev": true, "license": "MIT", "dependencies": { @@ -815,9 +828,9 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "20.3.2", - "@angular/core": "20.3.2", - "@angular/platform-browser": "20.3.2", + "@angular/common": "20.3.12", + "@angular/core": "20.3.12", + "@angular/platform-browser": "20.3.12", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -1124,40 +1137,6 @@ "node": ">=0.1.90" } }, - "node_modules/@emnapi/core": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.5.0.tgz", - "integrity": "sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@emnapi/wasi-threads": "1.1.0", - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/runtime": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.5.0.tgz", - "integrity": "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@emnapi/wasi-threads": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, "node_modules/@es-joy/jsdoccomment": { "version": "0.56.0", "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.56.0.tgz", @@ -2958,19 +2937,6 @@ "node": ">= 10" } }, - "node_modules/@napi-rs/wasm-runtime": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.5.tgz", - "integrity": "sha512-TBr9Cf9onSAS2LQ2+QHx6XcC6h9+RIzJgbqG3++9TUZSH204AwEy5jg3BTQ0VATsyoGj4ee49tN/y6rvaOOtcg==", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@emnapi/core": "^1.5.0", - "@emnapi/runtime": "^1.5.0", - "@tybys/wasm-util": "^0.10.1" - } - }, "node_modules/@ngneat/until-destroy": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/@ngneat/until-destroy/-/until-destroy-10.0.0.tgz", @@ -3293,16 +3259,6 @@ "node": "^18.17.0 || >=20.5.0" } }, - "node_modules/@oxc-project/types": { - "version": "0.89.0", - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.89.0.tgz", - "integrity": "sha512-yuo+ECPIW5Q9mSeNmCDC2im33bfKuwW18mwkaHMQh8KakHYDzj4ci/q7wxf2qS3dMlVVCIyrs3kFtH5LmnlYnw==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/Boshen" - } - }, "node_modules/@parcel/watcher": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", @@ -3646,251 +3602,6 @@ "node": ">=14" } }, - "node_modules/@rolldown/binding-android-arm64": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-beta.38.tgz", - "integrity": "sha512-AE3HFQrjWCKLFZD1Vpiy+qsqTRwwoil1oM5WsKPSmfQ5fif/A+ZtOZetF32erZdsR7qyvns6qHEteEsF6g6rsQ==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-beta.38.tgz", - "integrity": "sha512-RaoWOKc0rrFsVmKOjQpebMY6c6/I7GR1FBc25v7L/R7NlM0166mUotwGEv7vxu7ruXH4SJcFeVrfADFUUXUmmQ==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-beta.38.tgz", - "integrity": "sha512-Ymojqc2U35iUc8NFU2XX1WQPfBRRHN6xHcrxAf9WS8BFFBn8pDrH5QPvH1tYs3lDkw6UGGbanr1RGzARqdUp1g==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-beta.38.tgz", - "integrity": "sha512-0ermTQ//WzSI0nOL3z/LUWMNiE9xeM5cLGxjewPFEexqxV/0uM8/lNp9QageQ8jfc/VO1OURsGw34HYO5PaL8w==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-beta.38.tgz", - "integrity": "sha512-GADxzVUTCTp6EWI52831A29Tt7PukFe94nhg/SUsfkI33oTiNQtPxyLIT/3oRegizGuPSZSlrdBurkjDwxyEUQ==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-beta.38.tgz", - "integrity": "sha512-SKO7Exl5Yem/OSNoA5uLHzyrptUQ8Hg70kHDxuwEaH0+GUg+SQe9/7PWmc4hFKBMrJGdQtii8WZ0uIz9Dofg5Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-beta.38.tgz", - "integrity": "sha512-SOo6+WqhXPBaShLxLT0eCgH17d3Yu1lMAe4mFP0M9Bvr/kfMSOPQXuLxBcbBU9IFM9w3N6qP9xWOHO+oUJvi8Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-beta.38.tgz", - "integrity": "sha512-yvsQ3CyrodOX+lcoi+lejZGCOvJZa9xTsNB8OzpMDmHeZq3QzJfpYjXSAS6vie70fOkLVJb77UqYO193Cl8XBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-beta.38.tgz", - "integrity": "sha512-84qzKMwUwikfYeOuJ4Kxm/3z15rt0nFGGQArHYIQQNSTiQdxGHxOkqXtzPFqrVfBJUdxBAf+jYzR1pttFJuWyg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-beta.38.tgz", - "integrity": "sha512-QrNiWlce01DYH0rL8K3yUBu+lNzY+B0DyCbIc2Atan6/S6flxOL0ow5DLQvMamOI/oKhrJ4xG+9MkMb9dDHbLQ==", - "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-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-beta.38.tgz", - "integrity": "sha512-fnLtHyjwEsG4/aNV3Uv3Qd1ZbdH+CopwJNoV0RgBqrcQB8V6/Qdikd5JKvnO23kb3QvIpP+dAMGZMv1c2PJMzw==", - "cpu": [ - "wasm32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@napi-rs/wasm-runtime": "^1.0.5" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-beta.38.tgz", - "integrity": "sha512-19cTfnGedem+RY+znA9J6ARBOCEFD4YSjnx0p5jiTm9tR6pHafRfFIfKlTXhun+NL0WWM/M0eb2IfPPYUa8+wg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-win32-ia32-msvc": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.0.0-beta.38.tgz", - "integrity": "sha512-HcICm4YzFJZV+fI0O0bFLVVlsWvRNo/AB9EfUXvNYbtAxakCnQZ15oq22deFdz6sfi9Y4/SagH2kPU723dhCFA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-beta.38.tgz", - "integrity": "sha512-4Qx6cgEPXLb0XsCyLoQcUgYBpfL0sjugftob+zhUH0EOk/NVCAIT+h0NJhY+jn7pFpeKxhNMqhvTNx3AesxIAQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, - "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.38.tgz", - "integrity": "sha512-N/ICGKleNhA5nc9XXQG/kkKHJ7S55u0x0XUJbbkmdCnFuoRkM1Il12q9q0eX19+M7KKUEPw/daUPIRnxhcxAIw==", - "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", @@ -4271,14 +3982,14 @@ "license": "MIT" }, "node_modules/@schematics/angular": { - "version": "20.3.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.3.3.tgz", - "integrity": "sha512-lqIP1pNKp8yaqd663R3graZWaTBjXH+Cl72BQl1Ghl7lFGReZJALr4GiSMiBR9r30Epklcw5TwOSi+Bs4UKmbw==", + "version": "20.3.10", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.3.10.tgz", + "integrity": "sha512-F9ntS2CElpoWlENf4b03nwdTcN9Ri0Nb4SAE/pfRw3In09h2UHxYyf1ex9jqQt70xltDg4wvyuc3mMs+JlSx9A==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "20.3.3", - "@angular-devkit/schematics": "20.3.3", + "@angular-devkit/core": "20.3.10", + "@angular-devkit/schematics": "20.3.10", "jsonc-parser": "3.3.1" }, "engines": { @@ -4433,17 +4144,6 @@ "node": "^18.17.0 || >=20.5.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/cors": { "version": "2.8.19", "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", @@ -4873,19 +4573,19 @@ } }, "node_modules/angular-eslint": { - "version": "20.3.0", - "resolved": "https://registry.npmjs.org/angular-eslint/-/angular-eslint-20.3.0.tgz", - "integrity": "sha512-MvmeFuPmJHRmfL1A9IMtZJEYaU6sF++saJgpsU7aOD6YDZCGJ0J6HxlJ/q7YRbWYuI1q+gF/qALxdnuwHYadSg==", + "version": "20.6.0", + "resolved": "https://registry.npmjs.org/angular-eslint/-/angular-eslint-20.6.0.tgz", + "integrity": "sha512-SOQLhUjL5ulikHIFRrDA41euGsv9z6tYhYsmb6DYRLSaSglAiyiH/wb8sbW+COzsztBkSLb6gDVBMW+kzQ+yjw==", "dev": true, "license": "MIT", "dependencies": { "@angular-devkit/core": ">= 20.0.0 < 21.0.0", "@angular-devkit/schematics": ">= 20.0.0 < 21.0.0", - "@angular-eslint/builder": "20.3.0", - "@angular-eslint/eslint-plugin": "20.3.0", - "@angular-eslint/eslint-plugin-template": "20.3.0", - "@angular-eslint/schematics": "20.3.0", - "@angular-eslint/template-parser": "20.3.0", + "@angular-eslint/builder": "20.6.0", + "@angular-eslint/eslint-plugin": "20.6.0", + "@angular-eslint/eslint-plugin-template": "20.6.0", + "@angular-eslint/schematics": "20.6.0", + "@angular-eslint/template-parser": "20.6.0", "@typescript-eslint/types": "^8.0.0", "@typescript-eslint/utils": "^8.0.0" }, @@ -4950,16 +4650,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ansis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/ansis/-/ansis-4.2.0.tgz", - "integrity": "sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" - } - }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -11743,40 +11433,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rolldown": { - "version": "1.0.0-beta.38", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-beta.38.tgz", - "integrity": "sha512-58frPNX55Je1YsyrtPJv9rOSR3G5efUZpRqok94Efsj0EUa8dnqJV3BldShyI7A+bVPleucOtzXHwVpJRcR0kQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@oxc-project/types": "=0.89.0", - "@rolldown/pluginutils": "1.0.0-beta.38", - "ansis": "^4.0.0" - }, - "bin": { - "rolldown": "bin/cli.mjs" - }, - "engines": { - "node": "^20.19.0 || >=22.12.0" - }, - "optionalDependencies": { - "@rolldown/binding-android-arm64": "1.0.0-beta.38", - "@rolldown/binding-darwin-arm64": "1.0.0-beta.38", - "@rolldown/binding-darwin-x64": "1.0.0-beta.38", - "@rolldown/binding-freebsd-x64": "1.0.0-beta.38", - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.38", - "@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.38", - "@rolldown/binding-linux-arm64-musl": "1.0.0-beta.38", - "@rolldown/binding-linux-x64-gnu": "1.0.0-beta.38", - "@rolldown/binding-linux-x64-musl": "1.0.0-beta.38", - "@rolldown/binding-openharmony-arm64": "1.0.0-beta.38", - "@rolldown/binding-wasm32-wasi": "1.0.0-beta.38", - "@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.38", - "@rolldown/binding-win32-ia32-msvc": "1.0.0-beta.38", - "@rolldown/binding-win32-x64-msvc": "1.0.0-beta.38" - } - }, "node_modules/rollup": { "version": "4.52.3", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.52.3.tgz", @@ -13391,9 +13047,9 @@ } }, "node_modules/vite": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.5.tgz", - "integrity": "sha512-4cKBO9wR75r0BeIWWWId9XK9Lj6La5X846Zw9dFfzMRw38IlTk2iCcUt6hsyiDRcPidc55ZParFYDXi0nXOeLQ==", + "version": "7.1.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.11.tgz", + "integrity": "sha512-uzcxnSDVjAopEUjljkWh8EIrg6tlzrjFUfMcR1EVsRDGwf/ccef0qQPRyOrROwhrTDaApueq+ja+KLPlzR/zdg==", "dev": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index dd74ede..a8f1423 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@proangular/pro-table", - "version": "20.4.1", + "version": "20.5.0", "description": "A rich, dynamic, and versatile table component based on Angular Material.", "author": "Pro Angular ", "homepage": "https://www.proangular.com", @@ -10,15 +10,14 @@ }, "scripts": { "build": "ng build", - "build:package": "ng-packagr -p ng-package.json", "build:prod": "ng build --configuration production", "lint": "ng lint", "ng": "ng", + "npm-build-package": "ng-packagr -p ng-package.json", "postinstall": "is-ci || husky install", "prettier": "prettier --write . --log-level silent", "prettier:check": "prettier --check .", - "start": "ng serve", - "start:open": "ng serve --open", + "start": "ng serve --open", "test": "ng test", "update": "ncu -u", "update:check": "ncu", @@ -38,18 +37,18 @@ "zone.js": ">=0.15 <0.16" }, "devDependencies": { - "@angular/build": "^20.3.3", - "@angular/cli": "^20.3.3", - "@angular/compiler": "20.3.2", - "@angular/compiler-cli": "^20.3.2", - "@angular/platform-browser": "20.3.2", - "@angular/platform-browser-dynamic": "20.3.2", - "@angular/router": "^20.3.2", + "@angular/build": "^20.3.10", + "@angular/cli": "^20.3.10", + "@angular/compiler": "20.3.12", + "@angular/compiler-cli": "^20.3.12", + "@angular/platform-browser": "20.3.12", + "@angular/platform-browser-dynamic": "20.3.12", + "@angular/router": "^20.3.12", "@trivago/prettier-plugin-sort-imports": "^5.2.2", "@types/jasmine": "~5.1.8", "@types/luxon": "^3.4.2", "@types/node": "^24.2.1", - "angular-eslint": "^20.1.1", + "angular-eslint": "^20.6.0", "eslint": "^9.33.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", diff --git a/public/favicon.ico b/public/favicon.ico index 57614f9..1d6ecf1 100644 Binary files a/public/favicon.ico and b/public/favicon.ico differ diff --git a/src/app/layout/footer.component.html b/src/app/layout/footer.component.html index 896f272..a95ecd1 100644 --- a/src/app/layout/footer.component.html +++ b/src/app/layout/footer.component.html @@ -1,9 +1,6 @@