Skip to content
Merged
2 changes: 1 addition & 1 deletion .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22.13.0'

- name: Setup pnpm
uses: pnpm/action-setup@v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@ jobs:
- name: Setup node
uses: actions/setup-node@v4
with:
node-version: "20"
node-version: 22.13.0
check-latest: true

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: latest
version: 10

- name: Install dependencies
run: pnpm install
Expand Down
40 changes: 20 additions & 20 deletions examples/angular/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,35 +22,35 @@
"deploy": "pnpm run build && firebase deploy --only hosting:fir-ui-rework-angular"
},
"dependencies": {
"@angular/animations": "^20.2.2",
"@angular/common": "^20.2.2",
"@angular/compiler": "^20.2.2",
"@angular/core": "^20.2.2",
"@angular/animations": "catalog:",
"@angular/common": "catalog:",
"@angular/compiler": "catalog:",
"@angular/core": "catalog:",
"@angular/fire": "^20.0.1",
"@angular/forms": "^20.2.2",
"@angular/platform-browser": "^20.2.2",
"@angular/platform-browser-dynamic": "^20.2.2",
"@angular/platform-server": "^20.2.2",
"@angular/router": "^20.2.2",
"@angular/ssr": "^20.3.21",
"@angular/forms": "catalog:",
"@angular/platform-browser": "catalog:",
"@angular/platform-browser-dynamic": "catalog:",
"@angular/platform-server": "catalog:",
"@angular/router": "catalog:",
"@angular/ssr": "catalog:",
"@firebase-oss/ui-angular": "workspace:*",
"@firebase-oss/ui-core": "workspace:*",
"@firebase-oss/ui-styles": "workspace:*",
"@firebase-oss/ui-translations": "workspace:*",
"@tailwindcss/postcss": "^4.0.6",
"express": "^4.18.2",
"postcss": "^8.5.2",
"postcss": "catalog:",
"rxjs": "~7.8.0",
"tailwindcss": "^4.0.6",
"tslib": "^2.3.0",
"zone.js": "~0.15.0"
},
"devDependencies": {
"@angular-devkit/build-angular": "latest",
"@angular-devkit/core": "latest",
"@angular-devkit/architect": "latest",
"@angular/cli": "^20.2.2",
"@angular/compiler-cli": "^20.2.2",
"@angular-devkit/build-angular": "catalog:",
"@angular-devkit/core": "catalog:",
"@angular-devkit/architect": "catalog:",
"@angular/cli": "catalog:",
"@angular/compiler-cli": "catalog:",
"@eslint/js": "^9.22.0",
"@tanstack/angular-form": "^0.42.0",
"@types/express": "^4.17.17",
Expand All @@ -61,10 +61,10 @@
"eslint-config-prettier": "^9.1.0",
"firebase": "^11",
"jsonc-parser": "^3.2.0",
"vite": "^6.2.2",
"vitest": "^3.2.0",
"@vitest/ui": "^3.2.0",
"@vitest/coverage-v8": "^3.2.0",
"vite": "catalog:",
"vitest": "catalog:",
"@vitest/ui": "catalog:",
"@vitest/coverage-v8": "catalog:",
"jsdom": "^25.0.0",
"@testing-library/jest-dom": "^6.6.0",
"nanostores": "^0.11.3",
Expand Down
16 changes: 8 additions & 8 deletions examples/nextjs-ssr/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,21 @@
"@firebase-oss/ui-core": "workspace:*",
"@firebase-oss/ui-styles": "workspace:*",
"@firebase-oss/ui-translations": "workspace:*",
"firebase": "^11.10.0",
"next": "15.1.7",
"react": "19.2.1",
"react-dom": "19.2.1",
"firebase": "catalog:",
"next": "catalog:",
"react": "catalog:",
"react-dom": "catalog:",
"server-only": "^0.0.1"
},
"devDependencies": {
"@tailwindcss/postcss": "^4.0.6",
"@types/node": "^20",
"@types/react": "19.2.7",
"@types/react-dom": "19.2.3",
"@types/react": "catalog:",
"@types/react-dom": "catalog:",
"vite": "catalog:",
"postcss": "^8.5.2",
"postcss": "catalog:",
"postcss-load-config": "^6.0.1",
"tailwindcss": "^4.0.6",
"typescript": "^5.9.2"
"typescript": "catalog:"
}
}
4 changes: 2 additions & 2 deletions examples/nextjs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"@firebase-oss/ui-styles": "workspace:*",
"@firebase-oss/ui-translations": "workspace:*",
"firebase": "catalog:",
"next": "15.1.7",
"next": "catalog:",
"react": "catalog:",
"react-dom": "catalog:",
"server-only": "^0.0.1"
Expand All @@ -28,7 +28,7 @@
"@types/node": "^20",
"@types/react": "catalog:",
"@types/react-dom": "catalog:",
"postcss": "^8.5.2",
"postcss": "catalog:",
"postcss-load-config": "^6.0.1",
"tailwindcss": "^4.0.6",
"typescript": "catalog:"
Expand Down
2 changes: 1 addition & 1 deletion examples/react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"firebase": "^11.6.0",
"react": "catalog:",
"react-dom": "catalog:",
"react-router": "^7.5.1"
"react-router": "catalog:"
},
"devDependencies": {
"@tailwindcss/vite": "^4.1.4",
Expand Down
2 changes: 1 addition & 1 deletion examples/shadcn/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
"react-dom": "catalog:",
"react-hook-form": "^7.65.0",
"react-resizable-panels": "^3.0.6",
"react-router": "^7.9.3",
"react-router": "catalog:",
"react-router-dom": "^6.28.0",
"recharts": "2.15.4",
"sonner": "^2.0.7",
Expand Down
5 changes: 3 additions & 2 deletions packages/react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,10 @@
],
"scripts": {
"prepare": "pnpm run build",
"build": "tsup --env.PROD=true && pnpm run build:logos",
"build": "tsup --env.PROD=true && pnpm run build:logos && pnpm run restore:logo-headers",
"build:local": "pnpm run build && pnpm pack",
"build:logos": "pnpm dlx @svgr/cli --icon --typescript --no-index --jsx-runtime automatic --out-dir src/components/logos ../core/brands",
"restore:logo-headers": "node scripts/restore-logo-license-headers.mjs",
"dev": "tsup --watch",
"lint": "eslint . --ext .ts,.tsx",
"lint:fix": "eslint . --ext .ts,.tsx --fix",
Expand Down Expand Up @@ -72,4 +73,4 @@
"vite-plugin-svgr": "^4.5.0",
"vitest": "catalog:"
}
}
}
58 changes: 58 additions & 0 deletions packages/react/scripts/restore-logo-license-headers.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/usr/bin/env node

import { readdir, readFile, writeFile } from "node:fs/promises";
import { dirname, join } from "node:path";
import { fileURLToPath } from "node:url";

const licenseHeader = `/**
* Copyright 2025 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

`;

const scriptDir = dirname(fileURLToPath(import.meta.url));
const logosDir = join(scriptDir, "../src/components/logos");


async function findLogoComponents(dir) {
const entries = await readdir(dir, { withFileTypes: true });
const files = [];

for (const entry of entries) {
const path = join(dir, entry.name);

if (entry.isDirectory()) {
files.push(...(await findLogoComponents(path)));
} else if (entry.isFile() && entry.name === "Logo.tsx") {
files.push(path);
}
}

return files;
}

const logoComponents = await findLogoComponents(logosDir);

await Promise.all(
logoComponents.map(async (path) => {
const contents = await readFile(path, "utf8");

if (contents.startsWith(licenseHeader)) {
return;
}

await writeFile(path, `${licenseHeader}${contents}`, "utf8");
}),
);
2 changes: 1 addition & 1 deletion packages/styles/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@
"./tailwind": "./dist/base.css",
"./themes/brutalist.css": "./dist/themes/brutalist.css"
}
}
}
Loading
Loading