@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
166 lines (165 loc) • 6.49 kB
TypeScript
import { AfterViewInit, DoCheck, ElementRef, EventEmitter, Injector, IterableDiffers, OnDestroy, Renderer2 } from '@angular/core';
import { Strings } from '../../../../generated/strings';
import { Layout } from '../../../common/layout';
import { DropdownComponent } from '../../../dropdown/dropdown.component';
import { ActionItem } from '../../items/action-item.component';
import { ActionContainerOrientation } from '../action-container';
import { ActionContainerComponent } from '../action-container.component';
import * as i0 from "@angular/core";
/**
*
* @smeDoc {@label Actions @id sme-actions}
*
* @overview
* @file {@filepath ./examples/overview.md}
*
* @example {@label Defined actions from component @id defined-actions-from-component}
* @file {@filename component.html @filepath ./examples/defined-actions-from-component.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*
* @example {@label Defined actions from html @id defined-actions-from-html}
* @file {@filename component.html @filepath ./examples/defined-actions-from-html.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*
* @example {@label Defined actions from both @id defined-actions-from-both}
* @file {@filename component.html @filepath ./examples/defined-actions-from-both.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*
* @example {@label All buttons disabled @id all-buttons-disabled}
* @file {@filename component.html @filepath ./examples/all-buttons-disabled.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*
* @example {@label Model driven action bar @id model-driven}
* @file {@filename component.html @filepath ./examples/model-driven.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*
* @example {@label Container embedded action bar @id container-embedded-action-bar}
* @file {@filename component.html @filepath ./examples/container-embedded-action-bar.component.html}
* @file {@filename component.ts @filepath ./examples/actions-example.component.ts}
*/
export declare class ActionBarComponent extends ActionContainerComponent implements DoCheck, AfterViewInit, OnDestroy {
renderer: Renderer2;
hostElement: ElementRef;
protected logSourceName: string;
/**
* Flag that when set will display minimal UI for the action bar.
*/
get compact(): boolean;
/**
* Attribute that sets vertical or horizontal orientation where vertical displays action bar from top to bottom of page
* and horizontal displays action bar from left to right.
*/
get orientation(): ActionContainerOrientation;
/**
* List of ActionItem objects that we want to perform.
*/
displayedActions: ActionItem[];
/**
* List of ActionItem objects that are collapsed into dropdown.
*/
trayActions: ActionItem[];
/**
* Text displayed for tray dropdown.
*/
moreActionsDisplay: string;
/**
* Label on action menu for accessibility.
*/
actionsAriaLabel: string;
/**
* Flag to make sure if the height of the bar is currently greater than the available height of the target,
* then the items are adjusted accordingly.
*/
heightOverflow: boolean;
/**
* Button element for tray dropdown.
*/
moreButtonElement: HTMLElement;
/**
* Localized set of strings.
*/
strings: Strings;
private isCompact;
private hovered;
private focused;
private attachedTo;
private shouldShow;
private isVisible;
private layoutSubscription;
/**
* Event fired when list of ActionItems changes.
*/
actionsUpdated: EventEmitter<any>;
private get isAttached();
private element;
private dropDownButtonElement;
/**
* DropdownComponent element for action tray.
*/
dropDown: DropdownComponent;
/**
* Constructor for the ActionBarComponent.
*/
constructor(iterableDiffers: IterableDiffers, renderer: Renderer2, hostElement: ElementRef, layout: Layout, injector: Injector);
/**
* Filters out ActionItem objects to be hidden.
* @param items ActionItem objects to check.
* @returns List of unhidden ActionItem objects.
*/
hiddenFilter(items: ActionItem[]): ActionItem[];
/**
* Callback triggered after view initializes.
*/
ngAfterViewInit(): void;
/**
* Callback triggered after component is destroyed.
*/
ngOnDestroy(): void;
/**
* On layout changed event handler, occurs every time the layout has been changed.
*/
private onLayoutChanged;
/**
* Host listeners for focus events.
*/
onFocusEvent(event: Event): void;
/**
* Host listeners for keyboard events.
*/
onToggleKeydown(event: KeyboardEvent): void;
/**
* Host listeners for mouse events.
*/
onMouseEvent(event: Event): void;
/**
* Host listener for page resize event.
*/
onResize(): void;
/**
* Callback triggered after child ActionItem changes.
*/
onActionItemChanged(): void;
private updateHeight;
/**
* Method to set visibility for ActionBarComponent.
* @param isVisible True for visible, false for not.
*/
setVisibility(isVisible: boolean): void;
/**
* Method to set visibility for ActionBarComponent.
* @param shouldShow True for showing, false for not.
*/
showHide(shouldShow: boolean): void;
/**
* Repositions given HTMLElement to be relative to its sibling element.
* @param element Element to reposition.
* @param compact Boolean flag to set whether or not ActionBarComponent should be compact.
*/
repositionRelativeTo(element: HTMLElement, compact: boolean): void;
/**
* Method to update how ActionBarComponent is displayed.
*/
updateActionBar(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<ActionBarComponent, [null, null, null, { optional: true; }, null]>;
static ɵcmp: i0.ɵɵComponentDeclaration<ActionBarComponent, "sme-action-bar", never, {}, { "actionsUpdated": "actionsUpdated"; }, never, ["*"], false, never>;
}