@skyux/lists 13.7.0 → 13.7.1

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.
@@ -598,11 +598,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
598
598
  */
599
599
  class SkyListSummaryComponent {
600
600
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: SkyListSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
601
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: SkyListSummaryComponent, isStandalone: true, selector: "sky-list-summary", hostDirectives: [{ directive: i1$2.SkyThemeComponentClassDirective }], ngImport: i0, template: "<ng-content select=\"sky-list-summary-item\" />\n<div class=\"sky-list-summary-content-container\">\n <ng-content />\n</div>\n", styles: [":host.sky-cmp-theme-default{--sky-override-list-summary-item-gap: 15px;--sky-override-list-summary-padding: 5px 10px 10px;--sky-override-list-summary-background-color: #ffffff;--sky-override-list-summary-border-bottom: 1px solid #cdcfd2}:host{display:flex;flex-wrap:wrap;column-gap:var(--sky-override-list-summary-item-gap, var(--sky-space-inline-xl));align-items:baseline;padding:var(--sky-override-list-summary-padding, var(--sky-comp-list_summary-space-inset-top) var(--sky-comp-list_summary-space-inset-right) var(--sky-comp-list_summary-space-inset-bottom) var(--sky-comp-list_summary-space-inset-left));background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color));border-bottom:var(--sky-override-list-summary-border-bottom, none)}.sky-list-summary-content-container{display:inline-block}\n"] }); }
601
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: SkyListSummaryComponent, isStandalone: true, selector: "sky-list-summary", hostDirectives: [{ directive: i1$2.SkyThemeComponentClassDirective }], ngImport: i0, template: "<ng-content select=\"sky-list-summary-item\" />\n<div class=\"sky-list-summary-content-container\">\n <ng-content />\n</div>\n", styles: [":host.sky-cmp-theme-default{--sky-override-list-summary-item-gap: 15px;--sky-override-list-summary-padding: 5px 10px 10px;--sky-override-list-summary-background-color: #ffffff;--sky-override-list-summary-border-bottom: 1px solid #cdcfd2}:host{display:flex;flex-wrap:wrap;column-gap:var(--sky-override-list-summary-item-gap, var(--sky-space-inline-xl));align-items:baseline;padding:var(--sky-override-list-summary-padding, var(--sky-comp-list_summary-space-inset-top) var(--sky-comp-list_summary-space-inset-right) var(--sky-comp-list_summary-space-inset-bottom) var(--sky-comp-list_summary-space-inset-left));background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color));border-bottom:var(--sky-override-list-summary-border-bottom, none)}:host-context(.sky-viewkeeper-fixed){background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color, var(--sky-background-color-page-default, var(--sky-color-background-page))))}.sky-list-summary-content-container{display:inline-block}\n"] }); }
602
602
  }
603
603
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: SkyListSummaryComponent, decorators: [{
604
604
  type: Component,
605
- args: [{ selector: 'sky-list-summary', hostDirectives: [SkyThemeComponentClassDirective], template: "<ng-content select=\"sky-list-summary-item\" />\n<div class=\"sky-list-summary-content-container\">\n <ng-content />\n</div>\n", styles: [":host.sky-cmp-theme-default{--sky-override-list-summary-item-gap: 15px;--sky-override-list-summary-padding: 5px 10px 10px;--sky-override-list-summary-background-color: #ffffff;--sky-override-list-summary-border-bottom: 1px solid #cdcfd2}:host{display:flex;flex-wrap:wrap;column-gap:var(--sky-override-list-summary-item-gap, var(--sky-space-inline-xl));align-items:baseline;padding:var(--sky-override-list-summary-padding, var(--sky-comp-list_summary-space-inset-top) var(--sky-comp-list_summary-space-inset-right) var(--sky-comp-list_summary-space-inset-bottom) var(--sky-comp-list_summary-space-inset-left));background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color));border-bottom:var(--sky-override-list-summary-border-bottom, none)}.sky-list-summary-content-container{display:inline-block}\n"] }]
605
+ args: [{ selector: 'sky-list-summary', hostDirectives: [SkyThemeComponentClassDirective], template: "<ng-content select=\"sky-list-summary-item\" />\n<div class=\"sky-list-summary-content-container\">\n <ng-content />\n</div>\n", styles: [":host.sky-cmp-theme-default{--sky-override-list-summary-item-gap: 15px;--sky-override-list-summary-padding: 5px 10px 10px;--sky-override-list-summary-background-color: #ffffff;--sky-override-list-summary-border-bottom: 1px solid #cdcfd2}:host{display:flex;flex-wrap:wrap;column-gap:var(--sky-override-list-summary-item-gap, var(--sky-space-inline-xl));align-items:baseline;padding:var(--sky-override-list-summary-padding, var(--sky-comp-list_summary-space-inset-top) var(--sky-comp-list_summary-space-inset-right) var(--sky-comp-list_summary-space-inset-bottom) var(--sky-comp-list_summary-space-inset-left));background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color));border-bottom:var(--sky-override-list-summary-border-bottom, none)}:host-context(.sky-viewkeeper-fixed){background-color:var(--sky-override-list-summary-background-color, var(--sky-comp-override-list-header-background-color, var(--sky-background-color-page-default, var(--sky-color-background-page))))}.sky-list-summary-content-container{display:inline-block}\n"] }]
606
606
  }] });
