From 73165877fa79656ab9bc6f60bd8e9e52d6be206c Mon Sep 17 00:00:00 2001 From: Logan Jones Date: Sun, 15 Feb 2026 14:54:39 -0600 Subject: [PATCH] fix: add typescript as explicit devDependency and auto-install frontend deps in setup (#70) --- Makefile | 3 ++- frontend/package.json | 1 + frontend/pnpm-lock.yaml | 43 +++++++++++++++++++---------------------- 3 files changed, 23 insertions(+), 24 deletions(-) diff --git a/Makefile b/Makefile index 2181d7c..b43eb20 100644 --- a/Makefile +++ b/Makefile @@ -30,5 +30,6 @@ test: vulncheck: go run golang.org/x/vuln/cmd/govulncheck@latest ./... -setup: ## Install git hooks (lefthook is managed via go.mod tool directive) +setup: ## Install dependencies and git hooks + cd frontend && pnpm install go tool lefthook install diff --git a/frontend/package.json b/frontend/package.json index 45d8ad2..2230e32 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -14,6 +14,7 @@ "devDependencies": { "stylelint-config-standard": "^40.0.0", "ts-lit-plugin": "^2.0.2", + "typescript": "^5.9.3", "typescript-lit-html-plugin": "^0.9.0", "vite": "^7.0.0", "vite-plugin-static-copy": "^3.0.0" diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index eccc556..65ca8de 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -26,10 +26,13 @@ importers: devDependencies: stylelint-config-standard: specifier: ^40.0.0 - version: 40.0.0(stylelint@16.19.1(typescript@5.2.2)) + version: 40.0.0(stylelint@16.19.1(typescript@5.9.3)) ts-lit-plugin: specifier: ^2.0.2 version: 2.0.2 + typescript: + specifier: ^5.9.3 + version: 5.9.3 typescript-lit-html-plugin: specifier: ^0.9.0 version: 0.9.0 @@ -334,79 +337,66 @@ packages: resolution: {integrity: sha512-F8sWbhZ7tyuEfsmOxwc2giKDQzN3+kuBLPwwZGyVkLlKGdV1nvnNwYD0fKQ8+XS6hp9nY7B+ZeK01EBUE7aHaw==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.57.1': resolution: {integrity: sha512-rGfNUfn0GIeXtBP1wL5MnzSj98+PZe/AXaGBCRmT0ts80lU5CATYGxXukeTX39XBKsxzFpEeK+Mrp9faXOlmrw==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.57.1': resolution: {integrity: sha512-MMtej3YHWeg/0klK2Qodf3yrNzz6CGjo2UntLvk2RSPlhzgLvYEB3frRvbEF2wRKh1Z2fDIg9KRPe1fawv7C+g==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.57.1': resolution: {integrity: sha512-1a/qhaaOXhqXGpMFMET9VqwZakkljWHLmZOX48R0I/YLbhdxr1m4gtG1Hq7++VhVUmf+L3sTAf9op4JlhQ5u1Q==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-loong64-gnu@4.57.1': resolution: {integrity: sha512-QWO6RQTZ/cqYtJMtxhkRkidoNGXc7ERPbZN7dVW5SdURuLeVU7lwKMpo18XdcmpWYd0qsP1bwKPf7DNSUinhvA==} cpu: [loong64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-loong64-musl@4.57.1': resolution: {integrity: sha512-xpObYIf+8gprgWaPP32xiN5RVTi/s5FCR+XMXSKmhfoJjrpRAjCuuqQXyxUa/eJTdAE6eJ+KDKaoEqjZQxh3Gw==} cpu: [loong64] os: [linux] - libc: [musl] '@rollup/rollup-linux-ppc64-gnu@4.57.1': resolution: {integrity: sha512-4BrCgrpZo4hvzMDKRqEaW1zeecScDCR+2nZ86ATLhAoJ5FQ+lbHVD3ttKe74/c7tNT9c6F2viwB3ufwp01Oh2w==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-ppc64-musl@4.57.1': resolution: {integrity: sha512-NOlUuzesGauESAyEYFSe3QTUguL+lvrN1HtwEEsU2rOwdUDeTMJdO5dUYl/2hKf9jWydJrO9OL/XSSf65R5+Xw==} cpu: [ppc64] os: [linux] - libc: [musl] '@rollup/rollup-linux-riscv64-gnu@4.57.1': resolution: {integrity: sha512-ptA88htVp0AwUUqhVghwDIKlvJMD/fmL/wrQj99PRHFRAG6Z5nbWoWG4o81Nt9FT+IuqUQi+L31ZKAFeJ5Is+A==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.57.1': resolution: {integrity: sha512-S51t7aMMTNdmAMPpBg7OOsTdn4tySRQvklmL3RpDRyknk87+Sp3xaumlatU+ppQ+5raY7sSTcC2beGgvhENfuw==} cpu: [riscv64] os: [linux] - libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.57.1': resolution: {integrity: sha512-Bl00OFnVFkL82FHbEqy3k5CUCKH6OEJL54KCyx2oqsmZnFTR8IoNqBF+mjQVcRCT5sB6yOvK8A37LNm/kPJiZg==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.57.1': resolution: {integrity: sha512-ABca4ceT4N+Tv/GtotnWAeXZUZuM/9AQyCyKYyKnpk4yoA7QIAuBt6Hkgpw8kActYlew2mvckXkvx0FfoInnLg==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-musl@4.57.1': resolution: {integrity: sha512-HFps0JeGtuOR2convgRRkHCekD7j+gdAuXM+/i6kGzQtFhlCtQkpwtNzkNj6QhCDp7DRJ7+qC/1Vg2jt5iSOFw==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-openbsd-x64@4.57.1': resolution: {integrity: sha512-H+hXEv9gdVQuDTgnqD+SQffoWoc0Of59AStSzTEj/feWTBAnSfSD3+Dql1ZruJQxmykT/JVY0dE8Ka7z0DH1hw==} @@ -1017,6 +1007,11 @@ packages: engines: {node: '>=14.17'} hasBin: true + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -1496,14 +1491,14 @@ snapshots: dependencies: '@floating-ui/utils': 0.2.9 - cosmiconfig@9.0.0(typescript@5.2.2): + cosmiconfig@9.0.0(typescript@5.9.3): dependencies: env-paths: 2.2.1 import-fresh: 3.3.1 js-yaml: 4.1.1 parse-json: 5.2.0 optionalDependencies: - typescript: 5.2.2 + typescript: 5.9.3 css-functions-list@3.3.3: {} @@ -1888,16 +1883,16 @@ snapshots: dependencies: ansi-regex: 5.0.1 - stylelint-config-recommended@18.0.0(stylelint@16.19.1(typescript@5.2.2)): + stylelint-config-recommended@18.0.0(stylelint@16.19.1(typescript@5.9.3)): dependencies: - stylelint: 16.19.1(typescript@5.2.2) + stylelint: 16.19.1(typescript@5.9.3) - stylelint-config-standard@40.0.0(stylelint@16.19.1(typescript@5.2.2)): + stylelint-config-standard@40.0.0(stylelint@16.19.1(typescript@5.9.3)): dependencies: - stylelint: 16.19.1(typescript@5.2.2) - stylelint-config-recommended: 18.0.0(stylelint@16.19.1(typescript@5.2.2)) + stylelint: 16.19.1(typescript@5.9.3) + stylelint-config-recommended: 18.0.0(stylelint@16.19.1(typescript@5.9.3)) - stylelint@16.19.1(typescript@5.2.2): + stylelint@16.19.1(typescript@5.9.3): dependencies: '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) '@csstools/css-tokenizer': 3.0.4 @@ -1906,7 +1901,7 @@ snapshots: '@dual-bundle/import-meta-resolve': 4.2.1 balanced-match: 2.0.0 colord: 2.9.3 - cosmiconfig: 9.0.0(typescript@5.2.2) + cosmiconfig: 9.0.0(typescript@5.9.3) css-functions-list: 3.3.3 css-tree: 3.1.0 debug: 4.4.3 @@ -2000,6 +1995,8 @@ snapshots: typescript@5.2.2: {} + typescript@5.9.3: {} + util-deprecate@1.0.2: {} vite-plugin-static-copy@3.2.0(vite@7.3.1):