@firecms/ui 3.3.0-canary.d3242eb → 3.4.0-canary.63041d0

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 (51) hide show
  1. package/dist/components/Card.d.ts +2 -3
  2. package/dist/components/Checkbox.d.ts +2 -1
  3. package/dist/components/Chip.d.ts +5 -1
  4. package/dist/components/Dialog.d.ts +2 -1
  5. package/dist/components/FilterChip.d.ts +34 -0
  6. package/dist/components/IconButton.d.ts +1 -0
  7. package/dist/components/Popover.d.ts +3 -1
  8. package/dist/components/SearchBar.d.ts +8 -1
  9. package/dist/components/Select.d.ts +1 -1
  10. package/dist/components/TextField.d.ts +2 -2
  11. package/dist/components/index.d.ts +1 -0
  12. package/dist/hooks/index.d.ts +1 -0
  13. package/dist/hooks/useDebounceCallback.d.ts +13 -0
  14. package/dist/index.css +43 -32
  15. package/dist/index.es.js +1027 -561
  16. package/dist/index.es.js.map +1 -1
  17. package/dist/index.umd.js +1026 -560
  18. package/dist/index.umd.js.map +1 -1
  19. package/dist/styles.d.ts +2 -2
  20. package/package.json +6 -6
  21. package/src/components/Alert.tsx +7 -7
  22. package/src/components/Avatar.tsx +1 -1
  23. package/src/components/BooleanSwitch.tsx +6 -3
  24. package/src/components/Button.tsx +17 -13
  25. package/src/components/Card.tsx +22 -5
  26. package/src/components/CenteredView.tsx +1 -1
  27. package/src/components/Checkbox.tsx +10 -4
  28. package/src/components/Chip.tsx +70 -11
  29. package/src/components/Collapse.tsx +2 -0
  30. package/src/components/Dialog.tsx +8 -5
  31. package/src/components/ExpandablePanel.tsx +3 -2
  32. package/src/components/FilterChip.tsx +79 -0
  33. package/src/components/IconButton.tsx +11 -6
  34. package/src/components/InfoLabel.tsx +1 -1
  35. package/src/components/InputLabel.tsx +2 -2
  36. package/src/components/Label.tsx +1 -1
  37. package/src/components/LoadingButton.tsx +1 -1
  38. package/src/components/Menu.tsx +2 -0
  39. package/src/components/Popover.tsx +9 -3
  40. package/src/components/RadioGroup.tsx +1 -1
  41. package/src/components/SearchBar.tsx +9 -1
  42. package/src/components/Select.tsx +8 -6
  43. package/src/components/Separator.tsx +2 -2
  44. package/src/components/Skeleton.tsx +25 -8
  45. package/src/components/TextField.tsx +27 -13
  46. package/src/components/ToggleButtonGroup.tsx +4 -2
  47. package/src/components/index.tsx +1 -0
  48. package/src/hooks/index.ts +1 -0
  49. package/src/hooks/useDebounceCallback.tsx +47 -0
  50. package/src/index.css +43 -32
  51. package/src/styles.ts +2 -2
package/src/index.css CHANGED
@@ -19,26 +19,26 @@
19
19
  --color-field-disabled: rgb(224 224 226);
20
20
  --color-field-disabled-dark: rgb(35 35 37);
21
21
 
22
- /* Text Colors */
23
- --color-text-primary: rgba(0, 0, 0, 0.87);
24
- --color-text-secondary: rgba(0, 0, 0, 0.52);
25
- --color-text-disabled: rgba(0, 0, 0, 0.38);
22
+ /* Text Colors — using opaque values so icon strokes render solidly */
23
+ --color-text-primary: #212121;
24
+ --color-text-secondary: #757575;
25
+ --color-text-disabled: #9e9e9e;
26
26
  --color-text-primary-dark: #ffffff;
27
- --color-text-secondary-dark: rgba(255, 255, 255, 0.6);
28
- --color-text-disabled-dark: rgba(255, 255, 255, 0.48);
27
+ --color-text-secondary-dark: #a0a0a9;
28
+ --color-text-disabled-dark: #757580;
29
29
 
