@fayz-ai/ui 0.9.0 → 0.10.1

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.
Files changed (156) hide show
  1. package/README.md +2 -2
  2. package/dist/analytics/AnalyticsCard.d.ts +10 -0
  3. package/dist/analytics/AnalyticsCard.d.ts.map +1 -0
  4. package/dist/analytics/AnalyticsControls.d.ts +18 -0
  5. package/dist/analytics/AnalyticsControls.d.ts.map +1 -0
  6. package/dist/analytics/AnalyticsGrid.d.ts +16 -0
  7. package/dist/analytics/AnalyticsGrid.d.ts.map +1 -0
  8. package/dist/analytics/context.d.ts +58 -0
  9. package/dist/analytics/context.d.ts.map +1 -0
  10. package/dist/analytics/derive.d.ts +81 -0
  11. package/dist/analytics/derive.d.ts.map +1 -0
  12. package/dist/analytics/index.d.ts +13 -0
  13. package/dist/analytics/index.d.ts.map +1 -0
  14. package/dist/analytics/range.d.ts +22 -0
  15. package/dist/analytics/range.d.ts.map +1 -0
  16. package/dist/{chunk-PVIB724L.js → chunk-22EVFMS3.js} +5 -3
  17. package/dist/chunk-22EVFMS3.js.map +1 -0
  18. package/dist/{chunk-G6OKZ7WL.js → chunk-6V5MGYXH.js} +13 -9
  19. package/dist/chunk-6V5MGYXH.js.map +1 -0
  20. package/dist/{chunk-KV3MHB6N.js → chunk-H63TOSQ7.js} +196 -53
  21. package/dist/chunk-H63TOSQ7.js.map +1 -0
  22. package/dist/{chunk-OUPJDGKE.js → chunk-I6CPKAOD.js} +134 -37
  23. package/dist/chunk-I6CPKAOD.js.map +1 -0
  24. package/dist/{chunk-YRVE4FOD.js → chunk-OKZ6WQB3.js} +3 -3
  25. package/dist/chunk-OKZ6WQB3.js.map +1 -0
  26. package/dist/{chunk-S5KNM4D2.js → chunk-SEIY2F5F.js} +235 -107
  27. package/dist/chunk-SEIY2F5F.js.map +1 -0
  28. package/dist/{chunk-75EFDLST.js → chunk-VAKWUUVC.js} +157 -6
  29. package/dist/chunk-VAKWUUVC.js.map +1 -0
  30. package/dist/dashboard/OnboardingWidget.d.ts +2 -14
  31. package/dist/dashboard/OnboardingWidget.d.ts.map +1 -1
  32. package/dist/dashboard/SidebarOnboarding.d.ts +28 -0
  33. package/dist/dashboard/SidebarOnboarding.d.ts.map +1 -0
  34. package/dist/dashboard/index.d.ts +2 -0
  35. package/dist/dashboard/index.d.ts.map +1 -1
  36. package/dist/dashboard/index.js +4 -4
  37. package/dist/dashboard/types.d.ts +18 -0
  38. package/dist/dashboard/types.d.ts.map +1 -1
  39. package/dist/dashboard/useOnboardingProgress.d.ts +28 -0
  40. package/dist/dashboard/useOnboardingProgress.d.ts.map +1 -0
  41. package/dist/icons.js +1 -1
  42. package/dist/index.d.ts +5 -4
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +960 -14
  45. package/dist/index.js.map +1 -1
  46. package/dist/layout/AppShell.d.ts +14 -1
  47. package/dist/layout/AppShell.d.ts.map +1 -1
  48. package/dist/layout/ModulePage.d.ts +11 -2
  49. package/dist/layout/ModulePage.d.ts.map +1 -1
  50. package/dist/layout/Sidebar.d.ts +8 -1
  51. package/dist/layout/Sidebar.d.ts.map +1 -1
  52. package/dist/layout/index.js +4 -4
  53. package/dist/lib/cn.d.ts.map +1 -0
  54. package/dist/preset.d.ts +3 -0
  55. package/dist/preset.d.ts.map +1 -0
  56. package/dist/primitives/data-table.d.ts +19 -4
  57. package/dist/primitives/data-table.d.ts.map +1 -1
  58. package/dist/primitives/date-picker.d.ts +4 -2
  59. package/dist/primitives/date-picker.d.ts.map +1 -1
  60. package/dist/primitives/filter-chip.d.ts +26 -0
  61. package/dist/primitives/filter-chip.d.ts.map +1 -0
  62. package/dist/primitives/header-tabs.d.ts +32 -0
  63. package/dist/primitives/header-tabs.d.ts.map +1 -0
  64. package/dist/primitives/hint.d.ts +25 -0
  65. package/dist/primitives/hint.d.ts.map +1 -0
  66. package/dist/primitives/index.d.ts +7 -0
  67. package/dist/primitives/index.d.ts.map +1 -1
  68. package/dist/primitives/index.js +4 -4
  69. package/dist/primitives/list-view.d.ts +14 -1
  70. package/dist/primitives/list-view.d.ts.map +1 -1
  71. package/dist/primitives/page-header.d.ts +23 -0
  72. package/dist/primitives/page-header.d.ts.map +1 -0
  73. package/dist/primitives/stat-tiles.d.ts +30 -0
  74. package/dist/primitives/stat-tiles.d.ts.map +1 -0
  75. package/dist/primitives/switch.d.ts +11 -0
  76. package/dist/primitives/switch.d.ts.map +1 -0
  77. package/dist/stores/index.d.ts +1 -0
  78. package/dist/stores/index.d.ts.map +1 -1
  79. package/dist/stores/page-header.store.d.ts +69 -0
  80. package/dist/stores/page-header.store.d.ts.map +1 -0
  81. package/package.json +6 -15
  82. package/dist/chunk-75EFDLST.js.map +0 -1
  83. package/dist/chunk-G6OKZ7WL.js.map +0 -1
  84. package/dist/chunk-KV3MHB6N.js.map +0 -1
  85. package/dist/chunk-OUPJDGKE.js.map +0 -1
  86. package/dist/chunk-PVIB724L.js.map +0 -1
  87. package/dist/chunk-S5KNM4D2.js.map +0 -1
  88. package/dist/chunk-YRVE4FOD.js.map +0 -1
  89. package/dist/utils/cn.d.ts.map +0 -1
  90. package/src/dashboard/ChartWidget.tsx +0 -50
  91. package/src/dashboard/ChartWidgetInner.tsx +0 -83
  92. package/src/dashboard/DashboardCanvas.tsx +0 -210
  93. package/src/dashboard/DashboardCustomizeMenu.tsx +0 -53
  94. package/src/dashboard/DashboardGrid.tsx +0 -35
  95. package/src/dashboard/DashboardRange.tsx +0 -62
  96. package/src/dashboard/GoldCard.tsx +0 -38
  97. package/src/dashboard/KpiCard.tsx +0 -238
  98. package/src/dashboard/OnboardingWidget.tsx +0 -140
  99. package/src/dashboard/TableWidget.tsx +0 -51
  100. package/src/dashboard/define.ts +0 -53
  101. package/src/dashboard/icon.ts +0 -13
  102. package/src/dashboard/index.ts +0 -38
  103. package/src/dashboard/layout.ts +0 -50
  104. package/src/dashboard/preferences.ts +0 -71
  105. package/src/dashboard/types.ts +0 -41
  106. package/src/icons.ts +0 -66
  107. package/src/index.ts +0 -238
  108. package/src/layout/AppShell.tsx +0 -987
  109. package/src/layout/ContentSplit.tsx +0 -153
  110. package/src/layout/ModulePage.tsx +0 -466
  111. package/src/layout/PageTransition.tsx +0 -57
  112. package/src/layout/SaveBar.tsx +0 -247
  113. package/src/layout/Sidebar.tsx +0 -535
  114. package/src/layout/Topbar.tsx +0 -462
  115. package/src/layout/index.ts +0 -39
  116. package/src/layout/useCrossModuleBack.ts +0 -30
  117. package/src/primitives/Avatar.tsx +0 -48
  118. package/src/primitives/SearchCombobox.tsx +0 -216
  119. package/src/primitives/badge.tsx +0 -68
  120. package/src/primitives/breadcrumb.tsx +0 -43
  121. package/src/primitives/button.tsx +0 -60
  122. package/src/primitives/card.tsx +0 -79
  123. package/src/primitives/checkbox.tsx +0 -53
  124. package/src/primitives/confirm-dialog.tsx +0 -125
  125. package/src/primitives/currency-input.tsx +0 -121
  126. package/src/primitives/data-table.tsx +0 -160
  127. package/src/primitives/date-picker.tsx +0 -225
  128. package/src/primitives/dropdown.tsx +0 -196
  129. package/src/primitives/index.ts +0 -87
  130. package/src/primitives/input.tsx +0 -50
  131. package/src/primitives/list-view.tsx +0 -252
  132. package/src/primitives/markdown-editor.tsx +0 -75
  133. package/src/primitives/markdown.tsx +0 -169
  134. package/src/primitives/modal.tsx +0 -156
  135. package/src/primitives/phone-link.tsx +0 -138
  136. package/src/primitives/popover.tsx +0 -30
  137. package/src/primitives/search-select.tsx +0 -314
  138. package/src/primitives/segmented-control.tsx +0 -66
  139. package/src/primitives/select.tsx +0 -157
  140. package/src/primitives/separator.tsx +0 -29
  141. package/src/primitives/sheet.tsx +0 -181
  142. package/src/primitives/skeleton.tsx +0 -46
  143. package/src/primitives/tabs.tsx +0 -53
  144. package/src/primitives/time-picker.tsx +0 -148
  145. package/src/primitives/toast.tsx +0 -46
  146. package/src/primitives/tooltip.tsx +0 -28
  147. package/src/stores/index.ts +0 -10
  148. package/src/stores/layout.store.ts +0 -31
  149. package/src/stores/theme.store.ts +0 -457
  150. package/src/tailwind.ts +0 -43
  151. package/src/theme/index.ts +0 -94
  152. package/src/theme/preset.ts +0 -209
  153. package/src/theme/presets.ts +0 -106
  154. package/src/utils/cn.ts +0 -6
  155. /package/dist/{utils → lib}/cn.d.ts +0 -0
  156. /package/{src → dist}/styles.css +0 -0
