@webority/theme 0.7.6 → 0.7.7
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/dist/webority-theme.css +1 -1
- package/package.json +1 -1
- package/scss/_variables.scss +17 -0
- package/scss/wui/_media.scss +8 -0
- package/scss/wui/_navigation.scss +4 -2
- package/scss/wui/_shell.scss +14 -4
- package/scss/wui/_utilities.scss +3 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webority/theme",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.7",
|
|
4
4
|
"description": "Webority shared design system — Bootstrap 5.3 SCSS overrides, --wui-* tokens, and shared component CSS. The single source of brand chrome for React portals and Razor sites.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"publishConfig": {
|
package/scss/_variables.scss
CHANGED
|
@@ -222,6 +222,23 @@ $link-hover-decoration: underline;
|
|
|
222
222
|
$focus-ring-width: 3px; // BS 0.25rem (4px)
|
|
223
223
|
|
|
224
224
|
|
|
225
|
+
// ---- Z-index ----------------------------------------------------------
|
|
226
|
+
// Mirrors the --wui-z-* ladder in _tokens.scss (full rationale there). Our modal is
|
|
227
|
+
// elevated to 1505 via a CSS custom property set directly in wui/_overlays.scss —
|
|
228
|
+
// Bootstrap's own $zindex-modal SCSS var is unused by it — but Bootstrap's stock
|
|
229
|
+
// popover/tooltip/toast (1070/1080/1090) are still miles below that, so any of
|
|
230
|
+
// those fired from inside an <AppModal> painted UNDER the dialog. Bring them onto
|
|
231
|
+
// the ladder's -menu/-tooltip/-toast rungs. Dropdown/sticky/fixed/offcanvas already
|
|
232
|
+
// sit at or near their matching -dropdown/-sticky/-fixed/-shell-scrim/-shell-drawer
|
|
233
|
+
// rungs, so those are left at Bootstrap's defaults.
|
|
234
|
+
//
|
|
235
|
+
// SCSS variables are compile-time and can't reference the runtime custom
|
|
236
|
+
// properties above — keep these numbers in sync with _tokens.scss by hand.
|
|
237
|
+
$zindex-popover: 1600;
|
|
238
|
+
$zindex-tooltip: 1650;
|
|
239
|
+
$zindex-toast: 1700;
|
|
240
|
+
|
|
241
|
+
|
|
225
242
|
// ---- Table ----------------------------------------------------------
|
|
226
243
|
// Set HERE, not in the component layer, and the reason is specificity.
|
|
227
244
|
// Bootstrap emits `.table > :not(caption) > * > * { padding: … }` at (0,1,1).
|
package/scss/wui/_media.scss
CHANGED
|
@@ -312,6 +312,14 @@
|
|
|
312
312
|
border-color: var(--color-primary);
|
|
313
313
|
background: var(--color-primary-soft);
|
|
314
314
|
}
|
|
315
|
+
// The hidden input is a sibling of the label (not a descendant), so :focus-within on
|
|
316
|
+
// .attach-drop never fires — reach the label through the general sibling combinator instead.
|
|
317
|
+
.attach-drop:has(+ input:focus-visible) {
|
|
318
|
+
border-color: var(--color-primary);
|
|
319
|
+
background: var(--color-primary-soft);
|
|
320
|
+
outline: 2px solid var(--color-primary);
|
|
321
|
+
outline-offset: 2px;
|
|
322
|
+
}
|
|
315
323
|
.attach-drop-icon {
|
|
316
324
|
flex: 0 0 auto;
|
|
317
325
|
width: 36px;
|
|
@@ -42,7 +42,9 @@
|
|
|
42
42
|
height: 100vh;
|
|
43
43
|
background: var(--color-surface);
|
|
44
44
|
border-left: 1px solid var(--color-border);
|
|
45
|
-
|
|
45
|
+
// Same rung as the mobile sidebar drawer — the highest shell-chrome rung below
|
|
46
|
+
// the modal ladder, so this panel is never trapped under sticky/fixed shell chrome.
|
|
47
|
+
z-index: var(--wui-z-shell-drawer);
|
|
46
48
|
transform: translateX(100%);
|
|
47
49
|
transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
|
|
48
50
|
display: flex;
|
|
@@ -58,7 +60,7 @@
|
|
|
58
60
|
opacity: 0;
|
|
59
61
|
pointer-events: none;
|
|
60
62
|
transition: opacity 0.2s;
|
|
61
|
-
z-index:
|
|
63
|
+
z-index: var(--wui-z-shell-scrim);
|
|
62
64
|
}
|
|
63
65
|
.drawer-backdrop.open {
|
|
64
66
|
opacity: 1;
|
package/scss/wui/_shell.scss
CHANGED
|
@@ -262,6 +262,14 @@
|
|
|
262
262
|
width: 0;
|
|
263
263
|
height: 0;
|
|
264
264
|
}
|
|
265
|
+
// Between the brand row and the nav — a workspace/tenant switcher, an environment
|
|
266
|
+
// badge. It must not shrink when the nav overflows, and it has no place on the
|
|
267
|
+
// 88px rail, so the collapsed state removes it (the mobile drawer restores it).
|
|
268
|
+
.app-sidebar-start {
|
|
269
|
+
flex: none;
|
|
270
|
+
margin-bottom: 8px;
|
|
271
|
+
overflow: hidden;
|
|
272
|
+
}
|
|
265
273
|
.app-sidebar-foot {
|
|
266
274
|
flex: none;
|
|
267
275
|
padding-top: 12px;
|
|
@@ -369,7 +377,8 @@
|
|
|
369
377
|
.app-shell.collapsed .app-nav-text,
|
|
370
378
|
.app-shell.collapsed .app-nav-badge,
|
|
371
379
|
.app-shell.collapsed .app-nav-group-label,
|
|
372
|
-
.app-shell.collapsed .app-sidebar-brand-text
|
|
380
|
+
.app-shell.collapsed .app-sidebar-brand-text,
|
|
381
|
+
.app-shell.collapsed .app-sidebar-start {
|
|
373
382
|
display: none;
|
|
374
383
|
}
|
|
375
384
|
|
|
@@ -492,7 +501,7 @@
|
|
|
492
501
|
// 36px = half the 72px topbar, so the button lines up with the topbar's centre.
|
|
493
502
|
top: 36px;
|
|
494
503
|
left: calc(var(--app-sidebar-w) - 12px);
|
|
495
|
-
z-index:
|
|
504
|
+
z-index: var(--wui-z-fixed);
|
|
496
505
|
width: 24px;
|
|
497
506
|
height: 24px;
|
|
498
507
|
display: inline-grid;
|
|
@@ -597,7 +606,7 @@
|
|
|
597
606
|
right: 0;
|
|
598
607
|
bottom: 0;
|
|
599
608
|
left: var(--app-sidebar-w);
|
|
600
|
-
z-index:
|
|
609
|
+
z-index: var(--wui-z-fixed);
|
|
601
610
|
background: color-mix(in srgb, var(--color-surface) 90%, transparent);
|
|
602
611
|
backdrop-filter: blur(50px);
|
|
603
612
|
-webkit-backdrop-filter: blur(50px);
|
|
@@ -638,7 +647,8 @@
|
|
|
638
647
|
}
|
|
639
648
|
.app-shell.app-shell.collapsed .app-nav-text,
|
|
640
649
|
.app-shell.app-shell.collapsed .app-nav-badge,
|
|
641
|
-
.app-shell.app-shell.collapsed .app-nav-group-label
|
|
650
|
+
.app-shell.app-shell.collapsed .app-nav-group-label,
|
|
651
|
+
.app-shell.app-shell.collapsed .app-sidebar-start {
|
|
642
652
|
display: revert;
|
|
643
653
|
}
|
|
644
654
|
.app-shell.app-shell .app-sidebar-toggle {
|
package/scss/wui/_utilities.scss
CHANGED
|
@@ -89,7 +89,9 @@
|
|
|
89
89
|
bottom: calc(100% + 8px);
|
|
90
90
|
left: 50%;
|
|
91
91
|
transform: translateX(-50%);
|
|
92
|
-
|
|
92
|
+
// Same rung as the .is-portal variant below — an anchored infotip inside a
|
|
93
|
+
// modal must clear the same modal it was previously trapped under at 220.
|
|
94
|
+
z-index: var(--wui-z-menu);
|
|
93
95
|
display: flex;
|
|
94
96
|
flex-direction: column;
|
|
95
97
|
gap: 4px;
|