UNPKG

1.33 kBJavaScriptView Raw
1// eslint-disable-next-line
2import Swiper from '../../core';
3import { isObject, extend } from './utils';
4import { paramsList } from './params-list';
5
6function getParams(obj) {
7 if (obj === void 0) {
8 obj = {};
9 }
10
11 var params = {
12 on: {}
13 };
14 var passedParams = {};
15 extend(params, Swiper.defaults);
16 extend(params, Swiper.extendedDefaults);
17 params._emitClasses = true;
18 params.init = false;
19 var rest = {};
20 var allowedParams = paramsList.map(function (key) {
21 return key.replace(/_/, '');
22 });
23 Object.keys(obj).forEach(function (key) {
24 if (allowedParams.indexOf(key) >= 0) {
25 if (isObject(obj[key])) {
26 params[key] = {};
27 passedParams[key] = {};
28 extend(params[key], obj[key]);
29 extend(passedParams[key], obj[key]);
30 } else {
31 params[key] = obj[key];
32 passedParams[key] = obj[key];
33 }
34 } else if (key.search(/on[A-Z]/) === 0 && typeof obj[key] === 'function') {
35 params.on["" + key[2].toLowerCase() + key.substr(3)] = obj[key];
36 } else {
37 rest[key] = obj[key];
38 }
39 });
40 ['navigation', 'pagination', 'scrollbar'].forEach(function (key) {
41 if (params[key] === true || params[key] === false) params[key] = {};
42 });
43 return {
44 params: params,
45 passedParams: passedParams,
46 rest: rest
47 };
48}
49
50export { getParams };
\No newline at end of file