From 78de7dc125429216cc1f2aebec38ab7485353fae Mon Sep 17 00:00:00 2001 From: 4gray Date: Sat, 28 Mar 2026 15:43:34 +0100 Subject: [PATCH] chore(package): add unit test scripts and type checking commands; update font dependencies --- package.json | 10 +++++++++ pnpm-lock.yaml | 56 ++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 58 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 3077b6cc5..06b3722c6 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,11 @@ "serve:backend": "nx serve electron-backend", "test:frontend": "nx test web", "test:backend": "nx test electron-backend", + "test:unit:all": "nx run-many --target=test --all --parallel=3", + "test:unit:ci": "nx run-many --target=test --projects=electron-backend,web,services,m3u-state,portal-stalker-data-access,portal-shared-util,playlist-shared-ui,portal-xtream-data-access,portal-xtream-feature,workspace-dashboard-data-access,components,@iptvnator/pipes --parallel=3 --output-style=static", + "typecheck:web": "tsc -p apps/web/tsconfig.app.json --noEmit", + "typecheck:backend": "tsc -p apps/electron-backend/tsconfig.app.json --noEmit", + "typecheck:ci": "pnpm run typecheck:web && pnpm run typecheck:backend", "package:app": "nx run electron-backend:make --prepackageOnly", "make:app": "nx run electron-backend:make", "serve:website": "nx serve website", @@ -111,6 +116,10 @@ "@eslint/eslintrc": "3.3.1", "@eslint/js": "^9.38.0", "@faker-js/faker": "10.3.0", + "@fontsource/crimson-pro": "5.2.8", + "@fontsource/dm-sans": "5.2.8", + "@fontsource/jetbrains-mono": "5.2.8", + "@fontsource/roboto": "5.2.10", "@ngrx/eslint-plugin": "^21.0.1", "@ngx-translate/core": "16.0.4", "@ngx-translate/http-loader": "16.0.1", @@ -165,6 +174,7 @@ "jest-preset-angular": "~15.0.0", "jest-util": "^30.0.2", "jsonc-eslint-parser": "^2.1.0", + "material-design-icons-iconfont": "6.7.0", "ng-mocks": "14.15.1", "nx": "22.5.1", "nx-electron": "^21.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c0fb1fa1b..1de9e4312 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -198,6 +198,18 @@ importers: '@faker-js/faker': specifier: 10.3.0 version: 10.3.0 + '@fontsource/crimson-pro': + specifier: 5.2.8 + version: 5.2.8 + '@fontsource/dm-sans': + specifier: 5.2.8 + version: 5.2.8 + '@fontsource/jetbrains-mono': + specifier: 5.2.8 + version: 5.2.8 + '@fontsource/roboto': + specifier: 5.2.10 + version: 5.2.10 '@ngrx/eslint-plugin': specifier: ^21.0.1 version: 21.0.1(@typescript-eslint/utils@8.51.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.2(jiti@1.21.7))(typescript-eslint@8.51.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3))(typescript@5.9.3) @@ -360,6 +372,9 @@ importers: jsonc-eslint-parser: specifier: ^2.1.0 version: 2.4.2 + material-design-icons-iconfont: + specifier: 6.7.0 + version: 6.7.0 ng-mocks: specifier: 14.15.1 version: 14.15.1(93120d4c81fe34719ab854033955f316) @@ -2178,6 +2193,18 @@ packages: resolution: {integrity: sha512-It0Sne6P3szg7JIi6CgKbvTZoMjxBZhcv91ZrqrNuaZQfB5WoqYYbzCUOq89YR+VY8juY9M1vDWmDDa2TzfXCw==} engines: {node: ^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0, npm: '>=10'} + '@fontsource/crimson-pro@5.2.8': + resolution: {integrity: sha512-t+cAoAswUKEReDPqDNWWSyAp7baZkKrtF6Ry0KrDZQHJCldS9pIbRH0n2hm1u4+SbIUI7c+nUS9yfK6rEhycTw==} + + '@fontsource/dm-sans@5.2.8': + resolution: {integrity: sha512-tlovG42m9ESG28WiHpLq3F5umAlm64rv0RkqTbYowRn70e9OlRr5a3yTJhrhrY+k5lftR/OFJjPzOLQzk8EfCA==} + + '@fontsource/jetbrains-mono@5.2.8': + resolution: {integrity: sha512-6w8/SG4kqvIMu7xd7wt6x3idn1Qux3p9N62s6G3rfldOUYHpWcc2FKrqf+Vo44jRvqWj2oAtTHrZXEP23oSKwQ==} + + '@fontsource/roboto@5.2.10': + resolution: {integrity: sha512-8HlA5FtSfz//oFSr2eL7GFXAiE7eIkcGOtx7tjsLKq+as702x9+GU7K95iDeWFapHC4M2hv9RrpXKRTGGBI8Zg==} + '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} @@ -8201,6 +8228,9 @@ packages: resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} engines: {node: '>=10'} + material-design-icons-iconfont@6.7.0: + resolution: {integrity: sha512-lSj71DgVv20kO0kGbs42icDzbRot61gEDBLQACzkUuznRQBUYmbxzEkGU6dNBb5fRWHMaScYlAXX96HQ4/cJWA==} + math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} @@ -13663,6 +13693,14 @@ snapshots: '@faker-js/faker@10.3.0': {} + '@fontsource/crimson-pro@5.2.8': {} + + '@fontsource/dm-sans@5.2.8': {} + + '@fontsource/jetbrains-mono@5.2.8': {} + + '@fontsource/roboto@5.2.10': {} + '@gar/promisify@1.1.3': {} '@hono/node-server@1.19.9(hono@4.12.0)': @@ -13920,7 +13958,7 @@ snapshots: '@isaacs/fs-minipass@4.0.1': dependencies: - minipass: 7.1.2 + minipass: 7.1.3 '@istanbuljs/load-nyc-config@1.1.0': dependencies: @@ -19535,7 +19573,7 @@ snapshots: foreground-child: 3.3.1 jackspeak: 3.4.3 minimatch: 9.0.5 - minipass: 7.1.2 + minipass: 7.1.3 package-json-from-dist: 1.0.1 path-scurry: 1.11.1 @@ -21177,7 +21215,7 @@ snapshots: '@npmcli/agent': 4.0.0 cacache: 20.0.3 http-cache-semantics: 4.2.0 - minipass: 7.1.2 + minipass: 7.1.3 minipass-fetch: 5.0.1 minipass-flush: 1.0.5 minipass-pipeline: 1.2.4 @@ -21214,6 +21252,8 @@ snapshots: escape-string-regexp: 4.0.0 optional: true + material-design-icons-iconfont@6.7.0: {} + math-intrinsics@1.1.0: {} mdast-util-definitions@6.0.0: @@ -21756,7 +21796,7 @@ snapshots: minipass-collect@2.0.1: dependencies: - minipass: 7.1.2 + minipass: 7.1.3 minipass-fetch@2.1.2: dependencies: @@ -21768,7 +21808,7 @@ snapshots: minipass-fetch@5.0.1: dependencies: - minipass: 7.1.2 + minipass: 7.1.3 minipass-sized: 2.0.0 minizlib: 3.1.0 optionalDependencies: @@ -21788,7 +21828,7 @@ snapshots: minipass-sized@2.0.0: dependencies: - minipass: 7.1.2 + minipass: 7.1.3 minipass@3.3.6: dependencies: @@ -21807,7 +21847,7 @@ snapshots: minizlib@3.1.0: dependencies: - minipass: 7.1.2 + minipass: 7.1.3 mkdirp-classic@0.5.3: {} @@ -22575,7 +22615,7 @@ snapshots: path-scurry@1.11.1: dependencies: lru-cache: 10.4.3 - minipass: 7.1.2 + minipass: 7.1.3 path-scurry@2.0.2: dependencies: