feat: Add DSS infrastructure, remove legacy admin-ui code
Some checks failed
DSS Project Analysis / dss-context-update (push) Has been cancelled
Some checks failed
DSS Project Analysis / dss-context-update (push) Has been cancelled
- Remove legacy admin-ui/js/ vanilla JS components - Add .dss/ directory with core tokens, skins, themes - Add Storybook configuration and generated stories - Add DSS management scripts (dss-services, dss-init, dss-setup, dss-reset) - Add MCP command definitions for DSS plugin - Add Figma sync architecture and scripts - Update pre-commit hooks with documentation validation - Fix JSON trailing commas in skin files 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
99
.dss/data/_system/themes/_tokens.scss
Normal file
99
.dss/data/_system/themes/_tokens.scss
Normal file
@@ -0,0 +1,99 @@
|
||||
|
||||
// Do not edit directly, this file was auto-generated.
|
||||
|
||||
$color-background: #ffffff;
|
||||
$color-foreground: #09090b;
|
||||
$color-card: #ffffff;
|
||||
$color-card-foreground: #09090b;
|
||||
$color-popover: #ffffff;
|
||||
$color-popover-foreground: #09090b;
|
||||
$color-primary: #18181b; // zinc-900 - brand primary
|
||||
$color-primary-foreground: #fafafa; // zinc-50
|
||||
$color-secondary: #f4f4f5;
|
||||
$color-secondary-foreground: #18181b;
|
||||
$color-muted: #f4f4f5;
|
||||
$color-muted-foreground: #71717a;
|
||||
$color-accent: #f4f4f5;
|
||||
$color-accent-foreground: #18181b;
|
||||
$color-destructive: #ef4444;
|
||||
$color-destructive-foreground: #fafafa;
|
||||
$color-border: #e4e4e7;
|
||||
$color-input: #e4e4e7;
|
||||
$color-ring: #18181b; // matches primary
|
||||
$color-dark-background: #09090b;
|
||||
$color-dark-foreground: #fafafa;
|
||||
$color-dark-card: #09090b;
|
||||
$color-dark-card-foreground: #fafafa;
|
||||
$color-dark-popover: #09090b;
|
||||
$color-dark-popover-foreground: #fafafa;
|
||||
$color-dark-primary: #fafafa;
|
||||
$color-dark-primary-foreground: #18181b;
|
||||
$color-dark-secondary: #27272a;
|
||||
$color-dark-secondary-foreground: #fafafa;
|
||||
$color-dark-muted: #27272a;
|
||||
$color-dark-muted-foreground: #a1a1aa;
|
||||
$color-dark-accent: #27272a;
|
||||
$color-dark-accent-foreground: #fafafa;
|
||||
$color-dark-destructive: #7f1d1d;
|
||||
$color-dark-destructive-foreground: #fafafa;
|
||||
$color-dark-border: #27272a;
|
||||
$color-dark-input: #27272a;
|
||||
$color-dark-ring: #d4d4d8;
|
||||
$radius-sm: 0.125rem;
|
||||
$radius-md: 0.375rem;
|
||||
$radius-lg: 0.5rem; // default border radius for cards
|
||||
$radius-xl: 0.75rem;
|
||||
$radius-full: 9999px;
|
||||
$effect-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
||||
$effect-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
|
||||
$effect-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
|
||||
$effect-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
|
||||
$effect-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
|
||||
$effect-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
|
||||
$effect-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.5);
|
||||
$spacing-0: 0;
|
||||
$spacing-1: 0.25rem;
|
||||
$spacing-2: 0.5rem;
|
||||
$spacing-3: 0.75rem;
|
||||
$spacing-4: 1rem;
|
||||
$spacing-5: 1.25rem;
|
||||
$spacing-6: 1.5rem;
|
||||
$spacing-8: 2rem;
|
||||
$spacing-10: 2.5rem;
|
||||
$spacing-12: 3rem;
|
||||
$spacing-16: 4rem;
|
||||
$typography-heading-1-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-heading-1-font-weight: 700;
|
||||
$typography-heading-1-font-size: 3rem;
|
||||
$typography-heading-1-line-height: 1;
|
||||
$typography-heading-1-letter-spacing: -0.025em;
|
||||
$typography-heading-2-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-heading-2-font-weight: 600;
|
||||
$typography-heading-2-font-size: 1.875rem;
|
||||
$typography-heading-2-line-height: 1.2;
|
||||
$typography-heading-2-letter-spacing: -0.025em;
|
||||
$typography-heading-3-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-heading-3-font-weight: 600;
|
||||
$typography-heading-3-font-size: 1.5rem;
|
||||
$typography-heading-3-line-height: 1.3;
|
||||
$typography-heading-3-letter-spacing: -0.025em;
|
||||
$typography-heading-4-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-heading-4-font-weight: 600;
|
||||
$typography-heading-4-font-size: 1.25rem;
|
||||
$typography-heading-4-line-height: 1.4;
|
||||
$typography-heading-4-letter-spacing: 0;
|
||||
$typography-paragraph-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-paragraph-regular-font-weight: 400;
|
||||
$typography-paragraph-regular-font-size: 1rem;
|
||||
$typography-paragraph-regular-line-height: 1.5;
|
||||
$typography-paragraph-regular-letter-spacing: 0;
|
||||
$typography-paragraph-bold-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-paragraph-bold-font-weight: 500;
|
||||
$typography-paragraph-bold-font-size: 1rem;
|
||||
$typography-paragraph-bold-line-height: 1.5;
|
||||
$typography-paragraph-bold-letter-spacing: 0;
|
||||
$typography-paragraph-small-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
$typography-paragraph-small-regular-font-weight: 400;
|
||||
$typography-paragraph-small-regular-font-size: 0.875rem;
|
||||
$typography-paragraph-small-regular-line-height: 1.5;
|
||||
$typography-paragraph-small-regular-letter-spacing: 0;
|
||||
102
.dss/data/_system/themes/tokens.css
Normal file
102
.dss/data/_system/themes/tokens.css
Normal file
@@ -0,0 +1,102 @@
|
||||
/**
|
||||
* Do not edit directly, this file was auto-generated.
|
||||
*/
|
||||
|
||||
:root {
|
||||
--color-background: #ffffff;
|
||||
--color-foreground: #09090b;
|
||||
--color-card: #ffffff;
|
||||
--color-card-foreground: #09090b;
|
||||
--color-popover: #ffffff;
|
||||
--color-popover-foreground: #09090b;
|
||||
--color-primary: #18181b; /** zinc-900 - brand primary */
|
||||
--color-primary-foreground: #fafafa; /** zinc-50 */
|
||||
--color-secondary: #f4f4f5;
|
||||
--color-secondary-foreground: #18181b;
|
||||
--color-muted: #f4f4f5;
|
||||
--color-muted-foreground: #71717a;
|
||||
--color-accent: #f4f4f5;
|
||||
--color-accent-foreground: #18181b;
|
||||
--color-destructive: #ef4444;
|
||||
--color-destructive-foreground: #fafafa;
|
||||
--color-border: #e4e4e7;
|
||||
--color-input: #e4e4e7;
|
||||
--color-ring: #18181b; /** matches primary */
|
||||
--color-dark-background: #09090b;
|
||||
--color-dark-foreground: #fafafa;
|
||||
--color-dark-card: #09090b;
|
||||
--color-dark-card-foreground: #fafafa;
|
||||
--color-dark-popover: #09090b;
|
||||
--color-dark-popover-foreground: #fafafa;
|
||||
--color-dark-primary: #fafafa;
|
||||
--color-dark-primary-foreground: #18181b;
|
||||
--color-dark-secondary: #27272a;
|
||||
--color-dark-secondary-foreground: #fafafa;
|
||||
--color-dark-muted: #27272a;
|
||||
--color-dark-muted-foreground: #a1a1aa;
|
||||
--color-dark-accent: #27272a;
|
||||
--color-dark-accent-foreground: #fafafa;
|
||||
--color-dark-destructive: #7f1d1d;
|
||||
--color-dark-destructive-foreground: #fafafa;
|
||||
--color-dark-border: #27272a;
|
||||
--color-dark-input: #27272a;
|
||||
--color-dark-ring: #d4d4d8;
|
||||
--radius-sm: 0.125rem;
|
||||
--radius-md: 0.375rem;
|
||||
--radius-lg: 0.5rem; /** default border radius for cards */
|
||||
--radius-xl: 0.75rem;
|
||||
--radius-full: 9999px;
|
||||
--effect-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
||||
--effect-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
|
||||
--effect-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
|
||||
--effect-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
|
||||
--effect-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
|
||||
--effect-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
|
||||
--effect-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.5);
|
||||
--spacing-0: 0;
|
||||
--spacing-1: 0.25rem;
|
||||
--spacing-2: 0.5rem;
|
||||
--spacing-3: 0.75rem;
|
||||
--spacing-4: 1rem;
|
||||
--spacing-5: 1.25rem;
|
||||
--spacing-6: 1.5rem;
|
||||
--spacing-8: 2rem;
|
||||
--spacing-10: 2.5rem;
|
||||
--spacing-12: 3rem;
|
||||
--spacing-16: 4rem;
|
||||
--typography-heading-1-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-heading-1-font-weight: 700;
|
||||
--typography-heading-1-font-size: 3rem;
|
||||
--typography-heading-1-line-height: 1;
|
||||
--typography-heading-1-letter-spacing: -0.025em;
|
||||
--typography-heading-2-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-heading-2-font-weight: 600;
|
||||
--typography-heading-2-font-size: 1.875rem;
|
||||
--typography-heading-2-line-height: 1.2;
|
||||
--typography-heading-2-letter-spacing: -0.025em;
|
||||
--typography-heading-3-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-heading-3-font-weight: 600;
|
||||
--typography-heading-3-font-size: 1.5rem;
|
||||
--typography-heading-3-line-height: 1.3;
|
||||
--typography-heading-3-letter-spacing: -0.025em;
|
||||
--typography-heading-4-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-heading-4-font-weight: 600;
|
||||
--typography-heading-4-font-size: 1.25rem;
|
||||
--typography-heading-4-line-height: 1.4;
|
||||
--typography-heading-4-letter-spacing: 0;
|
||||
--typography-paragraph-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-paragraph-regular-font-weight: 400;
|
||||
--typography-paragraph-regular-font-size: 1rem;
|
||||
--typography-paragraph-regular-line-height: 1.5;
|
||||
--typography-paragraph-regular-letter-spacing: 0;
|
||||
--typography-paragraph-bold-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-paragraph-bold-font-weight: 500;
|
||||
--typography-paragraph-bold-font-size: 1rem;
|
||||
--typography-paragraph-bold-line-height: 1.5;
|
||||
--typography-paragraph-bold-letter-spacing: 0;
|
||||
--typography-paragraph-small-regular-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
--typography-paragraph-small-regular-font-weight: 400;
|
||||
--typography-paragraph-small-regular-font-size: 0.875rem;
|
||||
--typography-paragraph-small-regular-line-height: 1.5;
|
||||
--typography-paragraph-small-regular-letter-spacing: 0;
|
||||
}
|
||||
98
.dss/data/_system/themes/tokens.json
Normal file
98
.dss/data/_system/themes/tokens.json
Normal file
@@ -0,0 +1,98 @@
|
||||
{
|
||||
"ColorBackground": "#ffffff",
|
||||
"ColorForeground": "#09090b",
|
||||
"ColorCard": "#ffffff",
|
||||
"ColorCardForeground": "#09090b",
|
||||
"ColorPopover": "#ffffff",
|
||||
"ColorPopoverForeground": "#09090b",
|
||||
"ColorPrimary": "#18181b",
|
||||
"ColorPrimaryForeground": "#fafafa",
|
||||
"ColorSecondary": "#f4f4f5",
|
||||
"ColorSecondaryForeground": "#18181b",
|
||||
"ColorMuted": "#f4f4f5",
|
||||
"ColorMutedForeground": "#71717a",
|
||||
"ColorAccent": "#f4f4f5",
|
||||
"ColorAccentForeground": "#18181b",
|
||||
"ColorDestructive": "#ef4444",
|
||||
"ColorDestructiveForeground": "#fafafa",
|
||||
"ColorBorder": "#e4e4e7",
|
||||
"ColorInput": "#e4e4e7",
|
||||
"ColorRing": "#18181b",
|
||||
"ColorDarkBackground": "#09090b",
|
||||
"ColorDarkForeground": "#fafafa",
|
||||
"ColorDarkCard": "#09090b",
|
||||
"ColorDarkCardForeground": "#fafafa",
|
||||
"ColorDarkPopover": "#09090b",
|
||||
"ColorDarkPopoverForeground": "#fafafa",
|
||||
"ColorDarkPrimary": "#fafafa",
|
||||
"ColorDarkPrimaryForeground": "#18181b",
|
||||
"ColorDarkSecondary": "#27272a",
|
||||
"ColorDarkSecondaryForeground": "#fafafa",
|
||||
"ColorDarkMuted": "#27272a",
|
||||
"ColorDarkMutedForeground": "#a1a1aa",
|
||||
"ColorDarkAccent": "#27272a",
|
||||
"ColorDarkAccentForeground": "#fafafa",
|
||||
"ColorDarkDestructive": "#7f1d1d",
|
||||
"ColorDarkDestructiveForeground": "#fafafa",
|
||||
"ColorDarkBorder": "#27272a",
|
||||
"ColorDarkInput": "#27272a",
|
||||
"ColorDarkRing": "#d4d4d8",
|
||||
"RadiusSm": "0.125rem",
|
||||
"RadiusMd": "0.375rem",
|
||||
"RadiusLg": "0.5rem",
|
||||
"RadiusXl": "0.75rem",
|
||||
"RadiusFull": "9999px",
|
||||
"EffectShadowXs": "0 1px 2px 0 rgba(0, 0, 0, 0.05)",
|
||||
"EffectShadowSm": "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)",
|
||||
"EffectShadowMd": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",
|
||||
"EffectShadowLg": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",
|
||||
"EffectShadowXl": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)",
|
||||
"EffectShadow2xl": "0 25px 50px -12px rgba(0, 0, 0, 0.25)",
|
||||
"EffectFocusRing": "0 0 0 3px rgba(59, 130, 246, 0.5)",
|
||||
"Spacing0": "0",
|
||||
"Spacing1": "0.25rem",
|
||||
"Spacing2": "0.5rem",
|
||||
"Spacing3": "0.75rem",
|
||||
"Spacing4": "1rem",
|
||||
"Spacing5": "1.25rem",
|
||||
"Spacing6": "1.5rem",
|
||||
"Spacing8": "2rem",
|
||||
"Spacing10": "2.5rem",
|
||||
"Spacing12": "3rem",
|
||||
"Spacing16": "4rem",
|
||||
"TypographyHeading1FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyHeading1FontWeight": "700",
|
||||
"TypographyHeading1FontSize": "3rem",
|
||||
"TypographyHeading1LineHeight": "1",
|
||||
"TypographyHeading1LetterSpacing": "-0.025em",
|
||||
"TypographyHeading2FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyHeading2FontWeight": "600",
|
||||
"TypographyHeading2FontSize": "1.875rem",
|
||||
"TypographyHeading2LineHeight": "1.2",
|
||||
"TypographyHeading2LetterSpacing": "-0.025em",
|
||||
"TypographyHeading3FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyHeading3FontWeight": "600",
|
||||
"TypographyHeading3FontSize": "1.5rem",
|
||||
"TypographyHeading3LineHeight": "1.3",
|
||||
"TypographyHeading3LetterSpacing": "-0.025em",
|
||||
"TypographyHeading4FontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyHeading4FontWeight": "600",
|
||||
"TypographyHeading4FontSize": "1.25rem",
|
||||
"TypographyHeading4LineHeight": "1.4",
|
||||
"TypographyHeading4LetterSpacing": "0",
|
||||
"TypographyParagraphRegularFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyParagraphRegularFontWeight": "400",
|
||||
"TypographyParagraphRegularFontSize": "1rem",
|
||||
"TypographyParagraphRegularLineHeight": "1.5",
|
||||
"TypographyParagraphRegularLetterSpacing": "0",
|
||||
"TypographyParagraphBoldFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyParagraphBoldFontWeight": "500",
|
||||
"TypographyParagraphBoldFontSize": "1rem",
|
||||
"TypographyParagraphBoldLineHeight": "1.5",
|
||||
"TypographyParagraphBoldLetterSpacing": "0",
|
||||
"TypographyParagraphSmallRegularFontFamily": "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
|
||||
"TypographyParagraphSmallRegularFontWeight": "400",
|
||||
"TypographyParagraphSmallRegularFontSize": "0.875rem",
|
||||
"TypographyParagraphSmallRegularLineHeight": "1.5",
|
||||
"TypographyParagraphSmallRegularLetterSpacing": "0"
|
||||
}
|
||||
Reference in New Issue
Block a user