@brightspace-ui/core 3.267.1 → 3.268.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 (113) hide show
  1. package/components/alert/alert-toast.js +98 -102
  2. package/components/alert/alert.js +109 -113
  3. package/components/backdrop/backdrop-dirty-overlay.js +13 -17
  4. package/components/backdrop/backdrop-loading.js +105 -109
  5. package/components/backdrop/backdrop.js +50 -54
  6. package/components/breadcrumbs/breadcrumb-current-page.js +19 -23
  7. package/components/breadcrumbs/breadcrumb.js +50 -54
  8. package/components/breadcrumbs/breadcrumbs.js +34 -38
  9. package/components/button/button-add.js +156 -164
  10. package/components/button/button-copy-mixin.js +9 -11
  11. package/components/button/button-copy.js +15 -19
  12. package/components/button/button-icon.js +110 -114
  13. package/components/button/button-move.js +153 -157
  14. package/components/button/button-split-item.js +16 -20
  15. package/components/button/button-split.js +70 -74
  16. package/components/button/button-subtle-copy.js +17 -19
  17. package/components/button/button-subtle.js +145 -149
  18. package/components/button/button-toggle.js +25 -29
  19. package/components/button/button.js +70 -74
  20. package/components/button/floating-buttons.js +63 -67
  21. package/components/calendar/calendar.js +244 -248
  22. package/components/card/card-content-meta.js +13 -15
  23. package/components/card/card-content-title.js +9 -11
  24. package/components/card/card-footer-link.js +76 -80
  25. package/components/card/card-loading-shimmer.js +35 -39
  26. package/components/card/card.js +188 -192
  27. package/components/collapsible-panel/collapsible-panel-group.js +17 -21
  28. package/components/collapsible-panel/collapsible-panel-summary-item.js +27 -31
  29. package/components/collapsible-panel/collapsible-panel.js +258 -262
  30. package/components/count-badge/count-badge-icon.js +12 -16
  31. package/components/count-badge/count-badge-mixin.js +124 -128
  32. package/components/count-badge/count-badge.js +2 -4
  33. package/components/description-list/description-list-wrapper.js +27 -31
  34. package/components/dialog/dialog-confirm.js +55 -59
  35. package/components/dialog/dialog-fullscreen.js +128 -132
  36. package/components/dialog/dialog-mixin.js +39 -41
  37. package/components/dialog/dialog.js +61 -65
  38. package/components/dropdown/dropdown-button-subtle.js +21 -25
  39. package/components/dropdown/dropdown-button.js +31 -35
  40. package/components/dropdown/dropdown-context-menu.js +28 -31
  41. package/components/dropdown/dropdown-menu.js +27 -31
  42. package/components/dropdown/dropdown-more.js +23 -26
  43. package/components/dropdown/dropdown-opener-mixin.js +44 -46
  44. package/components/dropdown/dropdown-popover-mixin.js +155 -159
  45. package/components/dropdown/dropdown-tabs.js +5 -7
  46. package/components/dropdown/dropdown.js +1 -3
  47. package/components/empty-state/empty-state-action-button.js +18 -22
  48. package/components/empty-state/empty-state-action-link.js +14 -18
  49. package/components/empty-state/empty-state-illustrated.js +21 -25
  50. package/components/empty-state/empty-state-simple.js +8 -12
  51. package/components/expand-collapse/expand-collapse-content.js +48 -52
  52. package/components/filter/filter-dimension-set-date-text-value.js +34 -36
  53. package/components/filter/filter-dimension-set-date-time-range-value.js +45 -47
  54. package/components/filter/filter-dimension-set-empty-state.js +17 -19
  55. package/components/filter/filter-dimension-set-value.js +27 -29
  56. package/components/filter/filter-dimension-set.js +65 -67
  57. package/components/filter/filter-overflow-group.js +15 -19
  58. package/components/filter/filter-tags.js +16 -19
  59. package/components/filter/filter.js +115 -119
  60. package/components/focus-trap/focus-trap.js +17 -21
  61. package/components/form/form-element-mixin.js +33 -35
  62. package/components/form/form-error-summary.js +37 -42
  63. package/components/form/form.js +33 -37
  64. package/components/hierarchical-view/hierarchical-view-mixin.js +76 -80
  65. package/components/hierarchical-view/hierarchical-view.js +5 -7
  66. package/components/html-block/html-block.js +45 -49
  67. package/components/icons/icon-custom.js +20 -24
  68. package/components/icons/icon.js +20 -24
  69. package/components/icons/slotted-icon-mixin.js +16 -18
  70. package/components/inputs/input-checkbox-group.js +34 -38
  71. package/components/inputs/input-checkbox.js +106 -110
  72. package/components/inputs/input-color.js +142 -148
  73. package/components/inputs/input-date-range.js +90 -94
  74. package/components/inputs/input-date-time-range-to.js +70 -74
  75. package/components/inputs/input-date-time-range.js +110 -115
  76. package/components/inputs/input-date-time.js +75 -79
  77. package/components/inputs/input-date.js +101 -105
  78. package/components/inputs/input-fieldset.js +37 -43
  79. package/components/inputs/input-group.js +10 -12
  80. package/components/inputs/input-inline-help.js +4 -6
  81. package/components/inputs/input-number.js +112 -118
  82. package/components/inputs/input-percent.js +52 -58
  83. package/components/inputs/input-radio-group.js +45 -49
  84. package/components/inputs/input-radio-spacer.js +11 -13
  85. package/components/inputs/input-radio.js +62 -66
  86. package/components/inputs/input-search.js +63 -68
  87. package/components/inputs/input-select-styles.js +30 -25
  88. package/components/inputs/input-text.js +245 -251
  89. package/components/inputs/input-textarea.js +128 -132
  90. package/components/inputs/input-time-range.js +100 -104
  91. package/components/inputs/input-time.js +107 -113
  92. package/components/link/link-mixin.js +37 -41
  93. package/components/link/link.js +113 -119
  94. package/components/list/list-controls.js +25 -29
  95. package/components/list/list-item-button-mixin.js +10 -12
  96. package/components/list/list-item-checkbox-mixin.js +35 -37
  97. package/components/list/list-item-content.js +33 -35
  98. package/components/list/list-item-drag-drop-mixin.js +45 -47
  99. package/components/list/list-item-drag-handle.js +80 -84
  100. package/components/list/list-item-drag-image.js +77 -81
  101. package/components/list/list-item-expand-collapse-mixin.js +17 -19
  102. package/components/list/list-item-generic-layout.js +222 -226
  103. package/components/list/list-item-link-mixin.js +10 -12
  104. package/components/list/list-item-mixin.js +68 -70
  105. package/components/list/list-item-nav-mixin.js +17 -19
  106. package/components/list/list-item-placement-marker.js +65 -67
  107. package/components/list/list-item-role-mixin.js +9 -11
  108. package/components/list/list-item.js +7 -9
  109. package/components/list/list.js +121 -125
  110. package/components/loading-spinner/loading-spinner.js +93 -97
  111. package/custom-elements.json +1920 -6694
  112. package/helpers/focus.js +5 -1
  113. package/package.json +3 -2
