react-application-core
Version:
A react-based application core for the business applications.
162 lines (161 loc) • 4.92 kB
TypeScript
import { IDownloadFileConfigEntity, IJQueryElement, IPresetsXYEntity } from '../definition';
/**
* @stable [28.08.2019]
* @param {string} id
* @returns {TElement}
*/
export declare const getElementById: <TElement extends HTMLElement = HTMLElement>(id: string) => TElement;
/**
* @stable [14.06.2018]
* @param {string} tag
* @param {Element} parent
* @returns {TElement}
*/
export declare const createElement: <TElement extends HTMLElement = HTMLElement>(tag?: string, parent?: Element) => TElement;
/**
* @stable [08.01.2020]
* @param {Partial<HTMLScriptElement>} cfg
* @returns {Promise<HTMLScriptElement>}
*/
export declare const createScript: (cfg: Partial<HTMLScriptElement>) => Promise<HTMLScriptElement>;
/**
* @stable [12.05.2020]
* @param {Element} element
* @param {string} clsName
*/
export declare const addClassNames: (element: Element, ...clsName: string[]) => void;
/**
* @stable [12.05.2020]
* @param {Element} element
* @param {string} clsName
*/
export declare const removeClassNames: (element: Element, ...clsName: string[]) => void;
/**
* @stable [20.09.2019]
* @param {string} rootId
* @returns {Element}
*/
export declare const addRootElement: (rootId: string) => Element;
/**
* @stable [28.06.2018]
* @param {Element} child
* @param {Element} parent
* @returns {Element}
*/
export declare const addChild: (child: Element, parent?: Element) => Element;
/**
* @stable [28.06.2018]
* @param {Element} child
* @param {Element} parent
* @returns {Element}
*/
export declare const removeChild: (child: Element, parent?: Element) => Element;
/**
* @stable [14.06.2018]
* @param {string} images
*/
export declare const createPreloadedImg: (...images: string[]) => void;
/**
* @stable [04.10.2018]
* @param {Element} source
* @returns {number}
*/
export declare const getWidth: (source: Element) => number;
/**
* @stable [27.10.2018]
* @param {Element} source
* @returns {number}
*/
export declare const getHeight: (source: Element) => number;
/**
* @stable [27.10.2018]
* @param {Element} source
* @returns {number}
*/
export declare const getContentHeight: (source: Element) => number;
/**
* @stable [01.12.2018]
* @param {Element} source
* @returns {number}
*/
export declare const getScrollLeft: (source: Element) => number;
/**
* @stable [01.12.2018]
* @param {Element} source
* @returns {number}
*/
export declare const getScrollTop: (source: Element) => number;
/**
* @stable [01.12.2018]
* @param {Element} source
* @param {number} value
* @returns {IJQueryElement}
*/
export declare const setScrollTop: (source: Element, value: number) => IJQueryElement;
/**
* @stable [18.12.2018]
* @param {Element} source
* @param {number} value
* @returns {IJQueryElement}
*/
export declare const setScrollLeft: (source: Element, value: number) => IJQueryElement;
/**
* @stable [23.06.2018]
* @returns {boolean}
*/
export declare const isDocumentHasFocus: () => boolean;
/**
* @stable [13.12.2018]
* @param {Element} source
* @returns {IJQueryElement}
*/
export declare const toJqEl: <TJqElement extends IJQueryElement<Element> = IJQueryElement<Element>>(source: Element) => TJqElement;
/**
* @stable [30.07.2018]
* @returns {() => boolean}
*/
export declare const preventContextMenu: () => () => boolean;
/**
* @stable [22.10.2019]
* @param {Element} target
* @param {string} classNames
* @returns {boolean}
*/
export declare const hasClasses: (target: Element, ...classNames: string[]) => boolean;
/**
* @stable [01.12.2018]
* @param {Element} element
* @param {IPresetsXYEntity} xyEntity
*/
export declare const scrollTo: (element: Element, xyEntity: IPresetsXYEntity) => void;
/**
* @stable [26.10.2019]
* @param {Element} element
* @param {Element} parent
* @returns {boolean}
*/
export declare const isElementVisibleWithinParent: (element: Element, parent: Element) => boolean;
/**
* @stable [11.10.2019]
* @param {Element} stickyWrapperEl
* @param {string} stickySelector
* @param {(stickyJEl: IJQueryElement) => any} widthResolver
*/
export declare const setStickyElementProperties: (stickyWrapperEl: Element, stickySelector: string, widthResolver?: (stickyJEl: IJQueryElement) => number) => void;
/**
* @stable [18.08.2020]
* @param elem
*/
export declare const openFullScreen: (elem: Element & {
mozRequestFullScreen?: () => void;
msRequestFullscreen?: () => void;
webkitRequestFullscreen?: () => void;
}) => void;
/**
* @stable [13.12.2020]
*/
export declare class DomUtils {
static readonly downloadFile: (cfg: IDownloadFileConfigEntity) => Promise<void>;
static readonly downloadFileByBlob: (cfg: IDownloadFileConfigEntity) => void;
static readonly downloadFileByUrl: (cfg: IDownloadFileConfigEntity) => void;
}