Skip to content

Commit e8f84f0

Browse files
authored
Merge pull request #91 from webstackdev/dependabot/npm_and_yarn/frontend/frontend-dependencies-bac83c0de7
Bump the frontend-dependencies group across 1 directory with 31 updates
2 parents db5c235 + 2c4af46 commit e8f84f0

7 files changed

Lines changed: 999 additions & 697 deletions

File tree

‎.github/dependabot.yml‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ updates:
1818
- "*"
1919

2020
- package-ecosystem: "npm"
21-
directory: "/frontend"
21+
# pnpm lockfile lives at repository root for this workspace.
22+
directory: "/"
2223
schedule:
2324
interval: "weekly"
2425
open-pull-requests-limit: 5
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
name: Dependabot Lockfile Refresh
2+
3+
on:
4+
pull_request_target:
5+
branches:
6+
- main
7+
types:
8+
- opened
9+
- synchronize
10+
- reopened
11+
12+
permissions:
13+
contents: write
14+
pull-requests: write
15+
16+
concurrency:
17+
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
18+
cancel-in-progress: true
19+
20+
jobs:
21+
refresh-lockfiles:
22+
name: Refresh lockfiles for Dependabot PRs
23+
if: github.actor == 'dependabot[bot]' && github.event.pull_request.head.repo.full_name == github.repository
24+
runs-on: ubuntu-latest
25+
26+
steps:
27+
- name: Checkout PR branch
28+
uses: actions/checkout@v7
29+
with:
30+
repository: ${{ github.event.pull_request.head.repo.full_name }}
31+
ref: ${{ github.event.pull_request.head.ref }}
32+
token: ${{ github.token }}
33+
34+
- name: Set up uv
35+
uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
36+
with:
37+
version: "0.8.17"
38+
enable-cache: true
39+
40+
- name: Install Python 3.13
41+
run: uv python install 3.13
42+
43+
- name: Initialize Pants
44+
uses: pantsbuild/actions/init-pants@0aaef864bd133c4055feb6adad0bfdce0de1c2e4 # v11
45+
with:
46+
gha-cache-key: cache0-py313
47+
named-caches-hash: ${{ hashFiles('3rdparty/python/default.lock', 'pants.toml') }}
48+
pants-ci-config: ""
49+
50+
- name: Set up pnpm
51+
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
52+
with:
53+
version: 11.1.2
54+
55+
- name: Set up Node.js
56+
uses: actions/setup-node@v6
57+
with:
58+
node-version: "22"
59+
cache: pnpm
60+
cache-dependency-path: pnpm-lock.yaml
61+
62+
- name: Refresh lockfiles
63+
run: |
64+
corepack enable
65+
corepack prepare pnpm@11.1.2 --activate
66+
uv lock
67+
pants generate-lockfiles --resolve=python-default
68+
pnpm install --lockfile-only
69+
70+
- name: Commit lockfile updates
71+
env:
72+
PR_HEAD_REF: ${{ github.event.pull_request.head.ref }}
73+
run: |
74+
set -euo pipefail
75+
76+
git config user.name "github-actions[bot]"
77+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
78+
79+
# Reject unexpected ref values before using them in git commands.
80+
if [[ ! "$PR_HEAD_REF" =~ ^[A-Za-z0-9._/-]+$ ]] || [[ "$PR_HEAD_REF" == -* ]] || [[ "$PR_HEAD_REF" == *..* ]]; then
81+
echo "Invalid pull request head ref: $PR_HEAD_REF"
82+
exit 1
83+
fi
84+
85+
if git diff --quiet -- uv.lock 3rdparty/python/default.lock pnpm-lock.yaml; then
86+
echo "No lockfile updates needed"
87+
exit 0
88+
fi
89+
90+
git add uv.lock 3rdparty/python/default.lock pnpm-lock.yaml
91+
git commit -m "chore: refresh lockfiles for dependabot"
92+
git push origin "HEAD:$PR_HEAD_REF"

‎frontend/eslint.config.mjs‎

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ import nextCoreWebVitals from "eslint-config-next/core-web-vitals"
44
import eslintConfigPrettier from "eslint-config-prettier/flat"
55
import simpleImportSortPlugin from "eslint-plugin-simple-import-sort"
66
import storybook from "eslint-plugin-storybook"
7-
import tseslint from "typescript-eslint"
87

