@angular/material 21.0.0 → 21.0.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.
Files changed (153) hide show
  1. package/fesm2022/_animation-chunk.mjs.map +1 -1
  2. package/fesm2022/_date-formats-chunk.mjs.map +1 -1
  3. package/fesm2022/_date-range-input-harness-chunk.mjs.map +1 -1
  4. package/fesm2022/_error-options-chunk.mjs +6 -6
  5. package/fesm2022/_error-options-chunk.mjs.map +1 -1
  6. package/fesm2022/_error-state-chunk.mjs.map +1 -1
  7. package/fesm2022/_form-field-chunk.mjs +60 -30
  8. package/fesm2022/_form-field-chunk.mjs.map +1 -1
  9. package/fesm2022/_icon-button-chunk.mjs +6 -6
  10. package/fesm2022/_icon-button-chunk.mjs.map +1 -1
  11. package/fesm2022/_icon-registry-chunk.mjs +4 -22
  12. package/fesm2022/_icon-registry-chunk.mjs.map +1 -1
  13. package/fesm2022/_input-harness-chunk.mjs.map +1 -1
  14. package/fesm2022/_input-value-accessor-chunk.mjs.map +1 -1
  15. package/fesm2022/_internal-form-field-chunk.mjs +3 -3
  16. package/fesm2022/_internal-form-field-chunk.mjs.map +1 -1
  17. package/fesm2022/_line-chunk.mjs +7 -7
  18. package/fesm2022/_line-chunk.mjs.map +1 -1
  19. package/fesm2022/_option-chunk.mjs +6 -6
  20. package/fesm2022/_option-chunk.mjs.map +1 -1
  21. package/fesm2022/_option-harness-chunk.mjs.map +1 -1
  22. package/fesm2022/_option-module-chunk.mjs +4 -4
  23. package/fesm2022/_option-module-chunk.mjs.map +1 -1
  24. package/fesm2022/_pseudo-checkbox-chunk.mjs +3 -3
  25. package/fesm2022/_pseudo-checkbox-chunk.mjs.map +1 -1
  26. package/fesm2022/_pseudo-checkbox-module-chunk.mjs +4 -4
  27. package/fesm2022/_pseudo-checkbox-module-chunk.mjs.map +1 -1
  28. package/fesm2022/_public-api-chunk.mjs.map +1 -1
  29. package/fesm2022/_ripple-chunk.mjs +6 -6
  30. package/fesm2022/_ripple-chunk.mjs.map +1 -1
  31. package/fesm2022/_ripple-loader-chunk.mjs +3 -3
  32. package/fesm2022/_ripple-loader-chunk.mjs.map +1 -1
  33. package/fesm2022/_ripple-module-chunk.mjs +4 -4
  34. package/fesm2022/_ripple-module-chunk.mjs.map +1 -1
  35. package/fesm2022/_structural-styles-chunk.mjs +3 -3
  36. package/fesm2022/_structural-styles-chunk.mjs.map +1 -1
  37. package/fesm2022/_tooltip-chunk.mjs +6 -6
  38. package/fesm2022/_tooltip-chunk.mjs.map +1 -1
  39. package/fesm2022/autocomplete-testing.mjs.map +1 -1
  40. package/fesm2022/autocomplete.mjs +19 -15
  41. package/fesm2022/autocomplete.mjs.map +1 -1
  42. package/fesm2022/badge-testing.mjs.map +1 -1
  43. package/fesm2022/badge.mjs +10 -10
  44. package/fesm2022/badge.mjs.map +1 -1
  45. package/fesm2022/bottom-sheet-testing.mjs.map +1 -1
  46. package/fesm2022/bottom-sheet.mjs +10 -10
  47. package/fesm2022/bottom-sheet.mjs.map +1 -1
  48. package/fesm2022/button-testing.mjs.map +1 -1
  49. package/fesm2022/button-toggle-testing.mjs.map +1 -1
  50. package/fesm2022/button-toggle.mjs +10 -10
  51. package/fesm2022/button-toggle.mjs.map +1 -1
  52. package/fesm2022/button.mjs +13 -13
  53. package/fesm2022/button.mjs.map +1 -1
  54. package/fesm2022/card-testing.mjs.map +1 -1
  55. package/fesm2022/card.mjs +46 -46
  56. package/fesm2022/card.mjs.map +1 -1
  57. package/fesm2022/checkbox-testing.mjs.map +1 -1
  58. package/fesm2022/checkbox.mjs +7 -7
  59. package/fesm2022/checkbox.mjs.map +1 -1
  60. package/fesm2022/chips-testing.mjs.map +1 -1
  61. package/fesm2022/chips.mjs +46 -46
  62. package/fesm2022/chips.mjs.map +1 -1
  63. package/fesm2022/core-testing.mjs.map +1 -1
  64. package/fesm2022/core.mjs +12 -12
  65. package/fesm2022/core.mjs.map +1 -1
  66. package/fesm2022/datepicker-testing.mjs.map +1 -1
  67. package/fesm2022/datepicker.mjs +85 -83
  68. package/fesm2022/datepicker.mjs.map +1 -1
  69. package/fesm2022/dialog-testing.mjs.map +1 -1
  70. package/fesm2022/dialog.mjs +25 -25
  71. package/fesm2022/dialog.mjs.map +1 -1
  72. package/fesm2022/divider-testing.mjs.map +1 -1
  73. package/fesm2022/divider.mjs +7 -7
  74. package/fesm2022/divider.mjs.map +1 -1
  75. package/fesm2022/expansion-testing.mjs.map +1 -1
  76. package/fesm2022/expansion.mjs +25 -25
  77. package/fesm2022/expansion.mjs.map +1 -1
  78. package/fesm2022/form-field-testing-control.mjs.map +1 -1
  79. package/fesm2022/form-field-testing.mjs.map +1 -1
  80. package/fesm2022/form-field.mjs +4 -4
  81. package/fesm2022/form-field.mjs.map +1 -1
  82. package/fesm2022/grid-list-testing.mjs.map +1 -1
  83. package/fesm2022/grid-list.mjs +22 -22
  84. package/fesm2022/grid-list.mjs.map +1 -1
  85. package/fesm2022/icon-testing.mjs +8 -7
  86. package/fesm2022/icon-testing.mjs.map +1 -1
  87. package/fesm2022/icon.mjs +8 -7
  88. package/fesm2022/icon.mjs.map +1 -1
  89. package/fesm2022/input-testing.mjs.map +1 -1
  90. package/fesm2022/input.mjs +7 -7
  91. package/fesm2022/input.mjs.map +1 -1
  92. package/fesm2022/list-testing.mjs.map +1 -1
  93. package/fesm2022/list.mjs +49 -49
  94. package/fesm2022/list.mjs.map +1 -1
  95. package/fesm2022/material.mjs.map +1 -1
  96. package/fesm2022/menu-testing.mjs.map +1 -1
  97. package/fesm2022/menu.mjs +22 -22
  98. package/fesm2022/menu.mjs.map +1 -1
  99. package/fesm2022/paginator-testing.mjs.map +1 -1
  100. package/fesm2022/paginator.mjs +10 -10
  101. package/fesm2022/paginator.mjs.map +1 -1
  102. package/fesm2022/progress-bar-testing.mjs.map +1 -1
  103. package/fesm2022/progress-bar.mjs +7 -7
  104. package/fesm2022/progress-bar.mjs.map +1 -1
  105. package/fesm2022/progress-spinner-testing.mjs.map +1 -1
  106. package/fesm2022/progress-spinner.mjs +7 -7
  107. package/fesm2022/progress-spinner.mjs.map +1 -1
  108. package/fesm2022/radio-testing.mjs.map +1 -1
  109. package/fesm2022/radio.mjs +10 -10
  110. package/fesm2022/radio.mjs.map +1 -1
  111. package/fesm2022/select-testing.mjs.map +1 -1
  112. package/fesm2022/select.mjs +16 -16
  113. package/fesm2022/select.mjs.map +1 -1
  114. package/fesm2022/sidenav-testing.mjs.map +1 -1
  115. package/fesm2022/sidenav.mjs +22 -22
  116. package/fesm2022/sidenav.mjs.map +1 -1
  117. package/fesm2022/slide-toggle-testing.mjs.map +1 -1
  118. package/fesm2022/slide-toggle.mjs +7 -7
  119. package/fesm2022/slide-toggle.mjs.map +1 -1
  120. package/fesm2022/slider-testing.mjs.map +1 -1
  121. package/fesm2022/slider.mjs +16 -16
  122. package/fesm2022/slider.mjs.map +1 -1
  123. package/fesm2022/snack-bar-testing.mjs.map +1 -1
  124. package/fesm2022/snack-bar.mjs +22 -22
  125. package/fesm2022/snack-bar.mjs.map +1 -1
  126. package/fesm2022/sort-testing.mjs.map +1 -1
  127. package/fesm2022/sort.mjs +13 -13
  128. package/fesm2022/sort.mjs.map +1 -1
  129. package/fesm2022/stepper-testing.mjs.map +1 -1
  130. package/fesm2022/stepper.mjs +31 -31
  131. package/fesm2022/stepper.mjs.map +1 -1
  132. package/fesm2022/table-testing.mjs.map +1 -1
  133. package/fesm2022/table.mjs +55 -55
  134. package/fesm2022/table.mjs.map +1 -1
  135. package/fesm2022/tabs-testing.mjs.map +1 -1
  136. package/fesm2022/tabs.mjs +43 -43
  137. package/fesm2022/tabs.mjs.map +1 -1
  138. package/fesm2022/timepicker-testing.mjs.map +1 -1
  139. package/fesm2022/timepicker.mjs +214 -49
  140. package/fesm2022/timepicker.mjs.map +1 -1
  141. package/fesm2022/toolbar-testing.mjs.map +1 -1
  142. package/fesm2022/toolbar.mjs +10 -10
  143. package/fesm2022/toolbar.mjs.map +1 -1
  144. package/fesm2022/tooltip-testing.mjs.map +1 -1
  145. package/fesm2022/tooltip.mjs +4 -4
  146. package/fesm2022/tooltip.mjs.map +1 -1
  147. package/fesm2022/tree-testing.mjs.map +1 -1
  148. package/fesm2022/tree.mjs +25 -25
  149. package/fesm2022/tree.mjs.map +1 -1
  150. package/package.json +2 -2
  151. package/schematics/ng-add/index.js +1 -1
  152. package/types/datepicker.d.ts +4 -0
  153. package/types/timepicker.d.ts +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"list-testing.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-item-harness-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-harness-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/action-list-harness.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-harness.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/nav-list-harness.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/selection-list-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n ComponentHarness,\n ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessPredicate,\n parallel,\n} from '@angular/cdk/testing';\nimport {BaseListItemHarnessFilters, SubheaderHarnessFilters} from './list-harness-filters';\n\nconst iconSelector = '.mat-mdc-list-item-icon';\nconst avatarSelector = '.mat-mdc-list-item-avatar';\n\n/**\n * Gets a `HarnessPredicate` that applies the given `BaseListItemHarnessFilters` to the given\n * list item harness.\n * @template H The type of list item harness to create a predicate for.\n * @param harnessType A constructor for a list item harness.\n * @param options An instance of `BaseListItemHarnessFilters` to apply.\n * @return A `HarnessPredicate` for the given harness type with the given options applied.\n */\nexport function getListItemPredicate<H extends MatListItemHarnessBase>(\n harnessType: ComponentHarnessConstructor<H>,\n options: BaseListItemHarnessFilters,\n): HarnessPredicate<H> {\n return new HarnessPredicate(harnessType, options)\n .addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text),\n )\n .addOption('fullText', options.fullText, (harness, fullText) =>\n HarnessPredicate.stringMatches(harness.getFullText(), fullText),\n )\n .addOption('title', options.title, (harness, title) =>\n HarnessPredicate.stringMatches(harness.getTitle(), title),\n )\n .addOption('secondaryText', options.secondaryText, (harness, secondaryText) =>\n HarnessPredicate.stringMatches(harness.getSecondaryText(), secondaryText),\n )\n .addOption('tertiaryText', options.tertiaryText, (harness, tertiaryText) =>\n HarnessPredicate.stringMatches(harness.getTertiaryText(), tertiaryText),\n );\n}\n\n/** Harness for interacting with a list subheader. */\nexport class MatSubheaderHarness extends ComponentHarness {\n static hostSelector = '.mat-mdc-subheader';\n\n static with(options: SubheaderHarnessFilters = {}): HarnessPredicate<MatSubheaderHarness> {\n return new HarnessPredicate(MatSubheaderHarness, options).addOption(\n 'text',\n options.text,\n (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text),\n );\n }\n\n /** Gets the full text content of the list item (including text from any font icons). */\n async getText(): Promise<string> {\n return (await this.host()).text();\n }\n}\n\n/** Selectors for the various list item sections that may contain user content. */\nexport enum MatListItemSection {\n CONTENT = '.mdc-list-item__content',\n}\n\n/** Enum describing the possible variants of a list item. */\nexport enum MatListItemType {\n ONE_LINE_ITEM,\n TWO_LINE_ITEM,\n THREE_LINE_ITEM,\n}\n\n/**\n * Shared behavior among the harnesses for the various `MatListItem` flavors.\n * @docs-private\n */\nexport abstract class MatListItemHarnessBase extends ContentContainerComponentHarness<MatListItemSection> {\n private _lines = this.locatorForAll('.mat-mdc-list-item-line');\n private _primaryText = this.locatorFor('.mdc-list-item__primary-text');\n private _avatar = this.locatorForOptional('.mat-mdc-list-item-avatar');\n private _icon = this.locatorForOptional('.mat-mdc-list-item-icon');\n private _unscopedTextContent = this.locatorFor('.mat-mdc-list-item-unscoped-content');\n\n /** Gets the type of the list item, currently describing how many lines there are. */\n async getType(): Promise<MatListItemType> {\n const host = await this.host();\n const [isOneLine, isTwoLine] = await parallel(() => [\n host.hasClass('mdc-list-item--with-one-line'),\n host.hasClass('mdc-list-item--with-two-lines'),\n ]);\n if (isOneLine) {\n return MatListItemType.ONE_LINE_ITEM;\n } else if (isTwoLine) {\n return MatListItemType.TWO_LINE_ITEM;\n } else {\n return MatListItemType.THREE_LINE_ITEM;\n }\n }\n\n /**\n * Gets the full text content of the list item, excluding text\n * from icons and avatars.\n *\n * @deprecated Use the `getFullText` method instead.\n * @breaking-change 16.0.0\n */\n async getText(): Promise<string> {\n return this.getFullText();\n }\n\n /**\n * Gets the full text content of the list item, excluding text\n * from icons and avatars.\n */\n async getFullText(): Promise<string> {\n return (await this.host()).text({exclude: `${iconSelector}, ${avatarSelector}`});\n }\n\n /** Gets the title of the list item. */\n async getTitle(): Promise<string> {\n return (await this._primaryText()).text();\n }\n\n /** Whether the list item is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--disabled');\n }\n\n /**\n * Gets the secondary line text of the list item. Null if the list item\n * does not have a secondary line.\n */\n async getSecondaryText(): Promise<string | null> {\n const type = await this.getType();\n if (type === MatListItemType.ONE_LINE_ITEM) {\n return null;\n }\n\n const [lines, unscopedTextContent] = await parallel(() => [\n this._lines(),\n this._unscopedTextContent(),\n ]);\n\n // If there is no explicit line for the secondary text, the unscoped text content\n // is rendered as the secondary text (with potential text wrapping enabled).\n if (lines.length >= 1) {\n return lines[0].text();\n } else {\n return unscopedTextContent.text();\n }\n }\n\n /**\n * Gets the tertiary line text of the list item. Null if the list item\n * does not have a tertiary line.\n */\n async getTertiaryText(): Promise<string | null> {\n const type = await this.getType();\n if (type !== MatListItemType.THREE_LINE_ITEM) {\n return null;\n }\n\n const [lines, unscopedTextContent] = await parallel(() => [\n this._lines(),\n this._unscopedTextContent(),\n ]);\n\n // First we check if there is an explicit line for the tertiary text. If so, we return it.\n // If there is at least an explicit secondary line though, then we know that the unscoped\n // text content corresponds to the tertiary line. If there are no explicit lines at all,\n // we know that the unscoped text content from the secondary text just wraps into the third\n // line, but there *no* actual dedicated tertiary text.\n if (lines.length === 2) {\n return lines[1].text();\n } else if (lines.length === 1) {\n return unscopedTextContent.text();\n }\n return null;\n }\n\n /** Whether this list item has an avatar. */\n async hasAvatar(): Promise<boolean> {\n return !!(await this._avatar());\n }\n\n /** Whether this list item has an icon. */\n async hasIcon(): Promise<boolean> {\n return !!(await this._icon());\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n parallel,\n} from '@angular/cdk/testing';\nimport {DividerHarnessFilters, MatDividerHarness} from '../../divider/testing';\nimport {BaseListItemHarnessFilters, SubheaderHarnessFilters} from './list-harness-filters';\nimport {MatSubheaderHarness} from './list-item-harness-base';\n\n/** Represents a section of a list falling under a specific header. */\nexport interface ListSection<I> {\n /** The heading for this list section. `undefined` if there is no heading. */\n heading?: string;\n\n /** The items in this list section. */\n items: I[];\n}\n\n/**\n * Shared behavior among the harnesses for the various `MatList` flavors.\n * @template T A constructor type for a list item harness type used by this list harness.\n * @template C The list item harness type that `T` constructs.\n * @template F The filter type used filter list item harness of type `C`.\n * @docs-private\n */\nexport abstract class MatListHarnessBase<\n T extends ComponentHarnessConstructor<C> & {with: (options?: F) => HarnessPredicate<C>},\n C extends ComponentHarness,\n F extends BaseListItemHarnessFilters,\n> extends ComponentHarness {\n protected _itemHarness: T;\n\n /**\n * Gets a list of harnesses representing the items in this list.\n * @param filters Optional filters used to narrow which harnesses are included\n * @return The list of items matching the given filters.\n */\n async getItems(filters?: F): Promise<C[]> {\n return this.locatorForAll(this._itemHarness.with(filters))();\n }\n\n /**\n * Gets a list of `ListSection` representing the list items grouped by subheaders. If the list has\n * no subheaders it is represented as a single `ListSection` with an undefined `heading` property.\n * @param filters Optional filters used to narrow which list item harnesses are included\n * @return The list of items matching the given filters, grouped into sections by subheader.\n */\n async getItemsGroupedBySubheader(filters?: F): Promise<ListSection<C>[]> {\n type Section = {items: C[]; heading?: Promise<string>};\n const listSections: Section[] = [];\n let currentSection: Section = {items: []};\n const itemsAndSubheaders = await this.getItemsWithSubheadersAndDividers({\n item: filters,\n divider: false,\n });\n\n for (const itemOrSubheader of itemsAndSubheaders) {\n if (itemOrSubheader instanceof MatSubheaderHarness) {\n if (currentSection.heading !== undefined || currentSection.items.length) {\n listSections.push(currentSection);\n }\n currentSection = {heading: itemOrSubheader.getText(), items: []};\n } else {\n currentSection.items.push(itemOrSubheader);\n }\n }\n if (\n currentSection.heading !== undefined ||\n currentSection.items.length ||\n !listSections.length\n ) {\n listSections.push(currentSection);\n }\n\n // Concurrently wait for all sections to resolve their heading if present.\n return parallel(() =>\n listSections.map(async s => ({items: s.items, heading: await s.heading})),\n );\n }\n\n /**\n * Gets a list of sub-lists representing the list items grouped by dividers. If the list has no\n * dividers it is represented as a list with a single sub-list.\n * @param filters Optional filters used to narrow which list item harnesses are included\n * @return The list of items matching the given filters, grouped into sub-lists by divider.\n */\n async getItemsGroupedByDividers(filters?: F): Promise<C[][]> {\n const listSections: C[][] = [[]];\n const itemsAndDividers = await this.getItemsWithSubheadersAndDividers({\n item: filters,\n subheader: false,\n });\n for (const itemOrDivider of itemsAndDividers) {\n if (itemOrDivider instanceof MatDividerHarness) {\n listSections.push([]);\n } else {\n listSections[listSections.length - 1].push(itemOrDivider);\n }\n }\n return listSections;\n }\n\n /**\n * Gets a list of harnesses representing all of the items, subheaders, and dividers\n * (in the order they appear in the list). Use `instanceof` to check which type of harness a given\n * item is.\n * @param filters Optional filters used to narrow which list items, subheaders, and dividers are\n * included. A value of `false` for the `item`, `subheader`, or `divider` properties indicates\n * that the respective harness type should be omitted completely.\n * @return The list of harnesses representing the items, subheaders, and dividers matching the\n * given filters.\n */\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader: false;\n divider: false;\n }): Promise<[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader: false;\n divider: false;\n }): Promise<C[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader?: SubheaderHarnessFilters | false;\n divider: false;\n }): Promise<MatSubheaderHarness[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader: false;\n divider?: DividerHarnessFilters | false;\n }): Promise<MatDividerHarness[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider: false;\n }): Promise<(C | MatSubheaderHarness)[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader: false;\n divider?: false | DividerHarnessFilters;\n }): Promise<(C | MatDividerHarness)[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader?: false | SubheaderHarnessFilters;\n divider?: false | DividerHarnessFilters;\n }): Promise<(MatSubheaderHarness | MatDividerHarness)[]>;\n getItemsWithSubheadersAndDividers(filters?: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider?: DividerHarnessFilters | false;\n }): Promise<(C | MatSubheaderHarness | MatDividerHarness)[]>;\n async getItemsWithSubheadersAndDividers(\n filters: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider?: DividerHarnessFilters | false;\n } = {},\n ): Promise<(C | MatSubheaderHarness | MatDividerHarness)[]> {\n const query = [];\n if (filters.item !== false) {\n query.push(this._itemHarness.with(filters.item || ({} as F)));\n }\n if (filters.subheader !== false) {\n query.push(MatSubheaderHarness.with(filters.subheader));\n }\n if (filters.divider !== false) {\n query.push(MatDividerHarness.with(filters.divider));\n }\n return this.locatorForAll(...query)();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {ActionListHarnessFilters, ActionListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a action-list in tests. */\nexport class MatActionListHarness extends MatListHarnessBase<\n typeof MatActionListItemHarness,\n MatActionListItemHarness,\n ActionListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatActionList` instance. */\n static hostSelector = '.mat-mdc-action-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for an action list with specific\n * attributes.\n * @param options Options for filtering which action list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatActionListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ActionListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatActionListItemHarness;\n}\n\n/** Harness for interacting with an action list item. */\nexport class MatActionListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatActionListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list item with specific\n * attributes.\n * @param options Options for filtering which action list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatActionListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ActionListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options);\n }\n\n /** Clicks on the action list item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Focuses the action list item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the action list item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the action list item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {ListHarnessFilters, ListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a list in tests. */\nexport class MatListHarness extends MatListHarnessBase<\n typeof MatListItemHarness,\n MatListItemHarness,\n ListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatList` instance. */\n static hostSelector = '.mat-mdc-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list with specific attributes.\n * @param options Options for filtering which list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatListItemHarness;\n}\n\n/** Harness for interacting with a list item. */\nexport class MatListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list item with specific attributes.\n * @param options Options for filtering which list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {NavListHarnessFilters, NavListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a mat-nav-list in tests. */\nexport class MatNavListHarness extends MatListHarnessBase<\n typeof MatNavListItemHarness,\n MatNavListItemHarness,\n NavListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatNavList` instance. */\n static hostSelector = '.mat-mdc-nav-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a nav list with specific\n * attributes.\n * @param options Options for filtering which nav list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatNavListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: NavListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatNavListItemHarness;\n}\n\n/** Harness for interacting with a nav-list item. */\nexport class MatNavListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatNavListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a nav list item with specific\n * attributes.\n * @param options Options for filtering which nav list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatNavListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: NavListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options)\n .addOption('href', options.href, async (harness, href) =>\n HarnessPredicate.stringMatches(harness.getHref(), href),\n )\n .addOption(\n 'activated',\n options.activated,\n async (harness, activated) => (await harness.isActivated()) === activated,\n );\n }\n\n /** Gets the href for this nav list item. */\n async getHref(): Promise<string | null> {\n return (await this.host()).getAttribute('href');\n }\n\n /** Clicks on the nav list item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Focuses the nav list item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the nav list item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the nav list item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Whether the list item is activated. Should only be used for nav list items. */\n async isActivated(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--activated');\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate, parallel} from '@angular/cdk/testing';\nimport {MatListOptionTogglePosition} from '../../list';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {\n ListItemHarnessFilters,\n ListOptionHarnessFilters,\n SelectionListHarnessFilters,\n} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a selection-list in tests. */\nexport class MatSelectionListHarness extends MatListHarnessBase<\n typeof MatListOptionHarness,\n MatListOptionHarness,\n ListOptionHarnessFilters\n> {\n /** The selector for the host element of a `MatSelectionList` instance. */\n static hostSelector = '.mat-mdc-selection-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a selection list with specific\n * attributes.\n * @param options Options for filtering which selection list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatSelectionListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: SelectionListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatListOptionHarness;\n\n /** Whether the selection list is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await (await this.host()).getAttribute('aria-disabled')) === 'true';\n }\n\n /**\n * Selects all items matching any of the given filters.\n * @param filters Filters that specify which items should be selected.\n */\n async selectItems(...filters: ListOptionHarnessFilters[]): Promise<void> {\n const items = await this._getItems(filters);\n await parallel(() => items.map(item => item.select()));\n }\n\n /**\n * Deselects all items matching any of the given filters.\n * @param filters Filters that specify which items should be deselected.\n */\n async deselectItems(...filters: ListItemHarnessFilters[]): Promise<void> {\n const items = await this._getItems(filters);\n await parallel(() => items.map(item => item.deselect()));\n }\n\n /** Gets all items matching the given list of filters. */\n private async _getItems(filters: ListOptionHarnessFilters[]): Promise<MatListOptionHarness[]> {\n if (!filters.length) {\n return this.getItems();\n }\n const matches = await parallel(() =>\n filters.map(filter => this.locatorForAll(MatListOptionHarness.with(filter))()),\n );\n return matches.reduce((result, current) => [...result, ...current], []);\n }\n}\n\n/** Harness for interacting with a list option. */\nexport class MatListOptionHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListOption` instance. */\n static hostSelector = '.mat-mdc-list-option';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list option with specific\n * attributes.\n * @param options Options for filtering which list option instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListOptionHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListOptionHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options).addOption(\n 'is selected',\n options.selected,\n async (harness, selected) => (await harness.isSelected()) === selected,\n );\n }\n\n private _beforeCheckbox = this.locatorForOptional('.mdc-list-item__start .mdc-checkbox');\n private _beforeRadio = this.locatorForOptional('.mdc-list-item__start .mdc-radio');\n\n /** Gets the position of the checkbox relative to the list option content. */\n async getCheckboxPosition(): Promise<MatListOptionTogglePosition> {\n return (await this._beforeCheckbox()) !== null ? 'before' : 'after';\n }\n\n /** Gets the position of the radio relative to the list option content. */\n async getRadioPosition(): Promise<MatListOptionTogglePosition> {\n return (await this._beforeRadio()) !== null ? 'before' : 'after';\n }\n\n /** Whether the list option is selected. */\n async isSelected(): Promise<boolean> {\n return (await (await this.host()).getAttribute('aria-selected')) === 'true';\n }\n\n /** Focuses the list option. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the list option. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the list option is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Toggles the checked state of the checkbox. */\n async toggle() {\n return (await this.host()).click();\n }\n\n /**\n * Puts the list option in a checked state by toggling it if it is currently\n * unchecked, or doing nothing if it is already checked.\n */\n async select() {\n if (!(await this.isSelected())) {\n return this.toggle();\n }\n }\n\n /**\n * Puts the list option in an unchecked state by toggling it if it is currently\n * checked, or doing nothing if it is already unchecked.\n */\n async deselect() {\n if (await this.isSelected()) {\n return this.toggle();\n }\n }\n}\n"],"names":["iconSelector","avatarSelector","getListItemPredicate","harnessType","options","HarnessPredicate","addOption","text","harness","stringMatches","getText","fullText","getFullText","title","getTitle","secondaryText","getSecondaryText","tertiaryText","getTertiaryText","MatSubheaderHarness","ComponentHarness","hostSelector","with","host","MatListItemSection","MatListItemType","MatListItemHarnessBase","ContentContainerComponentHarness","_lines","locatorForAll","_primaryText","locatorFor","_avatar","locatorForOptional","_icon","_unscopedTextContent","getType","isOneLine","isTwoLine","parallel","hasClass","ONE_LINE_ITEM","TWO_LINE_ITEM","THREE_LINE_ITEM","exclude","isDisabled","type","lines","unscopedTextContent","length","hasAvatar","hasIcon","MatListHarnessBase","_itemHarness","getItems","filters","getItemsGroupedBySubheader","listSections","currentSection","items","itemsAndSubheaders","getItemsWithSubheadersAndDividers","item","divider","itemOrSubheader","heading","undefined","push","map","s","getItemsGroupedByDividers","itemsAndDividers","subheader","itemOrDivider","MatDividerHarness","query","MatActionListHarness","MatActionListItemHarness","click","focus","blur","isFocused","MatListHarness","MatListItemHarness","MatNavListHarness","MatNavListItemHarness","href","getHref","activated","isActivated","getAttribute","MatSelectionListHarness","MatListOptionHarness","selectItems","_getItems","select","deselectItems","deselect","matches","filter","reduce","result","current","selected","isSelected","_beforeCheckbox","_beforeRadio","getCheckboxPosition","getRadioPosition","toggle"],"mappings":"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"}
