@angular/material 22.0.0-rc.2 → 22.0.0-rc.3

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 (154) 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 +24 -16
  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 +82 -82
  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 +7 -7
  86. package/fesm2022/icon-testing.mjs.map +1 -1
  87. package/fesm2022/icon.mjs +7 -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 +24 -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 +10 -10
  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 +13 -13
  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/_badge-chunk.d.ts +16 -3
  153. package/types/badge.d.ts +1 -1
  154. package/types/bottom-sheet.d.ts +1 -1
@@ -1 +1 @@
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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"}
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":"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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: "22.0.0-rc.0",
100
+ version: "22.0.0-rc.2",
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: "22.0.0-rc.0",
108
+ version: "22.0.0-rc.2",
109
109
  type: MatMenuItem,
110
110
  isStandalone: true,
111
111
  selector: "[mat-menu-item]",
@@ -144,7 +144,7 @@ class MatMenuItem {
144
144
  }
145
145
  i0.ɵɵngDeclareClassMetadata({
146
146
  minVersion: "12.0.0",
147
- version: "22.0.0-rc.0",
147
+ version: "22.0.0-rc.2",
148
148
  ngImport: i0,
149
149
  type: MatMenuItem,
150
150
  decorators: [{
@@ -236,7 +236,7 @@ class MatMenuContent {
236
236
  }
237
237
  static ɵfac = i0.ɵɵngDeclareFactory({
238
238
  minVersion: "12.0.0",
239
- version: "22.0.0-rc.0",
239
+ version: "22.0.0-rc.2",
240
240
  ngImport: i0,
241
241
  type: MatMenuContent,
242
242
  deps: [],
@@ -244,7 +244,7 @@ class MatMenuContent {
244
244
  });
245
245
  static ɵdir = i0.ɵɵngDeclareDirective({
246
246
  minVersion: "14.0.0",
247
- version: "22.0.0-rc.0",
247
+ version: "22.0.0-rc.2",
248
248
  type: MatMenuContent,
249
249
  isStandalone: true,
250
250
  selector: "ng-template[matMenuContent]",
@@ -257,7 +257,7 @@ class MatMenuContent {
257
257
  }
258
258
  i0.ɵɵngDeclareClassMetadata({
259
259
  minVersion: "12.0.0",
260
- version: "22.0.0-rc.0",
260
+ version: "22.0.0-rc.2",
261
261
  ngImport: i0,
262
262
  type: MatMenuContent,
263
263
  decorators: [{
@@ -515,7 +515,7 @@ class MatMenu {
515
515
  }
516
516
  static ɵfac = i0.ɵɵngDeclareFactory({
517
517
  minVersion: "12.0.0",
518
- version: "22.0.0-rc.0",
518
+ version: "22.0.0-rc.2",
519
519
  ngImport: i0,
520
520
  type: MatMenu,
521
521
  deps: [],
@@ -523,7 +523,7 @@ class MatMenu {
523
523
  });
524
524
  static ɵcmp = i0.ɵɵngDeclareComponent({
525
525
  minVersion: "16.1.0",
526
- version: "22.0.0-rc.0",
526
+ version: "22.0.0-rc.2",
527
527
  type: MatMenu,
528
528
  isStandalone: true,
529
529
  selector: "mat-menu",
@@ -582,7 +582,7 @@ class MatMenu {
582
582
  }
583
583
  i0.ɵɵngDeclareClassMetadata({
584
584
  minVersion: "12.0.0",
585
- version: "22.0.0-rc.0",
585
+ version: "22.0.0-rc.2",
586
586
  ngImport: i0,
587
587
  type: MatMenu,
588
588
  decorators: [{
@@ -729,6 +729,8 @@ class MatMenuTriggerBase {
729
729
  this._parentMaterialMenu.closed.emit(reason);
730
730
  }
731
731
  });
732
+ } else {
733
+ this._destroyMenu();
732
734
  }
733
735
  this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu());
734
736
  }
@@ -953,7 +955,7 @@ class MatMenuTriggerBase {
953
955
  }
954
956
  static ɵfac = i0.ɵɵngDeclareFactory({
955
957
  minVersion: "12.0.0",
956
- version: "22.0.0-rc.0",
958
+ version: "22.0.0-rc.2",
957
959
  ngImport: i0,
958
960
  type: MatMenuTriggerBase,
959
961
  deps: "invalid",
@@ -961,7 +963,7 @@ class MatMenuTriggerBase {
961
963
  });
962
964
  static ɵdir = i0.ɵɵngDeclareDirective({
963
965
  minVersion: "14.0.0",
964
- version: "22.0.0-rc.0",
966
+ version: "22.0.0-rc.2",
965
967
  type: MatMenuTriggerBase,
966
968
  isStandalone: true,
967
969
  ngImport: i0
@@ -969,7 +971,7 @@ class MatMenuTriggerBase {
969
971
  }
970
972
  i0.ɵɵngDeclareClassMetadata({
971
973
  minVersion: "12.0.0",
972
- version: "22.0.0-rc.0",
974
+ version: "22.0.0-rc.2",
973
975
  ngImport: i0,
974
976
  type: MatMenuTriggerBase,
975
977
  decorators: [{
@@ -1079,7 +1081,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1079
1081
  }
1080
1082
  static ɵfac = i0.ɵɵngDeclareFactory({
1081
1083
  minVersion: "12.0.0",
1082
- version: "22.0.0-rc.0",
1084
+ version: "22.0.0-rc.2",
1083
1085
  ngImport: i0,
1084
1086
  type: MatMenuTrigger,
1085
1087
  deps: [],
@@ -1087,7 +1089,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1087
1089
  });
1088
1090
  static ɵdir = i0.ɵɵngDeclareDirective({
1089
1091
  minVersion: "14.0.0",
1090
- version: "22.0.0-rc.0",
1092
+ version: "22.0.0-rc.2",
1091
1093
  type: MatMenuTrigger,
1092
1094
  isStandalone: true,
1093
1095
  selector: "[mat-menu-trigger-for], [matMenuTriggerFor]",
@@ -1123,7 +1125,7 @@ class MatMenuTrigger extends MatMenuTriggerBase {
1123
1125
  }
1124
1126
  i0.ɵɵngDeclareClassMetadata({
1125
1127
  minVersion: "12.0.0",
1126
- version: "22.0.0-rc.0",
1128
+ version: "22.0.0-rc.2",
1127
1129
  ngImport: i0,
1128
1130
  type: MatMenuTrigger,
1129
1131
  decorators: [{
@@ -1287,7 +1289,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1287
1289
  }
1288
1290
  static ɵfac = i0.ɵɵngDeclareFactory({
1289
1291
  minVersion: "12.0.0",
1290
- version: "22.0.0-rc.0",
1292
+ version: "22.0.0-rc.2",
1291
1293
  ngImport: i0,
1292
1294
  type: MatContextMenuTrigger,
1293
1295
  deps: [],
@@ -1295,7 +1297,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1295
1297
  });
1296
1298
  static ɵdir = i0.ɵɵngDeclareDirective({
1297
1299
  minVersion: "16.1.0",
1298
- version: "22.0.0-rc.0",
1300
+ version: "22.0.0-rc.2",
1299
1301
  type: MatContextMenuTrigger,
1300
1302
  isStandalone: true,
1301
1303
  selector: "[matContextMenuTriggerFor]",
@@ -1326,7 +1328,7 @@ class MatContextMenuTrigger extends MatMenuTriggerBase {
1326
1328
  }
1327
1329
  i0.ɵɵngDeclareClassMetadata({
1328
1330
  minVersion: "12.0.0",
1329
- version: "22.0.0-rc.0",
1331
+ version: "22.0.0-rc.2",
1330
1332
  ngImport: i0,
1331
1333
  type: MatContextMenuTrigger,
1332
1334
  decorators: [{
@@ -1378,7 +1380,7 @@ i0.ɵɵngDeclareClassMetadata({
1378
1380
  class MatMenuModule {
1379
1381
  static ɵfac = i0.ɵɵngDeclareFactory({
1380
1382
  minVersion: "12.0.0",
1381
- version: "22.0.0-rc.0",
1383
+ version: "22.0.0-rc.2",
1382
1384
  ngImport: i0,
1383
1385
  type: MatMenuModule,
1384
1386
  deps: [],
@@ -1386,7 +1388,7 @@ class MatMenuModule {
1386
1388
  });
1387
1389
  static ɵmod = i0.ɵɵngDeclareNgModule({
1388
1390
  minVersion: "14.0.0",
1389
- version: "22.0.0-rc.0",
1391
+ version: "22.0.0-rc.2",
1390
1392
  ngImport: i0,
1391
1393
  type: MatMenuModule,
1392
1394
  imports: [MatRippleModule, OverlayModule, MatMenu, MatMenuItem, MatMenuContent, MatMenuTrigger, MatContextMenuTrigger],
@@ -1394,7 +1396,7 @@ class MatMenuModule {
1394
1396
  });
1395
1397
  static ɵinj = i0.ɵɵngDeclareInjector({
1396
1398
  minVersion: "12.0.0",
1397
- version: "22.0.0-rc.0",
1399
+ version: "22.0.0-rc.2",
1398
1400
  ngImport: i0,
1399
1401
  type: MatMenuModule,
1400
1402
  imports: [MatRippleModule, OverlayModule, BidiModule, CdkScrollableModule]
@@ -1402,7 +1404,7 @@ class MatMenuModule {
1402
1404
  }
1403
1405
  i0.ɵɵngDeclareClassMetadata({
1404
1406
  minVersion: "12.0.0",
1405
- version: "22.0.0-rc.0",
1407
+ version: "22.0.0-rc.2",
1406
1408
  ngImport: i0,
1407
1409
  type: MatMenuModule,
1408
1410
  decorators: [{