30
30
  /* Surface Colors */
31
- --color-surface-50: #f8f8fc;
32
- --color-surface-100: #e7e7eb;
33
- --color-surface-200: #cfcfd6;
34
- --color-surface-300: #b7b7bf;
35
- --color-surface-400: #a0a0a9;
36
- --color-surface-500: #87878f;
37
- --color-surface-600: #6b6b74;
38
- --color-surface-700: #454552;
39
- --color-surface-800: #292934;
40
- --color-surface-900: #18181c;
41
- --color-surface-950: #101013;
31
+ --color-surface-50: #fafafa;
32
+ --color-surface-100: #f5f5f5;
33
+ --color-surface-200: #e5e5e5;
34
+ --color-surface-300: #d4d4d4;
35
+ --color-surface-400: #a3a3a3;
36
+ --color-surface-500: #737373;
37
+ --color-surface-600: #404040;
38
+ --color-surface-700: #2e2e33;
39
+ --color-surface-800: #1f1f23;
40
+ --color-surface-900: #131316;
41
+ --color-surface-950: #0d0d0f;
42
42
 
43
43
  /* Surface Accent Colors */
44
44
  --color-surface-accent-50: #f8fafc;
@@ -50,8 +50,18 @@
50
50
  --color-surface-accent-600: #475569;
51
51
  --color-surface-accent-700: #334155;
52
52
  --color-surface-accent-800: #1e293b;
53
- --color-surface-accent-900: #0f172a;
54
- --color-surface-accent-950: #020617;
53
+ --color-surface-accent-900: #172033;
54
+ --color-surface-accent-950: #0f172a;
55
+ }
56
+
57
+ /* Native UI (scrollbars, form controls) must follow the active theme,
58
+ otherwise Chrome renders light scrollbars in dark mode */
59
+ html {
60
+ color-scheme: light;
61
+ }
62
+
63
+ html.dark {
64
+ color-scheme: dark;
55
65
  }
56
66
 
57
67
  /* Chrome, Safari and Opera */
@@ -65,50 +75,51 @@
65
75
  }
66
76
 
67
77
  .typography-h1 {
68
- @apply text-6xl font-headers font-light tracking-tight;
78
+ @apply text-4xl font-headers font-semibold tracking-tight;
69
79
  }
70
80
 
71
81
  .typography-h2 {
72
- @apply text-5xl font-headers font-light tracking-tight;
82
+ @apply text-3xl font-headers font-semibold tracking-tight;
73
83
  }
74
84
 
75
85
  .typography-h3 {
76
- @apply text-4xl font-headers font-normal tracking-tight;
86
+ @apply text-2xl font-headers font-semibold tracking-tight;
77
87
  }
78
88
 
79
89
  .typography-h4 {
80
- @apply text-3xl font-headers font-normal tracking-tight;
90
+ @apply text-xl font-headers font-semibold tracking-[-0.01em];
81
91
  }
82
92
 
83
93
  .typography-h5 {
84
- @apply text-2xl font-headers font-normal;
94
+ @apply text-lg font-headers font-semibold tracking-[-0.01em];
85
95
  }
86
96
 
87
97
  .typography-h6 {
88
- @apply text-xl font-headers font-medium;
98
+ @apply text-base font-headers font-semibold tracking-[-0.01em];
89
99
  }
90
100
 
91
101
  .typography-subtitle1 {
92
- @apply text-lg font-headers font-medium;
102
+ @apply text-sm font-headers font-semibold tracking-[-0.01em];
93
103
  }
94
104
 
95
105
  .typography-subtitle2 {
96
- @apply text-base font-headers font-medium;
106
+ @apply text-sm font-headers font-medium;
97
107
  }
98
108
 
99
109
  .typography-body1 {
110
+ @apply text-sm;
100
111
  }
101
112
 
102
113
  .typography-body2 {
103
- @apply text-sm;
114
+ @apply text-xs;
104
115
  }
