NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/@antv/hierarchy/build/hierarchy.js.map
2023-09-14 14:47:11 +08:00

1 line
114 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"file":"hierarchy.js","sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 840223c305473abed4c8","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-array.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-array-like.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/each.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-function.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-type.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-number.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-nil.js","webpack:///./src/util.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-string.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-plain-object.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-string.js","webpack:///./src/layout/base.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/contains.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-object.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/filter.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-object-like.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/mix.js","webpack:///./src/layout/do-layout.js","webpack:///./src/layout/hierarchy.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-match.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/keys.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/pull-at.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/uniq.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/group-to-map.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/group-by.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/has.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/values.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-type.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-prototype.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-equal.js","webpack:///./src/layout/separate-root.js","webpack:///./src/index.js","webpack:///./src/compact-box.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/index.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/difference.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/find.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/find-index.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/first-value.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/flatten.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/flatten-deep.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-range.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/pull.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/reduce.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/remove.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/sort-by.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/union.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/values-of-key.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/head.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/last.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/starts-with.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/ends-with.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/every.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/some.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/group.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-wrap-behavior.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/wrap-behavior.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/number2color.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/parse-radius.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/clamp.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/fixed-base.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-decimal.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-even.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-integer.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-negative.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-number-equal.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-odd.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-positive.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/max-by.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/min-by.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/mod.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-degree.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-integer.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-radian.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/for-in.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/has-key.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/has-value.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/lower-case.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/lower-first.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/substitute.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/upper-case.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/upper-first.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-arguments.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-boolean.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-date.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-error.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-finite.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-null.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-reg-exp.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-undefined.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-element.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/request-animation-frame.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/clear-animation-frame.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/augment.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/clone.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/debounce.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/memoize.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/deep-mix.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/extend.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/index-of.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-empty.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-equal-with.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/map.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/map-values.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/get.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/set.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/pick.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/throttle.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-array.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/unique-id.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/noop.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/identity.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/size.js","webpack:///./node_modules/_@antv_util@2.0.7@@antv/util/esm/cache.js","webpack:///./src/layout/non-layered-tidy.js","webpack:///./src/dendrogram.js","webpack:///./src/layout/dendrogram.js","webpack:///./src/indented.js","webpack:///./src/layout/indented.js","webpack:///./src/mindmap.js","webpack:///./src/layout/mindmap.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Hierarchy\"] = factory();\n\telse\n\t\troot[\"Hierarchy\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 31);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 840223c305473abed4c8","import isType from './is-type';\nexport default (function (value) {\n return Array.isArray ? Array.isArray(value) : isType(value, 'Array');\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-array.js\n// module id = 0\n// module chunks = 0","var isArrayLike = function (value) {\n /**\n * isArrayLike([1, 2, 3]) => true\n * isArrayLike(document.body.children) => true\n * isArrayLike('abc') => true\n * isArrayLike(Function) => false\n */\n return value !== null && typeof value !== 'function' && isFinite(value.length);\n};\n\nexport default isArrayLike;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-array-like.js\n// module id = 1\n// module chunks = 0","import isArray from './is-array';\nimport isObject from './is-object';\n\nfunction each(elements, func) {\n if (!elements) {\n return;\n }\n\n var rst;\n\n if (isArray(elements)) {\n for (var i = 0, len = elements.length; i < len; i++) {\n rst = func(elements[i], i);\n\n if (rst === false) {\n break;\n }\n }\n } else if (isObject(elements)) {\n for (var k in elements) {\n if (elements.hasOwnProperty(k)) {\n rst = func(elements[k], k);\n\n if (rst === false) {\n break;\n }\n }\n }\n }\n}\n\nexport default each;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/each.js\n// module id = 2\n// module chunks = 0","/**\n * 是否为函数\n * @param {*} fn 对象\n * @return {Boolean} 是否函数\n */\nimport isType from './is-type';\nexport default (function (value) {\n return isType(value, 'Function');\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-function.js\n// module id = 3\n// module chunks = 0","var toString = {}.toString;\n\nvar isType = function (value, type) {\n return toString.call(value) === '[object ' + type + ']';\n};\n\nexport default isType;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-type.js\n// module id = 4\n// module chunks = 0","/**\n * 判断是否数字\n * @return {Boolean} 是否数字\n */\nimport isType from './is-type';\n\nvar isNumber = function (value) {\n return isType(value, 'Number');\n};\n\nexport default isNumber;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-number.js\n// module id = 5\n// module chunks = 0","// isFinite,\nvar isNil = function (value) {\n /**\n * isNil(null) => true\n * isNil() => true\n */\n return value === null || value === undefined;\n};\n\nexport default isNil;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-nil.js\n// module id = 6\n// module chunks = 0","var _require = require('@antv/util'),\n mix = _require.mix;\n\nmodule.exports = {\n assign: mix\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/util.js\n// module id = 7\n// module chunks = 0","import isType from './is-type';\nexport default (function (str) {\n return isType(str, 'String');\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-string.js\n// module id = 8\n// module chunks = 0","import isObjectLike from './is-object-like';\nimport isType from './is-type';\n\nvar isPlainObject = function (value) {\n /**\n * isObjectLike(new Foo) => false\n * isObjectLike([1, 2, 3]) => false\n * isObjectLike({ x: 0, y: 0 }) => true\n * isObjectLike(Object.create(null)) => true\n */\n if (!isObjectLike(value) || !isType(value, 'Object')) {\n return false;\n }\n\n if (Object.getPrototypeOf(value) === null) {\n return true;\n }\n\n var proto = value;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(value) === proto;\n};\n\nexport default isPlainObject;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-plain-object.js\n// module id = 9\n// module chunks = 0","import isNil from './is-nil';\nexport default (function (value) {\n if (isNil(value)) return '';\n return value.toString();\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-string.js\n// module id = 10\n// module chunks = 0","var hierarchy = require('./hierarchy');\n\nvar Layout = /*#__PURE__*/function () {\n function Layout(root, options) {\n if (options === void 0) {\n options = {};\n }\n\n var me = this;\n me.options = options;\n me.rootNode = hierarchy(root, options);\n }\n\n var _proto = Layout.prototype;\n\n _proto.execute = function execute() {\n throw new Error('please override this method');\n };\n\n return Layout;\n}();\n\nmodule.exports = Layout;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/base.js\n// module id = 11\n// module chunks = 0","import isArrayLike from './is-array-like';\n\nvar contains = function (arr, value) {\n if (!isArrayLike(arr)) {\n return false;\n }\n\n return arr.indexOf(value) > -1;\n};\n\nexport default contains;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/contains.js\n// module id = 12\n// module chunks = 0","export default (function (value) {\n /**\n * isObject({}) => true\n * isObject([1, 2, 3]) => true\n * isObject(Function) => true\n * isObject(null) => false\n */\n var type = typeof value;\n return value !== null && type === 'object' || type === 'function';\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-object.js\n// module id = 13\n// module chunks = 0","import each from './each';\nimport isArrayLike from './is-array-like';\n\nvar filter = function (arr, func) {\n if (!isArrayLike(arr)) {\n return arr;\n }\n\n var result = [];\n each(arr, function (value, index) {\n if (func(value, index)) {\n result.push(value);\n }\n });\n return result;\n};\n\nexport default filter;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/filter.js\n// module id = 14\n// module chunks = 0","var isObjectLike = function (value) {\n /**\n * isObjectLike({}) => true\n * isObjectLike([1, 2, 3]) => true\n * isObjectLike(Function) => false\n * isObjectLike(null) => false\n */\n return typeof value === 'object' && value !== null;\n};\n\nexport default isObjectLike;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-object-like.js\n// module id = 15\n// module chunks = 0","// FIXME: Mutable param should be forbidden in static lang.\nfunction _mix(dist, obj) {\n for (var key in obj) {\n if (obj.hasOwnProperty(key) && key !== 'constructor' && obj[key] !== undefined) {\n dist[key] = obj[key];\n }\n }\n}\n\nexport default function mix(dist, src1, src2, src3) {\n if (src1) _mix(dist, src1);\n if (src2) _mix(dist, src2);\n if (src3) _mix(dist, src3);\n return dist;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/mix.js\n// module id = 16\n// module chunks = 0","var separateTree = require('./separate-root');\n\nvar VALID_DIRECTIONS = ['LR', // left to right\n'RL', // right to left\n'TB', // top to bottom\n'BT', // bottom to top\n'H', // horizontal\n'V' // vertical\n];\nvar HORIZONTAL_DIRECTIONS = ['LR', 'RL', 'H'];\n\nvar isHorizontal = function isHorizontal(direction) {\n return HORIZONTAL_DIRECTIONS.indexOf(direction) > -1;\n};\n\nvar DEFAULT_DIRECTION = VALID_DIRECTIONS[0];\n\nmodule.exports = function (root, options, layoutAlgrithm) {\n var direction = options.direction || DEFAULT_DIRECTION;\n options.isHorizontal = isHorizontal(direction);\n\n if (direction && VALID_DIRECTIONS.indexOf(direction) === -1) {\n throw new TypeError(\"Invalid direction: \" + direction);\n }\n\n if (direction === VALID_DIRECTIONS[0]) {\n // LR\n layoutAlgrithm(root, options);\n } else if (direction === VALID_DIRECTIONS[1]) {\n // RL\n layoutAlgrithm(root, options);\n root.right2left();\n } else if (direction === VALID_DIRECTIONS[2]) {\n // TB\n layoutAlgrithm(root, options);\n } else if (direction === VALID_DIRECTIONS[3]) {\n // BT\n layoutAlgrithm(root, options);\n root.bottom2top();\n } else if (direction === VALID_DIRECTIONS[4] || direction === VALID_DIRECTIONS[5]) {\n // H or V\n // separate into left and right trees\n var _separateTree = separateTree(root, options),\n left = _separateTree.left,\n right = _separateTree.right; // do layout for left and right trees\n\n\n layoutAlgrithm(left, options);\n layoutAlgrithm(right, options);\n options.isHorizontal ? left.right2left() : left.bottom2top(); // combine left and right trees\n\n right.translate(left.x - right.x, left.y - right.y); // translate root\n\n root.x = left.x;\n root.y = right.y;\n var bb = root.getBoundingBox();\n\n if (options.isHorizontal) {\n if (bb.top < 0) {\n root.translate(0, -bb.top);\n }\n } else {\n if (bb.left < 0) {\n root.translate(-bb.left, 0);\n }\n }\n } // fixed root position, default value is true\n\n\n var fixedRoot = options.fixedRoot;\n if (fixedRoot === undefined) fixedRoot = true;\n\n if (fixedRoot) {\n root.translate(-(root.x + root.width / 2 + root.hgap), -(root.y + root.height / 2 + root.vgap));\n }\n\n return root;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/do-layout.js\n// module id = 17\n// module chunks = 0","/* eslint-disable no-cond-assign */\nvar util = require('../util');\n\nvar PEM = 18;\nvar DEFAULT_HEIGHT = PEM * 2;\nvar DEFAULT_GAP = PEM;\nvar DEFAULT_OPTIONS = {\n getId: function getId(d) {\n return d.id || d.name;\n },\n getHGap: function getHGap(d) {\n return d.hgap || DEFAULT_GAP;\n },\n getVGap: function getVGap(d) {\n return d.vgap || DEFAULT_GAP;\n },\n getChildren: function getChildren(d) {\n return d.children;\n },\n getHeight: function getHeight(d) {\n return d.height || DEFAULT_HEIGHT;\n },\n getWidth: function getWidth(d) {\n var label = d.label || ' ';\n return d.width || label.split('').length * PEM; // FIXME DO NOT get width like this\n }\n};\n\nfunction Node(data, options) {\n var me = this;\n me.vgap = me.hgap = 0;\n if (data instanceof Node) return data;\n me.data = data;\n /*\n * Gaps: filling space between nodes\n * (x, y) ----------------------\n * | vgap |\n * | -------------------- h\n * | h | | e\n * | g | | i\n * | a | | g\n * | p | | h\n * | --------------------- t\n * | |\n * -----------width------------\n */\n\n var hgap = options.getHGap(data);\n var vgap = options.getVGap(data);\n me.width = options.getWidth(data);\n me.height = options.getHeight(data);\n me.id = options.getId(data);\n me.x = me.y = 0;\n me.depth = 0;\n\n if (!me.children) {\n me.children = [];\n }\n\n me.addGap(hgap, vgap);\n return me;\n}\n\nutil.assign(Node.prototype, {\n isRoot: function isRoot() {\n return this.depth === 0;\n },\n isLeaf: function isLeaf() {\n return this.children.length === 0;\n },\n addGap: function addGap(hgap, vgap) {\n var me = this;\n me.hgap += hgap;\n me.vgap += vgap;\n me.width += 2 * hgap;\n me.height += 2 * vgap;\n },\n eachNode: function eachNode(callback) {\n // Depth First traverse\n var me = this;\n var nodes = [me];\n var current;\n\n while (current = nodes.pop()) {\n callback(current);\n nodes = nodes.concat(current.children);\n }\n },\n DFTraverse: function DFTraverse(callback) {\n // Depth First traverse\n this.eachNode(callback);\n },\n BFTraverse: function BFTraverse(callback) {\n // Breadth First traverse\n var me = this;\n var nodes = [me];\n var current;\n\n while (current = nodes.shift()) {\n callback(current);\n nodes = nodes.concat(current.children);\n }\n },\n getBoundingBox: function getBoundingBox() {\n // BBox for just one tree node\n var bb = {\n left: Number.MAX_VALUE,\n top: Number.MAX_VALUE,\n width: 0,\n height: 0\n };\n this.eachNode(function (node) {\n bb.left = Math.min(bb.left, node.x);\n bb.top = Math.min(bb.top, node.y);\n bb.width = Math.max(bb.width, node.x + node.width);\n bb.height = Math.max(bb.height, node.y + node.height);\n });\n return bb;\n },\n // translate\n translate: function translate(tx, ty) {\n if (tx === void 0) {\n tx = 0;\n }\n\n if (ty === void 0) {\n ty = 0;\n }\n\n this.eachNode(function (node) {\n node.x += tx;\n node.y += ty;\n });\n },\n right2left: function right2left() {\n var me = this;\n var bb = me.getBoundingBox();\n me.eachNode(function (node) {\n node.x = node.x - (node.x - bb.left) * 2 - node.width; // node.x = - node.x;\n });\n me.translate(bb.width, 0);\n },\n bottom2top: function bottom2top() {\n var me = this;\n var bb = me.getBoundingBox();\n me.eachNode(function (node) {\n node.y = node.y - (node.y - bb.top) * 2 - node.height; // node.y = - node.y;\n });\n me.translate(0, bb.height);\n }\n});\n\nfunction hierarchy(data, options, isolated) {\n if (options === void 0) {\n options = {};\n }\n\n options = util.assign({}, DEFAULT_OPTIONS, options);\n var root = new Node(data, options);\n var nodes = [root];\n var node;\n\n if (!isolated && !data.collapsed) {\n while (node = nodes.pop()) {\n if (!node.data.collapsed) {\n var children = options.getChildren(node.data);\n var length = children ? children.length : 0;\n node.children = new Array(length);\n\n if (children && length) {\n for (var i = 0; i < length; i++) {\n var child = new Node(children[i], options);\n node.children[i] = child;\n nodes.push(child);\n child.parent = node;\n child.depth = node.depth + 1;\n }\n }\n }\n }\n }\n\n return root;\n}\n\nmodule.exports = hierarchy;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/hierarchy.js\n// module id = 18\n// module chunks = 0","import isNil from './is-nil';\nimport keys from './keys';\n\nfunction isMatch(obj, attrs) {\n var _keys = keys(attrs);\n\n var length = _keys.length;\n if (isNil(obj)) return !length;\n\n for (var i = 0; i < length; i += 1) {\n var key = _keys[i];\n\n if (attrs[key] !== obj[key] || !(key in obj)) {\n return false;\n }\n }\n\n return true;\n}\n\nexport default isMatch;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-match.js\n// module id = 19\n// module chunks = 0","import each from './each';\nimport isFunction from './is-function';\nvar keys = Object.keys ? function (obj) {\n return Object.keys(obj);\n} : function (obj) {\n var result = [];\n each(obj, function (value, key) {\n if (!(isFunction(obj) && key === 'prototype')) {\n result.push(key);\n }\n });\n return result;\n};\nexport default keys;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/keys.js\n// module id = 20\n// module chunks = 0","import isArrayLike from './is-array-like';\nvar splice = Array.prototype.splice;\n\nvar pullAt = function pullAt(arr, indexes) {\n if (!isArrayLike(arr)) {\n return [];\n }\n\n var length = arr ? indexes.length : 0;\n var last = length - 1;\n\n while (length--) {\n var previous = void 0;\n var index = indexes[length];\n\n if (length === last || index !== previous) {\n previous = index;\n splice.call(arr, index, 1);\n }\n }\n\n return arr;\n};\n\nexport default pullAt;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/pull-at.js\n// module id = 21\n// module chunks = 0","import contains from './contains';\nimport each from './each';\n\nvar uniq = function (arr) {\n var resultArr = [];\n each(arr, function (item) {\n if (!contains(resultArr, item)) {\n resultArr.push(item);\n }\n });\n return resultArr;\n};\n\nexport default uniq;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/uniq.js\n// module id = 22\n// module chunks = 0","import isArray from './is-array';\nimport isFunction from './is-function';\nimport groupBy from './group-by';\n\nvar groupToMap = function (data, condition) {\n if (!condition) {\n return {\n 0: data\n };\n }\n\n if (!isFunction(condition)) {\n var paramsCondition_1 = isArray(condition) ? condition : condition.replace(/\\s+/g, '').split('*');\n\n condition = function (row) {\n var unique = '_'; // 避免出现数字作为Key的情况会进行按照数字的排序\n\n for (var i = 0, l = paramsCondition_1.length; i < l; i++) {\n unique += row[paramsCondition_1[i]] && row[paramsCondition_1[i]].toString();\n }\n\n return unique;\n };\n }\n\n var groups = groupBy(data, condition);\n return groups;\n};\n\nexport default groupToMap;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/group-to-map.js\n// module id = 23\n// module chunks = 0","import each from './each';\nimport isArray from './is-array';\nimport isFunction from './is-function';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction groupBy(data, condition) {\n if (!condition || !isArray(data)) {\n return {};\n }\n\n var result = {}; // 兼容方法和 字符串的写法\n\n var predicate = isFunction(condition) ? condition : function (item) {\n return item[condition];\n };\n var key;\n each(data, function (item) {\n key = predicate(item);\n\n if (hasOwnProperty.call(result, key)) {\n result[key].push(item);\n } else {\n result[key] = [item];\n }\n });\n return result;\n}\n\nexport default groupBy;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/group-by.js\n// module id = 24\n// module chunks = 0","export default (function (obj, key) {\n return obj.hasOwnProperty(key);\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/has.js\n// module id = 25\n// module chunks = 0","import each from './each';\nimport isFunction from './is-function'; // @ts-ignore\n\nvar values = Object.values ? function (obj) {\n return Object.values(obj);\n} : function (obj) {\n var result = [];\n each(obj, function (value, key) {\n if (!(isFunction(obj) && key === 'prototype')) {\n result.push(value);\n }\n });\n return result;\n};\nexport default values;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/values.js\n// module id = 26\n// module chunks = 0","var toString = {}.toString;\n\nvar getType = function (value) {\n return toString.call(value).replace(/^\\[object /, '').replace(/]$/, '');\n};\n\nexport default getType;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-type.js\n// module id = 27\n// module chunks = 0","var objectProto = Object.prototype;\n\nvar isPrototype = function (value) {\n var Ctor = value && value.constructor;\n var proto = typeof Ctor === 'function' && Ctor.prototype || objectProto;\n return value === proto;\n};\n\nexport default isPrototype;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-prototype.js\n// module id = 28\n// module chunks = 0","import isObjectLike from './is-object-like';\nimport isArrayLike from './is-array-like';\nimport isString from './is-string';\n\nvar isEqual = function (value, other) {\n if (value === other) {\n return true;\n }\n\n if (!value || !other) {\n return false;\n }\n\n if (isString(value) || isString(other)) {\n return false;\n }\n\n if (isArrayLike(value) || isArrayLike(other)) {\n if (value.length !== other.length) {\n return false;\n }\n\n var rst = true;\n\n for (var i = 0; i < value.length; i++) {\n rst = isEqual(value[i], other[i]);\n\n if (!rst) {\n break;\n }\n }\n\n return rst;\n }\n\n if (isObjectLike(value) || isObjectLike(other)) {\n var valueKeys = Object.keys(value);\n var otherKeys = Object.keys(other);\n\n if (valueKeys.length !== otherKeys.length) {\n return false;\n }\n\n var rst = true;\n\n for (var i = 0; i < valueKeys.length; i++) {\n rst = isEqual(value[valueKeys[i]], other[valueKeys[i]]);\n\n if (!rst) {\n break;\n }\n }\n\n return rst;\n }\n\n return false;\n};\n\nexport default isEqual;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-equal.js\n// module id = 29\n// module chunks = 0","var hierarchy = require('./hierarchy');\n\nmodule.exports = function (root, options) {\n // separate into left and right trees\n var left = hierarchy(root.data, options, true); // root only\n\n var right = hierarchy(root.data, options, true); // root only\n // automatically\n\n var treeSize = root.children.length;\n var rightTreeSize = Math.round(treeSize / 2); // separate left and right tree by meta data\n\n var getSide = options.getSide || function (child, index) {\n if (index < rightTreeSize) {\n return 'right';\n }\n\n return 'left';\n };\n\n for (var i = 0; i < treeSize; i++) {\n var child = root.children[i];\n var side = getSide(child, i);\n\n if (side === 'right') {\n right.children.push(child);\n } else {\n left.children.push(child);\n }\n }\n\n left.eachNode(function (node) {\n if (!node.isRoot()) {\n node.side = 'left';\n }\n });\n right.eachNode(function (node) {\n if (!node.isRoot()) {\n node.side = 'right';\n }\n });\n return {\n left: left,\n right: right\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/separate-root.js\n// module id = 30\n// module chunks = 0","var hierarchy = {\n compactBox: require('./compact-box'),\n dendrogram: require('./dendrogram'),\n indented: require('./indented'),\n mindmap: require('./mindmap')\n};\nmodule.exports = hierarchy;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/index.js\n// module id = 31\n// module chunks = 0","function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar TreeLayout = require('./layout/base');\n\nvar nonLayeredTidyTree = require('./layout/non-layered-tidy');\n\nvar doTreeLayout = require('./layout/do-layout');\n\nvar util = require('./util');\n\nvar CompactBoxTreeLayout = /*#__PURE__*/function (_TreeLayout) {\n _inheritsLoose(CompactBoxTreeLayout, _TreeLayout);\n\n function CompactBoxTreeLayout() {\n return _TreeLayout.apply(this, arguments) || this;\n }\n\n var _proto = CompactBoxTreeLayout.prototype;\n\n _proto.execute = function execute() {\n var me = this;\n return doTreeLayout(me.rootNode, me.options, nonLayeredTidyTree);\n };\n\n return CompactBoxTreeLayout;\n}(TreeLayout);\n\nvar DEFAULT_OPTIONS = {};\n\nfunction compactBoxLayout(root, options) {\n options = util.assign({}, DEFAULT_OPTIONS, options);\n return new CompactBoxTreeLayout(root, options).execute();\n}\n\nmodule.exports = compactBoxLayout;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/compact-box.js\n// module id = 32\n// module chunks = 0","// array\nexport { default as contains, default as includes } from './contains';\nexport { default as difference } from './difference';\nexport { default as find } from './find';\nexport { default as findIndex } from './find-index';\nexport { default as firstValue } from './first-value';\nexport { default as flatten } from './flatten';\nexport { default as flattenDeep } from './flatten-deep';\nexport { default as getRange } from './get-range';\nexport { default as pull } from './pull';\nexport { default as pullAt } from './pull-at';\nexport { default as reduce } from './reduce';\nexport { default as remove } from './remove';\nexport { default as sortBy } from './sort-by';\nexport { default as union } from './union';\nexport { default as uniq } from './uniq';\nexport { default as valuesOfKey } from './values-of-key';\nexport { default as head } from './head';\nexport { default as last } from './last';\nexport { default as startsWith } from './starts-with';\nexport { default as endsWith } from './ends-with';\nexport { default as filter } from './filter';\nexport { default as every } from './every';\nexport { default as some } from './some';\nexport { default as group } from './group';\nexport { default as groupBy } from './group-by';\nexport { default as groupToMap } from './group-to-map'; // event\n\nexport { default as getWrapBehavior } from './get-wrap-behavior';\nexport { default as wrapBehavior } from './wrap-behavior'; // format\n\nexport { default as number2color } from './number2color';\nexport { default as parseRadius } from './parse-radius'; // math\n\nexport { default as clamp } from './clamp';\nexport { default as fixedBase } from './fixed-base';\nexport { default as isDecimal } from './is-decimal';\nexport { default as isEven } from './is-even';\nexport { default as isInteger } from './is-integer';\nexport { default as isNegative } from './is-negative';\nexport { default as isNumberEqual } from './is-number-equal';\nexport { default as isOdd } from './is-odd';\nexport { default as isPositive } from './is-positive';\nexport { default as maxBy } from './max-by';\nexport { default as minBy } from './min-by';\nexport { default as mod } from './mod';\nexport { default as toDegree } from './to-degree';\nexport { default as toInteger } from './to-integer';\nexport { default as toRadian } from './to-radian'; // object\n\nexport { default as forIn } from './for-in';\nexport { default as has } from './has';\nexport { default as hasKey } from './has-key';\nexport { default as hasValue } from './has-value';\nexport { default as keys } from './keys';\nexport { default as isMatch } from './is-match';\nexport { default as values } from './values'; // string\n\nexport { default as lowerCase } from './lower-case';\nexport { default as lowerFirst } from './lower-first';\nexport { default as substitute } from './substitute';\nexport { default as upperCase } from './upper-case';\nexport { default as upperFirst } from './upper-first'; // type\n\nexport { default as getType } from './get-type';\nexport { default as isArguments } from './is-arguments';\nexport { default as isArray } from './is-array';\nexport { default as isArrayLike } from './is-array-like';\nexport { default as isBoolean } from './is-boolean';\nexport { default as isDate } from './is-date';\nexport { default as isError } from './is-error';\nexport { default as isFunction } from './is-function';\nexport { default as isFinite } from './is-finite';\nexport { default as isNil } from './is-nil';\nexport { default as isNull } from './is-null';\nexport { default as isNumber } from './is-number';\nexport { default as isObject } from './is-object';\nexport { default as isObjectLike } from './is-object-like';\nexport { default as isPlainObject } from './is-plain-object';\nexport { default as isPrototype } from './is-prototype';\nexport { default as isRegExp } from './is-reg-exp';\nexport { default as isString } from './is-string';\nexport { default as isType } from './is-type';\nexport { default as isUndefined } from './is-undefined';\nexport { default as isElement } from './is-element';\nexport { default as requestAnimationFrame } from './request-animation-frame';\nexport { default as clearAnimationFrame } from './clear-animation-frame'; // other\n\nexport { default as augment } from './augment';\nexport { default as clone } from './clone';\nexport { default as debounce } from './debounce';\nexport { default as memoize } from './memoize';\nexport { default as deepMix } from './deep-mix';\nexport { default as each } from './each';\nexport { default as extend } from './extend';\nexport { default as indexOf } from './index-of';\nexport { default as isEmpty } from './is-empty';\nexport { default as isEqual } from './is-equal';\nexport { default as isEqualWith } from './is-equal-with';\nexport { default as map } from './map';\nexport { default as mapValues } from './map-values';\nexport { default as mix, default as assign } from './mix';\nexport { default as get } from './get';\nexport { default as set } from './set';\nexport { default as pick } from './pick';\nexport { default as throttle } from './throttle';\nexport { default as toArray } from './to-array';\nexport { default as toString } from './to-string';\nexport { default as uniqueId } from './unique-id';\nexport { default as noop } from './noop';\nexport { default as identity } from './identity';\nexport { default as size } from './size'; // 不知道为什么,需要把这个 export不然 ts 会报类型错误\n\nexport { default as Cache } from './cache';\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/index.js\n// module id = 33\n// module chunks = 0","import filter from './filter';\nimport contains from './contains';\n/**\n * Flattens `array` a single level deep.\n *\n * @param {Array} arr The array to inspect.\n * @param {Array} values The values to exclude.\n * @return {Array} Returns the new array of filtered values.\n * @example\n * difference([2, 1], [2, 3]); // => [1]\n */\n\nvar difference = function (arr, values) {\n if (values === void 0) {\n values = [];\n }\n\n return filter(arr, function (value) {\n return !contains(values, value);\n });\n};\n\nexport default difference;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/difference.js\n// module id = 34\n// module chunks = 0","import isFunction from './is-function';\nimport isMatch from './is-match';\nimport isArray from './is-array';\nimport isPlainObject from './is-plain-object';\n\nfunction find(arr, predicate) {\n if (!isArray(arr)) return null;\n\n var _predicate;\n\n if (isFunction(predicate)) {\n _predicate = predicate;\n }\n\n if (isPlainObject(predicate)) {\n _predicate = function (a) {\n return isMatch(a, predicate);\n };\n }\n\n if (_predicate) {\n for (var i = 0; i < arr.length; i += 1) {\n if (_predicate(arr[i])) {\n return arr[i];\n }\n }\n }\n\n return null;\n}\n\nexport default find;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/find.js\n// module id = 35\n// module chunks = 0","function findIndex(arr, predicate, fromIndex) {\n if (fromIndex === void 0) {\n fromIndex = 0;\n }\n\n for (var i = fromIndex; i < arr.length; i++) {\n if (predicate(arr[i], i)) {\n // 找到终止循环\n return i;\n }\n }\n\n return -1;\n}\n\nexport default findIndex;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/find-index.js\n// module id = 36\n// module chunks = 0","import isNil from './is-nil';\nimport isArray from './is-array';\n\nvar firstValue = function (data, name) {\n var rst = null;\n\n for (var i = 0; i < data.length; i++) {\n var obj = data[i];\n var value = obj[name];\n\n if (!isNil(value)) {\n if (isArray(value)) {\n rst = value[0]; // todo 这里是否应该使用递归,调用 firstValue @绝云\n } else {\n rst = value;\n }\n\n break;\n }\n }\n\n return rst;\n};\n\nexport default firstValue;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/first-value.js\n// module id = 37\n// module chunks = 0","import isArray from './is-array';\n/**\n * Flattens `array` a single level deep.\n *\n * @param {Array} arr The array to flatten.\n * @return {Array} Returns the new flattened array.\n * @example\n *\n * flatten([1, [2, [3, [4]], 5]]); // => [1, 2, [3, [4]], 5]\n */\n\nvar flatten = function (arr) {\n if (!isArray(arr)) {\n return [];\n }\n\n var rst = [];\n\n for (var i = 0; i < arr.length; i++) {\n rst = rst.concat(arr[i]);\n }\n\n return rst;\n};\n\nexport default flatten;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/flatten.js\n// module id = 38\n// module chunks = 0","import isArray from './is-array';\n/**\n * Flattens `array` a single level deep.\n *\n * @param {Array} arr The array to flatten.\n * @param {Array} result The array to return.\n * @return {Array} Returns the new flattened array.\n * @example\n *\n * flattenDeep([1, [2, [3, [4]], 5]]); // => [1, 2, 3, 4, 5]\n */\n\nvar flattenDeep = function (arr, result) {\n if (result === void 0) {\n result = [];\n }\n\n if (!isArray(arr)) {\n result.push(arr);\n } else {\n for (var i = 0; i < arr.length; i += 1) {\n flattenDeep(arr[i], result);\n }\n }\n\n return result;\n};\n\nexport default flattenDeep;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/flatten-deep.js\n// module id = 39\n// module chunks = 0","import isArray from './is-array';\nimport filter from './filter';\n\nvar getRange = function (values) {\n // 存在 NaN 时min,max 判定会出问题\n values = filter(values, function (v) {\n return !isNaN(v);\n });\n\n if (!values.length) {\n // 如果没有数值则直接返回0\n return {\n min: 0,\n max: 0\n };\n }\n\n if (isArray(values[0])) {\n var tmp = [];\n\n for (var i = 0; i < values.length; i++) {\n tmp = tmp.concat(values[i]);\n }\n\n values = tmp;\n }\n\n var max = Math.max.apply(null, values);\n var min = Math.min.apply(null, values);\n return {\n min: min,\n max: max\n };\n};\n\nexport default getRange;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-range.js\n// module id = 40\n// module chunks = 0","var arrPrototype = Array.prototype;\nvar splice = arrPrototype.splice;\nvar indexOf = arrPrototype.indexOf;\n\nvar pull = function (arr) {\n var values = [];\n\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n\n for (var i = 0; i < values.length; i++) {\n var value = values[i];\n var fromIndex = -1;\n\n while ((fromIndex = indexOf.call(arr, value)) > -1) {\n splice.call(arr, fromIndex, 1);\n }\n }\n\n return arr;\n};\n\nexport default pull;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/pull.js\n// module id = 41\n// module chunks = 0","import each from './each';\nimport isArray from './is-array';\nimport isPlainObject from './is-plain-object';\n\nvar reduce = function (arr, fn, init) {\n if (!isArray(arr) && !isPlainObject(arr)) {\n return arr;\n }\n\n var result = init;\n each(arr, function (data, i) {\n result = fn(result, data, i);\n });\n return result;\n};\n\nexport default reduce;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/reduce.js\n// module id = 42\n// module chunks = 0","import isArrayLike from './is-array-like';\nimport pullAt from './pull-at';\n\nvar remove = function (arr, predicate) {\n /**\n * const arr = [1, 2, 3, 4]\n * const evens = remove(arr, n => n % 2 == 0)\n * console.log(arr) // => [1, 3]\n * console.log(evens) // => [2, 4]\n */\n var result = [];\n\n if (!isArrayLike(arr)) {\n return result;\n }\n\n var i = -1;\n var indexes = [];\n var length = arr.length;\n\n while (++i < length) {\n var value = arr[i];\n\n if (predicate(value, i, arr)) {\n result.push(value);\n indexes.push(i);\n }\n }\n\n pullAt(arr, indexes);\n return result;\n};\n\nexport default remove;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/remove.js\n// module id = 43\n// module chunks = 0","import isArray from './is-array';\nimport isString from './is-string';\nimport isFunction from './is-function';\n\nfunction sortBy(arr, key) {\n var comparer;\n\n if (isFunction(key)) {\n comparer = function (a, b) {\n return key(a) - key(b);\n };\n } else {\n var keys_1 = [];\n\n if (isString(key)) {\n keys_1.push(key);\n } else if (isArray(key)) {\n keys_1 = key;\n }\n\n comparer = function (a, b) {\n for (var i = 0; i < keys_1.length; i += 1) {\n var prop = keys_1[i];\n\n if (a[prop] > b[prop]) {\n return 1;\n }\n\n if (a[prop] < b[prop]) {\n return -1;\n }\n }\n\n return 0;\n };\n }\n\n arr.sort(comparer);\n return arr;\n}\n\nexport default sortBy;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/sort-by.js\n// module id = 44\n// module chunks = 0","import uniq from './uniq';\n\nvar union = function () {\n var sources = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n\n return uniq([].concat.apply([], sources));\n};\n\nexport default union;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/union.js\n// module id = 45\n// module chunks = 0","import each from './each';\nimport isArray from './is-array';\nimport isNil from './is-nil';\nexport default (function (data, name) {\n var rst = [];\n var tmpMap = {};\n data.forEach(function (obj) {\n var value = obj[name];\n\n if (!isNil(value)) {\n // flatten\n if (!isArray(value)) {\n value = [value];\n }\n\n each(value, function (val) {\n // unique\n if (!tmpMap[val]) {\n rst.push(val);\n tmpMap[val] = true;\n }\n });\n }\n });\n return rst;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/values-of-key.js\n// module id = 46\n// module chunks = 0","import isArrayLike from './is-array-like';\nexport default function head(o) {\n if (isArrayLike(o)) {\n return o[0];\n }\n\n return undefined;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/head.js\n// module id = 47\n// module chunks = 0","import isArrayLike from './is-array-like';\nexport default function last(o) {\n if (isArrayLike(o)) {\n var arr = o;\n return arr[arr.length - 1];\n }\n\n return undefined;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/last.js\n// module id = 48\n// module chunks = 0","import isArray from './is-array';\nimport isString from './is-string';\n\nfunction startsWith(arr, e) {\n return isArray(arr) || isString(arr) ? arr[0] === e : false;\n}\n\nexport default startsWith;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/starts-with.js\n// module id = 49\n// module chunks = 0","import isArray from './is-array';\nimport isString from './is-string';\n\nfunction endsWith(arr, e) {\n return isArray(arr) || isString(arr) ? arr[arr.length - 1] === e : false;\n}\n\nexport default endsWith;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/ends-with.js\n// module id = 50\n// module chunks = 0","/**\n * 只要有一个不满足条件就返回 false\n * @param arr\n * @param func\n */\nvar every = function (arr, func) {\n for (var i = 0; i < arr.length; i++) {\n if (!func(arr[i], i)) return false;\n }\n\n return true;\n};\n\nexport default every;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/every.js\n// module id = 51\n// module chunks = 0","/**\n * 只要有一个满足条件就返回 true\n * @param arr\n * @param func\n */\nvar some = function (arr, func) {\n for (var i = 0; i < arr.length; i++) {\n if (func(arr[i], i)) return true;\n }\n\n return false;\n};\n\nexport default some;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/some.js\n// module id = 52\n// module chunks = 0","import groupToMap from './group-to-map';\nexport default (function (data, condition) {\n if (!condition) {\n // 没有条件,则自身改成数组\n return [data];\n }\n\n var groups = groupToMap(data, condition);\n var array = [];\n\n for (var i in groups) {\n array.push(groups[i]);\n }\n\n return array;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/group.js\n// module id = 53\n// module chunks = 0","/**\n * 获取封装的事件\n * @protected\n * @param {Object} obj 对象\n * @param {String} action 事件名称\n * @return {Function} 返回事件处理函数\n */\nfunction getWrapBehavior(obj, action) {\n return obj['_wrap_' + action];\n}\n\nexport default getWrapBehavior;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/get-wrap-behavior.js\n// module id = 54\n// module chunks = 0","/**\n * 封装事件便于使用上下文this,和便于解除事件时使用\n * @protected\n * @param {Object} obj 对象\n * @param {String} action 事件名称\n * @return {Function} 返回事件处理函数\n */\nfunction wrapBehavior(obj, action) {\n if (obj['_wrap_' + action]) {\n return obj['_wrap_' + action];\n }\n\n var method = function (e) {\n obj[action](e);\n };\n\n obj['_wrap_' + action] = method;\n return method;\n}\n\nexport default wrapBehavior;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/wrap-behavior.js\n// module id = 55\n// module chunks = 0","var numColorCache = {};\n\nfunction numberToColor(num) {\n // 增加缓存\n var color = numColorCache[num];\n\n if (!color) {\n var str = num.toString(16);\n\n for (var i = str.length; i < 6; i++) {\n str = '0' + str;\n }\n\n color = '#' + str;\n numColorCache[num] = color;\n }\n\n return color;\n}\n\nexport default numberToColor;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/number2color.js\n// module id = 56\n// module chunks = 0","import isArray from './is-array';\n\nfunction parseRadius(radius) {\n var r1 = 0,\n r2 = 0,\n r3 = 0,\n r4 = 0;\n\n if (isArray(radius)) {\n if (radius.length === 1) {\n r1 = r2 = r3 = r4 = radius[0];\n } else if (radius.length === 2) {\n r1 = r3 = radius[0];\n r2 = r4 = radius[1];\n } else if (radius.length === 3) {\n r1 = radius[0];\n r2 = r4 = radius[1];\n r3 = radius[2];\n } else {\n r1 = radius[0];\n r2 = radius[1];\n r3 = radius[2];\n r4 = radius[3];\n }\n } else {\n r1 = r2 = r3 = r4 = radius;\n }\n\n return {\n r1: r1,\n r2: r2,\n r3: r3,\n r4: r4\n };\n}\n\nexport default parseRadius;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/parse-radius.js\n// module id = 57\n// module chunks = 0","var clamp = function (a, min, max) {\n if (a < min) {\n return min;\n } else if (a > max) {\n return max;\n }\n\n return a;\n};\n\nexport default clamp;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/clamp.js\n// module id = 58\n// module chunks = 0","var fixedBase = function (v, base) {\n var str = base.toString();\n var index = str.indexOf('.');\n\n if (index === -1) {\n return Math.round(v);\n }\n\n var length = str.substr(index + 1).length;\n\n if (length > 20) {\n length = 20;\n }\n\n return parseFloat(v.toFixed(length));\n};\n\nexport default fixedBase;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/fixed-base.js\n// module id = 59\n// module chunks = 0","import isNumber from './is-number';\n\nvar isDecimal = function (num) {\n return isNumber(num) && num % 1 !== 0;\n};\n\nexport default isDecimal;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-decimal.js\n// module id = 60\n// module chunks = 0","import isNumber from './is-number';\n\nvar isEven = function (num) {\n return isNumber(num) && num % 2 === 0;\n};\n\nexport default isEven;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-even.js\n// module id = 61\n// module chunks = 0","import isNumber from './is-number';\nvar isInteger = Number.isInteger ? Number.isInteger : function (num) {\n return isNumber(num) && num % 1 === 0;\n};\nexport default isInteger;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-integer.js\n// module id = 62\n// module chunks = 0","import isNumber from './is-number';\n\nvar isNegative = function (num) {\n return isNumber(num) && num < 0;\n};\n\nexport default isNegative;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-negative.js\n// module id = 63\n// module chunks = 0","var PRECISION = 0.00001; // numbers less than this is considered as 0\n\nexport default function isNumberEqual(a, b, precision) {\n if (precision === void 0) {\n precision = PRECISION;\n }\n\n return Math.abs(a - b) < precision;\n}\n;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-number-equal.js\n// module id = 64\n// module chunks = 0","import isNumber from './is-number';\n\nvar isOdd = function (num) {\n return isNumber(num) && num % 2 !== 0;\n};\n\nexport default isOdd;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-odd.js\n// module id = 65\n// module chunks = 0","import isNumber from './is-number';\n\nvar isPositive = function (num) {\n return isNumber(num) && num > 0;\n};\n\nexport default isPositive;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-positive.js\n// module id = 66\n// module chunks = 0","import each from './each';\nimport isArray from './is-array';\nimport isFunction from './is-function';\n/**\n * @param {Array} arr The array to iterate over.\n * @param {Function} [fn] The iteratee invoked per element.\n * @return {*} Returns the maximum value.\n * @example\n *\n * var objects = [{ 'n': 1 }, { 'n': 2 }];\n *\n * maxBy(objects, function(o) { return o.n; });\n * // => { 'n': 2 }\n *\n * maxBy(objects, 'n');\n * // => { 'n': 2 }\n */\n\nexport default (function (arr, fn) {\n if (!isArray(arr)) {\n return undefined;\n }\n\n var max = arr[0];\n var maxData;\n\n if (isFunction(fn)) {\n maxData = fn(arr[0]);\n } else {\n maxData = arr[0][fn];\n }\n\n var data;\n each(arr, function (val) {\n if (isFunction(fn)) {\n data = fn(val);\n } else {\n data = val[fn];\n }\n\n if (data > maxData) {\n max = val;\n maxData = data;\n }\n });\n return max;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/max-by.js\n// module id = 67\n// module chunks = 0","import each from './each';\nimport isArray from './is-array';\nimport isFunction from './is-function';\n/**\n * @param {Array} arr The array to iterate over.\n * @param {Function} [fn] The iteratee invoked per element.\n * @return {*} Returns the minimum value.\n * @example\n *\n * var objects = [{ 'n': 1 }, { 'n': 2 }];\n *\n * minBy(objects, function(o) { return o.n; });\n * // => { 'n': 1 }\n *\n * minBy(objects, 'n');\n * // => { 'n': 1 }\n */\n\nexport default (function (arr, fn) {\n if (!isArray(arr)) {\n return undefined;\n }\n\n var min = arr[0];\n var minData;\n\n if (isFunction(fn)) {\n minData = fn(arr[0]);\n } else {\n minData = arr[0][fn];\n }\n\n var data;\n each(arr, function (val) {\n if (isFunction(fn)) {\n data = fn(val);\n } else {\n data = val[fn];\n }\n\n if (data < minData) {\n min = val;\n minData = data;\n }\n });\n return min;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/min-by.js\n// module id = 68\n// module chunks = 0","var mod = function (n, m) {\n return (n % m + m) % m;\n};\n\nexport default mod;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/mod.js\n// module id = 69\n// module chunks = 0","var DEGREE = 180 / Math.PI;\n\nvar toDegree = function (radian) {\n return DEGREE * radian;\n};\n\nexport default toDegree;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-degree.js\n// module id = 70\n// module chunks = 0","export default parseInt;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-integer.js\n// module id = 71\n// module chunks = 0","var RADIAN = Math.PI / 180;\n\nvar toRadian = function (degree) {\n return RADIAN * degree;\n};\n\nexport default toRadian;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-radian.js\n// module id = 72\n// module chunks = 0","import each from './each';\nexport default each;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/for-in.js\n// module id = 73\n// module chunks = 0","import has from './has';\nexport default has;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/has-key.js\n// module id = 74\n// module chunks = 0","import contains from './contains';\nimport values from './values';\nexport default (function (obj, value) {\n return contains(values(obj), value);\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/has-value.js\n// module id = 75\n// module chunks = 0","import toString from './to-string';\n\nvar lowerCase = function (str) {\n return toString(str).toLowerCase();\n};\n\nexport default lowerCase;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/lower-case.js\n// module id = 76\n// module chunks = 0","import toString from './to-string';\n\nvar lowerFirst = function (value) {\n var str = toString(value);\n return str.charAt(0).toLowerCase() + str.substring(1);\n};\n\nexport default lowerFirst;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/lower-first.js\n// module id = 77\n// module chunks = 0","function substitute(str, o) {\n if (!str || !o) {\n return str;\n }\n\n return str.replace(/\\\\?\\{([^{}]+)\\}/g, function (match, name) {\n if (match.charAt(0) === '\\\\') {\n return match.slice(1);\n }\n\n return o[name] === undefined ? '' : o[name];\n });\n}\n\nexport default substitute;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/substitute.js\n// module id = 78\n// module chunks = 0","import toString from './to-string';\n\nvar upperCase = function (str) {\n return toString(str).toUpperCase();\n};\n\nexport default upperCase;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/upper-case.js\n// module id = 79\n// module chunks = 0","import toString from './to-string';\n\nvar upperFirst = function (value) {\n var str = toString(value);\n return str.charAt(0).toUpperCase() + str.substring(1);\n};\n\nexport default upperFirst;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/upper-first.js\n// module id = 80\n// module chunks = 0","/**\n * 是否是参数类型\n *\n * @param {Object} value 测试的值\n * @return {Boolean}\n */\nimport isType from './is-type';\n\nvar isArguments = function (value) {\n return isType(value, 'Arguments');\n};\n\nexport default isArguments;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-arguments.js\n// module id = 81\n// module chunks = 0","/**\n * 是否是布尔类型\n *\n * @param {Object} value 测试的值\n * @return {Boolean}\n */\nimport isType from './is-type';\n\nvar isBoolean = function (value) {\n return isType(value, 'Boolean');\n};\n\nexport default isBoolean;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-boolean.js\n// module id = 82\n// module chunks = 0","import isType from './is-type';\n\nvar isDate = function (value) {\n return isType(value, 'Date');\n};\n\nexport default isDate;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-date.js\n// module id = 83\n// module chunks = 0","/**\n * 是否是参数类型\n *\n * @param {Object} value 测试的值\n * @return {Boolean}\n */\nimport isType from './is-type';\n\nvar isError = function (value) {\n return isType(value, 'Error');\n};\n\nexport default isError;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-error.js\n// module id = 84\n// module chunks = 0","/**\n * 判断是否为有限数\n * @return {Boolean}\n */\nimport isNumber from './is-number';\nexport default function (value) {\n return isNumber(value) && isFinite(value);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-finite.js\n// module id = 85\n// module chunks = 0","var isNull = function (value) {\n return value === null;\n};\n\nexport default isNull;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-null.js\n// module id = 86\n// module chunks = 0","import isType from './is-type';\n\nvar isRegExp = function (str) {\n return isType(str, 'RegExp');\n};\n\nexport default isRegExp;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-reg-exp.js\n// module id = 87\n// module chunks = 0","var isUndefined = function (value) {\n return value === undefined;\n};\n\nexport default isUndefined;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-undefined.js\n// module id = 88\n// module chunks = 0","/**\n * 判断是否HTML元素\n * @return {Boolean} 是否HTML元素\n */\nvar isElement = function (o) {\n return o instanceof Element || o instanceof HTMLDocument;\n};\n\nexport default isElement;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-element.js\n// module id = 89\n// module chunks = 0","export default function requestAnimationFrame(fn) {\n var method = window.requestAnimationFrame || window.webkitRequestAnimationFrame || // @ts-ignore\n window.mozRequestAnimationFrame || // @ts-ignore\n window.msRequestAnimationFrame || function (f) {\n return setTimeout(f, 16);\n };\n\n return method(fn);\n}\n;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/request-animation-frame.js\n// module id = 90\n// module chunks = 0","export default function cancelAnimationFrame(handler) {\n var method = window.cancelAnimationFrame || window.webkitCancelAnimationFrame || // @ts-ignore\n window.mozCancelAnimationFrame || // @ts-ignore\n window.msCancelAnimationFrame || clearTimeout;\n method(handler);\n}\n;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/clear-animation-frame.js\n// module id = 91\n// module chunks = 0","import mix from './mix';\nimport isFunction from './is-function';\n\nvar augment = function () {\n var args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n\n var c = args[0];\n\n for (var i = 1; i < args.length; i++) {\n var obj = args[i];\n\n if (isFunction(obj)) {\n obj = obj.prototype;\n }\n\n mix(c.prototype, obj);\n }\n};\n\nexport default augment;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/augment.js\n// module id = 92\n// module chunks = 0","import isArray from './is-array';\n\nvar clone = function (obj) {\n if (typeof obj !== 'object' || obj === null) {\n return obj;\n }\n\n var rst;\n\n if (isArray(obj)) {\n rst = [];\n\n for (var i = 0, l = obj.length; i < l; i++) {\n if (typeof obj[i] === 'object' && obj[i] != null) {\n rst[i] = clone(obj[i]);\n } else {\n rst[i] = obj[i];\n }\n }\n } else {\n rst = {};\n\n for (var k in obj) {\n if (typeof obj[k] === 'object' && obj[k] != null) {\n rst[k] = clone(obj[k]);\n } else {\n rst[k] = obj[k];\n }\n }\n }\n\n return rst;\n};\n\nexport default clone;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/clone.js\n// module id = 93\n// module chunks = 0","function debounce(func, wait, immediate) {\n var timeout;\n return function () {\n var context = this,\n args = arguments;\n\n var later = function () {\n timeout = null;\n\n if (!immediate) {\n func.apply(context, args);\n }\n };\n\n var callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n\n if (callNow) {\n func.apply(context, args);\n }\n };\n}\n\nexport default debounce;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/debounce.js\n// module id = 94\n// module chunks = 0","import isFunction from './is-function';\n/**\n * _.memoize(calColor);\n * _.memoize(calColor, (...args) => args[0]);\n * @param f\n * @param resolver\n */\n\nexport default (function (f, resolver) {\n if (!isFunction(f)) {\n throw new TypeError('Expected a function');\n }\n\n var memoized = function () {\n var args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n } // 使用方法构造 key如果不存在 resolver则直接取第一个参数作为 key\n\n\n var key = resolver ? resolver.apply(this, args) : args[0];\n var cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n\n var result = f.apply(this, args); // 缓存起来\n\n cache.set(key, result);\n return result;\n };\n\n memoized.cache = new Map();\n return memoized;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/memoize.js\n// module id = 95\n// module chunks = 0","import isArray from './is-array';\nimport isPlainObject from './is-plain-object';\nvar MAX_MIX_LEVEL = 5;\n\nfunction _deepMix(dist, src, level, maxLevel) {\n level = level || 0;\n maxLevel = maxLevel || MAX_MIX_LEVEL;\n\n for (var key in src) {\n if (src.hasOwnProperty(key)) {\n var value = src[key];\n\n if (value !== null && isPlainObject(value)) {\n if (!isPlainObject(dist[key])) {\n dist[key] = {};\n }\n\n if (level < maxLevel) {\n _deepMix(dist[key], value, level + 1, maxLevel);\n } else {\n dist[key] = src[key];\n }\n } else if (isArray(value)) {\n dist[key] = [];\n dist[key] = dist[key].concat(value);\n } else if (value !== undefined) {\n dist[key] = value;\n }\n }\n }\n} // todo 重写\n\n\nvar deepMix = function (rst) {\n var args = [];\n\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n\n for (var i = 0; i < args.length; i += 1) {\n _deepMix(rst, args[i]);\n }\n\n return rst;\n};\n\nexport default deepMix;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/deep-mix.js\n// module id = 96\n// module chunks = 0","import mix from './mix';\nimport isFunction from './is-function';\n\nvar extend = function (subclass, superclass, overrides, staticOverrides) {\n // 如果只提供父类构造函数,则自动生成子类构造函数\n if (!isFunction(superclass)) {\n overrides = superclass;\n superclass = subclass;\n\n subclass = function () {};\n }\n\n var create = Object.create ? function (proto, c) {\n return Object.create(proto, {\n constructor: {\n value: c\n }\n });\n } : function (proto, c) {\n function Tmp() {}\n\n Tmp.prototype = proto;\n var o = new Tmp();\n o.constructor = c;\n return o;\n };\n var superObj = create(superclass.prototype, subclass); // new superclass(),//实例化父类作为子类的prototype\n\n subclass.prototype = mix(superObj, subclass.prototype); // 指定子类的prototype\n\n subclass.superclass = create(superclass.prototype, superclass);\n mix(superObj, overrides);\n mix(subclass, staticOverrides);\n return subclass;\n};\n\nexport default extend;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/extend.js\n// module id = 97\n// module chunks = 0","import isArrayLike from './is-array-like';\n\nvar indexOf = function (arr, obj) {\n if (!isArrayLike(arr)) {\n return -1;\n }\n\n var m = Array.prototype.indexOf;\n\n if (m) {\n return m.call(arr, obj);\n }\n\n var index = -1;\n\n for (var i = 0; i < arr.length; i++) {\n if (arr[i] === obj) {\n index = i;\n break;\n }\n }\n\n return index;\n};\n\nexport default indexOf;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/index-of.js\n// module id = 98\n// module chunks = 0","import isNil from './is-nil';\nimport isArrayLike from './is-array-like';\nimport getType from './get-type';\nimport isPrototype from './is-prototype';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isEmpty(value) {\n /**\n * isEmpty(null) => true\n * isEmpty() => true\n * isEmpty(true) => true\n * isEmpty(1) => true\n * isEmpty([1, 2, 3]) => false\n * isEmpty('abc') => false\n * isEmpty({ a: 1 }) => false\n */\n if (isNil(value)) {\n return true;\n }\n\n if (isArrayLike(value)) {\n return !value.length;\n }\n\n var type = getType(value);\n\n if (type === 'Map' || type === 'Set') {\n return !value.size;\n }\n\n if (isPrototype(value)) {\n return !Object.keys(value).length;\n }\n\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n\n return true;\n}\n\nexport default isEmpty;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-empty.js\n// module id = 99\n// module chunks = 0","import isFunction from './is-function';\nimport isEqual from './is-equal';\n/**\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [fn] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * isEqualWith(array, other, customizer); // => true\n */\n\nexport default (function (value, other, fn) {\n if (!isFunction(fn)) {\n return isEqual(value, other);\n }\n\n return !!fn(value, other);\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/is-equal-with.js\n// module id = 100\n// module chunks = 0","import each from './each';\nimport isArrayLike from './is-array-like';\n\nvar map = function (arr, func) {\n if (!isArrayLike(arr)) {\n // @ts-ignore\n return arr;\n }\n\n var result = [];\n each(arr, function (value, index) {\n result.push(func(value, index));\n });\n return result;\n};\n\nexport default map;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/map.js\n// module id = 101\n// module chunks = 0","import isNil from './is-nil';\nimport isObject from './is-object';\n\nvar identity = function (v) {\n return v;\n};\n\nexport default (function (object, func) {\n if (func === void 0) {\n func = identity;\n }\n\n var r = {};\n\n if (isObject(object) && !isNil(object)) {\n Object.keys(object).forEach(function (key) {\n // @ts-ignore\n r[key] = func(object[key], key);\n });\n }\n\n return r;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/map-values.js\n// module id = 102\n// module chunks = 0","import isString from './is-string';\n/**\n * https://github.com/developit/dlv/blob/master/index.js\n * @param obj\n * @param key\n * @param defaultValue\n */\n\nexport default (function (obj, key, defaultValue) {\n var p = 0;\n var keyArr = isString(key) ? key.split('.') : key;\n\n while (obj && p < keyArr.length) {\n obj = obj[keyArr[p++]];\n }\n\n return obj === undefined || p < keyArr.length ? defaultValue : obj;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/get.js\n// module id = 103\n// module chunks = 0","import isObject from './is-object';\nimport isString from './is-string';\nimport isNumber from './is-number';\n/**\n * https://github.com/developit/dlv/blob/master/index.js\n * @param obj\n * @param path\n * @param value\n */\n\nexport default (function (obj, path, value) {\n var o = obj;\n var keyArr = isString(path) ? path.split('.') : path;\n keyArr.forEach(function (key, idx) {\n // 不是最后一个\n if (idx < keyArr.length - 1) {\n if (!isObject(o[key])) {\n o[key] = isNumber(keyArr[idx + 1]) ? [] : {};\n }\n\n o = o[key];\n } else {\n o[key] = value;\n }\n });\n return obj;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/set.js\n// module id = 104\n// module chunks = 0","import each from './each';\nimport isPlainObject from './is-plain-object';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport default (function (object, keys) {\n if (object === null || !isPlainObject(object)) {\n return {};\n }\n\n var result = {};\n each(keys, function (key) {\n if (hasOwnProperty.call(object, key)) {\n result[key] = object[key];\n }\n });\n return result;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/pick.js\n// module id = 105\n// module chunks = 0","export default (function (func, wait, options) {\n var timeout, context, args, result;\n var previous = 0;\n if (!options) options = {};\n\n var later = function () {\n previous = options.leading === false ? 0 : Date.now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n };\n\n var throttled = function () {\n var now = Date.now();\n if (!previous && options.leading === false) previous = now;\n var remaining = wait - (now - previous);\n context = this;\n args = arguments;\n\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n\n previous = now;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n\n return result;\n };\n\n throttled.cancel = function () {\n clearTimeout(timeout);\n previous = 0;\n timeout = context = args = null;\n };\n\n return throttled;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/throttle.js\n// module id = 106\n// module chunks = 0","import isArrayLike from './is-array-like';\nexport default (function (value) {\n return isArrayLike(value) ? Array.prototype.slice.call(value) : [];\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/to-array.js\n// module id = 107\n// module chunks = 0","var map = {};\nexport default (function (prefix) {\n prefix = prefix || 'g';\n\n if (!map[prefix]) {\n map[prefix] = 1;\n } else {\n map[prefix] += 1;\n }\n\n return prefix + map[prefix];\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/unique-id.js\n// module id = 108\n// module chunks = 0","export default (function () {});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/noop.js\n// module id = 109\n// module chunks = 0","export default (function (v) {\n return v;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/identity.js\n// module id = 110\n// module chunks = 0","import isNil from './is-nil';\nimport isArraylike from './is-array-like';\nexport default function size(o) {\n if (isNil(o)) {\n return 0;\n }\n\n if (isArraylike(o)) {\n return o.length;\n }\n\n return Object.keys(o).length;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/size.js\n// module id = 111\n// module chunks = 0","/**\n * k-v 存储\n */\nvar default_1 =\n/** @class */\nfunction () {\n function default_1() {\n this.map = {};\n }\n\n default_1.prototype.has = function (key) {\n return this.map[key] !== undefined;\n };\n\n default_1.prototype.get = function (key, def) {\n var v = this.map[key];\n return v === undefined ? def : v;\n };\n\n default_1.prototype.set = function (key, value) {\n this.map[key] = value;\n };\n\n default_1.prototype.clear = function () {\n this.map = {};\n };\n\n default_1.prototype.delete = function (key) {\n delete this.map[key];\n };\n\n default_1.prototype.size = function () {\n return Object.keys(this.map).length;\n };\n\n return default_1;\n}();\n\nexport default default_1;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_@antv_util@2.0.7@@antv/util/esm/cache.js\n// module id = 112\n// module chunks = 0","// wrap tree node\nfunction WrappedTree(w, h, y, c) {\n if (c === void 0) {\n c = [];\n }\n\n var me = this; // size\n\n me.w = w || 0;\n me.h = h || 0; // position\n\n me.y = y || 0;\n me.x = 0; // children\n\n me.c = c || [];\n me.cs = c.length; // modified\n\n me.prelim = 0;\n me.mod = 0;\n me.shift = 0;\n me.change = 0; // left/right tree\n\n me.tl = null;\n me.tr = null; // extreme left/right tree\n\n me.el = null;\n me.er = null; // modified left/right tree\n\n me.msel = 0;\n me.mser = 0;\n}\n\nWrappedTree.fromNode = function (root, isHorizontal) {\n if (!root) return null;\n var children = [];\n root.children.forEach(function (child) {\n children.push(WrappedTree.fromNode(child, isHorizontal));\n });\n if (isHorizontal) return new WrappedTree(root.height, root.width, root.x, children);\n return new WrappedTree(root.width, root.height, root.y, children);\n}; // node utils\n\n\nfunction moveRight(node, move, isHorizontal) {\n if (isHorizontal) {\n node.y += move;\n } else {\n node.x += move;\n }\n\n node.children.forEach(function (child) {\n moveRight(child, move, isHorizontal);\n });\n}\n\nfunction getMin(node, isHorizontal) {\n var res = isHorizontal ? node.y : node.x;\n node.children.forEach(function (child) {\n res = Math.min(getMin(child, isHorizontal), res);\n });\n return res;\n}\n\nfunction normalize(node, isHorizontal) {\n var min = getMin(node, isHorizontal);\n moveRight(node, -min, isHorizontal);\n}\n\nfunction convertBack(converted\n/* WrappedTree */\n, root\n/* TreeNode */\n, isHorizontal) {\n if (isHorizontal) {\n root.y = converted.x;\n } else {\n root.x = converted.x;\n }\n\n converted.c.forEach(function (child, i) {\n convertBack(child, root.children[i], isHorizontal);\n });\n}\n\nfunction layer(node, isHorizontal, d) {\n if (d === void 0) {\n d = 0;\n }\n\n if (isHorizontal) {\n node.x = d;\n d += node.width;\n } else {\n node.y = d;\n d += node.height;\n }\n\n node.children.forEach(function (child) {\n layer(child, isHorizontal, d);\n });\n}\n\nmodule.exports = function (root, options) {\n if (options === void 0) {\n options = {};\n }\n\n var isHorizontal = options.isHorizontal;\n\n function firstWalk(t) {\n if (t.cs === 0) {\n setExtremes(t);\n return;\n }\n\n firstWalk(t.c[0]);\n var ih = updateIYL(bottom(t.c[0].el), 0, null);\n\n for (var i = 1; i < t.cs; ++i) {\n firstWalk(t.c[i]);\n var min = bottom(t.c[i].er);\n separate(t, i, ih);\n ih = updateIYL(min, i, ih);\n }\n\n positionRoot(t);\n setExtremes(t);\n }\n\n function setExtremes(t) {\n if (t.cs === 0) {\n t.el = t;\n t.er = t;\n t.msel = t.mser = 0;\n } else {\n t.el = t.c[0].el;\n t.msel = t.c[0].msel;\n t.er = t.c[t.cs - 1].er;\n t.mser = t.c[t.cs - 1].mser;\n }\n }\n\n function separate(t, i, ih) {\n var sr = t.c[i - 1];\n var mssr = sr.mod;\n var cl = t.c[i];\n var mscl = cl.mod;\n\n while (sr !== null && cl !== null) {\n if (bottom(sr) > ih.low) ih = ih.nxt;\n var dist = mssr + sr.prelim + sr.w - (mscl + cl.prelim);\n\n if (dist > 0) {\n mscl += dist;\n moveSubtree(t, i, ih.index, dist);\n }\n\n var sy = bottom(sr);\n var cy = bottom(cl);\n\n if (sy <= cy) {\n sr = nextRightContour(sr);\n if (sr !== null) mssr += sr.mod;\n }\n\n if (sy >= cy) {\n cl = nextLeftContour(cl);\n if (cl !== null) mscl += cl.mod;\n }\n }\n\n if (!sr && !!cl) {\n setLeftThread(t, i, cl, mscl);\n } else if (!!sr && !cl) {\n setRightThread(t, i, sr, mssr);\n }\n }\n\n function moveSubtree(t, i, si, dist) {\n t.c[i].mod += dist;\n t.c[i].msel += dist;\n t.c[i].mser += dist;\n distributeExtra(t, i, si, dist);\n }\n\n function nextLeftContour(t) {\n return t.cs === 0 ? t.tl : t.c[0];\n }\n\n function nextRightContour(t) {\n return t.cs === 0 ? t.tr : t.c[t.cs - 1];\n }\n\n function bottom(t) {\n return t.y + t.h;\n }\n\n function setLeftThread(t, i, cl, modsumcl) {\n var li = t.c[0].el;\n li.tl = cl;\n var diff = modsumcl - cl.mod - t.c[0].msel;\n li.mod += diff;\n li.prelim -= diff;\n t.c[0].el = t.c[i].el;\n t.c[0].msel = t.c[i].msel;\n }\n\n function setRightThread(t, i, sr, modsumsr) {\n var ri = t.c[i].er;\n ri.tr = sr;\n var diff = modsumsr - sr.mod - t.c[i].mser;\n ri.mod += diff;\n ri.prelim -= diff;\n t.c[i].er = t.c[i - 1].er;\n t.c[i].mser = t.c[i - 1].mser;\n }\n\n function positionRoot(t) {\n t.prelim = (t.c[0].prelim + t.c[0].mod + t.c[t.cs - 1].mod + t.c[t.cs - 1].prelim + t.c[t.cs - 1].w) / 2 - t.w / 2;\n }\n\n function secondWalk(t, modsum) {\n modsum += t.mod;\n t.x = t.prelim + modsum;\n addChildSpacing(t);\n\n for (var i = 0; i < t.cs; i++) {\n secondWalk(t.c[i], modsum);\n }\n }\n\n function distributeExtra(t, i, si, dist) {\n if (si !== i - 1) {\n var nr = i - si;\n t.c[si + 1].shift += dist / nr;\n t.c[i].shift -= dist / nr;\n t.c[i].change -= dist - dist / nr;\n }\n }\n\n function addChildSpacing(t) {\n var d = 0;\n var modsumdelta = 0;\n\n for (var i = 0; i < t.cs; i++) {\n d += t.c[i].shift;\n modsumdelta += d + t.c[i].change;\n t.c[i].mod += modsumdelta;\n }\n }\n\n function updateIYL(low, index, ih) {\n while (ih !== null && low >= ih.low) {\n ih = ih.nxt;\n }\n\n return {\n low: low,\n index: index,\n nxt: ih\n };\n } // do layout\n\n\n layer(root, isHorizontal);\n var wt = WrappedTree.fromNode(root, isHorizontal);\n firstWalk(wt);\n secondWalk(wt, 0);\n convertBack(wt, root, isHorizontal);\n normalize(root, isHorizontal);\n return root;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/non-layered-tidy.js\n// module id = 113\n// module chunks = 0","function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar TreeLayout = require('./layout/base');\n\nvar dendrogram = require('./layout/dendrogram');\n\nvar doTreeLayout = require('./layout/do-layout');\n\nvar util = require('./util');\n\nvar DendrogramLayout = /*#__PURE__*/function (_TreeLayout) {\n _inheritsLoose(DendrogramLayout, _TreeLayout);\n\n function DendrogramLayout() {\n return _TreeLayout.apply(this, arguments) || this;\n }\n\n var _proto = DendrogramLayout.prototype;\n\n _proto.execute = function execute() {\n var me = this;\n me.rootNode.width = 0;\n return doTreeLayout(me.rootNode, me.options, dendrogram);\n };\n\n return DendrogramLayout;\n}(TreeLayout);\n\nvar DEFAULT_OPTIONS = {};\n\nfunction dendrogramLayout(root, options) {\n options = util.assign({}, DEFAULT_OPTIONS, options);\n return new DendrogramLayout(root, options).execute();\n}\n\nmodule.exports = dendrogramLayout;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/dendrogram.js\n// module id = 114\n// module chunks = 0","// wrap tree node\n// TODO considering size\nvar util = require('../util');\n\nfunction WrappedTree(height, children) {\n if (height === void 0) {\n height = 0;\n }\n\n if (children === void 0) {\n children = [];\n }\n\n var me = this;\n me.x = me.y = 0;\n me.leftChild = me.rightChild = null;\n me.height = 0;\n me.children = children;\n}\n\nvar DEFAULT_OPTIONS = {\n isHorizontal: true,\n nodeSep: 20,\n nodeSize: 20,\n rankSep: 200,\n subTreeSep: 10\n};\n\nfunction convertBack(converted\n/* WrappedTree */\n, root\n/* TreeNode */\n, isHorizontal) {\n if (isHorizontal) {\n root.x = converted.x;\n root.y = converted.y;\n } else {\n root.x = converted.y;\n root.y = converted.x;\n }\n\n converted.children.forEach(function (child, i) {\n convertBack(child, root.children[i], isHorizontal);\n });\n}\n\nmodule.exports = function (root, options) {\n if (options === void 0) {\n options = {};\n }\n\n options = util.assign({}, DEFAULT_OPTIONS, options);\n var maxDepth = 0;\n\n function wrappedTreeFromNode(n) {\n if (!n) return null;\n n.width = 0;\n\n if (n.depth && n.depth > maxDepth) {\n maxDepth = n.depth; // get the max depth\n }\n\n var children = n.children;\n var childrenCount = children.length;\n var t = new WrappedTree(n.height, []);\n children.forEach(function (child, i) {\n var childWT = wrappedTreeFromNode(child);\n t.children.push(childWT);\n\n if (i === 0) {\n // t.leftChild = childWT.leftChild ? childWT.leftChild : childWT\n t.leftChild = childWT;\n }\n\n if (i === childrenCount - 1) {\n // t.rightChild = childWT.rightChild ? childWT.rightChild : childWT\n t.rightChild = childWT;\n }\n });\n t.originNode = n;\n t.isLeaf = n.isLeaf();\n return t;\n }\n\n function getDrawingDepth(t) {\n if (t.isLeaf || t.children.length === 0) {\n t.drawingDepth = maxDepth;\n } else {\n var depths = t.children.map(function (child) {\n return getDrawingDepth(child);\n });\n var minChildDepth = Math.min.apply(null, depths);\n t.drawingDepth = minChildDepth - 1;\n }\n\n return t.drawingDepth;\n }\n\n var prevLeaf;\n\n function position(t) {\n t.x = t.drawingDepth * options.rankSep;\n\n if (t.isLeaf) {\n t.y = 0;\n\n if (prevLeaf) {\n t.y = prevLeaf.y + prevLeaf.height + options.nodeSep;\n\n if (t.originNode.parent !== prevLeaf.originNode.parent) {\n t.y += options.subTreeSep;\n }\n }\n\n prevLeaf = t;\n } else {\n t.children.forEach(function (child) {\n position(child);\n });\n t.y = (t.leftChild.y + t.rightChild.y) / 2;\n }\n } // wrap node\n\n\n var wt = wrappedTreeFromNode(root); // get depth for drawing\n\n getDrawingDepth(wt); // get position\n\n position(wt); // get x, y\n\n convertBack(wt, root, options.isHorizontal);\n return root;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/dendrogram.js\n// module id = 115\n// module chunks = 0","function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar TreeLayout = require('./layout/base');\n\nvar indentedTree = require('./layout/indented');\n\nvar separateTree = require('./layout/separate-root');\n\nvar util = require('./util');\n\nvar VALID_DIRECTIONS = ['LR', // left to right\n'RL', // right to left\n'H' // horizontal\n];\nvar DEFAULT_DIRECTION = VALID_DIRECTIONS[0];\n\nvar IndentedLayout = /*#__PURE__*/function (_TreeLayout) {\n _inheritsLoose(IndentedLayout, _TreeLayout);\n\n function IndentedLayout() {\n return _TreeLayout.apply(this, arguments) || this;\n }\n\n var _proto = IndentedLayout.prototype;\n\n _proto.execute = function execute() {\n var me = this;\n var options = me.options;\n var root = me.rootNode;\n options.isHorizontal = true; // default indent 20 and sink first children;\n\n var _options$indent = options.indent,\n indent = _options$indent === void 0 ? 20 : _options$indent,\n _options$dropCap = options.dropCap,\n dropCap = _options$dropCap === void 0 ? true : _options$dropCap;\n var direction = options.direction || DEFAULT_DIRECTION;\n\n if (direction && VALID_DIRECTIONS.indexOf(direction) === -1) {\n throw new TypeError(\"Invalid direction: \" + direction);\n }\n\n if (direction === VALID_DIRECTIONS[0]) {\n // LR\n indentedTree(root, indent, dropCap);\n } else if (direction === VALID_DIRECTIONS[1]) {\n // RL\n indentedTree(root, indent, dropCap);\n root.right2left();\n } else if (direction === VALID_DIRECTIONS[2]) {\n // H\n // separate into left and right trees\n var _separateTree = separateTree(root, options),\n left = _separateTree.left,\n right = _separateTree.right;\n\n indentedTree(left, indent, dropCap);\n left.right2left();\n indentedTree(right, indent, dropCap);\n var bbox = left.getBoundingBox();\n right.translate(bbox.width, 0);\n root.x = right.x - root.width / 2;\n }\n\n return root;\n };\n\n return IndentedLayout;\n}(TreeLayout);\n\nvar DEFAULT_OPTIONS = {};\n\nfunction indentedLayout(root, options) {\n options = util.assign({}, DEFAULT_OPTIONS, options);\n return new IndentedLayout(root, options).execute();\n}\n\nmodule.exports = indentedLayout;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/indented.js\n// module id = 116\n// module chunks = 0","function positionNode(node, previousNode, dx, dropCap) {\n if (!dropCap) {\n try {\n if (node.id === node.parent.children[node.parent.children.length - 1].id) {\n node.x += dx * node.depth;\n node.y = previousNode ? previousNode.y : 0;\n return;\n }\n } catch (e) {// skip to normal when a node has no parent\n }\n }\n\n node.x += dx * node.depth;\n node.y = previousNode ? previousNode.y + previousNode.height : 0;\n return;\n}\n\nmodule.exports = function (root, indent, dropCap) {\n var previousNode = null;\n root.eachNode(function (node) {\n positionNode(node, previousNode, indent, dropCap);\n previousNode = node;\n });\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/indented.js\n// module id = 117\n// module chunks = 0","function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar TreeLayout = require('./layout/base');\n\nvar mindmap = require('./layout/mindmap');\n\nvar doTreeLayout = require('./layout/do-layout');\n\nvar util = require('./util');\n\nvar MindmapLayout = /*#__PURE__*/function (_TreeLayout) {\n _inheritsLoose(MindmapLayout, _TreeLayout);\n\n function MindmapLayout() {\n return _TreeLayout.apply(this, arguments) || this;\n }\n\n var _proto = MindmapLayout.prototype;\n\n _proto.execute = function execute() {\n var me = this;\n return doTreeLayout(me.rootNode, me.options, mindmap);\n };\n\n return MindmapLayout;\n}(TreeLayout);\n\nvar DEFAULT_OPTIONS = {};\n\nfunction mindmapLayout(root, options) {\n options = util.assign({}, DEFAULT_OPTIONS, options);\n return new MindmapLayout(root, options).execute();\n}\n\nmodule.exports = mindmapLayout;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/mindmap.js\n// module id = 118\n// module chunks = 0","var util = require('../util');\n\nfunction secondWalk(node, options) {\n var totalHeight = 0;\n\n if (!node.children.length) {\n totalHeight = node.height;\n } else {\n node.children.forEach(function (c) {\n totalHeight += secondWalk(c, options);\n });\n }\n\n node._subTreeSep = options.getSubTreeSep(node.data);\n node.totalHeight = Math.max(node.height, totalHeight) + 2 * node._subTreeSep;\n return node.totalHeight;\n}\n\nfunction thirdWalk(node) {\n var children = node.children;\n var len = children.length;\n\n if (len) {\n children.forEach(function (c) {\n thirdWalk(c);\n });\n var first = children[0];\n var last = children[len - 1];\n var childrenHeight = last.y - first.y + last.height;\n var childrenTotalHeight = 0;\n children.forEach(function (child) {\n childrenTotalHeight += child.totalHeight;\n });\n\n if (childrenHeight > node.height) {\n // 当子节点总高度大于父节点高度\n node.y = first.y + childrenHeight / 2 - node.height / 2;\n } else if (children.length !== 1 || node.height > childrenTotalHeight) {\n // 多于一个子节点或者父节点大于所有子节点的总高度\n var offset = node.y + (node.height - childrenHeight) / 2 - first.y;\n children.forEach(function (c) {\n c.translate(0, offset);\n });\n } else {\n // 只有一个子节点\n node.y = (first.y + first.height / 2 + last.y + last.height / 2) / 2 - node.height / 2;\n }\n }\n}\n\nvar DEFAULT_OPTIONS = {\n getSubTreeSep: function getSubTreeSep() {\n return 0;\n }\n};\n\nmodule.exports = function (root, options) {\n if (options === void 0) {\n options = {};\n }\n\n options = util.assign({}, DEFAULT_OPTIONS, options);\n root.parent = {\n x: 0,\n width: 0,\n height: 0,\n y: 0\n }; // first walk\n\n root.BFTraverse(function (node) {\n node.x = node.parent.x + node.parent.width; // simply get x\n });\n root.parent = null; // second walk\n\n secondWalk(root, options); // assign sub tree totalHeight\n // adjusting\n // separating nodes\n\n root.startY = 0;\n root.y = root.totalHeight / 2 - root.height / 2;\n root.eachNode(function (node) {\n var children = node.children;\n var len = children.length;\n\n if (len) {\n var first = children[0];\n first.startY = node.startY + node._subTreeSep;\n\n if (len === 1) {\n first.y = node.y + node.height / 2 - first.height / 2;\n } else {\n first.y = first.startY + first.totalHeight / 2 - first.height / 2;\n\n for (var i = 1; i < len; i++) {\n var c = children[i];\n c.startY = children[i - 1].startY + children[i - 1].totalHeight;\n c.y = c.startY + c.totalHeight / 2 - c.height / 2;\n }\n }\n }\n }); // third walk\n\n thirdWalk(root);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/layout/mindmap.js\n// module id = 119\n// module chunks = 0"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AC7DA;AAAA;AACA;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACVA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/BA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACTA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AAAA;AACA;AACA;AACA;;;;;;;ACHA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC3BA;AAAA;AACA;AACA;AACA;AACA;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACtBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACTA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACVA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzLA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACbA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACxBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACbA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC7BA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC5BA;AACA;AACA;;;;;;;ACFA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AClCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChHA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACtBA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACfA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACxBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC5BA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACjCA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzCA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACbA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACjBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACTA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC9CA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC9CA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;;;;;;;ACDA;AAAA;AACA;;;;;;;ACDA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACdA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACTA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACxBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpCA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/CA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACpCA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzBA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC3CA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/BA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACtBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACjBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC1BA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC1CA;AAAA;AACA;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;;;;;;;ACAA;AACA;AACA;;;;;;;ACFA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC/QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACpIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;A","sourceRoot":""}