@@ -1,209 +0,0 @@
1
- import type { Config } from 'tailwindcss'
2
-
3
- /**
4
- * Tailwind CSS preset for @fayz-ai/ui.
5
- * Include this in your tailwind.config.ts:
6
- *
7
- * import { fayzUiPreset } from '@fayz-ai/ui/theme'
8
- * export default { presets: [fayzUiPreset], ... }
9
- */
10
- const fayzUiPreset: Partial<Config> = {
11
- darkMode: 'class',
12
- theme: {
13
- extend: {
14
- colors: {
15
- border: 'hsl(var(--border))',
16
- input: 'hsl(var(--input))',
17
- ring: 'hsl(var(--ring))',
18
- background: 'hsl(var(--background))',
19
- foreground: 'hsl(var(--foreground))',
20
- primary: {
21
- DEFAULT: 'hsl(var(--primary))',
22
- foreground: 'hsl(var(--primary-foreground))',
23
- },
24
- secondary: {
25
- DEFAULT: 'hsl(var(--secondary))',
26
- foreground: 'hsl(var(--secondary-foreground))',
27
- },
28
- destructive: {
29
- DEFAULT: 'hsl(var(--destructive))',
30
- foreground: 'hsl(var(--destructive-foreground))',
31
- },
32
- success: {
33
- DEFAULT: 'hsl(var(--success))',
34
- foreground: 'hsl(var(--success-foreground))',
35
- },
36
- warning: {
37
- DEFAULT: 'hsl(var(--warning))',
38
- foreground: 'hsl(var(--warning-foreground))',
39
- },
40
- info: {
41
- DEFAULT: 'hsl(var(--info))',
42
- foreground: 'hsl(var(--info-foreground))',
43
- },
44
- magic: {
45
- DEFAULT: 'hsl(var(--magic))',
46
- foreground: 'hsl(var(--magic-foreground))',
47
- },
48
- 'info-soft': {
49
- DEFAULT: 'hsl(var(--info-soft))',
50
- foreground: 'hsl(var(--info-soft-foreground))',
51
- },
52
- 'success-soft': {
53
- DEFAULT: 'hsl(var(--success-soft))',
54
- foreground: 'hsl(var(--success-soft-foreground))',
55
- },
56
- 'warning-soft': {
57
- DEFAULT: 'hsl(var(--warning-soft))',
58
- foreground: 'hsl(var(--warning-soft-foreground))',
59
- },
60
- 'destructive-soft': {
61
- DEFAULT: 'hsl(var(--destructive-soft))',
62
- foreground: 'hsl(var(--destructive-soft-foreground))',
63
- },
64
- 'magic-soft': {
65
- DEFAULT: 'hsl(var(--magic-soft))',
66
- foreground: 'hsl(var(--magic-soft-foreground))',
67
- },
68
- muted: {
69
- DEFAULT: 'hsl(var(--muted))',
70
- foreground: 'hsl(var(--muted-foreground))',
71
- },
72
- accent: {
73
- DEFAULT: 'hsl(var(--accent))',
74
- foreground: 'hsl(var(--accent-foreground))',
75
- },
76
- card: {
77
- DEFAULT: 'hsl(var(--card))',
78
- foreground: 'hsl(var(--card-foreground))',
79
- },
80
- popover: {
81
- DEFAULT: 'hsl(var(--popover))',
82
- foreground: 'hsl(var(--popover-foreground))',
83
- },
84
- // Layout surface tokens
85
- sidebar: {
86
- DEFAULT: 'hsl(var(--sidebar))',
87
- foreground: 'hsl(var(--sidebar-foreground))',
88
- border: 'hsl(var(--sidebar-border))',
89
- accent: 'hsl(var(--sidebar-accent))',
90
- 'accent-foreground': 'hsl(var(--sidebar-accent-foreground))',
91
- muted: 'hsl(var(--sidebar-muted))',
92
- },
93
- content: 'hsl(var(--content))',
94
- },
95
- borderRadius: {
96
- button: 'var(--button-radius)',
97
- card: 'var(--card-radius)',
98
- input: 'var(--input-radius)',
99
- modal: 'var(--modal-radius)',
100
- },
101
- fontFamily: {
102
- sans: ['var(--font-family)'],
103
- mono: ['var(--font-family-mono)'],
104
- },
105
- boxShadow: {
106
- sm: 'var(--shadow-sm)',
107
- md: 'var(--shadow-md)',
108
- lg: 'var(--shadow-lg)',
109
- button: 'var(--shadow-button)',
110
- 'button-primary': 'var(--shadow-button-primary)',
111
- 'button-inset': 'var(--shadow-button-inset)',
112
- },
113
- keyframes: {
114
- 'fade-in': {
115
- from: { opacity: '0' },
116
- to: { opacity: '1' },
117
- },
118
- 'fade-out': {
119
- from: { opacity: '1' },
120
- to: { opacity: '0' },
121
- },
122
- 'zoom-in': {
123
- from: { transform: 'scale(0.95)', opacity: '0' },
124
- to: { transform: 'scale(1)', opacity: '1' },
125
- },
126
- 'zoom-out': {
127
- from: { transform: 'scale(1)', opacity: '1' },
128
- to: { transform: 'scale(0.95)', opacity: '0' },
129
- },
130
- 'slide-in-from-top': {
131
- from: { transform: 'translateY(-4px)', opacity: '0' },
132
- to: { transform: 'translateY(0)', opacity: '1' },
133
- },
134
- 'slide-in-from-bottom': {
135
- from: { transform: 'translateY(4px)', opacity: '0' },
136
- to: { transform: 'translateY(0)', opacity: '1' },
137
- },
138
- 'slide-out-to-top': {
139
- from: { transform: 'translateY(0)', opacity: '1' },
140
- to: { transform: 'translateY(-4px)', opacity: '0' },
141
- },
142
- 'page-in': {
143
- from: { opacity: '0', transform: 'translateY(6px)' },
144
- to: { opacity: '1', transform: 'translateY(0)' },
145
- },
146
- 'slide-in-from-right': {
147
- from: { transform: 'translateX(100%)' },
148
- to: { transform: 'translateX(0)' },
149
- },
150
- 'slide-out-to-right': {
151
- from: { transform: 'translateX(0)' },
152
- to: { transform: 'translateX(100%)' },
153
- },
154
- 'fade-up': {
155
- from: { opacity: '0', transform: 'translateY(18px)' },
156
- to: { opacity: '1', transform: 'translateY(0)' },
157
- },
158
- kenburns: {
159
- from: { transform: 'scale(1)' },
160
- to: { transform: 'scale(1.07)' },
161
- },
162
- 'badge-pop': {
163
- '0%': { transform: 'scale(0.6)' },
164
- '60%': { transform: 'scale(1.25)' },
165
- '100%': { transform: 'scale(1)' },
166
- },
167
- 'draw-check': {
168
- from: { 'stroke-dashoffset': '48' },
169
- to: { 'stroke-dashoffset': '0' },
170
- },
171
- 'pop-in': {
172
- '0%': { transform: 'scale(0)', opacity: '0' },
173
- '70%': { transform: 'scale(1.15)', opacity: '1' },
174
- '100%': { transform: 'scale(1)', opacity: '1' },
175
- },
176
- 'confetti-fall': {
177
- '0%': { transform: 'translateY(-10px) rotate(0deg)', opacity: '1' },
178
- '100%': { transform: 'translateY(140px) rotate(540deg)', opacity: '0' },
179
- },
180
- 'pulse-soft': {
181
- '0%, 100%': { opacity: '1' },
182
- '50%': { opacity: '0.55' },
183
- },
184
- },
185
- animation: {
186
- 'fade-in': 'fade-in 200ms ease-out',
187
- 'fade-out': 'fade-out 150ms ease-in',
188
- 'zoom-in': 'zoom-in 200ms ease-out',
189
- 'zoom-out': 'zoom-out 150ms ease-in',
190
- 'slide-in-from-top': 'slide-in-from-top 200ms ease-out',
191
- 'slide-in-from-bottom': 'slide-in-from-bottom 200ms ease-out',
192
- 'slide-out-to-top': 'slide-out-to-top 150ms ease-in',
193
- 'slide-in-from-right': 'slide-in-from-right 250ms cubic-bezier(0.16, 1, 0.3, 1)',
194
- 'slide-out-to-right': 'slide-out-to-right 200ms ease-in',
195
- 'page-in': 'page-in 250ms ease-out',
196
- 'fade-up': 'fade-up 600ms cubic-bezier(0.16, 1, 0.3, 1) both',
197
- kenburns: 'kenburns 9s ease-out both',
198
- 'badge-pop': 'badge-pop 350ms cubic-bezier(0.34, 1.56, 0.64, 1)',
199
- 'draw-check': 'draw-check 600ms ease-out 250ms both',
200
- 'pop-in': 'pop-in 450ms cubic-bezier(0.34, 1.56, 0.64, 1) both',
201
- 'confetti-fall': 'confetti-fall 1100ms ease-in both',
202
- 'pulse-soft': 'pulse-soft 1.6s ease-in-out infinite',
203
- },
204
- },
205
- },
206
- }
207
-
208
- export default fayzUiPreset
209
- export { fayzUiPreset }
@@ -1,106 +0,0 @@
1
- import { darkTheme, lightTheme, type CreateThemeOptions } from '../stores/theme.store'
2
-
3
- export type FayzThemePresetId = 'classic_admin' | 'liquid_glass'
4
-
5
- function mergeThemeOptions(base: CreateThemeOptions, overrides: CreateThemeOptions = {}): CreateThemeOptions {
6
- return {
7
- ...base,
8
- ...overrides,
9
- colors: {
10
- ...(base.colors ?? {}),
11
- ...(overrides.colors ?? {}),
12
- },
13
- darkColors: {
14
- ...(base.darkColors ?? {}),
15
- ...(overrides.darkColors ?? {}),
16
- },
17
- perception: {
18
- ...(base.perception ?? {}),
19
- ...(overrides.perception ?? {}),
20
- },
21
- }
22
- }
23
-
24
- export const fayzThemePresets: Record<FayzThemePresetId, CreateThemeOptions> = {
25
- classic_admin: {
26
- name: 'classic_admin',
27
- colors: lightTheme.colors,
28
- darkColors: darkTheme.colors,
29
- perception: lightTheme.perception,
30
- },
31
- liquid_glass: {
32
- name: 'liquid_glass',
33
- colors: {
34
- background: '260 38% 96%',
35
- content: '260 36% 96.5%',
36
- card: '0 0% 100% / 0.84',
37
- popover: '0 0% 100% / 0.96',
38
- secondary: '260 34% 93% / 0.82',
39
- muted: '260 30% 91% / 0.78',
40
- border: '260 26% 76% / 0.58',
41
- input: '260 24% 68% / 0.62',
42
- },
43
- darkColors: {
44
- background: '260 28% 9%',
45
- content: '260 28% 10%',
46
- card: '260 24% 16% / 0.72',
47
- popover: '260 24% 14% / 0.9',
48
- secondary: '260 20% 22% / 0.72',
49
- muted: '260 18% 20% / 0.68',
50
- border: '260 20% 35% / 0.58',
51
- input: '260 20% 38% / 0.68',
52
- },
53
- perception: {
54
- buttonRadius: '9999px',
55
- cardRadius: '1.25rem',
56
- inputRadius: '1rem',
57
- modalRadius: '1.5rem',
58
- surfaceBackdropFilter: 'blur(16px) saturate(1.24) brightness(1.03)',
59
- modalBackground:
60
- 'linear-gradient(145deg, rgb(255 255 255 / 0.82), rgb(249 247 255 / 0.72) 48%, rgb(255 255 255 / 0.64))',
61
- modalBorder: 'rgb(255 255 255 / 0.74)',
62
- modalOverlayBackground: 'rgb(26 20 38 / 0.22)',
63
- modalOverlayBackdropFilter: 'blur(5px) saturate(1.08)',
64
- modalShadow:
65
- '0 32px 82px -46px rgb(31 18 61 / 0.38), 0 1px 4px rgb(31 18 61 / 0.08), inset 0 1px 0 rgb(255 255 255 / 0.78), inset 0 0 0 1px rgb(255 255 255 / 0.28)',
66
- glassEdgeGradient:
67
- 'linear-gradient(145deg, rgb(255 255 255 / 0.96) 0%, rgb(255 255 255 / 0.44) 24%, rgb(171 151 211 / 0.34) 48%, rgb(45 35 76 / 0.22) 62%, rgb(255 255 255 / 0.7) 100%)',
68
- glassPrimaryEdgeGradient:
69
- 'linear-gradient(145deg, rgb(255 255 255 / 0.74) 0%, rgb(255 255 255 / 0.2) 28%, rgb(45 35 76 / 0.34) 58%, rgb(255 255 255 / 0.5) 100%)',
70
- glassInnerHighlight:
71
- 'inset 0 1px 0 rgb(255 255 255 / 0.72), inset 1px 0 0 rgb(255 255 255 / 0.28), inset 0 -1px 0 rgb(45 35 76 / 0.1)',
72
- fieldBackground:
73
- 'linear-gradient(135deg, rgb(255 255 255 / 0.9) 0%, rgb(250 248 255 / 0.82) 46%, rgb(242 238 252 / 0.74) 100%)',
74
- fieldBorder: 'rgb(174 158 205 / 0.58)',
75
- fieldShadow:
76
- 'inset 0 1px 0 rgb(255 255 255 / 0.8), inset 0 -1px 0 rgb(45 35 76 / 0.08), 0 12px 28px -24px rgb(31 18 61 / 0.28)',
77
- shadowSm: '0 10px 28px -20px rgb(31 18 61 / 0.34), inset 0 1px 0 rgb(255 255 255 / 0.54)',
78
- shadowMd: '0 22px 54px -32px rgb(31 18 61 / 0.42), inset 0 1px 0 rgb(255 255 255 / 0.58)',
79
- shadowLg: '0 34px 88px -42px rgb(31 18 61 / 0.48), inset 0 1px 0 rgb(255 255 255 / 0.62)',
80
- shadowButton:
81
- 'inset 0 1px 0 rgb(255 255 255 / 0.82), inset 0 -1px 0 rgb(31 18 61 / 0.08), 0 14px 30px -18px rgb(31 18 61 / 0.56)',
82
- shadowButtonPrimary:
83
- 'inset 0 1px 0 rgb(255 255 255 / 0.5), inset 0 -1px 0 rgb(31 18 61 / 0.26), 0 18px 36px -18px rgb(31 18 61 / 0.86)',
84
- shadowButtonInset:
85
- 'inset 0 2px 4px rgb(31 18 61 / 0.22), inset 0 0 0 1px rgb(255 255 255 / 0.24)',
86
- buttonBackground:
87
- 'linear-gradient(135deg, rgb(255 255 255 / 0.92) 0%, rgb(247 242 255 / 0.74) 48%, rgb(229 220 248 / 0.64) 100%)',
88
- buttonBackgroundHover:
89
- 'linear-gradient(135deg, rgb(255 255 255 / 0.98) 0%, rgb(249 244 255 / 0.86) 46%, rgb(231 222 250 / 0.78) 100%)',
90
- buttonBorder: 'rgb(194 178 221 / 0.86)',
91
- buttonPrimaryBackground:
92
- 'linear-gradient(135deg, rgb(255 255 255 / 0.28) 0%, hsl(var(--primary) / 0.94) 36%, hsl(278 42% 58% / 0.88) 100%)',
93
- buttonPrimaryBackgroundHover:
94
- 'linear-gradient(135deg, rgb(255 255 255 / 0.36) 0%, hsl(var(--primary) / 1) 34%, hsl(278 52% 62% / 0.94) 100%)',
95
- buttonPrimaryBorder: 'rgb(255 255 255 / 0.38)',
96
- buttonBackdropFilter: 'blur(18px) saturate(1.45)',
97
- },
98
- },
99
- }
100
-
101
- export function createFayzTheme(
102
- preset: FayzThemePresetId = 'classic_admin',
103
- overrides: CreateThemeOptions = {},
104
- ): CreateThemeOptions {
105
- return mergeThemeOptions(fayzThemePresets[preset] ?? fayzThemePresets.classic_admin, overrides)
106
- }
package/src/utils/cn.ts DELETED
@@ -1,6 +0,0 @@
1
- import { clsx, type ClassValue } from 'clsx'
2
- import { twMerge } from 'tailwind-merge'
3
-
4
- export function cn(...inputs: ClassValue[]) {
5
- return twMerge(clsx(inputs))
6
- }
File without changes
File without changes