@angular/material 21.3.0-next.0 → 22.0.0-next.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.
Files changed (157) 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 +30 -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 +3 -3
  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 +13 -13
  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 +11 -11
  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 +24 -2
  67. package/fesm2022/datepicker-testing.mjs.map +1 -1
  68. package/fesm2022/datepicker.mjs +82 -82
  69. package/fesm2022/datepicker.mjs.map +1 -1
  70. package/fesm2022/dialog-testing.mjs.map +1 -1
  71. package/fesm2022/dialog.mjs +26 -26
  72. package/fesm2022/dialog.mjs.map +1 -1
  73. package/fesm2022/divider-testing.mjs.map +1 -1
  74. package/fesm2022/divider.mjs +7 -7
  75. package/fesm2022/divider.mjs.map +1 -1
  76. package/fesm2022/expansion-testing.mjs.map +1 -1
  77. package/fesm2022/expansion.mjs +29 -29
  78. package/fesm2022/expansion.mjs.map +1 -1
  79. package/fesm2022/form-field-testing-control.mjs.map +1 -1
  80. package/fesm2022/form-field-testing.mjs.map +1 -1
  81. package/fesm2022/form-field.mjs +4 -4
  82. package/fesm2022/form-field.mjs.map +1 -1
  83. package/fesm2022/grid-list-testing.mjs.map +1 -1
  84. package/fesm2022/grid-list.mjs +22 -22
  85. package/fesm2022/grid-list.mjs.map +1 -1
  86. package/fesm2022/icon-testing.mjs +7 -7
  87. package/fesm2022/icon-testing.mjs.map +1 -1
  88. package/fesm2022/icon.mjs +7 -7
  89. package/fesm2022/icon.mjs.map +1 -1
  90. package/fesm2022/input-testing.mjs.map +1 -1
  91. package/fesm2022/input.mjs +7 -7
  92. package/fesm2022/input.mjs.map +1 -1
  93. package/fesm2022/list-testing.mjs.map +1 -1
  94. package/fesm2022/list.mjs +49 -49
  95. package/fesm2022/list.mjs.map +1 -1
  96. package/fesm2022/material.mjs.map +1 -1
  97. package/fesm2022/menu-testing.mjs.map +1 -1
  98. package/fesm2022/menu.mjs +22 -22
  99. package/fesm2022/menu.mjs.map +1 -1
  100. package/fesm2022/paginator-testing.mjs.map +1 -1
  101. package/fesm2022/paginator.mjs +10 -10
  102. package/fesm2022/paginator.mjs.map +1 -1
  103. package/fesm2022/progress-bar-testing.mjs.map +1 -1
  104. package/fesm2022/progress-bar.mjs +7 -7
  105. package/fesm2022/progress-bar.mjs.map +1 -1
  106. package/fesm2022/progress-spinner-testing.mjs.map +1 -1
  107. package/fesm2022/progress-spinner.mjs +7 -7
  108. package/fesm2022/progress-spinner.mjs.map +1 -1
  109. package/fesm2022/radio-testing.mjs.map +1 -1
  110. package/fesm2022/radio.mjs +10 -10
  111. package/fesm2022/radio.mjs.map +1 -1
  112. package/fesm2022/select-testing.mjs.map +1 -1
  113. package/fesm2022/select.mjs +10 -10
  114. package/fesm2022/select.mjs.map +1 -1
  115. package/fesm2022/sidenav-testing.mjs.map +1 -1
  116. package/fesm2022/sidenav.mjs +22 -22
  117. package/fesm2022/sidenav.mjs.map +1 -1
  118. package/fesm2022/slide-toggle-testing.mjs.map +1 -1
  119. package/fesm2022/slide-toggle.mjs +7 -7
  120. package/fesm2022/slide-toggle.mjs.map +1 -1
  121. package/fesm2022/slider-testing.mjs.map +1 -1
  122. package/fesm2022/slider.mjs +16 -16
  123. package/fesm2022/slider.mjs.map +1 -1
  124. package/fesm2022/snack-bar-testing.mjs.map +1 -1
  125. package/fesm2022/snack-bar.mjs +25 -25
  126. package/fesm2022/snack-bar.mjs.map +1 -1
  127. package/fesm2022/sort-testing.mjs.map +1 -1
  128. package/fesm2022/sort.mjs +13 -13
  129. package/fesm2022/sort.mjs.map +1 -1
  130. package/fesm2022/stepper-testing.mjs.map +1 -1
  131. package/fesm2022/stepper.mjs +31 -31
  132. package/fesm2022/stepper.mjs.map +1 -1
  133. package/fesm2022/table-testing.mjs.map +1 -1
  134. package/fesm2022/table.mjs +60 -60
  135. package/fesm2022/table.mjs.map +1 -1
  136. package/fesm2022/tabs-testing.mjs.map +1 -1
  137. package/fesm2022/tabs.mjs +52 -52
  138. package/fesm2022/tabs.mjs.map +1 -1
  139. package/fesm2022/timepicker-testing.mjs.map +1 -1
  140. package/fesm2022/timepicker.mjs +13 -13
  141. package/fesm2022/timepicker.mjs.map +1 -1
  142. package/fesm2022/toolbar-testing.mjs.map +1 -1
  143. package/fesm2022/toolbar.mjs +10 -10
  144. package/fesm2022/toolbar.mjs.map +1 -1
  145. package/fesm2022/tooltip-testing.mjs.map +1 -1
  146. package/fesm2022/tooltip.mjs +4 -4
  147. package/fesm2022/tooltip.mjs.map +1 -1
  148. package/fesm2022/tree-testing.mjs.map +1 -1
  149. package/fesm2022/tree.mjs +26 -26
  150. package/fesm2022/tree.mjs.map +1 -1
  151. package/package.json +6 -6
  152. package/schematics/migration.json +0 -5
  153. package/schematics/ng-add/index.js +2 -2
  154. package/schematics/ng-update/index_bundled.js +0 -6
  155. package/schematics/ng-update/index_bundled.js.map +1 -1
  156. package/types/_date-range-input-harness-chunk.d.ts +4 -1
  157. package/types/datepicker-testing.d.ts +22 -3
