From a4efb9485a6a92ef000105b380de9616dbe73152 Mon Sep 17 00:00:00 2001 From: Ma <101021254+CodeWithMa@users.noreply.github.com> Date: Sat, 18 Jul 2026 06:20:37 +0200 Subject: [PATCH 1/5] ci: add PR validation workflow --- .github/workflows/pr.yml | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/pr.yml diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 0000000..f52d335 --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,43 @@ +name: PR Validation + +on: + pull_request: + branches: [dev] + +concurrency: + group: pr-${{ github.event.pull_request.number }} + cancel-in-progress: true + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: oven-sh/setup-bun@v2 + - run: bun install --frozen-lockfile + - run: bun run lint + - run: npx prettier --check "src/**/*.{ts,html,css}" + + typecheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: oven-sh/setup-bun@v2 + - run: bun install --frozen-lockfile + - run: npx tsc --noEmit -p tsconfig.app.json + + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: oven-sh/setup-bun@v2 + - run: bun install --frozen-lockfile + - run: bun run test --run + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: oven-sh/setup-bun@v2 + - run: bun install --frozen-lockfile + - run: bun run build From ace5e5454dca99569a3907b56395018b01b75c04 Mon Sep 17 00:00:00 2001 From: Ma <101021254+CodeWithMa@users.noreply.github.com> Date: Sat, 18 Jul 2026 06:28:44 +0200 Subject: [PATCH 2/5] Fix running tests --- .github/workflows/pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index f52d335..d0c4118 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -32,7 +32,7 @@ jobs: - uses: actions/checkout@v4 - uses: oven-sh/setup-bun@v2 - run: bun install --frozen-lockfile - - run: bun run test --run + - run: bun run test build: runs-on: ubuntu-latest From 492752e48cac9bb3cd7d82d98f39945ca860f240 Mon Sep 17 00:00:00 2001 From: Ma <101021254+CodeWithMa@users.noreply.github.com> Date: Sat, 18 Jul 2026 06:29:33 +0200 Subject: [PATCH 3/5] ci: add prettier as devDependency --- .github/workflows/pr.yml | 2 +- bun.lock | 19 +++++++++++-------- package.json | 1 + 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index d0c4118..7e3d05c 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -16,7 +16,7 @@ jobs: - uses: oven-sh/setup-bun@v2 - run: bun install --frozen-lockfile - run: bun run lint - - run: npx prettier --check "src/**/*.{ts,html,css}" + - run: bunx prettier --check "src/**/*.{ts,html,css}" typecheck: runs-on: ubuntu-latest diff --git a/bun.lock b/bun.lock index 199db24..6233dfd 100644 --- a/bun.lock +++ b/bun.lock @@ -12,7 +12,7 @@ "@angular/platform-browser": "^22.0.6", "@angular/router": "^22.0.6", "@angular/service-worker": "^22.0.6", - "@tauri-apps/api": "^2.10.1", + "@tauri-apps/api": "^2.11.1", "rxjs": "~7.8.2", "tslib": "^2.8.1", }, @@ -22,16 +22,17 @@ "@angular/cli": "^22.0.6", "@angular/compiler-cli": "^22.0.6", "@eslint/js": "^10.0.1", - "@tailwindcss/postcss": "^4.2.2", - "@tauri-apps/cli": "^2.10.1", + "@tailwindcss/postcss": "^4.3.2", + "@tauri-apps/cli": "^2.11.4", "angular-eslint": "^22.0.0", - "eslint": "^10.2.0", + "eslint": "^10.7.0", "jsdom": "^27.4.0", - "postcss": "^8.5.10", - "tailwindcss": "^4.2.2", + "postcss": "^8.5.16", + "prettier": "^3.9.5", + "tailwindcss": "^4.3.2", "typescript": "~6.0.3", - "typescript-eslint": "^8.58.2", - "vitest": "^4.1.4", + "typescript-eslint": "^8.63.0", + "vitest": "^4.1.10", }, }, }, @@ -1078,6 +1079,8 @@ "prelude-ls": ["prelude-ls@1.2.1", "", {}, "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="], + "prettier": ["prettier@3.9.5", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-/FVl766LpUfB5vXgCYOYa0MeV/441Ia99AeICQIQFTY/Nw0roZwULcXpku5i1/m5kt/baz+s4Zogspd839HSMg=="], + "proc-log": ["proc-log@6.1.0", "", {}, "sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ=="], "proxy-addr": ["proxy-addr@2.0.7", "", { "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" } }, "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg=="], diff --git a/package.json b/package.json index db31857..cc9b37a 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ "eslint": "^10.7.0", "jsdom": "^27.4.0", "postcss": "^8.5.16", + "prettier": "^3.9.5", "tailwindcss": "^4.3.2", "typescript": "~6.0.3", "typescript-eslint": "^8.63.0", From ebbaaa6ac3aa586ff575abbcbf1691eb10449623 Mon Sep 17 00:00:00 2001 From: Ma <101021254+CodeWithMa@users.noreply.github.com> Date: Sat, 18 Jul 2026 06:55:46 +0200 Subject: [PATCH 4/5] Let prettier fix files --- src/app/app.config.ts | 8 +- src/app/app.html | 50 +++++-- src/app/app.routes.ts | 26 ++-- src/app/app.ts | 2 +- .../add-item/add-item.component.spec.ts | 124 +++++++++--------- .../components/add-item/add-item.component.ts | 20 +-- .../group-manager/group-manager.component.ts | 62 ++++++--- src/app/components/home/home.component.ts | 72 +++++++--- .../item-card/item-card.component.ts | 56 +++++--- .../item-detail/item-detail.component.ts | 33 +++-- .../item-form/item-form.component.spec.ts | 57 ++++---- .../item-form/item-form.component.ts | 93 +++++++++---- .../item-list/item-list.component.ts | 76 ++++++++--- .../progress-bar/progress-bar.component.ts | 9 +- .../settings/settings.component.spec.ts | 28 ++-- .../components/settings/settings.component.ts | 75 ++++++++--- .../theme-switcher.component.ts | 47 ++++++- .../components/time-ago/time-ago.component.ts | 9 +- .../watch-history/watch-history.component.ts | 79 ++++++++--- src/app/domain/item-form.spec.ts | 42 +++--- src/app/domain/item-form.ts | 14 +- src/app/domain/item.constants.ts | 4 +- src/app/domain/storage-schema.ts | 36 ++--- src/app/models/group.model.ts | 1 - src/app/services/group.service.ts | 32 +++-- src/app/services/import-export.service.ts | 3 +- src/app/services/round-robin.service.spec.ts | 40 +++--- src/app/services/round-robin.service.ts | 20 +-- src/app/services/storage.service.spec.ts | 54 ++++---- src/app/services/storage.service.ts | 8 +- src/app/services/theme.service.ts | 6 +- .../services/tmdb-settings.service.spec.ts | 4 +- src/app/services/tmdb-settings.service.ts | 6 +- .../services/tmdb-suggestion.service.spec.ts | 79 +++++------ src/app/services/tmdb-suggestion.service.ts | 20 +-- src/app/services/watch-list.service.spec.ts | 36 ++--- src/app/services/watch-list.service.ts | 83 ++++++------ src/app/utils/status.utils.ts | 30 +++-- src/app/utils/watch-history.utils.spec.ts | 10 +- src/app/utils/watch-history.utils.ts | 12 +- src/environments/environment.tauri.ts | 2 +- src/environments/environment.ts | 2 +- src/environments/environment.web.ts | 2 +- src/index.html | 44 +++---- src/main.ts | 3 +- src/styles.css | 8 +- 46 files changed, 954 insertions(+), 573 deletions(-) diff --git a/src/app/app.config.ts b/src/app/app.config.ts index 61d12df..b7db5ab 100644 --- a/src/app/app.config.ts +++ b/src/app/app.config.ts @@ -15,9 +15,9 @@ export const appConfig: ApplicationConfig = { ? [ provideServiceWorker('ngsw-worker.js', { enabled: true, - registrationStrategy: 'registerWhenStable:30000' - }) + registrationStrategy: 'registerWhenStable:30000', + }), ] - : []) - ] + : []), + ], }; diff --git a/src/app/app.html b/src/app/app.html index 6c860ed..c9d61e6 100644 --- a/src/app/app.html +++ b/src/app/app.html @@ -1,12 +1,46 @@ -