import { LayoutEditorCanvasApi, LayoutEditorCanvasStyles, LayoutItem } from "@omnia/fx/models"; import { LayoutMediaContext, LayoutFileContext } from "@omnia/fx/ux"; import { BlockCatalogStore, LayoutCanvasStore, ThemingRenditionManager } from "../"; import { OmniaTheming, ThemeStore, VueComponentBase } from "../.."; import { SubscriptionHandler } from "../../.."; import { IWebComponentInstance } from "../../../runtime/core/InternalWebComponentBootstrapper"; import { MediaPickerService } from "../../../services"; import { BlockTitleSettingsStore, DirectionRuleStore } from "../../../stores"; import { AnchorLink } from "../../AnchorLink"; import { ILayoutEditorCanvas } from "./ILayoutEditorCanvas"; import "./LayoutEditorCanvas.css"; export default class LayoutEditorCanvas extends VueComponentBase implements IWebComponentInstance, ILayoutEditorCanvas { styles?: Partial; getApi: (inst: LayoutEditorCanvasApi) => void; provider: string; authDisabled?: boolean; layoutStore: LayoutCanvasStore; mediaContext: LayoutMediaContext; fileContext: LayoutFileContext; blockTitleSettingsStore: BlockTitleSettingsStore; omniaTheming: OmniaTheming; layoutItemStore: BlockCatalogStore; SubscriptionHandler: SubscriptionHandler; mediaPickerService: MediaPickerService; themeStore: ThemeStore; directionRuleStore: DirectionRuleStore; themingRenditionManager: ThemingRenditionManager; anchorLink: AnchorLink; private omniaUxLoc; onStyleChange(newValue: any, oldValue: any): void; private tabState; private LayoutEditorCanvasClasses; private model; private isDragging; private originalScreenWidth; private originalWindowWidth; private timeWatchId; private enableVerticalAlign; private layoutItemDelegator; private delegatedSections; private layoutItemDelegatorSubHandler; beforeCreate(): void; created(): void; destroyed(): void; mounted(): void; beforeDestroy(): void; private handleWindowResize; private enalbeRightResizer; private DragStart; private DragStop; private ResizePanelSettings; private setSettingsPanelWrapperWidthWhenIconClicked; private get backgroundImage(); setupLayout(): void; private onToggleSettingsDrawer; createOrphanedBlocks(orphanedBlocks: Array): JSX.Element[]; /** * Function to render the sections fast * @param h is the hyperscript reference */ createSectionMarkup(): Array; /** * Renders the layout item selector * @param h */ renderLayoutItemSelector(): VueTsxSupport.JSX.Element; private renderDevicePreviewer; private renderStructure; private renderLayoutTemplates; private renderLayoutClipboard; private renderDrawerOptions; private renderDrawer; private renderDeveloperTools; private isSettingsLocked; private renderSettings; private onContainerUpdated; render(): VueTsxSupport.JSX.Element; }