105
116
 
106
117
  .typography-caption {
107
- @apply text-xs;
118
+ @apply text-[11px] leading-[1.4];
108
119
  }
109
120
 
110
121
  .typography-label {
111
- @apply text-sm font-medium;
122
+ @apply text-xs font-medium tracking-wide;
112
123
  }
113
124
 
114
125
  .typography-inherit {
@@ -116,10 +127,10 @@
116
127
  }
117
128
 
118
129
  .typography-button {
119
- @apply text-sm font-semibold uppercase;
130
+ @apply text-sm font-semibold tracking-wide;
120
131
  }
121
132
 
122
133
  :focus-visible {
123
- @apply outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 focus-visible:ring-offset-transparent
134
+ @apply outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-0 focus-visible:ring-offset-transparent
124
135
  }
125
136
 
package/src/styles.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  export const focusedDisabled = "focus-visible:ring-0 focus-visible:ring-offset-0";
2
2
  export const focusedInvisibleMixin = "focus:bg-opacity-70 focus:bg-surface-accent-100 focus:dark:bg-surface-800 focus:dark:bg-opacity-60 focus:bg-surface-accent-100/70 dark:focus:bg-surface-800/60";
3
3
  export const focusedClasses = "z-30 outline-hidden outline-none ring-2 ring-primary ring-opacity-75 ring-primary/75 ring-offset-2 ring-offset-transparent ";
4
- export const fieldBackgroundMixin = "bg-opacity-50 bg-surface-accent-200 bg-surface-accent-200/50 dark:bg-surface-800 dark:bg-opacity-60 dark:bg-surface-800/60";
4
+ export const fieldBackgroundMixin = "bg-opacity-50 bg-surface-accent-200 bg-surface-accent-200/50 dark:bg-surface-800 dark:bg-opacity-90 dark:bg-surface-800/90";
5
5
  export const fieldBackgroundInvisibleMixin = "bg-opacity-0 bg-surface-accent-100 dark:bg-surface-800 dark:bg-opacity-0 bg-surface-accent-200/0 dark:bg-surface-800/0";
6
6
  export const fieldBackgroundDisabledMixin = "dark:bg-surface-800 bg-opacity-50 dark:bg-opacity-90 bg-surface-accent-200/50 dark:bg-surface-800/90";
7
7
  export const fieldBackgroundHoverMixin = "hover:bg-opacity-70 dark:hover:bg-surface-700 dark:hover:bg-opacity-40 hover:bg-surface-accent-200/70 hover:dark:bg-surface-700/40";
8
8
  export const defaultBorderMixin = "border-surface-200 border-opacity-40 dark:border-surface-700 dark:border-opacity-40 border-surface-200/40 dark:border-surface-700/40 ";
9
9
  export const paperMixin = "bg-white rounded-md dark:bg-surface-950 border border-surface-200 border-opacity-40 dark:border-surface-700 dark:border-opacity-40 border-surface-200/40 dark:border-surface-700/40";
10
10
  export const cardMixin = "bg-white dark:bg-surface-950 rounded-md border border-surface-200/40 dark:border-surface-700/40 m-1 -p-1";
11
- export const cardClickableMixin = "hover:bg-surface-accent-100 dark:hover:bg-surface-accent-800 hover:ring-2 hover:ring-primary cursor-pointer hover:bg-primary/20 dark:hover:bg-primary/10 ";
11
+ export const cardClickableMixin = "hover:bg-surface-accent-100 dark:hover:bg-surface-accent-800 hover:ring-2 hover:ring-primary cursor-pointer hover:bg-primary/20 dark:hover:bg-primary/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary ";
12
12
  export const cardSelectedMixin = "bg-primary-bg dark:bg-primary-bg bg-opacity-30 bg-primary-bg/30 dark:bg-opacity-10 dark:bg-primary-bg/10 ring-1 ring-primary ring-opacity-75 ring-primary/75 bg-primary/10 dark:bg-primary/10 ring-1 ring-primary/75";