UNPKG

tdesign-mobile-vue

Version:
91 lines (87 loc) 2.63 kB
/** * tdesign v1.7.0 * (c) 2024 TDesign Group * @license MIT */ import _classCallCheck from '@babel/runtime/helpers/classCallCheck'; import _createClass from '@babel/runtime/helpers/createClass'; import _defineProperty from '@babel/runtime/helpers/defineProperty'; import { nextTick } from 'vue'; function getTouch(el, x, y) { return { identifier: Date.now(), target: el, pageX: x, pageY: y, clientX: x, clientY: y, radiusX: 2.5, radiusY: 2.5, rotationAngle: 10, force: 0.5 }; } function trigger(wrapper, eventName) { var x = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; var y = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0; var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {}; var el = "element" in wrapper ? wrapper.element : wrapper; var touchList = options.touchList || [getTouch(el, x, y)]; if (options.x || options.y) { touchList.push(getTouch(el, options.x, options.y)); } var event = document.createEvent("CustomEvent"); event.initCustomEvent(eventName, true, true, {}); Object.assign(event, { clientX: x, clientY: y, touches: touchList, targetTouches: touchList, changedTouches: touchList }); el.dispatchEvent(event); return nextTick(); } var MockResizeObserver = /*#__PURE__*/function () { function MockResizeObserver(callback) { var _this = this; _classCallCheck(this, MockResizeObserver); _defineProperty(this, "_callback", void 0); _defineProperty(this, "_element", void 0); _defineProperty(this, "trigger", function (event) { var _event$width = event.width, width = _event$width === void 0 ? 0 : _event$width, _event$height = event.height, height = _event$height === void 0 ? 0 : _event$height; _this._callback([{ contentRect: { width: width, height: height } }]); }); this._callback = callback; } return _createClass(MockResizeObserver, [{ key: "observe", value: function observe(element) { this._element = element; this._element.addEventListener("resize", this.trigger); } }, { key: "unobserve", value: function unobserve() { this._element.removeEventListener("resize", this.trigger); } }, { key: "disconnect", value: function disconnect() { if (this._element) { this._element.removeEventListener("resize", this.trigger); } this._element = null; } }]); }(); export { MockResizeObserver, trigger }; //# sourceMappingURL=utils.js.map