@aurigma/design-editor-iframe
Version:
Using this module you can embed Design Editor (a part of Customer's Canvas) to your page through the IFrame API.
55 lines (54 loc) • 2.13 kB
TypeScript
import { Exception } from "@aurigma/design-atoms-model/Exception";
import { Editor } from "./Editor";
import { QueryString } from "./IframeApi";
import { IProductDefinition } from "./ObjectModel/ObjectModel";
import { IConfiguration } from "./Configuration/ConfigurationInterfaces";
import { RequestDataMode } from "./IConfigRequestData";
/** @internal */
export declare class EditorLoader {
private static _existingLoaders;
private static _apiClient;
private _config;
private _editorUrl;
private _status;
private _iframeClient;
private _iframe;
private _editorData;
constructor(iframe: HTMLIFrameElement, editorData: EditorLoader.IEditorData | QueryString, editorUrl: string);
private _normalizeIframe;
private _normalizeEditorData;
static preload(editorUrl: string): Promise<void>;
start(onFirstLoad?: () => void): Promise<Editor>;
dispose(): void;
private _queryStringToConfigConverter;
private _getInitData;
static getInitData(editorUrl: string, productDefinition: string[] | IProductDefinition, configFromApi: IConfiguration, onFirstTemplateLoad?: () => void, hasExternalMockup?: boolean, requestDataMode?: RequestDataMode, restRequestKey?: string): Promise<string>;
static getInitDataByQueryString(editorUrl: string, queryString: string, onFirstTemplateLoad?: () => void): Promise<string>;
private _checkLoadStatus;
private _normalizeUrl;
private _cleanUpIframe;
private _loadIframe;
private static _appendOrigin;
private static _loadIframe;
private _getIframeUrl;
private static _getIframeUrl;
private _initEditor;
private _initEditorAdditionalPages;
private _handleServerException;
}
/** @internal */
export declare namespace EditorLoader {
enum Status {
Initialized = 0,
Started = 1,
Finished = 2,
Disposed = 3,
Error = 4
}
interface IEditorData {
productData: string[] | IProductDefinition;
config?: IConfiguration;
}
class LoadingStoppedException extends Exception {
}
}