1
+ {"version":3,"file":"list-testing.mjs","sources":["../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-item-harness-base.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-harness-base.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/action-list-harness.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/list-harness.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/nav-list-harness.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/list/testing/selection-list-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n ComponentHarness,\n ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessPredicate,\n parallel,\n} from '@angular/cdk/testing';\nimport {BaseListItemHarnessFilters, SubheaderHarnessFilters} from './list-harness-filters';\n\nconst iconSelector = '.mat-mdc-list-item-icon';\nconst avatarSelector = '.mat-mdc-list-item-avatar';\n\n/**\n * Gets a `HarnessPredicate` that applies the given `BaseListItemHarnessFilters` to the given\n * list item harness.\n * @template H The type of list item harness to create a predicate for.\n * @param harnessType A constructor for a list item harness.\n * @param options An instance of `BaseListItemHarnessFilters` to apply.\n * @return A `HarnessPredicate` for the given harness type with the given options applied.\n */\nexport function getListItemPredicate<H extends MatListItemHarnessBase>(\n harnessType: ComponentHarnessConstructor<H>,\n options: BaseListItemHarnessFilters,\n): HarnessPredicate<H> {\n return new HarnessPredicate(harnessType, options)\n .addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text),\n )\n .addOption('fullText', options.fullText, (harness, fullText) =>\n HarnessPredicate.stringMatches(harness.getFullText(), fullText),\n )\n .addOption('title', options.title, (harness, title) =>\n HarnessPredicate.stringMatches(harness.getTitle(), title),\n )\n .addOption('secondaryText', options.secondaryText, (harness, secondaryText) =>\n HarnessPredicate.stringMatches(harness.getSecondaryText(), secondaryText),\n )\n .addOption('tertiaryText', options.tertiaryText, (harness, tertiaryText) =>\n HarnessPredicate.stringMatches(harness.getTertiaryText(), tertiaryText),\n );\n}\n\n/** Harness for interacting with a list subheader. */\nexport class MatSubheaderHarness extends ComponentHarness {\n static hostSelector = '.mat-mdc-subheader';\n\n static with(options: SubheaderHarnessFilters = {}): HarnessPredicate<MatSubheaderHarness> {\n return new HarnessPredicate(MatSubheaderHarness, options).addOption(\n 'text',\n options.text,\n (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text),\n );\n }\n\n /** Gets the full text content of the list item (including text from any font icons). */\n async getText(): Promise<string> {\n return (await this.host()).text();\n }\n}\n\n/** Selectors for the various list item sections that may contain user content. */\nexport enum MatListItemSection {\n CONTENT = '.mdc-list-item__content',\n}\n\n/** Enum describing the possible variants of a list item. */\nexport enum MatListItemType {\n ONE_LINE_ITEM,\n TWO_LINE_ITEM,\n THREE_LINE_ITEM,\n}\n\n/**\n * Shared behavior among the harnesses for the various `MatListItem` flavors.\n * @docs-private\n */\nexport abstract class MatListItemHarnessBase extends ContentContainerComponentHarness<MatListItemSection> {\n private _lines = this.locatorForAll('.mat-mdc-list-item-line');\n private _primaryText = this.locatorFor('.mdc-list-item__primary-text');\n private _avatar = this.locatorForOptional('.mat-mdc-list-item-avatar');\n private _icon = this.locatorForOptional('.mat-mdc-list-item-icon');\n private _unscopedTextContent = this.locatorFor('.mat-mdc-list-item-unscoped-content');\n\n /** Gets the type of the list item, currently describing how many lines there are. */\n async getType(): Promise<MatListItemType> {\n const host = await this.host();\n const [isOneLine, isTwoLine] = await parallel(() => [\n host.hasClass('mdc-list-item--with-one-line'),\n host.hasClass('mdc-list-item--with-two-lines'),\n ]);\n if (isOneLine) {\n return MatListItemType.ONE_LINE_ITEM;\n } else if (isTwoLine) {\n return MatListItemType.TWO_LINE_ITEM;\n } else {\n return MatListItemType.THREE_LINE_ITEM;\n }\n }\n\n /**\n * Gets the full text content of the list item, excluding text\n * from icons and avatars.\n *\n * @deprecated Use the `getFullText` method instead.\n * @breaking-change 16.0.0\n */\n async getText(): Promise<string> {\n return this.getFullText();\n }\n\n /**\n * Gets the full text content of the list item, excluding text\n * from icons and avatars.\n */\n async getFullText(): Promise<string> {\n return (await this.host()).text({exclude: `${iconSelector}, ${avatarSelector}`});\n }\n\n /** Gets the title of the list item. */\n async getTitle(): Promise<string> {\n return (await this._primaryText()).text();\n }\n\n /** Whether the list item is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--disabled');\n }\n\n /**\n * Gets the secondary line text of the list item. Null if the list item\n * does not have a secondary line.\n */\n async getSecondaryText(): Promise<string | null> {\n const type = await this.getType();\n if (type === MatListItemType.ONE_LINE_ITEM) {\n return null;\n }\n\n const [lines, unscopedTextContent] = await parallel(() => [\n this._lines(),\n this._unscopedTextContent(),\n ]);\n\n // If there is no explicit line for the secondary text, the unscoped text content\n // is rendered as the secondary text (with potential text wrapping enabled).\n if (lines.length >= 1) {\n return lines[0].text();\n } else {\n return unscopedTextContent.text();\n }\n }\n\n /**\n * Gets the tertiary line text of the list item. Null if the list item\n * does not have a tertiary line.\n */\n async getTertiaryText(): Promise<string | null> {\n const type = await this.getType();\n if (type !== MatListItemType.THREE_LINE_ITEM) {\n return null;\n }\n\n const [lines, unscopedTextContent] = await parallel(() => [\n this._lines(),\n this._unscopedTextContent(),\n ]);\n\n // First we check if there is an explicit line for the tertiary text. If so, we return it.\n // If there is at least an explicit secondary line though, then we know that the unscoped\n // text content corresponds to the tertiary line. If there are no explicit lines at all,\n // we know that the unscoped text content from the secondary text just wraps into the third\n // line, but there *no* actual dedicated tertiary text.\n if (lines.length === 2) {\n return lines[1].text();\n } else if (lines.length === 1) {\n return unscopedTextContent.text();\n }\n return null;\n }\n\n /** Whether this list item has an avatar. */\n async hasAvatar(): Promise<boolean> {\n return !!(await this._avatar());\n }\n\n /** Whether this list item has an icon. */\n async hasIcon(): Promise<boolean> {\n return !!(await this._icon());\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n parallel,\n} from '@angular/cdk/testing';\nimport {DividerHarnessFilters, MatDividerHarness} from '../../divider/testing';\nimport {BaseListItemHarnessFilters, SubheaderHarnessFilters} from './list-harness-filters';\nimport {MatSubheaderHarness} from './list-item-harness-base';\n\n/** Represents a section of a list falling under a specific header. */\nexport interface ListSection<I> {\n /** The heading for this list section. `undefined` if there is no heading. */\n heading?: string;\n\n /** The items in this list section. */\n items: I[];\n}\n\n/**\n * Shared behavior among the harnesses for the various `MatList` flavors.\n * @template T A constructor type for a list item harness type used by this list harness.\n * @template C The list item harness type that `T` constructs.\n * @template F The filter type used filter list item harness of type `C`.\n * @docs-private\n */\nexport abstract class MatListHarnessBase<\n T extends ComponentHarnessConstructor<C> & {with: (options?: F) => HarnessPredicate<C>},\n C extends ComponentHarness,\n F extends BaseListItemHarnessFilters,\n> extends ComponentHarness {\n protected _itemHarness: T;\n\n /**\n * Gets a list of harnesses representing the items in this list.\n * @param filters Optional filters used to narrow which harnesses are included\n * @return The list of items matching the given filters.\n */\n async getItems(filters?: F): Promise<C[]> {\n return this.locatorForAll(this._itemHarness.with(filters))();\n }\n\n /**\n * Gets a list of `ListSection` representing the list items grouped by subheaders. If the list has\n * no subheaders it is represented as a single `ListSection` with an undefined `heading` property.\n * @param filters Optional filters used to narrow which list item harnesses are included\n * @return The list of items matching the given filters, grouped into sections by subheader.\n */\n async getItemsGroupedBySubheader(filters?: F): Promise<ListSection<C>[]> {\n type Section = {items: C[]; heading?: Promise<string>};\n const listSections: Section[] = [];\n let currentSection: Section = {items: []};\n const itemsAndSubheaders = await this.getItemsWithSubheadersAndDividers({\n item: filters,\n divider: false,\n });\n\n for (const itemOrSubheader of itemsAndSubheaders) {\n if (itemOrSubheader instanceof MatSubheaderHarness) {\n if (currentSection.heading !== undefined || currentSection.items.length) {\n listSections.push(currentSection);\n }\n currentSection = {heading: itemOrSubheader.getText(), items: []};\n } else {\n currentSection.items.push(itemOrSubheader);\n }\n }\n if (\n currentSection.heading !== undefined ||\n currentSection.items.length ||\n !listSections.length\n ) {\n listSections.push(currentSection);\n }\n\n // Concurrently wait for all sections to resolve their heading if present.\n return parallel(() =>\n listSections.map(async s => ({items: s.items, heading: await s.heading})),\n );\n }\n\n /**\n * Gets a list of sub-lists representing the list items grouped by dividers. If the list has no\n * dividers it is represented as a list with a single sub-list.\n * @param filters Optional filters used to narrow which list item harnesses are included\n * @return The list of items matching the given filters, grouped into sub-lists by divider.\n */\n async getItemsGroupedByDividers(filters?: F): Promise<C[][]> {\n const listSections: C[][] = [[]];\n const itemsAndDividers = await this.getItemsWithSubheadersAndDividers({\n item: filters,\n subheader: false,\n });\n for (const itemOrDivider of itemsAndDividers) {\n if (itemOrDivider instanceof MatDividerHarness) {\n listSections.push([]);\n } else {\n listSections[listSections.length - 1].push(itemOrDivider);\n }\n }\n return listSections;\n }\n\n /**\n * Gets a list of harnesses representing all of the items, subheaders, and dividers\n * (in the order they appear in the list). Use `instanceof` to check which type of harness a given\n * item is.\n * @param filters Optional filters used to narrow which list items, subheaders, and dividers are\n * included. A value of `false` for the `item`, `subheader`, or `divider` properties indicates\n * that the respective harness type should be omitted completely.\n * @return The list of harnesses representing the items, subheaders, and dividers matching the\n * given filters.\n */\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader: false;\n divider: false;\n }): Promise<[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader: false;\n divider: false;\n }): Promise<C[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader?: SubheaderHarnessFilters | false;\n divider: false;\n }): Promise<MatSubheaderHarness[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader: false;\n divider?: DividerHarnessFilters | false;\n }): Promise<MatDividerHarness[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider: false;\n }): Promise<(C | MatSubheaderHarness)[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item?: F | false;\n subheader: false;\n divider?: false | DividerHarnessFilters;\n }): Promise<(C | MatDividerHarness)[]>;\n getItemsWithSubheadersAndDividers(filters: {\n item: false;\n subheader?: false | SubheaderHarnessFilters;\n divider?: false | DividerHarnessFilters;\n }): Promise<(MatSubheaderHarness | MatDividerHarness)[]>;\n getItemsWithSubheadersAndDividers(filters?: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider?: DividerHarnessFilters | false;\n }): Promise<(C | MatSubheaderHarness | MatDividerHarness)[]>;\n async getItemsWithSubheadersAndDividers(\n filters: {\n item?: F | false;\n subheader?: SubheaderHarnessFilters | false;\n divider?: DividerHarnessFilters | false;\n } = {},\n ): Promise<(C | MatSubheaderHarness | MatDividerHarness)[]> {\n const query = [];\n if (filters.item !== false) {\n query.push(this._itemHarness.with(filters.item || ({} as F)));\n }\n if (filters.subheader !== false) {\n query.push(MatSubheaderHarness.with(filters.subheader));\n }\n if (filters.divider !== false) {\n query.push(MatDividerHarness.with(filters.divider));\n }\n return this.locatorForAll(...query)();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {ActionListHarnessFilters, ActionListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a action-list in tests. */\nexport class MatActionListHarness extends MatListHarnessBase<\n typeof MatActionListItemHarness,\n MatActionListItemHarness,\n ActionListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatActionList` instance. */\n static hostSelector = '.mat-mdc-action-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for an action list with specific\n * attributes.\n * @param options Options for filtering which action list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatActionListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ActionListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatActionListItemHarness;\n}\n\n/** Harness for interacting with an action list item. */\nexport class MatActionListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatActionListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list item with specific\n * attributes.\n * @param options Options for filtering which action list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatActionListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ActionListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options);\n }\n\n /** Clicks on the action list item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Focuses the action list item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the action list item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the action list item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {ListHarnessFilters, ListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a list in tests. */\nexport class MatListHarness extends MatListHarnessBase<\n typeof MatListItemHarness,\n MatListItemHarness,\n ListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatList` instance. */\n static hostSelector = '.mat-mdc-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list with specific attributes.\n * @param options Options for filtering which list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatListItemHarness;\n}\n\n/** Harness for interacting with a list item. */\nexport class MatListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list item with specific attributes.\n * @param options Options for filtering which list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate} from '@angular/cdk/testing';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {NavListHarnessFilters, NavListItemHarnessFilters} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a mat-nav-list in tests. */\nexport class MatNavListHarness extends MatListHarnessBase<\n typeof MatNavListItemHarness,\n MatNavListItemHarness,\n NavListItemHarnessFilters\n> {\n /** The selector for the host element of a `MatNavList` instance. */\n static hostSelector = '.mat-mdc-nav-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a nav list with specific\n * attributes.\n * @param options Options for filtering which nav list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatNavListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: NavListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatNavListItemHarness;\n}\n\n/** Harness for interacting with a nav-list item. */\nexport class MatNavListItemHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListItem` instance. */\n static hostSelector = `${MatNavListHarness.hostSelector} .mat-mdc-list-item`;\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a nav list item with specific\n * attributes.\n * @param options Options for filtering which nav list item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatNavListItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: NavListItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options)\n .addOption('href', options.href, async (harness, href) =>\n HarnessPredicate.stringMatches(harness.getHref(), href),\n )\n .addOption(\n 'activated',\n options.activated,\n async (harness, activated) => (await harness.isActivated()) === activated,\n );\n }\n\n /** Gets the href for this nav list item. */\n async getHref(): Promise<string | null> {\n return (await this.host()).getAttribute('href');\n }\n\n /** Clicks on the nav list item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Focuses the nav list item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the nav list item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the nav list item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Whether the list item is activated. Should only be used for nav list items. */\n async isActivated(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--activated');\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ComponentHarnessConstructor, HarnessPredicate, parallel} from '@angular/cdk/testing';\nimport {MatListOptionTogglePosition} from '../../list';\nimport {MatListHarnessBase} from './list-harness-base';\nimport {\n ListItemHarnessFilters,\n ListOptionHarnessFilters,\n SelectionListHarnessFilters,\n} from './list-harness-filters';\nimport {getListItemPredicate, MatListItemHarnessBase} from './list-item-harness-base';\n\n/** Harness for interacting with a selection-list in tests. */\nexport class MatSelectionListHarness extends MatListHarnessBase<\n typeof MatListOptionHarness,\n MatListOptionHarness,\n ListOptionHarnessFilters\n> {\n /** The selector for the host element of a `MatSelectionList` instance. */\n static hostSelector = '.mat-mdc-selection-list';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a selection list with specific\n * attributes.\n * @param options Options for filtering which selection list instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatSelectionListHarness>(\n this: ComponentHarnessConstructor<T>,\n options: SelectionListHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n override _itemHarness = MatListOptionHarness;\n\n /** Whether the selection list is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await (await this.host()).getAttribute('aria-disabled')) === 'true';\n }\n\n /**\n * Selects all items matching any of the given filters.\n * @param filters Filters that specify which items should be selected.\n */\n async selectItems(...filters: ListOptionHarnessFilters[]): Promise<void> {\n const items = await this._getItems(filters);\n await parallel(() => items.map(item => item.select()));\n }\n\n /**\n * Deselects all items matching any of the given filters.\n * @param filters Filters that specify which items should be deselected.\n */\n async deselectItems(...filters: ListItemHarnessFilters[]): Promise<void> {\n const items = await this._getItems(filters);\n await parallel(() => items.map(item => item.deselect()));\n }\n\n /** Gets all items matching the given list of filters. */\n private async _getItems(filters: ListOptionHarnessFilters[]): Promise<MatListOptionHarness[]> {\n if (!filters.length) {\n return this.getItems();\n }\n const matches = await parallel(() =>\n filters.map(filter => this.locatorForAll(MatListOptionHarness.with(filter))()),\n );\n return matches.reduce((result, current) => [...result, ...current], []);\n }\n}\n\n/** Harness for interacting with a list option. */\nexport class MatListOptionHarness extends MatListItemHarnessBase {\n /** The selector for the host element of a `MatListOption` instance. */\n static hostSelector = '.mat-mdc-list-option';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a list option with specific\n * attributes.\n * @param options Options for filtering which list option instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatListOptionHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ListOptionHarnessFilters = {},\n ): HarnessPredicate<T> {\n return getListItemPredicate(this, options).addOption(\n 'is selected',\n options.selected,\n async (harness, selected) => (await harness.isSelected()) === selected,\n );\n }\n\n private _beforeCheckbox = this.locatorForOptional('.mdc-list-item__start .mdc-checkbox');\n private _beforeRadio = this.locatorForOptional('.mdc-list-item__start .mdc-radio');\n\n /** Gets the position of the checkbox relative to the list option content. */\n async getCheckboxPosition(): Promise<MatListOptionTogglePosition> {\n return (await this._beforeCheckbox()) !== null ? 'before' : 'after';\n }\n\n /** Gets the position of the radio relative to the list option content. */\n async getRadioPosition(): Promise<MatListOptionTogglePosition> {\n return (await this._beforeRadio()) !== null ? 'before' : 'after';\n }\n\n /** Whether the list option is selected. */\n async isSelected(): Promise<boolean> {\n return (await (await this.host()).getAttribute('aria-selected')) === 'true';\n }\n\n /** Focuses the list option. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the list option. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the list option is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Toggles the checked state of the checkbox. */\n async toggle() {\n return (await this.host()).click();\n }\n\n /**\n * Puts the list option in a checked state by toggling it if it is currently\n * unchecked, or doing nothing if it is already checked.\n */\n async select() {\n if (!(await this.isSelected())) {\n return this.toggle();\n }\n }\n\n /**\n * Puts the list option in an unchecked state by toggling it if it is currently\n * checked, or doing nothing if it is already unchecked.\n */\n async deselect() {\n if (await this.isSelected()) {\n return this.toggle();\n }\n }\n}\n"],"names":["iconSelector","avatarSelector","getListItemPredicate","harnessType","options","HarnessPredicate","addOption","text","harness","stringMatches","getText","fullText","getFullText","title","getTitle","secondaryText","getSecondaryText","tertiaryText","getTertiaryText","MatSubheaderHarness","ComponentHarness","hostSelector","with","host","MatListItemSection","MatListItemType","MatListItemHarnessBase","ContentContainerComponentHarness","_lines","locatorForAll","_primaryText","locatorFor","_avatar","locatorForOptional","_icon","_unscopedTextContent","getType","isOneLine","isTwoLine","parallel","hasClass","ONE_LINE_ITEM","TWO_LINE_ITEM","THREE_LINE_ITEM","exclude","isDisabled","type","lines","unscopedTextContent","length","hasAvatar","hasIcon","MatListHarnessBase","_itemHarness","getItems","filters","getItemsGroupedBySubheader","listSections","currentSection","items","itemsAndSubheaders","getItemsWithSubheadersAndDividers","item","divider","itemOrSubheader","heading","undefined","push","map","s","getItemsGroupedByDividers","itemsAndDividers","subheader","itemOrDivider","MatDividerHarness","query","MatActionListHarness","MatActionListItemHarness","click","focus","blur","isFocused","MatListHarness","MatListItemHarness","MatNavListHarness","MatNavListItemHarness","href","getHref","activated","isActivated","getAttribute","MatSelectionListHarness","MatListOptionHarness","selectItems","_getItems","select","deselectItems","deselect","matches","filter","reduce","result","current","selected","isSelected","_beforeCheckbox","_beforeRadio","getCheckboxPosition","getRadioPosition","toggle"],"mappings":"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"}
package/fesm2022/list.mjs CHANGED
@@ -29,7 +29,7 @@ class MatListItemTitle {
29
29
  constructor() {}
30
30
  static ɵfac = i0.ɵɵngDeclareFactory({
31
31
  minVersion: "12.0.0",
32
- version: "20.2.0-next.2",
32
+ version: "21.0.0",
33
33
  ngImport: i0,
34
34
  type: MatListItemTitle,
35
35
  deps: [],
@@ -37,7 +37,7 @@ class MatListItemTitle {
37
37
  });
38
38
  static ɵdir = i0.ɵɵngDeclareDirective({
39
39
  minVersion: "14.0.0",
40
- version: "20.2.0-next.2",
40
+ version: "21.0.0",
41
41
  type: MatListItemTitle,
42
42
  isStandalone: true,
43
43
  selector: "[matListItemTitle]",
@@ -49,7 +49,7 @@ class MatListItemTitle {
49
49
  }
50
50
  i0.ɵɵngDeclareClassMetadata({
51
51
  minVersion: "12.0.0",
52
- version: "20.2.0-next.2",
52
+ version: "21.0.0",
53
53
  ngImport: i0,
54
54
  type: MatListItemTitle,
55
55
  decorators: [{
@@ -68,7 +68,7 @@ class MatListItemLine {
68
68
  constructor() {}
69
69
  static ɵfac = i0.ɵɵngDeclareFactory({
70
70
  minVersion: "12.0.0",
71
- version: "20.2.0-next.2",
71
+ version: "21.0.0",
72
72
  ngImport: i0,
73
73
  type: MatListItemLine,
74
74
  deps: [],
@@ -76,7 +76,7 @@ class MatListItemLine {
76
76
  });
77
77
  static ɵdir = i0.ɵɵngDeclareDirective({
78
78
  minVersion: "14.0.0",
79
- version: "20.2.0-next.2",
79
+ version: "21.0.0",
80
80
  type: MatListItemLine,
81
81
  isStandalone: true,
82
82
  selector: "[matListItemLine]",
@@ -88,7 +88,7 @@ class MatListItemLine {
88
88
  }
89
89
  i0.ɵɵngDeclareClassMetadata({
90
90
  minVersion: "12.0.0",
91
- version: "20.2.0-next.2",
91
+ version: "21.0.0",
92
92
  ngImport: i0,
93
93
  type: MatListItemLine,
94
94
  decorators: [{
@@ -105,7 +105,7 @@ i0.ɵɵngDeclareClassMetadata({
105
105
  class MatListItemMeta {
106
106
  static ɵfac = i0.ɵɵngDeclareFactory({
107
107
  minVersion: "12.0.0",
108
- version: "20.2.0-next.2",
108
+ version: "21.0.0",
109
109
  ngImport: i0,
110
110
  type: MatListItemMeta,
111
111
  deps: [],
@@ -113,7 +113,7 @@ class MatListItemMeta {
113
113
  });
114
114
  static ɵdir = i0.ɵɵngDeclareDirective({
115
115
  minVersion: "14.0.0",
116
- version: "20.2.0-next.2",
116
+ version: "21.0.0",
117
117
  type: MatListItemMeta,
118
118
  isStandalone: true,
119
119
  selector: "[matListItemMeta]",
@@ -125,7 +125,7 @@ class MatListItemMeta {
125
125
  }
126
126
  i0.ɵɵngDeclareClassMetadata({
127
127
  minVersion: "12.0.0",
128
- version: "20.2.0-next.2",
128
+ version: "21.0.0",
129
129
  ngImport: i0,
130
130
  type: MatListItemMeta,
131
131
  decorators: [{
@@ -148,7 +148,7 @@ class _MatListItemGraphicBase {
148
148
  }
149
149
  static ɵfac = i0.ɵɵngDeclareFactory({
150
150
  minVersion: "12.0.0",
151
- version: "20.2.0-next.2",
151
+ version: "21.0.0",
152
152
  ngImport: i0,
153
153
  type: _MatListItemGraphicBase,
154
154
  deps: [],
@@ -156,7 +156,7 @@ class _MatListItemGraphicBase {
156
156
  });
157
157
  static ɵdir = i0.ɵɵngDeclareDirective({
158
158
  minVersion: "14.0.0",
159
- version: "20.2.0-next.2",
159
+ version: "21.0.0",
160
160
  type: _MatListItemGraphicBase,
161
161
  isStandalone: true,
162
162
  host: {
@@ -170,7 +170,7 @@ class _MatListItemGraphicBase {
170
170
  }
171
171
  i0.ɵɵngDeclareClassMetadata({
172
172
  minVersion: "12.0.0",
173
- version: "20.2.0-next.2",
173
+ version: "21.0.0",
174
174
  ngImport: i0,
175
175
  type: _MatListItemGraphicBase,
176
176
  decorators: [{
@@ -187,7 +187,7 @@ i0.ɵɵngDeclareClassMetadata({
187
187
  class MatListItemAvatar extends _MatListItemGraphicBase {
188
188
  static ɵfac = i0.ɵɵngDeclareFactory({
189
189
  minVersion: "12.0.0",
190
- version: "20.2.0-next.2",
190
+ version: "21.0.0",
191
191
  ngImport: i0,
192
192
  type: MatListItemAvatar,
193
193
  deps: null,
@@ -195,7 +195,7 @@ class MatListItemAvatar extends _MatListItemGraphicBase {
195
195
  });
196
196
  static ɵdir = i0.ɵɵngDeclareDirective({
197
197
  minVersion: "14.0.0",
198
- version: "20.2.0-next.2",
198
+ version: "21.0.0",
199
199
  type: MatListItemAvatar,
200
200
  isStandalone: true,
201
201
  selector: "[matListItemAvatar]",
@@ -208,7 +208,7 @@ class MatListItemAvatar extends _MatListItemGraphicBase {
208
208
  }
209
209
  i0.ɵɵngDeclareClassMetadata({
210
210
  minVersion: "12.0.0",
211
- version: "20.2.0-next.2",
211
+ version: "21.0.0",
212
212
  ngImport: i0,
213
213
  type: MatListItemAvatar,
214
214
  decorators: [{
@@ -224,7 +224,7 @@ i0.ɵɵngDeclareClassMetadata({
224
224
  class MatListItemIcon extends _MatListItemGraphicBase {
225
225
  static ɵfac = i0.ɵɵngDeclareFactory({
226
226
  minVersion: "12.0.0",
227
- version: "20.2.0-next.2",
227
+ version: "21.0.0",
228
228
  ngImport: i0,
229
229
  type: MatListItemIcon,
230
230
  deps: null,
@@ -232,7 +232,7 @@ class MatListItemIcon extends _MatListItemGraphicBase {
232
232
  });
233
233
  static ɵdir = i0.ɵɵngDeclareDirective({
234
234
  minVersion: "14.0.0",
235
- version: "20.2.0-next.2",
235
+ version: "21.0.0",
236
236
  type: MatListItemIcon,
237
237
  isStandalone: true,
238
238
  selector: "[matListItemIcon]",
@@ -245,7 +245,7 @@ class MatListItemIcon extends _MatListItemGraphicBase {
245
245
  }
246
246
  i0.ɵɵngDeclareClassMetadata({
247
247
  minVersion: "12.0.0",
248
- version: "20.2.0-next.2",
248
+ version: "21.0.0",
249
249
  ngImport: i0,
250
250
  type: MatListItemIcon,
251
251
  decorators: [{
@@ -284,7 +284,7 @@ class MatListBase {
284
284
  });
285
285
  static ɵfac = i0.ɵɵngDeclareFactory({
286
286
  minVersion: "12.0.0",
287
- version: "20.2.0-next.2",
287
+ version: "21.0.0",
288
288
  ngImport: i0,
289
289
  type: MatListBase,
290
290
  deps: [],
@@ -292,7 +292,7 @@ class MatListBase {
292
292
  });
293
293
  static ɵdir = i0.ɵɵngDeclareDirective({
294
294
  minVersion: "14.0.0",
295
- version: "20.2.0-next.2",
295
+ version: "21.0.0",
296
296
  type: MatListBase,
297
297
  isStandalone: true,
298
298
  inputs: {
@@ -309,7 +309,7 @@ class MatListBase {
309
309
  }
310
310
  i0.ɵɵngDeclareClassMetadata({
311
311
  minVersion: "12.0.0",
312
- version: "20.2.0-next.2",
312
+ version: "21.0.0",
313
313
  ngImport: i0,
314
314
  type: MatListBase,
315
315
  decorators: [{
@@ -444,7 +444,7 @@ class MatListItemBase {
444
444
  }
445
445
  static ɵfac = i0.ɵɵngDeclareFactory({
446
446
  minVersion: "12.0.0",
447
- version: "20.2.0-next.2",
447
+ version: "21.0.0",
448
448
  ngImport: i0,
449
449
  type: MatListItemBase,
450
450
  deps: [],
@@ -452,7 +452,7 @@ class MatListItemBase {
452
452
  });
453
453
  static ɵdir = i0.ɵɵngDeclareDirective({
454
454
  minVersion: "14.0.0",
455
- version: "20.2.0-next.2",
455
+ version: "21.0.0",
456
456
  type: MatListItemBase,
457
457
  isStandalone: true,
458
458
  inputs: {
@@ -479,7 +479,7 @@ class MatListItemBase {
479
479
  }
480
480
  i0.ɵɵngDeclareClassMetadata({
481
481
  minVersion: "12.0.0",
482
- version: "20.2.0-next.2",
482
+ version: "21.0.0",
483
483
  ngImport: i0,
484
484
  type: MatListItemBase,
485
485
  decorators: [{
@@ -538,7 +538,7 @@ class MatActionList extends MatListBase {
538
538
  _isNonInteractive = false;
539
539
  static ɵfac = i0.ɵɵngDeclareFactory({
540
540
  minVersion: "12.0.0",
541
- version: "20.2.0-next.2",
541
+ version: "21.0.0",
542
542
  ngImport: i0,
543
543
  type: MatActionList,
544
544
  deps: null,
@@ -546,7 +546,7 @@ class MatActionList extends MatListBase {
546
546
  });
547
547
  static ɵcmp = i0.ɵɵngDeclareComponent({
548
548
  minVersion: "14.0.0",
549
- version: "20.2.0-next.2",
549
+ version: "21.0.0",
550
550
  type: MatActionList,
551
551
  isStandalone: true,
552
552
  selector: "mat-action-list",
@@ -572,7 +572,7 @@ class MatActionList extends MatListBase {
572
572
  }
573
573
  i0.ɵɵngDeclareClassMetadata({
574
574
  minVersion: "12.0.0",
575
- version: "20.2.0-next.2",
575
+ version: "21.0.0",
576
576
  ngImport: i0,
577
577
  type: MatActionList,
578
578
  decorators: [{
@@ -600,7 +600,7 @@ const MAT_LIST = new InjectionToken('MatList');
600
600
  class MatList extends MatListBase {
601
601
  static ɵfac = i0.ɵɵngDeclareFactory({
602
602
  minVersion: "12.0.0",
603
- version: "20.2.0-next.2",
603
+ version: "21.0.0",
604
604
  ngImport: i0,
605
605
  type: MatList,
606
606
  deps: null,
@@ -608,7 +608,7 @@ class MatList extends MatListBase {
608
608
  });
609
609
  static ɵcmp = i0.ɵɵngDeclareComponent({
610
610
  minVersion: "14.0.0",
611
- version: "20.2.0-next.2",
611
+ version: "21.0.0",
612
612
  type: MatList,
613
613
  isStandalone: true,
614
614
  selector: "mat-list",
@@ -631,7 +631,7 @@ class MatList extends MatListBase {
631
631
  }
632
632
  i0.ɵɵngDeclareClassMetadata({
633
633
  minVersion: "12.0.0",
634
- version: "20.2.0-next.2",
634
+ version: "21.0.0",
635
635
  ngImport: i0,
636
636
  type: MatList,
637
637
  decorators: [{
@@ -674,7 +674,7 @@ class MatListItem extends MatListItemBase {
674
674
  }
675
675
  static ɵfac = i0.ɵɵngDeclareFactory({
676
676
  minVersion: "12.0.0",
677
- version: "20.2.0-next.2",
677
+ version: "21.0.0",
678
678
  ngImport: i0,
679
679
  type: MatListItem,
680
680
  deps: null,
@@ -682,7 +682,7 @@ class MatListItem extends MatListItemBase {
682
682
  });
683
683
  static ɵcmp = i0.ɵɵngDeclareComponent({
684
684
  minVersion: "14.0.0",
685
- version: "20.2.0-next.2",
685
+ version: "21.0.0",
686
686
  type: MatListItem,
687
687
  isStandalone: true,
688
688
  selector: "mat-list-item, a[mat-list-item], button[mat-list-item]",
@@ -743,7 +743,7 @@ class MatListItem extends MatListItemBase {
743
743
  }
744
744
  i0.ɵɵngDeclareClassMetadata({
745
745
  minVersion: "12.0.0",
746
- version: "20.2.0-next.2",
746
+ version: "21.0.0",
747
747
  ngImport: i0,
748
748
  type: MatListItem,
749
749
  decorators: [{
@@ -935,7 +935,7 @@ class MatListOption extends MatListItemBase {
935
935
  }
936
936
  static ɵfac = i0.ɵɵngDeclareFactory({
937
937
  minVersion: "12.0.0",
938
- version: "20.2.0-next.2",
938
+ version: "21.0.0",
939
939
  ngImport: i0,
940
940
  type: MatListOption,
941
941
  deps: null,
@@ -943,7 +943,7 @@ class MatListOption extends MatListItemBase {
943
943
  });
944
944
  static ɵcmp = i0.ɵɵngDeclareComponent({
945
945
  minVersion: "17.0.0",
946
- version: "20.2.0-next.2",
946
+ version: "21.0.0",
947
947
  type: MatListOption,
948
948
  isStandalone: true,
949
949
  selector: "mat-list-option",
@@ -1029,7 +1029,7 @@ class MatListOption extends MatListItemBase {
1029
1029
  }
1030
1030
  i0.ɵɵngDeclareClassMetadata({
1031
1031
  minVersion: "12.0.0",
1032
- version: "20.2.0-next.2",
1032
+ version: "21.0.0",
1033
1033
  ngImport: i0,
1034
1034
  type: MatListOption,
1035
1035
  decorators: [{
@@ -1112,7 +1112,7 @@ i0.ɵɵngDeclareClassMetadata({
1112
1112
  class MatListSubheaderCssMatStyler {
1113
1113
  static ɵfac = i0.ɵɵngDeclareFactory({
1114
1114
  minVersion: "12.0.0",
1115
- version: "20.2.0-next.2",
1115
+ version: "21.0.0",
1116
1116
  ngImport: i0,
1117
1117
  type: MatListSubheaderCssMatStyler,
1118
1118
  deps: [],
@@ -1120,7 +1120,7 @@ class MatListSubheaderCssMatStyler {
1120
1120
  });
1121
1121
  static ɵdir = i0.ɵɵngDeclareDirective({
1122
1122
  minVersion: "14.0.0",
1123
- version: "20.2.0-next.2",
1123
+ version: "21.0.0",
1124
1124
  type: MatListSubheaderCssMatStyler,
1125
1125
  isStandalone: true,
1126
1126
  selector: "[mat-subheader], [matSubheader]",
@@ -1132,7 +1132,7 @@ class MatListSubheaderCssMatStyler {
1132
1132
  }
1133
1133
  i0.ɵɵngDeclareClassMetadata({
1134
1134
  minVersion: "12.0.0",
1135
- version: "20.2.0-next.2",
1135
+ version: "21.0.0",
1136
1136
  ngImport: i0,
1137
1137
  type: MatListSubheaderCssMatStyler,
1138
1138
  decorators: [{
@@ -1151,7 +1151,7 @@ class MatNavList extends MatListBase {
1151
1151
  _isNonInteractive = false;
1152
1152
  static ɵfac = i0.ɵɵngDeclareFactory({
1153
1153
  minVersion: "12.0.0",
1154
- version: "20.2.0-next.2",
1154
+ version: "21.0.0",
1155
1155
  ngImport: i0,
1156
1156
  type: MatNavList,
1157
1157
  deps: null,
@@ -1159,7 +1159,7 @@ class MatNavList extends MatListBase {
1159
1159
  });
1160
1160
  static ɵcmp = i0.ɵɵngDeclareComponent({
1161
1161
  minVersion: "14.0.0",
1162
- version: "20.2.0-next.2",
1162
+ version: "21.0.0",
1163
1163
  type: MatNavList,
1164
1164
  isStandalone: true,
1165
1165
  selector: "mat-nav-list",
@@ -1185,7 +1185,7 @@ class MatNavList extends MatListBase {
1185
1185
  }
1186
1186
  i0.ɵɵngDeclareClassMetadata({
1187
1187
  minVersion: "12.0.0",
1188
- version: "20.2.0-next.2",
1188
+ version: "21.0.0",
1189
1189
  ngImport: i0,
1190
1190
  type: MatNavList,
1191
1191
  decorators: [{
@@ -1446,7 +1446,7 @@ class MatSelectionList extends MatListBase {
1446
1446
  }
1447
1447
  static ɵfac = i0.ɵɵngDeclareFactory({
1448
1448
  minVersion: "12.0.0",
1449
- version: "20.2.0-next.2",
1449
+ version: "21.0.0",
1450
1450
  ngImport: i0,
1451
1451
  type: MatSelectionList,
1452
1452
  deps: [],
@@ -1454,7 +1454,7 @@ class MatSelectionList extends MatListBase {
1454
1454
  });
1455
1455
  static ɵcmp = i0.ɵɵngDeclareComponent({
1456
1456
  minVersion: "14.0.0",
1457
- version: "20.2.0-next.2",
1457
+ version: "21.0.0",
1458
1458
  type: MatSelectionList,
1459
1459
  isStandalone: true,
1460
1460
  selector: "mat-selection-list",
@@ -1505,7 +1505,7 @@ class MatSelectionList extends MatListBase {
1505
1505
  }
1506
1506
  i0.ɵɵngDeclareClassMetadata({
1507
1507
  minVersion: "12.0.0",
1508
- version: "20.2.0-next.2",
1508
+ version: "21.0.0",
1509
1509
  ngImport: i0,
1510
1510
  type: MatSelectionList,
1511
1511
  decorators: [{
@@ -1564,7 +1564,7 @@ i0.ɵɵngDeclareClassMetadata({
1564
1564
  class MatListModule {
1565
1565
  static ɵfac = i0.ɵɵngDeclareFactory({
1566
1566
  minVersion: "12.0.0",
1567
- version: "20.2.0-next.2",
1567
+ version: "21.0.0",
1568
1568
  ngImport: i0,
1569
1569
  type: MatListModule,
1570
1570
  deps: [],
@@ -1572,7 +1572,7 @@ class MatListModule {
1572
1572
  });
1573
1573
  static ɵmod = i0.ɵɵngDeclareNgModule({
1574
1574
  minVersion: "14.0.0",
1575
- version: "20.2.0-next.2",
1575
+ version: "21.0.0",
1576
1576
  ngImport: i0,
1577
1577
  type: MatListModule,
1578
1578
  imports: [ObserversModule, MatRippleModule, MatPseudoCheckboxModule, MatList, MatActionList, MatNavList, MatSelectionList, MatListItem, MatListOption, MatListSubheaderCssMatStyler, MatListItemAvatar, MatListItemIcon, MatListItemLine, MatListItemTitle, MatListItemMeta],
@@ -1580,7 +1580,7 @@ class MatListModule {
1580
1580
  });
1581
1581
  static ɵinj = i0.ɵɵngDeclareInjector({
1582
1582
  minVersion: "12.0.0",
1583
- version: "20.2.0-next.2",
1583
+ version: "21.0.0",
1584
1584
  ngImport: i0,
1585
1585
  type: MatListModule,
1586
1586
  imports: [ObserversModule, MatRippleModule, MatPseudoCheckboxModule, BidiModule, MatDividerModule]
@@ -1588,7 +1588,7 @@ class MatListModule {
1588
1588
  }
1589
1589
  i0.ɵɵngDeclareClassMetadata({
1590
1590
  minVersion: "12.0.0",
1591
- version: "20.2.0-next.2",
1591
+ version: "21.0.0",
1592
1592
  ngImport: i0,
1593
1593
  type: MatListModule,
1594
1594
  decorators: [{