UNPKG

@aappddeevv/dynamics-client-ui

Version:

## What is it? A library to help you create great dynamics applications.

54 lines (53 loc) 2.27 kB
/** * In targetWindow (defaults to this window), search for an iframe with * the specific id and return the attribute. */ export declare function getAttributeFromIFrame<T = any>(frameId: string, attribute: string, targetWindow?: Window): T | null; /** Return the frame of this window, which is an iframe. */ export declare function findIFrame(): Element; /** Find the parent element (whatever it is) of this iframe. */ export declare function findParentOfIFrame(): HTMLElement | null; /** * Set this iframe's display style to none. visibility would still * leave it participating in layout calculations. */ export declare function setDisplayNoneForThisIFrame(): void; /** * Return WEB|UCI|null based on the iframe parent layout. You can also use * Utils.isUci. This is highly hacky and probably subject to change. Use * your own if you can. */ export declare function guessLayout(): "WEB" | "UNIFIED" | null; export interface AdjustProps { [styleName: string]: string; } export declare const uciFormLineProps: AdjustProps; /** * Adjust parent object assuming "this" el is * a web resource. Do nothing if layout is not UNIFIED. Uses "guessLayout". * Write your own adjustment function if you do not like this version. */ export declare function adjustFormLineForUci(props?: AdjustProps): void; /** * Search up the parent, starting at `start`'s parent, until * predicate is true or return null. */ export declare function findParent(start: Node | null, predicate: (el: Node) => boolean): Node | null; /** * Given a target, if its is an <iframe>, create a new target * as a peer that takes into account UCI or non-UCI interfaces. Otherwise, * find the target if its a string or return it directly if its already * an HTMLElement (of any kind except iframe). `newProps` is used if a * new element needs to be created otherwise a simple div with no id or * classname is created. */ export declare function getOrMakeTarget(target: string | HTMLElement | null, newProps?: { div?: string; id?: string; className?: string; }): HTMLElement | null; /** * Move stylesheets via importNode and appendChil from source to target * documents. */ export declare function moveStylesheetsToParent(source?: Document, target?: Document): void;