function pauseResume(args, elements, promiseHandler, action) {
    var isPaused = action.indexOf("pause") === 0,
        queue = action.indexOf(".") >= 0 ? action.replace(/^.*\./, "") : undefined,
        queueName = queue === "false" ? false : validateQueue(args[0]),
        defaultQueue = defaults$1.queue;
    if (isVelocityResult(elements) && elements.velocity.animations) {
        var _iteratorNormalCompletion = true;
        var _didIteratorError = false;
        var _iteratorError = undefined;

        try {
            for (var _iterator = elements.velocity.animations[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
                var animation = _step.value;

                checkAnimation(animation, queueName, defaultQueue, isPaused);
            }
        } catch (err) {
            _didIteratorError = true;
            _iteratorError = err;
        } finally {
            try {
                if (!_iteratorNormalCompletion && _iterator.return) {
                    _iterator.return();
                }
            } finally {
                if (_didIteratorError) {
                    throw _iteratorError;
                }
            }
        }
    } else {
        var activeCall = State.first;
        while (activeCall) {
            if (!elements || elements.includes(activeCall.element)) {
                checkAnimation(activeCall, queueName, defaultQueue, isPaused);
            }
            activeCall = activeCall._next;
        }
    }
    if (promiseHandler) {
        if (isVelocityResult(elements) && elements.velocity.animations && elements.then) {
            elements.then(promiseHandler._resolver);
        } else {
            promiseHandler._resolver(elements);
        }
    }
}
Pause and Resume are call-wide (not on a per element basis). Thus, calling pause or resume on a
single element will cause any calls that contain tweens for that element to be paused/resumed
as well.