@brightspace-ui/core 3.287.4 → 3.288.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/components/button/button-toggle.js +15 -13
- package/components/page/page.js +73 -27
- package/custom-elements.json +2 -2
- package/package.json +1 -1
|
@@ -39,16 +39,16 @@ class ButtonToggle extends LitElement {
|
|
|
39
39
|
|
|
40
40
|
firstUpdated(changedProperties) {
|
|
41
41
|
super.firstUpdated(changedProperties);
|
|
42
|
-
if (this
|
|
43
|
-
this
|
|
42
|
+
if (this.#focusOnFirstRender) {
|
|
43
|
+
this.#focusOnFirstRender = false;
|
|
44
44
|
this.focus();
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
render() {
|
|
49
49
|
return html`
|
|
50
|
-
<slot @click="${this
|
|
51
|
-
<slot @click="${this
|
|
50
|
+
<slot @click="${this.#handleNotPressedClick}" name="not-pressed"></slot>
|
|
51
|
+
<slot @click="${this.#handlePressedClick}" name="pressed"></slot>
|
|
52
52
|
`;
|
|
53
53
|
}
|
|
54
54
|
|
|
@@ -63,7 +63,7 @@ class ButtonToggle extends LitElement {
|
|
|
63
63
|
|
|
64
64
|
focus() {
|
|
65
65
|
if (!this.hasUpdated) {
|
|
66
|
-
this
|
|
66
|
+
this.#focusOnFirstRender = true;
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
69
69
|
|
|
@@ -75,28 +75,30 @@ class ButtonToggle extends LitElement {
|
|
|
75
75
|
elem.focus();
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
#focusOnFirstRender = false;
|
|
79
|
+
|
|
80
|
+
async #handleClick(pressed) {
|
|
79
81
|
const beforeToggleEvent = new CustomEvent('d2l-button-toggle-before-change', {
|
|
80
82
|
detail: {
|
|
81
|
-
update: (newPressed) => this
|
|
83
|
+
update: (newPressed) => this.#updatePressedState(newPressed)
|
|
82
84
|
},
|
|
83
85
|
cancelable: true
|
|
84
86
|
});
|
|
85
87
|
this.dispatchEvent(beforeToggleEvent);
|
|
86
88
|
if (beforeToggleEvent.defaultPrevented) return;
|
|
87
89
|
|
|
88
|
-
this
|
|
90
|
+
this.#updatePressedState(pressed);
|
|
89
91
|
}
|
|
90
92
|
|
|
91
|
-
|
|
92
|
-
this
|
|
93
|
+
#handleNotPressedClick() {
|
|
94
|
+
this.#handleClick(true);
|
|
93
95
|
}
|
|
94
96
|
|
|
95
|
-
|
|
96
|
-
this
|
|
97
|
+
#handlePressedClick() {
|
|
98
|
+
this.#handleClick(false);
|
|
97
99
|
}
|
|
98
100
|
|
|
99
|
-
async
|
|
101
|
+
async #updatePressedState(newPressed) {
|
|
100
102
|
this.pressed = newPressed;
|
|
101
103
|
await this.updateComplete;
|
|
102
104
|
this.focus();
|
package/components/page/page.js
CHANGED
|
@@ -14,10 +14,19 @@ const DRAWER_MIN_HEIGHT = 200; // TO DO: Confirm
|
|
|
14
14
|
export const MAIN_MIN_WIDTH = 600; // TO DO: Confirm
|
|
15
15
|
export const PANEL_MIN_WIDTH = 320;
|
|
16
16
|
|
|
17
|
+
const DIVIDER_GUTTER_WIDTH = 18;
|
|
18
|
+
|
|
17
19
|
export const SIDE_NAV_DEFAULT_WIDTH = 334;
|
|
18
20
|
export const supportingDefaultWidth = contentWidth => Math.floor(contentWidth / 3);
|
|
21
|
+
export const supportingOverlayDefaultWidth = contentWidth => Math.min(400, Math.floor(0.9 * (contentWidth - DIVIDER_WIDTH - DIVIDER_GUTTER_WIDTH)));
|
|
19
22
|
export const supportingMobileDefaultHeight = fullHeight => Math.floor(fullHeight / 2);
|
|
20
23
|
|
|
24
|
+
const OVERLAY_MODE_BREAKPOINT = 929;
|
|
25
|
+
const MOBILE_MODE_BREAKPOINT = 767;
|
|
26
|
+
|
|
27
|
+
const overlayModeQuery = window.matchMedia(`(max-width: ${OVERLAY_MODE_BREAKPOINT}px)`);
|
|
28
|
+
const mobileModeQuery = window.matchMedia(`(max-width: ${MOBILE_MODE_BREAKPOINT}px)`);
|
|
29
|
+
|
|
21
30
|
class PanelStateController {
|
|
22
31
|
constructor(host, panelConfigs) {
|
|
23
32
|
this.#host = host;
|
|
@@ -25,7 +34,8 @@ class PanelStateController {
|
|
|
25
34
|
for (const [key, config] of Object.entries(panelConfigs)) {
|
|
26
35
|
this.#panels[key] = {
|
|
27
36
|
animate: false,
|
|
28
|
-
collapsed:
|
|
37
|
+
collapsed: config.collapsed,
|
|
38
|
+
restoreCollapsed: !config.collapsed,
|
|
29
39
|
size: 0,
|
|
30
40
|
minSize: config.minSize,
|
|
31
41
|
maxSize: config.minSize
|
|
@@ -56,7 +66,7 @@ class PanelStateController {
|
|
|
56
66
|
if (stored) {
|
|
57
67
|
const storedSize = parseInt(stored.size);
|
|
58
68
|
this.resize(key, isFinite(storedSize) ? storedSize : defaults[key]);
|
|
59
|
-
if (stored.collapsed) panel.collapsed = true;
|
|
69
|
+
if (panel.restoreCollapsed && stored.collapsed) panel.collapsed = true;
|
|
60
70
|
} else {
|
|
61
71
|
this.resize(key, defaults[key]);
|
|
62
72
|
}
|
|
@@ -92,7 +102,7 @@ class PanelStateController {
|
|
|
92
102
|
panel.maxSize = newMaxSize;
|
|
93
103
|
|
|
94
104
|
if (panel.size > newMaxSize) {
|
|
95
|
-
this.resize(key, panel.size);
|
|
105
|
+
this.resize(key, panel.size, { animate: true });
|
|
96
106
|
}
|
|
97
107
|
}
|
|
98
108
|
|
|
@@ -122,9 +132,11 @@ class PanelStateController {
|
|
|
122
132
|
|
|
123
133
|
try {
|
|
124
134
|
state[panelKey] = {
|
|
125
|
-
size: this.#panels[panelKey].size
|
|
126
|
-
collapsed: this.#panels[panelKey].collapsed
|
|
135
|
+
size: this.#panels[panelKey].size
|
|
127
136
|
};
|
|
137
|
+
if (this.#panels[panelKey].restoreCollapsed) {
|
|
138
|
+
state[panelKey].collapsed = this.#panels[panelKey].collapsed;
|
|
139
|
+
}
|
|
128
140
|
localStorage.setItem(fullKey, JSON.stringify(state));
|
|
129
141
|
} catch {
|
|
130
142
|
// Do nothing if storage quota exceeded or using private browsing mode of an old Safari version
|
|
@@ -159,6 +171,8 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
159
171
|
_headerHeight: { state: true },
|
|
160
172
|
_headerIsSticky: { state: true },
|
|
161
173
|
_footerHeight: { state: true },
|
|
174
|
+
_inOverlayMode: { state: true },
|
|
175
|
+
_inMobileMode: { state: true },
|
|
162
176
|
_slotVisibility: { state: true }
|
|
163
177
|
};
|
|
164
178
|
|
|
@@ -183,12 +197,12 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
183
197
|
--d2l-page-footer-max-width: 100%;
|
|
184
198
|
}
|
|
185
199
|
|
|
186
|
-
@media (max-width:
|
|
200
|
+
@media (max-width: ${OVERLAY_MODE_BREAKPOINT}px) {
|
|
187
201
|
:host {
|
|
188
202
|
--d2l-page-padding: 24px;
|
|
189
203
|
}
|
|
190
204
|
}
|
|
191
|
-
@media (max-width:
|
|
205
|
+
@media (max-width: ${MOBILE_MODE_BREAKPOINT}px) {
|
|
192
206
|
:host {
|
|
193
207
|
--d2l-page-padding: 18px;
|
|
194
208
|
}
|
|
@@ -262,10 +276,10 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
262
276
|
}
|
|
263
277
|
|
|
264
278
|
.side-nav-panel.collapsed {
|
|
265
|
-
padding-inline-end:
|
|
279
|
+
padding-inline-end: ${DIVIDER_GUTTER_WIDTH}px;
|
|
266
280
|
}
|
|
267
281
|
.supporting-panel.collapsed {
|
|
268
|
-
padding-inline-start:
|
|
282
|
+
padding-inline-start: ${DIVIDER_GUTTER_WIDTH}px;
|
|
269
283
|
}
|
|
270
284
|
.side-nav-panel.collapsed .side-nav-panel-content,
|
|
271
285
|
.supporting-panel.collapsed .supporting-panel-content {
|
|
@@ -315,9 +329,11 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
315
329
|
this._headerIsSticky = false;
|
|
316
330
|
this._footerHeight = 0;
|
|
317
331
|
this._panelState = new PanelStateController(this, {
|
|
318
|
-
'side-nav': { minSize: PANEL_MIN_WIDTH },
|
|
319
|
-
'
|
|
320
|
-
'supporting
|
|
332
|
+
'side-nav': { collapsed: false, minSize: PANEL_MIN_WIDTH },
|
|
333
|
+
'side-nav-overlay': { collapsed: true, minSize: PANEL_MIN_WIDTH },
|
|
334
|
+
'supporting': { collapsed: false, minSize: PANEL_MIN_WIDTH },
|
|
335
|
+
'supporting-overlay': { collapsed: true, minSize: PANEL_MIN_WIDTH },
|
|
336
|
+
'supporting-mobile': { collapsed: false, minSize: DRAWER_MIN_HEIGHT }
|
|
321
337
|
});
|
|
322
338
|
this._slotVisibility = {};
|
|
323
339
|
this.#resizeObserver = new ResizeObserver(entries => {
|
|
@@ -341,7 +357,9 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
341
357
|
this._panelState.updateMaxSize('side-nav', newMaxWidth);
|
|
342
358
|
this._panelState.updateMaxSize('supporting', newMaxWidth);
|
|
343
359
|
|
|
344
|
-
|
|
360
|
+
const newMaxOverlayWidth = this.#getMaxPanelOverlayWidth();
|
|
361
|
+
this._panelState.updateMaxSize('side-nav-overlay', newMaxOverlayWidth);
|
|
362
|
+
this._panelState.updateMaxSize('supporting-overlay', newMaxOverlayWidth);
|
|
345
363
|
}
|
|
346
364
|
}
|
|
347
365
|
});
|
|
@@ -363,12 +381,20 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
363
381
|
connectedCallback() {
|
|
364
382
|
super.connectedCallback();
|
|
365
383
|
window.addEventListener('resize', this.#handleWindowResize);
|
|
384
|
+
|
|
385
|
+
this._inOverlayMode = overlayModeQuery.matches;
|
|
386
|
+
overlayModeQuery.addEventListener('change', this.#handleOverlayModeChange);
|
|
387
|
+
this._inMobileMode = mobileModeQuery.matches;
|
|
388
|
+
mobileModeQuery.addEventListener('change', this.#handleMobileModeChange);
|
|
366
389
|
}
|
|
367
390
|
|
|
368
391
|
disconnectedCallback() {
|
|
369
392
|
super.disconnectedCallback();
|
|
370
393
|
this.#resizeObserver.disconnect();
|
|
371
394
|
window.removeEventListener('resize', this.#handleWindowResize);
|
|
395
|
+
|
|
396
|
+
overlayModeQuery.removeEventListener('change', this.#handleOverlayModeChange);
|
|
397
|
+
mobileModeQuery.removeEventListener('change', this.#handleMobileModeChange);
|
|
372
398
|
}
|
|
373
399
|
|
|
374
400
|
firstUpdated() {
|
|
@@ -381,6 +407,9 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
381
407
|
}
|
|
382
408
|
|
|
383
409
|
render() {
|
|
410
|
+
const sideNavPanelKey = this._inOverlayMode ? 'side-nav-overlay' : 'side-nav';
|
|
411
|
+
const supportingPanelKey = this._inMobileMode ? 'supporting-overlay' : (this._inOverlayMode ? 'supporting-overlay' : 'supporting'); // TO DO: Switch to supporting-mobile
|
|
412
|
+
|
|
384
413
|
const pageClasses = {
|
|
385
414
|
'page': true,
|
|
386
415
|
'header-sticky': this._headerIsSticky
|
|
@@ -394,9 +423,9 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
394
423
|
<div class="${classMap(pageClasses)}">
|
|
395
424
|
${this.#renderHeader()}
|
|
396
425
|
<div class="${classMap(contentClasses)}">
|
|
397
|
-
${this.#renderSideNavPanel()}
|
|
426
|
+
${this.#renderSideNavPanel(sideNavPanelKey)}
|
|
398
427
|
<main><slot></slot></main>
|
|
399
|
-
${this.#renderSupportingPanel()}
|
|
428
|
+
${this.#renderSupportingPanel(supportingPanelKey)}
|
|
400
429
|
</div>
|
|
401
430
|
${this.#renderFooter()}
|
|
402
431
|
</div>
|
|
@@ -413,6 +442,16 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
413
442
|
#resizeObserver;
|
|
414
443
|
#stateStorageKey;
|
|
415
444
|
|
|
445
|
+
#handleMobileModeChange = (e) => {
|
|
446
|
+
// TO DO: Collapse supporting panel if needed
|
|
447
|
+
this._inMobileMode = e.matches;
|
|
448
|
+
};
|
|
449
|
+
|
|
450
|
+
#handleOverlayModeChange = (e) => {
|
|
451
|
+
// TO DO: Collapse side-nav and supporting panel if needed
|
|
452
|
+
this._inOverlayMode = e.matches;
|
|
453
|
+
};
|
|
454
|
+
|
|
416
455
|
#handleWindowResize = () => {
|
|
417
456
|
this._panelState.updateMaxSize('supporting-mobile', this.#getMaxDrawerHeight());
|
|
418
457
|
};
|
|
@@ -422,6 +461,11 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
422
461
|
return Math.max(DRAWER_MIN_HEIGHT, window.innerHeight - reservedSpace);
|
|
423
462
|
}
|
|
424
463
|
|
|
464
|
+
#getMaxPanelOverlayWidth() {
|
|
465
|
+
const reservedSpace = MAIN_MIN_WIDTH + DIVIDER_WIDTH; // TO DO: Update when overlay styles added
|
|
466
|
+
return Math.max(PANEL_MIN_WIDTH, this._contentWidth - reservedSpace);
|
|
467
|
+
}
|
|
468
|
+
|
|
425
469
|
#getMaxPanelWidth() {
|
|
426
470
|
const reservedSpace = MAIN_MIN_WIDTH + DIVIDER_WIDTH;
|
|
427
471
|
return Math.max(PANEL_MIN_WIDTH, this._contentWidth - reservedSpace);
|
|
@@ -447,7 +491,9 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
447
491
|
#initializePanelSizes() {
|
|
448
492
|
this._panelState.initialize({
|
|
449
493
|
'side-nav': SIDE_NAV_DEFAULT_WIDTH,
|
|
494
|
+
'side-nav-overlay': SIDE_NAV_DEFAULT_WIDTH,
|
|
450
495
|
'supporting': supportingDefaultWidth(this._contentWidth),
|
|
496
|
+
'supporting-overlay': supportingOverlayDefaultWidth(this._contentWidth),
|
|
451
497
|
'supporting-mobile': supportingMobileDefaultHeight(window.innerHeight)
|
|
452
498
|
});
|
|
453
499
|
}
|
|
@@ -509,43 +555,43 @@ class Page extends ProviderMixin(LocalizeCoreElement(LitElement)) {
|
|
|
509
555
|
`;
|
|
510
556
|
}
|
|
511
557
|
|
|
512
|
-
#renderSideNavPanel() {
|
|
558
|
+
#renderSideNavPanel(panelKey) {
|
|
513
559
|
const classes = {
|
|
514
560
|
'side-nav-panel': true,
|
|
515
|
-
'animate': this._panelState.getAnimate(
|
|
516
|
-
'collapsed': this._panelState.getCollapsed(
|
|
561
|
+
'animate': this._panelState.getAnimate(panelKey),
|
|
562
|
+
'collapsed': this._panelState.getCollapsed(panelKey)
|
|
517
563
|
};
|
|
518
564
|
return html`
|
|
519
565
|
<nav class="side-nav" aria-label="${this.localize('components.page.side-nav-label')}">
|
|
520
566
|
<div
|
|
521
567
|
class="${classMap(classes)}"
|
|
522
|
-
style=${styleMap({ width: `${this._panelState.getSize(
|
|
568
|
+
style=${styleMap({ width: `${this._panelState.getSize(panelKey)}px` })}
|
|
523
569
|
?hidden="${!this._slotVisibility['side-nav']}">
|
|
524
|
-
<div class="side-nav-panel-content" style=${styleMap({ width: `${this._panelState.getTrueSize(
|
|
570
|
+
<div class="side-nav-panel-content" style=${styleMap({ width: `${this._panelState.getTrueSize(panelKey)}px` })}>
|
|
525
571
|
<slot name="side-nav" @slotchange="${this.#handleSlotVisibilityChange}"></slot>
|
|
526
572
|
</div>
|
|
527
573
|
</div>
|
|
528
574
|
${!this._slotVisibility['side-nav'] ? nothing :
|
|
529
|
-
this.#renderDivider(
|
|
575
|
+
this.#renderDivider(panelKey, this.localize('components.page.side-nav-divider-label'), 'start')}
|
|
530
576
|
</nav>
|
|
531
577
|
`;
|
|
532
578
|
}
|
|
533
579
|
|
|
534
|
-
#renderSupportingPanel() {
|
|
580
|
+
#renderSupportingPanel(panelKey) {
|
|
535
581
|
const classes = {
|
|
536
582
|
'supporting-panel': true,
|
|
537
|
-
'animate': this._panelState.getAnimate(
|
|
538
|
-
'collapsed': this._panelState.getCollapsed(
|
|
583
|
+
'animate': this._panelState.getAnimate(panelKey),
|
|
584
|
+
'collapsed': this._panelState.getCollapsed(panelKey)
|
|
539
585
|
};
|
|
540
586
|
return html`
|
|
541
587
|
<aside class="supporting" aria-label="${this.localize('components.page.supporting-label')}">
|
|
542
588
|
${!this._slotVisibility['supporting'] ? nothing :
|
|
543
|
-
this.#renderDivider(
|
|
589
|
+
this.#renderDivider(panelKey, this.localize('components.page.supporting-divider-label'), 'end')}
|
|
544
590
|
<div
|
|
545
591
|
class="${classMap(classes)}"
|
|
546
|
-
style=${styleMap({ width: `${this._panelState.getSize(
|
|
592
|
+
style=${styleMap({ width: `${this._panelState.getSize(panelKey)}px` })}
|
|
547
593
|
?hidden="${!this._slotVisibility['supporting']}">
|
|
548
|
-
<div class="supporting-panel-content" style=${styleMap({ width: `${this._panelState.getTrueSize(
|
|
594
|
+
<div class="supporting-panel-content" style=${styleMap({ width: `${this._panelState.getTrueSize(panelKey)}px` })}>
|
|
549
595
|
<slot name="supporting" @slotchange="${this.#handleSlotVisibilityChange}"></slot>
|
|
550
596
|
</div>
|
|
551
597
|
</div>
|
package/custom-elements.json
CHANGED
|
@@ -13147,7 +13147,7 @@
|
|
|
13147
13147
|
"properties": [
|
|
13148
13148
|
{
|
|
13149
13149
|
"name": "styles",
|
|
13150
|
-
"default": "\"css`\\n\\t\\t.full-nav-header {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\theight: 90px;\\n\\t\\t}\\n\\t\\t.full-nav-header-left {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 0 1 auto;\\n\\t\\t\\tgap: 5px;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t\\t.full-nav-header-spacer {\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\tmin-width: 30px;\\n\\t\\t}\\n\\t\\t.full-nav-header-right {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t\\t.full-nav-header-right d2l-page-header-button {\\n\\t\\t\\tmargin-inline: 15px;\\n\\t\\t}\\n\\t\\t.full-nav-logo {\\n\\t\\t\\tbackground-color: var(--d2l-color-celestine);\\n\\t\\t\\tborder-radius: 4px;\\n\\t\\t\\tcolor: white;\\n\\t\\t\\tfont-size: 0.8rem;\\n\\t\\t\\tfont-weight: 700;\\n\\t\\t\\tpadding: 8px 14px;\\n\\t\\t}\\n\\t\\t.full-nav-footer-inner {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\
|
|
13150
|
+
"default": "\"css`\\n\\t\\t.full-nav-header {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\theight: 90px;\\n\\t\\t}\\n\\t\\t.full-nav-header-left {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 0 1 auto;\\n\\t\\t\\tgap: 5px;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t\\t.full-nav-header-course {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tgap: 5px;\\n\\t\\t}\\n\\t\\t.full-nav-header-spacer {\\n\\t\\t\\tflex: 1 1 auto;\\n\\t\\t\\tmin-width: 30px;\\n\\t\\t}\\n\\t\\t.full-nav-header-right {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t\\t.full-nav-header-alerts {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\theight: 100%;\\n\\t\\t}\\n\\t\\t.full-nav-header-alerts-combined {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t\\t.full-nav-header-right d2l-page-header-button {\\n\\t\\t\\tmargin-inline: 15px;\\n\\t\\t}\\n\\t\\t.full-nav-logo {\\n\\t\\t\\tbackground-color: var(--d2l-color-celestine);\\n\\t\\t\\tborder-radius: 4px;\\n\\t\\t\\tcolor: white;\\n\\t\\t\\tfont-size: 0.8rem;\\n\\t\\t\\tfont-weight: 700;\\n\\t\\t\\tpadding: 8px 14px;\\n\\t\\t}\\n\\t\\t.full-nav-footer-inner {\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tgap: 20px;\\n\\t\\t}\\n\\t\\t.full-nav-footer-links {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex: 0 1 auto;\\n\\t\\t\\tgap: 20px;\\n\\t\\t\\tmin-width: 0;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t}\\n\\t\\t.full-nav-footer-inner d2l-button-icon {\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t}\\n\\t\\t.full-nav-footer-link {\\n\\t\\t\\tborder-bottom: 4px solid transparent;\\n\\t\\t\\tcolor: var(--d2l-color-ferrite);\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tpadding: 8px 0;\\n\\t\\t\\ttext-decoration: none;\\n\\t\\t}\\n\\t\\t.full-nav-footer-link:hover,\\n\\t\\t.full-nav-footer-link:focus-visible {\\n\\t\\t\\tborder-bottom-color: var(--d2l-color-celestine);\\n\\t\\t\\tcolor: var(--d2l-color-celestine);\\n\\t\\t}\\n\\t\\t@media (max-width: 615px) {\\n\\t\\t\\t.full-nav-header-alerts {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t\\t.full-nav-header-alerts-combined {\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t@media (max-width: 400px) {\\n\\t\\t\\t.full-nav-header-course {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t`\""
|
|
13151
13151
|
}
|
|
13152
13152
|
]
|
|
13153
13153
|
},
|
|
@@ -13589,7 +13589,7 @@
|
|
|
13589
13589
|
"properties": [
|
|
13590
13590
|
{
|
|
13591
13591
|
"name": "styles",
|
|
13592
|
-
"default": "\"css`\\n\\t\\t:host {\\n\\t\\t\\t--d2l-page-header-max-width: 1230px;\\n\\t\\t\\t--d2l-page-content-max-width: 1230px;\\n\\t\\t\\t--d2l-page-footer-max-width: 1230px;\\n\\t\\t\\t--d2l-page-margin-inline: auto;\\n\\t\\t\\t--d2l-page-padding: 30px;\\n\\t\\t}\\n\\n\\t\\t:host([width-type=\\\"wide\\\"]) {\\n\\t\\t\\t--d2l-page-header-max-width: 1440px;\\n\\t\\t\\t--d2l-page-content-max-width: 1440px;\\n\\t\\t\\t--d2l-page-footer-max-width: 1440px;\\n\\t\\t}\\n\\n\\t\\t:host([width-type=\\\"fullscreen\\\"]) {\\n\\t\\t\\t--d2l-page-header-max-width: 100%;\\n\\t\\t\\t--d2l-page-content-max-width: 100%;\\n\\t\\t\\t--d2l-page-footer-max-width: 100%;\\n\\t\\t}\\n\\n\\t\\t@media (max-width:
|
|
13592
|
+
"default": "\"css`\\n\\t\\t:host {\\n\\t\\t\\t--d2l-page-header-max-width: 1230px;\\n\\t\\t\\t--d2l-page-content-max-width: 1230px;\\n\\t\\t\\t--d2l-page-footer-max-width: 1230px;\\n\\t\\t\\t--d2l-page-margin-inline: auto;\\n\\t\\t\\t--d2l-page-padding: 30px;\\n\\t\\t}\\n\\n\\t\\t:host([width-type=\\\"wide\\\"]) {\\n\\t\\t\\t--d2l-page-header-max-width: 1440px;\\n\\t\\t\\t--d2l-page-content-max-width: 1440px;\\n\\t\\t\\t--d2l-page-footer-max-width: 1440px;\\n\\t\\t}\\n\\n\\t\\t:host([width-type=\\\"fullscreen\\\"]) {\\n\\t\\t\\t--d2l-page-header-max-width: 100%;\\n\\t\\t\\t--d2l-page-content-max-width: 100%;\\n\\t\\t\\t--d2l-page-footer-max-width: 100%;\\n\\t\\t}\\n\\n\\t\\t@media (max-width: ${OVERLAY_MODE_BREAKPOINT}px) {\\n\\t\\t\\t:host {\\n\\t\\t\\t\\t--d2l-page-padding: 24px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t@media (max-width: ${MOBILE_MODE_BREAKPOINT}px) {\\n\\t\\t\\t:host {\\n\\t\\t\\t\\t--d2l-page-padding: 18px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.header {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tz-index: 16; /* To be over sticky content of our core components and the divider */\\n\\t\\t}\\n\\n\\t\\t.page.header-sticky .header {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\t.content {\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tmargin-inline: var(--d2l-page-margin-inline, 0);\\n\\t\\t\\tmax-width: var(--d2l-page-content-max-width, 100%);\\n\\t\\t\\tpadding-bottom: var(--d2l-page-footer-height, 0); /* Reserve space for fixed footer */\\n\\t\\t}\\n\\t\\t.content.has-panels {\\n\\t\\t\\tmin-height: calc(100vh - var(--d2l-page-header-height-measured, 0px));\\n\\t\\t}\\n\\n\\t\\tmain {\\n\\t\\t\\tflex: 1;\\n\\t\\t\\tmin-width: min(${MAIN_MIN_WIDTH}px, 100%);\\n\\t\\t}\\n\\n\\t\\t.side-nav,\\n\\t\\t.supporting {\\n\\t\\t\\tdisplay: contents;\\n\\t\\t}\\n\\n\\t\\t.side-nav-panel,\\n\\t\\t.supporting-panel {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t}\\n\\n\\t\\t.side-nav-panel,\\n\\t\\t.supporting-panel,\\n\\t\\t.divider {\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: var(--d2l-page-header-height, 0);\\n\\t\\t}\\n\\n\\t\\t.side-nav-panel,\\n\\t\\t.supporting-panel,\\n\\t\\t.side-nav-panel-content,\\n\\t\\t.supporting-panel-content,\\n\\t\\t.divider {\\n\\t\\t\\tmax-height: calc(100vh - var(--d2l-page-header-height, 0) - var(--d2l-page-footer-height, 0));\\n\\t\\t}\\n\\n\\t\\t.side-nav-panel-content,\\n\\t\\t.supporting-panel-content {\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\toverflow: clip auto;\\n\\t\\t}\\n\\t\\t.side-nav-panel-content {\\n\\t\\t\\tfloat: inline-end;\\n\\t\\t}\\n\\t\\t.supporting-panel-content {\\n\\t\\t\\tfloat: inline-start;\\n\\t\\t}\\n\\n\\t\\t.divider {\\n\\t\\t\\tz-index: 15; /* To be over d2l-page-* panel headers */\\n\\t\\t}\\n\\n\\t\\t.side-nav-panel.collapsed {\\n\\t\\t\\tpadding-inline-end: ${DIVIDER_GUTTER_WIDTH}px;\\n\\t\\t}\\n\\t\\t.supporting-panel.collapsed {\\n\\t\\t\\tpadding-inline-start: ${DIVIDER_GUTTER_WIDTH}px;\\n\\t\\t}\\n\\t\\t.side-nav-panel.collapsed .side-nav-panel-content,\\n\\t\\t.supporting-panel.collapsed .supporting-panel-content {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t}\\n\\t\\t@media (prefers-reduced-motion: no-preference) {\\n\\t\\t\\t.side-nav-panel.animate,\\n\\t\\t\\t.supporting-panel.animate,\\n\\t\\t\\t.side-nav-panel.animate .side-nav-panel-content,\\n\\t\\t\\t.supporting-panel.animate .supporting-panel-content {\\n\\t\\t\\t\\ttransition:\\n\\t\\t\\t\\t\\twidth 400ms cubic-bezier(0, 0.7, 0.5, 1),\\n\\t\\t\\t\\t\\tpadding 400ms cubic-bezier(0, 0.7, 0.5, 1);\\n\\t\\t\\t}\\n\\t\\t\\t.side-nav-panel.animate.collapsed .side-nav-panel-content,\\n\\t\\t\\t.supporting-panel.animate.collapsed .supporting-panel-content {\\n\\t\\t\\t\\ttransition:\\n\\t\\t\\t\\t\\twidth 400ms cubic-bezier(0, 0.7, 0.5, 1),\\n\\t\\t\\t\\t\\tvisibility 0s 400ms;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.footer:not([hidden]),\\n\\t\\t.floating-buttons-container {\\n\\t\\t\\tdisplay: inline;\\n\\t\\t}\\n\\t\\t.fixed-footer {\\n\\t\\t\\tbackground-color: white;\\n\\t\\t\\tbox-shadow: 0 -2px 4px rgba(32, 33, 34, 0.2); /* ferrite */\\n\\t\\t\\tinset: auto 0 0;\\n\\t\\t\\tpadding-block-start: 0.75rem;\\n\\t\\t\\tposition: fixed;\\n\\t\\t\\tz-index: 15; /* To be over sticky content of our core components and divider */\\n\\t\\t}\\n\\t\\t.footer-contents {\\n\\t\\t\\tmargin-inline: var(--d2l-page-margin-inline, 0);\\n\\t\\t\\tmax-width: var(--d2l-page-footer-max-width, 100%);\\n\\t\\t}\\n\\t`\""
|
|
13593
13593
|
},
|
|
13594
13594
|
{
|
|
13595
13595
|
"name": "stateStorageKey",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brightspace-ui/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.288.0",
|
|
4
4
|
"description": "A collection of accessible, free, open-source web components for building Brightspace applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": "https://github.com/BrightspaceUI/core.git",
|