@zeyos/zx 4.1.1 → 4.3.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/CHANGELOG.md +81 -0
- package/DESIGN-SYSTEM.md +33 -3
- package/README.md +22 -5
- package/dist/types/components/app-icon/app-icon.d.ts +8 -1
- package/dist/types/components/aurora/aurora.d.ts +72 -0
- package/dist/types/components/calendar/calendar-model.d.ts +202 -0
- package/dist/types/components/calendar/calendar.d.ts +517 -0
- package/dist/types/components/card-view/card-view.d.ts +303 -0
- package/dist/types/components/card-view/record-card.d.ts +242 -0
- package/dist/types/components/dialog/dialog.d.ts +6 -1
- package/dist/types/components/dropdown/dropdown.d.ts +5 -0
- package/dist/types/components/kanban-view/kanban-view.d.ts +572 -0
- package/dist/types/components/launcher/launcher.d.ts +5 -0
- package/dist/types/components/message/message.d.ts +9 -1
- package/dist/types/components/modal/modal.d.ts +44 -7
- package/dist/types/components/sheet/sheet.d.ts +22 -12
- package/dist/types/components/table/table.d.ts +120 -31
- package/dist/types/components/table-view/table-view.d.ts +192 -0
- package/dist/types/components/view/record-view.d.ts +464 -0
- package/dist/types/core/overlay-host.d.ts +12 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/zeyos/calendar.d.ts +91 -0
- package/dist/types/zeyos/icons.d.ts +18 -2
- package/dist/types/zeyos/index.d.ts +4 -0
- package/dist/types/zeyos/legacy-saved-views.d.ts +66 -0
- package/dist/types/zeyos/saved-views.d.ts +331 -0
- package/dist/types/zeyos/view.d.ts +305 -0
- package/dist/zx-zeyos.esm.js +4742 -1470
- package/dist/zx-zeyos.esm.min.js +1 -1
- package/dist/zx.css +2536 -471
- package/dist/zx.esm.js +5193 -223
- package/dist/zx.esm.min.js +3 -3
- package/dist/zx.global.js +5193 -223
- package/dist/zx.global.min.js +3 -3
- package/dist/zx.min.css +1 -1
- package/docs/api.json +1729 -182
- package/docs/llms.md +236 -32
- package/docs/llms.txt +16 -6
- package/package.json +1 -1
- package/src/components/account-menu/account-menu.css +1 -1
- package/src/components/app-icon/app-icon.css +77 -51
- package/src/components/app-icon/app-icon.js +28 -4
- package/src/components/app-rail/app-rail.css +12 -3
- package/src/components/app-sidebar/app-sidebar.css +11 -2
- package/src/components/aurora/aurora.css +143 -0
- package/src/components/aurora/aurora.js +146 -0
- package/src/components/avatar/avatar.css +1 -1
- package/src/components/button/button.css +2 -2
- package/src/components/calendar/calendar-model.js +402 -0
- package/src/components/calendar/calendar.css +609 -0
- package/src/components/calendar/calendar.js +1619 -0
- package/src/components/card/card.css +2 -2
- package/src/components/card-view/card-view.css +389 -0
- package/src/components/card-view/card-view.js +527 -0
- package/src/components/card-view/record-card.js +392 -0
- package/src/components/context-menu/context-menu.css +4 -4
- package/src/components/context-menu/context-menu.js +5 -1
- package/src/components/date-picker/date-picker.css +31 -12
- package/src/components/datebox/date-range-box.css +17 -2
- package/src/components/datebox/datebox.css +18 -3
- package/src/components/dialog/dialog.css +4 -3
- package/src/components/dialog/dialog.js +2 -1
- package/src/components/dropdown/dropdown.css +17 -3
- package/src/components/dropdown/dropdown.js +7 -2
- package/src/components/kanban-view/kanban-view.css +216 -0
- package/src/components/kanban-view/kanban-view.js +1228 -0
- package/src/components/launcher/launcher.css +24 -9
- package/src/components/launcher/launcher.js +9 -2
- package/src/components/master-panel/master-panel.css +14 -3
- package/src/components/menu-button/menu-button.css +4 -4
- package/src/components/message/message.css +13 -21
- package/src/components/message/message.js +17 -11
- package/src/components/modal/modal.css +19 -5
- package/src/components/modal/modal.js +99 -25
- package/src/components/navigation-bar/navigation-bar.css +17 -5
- package/src/components/panel/panel.css +10 -2
- package/src/components/select/select.css +26 -8
- package/src/components/sheet/sheet.css +28 -7
- package/src/components/sheet/sheet.js +43 -23
- package/src/components/table/table.css +83 -5
- package/src/components/table/table.js +322 -37
- package/src/components/table-view/table-view.css +18 -0
- package/src/components/table-view/table-view.js +347 -0
- package/src/components/tag-picker/tag-picker.css +18 -4
- package/src/components/tooltip/tooltip.css +17 -3
- package/src/components/tooltip/tooltip.js +4 -1
- package/src/components/view/record-view.css +114 -0
- package/src/components/view/record-view.js +770 -0
- package/src/core/overlay-host.js +23 -0
- package/src/index.js +15 -0
- package/src/zeyos/calendar.js +115 -0
- package/src/zeyos/icons.js +11 -4
- package/src/zeyos/index.js +13 -0
- package/src/zeyos/launcher.js +2 -2
- package/src/zeyos/legacy-saved-views.js +155 -0
- package/src/zeyos/saved-views.js +815 -0
- package/src/zeyos/table.js +3 -1
- package/src/zeyos/view.js +543 -0
- package/styles/icons.css +3 -10
- package/styles/tokens/dark.css +4 -0
- package/styles/tokens/semantic.css +142 -3
- package/styles/zx.css +6 -0
|
@@ -56,17 +56,156 @@
|
|
|
56
56
|
--zx-color-glass-highlight: color-mix(in srgb, var(--zx-gray-0) 24%, transparent);
|
|
57
57
|
--zx-color-glass-highlight-strong: color-mix(in srgb, var(--zx-gray-0) 38%, transparent);
|
|
58
58
|
--zx-color-app-icon-depth: color-mix(in srgb, var(--zx-color-app-icon-shade) 26%, transparent);
|
|
59
|
+
/* AppIcon is a dark chromatic lens: colour lives in its rim and low bloom, not a glossy fill. */
|
|
60
|
+
/* Strengths remain inherited, while each AppIcon mixes them with its own module colour. */
|
|
61
|
+
--zx-app-icon-core-strength: 52%;
|
|
62
|
+
--zx-app-icon-rim-strength: 58%;
|
|
63
|
+
--zx-app-icon-bloom-strength: 64%;
|
|
64
|
+
--zx-app-icon-specular-strength: 72%;
|
|
65
|
+
--zx-app-icon-rim-base: var(--zx-color-glass-highlight);
|
|
66
|
+
--zx-app-icon-halo-size: 14px;
|
|
67
|
+
--zx-app-icon-halo-strength: 22%;
|
|
59
68
|
--zx-color-glass-surface: color-mix(in srgb, var(--zx-color-bg-raised) 78%, transparent);
|
|
69
|
+
/* Persistent application chrome is quieter and more opaque than a raised feature card. */
|
|
70
|
+
--zx-color-glass-chrome: color-mix(in srgb, var(--zx-color-bg-surface) 90%, transparent);
|
|
60
71
|
--zx-color-glass-control: color-mix(in srgb, var(--zx-color-bg-control) 88%, transparent);
|
|
61
72
|
--zx-color-glass-control-hover: color-mix(in srgb, var(--zx-color-bg-hover) 76%, var(--zx-color-glass-surface));
|
|
73
|
+
/* Overlay glass is composed from four roles: a neutral base, translucent colour, a restrained
|
|
74
|
+
reflection, and the backdrop behind modal panels. Keeping them separate makes the material
|
|
75
|
+
visibly react to Aurora/content without baking decoration into each component. */
|
|
76
|
+
--zx-color-overlay-base: var(--zx-color-bg-raised);
|
|
77
|
+
--zx-color-overlay-surface: color-mix(in srgb, var(--zx-color-overlay-base) 72%, transparent);
|
|
78
|
+
--zx-color-overlay-panel: color-mix(in srgb, var(--zx-color-overlay-base) 80%, transparent);
|
|
79
|
+
--zx-color-overlay-backdrop: color-mix(in srgb, var(--zx-gray-950) 28%, transparent);
|
|
80
|
+
--zx-color-overlay-border: color-mix(in srgb, var(--zx-color-text) 14%, transparent);
|
|
81
|
+
--zx-color-overlay-hover: color-mix(in srgb, var(--zx-color-text) 8%, transparent);
|
|
82
|
+
--zx-color-overlay-selected: color-mix(in srgb, var(--zx-color-accent) 18%, transparent);
|
|
83
|
+
--zx-color-overlay-divider: color-mix(in srgb, var(--zx-color-text) 11%, transparent);
|
|
84
|
+
--zx-color-overlay-scrim: color-mix(in srgb, var(--zx-color-overlay-base) 28%, transparent);
|
|
85
|
+
--zx-overlay-specular-strength: 48%;
|
|
86
|
+
--zx-overlay-surface-image: linear-gradient(145deg,
|
|
87
|
+
color-mix(in srgb, var(--zx-color-glass-highlight-strong) var(--zx-overlay-specular-strength), transparent) 0%,
|
|
88
|
+
color-mix(in srgb, var(--zx-color-glass-highlight) 16%, transparent) 28%,
|
|
89
|
+
transparent 54%), radial-gradient(120% 100% at 8% -12%,
|
|
90
|
+
color-mix(in srgb, var(--zx-color-accent) 8%, transparent), transparent 58%);
|
|
91
|
+
--zx-overlay-toast-image: radial-gradient(120% 160% at 0% 0%,
|
|
92
|
+
color-mix(in srgb, var(--zx-message-kind, var(--zx-color-info)) 18%, transparent), transparent 62%),
|
|
93
|
+
var(--zx-overlay-surface-image);
|
|
94
|
+
--zx-overlay-panel-image: radial-gradient(140% 100% at 0% 0%,
|
|
95
|
+
color-mix(in srgb, var(--zx-color-glass-highlight-strong) var(--zx-overlay-specular-strength), transparent) 0%,
|
|
96
|
+
transparent 58%), radial-gradient(100% 70% at 100% 0%,
|
|
97
|
+
color-mix(in srgb, var(--zx-color-accent) 5%, transparent), transparent 64%),
|
|
98
|
+
linear-gradient(180deg, color-mix(in srgb, var(--zx-color-glass-highlight) 16%, transparent) 0%,
|
|
99
|
+
transparent 28%);
|
|
62
100
|
--zx-glass-blur: 8px;
|
|
63
101
|
--zx-glass-saturation: 130%;
|
|
64
102
|
--zx-glass-color-strength: 82%;
|
|
65
|
-
|
|
66
|
-
--zx-
|
|
103
|
+
/* Material filters are roles, not component recipes. Aurora remains a separate canvas layer. */
|
|
104
|
+
--zx-glass-filter-icon: blur(4px) saturate(118%);
|
|
105
|
+
--zx-glass-filter-control: blur(6px) saturate(116%);
|
|
106
|
+
--zx-glass-filter-raised: blur(8px) saturate(120%);
|
|
107
|
+
--zx-glass-filter-chrome: blur(10px) saturate(122%);
|
|
108
|
+
--zx-glass-filter-overlay: blur(16px) saturate(140%);
|
|
109
|
+
--zx-glass-filter-panel: blur(14px) saturate(132%);
|
|
110
|
+
--zx-app-icon-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-gray-0) 14%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--zx-gray-950) 28%, transparent), 0 2px 6px color-mix(in srgb, var(--zx-color-app-icon-shade) 24%, transparent);
|
|
111
|
+
--zx-app-icon-shadow-hover: inset 0 1px 0 color-mix(in srgb, var(--zx-gray-0) 20%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--zx-gray-950) 32%, transparent), 0 4px 10px color-mix(in srgb, var(--zx-color-app-icon-shade) 30%, transparent);
|
|
67
112
|
--zx-glass-control-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-gray-0) 18%, transparent), var(--zx-shadow-1);
|
|
113
|
+
--zx-glass-chrome-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-gray-0) 16%, transparent), var(--zx-shadow-1);
|
|
68
114
|
--zx-glass-raised-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-gray-0) 18%, transparent), var(--zx-overlay-shadow);
|
|
69
|
-
--zx-glass-
|
|
115
|
+
--zx-glass-overlay-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-color-glass-highlight-strong) 42%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--zx-color-glass-highlight) 20%, transparent), var(--zx-overlay-shadow);
|
|
116
|
+
--zx-glass-panel-shadow: inset 0 1px 0 color-mix(in srgb, var(--zx-color-glass-highlight-strong) 34%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--zx-color-glass-highlight) 14%, transparent), var(--zx-overlay-shadow);
|
|
70
117
|
--zx-header-bg: var(--zx-gray-900);
|
|
71
118
|
--zx-header-text: var(--zx-gray-50);
|
|
72
119
|
}
|
|
120
|
+
|
|
121
|
+
/* Preferences are resolved at the token seam so every material consumer, including application
|
|
122
|
+
chrome outside a component stylesheet, receives the same deterministic opaque fallback. */
|
|
123
|
+
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
|
|
124
|
+
:root,
|
|
125
|
+
.zx-scope,
|
|
126
|
+
[data-zx-theme],
|
|
127
|
+
[data-zx-density],
|
|
128
|
+
[data-zx-preset] {
|
|
129
|
+
--zx-color-glass-chrome: var(--zx-color-bg-surface) !important;
|
|
130
|
+
--zx-color-glass-surface: var(--zx-color-bg-raised) !important;
|
|
131
|
+
--zx-color-glass-control: var(--zx-color-bg-control) !important;
|
|
132
|
+
--zx-color-glass-control-hover: var(--zx-color-bg-hover) !important;
|
|
133
|
+
--zx-color-overlay-surface: var(--zx-color-bg-raised) !important;
|
|
134
|
+
--zx-color-overlay-panel: var(--zx-color-bg-raised) !important;
|
|
135
|
+
--zx-color-overlay-backdrop: var(--zx-color-bg-backdrop) !important;
|
|
136
|
+
--zx-color-overlay-hover: var(--zx-color-bg-hover) !important;
|
|
137
|
+
--zx-color-overlay-selected: var(--zx-color-bg-selected) !important;
|
|
138
|
+
--zx-color-overlay-divider: var(--zx-color-border) !important;
|
|
139
|
+
--zx-color-overlay-scrim: var(--zx-color-bg-raised) !important;
|
|
140
|
+
--zx-overlay-specular-strength: 0% !important;
|
|
141
|
+
--zx-overlay-surface-image: none !important;
|
|
142
|
+
--zx-overlay-toast-image: none !important;
|
|
143
|
+
--zx-overlay-panel-image: none !important;
|
|
144
|
+
--zx-app-icon-core-strength: 68% !important;
|
|
145
|
+
--zx-app-icon-rim-strength: 62% !important;
|
|
146
|
+
--zx-app-icon-bloom-strength: 0% !important;
|
|
147
|
+
--zx-app-icon-specular-strength: 0% !important;
|
|
148
|
+
--zx-app-icon-rim-base: var(--zx-color-border) !important;
|
|
149
|
+
--zx-app-icon-halo-strength: 0% !important;
|
|
150
|
+
--zx-glass-filter-icon: none !important;
|
|
151
|
+
--zx-glass-filter-control: none !important;
|
|
152
|
+
--zx-glass-filter-raised: none !important;
|
|
153
|
+
--zx-glass-filter-chrome: none !important;
|
|
154
|
+
--zx-glass-filter-overlay: none !important;
|
|
155
|
+
--zx-glass-filter-panel: none !important;
|
|
156
|
+
--zx-glass-overlay-shadow: var(--zx-overlay-shadow) !important;
|
|
157
|
+
--zx-glass-panel-shadow: var(--zx-overlay-shadow) !important;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
@media (forced-colors: active) {
|
|
162
|
+
:root,
|
|
163
|
+
.zx-scope,
|
|
164
|
+
[data-zx-theme],
|
|
165
|
+
[data-zx-density],
|
|
166
|
+
[data-zx-preset] {
|
|
167
|
+
--zx-color-glass-chrome: Canvas !important;
|
|
168
|
+
--zx-color-glass-surface: Canvas !important;
|
|
169
|
+
--zx-color-glass-control: ButtonFace !important;
|
|
170
|
+
--zx-color-glass-control-hover: Highlight !important;
|
|
171
|
+
--zx-color-overlay-surface: Canvas !important;
|
|
172
|
+
--zx-color-overlay-panel: Canvas !important;
|
|
173
|
+
--zx-color-overlay-backdrop: transparent !important;
|
|
174
|
+
--zx-color-overlay-border: CanvasText !important;
|
|
175
|
+
--zx-color-overlay-hover: Highlight !important;
|
|
176
|
+
--zx-color-overlay-selected: Highlight !important;
|
|
177
|
+
--zx-color-overlay-divider: CanvasText !important;
|
|
178
|
+
--zx-color-overlay-scrim: Canvas !important;
|
|
179
|
+
--zx-overlay-specular-strength: 0% !important;
|
|
180
|
+
--zx-overlay-surface-image: none !important;
|
|
181
|
+
--zx-overlay-toast-image: none !important;
|
|
182
|
+
--zx-overlay-panel-image: none !important;
|
|
183
|
+
--zx-glass-control-shadow: none !important;
|
|
184
|
+
--zx-glass-chrome-shadow: none !important;
|
|
185
|
+
--zx-glass-raised-shadow: none !important;
|
|
186
|
+
--zx-glass-filter-overlay: none !important;
|
|
187
|
+
--zx-glass-filter-panel: none !important;
|
|
188
|
+
--zx-glass-overlay-shadow: none !important;
|
|
189
|
+
--zx-glass-panel-shadow: none !important;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/* Browsers without backdrop filtering get an intentionally opaque material instead of a washed
|
|
194
|
+
translucent colour. This is a capability fallback, independent of user preference fallbacks. */
|
|
195
|
+
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
|
|
196
|
+
:root,
|
|
197
|
+
.zx-scope,
|
|
198
|
+
[data-zx-theme],
|
|
199
|
+
[data-zx-density],
|
|
200
|
+
[data-zx-preset] {
|
|
201
|
+
--zx-color-overlay-surface: var(--zx-color-bg-raised) !important;
|
|
202
|
+
--zx-color-overlay-panel: var(--zx-color-bg-raised) !important;
|
|
203
|
+
--zx-color-overlay-backdrop: var(--zx-color-bg-backdrop) !important;
|
|
204
|
+
--zx-overlay-specular-strength: 0% !important;
|
|
205
|
+
--zx-overlay-surface-image: none !important;
|
|
206
|
+
--zx-overlay-toast-image: none !important;
|
|
207
|
+
--zx-overlay-panel-image: none !important;
|
|
208
|
+
--zx-glass-filter-overlay: none !important;
|
|
209
|
+
--zx-glass-filter-panel: none !important;
|
|
210
|
+
}
|
|
211
|
+
}
|
package/styles/zx.css
CHANGED
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
@import url("../src/components/toggle/toggle.css");
|
|
23
23
|
@import url("../src/components/groupbox/groupbox.css");
|
|
24
24
|
@import url("../src/components/card/card.css");
|
|
25
|
+
@import url("../src/components/aurora/aurora.css");
|
|
25
26
|
@import url("../src/components/panel/panel.css");
|
|
26
27
|
@import url("../src/components/master-panel/master-panel.css");
|
|
27
28
|
@import url("../src/components/tabbox/tabbox.css");
|
|
@@ -55,7 +56,12 @@
|
|
|
55
56
|
@import url("../src/components/date-picker/date-range-picker.css");
|
|
56
57
|
@import url("../src/components/datebox/date-range-box.css");
|
|
57
58
|
@import url("../src/components/timebox/timebox.css");
|
|
59
|
+
@import url("../src/components/calendar/calendar.css");
|
|
60
|
+
@import url("../src/components/view/record-view.css");
|
|
58
61
|
@import url("../src/components/table/table.css");
|
|
62
|
+
@import url("../src/components/table-view/table-view.css");
|
|
63
|
+
@import url("../src/components/card-view/card-view.css");
|
|
64
|
+
@import url("../src/components/kanban-view/kanban-view.css");
|
|
59
65
|
@import url("../src/components/grid/grid.css");
|
|
60
66
|
@import url("../src/components/chart/chart.css");
|
|
61
67
|
@import url("../src/components/tree/tree.css");
|