9-
export default tseslint.config(
8+
const config = [
109
{
1110
ignores: [
1211
".next/**",
@@ -18,7 +17,6 @@ export default tseslint.config(
1817
],
1918
},
2019
js.configs.recommended,
21-
...tseslint.configs.recommended,
2220
...nextCoreWebVitals,
2321
{
2422
files: ["**/*.{js,mjs,cjs,jsx,ts,tsx}"],
@@ -37,12 +35,22 @@ export default tseslint.config(
3735
"simple-import-sort/exports": "error",
3836
},
3937
},
38+
{
39+
files: ["**/*.{ts,tsx}"],
40+
rules: {
41+
// TypeScript handles undefined names and unused symbols more accurately.
42+
"no-undef": "off",
43+
"no-unused-vars": "off",
44+
},
45+
},
4046
eslintConfigPrettier,
41-
storybook.configs["flat/recommended"],
47+
...storybook.configs["flat/recommended"],
4248
{
4349
files: [".storybook/main.ts"],
4450
rules: {
4551
"storybook/no-uninstalled-addons": "off",
4652
},
4753
},
48-
)
54+
]
55+
56+
export default config

‎frontend/package.json‎

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -27,61 +27,61 @@
2727
"build-storybook": "storybook build"
2828
},
2929
"dependencies": {
30-
"@base-ui/react": "^1.4.1",
30+
"@base-ui/react": "^1.6.0",
3131
"@eslint/js": "9.39.4",
32-
"@tailwindcss/postcss": "^4.3.0",
32+
"@tailwindcss/postcss": "^4.3.2",
3333
"@tailwindcss/forms": "^0.5.11",
34-
"@tailwindcss/typography": "^0.5.19",
35-
"@tanstack/react-query": "^5.100.10",
36-
"axios": "^1.16.1",
34+
"@tailwindcss/typography": "^0.5.20",
35+
"@tanstack/react-query": "^5.101.2",
36+
"axios": "^1.18.1",
3737
"class-variance-authority": "^0.7.1",
3838
"clsx": "^2.1.1",
3939
"eslint": "9.39.4",
40-
"eslint-config-next": "^16.2.6",
40+
"eslint-config-next": "^16.2.10",
4141
"eslint-config-prettier": "^10.1.8",
4242
"eslint-plugin-jsx-a11y": "^6.10.2",
4343
"eslint-plugin-react": "^7.37.5",
4444
"eslint-plugin-simple-import-sort": "^13.0.0",
45-
"lucide-react": "^1.16.0",
46-
"next": "16.2.6",
45+
"lucide-react": "^1.23.0",
46+
"next": "16.2.10",
4747
"next-auth": "^4.24.14",
4848
"next-themes": "^0.4.6",
49-
"postcss": "^8.5.14",
50-
"prettier": "^3.8.3",
51-
"react": "19.2.6",
52-
"react-dom": "19.2.6",
49+
"postcss": "^8.5.16",
50+
"prettier": "^3.9.4",
51+
"react": "19.2.7",
52+
"react-dom": "19.2.7",
5353
"react-dropzone": "^15.0.0",
54-
"react-hook-form": "^7.75.0",
54+
"react-hook-form": "^7.80.0",
5555
"tailwind-merge": "^3.6.0",
56-
"tailwindcss": "^4.3.0",
56+
"tailwindcss": "^4.3.2",
5757
"tw-animate-css": "^1.4.0",
58-
"typescript-eslint": "^8.59.3"
58+
"typescript-eslint": "^8.62.1"
5959
},
6060
"devDependencies": {
6161
"@chromatic-com/storybook": "^5.2.1",
62-
"@storybook/addon-a11y": "^10.4.0",
63-
"@storybook/addon-docs": "^10.4.0",
64-
"@storybook/addon-themes": "^10.4.0",
65-
"@storybook/addon-vitest": "^10.4.0",
66-
"@storybook/nextjs-vite": "^10.4.0",
62+
"@storybook/addon-a11y": "^10.4.6",
63+
"@storybook/addon-docs": "^10.4.6",
64+
"@storybook/addon-themes": "^10.4.6",
65+
"@storybook/addon-vitest": "^10.4.6",
66+
"@storybook/nextjs-vite": "^10.4.6",
6767
"@testing-library/dom": "^10.4.1",
6868
"@testing-library/jest-dom": "^6.9.1",
6969
"@testing-library/react": "^16.3.2",
7070
"@testing-library/user-event": "^14.6.1",
71-
"@types/node": "25.8.0",
72-
"@types/react": "19.2.14",
71+
"@types/node": "26.1.0",
72+
"@types/react": "19.2.17",
7373
"@types/react-dom": "19.2.3",
74-
"@vitejs/plugin-react": "^6.0.2",
75-
"@vitest/browser-playwright": "^4.1.6",
76-
"@vitest/coverage-v8": "^4.1.6",
74+
"@vitejs/plugin-react": "^6.0.3",
75+
"@vitest/browser-playwright": "^4.1.9",
76+
"@vitest/coverage-v8": "^4.1.9",
7777
"eslint-formatter-compact": "^9.0.1",
78-
"eslint-plugin-storybook": "^10.4.0",
78+
"eslint-plugin-storybook": "^10.4.6",
7979
"jsdom": "^29.1.1",
80-
"playwright": "^1.60.0",
81-
"storybook": "^10.4.0",
82-
"typescript": "5.9.3",
83-
"vite": "^8.0.16",
80+
"playwright": "^1.61.1",
81+
"storybook": "^10.4.6",
82+
"typescript": "6.0.3",
83+
"vite": "^8.1.3",
8484
"vite-tsconfig-paths": "^6.1.1",
85-
"vitest": "^4.1.6"
85+
"vitest": "^4.1.9"
8686
}
8787
}

‎frontend/tsconfig.tsbuildinfo‎

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

‎justfile‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ backend-install:
3232
bootstrap:
3333
@bash scripts/bootstrap_dev.sh
3434

35+
# Refresh Python and frontend lockfiles after dependency manifest updates
36+
refresh-lockfiles:
37+
@{{pnpm_setup}}
38+
@uv lock
39+
@{{backend_pants}} generate-lockfiles --resolve=python-default
40+
@{{pnpm_exec}} install --lockfile-only
41+
3542
# Ensure pnpm is enabled, then install frontend dependencies
3643
frontend-install:
3744
@{{frontend_env}}

0 commit comments

Comments
 (0)