{"version":3,"file":"vendor-8d4414ce.prod.7b0ae95e0014e85ad52a.js","mappings":"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","sources":["webpack://landing-page/./.yarn/cache/decode-uri-component-npm-0.2.0-5bcc0f3597-f3749344ab.zip/node_modules/decode-uri-component/index.js","webpack://landing-page/./.yarn/cache/dom-align-npm-1.12.2-def9f187ee-0523f4d7c8.zip/node_modules/dom-align/dist-web/index.js","webpack://landing-page/./.yarn/cache/filter-obj-npm-1.1.0-84128fc26d-cf2104a7c4.zip/node_modules/filter-obj/index.js","webpack://landing-page/./.yarn/cache/history-npm-4.10.1-ee217563ae-addd84bc46.zip/node_modules/history/esm/history.js"],"sourcesContent":["'use strict';\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp(token, 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn decodeURIComponent(components.join(''));\n\t} catch (err) {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tvar left = components.slice(0, split);\n\tvar right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch (err) {\n\t\tvar tokens = input.match(singleMatcher);\n\n\t\tfor (var i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher);\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tvar replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD'\n\t};\n\n\tvar match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch (err) {\n\t\t\tvar result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tvar entries = Object.keys(replaceMap);\n\n\tfor (var i = 0; i < entries.length; i++) {\n\t\t// Replace all decoded components\n\t\tvar key = entries[i];\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nmodule.exports = function (encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\tencodedURI = encodedURI.replace(/\\+/g, ' ');\n\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch (err) {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n};\n","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar vendorPrefix;\nvar jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-'\n};\n\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n\n vendorPrefix = '';\n var style = document.createElement('p').style;\n var testProp = 'Transform';\n\n for (var key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n\n return vendorPrefix;\n}\n\nfunction getTransitionName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"TransitionProperty\") : 'transitionProperty';\n}\n\nfunction getTransformName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"Transform\") : 'transform';\n}\nfunction setTransitionProperty(node, value) {\n var name = getTransitionName();\n\n if (name) {\n node.style[name] = value;\n\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\n\nfunction setTransform(node, value) {\n var name = getTransformName();\n\n if (name) {\n node.style[name] = value;\n\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\n\nfunction getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\nfunction getTransformXY(node) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n\n if (transform && transform !== 'none') {\n var matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return {\n x: parseFloat(matrix[12] || matrix[4], 0),\n y: parseFloat(matrix[13] || matrix[5], 0)\n };\n }\n\n return {\n x: 0,\n y: 0\n };\n}\nvar matrix2d = /matrix\\((.*)\\)/;\nvar matrix3d = /matrix3d\\((.*)\\)/;\nfunction setTransformXY(node, xy) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n\n if (transform && transform !== 'none') {\n var arr;\n var match2d = transform.match(matrix2d);\n\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, \"matrix(\".concat(arr.join(','), \")\"));\n } else {\n var match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, \"matrix3d(\".concat(arr.join(','), \")\"));\n }\n } else {\n setTransform(node, \"translateX(\".concat(xy.x, \"px) translateY(\").concat(xy.y, \"px) translateZ(0)\"));\n }\n}\n\nvar RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\nvar getComputedStyleX; // https://stackoverflow.com/a/3485654/3040605\n\nfunction forceRelayout(elem) {\n var originalStyle = elem.style.display;\n elem.style.display = 'none';\n elem.offsetHeight; // eslint-disable-line\n\n elem.style.display = originalStyle;\n}\n\nfunction css(el, name, v) {\n var value = v;\n\n if (_typeof(name) === 'object') {\n for (var i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n\n return undefined;\n }\n\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = \"\".concat(value, \"px\");\n }\n\n el.style[name] = value;\n return undefined;\n }\n\n return getComputedStyleX(el, name);\n}\n\nfunction getClientPosition(elem) {\n var box;\n var x;\n var y;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement; // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n\n box = elem.getBoundingClientRect(); // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = box.left;\n y = box.top; // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n return {\n left: x,\n top: y\n };\n}\n\nfunction getScroll(w, top) {\n var ret = w[\"page\".concat(top ? 'Y' : 'X', \"Offset\")];\n var method = \"scroll\".concat(top ? 'Top' : 'Left');\n\n if (typeof ret !== 'number') {\n var d = w.document; // ie6,7,8 standard mode\n\n ret = d.documentElement[method];\n\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n\n return ret;\n}\n\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\n\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\n\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\n\n\nfunction isWindow(obj) {\n // must use == for ie8\n\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\n\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n\n if (node.nodeType === 9) {\n return node;\n }\n\n return node.ownerDocument;\n}\n\nfunction _getComputedStyle(elem, name, cs) {\n var computedStyle = cs;\n var val = '';\n var d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null); // https://github.com/kissyteam/kissy/issues/61\n\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n\n return val;\n}\n\nvar _RE_NUM_NO_PX = new RegExp(\"^(\".concat(RE_NUM, \")(?!px)[a-z%]+$\"), 'i');\n\nvar RE_POS = /^(top|right|bottom|left)$/;\nvar CURRENT_STYLE = 'currentStyle';\nvar RUNTIME_STYLE = 'runtimeStyle';\nvar LEFT = 'left';\nvar PX = 'px';\n\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name]; // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style;\n var left = style[LEFT];\n var rsLeft = elem[RUNTIME_STYLE][LEFT]; // prevent flashing of content\n\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT]; // Put in the new values to get a computed value out\n\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX; // Revert the changed values\n\n style[LEFT] = left;\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n\n return ret === '' ? 'auto' : ret;\n}\n\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\n\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n\n return option.useCssBottom ? 'bottom' : dir;\n}\n\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n} // 设置 elem 相对 elem.ownerDocument 的坐标\n\n\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n\n var presetH = -999;\n var presetV = -999;\n var horizontalProperty = getOffsetDirection('left', option);\n var verticalProperty = getOffsetDirection('top', option);\n var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);\n var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n\n var originalTransition = '';\n var originalOffset = getOffset(elem);\n\n if ('left' in offset || 'top' in offset) {\n originalTransition = getTransitionProperty(elem) || '';\n setTransitionProperty(elem, 'none');\n }\n\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = \"\".concat(presetH, \"px\");\n }\n\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = \"\".concat(presetV, \"px\");\n } // force relayout\n\n\n forceRelayout(elem);\n var old = getOffset(elem);\n var originalStyle = {};\n\n for (var key in offset) {\n if (offset.hasOwnProperty(key)) {\n var dir = getOffsetDirection(key, option);\n var preset = key === 'left' ? presetH : presetV;\n var off = originalOffset[key] - old[key];\n\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n\n css(elem, originalStyle); // force relayout\n\n forceRelayout(elem);\n\n if ('left' in offset || 'top' in offset) {\n setTransitionProperty(elem, originalTransition);\n }\n\n var ret = {};\n\n for (var _key in offset) {\n if (offset.hasOwnProperty(_key)) {\n var _dir = getOffsetDirection(_key, option);\n\n var _off = offset[_key] - originalOffset[_key];\n\n if (_key === _dir) {\n ret[_dir] = originalStyle[_dir] + _off;\n } else {\n ret[_dir] = originalStyle[_dir] - _off;\n }\n }\n }\n\n css(elem, ret);\n}\n\nfunction setTransform$1(elem, offset) {\n var originalOffset = getOffset(elem);\n var originalXY = getTransformXY(elem);\n var resultXY = {\n x: originalXY.x,\n y: originalXY.y\n };\n\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n\n setTransformXY(elem, resultXY);\n}\n\nfunction setOffset(elem, offset, option) {\n if (option.ignoreShake) {\n var oriOffset = getOffset(elem);\n var oLeft = oriOffset.left.toFixed(0);\n var oTop = oriOffset.top.toFixed(0);\n var tLeft = offset.left.toFixed(0);\n var tTop = offset.top.toFixed(0);\n\n if (oLeft === tLeft && oTop === tTop) {\n return;\n }\n }\n\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && getTransformName() in document.body.style) {\n setTransform$1(elem, offset);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\n\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\n\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\n\nvar BOX_MODELS = ['margin', 'border', 'padding'];\nvar CONTENT_INDEX = -1;\nvar PADDING_INDEX = 2;\nvar BORDER_INDEX = 1;\nvar MARGIN_INDEX = 0;\n\nfunction swap(elem, options, callback) {\n var old = {};\n var style = elem.style;\n var name; // Remember the old values, and insert the new ones\n\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n\n callback.call(elem); // Revert the old values\n\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\n\nfunction getPBMWidth(elem, props, which) {\n var value = 0;\n var prop;\n var j;\n var i;\n\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp = void 0;\n\n if (prop === 'border') {\n cssProp = \"\".concat(prop).concat(which[i], \"Width\");\n } else {\n cssProp = prop + which[i];\n }\n\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n\n return value;\n}\n\nvar domUtils = {\n getParent: function getParent(element) {\n var parent = element;\n\n do {\n if (parent.nodeType === 11 && parent.host) {\n parent = parent.host;\n } else {\n parent = parent.parentNode;\n }\n } while (parent && parent.nodeType !== 1 && parent.nodeType !== 9);\n\n return parent;\n }\n};\neach(['Width', 'Height'], function (name) {\n domUtils[\"doc\".concat(name)] = function (refWin) {\n var d = refWin.document;\n return Math.max( // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement[\"scroll\".concat(name)], // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body[\"scroll\".concat(name)], domUtils[\"viewport\".concat(name)](d));\n };\n\n domUtils[\"viewport\".concat(name)] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = \"client\".concat(name);\n var doc = win.document;\n var body = doc.body;\n var documentElement = doc.documentElement;\n var documentElementProp = documentElement[prop]; // 标准模式取 documentElement\n // backcompat 取 body\n\n return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;\n };\n});\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\n\nfunction getWH(elem, name, ex) {\n var extra = ex;\n\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n var borderBoxValue = name === 'width' ? elem.getBoundingClientRect().width : elem.getBoundingClientRect().height;\n var isBorderBox = isBorderBoxFn(elem);\n var cssBoxValue = 0;\n\n if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {\n borderBoxValue = undefined; // Fall back to computed then un computed css if necessary\n\n cssBoxValue = getComputedStyleX(elem, name);\n\n if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {\n cssBoxValue = elem.style[name] || 0;\n } // Normalize '', auto, and prepare for extra\n\n\n cssBoxValue = parseFloat(cssBoxValue) || 0;\n }\n\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which);\n }\n\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n\n return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which) : getPBMWidth(elem, ['margin'], which));\n }\n\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which);\n}\n\nvar cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block'\n}; // fix #119 : https://github.com/kissyteam/kissy/issues/119\n\nfunction getWHIgnoreDisplay() {\n for (var _len = arguments.length, args = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var val;\n var elem = args[0]; // in case elem is window\n // elem.offsetWidth === undefined\n\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n\n return val;\n}\n\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n\n domUtils[\"outer\".concat(first)] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n\n domUtils[name] = function (elem, v) {\n var val = v;\n\n if (val !== undefined) {\n if (elem) {\n var isBorderBox = isBorderBoxFn(elem);\n\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which);\n }\n\n return css(elem, name, val);\n }\n\n return undefined;\n }\n\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\n\nfunction mix(to, from) {\n for (var i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n\n return to;\n}\n\nvar utils = {\n getWindow: function getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n getDocument: getDocument,\n offset: function offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function clone(obj) {\n var i;\n var ret = {};\n\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n\n var overflow = obj.overflow;\n\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n\n return ret;\n },\n mix: mix,\n getWindowScrollLeft: function getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop: function getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge: function merge() {\n var ret = {};\n\n for (var i = 0; i < arguments.length; i++) {\n utils.mix(ret, i < 0 || arguments.length <= i ? undefined : arguments[i]);\n }\n\n return ret;\n },\n viewportWidth: 0,\n viewportHeight: 0\n};\nmix(utils, domUtils);\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\n\nvar getParent = utils.getParent;\n\nfunction getOffsetParent(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return null;\n } // ie 这个也不是完全可行\n\n /*\n