UNPKG

@visactor/vrender-kits

Version:
124 lines (118 loc) 4.87 kB
var __decorate = this && this.__decorate || function(decorators, target, key, desc) { var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc; if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r); return c > 3 && r && Object.defineProperty(target, key, r), r; }, __metadata = this && this.__metadata || function(k, v) { if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v); }, __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) { return new (P || (P = Promise))((function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator.throw(value)); } catch (e) { reject(e); } } function step(result) { var value; result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) { resolve(value); }))).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); })); }; import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core"; function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component) { return __awaiter(this, void 0, void 0, (function*() { const dpr = tt.getSystemInfoSync().pixelRatio; for (let i = 0; i < canvasIdLists.length; i++) { const id = canvasIdLists[i]; yield new Promise((resolve => { let data = tt.createSelectorQuery(); component && (data = data.in(component)), data.select(`#${id}`).node().exec((res => { const canvas = res[0].node, width = canvas.width, height = canvas.height; canvas.width = width * dpr, canvas.height = height * dpr, canvasMap.set(id, canvas), i >= freeCanvasIdx && freeCanvasList.push(canvas), resolve(null); })); })); } })); } let TTEnvContribution = class extends BaseEnvContribution { constructor() { super(), this.type = "tt", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [], this.canvasIdx = 0, this.supportsTouchEvents = !0; try { this.supportsPointerEvents = !!globalThis.PointerEvent, this.supportsMouseEvents = !!globalThis.MouseEvent; } catch (err) { this.supportsPointerEvents = !1, this.supportsMouseEvents = !1; } this.applyStyles = !0; } configure(service, params) { if (service.env === this.type) return service.setActiveEnvContribution(this), makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList, params.component).then((() => {})); } loadImage(url) { return Promise.resolve({ data: url, loadState: "success" }); } loadSvg(url) { return Promise.reject(); } createCanvas(params) { const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1]; return this.canvasIdx++, result; } createOffscreenCanvas(params) {} releaseCanvas(canvas) {} getDevicePixelRatio() { return tt.getSystemInfoSync().pixelRatio; } getRequestAnimationFrame() { return function(callback) { return rafBasedSto.call(callback); }; } getCancelAnimationFrame() { return h => { rafBasedSto.clear(h); }; } addEventListener(type, listener, options) { return null; } removeEventListener(type, listener, options) { return null; } dispatchEvent(event) { return null; } getElementById(str) { return this.canvasMap.get(str); } getRootElement() { return null; } getDocument() { return null; } release(...params) {} mapToCanvasPoint(event) { var _a; return null === (_a = null == event ? void 0 : event.type) || void 0 === _a || _a.startsWith("mouse"), event; } }; TTEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], TTEnvContribution); export { TTEnvContribution }; //# sourceMappingURL=tt-contribution.js.map