From 4dab744be178b83653a00e2c8c1ec94d24e9cba2 Mon Sep 17 00:00:00 2001 From: Johannes Millan Date: Wed, 1 Jul 2026 14:54:55 +0200 Subject: [PATCH] chore(deps): ngrx + capacitor updates, dependabot grouping, safe tooling refresh (#8664) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(deps): bump @ngrx/* to 21.1.1 and @capacitor/* to latest 8.x - @ngrx/{store,effects,entity,store-devtools,schematics} 21.1.0 -> 21.1.1 (moved as a set; the family pins each other's peers exactly) - @capacitor/{core,cli,android,ios} -> 8.4.1, @capacitor/keyboard 8.0.1 -> 8.0.5 Angular left at 21.2.x: it is already the latest stable 21.x, and Angular 22 is blocked by @ngrx (no Angular-22-compatible release exists yet). * ci(dependabot): group coupled npm families into single PRs npm updates had no groups, so lockstep families (ngrx pins its own peers exactly, Angular/Capacitor move by major together) arrived as separate single-package PRs that can never resolve npm ci alone. Group @ngrx, @angular, @angular-eslint, @capacitor, and typescript-eslint so each family updates as one coherent PR. * chore(deps): refresh safe in-range tooling + tier-2 bumps Tier 2 (package.json): - @material-symbols/font-400 ^0.44.10 -> ^0.45.5 (icon font, 0.x minor) - eslint-plugin-jsdoc 62.9.0 -> 63.0.10 (its only breaking change is 'drop Node 20'; we run 22; plugin is not wired into eslint.config.js so there is no lint-rule impact) In-range leaf refresh (lockfile only; already permitted by caret ranges): - @playwright/test + playwright 1.60.0 -> 1.61.1 - jasmine-core 6.2.0 -> 6.3.0 - nanoid 5.1.11 -> 5.1.16, fs-extra 11.3.5 -> 11.3.6 - baseline-browser-mapping 2.10.32 -> 2.10.40 - eslint-plugin-prettier 5.5.5 -> 5.5.6 Angular 21.2.x patches, electron-builder, @typescript-eslint and prettier/stylelint are intentionally left for 'npm update' in a real terminal: their build-tooling dep trees can't be regenerated cleanly here (the sandbox prunes cross-platform binaries). * style(habit-tracker): remove empty .header-spacer rule Dead empty block left over from 394e554bd0 (compact-view refactor); triggered stylelint block-no-empty. The .header-spacer div stays in the template — it's positioned by the parent grid and needs no own styles. --- .github/dependabot.yml | 27 +++ package-lock.json | 226 ++++++++++-------- package.json | 22 +- .../habit-tracker.component.scss | 3 - 4 files changed, 164 insertions(+), 114 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f2378cfedd..cf2e2a452f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -27,6 +27,33 @@ updates: commit-message: prefix: 'chore(deps)' + # Group tightly-coupled families into a single PR. These packages pin each + # other's peer versions in lockstep (e.g. @ngrx/effects peer-requires an + # exact @ngrx/store), so a single-package bump can never resolve `npm ci` + # on its own — it must move as a set. Each group bundles all update types + # (major/minor/patch) since a major moves the whole family at once. + groups: + angular: + patterns: + - '@angular/*' + - '@angular-devkit/*' + - '@schematics/angular' + angular-eslint: + patterns: + - '@angular-eslint/*' + - 'angular-eslint' + ngrx: + patterns: + - '@ngrx/*' + capacitor: + patterns: + - '@capacitor/*' + - '@capawesome/*' + typescript-eslint: + patterns: + - '@typescript-eslint/*' + - 'typescript-eslint' + # ========================================== # GitHub Actions (Weekly Updates - SECURITY) # ========================================== diff --git a/package-lock.json b/package-lock.json index e5f91e178f..5e8ac059d5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,10 +14,10 @@ ], "dependencies": { "@capacitor/browser": "^8.0.3", - "@capacitor/ios": "^8.3.4", - "@capacitor/keyboard": "8.0.1", + "@capacitor/ios": "^8.4.1", + "@capacitor/keyboard": "8.0.5", "@capacitor/status-bar": "^8.0.2", - "@material-symbols/font-400": "^0.44.10", + "@material-symbols/font-400": "^0.45.5", "@noble/ciphers": "^2.2.0", "capacitor-plugin-safe-area": "^5.0.0", "electron-dl": "^3.5.2", @@ -51,9 +51,9 @@ "@angular/platform-server": "^21.2.17", "@angular/router": "^21.2.17", "@angular/service-worker": "^21.2.17", - "@capacitor/android": "^8.3.4", + "@capacitor/android": "^8.4.1", "@capacitor/app": "^8.1.0", - "@capacitor/cli": "^8.3.4", + "@capacitor/cli": "^8.4.1", "@capacitor/core": "^8.4.1", "@capacitor/filesystem": "^8.1.2", "@capacitor/local-notifications": "^8.2.0", @@ -66,11 +66,11 @@ "@eslint/js": "^9.39.2", "@fontsource/open-sans": "^5.2.7", "@nextcloud/cdav-library": "^1.5.3", - "@ngrx/effects": "^21.1.0", - "@ngrx/entity": "^21.1.0", - "@ngrx/schematics": "^21.1.0", - "@ngrx/store": "21.1.0", - "@ngrx/store-devtools": "^21.1.0", + "@ngrx/effects": "^21.1.1", + "@ngrx/entity": "^21.1.1", + "@ngrx/schematics": "^21.1.1", + "@ngrx/store": "21.1.1", + "@ngrx/store-devtools": "^21.1.1", "@ngx-formly/core": "^7.1.0", "@ngx-formly/material": "^7.1.0", "@ngx-translate/core": "^17.0.0", @@ -104,7 +104,7 @@ "eslint": "^9.39.2", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", - "eslint-plugin-jsdoc": "62.9.0", + "eslint-plugin-jsdoc": "63.0.10", "eslint-plugin-local-rules": "^3.0.2", "eslint-plugin-prefer-arrow": "1.2.3", "eslint-plugin-prettier": "^5.5.5", @@ -3833,13 +3833,13 @@ } }, "node_modules/@capacitor/android": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-8.3.4.tgz", - "integrity": "sha512-7gJjrG3X32Am1QMLqgMztWTYMLMVNE+VZwhekNxhvYizH4mOV05vH+rC9B+f17bCkYZfyu/qXQX6hoY7kLeVZw==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-8.4.1.tgz", + "integrity": "sha512-igtDCJ7QQn0P2qHFD9p4KXaa6V1b2PRNt+MxjVwtjTm/BJvqmiazOJq6rPjwFSZnfHm6iFoZk8TfzHd44pyBGw==", "dev": true, "license": "MIT", "peerDependencies": { - "@capacitor/core": "^8.3.0" + "@capacitor/core": "^8.4.0" } }, "node_modules/@capacitor/app": { @@ -3862,9 +3862,9 @@ } }, "node_modules/@capacitor/cli": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-8.3.4.tgz", - "integrity": "sha512-QEmyNdiDDVNYl0Mahm7YTVA/3t2tKcy7FWYDapeKGavS6HDNHZSjyTVwQpUXQbDZrrs/PS2Wau3Aii+LIFwm/A==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-8.4.1.tgz", + "integrity": "sha512-t7F2s7fFHCq113xgrggrmK6ctV0/8E5YfLNVLfPHp4GCTDO+tly9fZvWPf2/sOI8lMm18dLT43qbXLRTz/OZgw==", "dev": true, "license": "MIT", "dependencies": { @@ -3974,18 +3974,18 @@ } }, "node_modules/@capacitor/ios": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@capacitor/ios/-/ios-8.3.4.tgz", - "integrity": "sha512-XvvnPFWWP/gwwO811ue7nEBKSZqDCIB8hxGgWV6iXA7DSVLqMOEmQdfHj94kkVxof2wL9XWHypu3ayDULo7U5w==", + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@capacitor/ios/-/ios-8.4.1.tgz", + "integrity": "sha512-EgcAk7NYheHMTyP3CUrA65qKs4D2UEAKgw44HI6Uk3dTw6KjLQkdLOQWvbeRncHaZ2gklfOojUoc5DlSw2lhYg==", "license": "MIT", "peerDependencies": { - "@capacitor/core": "^8.3.0" + "@capacitor/core": "^8.4.0" } }, "node_modules/@capacitor/keyboard": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@capacitor/keyboard/-/keyboard-8.0.1.tgz", - "integrity": "sha512-HDf4qrvvhLRMsgBoqeqIld6hP8JMK/WPbCYMvz8ajhY6TaibYt6B+NQyky4oIPCOfHTz5OcVsuHkbb8fQvGDAg==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/@capacitor/keyboard/-/keyboard-8.0.5.tgz", + "integrity": "sha512-oFXygC4eKYA5l2MdpTR06L2M/4x6e2SLD5yS1T9+UBDKTkzyvhWKEhbYLUaTIBPpLKqlfGudJw1X73S1H9eUzQ==", "license": "MIT", "peerDependencies": { "@capacitor/core": ">=8.0.0" @@ -4773,15 +4773,15 @@ "license": "MIT" }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.86.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.86.0.tgz", - "integrity": "sha512-ukZmRQ81WiTpDWO6D/cTBM7XbrNtutHKvAVnZN/8pldAwLoJArGOvkNyxPTBGsPjsoaQBJxlH+tE2TNA/92Qgw==", + "version": "0.87.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.87.0.tgz", + "integrity": "sha512-mFXZloZMzuJZXSHUmAFu/pXTk0ZJTJBluuAkrvbzidpTN8W6F2bpRFuedSH+85kbdlRLJqc+gfN+kD3JOLJK5g==", "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "^1.0.8", - "@typescript-eslint/types": "^8.58.0", - "comment-parser": "1.4.6", + "@types/estree": "^1.0.9", + "@typescript-eslint/types": "^8.59.4", + "comment-parser": "1.4.7", "esquery": "^1.7.0", "jsdoc-type-pratt-parser": "~7.2.0" }, @@ -7193,9 +7193,9 @@ } }, "node_modules/@material-symbols/font-400": { - "version": "0.44.10", - "resolved": "https://registry.npmjs.org/@material-symbols/font-400/-/font-400-0.44.10.tgz", - "integrity": "sha512-+eP/MLi5kmzsoZBNUaxlq+GNOiSAPNywmr86pYN+1fMHVqPwN5c7YqZ0Tuu0Gp4lau2SgqXq8KkPRuxQBpmELA==", + "version": "0.45.5", + "resolved": "https://registry.npmjs.org/@material-symbols/font-400/-/font-400-0.45.5.tgz", + "integrity": "sha512-kYNjHMN3lB2gmNYfc5n7oYy7WHsys0NawYDHLQ5DdLviuJM0gNgBHUkf7nFNnv4XesQ4MPLVblCM533tNI6XvQ==", "license": "Apache-2.0" }, "node_modules/@modelcontextprotocol/sdk": { @@ -7677,9 +7677,9 @@ } }, "node_modules/@ngrx/effects": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-21.1.0.tgz", - "integrity": "sha512-Hh+PlV+xYP3i65XK2yOxpIQ9pP4T70gLpm6JIjBE02DumW+evr6LdUgeixfq5vaUS1kN3Rqvl24fNUDJKGkkZw==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/@ngrx/effects/-/effects-21.1.1.tgz", + "integrity": "sha512-JQUv2tYyjkbdsE40WYtJDsiI+3qtn4V5m0Ybr2CYw9zKpVQshDV5MLLAni+SuijlHAWJkw8x4wwnYmNyG/Rmng==", "dev": true, "license": "MIT", "dependencies": { @@ -7687,14 +7687,14 @@ }, "peerDependencies": { "@angular/core": "^21.0.0", - "@ngrx/store": "21.1.0", + "@ngrx/store": "21.1.1", "rxjs": "^6.5.3 || ^7.5.0" } }, "node_modules/@ngrx/entity": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-21.1.0.tgz", - "integrity": "sha512-V1Yy1FojDh3VY+Hxmn09iXQpoaF3iwWp8VoE41GV+p46Ar5jAdiiSast0IVoWjackzybaSLRd/YjlxV7q0/huQ==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/@ngrx/entity/-/entity-21.1.1.tgz", + "integrity": "sha512-yDHjjw63XjKWRXimIAloxo+Ws5AK2IPUIankRJZGw+IRCinZCO6gzhHmNamfqfS2vlcUgCS1r/7ZphRunK3WAg==", "dev": true, "license": "MIT", "dependencies": { @@ -7702,21 +7702,21 @@ }, "peerDependencies": { "@angular/core": "^21.0.0", - "@ngrx/store": "21.1.0", + "@ngrx/store": "21.1.1", "rxjs": "^6.5.3 || ^7.5.0" } }, "node_modules/@ngrx/schematics": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/schematics/-/schematics-21.1.0.tgz", - "integrity": "sha512-WSnEEA/yvHHs2uyDvlYCrZ5weB2v1clG8NVJbHgaYCt+JZlD/flq+nO9QFL8qZ4y1xDmJ4kMg0Vy4g6jfENejg==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/@ngrx/schematics/-/schematics-21.1.1.tgz", + "integrity": "sha512-HOSCJ6NMNEaauIFCuD9u4FMGsRmOPkWqz5K3zQeaY5D212ZX28WT2V5RGHX7WVxVN97JGXgiQUjqYXt32ApzeA==", "dev": true, "license": "MIT" }, "node_modules/@ngrx/store": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-21.1.0.tgz", - "integrity": "sha512-XnpzqmmENOQGtIzFSDX4qq7zVB2WwfMZWoK78yt36lIeDvtgZuUvxyIiGo5mla7e7+KlsSAeNDUvi9zmqIezfw==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/@ngrx/store/-/store-21.1.1.tgz", + "integrity": "sha512-B0/IyBTqBExmwPAmrpcJrhlrn+FeeitvOW8ltf7O3kJb2vRKduV5Oi34GLiwYQ8eAukTbKyWQv/VV02gxLeEMg==", "dev": true, "license": "MIT", "dependencies": { @@ -7728,9 +7728,9 @@ } }, "node_modules/@ngrx/store-devtools": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-21.1.0.tgz", - "integrity": "sha512-agN2qzVg3dA9N4/0+WMBHCbCJ6SPJbDswDbz2UQZLFBYOghXMuII51TuhRrWdHGrK5QyCBAQ9wOSFbPFGYU91g==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/@ngrx/store-devtools/-/store-devtools-21.1.1.tgz", + "integrity": "sha512-gNRDPCZZCO2uzdamco6xJ7292cZdVumHqOIAqmJsYaHkRQ4sZIKBjwFyYXAtPvS6a+Y9bnkGkHetxkF1iZzDvA==", "dev": true, "license": "MIT", "dependencies": { @@ -7738,7 +7738,7 @@ }, "peerDependencies": { "@angular/core": "^21.0.0", - "@ngrx/store": "21.1.0", + "@ngrx/store": "21.1.1", "rxjs": "^6.5.3 || ^7.5.0" } }, @@ -8635,13 +8635,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.60.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.60.0.tgz", - "integrity": "sha512-O71yZIbAh/PxDMNGns37GHBIfrVkEVyn+AXyIa5dOTfb4/xNvRWV+Vv/NMbNCtODB/pO7vLlF2OTmMVLhmr7Ag==", + "version": "1.61.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.61.1.tgz", + "integrity": "sha512-8nKv6+0RJSL9FE4jYOEGXnPeM/Hg12qZpmqzZjRh3qM0Y7c3z1mrOTfFLids72RDQYVh9WpLEfR5WdpNX4fkig==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.60.0" + "playwright": "1.61.1" }, "bin": { "playwright": "cli.js" @@ -11813,9 +11813,9 @@ } }, "node_modules/baseline-browser-mapping": { - "version": "2.10.32", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.32.tgz", - "integrity": "sha512-wbPvpyjJPC0zdfdKXxqEL3Ea+bOMD/87X4lftiJkkaBiuG6ALQy1SLmEd7BSmVCuwCQsBrCamgBoLyfFDD1EPg==", + "version": "2.10.40", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.40.tgz", + "integrity": "sha512-BSSLZ9/Cjjv7Gtj5B68ZzXcXUg8iOf3fme+FCuh8rC/Go+Kmh8cox7M3A8dolou16s64QjLPOSdngh7GxXvkSw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -12858,9 +12858,9 @@ } }, "node_modules/comment-parser": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.6.tgz", - "integrity": "sha512-ObxuY6vnbWTN6Od72xfwN9DbzC7Y2vv8u1Soi9ahRKL37gb6y1qk6/dgjs+3JWuXJHWvsg3BXIwzd/rkmAwavg==", + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.7.tgz", + "integrity": "sha512-0h+uSNtQGW3D98eQt3jJ8L06Fves8hncB4V/PKdw/Qb8Hnk19VaKuTr55UNRYiSoVa7WwrFls+rh3ux9agmkeQ==", "dev": true, "license": "MIT", "engines": { @@ -15186,29 +15186,29 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "62.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-62.9.0.tgz", - "integrity": "sha512-PY7/X4jrVgoIDncUmITlUqK546Ltmx/Pd4Hdsu4CvSjryQZJI2mEV4vrdMufyTetMiZ5taNSqvK//BTgVUlNkA==", + "version": "63.0.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-63.0.10.tgz", + "integrity": "sha512-A9UIWsCquaKnit7rasXxYf12hhGIdDRjv65/RUE3AxbT6rdKBvr3MjH37g3gP+g4ipQMXuMn9slFKjO+vqNfkg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "@es-joy/jsdoccomment": "~0.86.0", + "@es-joy/jsdoccomment": "~0.87.0", "@es-joy/resolve.exports": "1.2.0", "are-docs-informative": "^0.0.2", - "comment-parser": "1.4.6", + "comment-parser": "1.4.7", "debug": "^4.4.3", "escape-string-regexp": "^4.0.0", "espree": "^11.2.0", "esquery": "^1.7.0", "html-entities": "^2.6.0", - "object-deep-merge": "^2.0.0", + "object-deep-merge": "^2.0.1", "parse-imports-exports": "^0.2.4", - "semver": "^7.7.4", + "semver": "^7.8.2", "spdx-expression-parse": "^4.0.0", "to-valid-identifier": "^1.0.0" }, "engines": { - "node": "^20.19.0 || ^22.13.0 || >=24" + "node": "^22.13.0 || >=24" }, "peerDependencies": { "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0" @@ -15245,6 +15245,19 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint-plugin-jsdoc/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/eslint-plugin-local-rules": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/eslint-plugin-local-rules/-/eslint-plugin-local-rules-3.0.2.tgz", @@ -15263,14 +15276,14 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.5.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.5.tgz", - "integrity": "sha512-hscXkbqUZ2sPithAuLm5MXL+Wph+U7wHngPBv9OMWwlP8iaflyxpjTYZkmdgB4/vPIhemRlBEoLrH7UC1n7aUw==", + "version": "5.5.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.6.tgz", + "integrity": "sha512-ifetmTcxWfz+4qRW3pH/ujdTq2jQIj59AxJMIN26K5avYgU8dxycUETQonWiW+wPrYXA0j3Try0l1CnwVQtDqQ==", "dev": true, "license": "MIT", "dependencies": { "prettier-linter-helpers": "^1.0.1", - "synckit": "^0.11.12" + "synckit": "^0.11.13" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -16358,9 +16371,9 @@ "license": "MIT" }, "node_modules/fs-extra": { - "version": "11.3.5", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.5.tgz", - "integrity": "sha512-eKpRKAovdpZtR1WopLHxlBWvAgPny3c4gX1G5Jhwmmw4XJj0ifSD5qB5TOo8hmA0wlRKDAOAhEE1yVPgs6Fgcg==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.6.tgz", + "integrity": "sha512-w8ZNZr2mKIc7qeNaQ9AVPT1+iFaI+Avd4xudVOvdDJ8VytREi1Ft5Ih7hd9jjehod8vAM5GMsfQ/TpPf4EyoEA==", "dev": true, "license": "MIT", "dependencies": { @@ -18583,9 +18596,9 @@ } }, "node_modules/jasmine-core": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-6.2.0.tgz", - "integrity": "sha512-b16WZG/pFEFj8qRW1ss7nDuNGYz9ji8BDGj7fJNrROauk5rj/diO3KPOuyIpcgUChdC+c0PfQ8iUk4nHE+EN4w==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-6.3.0.tgz", + "integrity": "sha512-eMm5qBovNjNoGOcgE/W207+wrcK5zrQv0Rg/rWGboUJUmZp0dFCpHTyjpuDAfCwRCqg7f9U2q2jtv/aUuzdCQg==", "dev": true, "license": "MIT" }, @@ -20938,9 +20951,9 @@ } }, "node_modules/nanoid": { - "version": "5.1.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.11.tgz", - "integrity": "sha512-v+KEsUv2ps74PaSKv0gHTxTCgMXOIfBEbaqa6w6ISIGC7ZsvHN4N9oJ8d4cmf0n5oTzQz2SLmThbQWhjd/8eKg==", + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", "dev": true, "funding": [ { @@ -22627,13 +22640,13 @@ } }, "node_modules/playwright": { - "version": "1.60.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", - "integrity": "sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA==", + "version": "1.61.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.61.1.tgz", + "integrity": "sha512-DWnY5o3YbLWK4GovuAVwpqL+1VwGNdUGrRr++8j8PtQQzvAVZUIMjKQ90fY689sEJZJBbZVw1rXaOKSTitkzPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.60.0" + "playwright-core": "1.61.1" }, "bin": { "playwright": "cli.js" @@ -22646,9 +22659,9 @@ } }, "node_modules/playwright-core": { - "version": "1.60.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", - "integrity": "sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA==", + "version": "1.61.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.61.1.tgz", + "integrity": "sha512-h7Qlt6m4REp25qvIdvbDtVmD4LqVXfpRxhORv9L0jzETM05p4fuPJ3dKyuSXQxDSbXnmS79HAgi9589lGSpLkg==", "dev": true, "license": "Apache-2.0", "bin": { @@ -22954,9 +22967,9 @@ "license": "MIT" }, "node_modules/postcss/node_modules/nanoid": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", - "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "version": "3.3.15", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz", + "integrity": "sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==", "dev": true, "funding": [ { @@ -25807,9 +25820,9 @@ } }, "node_modules/stylelint/node_modules/nanoid": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", - "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "version": "3.3.15", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz", + "integrity": "sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==", "dev": true, "funding": [ { @@ -26058,13 +26071,13 @@ "dev": true }, "node_modules/synckit": { - "version": "0.11.12", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz", - "integrity": "sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.13.tgz", + "integrity": "sha512-eNRKgb3z66Yp3D2CixVujOUvXLFUTij/zVnV8KRyvFdQwpz7I5DS8UfRkTeLzb64u+dkzDSdelE24izu+zSSUg==", "dev": true, "license": "MIT", "dependencies": { - "@pkgr/core": "^0.2.9" + "@pkgr/core": "^0.3.6" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -26073,6 +26086,19 @@ "url": "https://opencollective.com/synckit" } }, + "node_modules/synckit/node_modules/@pkgr/core": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.3.6.tgz", + "integrity": "sha512-SEeaJLb3qBNF/OaXnaR1NmmBbFYk1zC0ZH/52fATcRPLFg/p791YrcyFFy44Bo9sLaGuSuLp5Q6axbb/O+v/RA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" + } + }, "node_modules/table": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", diff --git a/package.json b/package.json index d79fe1b372..bce27706da 100644 --- a/package.json +++ b/package.json @@ -180,10 +180,10 @@ }, "dependencies": { "@capacitor/browser": "^8.0.3", - "@capacitor/ios": "^8.3.4", - "@capacitor/keyboard": "8.0.1", + "@capacitor/ios": "^8.4.1", + "@capacitor/keyboard": "8.0.5", "@capacitor/status-bar": "^8.0.2", - "@material-symbols/font-400": "^0.44.10", + "@material-symbols/font-400": "^0.45.5", "@noble/ciphers": "^2.2.0", "capacitor-plugin-safe-area": "^5.0.0", "electron-dl": "^3.5.2", @@ -217,9 +217,9 @@ "@angular/platform-server": "^21.2.17", "@angular/router": "^21.2.17", "@angular/service-worker": "^21.2.17", - "@capacitor/android": "^8.3.4", + "@capacitor/android": "^8.4.1", "@capacitor/app": "^8.1.0", - "@capacitor/cli": "^8.3.4", + "@capacitor/cli": "^8.4.1", "@capacitor/core": "^8.4.1", "@capacitor/filesystem": "^8.1.2", "@capacitor/local-notifications": "^8.2.0", @@ -232,11 +232,11 @@ "@eslint/js": "^9.39.2", "@fontsource/open-sans": "^5.2.7", "@nextcloud/cdav-library": "^1.5.3", - "@ngrx/effects": "^21.1.0", - "@ngrx/entity": "^21.1.0", - "@ngrx/schematics": "^21.1.0", - "@ngrx/store": "21.1.0", - "@ngrx/store-devtools": "^21.1.0", + "@ngrx/effects": "^21.1.1", + "@ngrx/entity": "^21.1.1", + "@ngrx/schematics": "^21.1.1", + "@ngrx/store": "21.1.1", + "@ngrx/store-devtools": "^21.1.1", "@ngx-formly/core": "^7.1.0", "@ngx-formly/material": "^7.1.0", "@ngx-translate/core": "^17.0.0", @@ -270,7 +270,7 @@ "eslint": "^9.39.2", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import": "^2.32.0", - "eslint-plugin-jsdoc": "62.9.0", + "eslint-plugin-jsdoc": "63.0.10", "eslint-plugin-local-rules": "^3.0.2", "eslint-plugin-prefer-arrow": "1.2.3", "eslint-plugin-prettier": "^5.5.5", diff --git a/src/app/features/simple-counter/habit-tracker/habit-tracker.component.scss b/src/app/features/simple-counter/habit-tracker/habit-tracker.component.scss index 5cd266dba9..12a277de58 100644 --- a/src/app/features/simple-counter/habit-tracker/habit-tracker.component.scss +++ b/src/app/features/simple-counter/habit-tracker/habit-tracker.component.scss @@ -105,9 +105,6 @@ align-items: flex-end; } -.header-spacer { -} - .day-header { text-align: center; font-size: 11px;