diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 0000000..8553974 --- /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: bunx 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: bunx 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 + + 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 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", 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 @@ -