@e-burgos/tucu-ui 2.7.3 → 2.8.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.
Files changed (56) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/base.css +225 -0
  3. package/components/inputs/select.mjs +1 -1
  4. package/components/loaders/loader.mjs +21 -21
  5. package/components/typography/index.mjs +30 -30
  6. package/index.css +1 -1
  7. package/index.js +1 -1
  8. package/macos/index.css +15 -0
  9. package/macos/sonoma/index.css +34 -0
  10. package/macos/sonoma/macos-auth.css +162 -0
  11. package/macos/sonoma/macos-backgrounds.css +314 -0
  12. package/macos/sonoma/macos-buttons.css +231 -0
  13. package/macos/sonoma/macos-cards.css +104 -0
  14. package/macos/sonoma/macos-content.css +157 -0
  15. package/macos/sonoma/macos-dialogs.css +122 -0
  16. package/macos/sonoma/macos-feedback.css +237 -0
  17. package/macos/sonoma/macos-fonts.css +7 -0
  18. package/macos/sonoma/macos-foundations.css +479 -0
  19. package/macos/sonoma/macos-inputs.css +1580 -0
  20. package/macos/sonoma/macos-layouts.css +223 -0
  21. package/macos/sonoma/macos-liquid-glass.css +279 -0
  22. package/macos/sonoma/macos-menus.css +184 -0
  23. package/macos/sonoma/macos-misc.css +635 -0
  24. package/macos/sonoma/macos-navigation.css +145 -0
  25. package/macos/sonoma/macos-selection.css +237 -0
  26. package/macos/sonoma/macos-sidebar.css +416 -0
  27. package/macos/sonoma/macos-tables.css +318 -0
  28. package/macos/sonoma/macos-toolbar.css +302 -0
  29. package/macos/sonoma/macos-typography.css +485 -0
  30. package/macos/sonoma/macos-window.css +273 -0
  31. package/macos/tahoe/index.css +34 -0
  32. package/macos/tahoe/macos-auth.css +162 -0
  33. package/macos/tahoe/macos-backgrounds.css +314 -0
  34. package/macos/tahoe/macos-buttons.css +286 -0
  35. package/macos/tahoe/macos-cards.css +125 -0
  36. package/macos/tahoe/macos-content.css +157 -0
  37. package/macos/tahoe/macos-dialogs.css +195 -0
  38. package/macos/tahoe/macos-feedback.css +273 -0
  39. package/macos/tahoe/macos-fonts.css +7 -0
  40. package/macos/tahoe/macos-foundations.css +516 -0
  41. package/macos/tahoe/macos-inputs.css +1656 -0
  42. package/macos/tahoe/macos-layouts.css +438 -0
  43. package/macos/tahoe/macos-liquid-glass.css +279 -0
  44. package/macos/tahoe/macos-menus.css +184 -0
  45. package/macos/tahoe/macos-misc.css +635 -0
  46. package/macos/tahoe/macos-navigation.css +191 -0
  47. package/macos/tahoe/macos-selection.css +237 -0
  48. package/macos/tahoe/macos-sidebar.css +420 -0
  49. package/macos/tahoe/macos-tables.css +320 -0
  50. package/macos/tahoe/macos-toolbar.css +304 -0
  51. package/macos/tahoe/macos-typography.css +485 -0
  52. package/macos/tahoe/macos-window.css +273 -0
  53. package/package.json +3 -2
  54. package/theme.css +812 -0
  55. package/third-party.css +39 -0
  56. package/utilities.css +105 -0
