@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
115 lines (114 loc) • 4.21 kB
TypeScript
import { VNode } from "../../stencil-public-runtime";
import { ConditionalSlotComponent } from "../../utils/conditionalSlot";
import { LocalizedComponent } from "../../utils/locale";
import { T9nComponent } from "../../utils/t9n";
import { Layout, Position, Scale } from "../interfaces";
import { ShellPanelMessages } from "./assets/shell-panel/t9n";
import { DisplayMode } from "./interfaces";
/**
* @slot - A slot for adding custom content.
* @slot action-bar - A slot for adding a `calcite-action-bar` to the component.
*/
export declare class ShellPanel implements ConditionalSlotComponent, LocalizedComponent, T9nComponent {
/**
* When `true`, hides the component's content area.
*/
collapsed: boolean;
/**
* When `true`, the content area displays like a floating panel.
*
* @deprecated use `displayMode` instead.
*/
detached: boolean;
handleDetached(value: boolean): void;
/**
* Specifies the display mode - `"dock"` (full height, displays adjacent to center content), `"float"` (not full height, content is separated detached from `calcite-action-bar`, displays on top of center content),
* or `"overlay"` (full height, displays on top of center content).
*/
displayMode: DisplayMode;
handleDisplayMode(value: DisplayMode): void;
/**
* When `displayMode` is `float`, specifies the maximum height of the component.
*
* @deprecated use `heightScale` instead.
*/
detachedHeightScale: Scale;
handleDetachedHeightScale(value: Scale): void;
/**
* When `layout` is `horizontal`, or `layout` is `vertical` and `displayMode` is `float`, specifies the maximum height of the component.
*/
heightScale: Scale;
handleHeightScale(value: Scale): void;
/**
* When `layout` is `vertical`, specifies the width of the component.
*/
widthScale: Scale;
/**
* The direction of the component.
*/
layout: Extract<"horizontal" | "vertical", Layout>;
layoutHandler(): void;
/**
* Specifies the component's position. Will be flipped when the element direction is right-to-left (`"rtl"`).
*/
position: Position;
/**
* When `true` and `displayMode` is not `float`, the component's content area is resizable.
*/
resizable: boolean;
/**
* Made into a prop for testing purposes only
*
* @internal
*/
messages: ShellPanelMessages;
/**
* Use this property to override individual strings used by the component.
*/
messageOverrides: Partial<ShellPanelMessages>;
onMessagesChange(): void;
connectedCallback(): void;
componentWillLoad(): Promise<void>;
disconnectedCallback(): void;
componentDidLoad(): void;
el: HTMLCalciteShellPanelElement;
contentWidth: number;
contentHeight: number;
initialContentWidth: number;
initialContentHeight: number;
initialClientX: number;
initialClientY: number;
contentEl: HTMLDivElement;
separatorEl: HTMLDivElement;
contentWidthMax: number;
contentWidthMin: number;
contentHeightMax: number;
contentHeightMin: number;
step: number;
stepMultiplier: number;
actionBars: HTMLCalciteActionBarElement[];
defaultMessages: ShellPanelMessages;
effectiveLocale: string;
effectiveLocaleChange(): void;
renderHeader(): VNode;
render(): VNode;
setContentWidth(width: number): void;
updateAriaValues(): void;
setContentHeight(height: number): void;
updateWidths(computedStyle: CSSStyleDeclaration): void;
updateHeights(computedStyle: CSSStyleDeclaration): void;
storeContentEl: (contentEl: HTMLDivElement) => void;
getKeyAdjustedSize: (event: KeyboardEvent) => number | null;
initialKeydownWidth: (event: KeyboardEvent) => void;
initialKeydownHeight: (event: KeyboardEvent) => void;
separatorKeyDown: (event: KeyboardEvent) => void;
separatorPointerMove: (event: PointerEvent) => void;
separatorPointerUp: (event: PointerEvent) => void;
setInitialContentHeight: () => void;
setInitialContentWidth: () => void;
separatorPointerDown: (event: PointerEvent) => void;
connectSeparator: (separatorEl: HTMLDivElement) => void;
disconnectSeparator: () => void;
setActionBarsLayout: (actionBars: HTMLCalciteActionBarElement[]) => void;
handleActionBarSlotChange: (event: Event) => void;
}