feat: skin engine + Twenty CRM theme for iistwin
- Add client/src/themes/ with tokens, built-in skins (iistwin, twenty, omegaprom) - Add ThemeProvider with data-skin/data-theme and runtime CSS for custom skins - Add npm run skins:generate script for build-time CSS generation - Add organization_skins table, migration and CRUD API - Add activeSkinId to organizations and expose it in /api/auth/me - Add skin switcher in /profile and admin skin editor in /settings/appearance - Adapt index.css hardcoded colors to skin tokens - Update AGENTS.md and Obsidian notes
This commit is contained in:
8
scripts/dev/generate-skins.ts
Normal file
8
scripts/dev/generate-skins.ts
Normal file
@@ -0,0 +1,8 @@
|
||||
import { writeFileSync } from 'fs';
|
||||
import { generateAllSkinsCss } from '../../client/src/themes/tokens';
|
||||
import { BUILT_IN_SKINS } from '../../client/src/themes/index';
|
||||
|
||||
const css = generateAllSkinsCss(BUILT_IN_SKINS);
|
||||
const header = '/* Auto-generated from client/src/themes/skins/*.ts */\n\n';
|
||||
writeFileSync('client/src/themes/styles/generated-skins.css', header + css);
|
||||
console.log(`✓ generated-skins.css updated (${BUILT_IN_SKINS.length} skins)`);
|
||||
Reference in New Issue
Block a user