UNPKG

@visactor/vrender-animate

Version:

This module provides a graph-based animation system for VRender.

28 lines (26 loc) 1.7 kB
import { AttributeUpdateType } from "@visactor/vrender-core/event/constant"; export function buildAnimationStaticCommitAttrs(target, keys, animate, fallbackAttrs) { var _a; const commitTarget = target, contextFinalAttrs = null === (_a = commitTarget.context) || void 0 === _a ? void 0 : _a.finalAttrs, finalAttribute = commitTarget.getFinalAttribute(); let commitAttrs = null; for (let i = 0; i < keys.length; i++) { const key = keys[i]; animate && !animate.validAttr(key) || (contextFinalAttrs && Object.prototype.hasOwnProperty.call(contextFinalAttrs, key) ? (null != commitAttrs || (commitAttrs = {}), commitAttrs[key] = contextFinalAttrs[key]) : finalAttribute && Object.prototype.hasOwnProperty.call(finalAttribute, key) ? (null != commitAttrs || (commitAttrs = {}), commitAttrs[key] = finalAttribute[key]) : fallbackAttrs && Object.prototype.hasOwnProperty.call(fallbackAttrs, key) && (null != commitAttrs || (commitAttrs = {}), commitAttrs[key] = fallbackAttrs[key])); } return commitAttrs; } export function commitAnimationStaticAttrs(target, keys, animate, fallbackAttrs) { const commitAttrs = buildAnimationStaticCommitAttrs(target, keys, animate, fallbackAttrs); if (!commitAttrs) return !1; target.setFinalAttributes(commitAttrs); const commitStaticAttributes = target._commitAnimationStaticAttributes; return "function" == typeof commitStaticAttributes ? commitStaticAttributes.call(target, commitAttrs, { type: AttributeUpdateType.ANIMATE_END }) : target.setAttributes(commitAttrs, !1, { type: AttributeUpdateType.ANIMATE_END }), !0; } //# sourceMappingURL=static-truth.js.map