UNPKG

dockview-core

Version:

Zero dependency layout manager supporting tabs, groups, grids and splitviews for vanilla TypeScript

39 lines (38 loc) 1.32 kB
import { CspNonceProvider } from './dom'; import { CompositeDisposable } from './lifecycle'; import { Box } from './types'; export type PopoutWindowOptions = { url: string; onDidOpen?: (event: { id: string; window: Window; }) => void; onWillClose?: (event: { id: string; window: Window; }) => void; nonce?: CspNonceProvider; } & Box; /** * Reject popout URLs that aren't same-origin http(s). Blocks `javascript:`, * `data:`, `blob:`, `vbscript:`, and cross-origin URLs that would otherwise * execute in a context the browser still associates with the opener via * `window.opener`. */ export declare function assertSameOriginPopoutUrl(url: string): void; export declare class PopoutWindow extends CompositeDisposable { private readonly target; private readonly className; private readonly options; private readonly _onWillClose; readonly onWillClose: import("./events").Event<void>; private readonly _onDidClose; readonly onDidClose: import("./events").Event<void>; private _window; get window(): Window | null; constructor(target: string, className: string, options: PopoutWindowOptions); dimensions(): Box | null; close(): void; open(): Promise<HTMLElement | null>; private createPopoutWindowContainer; }