@brightspace-ui/core 3.133.1 → 3.134.2

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.
@@ -236,7 +236,6 @@ class Filter extends FocusMixin(LocalizeCoreElement(RtlMixin(LitElement))) {
236
236
  this._displayKeyboardTooltip = false;
237
237
  this._minWidth = 285;
238
238
  this._openedDimensions = [];
239
- this._resized = false;
240
239
  this._totalAppliedCount = 0;
241
240
 
242
241
  this._activeFilters = null;
@@ -675,7 +674,6 @@ class Filter extends FocusMixin(LocalizeCoreElement(RtlMixin(LitElement))) {
675
674
  this._changeEventsToDispatch = new Map();
676
675
  clearTimeout(this._changeEventTimeout);
677
676
  this._activeFiltersSubscribers.updateSubscribers();
678
- this.#handleSearchLayoutUpdated(); // in order to update dropdown position if count-badge size changes pointer position
679
677
  }
680
678
 
681
679
  _dispatchChangeEventValueDataChange(dimension, value, valueKey) {
@@ -70,7 +70,7 @@ The list components are fairly complex and aim to be usable by all our users. In
70
70
 
71
71
  * When the `grid` attribute is used on the `d2l-list` component, it enables the list to follow the [Grid Pattern](https://www.w3.org/WAI/ARIA/apg/patterns/grid/). More details on this are [below](#aria-layout-grid).
72
72
 
73
- * When using the `d2l-list-item-nav-button` component and/or mixin, usage of the `current` attribute adds the `aria-current` attribute to "page" for the `current` item and "location" for any parent and ancestors of the item. The components work together to keep these attributes up-to-date on subsequent selection.
73
+ * When using the `d2l-list-item-nav` component and/or mixin, usage of the `current` attribute adds the `aria-current` attribute to "page" for the `current` item and "location" for any parent and ancestors of the item. The components work together to keep these attributes up-to-date on subsequent selection.
74
74
 
75
75
  * Usage of the new `current` attribute over the existing `selected` attribute corresponds to `aria-current` and also leaves open the possibility of using both `current` and selection behavior together.
76
76
 
@@ -609,23 +609,23 @@ The `d2l-list-item-button` provides the same functionality as `d2l-list-item` ex
609
609
  - `d2l-list-item-expand-collapse-toggled`: dispatched when the item's expand/collapse toggle is clicked
610
610
  <!-- docs: end hidden content -->
611
611
 
612
- ## Navigational Button List Item [d2l-list-item-nav-button]
612
+ ## Navigational List Item [d2l-list-item-nav]
613
613
 
614
- Use a `d2l-list-item-nav-button` if your list serves as a table of contents or is part of a master/details workflow. It provides the same functionality as `d2l-list-item-button` while adding navigation semantics and behaviours. Use the `current` attribute to indicate the currently selected item — see more about this in [Accessibility](#accessibility).
614
+ Use a `d2l-list-item-nav` if your list serves as a table of contents or is part of a master/details workflow. It provides the same functionality as `d2l-list-item-link` while adding navigation semantics and behaviours. Use the `current` attribute to indicate the currently selected item — see more about this in [Accessibility](#accessibility). The `action-href` attribute is required for the item to be able to be clickable.
615
615
 
616
616
  The example below also includes expand/collapse behavior in order to expand or collapse the items on subsequent clicks.
617
617
 
618
- <!-- docs: demo code properties name:d2l-list-item-nav-button sandboxTitle:'List Item Nav Button' display:block -->
618
+ <!-- docs: demo code properties name:d2l-list-item-nav sandboxTitle:'List Item Nav' display:block -->
619
619
  ```html
620
620
  <script type="module">
621
621
  import '@brightspace-ui/core/components/list/list.js';
622
- import '@brightspace-ui/core/components/list/list-item-nav-button.js';
622
+ import '@brightspace-ui/core/components/list/list-item-nav.js';
623
623
  import '@brightspace-ui/core/components/list/list-item-content.js';
624
624
  </script>
625
625
  <script>
626
- let currentItem = document.querySelector('d2l-list-item-nav-button[current]');
627
- document.addEventListener('d2l-list-item-button-click', (e) => {
628
- console.log('d2l-list-item-nav-button: click event');
626
+ let currentItem = document.querySelector('d2l-list-item-nav[current]');
627
+ document.addEventListener('d2l-list-item-link-click', (e) => {
628
+ console.log('d2l-list-item-nav: click event');
629
629
 
630
630
  if (!e.target.expandable) {
631
631
  currentItem = e.target;
@@ -642,20 +642,20 @@ The example below also includes expand/collapse behavior in order to expand or c
642
642
  </script>
643
643
 
644
644
  <d2l-list>
645
- <d2l-list-item-nav-button key="L1-1" label="Geomorphology and GIS" color="#006fbf" expandable expanded>
645
+ <d2l-list-item-nav key="L1-1" label="Geomorphology and GIS" color="#006fbf" expandable expanded action-href="https://d2l.com" prevent-navigation>
646
646
  <d2l-list-item-content>
647
647
  <div>Geomorphology and GIS </div>
648
648
  <div slot="supporting-info">This course explores the geological processes of the Earth's interior and surface. These include volcanism, earthquakes, mountain...</div>
649
649
  </d2l-list-item-content>
650
650
  <d2l-list slot="nested" grid>
651
- <d2l-list-item-nav-button key="L2-1" label="Syallabus Confirmation">
651
+ <d2l-list-item-nav key="L2-1" label="Syallabus Confirmation">
652
652
  <d2l-list-item-content>
653
653
  <div><d2l-icon style="margin-right: 0.7rem;" icon="tier2:file-document"></d2l-icon>Syallabus Confirmation</div>
654
654
  <div slot="secondary"><d2l-tooltip-help text="Due: May 2, 2023 at 2 pm">Due: May 2, 2023</d2l-tooltip-help></div>
655
655
  </d2l-list-item-content>
656
- </d2l-list-item-nav-button>
656
+ </d2l-list-item-nav>
657
657
  </d2l-list>
658
- </d2l-list-item-nav-button>
658
+ </d2l-list-item-nav>
659
659
  </d2l-list>
660
660
  ```
661
661
 
@@ -664,26 +664,35 @@ The example below also includes expand/collapse behavior in order to expand or c
664
664
 
665
665
  | Property | Type | Description |
666
666
  |---|---|---|
667
- | `button-disabled` | Boolean | Disables the primary action button |
668
667
  | `current` | Boolean | Whether the list item is the current page in a navigation context. At most one list item should have the `current` attribute at any time; this will be managed by the `list` after initial render. |
669
668
  | `draggable` | Boolean | Whether the item is draggable |
670
669
  | `drag-handle-text` | String | 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. |
670
+ | `drag-target-handle-only` | Boolean | Make the drag target the drag handle only. |
671
671
  | `drop-nested` | Boolean | Whether nested items can be dropped on this item |
672
672
  | `drop-text` | String | Text to drag and drop |
673
673
  | `expandable` | Boolean | Whether or not to show the expand/collapse toggle. |
674
674
  | `expanded` | Boolean | Whether the item is expanded. Requires `expandable` to be set. |
675
+ | `href` | String | Address of item link if navigable |
675
676
  | `key` | String | Value to identify item if selectable or draggable |
676
677
  | `label` | String | Explicitly defined label for the element |
677
678
  | `labelled-by` | String | The id of element that provides the label for this element |
679
+ | `no-primary-action` | Boolean | Whether to disable rendering the entire item as the primary action. Required if slotted content is interactive. |
678
680
  | `padding-type` | String | List item whitespace (`normal` (default), `none`)|
681
+ | `prevent-navigation` | Boolean | Whether to prevent the default navigation behavior of the link |
679
682
  | `selectable` | Boolean | Indicates an input should be rendered for selecting the item |
680
683
  | `selected` | Boolean | Whether the item is selected |
681
684
  | `selection-disabled` | Boolean | Disables selection |
682
685
  | `skeleton` | Boolean | Renders the input as a skeleton loader |
683
686
 
687
+ ### Methods
688
+
689
+ - `highlight()`: highlights the item
690
+ - `scrollToItem(alignToTop=true)`: scrolls to the item. See [Element.scrollIntoView](https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView) for definition of alignToTop.
691
+ - `scrollToAndHighlight(alignToTop=true)`: scrolls to the item and then highlights it. . See [Element.scrollIntoView](https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView) for definition of alignToTop.
692
+
684
693
  ### Events
685
694
 
686
- - `d2l-list-item-button-click`: dispatched when the item's primary button action is clicked
695
+ - `d2l-list-item-link-click`: dispatched when the item's primary link action is clicked
687
696
  - `d2l-list-item-expand-collapse-toggled`: dispatched when the item's expand/collapse toggle is clicked
688
697
  <!-- docs: end hidden content -->
689
698
 
@@ -724,17 +733,17 @@ Where the parameters correspond to the slots of `d2l-list-item`:
724
733
  - actions (TemplateResult): Secondary actions for the list item.
725
734
  - nested (TemplateResult): Optional `d2l-list` for a nested list.
726
735
 
727
- ## ListItemNavButtonMixin
736
+ ## ListItemNavMixin
728
737
 
729
- This mixin allows you to make a component into a navigational list item without requiring custom styling. All of the properties and functionality from `d2l-list-item-nav-button` (listed above) will be added to your new component.
738
+ This mixin allows you to make a component into a navigational list item without requiring custom styling. All of the properties and functionality from `d2l-list-item-nav` (listed above) will be added to your new component.
730
739
 
731
740
  ### How to use
732
741
 
733
742
  Import
734
743
  ```javascript
735
- import { ListItemNavButtonMixin } from '@brightspace-ui/core/components/list/list-item-nav-button-mixin.js';
744
+ import { ListItemNavMixin } from '@brightspace-ui/core/components/list/list-item-nav-mixin.js';
736
745
 
737
- class ListItem extends ListItemNavButtonMixin(LitElement) {
746
+ class ListItem extends ListItemNavMixin(LitElement) {
738
747
  ...
739
748
  ```
740
749
 
@@ -1,6 +1,6 @@
1
1
  import '../../icons/icon.js';
2
2
  import '../list-item-content.js';
3
- import '../list-item-nav-button.js';
3
+ import '../list-item-nav.js';
4
4
  import '../list.js';
5
5
  import '../../tooltip/tooltip-help.js';
6
6
  import { css, html, LitElement, nothing } from 'lit';
@@ -45,7 +45,7 @@ class ListDemoNav extends LitElement {
45
45
  <d2l-list
46
46
  grid
47
47
  drag-multiple
48
- @d2l-list-item-button-click="${this._handleItemClick}">
48
+ @d2l-list-item-link-click="${this._handleItemClick}">
49
49
  ${repeat(this.#list, (item) => item.key, (item) => this._renderItem(item))}
50
50
  </d2l-list>
51
51
  </div>
@@ -132,15 +132,17 @@ class ListDemoNav extends LitElement {
132
132
  _renderItem(item) {
133
133
  const hasSubList = item.items && item.items.length > 0;
134
134
  return html`
135
- <d2l-list-item-nav-button
135
+ <d2l-list-item-nav
136
136
  key="${ifDefined(item.key)}"
137
+ action-href="https://d2l.com"
137
138
  draggable
138
139
  drag-handle-text="${item.primaryText}"
139
140
  color="${ifDefined(item.color)}"
140
141
  ?expandable="${hasSubList}"
141
142
  ?expanded="${hasSubList}"
142
143
  drop-nested
143
- label="${item.primaryText}">
144
+ label="${item.primaryText}"
145
+ prevent-navigation>
144
146
  <d2l-list-item-content>
145
147
  <div>${item.hasIcon ? html`<d2l-icon icon="tier2:file-document"></d2l-icon>` : nothing}${item.primaryText}</div>
146
148
  ${item.tooltipOpenerText && item.tooltipText
@@ -154,7 +156,7 @@ class ListDemoNav extends LitElement {
154
156
  </d2l-list>`
155
157
  : nothing
156
158
  }
157
- </d2l-list-item-nav-button>
159
+ </d2l-list-item-nav>
158
160
  `;
159
161
  }
160
162
  }
@@ -8,7 +8,7 @@
8
8
  import '../../demo/demo-page.js';
9
9
  import '../../icons/icon.js';
10
10
  import '../list-item-content.js';
11
- import '../list-item-nav-button.js';
11
+ import '../list-item-nav.js';
12
12
  import '../list.js';
13
13
  import '../../tooltip/tooltip-help.js';
14
14
 
@@ -25,43 +25,43 @@
25
25
  <d2l-demo-snippet>
26
26
  <template>
27
27
  <d2l-list grid style="width: 334px;">
28
- <d2l-list-item-nav-button key="L1-1" label="Welcome!" color="#006fbf" expandable expanded>
28
+ <d2l-list-item-nav key="L1-1" label="Welcome!" color="#006fbf" expandable expanded action-href="https://d2l.com" prevent-navigation>
29
29
  <d2l-list-item-content>
30
30
  <div>Welcome!</div>
31
31
  </d2l-list-item-content>
32
32
  <d2l-list slot="nested" grid>
33
- <d2l-list-item-nav-button key="L2-1" label="Syallabus Confirmation">
33
+ <d2l-list-item-nav key="L2-1" label="Syallabus Confirmation">
34
34
  <d2l-list-item-content>
35
35
  <div><d2l-icon style="margin-right: 0.7rem;" icon="tier2:file-document"></d2l-icon>Syallabus Confirmation</div>
36
36
  <div slot="secondary"><d2l-tooltip-help text="Due: May 2, 2023 at 2 pm" style="padding: 5px;">Start: May 1, 2023 at 12:01 AM</d2l-tooltip-help></div>
37
37
  </d2l-list-item-content>
38
- </d2l-list-item-nav-button>
38
+ </d2l-list-item-nav>
39
39
  </d2l-list>
40
- </d2l-list-item-nav-button>
41
- <d2l-list-item-nav-button key="L2-2" label="Unit 1: Poetry" color="#29a6ff" expandable expanded>
40
+ </d2l-list-item-nav>
41
+ <d2l-list-item-nav key="L2-2" label="Unit 1: Poetry" color="#29a6ff" expandable expanded>
42
42
  <d2l-list-item-content>
43
43
  <div>Unit 1: Fiction</div>
44
44
  <div slot="secondary"><d2l-tooltip-help text="Due: May 2, 2023 at 5 pm" style="padding: 5px;">Starts: May 1, 2023 at 12:01 AM</d2l-tooltip-help></div>
45
45
  </d2l-list-item-content>
46
46
  <d2l-list slot="nested" grid>
47
- <d2l-list-item-nav-button key="L3-2" label="Fiction">
47
+ <d2l-list-item-nav key="L3-2" label="Fiction">
48
48
  <d2l-list-item-content>
49
49
  <div><d2l-icon style="margin-right: 0.7rem;" icon="tier2:file-document"></d2l-icon>Fiction</div>
50
50
  </d2l-list-item-content>
51
- </d2l-list-item-nav-button>
52
- <d2l-list-item-nav-button key="L3-2" label="Ten rules for writing fiction">
51
+ </d2l-list-item-nav>
52
+ <d2l-list-item-nav key="L3-2" label="Ten rules for writing fiction">
53
53
  <d2l-list-item-content>
54
54
  <div><d2l-icon style="margin-right: 0.7rem;" icon="tier2:file-document"></d2l-icon>Ten rules for writing fiction</div>
55
55
  </d2l-list-item-content>
56
- </d2l-list-item-nav-button>
56
+ </d2l-list-item-nav>
57
57
  </d2l-list>
58
- </d2l-list-item-nav-button>
58
+ </d2l-list-item-nav>
59
59
  </d2l-list>
60
60
  <script>
61
61
  (demo => {
62
- let currentItem = document.querySelector('d2l-list-item-nav-button[current]');
63
- demo.addEventListener('d2l-list-item-button-click', (e) => {
64
- console.log('d2l-list-item-nav-button: click event');
62
+ let currentItem = document.querySelector('d2l-list-item-nav[current]');
63
+ demo.addEventListener('d2l-list-item-link-click', (e) => {
64
+ console.log('d2l-list-item-nav: click event');
65
65
 
66
66
  if (!e.target.expandable) {
67
67
  currentItem = e.target;
@@ -2,6 +2,7 @@ import '../colors/colors.js';
2
2
  import { css, html, nothing } from 'lit';
3
3
  import { isInteractiveInListItemComposedPath, ListItemMixin } from './list-item-mixin.js';
4
4
  import { getUniqueId } from '../../helpers/uniqueId.js';
5
+ import { ifDefined } from 'lit/directives/if-defined.js';
5
6
 
6
7
  export const ListItemLinkMixin = superclass => class extends ListItemMixin(superclass) {
7
8
 
@@ -11,7 +12,8 @@ export const ListItemLinkMixin = superclass => class extends ListItemMixin(super
11
12
  * Address of item link if navigable
12
13
  * @type {string}
13
14
  */
14
- actionHref: { type: String, attribute: 'action-href', reflect: true }
15
+ actionHref: { type: String, attribute: 'action-href', reflect: true },
16
+ _ariaCurrent: { type: String }
15
17
  };
16
18
  }
17
19
 
@@ -91,7 +93,7 @@ export const ListItemLinkMixin = superclass => class extends ListItemMixin(super
91
93
 
92
94
  _handleLinkFocus(e) {
93
95
  if (this._getDescendantClicked(e)) {
94
- e.stopPropagation();
96
+ requestAnimationFrame(() => this._focusingPrimaryAction = false);
95
97
  }
96
98
  }
97
99
 
@@ -106,6 +108,7 @@ export const ListItemLinkMixin = superclass => class extends ListItemMixin(super
106
108
  _renderPrimaryAction(labelledBy, content) {
107
109
  if (!this.actionHref) return;
108
110
  return html`<a aria-labelledby="${labelledBy}"
111
+ aria-current="${ifDefined(this._ariaCurrent)}"
109
112
  @click="${this._handleLinkClick}"
110
113
  @focusin="${this._handleLinkFocus}"
111
114
  href="${this.actionHref}"
@@ -2,9 +2,9 @@ import '../colors/colors.js';
2
2
  import { css } from 'lit';
3
3
  import { findComposedAncestor } from '../../helpers/dom.js';
4
4
  import { getComposedActiveElement } from '../../helpers/focus.js';
5
- import { ListItemButtonMixin } from './list-item-button-mixin.js';
5
+ import { ListItemLinkMixin } from './list-item-link-mixin.js';
6
6
 
7
- export const ListItemNavButtonMixin = superclass => class extends ListItemButtonMixin(superclass) {
7
+ export const ListItemNavMixin = superclass => class extends ListItemLinkMixin(superclass) {
8
8
 
9
9
  static get properties() {
10
10
  return {
@@ -13,6 +13,11 @@ export const ListItemNavButtonMixin = superclass => class extends ListItemButton
13
13
  * @type {boolean}
14
14
  */
15
15
  current: { type: Boolean, reflect: true },
16
+ /**
17
+ * Whether to prevent the default navigation behavior of the link
18
+ * @type {boolean}
19
+ */
20
+ preventNavigation: { type: Boolean, attribute: 'prevent-navigation' },
16
21
  _childCurrent: { type: Boolean, reflect: true, attribute: '_child-current' },
17
22
  _focusingElem: { type: Boolean, reflect: true, attribute: '_focusing-elem' },
18
23
  };
@@ -21,7 +26,7 @@ export const ListItemNavButtonMixin = superclass => class extends ListItemButton
21
26
  static get styles() {
22
27
 
23
28
  const styles = [ css`
24
- :host(:not([button-disabled])) {
29
+ :host([action-href]:not([action-href=""])) {
25
30
  --d2l-list-item-content-text-color: var(--d2l-color-ferrite);
26
31
  }
27
32
  .d2l-list-item-content ::slotted(*) {
@@ -105,12 +110,13 @@ export const ListItemNavButtonMixin = superclass => class extends ListItemButton
105
110
  this.dispatchEvent(new CustomEvent('d2l-list-item-nav-set-child-current', { bubbles: true, composed: true, detail: { value: val } }));
106
111
  }
107
112
 
108
- _onButtonClick(e) {
113
+ _handleLinkClick(e) {
109
114
  if (!this._getDescendantClicked(e)) {
110
115
  this.current = true;
111
116
  this._childCurrent = false;
112
117
  }
113
- super._onButtonClick(e);
118
+ if (this.preventNavigation) e.preventDefault();
119
+ super._handleLinkClick(e);
114
120
  }
115
121
 
116
122
  #handleFocusIn(e) {
@@ -133,7 +139,7 @@ export const ListItemNavButtonMixin = superclass => class extends ListItemButton
133
139
  }
134
140
 
135
141
  async #setChildCurrent(e) {
136
- await this.updateComplete; // ensure button exists
142
+ await this.updateComplete;
137
143
  if (e.target === this) return;
138
144
  this._childCurrent = e.detail.value;
139
145
  }
@@ -1,4 +1,4 @@
1
- import { ListItemNavButtonMixin } from './list-item-nav-button-mixin.js';
1
+ import { ListItemNavMixin } from './list-item-nav-mixin.js';
2
2
  import { LitElement } from 'lit';
3
3
 
4
4
  /**
@@ -8,7 +8,7 @@ import { LitElement } from 'lit';
8
8
  * @slot actions - Actions (e.g., button icons) associated with the listen item located at the right of the item
9
9
  * @slot nested - Nested d2l-list element
10
10
  */
11
- class ListItemNavButton extends ListItemNavButtonMixin(LitElement) {
11
+ class ListItemNavButton extends ListItemNavMixin(LitElement) {
12
12
 
13
13
  render() {
14
14
  return this._renderListItem();
@@ -16,4 +16,4 @@ class ListItemNavButton extends ListItemNavButtonMixin(LitElement) {
16
16
 
17
17
  }
18
18
 
19
- customElements.define('d2l-list-item-nav-button', ListItemNavButton);
19
+ customElements.define('d2l-list-item-nav', ListItemNavButton);
@@ -1,6 +1,8 @@
1
+ import { PropertyRequiredMixin } from '../../mixins/property-required/property-required-mixin.js';
2
+
1
3
  const defaultLines = 2;
2
4
 
3
- export const MenuItemMixin = superclass => class extends superclass {
5
+ export const MenuItemMixin = superclass => class extends PropertyRequiredMixin(superclass) {
4
6
 
5
7
  static get properties() {
6
8
  return {
@@ -45,7 +47,7 @@ export const MenuItemMixin = superclass => class extends superclass {
45
47
  * REQUIRED: Text displayed by the menu item
46
48
  * @type {string}
47
49
  */
48
- text: { type: String },
50
+ text: { type: String, required: true },
49
51
  /**
50
52
  * ACCESSIBILITY: A description of the menu item that will be used by screen readers for additional context
51
53
  * @type {string}
@@ -3,6 +3,7 @@ import '../icons/icon.js';
3
3
  import './menu-item-return.js';
4
4
  import { css, html, LitElement } from 'lit';
5
5
  import { HierarchicalViewMixin } from '../hierarchical-view/hierarchical-view-mixin.js';
6
+ import { PropertyRequiredMixin } from '../../mixins/property-required/property-required-mixin.js';
6
7
  import { ThemeMixin } from '../../mixins/theme/theme-mixin.js';
7
8
 
8
9
  const keyCodes = {
@@ -20,7 +21,7 @@ const keyCodes = {
20
21
  * @slot - Menu items
21
22
  * @fires d2l-menu-resize - Dispatched when size of menu changes (e.g., when nested menu of a different size is opened)
22
23
  */
23
- class Menu extends ThemeMixin(HierarchicalViewMixin(LitElement)) {
24
+ class Menu extends PropertyRequiredMixin(ThemeMixin(HierarchicalViewMixin(LitElement))) {
24
25
 
25
26
  static get properties() {
26
27
  return {
@@ -32,7 +33,7 @@ class Menu extends ThemeMixin(HierarchicalViewMixin(LitElement)) {
32
33
  * ACCESSIBILITY: Acts as the primary label for the menu (REQUIRED for root menu)
33
34
  * @type {string}
34
35
  */
35
- label: { type: String },
36
+ label: { type: String, required: true },
36
37
  /**
37
38
  * @ignore
38
39
  */
@@ -9416,10 +9416,15 @@
9416
9416
  ]
9417
9417
  },
9418
9418
  {
9419
- "name": "d2l-list-item-nav-button",
9420
- "path": "./components/list/list-item-nav-button.js",
9419
+ "name": "d2l-list-item-nav",
9420
+ "path": "./components/list/list-item-nav.js",
9421
9421
  "description": "A component for a \"listitem\" child within a list. It provides semantics, basic layout, breakpoints for responsiveness, a link for navigation, and selection.",
9422
9422
  "attributes": [
9423
+ {
9424
+ "name": "prevent-navigation",
9425
+ "description": "Whether to prevent the default navigation behavior of the link",
9426
+ "type": "boolean"
9427
+ },
9423
9428
  {
9424
9429
  "name": "current",
9425
9430
  "description": "Whether the list item is the current page in a navigation context. At most one list item should have the `current` attribute at any time; this will be managed by the `list` after initial render.",
@@ -9427,10 +9432,9 @@
9427
9432
  "default": "false"
9428
9433
  },
9429
9434
  {
9430
- "name": "button-disabled",
9431
- "description": "Disables the primary action button",
9432
- "type": "boolean",
9433
- "default": "false"
9435
+ "name": "action-href",
9436
+ "description": "Address of item link if navigable",
9437
+ "type": "string"
9434
9438
  },
9435
9439
  {
9436
9440
  "name": "drag-target-handle-only",
@@ -9526,6 +9530,12 @@
9526
9530
  }
9527
9531
  ],
9528
9532
  "properties": [
9533
+ {
9534
+ "name": "preventNavigation",
9535
+ "attribute": "prevent-navigation",
9536
+ "description": "Whether to prevent the default navigation behavior of the link",
9537
+ "type": "boolean"
9538
+ },
9529
9539
  {
9530
9540
  "name": "current",
9531
9541
  "attribute": "current",
@@ -9534,11 +9544,10 @@
9534
9544
  "default": "false"
9535
9545
  },
9536
9546
  {
9537
- "name": "buttonDisabled",
9538
- "attribute": "button-disabled",
9539
- "description": "Disables the primary action button",
9540
- "type": "boolean",
9541
- "default": "false"
9547
+ "name": "actionHref",
9548
+ "attribute": "action-href",
9549
+ "description": "Address of item link if navigable",
9550
+ "type": "string"
9542
9551
  },
9543
9552
  {
9544
9553
  "name": "dragTargetHandleOnly",
@@ -9665,8 +9674,8 @@
9665
9674
  ],
9666
9675
  "events": [
9667
9676
  {
9668
- "name": "d2l-list-item-button-click",
9669
- "description": "Dispatched when the item's primary button action is clicked"
9677
+ "name": "d2l-list-item-link-click",
9678
+ "description": "Dispatched when the item's primary link action is clicked"
9670
9679
  },
9671
9680
  {
9672
9681
  "name": "d2l-list-item-selected",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brightspace-ui/core",
3
- "version": "3.133.1",
3
+ "version": "3.134.2",
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",