UNPKG

infinity-forge

Version:
50 lines 2.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getChangedParams = getChangedParams; var params_list_1 = require("./params-list.js"); var utils_1 = require("./utils.js"); function getChangedParams(swiperParams, oldParams, children, oldChildren, getKey) { var keys = []; if (!oldParams) return keys; var addKey = function (key) { if (keys.indexOf(key) < 0) keys.push(key); }; if (children && oldChildren) { var oldChildrenKeys = oldChildren.map(getKey); var childrenKeys = children.map(getKey); if (oldChildrenKeys.join('') !== childrenKeys.join('')) addKey('children'); if (oldChildren.length !== children.length) addKey('children'); } var watchParams = params_list_1.paramsList.filter(function (key) { return key[0] === '_'; }).map(function (key) { return key.replace(/_/, ''); }); watchParams.forEach(function (key) { if (key in swiperParams && key in oldParams) { if ((0, utils_1.isObject)(swiperParams[key]) && (0, utils_1.isObject)(oldParams[key])) { var newKeys = Object.keys(swiperParams[key]); var oldKeys = Object.keys(oldParams[key]); if (newKeys.length !== oldKeys.length) { addKey(key); } else { newKeys.forEach(function (newKey) { if (swiperParams[key][newKey] !== oldParams[key][newKey]) { addKey(key); } }); oldKeys.forEach(function (oldKey) { if (swiperParams[key][oldKey] !== oldParams[key][oldKey]) addKey(key); }); } } else if (swiperParams[key] !== oldParams[key]) { addKey(key); } } }); return keys; } //# sourceMappingURL=get-changed-params.js.map