@@ -1 +1 @@
1
- {"version":3,"file":"menu-testing.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/menu/testing/menu-harness.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/menu/testing/context-menu-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 ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessLoader,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {MatIconHarness} from '@angular/material/icon/testing';\nimport {MenuHarnessFilters, MenuItemHarnessFilters} from './menu-harness-filters';\n\n/** Harness for interacting with a mat-menu in tests. */\nexport class MatMenuHarness extends ContentContainerComponentHarness<string> {\n private _documentRootLocator = this.documentRootLocatorFactory();\n\n /** The selector for the host element of a `MatMenu` instance. */\n static hostSelector = '.mat-mdc-menu-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a menu with specific attributes.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatMenuHarness>(\n this: ComponentHarnessConstructor<T>,\n options: MenuHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('triggerText', options.triggerText, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getTriggerText(), text),\n )\n .addOption('triggerIconName', options.triggerIconName, async (harness, triggerIconName) => {\n const result = await harness.locatorForOptional(\n MatIconHarness.with({name: triggerIconName}),\n )();\n return result !== null;\n });\n }\n\n /** Whether the menu is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Whether the menu is open. */\n async isOpen(): Promise<boolean> {\n return !!(await this._getMenuPanel());\n }\n\n /** Gets the text of the menu's trigger element. */\n async getTriggerText(): Promise<string> {\n return (await this.host()).text();\n }\n\n /** Focuses the menu. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the menu. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the menu is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Opens the menu. */\n async open(): Promise<void> {\n if (!(await this.isOpen())) {\n return (await this.host()).click();\n }\n }\n\n /** Closes the menu. */\n async close(): Promise<void> {\n const panel = await this._getMenuPanel();\n if (panel) {\n return panel.click();\n }\n }\n\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n async getItems(\n filters?: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ): Promise<MatMenuItemHarness[]> {\n const panelId = await this._getPanelId();\n if (panelId) {\n return this._documentRootLocator.locatorForAll(\n MatMenuItemHarness.with({\n ...(filters || {}),\n ancestor: `#${panelId}`,\n } as MenuItemHarnessFilters),\n )();\n }\n return [];\n }\n\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n async clickItem(\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ...subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[]\n ): Promise<void> {\n await this.open();\n return clickItemImplementation(await this.getItems(itemFilter), itemFilter, subItemFilters);\n }\n\n protected override async getRootHarnessLoader(): Promise<HarnessLoader> {\n const panelId = await this._getPanelId();\n return this.documentRootLocatorFactory().harnessLoaderFor(`#${panelId}`);\n }\n\n /** Gets the menu panel associated with this menu. */\n private async _getMenuPanel(): Promise<TestElement | null> {\n const panelId = await this._getPanelId();\n return panelId ? this._documentRootLocator.locatorForOptional(`#${panelId}`)() : null;\n }\n\n /** Gets the id of the menu panel associated with this menu. */\n private async _getPanelId(): Promise<string | null> {\n const panelId = await (await this.host()).getAttribute('aria-controls');\n return panelId || null;\n }\n}\n\nexport class MatMenuItemHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatMenuItem` instance. */\n static hostSelector = '.mat-mdc-menu-item';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a menu item with specific attributes.\n * @param options Options for filtering which menu item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatMenuItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: MenuItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text),\n )\n .addOption(\n 'hasSubmenu',\n options.hasSubmenu,\n async (harness, hasSubmenu) => (await harness.hasSubmenu()) === hasSubmenu,\n );\n }\n\n /** Whether the menu is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Gets the text of the menu item. */\n async getText(): Promise<string> {\n return (await this.host()).text();\n }\n\n /** Focuses the menu item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the menu item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the menu item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Clicks the menu item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Whether this item has a submenu. */\n async hasSubmenu(): Promise<boolean> {\n return (await this.host()).matchesSelector(MatMenuHarness.hostSelector);\n }\n\n /** Gets the submenu associated with this menu item, or null if none. */\n async getSubmenu(): Promise<MatMenuHarness | null> {\n if (await this.hasSubmenu()) {\n return new MatMenuHarness(this.locatorFactory);\n }\n return null;\n }\n}\n\nexport async function clickItemImplementation(\n items: MatMenuItemHarness[],\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[],\n): Promise<void> {\n if (!items.length) {\n throw Error(`Could not find item matching ${JSON.stringify(itemFilter)}`);\n }\n\n if (!subItemFilters.length) {\n return await items[0].click();\n }\n\n const menu = await items[0].getSubmenu();\n if (!menu) {\n throw Error(`Item matching ${JSON.stringify(itemFilter)} does not have a submenu`);\n }\n return menu.clickItem(...(subItemFilters as [Omit<MenuItemHarnessFilters, 'ancestor'>]));\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 ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessLoader,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {ContextMenuHarnessFilters, MenuItemHarnessFilters} from './menu-harness-filters';\nimport {clickItemImplementation, MatMenuItemHarness} from './menu-harness';\n\n/** Harness for interacting with context menus in tests. */\nexport class MatContextMenuHarness extends ContentContainerComponentHarness<string> {\n private _documentRootLocator = this.documentRootLocatorFactory();\n\n /** The selector for the host element of a `MatContextMenu` instance. */\n static hostSelector = '.mat-context-menu-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a context menu with specific\n * attributes.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatContextMenuHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ContextMenuHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n /** Whether the menu is open. */\n async isOpen(): Promise<boolean> {\n return !!(await this._getMenuPanel());\n }\n\n /**\n * Opens the menu.\n * @param relativeX X coordinate, relative to the element, to dispatch the opening click at.\n * @param relativeY Y coordinate, relative to the element, to dispatch the opening click at.\n */\n async open(relativeX = 0, relativeY = 0): Promise<void> {\n if (!(await this.isOpen())) {\n return (await this.host()).rightClick(relativeX, relativeY);\n }\n }\n\n /** Closes the menu. */\n async close(): Promise<void> {\n const panel = await this._getMenuPanel();\n if (panel) {\n return panel.click();\n }\n }\n\n /** Gets whether the context menu trigger is disabled. */\n async isDisabled(): Promise<boolean> {\n const host = await this.host();\n return host.hasClass('mat-context-menu-trigger-disabled');\n }\n\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n async getItems(\n filters?: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ): Promise<MatMenuItemHarness[]> {\n const panelId = await this._getPanelId();\n if (panelId) {\n return this._documentRootLocator.locatorForAll(\n MatMenuItemHarness.with({\n ...(filters || {}),\n ancestor: `#${panelId}`,\n } as MenuItemHarnessFilters),\n )();\n }\n return [];\n }\n\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n async clickItem(\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ...subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[]\n ): Promise<void> {\n await this.open();\n return clickItemImplementation(await this.getItems(itemFilter), itemFilter, subItemFilters);\n }\n\n protected override async getRootHarnessLoader(): Promise<HarnessLoader> {\n const panelId = await this._getPanelId();\n return this.documentRootLocatorFactory().harnessLoaderFor(`#${panelId}`);\n }\n\n /** Gets the menu panel associated with this menu. */\n private async _getMenuPanel(): Promise<TestElement | null> {\n const panelId = await this._getPanelId();\n return panelId ? this._documentRootLocator.locatorForOptional(`#${panelId}`)() : null;\n }\n\n /** Gets the id of the menu panel associated with this menu. */\n private async _getPanelId(): Promise<string | null> {\n const panelId = await (await this.host()).getAttribute('aria-controls');\n return panelId || null;\n }\n}\n"],"names":["MatMenuHarness","ContentContainerComponentHarness","_documentRootLocator","documentRootLocatorFactory","hostSelector","with","options","HarnessPredicate","addOption","triggerText","harness","text","stringMatches","getTriggerText","triggerIconName","result","locatorForOptional","MatIconHarness","name","isDisabled","disabled","host","getAttribute","coerceBooleanProperty","isOpen","_getMenuPanel","focus","blur","isFocused","open","click","close","panel","getItems","filters","panelId","_getPanelId","locatorForAll","MatMenuItemHarness","ancestor","clickItem","itemFilter","subItemFilters","clickItemImplementation","getRootHarnessLoader","harnessLoaderFor","getText","hasSubmenu","matchesSelector","getSubmenu","locatorFactory","items","length","Error","JSON","stringify","menu","MatContextMenuHarness","relativeX","relativeY","rightClick","hasClass"],"mappings":";;;;AAoBM,MAAOA,cAAe,SAAQC,gCAAwC,CAAA;AAClEC,EAAAA,oBAAoB,GAAG,IAAI,CAACC,0BAA0B,EAAE;EAGhE,OAAOC,YAAY,GAAG,uBAAuB;AAO7C,EAAA,OAAOC,IAAIA,CAETC,OAAA,GAA8B,EAAE,EAAA;IAEhC,OAAO,IAAIC,gBAAgB,CAAC,IAAI,EAAED,OAAO,CAAA,CACtCE,SAAS,CAAC,aAAa,EAAEF,OAAO,CAACG,WAAW,EAAE,CAACC,OAAO,EAAEC,IAAI,KAC3DJ,gBAAgB,CAACK,aAAa,CAACF,OAAO,CAACG,cAAc,EAAE,EAAEF,IAAI,CAAC,CAAA,CAE/DH,SAAS,CAAC,iBAAiB,EAAEF,OAAO,CAACQ,eAAe,EAAE,OAAOJ,OAAO,EAAEI,eAAe,KAAI;MACxF,MAAMC,MAAM,GAAG,MAAML,OAAO,CAACM,kBAAkB,CAC7CC,cAAc,CAACZ,IAAI,CAAC;AAACa,QAAAA,IAAI,EAAEJ;OAAgB,CAAC,CAC7C,EAAE;MACH,OAAOC,MAAM,KAAK,IAAI;AACxB,KAAC,CAAC;AACN;EAGA,MAAMI,UAAUA,GAAA;AACd,IAAA,MAAMC,QAAQ,GAAG,CAAC,MAAM,IAAI,CAACC,IAAI,EAAE,EAAEC,YAAY,CAAC,UAAU,CAAC;AAC7D,IAAA,OAAOC,qBAAqB,CAAC,MAAMH,QAAQ,CAAC;AAC9C;EAGA,MAAMI,MAAMA,GAAA;IACV,OAAO,CAAC,EAAE,MAAM,IAAI,CAACC,aAAa,EAAE,CAAC;AACvC;EAGA,MAAMZ,cAAcA,GAAA;IAClB,OAAO,CAAC,MAAM,IAAI,CAACQ,IAAI,EAAE,EAAEV,IAAI,EAAE;AACnC;EAGA,MAAMe,KAAKA,GAAA;IACT,OAAO,CAAC,MAAM,IAAI,CAACL,IAAI,EAAE,EAAEK,KAAK,EAAE;AACpC;EAGA,MAAMC,IAAIA,GAAA;IACR,OAAO,CAAC,MAAM,IAAI,CAACN,IAAI,EAAE,EAAEM,IAAI,EAAE;AACnC;EAGA,MAAMC,SAASA,GAAA;IACb,OAAO,CAAC,MAAM,IAAI,CAACP,IAAI,EAAE,EAAEO,SAAS,EAAE;AACxC;EAGA,MAAMC,IAAIA,GAAA;IACR,IAAI,EAAE,MAAM,IAAI,CAACL,MAAM,EAAE,CAAC,EAAE;MAC1B,OAAO,CAAC,MAAM,IAAI,CAACH,IAAI,EAAE,EAAES,KAAK,EAAE;AACpC;AACF;EAGA,MAAMC,KAAKA,GAAA;AACT,IAAA,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACP,aAAa,EAAE;AACxC,IAAA,IAAIO,KAAK,EAAE;AACT,MAAA,OAAOA,KAAK,CAACF,KAAK,EAAE;AACtB;AACF;EAMA,MAAMG,QAAQA,CACZC,OAAkD,EAAA;AAElD,IAAA,MAAMC,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;AACxC,IAAA,IAAID,OAAO,EAAE;MACX,OAAO,IAAI,CAACjC,oBAAoB,CAACmC,aAAa,CAC5CC,kBAAkB,CAACjC,IAAI,CAAC;AACtB,QAAA,IAAI6B,OAAO,IAAI,EAAE,CAAC;QAClBK,QAAQ,EAAE,IAAIJ,OAAO,CAAA;OACI,CAAC,CAC7B,EAAE;AACL;AACA,IAAA,OAAO,EAAE;AACX;AAUA,EAAA,MAAMK,SAASA,CACbC,UAAoD,EACpD,GAAGC,cAA0D,EAAA;AAE7D,IAAA,MAAM,IAAI,CAACb,IAAI,EAAE;AACjB,IAAA,OAAOc,uBAAuB,CAAC,MAAM,IAAI,CAACV,QAAQ,CAACQ,UAAU,CAAC,EAAEA,UAAU,EAAEC,cAAc,CAAC;AAC7F;EAEmB,MAAME,oBAAoBA,GAAA;AAC3C,IAAA,MAAMT,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;IACxC,OAAO,IAAI,CAACjC,0BAA0B,EAAE,CAAC0C,gBAAgB,CAAC,CAAA,CAAA,EAAIV,OAAO,CAAA,CAAE,CAAC;AAC1E;EAGQ,MAAMV,aAAaA,GAAA;AACzB,IAAA,MAAMU,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;AACxC,IAAA,OAAOD,OAAO,GAAG,IAAI,CAACjC,oBAAoB,CAACc,kBAAkB,CAAC,CAAA,CAAA,EAAImB,OAAO,CAAE,CAAA,CAAC,EAAE,GAAG,IAAI;AACvF;EAGQ,MAAMC,WAAWA,GAAA;AACvB,IAAA,MAAMD,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,CAACd,IAAI,EAAE,EAAEC,YAAY,CAAC,eAAe,CAAC;IACvE,OAAOa,OAAO,IAAI,IAAI;AACxB;;AAGI,MAAOG,kBAAmB,SAAQrC,gCAAwC,CAAA;EAE9E,OAAOG,YAAY,GAAG,oBAAoB;AAO1C,EAAA,OAAOC,IAAIA,CAETC,OAAA,GAAkC,EAAE,EAAA;IAEpC,OAAO,IAAIC,gBAAgB,CAAC,IAAI,EAAED,OAAO,CAAA,CACtCE,SAAS,CAAC,MAAM,EAAEF,OAAO,CAACK,IAAI,EAAE,CAACD,OAAO,EAAEC,IAAI,KAC7CJ,gBAAgB,CAACK,aAAa,CAACF,OAAO,CAACoC,OAAO,EAAE,EAAEnC,IAAI,CAAC,CAAA,CAExDH,SAAS,CACR,YAAY,EACZF,OAAO,CAACyC,UAAU,EAClB,OAAOrC,OAAO,EAAEqC,UAAU,KAAK,CAAC,MAAMrC,OAAO,CAACqC,UAAU,EAAE,MAAMA,UAAU,CAC3E;AACL;EAGA,MAAM5B,UAAUA,GAAA;AACd,IAAA,MAAMC,QAAQ,GAAG,CAAC,MAAM,IAAI,CAACC,IAAI,EAAE,EAAEC,YAAY,CAAC,UAAU,CAAC;AAC7D,IAAA,OAAOC,qBAAqB,CAAC,MAAMH,QAAQ,CAAC;AAC9C;EAGA,MAAM0B,OAAOA,GAAA;IACX,OAAO,CAAC,MAAM,IAAI,CAACzB,IAAI,EAAE,EAAEV,IAAI,EAAE;AACnC;EAGA,MAAMe,KAAKA,GAAA;IACT,OAAO,CAAC,MAAM,IAAI,CAACL,IAAI,EAAE,EAAEK,KAAK,EAAE;AACpC;EAGA,MAAMC,IAAIA,GAAA;IACR,OAAO,CAAC,MAAM,IAAI,CAACN,IAAI,EAAE,EAAEM,IAAI,EAAE;AACnC;EAGA,MAAMC,SAASA,GAAA;IACb,OAAO,CAAC,MAAM,IAAI,CAACP,IAAI,EAAE,EAAEO,SAAS,EAAE;AACxC;EAGA,MAAME,KAAKA,GAAA;IACT,OAAO,CAAC,MAAM,IAAI,CAACT,IAAI,EAAE,EAAES,KAAK,EAAE;AACpC;EAGA,MAAMiB,UAAUA,GAAA;AACd,IAAA,OAAO,CAAC,MAAM,IAAI,CAAC1B,IAAI,EAAE,EAAE2B,eAAe,CAAChD,cAAc,CAACI,YAAY,CAAC;AACzE;EAGA,MAAM6C,UAAUA,GAAA;AACd,IAAA,IAAI,MAAM,IAAI,CAACF,UAAU,EAAE,EAAE;AAC3B,MAAA,OAAO,IAAI/C,cAAc,CAAC,IAAI,CAACkD,cAAc,CAAC;AAChD;AACA,IAAA,OAAO,IAAI;AACb;;AAGK,eAAeP,uBAAuBA,CAC3CQ,KAA2B,EAC3BV,UAAoD,EACpDC,cAA0D,EAAA;AAE1D,EAAA,IAAI,CAACS,KAAK,CAACC,MAAM,EAAE;IACjB,MAAMC,KAAK,CAAC,CAAA,6BAAA,EAAgCC,IAAI,CAACC,SAAS,CAACd,UAAU,CAAC,CAAA,CAAE,CAAC;AAC3E;AAEA,EAAA,IAAI,CAACC,cAAc,CAACU,MAAM,EAAE;IAC1B,OAAO,MAAMD,KAAK,CAAC,CAAC,CAAC,CAACrB,KAAK,EAAE;AAC/B;EAEA,MAAM0B,IAAI,GAAG,MAAML,KAAK,CAAC,CAAC,CAAC,CAACF,UAAU,EAAE;EACxC,IAAI,CAACO,IAAI,EAAE;IACT,MAAMH,KAAK,CAAC,CAAA,cAAA,EAAiBC,IAAI,CAACC,SAAS,CAACd,UAAU,CAAC,CAAA,wBAAA,CAA0B,CAAC;AACpF;AACA,EAAA,OAAOe,IAAI,CAAChB,SAAS,CAAC,GAAIE,cAA6D,CAAC;AAC1F;;ACtNM,MAAOe,qBAAsB,SAAQxD,gCAAwC,CAAA;AACzEC,EAAAA,oBAAoB,GAAG,IAAI,CAACC,0BAA0B,EAAE;EAGhE,OAAOC,YAAY,GAAG,2BAA2B;AAQjD,EAAA,OAAOC,IAAIA,CAETC,OAAA,GAAqC,EAAE,EAAA;AAEvC,IAAA,OAAO,IAAIC,gBAAgB,CAAC,IAAI,EAAED,OAAO,CAAC;AAC5C;EAGA,MAAMkB,MAAMA,GAAA;IACV,OAAO,CAAC,EAAE,MAAM,IAAI,CAACC,aAAa,EAAE,CAAC;AACvC;EAOA,MAAMI,IAAIA,CAAC6B,SAAS,GAAG,CAAC,EAAEC,SAAS,GAAG,CAAC,EAAA;IACrC,IAAI,EAAE,MAAM,IAAI,CAACnC,MAAM,EAAE,CAAC,EAAE;AAC1B,MAAA,OAAO,CAAC,MAAM,IAAI,CAACH,IAAI,EAAE,EAAEuC,UAAU,CAACF,SAAS,EAAEC,SAAS,CAAC;AAC7D;AACF;EAGA,MAAM5B,KAAKA,GAAA;AACT,IAAA,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACP,aAAa,EAAE;AACxC,IAAA,IAAIO,KAAK,EAAE;AACT,MAAA,OAAOA,KAAK,CAACF,KAAK,EAAE;AACtB;AACF;EAGA,MAAMX,UAAUA,GAAA;AACd,IAAA,MAAME,IAAI,GAAG,MAAM,IAAI,CAACA,IAAI,EAAE;AAC9B,IAAA,OAAOA,IAAI,CAACwC,QAAQ,CAAC,mCAAmC,CAAC;AAC3D;EAMA,MAAM5B,QAAQA,CACZC,OAAkD,EAAA;AAElD,IAAA,MAAMC,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;AACxC,IAAA,IAAID,OAAO,EAAE;MACX,OAAO,IAAI,CAACjC,oBAAoB,CAACmC,aAAa,CAC5CC,kBAAkB,CAACjC,IAAI,CAAC;AACtB,QAAA,IAAI6B,OAAO,IAAI,EAAE,CAAC;QAClBK,QAAQ,EAAE,IAAIJ,OAAO,CAAA;OACI,CAAC,CAC7B,EAAE;AACL;AACA,IAAA,OAAO,EAAE;AACX;AAUA,EAAA,MAAMK,SAASA,CACbC,UAAoD,EACpD,GAAGC,cAA0D,EAAA;AAE7D,IAAA,MAAM,IAAI,CAACb,IAAI,EAAE;AACjB,IAAA,OAAOc,uBAAuB,CAAC,MAAM,IAAI,CAACV,QAAQ,CAACQ,UAAU,CAAC,EAAEA,UAAU,EAAEC,cAAc,CAAC;AAC7F;EAEmB,MAAME,oBAAoBA,GAAA;AAC3C,IAAA,MAAMT,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;IACxC,OAAO,IAAI,CAACjC,0BAA0B,EAAE,CAAC0C,gBAAgB,CAAC,CAAA,CAAA,EAAIV,OAAO,CAAA,CAAE,CAAC;AAC1E;EAGQ,MAAMV,aAAaA,GAAA;AACzB,IAAA,MAAMU,OAAO,GAAG,MAAM,IAAI,CAACC,WAAW,EAAE;AACxC,IAAA,OAAOD,OAAO,GAAG,IAAI,CAACjC,oBAAoB,CAACc,kBAAkB,CAAC,CAAA,CAAA,EAAImB,OAAO,CAAE,CAAA,CAAC,EAAE,GAAG,IAAI;AACvF;EAGQ,MAAMC,WAAWA,GAAA;AACvB,IAAA,MAAMD,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,CAACd,IAAI,EAAE,EAAEC,YAAY,CAAC,eAAe,CAAC;IACvE,OAAOa,OAAO,IAAI,IAAI;AACxB;;;;;"}
1
+ {"version":3,"file":"menu-testing.mjs","sources":["../../../../../k8-fastbuild-ST-fdfa778d11ba/bin/src/material/menu/testing/menu-harness.ts","../../../../../k8-fastbuild-ST-fdfa778d11ba/bin/src/material/menu/testing/context-menu-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 ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessLoader,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {MatIconHarness} from '@angular/material/icon/testing';\nimport {MenuHarnessFilters, MenuItemHarnessFilters} from './menu-harness-filters';\n\n/** Harness for interacting with a mat-menu in tests. */\nexport class MatMenuHarness extends ContentContainerComponentHarness<string> {\n private _documentRootLocator = this.documentRootLocatorFactory();\n\n /** The selector for the host element of a `MatMenu` instance. */\n static hostSelector = '.mat-mdc-menu-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a menu with specific attributes.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatMenuHarness>(\n this: ComponentHarnessConstructor<T>,\n options: MenuHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('triggerText', options.triggerText, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getTriggerText(), text),\n )\n .addOption('triggerIconName', options.triggerIconName, async (harness, triggerIconName) => {\n const result = await harness.locatorForOptional(\n MatIconHarness.with({name: triggerIconName}),\n )();\n return result !== null;\n });\n }\n\n /** Whether the menu is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Whether the menu is open. */\n async isOpen(): Promise<boolean> {\n return !!(await this._getMenuPanel());\n }\n\n /** Gets the text of the menu's trigger element. */\n async getTriggerText(): Promise<string> {\n return (await this.host()).text();\n }\n\n /** Focuses the menu. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the menu. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the menu is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Opens the menu. */\n async open(): Promise<void> {\n if (!(await this.isOpen())) {\n return (await this.host()).click();\n }\n }\n\n /** Closes the menu. */\n async close(): Promise<void> {\n const panel = await this._getMenuPanel();\n if (panel) {\n return panel.click();\n }\n }\n\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n async getItems(\n filters?: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ): Promise<MatMenuItemHarness[]> {\n const panelId = await this._getPanelId();\n if (panelId) {\n return this._documentRootLocator.locatorForAll(\n MatMenuItemHarness.with({\n ...(filters || {}),\n ancestor: `#${panelId}`,\n } as MenuItemHarnessFilters),\n )();\n }\n return [];\n }\n\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n async clickItem(\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ...subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[]\n ): Promise<void> {\n await this.open();\n return clickItemImplementation(await this.getItems(itemFilter), itemFilter, subItemFilters);\n }\n\n protected override async getRootHarnessLoader(): Promise<HarnessLoader> {\n const panelId = await this._getPanelId();\n return this.documentRootLocatorFactory().harnessLoaderFor(`#${panelId}`);\n }\n\n /** Gets the menu panel associated with this menu. */\n private async _getMenuPanel(): Promise<TestElement | null> {\n const panelId = await this._getPanelId();\n return panelId ? this._documentRootLocator.locatorForOptional(`#${panelId}`)() : null;\n }\n\n /** Gets the id of the menu panel associated with this menu. */\n private async _getPanelId(): Promise<string | null> {\n const panelId = await (await this.host()).getAttribute('aria-controls');\n return panelId || null;\n }\n}\n\nexport class MatMenuItemHarness extends ContentContainerComponentHarness<string> {\n /** The selector for the host element of a `MatMenuItem` instance. */\n static hostSelector = '.mat-mdc-menu-item';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a menu item with specific attributes.\n * @param options Options for filtering which menu item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatMenuItemHarness>(\n this: ComponentHarnessConstructor<T>,\n options: MenuItemHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text),\n )\n .addOption(\n 'hasSubmenu',\n options.hasSubmenu,\n async (harness, hasSubmenu) => (await harness.hasSubmenu()) === hasSubmenu,\n );\n }\n\n /** Whether the menu is disabled. */\n async isDisabled(): Promise<boolean> {\n const disabled = (await this.host()).getAttribute('disabled');\n return coerceBooleanProperty(await disabled);\n }\n\n /** Gets the text of the menu item. */\n async getText(): Promise<string> {\n return (await this.host()).text();\n }\n\n /** Focuses the menu item. */\n async focus(): Promise<void> {\n return (await this.host()).focus();\n }\n\n /** Blurs the menu item. */\n async blur(): Promise<void> {\n return (await this.host()).blur();\n }\n\n /** Whether the menu item is focused. */\n async isFocused(): Promise<boolean> {\n return (await this.host()).isFocused();\n }\n\n /** Clicks the menu item. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Whether this item has a submenu. */\n async hasSubmenu(): Promise<boolean> {\n return (await this.host()).matchesSelector(MatMenuHarness.hostSelector);\n }\n\n /** Gets the submenu associated with this menu item, or null if none. */\n async getSubmenu(): Promise<MatMenuHarness | null> {\n if (await this.hasSubmenu()) {\n return new MatMenuHarness(this.locatorFactory);\n }\n return null;\n }\n}\n\nexport async function clickItemImplementation(\n items: MatMenuItemHarness[],\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[],\n): Promise<void> {\n if (!items.length) {\n throw Error(`Could not find item matching ${JSON.stringify(itemFilter)}`);\n }\n\n if (!subItemFilters.length) {\n return await items[0].click();\n }\n\n const menu = await items[0].getSubmenu();\n if (!menu) {\n throw Error(`Item matching ${JSON.stringify(itemFilter)} does not have a submenu`);\n }\n return menu.clickItem(...(subItemFilters as [Omit<MenuItemHarnessFilters, 'ancestor'>]));\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 ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessLoader,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {ContextMenuHarnessFilters, MenuItemHarnessFilters} from './menu-harness-filters';\nimport {clickItemImplementation, MatMenuItemHarness} from './menu-harness';\n\n/** Harness for interacting with context menus in tests. */\nexport class MatContextMenuHarness extends ContentContainerComponentHarness<string> {\n private _documentRootLocator = this.documentRootLocatorFactory();\n\n /** The selector for the host element of a `MatContextMenu` instance. */\n static hostSelector = '.mat-context-menu-trigger';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a context menu with specific\n * attributes.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatContextMenuHarness>(\n this: ComponentHarnessConstructor<T>,\n options: ContextMenuHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n\n /** Whether the menu is open. */\n async isOpen(): Promise<boolean> {\n return !!(await this._getMenuPanel());\n }\n\n /**\n * Opens the menu.\n * @param relativeX X coordinate, relative to the element, to dispatch the opening click at.\n * @param relativeY Y coordinate, relative to the element, to dispatch the opening click at.\n */\n async open(relativeX = 0, relativeY = 0): Promise<void> {\n if (!(await this.isOpen())) {\n return (await this.host()).rightClick(relativeX, relativeY);\n }\n }\n\n /** Closes the menu. */\n async close(): Promise<void> {\n const panel = await this._getMenuPanel();\n if (panel) {\n return panel.click();\n }\n }\n\n /** Gets whether the context menu trigger is disabled. */\n async isDisabled(): Promise<boolean> {\n const host = await this.host();\n return host.hasClass('mat-context-menu-trigger-disabled');\n }\n\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n async getItems(\n filters?: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ): Promise<MatMenuItemHarness[]> {\n const panelId = await this._getPanelId();\n if (panelId) {\n return this._documentRootLocator.locatorForAll(\n MatMenuItemHarness.with({\n ...(filters || {}),\n ancestor: `#${panelId}`,\n } as MenuItemHarnessFilters),\n )();\n }\n return [];\n }\n\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n async clickItem(\n itemFilter: Omit<MenuItemHarnessFilters, 'ancestor'>,\n ...subItemFilters: Omit<MenuItemHarnessFilters, 'ancestor'>[]\n ): Promise<void> {\n await this.open();\n return clickItemImplementation(await this.getItems(itemFilter), itemFilter, subItemFilters);\n }\n\n protected override async getRootHarnessLoader(): Promise<HarnessLoader> {\n const panelId = await this._getPanelId();\n return this.documentRootLocatorFactory().harnessLoaderFor(`#${panelId}`);\n }\n\n /** Gets the menu panel associated with this menu. */\n private async _getMenuPanel(): Promise<TestElement | null> {\n const panelId = await this._getPanelId();\n return panelId ? this._documentRootLocator.locatorForOptional(`#${panelId}`)() : null;\n }\n\n /** Gets the id of the menu panel associated with this menu. */\n private async _getPanelId(): Promise<string | null> {\n const panelId = await (await this.host()).getAttribute('aria-controls');\n return panelId || null;\n }\n}\n"],"names":["MatMenuHarness","ContentContainerComponentHarness","_documentRootLocator","documentRootLocatorFactory","hostSelector","with","options","HarnessPredicate","addOption","triggerText","harness","text","stringMatches","getTriggerText","triggerIconName","result","locatorForOptional","MatIconHarness","name","isDisabled","disabled","host","getAttribute","coerceBooleanProperty","isOpen","_getMenuPanel","focus","blur","isFocused","open","click","close","panel","getItems","filters","panelId","_getPanelId","locatorForAll","MatMenuItemHarness","ancestor","clickItem","itemFilter","subItemFilters","clickItemImplementation","getRootHarnessLoader","harnessLoaderFor","getText","hasSubmenu","matchesSelector","getSubmenu","locatorFactory","items","length","Error","JSON","stringify","menu","MatContextMenuHarness","relativeX","relativeY","rightClick","hasClass"],"mappings":"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"}
package/fesm2022/menu.mjs CHANGED
@@ -97,7 +97,7 @@ class MatMenuItem {
97
97
  }
