@itwin/itwinui-react
Version:
A react component library for iTwinUI
48 lines (47 loc) • 1.27 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true,
});
function _export(target, all) {
for (var name in all)
Object.defineProperty(target, name, {
enumerable: true,
get: all[name],
});
}
_export(exports, {
getDocument: function () {
return getDocument;
},
getTranslateValues: function () {
return getTranslateValues;
},
getTranslateValuesFromElement: function () {
return getTranslateValuesFromElement;
},
getWindow: function () {
return getWindow;
},
mergeEventHandlers: function () {
return mergeEventHandlers;
},
});
const getDocument = () => ('undefined' == typeof document ? void 0 : document);
const getWindow = () => ('undefined' == typeof window ? void 0 : window);
const mergeEventHandlers =
(...callbacks) =>
(event) => {
for (let cb of callbacks) {
cb?.(event);
if (event?.defaultPrevented) return;
}
};
const getTranslateValuesFromElement = (element) => {
if (!element) return [];
let transformValue = getComputedStyle(element).getPropertyValue('transform');
return getTranslateValues(transformValue);
};
const getTranslateValues = (transformValue) => {
let matrix = new DOMMatrix(transformValue);
return [matrix.m41, matrix.m42];
};