607
607
 
608
608
  class SkyListSummaryModule {
@@ -818,7 +818,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
818
818
 
819
819
  /**
820
820
  * Wraps and styles a
821
- * [`skyux-dropdown` component](https://developer.blackbaud.com/skyux-popovers/docs/dropdown).
821
+ * [`sky-dropdown` component](https://developer.blackbaud.com/skyux-popovers/docs/dropdown).
822
822
  */
823
823
  /* istanbul ignore next */
824
824
  /* Code coverage having problems with no statements in classes */
@@ -1004,13 +1004,12 @@ let nextContentId = 0;
1004
1004
  */
1005
1005
  class SkyRepeaterItemComponent {
1006
1006
  /**
1007
- * Make the first, non-disabled item tab-focusable.
1008
- * - Disabled items should not be focusable per [W3C](https://www.w3.org/TR/wai-aria-practices-1.1/#kbd_disabled_controls).
1009
- * - One item per list/grid/listbox should be tab focusable per [W3C](https://www.w3.org/TR/wai-aria-practices-1.1/#grid).
1007
+ * Make the first, non-disabled item tab-focusable in a selectable repeater.
1008
+ * - Disabled items should not be focusable per [W3C](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/#focusabilityofdisabledcontrols).
1009
+ * - One item per grid should be tab focusable per [W3C](https://www.w3.org/WAI/ARIA/apg/patterns/grid/).
1010
1010
  */
1011
1011
  get tabindex() {
1012
- return this.#repeaterService.items.filter((item) => !item.disabled)[0] ===
1013
- this
1012
+ return this.#repeaterService.items.find((item) => !item.disabled && this.selectable) === this
1014
1013
  ? 0
1015
1014
  : -1;
1016
1015
  }
@@ -1822,15 +1821,13 @@ class SkyRepeaterComponent {
1822
1821
  });
1823
1822
  }
1824
1823
  #updateRole() {
1825
- // Determine a role using a hierarchy based on https://www.w3.org/TR/wai-aria-practices-1.1/
1826
- // 1. If there are one or more interactions in the repeater item projected content, use grid.
1827
- // 2. If there are selectable repeater items and no other interactions, use listbox.
1828
- // 3. If there are no interactions, use list.
1824
+ // Determine a role using a hierarchy based on https://www.w3.org/WAI/ARIA/apg/
1825
+ // - If there are one or more interactions in the repeater item projected content or there is a context menu, use `grid`.
1826
+ // - If there are no interactions, use `list`.
1829
1827
  // Default to list role.
1830
1828
  let autoRole = 'list';
1831
1829
  const roleMap = {
1832
1830
  list: { item: 'listitem', title: undefined, content: undefined },
1833
- listbox: { item: 'option', title: undefined, content: undefined },
1834
1831
  grid: { item: 'row', title: 'rowheader', content: 'gridcell' },
1835
1832
  };
1836
1833
  // Based on https://html.spec.whatwg.org/multipage/dom.html#interactive-content
@@ -1851,14 +1848,14 @@ class SkyRepeaterComponent {
1851
1848
  '.sky-repeater[role="grid"]',
1852
1849
  ]
1853
1850
  .map((selector) => `sky-repeater-item-title ${selector}:not([hidden]), sky-repeater-item-content ${selector}:not([hidden])`)
1854
- .concat([`skyux-dropdown`])
1851
+ .concat([`sky-dropdown`])
1855
1852
  .join(', ');
1856
1853
  const hasInteraction = this.reorderable ||
1857
1854
  this.items?.some((item) => item.isCollapsible) ||
1858
1855
  this.items?.some((item) => !!item.selectable) ||
1859
1856
  !!this.#elementRef.nativeElement.querySelector(interactionSelector);
1860
1857
  if (hasInteraction) {
1861
- // If the repeater matches interaction selector https://www.w3.org/TR/wai-aria-practices-1.1/#grid
1858
+ // If the repeater matches interaction selector https://www.w3.org/WAI/ARIA/apg/patterns/grid/
1862
1859
  autoRole = 'grid';
1863
1860
  }
1864
1861
  if (this.role !== autoRole) {