wix-style-react
Version:
80 lines (66 loc) • 2.33 kB
JavaScript
import { isClassExists } from '../../test/utils';
import { tooltipTestkitFactory } from "wix-ui-core/dist/es/src/testkit";
var getTextElement = function getTextElement(element) {
return element.querySelector("[data-hook=\"loader-text\"]");
};
var loaderDriverFactory = function loaderDriverFactory(_ref) {
var element = _ref.element;
var tooltipTestkit = tooltipTestkitFactory({
wrapper: element,
dataHook: "loader-tooltip"
});
return {
component: function component() {
return element;
},
exists: function exists() {
return !!element;
},
/** returns the loader color ('blue' or 'white') */
getColor: function getColor() {
return element.getAttribute('data-color');
},
/** returns the element text */
getText: function getText() {
return getTextElement(element).textContent;
},
/** true if the element has text */
hasText: function hasText() {
return !!getTextElement(element);
},
/** true when using the large loader */
isLarge: function isLarge() {
return element.getAttribute('data-size') === 'large';
},
/** true when using the medium loader */
isMedium: function isMedium() {
return element.getAttribute('data-size') === 'medium';
},
/** true when using the small loader */
isSmall: function isSmall() {
return element.getAttribute('data-size') === 'small';
},
/** true when using the tiny loader */
isTiny: function isTiny() {
return element.getAttribute('data-size') === 'tiny';
},
/** true when loader is in loading status */
isLoading: function isLoading() {
return element.getAttribute('data-status') === 'loading';
},
/** true when loader is in error status */
isError: function isError() {
return element.getAttribute('data-status') === 'error';
},
/** true when loader is in success status */
isSuccess: function isSuccess() {
return element.getAttribute('data-status') === 'success';
},
/** trigger the tooltip and returns the value of the tooltip message (async function) */
getStatusMessage: function getStatusMessage() {
tooltipTestkit.mouseEnter();
return tooltipTestkit.getContentElement().textContent;
}
};
};
export default loaderDriverFactory;