@@ -0,0 +1,273 @@
1
+ /* ============================================================
2
+ macOS Tahoe 26 — Window, TitleBar, TrafficLights
3
+
4
+ Scoped to html.macos-tahoe — no leakage to default theme.
5
+ References: Apple HIG > Windows > macOS Tahoe 26
6
+ Components: MacOSWindow, MacOSTitleBar, MacOSTrafficLights
7
+ ============================================================ */
8
+
9
+ /* ── MacOSWindow ─────────────────────────────────────────────── */
10
+
11
+ html.macos-tahoe [data-tucu='window'] {
12
+ border-radius: var(--macos-radius-window);
13
+ background-color: var(--macos-window-bg);
14
+ box-shadow: var(--macos-shadow-window);
15
+ overflow: hidden;
16
+ position: relative;
17
+ display: flex;
18
+ flex-direction: column;
19
+ border: 1px solid rgba(0, 0, 0, 0.1);
20
+ }
21
+
22
+ html.macos-tahoe.dark [data-tucu='window'] {
23
+ background-color: var(--macos-window-bg);
24
+ border-color: rgba(255, 255, 255, 0.08);
25
+ box-shadow: var(--macos-shadow-window);
26
+ }
27
+
28
+ /* Window states */
29
+ html.macos-tahoe [data-tucu='window'][data-window-state='key'] {
30
+ box-shadow: var(--macos-shadow-window);
31
+ }
32
+
33
+ html.macos-tahoe [data-tucu='window'][data-window-state='main'] {
34
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.06);
35
+ }
36
+
37
+ html.macos-tahoe [data-tucu='window'][data-window-state='inactive'] {
38
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
39
+ opacity: 0.95;
40
+ }
41
+
42
+ /* ── MacOSTitleBar ───────────────────────────────────────────── */
43
+
44
+ html.macos-tahoe [data-tucu='title-bar'] {
45
+ height: var(--macos-titlebar-height);
46
+ min-height: var(--macos-titlebar-height);
47
+ display: flex;
48
+ align-items: center;
49
+ padding: 0 var(--macos-space-2);
50
+ position: relative;
51
+ /* Drag region for window movement */
52
+ -webkit-app-region: drag;
53
+ user-select: none;
54
+ flex-shrink: 0;
55
+ background-color: transparent;
56
+ border-bottom: 1px solid var(--macos-separator);
57
+ }
58
+
59
+ html.macos-tahoe [data-tucu='title-bar'] > * {
60
+ /* Buttons inside are not draggable */
61
+ -webkit-app-region: no-drag;
62
+ }
63
+
64
+ html.macos-tahoe [data-tucu='title-bar-title'] {
65
+ position: absolute;
66
+ left: 50%;
67
+ transform: translateX(-50%);
68
+ font-family: var(--macos-font-family);
69
+ font-size: var(--macos-ts-body-size);
70
+ font-weight: var(--macos-font-weight-semibold);
71
+ line-height: var(--macos-ts-body-leading);
72
+ letter-spacing: var(--macos-ts-body-tracking);
73
+ color: var(--macos-label);
74
+ white-space: nowrap;
75
+ pointer-events: none;
76
+ }
77
+
78
+ html.macos-tahoe [data-tucu='title-bar-leading'] {
79
+ display: flex;
80
+ align-items: center;
81
+ gap: var(--macos-space-2);
82
+ flex-shrink: 0;
83
+ }
84
+
85
+ html.macos-tahoe [data-tucu='title-bar-trailing'] {
86
+ display: flex;
87
+ align-items: center;
88
+ gap: var(--macos-space-2);
89
+ flex-shrink: 0;
90
+ margin-left: auto;
91
+ }
92
+
93
+ /* ── MacOSTrafficLights ──────────────────────────────────────── */
94
+
95
+ html.macos-tahoe [data-tucu='traffic-lights'] {
96
+ display: flex;
97
+ align-items: center;
98
+ gap: 8px; /* Apple HIG: 8px gap */
99
+ flex-shrink: 0;
100
+ }
101
+
102
+ /* Individual traffic light button */
103
+ html.macos-tahoe [data-tucu='traffic-light'] {
104
+ width: 12px;
105
+ height: 12px;
106
+ border-radius: var(--macos-radius-pill);
107
+ display: flex;
108
+ align-items: center;
109
+ justify-content: center;
110
+ border: none;
111
+ outline: none;
112
+ cursor: default;
113
+ padding: 0;
114
+ transition: filter 0.1s ease;
115
+ position: relative;
116
+ flex-shrink: 0;
117
+ }
118
+
119
+ html.macos-tahoe [data-tucu='traffic-light']:focus-visible {
120
+ box-shadow: 0 0 0 2px var(--macos-focus-ring);
121
+ }
122
+
123
+ /* Close — red */
124
+ html.macos-tahoe [data-tucu='traffic-light'][data-type='close'] {
125
+ background-color: var(--macos-traffic-close, #ff5f57);
126
+ border: 0.5px solid rgba(0, 0, 0, 0.12);
127
+ }
128
+
129
+ /* Minimize — yellow */
130
+ html.macos-tahoe [data-tucu='traffic-light'][data-type='minimize'] {
131
+ background-color: var(--macos-traffic-minimize, #febc2e);
132
+ border: 0.5px solid rgba(0, 0, 0, 0.12);
133
+ }
134
+
135
+ /* Maximize — green */
136
+ html.macos-tahoe [data-tucu='traffic-light'][data-type='maximize'] {
137
+ background-color: var(--macos-traffic-maximize, #28c840);
138
+ border: 0.5px solid rgba(0, 0, 0, 0.12);
139
+ }
140
+
141
+ /* Hover: show glyph, brighten */
142
+ html.macos-tahoe [data-tucu='traffic-lights']:hover [data-tucu='traffic-light'] {
143
+ filter: brightness(0.92);
144
+ }
145
+
146
+ /* Glyph icons inside each button */
147
+ html.macos-tahoe [data-tucu='traffic-light-glyph'] {
148
+ display: none;
149
+ pointer-events: none;
150
+ }
151
+
152
+ html.macos-tahoe
153
+ [data-tucu='traffic-lights']:hover
154
+ [data-tucu='traffic-light-glyph'] {
155
+ display: block;
156
+ }
157
+
158
+ /* Inactive state: all gray */
159
+ html.macos-tahoe
160
+ [data-tucu='traffic-lights'][data-inactive='true']
161
+ [data-tucu='traffic-light'],
162
+ html.macos-tahoe
163
+ [data-tucu='window'][data-window-state='inactive']
164
+ [data-tucu='traffic-light'] {
165
+ background-color: var(--macos-gray4);
166
+ border-color: rgba(0, 0, 0, 0.08);
167
+ }
168
+
169
+ html.macos-tahoe.dark
170
+ [data-tucu='traffic-lights'][data-inactive='true']
171
+ [data-tucu='traffic-light'],
172
+ html.macos-tahoe.dark
173
+ [data-tucu='window'][data-window-state='inactive']
174
+ [data-tucu='traffic-light'] {
175
+ background-color: var(--macos-gray4);
176
+ }
177
+
178
+ /* Dark mode: slightly different tones */
179
+ html.macos-tahoe.dark [data-tucu='traffic-light'][data-type='close'] {
180
+ background-color: #ff5f57;
181
+ }
182
+
183
+ html.macos-tahoe.dark [data-tucu='traffic-light'][data-type='minimize'] {
184
+ background-color: #febc2e;
185
+ }
186
+
187
+ html.macos-tahoe.dark [data-tucu='traffic-light'][data-type='maximize'] {
188
+ background-color: #28c840;
189
+ }
190
+
191
+ /* ── Window Content Area ─────────────────────────────────────── */
192
+
193
+ html.macos-tahoe [data-tucu='window-content'] {
194
+ flex: 1;
195
+ overflow: hidden;
196
+ position: relative;
197
+ background-color: var(--macos-content-bg);
198
+ }
199
+
200
+ /* ── Resize handles ──────────────────────────────────────────── */
201
+
202
+ html.macos-tahoe [data-tucu='resize-handle'] {
203
+ position: absolute;
204
+ z-index: 10;
205
+ }
206
+
207
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='n'],
208
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='s'] {
209
+ left: var(--macos-radius-window);
210
+ right: var(--macos-radius-window);
211
+ height: 6px;
212
+ cursor: ns-resize;
213
+ }
214
+
215
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='n'] {
216
+ top: 0;
217
+ }
218
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='s'] {
219
+ bottom: 0;
220
+ }
221
+
222
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='e'],
223
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='w'] {
224
+ top: var(--macos-radius-window);
225
+ bottom: var(--macos-radius-window);
226
+ width: 6px;
227
+ cursor: ew-resize;
228
+ }
229
+
230
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='e'] {
231
+ right: 0;
232
+ }
233
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='w'] {
234
+ left: 0;
235
+ }
236
+
237
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='ne'],
238
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='nw'],
239
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='se'],
240
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='sw'] {
241
+ width: 18px;
242
+ height: 18px;
243
+ }
244
+
245
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='ne'] {
246
+ top: 0;
247
+ right: 0;
248
+ cursor: ne-resize;
249
+ }
250
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='nw'] {
251
+ top: 0;
252
+ left: 0;
253
+ cursor: nw-resize;
254
+ }
255
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='se'] {
256
+ bottom: 0;
257
+ right: 0;
258
+ cursor: se-resize;
259
+ }
260
+ html.macos-tahoe [data-tucu='resize-handle'][data-edge='sw'] {
261
+ bottom: 0;
262
+ left: 0;
263
+ cursor: sw-resize;
264
+ }
265
+
266
+ /* ── Reduced motion ──────────────────────────────────────────── */
267
+
268
+ @media (prefers-reduced-motion: reduce) {
269
+ html.macos-tahoe [data-tucu='window'],
270
+ html.macos-tahoe [data-tucu='traffic-light'] {
271
+ transition: none;
272
+ }
273
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@e-burgos/tucu-ui",
3
3
  "description": "Tucu UI Library",
4
- "version": "2.7.3",
4
+ "version": "2.8.0",
5
5
  "main": "./index.js",
6
6
  "module": "./index.mjs",
7
7
  "types": "./index.d.ts",
@@ -32,7 +32,8 @@
32
32
  "import": "./index.mjs",
33
33
  "require": "./index.js"
34
34
  },
35
- "./styles": "./index.css"
35
+ "./styles": "./index.css",
36
+ "./theme": "./theme.css"
36
37
  },
37
38
  "files": [
38
39
  "**/*"