forked from DevExpress/testcafe
/
client-fn-adapter-initializer.ts
29 lines (23 loc) · 1.12 KB
/
client-fn-adapter-initializer.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { ClientFunctionAdapter } from '../driver/command-executors/client-functions/types';
import nativeMethods from './native-methods';
import * as domUtils from './utils/dom';
import * as styleUtils from './utils/style';
import { isElementVisible, isIframeVisible } from '../core/utils/shared/visibility';
const initializer: ClientFunctionAdapter = {
isProxyless: true,
nativeMethods: nativeMethods,
PromiseCtor: nativeMethods.Promise,
// eslint-disable-next-line hammerhead/use-native-methods
delay: (ms: number) => new nativeMethods.Promise(resolve => nativeMethods.setTimeout.call(window, resolve, ms)),
isShadowRoot: domUtils.isShadowRoot,
isDomElement: domUtils.isDomElement,
isTextNode: domUtils.isTextNode,
isOptionElement: domUtils.isOptionElement,
getTagName: domUtils.getTagName,
getActiveElement: domUtils.getActiveElement,
isIframeVisible: isIframeVisible,
isIframeElement: domUtils.isElementInIframe,
isOptionElementVisible: styleUtils.isOptionElementVisible,
isElementVisible: isElementVisible,
};
export default initializer;