@sesamehr/react-design-system 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +89 -0
- package/dist/Button/Button.d.ts +12 -0
- package/dist/Button/index.d.ts +7 -0
- package/dist/Data/Table/Table.d.ts +43 -0
- package/dist/Data/Table/TableAvatar/TableAvatar.d.ts +13 -0
- package/dist/Data/Table/TableBody/TableBody.d.ts +21 -0
- package/dist/Data/Table/TableBulkHeader/TableBulkHeader.d.ts +13 -0
- package/dist/Data/Table/TableCell/TableCell.d.ts +8 -0
- package/dist/Data/Table/TableColumnVisibility/TableColumnVisibility.d.ts +10 -0
- package/dist/Data/Table/TableDragCell/TableDragCell.d.ts +6 -0
- package/dist/Data/Table/TableEmpty/TableEmpty.d.ts +3 -0
- package/dist/Data/Table/TableExpandCell/TableExpandCell.d.ts +6 -0
- package/dist/Data/Table/TableFixed/TableFixed.d.ts +27 -0
- package/dist/Data/Table/TableFixed/index.d.ts +1 -0
- package/dist/Data/Table/TableHead/TableHead.d.ts +3 -0
- package/dist/Data/Table/TableHeaderCell/TableHeaderCell.d.ts +18 -0
- package/dist/Data/Table/TablePagination/TablePagination.d.ts +10 -0
- package/dist/Data/Table/TableRow/TableRow.d.ts +11 -0
- package/dist/Data/Table/TableRow/rowDrag.d.ts +17 -0
- package/dist/Data/Table/TableRowExpanded/TableRowExpanded.d.ts +5 -0
- package/dist/Data/Table/TableSelectCell/TableSelectCell.d.ts +9 -0
- package/dist/Data/Table/hooks/index.d.ts +20 -0
- package/dist/Data/Table/hooks/useDragToScroll/useDragToScroll.d.ts +19 -0
- package/dist/Data/Table/hooks/useFixedColumns.d.ts +8 -0
- package/dist/Data/Table/hooks/useScrollShadow/useScrollShadow.d.ts +14 -0
- package/dist/Data/Table/hooks/useTable/useTable.d.ts +3 -0
- package/dist/Data/Table/hooks/useTable/useTable.types.d.ts +55 -0
- package/dist/Data/Table/hooks/useTableColumns/useTableColumns.d.ts +2 -0
- package/dist/Data/Table/hooks/useTableColumns/useTableColumns.types.d.ts +31 -0
- package/dist/Data/Table/hooks/useTableDetailRow/useTableDetailRow.d.ts +2 -0
- package/dist/Data/Table/hooks/useTableDetailRow/useTableDetailRow.types.d.ts +29 -0
- package/dist/Data/Table/hooks/useTablePagination/useTablePagination.d.ts +44 -0
- package/dist/Data/Table/hooks/useTablePinning/index.d.ts +2 -0
- package/dist/Data/Table/hooks/useTablePinning/useTablePinning.d.ts +2 -0
- package/dist/Data/Table/hooks/useTablePinning/useTablePinning.types.d.ts +50 -0
- package/dist/Data/Table/hooks/useTableSelection/useTableSelection.d.ts +2 -0
- package/dist/Data/Table/hooks/useTableSelection/useTableSelection.types.d.ts +31 -0
- package/dist/Data/Table/hooks/useTableSorting/useTableSorting.d.ts +2 -0
- package/dist/Data/Table/hooks/useTableSorting/useTableSorting.types.d.ts +24 -0
- package/dist/Data/Table/index.d.ts +17 -0
- package/dist/Data/Table/types.d.ts +90 -0
- package/dist/Display/Avatar/Avatar.d.ts +23 -0
- package/dist/Display/Avatar/hooks/useAvatarBullet.d.ts +16 -0
- package/dist/Display/Avatar/index.d.ts +9 -0
- package/dist/Display/AvatarGroup/AvatarGroup.d.ts +16 -0
- package/dist/Display/AvatarGroup/index.d.ts +1 -0
- package/dist/Display/Badge/Badge.d.ts +6 -0
- package/dist/Display/Badge/index.d.ts +6 -0
- package/dist/Display/PaymentCard/PaymentCard.d.ts +13 -0
- package/dist/Display/PaymentCard/index.d.ts +20 -0
- package/dist/Feedback/Alert/Alert.d.ts +18 -0
- package/dist/Feedback/Alert/AlertClose.d.ts +3 -0
- package/dist/Feedback/Alert/AlertDescription.d.ts +3 -0
- package/dist/Feedback/Alert/AlertIcon.d.ts +3 -0
- package/dist/Feedback/Alert/AlertTitle.d.ts +3 -0
- package/dist/Feedback/Alert/AlertToggle.d.ts +3 -0
- package/dist/Feedback/Alert/alert-context.d.ts +12 -0
- package/dist/Feedback/Alert/index.d.ts +7 -0
- package/dist/Feedback/Bullet/Bullet.d.ts +7 -0
- package/dist/Feedback/Bullet/index.d.ts +7 -0
- package/dist/Feedback/Dialog/Dialog.d.ts +12 -0
- package/dist/Feedback/Dialog/DialogContent.d.ts +6 -0
- package/dist/Feedback/Dialog/DialogDescription.d.ts +3 -0
- package/dist/Feedback/Dialog/DialogOverlay.d.ts +4 -0
- package/dist/Feedback/Dialog/DialogTitle.d.ts +3 -0
- package/dist/Feedback/Dialog/DialogTwoPanelContent.d.ts +8 -0
- package/dist/Feedback/Dialog/index.d.ts +7 -0
- package/dist/Feedback/Popover/Popover.d.ts +14 -0
- package/dist/Feedback/Popover/PopoverContent.d.ts +6 -0
- package/dist/Feedback/Popover/index.d.ts +3 -0
- package/dist/Feedback/StatusBadge/StatusBadge.d.ts +6 -0
- package/dist/Feedback/StatusBadge/index.d.ts +9 -0
- package/dist/Feedback/Tooltip/Tooltip.d.ts +16 -0
- package/dist/Feedback/Tooltip/TooltipContent.d.ts +6 -0
- package/dist/Feedback/Tooltip/index.d.ts +2 -0
- package/dist/Forms/Field/FieldGroup/FieldGroup.d.ts +4 -0
- package/dist/Forms/Field/FieldLabel/FieldLabel.d.ts +2 -0
- package/dist/Forms/Field/FieldMessage/FieldMessage.d.ts +5 -0
- package/dist/Forms/Field/index.d.ts +3 -0
- package/dist/Forms/Inputs/Combobox/Combobox.d.ts +27 -0
- package/dist/Forms/Inputs/Combobox/ComboboxChipsInput.d.ts +12 -0
- package/dist/Forms/Inputs/Combobox/ComboboxContent.d.ts +13 -0
- package/dist/Forms/Inputs/Combobox/ComboboxEmpty.d.ts +10 -0
- package/dist/Forms/Inputs/Combobox/ComboboxGroup.d.ts +7 -0
- package/dist/Forms/Inputs/Combobox/ComboboxInput.d.ts +14 -0
- package/dist/Forms/Inputs/Combobox/ComboboxItem.d.ts +10 -0
- package/dist/Forms/Inputs/Combobox/ComboboxSeparator.d.ts +10 -0
- package/dist/Forms/Inputs/Combobox/context.d.ts +26 -0
- package/dist/Forms/Inputs/Combobox/index.d.ts +8 -0
- package/dist/Forms/Inputs/Combobox/types.d.ts +8 -0
- package/dist/Forms/Inputs/InputGroup/InputGroup.d.ts +2 -0
- package/dist/Forms/Inputs/InputNumber/InputNumber.d.ts +18 -0
- package/dist/Forms/Inputs/InputNumber/InputNumberContent.d.ts +2 -0
- package/dist/Forms/Inputs/InputNumber/InputNumberContext.d.ts +20 -0
- package/dist/Forms/Inputs/InputNumber/InputNumberDecrement.d.ts +3 -0
- package/dist/Forms/Inputs/InputNumber/InputNumberIncrement.d.ts +3 -0
- package/dist/Forms/Inputs/InputNumber/InputNumberInput.d.ts +3 -0
- package/dist/Forms/Inputs/InputNumber/index.d.ts +5 -0
- package/dist/Forms/Inputs/InputText/InputText.d.ts +14 -0
- package/dist/Forms/Inputs/Toggle/Checkbox/Checkbox.d.ts +11 -0
- package/dist/Forms/Inputs/Toggle/RadioButton/RadioButton.d.ts +7 -0
- package/dist/Forms/Inputs/Toggle/RadioButton/RadioGroup.d.ts +9 -0
- package/dist/Forms/Inputs/Toggle/Switch/Switch.d.ts +13 -0
- package/dist/Forms/Inputs/Toggle/Switch/constants.d.ts +1 -0
- package/dist/Forms/Inputs/Toggle/ToggleDescription/ToggleDescription.d.ts +5 -0
- package/dist/Forms/Inputs/Toggle/ToggleGroup/ToggleGroup.d.ts +7 -0
- package/dist/Forms/Inputs/Toggle/ToggleLabel/ToggleLabel.d.ts +5 -0
- package/dist/Forms/Inputs/Toggle/index.d.ts +8 -0
- package/dist/Forms/Inputs/index.d.ts +5 -0
- package/dist/Layout/Resizable/Resizable.d.ts +13 -0
- package/dist/Layout/Resizable/ResizableHandle.d.ts +21 -0
- package/dist/Layout/Resizable/ResizablePanel.d.ts +20 -0
- package/dist/Layout/Resizable/index.d.ts +3 -0
- package/dist/Navigation/Accordion/Accordion.d.ts +4 -0
- package/dist/Navigation/Accordion/AccordionContent.d.ts +3 -0
- package/dist/Navigation/Accordion/AccordionItem.d.ts +3 -0
- package/dist/Navigation/Accordion/AccordionTrigger.d.ts +3 -0
- package/dist/Navigation/Accordion/index.d.ts +4 -0
- package/dist/Navigation/Breadcrumb/Breadcrumb.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbEllipsis.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbItem.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbLink.d.ts +7 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbList.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbPage.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/BreadcrumbSeparator.d.ts +2 -0
- package/dist/Navigation/Breadcrumb/index.d.ts +7 -0
- package/dist/Navigation/Tabs/Tabs.d.ts +4 -0
- package/dist/Navigation/Tabs/TabsContent.d.ts +3 -0
- package/dist/Navigation/Tabs/TabsList.d.ts +3 -0
- package/dist/Navigation/Tabs/TabsTrigger.d.ts +3 -0
- package/dist/Navigation/Tabs/index.d.ts +4 -0
- package/dist/Transitions/TransitionBase.d.ts +30 -0
- package/dist/Transitions/TransitionBounce/TransitionBounce.d.ts +7 -0
- package/dist/Transitions/TransitionBounce/index.d.ts +1 -0
- package/dist/Transitions/TransitionExpand/TransitionExpand.d.ts +7 -0
- package/dist/Transitions/TransitionExpand/index.d.ts +1 -0
- package/dist/Transitions/TransitionFade/TransitionFade.d.ts +7 -0
- package/dist/Transitions/TransitionFade/index.d.ts +1 -0
- package/dist/Transitions/TransitionFlip/TransitionFlip.d.ts +13 -0
- package/dist/Transitions/TransitionFlip/index.d.ts +1 -0
- package/dist/Transitions/TransitionSlideX/TransitionSlideX.d.ts +10 -0
- package/dist/Transitions/TransitionSlideX/index.d.ts +1 -0
- package/dist/Transitions/TransitionSlideY/TransitionSlideY.d.ts +10 -0
- package/dist/Transitions/TransitionSlideY/index.d.ts +1 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/main.d.ts +25 -0
- package/dist/react-design-system.css +1 -0
- package/dist/react-design-system.js +19498 -0
- package/dist/react-design-system.umd.cjs +165 -0
- package/package.json +94 -0
- package/src/assets/styles/mainTheme.css +1 -0
- package/src/assets/styles/primitives.css +98 -0
- package/src/assets/styles/theme-v2.css +298 -0
package/package.json
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sesamehr/react-design-system",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Sesame HR React design system — components and design tokens",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/react-design-system.umd.cjs",
|
|
8
|
+
"module": "./dist/react-design-system.js",
|
|
9
|
+
"types": "./dist/main.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/main.d.ts",
|
|
13
|
+
"import": "./dist/react-design-system.js",
|
|
14
|
+
"require": "./dist/react-design-system.umd.cjs"
|
|
15
|
+
},
|
|
16
|
+
"./style.css": "./dist/react-design-system.css",
|
|
17
|
+
"./assets/styles/mainTheme.css": "./src/assets/styles/mainTheme.css",
|
|
18
|
+
"./lib/utils": {
|
|
19
|
+
"types": "./dist/lib/utils.d.ts",
|
|
20
|
+
"import": "./dist/lib/utils.js"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"files": [
|
|
24
|
+
"dist",
|
|
25
|
+
"src/assets/styles"
|
|
26
|
+
],
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@dnd-kit/core": "^6.3.1",
|
|
29
|
+
"@dnd-kit/modifiers": "^9.0.0",
|
|
30
|
+
"@dnd-kit/sortable": "^10.0.0",
|
|
31
|
+
"@dnd-kit/utilities": "^3.2.2",
|
|
32
|
+
"@radix-ui/react-accordion": "^1.2.11",
|
|
33
|
+
"@radix-ui/react-checkbox": "^1.3.2",
|
|
34
|
+
"@radix-ui/react-dialog": "^1.1.14",
|
|
35
|
+
"@radix-ui/react-popover": "^1.1.14",
|
|
36
|
+
"@radix-ui/react-radio-group": "^1.3.7",
|
|
37
|
+
"@radix-ui/react-slot": "^1.2.3",
|
|
38
|
+
"@radix-ui/react-switch": "^1.2.5",
|
|
39
|
+
"@radix-ui/react-tabs": "^1.1.12",
|
|
40
|
+
"@radix-ui/react-tooltip": "^1.2.7",
|
|
41
|
+
"@tailwindcss/vite": "^4.1.13",
|
|
42
|
+
"@tanstack/react-table": "^8.21.2",
|
|
43
|
+
"class-variance-authority": "^0.7.1",
|
|
44
|
+
"clsx": "^2.1.1",
|
|
45
|
+
"cmdk": "^1.1.1",
|
|
46
|
+
"lucide-react": "^0.511.0",
|
|
47
|
+
"react-resizable-panels": "^2.1.9",
|
|
48
|
+
"react-transition-group": "^4.4.5",
|
|
49
|
+
"tailwind-merge": "^3.3.0",
|
|
50
|
+
"tw-animate-css": "^1.3.0"
|
|
51
|
+
},
|
|
52
|
+
"peerDependencies": {
|
|
53
|
+
"react": "^18.3.0 || ^19.0.0",
|
|
54
|
+
"react-dom": "^18.3.0 || ^19.0.0",
|
|
55
|
+
"tailwindcss": "^4.1.7"
|
|
56
|
+
},
|
|
57
|
+
"publishConfig": {
|
|
58
|
+
"access": "public"
|
|
59
|
+
},
|
|
60
|
+
"devDependencies": {
|
|
61
|
+
"@testing-library/jest-dom": "^6.9.1",
|
|
62
|
+
"@testing-library/react": "^16.1.0",
|
|
63
|
+
"@testing-library/user-event": "^14.6.1",
|
|
64
|
+
"@types/react": "^19.0.0",
|
|
65
|
+
"@types/react-dom": "^19.0.0",
|
|
66
|
+
"@types/react-transition-group": "^4.4.12",
|
|
67
|
+
"@vitejs/plugin-react": "^4.3.4",
|
|
68
|
+
"eslint": "^8.57.1",
|
|
69
|
+
"eslint-config-prettier": "^10.1.8",
|
|
70
|
+
"eslint-plugin-react": "^7.37.2",
|
|
71
|
+
"eslint-plugin-react-hooks": "^5.1.0",
|
|
72
|
+
"happy-dom": "^20.5.0",
|
|
73
|
+
"prettier": "^3.6.2",
|
|
74
|
+
"prettier-plugin-tailwindcss": "^0.6.14",
|
|
75
|
+
"react": "^19.2.4",
|
|
76
|
+
"react-dom": "^19.2.4",
|
|
77
|
+
"typescript": "^5.8.3",
|
|
78
|
+
"vite": "^6.3.5",
|
|
79
|
+
"vite-plugin-dts": "^4.5.4",
|
|
80
|
+
"vitest": "^4.0.18",
|
|
81
|
+
"@orxata/config": "1.0.0"
|
|
82
|
+
},
|
|
83
|
+
"scripts": {
|
|
84
|
+
"dev": "vite",
|
|
85
|
+
"build": "tsc -b --noEmit && vite build",
|
|
86
|
+
"preview": "vite preview",
|
|
87
|
+
"test": "vitest run",
|
|
88
|
+
"test:watch": "vitest",
|
|
89
|
+
"test:coverage": "vitest run --coverage",
|
|
90
|
+
"lint": "eslint .",
|
|
91
|
+
"lint:fix": "eslint . --fix",
|
|
92
|
+
"type-check": "tsc --noEmit"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './theme-v2.css';
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/* ===========================================
|
|
2
|
+
PRIMITIVES - Base values as CSS custom properties
|
|
3
|
+
These are defined in :root so they can be referenced
|
|
4
|
+
anywhere, including in @theme inline blocks.
|
|
5
|
+
=========================================== */
|
|
6
|
+
|
|
7
|
+
:root {
|
|
8
|
+
/* ===== RADIUS (custom scale, differs from Tailwind) ===== */
|
|
9
|
+
--radius-xs: 0.125rem; /* 2px */
|
|
10
|
+
--radius-sm: 0.375rem; /* 6px */
|
|
11
|
+
--radius-md: 0.5rem; /* 8px */
|
|
12
|
+
--radius-lg: 0.625rem; /* 10px */
|
|
13
|
+
--radius-xl: 0.875rem; /* 14px */
|
|
14
|
+
--radius-2xl: 1rem; /* 16px */
|
|
15
|
+
--radius-3xl: 1.5rem; /* 24px */
|
|
16
|
+
--radius-4xl: 2rem; /* 32px */
|
|
17
|
+
|
|
18
|
+
/* Default radius for `rounded` class */
|
|
19
|
+
--radius-DEFAULT: var(--radius-md);
|
|
20
|
+
|
|
21
|
+
/* ===== FONTS (custom families) ===== */
|
|
22
|
+
--font-sans: 'Figtree', ui-sans-serif, system-ui, sans-serif;
|
|
23
|
+
--font-mono: 'Geist Mono', ui-monospace, monospace;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@theme {
|
|
27
|
+
--color-white: #ffffff;
|
|
28
|
+
--color-white: oklch(1 0 0);
|
|
29
|
+
|
|
30
|
+
--color-slate-50: #f8fafc;
|
|
31
|
+
--color-slate-50: oklch(0.984 0.003 247.858);
|
|
32
|
+
--color-slate-100: #f1f5f9;
|
|
33
|
+
--color-slate-100: oklch(0.968 0.007 247.896);
|
|
34
|
+
--color-slate-200: #e2e8f0;
|
|
35
|
+
--color-slate-200: oklch(0.929 0.013 255.508);
|
|
36
|
+
--color-slate-300: #cbd5e1;
|
|
37
|
+
--color-slate-300: oklch(0.869 0.022 252.894);
|
|
38
|
+
--color-slate-400: #94a3b8;
|
|
39
|
+
--color-slate-400: oklch(0.704 0.04 256.788);
|
|
40
|
+
--color-slate-500: #64748b;
|
|
41
|
+
--color-slate-500: oklch(0.554 0.046 257.417);
|
|
42
|
+
--color-slate-600: #475569;
|
|
43
|
+
--color-slate-600: oklch(0.446 0.043 257.281);
|
|
44
|
+
--color-slate-700: #334155;
|
|
45
|
+
--color-slate-700: oklch(0.372 0.044 257.287);
|
|
46
|
+
--color-slate-800: #1e293b;
|
|
47
|
+
--color-slate-800: oklch(0.279 0.041 260.031);
|
|
48
|
+
--color-slate-900: #0f172a;
|
|
49
|
+
--color-slate-900: oklch(0.208 0.042 265.755);
|
|
50
|
+
--color-slate-950: #020617;
|
|
51
|
+
--color-slate-950: oklch(0.129 0.042 264.695);
|
|
52
|
+
|
|
53
|
+
--color-indigo-50: #eef2ff;
|
|
54
|
+
--color-indigo-50: oklch(0.962 0.018 272.314);
|
|
55
|
+
--color-indigo-100: #e0e7ff;
|
|
56
|
+
--color-indigo-100: oklch(0.93 0.034 272.788);
|
|
57
|
+
--color-indigo-300: #a5b4fc;
|
|
58
|
+
--color-indigo-300: oklch(0.757 0.105 274.039);
|
|
59
|
+
--color-indigo-400: #818cf8;
|
|
60
|
+
--color-indigo-400: oklch(0.673 0.182 276.935);
|
|
61
|
+
--color-indigo-500: #6366f1;
|
|
62
|
+
--color-indigo-500: oklch(0.585 0.233 264.052);
|
|
63
|
+
--color-indigo-600: #4f46e5;
|
|
64
|
+
--color-indigo-600: oklch(0.511 0.262 276.966);
|
|
65
|
+
--color-indigo-700: #4338ca;
|
|
66
|
+
--color-indigo-700: oklch(0.457 0.24 277.023);
|
|
67
|
+
--color-indigo-800: #3730a3;
|
|
68
|
+
--color-indigo-800: oklch(0.398 0.195 277.366);
|
|
69
|
+
--color-indigo-950: #1e1b4b;
|
|
70
|
+
--color-indigo-950: oklch(0.257 0.09 281.288);
|
|
71
|
+
|
|
72
|
+
--color-red-400: #f87171;
|
|
73
|
+
--color-red-400: oklch(0.704 0.191 22.216);
|
|
74
|
+
--color-red-600: #dc2626;
|
|
75
|
+
--color-red-600: oklch(0.577 0.245 27.325);
|
|
76
|
+
|
|
77
|
+
--color-green-100: #dcfce7;
|
|
78
|
+
--color-green-100: oklch(0.962 0.052 149.214);
|
|
79
|
+
--color-green-300: #86efac;
|
|
80
|
+
--color-green-300: oklch(0.871 0.15 154.449);
|
|
81
|
+
--color-green-500: #22c55e;
|
|
82
|
+
--color-green-500: oklch(0.723 0.219 149.579);
|
|
83
|
+
--color-green-600: #16a34a;
|
|
84
|
+
--color-green-600: oklch(0.627 0.194 149.214);
|
|
85
|
+
|
|
86
|
+
--color-amber-500: #f59e0b;
|
|
87
|
+
--color-amber-500: oklch(0.769 0.188 70.08);
|
|
88
|
+
|
|
89
|
+
--color-emerald-300: #6ee7b7;
|
|
90
|
+
--color-emerald-300: oklch(0.871 0.15 154.449);
|
|
91
|
+
--color-emerald-500: #10b981;
|
|
92
|
+
--color-emerald-500: oklch(0.72 0.13 152.85);
|
|
93
|
+
--color-emerald-900: #064e3b;
|
|
94
|
+
--color-emerald-900: oklch(0.32 0.04 152.85);
|
|
95
|
+
|
|
96
|
+
--animate-accordion-down: accordion-down 0.2s ease-out;
|
|
97
|
+
--animate-accordion-up: accordion-up 0.2s ease-out;
|
|
98
|
+
}
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
@import './primitives.css';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* THEME V2
|
|
5
|
+
*
|
|
6
|
+
* Aligns with Figma: 3. Mode → 2. Theme → 1. TailwindCSS
|
|
7
|
+
*
|
|
8
|
+
* DS EXTENSIONS (pending design approval):
|
|
9
|
+
* - success, neutral-*, font-*, border-*, bg-*
|
|
10
|
+
*
|
|
11
|
+
* Dark mode: .dark class on <html>
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/* ===========================================
|
|
15
|
+
DS TOKENS (used by DS components)
|
|
16
|
+
=========================================== */
|
|
17
|
+
|
|
18
|
+
:root {
|
|
19
|
+
/* Font */
|
|
20
|
+
--font-primary: var(--color-indigo-950);
|
|
21
|
+
--font-secondary: var(--color-slate-500);
|
|
22
|
+
--font-tertiary: var(--color-slate-400);
|
|
23
|
+
--font-error: var(--color-red-600);
|
|
24
|
+
--font-success: var(--color-green-600);
|
|
25
|
+
--font-warning: var(--color-amber-500);
|
|
26
|
+
|
|
27
|
+
/* Border */
|
|
28
|
+
--border-default: var(--color-slate-200);
|
|
29
|
+
--border-hover: var(--color-indigo-300);
|
|
30
|
+
|
|
31
|
+
/* Success */
|
|
32
|
+
--success: var(--color-green-600);
|
|
33
|
+
--success-foreground: var(--color-white);
|
|
34
|
+
--success-100: var(--color-green-100);
|
|
35
|
+
--success-300: var(--color-green-300);
|
|
36
|
+
--success-500: var(--color-green-500);
|
|
37
|
+
|
|
38
|
+
/* Background */
|
|
39
|
+
--bg-base: var(--color-white);
|
|
40
|
+
--bg-muted: var(--color-slate-50);
|
|
41
|
+
--bg-subtle: var(--color-slate-100);
|
|
42
|
+
|
|
43
|
+
/* Neutral (semantic alias) */
|
|
44
|
+
--neutral-1: var(--color-white);
|
|
45
|
+
--neutral-50: var(--color-slate-50);
|
|
46
|
+
--neutral-100: var(--color-slate-100);
|
|
47
|
+
--neutral-200: var(--color-slate-200);
|
|
48
|
+
--neutral-300: var(--color-slate-300);
|
|
49
|
+
--neutral-400: var(--color-slate-400);
|
|
50
|
+
--neutral-500: var(--color-slate-500);
|
|
51
|
+
--neutral-600: var(--color-slate-600);
|
|
52
|
+
--neutral-700: var(--color-slate-700);
|
|
53
|
+
--neutral-800: var(--color-slate-800);
|
|
54
|
+
--neutral-900: var(--color-slate-900);
|
|
55
|
+
--neutral-950: var(--color-slate-950);
|
|
56
|
+
|
|
57
|
+
/* ===== UNCERTAINTY ===== */
|
|
58
|
+
/* One-off tokens without semantic names in
|
|
59
|
+
Figma. Defined here to avoid hardcoding color values across the codebase.
|
|
60
|
+
*/
|
|
61
|
+
--brand-accent-300: var(--color-emerald-300);
|
|
62
|
+
--brand-accent-500: var(--color-emerald-500);
|
|
63
|
+
--brand-accent-900: var(--color-emerald-900);
|
|
64
|
+
/* ======================== */
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.dark {
|
|
68
|
+
/* Font */
|
|
69
|
+
--font-primary: var(--color-white);
|
|
70
|
+
--font-secondary: var(--color-slate-300);
|
|
71
|
+
--font-tertiary: var(--color-slate-400);
|
|
72
|
+
--font-error: var(--color-red-400);
|
|
73
|
+
--font-success: var(--color-green-600);
|
|
74
|
+
--font-warning: var(--color-amber-500);
|
|
75
|
+
|
|
76
|
+
/* Border */
|
|
77
|
+
--border-default: var(--color-slate-700);
|
|
78
|
+
--border-hover: var(--color-indigo-400);
|
|
79
|
+
|
|
80
|
+
/* Success */
|
|
81
|
+
--success: var(--color-green-500);
|
|
82
|
+
--success-foreground: var(--color-white);
|
|
83
|
+
|
|
84
|
+
/* Background */
|
|
85
|
+
--bg-base: var(--color-slate-950);
|
|
86
|
+
--bg-muted: var(--color-slate-900);
|
|
87
|
+
--bg-subtle: var(--color-slate-800);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/* ===========================================
|
|
91
|
+
SHADCN TOKENS (support for shadcn components)
|
|
92
|
+
=========================================== */
|
|
93
|
+
|
|
94
|
+
/* Light mode (default) */
|
|
95
|
+
:root {
|
|
96
|
+
--background: var(--color-white);
|
|
97
|
+
--foreground: var(--color-indigo-950);
|
|
98
|
+
|
|
99
|
+
--card: var(--color-white);
|
|
100
|
+
--card-foreground: var(--color-indigo-950);
|
|
101
|
+
|
|
102
|
+
--popover: var(--color-white);
|
|
103
|
+
--popover-foreground: var(--color-indigo-950);
|
|
104
|
+
|
|
105
|
+
--primary: var(--color-indigo-500);
|
|
106
|
+
--primary-foreground: var(--color-white);
|
|
107
|
+
|
|
108
|
+
--secondary: var(--color-indigo-100);
|
|
109
|
+
--secondary-foreground: var(--color-indigo-950);
|
|
110
|
+
|
|
111
|
+
--muted: var(--color-slate-100);
|
|
112
|
+
--muted-foreground: var(--color-slate-500);
|
|
113
|
+
|
|
114
|
+
--accent: var(--color-slate-100);
|
|
115
|
+
--accent-foreground: var(--color-indigo-950);
|
|
116
|
+
|
|
117
|
+
--destructive: var(--color-red-600);
|
|
118
|
+
--destructive-foreground: var(--color-white);
|
|
119
|
+
|
|
120
|
+
--warning: var(--color-amber-500);
|
|
121
|
+
--warning-foreground: var(--color-white);
|
|
122
|
+
|
|
123
|
+
--border: var(--color-slate-200);
|
|
124
|
+
--input: var(--color-slate-200);
|
|
125
|
+
--ring: var(--color-indigo-500);
|
|
126
|
+
|
|
127
|
+
--chart-1: var(--color-indigo-400);
|
|
128
|
+
--chart-2: var(--color-indigo-500);
|
|
129
|
+
--chart-3: var(--color-indigo-600);
|
|
130
|
+
--chart-4: var(--color-indigo-700);
|
|
131
|
+
--chart-5: var(--color-indigo-800);
|
|
132
|
+
|
|
133
|
+
--sidebar-background: var(--color-white);
|
|
134
|
+
--sidebar-foreground: var(--color-indigo-950);
|
|
135
|
+
--sidebar-primary: var(--color-indigo-500);
|
|
136
|
+
--sidebar-primary-foreground: var(--color-white);
|
|
137
|
+
--sidebar-accent: var(--color-slate-100);
|
|
138
|
+
--sidebar-accent-foreground: var(--color-indigo-950);
|
|
139
|
+
--sidebar-border: var(--color-slate-200);
|
|
140
|
+
--sidebar-ring: var(--color-indigo-500);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/* Dark mode */
|
|
144
|
+
.dark {
|
|
145
|
+
--background: var(--color-slate-950);
|
|
146
|
+
--foreground: var(--color-white);
|
|
147
|
+
|
|
148
|
+
--card: var(--color-slate-900);
|
|
149
|
+
--card-foreground: var(--color-white);
|
|
150
|
+
|
|
151
|
+
--popover: var(--color-slate-800);
|
|
152
|
+
--popover-foreground: var(--color-white);
|
|
153
|
+
|
|
154
|
+
--primary: var(--color-indigo-300);
|
|
155
|
+
--primary-foreground: var(--color-indigo-950);
|
|
156
|
+
|
|
157
|
+
--secondary: var(--color-indigo-800);
|
|
158
|
+
--secondary-foreground: var(--color-white);
|
|
159
|
+
|
|
160
|
+
--muted: var(--color-slate-700);
|
|
161
|
+
--muted-foreground: var(--color-slate-300);
|
|
162
|
+
|
|
163
|
+
--accent: var(--color-slate-700);
|
|
164
|
+
--accent-foreground: var(--color-white);
|
|
165
|
+
|
|
166
|
+
--destructive: var(--color-red-400);
|
|
167
|
+
--destructive-foreground: var(--color-white);
|
|
168
|
+
|
|
169
|
+
--warning: var(--color-amber-500);
|
|
170
|
+
--warning-foreground: var(--color-white);
|
|
171
|
+
|
|
172
|
+
--border: var(--color-slate-700);
|
|
173
|
+
--input: var(--color-slate-700);
|
|
174
|
+
--ring: var(--color-indigo-400);
|
|
175
|
+
|
|
176
|
+
--chart-1: var(--color-indigo-300);
|
|
177
|
+
--chart-2: var(--color-indigo-400);
|
|
178
|
+
--chart-3: var(--color-indigo-500);
|
|
179
|
+
--chart-4: var(--color-indigo-600);
|
|
180
|
+
--chart-5: var(--color-indigo-700);
|
|
181
|
+
|
|
182
|
+
--sidebar-background: var(--color-slate-950);
|
|
183
|
+
--sidebar-foreground: var(--color-white);
|
|
184
|
+
--sidebar-primary: var(--color-indigo-400);
|
|
185
|
+
--sidebar-primary-foreground: var(--color-indigo-950);
|
|
186
|
+
--sidebar-accent: var(--color-slate-800);
|
|
187
|
+
--sidebar-accent-foreground: var(--color-white);
|
|
188
|
+
--sidebar-border: var(--color-slate-700);
|
|
189
|
+
--sidebar-ring: var(--color-indigo-400);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
/* Expose tokens to Tailwind */
|
|
193
|
+
@theme inline {
|
|
194
|
+
/* DS tokens */
|
|
195
|
+
--color-font-primary: var(--font-primary);
|
|
196
|
+
--color-font-secondary: var(--font-secondary);
|
|
197
|
+
--color-font-tertiary: var(--font-tertiary);
|
|
198
|
+
--color-font-error: var(--font-error);
|
|
199
|
+
--color-font-success: var(--font-success);
|
|
200
|
+
--color-font-warning: var(--font-warning);
|
|
201
|
+
--color-border-default: var(--border-default);
|
|
202
|
+
--color-border-hover: var(--border-hover);
|
|
203
|
+
--color-bg-base: var(--bg-base);
|
|
204
|
+
--color-bg-muted: var(--bg-muted);
|
|
205
|
+
--color-bg-subtle: var(--bg-subtle);
|
|
206
|
+
--color-neutral-1: var(--neutral-1);
|
|
207
|
+
--color-neutral-50: var(--neutral-50);
|
|
208
|
+
--color-neutral-100: var(--neutral-100);
|
|
209
|
+
--color-neutral-200: var(--neutral-200);
|
|
210
|
+
--color-neutral-300: var(--neutral-300);
|
|
211
|
+
--color-neutral-400: var(--neutral-400);
|
|
212
|
+
--color-neutral-500: var(--neutral-500);
|
|
213
|
+
--color-neutral-600: var(--neutral-600);
|
|
214
|
+
--color-neutral-700: var(--neutral-700);
|
|
215
|
+
--color-neutral-800: var(--neutral-800);
|
|
216
|
+
--color-neutral-900: var(--neutral-900);
|
|
217
|
+
--color-neutral-950: var(--neutral-950);
|
|
218
|
+
--color-success: var(--success);
|
|
219
|
+
--color-success-foreground: var(--success-foreground);
|
|
220
|
+
--color-success-100: var(--success-100);
|
|
221
|
+
--color-success-300: var(--success-300);
|
|
222
|
+
--color-success-500: var(--success-500);
|
|
223
|
+
|
|
224
|
+
/* ===== UNCERTAINTY ===== */
|
|
225
|
+
--color-brand-accent-300: var(--brand-accent-300);
|
|
226
|
+
--color-brand-accent-500: var(--brand-accent-500);
|
|
227
|
+
--color-brand-accent-900: var(--brand-accent-900);
|
|
228
|
+
/* ======================== */
|
|
229
|
+
|
|
230
|
+
/* Shadcn tokens */
|
|
231
|
+
--color-background: var(--background);
|
|
232
|
+
--color-foreground: var(--foreground);
|
|
233
|
+
--color-card: var(--card);
|
|
234
|
+
--color-card-foreground: var(--card-foreground);
|
|
235
|
+
--color-popover: var(--popover);
|
|
236
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
237
|
+
--color-primary: var(--primary);
|
|
238
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
239
|
+
--color-secondary: var(--secondary);
|
|
240
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
241
|
+
--color-muted: var(--muted);
|
|
242
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
243
|
+
--color-accent: var(--accent);
|
|
244
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
245
|
+
--color-destructive: var(--destructive);
|
|
246
|
+
--color-destructive-foreground: var(--destructive-foreground);
|
|
247
|
+
--color-warning: var(--warning);
|
|
248
|
+
--color-warning-foreground: var(--warning-foreground);
|
|
249
|
+
--color-border: var(--border);
|
|
250
|
+
--color-input: var(--input);
|
|
251
|
+
--color-ring: var(--ring);
|
|
252
|
+
--color-chart-1: var(--chart-1);
|
|
253
|
+
--color-chart-2: var(--chart-2);
|
|
254
|
+
--color-chart-3: var(--chart-3);
|
|
255
|
+
--color-chart-4: var(--chart-4);
|
|
256
|
+
--color-chart-5: var(--chart-5);
|
|
257
|
+
--color-sidebar: var(--sidebar-background);
|
|
258
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
259
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
260
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
261
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
262
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
263
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
264
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
265
|
+
|
|
266
|
+
/* Radius - from primitives */
|
|
267
|
+
--radius-xs: var(--radius-xs);
|
|
268
|
+
--radius-sm: var(--radius-sm);
|
|
269
|
+
--radius-md: var(--radius-md);
|
|
270
|
+
--radius-lg: var(--radius-lg);
|
|
271
|
+
--radius-xl: var(--radius-xl);
|
|
272
|
+
--radius-2xl: var(--radius-2xl);
|
|
273
|
+
--radius-3xl: var(--radius-3xl);
|
|
274
|
+
--radius-4xl: var(--radius-4xl);
|
|
275
|
+
--radius-DEFAULT: var(--radius-DEFAULT);
|
|
276
|
+
|
|
277
|
+
/* Font families - from primitives */
|
|
278
|
+
--font-sans: var(--font-sans);
|
|
279
|
+
--font-mono: var(--font-mono);
|
|
280
|
+
|
|
281
|
+
@keyframes accordion-down {
|
|
282
|
+
from {
|
|
283
|
+
height: 0;
|
|
284
|
+
}
|
|
285
|
+
to {
|
|
286
|
+
height: var(--reka-accordion-content-height);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
@keyframes accordion-up {
|
|
291
|
+
from {
|
|
292
|
+
height: var(--reka-accordion-content-height);
|
|
293
|
+
}
|
|
294
|
+
to {
|
|
295
|
+
height: 0;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
}
|