98
98
  static ɵfac = i0.ɵɵngDeclareFactory({
99
99
  minVersion: "12.0.0",
100
- version: "21.0.3",
100
+ version: "22.0.0-next.1",
101
101
  ngImport: i0,
102
102
  type: MatMenuItem,
103
103
  deps: [],
@@ -105,7 +105,7 @@ class MatMenuItem {
105
105
  });
106
106
  static ɵcmp = i0.ɵɵngDeclareComponent({
107
107
  minVersion: "17.0.0",
108
- version: "21.0.3",
108
+ version: "22.0.0-next.1",
109
109
  type: MatMenuItem,
110
110
  isStandalone: true,
111
111
  selector: "[mat-menu-item]",
@@ -145,7 +145,7 @@ class MatMenuItem {
145
145
  }
146
146
  i0.ɵɵngDeclareClassMetadata({
147
147
  minVersion: "12.0.0",
148
- version: "21.0.3",
148
+ version: "22.0.0-next.1",
149
149
  ngImport: i0,
150
150
  type: MatMenuItem,
151
151
  decorators: [{
@@ -239,7 +239,7 @@ class MatMenuContent {
239
239
  }
240
240
  static ɵfac = i0.ɵɵngDeclareFactory({
241
241
  minVersion: "12.0.0",
242
- version: "21.0.3",
242
+ version: "22.0.0-next.1",
243
243
  ngImport: i0,
244
244
  type: MatMenuContent,
245
245
  deps: [],
@@ -247,7 +247,7 @@ class MatMenuContent {
247
247
  });
248
248
  static ɵdir = i0.ɵɵngDeclareDirective({
249
249
  minVersion: "14.0.0",
250
- version: "21.0.3",
250
+ version: "22.0.0-next.1",
251
251
  type: MatMenuContent,
252
252
  isStandalone: true,
253
253
  selector: "ng-template[matMenuContent]",
@@ -260,7 +260,7 @@ class MatMenuContent {
260
260
  }
261
261
  i0.ɵɵngDeclareClassMetadata({
262
262
  minVersion: "12.0.0",
263
- version: "21.0.3",
263
+ version: "22.0.0-next.1",
264
264
  ngImport: i0,
265
265
  type: MatMenuContent,
266
266
  decorators: [{
@@ -516,7 +516,7 @@ class MatMenu {
516
516
  }
517
517
  static ɵfac = i0.ɵɵngDeclareFactory({
518
518
  minVersion: "12.0.0",
519
- version: "21.0.3",
519
+ version: "22.0.0-next.1",
520
520
  ngImport: i0,
521
521
  type: MatMenu,
522
522
  deps: [],
@@ -524,7 +524,7 @@ class MatMenu {
524
524
  });
525
525
  static ɵcmp = i0.ɵɵngDeclareComponent({
526
526
  minVersion: "16.1.0",
527
- version: "21.0.3",
527
+ version: "22.0.0-next.1",
528
528
  type: MatMenu,
529
529
  isStandalone: true,
530
530
  selector: "mat-menu",
@@ -584,7 +584,7 @@ class MatMenu {
584
584
  }
585
585
  i0.ɵɵngDeclareClassMetadata({
586
586
  minVersion: "12.0.0",
587
- version: "21.0.3",
587
+ version: "22.0.0-next.1",
588
588
  ngImport: i0,
589
589
  type: MatMenu,
590
590
  decorators: [{
@@ -956,7 +956,7 @@ class MatMenuTriggerBase {
956
956
  }
957
957
  static ɵfac = i0.ɵɵngDeclareFactory({
958
958
  minVersion: "12.0.0",
959
- version: "21.0.3",
959
+ version: "22.0.0-next.1",
960
960
  ngImport: i0,
961
961
  type: MatMenuTriggerBase,
962
962
  deps: "invalid",
@@ -964,7 +964,7 @@ class MatMenuTriggerBase {
964
964
  });
965
965
  static ɵdir = i0.ɵɵngDeclareDirective({
966
966
  minVersion: "14.0.0",
967
- version: "21.0.3",
967
+ version: "22.0.0-next.1",
968
968
  type: MatMenuTriggerBase,
969
969
  isStandalone: true,
970
970
  ngImport: i0
@@ -972,7 +972,7 @@ class MatMenuTriggerBase {
972
972
  }
973
973
  i0.ɵɵngDeclareClassMetadata({
974
974
  minVersion: "12.0.0",
975
- version: "21.0.3",
975
+ version: "22.0.0-next.1",
976
976
  ngImport: i0,
977
977
  type: MatMenuTriggerBase,
978
978
  decorators: [{
@@ -1082,7 +1082,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1082
1082
  }
1083
1083
  static ɵfac = i0.ɵɵngDeclareFactory({
1084
1084
  minVersion: "12.0.0",
1085
- version: "21.0.3",
1085
+ version: "22.0.0-next.1",
1086
1086
  ngImport: i0,
1087
1087
  type: MatMenuTrigger,
1088
1088
  deps: [],
@@ -1090,7 +1090,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1090
1090
  });
1091
1091
  static ɵdir = i0.ɵɵngDeclareDirective({
1092
1092
  minVersion: "14.0.0",
1093
- version: "21.0.3",
1093
+ version: "22.0.0-next.1",
1094
1094
  type: MatMenuTrigger,
1095
1095
  isStandalone: true,
1096
1096
  selector: "[mat-menu-trigger-for], [matMenuTriggerFor]",
@@ -1126,7 +1126,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1126
1126
  }
1127
1127
  i0.ɵɵngDeclareClassMetadata({
1128
1128
  minVersion: "12.0.0",
1129
- version: "21.0.3",
1129
+ version: "22.0.0-next.1",
1130
1130
  ngImport: i0,
1131
1131
  type: MatMenuTrigger,
1132
1132
  decorators: [{
@@ -1290,7 +1290,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1290
1290
  }
1291
1291
  static ɵfac = i0.ɵɵngDeclareFactory({
1292
1292
  minVersion: "12.0.0",
1293
- version: "21.0.3",
1293
+ version: "22.0.0-next.1",
1294
1294
  ngImport: i0,
1295
1295
  type: MatContextMenuTrigger,
1296
1296
  deps: [],
@@ -1298,7 +1298,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1298
1298
  });
1299
1299
  static ɵdir = i0.ɵɵngDeclareDirective({
1300
1300
  minVersion: "16.1.0",
1301
- version: "21.0.3",
1301
+ version: "22.0.0-next.1",
1302
1302
  type: MatContextMenuTrigger,
1303
1303
  isStandalone: true,
1304
1304
  selector: "[matContextMenuTriggerFor]",
@@ -1329,7 +1329,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1329
1329
  }
1330
1330
  i0.ɵɵngDeclareClassMetadata({
1331
1331
  minVersion: "12.0.0",
1332
- version: "21.0.3",
1332
+ version: "22.0.0-next.1",
1333
1333
  ngImport: i0,
1334
1334
  type: MatContextMenuTrigger,
1335
1335
  decorators: [{
@@ -1381,7 +1381,7 @@ i0.ɵɵngDeclareClassMetadata({
1381
1381
  class MatMenuModule {
1382
1382
  static ɵfac = i0.ɵɵngDeclareFactory({
1383
1383
  minVersion: "12.0.0",
1384
- version: "21.0.3",
1384
+ version: "22.0.0-next.1",
1385
1385
  ngImport: i0,
1386
1386
  type: MatMenuModule,
1387
1387
  deps: [],
@@ -1389,7 +1389,7 @@ class MatMenuModule {
1389
1389
  });
1390
1390
  static ɵmod = i0.ɵɵngDeclareNgModule({
1391
1391
  minVersion: "14.0.0",
1392
- version: "21.0.3",
1392
+ version: "22.0.0-next.1",
1393
1393
  ngImport: i0,
1394
1394
  type: MatMenuModule,
1395
1395
  imports: [MatRippleModule, OverlayModule, MatMenu, MatMenuItem, MatMenuContent, MatMenuTrigger, MatContextMenuTrigger],
@@ -1397,7 +1397,7 @@ class MatMenuModule {
1397
1397
  });
1398
1398
  static ɵinj = i0.ɵɵngDeclareInjector({
1399
1399
  minVersion: "12.0.0",
1400
- version: "21.0.3",
1400
+ version: "22.0.0-next.1",
1401
1401
  ngImport: i0,
1402
1402
  type: MatMenuModule,
1403
1403
  imports: [MatRippleModule, OverlayModule, BidiModule, CdkScrollableModule]
@@ -1405,7 +1405,7 @@ class MatMenuModule {
1405
1405
  }
1406
1406
  i0.ɵɵngDeclareClassMetadata({
1407
1407
  minVersion: "12.0.0",
1408
- version: "21.0.3",
1408
+ version: "22.0.0-next.1",
1409
1409
  ngImport: i0,
1410
1410
  type: MatMenuModule,
1411
1411
  decorators: [{