@@ -8,44 +8,42 @@ import { SkeletonMixin } from '../skeleton/skeleton-mixin.js';
8
8
 
9
9
  export const ListItemCheckboxMixin = superclass => class extends SkeletonMixin(superclass) {
10
10
 
11
- static get properties() {
12
- return {
13
- /**
14
- * **Selection:** Disables selection
15
- * @type {boolean}
16
- */
17
- selectionDisabled: { type: Boolean, attribute: 'selection-disabled', reflect: true },
18
- /**
19
- * **Selection:** Tooltip text when selection is disabled
20
- * @type {string}
21
- */
22
- selectionDisabledTooltip: { type: String, attribute: 'selection-disabled-tooltip' },
23
- /**
24
- * **Selection:** Value to identify item if selectable
25
- * @type {string}
26
- */
27
- key: { type: String, reflect: true },
28
- /**
29
- * **Selection:** Indicates an input should be rendered for selecting the item
30
- * @type {boolean}
31
- */
32
- selectable: { type: Boolean },
33
- /**
34
- * **Selection:** Whether the item is selected
35
- * @type {boolean}
36
- */
37
- selected: { type: Boolean, reflect: true },
38
- /**
39
- * Private. The selection info (set by the selection component).
40
- * @ignore
41
- */
42
- selectionInfo: { type: Object, attribute: false },
43
- _hoveringSelection: { type: Boolean, attribute: '_hovering-selection', reflect: true }
44
- };
45
- }
11
+ static properties = {
12
+ /**
13
+ * **Selection:** Disables selection
14
+ * @type {boolean}
15
+ */
16
+ selectionDisabled: { type: Boolean, attribute: 'selection-disabled', reflect: true },
17
+ /**
18
+ * **Selection:** Tooltip text when selection is disabled
19
+ * @type {string}
20
+ */
21
+ selectionDisabledTooltip: { type: String, attribute: 'selection-disabled-tooltip' },
22
+ /**
23
+ * **Selection:** Value to identify item if selectable
24
+ * @type {string}
25
+ */
26
+ key: { type: String, reflect: true },
27
+ /**
28
+ * **Selection:** Indicates an input should be rendered for selecting the item
29
+ * @type {boolean}
30
+ */
31
+ selectable: { type: Boolean },
32
+ /**
33
+ * **Selection:** Whether the item is selected
34
+ * @type {boolean}
35
+ */
36
+ selected: { type: Boolean, reflect: true },
37
+ /**
38
+ * Private. The selection info (set by the selection component).
39
+ * @ignore
40
+ */
41
+ selectionInfo: { type: Object, attribute: false },
42
+ _hoveringSelection: { type: Boolean, attribute: '_hovering-selection', reflect: true }
43
+ };
46
44
 
47
45
  static get styles() {
48
- const styles = [ css`
46
+ const styles = [css`
49
47
  .d2l-checkbox-action {
50
48
  cursor: pointer;
51
49
  display: block;
@@ -61,7 +59,7 @@ export const ListItemCheckboxMixin = superclass => class extends SkeletonMixin(s
61
59
  :host([layout="tile"]) .bump-inline {
62
60
  margin-inline-start: 2rem !important;
63
61
  }
64
- ` ];
62
+ `];
65
63
 
66
64
  super.styles && styles.unshift(super.styles);
67
65
  return styles;
@@ -10,41 +10,39 @@ import { css, html, LitElement } from 'lit';
10
10
  */
11
11
  class ListItemContent extends LitElement {
12
12
 
13
- static get styles() {
14
- return [ bodySmallStyles, bodyCompactStyles, css`
15
- :host {
16
- min-width: 0;
17
- }
18
-
19
- .d2l-list-item-content-text {
20
- margin: 0;
21
- }
22
-
23
- .d2l-list-item-content-text > div {
24
- border-radius: var(--d2l-list-item-content-text-border-radius);
25
- color: var(--d2l-list-item-content-text-color);
26
- display: block; /* multi-line clamping won't work inside of inline-block in Safari - the compromise is the outline is full width */
27
- max-width: 100%;
28
- outline: var(--d2l-list-item-content-text-outline, none);
29
- outline-offset: var(--d2l-list-item-content-text-outline-offset);
30
- overflow-wrap: anywhere;
31
- text-decoration: var(--d2l-list-item-content-text-decoration, none);
32
- }
33
-
34
- .d2l-list-item-content-text-secondary {
35
- color: var(--d2l-list-item-content-text-secondary-color, var(--d2l-color-tungsten));
36
- }
37
-
38
- .d2l-list-item-content-text-supporting-info {
39
- color: var(--d2l-color-ferrite);
40
- }
41
-
42
- .d2l-list-item-content-text-secondary ::slotted(*),
43
- .d2l-list-item-content-text-supporting-info ::slotted(*) {
44
- margin-top: 0.15rem;
45
- }
46
- `];
47
- }
13
+ static styles = [bodySmallStyles, bodyCompactStyles, css`
14
+ :host {
15
+ min-width: 0;
16
+ }
17
+
18
+ .d2l-list-item-content-text {
19
+ margin: 0;
20
+ }
21
+
22
+ .d2l-list-item-content-text > div {
23
+ border-radius: var(--d2l-list-item-content-text-border-radius);
24
+ color: var(--d2l-list-item-content-text-color);
25
+ display: block; /* multi-line clamping won't work inside of inline-block in Safari - the compromise is the outline is full width */
26
+ max-width: 100%;
27
+ outline: var(--d2l-list-item-content-text-outline, none);
28
+ outline-offset: var(--d2l-list-item-content-text-outline-offset);
29
+ overflow-wrap: anywhere;
30
+ text-decoration: var(--d2l-list-item-content-text-decoration, none);
31
+ }
32
+
33
+ .d2l-list-item-content-text-secondary {
34
+ color: var(--d2l-list-item-content-text-secondary-color, var(--d2l-color-tungsten));
35
+ }
36
+
37
+ .d2l-list-item-content-text-supporting-info {
38
+ color: var(--d2l-color-ferrite);
39
+ }
40
+
41
+ .d2l-list-item-content-text-secondary ::slotted(*),
42
+ .d2l-list-item-content-text-supporting-info ::slotted(*) {
43
+ margin-top: 0.15rem;
44
+ }
45
+ `];
48
46
 
49
47
  render() {
50
48
  return html`
@@ -248,55 +248,53 @@ export class NewPositionEventDetails {
248
248
 
249
249
  export const ListItemDragDropMixin = superclass => class extends superclass {
250
250
 
251
- static get properties() {
252
- return {
253
- /**
254
- * **Drag & drop:** Disables keyboard dragging interaction. If draggable, a keyboard alternative should be provided for the dragging functionality.
255
- * @type {boolean}
256
- */
257
- keyboardDragDisabled: { type: Boolean, attribute: 'keyboard-drag-disabled' },
258
- /**
259
- * **Drag & drop:** Whether the item is draggable
260
- * @type {boolean}
261
- */
262
- // eslint-disable-next-line lit/no-native-attributes
263
- draggable: { type: Boolean, reflect: true },
264
- /**
265
- * @ignore
266
- */
267
- dragging: { type: Boolean, reflect: true },
268
- /**
269
- * **Drag & drop:** The drag-handle label for assistive technology. If implementing drag & drop, you should change this to dynamically announce what the drag-handle is moving for assistive technology in keyboard mode.
270
- * @type {string}
271
- */
272
- dragHandleText: { type: String, attribute: 'drag-handle-text' },
273
- /**
274
- * **Drag & drop:** Whether nested items can be dropped on this item
275
- * @type {boolean}
276
- */
277
- dropNested: { type: Boolean, attribute: 'drop-nested' },
278
- /**
279
- * **Drag & drop:** Text to drag and drop
280
- * @type {string}
281
- */
282
- dropText: { type: String, attribute: 'drop-text' },
283
- /**
284
- * Value to identify item if selectable
285
- * @type {string}
286
- */
287
- key: { type: String, reflect: true },
288
- _dragHandleShowAlways: { type: Boolean, attribute: '_drag-handle-show-always', reflect: true },
289
- _draggingOver: { type: Boolean },
290
- _dropLocation: { type: Number, reflect: true, attribute: '_drop-location' },
291
- _focusingDragHandle: { type: Boolean },
292
- _hovering: { type: Boolean },
293
- _keyboardActive: { type: Boolean },
294
- _keyboardTextInfo: { type: Object }
295
- };
296
- }
251
+ static properties = {
252
+ /**
253
+ * **Drag & drop:** Disables keyboard dragging interaction. If draggable, a keyboard alternative should be provided for the dragging functionality.
254
+ * @type {boolean}
255
+ */
256
+ keyboardDragDisabled: { type: Boolean, attribute: 'keyboard-drag-disabled' },
257
+ /**
258
+ * **Drag & drop:** Whether the item is draggable
259
+ * @type {boolean}
260
+ */
261
+ // eslint-disable-next-line lit/no-native-attributes
262
+ draggable: { type: Boolean, reflect: true },
263
+ /**
264
+ * @ignore
265
+ */
266
+ dragging: { type: Boolean, reflect: true },
267
+ /**
268
+ * **Drag & drop:** The drag-handle label for assistive technology. If implementing drag & drop, you should change this to dynamically announce what the drag-handle is moving for assistive technology in keyboard mode.
269
+ * @type {string}
270
+ */
271
+ dragHandleText: { type: String, attribute: 'drag-handle-text' },
272
+ /**
273
+ * **Drag & drop:** Whether nested items can be dropped on this item
274
+ * @type {boolean}
275
+ */
276
+ dropNested: { type: Boolean, attribute: 'drop-nested' },
277
+ /**
278
+ * **Drag & drop:** Text to drag and drop
279
+ * @type {string}
280
+ */
281
+ dropText: { type: String, attribute: 'drop-text' },
282
+ /**
283
+ * Value to identify item if selectable
284
+ * @type {string}
285
+ */
286
+ key: { type: String, reflect: true },
287
+ _dragHandleShowAlways: { type: Boolean, attribute: '_drag-handle-show-always', reflect: true },
288
+ _draggingOver: { type: Boolean },
289
+ _dropLocation: { type: Number, reflect: true, attribute: '_drop-location' },
290
+ _focusingDragHandle: { type: Boolean },
291
+ _hovering: { type: Boolean },
292
+ _keyboardActive: { type: Boolean },
293
+ _keyboardTextInfo: { type: Object }
294
+ };
297
295
 
298
296
  static get styles() {
299
- const styles = [ css`
297
+ const styles = [css`
300
298
  :host {
301
299
  display: block;
302
300
  position: relative;
@@ -47,91 +47,87 @@ export const resetDisplayedTooltip = () => {
47
47
  */
48
48
  class ListItemDragHandle extends LocalizeCoreElement(FocusMixin(LitElement)) {
49
49
 
50
- static get properties() {
51
- return {
52
- /**
53
- * Disables the handle
54
- * @type {boolean}
55
- */
56
- disabled: { type: Boolean, reflect: true },
57
- /**
58
- * Additional context information for accessibility
59
- * @type {object}
60
- */
61
- keyboardTextInfo: { type: Object, attribute: 'keyboard-text-info' },
62
- /**
63
- * The drag-handle label for assistive technology
64
- * @type {string}
65
- */
66
- text: { type: String },
67
- /**
68
- * When layout = tile, the drag handle become horizontal
69
- */
70
- layout: { type: String },
71
- _displayKeyboardTooltip: { type: Boolean },
72
- _keyboardActive: { type: Boolean }
73
- };
74
- }
75
-
76
- static get styles() {
77
- return [ buttonStyles, css`
78
- :host {
79
- display: flex;
80
- margin: 0.25rem;
81
- }
82
- :host([hidden]) {
83
- display: none;
84
- }
85
- .d2l-list-item-drag-handle-dragger-button {
86
- background-color: unset;
87
- display: block;
88
- margin: 0;
89
- min-height: 1.8rem;
90
- padding: 0;
91
- width: 0.9rem;
92
- }
93
- /* Firefox includes a hidden border which messes up button dimensions */
94
- button::-moz-focus-inner {
95
- border: 0;
96
- }
97
- .d2l-button-dragger-icon {
98
- height: 0.9rem;
99
- width: 0.9rem;
100
- }
101
- button,
102
- button[disabled]:hover,
103
- button[disabled]:focus {
104
- background-color: var(--d2l-color-gypsum);
105
- color: var(--d2l-color-ferrite);
106
- }
107
- .d2l-list-item-drag-handle-dragger-button:hover,
108
- .d2l-list-item-drag-handle-dragger-button:focus {
109
- background-color: var(--d2l-color-mica);
110
- }
111
- button[disabled] {
112
- cursor: default;
113
- opacity: 0.5;
114
- }
115
- d2l-tooltip > div {
116
- font-weight: 700;
117
- }
118
- d2l-tooltip > ul {
119
- padding-inline-start: 1rem;
120
- }
121
- .d2l-list-item-drag-handle-tooltip-key {
122
- font-weight: 700;
123
- }
124
- d2l-button-move {
125
- pointer-events: auto; /* required since ancestors may set point-events: none; (see generic layout) */
126
- }
50
+ static properties = {
51
+ /**
52
+ * Disables the handle
53
+ * @type {boolean}
54
+ */
55
+ disabled: { type: Boolean, reflect: true },
56
+ /**
57
+ * Additional context information for accessibility
58
+ * @type {object}
59
+ */
60
+ keyboardTextInfo: { type: Object, attribute: 'keyboard-text-info' },
61
+ /**
62
+ * The drag-handle label for assistive technology
63
+ * @type {string}
64
+ */
65
+ text: { type: String },
66
+ /**
67
+ * When layout = tile, the drag handle become horizontal
68
+ */
69
+ layout: { type: String },
70
+ _displayKeyboardTooltip: { type: Boolean },
71
+ _keyboardActive: { type: Boolean }
72
+ };
73
+
74
+ static styles = [buttonStyles, css`
75
+ :host {
76
+ display: flex;
77
+ margin: 0.25rem;
78
+ }
79
+ :host([hidden]) {
80
+ display: none;
81
+ }
82
+ .d2l-list-item-drag-handle-dragger-button {
83
+ background-color: unset;
84
+ display: block;
85
+ margin: 0;
86
+ min-height: 1.8rem;
87
+ padding: 0;
88
+ width: 0.9rem;
89
+ }
90
+ /* Firefox includes a hidden border which messes up button dimensions */
91
+ button::-moz-focus-inner {
92
+ border: 0;
93
+ }
94
+ .d2l-button-dragger-icon {
95
+ height: 0.9rem;
96
+ width: 0.9rem;
97
+ }
98
+ button,
99
+ button[disabled]:hover,
100
+ button[disabled]:focus {
101
+ background-color: var(--d2l-color-gypsum);
102
+ color: var(--d2l-color-ferrite);
103
+ }
104
+ .d2l-list-item-drag-handle-dragger-button:hover,
105
+ .d2l-list-item-drag-handle-dragger-button:focus {
106
+ background-color: var(--d2l-color-mica);
107
+ }
108
+ button[disabled] {
109
+ cursor: default;
110
+ opacity: 0.5;
111
+ }
112
+ d2l-tooltip > div {
113
+ font-weight: 700;
114
+ }
115
+ d2l-tooltip > ul {
116
+ padding-inline-start: 1rem;
117
+ }
118
+ .d2l-list-item-drag-handle-tooltip-key {
119
+ font-weight: 700;
120
+ }
121
+ d2l-button-move {
122
+ pointer-events: auto; /* required since ancestors may set point-events: none; (see generic layout) */
123
+ }
127
124
 
128
- :host([layout="tile"]) {
129
- align-items: center;
130
- display: flex;
131
- height: 39px;
132
- }
133
- `];
134
- }
125
+ :host([layout="tile"]) {
126
+ align-items: center;
127
+ display: flex;
128
+ height: 39px;
129
+ }
130
+ `];
135
131
 
136
132
  constructor() {
137
133
  super();
@@ -8,88 +8,84 @@ import { SkeletonMixin } from '../skeleton/skeleton-mixin.js';
8
8
 
9
9
  class ListItemDragImage extends LocalizeCoreElement(SkeletonMixin(LitElement)) {
10
10
 
11
- static get properties() {
12
- return {
13
- /**
14
- * @ignore
15
- */
16
- count: { type: Number },
17
- includePlusSign: { type: Boolean, attribute: 'include-plus-sign' }
18
- };
19
- }
11
+ static properties = {
12
+ /**
13
+ * @ignore
14
+ */
15
+ count: { type: Number },
16
+ includePlusSign: { type: Boolean, attribute: 'include-plus-sign' }
17
+ };
20
18
 
21
- static get styles() {
22
- return [ super.styles, bodySmallStyles, css`
23
- :host {
24
- display: block;
25
- height: 70px;
26
- inset-inline-start: -10000px;
27
- position: absolute;
28
- width: 340px;
29
- z-index: 0;
30
- }
31
- :host([hidden]) {
32
- display: none;
33
- }
34
- .first, .second, .third {
35
- background-color: white;
36
- border: 1px solid var(--d2l-color-mica);
37
- border-radius: 4px;
38
- box-sizing: border-box;
39
- height: 100%;
40
- position: absolute;
41
- width: 100%;
42
- }
43
- .first {
44
- align-items: start;
45
- display: flex;
46
- padding: 16px 8px;
47
- }
48
- .second {
49
- margin-inline-start: 6px;
50
- margin-top: 6px;
51
- z-index: -1;
52
- }
53
- .third {
54
- margin-inline-start: 12px;
55
- margin-top: 12px;
56
- z-index: -2;
57
- }
58
- .text {
59
- width: 100%;
60
- }
61
- .line-1 {
62
- height: 24px;
63
- margin-bottom: 4px;
64
- width: 100%;
65
- }
66
- .line-2 {
67
- height: 16px;
68
- width: 25%;
69
- }
70
- d2l-input-checkbox {
71
- line-height: 0;
72
- margin: 0;
73
- margin-inline-start: 16px;
74
- }
75
- .count {
76
- background-color: var(--d2l-color-celestine);
77
- border-radius: 0.7rem;
78
- box-sizing: border-box;
79
- color: white;
80
- left: 26px;
81
- min-width: 1.4rem;
82
- padding: 0.25rem 0.4rem;
83
- position: absolute;
84
- text-align: center;
85
- top: 30px;
86
- z-index: 998; /* must be higher than the skeleton z-index */
87
- }
88
- .count:dir(rtl) {
89
- left: 14px;
90
- }
91
- `];
92
- }
19
+ static styles = [super.styles, bodySmallStyles, css`
20
+ :host {
21
+ display: block;
22
+ height: 70px;
23
+ inset-inline-start: -10000px;
24
+ position: absolute;
25
+ width: 340px;
26
+ z-index: 0;
27
+ }
28
+ :host([hidden]) {
29
+ display: none;
30
+ }
31
+ .first, .second, .third {
32
+ background-color: white;
33
+ border: 1px solid var(--d2l-color-mica);
34
+ border-radius: 4px;
35
+ box-sizing: border-box;
36
+ height: 100%;
37
+ position: absolute;
38
+ width: 100%;
39
+ }
40
+ .first {
41
+ align-items: start;
42
+ display: flex;
43
+ padding: 16px 8px;
44
+ }
45
+ .second {
46
+ margin-inline-start: 6px;
47
+ margin-top: 6px;
48
+ z-index: -1;
49
+ }
50
+ .third {
51
+ margin-inline-start: 12px;
52
+ margin-top: 12px;
53
+ z-index: -2;
54
+ }
55
+ .text {
56
+ width: 100%;
57
+ }
58
+ .line-1 {
59
+ height: 24px;
60
+ margin-bottom: 4px;
61
+ width: 100%;
62
+ }
63
+ .line-2 {
64
+ height: 16px;
65
+ width: 25%;
66
+ }
67
+ d2l-input-checkbox {
68
+ line-height: 0;
69
+ margin: 0;
70
+ margin-inline-start: 16px;
71
+ }
72
+ .count {
73
+ background-color: var(--d2l-color-celestine);
74
+ border-radius: 0.7rem;
75
+ box-sizing: border-box;
76
+ color: white;
77
+ left: 26px;
78
+ min-width: 1.4rem;
79
+ padding: 0.25rem 0.4rem;
80
+ position: absolute;
81
+ text-align: center;
82
+ top: 30px;
83
+ z-index: 998; /* must be higher than the skeleton z-index */
84
+ }
85
+ .count:dir(rtl) {
86
+ left: 14px;
87
+ }
88
+ `];
93
89
 
94
90
  constructor() {
95
91
  super();
@@ -10,26 +10,24 @@ const dragHoverDropTime = 1000;
10
10
 
11
11
  export const ListItemExpandCollapseMixin = superclass => class extends SkeletonMixin(superclass) {
12
12
 
13
- static get properties() {
14
- return {
15
- /**
16
- * Whether to show the expand collapse toggle
17
- * @type {boolean}
18
- */
19
- expandable: { type: Boolean },
20
- /**
21
- * Default state for expand collapse toggle - if not set, collapsed will be the default state
22
- * @type {boolean}
23
- */
24
- expanded: { type: Boolean, reflect: true },
25
- _siblingHasNestedItems: { state: true },
26
- _renderExpandCollapseSlot: { type: Boolean, reflect: true, attribute: '_render-expand-collapse-slot' },
27
- _showNestedLoadingSpinner: { state: true }
28
- };
29
- }
13
+ static properties = {
14
+ /**
15
+ * Whether to show the expand collapse toggle
16
+ * @type {boolean}
17
+ */
18
+ expandable: { type: Boolean },
19
+ /**
20
+ * Default state for expand collapse toggle - if not set, collapsed will be the default state
21
+ * @type {boolean}
22
+ */
23
+ expanded: { type: Boolean, reflect: true },
24
+ _siblingHasNestedItems: { state: true },
25
+ _renderExpandCollapseSlot: { type: Boolean, reflect: true, attribute: '_render-expand-collapse-slot' },
26
+ _showNestedLoadingSpinner: { state: true }
27
+ };
30
28
 
31
29
  static get styles() {
32
- const styles = [ css`
30
+ const styles = [css`
33
31
  :host {
34
32
  --d2l-expand-collapse-slot-transition-duration: 0.3s;
35
33
  }
@@ -66,7 +64,7 @@ export const ListItemExpandCollapseMixin = superclass => class extends SkeletonM
66
64
  transition: width var(--d2l-expand-collapse-slot-transition-duration) cubic-bezier(0, 0.7, 0.5, 1);
67
65
  }
68
66
  }
69
- ` ];
67
+ `];
70
68
 
71
69
  super.styles && styles.unshift(super.styles);
72
70
  return styles;