@expcat/tigercat-core 1.0.7 → 1.2.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/README.md +1 -1
- package/dist/datepicker-DXzS_8l8.d.cts +130 -0
- package/dist/datepicker-DXzS_8l8.d.ts +130 -0
- package/dist/datepicker-locales/ar-SA.cjs +46 -0
- package/dist/datepicker-locales/ar-SA.d.cts +6 -0
- package/dist/datepicker-locales/ar-SA.d.ts +6 -0
- package/dist/datepicker-locales/ar-SA.js +20 -0
- package/dist/datepicker-locales/de-DE.cjs +46 -0
- package/dist/datepicker-locales/de-DE.d.cts +6 -0
- package/dist/datepicker-locales/de-DE.d.ts +6 -0
- package/dist/datepicker-locales/de-DE.js +20 -0
- package/dist/datepicker-locales/en-US.cjs +46 -0
- package/dist/datepicker-locales/en-US.d.cts +6 -0
- package/dist/datepicker-locales/en-US.d.ts +6 -0
- package/dist/datepicker-locales/en-US.js +20 -0
- package/dist/datepicker-locales/es-ES.cjs +46 -0
- package/dist/datepicker-locales/es-ES.d.cts +6 -0
- package/dist/datepicker-locales/es-ES.d.ts +6 -0
- package/dist/datepicker-locales/es-ES.js +20 -0
- package/dist/datepicker-locales/fr-FR.cjs +46 -0
- package/dist/datepicker-locales/fr-FR.d.cts +6 -0
- package/dist/datepicker-locales/fr-FR.d.ts +6 -0
- package/dist/datepicker-locales/fr-FR.js +20 -0
- package/dist/datepicker-locales/id-ID.cjs +46 -0
- package/dist/datepicker-locales/id-ID.d.cts +6 -0
- package/dist/datepicker-locales/id-ID.d.ts +6 -0
- package/dist/datepicker-locales/id-ID.js +20 -0
- package/dist/datepicker-locales/ja-JP.cjs +46 -0
- package/dist/datepicker-locales/ja-JP.d.cts +6 -0
- package/dist/datepicker-locales/ja-JP.d.ts +6 -0
- package/dist/datepicker-locales/ja-JP.js +20 -0
- package/dist/datepicker-locales/ko-KR.cjs +46 -0
- package/dist/datepicker-locales/ko-KR.d.cts +6 -0
- package/dist/datepicker-locales/ko-KR.d.ts +6 -0
- package/dist/datepicker-locales/ko-KR.js +20 -0
- package/dist/datepicker-locales/pt-BR.cjs +46 -0
- package/dist/datepicker-locales/pt-BR.d.cts +6 -0
- package/dist/datepicker-locales/pt-BR.d.ts +6 -0
- package/dist/datepicker-locales/pt-BR.js +20 -0
- package/dist/datepicker-locales/th-TH.cjs +46 -0
- package/dist/datepicker-locales/th-TH.d.cts +6 -0
- package/dist/datepicker-locales/th-TH.d.ts +6 -0
- package/dist/datepicker-locales/th-TH.js +20 -0
- package/dist/datepicker-locales/vi-VN.cjs +46 -0
- package/dist/datepicker-locales/vi-VN.d.cts +6 -0
- package/dist/datepicker-locales/vi-VN.d.ts +6 -0
- package/dist/datepicker-locales/vi-VN.js +20 -0
- package/dist/datepicker-locales/zh-CN.cjs +46 -0
- package/dist/datepicker-locales/zh-CN.d.cts +6 -0
- package/dist/datepicker-locales/zh-CN.d.ts +6 -0
- package/dist/datepicker-locales/zh-CN.js +20 -0
- package/dist/datepicker-locales/zh-TW.cjs +46 -0
- package/dist/datepicker-locales/zh-TW.d.cts +6 -0
- package/dist/datepicker-locales/zh-TW.d.ts +6 -0
- package/dist/datepicker-locales/zh-TW.js +20 -0
- package/dist/icons/common.cjs +54 -0
- package/dist/icons/common.d.cts +20 -0
- package/dist/icons/common.d.ts +20 -0
- package/dist/icons/common.js +21 -0
- package/dist/icons/picker.cjs +75 -0
- package/dist/icons/picker.d.cts +53 -0
- package/dist/icons/picker.d.ts +53 -0
- package/dist/icons/picker.js +35 -0
- package/dist/icons/status.cjs +47 -0
- package/dist/icons/status.d.cts +13 -0
- package/dist/icons/status.d.ts +13 -0
- package/dist/icons/status.js +18 -0
- package/dist/icons/table.cjs +48 -0
- package/dist/icons/table.d.cts +25 -0
- package/dist/icons/table.d.ts +25 -0
- package/dist/icons/table.js +17 -0
- package/dist/index.cjs +7064 -886
- package/dist/index.d.cts +3826 -1238
- package/dist/index.d.ts +3826 -1238
- package/dist/index.js +6705 -1011
- package/dist/locale-9-B-d0mp.d.cts +97 -0
- package/dist/locale-Bc3zz2b0.d.ts +97 -0
- package/dist/locales/ar-SA.cjs +155 -0
- package/dist/locales/ar-SA.d.cts +10 -0
- package/dist/locales/ar-SA.d.ts +10 -0
- package/dist/locales/ar-SA.js +128 -0
- package/dist/locales/de-DE.cjs +155 -0
- package/dist/locales/de-DE.d.cts +10 -0
- package/dist/locales/de-DE.d.ts +10 -0
- package/dist/locales/de-DE.js +128 -0
- package/dist/locales/en-US.cjs +69 -0
- package/dist/locales/en-US.d.cts +10 -0
- package/dist/locales/en-US.d.ts +10 -0
- package/dist/locales/en-US.js +44 -0
- package/dist/locales/es-ES.cjs +155 -0
- package/dist/locales/es-ES.d.cts +10 -0
- package/dist/locales/es-ES.d.ts +10 -0
- package/dist/locales/es-ES.js +128 -0
- package/dist/locales/fr-FR.cjs +155 -0
- package/dist/locales/fr-FR.d.cts +10 -0
- package/dist/locales/fr-FR.d.ts +10 -0
- package/dist/locales/fr-FR.js +128 -0
- package/dist/locales/id-ID.cjs +69 -0
- package/dist/locales/id-ID.d.cts +10 -0
- package/dist/locales/id-ID.d.ts +10 -0
- package/dist/locales/id-ID.js +44 -0
- package/dist/locales/ja-JP.cjs +69 -0
- package/dist/locales/ja-JP.d.cts +10 -0
- package/dist/locales/ja-JP.d.ts +10 -0
- package/dist/locales/ja-JP.js +44 -0
- package/dist/locales/ko-KR.cjs +69 -0
- package/dist/locales/ko-KR.d.cts +10 -0
- package/dist/locales/ko-KR.d.ts +10 -0
- package/dist/locales/ko-KR.js +44 -0
- package/dist/locales/pt-BR.cjs +155 -0
- package/dist/locales/pt-BR.d.cts +10 -0
- package/dist/locales/pt-BR.d.ts +10 -0
- package/dist/locales/pt-BR.js +128 -0
- package/dist/locales/th-TH.cjs +69 -0
- package/dist/locales/th-TH.d.cts +10 -0
- package/dist/locales/th-TH.d.ts +10 -0
- package/dist/locales/th-TH.js +44 -0
- package/dist/locales/vi-VN.cjs +69 -0
- package/dist/locales/vi-VN.d.cts +10 -0
- package/dist/locales/vi-VN.d.ts +10 -0
- package/dist/locales/vi-VN.js +44 -0
- package/dist/locales/zh-CN.cjs +69 -0
- package/dist/locales/zh-CN.d.cts +10 -0
- package/dist/locales/zh-CN.d.ts +10 -0
- package/dist/locales/zh-CN.js +44 -0
- package/dist/locales/zh-TW.cjs +69 -0
- package/dist/locales/zh-TW.d.cts +10 -0
- package/dist/locales/zh-TW.d.ts +10 -0
- package/dist/locales/zh-TW.js +44 -0
- package/dist/table-export-6ISYSoVB.d.cts +490 -0
- package/dist/table-export-6ISYSoVB.d.ts +490 -0
- package/dist/tailwind/modern.cjs +353 -0
- package/dist/tailwind/modern.d.cts +6 -0
- package/dist/tailwind/modern.d.ts +6 -0
- package/dist/tailwind/modern.js +320 -0
- package/dist/tailwind-entry-D4_sseNi.d.ts +218 -0
- package/dist/tailwind-entry-DUchHtjs.d.cts +218 -0
- package/dist/tailwind.cjs +206 -0
- package/dist/tailwind.d.cts +3 -0
- package/dist/tailwind.d.ts +3 -0
- package/dist/tailwind.js +173 -0
- package/dist/types-CJYAW1ql.d-DDBFn6KB.d.cts +126 -0
- package/dist/types-CJYAW1ql.d-DDBFn6KB.d.ts +126 -0
- package/dist/utils/table-export.cjs +112 -0
- package/dist/utils/table-export.d.cts +1 -0
- package/dist/utils/table-export.d.ts +1 -0
- package/dist/utils/table-export.js +79 -0
- package/package.json +190 -12
- package/tokens/figma-variables.json +2553 -0
- package/tokens/tailwind-tokens.js +145 -0
- package/tokens/tokens.css +640 -0
- package/tokens/tokens.json +395 -0
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
// src/tailwind-plugin.ts
|
|
2
|
+
import plugin from "tailwindcss/plugin";
|
|
3
|
+
|
|
4
|
+
// src/theme/index.ts
|
|
5
|
+
var THEME_CSS_VARS = {
|
|
6
|
+
// Primary colors
|
|
7
|
+
primary: "--tiger-primary",
|
|
8
|
+
primaryHover: "--tiger-primary-hover",
|
|
9
|
+
primaryActive: "--tiger-primary-active",
|
|
10
|
+
primaryDisabled: "--tiger-primary-disabled",
|
|
11
|
+
// Secondary colors
|
|
12
|
+
secondary: "--tiger-secondary",
|
|
13
|
+
secondaryHover: "--tiger-secondary-hover",
|
|
14
|
+
secondaryActive: "--tiger-secondary-active",
|
|
15
|
+
secondaryDisabled: "--tiger-secondary-disabled",
|
|
16
|
+
// Background hover states
|
|
17
|
+
outlineBgHover: "--tiger-outline-bg-hover",
|
|
18
|
+
ghostBgHover: "--tiger-ghost-bg-hover",
|
|
19
|
+
// Interaction states
|
|
20
|
+
focusRing: "--tiger-focus-ring",
|
|
21
|
+
// Surface & background
|
|
22
|
+
surface: "--tiger-surface",
|
|
23
|
+
surfaceMuted: "--tiger-surface-muted",
|
|
24
|
+
surfaceRaised: "--tiger-surface-raised",
|
|
25
|
+
// Text
|
|
26
|
+
text: "--tiger-text",
|
|
27
|
+
textSecondary: "--tiger-text-secondary",
|
|
28
|
+
textDisabled: "--tiger-text-disabled",
|
|
29
|
+
// Border
|
|
30
|
+
border: "--tiger-border",
|
|
31
|
+
borderStrong: "--tiger-border-strong",
|
|
32
|
+
// Status colors
|
|
33
|
+
success: "--tiger-success",
|
|
34
|
+
warning: "--tiger-warning",
|
|
35
|
+
error: "--tiger-error",
|
|
36
|
+
info: "--tiger-info",
|
|
37
|
+
// Chart palette
|
|
38
|
+
chart1: "--tiger-chart-1",
|
|
39
|
+
chart2: "--tiger-chart-2",
|
|
40
|
+
chart3: "--tiger-chart-3",
|
|
41
|
+
chart4: "--tiger-chart-4",
|
|
42
|
+
chart5: "--tiger-chart-5",
|
|
43
|
+
chart6: "--tiger-chart-6",
|
|
44
|
+
// Breakpoints
|
|
45
|
+
breakpointXs: "--tiger-breakpoint-xs",
|
|
46
|
+
breakpointSm: "--tiger-breakpoint-sm",
|
|
47
|
+
breakpointMd: "--tiger-breakpoint-md",
|
|
48
|
+
breakpointLg: "--tiger-breakpoint-lg",
|
|
49
|
+
breakpointXl: "--tiger-breakpoint-xl"
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
// src/themes/modern/tokens.ts
|
|
53
|
+
var MODERN_BASE_TOKENS_LIGHT = {
|
|
54
|
+
// Radius (matches existing rounded-md/lg/xl)
|
|
55
|
+
"--tiger-radius-sm": "0.375rem",
|
|
56
|
+
"--tiger-radius-md": "0.5rem",
|
|
57
|
+
"--tiger-radius-lg": "0.75rem",
|
|
58
|
+
"--tiger-radius-xl": "1rem",
|
|
59
|
+
"--tiger-radius-pill": "9999px",
|
|
60
|
+
// Shadows (Tailwind defaults)
|
|
61
|
+
"--tiger-shadow-sm": "0 1px 2px 0 rgb(0 0 0 / 0.05)",
|
|
62
|
+
"--tiger-shadow-md": "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",
|
|
63
|
+
"--tiger-shadow-lg": "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)",
|
|
64
|
+
"--tiger-shadow-xl": "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)",
|
|
65
|
+
// Glass — disabled by default (no backdrop blur, no inset highlights)
|
|
66
|
+
"--tiger-shadow-glass": "0 1px 2px 0 rgb(0 0 0 / 0.05)",
|
|
67
|
+
"--tiger-shadow-glass-strong": "0 4px 6px -1px rgb(0 0 0 / 0.1)",
|
|
68
|
+
"--tiger-blur-glass": "0px",
|
|
69
|
+
"--tiger-blur-glass-strong": "0px",
|
|
70
|
+
// Gradients — fall back to solid color via a no-op linear-gradient
|
|
71
|
+
"--tiger-gradient-primary": "linear-gradient(180deg, var(--tiger-primary), var(--tiger-primary))",
|
|
72
|
+
"--tiger-gradient-surface": "linear-gradient(180deg, var(--tiger-surface), var(--tiger-surface))",
|
|
73
|
+
"--tiger-gradient-danger": "linear-gradient(180deg, var(--tiger-error), var(--tiger-error))",
|
|
74
|
+
// Motion — current durations / easings
|
|
75
|
+
"--tiger-motion-duration-instant": "80ms",
|
|
76
|
+
"--tiger-motion-duration-quick": "150ms",
|
|
77
|
+
"--tiger-motion-duration-base": "200ms",
|
|
78
|
+
"--tiger-motion-duration-relaxed": "300ms",
|
|
79
|
+
"--tiger-motion-duration-slow": "450ms",
|
|
80
|
+
"--tiger-motion-ease-standard": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
81
|
+
"--tiger-motion-ease-decelerate": "cubic-bezier(0, 0, 0.2, 1)",
|
|
82
|
+
"--tiger-motion-ease-accelerate": "cubic-bezier(0.4, 0, 1, 1)",
|
|
83
|
+
"--tiger-motion-ease-emphasized": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
84
|
+
"--tiger-motion-ease-spring": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
85
|
+
"--tiger-transition-base": "all 200ms cubic-bezier(0.4, 0, 0.2, 1)",
|
|
86
|
+
"--tiger-transition-quick": "all 150ms cubic-bezier(0.4, 0, 0.2, 1)",
|
|
87
|
+
"--tiger-transition-emphasized": "transform 300ms cubic-bezier(0.4, 0, 0.2, 1)"
|
|
88
|
+
};
|
|
89
|
+
var MODERN_BASE_TOKENS_DARK = {
|
|
90
|
+
// Shadows tinted slightly to handle dark backgrounds
|
|
91
|
+
"--tiger-shadow-sm": "0 1px 2px 0 rgb(0 0 0 / 0.2)",
|
|
92
|
+
"--tiger-shadow-md": "0 4px 6px -1px rgb(0 0 0 / 0.3), 0 2px 4px -2px rgb(0 0 0 / 0.25)",
|
|
93
|
+
"--tiger-shadow-lg": "0 10px 15px -3px rgb(0 0 0 / 0.3), 0 4px 6px -4px rgb(0 0 0 / 0.25)",
|
|
94
|
+
"--tiger-shadow-xl": "0 20px 25px -5px rgb(0 0 0 / 0.3), 0 8px 10px -6px rgb(0 0 0 / 0.25)",
|
|
95
|
+
"--tiger-shadow-glass": "0 1px 2px 0 rgb(0 0 0 / 0.2)",
|
|
96
|
+
"--tiger-shadow-glass-strong": "0 4px 6px -1px rgb(0 0 0 / 0.3)"
|
|
97
|
+
};
|
|
98
|
+
var MODERN_OVERRIDE_TOKENS_LIGHT = {
|
|
99
|
+
// Rounder corners
|
|
100
|
+
"--tiger-radius-sm": "8px",
|
|
101
|
+
"--tiger-radius-md": "12px",
|
|
102
|
+
"--tiger-radius-lg": "16px",
|
|
103
|
+
"--tiger-radius-xl": "20px",
|
|
104
|
+
"--tiger-radius-pill": "9999px",
|
|
105
|
+
// Multi-layer shadows
|
|
106
|
+
"--tiger-shadow-sm": "0 1px 2px 0 rgb(0 0 0 / 0.04), 0 1px 3px 0 rgb(0 0 0 / 0.06)",
|
|
107
|
+
"--tiger-shadow-md": "0 4px 8px -2px rgb(0 0 0 / 0.06), 0 2px 4px -1px rgb(0 0 0 / 0.04)",
|
|
108
|
+
"--tiger-shadow-lg": "0 12px 24px -4px rgb(0 0 0 / 0.08), 0 4px 8px -2px rgb(0 0 0 / 0.04)",
|
|
109
|
+
"--tiger-shadow-xl": "0 24px 48px -8px rgb(0 0 0 / 0.1), 0 8px 16px -4px rgb(0 0 0 / 0.05)",
|
|
110
|
+
// Glass: backdrop blur + inset highlights
|
|
111
|
+
"--tiger-shadow-glass": "inset 0 1px 0 rgb(255 255 255 / 0.6), inset 0 -1px 0 rgb(0 0 0 / 0.04), 0 8px 24px -4px rgb(15 23 42 / 0.1)",
|
|
112
|
+
"--tiger-shadow-glass-strong": "inset 0 1px 0 rgb(255 255 255 / 0.5), inset 0 0 0 1px rgb(255 255 255 / 0.18), 0 16px 32px -8px rgb(15 23 42 / 0.16)",
|
|
113
|
+
"--tiger-blur-glass": "16px",
|
|
114
|
+
"--tiger-blur-glass-strong": "24px",
|
|
115
|
+
// Chart axis softening (modern look uses fainter axis/grid strokes)
|
|
116
|
+
"--tiger-chart-axis-line-opacity": "0.6",
|
|
117
|
+
"--tiger-chart-axis-tick-opacity": "0.55",
|
|
118
|
+
"--tiger-chart-grid-line-opacity": "0.4",
|
|
119
|
+
// Chart legend marker + row hover (opt-in glassy look)
|
|
120
|
+
"--tiger-chart-legend-marker-image": "linear-gradient(135deg, color-mix(in oklab, var(--tiger-chart-legend-marker-color) 100%, white 18%) 0%, var(--tiger-chart-legend-marker-color) 100%)",
|
|
121
|
+
"--tiger-chart-legend-row-hover-bg": "rgb(15 23 42 / 0.04)",
|
|
122
|
+
"--tiger-chart-legend-row-radius": "var(--tiger-radius-sm, 6px)",
|
|
123
|
+
// Chart block (TreeMap / Sunburst / Heatmap rect & path) — softer corners + active highlight
|
|
124
|
+
"--tiger-chart-block-radius": "var(--tiger-radius-sm, 2px)",
|
|
125
|
+
"--tiger-chart-block-active-filter": "brightness(1.08) saturate(1.1)",
|
|
126
|
+
// Chart bar (BarChart rect) — softer top corners (modern bumps to --tiger-radius-sm)
|
|
127
|
+
"--tiger-chart-bar-radius": "var(--tiger-radius-sm, 4px)",
|
|
128
|
+
// Chart scatter point — slightly stronger halo on hover under modern preset
|
|
129
|
+
"--tiger-chart-scatter-halo-radius": "6px",
|
|
130
|
+
// Chart donut center hole — opt-in glass panel behind centerValue / centerLabel
|
|
131
|
+
"--tiger-chart-donut-center-padding": "10px 14px",
|
|
132
|
+
"--tiger-chart-donut-center-bg": "color-mix(in oklab, var(--tiger-surface, #ffffff) 78%, transparent)",
|
|
133
|
+
"--tiger-chart-donut-center-shadow": "var(--tiger-shadow-glass)",
|
|
134
|
+
"--tiger-chart-donut-center-backdrop": "blur(var(--tiger-blur-glass, 16px)) saturate(1.05)",
|
|
135
|
+
// Subtle gradients via OKLab color-mix
|
|
136
|
+
"--tiger-gradient-primary": "linear-gradient(180deg, color-mix(in oklab, var(--tiger-primary) 100%, white 8%) 0%, var(--tiger-primary) 100%)",
|
|
137
|
+
"--tiger-gradient-surface": "linear-gradient(180deg, color-mix(in oklab, var(--tiger-surface) 100%, white 4%) 0%, var(--tiger-surface) 100%)",
|
|
138
|
+
"--tiger-gradient-danger": "linear-gradient(180deg, color-mix(in oklab, var(--tiger-error) 100%, white 6%) 0%, var(--tiger-error) 100%)",
|
|
139
|
+
// Refined motion
|
|
140
|
+
"--tiger-motion-ease-standard": "cubic-bezier(0.2, 0, 0, 1)",
|
|
141
|
+
"--tiger-motion-ease-decelerate": "cubic-bezier(0, 0, 0, 1)",
|
|
142
|
+
"--tiger-motion-ease-accelerate": "cubic-bezier(0.3, 0, 1, 1)",
|
|
143
|
+
"--tiger-motion-ease-emphasized": "cubic-bezier(0.2, 0, 0, 1.2)",
|
|
144
|
+
"--tiger-motion-ease-spring": "linear(0, 0.36 8%, 0.85 22%, 1.05 33%, 1.02 50%, 0.99 70%, 1)",
|
|
145
|
+
"--tiger-transition-base": "all var(--tiger-motion-duration-base) var(--tiger-motion-ease-standard)",
|
|
146
|
+
"--tiger-transition-quick": "all var(--tiger-motion-duration-quick) var(--tiger-motion-ease-standard)",
|
|
147
|
+
"--tiger-transition-emphasized": "transform var(--tiger-motion-duration-relaxed) var(--tiger-motion-ease-emphasized)"
|
|
148
|
+
};
|
|
149
|
+
var MODERN_OVERRIDE_TOKENS_DARK = {
|
|
150
|
+
"--tiger-shadow-sm": "0 1px 2px 0 rgb(2 6 23 / 0.5)",
|
|
151
|
+
"--tiger-shadow-md": "0 4px 8px -2px rgb(2 6 23 / 0.55), 0 2px 4px -1px rgb(2 6 23 / 0.4)",
|
|
152
|
+
"--tiger-shadow-lg": "0 12px 24px -4px rgb(2 6 23 / 0.55), 0 4px 8px -2px rgb(2 6 23 / 0.4)",
|
|
153
|
+
"--tiger-shadow-xl": "0 24px 48px -8px rgb(2 6 23 / 0.6), 0 8px 16px -4px rgb(2 6 23 / 0.45)",
|
|
154
|
+
"--tiger-shadow-glass": "inset 0 1px 0 rgb(255 255 255 / 0.06), inset 0 -1px 0 rgb(0 0 0 / 0.4), 0 8px 24px -4px rgb(0 0 0 / 0.4)",
|
|
155
|
+
"--tiger-shadow-glass-strong": "inset 0 1px 0 rgb(255 255 255 / 0.08), inset 0 0 0 1px rgb(255 255 255 / 0.06), 0 16px 32px -8px rgb(0 0 0 / 0.55)",
|
|
156
|
+
// Chart legend row hover for dark surfaces (slightly brighter)
|
|
157
|
+
"--tiger-chart-legend-row-hover-bg": "rgb(255 255 255 / 0.06)",
|
|
158
|
+
// Donut center glass panel for dark surfaces (slightly more opaque to read on dark)
|
|
159
|
+
"--tiger-chart-donut-center-bg": "color-mix(in oklab, var(--tiger-surface, #0f172a) 70%, transparent)"
|
|
160
|
+
};
|
|
161
|
+
var MODERN_REDUCED_MOTION_TOKENS = {
|
|
162
|
+
"--tiger-motion-duration-instant": "0ms",
|
|
163
|
+
"--tiger-motion-duration-quick": "0ms",
|
|
164
|
+
"--tiger-motion-duration-base": "0ms",
|
|
165
|
+
"--tiger-motion-duration-relaxed": "0ms",
|
|
166
|
+
"--tiger-motion-duration-slow": "0ms",
|
|
167
|
+
"--tiger-transition-base": "all 0ms linear",
|
|
168
|
+
"--tiger-transition-quick": "all 0ms linear",
|
|
169
|
+
"--tiger-transition-emphasized": "transform 0ms linear"
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
// src/tailwind-plugin.ts
|
|
173
|
+
var tigercatTheme = {
|
|
174
|
+
// Primary
|
|
175
|
+
"--tiger-primary": "#2563eb",
|
|
176
|
+
"--tiger-primary-hover": "#1d4ed8",
|
|
177
|
+
"--tiger-primary-active": "#1e40af",
|
|
178
|
+
"--tiger-primary-disabled": "#93c5fd",
|
|
179
|
+
// Secondary
|
|
180
|
+
"--tiger-secondary": "#4b5563",
|
|
181
|
+
"--tiger-secondary-hover": "#374151",
|
|
182
|
+
"--tiger-secondary-active": "#1f2937",
|
|
183
|
+
"--tiger-secondary-disabled": "#9ca3af",
|
|
184
|
+
// Background hover states
|
|
185
|
+
"--tiger-outline-bg-hover": "#eff6ff",
|
|
186
|
+
"--tiger-ghost-bg-hover": "#eff6ff",
|
|
187
|
+
// Interaction
|
|
188
|
+
"--tiger-focus-ring": "#2563eb",
|
|
189
|
+
// Surface & background
|
|
190
|
+
"--tiger-surface": "#ffffff",
|
|
191
|
+
"--tiger-surface-muted": "#f9fafb",
|
|
192
|
+
"--tiger-surface-raised": "#ffffff",
|
|
193
|
+
// Text
|
|
194
|
+
"--tiger-text": "#111827",
|
|
195
|
+
"--tiger-text-secondary": "#6b7280",
|
|
196
|
+
"--tiger-text-disabled": "#d1d5db",
|
|
197
|
+
// Border
|
|
198
|
+
"--tiger-border": "#e5e7eb",
|
|
199
|
+
"--tiger-border-strong": "#9ca3af",
|
|
200
|
+
// Status
|
|
201
|
+
"--tiger-success": "#16a34a",
|
|
202
|
+
"--tiger-warning": "#d97706",
|
|
203
|
+
"--tiger-error": "#dc2626",
|
|
204
|
+
"--tiger-info": "#3b82f6",
|
|
205
|
+
// Chart palette
|
|
206
|
+
"--tiger-chart-1": "#2563eb",
|
|
207
|
+
"--tiger-chart-2": "#16a34a",
|
|
208
|
+
"--tiger-chart-3": "#d97706",
|
|
209
|
+
"--tiger-chart-4": "#a855f7",
|
|
210
|
+
"--tiger-chart-5": "#0ea5e9",
|
|
211
|
+
"--tiger-chart-6": "#ef4444"
|
|
212
|
+
};
|
|
213
|
+
var tigercatDarkTheme = {
|
|
214
|
+
"--tiger-primary": "#60a5fa",
|
|
215
|
+
"--tiger-primary-hover": "#93c5fd",
|
|
216
|
+
"--tiger-primary-active": "#bfdbfe",
|
|
217
|
+
"--tiger-primary-disabled": "#1e40af",
|
|
218
|
+
"--tiger-secondary": "#9ca3af",
|
|
219
|
+
"--tiger-secondary-hover": "#d1d5db",
|
|
220
|
+
"--tiger-secondary-active": "#e5e7eb",
|
|
221
|
+
"--tiger-secondary-disabled": "#4b5563",
|
|
222
|
+
"--tiger-outline-bg-hover": "#1e3a5f",
|
|
223
|
+
"--tiger-ghost-bg-hover": "#1e3a5f",
|
|
224
|
+
"--tiger-focus-ring": "#60a5fa",
|
|
225
|
+
"--tiger-surface": "#111827",
|
|
226
|
+
"--tiger-surface-muted": "#1f2937",
|
|
227
|
+
"--tiger-surface-raised": "#1f2937",
|
|
228
|
+
"--tiger-text": "#f9fafb",
|
|
229
|
+
"--tiger-text-secondary": "#d1d5db",
|
|
230
|
+
"--tiger-text-disabled": "#4b5563",
|
|
231
|
+
"--tiger-border": "#374151",
|
|
232
|
+
"--tiger-border-strong": "#6b7280",
|
|
233
|
+
"--tiger-success": "#4ade80",
|
|
234
|
+
"--tiger-warning": "#fbbf24",
|
|
235
|
+
"--tiger-error": "#f87171",
|
|
236
|
+
"--tiger-info": "#60a5fa",
|
|
237
|
+
"--tiger-chart-1": "#60a5fa",
|
|
238
|
+
"--tiger-chart-2": "#4ade80",
|
|
239
|
+
"--tiger-chart-3": "#fbbf24",
|
|
240
|
+
"--tiger-chart-4": "#c084fc",
|
|
241
|
+
"--tiger-chart-5": "#38bdf8",
|
|
242
|
+
"--tiger-chart-6": "#f87171"
|
|
243
|
+
};
|
|
244
|
+
var tigercatDirectionBase = {
|
|
245
|
+
'[dir="rtl"] .tiger-rtl-mirror, [data-tiger-dir="rtl"] .tiger-rtl-mirror': {
|
|
246
|
+
transform: "scaleX(-1)"
|
|
247
|
+
},
|
|
248
|
+
'[dir="rtl"] .tiger-text-start, [data-tiger-dir="rtl"] .tiger-text-start': {
|
|
249
|
+
textAlign: "right"
|
|
250
|
+
},
|
|
251
|
+
'[dir="rtl"] .tiger-text-end, [data-tiger-dir="rtl"] .tiger-text-end': {
|
|
252
|
+
textAlign: "left"
|
|
253
|
+
},
|
|
254
|
+
'[dir="rtl"] .tiger-flex-row, [data-tiger-dir="rtl"] .tiger-flex-row': {
|
|
255
|
+
flexDirection: "row-reverse"
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
var tigercatReducedMotionBase = {
|
|
259
|
+
"@media (prefers-reduced-motion: reduce)": {
|
|
260
|
+
':root, [data-tiger-style="modern"]': MODERN_REDUCED_MOTION_TOKENS,
|
|
261
|
+
".tiger-motion-aware, .tiger-motion-aware::before, .tiger-motion-aware::after, [data-tiger-motion]": {
|
|
262
|
+
animationDuration: "0ms",
|
|
263
|
+
animationDelay: "0ms",
|
|
264
|
+
transitionDuration: "0ms",
|
|
265
|
+
transitionDelay: "0ms",
|
|
266
|
+
scrollBehavior: "auto"
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
};
|
|
270
|
+
var tigercatPlugin = plugin(function({ addBase }) {
|
|
271
|
+
addBase({
|
|
272
|
+
":root": { ...tigercatTheme, ...MODERN_BASE_TOKENS_LIGHT },
|
|
273
|
+
".dark": { ...tigercatDarkTheme, ...MODERN_BASE_TOKENS_DARK },
|
|
274
|
+
// Remove browser default focus outline on interactive SVG elements
|
|
275
|
+
'svg [tabindex], svg [role="button"]': {
|
|
276
|
+
outline: "none"
|
|
277
|
+
},
|
|
278
|
+
...tigercatDirectionBase,
|
|
279
|
+
...tigercatReducedMotionBase
|
|
280
|
+
});
|
|
281
|
+
});
|
|
282
|
+
function presetToVars(colors) {
|
|
283
|
+
const vars = {};
|
|
284
|
+
for (const [key, value] of Object.entries(colors)) {
|
|
285
|
+
const varName = THEME_CSS_VARS[key];
|
|
286
|
+
if (varName && value) {
|
|
287
|
+
vars[varName] = value;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return vars;
|
|
291
|
+
}
|
|
292
|
+
function createTigercatPlugin(options = {}) {
|
|
293
|
+
return plugin(function({ addBase }) {
|
|
294
|
+
const preset = options.preset;
|
|
295
|
+
const lightVars = preset?.light?.colors ? presetToVars(preset.light.colors) : tigercatTheme;
|
|
296
|
+
const darkVars = preset?.dark?.colors ? presetToVars(preset.dark.colors) : tigercatDarkTheme;
|
|
297
|
+
addBase({
|
|
298
|
+
":root": { ...lightVars, ...MODERN_BASE_TOKENS_LIGHT },
|
|
299
|
+
".dark": { ...darkVars, ...MODERN_BASE_TOKENS_DARK },
|
|
300
|
+
'svg [tabindex], svg [role="button"]': {
|
|
301
|
+
outline: "none"
|
|
302
|
+
},
|
|
303
|
+
...tigercatDirectionBase,
|
|
304
|
+
...tigercatReducedMotionBase
|
|
305
|
+
});
|
|
306
|
+
if (options.modern) {
|
|
307
|
+
addBase({
|
|
308
|
+
'[data-tiger-style="modern"]': MODERN_OVERRIDE_TOKENS_LIGHT,
|
|
309
|
+
'.dark[data-tiger-style="modern"], [data-tiger-style="modern"].dark': MODERN_OVERRIDE_TOKENS_DARK
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
// src/tailwind-entry-modern.ts
|
|
316
|
+
var modernPlugin = createTigercatPlugin({ modern: true });
|
|
317
|
+
var tailwind_entry_modern_default = modernPlugin;
|
|
318
|
+
export {
|
|
319
|
+
tailwind_entry_modern_default as default
|
|
320
|
+
};
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { P as PluginWithConfig } from './types-CJYAW1ql.d-DDBFn6KB.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Theme configuration types for Tigercat Design System
|
|
5
|
+
*
|
|
6
|
+
* Three-level structure:
|
|
7
|
+
* - ThemeColorScale: primitive color palette (50–950 shades)
|
|
8
|
+
* - ThemeSemanticColors: semantic mappings (primary, surface, text, border, status)
|
|
9
|
+
* - ThemeConfig: full configuration (colors + typography + radius + shadows + spacing)
|
|
10
|
+
*
|
|
11
|
+
* @module types/theme
|
|
12
|
+
* @since 0.7.0
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* A 10-step color shade scale (Tailwind-compatible).
|
|
16
|
+
* Shade 900 is optional since tokens.json uses 950 only.
|
|
17
|
+
*/
|
|
18
|
+
interface ThemeColorScale {
|
|
19
|
+
50: string;
|
|
20
|
+
100: string;
|
|
21
|
+
200: string;
|
|
22
|
+
300: string;
|
|
23
|
+
400: string;
|
|
24
|
+
500: string;
|
|
25
|
+
600: string;
|
|
26
|
+
700: string;
|
|
27
|
+
800: string;
|
|
28
|
+
900?: string;
|
|
29
|
+
950: string;
|
|
30
|
+
}
|
|
31
|
+
/** Colors for a single interactive/status hue (light **and** dark) */
|
|
32
|
+
interface ThemeSemanticColors {
|
|
33
|
+
/** Core interactive colors */
|
|
34
|
+
primary: string;
|
|
35
|
+
primaryHover: string;
|
|
36
|
+
primaryActive: string;
|
|
37
|
+
primaryDisabled: string;
|
|
38
|
+
secondary: string;
|
|
39
|
+
secondaryHover: string;
|
|
40
|
+
secondaryActive: string;
|
|
41
|
+
secondaryDisabled: string;
|
|
42
|
+
/** Button-specific hover backgrounds */
|
|
43
|
+
outlineBgHover: string;
|
|
44
|
+
ghostBgHover: string;
|
|
45
|
+
/** Focus ring color */
|
|
46
|
+
focusRing: string;
|
|
47
|
+
/** Surface / background */
|
|
48
|
+
surface: string;
|
|
49
|
+
surfaceMuted: string;
|
|
50
|
+
surfaceRaised: string;
|
|
51
|
+
/** Text */
|
|
52
|
+
text: string;
|
|
53
|
+
textSecondary: string;
|
|
54
|
+
textDisabled: string;
|
|
55
|
+
/** Border */
|
|
56
|
+
border: string;
|
|
57
|
+
borderStrong: string;
|
|
58
|
+
/** Status (semantic) */
|
|
59
|
+
success: string;
|
|
60
|
+
warning: string;
|
|
61
|
+
error: string;
|
|
62
|
+
info: string;
|
|
63
|
+
/** Chart palette (6 colors) */
|
|
64
|
+
chart1: string;
|
|
65
|
+
chart2: string;
|
|
66
|
+
chart3: string;
|
|
67
|
+
chart4: string;
|
|
68
|
+
chart5: string;
|
|
69
|
+
chart6: string;
|
|
70
|
+
}
|
|
71
|
+
interface ThemeTypography {
|
|
72
|
+
fontFamily: string;
|
|
73
|
+
fontFamilyMono: string;
|
|
74
|
+
fontSizeBase: string;
|
|
75
|
+
fontSizeSm: string;
|
|
76
|
+
fontSizeLg: string;
|
|
77
|
+
fontWeightNormal: string;
|
|
78
|
+
fontWeightMedium: string;
|
|
79
|
+
fontWeightSemibold: string;
|
|
80
|
+
fontWeightBold: string;
|
|
81
|
+
lineHeightNormal: string;
|
|
82
|
+
lineHeightTight: string;
|
|
83
|
+
}
|
|
84
|
+
interface ThemeRadius {
|
|
85
|
+
none: string;
|
|
86
|
+
sm: string;
|
|
87
|
+
md: string;
|
|
88
|
+
lg: string;
|
|
89
|
+
xl: string;
|
|
90
|
+
full: string;
|
|
91
|
+
}
|
|
92
|
+
interface ThemeShadows {
|
|
93
|
+
xs: string;
|
|
94
|
+
sm: string;
|
|
95
|
+
md: string;
|
|
96
|
+
lg: string;
|
|
97
|
+
xl: string;
|
|
98
|
+
}
|
|
99
|
+
interface ThemeSpacing {
|
|
100
|
+
xs: string;
|
|
101
|
+
sm: string;
|
|
102
|
+
md: string;
|
|
103
|
+
lg: string;
|
|
104
|
+
xl: string;
|
|
105
|
+
}
|
|
106
|
+
interface ThemeMotion {
|
|
107
|
+
durationFast: string;
|
|
108
|
+
durationBase: string;
|
|
109
|
+
durationSlow: string;
|
|
110
|
+
easing: string;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Complete theme configuration.
|
|
114
|
+
* All sections are optional — missing values fall back to the default theme.
|
|
115
|
+
*/
|
|
116
|
+
interface ThemeConfig {
|
|
117
|
+
colors?: Partial<ThemeSemanticColors>;
|
|
118
|
+
typography?: Partial<ThemeTypography>;
|
|
119
|
+
radius?: Partial<ThemeRadius>;
|
|
120
|
+
shadows?: Partial<ThemeShadows>;
|
|
121
|
+
spacing?: Partial<ThemeSpacing>;
|
|
122
|
+
motion?: Partial<ThemeMotion>;
|
|
123
|
+
}
|
|
124
|
+
/** Name of a built-in preset theme */
|
|
125
|
+
type ThemePresetName = 'default' | 'vibrant' | 'professional' | 'minimal' | 'natural' | 'modern' | 'high-contrast';
|
|
126
|
+
/**
|
|
127
|
+
* A fully defined preset theme.
|
|
128
|
+
* Both `light` and `dark` are required; they will be merged with defaults at runtime.
|
|
129
|
+
*/
|
|
130
|
+
interface ThemePreset {
|
|
131
|
+
name: ThemePresetName | string;
|
|
132
|
+
label: string;
|
|
133
|
+
light: ThemeConfig;
|
|
134
|
+
dark: ThemeConfig;
|
|
135
|
+
}
|
|
136
|
+
/** Controls which colour scheme the ThemeManager applies */
|
|
137
|
+
type ColorScheme = 'light' | 'dark' | 'auto';
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Default theme colors for Tigercat
|
|
141
|
+
*/
|
|
142
|
+
declare const tigercatTheme: {
|
|
143
|
+
'--tiger-primary': string;
|
|
144
|
+
'--tiger-primary-hover': string;
|
|
145
|
+
'--tiger-primary-active': string;
|
|
146
|
+
'--tiger-primary-disabled': string;
|
|
147
|
+
'--tiger-secondary': string;
|
|
148
|
+
'--tiger-secondary-hover': string;
|
|
149
|
+
'--tiger-secondary-active': string;
|
|
150
|
+
'--tiger-secondary-disabled': string;
|
|
151
|
+
'--tiger-outline-bg-hover': string;
|
|
152
|
+
'--tiger-ghost-bg-hover': string;
|
|
153
|
+
'--tiger-focus-ring': string;
|
|
154
|
+
'--tiger-surface': string;
|
|
155
|
+
'--tiger-surface-muted': string;
|
|
156
|
+
'--tiger-surface-raised': string;
|
|
157
|
+
'--tiger-text': string;
|
|
158
|
+
'--tiger-text-secondary': string;
|
|
159
|
+
'--tiger-text-disabled': string;
|
|
160
|
+
'--tiger-border': string;
|
|
161
|
+
'--tiger-border-strong': string;
|
|
162
|
+
'--tiger-success': string;
|
|
163
|
+
'--tiger-warning': string;
|
|
164
|
+
'--tiger-error': string;
|
|
165
|
+
'--tiger-info': string;
|
|
166
|
+
'--tiger-chart-1': string;
|
|
167
|
+
'--tiger-chart-2': string;
|
|
168
|
+
'--tiger-chart-3': string;
|
|
169
|
+
'--tiger-chart-4': string;
|
|
170
|
+
'--tiger-chart-5': string;
|
|
171
|
+
'--tiger-chart-6': string;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Dark mode theme overrides
|
|
175
|
+
*/
|
|
176
|
+
declare const tigercatDarkTheme: Record<string, string>;
|
|
177
|
+
/**
|
|
178
|
+
* Tailwind CSS plugin for Tigercat
|
|
179
|
+
* Injects the default CSS variables into the root scope
|
|
180
|
+
*/
|
|
181
|
+
declare const tigercatPlugin: PluginWithConfig;
|
|
182
|
+
interface TigercatPluginOptions {
|
|
183
|
+
/** A ThemePreset object to use instead of the built-in default */
|
|
184
|
+
preset?: ThemePreset;
|
|
185
|
+
/**
|
|
186
|
+
* Enable the opt-in "modern" token layer.
|
|
187
|
+
*
|
|
188
|
+
* When `true`, the plugin emits `[data-tiger-style="modern"]` (and the
|
|
189
|
+
* dark counterpart) blocks that override radius / shadow / glass /
|
|
190
|
+
* gradient / motion tokens with the modern values, plus a
|
|
191
|
+
* `prefers-reduced-motion` rule that collapses motion durations.
|
|
192
|
+
*
|
|
193
|
+
* Activate it on a page by setting `data-tiger-style="modern"` on `<html>`
|
|
194
|
+
* or any ancestor element of your Tigercat tree.
|
|
195
|
+
*
|
|
196
|
+
* @default false
|
|
197
|
+
*/
|
|
198
|
+
modern?: boolean;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Configurable Tailwind CSS plugin for Tigercat.
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```ts
|
|
205
|
+
* import { createTigercatPlugin, vibrantTheme, modernTheme } from '@expcat/tigercat-core'
|
|
206
|
+
*
|
|
207
|
+
* export default {
|
|
208
|
+
* plugins: [
|
|
209
|
+
* createTigercatPlugin({ preset: vibrantTheme }),
|
|
210
|
+
* // or enable the modern visual style:
|
|
211
|
+
* createTigercatPlugin({ preset: modernTheme, modern: true })
|
|
212
|
+
* ]
|
|
213
|
+
* }
|
|
214
|
+
* ```
|
|
215
|
+
*/
|
|
216
|
+
declare function createTigercatPlugin(options?: TigercatPluginOptions): PluginWithConfig;
|
|
217
|
+
|
|
218
|
+
export { type ColorScheme as C, type ThemePreset as T, type ThemeColorScale as a, type ThemeSemanticColors as b, type ThemeTypography as c, type ThemeRadius as d, type ThemeShadows as e, type ThemeSpacing as f, type ThemeMotion as g, type ThemeConfig as h, type ThemePresetName as i, tigercatDarkTheme as j, tigercatPlugin as k, type TigercatPluginOptions as l, createTigercatPlugin as m, tigercatTheme as t };
|