123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- "use strict";
-
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
-
- exports.__esModule = true;
- exports.default = void 0;
-
- var _properties = _interopRequireDefault(require("./properties"));
-
- var _style = _interopRequireDefault(require("../style"));
-
- function onEnd(node, handler, duration) {
- var fakeEvent = {
- target: node,
- currentTarget: node
- },
- backup;
- if (!_properties.default.end) duration = 0;else if (duration == null) duration = parseDuration(node) || 0;
-
- if (_properties.default.end) {
- node.addEventListener(_properties.default.end, done, false);
- backup = setTimeout(function () {
- return done(fakeEvent);
- }, (duration || 100) * 1.5);
- } else setTimeout(done.bind(null, fakeEvent), 0);
-
- function done(event) {
- if (event.target !== event.currentTarget) return;
- clearTimeout(backup);
- event.target.removeEventListener(_properties.default.end, done);
- handler.call(this);
- }
- }
-
- onEnd._parseDuration = parseDuration;
- var _default = onEnd;
- exports.default = _default;
-
- function parseDuration(node) {
- var str = (0, _style.default)(node, _properties.default.duration),
- mult = str.indexOf('ms') === -1 ? 1000 : 1;
- return parseFloat(str) * mult;
- }
-
- module.exports = exports["default"];
|