@brightspace-ui/core 3.277.0 → 3.279.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/backdrop/backdrop-loading.js +100 -133
- package/components/backdrop/backdrop-stale-overlay.js +58 -0
- package/components/page/page.js +57 -6
- package/components/table/demo/table-test.js +9 -9
- package/components/table/table-wrapper.js +41 -46
- package/custom-elements.json +105 -105
- package/lang/ar.js +8 -7
- package/lang/ca.js +8 -7
- package/lang/cy.js +8 -7
- package/lang/da.js +8 -7
- package/lang/de.js +8 -7
- package/lang/en-gb.js +1 -0
- package/lang/en.js +1 -0
- package/lang/es-es.js +8 -7
- package/lang/es.js +8 -7
- package/lang/fr-fr.js +8 -7
- package/lang/fr.js +8 -7
- package/lang/haw.js +8 -7
- package/lang/hi.js +8 -7
- package/lang/ja.js +8 -7
- package/lang/ko.js +8 -7
- package/lang/mi.js +8 -7
- package/lang/nl.js +8 -7
- package/lang/pl.js +256 -0
- package/lang/pt.js +8 -7
- package/lang/ru.js +256 -0
- package/lang/sv.js +8 -7
- package/lang/th.js +8 -7
- package/lang/tr.js +8 -7
- package/lang/ur.js +256 -0
- package/lang/vi.js +8 -7
- package/lang/zh-cn.js +8 -7
- package/lang/zh-tw.js +8 -7
- package/mixins/freshness/freshness-mixin.js +35 -0
- package/package.json +1 -1
- package/components/backdrop/backdrop-dirty-overlay.js +0 -73
|
@@ -2,13 +2,15 @@ import '../colors/colors.js';
|
|
|
2
2
|
import '../scroll-wrapper/scroll-wrapper.js';
|
|
3
3
|
import '../backdrop/backdrop-loading.js';
|
|
4
4
|
import { css, html, LitElement, nothing } from 'lit';
|
|
5
|
+
import { freshness, FreshnessMixin } from '../../mixins/freshness/freshness-mixin.js';
|
|
5
6
|
import { cssSizes } from '../inputs/input-checkbox-styles.js';
|
|
6
7
|
import { getComposedParent } from '../../helpers/dom.js';
|
|
7
8
|
import { isPopoverSupported } from '../popover/popover-mixin.js';
|
|
8
9
|
import { PageableMixin } from '../paging/pageable-mixin.js';
|
|
9
|
-
import { PropertyRequiredMixin } from '../../mixins/property-required/property-required-mixin.js';
|
|
10
10
|
import { SelectionMixin } from '../selection/selection-mixin.js';
|
|
11
11
|
|
|
12
|
+
export const tableFreshness = freshness;
|
|
13
|
+
|
|
12
14
|
export const tableStyles = css`
|
|
13
15
|
.d2l-table {
|
|
14
16
|
border-collapse: separate; /* needed to override reset stylesheets */
|
|
@@ -263,9 +265,24 @@ const SELECTORS = {
|
|
|
263
265
|
* @slot controls - Slot for `d2l-table-controls` to be rendered above the table
|
|
264
266
|
* @slot pager - Slot for `d2l-pager-load-more` to be rendered below the table
|
|
265
267
|
*/
|
|
266
|
-
export class TableWrapper extends
|
|
268
|
+
export class TableWrapper extends FreshnessMixin(PageableMixin(SelectionMixin(LitElement))) {
|
|
267
269
|
|
|
268
270
|
static properties = {
|
|
271
|
+
/**
|
|
272
|
+
* Todo: remove once consumers are updated to freshness. Use freshness instead.
|
|
273
|
+
* @ignore
|
|
274
|
+
*/
|
|
275
|
+
dataState: { reflect: true, type: String },
|
|
276
|
+
/**
|
|
277
|
+
* Todo: remove once consumers are updated to freshness-stale-text. Use freshness-stale-text instead.
|
|
278
|
+
* @ignore
|
|
279
|
+
*/
|
|
280
|
+
dirtyText: { reflect: true, attribute: 'dirty-text', type: String },
|
|
281
|
+
/**
|
|
282
|
+
* Todo: remove once consumers are updated to freshness-stale-button-text. Use freshness-stale-button-text instead.
|
|
283
|
+
* @ignore
|
|
284
|
+
*/
|
|
285
|
+
dirtyButtonText: { reflect: true, attribute: 'dirty-button-text', type: String },
|
|
269
286
|
/**
|
|
270
287
|
* Hides the column borders on "default" table type
|
|
271
288
|
* @type {boolean}
|
|
@@ -307,40 +324,6 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
307
324
|
attribute: '_no-scroll-width',
|
|
308
325
|
reflect: true,
|
|
309
326
|
type: Boolean,
|
|
310
|
-
},
|
|
311
|
-
/**
|
|
312
|
-
* The state of data in the table. Set to 'clean' when the data represents the user's latest selections, 'dirty' when the data does not represent the user's latest selections, and 'loading' if the data is being actively refreshed
|
|
313
|
-
* @type {'clean'|'dirty'|'loading'}
|
|
314
|
-
*/
|
|
315
|
-
dataState: {
|
|
316
|
-
reflect: true,
|
|
317
|
-
type: String
|
|
318
|
-
},
|
|
319
|
-
/**
|
|
320
|
-
* The text displayed on the dirty state overlay when the 'dirty' dataState is set.
|
|
321
|
-
* @type {string}
|
|
322
|
-
*/
|
|
323
|
-
dirtyText: {
|
|
324
|
-
reflect: true,
|
|
325
|
-
attribute: 'dirty-text',
|
|
326
|
-
required: {
|
|
327
|
-
dependentProps: ['dataState'],
|
|
328
|
-
validator: (_value, elem, hasValue) => hasValue || elem.dataState !== 'dirty'
|
|
329
|
-
},
|
|
330
|
-
type: String
|
|
331
|
-
},
|
|
332
|
-
/**
|
|
333
|
-
* The text displayed on the button dirty state overlay when the 'dirty' dataState is set.
|
|
334
|
-
* @type {string}
|
|
335
|
-
*/
|
|
336
|
-
dirtyButtonText: {
|
|
337
|
-
reflect: true,
|
|
338
|
-
attribute: 'dirty-button-text',
|
|
339
|
-
required: {
|
|
340
|
-
dependentProps: ['dataState'],
|
|
341
|
-
validator: (_value, elem, hasValue) => hasValue || elem.dataState !== 'dirty'
|
|
342
|
-
},
|
|
343
|
-
type: String
|
|
344
327
|
}
|
|
345
328
|
};
|
|
346
329
|
|
|
@@ -409,10 +392,6 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
409
392
|
this._tableIntersectionObserver = null;
|
|
410
393
|
this._tableMutationObserver = null;
|
|
411
394
|
this._tableScrollers = {};
|
|
412
|
-
this.dataState = 'clean';
|
|
413
|
-
|
|
414
|
-
this.dirtyText = null;
|
|
415
|
-
this.dirtyButtonText = null;
|
|
416
395
|
}
|
|
417
396
|
|
|
418
397
|
connectedCallback() {
|
|
@@ -444,7 +423,7 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
444
423
|
const slot = html`
|
|
445
424
|
<div style="position:relative">
|
|
446
425
|
<slot id="table-slot" @slotchange="${this._handleSlotChange}"></slot>
|
|
447
|
-
<d2l-backdrop-loading @d2l-backdrop-
|
|
426
|
+
<d2l-backdrop-loading @d2l-backdrop-stale-overlay-action="${this._handleStaleButton}" for="table-slot" freshness="${this.freshness}" freshness-stale-text="${this.freshnessStaleText}" freshness-stale-button-text="${this.freshnessStaleButtonText}"></d2l-backdrop-loading>
|
|
448
427
|
</div>
|
|
449
428
|
`;
|
|
450
429
|
const useScrollWrapper = this.stickyHeadersScrollWrapper || !this.stickyHeaders;
|
|
@@ -469,6 +448,19 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
469
448
|
}
|
|
470
449
|
}
|
|
471
450
|
|
|
451
|
+
willUpdate(changedProperties) {
|
|
452
|
+
super.willUpdate(changedProperties);
|
|
453
|
+
|
|
454
|
+
// Todo: remove these once consumers are updated to freshness properties
|
|
455
|
+
if (this.dataState) {
|
|
456
|
+
if (this.dataState === 'clean') this.freshness = freshness.fresh;
|
|
457
|
+
else if (this.dataState === 'dirty') this.freshness = freshness.stale;
|
|
458
|
+
else if (this.dataState === 'loading') this.freshness = freshness.loading;
|
|
459
|
+
}
|
|
460
|
+
if (this.dirtyText) this.freshnessStaleText = this.dirtyText;
|
|
461
|
+
if (this.dirtyButtonText) this.freshnessStaleButtonText = this.dirtyButtonText;
|
|
462
|
+
}
|
|
463
|
+
|
|
472
464
|
#hasIntersected = false;
|
|
473
465
|
|
|
474
466
|
#noScrollWidthTimeout = null;
|
|
@@ -571,11 +563,6 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
571
563
|
this._handleControlsChange();
|
|
572
564
|
}
|
|
573
565
|
|
|
574
|
-
_handleDirtyButton() {
|
|
575
|
-
/** Dispatched when the action button on the dirty overlay is clicked */
|
|
576
|
-
this.dispatchEvent(new CustomEvent('d2l-table-dirty-button-clicked'));
|
|
577
|
-
}
|
|
578
|
-
|
|
579
566
|
_handlePopoverClose(e) {
|
|
580
567
|
this._updateStickyAncestor(e.target, false);
|
|
581
568
|
}
|
|
@@ -630,6 +617,14 @@ export class TableWrapper extends PropertyRequiredMixin(PageableMixin(SelectionM
|
|
|
630
617
|
this._handleTableChange();
|
|
631
618
|
}
|
|
632
619
|
|
|
620
|
+
_handleStaleButton() {
|
|
621
|
+
/** Dispatched when the action button on the stale overlay is clicked */
|
|
622
|
+
this.dispatchEvent(new CustomEvent('d2l-table-stale-button-click'));
|
|
623
|
+
|
|
624
|
+
/** @ignore Todo: remove once consumers are updated to d2l-table-stale-button-click */
|
|
625
|
+
this.dispatchEvent(new CustomEvent('d2l-table-dirty-button-clicked'));
|
|
626
|
+
}
|
|
627
|
+
|
|
633
628
|
async _handleTableChange(mutationRecords) {
|
|
634
629
|
const updateList = [];
|
|
635
630
|
|
package/custom-elements.json
CHANGED
|
@@ -196,104 +196,104 @@
|
|
|
196
196
|
]
|
|
197
197
|
},
|
|
198
198
|
{
|
|
199
|
-
"name": "d2l-backdrop-
|
|
200
|
-
"path": "./components/backdrop/backdrop-
|
|
201
|
-
"description": "
|
|
199
|
+
"name": "d2l-backdrop-loading",
|
|
200
|
+
"path": "./components/backdrop/backdrop-loading.js",
|
|
201
|
+
"description": "A component for displaying a semi-transparent backdrop and a loading spinner over the containing element",
|
|
202
202
|
"attributes": [
|
|
203
203
|
{
|
|
204
|
-
"name": "
|
|
205
|
-
"description": "
|
|
204
|
+
"name": "for",
|
|
205
|
+
"description": "Used to identify content that the backdrop should make inert",
|
|
206
|
+
"type": "string"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"name": "freshness-stale-button-text",
|
|
210
|
+
"description": "The button text in the overlay when 'stale'",
|
|
206
211
|
"type": "string"
|
|
207
212
|
},
|
|
208
213
|
{
|
|
209
|
-
"name": "
|
|
210
|
-
"description": "The text
|
|
214
|
+
"name": "freshness-stale-text",
|
|
215
|
+
"description": "The text message in the overlay when 'stale'",
|
|
211
216
|
"type": "string"
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"name": "freshness",
|
|
220
|
+
"description": "The freshness of the component data",
|
|
221
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
222
|
+
"default": "\"\\\"fresh\\\"\""
|
|
212
223
|
}
|
|
213
224
|
],
|
|
214
225
|
"properties": [
|
|
215
226
|
{
|
|
216
|
-
"name": "
|
|
217
|
-
"attribute": "
|
|
218
|
-
"description": "
|
|
227
|
+
"name": "for",
|
|
228
|
+
"attribute": "for",
|
|
229
|
+
"description": "Used to identify content that the backdrop should make inert",
|
|
219
230
|
"type": "string"
|
|
220
231
|
},
|
|
221
232
|
{
|
|
222
|
-
"name": "
|
|
223
|
-
"
|
|
224
|
-
"
|
|
233
|
+
"name": "styles",
|
|
234
|
+
"type": "array",
|
|
235
|
+
"default": "[null]"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "freshnessStaleButtonText",
|
|
239
|
+
"attribute": "freshness-stale-button-text",
|
|
240
|
+
"description": "The button text in the overlay when 'stale'",
|
|
225
241
|
"type": "string"
|
|
226
242
|
},
|
|
227
243
|
{
|
|
228
|
-
"name": "
|
|
229
|
-
"
|
|
230
|
-
"
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
"events": [
|
|
244
|
+
"name": "freshnessStaleText",
|
|
245
|
+
"attribute": "freshness-stale-text",
|
|
246
|
+
"description": "The text message in the overlay when 'stale'",
|
|
247
|
+
"type": "string"
|
|
248
|
+
},
|
|
234
249
|
{
|
|
235
|
-
"name": "
|
|
236
|
-
"
|
|
250
|
+
"name": "freshness",
|
|
251
|
+
"attribute": "freshness",
|
|
252
|
+
"description": "The freshness of the component data",
|
|
253
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
254
|
+
"default": "\"\\\"fresh\\\"\""
|
|
237
255
|
}
|
|
238
256
|
]
|
|
239
257
|
},
|
|
240
258
|
{
|
|
241
|
-
"name": "d2l-backdrop-
|
|
242
|
-
"path": "./components/backdrop/backdrop-
|
|
243
|
-
"description": "A component
|
|
259
|
+
"name": "d2l-backdrop-stale-overlay",
|
|
260
|
+
"path": "./components/backdrop/backdrop-stale-overlay.js",
|
|
261
|
+
"description": "A component to render as an overlay over another element with stale data.",
|
|
244
262
|
"attributes": [
|
|
245
263
|
{
|
|
246
|
-
"name": "
|
|
247
|
-
"description": "
|
|
248
|
-
"type": "string"
|
|
249
|
-
},
|
|
250
|
-
{
|
|
251
|
-
"name": "dirty-text",
|
|
252
|
-
"description": "The text displayed on the dirty state overlay when the 'dirty' dataState is set.",
|
|
264
|
+
"name": "button-text",
|
|
265
|
+
"description": "The action button text",
|
|
253
266
|
"type": "string"
|
|
254
267
|
},
|
|
255
268
|
{
|
|
256
|
-
"name": "
|
|
257
|
-
"description": "The text displayed on the
|
|
269
|
+
"name": "text",
|
|
270
|
+
"description": "The text displayed on the overlay",
|
|
258
271
|
"type": "string"
|
|
259
|
-
},
|
|
260
|
-
{
|
|
261
|
-
"name": "dataState",
|
|
262
|
-
"description": "The state of data in the element being overlaid. Set to 'clean' when the data represents the user's latest selections, 'dirty' when the data does not represent the user's latest selections, and 'loading' if the data is being actively refreshed",
|
|
263
|
-
"type": "'clean'|'dirty'|'loading'",
|
|
264
|
-
"default": "\"clean\""
|
|
265
272
|
}
|
|
266
273
|
],
|
|
267
274
|
"properties": [
|
|
268
275
|
{
|
|
269
|
-
"name": "
|
|
270
|
-
"attribute": "
|
|
271
|
-
"description": "
|
|
272
|
-
"type": "string"
|
|
273
|
-
},
|
|
274
|
-
{
|
|
275
|
-
"name": "dirtyText",
|
|
276
|
-
"attribute": "dirty-text",
|
|
277
|
-
"description": "The text displayed on the dirty state overlay when the 'dirty' dataState is set.",
|
|
276
|
+
"name": "buttonText",
|
|
277
|
+
"attribute": "button-text",
|
|
278
|
+
"description": "The action button text",
|
|
278
279
|
"type": "string"
|
|
279
280
|
},
|
|
280
281
|
{
|
|
281
|
-
"name": "
|
|
282
|
-
"attribute": "
|
|
283
|
-
"description": "The text displayed on the
|
|
282
|
+
"name": "text",
|
|
283
|
+
"attribute": "text",
|
|
284
|
+
"description": "The text displayed on the overlay",
|
|
284
285
|
"type": "string"
|
|
285
286
|
},
|
|
286
287
|
{
|
|
287
288
|
"name": "styles",
|
|
288
289
|
"type": "array",
|
|
289
|
-
"default": "[null]"
|
|
290
|
-
}
|
|
290
|
+
"default": "[\"bodyCompactStyles\",null]"
|
|
291
|
+
}
|
|
292
|
+
],
|
|
293
|
+
"events": [
|
|
291
294
|
{
|
|
292
|
-
"name": "
|
|
293
|
-
"
|
|
294
|
-
"description": "The state of data in the element being overlaid. Set to 'clean' when the data represents the user's latest selections, 'dirty' when the data does not represent the user's latest selections, and 'loading' if the data is being actively refreshed",
|
|
295
|
-
"type": "'clean'|'dirty'|'loading'",
|
|
296
|
-
"default": "\"clean\""
|
|
295
|
+
"name": "d2l-backdrop-stale-overlay-action",
|
|
296
|
+
"description": "Dispatched when the action button on the overlay is clicked"
|
|
297
297
|
}
|
|
298
298
|
]
|
|
299
299
|
},
|
|
@@ -13540,7 +13540,7 @@
|
|
|
13540
13540
|
"properties": [
|
|
13541
13541
|
{
|
|
13542
13542
|
"name": "styles",
|
|
13543
|
-
"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: 929px) {\\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: 767px) {\\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.divider {\\n\\t\\t\\tmax-height: calc(100vh - var(--d2l-page-header-height, 0) - var(--d2l-page-footer-height, 0));\\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\\toverflow: clip auto;\\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.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`\""
|
|
13543
|
+
"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: 929px) {\\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: 767px) {\\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.divider {\\n\\t\\t\\tmax-height: calc(100vh - var(--d2l-page-header-height, 0) - var(--d2l-page-footer-height, 0));\\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\\toverflow: clip auto;\\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 .divider[collapsed] {\\n\\t\\t\\tmargin-inline-start: 18px;\\n\\t\\t}\\n\\t\\t.supporting .divider[collapsed] {\\n\\t\\t\\tmargin-inline-end: 18px;\\n\\t\\t}\\n\\t\\t.side-nav-panel.collapsed,\\n\\t\\t.supporting-panel.collapsed {\\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\\ttransition: width 400ms cubic-bezier(0, 0.7, 0.5, 1);\\n\\t\\t\\t}\\n\\t\\t\\t.side-nav-panel.animate.collapsed,\\n\\t\\t\\t.supporting-panel.animate.collapsed {\\n\\t\\t\\t\\ttransition: width 400ms cubic-bezier(0, 0.7, 0.5, 1), visibility 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`\""
|
|
13544
13544
|
},
|
|
13545
13545
|
{
|
|
13546
13546
|
"name": "widthType",
|
|
@@ -15743,20 +15743,20 @@
|
|
|
15743
15743
|
"default": "\"default\""
|
|
15744
15744
|
},
|
|
15745
15745
|
{
|
|
15746
|
-
"name": "
|
|
15747
|
-
"description": "The
|
|
15748
|
-
"type": "
|
|
15749
|
-
"default": "\"clean\""
|
|
15746
|
+
"name": "freshness-stale-button-text",
|
|
15747
|
+
"description": "The button text in the overlay when 'stale'",
|
|
15748
|
+
"type": "string"
|
|
15750
15749
|
},
|
|
15751
15750
|
{
|
|
15752
|
-
"name": "
|
|
15753
|
-
"description": "The text
|
|
15751
|
+
"name": "freshness-stale-text",
|
|
15752
|
+
"description": "The text message in the overlay when 'stale'",
|
|
15754
15753
|
"type": "string"
|
|
15755
15754
|
},
|
|
15756
15755
|
{
|
|
15757
|
-
"name": "
|
|
15758
|
-
"description": "The
|
|
15759
|
-
"type": "
|
|
15756
|
+
"name": "freshness",
|
|
15757
|
+
"description": "The freshness of the component data",
|
|
15758
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
15759
|
+
"default": "\"fresh\""
|
|
15760
15760
|
},
|
|
15761
15761
|
{
|
|
15762
15762
|
"name": "item-count",
|
|
@@ -15840,23 +15840,23 @@
|
|
|
15840
15840
|
"default": "\"default\""
|
|
15841
15841
|
},
|
|
15842
15842
|
{
|
|
15843
|
-
"name": "
|
|
15844
|
-
"attribute": "
|
|
15845
|
-
"description": "The
|
|
15846
|
-
"type": "
|
|
15847
|
-
"default": "\"clean\""
|
|
15843
|
+
"name": "freshnessStaleButtonText",
|
|
15844
|
+
"attribute": "freshness-stale-button-text",
|
|
15845
|
+
"description": "The button text in the overlay when 'stale'",
|
|
15846
|
+
"type": "string"
|
|
15848
15847
|
},
|
|
15849
15848
|
{
|
|
15850
|
-
"name": "
|
|
15851
|
-
"attribute": "
|
|
15852
|
-
"description": "The text
|
|
15849
|
+
"name": "freshnessStaleText",
|
|
15850
|
+
"attribute": "freshness-stale-text",
|
|
15851
|
+
"description": "The text message in the overlay when 'stale'",
|
|
15853
15852
|
"type": "string"
|
|
15854
15853
|
},
|
|
15855
15854
|
{
|
|
15856
|
-
"name": "
|
|
15857
|
-
"attribute": "
|
|
15858
|
-
"description": "The
|
|
15859
|
-
"type": "
|
|
15855
|
+
"name": "freshness",
|
|
15856
|
+
"attribute": "freshness",
|
|
15857
|
+
"description": "The freshness of the component data",
|
|
15858
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
15859
|
+
"default": "\"fresh\""
|
|
15860
15860
|
},
|
|
15861
15861
|
{
|
|
15862
15862
|
"name": "itemCount",
|
|
@@ -15879,8 +15879,8 @@
|
|
|
15879
15879
|
],
|
|
15880
15880
|
"events": [
|
|
15881
15881
|
{
|
|
15882
|
-
"name": "d2l-table-
|
|
15883
|
-
"description": "Dispatched when the action button on the
|
|
15882
|
+
"name": "d2l-table-stale-button-click",
|
|
15883
|
+
"description": "Dispatched when the action button on the stale overlay is clicked"
|
|
15884
15884
|
}
|
|
15885
15885
|
],
|
|
15886
15886
|
"slots": [
|
|
@@ -16214,20 +16214,20 @@
|
|
|
16214
16214
|
"default": "\"default\""
|
|
16215
16215
|
},
|
|
16216
16216
|
{
|
|
16217
|
-
"name": "
|
|
16218
|
-
"description": "The
|
|
16219
|
-
"type": "
|
|
16220
|
-
"default": "\"clean\""
|
|
16217
|
+
"name": "freshness-stale-button-text",
|
|
16218
|
+
"description": "The button text in the overlay when 'stale'",
|
|
16219
|
+
"type": "string"
|
|
16221
16220
|
},
|
|
16222
16221
|
{
|
|
16223
|
-
"name": "
|
|
16224
|
-
"description": "The text
|
|
16222
|
+
"name": "freshness-stale-text",
|
|
16223
|
+
"description": "The text message in the overlay when 'stale'",
|
|
16225
16224
|
"type": "string"
|
|
16226
16225
|
},
|
|
16227
16226
|
{
|
|
16228
|
-
"name": "
|
|
16229
|
-
"description": "The
|
|
16230
|
-
"type": "
|
|
16227
|
+
"name": "freshness",
|
|
16228
|
+
"description": "The freshness of the component data",
|
|
16229
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
16230
|
+
"default": "\"\\\"fresh\\\"\""
|
|
16231
16231
|
},
|
|
16232
16232
|
{
|
|
16233
16233
|
"name": "item-count",
|
|
@@ -16275,23 +16275,23 @@
|
|
|
16275
16275
|
"default": "\"default\""
|
|
16276
16276
|
},
|
|
16277
16277
|
{
|
|
16278
|
-
"name": "
|
|
16279
|
-
"attribute": "
|
|
16280
|
-
"description": "The
|
|
16281
|
-
"type": "
|
|
16282
|
-
"default": "\"clean\""
|
|
16278
|
+
"name": "freshnessStaleButtonText",
|
|
16279
|
+
"attribute": "freshness-stale-button-text",
|
|
16280
|
+
"description": "The button text in the overlay when 'stale'",
|
|
16281
|
+
"type": "string"
|
|
16283
16282
|
},
|
|
16284
16283
|
{
|
|
16285
|
-
"name": "
|
|
16286
|
-
"attribute": "
|
|
16287
|
-
"description": "The text
|
|
16284
|
+
"name": "freshnessStaleText",
|
|
16285
|
+
"attribute": "freshness-stale-text",
|
|
16286
|
+
"description": "The text message in the overlay when 'stale'",
|
|
16288
16287
|
"type": "string"
|
|
16289
16288
|
},
|
|
16290
16289
|
{
|
|
16291
|
-
"name": "
|
|
16292
|
-
"attribute": "
|
|
16293
|
-
"description": "The
|
|
16294
|
-
"type": "
|
|
16290
|
+
"name": "freshness",
|
|
16291
|
+
"attribute": "freshness",
|
|
16292
|
+
"description": "The freshness of the component data",
|
|
16293
|
+
"type": "'fresh'|'stale'|'loading'",
|
|
16294
|
+
"default": "\"\\\"fresh\\\"\""
|
|
16295
16295
|
},
|
|
16296
16296
|
{
|
|
16297
16297
|
"name": "itemCount",
|
|
@@ -16314,8 +16314,8 @@
|
|
|
16314
16314
|
],
|
|
16315
16315
|
"events": [
|
|
16316
16316
|
{
|
|
16317
|
-
"name": "d2l-table-
|
|
16318
|
-
"description": "Dispatched when the action button on the
|
|
16317
|
+
"name": "d2l-table-stale-button-click",
|
|
16318
|
+
"description": "Dispatched when the action button on the stale overlay is clicked"
|
|
16319
16319
|
}
|
|
16320
16320
|
],
|
|
16321
16321
|
"slots": [
|
package/lang/ar.js
CHANGED
|
@@ -2,6 +2,7 @@ export default {
|
|
|
2
2
|
"components.alert.close": "إغلاق التنبيه",
|
|
3
3
|
"components.backdrop-loading.loadingAnnouncement": "جارٍ التحميل",
|
|
4
4
|
"components.backdrop-loading.loadingCompleteAnnouncement": "اكتمل التحميل.",
|
|
5
|
+
"components.backdrop-stale-overlay.message": "This data is out of date.",
|
|
5
6
|
"components.breadcrumbs.breadcrumb": "مسار التنقل",
|
|
6
7
|
"components.button-add.addItem": "إضافة عنصر",
|
|
7
8
|
"components.button-copy.copied": "تم النسخ!",
|
|
@@ -135,13 +136,13 @@ export default {
|
|
|
135
136
|
"components.list-item.addItem": "إضافة عنصر",
|
|
136
137
|
"components.list-item-drag-handle.default": "إعادة ترتيب إجراء المادة لـ {name}",
|
|
137
138
|
"components.list-item-drag-handle.keyboard": "قم بإعادة ترتيب العنصر، الموضع الحالي {currentPosition} من {size}. لنقل هذا العنصر، اضغط على سهما لأعلى أو لأسفل.",
|
|
138
|
-
"components.list-item-drag-handle.side-to-side.keyboard": "
|
|
139
|
+
"components.list-item-drag-handle.side-to-side.keyboard": "قم بإعادة ترتيب العنصر، الموضع الحالي {currentPosition} من {size}. لنقل هذا العنصر، اضغط على سهمي اليسار أو اليمين.",
|
|
139
140
|
"components.list-item-drag-handle-tooltip.enter-desc": "تبديل وضع إعادة ترتيب لوحة المفاتيح.",
|
|
140
141
|
"components.list-item-drag-handle-tooltip.enter-key": "إدخال",
|
|
141
142
|
"components.list-item-drag-handle-tooltip.left-right-desc": "غيِّر مستوى التداخل.",
|
|
142
143
|
"components.list-item-drag-handle-tooltip.left-right-key": "يسار/يمين",
|
|
143
|
-
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "
|
|
144
|
-
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "
|
|
144
|
+
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "نقل العنصر إلى اليسار أو اليمين في القائمة.",
|
|
145
|
+
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "نقل العنصر إلى اليسار أو اليمين في القائمة.",
|
|
145
146
|
"components.list-item-drag-handle-tooltip.title": "عناصر التحكم بلوحة المفاتيح لإعادة الترتيب:",
|
|
146
147
|
"components.list-item-drag-handle-tooltip.up-down-desc": "نقل المادة إلى الأعلى أو الأسفل في القائمة.",
|
|
147
148
|
"components.list-item-drag-handle-tooltip.up-down-key": "أعلى/أسفل",
|
|
@@ -155,12 +156,12 @@ export default {
|
|
|
155
156
|
"components.more-less.more": "المزيد",
|
|
156
157
|
"components.object-property-list.item-placeholder-text": "عنصر نائب",
|
|
157
158
|
"components.overflow-group.moreActions": "مزيد من الإجراءات",
|
|
158
|
-
"components.page.footer-region-label": "
|
|
159
|
+
"components.page.footer-region-label": "التذييل",
|
|
159
160
|
"components.page.header-nav-label": "الرئيسية",
|
|
160
|
-
"components.page.side-nav-divider-label": "
|
|
161
|
+
"components.page.side-nav-divider-label": "مقسّم التنقل الجانبي",
|
|
161
162
|
"components.page.side-nav-label": "جانبية",
|
|
162
|
-
"components.page.supporting-divider-label": "
|
|
163
|
-
"components.page.supporting-panel-label": "
|
|
163
|
+
"components.page.supporting-divider-label": "فاصل اللوحة الداعمة",
|
|
164
|
+
"components.page.supporting-panel-label": "داعمة",
|
|
164
165
|
"components.pageable.info":
|
|
165
166
|
`{count, plural,
|
|
166
167
|
one {{countFormatted} مادة واحد}
|
package/lang/ca.js
CHANGED
|
@@ -2,6 +2,7 @@ export default {
|
|
|
2
2
|
"components.alert.close": "Tanca l’alerta",
|
|
3
3
|
"components.backdrop-loading.loadingAnnouncement": "Carregant.",
|
|
4
4
|
"components.backdrop-loading.loadingCompleteAnnouncement": "Càrrega completa.",
|
|
5
|
+
"components.backdrop-stale-overlay.message": "This data is out of date.",
|
|
5
6
|
"components.breadcrumbs.breadcrumb": "Breadcrumb",
|
|
6
7
|
"components.button-add.addItem": "Afegeix element",
|
|
7
8
|
"components.button-copy.copied": "S’ha copiat!",
|
|
@@ -135,13 +136,13 @@ export default {
|
|
|
135
136
|
"components.list-item.addItem": "Afegeix element",
|
|
136
137
|
"components.list-item-drag-handle.default": "Acció de reordenar l’element per a {name}",
|
|
137
138
|
"components.list-item-drag-handle.keyboard": "Reordenar element, posició actual {currentPosition} de {size}. Per moure aquest element, premeu les fletxes amunt o avall.",
|
|
138
|
-
"components.list-item-drag-handle.side-to-side.keyboard": "
|
|
139
|
+
"components.list-item-drag-handle.side-to-side.keyboard": "Torneu a ordenar l’element, posició actual {currentPosition} de {size}. Per moure aquest element, premeu les fletxes esquerra o dreta.",
|
|
139
140
|
"components.list-item-drag-handle-tooltip.enter-desc": "Canviar el mode de reordenació del teclat.",
|
|
140
141
|
"components.list-item-drag-handle-tooltip.enter-key": "Introduir",
|
|
141
142
|
"components.list-item-drag-handle-tooltip.left-right-desc": "Canviar el nivell d’anidament.",
|
|
142
143
|
"components.list-item-drag-handle-tooltip.left-right-key": "Esquerra/Dreta",
|
|
143
|
-
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "
|
|
144
|
-
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "
|
|
144
|
+
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "Passa l’element a l’esquerra o dreta de la llista.",
|
|
145
|
+
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "Passa l’element a l’esquerra o dreta de la llista.",
|
|
145
146
|
"components.list-item-drag-handle-tooltip.title": "Controls del teclat per reordenar:",
|
|
146
147
|
"components.list-item-drag-handle-tooltip.up-down-desc": "Mou l’element amunt o avall a la llista.",
|
|
147
148
|
"components.list-item-drag-handle-tooltip.up-down-key": "Amunt/Avall",
|
|
@@ -155,12 +156,12 @@ export default {
|
|
|
155
156
|
"components.more-less.more": "més",
|
|
156
157
|
"components.object-property-list.item-placeholder-text": "Element de marcador de posició",
|
|
157
158
|
"components.overflow-group.moreActions": "Més accions",
|
|
158
|
-
"components.page.footer-region-label": "
|
|
159
|
+
"components.page.footer-region-label": "Peu de pàgina",
|
|
159
160
|
"components.page.header-nav-label": "Principal",
|
|
160
|
-
"components.page.side-nav-divider-label": "
|
|
161
|
+
"components.page.side-nav-divider-label": "Separador de la navegació lateral",
|
|
161
162
|
"components.page.side-nav-label": "Lateral",
|
|
162
|
-
"components.page.supporting-divider-label": "
|
|
163
|
-
"components.page.supporting-panel-label": "
|
|
163
|
+
"components.page.supporting-divider-label": "Divisor del panell de suport",
|
|
164
|
+
"components.page.supporting-panel-label": "Suport",
|
|
164
165
|
"components.pageable.info":
|
|
165
166
|
`{count, plural,
|
|
166
167
|
one {{countFormatted} element}
|
package/lang/cy.js
CHANGED
|
@@ -2,6 +2,7 @@ export default {
|
|
|
2
2
|
"components.alert.close": "Cau Hysbysiad",
|
|
3
3
|
"components.backdrop-loading.loadingAnnouncement": "Wrthi’n llwytho.",
|
|
4
4
|
"components.backdrop-loading.loadingCompleteAnnouncement": "Llwytho wedi Gorffen.",
|
|
5
|
+
"components.backdrop-stale-overlay.message": "This data is out of date.",
|
|
5
6
|
"components.breadcrumbs.breadcrumb": "Briwsionyn Bara",
|
|
6
7
|
"components.button-add.addItem": "Ychwanegu Eitem",
|
|
7
8
|
"components.button-copy.copied": "Wedi’i gopïo!",
|
|
@@ -135,13 +136,13 @@ export default {
|
|
|
135
136
|
"components.list-item.addItem": "Ychwanegu Eitem",
|
|
136
137
|
"components.list-item-drag-handle.default": "Aildrefnu gweithred eitem ar gyfer {name}",
|
|
137
138
|
"components.list-item-drag-handle.keyboard": "Aildrefnu eitemau, safle presennol {currentPosition} allan o {size}. I symud yr eitem hon, pwyswch y saeth i fyny neu’r saeth i lawr.",
|
|
138
|
-
"components.list-item-drag-handle.side-to-side.keyboard": "
|
|
139
|
+
"components.list-item-drag-handle.side-to-side.keyboard": "Ail-drefnu eitem, safle cyfredol {currentPosition} o {size}. I symud yr eitem hon, pwyswch y saethau chwith neu dde.",
|
|
139
140
|
"components.list-item-drag-handle-tooltip.enter-desc": "Toglo’r modd aildrefnu bysellfwrdd.",
|
|
140
141
|
"components.list-item-drag-handle-tooltip.enter-key": "Nodi",
|
|
141
142
|
"components.list-item-drag-handle-tooltip.left-right-desc": "Newid y lefel nythu.",
|
|
142
143
|
"components.list-item-drag-handle-tooltip.left-right-key": "Chwith/De",
|
|
143
|
-
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "
|
|
144
|
-
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "
|
|
144
|
+
"components.list-item-drag-handle-tooltip.side-to-side.left-right-desc": "Symud eitem i’r chwith neu dde yn y rhestr.",
|
|
145
|
+
"components.list-item-drag-handle-tooltip.side-to-side.up-down-desc": "Symud eitem i’r chwith neu dde yn y rhestr.",
|
|
145
146
|
"components.list-item-drag-handle-tooltip.title": "Rheolaethau bysellfwrdd ar gyfer aildrefnu:",
|
|
146
147
|
"components.list-item-drag-handle-tooltip.up-down-desc": "Symud yr eitem i fyny neu i lawr yn y rhestr.",
|
|
147
148
|
"components.list-item-drag-handle-tooltip.up-down-key": "I Fyny/I Lawr",
|
|
@@ -155,12 +156,12 @@ export default {
|
|
|
155
156
|
"components.more-less.more": "mwy",
|
|
156
157
|
"components.object-property-list.item-placeholder-text": "Eitem Dalfan",
|
|
157
158
|
"components.overflow-group.moreActions": "Rhagor o Gamau Gweithredu",
|
|
158
|
-
"components.page.footer-region-label": "
|
|
159
|
+
"components.page.footer-region-label": "Troedyn",
|
|
159
160
|
"components.page.header-nav-label": "Prif",
|
|
160
|
-
"components.page.side-nav-divider-label": "
|
|
161
|
+
"components.page.side-nav-divider-label": "Raniwr Llywio Ochr",
|
|
161
162
|
"components.page.side-nav-label": "Ochr",
|
|
162
|
-
"components.page.supporting-divider-label": "
|
|
163
|
-
"components.page.supporting-panel-label": "
|
|
163
|
+
"components.page.supporting-divider-label": "Raniwr Panel Cymorth",
|
|
164
|
+
"components.page.supporting-panel-label": "Cefnogi",
|
|
164
165
|
"components.pageable.info":
|
|
165
166
|
`{count, plural,
|
|
166
167
|
one {{countFormatted} eitem}
|