UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

50 lines (43 loc) 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: !0 }), exports.parseHoverSelect = exports.getDefaultInteractionConfigByMode = void 0; const vutils_extension_1 = require("@visactor/vutils-extension"), common_1 = require("../typings/spec/common"), util_1 = require("../util"), vutils_1 = require("@visactor/vutils"); function getDefaultInteractionConfigByMode(mode) { return mode === common_1.RenderModeEnum["desktop-browser"] || mode === common_1.RenderModeEnum["desktop-miniApp"] ? { hover: { enable: !0, trigger: "pointermove", triggerOff: "view:pointerleave" }, select: { enable: !0, trigger: "pointertap" } } : (0, util_1.isMobileLikeMode)(mode) || (0, util_1.isMiniAppLikeMode)(mode) ? { hover: { enable: !0, trigger: [ "pointerdown", "pointermove" ], triggerOff: "view:pointerleave" }, select: { enable: !0, trigger: "tap" } } : null; } exports.getDefaultInteractionConfigByMode = getDefaultInteractionConfigByMode; const parseHoverSelect = (mode, hoverSpec, selectSpec) => { const defaultConfig = getDefaultInteractionConfigByMode(mode); let finalHoverSpec = Object.assign({}, null == defaultConfig ? void 0 : defaultConfig.hover), finalSelectSpec = Object.assign({}, null == defaultConfig ? void 0 : defaultConfig.select); return (0, vutils_1.isBoolean)(hoverSpec) ? finalHoverSpec.enable = hoverSpec : (0, vutils_1.isObject)(hoverSpec) && (finalHoverSpec.enable = !0, finalHoverSpec = (0, vutils_extension_1.mergeSpec)(finalHoverSpec, hoverSpec)), (0, vutils_1.isBoolean)(selectSpec) ? finalSelectSpec.enable = selectSpec : (0, vutils_1.isObject)(selectSpec) && (finalSelectSpec.enable = !0, finalSelectSpec = (0, vutils_extension_1.mergeSpec)(finalSelectSpec, selectSpec)), { select: finalSelectSpec, hover: finalHoverSpec }; }; exports.parseHoverSelect = parseHoverSelect; //# sourceMappingURL=config.js.map