2022-08-09 17:58:14 +03:00
|
|
|
/**
|
|
|
|
* @license
|
|
|
|
* Copyright 2022 Google LLC
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
*/
|
|
|
|
|
2022-08-24 21:00:50 +03:00
|
|
|
import {customElement} from 'lit/decorators.js';
|
2022-08-09 17:58:14 +03:00
|
|
|
|
2023-07-24 19:28:36 +03:00
|
|
|
import {styles as listItemForcedColorsStyles} from '../list/internal/listitem/forced-colors-styles.css.js';
|
|
|
|
import {styles as listItemStyles} from '../list/internal/listitem/list-item-styles.css.js';
|
2022-08-09 17:58:14 +03:00
|
|
|
|
2023-03-30 04:43:27 +03:00
|
|
|
import {styles as forcedColorsStyles} from './lib/menuitem/forced-colors-styles.css.js';
|
2023-03-04 02:04:37 +03:00
|
|
|
import {MenuItemEl} from './lib/menuitem/menu-item.js';
|
2023-03-30 04:43:27 +03:00
|
|
|
import {styles} from './lib/menuitem/menu-item-styles.css.js';
|
2023-01-26 04:14:09 +03:00
|
|
|
|
2023-07-24 19:28:36 +03:00
|
|
|
export {ListItem} from '../list/internal/listitem/list-item.js';
|
2023-02-03 02:33:51 +03:00
|
|
|
export {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';
|
2022-08-09 17:58:14 +03:00
|
|
|
|
|
|
|
declare global {
|
|
|
|
interface HTMLElementTagNameMap {
|
|
|
|
'md-menu-item': MdMenuItem;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-26 04:14:09 +03:00
|
|
|
/**
|
|
|
|
* @summary Menus display a list of choices on a temporary surface.
|
|
|
|
*
|
|
|
|
* @description
|
|
|
|
* Menu items are the selectable choices within the menu. Menu items must
|
|
|
|
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
|
|
* attribute. Additionally menu items are list items so they must also have the
|
|
|
|
* `md-list-item` attribute.
|
|
|
|
*
|
|
|
|
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
|
|
* `deselect-items` events.
|
|
|
|
*
|
|
|
|
* @final
|
|
|
|
* @suppress {visibility}
|
|
|
|
*/
|
2022-08-09 17:58:14 +03:00
|
|
|
@customElement('md-menu-item')
|
2023-01-26 04:14:09 +03:00
|
|
|
export class MdMenuItem extends MenuItemEl {
|
2023-03-30 04:43:27 +03:00
|
|
|
static override styles =
|
|
|
|
[listItemStyles, styles, listItemForcedColorsStyles, forcedColorsStyles];
|
2022-08-09 17:58:14 +03:00
|
|
|
}
|