diff --git a/demo/demolist/Demo1.js b/demo/demolist/Demo1.js
index 80217ec..e2cff9b 100644
--- a/demo/demolist/Demo1.js
+++ b/demo/demolist/Demo1.js
@@ -1,7 +1,7 @@
/**
*
* @title Tree基本使用事例
- * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。
+ * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方
*
*/
@@ -24,25 +24,27 @@ class Demo1 extends Component {
this.state = {
defaultExpandedKeys: keys,
defaultSelectedKeys: keys,
- defaultCheckedKeys: keys,
+ checkedKeys: {checked:keys},
};
}
onSelect(info) {
console.log('selected', info);
}
- onCheck(info) {
- console.log('onCheck', info);
+ onCheck = (checkedKeys) => {
+ let self = this;
+ console.log('onCheck', checkedKeys);
+ const cks = {
+ checked: checkedKeys.checked || checkedKeys,
+ };
+ this.setState({checkedKeys:cks});
}
render() {
- let checkedKeys = {
- checked:this.state.defaultCheckedKeys
- }
+
return (
;
const CARETUP = ;
-var Demo1 = require("./demolist/Demo1");var Demo2 = require("./demolist/Demo2");var Demo3 = require("./demolist/Demo3");var Demo4 = require("./demolist/Demo4");var Demo5 = require("./demolist/Demo5");var Demo6 = require("./demolist/Demo6");var Demo7 = require("./demolist/Demo7");var Demo8 = require("./demolist/Demo8");var Demo9 = require("./demolist/Demo9");var DemoArray = [{"example": ,"title":" Tree基本使用事例","code":"/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\tlet checkedKeys = {\r\n\t\t\tchecked:this.state.defaultCheckedKeys\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n","desc":" 事例涵盖 checkbox如何选择,disable状态和部分选择状态。"},{"example": ,"title":" Tree数据可控事例","code":"/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\n","desc":""},{"example": ,"title":" Tree 拖拽使用事例","code":"/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n","desc":" 拖动结点插入到另一个结点后面或者其他的父节点里面。"},{"example": ,"title":" Tree可搜索事例","code":"/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport FormControl from 'bee-form-control';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\n","desc":""},{"example": ,"title":" Tree异步数据加载","code":"/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\n","desc":" 当点击展开,异步获取子节点数据"},{"example": ,"title":" Tree基本使用事例自定义图标","code":"/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Icon from 'bee-icon';\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n","desc":" 添加openIcon、closeIcon属性"},{"example": ,"title":" Tree增加节点","code":"/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Button from 'bee-button';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n
\r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\n","desc":" "},{"example": ,"title":" Tree 节点可编辑","code":"/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Button from 'bee-button';\r\nimport Icon from 'bee-icon';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\n","desc":" 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key"},{"example": ,"title":" 连接线Tree","code":"/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\n","desc":" "}]
+var Demo1 = require("./demolist/Demo1");var Demo2 = require("./demolist/Demo2");var Demo3 = require("./demolist/Demo3");var Demo4 = require("./demolist/Demo4");var Demo5 = require("./demolist/Demo5");var Demo6 = require("./demolist/Demo6");var Demo7 = require("./demolist/Demo7");var Demo8 = require("./demolist/Demo8");var Demo9 = require("./demolist/Demo9");var DemoArray = [{"example": ,"title":" Tree基本使用事例","code":"/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tcheckedKeys: {checked:keys},\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck = (checkedKeys) => {\r\n\t\tlet self = this;\r\n\t\tconsole.log('onCheck', checkedKeys);\r\n\t\tconst cks = {\r\n\t\t\tchecked: checkedKeys.checked || checkedKeys,\r\n\t\t};\r\n\t\tthis.setState({checkedKeys:cks});\r\n\t}\r\n\trender() {\r\n\t\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n","desc":" 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方"},{"example": ,"title":" Tree数据可控事例","code":"/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\n","desc":""},{"example": ,"title":" Tree 拖拽使用事例","code":"/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n","desc":" 拖动结点插入到另一个结点后面或者其他的父节点里面。"},{"example": ,"title":" Tree可搜索事例","code":"/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\n\nimport { Tree, FormControl } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\n","desc":"","scss_code":".u-tree-searchable-filter {\r\n color: #f50;\r\n transition: all .3s ease;\r\n}"},{"example": ,"title":" Tree异步数据加载","code":"/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\n","desc":" 当点击展开,异步获取子节点数据"},{"example": ,"title":" Tree基本使用事例自定义图标","code":"/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree, Icon } from 'tinper-bee';\r\n\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n","desc":" 添加openIcon、closeIcon属性"},{"example": ,"title":" Tree增加节点","code":"/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport { Tree, Button } from 'tinper-bee';\r\n\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n \r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\n","desc":" "},{"example": ,"title":" Tree 节点可编辑","code":"/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree, Icon, Button } from 'tinper-bee';\r\n\n\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\n","desc":" 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key","scss_code":".title-middle {\r\n display: inline-block;\r\n vertical-align: middle;\r\n}\r\n.edit-icon {\r\n float:right;\r\n font-size: 14px;\r\n}\r\n.title-con {\r\n min-width: 150px;\r\n}"},{"example": ,"title":" 连接线Tree","code":"/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\n","desc":" "}]
class Demo extends Component {
diff --git a/dist/demo.js b/dist/demo.js
index 313e64d..4a3e8de 100644
--- a/dist/demo.js
+++ b/dist/demo.js
@@ -76,7 +76,7 @@
var CARETUP = _react2['default'].createElement('i', { className: 'uf uf-arrow-up' });
- var Demo1 = __webpack_require__(105);var Demo2 = __webpack_require__(116);var Demo3 = __webpack_require__(117);var Demo4 = __webpack_require__(118);var Demo5 = __webpack_require__(123);var Demo6 = __webpack_require__(124);var Demo7 = __webpack_require__(125);var Demo8 = __webpack_require__(126);var Demo9 = __webpack_require__(127);var DemoArray = [{ "example": _react2['default'].createElement(Demo1, null), "title": " Tree基本使用事例", "code": "/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\tlet checkedKeys = {\r\n\t\t\tchecked:this.state.defaultCheckedKeys\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n", "desc": " 事例涵盖 checkbox如何选择,disable状态和部分选择状态。" }, { "example": _react2['default'].createElement(Demo2, null), "title": " Tree数据可控事例", "code": "/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\n", "desc": "" }, { "example": _react2['default'].createElement(Demo3, null), "title": " Tree 拖拽使用事例", "code": "/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n", "desc": " 拖动结点插入到另一个结点后面或者其他的父节点里面。" }, { "example": _react2['default'].createElement(Demo4, null), "title": " Tree可搜索事例", "code": "/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport FormControl from 'bee-form-control';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\n", "desc": "" }, { "example": _react2['default'].createElement(Demo5, null), "title": " Tree异步数据加载", "code": "/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\n", "desc": " 当点击展开,异步获取子节点数据" }, { "example": _react2['default'].createElement(Demo6, null), "title": " Tree基本使用事例自定义图标", "code": "/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Icon from 'bee-icon';\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n", "desc": " 添加openIcon、closeIcon属性" }, { "example": _react2['default'].createElement(Demo7, null), "title": " Tree增加节点", "code": "/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Button from 'bee-button';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n \r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\n", "desc": " " }, { "example": _react2['default'].createElement(Demo8, null), "title": " Tree 节点可编辑", "code": "/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\nimport Button from 'bee-button';\r\nimport Icon from 'bee-icon';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\n", "desc": " 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key" }, { "example": _react2['default'].createElement(Demo9, null), "title": " 连接线Tree", "code": "/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from 'bee-tree';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\n", "desc": " " }];
+ var Demo1 = __webpack_require__(105);var Demo2 = __webpack_require__(116);var Demo3 = __webpack_require__(117);var Demo4 = __webpack_require__(118);var Demo5 = __webpack_require__(123);var Demo6 = __webpack_require__(124);var Demo7 = __webpack_require__(125);var Demo8 = __webpack_require__(126);var Demo9 = __webpack_require__(127);var DemoArray = [{ "example": _react2['default'].createElement(Demo1, null), "title": " Tree基本使用事例", "code": "/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tcheckedKeys: {checked:keys},\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck = (checkedKeys) => {\r\n\t\tlet self = this;\r\n\t\tconsole.log('onCheck', checkedKeys);\r\n\t\tconst cks = {\r\n\t\t\tchecked: checkedKeys.checked || checkedKeys,\r\n\t\t};\r\n\t\tthis.setState({checkedKeys:cks});\r\n\t}\r\n\trender() {\r\n\t\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n", "desc": " 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方" }, { "example": _react2['default'].createElement(Demo2, null), "title": " Tree数据可控事例", "code": "/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\n", "desc": "" }, { "example": _react2['default'].createElement(Demo3, null), "title": " Tree 拖拽使用事例", "code": "/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n", "desc": " 拖动结点插入到另一个结点后面或者其他的父节点里面。" }, { "example": _react2['default'].createElement(Demo4, null), "title": " Tree可搜索事例", "code": "/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\n\nimport { Tree, FormControl } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\n", "desc": "", "scss_code": ".u-tree-searchable-filter {\r\n color: #f50;\r\n transition: all .3s ease;\r\n}" }, { "example": _react2['default'].createElement(Demo5, null), "title": " Tree异步数据加载", "code": "/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\n", "desc": " 当点击展开,异步获取子节点数据" }, { "example": _react2['default'].createElement(Demo6, null), "title": " Tree基本使用事例自定义图标", "code": "/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree, Icon } from 'tinper-bee';\r\n\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\n", "desc": " 添加openIcon、closeIcon属性" }, { "example": _react2['default'].createElement(Demo7, null), "title": " Tree增加节点", "code": "/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport { Tree, Button } from 'tinper-bee';\r\n\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n \r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\n", "desc": " " }, { "example": _react2['default'].createElement(Demo8, null), "title": " Tree 节点可编辑", "code": "/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree, Icon, Button } from 'tinper-bee';\r\n\n\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\n", "desc": " 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key", "scss_code": ".title-middle {\r\n display: inline-block;\r\n vertical-align: middle;\r\n}\r\n.edit-icon {\r\n float:right;\r\n font-size: 14px;\r\n}\r\n.title-con {\r\n min-width: 150px;\r\n}" }, { "example": _react2['default'].createElement(Demo9, null), "title": " 连接线Tree", "code": "/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport { Tree } from 'tinper-bee';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\n", "desc": " " }];
var Demo = function (_Component) {
_inherits(Demo, _Component);
@@ -7830,7 +7830,7 @@
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); } /**
*
* @title Tree基本使用事例
- * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。
+ * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方
*
*/
@@ -7849,11 +7849,20 @@
var _this = _possibleConstructorReturn(this, _Component.call(this, props));
+ _this.onCheck = function (checkedKeys) {
+ var self = _this;
+ console.log('onCheck', checkedKeys);
+ var cks = {
+ checked: checkedKeys.checked || checkedKeys
+ };
+ _this.setState({ checkedKeys: cks });
+ };
+
var keys = _this.props.keys;
_this.state = {
defaultExpandedKeys: keys,
defaultSelectedKeys: keys,
- defaultCheckedKeys: keys
+ checkedKeys: { checked: keys }
};
return _this;
}
@@ -7862,22 +7871,15 @@
console.log('selected', info);
};
- Demo1.prototype.onCheck = function onCheck(info) {
- console.log('onCheck', info);
- };
-
Demo1.prototype.render = function render() {
- var checkedKeys = {
- checked: this.state.defaultCheckedKeys
- };
+
return _react2['default'].createElement(
_src2['default'],
{ className: 'myCls', showLine: true, checkable: true,
defaultExpandedKeys: this.state.defaultExpandedKeys,
- defaultSelectedKeys: this.state.defaultSelectedKeys
- // defaultCheckedKeys = {this.state.defaultCheckedKeys}
- // checkedKeys={checkedKeys}
- , checkStrictly: true,
+ defaultSelectedKeys: this.state.defaultSelectedKeys,
+ checkedKeys: this.state.checkedKeys,
+ checkStrictly: true,
onSelect: this.onSelect, onCheck: this.onCheck
},
diff --git a/dist/demo.js.map b/dist/demo.js.map
index ba4824f..f7e1b7a 100644
--- a/dist/demo.js.map
+++ b/dist/demo.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap 5dd3f5717d27762f2b56","webpack:///./demo/index.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/index.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Col.js","webpack:///./~/_classnames@2.2.5@classnames/index.js","webpack:///external \"React\"","webpack:///external \"PropTypes\"","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Row.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Layout.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/index.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/Panel.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/index.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Transition.js","webpack:///external \"ReactDOM\"","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/transition/properties.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/inDOM.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/events/on.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Collapse.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/index.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/camelizeStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/camelize.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenateStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenate.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/getComputedStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/removeStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/transition/isTransform.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/util/capitalize.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/all.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/utils/createChainableTypeChecker.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/componentOrElement.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/deprecated.js","webpack:///./~/_warning@3.0.0@warning/browser.js","webpack:///C:/Program Files/nodejs/~/bee-tools/~/_process@0.11.10@process/browser.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/elementType.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/isRequiredForA11y.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/splitComponent.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/fn/object/entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/es7.object.entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_export.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_global.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_core.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_ctx.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_a-function.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_hide.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-dp.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_an-object.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_is-object.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_ie8-dom-define.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_descriptors.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_fails.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_dom-create.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-primitive.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_property-desc.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-to-array.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-keys.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-keys-internal.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_has.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-iobject.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_iobject.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_cof.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_defined.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_array-includes.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-length.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-integer.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-absolute-index.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_shared-key.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_shared.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_uid.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_enum-bug-keys.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-pie.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/createChainedFunction.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/keyCode.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/contains.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/addEventListener.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/index.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventObject.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventBaseObject.js","webpack:///./~/_object-assign@4.1.1@object-assign/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/cssAnimation.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Event.js","webpack:///./~/_component-classes@1.2.6@component-classes/index.js","webpack:///./~/_component-indexof@0.0.3@component-indexof/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/toArray.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Align.js","webpack:///./~/_create-react-class@15.6.2@create-react-class/index.js","webpack:///./~/_create-react-class@15.6.2@create-react-class/factory.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/emptyObject.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/invariant.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/warning.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/emptyFunction.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/index.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/utils.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/propertyUtils.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getOffsetParent.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getVisibleRectForElement.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/isAncestorFixed.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/adjustForViewport.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getRegion.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getElFuturePos.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getAlignOffset.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Fade.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/PanelGroup.js","webpack:///./~/_bee-button@1.0.2@bee-button/build/index.js","webpack:///./~/_bee-button@1.0.2@bee-button/build/Button.js","webpack:///./demo/demolist/Demo1.js","webpack:///./src/index.js","webpack:///./src/Tree.js","webpack:///./src/util.js","webpack:///./src/TreeNode.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/index.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/Animate.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/ChildrenUtils.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/AnimateChild.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/util.js","webpack:///./src/openAnimation.js","webpack:///./demo/demolist/Demo2.js","webpack:///./demo/demolist/Demo3.js","webpack:///./demo/demolist/Demo4.js","webpack:///./~/_bee-form-control@1.0.2@bee-form-control/build/index.js","webpack:///./~/_bee-form-control@1.0.2@bee-form-control/build/FormControl.js","webpack:///./~/_bee-icon@1.0.0@bee-icon/build/index.js","webpack:///./~/_bee-icon@1.0.0@bee-icon/build/Icon.js","webpack:///./demo/demolist/Demo5.js","webpack:///./demo/demolist/Demo6.js","webpack:///./demo/demolist/Demo7.js","webpack:///./demo/demolist/Demo8.js","webpack:///./demo/demolist/Demo9.js"],"names":["CARET","CARETUP","Demo1","require","Demo2","Demo3","Demo4","Demo5","Demo6","Demo7","Demo8","Demo9","DemoArray","Demo","props","state","open","handleClick","bind","setState","render","title","example","code","desc","scss_code","caret","text","header","padding","DemoGroup","map","child","index","document","getElementById","TreeNode","defaultProps","keys","console","log","defaultExpandedKeys","defaultSelectedKeys","defaultCheckedKeys","onSelect","info","onCheck","checkedKeys","checked","color","TreeProps","showLine","bool","className","string","multiple","autoExpandParent","checkStrictly","checkable","defaultExpandAll","array","expandedKeys","oneOfType","object","selectedKeys","onExpand","func","filterAntTreeNode","loadData","onRightClick","draggable","onDragStart","onDragEnter","onDragOver","onDragLeave","onDrop","style","CSSProperties","prefixCls","filterTreeNode","showIcon","openAnimation","Tree","children","noop","forEach","m","contextmenuKeys","checkedKeysChange","getDefaultExpandedKeys","getDefaultCheckedKeys","getDefaultSelectedKeys","dragNodesKeys","dragOverNodeKey","dropNodeKey","componentWillReceiveProps","nextProps","st","e","treeNode","dragNode","getDragNodes","getExpandedKeys","getRawExpandedKeys","event","node","_dropTrigger","onDragEnterGap","offsetTop","refs","selectHandle","top","offsetHeight","pageY","gapHeight","dropPosition","enterGap","eventKey","key","indexOf","warn","posArr","pos","split","res","Number","length","dropToGap","rawExpandedKeys","_rawExpandedKeys","onDragEnd","expanded","controlled","push","splice","then","halfChecked","newSt","treeNodesStates","checkedNodes","item","ind","keyOrPos","checkedPositions","Object","i","checkKeys","checkedNodesPositions","halfCheckedKeys","_checkedKeys","selected","selectedNodes","onMouseEnter","onMouseLeave","onContextMenu","onKeyDown","preventDefault","getFilterExpandedKeys","expandKeyProp","expandAll","expandedPositionArr","newKey","filterExpandedKeys","p","willReceiveProps","undefined","Array","isArray","getKeys","getOpenTransitionName","transitionName","openTransitionName","animationName","tPArr","pArr","expand","expandedIndex","exKeys","concat","disabled","call","renderTreeNode","level","selectable","hasOwnProperty","cloneProps","ref","root","dragOver","dragOverGapTop","dragOverGapBottom","openIcon","closeIcon","siblingPosition","cloneElement","showLineCls","domProps","role","focusable","tabIndex","getTreeNodesStates","_treeNodesStates","Children","Component","propTypes","any","arrayOf","browser","getOffset","loopAllChildren","isInclude","filterParentPosition","handleCheckState","getCheck","getStrictlyValue","arraysEqual","navigator","tem","ua","userAgent","M","match","test","exec","slice","join","replace","appName","appVersion","ele","doc","win","docElem","rect","getClientRects","left","getBoundingClientRect","width","height","ownerDocument","defaultView","documentElement","pageYOffset","clientTop","pageXOffset","clientLeft","getChildrenlength","len","getSiblingPosition","first","last","childs","callback","parent","loop","_parent","type","isTreeNode","smallArray","bigArray","every","ii","arr","levelObj","posLen","levelArr","sort","j","_i","filter","nArr","stripTail","str","splitPosition","obj","checkedPositionArr","checkIt","objKeys","iArr","saved","_pos","_posArr","__pos","_posLen","sibling","siblingChecked","parentPosition","pIndex","itemObj","a","b","browserUa","window","ieOrEdge","defaultTitle","dataLoading","dragNodeHighlight","componentDidMount","_treeNodeInstances","stopPropagation","dataTransfer","setData","callbackPromise","setLoading","renderSwitcher","expandedState","stateIcon","switcherCls","renderCheckbox","checkboxCls","customEle","disableCheckbox","renderChildren","renderFirst","transitionAppear","newChildren","cls","animProps","animation","appear","iconState","canRenderSwitcher","content","openIconCls","closeIconCls","timer","delay","prevent","isLeaf","iconEleCls","icon","wrap","onClick","_this","href","liProps","disabledCls","dragOverCls","filterCls","noopSwitcher","element","animate","show","done","start","active","end","enter","leave","x","y","z","gData","generateData","_level","_preKey","_tns","preKey","tns","arguments","data","dropKey","dragKey","dragObj","ar","dataList","generateList","getParentKey","tree","parentKey","some","onChange","value","uniqueExpandedKeys","searchValue","search","beforeStr","substr","afterStr","generateTreeNodes","name","setLeaf","treeData","curKey","loopLeaf","lev","l","getNewTreeData","onLoadData","setTimeout","Promise","resolve","treeNodes","parentNode","addNode","clickFun","getNodeByKey","prKey","nodeItem","parNode","find","isHover","treenode","editKey","editRender","nodechange","renderTreeTitle","titleIcon","titleInfo","target"],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;ACtCA;;AACA;;AACA;;;;AACA;;;;AACA;;;;;;;;;;;;;;AAGA,KAAMA,QAAQ,wCAAG,WAAU,kBAAb,GAAd;;AAEA,KAAMC,UAAU,wCAAG,WAAU,gBAAb,GAAhB;;AAGA,KAAIC,QAAQ,mBAAAC,CAAQ,GAAR,CAAZ,CAAwC,IAAIC,QAAQ,mBAAAD,CAAQ,GAAR,CAAZ,CAAwC,IAAIE,QAAQ,mBAAAF,CAAQ,GAAR,CAAZ,CAAwC,IAAIG,QAAQ,mBAAAH,CAAQ,GAAR,CAAZ,CAAwC,IAAII,QAAQ,mBAAAJ,CAAQ,GAAR,CAAZ,CAAwC,IAAIK,QAAQ,mBAAAL,CAAQ,GAAR,CAAZ,CAAwC,IAAIM,QAAQ,mBAAAN,CAAQ,GAAR,CAAZ,CAAwC,IAAIO,QAAQ,mBAAAP,CAAQ,GAAR,CAAZ,CAAwC,IAAIQ,QAAQ,mBAAAR,CAAQ,GAAR,CAAZ,CAAwC,IAAIS,YAAY,CAAC,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,aAA7B,EAA2C,QAAO,izDAAlD,EAAo2D,QAAO,sCAA32D,EAAD,EAAo5D,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,aAA7B,EAA2C,QAAO,4vGAAlD,EAA+yG,QAAO,EAAtzG,EAAp5D,EAA8sK,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,cAA7B,EAA4C,QAAO,okGAAnD,EAAwnG,QAAO,4BAA/nG,EAA9sK,EAA22Q,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,YAA7B,EAA0C,QAAO,g1HAAjD,EAAk4H,QAAO,EAAz4H,EAA32Q,EAAwvY,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,aAA7B,EAA2C,QAAO,ipHAAlD,EAAosH,QAAO,kBAA3sH,EAAxvY,EAAu9f,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,kBAA7B,EAAgD,QAAO,kuDAAvD,EAA0xD,QAAO,yBAAjyD,EAAv9f,EAAmxjB,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,WAA7B,EAAyC,QAAO,8yHAAhD,EAA+1H,QAAO,GAAt2H,EAAnxjB,EAA8nrB,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,aAA7B,EAA2C,QAAO,ogGAAlD,EAAujG,QAAO,wEAA9jG,EAA9nrB,EAAswxB,EAAC,WAAU,iCAAC,KAAD,OAAX,EAAqB,SAAQ,UAA7B,EAAwC,QAAO,4gCAA/C,EAA4jC,QAAO,GAAnkC,EAAtwxB,CAAhB;;KAGlWC,I;;;AACF,mBAAYC,KAAZ,EAAmB;AAAA;;AAAA,sDACf,sBAAMA,KAAN,CADe;;AAEf,eAAKC,KAAL,GAAa;AACTC,mBAAM;AADG,UAAb;AAGA,eAAKC,WAAL,GAAmB,MAAKA,WAAL,CAAiBC,IAAjB,OAAnB;AALe;AAMlB;;oBAEDD,W,0BAAc;AACV,cAAKE,QAAL,CAAc,EAACH,MAAM,CAAC,KAAKD,KAAL,CAAWC,IAAnB,EAAd;AACH,M;;oBAEDI,M,qBAAS;AAAA,sBAC2C,KAAKN,KADhD;AAAA,aACEO,KADF,UACEA,KADF;AAAA,aACSC,OADT,UACSA,OADT;AAAA,aACkBC,IADlB,UACkBA,IADlB;AAAA,aACwBC,IADxB,UACwBA,IADxB;AAAA,aAC8BC,SAD9B,UAC8BA,SAD9B;;AAEL,aAAIC,QAAQ,KAAKX,KAAL,CAAWC,IAAX,GAAkBf,OAAlB,GAA4BD,KAAxC;AACA,aAAI2B,OAAO,KAAKZ,KAAL,CAAWC,IAAX,GAAkB,MAAlB,GAA2B,MAAtC;;AAEA,aAAMY,SACF;AAAA;AAAA;AACKN,oBADL;AAEI;AAAA;AAAA,mBAAQ,OAAO,EAAC,aAAa,MAAd,EAAf,EAAsC,OAAM,OAA5C,EAAoD,SAAS,KAAKL,WAAlE;AACKS,sBADL;AAEKC;AAFL;AAFJ,UADJ;AASA,gBACI;AAAA;AAAA,eAAK,IAAI,EAAT;AACI;AAAA;AAAA;AAAKN;AAAL,cADJ;AAEI;AAAA;AAAA;AAAIG;AAAJ,cAFJ;AAGI;AAAA;AAAA,mBAAO,iBAAP,EAAmB,mBAAnB,EAAiC,UAAU,KAAKT,KAAL,CAAWC,IAAtD,EAA4D,QAAO,UAAnE,EAA8E,QAAQY,MAAtF;AACO,kCAAa,EAACC,SAAS,CAAV,EADpB;AAEI;AAAA;AAAA;AAAK;AAAA;AAAA,2BAAM,WAAU,iBAAhB;AAAmCN;AAAnC;AAAL,kBAFJ;AAGK,kBAAC,CAACE,SAAF,GAAc;AAAA;AAAA;AAAK;AAAA;AAAA,2BAAM,WAAU,UAAhB;AAA4BA;AAA5B;AAAL,kBAAd,GAAyE;AAH9E;AAHJ,UADJ;AAWH,M;;;;;KAGCK,S;;;AACF,wBAAYhB,KAAZ,EAAmB;AAAA;;AAAA,iDACf,uBAAMA,KAAN,CADe;AAElB;;yBAEDM,M,qBAAS;AACL,gBACI;AAAA;AAAA;AACKR,uBAAUmB,GAAV,CAAc,UAACC,KAAD,EAAQC,KAAR,EAAkB;;AAE7B,wBACI,iCAAC,IAAD,IAAM,SAASD,MAAMV,OAArB,EAA8B,OAAOU,MAAMX,KAA3C,EAAkD,MAAMW,MAAMT,IAA9D,EAAoE,WAAWS,MAAMP,SAArF;AACM,2BAAMO,MAAMR,IADlB,EACwB,KAAKS,KAD7B,GADJ;AAKH,cAPA;AADL,UADJ;AAYH,M;;;;;AAGL,uBAASb,MAAT,CAAgB,iCAAC,SAAD,OAAhB,EAA8Bc,SAASC,cAAT,CAAwB,eAAxB,CAA9B,E;;;;;;AC7EA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA,mC;;;;;;ACvBA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;ACnKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAgB;;AAEhB;AACA;;AAEA,kBAAiB,sBAAsB;AACvC;AACA;;AAEA;;AAEA;AACA;AACA,KAAI;AACJ;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA,EAAC;;;;;;;AC/CD,wB;;;;;;ACAA,4B;;;;;;ACAA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,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AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,oBAAmB;;AAEnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAuB,iBAAiB;AACxC;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAO;AACP,wBAAuB,oBAAoB;AAC3C;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,wBAAuB,mBAAmB;AAC1C;;AAEA;AACA,8BAA6B,kBAAkB;AAC/C;AACA,UAAS;AACT,QAAO;AACP,MAAK;AACL;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA,wBAAuB,kBAAkB;AACzC;;AAEA;AACA,8BAA6B,iBAAiB;AAC9C;AACA,UAAS;AACT,QAAO;AACP,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA;;AAEA;AACA,8DAA6D;AAC7D;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;;AAEA;;AAEA,iC;;;;;;ACnVA,2B;;;;;;ACAA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,kBAAiB,oBAAoB;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,WAAU;AACV,E;;;;;;AC7GA;;AAEA;AACA;AACA,EAAC;AACD;AACA,qC;;;;;;ACNA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA,IAAG;AACH;;AAEA;AACA,qC;;;;;;AC9BA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAoB;AACpB;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,yBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,iFAAgF;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AC3PA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL,kBAAiB;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL,oEAAmE;AACnE;AACA,IAAG;;AAEH;AACA,0DAAyD;AACzD;;AAEA,2BAA0B;AAC1B;AACA,qC;;;;;;AC7DA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,yBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;ACrBA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,wBAAuB;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACtBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACZA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qC;;;;;;ACtDA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,qC;;;;;;ACTA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACXA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,qC;;;;;;ACTA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iC;;;;;;ACzEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA,wEAAuE,aAAa;AACpF;AACA;;AAEA;AACA,uEAAsE,eAAe;AACrF;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA,E;;;;;;ACtCA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,E;;;;;;ACvCA;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,uE;;;;;;AC/BA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yC;;;;;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,sBAAqB,WAAW;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;;;;;;;;AC3DA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAqC;;AAErC;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;ACvLtC;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,0E;;;;;;AC/BA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA,E;;;;;;ACnBA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,aAAY,SAAS;AACrB,aAAY,eAAe;AAC3B,aAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA,E;;;;;;ACpCA,mBAAkB,wD;;;;;;ACAlB;AACA;;;;;;;ACDA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;;;;;;ACRD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAiE;AACjE;AACA,mFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX,UAAS;AACT;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,gDAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd,eAAc;AACd,eAAc;AACd,eAAc;AACd,gBAAe;AACf,gBAAe;AACf,gBAAe;AACf,iBAAgB;AAChB;;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA,0CAAyC;;;;;;;ACLzC,8BAA6B;AAC7B,wCAAuC;;;;;;;ACDvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;ACfA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;;;;;;;ACFA;AACA,sEAAsE,mBAAmB,UAAU,EAAE,EAAE;AACvG,EAAC;;;;;;;ACFD;AACA;AACA,kCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,EAAC;;;;;;;ACHD;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;;;;;;ACfA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,wBAAuB;AACvB;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA,kBAAiB;;AAEjB;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK,YAAY,eAAe;AAChC;AACA,MAAK;AACL;AACA;;;;;;;ACtBA;AACA;AACA;AACA;AACA,4DAA2D;AAC3D;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA,mDAAkD;AAClD;AACA,wCAAuC;AACvC;;;;;;;ACLA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;;;;;;;ACHA,eAAc;;;;;;;ACAd;;AAEA;AACA;AACA,mEAAkE,aAAa;AAC/E;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,yEAAwE,eAAe;AACvF;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,yC;;;;;;AC7BA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0B;;;;;;ACvgBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;ACdA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,E;;;;;;ACrBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;ACnCA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA,QAAO;AACP;AACA,QAAO;AACP;AACA,QAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sDAAqD;AACrD;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,EAAC;;AAED;AACA,qC;;;;;;ACpRA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;AC3DA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH,mCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAgB,sBAAsB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAkB,oBAAoB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;ACzFA;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;;AAEA,gC;;;;;;AC1LA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;;;AAGH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;AAEA,oC;;;;;;ACpFA;AACA;AACA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,YAAW,QAAQ;AACnB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,QAAQ;AACnB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAW,cAAc;AACzB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW,OAAO;AAClB,YAAW,QAAQ;AACnB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAA+B;AAC/B;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;AACH;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC9LA;AACA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,G;;;;;;ACNA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,E;;;;;;ACjBA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH,iCAAgC;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,yB;;;;;;AChMA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAA+B,KAAK;AACpC;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,WAAW;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,iBAAgB,QAAQ;AACxB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,gBAAe,0BAA0B;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,gBAAe,WAAW;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,0BAA0B;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,wBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAU;AACV;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAU;AACV;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,yCAAwC;AACxC,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA,YAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA2C;AAC3C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB,cAAa,OAAO;AACpB,eAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,SAAS;AACtB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,SAAS;AACtB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,yDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB;AACA;AACA;AACA,oBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA,iBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAa,OAAO;AACpB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;;;;;;;ACr2BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA,8B;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,sDAAqD;AACrD,MAAK;AACL;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA,2BAA0B;AAC1B;AACA;AACA;;AAEA,4B;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAa;AACb;;AAEA;AACA,6FAA4F,eAAe;AAC3G;AACA;;AAEA;AACA;AACA;AACA;;AAEA,0B;;;;;;;AC7DA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,8CAA6C;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gC;;;;;;ACnCA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qC;;;;;;ACnOA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAa,kBAAkB;AAC/B;AACA;AACA,kBAAiB,kBAAkB;AACnC;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA,UAAS,OAAO;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mEAAkE,cAAc;AAChF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,wCAAuC;AACvC,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;;AAEA,uEAAsE,eAAe;AACrF;AACA;;AAEA,oBAAmB,iBAAiB;AACpC;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA,qC;;;;;;AC1jBA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,E;;;;;;AC7GA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA2B,cAAc;AACzC,4BAA2B,cAAc,mBAAmB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oCAAmC,2BAA2B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;ACvDA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,qC;;;;;;ACxGA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oCAAmC,2BAA2B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;AC7BA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,qC;;;;;;ACtDA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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qEAAqE,EAAE,EAAE,OAAO,kBAAkB,EAAE,YAAY;;AAE/M,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mGAAkG;AAClG,UAAS;AACT;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,QAAO;AACP,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT,QAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA,qC;;;;;;ACtXA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,UAAS;AACT;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA,E;;;;;;ACpHA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;;AAEA;;AAEA;AACA,qC;;;;;;ACzIA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,qC;;;;;;;;;;;;AC1BA;;AAEA,UAASiT,OAAT,CAAiB5O,IAAjB,EAAuB6O,IAAvB,EAA6BC,IAA7B,EAAmC;AACjC,OAAIzG,eAAJ;AACA,UAAO,iCAAarI,IAAb,EAAmB,mBAAnB,EAAwC;AAC7C+O,UAD6C,mBACrC;AACN,WAAI,CAACF,IAAL,EAAW;AACT7O,cAAK7B,KAAL,CAAWkK,MAAX,GAAuBrI,KAAKO,YAA5B;AACD,QAFD,MAEO;AACL8H,kBAASrI,KAAKO,YAAd;AACAP,cAAK7B,KAAL,CAAWkK,MAAX,GAAoB,CAApB;AACD;AACF,MAR4C;AAS7C2G,WAT6C,oBASpC;AACPhP,YAAK7B,KAAL,CAAWkK,MAAX,IAAuBwG,OAAOxG,MAAP,GAAgB,CAAvC;AACD,MAX4C;AAY7C4G,QAZ6C,iBAYvC;AACJjP,YAAK7B,KAAL,CAAWkK,MAAX,GAAoB,EAApB;AACAyG;AACD;AAf4C,IAAxC,CAAP;AAiBD;;AAED,KAAMzB,YAAY;AAChB6B,QADgB,iBACVlP,IADU,EACJ8O,IADI,EACE;AAChB,YAAOF,QAAQ5O,IAAR,EAAc,IAAd,EAAoB8O,IAApB,CAAP;AACD,IAHe;AAIhBK,QAJgB,iBAIVnP,IAJU,EAIJ8O,IAJI,EAIE;AAChB,YAAOF,QAAQ5O,IAAR,EAAc,KAAd,EAAqB8O,IAArB,CAAP;AACD,IANe;AAOhBxB,SAPgB,kBAOTtN,IAPS,EAOH8O,IAPG,EAOG;AACjB,YAAOF,QAAQ5O,IAAR,EAAc,IAAd,EAAoB8O,IAApB,CAAP;AACD;AATe,EAAlB;;sBAYezB,S;;;;;;;;;;;;;ACEf;;;;AACA;;;;;;;;;;;;gfAtCA;;;;;;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,KAAM+B,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC5C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AACxB,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS,EAAEhH,OAAOiG,GAAT,EAAcA,QAAd,EAAT;AACA,SAAI2B,IAAI6M,CAAR,EAAW;AACP3Q,gBAASkD,IAAT,CAAcf,GAAd;AACH;AACJ;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACZ,YAAOI,GAAP;AACH;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMrF,KAAN,EAAgB;AAC7BqU,SAAIrU,KAAJ,EAAWkD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIrU,KAAJ,EAAWkD,QAApC,CAAP;AACH,IAHD;AAIH,EApBD;AAqBA8Q,cAAaF,CAAb;;AAEA,KAAM3T,WAAW,iBAAKA,QAAtB;;KAGMhC,K;;;AACJ,kBAAYU,KAAZ,EAAmB;AAAA;;AAAA,kDAClB,sBAAMA,KAAN,CADkB;;AAEjB,WAAKC,KAAL,GAAa;AACX8C,qBAAc,CAAC,OAAD,EAAU,OAAV,CADH;AAEXL,yBAAkB,IAFP;AAGXT,oBAAa,CAAC,OAAD,CAHF;AAIXiB,qBAAc;AAJH,MAAb;AAMA,WAAKC,QAAL,GAAgB,MAAKA,QAAL,CAAc/C,IAAd,OAAhB;AACA,WAAK4B,OAAL,GAAe,MAAKA,OAAL,CAAa5B,IAAb,OAAf;AACA,WAAK0B,QAAL,GAAgB,MAAKA,QAAL,CAAc1B,IAAd,OAAhB;AAViB;AAWlB;;mBACD+C,Q,qBAASJ,Y,EAAc;AACrBtB,aAAQC,GAAR,CAAY,UAAZ,EAAwB+T,SAAxB;AACA;AACA;AACA,UAAKpV,QAAL,CAAc;AACZ0C,iCADY;AAEZL,yBAAkB;AAFN,MAAd;AAID,I;;mBACDV,O,oBAAQC,W,EAAa;AACnB,UAAK5B,QAAL,CAAc;AACZ4B,+BADY;AAEZiB,qBAAc,CAAC,KAAD,EAAQ,KAAR;AAFF,MAAd;AAID,I;;mBACDpB,Q,qBAASoB,Y,EAAcnB,I,EAAM;AAC3BN,aAAQC,GAAR,CAAY,UAAZ,EAAwBK,IAAxB;AACA,UAAK1B,QAAL,CAAc,EAAE6C,0BAAF,EAAd;AACD,I;;mBACD5C,M,qBAAS;AACP,SAAM0O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBACE;AAAC,qBAAD;AAAA,eAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,EAA0C,iBAAiBsB,KAAKtB,GAAL,KAAa,OAAxE;AACGwI,kBAAKlH,KAAKzD,QAAV;AADH,YADF;AAKD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,GAAP;AACD,QAToB,CAAR;AAAA,MAAb;AAUA,YACE;AAAA;AAAA;AACE,wBADF;AAEE,mBAAU,KAAKrD,QAFjB,EAE2B,cAAc,KAAKlD,KAAL,CAAW8C,YAFpD;AAGE,2BAAkB,KAAK9C,KAAL,CAAWyC,gBAH/B;AAIE,kBAAS,KAAKV,OAJhB,EAIyB,aAAa,KAAK/B,KAAL,CAAWgC,WAJjD;AAKE,mBAAU,KAAKH,QALjB,EAK2B,cAAc,KAAK7B,KAAL,CAAWiD;AALpD;AAOG8L,YAAKkG,KAAL;AAPH,MADF;AAWD,I;;;;;AACF;;sBAGc5V,K;;;;;;;;;;;;;ACxHf;;;;AACA;;;;;;;;;;;;;;gfAVA;;;;;;;AAYA,KAAMyV,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC5C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AACxB,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS,EAAEhH,OAAOiG,GAAT,EAAcA,QAAd,EAAT;AACA,SAAI2B,IAAI6M,CAAR,EAAW;AACP3Q,gBAASkD,IAAT,CAAcf,GAAd;AACH;AACJ;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACZ,YAAOI,GAAP;AACH;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMrF,KAAN,EAAgB;AAC7BqU,SAAIrU,KAAJ,EAAWkD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIrU,KAAJ,EAAWkD,QAApC,CAAP;AACH,IAHD;AAIH,EApBD;AAqBA8Q,cAAaF,CAAb;;AAEA,KAAM3T,WAAW,iBAAKA,QAAtB;;KAEM/B,K;;;AACJ,kBAAYS,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACXiV,mBADW;AAEXnS,qBAAc,CAAC,KAAD,EAAQ,OAAR,EAAiB,SAAjB;AAFH,MAAb;AAIA,WAAKW,WAAL,GAAmB,MAAKA,WAAL,CAAiBtD,IAAjB,OAAnB;AACA,WAAKyD,MAAL,GAAc,MAAKA,MAAL,CAAYzD,IAAZ,OAAd;AAPiB;AAQlB;;mBACDsD,W,wBAAY3B,I,EAAM;AAChBN,aAAQC,GAAR,CAAYK,IAAZ;AACA;AACA;AACA;AACA;AACD,I;;mBACD8B,M,mBAAO9B,I,EAAM;AACXN,aAAQC,GAAR,CAAYK,IAAZ;AACA,SAAM4T,UAAU5T,KAAK4D,IAAL,CAAU3F,KAAV,CAAgBuG,QAAhC;AACA,SAAMqP,UAAU7T,KAAKuD,QAAL,CAActF,KAAd,CAAoBuG,QAApC;AACA;AACA,SAAMyI,OAAO,SAAPA,IAAO,CAAC0G,IAAD,EAAOlP,GAAP,EAAYsI,QAAZ,EAAyB;AACpC4G,YAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAO3G,KAAP,EAAcqO,GAAd,EAAsB;AACjC,aAAI1H,KAAKtB,GAAL,KAAaA,GAAjB,EAAsB;AACpB,kBAAOsI,SAAShH,IAAT,EAAe3G,KAAf,EAAsBqO,GAAtB,CAAP;AACD;AACD,aAAI1H,KAAKzD,QAAT,EAAmB;AACjB,kBAAO2K,KAAKlH,KAAKzD,QAAV,EAAoBmC,GAApB,EAAyBsI,QAAzB,CAAP;AACD;AACF,QAPD;AAQD,MATD;AAUA,SAAM4G,oCAAW,KAAKzV,KAAL,CAAWiV,KAAtB,EAAN;AACA,SAAIW,gBAAJ;AACA7G,UAAK0G,IAAL,EAAWE,OAAX,EAAoB,UAAC9N,IAAD,EAAO3G,KAAP,EAAcqO,GAAd,EAAsB;AACxCA,WAAIhI,MAAJ,CAAWrG,KAAX,EAAkB,CAAlB;AACA0U,iBAAU/N,IAAV;AACD,MAHD;AAIA,SAAI/F,KAAKkF,SAAT,EAAoB;AAClB,WAAI6O,WAAJ;AACA,WAAI3N,UAAJ;AACA6G,YAAK0G,IAAL,EAAWC,OAAX,EAAoB,UAAC7N,IAAD,EAAO3G,KAAP,EAAcqO,GAAd,EAAsB;AACxCsG,cAAKtG,GAAL;AACArH,aAAIhH,KAAJ;AACD,QAHD;AAIA2U,UAAGtO,MAAH,CAAUW,CAAV,EAAa,CAAb,EAAgB0N,OAAhB;AACD,MARD,MAQO;AACL7G,YAAK0G,IAAL,EAAWC,OAAX,EAAoB,UAAC7N,IAAD,EAAU;AAC5BA,cAAKzD,QAAL,GAAgByD,KAAKzD,QAAL,IAAiB,EAAjC;AACA;AACAyD,cAAKzD,QAAL,CAAckD,IAAd,CAAmBsO,OAAnB;AACD,QAJD;AAKD;AACD,UAAKxV,QAAL,CAAc;AACZ6U,cAAOQ;AADK,MAAd;AAGD,I;;mBACDpV,M,qBAAS;AACP,SAAM0O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAL,IAAiByD,KAAKzD,QAAL,CAAc2C,MAAnC,EAA2C;AACzC,kBAAO;AAAC,qBAAD;AAAA,eAAU,KAAKc,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC;AAA2CwI,kBAAKlH,KAAKzD,QAAV;AAA3C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,YACE;AAAA;AAAA;AACE,8BAAqB,KAAKvG,KAAL,CAAW8C,YADlC;AAEE,wBAFF;AAGE,sBAAa,KAAKW,WAHpB;AAIE,iBAAQ,KAAKG;AAJf;AAMGmL,YAAK,KAAK/O,KAAL,CAAWiV,KAAhB;AANH,MADF;AAUD,I;;;;;AACF;;sBAEc3V,K;;;;;;;;;;;;;AC/Gf;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAcA,KAAMwV,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC9C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AAC1B,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS;AACPhH,cAAOiG,GADA;AAEPA;AAFO,MAAT;AAIA,SAAI2B,IAAI6M,CAAR,EAAW;AACT3Q,gBAASkD,IAAT,CAAcf,GAAd;AACD;AACF;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACd,YAAOI,GAAP;AACD;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMrF,KAAN,EAAgB;AAC/BqU,SAAIrU,KAAJ,EAAWkD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIrU,KAAJ,EAAWkD,QAApC,CAAP;AACD,IAHD;AAID,EAvBD;AAwBA8Q,cAAaF,CAAb;;AAEA,KAAM3T,WAAW,iBAAKA,QAAtB;;AAEA,KAAMyU,WAAW,EAAjB;AACA,KAAMC,eAAe,SAAfA,YAAe,CAACN,IAAD,EAAU;AAC7B,QAAK,IAAIvN,IAAI,CAAb,EAAgBA,IAAIuN,KAAK1O,MAAzB,EAAiCmB,GAAjC,EAAsC;AACpC,SAAMxC,OAAO+P,KAAKvN,CAAL,CAAb;AACA,SAAM3B,MAAMb,KAAKa,GAAjB;AACAuP,cAASxO,IAAT,CAAc;AACZf,eADY;AAEZjG,cAAOiG;AAFK,MAAd;AAIA,SAAIb,KAAKtB,QAAT,EAAmB;AACjB2R,oBAAarQ,KAAKtB,QAAlB,EAA4BsB,KAAKa,GAAjC;AACD;AACF;AACF,EAZD;AAaAwP,cAAad,KAAb;;AAEA,KAAMe,eAAe,SAAfA,YAAe,CAACzP,GAAD,EAAM0P,IAAN,EAAe;AAClC,OAAIC,kBAAJ;AACA,QAAK,IAAIhO,IAAI,CAAb,EAAgBA,IAAI+N,KAAKlP,MAAzB,EAAiCmB,GAAjC,EAAsC;AACpC,SAAMxC,OAAOuQ,KAAK/N,CAAL,CAAb;AACA,SAAIxC,KAAKtB,QAAT,EAAmB;AACjB,WAAIsB,KAAKtB,QAAL,CAAc+R,IAAd,CAAmB;AAAA,gBAAQtO,KAAKtB,GAAL,KAAaA,GAArB;AAAA,QAAnB,CAAJ,EAAkD;AAChD2P,qBAAYxQ,KAAKa,GAAjB;AACD,QAFD,MAEO,IAAIyP,aAAazP,GAAb,EAAkBb,KAAKtB,QAAvB,CAAJ,EAAsC;AAC3C8R,qBAAYF,aAAazP,GAAb,EAAkBb,KAAKtB,QAAvB,CAAZ;AACD;AACF;AACF;AACD,UAAO8R,SAAP;AACD,EAbD;;KAgBM3W,K;;;AACJ,kBAAYQ,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAAA,WAQnBmD,QARmB,GAQR,UAACJ,YAAD,EAAkB;AAC3B,aAAK1C,QAAL,CAAc;AACZ0C,mCADY;AAEZL,2BAAkB;AAFN,QAAd;AAID,MAbkB;;AAAA,WAcnB2T,QAdmB,GAcR,UAACC,KAAD,EAAW;;AAEpB,WAAMvT,eAAe,EAArB;AACAgT,gBAASxR,OAAT,CAAiB,UAACuD,IAAD,EAAU;AACzB,aAAIA,KAAKtB,GAAL,CAASC,OAAT,CAAiB6P,KAAjB,IAA0B,CAAC,CAA/B,EAAkC;AAChCvT,wBAAawE,IAAb,CAAkB0O,aAAanO,KAAKtB,GAAlB,EAAuB0O,KAAvB,CAAlB;AACD;AACF,QAJD;AAKA,WAAMqB,qBAAqB,EAA3B;AACAxT,oBAAawB,OAAb,CAAqB,UAACuD,IAAD,EAAU;AAC7B,aAAIA,QAAQyO,mBAAmB9P,OAAnB,CAA2BqB,IAA3B,MAAqC,CAAC,CAAlD,EAAqD;AACnDyO,8BAAmBhP,IAAnB,CAAwBO,IAAxB;AACD;AACF,QAJD;AAKA,aAAKzH,QAAL,CAAc;AACZ0C,uBAAcwT,kBADF;AAEZC,sBAAaF,KAFD;AAGZ5T,2BAAkB;AAHN,QAAd;AAKD,MAjCkB;;AAEjB,WAAKzC,KAAL,GAAa;AACX8C,qBAAc,EADH;AAEXyT,oBAAa,EAFF;AAGX9T,yBAAkB;AAHP,MAAb;AAFiB;AAOlB;;mBA2BDpC,M,qBAAS;AAAA,kBAKH,KAAKL,KALF;AAAA,SAELuW,WAFK,UAELA,WAFK;AAAA,SAGLzT,YAHK,UAGLA,YAHK;AAAA,SAILL,gBAJK,UAILA,gBAJK;;AAMP,SAAMsM,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACtC,aAAM3G,QAAQ2G,KAAKtB,GAAL,CAASiQ,MAAT,CAAgBD,WAAhB,CAAd;AACA,aAAME,YAAY5O,KAAKtB,GAAL,CAASmQ,MAAT,CAAgB,CAAhB,EAAmBxV,KAAnB,CAAlB;AACA,aAAMyV,WAAW9O,KAAKtB,GAAL,CAASmQ,MAAT,CAAgBxV,QAAQqV,YAAYxP,MAApC,CAAjB;AACA,aAAMzG,QAAQY,QAAQ,CAAC,CAAT,GACZ;AAAA;AAAA;AACGuV,oBADH;AAEE;AAAA;AAAA,eAAM,WAAU,0BAAhB;AAA4CF;AAA5C,YAFF;AAGGI;AAHH,UADY,GAMV;AAAA;AAAA;AAAO9O,gBAAKtB;AAAZ,UANJ;AAOA,aAAIsB,KAAKzD,QAAT,EAAmB;AACjB,kBACE;AAAC,qBAAD;AAAA,eAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOjG,KAAhC;AACGyO,kBAAKlH,KAAKzD,QAAV;AADH,YADF;AAKD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOjG,KAAhC,GAAP;AACD,QAnBoB,CAAR;AAAA,MAAb;AAoBA,YACE;AAAA;AAAA;AACE;AACE,gBAAO,EAAEwN,OAAO,GAAT,EADT;AAEE,sBAAY,QAFd;AAGE,mBAAU,KAAKsI;AAHjB,SADF;AAME;AAAA;AAAA;AACE,qBAAU,KAAKlT,QADjB;AAEE,yBAAcJ,YAFhB;AAGE,6BAAkBL;AAHpB;AAKGsM,cAAKkG,KAAL;AALH;AANF,MADF;AAgBD,I;;;;;sBAGY1V,K;;;;;;;AC/Jf;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,4CAA2C,kBAAkB,kCAAkC,qEAAqE,EAAE,EAAE,OAAO,kBAAkB,EAAE,YAAY;;AAE/M,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,uCAAsC,kCAAkC;AACxE;AACA;AACA;AACA;;AAEA;AACA,uBAAsB,mBAAmB;AACzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAqB,wBAAwB;AAC7C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,UAAS,oDAAoD;AAC7D,gEAA+D;AAC/D;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,YAAW,8BAA8B;AACzC,4FAA2F,oBAAoB;AAC/G,6FAA4F,+CAA+C;AAC3I;AACA;AACA;;AAEA,mEAAkE;AAClE;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AC/JA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,2DAA0D,WAAW,iEAAiE;AACtI;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;;;;;;;ACjEA;;;;AAGA;;;;;;;;;;;;;;gfAXA;;;;;;;AAaA,KAAMuV,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC9C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AAC1B,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS;AACPhH,cAAOiG,GADA;AAEPA;AAFO,MAAT;AAIA,SAAI2B,IAAI6M,CAAR,EAAW;AACT3Q,gBAASkD,IAAT,CAAcf,GAAd;AACD;AACF;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACd,YAAOI,GAAP;AACD;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMrF,KAAN,EAAgB;AAC/BqU,SAAIrU,KAAJ,EAAWkD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIrU,KAAJ,EAAWkD,QAApC,CAAP;AACD,IAHD;AAID,EAvBD;AAwBA8Q,cAAaF,CAAb;;AAEA,KAAM3T,WAAW,iBAAKA,QAAtB;;AAEA,UAASuV,iBAAT,CAA2BxR,QAA3B,EAAqC;AACnC,OAAMmK,MAAM,EAAZ;AACA,OAAMhJ,MAAMnB,SAASrF,KAAT,CAAeuG,QAA3B;AACA,QAAK,IAAI4B,IAAI,CAAb,EAAgBA,IAAI,CAApB,EAAuBA,GAAvB,EAA4B;AAC1BqH,SAAIjI,IAAJ,CAAS;AACPuP,uBAActQ,GAAd,SAAqB2B,CADd;AAEP3B,YAAQA,GAAR,SAAe2B;AAFR,MAAT;AAID;AACD,UAAOqH,GAAP;AACD;;AAED,UAASuH,OAAT,CAAiBC,QAAjB,EAA2BC,MAA3B,EAAmCzM,KAAnC,EAA0C;AACxC,OAAM0M,WAAW,SAAXA,QAAW,CAACxB,IAAD,EAAOyB,GAAP,EAAe;AAC9B,SAAMC,IAAID,MAAM,CAAhB;AACAzB,UAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAU;AACrB,WAAKA,KAAKtB,GAAL,CAASQ,MAAT,GAAkBiQ,OAAOjQ,MAA1B,GAAoCc,KAAKtB,GAAL,CAASC,OAAT,CAAiBwQ,MAAjB,MAA6B,CAAjE,GACFA,OAAOxQ,OAAP,CAAeqB,KAAKtB,GAApB,MAA6B,CAD/B,EACkC;AAChC;AACD;AACD,WAAIsB,KAAKzD,QAAT,EAAmB;AACjB6S,kBAASpP,KAAKzD,QAAd,EAAwB+S,CAAxB;AACD,QAFD,MAEO,IAAIA,IAAI,CAAR,EAAW;AAChBtP,cAAK4L,MAAL,GAAc,IAAd;AACD;AACF,MAVD;AAWD,IAbD;AAcAwD,YAASF,QAAT,EAAmBxM,QAAQ,CAA3B;AACD;;AAED,UAAS6M,cAAT,CAAwBL,QAAxB,EAAkCC,MAAlC,EAA0C/V,KAA1C,EAAiDsJ,KAAjD,EAAwD;AACtD,OAAMwE,OAAO,SAAPA,IAAO,CAAC0G,IAAD,EAAU;AACrB,SAAIlL,QAAQ,CAAR,IAAayM,OAAOjQ,MAAP,GAAgB,CAAhB,GAAoBwD,QAAQ,CAA7C,EAAgD;AAChDkL,UAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAU;AACrB,WAAImP,OAAOxQ,OAAP,CAAeqB,KAAKtB,GAApB,MAA6B,CAAjC,EAAoC;AAClC,aAAIsB,KAAKzD,QAAT,EAAmB;AACjB2K,gBAAKlH,KAAKzD,QAAV;AACD,UAFD,MAEO;AACLyD,gBAAKzD,QAAL,GAAgBnD,KAAhB;AACD;AACF;AACF,MARD;AASD,IAXD;AAYA8N,QAAKgI,QAAL;AACAD,WAAQC,QAAR,EAAkBC,MAAlB,EAA0BzM,KAA1B;AACD;;KAEK/K,K;;;AACJ,kBAAYO,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACX+W,iBAAU;AADC,MAAb;AAGA,WAAKlV,QAAL,GAAgB,MAAKA,QAAL,CAAc1B,IAAd,OAAhB;AACA,WAAKkX,UAAL,GAAkB,MAAKA,UAAL,CAAgBlX,IAAhB,OAAlB;AANiB;AAOlB;;mBACDuR,iB,gCAAoB;AAAA;;AAClB4F,gBAAW,YAAM;AACf,cAAKlX,QAAL,CAAc;AACZ2W,mBAAU,CAAC;AACTF,iBAAM,UADG;AAETtQ,gBAAK;AAFI,UAAD,EAGP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK;AAFJ,UAHO,EAMP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDkN,mBAAQ;AAHP,UANO;AADE,QAAd;AAaD,MAdD,EAcG,GAdH;AAeD,I;;mBACD5R,Q,qBAASC,I,EAAM;AACbN,aAAQC,GAAR,CAAY,UAAZ,EAAwBK,IAAxB;AACD,I;;mBACDuV,U,uBAAWjS,Q,EAAU;AAAA;;AACnB,YAAO,IAAImS,OAAJ,CAAY,UAACC,OAAD,EAAa;AAC9BF,kBAAW,YAAM;AACf,aAAMP,wCAAe,OAAK/W,KAAL,CAAW+W,QAA1B,EAAN;AACAK,wBAAeL,QAAf,EAAyB3R,SAASrF,KAAT,CAAeuG,QAAxC,EAAkDsQ,kBAAkBxR,QAAlB,CAAlD,EAA+E,CAA/E;AACA,gBAAKhF,QAAL,CAAc;AACZ2W;AADY,UAAd;AAGAS;AACD,QAPD,EAOG,IAPH;AAQD,MATM,CAAP;AAUD,I;;mBACDnX,M,qBAAS;AACP,SAAM0O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBAAO;AAAC,qBAAD;AAAA,eAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC;AAA4CwI,kBAAKlH,KAAKzD,QAAV;AAA5C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC,EAA2C,QAAQsB,KAAK4L,MAAxD,EAAgE,UAAU5L,KAAKtB,GAAL,KAAa,OAAvF,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,SAAMkR,YAAY1I,KAAK,KAAK/O,KAAL,CAAW+W,QAAhB,CAAlB;AACA,YACE;AAAA;AAAA,SAAM,UAAU,KAAKlV,QAArB,EAA+B,UAAU,KAAKwV,UAA9C;AACGI;AADH,MADF;AAKD,I;;;;;AACF;;sBAEcjY,K;;;;;;;;;;;;;AC9If;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAaA,KAAM6B,WAAW,iBAAKA,QAAtB;;AAEA,KAAMC,eAAe;AACpBC,QAAM,CAAC,OAAD,EAAU,OAAV;AADc,EAArB;AAGAC,SAAQC,GAAR;;KACMtC,K;;;AACL,iBAAYY,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAElB,OAAMwB,OAAO,MAAKxB,KAAL,CAAWwB,IAAxB;AACA,SAAKvB,KAAL,GAAa;AACZ0B,yBAAqBH,IADT;AAEZI,yBAAqBJ,IAFT;AAGZK,wBAAoBL;AAHR,IAAb;AAHkB;AAQlB;;kBACDM,Q,qBAASC,I,EAAM;AACdN,WAAQC,GAAR,CAAY,UAAZ,EAAwBK,IAAxB;AACA,G;;kBACDC,O,oBAAQD,I,EAAM;AACbN,WAAQC,GAAR,CAAY,SAAZ,EAAuBK,IAAvB;AACA,G;;kBACDzB,M,qBAAS;AACR,UAEC;AAAA;AAAA,MAAM,WAAU,OAAhB,EAAyB,eAAzB,EAAmC,UAAU,yDAAM,MAAK,UAAX,GAA7C,EAAuE,WAAW,yDAAM,MAAK,SAAX,GAAlF;AACM,0BAAqB,KAAKL,KAAL,CAAW0B,mBADtC;AAEM,0BAAqB,KAAK1B,KAAL,CAAW2B,mBAFtC;AAGM,yBAAoB,KAAK3B,KAAL,CAAW4B,kBAHrC;AAIM,eAAU,KAAKC,QAJrB,EAI+B,SAAS,KAAKE;AAJ7C;AAMM;AAAC,aAAD;AAAA,OAAU,OAAM,UAAhB,EAA2B,KAAI,KAA/B;AACE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC,EAAyC,cAAzC;AACE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B,EAAqC,qBAArC,GADF;AAEE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B;AAFF,MADF;AAKE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAO;AAAA;AAAA,UAAM,OAAO,EAAEG,OAAO,MAAT,EAAb;AAAA;AAAA,QAAjB,EAA6D,KAAI,SAAjE;AADF;AALF;AANN,IAFD;AAmBA,G;;;;;AAGF/C,OAAMmC,YAAN,GAAqBA,YAArB;;sBAGenC,K;;;;;;;;;;;;;ACrDf;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAcA,KAAMkC,WAAW,iBAAKA,QAAtB;;KAGM3B,K;;;AACJ,kBAAYK,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACX+W,iBAAU,EADC;AAEXrV,4BAAqB,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,CAFV;AAGXgW,mBAAY;AAHD,MAAb;AAKA,WAAK7V,QAAL,GAAgB,MAAKA,QAAL,CAAc1B,IAAd,OAAhB;AACA,WAAKwX,OAAL,GAAe,MAAKA,OAAL,CAAaxX,IAAb,OAAf;AACA,WAAKyX,QAAL,GAAgB,MAAKA,QAAL,CAAczX,IAAd,OAAhB;AACA,WAAK0X,YAAL,GAAoB,MAAKA,YAAL,CAAkB1X,IAAlB,OAApB;AACA,WAAKuX,UAAL,GAAkB,IAAlB;AAXiB;AAYlB;;mBACDhG,iB,gCAAoB;AAAA;;AAChB4F,gBAAW,YAAM;AACf,cAAKlX,QAAL,CAAc;AACZ2W,mBAAU,CAAC;AACTF,iBAAM,UADG;AAETtQ,gBAAK,KAFI;AAGTnC,qBAAU,CAAC;AACTyS,mBAAM,YADG;AAETtQ,kBAAK;AAFI,YAAD,EAGP;AACDsQ,mBAAM,YADL;AAEDtQ,kBAAK;AAFJ,YAHO;AAHD,UAAD,EAUP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDnC,qBAAU,CAAC;AACTyS,mBAAM,YADG;AAETtQ,kBAAK;AAFI,YAAD,EAGP;AACDsQ,mBAAM,YADL;AAEDtQ,kBAAK;AAFJ,YAHO;AAHT,UAVO,EAoBP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDkN,mBAAQ;AAHP,UApBO;AADE,QAAd;AA2BD,MA5BD,EA4BG,GA5BH;AA6BD,I;AACD;;;;;;;mBAKFkE,O,oBAAQG,K,EAAOC,Q,EAAU;AACvB,SAAMtC,OAAO,KAAKzV,KAAL,CAAW+W,QAAxB;AACA,SAAIiB,gBAAJ;AACA,SAAIF,KAAJ,EAAW;AACT;AACAE,iBAAU,KAAKH,YAAL,CAAkBpC,IAAlB,EAAwBqC,KAAxB,CAAV;AACA;AACA,WAAIE,OAAJ,EAAa;AACX,aAAI,CAACA,QAAQ5T,QAAb,EAAuB;AACrB4T,mBAAQ5T,QAAR,GAAmB,EAAnB;AACD;AACD;AACA,aAAI,CAAC2T,SAASxR,GAAd,EAAmB;AACjBwR,oBAASxR,GAAT,GAAeuR,QAAQE,QAAQ5T,QAAR,CAAiB2C,MAAzB,GAAkC,CAAjD;AACD;AACDiR,iBAAQ5T,QAAR,CAAiBkD,IAAjB,CAAsByQ,QAAtB;AACD;AACF,MAdD,MAcO;AACL;AACA,WAAI,CAACA,SAASxR,GAAd,EAAmB;AACjBwR,kBAASxR,GAAT,GAAe,OAAOkP,KAAK1O,MAAZ,GAAqB,CAApC;AACD;AACD0O,YAAKnO,IAAL,CAAUyQ,QAAV;AACD;;AAED,UAAK3X,QAAL,CAAc;AACZqV;AADY,MAAd;AAGD,I;;mBAEDoC,Y,yBAAapC,I,EAAMlP,G,EAAK;AAAA;;AACtB,SAAI,CAAC,KAAKmR,UAAV,EAAsB;AACpBjC,YAAKwC,IAAL,CAAU,gBAAQ;AAChB,aAAIpQ,KAAKtB,GAAL,KAAaA,GAAjB,EAAsB;AACpB/E,mBAAQC,GAAR,CAAY,iBAAiBoG,KAAKgP,IAAlC;AACA,kBAAKa,UAAL,GAAkB7P,IAAlB;AACA,kBAAQ,IAAR;AACD,UAJD,MAIO,IAAIA,KAAKzD,QAAT,EAAmB;AACxB,kBAAO,OAAKyT,YAAL,CAAkBhQ,KAAKzD,QAAvB,EAAiCmC,GAAjC,CAAP;AAED;AACF,QATD;AAUD;AACD,YAAO,KAAKmR,UAAZ;AACD,I;;mBAID7V,Q,qBAASC,I,EAAM;AACXN,aAAQC,GAAR,CAAY,UAAZ,EAAwBK,IAAxB;AACD,I;AACD;;;;;mBAGF8V,Q,uBAAW;AACT,SAAIE,cAAJ;AAAA,SAAWC,iBAAX;AACAD,aAAQ,KAAR;AACAC,gBAAW;AACTlB,aAAM;AADG,MAAX;AAGA,UAAKc,OAAL,CAAaG,KAAb,EAAoBC,QAApB;AACD,I;;mBAED1X,M,qBAAS;AACP,SAAM0O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBAAO;AAAC,qBAAD;AAAA,eAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC;AAA4CwI,kBAAKlH,KAAKzD,QAAV;AAA5C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC,EAA2C,QAAQsB,KAAK4L,MAAxD,EAAgE,UAAU5L,KAAKtB,GAAL,KAAa,OAAvF,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,SAAMkR,YAAY1I,KAAK,KAAK/O,KAAL,CAAW+W,QAAhB,CAAlB;AACAvV,aAAQC,GAAR,CAAY,kBAAkB,KAAKzB,KAAL,CAAW0B,mBAAzC;AACA,YACE;AAAA;AAAA;AACE;AAAA;AAAA,WAAM,UAAU,KAAKG,QAArB,EAA+B,qBAAqB,KAAK7B,KAAL,CAAW0B,mBAA/D;AACG+V;AADH,QADF;AAIE;AAAA;AAAA,WAAQ,QAAO,SAAf,EAAyB,SAAS,KAAKG,QAAvC;AAAA;AAAA;AAJF,MADF;AAUD,I;;;;;AACF;;sBAEclY,K;;;;;;;;;;;;;ACjJf;;;;AAGA;;;;AACA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;AAcA,KAAM2B,WAAW,iBAAKA,QAAtB;;AAEA,KAAIiS,QAAQ,CAAZ;AACA,KAAIC,QAAQ,GAAZ;AACA,KAAIC,UAAU,KAAd;;KAIM7T,K;;;AACL,iBAAYI,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAAA,SAYnB0I,YAZmB,GAYJ,UAACtD,CAAD,EAAO;AACrB,UAAK/E,QAAL,CAAc;AACb8X,cAAS/S,EAAEO,IAAF,CAAO3F,KAAP,CAAauG;AADT,KAAd;AAGA,IAhBkB;;AAAA,SAiBnBoC,YAjBmB,GAiBJ,UAACvD,CAAD,EAAIgT,QAAJ,EAAiB;AAC/B,UAAK/X,QAAL,CAAc;AACb8X,cAAS,EADI;AAEbE,cAAS;AAFI,KAAd;AAKA,IAvBkB;;AAAA,SAyBnBC,UAzBmB,GAyBN,UAACxQ,IAAD,EAAU;AACtB,UAAKzH,QAAL,CAAc;AACbgY,cAASvQ,KAAKtB;AADD,KAAd;AAGA,IA7BkB;;AAAA,SA8BnB+R,UA9BmB,GA8BN,UAACzQ,IAAD,EAAOwO,KAAP,EAAiB;AAC7BxO,SAAKgP,IAAL,GAAYR,KAAZ;AACA,IAhCkB;;AAAA,SAiCnBkC,eAjCmB,GAiCD,UAAC1Q,IAAD,EAAU;AAC3B,QAAI2Q,kBAAJ;AAAA,QAAeC,kBAAf;AACA;AACA,QAAI,MAAKzY,KAAL,CAAWoY,OAAX,IAAsBvQ,KAAKtB,GAA/B,EAAoC;AACnCkS,iBAAY,4CAAO,MAAK,MAAZ,EAAmB,IAAG,SAAtB,EAAgC,cAAc5Q,KAAKgP,IAAnD,EAAyD,UAAU,kBAAC1R,CAAD;AAAA,cAAO,MAAKmT,UAAL,CAAgBzQ,IAAhB,EAAsB1C,EAAEuT,MAAF,CAASrC,KAA/B,CAAP;AAAA,OAAnE,GAAZ;AACA,KAFD,MAEO;AACNoC,iBAAY;AAAA;AAAA,QAAM,WAAU,cAAhB;AAAgC5Q,WAAKgP;AAArC,MAAZ;AACA;AACD;AACA,QAAI,MAAK7W,KAAL,CAAWkY,OAAX,IAAsBrQ,KAAKtB,GAA/B,EAAoC;AACnCiS,iBAAY,yDAAM,WAAU,wBAAhB,EAAyC,MAAK,WAA9C,EAA0D,SAAS,iBAACrT,CAAD;AAAA,cAAO,MAAKkT,UAAL,CAAgBxQ,IAAhB,CAAP;AAAA,OAAnE,GAAZ;AACA;AACD,WAAQ;AAAA;AAAA,OAAK,WAAU,WAAf;AAEN4Q,cAFM;AAGND;AAHM,KAAR;AAKA,IAlDkB;;AAAA,SAoDnB9G,iBApDmB,GAoDC,YAAM;AACzB4F,eAAW,YAAM;AAChB,WAAKlX,QAAL,CAAc;AACb2W,gBAAU,CAAC;AACVF,aAAM,UADI;AAEVtQ,YAAK,KAFK;AAGVnC,iBAAU,CAAC;AACVyS,cAAM,YADI;AAEVtQ,aAAK;AAFK,QAAD,EAGP;AACFsQ,cAAM,YADJ;AAEFtQ,aAAK;AAFH,QAHO;AAHA,OAAD,EAUP;AACFsQ,aAAM,UADJ;AAEFtQ,YAAK,KAFH;AAGFnC,iBAAU,CAAC;AACVyS,cAAM,YADI;AAEVtQ,aAAK;AAFK,QAAD,EAGP;AACFsQ,cAAM,YADJ;AAEFtQ,aAAK;AAFH,QAHO;AAHR,OAVO,EAoBP;AACFsQ,aAAM,UADJ;AAEFtQ,YAAK,KAFH;AAGFkN,eAAQ;AAHN,OApBO;AADG,MAAd;AA4BA,KA7BD,EA6BG,GA7BH;AA8BA,IAnFkB;;AAGlB,SAAKzT,KAAL,GAAa;AACZ+W,cAAU,EADE;AAEZmB,aAAS,EAFG;AAGZE,aAAS;AAHG,IAAb;;AAHkB;AASlB;;kBA2ED/X,M,qBAAS;AAAA;;AACR,OAAM0O,OAAO,SAAPA,IAAO;AAAA,WAAQ0G,KAAKzU,GAAL,CAAS,UAAC6G,IAAD,EAAU;AACvC,SAAIA,KAAKzD,QAAT,EAAmB;AAClB,aAAO;AAAC,eAAD;AAAA,SAAU,OAAO,OAAKmU,eAAL,CAAqB1Q,IAArB,CAAjB,EAA6C,KAAKA,KAAKtB,GAAvD;AAA6DwI,YAAKlH,KAAKzD,QAAV;AAA7D,OAAP;AACA;AACD,YAAO,iCAAC,QAAD,IAAU,OAAO,OAAKmU,eAAL,CAAqB1Q,IAArB,CAAjB,EAA6C,KAAKA,KAAKtB,GAAvD,EAA4D,QAAQsB,KAAK4L,MAAzE,EAAiF,UAAU5L,KAAKtB,GAAL,KAAa,OAAxG,GAAP;AACA,KALoB,CAAR;AAAA,IAAb;AAMA,OAAMkR,YAAY1I,KAAK,KAAK/O,KAAL,CAAW+W,QAAhB,CAAlB;AACA,UACC;AAAA;AAAA,MAAM,cAAc,KAAKrO,YAAzB,EAAuC,cAAc,KAAKD,YAA1D;AACEgP;AADF,IADD;AAMA,G;;;;;sBAKa9X,K;;;;;;;;;;;;;ACtHf;;;;AAGA;;;;;;;;;;;;gfAXA;;;;;;;AAaA,KAAM0B,WAAW,iBAAKA,QAAtB;;KACMzB,K;;;AACL,iBAAYG,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAElB,OAAMwB,OAAO,MAAKxB,KAAL,CAAWwB,IAAxB;AACA,SAAKvB,KAAL,GAAa;AACZ0B,yBAAqBH;AADT,IAAb;;AAHkB;AAOlB;;kBAEDlB,M,qBAAS;AACR,UACC;AAAA;AAAA,MAAM,WAAU,OAAhB,EAAwB,cAAxB,EAAiC,eAAjC,EAA4C,kBAAkB,IAA9D;AACM;AAAC,aAAD;AAAA,OAAU,OAAM,UAAhB,EAA2B,KAAI,KAA/B;AACE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B,GADF;AAEE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B;AAFF,MADF;AAKE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAO;AAAA;AAAA,UAAM,OAAO,EAAE6B,OAAO,MAAT,EAAb;AAAA;AAAA,QAAjB,EAA6D,KAAI,SAAjE;AADF;AALF;AADN,IADD;AAaA,G;;;;;sBAGatC,K","file":"demo.js","sourcesContent":[" \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\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\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.loaded = 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// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 5dd3f5717d27762f2b56","import {Col, Row} from 'bee-layout';\r\nimport {Panel} from 'bee-panel';\r\nimport Button from 'bee-button';\r\nimport React, {Component} from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\n\r\nconst CARET = ;\r\n\r\nconst CARETUP = ;\r\n\r\n\r\nvar Demo1 = require(\"./demolist/Demo1\");var Demo2 = require(\"./demolist/Demo2\");var Demo3 = require(\"./demolist/Demo3\");var Demo4 = require(\"./demolist/Demo4\");var Demo5 = require(\"./demolist/Demo5\");var Demo6 = require(\"./demolist/Demo6\");var Demo7 = require(\"./demolist/Demo7\");var Demo8 = require(\"./demolist/Demo8\");var Demo9 = require(\"./demolist/Demo9\");var DemoArray = [{\"example\": ,\"title\":\" Tree基本使用事例\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree基本使用事例\\r\\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst defaultProps = {\\r\\n\\tkeys: ['0-0-0', '0-0-1']\\r\\n}\\r\\nconsole.log(Tree);\\r\\nclass Demo1 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys,\\r\\n\\t\\t\\tdefaultSelectedKeys: keys,\\r\\n\\t\\t\\tdefaultCheckedKeys: keys,\\r\\n\\t\\t};\\r\\n\\t}\\r\\n\\tonSelect(info) {\\r\\n\\t\\tconsole.log('selected', info);\\r\\n\\t}\\r\\n\\tonCheck(info) {\\r\\n\\t\\tconsole.log('onCheck', info);\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\tlet checkedKeys = {\\r\\n\\t\\t\\tchecked:this.state.defaultCheckedKeys\\r\\n\\t\\t}\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\nDemo1.defaultProps = defaultProps;\\r\\n\\r\\n\\r\\n\",\"desc\":\" 事例涵盖 checkbox如何选择,disable状态和部分选择状态。\"},{\"example\": ,\"title\":\" Tree数据可控事例\",\"code\":\"/**\\r\\n*\\r\\n* @title Tree数据可控事例\\r\\n* @description\\r\\n*\\r\\n*/\\r\\n/*\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n*/\\r\\n\\r\\n\\r\\nimport React, { Component } from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\n\\r\\nclass Demo2 extends Component{\\r\\n constructor(props) {\\r\\n \\tsuper(props);\\r\\n this.state = {\\r\\n expandedKeys: ['0-0-0', '0-0-1'],\\r\\n autoExpandParent: true,\\r\\n checkedKeys: ['0-0-0'],\\r\\n selectedKeys: [],\\r\\n };\\r\\n this.onExpand = this.onExpand.bind(this);\\r\\n this.onCheck = this.onCheck.bind(this);\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n }\\r\\n onExpand(expandedKeys) {\\r\\n console.log('onExpand', arguments);\\r\\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\\r\\n // or, you can remove all expanded children keys.\\r\\n this.setState({\\r\\n expandedKeys,\\r\\n autoExpandParent: false,\\r\\n });\\r\\n }\\r\\n onCheck(checkedKeys) {\\r\\n this.setState({\\r\\n checkedKeys,\\r\\n selectedKeys: ['0-3', '0-4'],\\r\\n });\\r\\n }\\r\\n onSelect(selectedKeys, info) {\\r\\n console.log('onSelect', info);\\r\\n this.setState({ selectedKeys });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return (\\r\\n \\r\\n {loop(item.children)}\\r\\n \\r\\n );\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n {loop(gData)}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\\r\\n\",\"desc\":\"\"},{\"example\": ,\"title\":\" Tree 拖拽使用事例\",\"code\":\"/**\\r\\n*\\r\\n* @title Tree 拖拽使用事例\\r\\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\\r\\n*\\r\\n*/\\r\\n\\r\\n\\r\\n\\r\\nimport React, { Component } from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nclass Demo3 extends Component{\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n gData,\\r\\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\\r\\n };\\r\\n this.onDragEnter = this.onDragEnter.bind(this);\\r\\n this.onDrop = this.onDrop.bind(this);\\r\\n }\\r\\n onDragEnter(info) {\\r\\n console.log(info);\\r\\n // expandedKeys 需要受控时设置\\r\\n // this.setState({\\r\\n // expandedKeys: info.expandedKeys,\\r\\n // });\\r\\n }\\r\\n onDrop(info) {\\r\\n console.log(info);\\r\\n const dropKey = info.node.props.eventKey;\\r\\n const dragKey = info.dragNode.props.eventKey;\\r\\n // const dragNodesKeys = info.dragNodesKeys;\\r\\n const loop = (data, key, callback) => {\\r\\n data.forEach((item, index, arr) => {\\r\\n if (item.key === key) {\\r\\n return callback(item, index, arr);\\r\\n }\\r\\n if (item.children) {\\r\\n return loop(item.children, key, callback);\\r\\n }\\r\\n });\\r\\n };\\r\\n const data = [...this.state.gData];\\r\\n let dragObj;\\r\\n loop(data, dragKey, (item, index, arr) => {\\r\\n arr.splice(index, 1);\\r\\n dragObj = item;\\r\\n });\\r\\n if (info.dropToGap) {\\r\\n let ar;\\r\\n let i;\\r\\n loop(data, dropKey, (item, index, arr) => {\\r\\n ar = arr;\\r\\n i = index;\\r\\n });\\r\\n ar.splice(i, 0, dragObj);\\r\\n } else {\\r\\n loop(data, dropKey, (item) => {\\r\\n item.children = item.children || [];\\r\\n // where to insert 示例添加到尾部,可以是随意位置\\r\\n item.children.push(dragObj);\\r\\n });\\r\\n }\\r\\n this.setState({\\r\\n gData: data,\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children && item.children.length) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n {loop(this.state.gData)}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" 拖动结点插入到另一个结点后面或者其他的父节点里面。\"},{\"example\": ,\"title\":\" Tree可搜索事例\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree可搜索事例\\r\\n * @description\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\nimport FormControl from 'bee-form-control';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({\\r\\n title: key,\\r\\n key\\r\\n });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst dataList = [];\\r\\nconst generateList = (data) => {\\r\\n for (let i = 0; i < data.length; i++) {\\r\\n const node = data[i];\\r\\n const key = node.key;\\r\\n dataList.push({\\r\\n key,\\r\\n title: key\\r\\n });\\r\\n if (node.children) {\\r\\n generateList(node.children, node.key);\\r\\n }\\r\\n }\\r\\n};\\r\\ngenerateList(gData);\\r\\n\\r\\nconst getParentKey = (key, tree) => {\\r\\n let parentKey;\\r\\n for (let i = 0; i < tree.length; i++) {\\r\\n const node = tree[i];\\r\\n if (node.children) {\\r\\n if (node.children.some(item => item.key === key)) {\\r\\n parentKey = node.key;\\r\\n } else if (getParentKey(key, node.children)) {\\r\\n parentKey = getParentKey(key, node.children);\\r\\n }\\r\\n }\\r\\n }\\r\\n return parentKey;\\r\\n};\\r\\n\\r\\n\\r\\nclass Demo4 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n expandedKeys: [],\\r\\n searchValue: '',\\r\\n autoExpandParent: true,\\r\\n }\\r\\n }\\r\\n onExpand = (expandedKeys) => {\\r\\n this.setState({\\r\\n expandedKeys,\\r\\n autoExpandParent: false,\\r\\n });\\r\\n }\\r\\n onChange = (value) => {\\r\\n\\r\\n const expandedKeys = [];\\r\\n dataList.forEach((item) => {\\r\\n if (item.key.indexOf(value) > -1) {\\r\\n expandedKeys.push(getParentKey(item.key, gData));\\r\\n }\\r\\n });\\r\\n const uniqueExpandedKeys = [];\\r\\n expandedKeys.forEach((item) => {\\r\\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\\r\\n uniqueExpandedKeys.push(item);\\r\\n }\\r\\n });\\r\\n this.setState({\\r\\n expandedKeys: uniqueExpandedKeys,\\r\\n searchValue: value,\\r\\n autoExpandParent: true,\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const {\\r\\n searchValue,\\r\\n expandedKeys,\\r\\n autoExpandParent\\r\\n } = this.state;\\r\\n const loop = data => data.map((item) => {\\r\\n const index = item.key.search(searchValue);\\r\\n const beforeStr = item.key.substr(0, index);\\r\\n const afterStr = item.key.substr(index + searchValue.length);\\r\\n const title = index > -1 ? (\\r\\n \\r\\n {beforeStr}\\r\\n {searchValue} \\r\\n {afterStr}\\r\\n \\r\\n ) : {item.key} ;\\r\\n if (item.children) {\\r\\n return (\\r\\n \\r\\n {loop(item.children)}\\r\\n \\r\\n );\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n {loop(gData)}\\r\\n \\r\\n
\\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\n\",\"desc\":\"\"},{\"example\": ,\"title\":\" Tree异步数据加载\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree异步数据加载\\r\\n * @description 当点击展开,异步获取子节点数据\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({\\r\\n title: key,\\r\\n key\\r\\n });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nfunction generateTreeNodes(treeNode) {\\r\\n const arr = [];\\r\\n const key = treeNode.props.eventKey;\\r\\n for (let i = 0; i < 3; i++) {\\r\\n arr.push({\\r\\n name: `leaf ${key}-${i}`,\\r\\n key: `${key}-${i}`\\r\\n });\\r\\n }\\r\\n return arr;\\r\\n}\\r\\n\\r\\nfunction setLeaf(treeData, curKey, level) {\\r\\n const loopLeaf = (data, lev) => {\\r\\n const l = lev - 1;\\r\\n data.forEach((item) => {\\r\\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\\r\\n curKey.indexOf(item.key) !== 0) {\\r\\n return;\\r\\n }\\r\\n if (item.children) {\\r\\n loopLeaf(item.children, l);\\r\\n } else if (l < 1) {\\r\\n item.isLeaf = true;\\r\\n }\\r\\n });\\r\\n };\\r\\n loopLeaf(treeData, level + 1);\\r\\n}\\r\\n\\r\\nfunction getNewTreeData(treeData, curKey, child, level) {\\r\\n const loop = (data) => {\\r\\n if (level < 1 || curKey.length - 3 > level * 2) return;\\r\\n data.forEach((item) => {\\r\\n if (curKey.indexOf(item.key) === 0) {\\r\\n if (item.children) {\\r\\n loop(item.children);\\r\\n } else {\\r\\n item.children = child;\\r\\n }\\r\\n }\\r\\n });\\r\\n };\\r\\n loop(treeData);\\r\\n setLeaf(treeData, curKey, level);\\r\\n}\\r\\n\\r\\nclass Demo5 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n treeData: [],\\r\\n };\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n this.onLoadData = this.onLoadData.bind(this);\\r\\n }\\r\\n componentDidMount() {\\r\\n setTimeout(() => {\\r\\n this.setState({\\r\\n treeData: [{\\r\\n name: 'pNode 01',\\r\\n key: '0-0'\\r\\n }, {\\r\\n name: 'pNode 02',\\r\\n key: '0-1'\\r\\n }, {\\r\\n name: 'pNode 03',\\r\\n key: '0-2',\\r\\n isLeaf: true\\r\\n }, ],\\r\\n });\\r\\n }, 100);\\r\\n }\\r\\n onSelect(info) {\\r\\n console.log('selected', info);\\r\\n }\\r\\n onLoadData(treeNode) {\\r\\n return new Promise((resolve) => {\\r\\n setTimeout(() => {\\r\\n const treeData = [...this.state.treeData];\\r\\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\\r\\n this.setState({\\r\\n treeData\\r\\n });\\r\\n resolve();\\r\\n }, 1000);\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n const treeNodes = loop(this.state.treeData);\\r\\n return (\\r\\n \\r\\n {treeNodes}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" 当点击展开,异步获取子节点数据\"},{\"example\": ,\"title\":\" Tree基本使用事例自定义图标\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree基本使用事例自定义图标\\r\\n * @description 添加openIcon、closeIcon属性\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\nimport Icon from 'bee-icon';\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst defaultProps = {\\r\\n\\tkeys: ['0-0-0', '0-0-1']\\r\\n}\\r\\nconsole.log(Tree);\\r\\nclass Demo1 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys,\\r\\n\\t\\t\\tdefaultSelectedKeys: keys,\\r\\n\\t\\t\\tdefaultCheckedKeys: keys,\\r\\n\\t\\t};\\r\\n\\t}\\r\\n\\tonSelect(info) {\\r\\n\\t\\tconsole.log('selected', info);\\r\\n\\t}\\r\\n\\tonCheck(info) {\\r\\n\\t\\tconsole.log('onCheck', info);\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\treturn (\\r\\n\\r\\n\\t\\t\\t } closeIcon={ }\\r\\n\\t defaultExpandedKeys={this.state.defaultExpandedKeys}\\r\\n\\t defaultSelectedKeys={this.state.defaultSelectedKeys}\\r\\n\\t defaultCheckedKeys={this.state.defaultCheckedKeys}\\r\\n\\t onSelect={this.onSelect} onCheck={this.onCheck}\\r\\n\\t >\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\nDemo1.defaultProps = defaultProps;\\r\\n\\r\\n\\r\\n\",\"desc\":\" 添加openIcon、closeIcon属性\"},{\"example\": ,\"title\":\" Tree增加节点\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree增加节点\\r\\n * @description \\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\nimport Button from 'bee-button';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\n\\r\\nclass Demo7 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n treeData: [],\\r\\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\\r\\n parentNode: {}\\r\\n };\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n this.addNode = this.addNode.bind(this);\\r\\n this.clickFun = this.clickFun.bind(this);\\r\\n this.getNodeByKey = this.getNodeByKey.bind(this);\\r\\n this.parentNode = null\\r\\n }\\r\\n componentDidMount() {\\r\\n setTimeout(() => {\\r\\n this.setState({\\r\\n treeData: [{\\r\\n name: 'pNode 01',\\r\\n key: '0-0',\\r\\n children: [{\\r\\n name: 'leaf 0-0-0',\\r\\n key: '0-0-0'\\r\\n }, {\\r\\n name: 'leaf 0-0-1',\\r\\n key: '0-0-1'\\r\\n }]\\r\\n }, {\\r\\n name: 'pNode 02',\\r\\n key: '0-1',\\r\\n children: [{\\r\\n name: 'leaf 0-1-0',\\r\\n key: '0-1-0'\\r\\n }, {\\r\\n name: 'leaf 0-1-1',\\r\\n key: '0-1-1'\\r\\n }]\\r\\n }, {\\r\\n name: 'pNode 03',\\r\\n key: '0-2',\\r\\n isLeaf: true\\r\\n }, ],\\r\\n });\\r\\n }, 100);\\r\\n }\\r\\n /**\\r\\n * 增加节点\\r\\n * @param string prKey [父节点key]\\r\\n * @param object nodeItem [子节点信息]\\r\\n */\\r\\n addNode(prKey, nodeItem) {\\r\\n const data = this.state.treeData;\\r\\n let parNode;\\r\\n if (prKey) {\\r\\n // 如果prKey存在则搜索父节点进行添加\\r\\n parNode = this.getNodeByKey(data, prKey);\\r\\n //如果父节点存在的话,添加到父节点上\\r\\n if (parNode) {\\r\\n if (!parNode.children) {\\r\\n parNode.children = [];\\r\\n }\\r\\n // 如果key不存在就动态生成一个\\r\\n if (!nodeItem.key) {\\r\\n nodeItem.key = prKey + parNode.children.length + 1;\\r\\n }\\r\\n parNode.children.push(nodeItem);\\r\\n }\\r\\n } else {\\r\\n // 没有穿prKey添加到根下成为一级节点\\r\\n if (!nodeItem.key) {\\r\\n nodeItem.key = \\\"0-\\\" + data.length + 1;\\r\\n }\\r\\n data.push(nodeItem);\\r\\n }\\r\\n\\r\\n this.setState({\\r\\n data\\r\\n });\\r\\n }\\r\\n\\r\\n getNodeByKey(data, key) {\\r\\n if (!this.parentNode) {\\r\\n data.find(item => {\\r\\n if (item.key === key) {\\r\\n console.log('item.name---' + item.name)\\r\\n this.parentNode = item;\\r\\n return (true);\\r\\n } else if (item.children) {\\r\\n return this.getNodeByKey(item.children, key);\\r\\n\\r\\n }\\r\\n })\\r\\n }\\r\\n return this.parentNode;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n onSelect(info) {\\r\\n console.log('selected', info);\\r\\n }\\r\\n /**\\r\\n * 点击button事件\\r\\n */\\r\\n clickFun() {\\r\\n let prKey, nodeItem;\\r\\n prKey = '0-1';\\r\\n nodeItem = {\\r\\n name: 'leaf 0-0-4'\\r\\n }\\r\\n this.addNode(prKey, nodeItem);\\r\\n }\\r\\n\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n const treeNodes = loop(this.state.treeData);\\r\\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\\r\\n return (\\r\\n \\r\\n \\r\\n {treeNodes}\\r\\n \\r\\n \\r\\n 增加节点\\r\\n \\r\\n
\\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" \"},{\"example\": ,\"title\":\" Tree 节点可编辑\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree 节点可编辑\\r\\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\nimport Button from 'bee-button';\\r\\nimport Icon from 'bee-icon';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nlet timer = 0;\\r\\nlet delay = 200;\\r\\nlet prevent = false;\\r\\n\\r\\n\\r\\n\\r\\nclass Demo8 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\ttreeData: [],\\r\\n\\t\\t\\tisHover: \\\"\\\",\\r\\n\\t\\t\\teditKey: \\\"\\\"\\r\\n\\t\\t};\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\r\\n\\tonMouseEnter = (e) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\tisHover: e.node.props.eventKey\\r\\n\\t\\t})\\r\\n\\t}\\r\\n\\tonMouseLeave = (e, treenode) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\tisHover: \\\"\\\",\\r\\n\\t\\t\\teditKey: \\\"\\\"\\r\\n\\t\\t})\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\teditRender = (item) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\teditKey: item.key\\r\\n\\t\\t});\\r\\n\\t}\\r\\n\\tnodechange = (item, value) => {\\r\\n\\t\\titem.name = value;\\r\\n\\t}\\r\\n\\trenderTreeTitle = (item) => {\\r\\n\\t\\tlet titleIcon, titleInfo;\\r\\n\\t\\t//编辑时input框\\r\\n\\t\\tif (this.state.editKey == item.key) {\\r\\n\\t\\t\\ttitleInfo = this.nodechange(item, e.target.value)} />\\r\\n\\t\\t} else {\\r\\n\\t\\t\\ttitleInfo = {item.name} \\r\\n\\t\\t}\\r\\n\\t\\t//编辑图标\\r\\n\\t\\tif (this.state.isHover == item.key) {\\r\\n\\t\\t\\ttitleIcon = this.editRender(item)}> ;\\r\\n\\t\\t}\\r\\n\\t\\treturn (\\r\\n\\r\\n\\t\\t\\t{titleInfo}\\r\\n\\t\\t\\t{titleIcon}\\r\\n\\t\\t
);\\r\\n\\t}\\r\\n\\r\\n\\tcomponentDidMount = () => {\\r\\n\\t\\tsetTimeout(() => {\\r\\n\\t\\t\\tthis.setState({\\r\\n\\t\\t\\t\\ttreeData: [{\\r\\n\\t\\t\\t\\t\\tname: 'pNode 01',\\r\\n\\t\\t\\t\\t\\tkey: '0-0',\\r\\n\\t\\t\\t\\t\\tchildren: [{\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-0',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-0-0'\\r\\n\\t\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-1',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-0-1'\\r\\n\\t\\t\\t\\t\\t}]\\r\\n\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\tname: 'pNode 02',\\r\\n\\t\\t\\t\\t\\tkey: '0-1',\\r\\n\\t\\t\\t\\t\\tchildren: [{\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-0',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-1-0'\\r\\n\\t\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-1',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-1-1'\\r\\n\\t\\t\\t\\t\\t}]\\r\\n\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\tname: 'pNode 03',\\r\\n\\t\\t\\t\\t\\tkey: '0-2',\\r\\n\\t\\t\\t\\t\\tisLeaf: true\\r\\n\\t\\t\\t\\t}, ],\\r\\n\\t\\t\\t});\\r\\n\\t\\t\\r\\n\\t\\t}, 100);\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\tconst loop = data => data.map((item) => {\\r\\n\\t\\t\\tif (item.children) {\\r\\n\\t\\t\\t\\treturn {loop(item.children)} ;\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\treturn ;\\r\\n\\t\\t});\\r\\n\\t\\tconst treeNodes = loop(this.state.treeData);\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t\\t\\t\\t{treeNodes}\\r\\n\\t\\t\\t \\r\\n\\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n\",\"desc\":\" 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\"},{\"example\": ,\"title\":\" 连接线Tree\",\"code\":\"/**\\r\\n *\\r\\n * @title 连接线Tree\\r\\n * @description \\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport Tree from 'bee-tree';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\nclass Demo9 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys\\r\\n\\t\\t};\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\trender() {\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\n\",\"desc\":\" \"}]\n\r\n\r\nclass Demo extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n open: false\r\n }\r\n this.handleClick = this.handleClick.bind(this);\r\n }\r\n\r\n handleClick() {\r\n this.setState({open: !this.state.open})\r\n }\r\n\r\n render() {\r\n const {title, example, code, desc, scss_code} = this.props;\r\n let caret = this.state.open ? CARETUP : CARET;\r\n let text = this.state.open ? \"隐藏代码\" : \"查看代码\";\r\n\r\n const header = (\r\n \r\n {example}\r\n \r\n {caret}\r\n {text}\r\n \r\n
\r\n );\r\n return (\r\n \r\n {title} \r\n {desc}
\r\n \r\n {code}
\r\n {!!scss_code ? {scss_code}
: null}\r\n \r\n \r\n )\r\n }\r\n}\r\n\r\nclass DemoGroup extends Component {\r\n constructor(props) {\r\n super(props)\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n {DemoArray.map((child, index) => {\r\n\r\n return (\r\n \r\n )\r\n\r\n })}\r\n
\r\n )\r\n }\r\n}\r\n\r\nReactDOM.render( , document.getElementById('tinperBeeDemo'));\r\n\n\n\n// WEBPACK FOOTER //\n// ./demo/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Con = exports.Row = exports.Col = undefined;\n\nvar _Col2 = require('./Col');\n\nvar _Col3 = _interopRequireDefault(_Col2);\n\nvar _Row2 = require('./Row');\n\nvar _Row3 = _interopRequireDefault(_Row2);\n\nvar _Layout = require('./Layout');\n\nvar _Layout2 = _interopRequireDefault(_Layout);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Col = _Col3[\"default\"];\nexports.Row = _Row3[\"default\"];\nexports.Con = _Layout2[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/index.js\n// module id = 1\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string]),\n\n /**\n * xs显示列数\n */\n xs: _propTypes2[\"default\"].number,\n /**\n * sm显示列数\n */\n sm: _propTypes2[\"default\"].number,\n /**\n * md显示列数\n */\n md: _propTypes2[\"default\"].number,\n /**\n * lg显示列数\n */\n lg: _propTypes2[\"default\"].number,\n /**\n * xs偏移列数\n */\n xsOffset: _propTypes2[\"default\"].number,\n /**\n * sm偏移列数\n */\n smOffset: _propTypes2[\"default\"].number,\n /**\n * md偏移列数\n */\n mdOffset: _propTypes2[\"default\"].number,\n /**\n * lg偏移列数\n */\n lgOffset: _propTypes2[\"default\"].number,\n /**\n * xs右偏移列数\n */\n xsPush: _propTypes2[\"default\"].number,\n /**\n * sm右偏移列数\n */\n smPush: _propTypes2[\"default\"].number,\n /**\n * md右偏移列数\n */\n mdPush: _propTypes2[\"default\"].number,\n /**\n * lg右偏移列数\n */\n lgPush: _propTypes2[\"default\"].number,\n /**\n * xs左偏移列数\n */\n xsPull: _propTypes2[\"default\"].number,\n /**\n * sm左偏移列数\n */\n smPull: _propTypes2[\"default\"].number,\n /**\n * md左偏移列数\n */\n mdPull: _propTypes2[\"default\"].number,\n /**\n * lg左偏移列数\n */\n lgPull: _propTypes2[\"default\"].number\n};\n\nvar defaultProps = {\n componentClass: 'div',\n clsPrefix: 'u-col'\n};\n\nvar DEVICE_SIZES = ['lg', 'md', 'sm', 'xs'];\n\nvar Col = function (_Component) {\n _inherits(Col, _Component);\n\n function Col() {\n _classCallCheck(this, Col);\n\n return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n }\n\n Col.prototype.render = function render() {\n var _props = this.props,\n Component = _props.componentClass,\n className = _props.className,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['componentClass', 'className', 'clsPrefix']);\n\n var tbClass = [];\n /**\n * 对传入props做样式转化\n * @type {[type]}\n */\n DEVICE_SIZES.forEach(function (size) {\n function popProp(propSuffix, modifier) {\n var propName = '' + size + propSuffix;\n var propValue = others[propName];\n\n if (propValue != undefined && propValue != null) {\n tbClass.push(clsPrefix + '-' + size + modifier + '-' + propValue);\n }\n\n delete others[propName];\n }\n\n popProp('', '');\n popProp('Offset', '-offset');\n popProp('Push', '-push');\n popProp('Pull', '-pull');\n });\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({\n className: (0, _classnames2[\"default\"])(tbClass, className)\n }, others),\n this.props.children\n );\n };\n\n return Col;\n}(_react.Component);\n\nCol.defaultProps = defaultProps;\nCol.propTypes = propTypes;\n\nexports[\"default\"] = Col;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Col.js\n// module id = 2\n// module chunks = 0","/*!\n Copyright (c) 2016 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_classnames@2.2.5@classnames/index.js\n// module id = 3\n// module chunks = 0","module.exports = React;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"React\"\n// module id = 4\n// module chunks = 0","module.exports = PropTypes;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"PropTypes\"\n// module id = 5\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string])\n};\n\nvar defaultProps = {\n componentClass: 'div',\n clsPrefix: 'u-row'\n};\n\nvar Row = function (_Component) {\n _inherits(Row, _Component);\n\n function Row() {\n _classCallCheck(this, Row);\n\n return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n }\n\n Row.prototype.render = function render() {\n var _props = this.props,\n Component = _props.componentClass,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n others = _objectWithoutProperties(_props, ['componentClass', 'clsPrefix', 'className']);\n\n var bsclass = '' + clsPrefix;\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(bsclass, className)\n }),\n this.props.children\n );\n };\n\n return Row;\n}(_react.Component);\n\nRow.propTypes = propTypes;\nRow.defaultProps = defaultProps;\n\nexports[\"default\"] = Row;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Row.js\n// module id = 6\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * Adds `container-fluid` class.\n */\n fluid: _propTypes2[\"default\"].bool,\n /**\n * You can use a custom element for this component\n */\n componentClass: _propTypes2[\"default\"].oneOf([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string])\n};\n\nvar defaultProps = {\n componentClass: 'div',\n fluid: false,\n clsPrefix: 'u-container'\n};\n\nvar Con = function (_React$Component) {\n _inherits(Con, _React$Component);\n\n function Con() {\n _classCallCheck(this, Con);\n\n return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n Con.prototype.render = function render() {\n var _tbclass;\n\n var _props = this.props,\n fluid = _props.fluid,\n Component = _props.componentClass,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n others = _objectWithoutProperties(_props, ['fluid', 'componentClass', 'clsPrefix', 'className']);\n\n var tbclass = (_tbclass = {}, _defineProperty(_tbclass, '' + clsPrefix, !fluid), _defineProperty(_tbclass, clsPrefix + '-fluid', fluid), _tbclass);\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(tbclass, className)\n }),\n this.props.children\n );\n };\n\n return Con;\n}(_react2[\"default\"].Component);\n\nCon.propTypes = propTypes;\nCon.defaultProps = defaultProps;\n\nexports[\"default\"] = Con;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Layout.js\n// module id = 7\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PanelGroup = exports.Panel = undefined;\n\nvar _Panel2 = require('./Panel');\n\nvar _Panel3 = _interopRequireDefault(_Panel2);\n\nvar _PanelGroup2 = require('./PanelGroup');\n\nvar _PanelGroup3 = _interopRequireDefault(_PanelGroup2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Panel = _Panel3[\"default\"];\nexports.PanelGroup = _PanelGroup3[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/index.js\n// module id = 8\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _beeTransition = require('bee-transition');\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n //是否添加折叠\n collapsible: _propTypes2[\"default\"].bool,\n onSelect: _propTypes2[\"default\"].func,\n //头部组件\n header: _propTypes2[\"default\"].node,\n headerStyle: _propTypes2[\"default\"].object,\n id: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].string, _propTypes2[\"default\"].number]),\n headerContent: _propTypes2[\"default\"].bool,\n //footer组件\n footer: _propTypes2[\"default\"].node,\n footerStyle: _propTypes2[\"default\"].object,\n //默认是否打开\n defaultExpanded: _propTypes2[\"default\"].bool,\n //是否打开\n expanded: _propTypes2[\"default\"].bool,\n //每个panel的标记\n eventKey: _propTypes2[\"default\"].any,\n headerRole: _propTypes2[\"default\"].string,\n panelRole: _propTypes2[\"default\"].string,\n //颜色\n colors: _propTypes2[\"default\"].oneOf(['primary', 'accent', 'success', 'info', 'warning', 'danger', 'default', 'bordered']),\n\n // From Collapse.的扩展动画\n onEnter: _propTypes2[\"default\"].func,\n onEntering: _propTypes2[\"default\"].func,\n onEntered: _propTypes2[\"default\"].func,\n onExit: _propTypes2[\"default\"].func,\n onExiting: _propTypes2[\"default\"].func,\n onExited: _propTypes2[\"default\"].func\n};\n\nvar defaultProps = {\n defaultExpanded: false,\n clsPrefix: \"u-panel\",\n colors: \"default\"\n};\n\nvar Panel = function (_React$Component) {\n _inherits(Panel, _React$Component);\n\n function Panel(props, context) {\n _classCallCheck(this, Panel);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleClickTitle = _this.handleClickTitle.bind(_this);\n\n _this.state = {\n expanded: _this.props.defaultExpanded\n };\n return _this;\n }\n\n //头部点击事件\n\n\n Panel.prototype.handleClickTitle = function handleClickTitle(e) {\n // 不让事件进入事件池\n e.persist();\n e.selected = true;\n\n if (this.props.onSelect) {\n this.props.onSelect(this.props.eventKey, e);\n } else {\n e.preventDefault();\n }\n\n if (e.selected) {\n this.setState({ expanded: !this.state.expanded });\n }\n };\n\n //渲染panelheader\n\n\n Panel.prototype.renderHeader = function renderHeader(collapsible, header, id, role, expanded, clsPrefix) {\n var titleClassName = clsPrefix + '-title';\n\n if (!collapsible) {\n if (!_react2[\"default\"].isValidElement(header)) {\n return header;\n }\n\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName)\n });\n }\n\n if (!_react2[\"default\"].isValidElement(header)) {\n return _react2[\"default\"].createElement(\n 'h4',\n { role: 'presentation', className: titleClassName },\n this.renderAnchor(header, id, role, expanded)\n );\n }\n if (this.props.headerContent) {\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName)\n });\n }\n\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName),\n children: this.renderAnchor(header.props.children, id, role, expanded)\n });\n };\n\n //如果使用链接,渲染为a标签\n\n\n Panel.prototype.renderAnchor = function renderAnchor(header, id, role, expanded) {\n return _react2[\"default\"].createElement(\n 'a',\n {\n role: role,\n href: id && '#' + id,\n 'aria-controls': id,\n 'aria-expanded': expanded,\n 'aria-selected': expanded,\n className: expanded ? null : 'collapsed'\n },\n header\n );\n };\n\n //如果有折叠动画,渲染折叠动画\n\n\n Panel.prototype.renderCollapsibleBody = function renderCollapsibleBody(id, expanded, role, children, clsPrefix, animationHooks) {\n return _react2[\"default\"].createElement(\n _beeTransition.Collapse,\n _extends({ 'in': expanded }, animationHooks),\n _react2[\"default\"].createElement(\n 'div',\n {\n id: id,\n role: role,\n className: clsPrefix + '-collapse',\n 'aria-hidden': !expanded\n },\n this.renderBody(children, clsPrefix)\n )\n );\n };\n\n //渲染panelbody\n\n\n Panel.prototype.renderBody = function renderBody(rawChildren, clsPrefix) {\n var children = [];\n var bodyChildren = [];\n\n var bodyClassName = clsPrefix + '-body';\n\n //添加到body的children中\n function maybeAddBody() {\n if (!bodyChildren.length) {\n return;\n }\n\n // 给子组件添加key,为了之后触发事件时使用\n children.push(_react2[\"default\"].createElement(\n 'div',\n { key: children.length, className: bodyClassName },\n bodyChildren\n ));\n\n bodyChildren = [];\n }\n\n //转换为数组,方便复用\n _react2[\"default\"].Children.toArray(rawChildren).forEach(function (child) {\n if (_react2[\"default\"].isValidElement(child) && child.props.fill) {\n maybeAddBody();\n\n //将标示fill设置为undefined\n children.push((0, _react.cloneElement)(child, { fill: undefined }));\n\n return;\n }\n\n bodyChildren.push(child);\n });\n\n maybeAddBody();\n\n return children;\n };\n\n Panel.prototype.render = function render() {\n var _props = this.props,\n collapsible = _props.collapsible,\n header = _props.header,\n id = _props.id,\n footer = _props.footer,\n propsExpanded = _props.expanded,\n footerStyle = _props.footerStyle,\n headerStyle = _props.headerStyle,\n headerRole = _props.headerRole,\n panelRole = _props.panelRole,\n className = _props.className,\n colors = _props.colors,\n children = _props.children,\n onEnter = _props.onEnter,\n onEntering = _props.onEntering,\n onEntered = _props.onEntered,\n clsPrefix = _props.clsPrefix,\n onExit = _props.onExit,\n headerContent = _props.headerContent,\n onExiting = _props.onExiting,\n onExited = _props.onExited,\n defaultExpanded = _props.defaultExpanded,\n eventKey = _props.eventKey,\n onSelect = _props.onSelect,\n props = _objectWithoutProperties(_props, ['collapsible', 'header', 'id', 'footer', 'expanded', 'footerStyle', 'headerStyle', 'headerRole', 'panelRole', 'className', 'colors', 'children', 'onEnter', 'onEntering', 'onEntered', 'clsPrefix', 'onExit', 'headerContent', 'onExiting', 'onExited', 'defaultExpanded', 'eventKey', 'onSelect']);\n\n var expanded = propsExpanded != null ? propsExpanded : this.state.expanded;\n\n var classes = {};\n classes['' + clsPrefix] = true;\n classes[clsPrefix + '-' + colors] = true;\n\n var headerClass = _defineProperty({}, clsPrefix + '-heading', true);\n\n return _react2[\"default\"].createElement(\n 'div',\n _extends({}, props, {\n className: (0, _classnames2[\"default\"])(className, classes),\n id: collapsible ? null : id\n }),\n header && _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(headerClass), style: headerStyle, onClick: this.handleClickTitle },\n this.renderHeader(collapsible, header, id, headerRole, expanded, clsPrefix)\n ),\n collapsible ? this.renderCollapsibleBody(id, expanded, panelRole, children, clsPrefix, { onEnter: onEnter, onEntering: onEntering, onEntered: onEntered, onExit: onExit, onExiting: onExiting, onExited: onExited }) : this.renderBody(children, clsPrefix),\n footer && _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-footer', style: footerStyle },\n footer\n )\n );\n };\n\n return Panel;\n}(_react2[\"default\"].Component);\n\nPanel.propTypes = propTypes;\nPanel.defaultProps = defaultProps;\n\nexports[\"default\"] = Panel;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/Panel.js\n// module id = 9\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Fade = exports.Collapse = exports.Transition = undefined;\n\nvar _Transition2 = require('./Transition');\n\nvar _Transition3 = _interopRequireDefault(_Transition2);\n\nvar _Collapse2 = require('./Collapse');\n\nvar _Collapse3 = _interopRequireDefault(_Collapse2);\n\nvar _Fade2 = require('./Fade');\n\nvar _Fade3 = _interopRequireDefault(_Fade2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Transition = _Transition3[\"default\"];\nexports.Collapse = _Collapse3[\"default\"];\nexports.Fade = _Fade3[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/index.js\n// module id = 10\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _properties = require('dom-helpers/transition/properties');\n\nvar _properties2 = _interopRequireDefault(_properties);\n\nvar _on = require('dom-helpers/events/on');\n\nvar _on2 = _interopRequireDefault(_on);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar transitionEndEvent = _properties2[\"default\"].end;\n\n//设置状态码\nvar UNMOUNTED = exports.UNMOUNTED = 0;\nvar EXITED = exports.EXITED = 1;\nvar ENTERING = exports.ENTERING = 2;\nvar ENTERED = exports.ENTERED = 3;\nvar EXITING = exports.EXITING = 4;\n\nvar propTypes = {\n /**\n * 是否触发动画\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * 不显示的时候是否移除组件\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * 如果设置为默认显示,挂载时显示动画\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * 设置超时时间,防止出现问题,可设置为>=动画时间\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * 退出组件时添加的class\n */\n exitedClassName: _propTypes2[\"default\"].string,\n /**\n * 退出组件中添加的class\n */\n exitingClassName: _propTypes2[\"default\"].string,\n /**\n * 进入动画后添加的class\n */\n enteredClassName: _propTypes2[\"default\"].string,\n /**\n * 进入动画时添加的class\n */\n enteringClassName: _propTypes2[\"default\"].string,\n\n /**\n * 进入动画开始时的钩子函数\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * 进入动画中的钩子函数\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * 进入动画后的钩子函数\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * 退出动画开始时的钩子函数\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * 退出动画中的钩子函数\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * 退出动画后的钩子函数\n */\n onExited: _propTypes2[\"default\"].func\n};\n\nfunction noop() {}\n\nvar defaultProps = {\n \"in\": false,\n unmountOnExit: false,\n transitionAppear: false,\n timeout: 5000,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\n/**\n * 动画组件\n */\n\nvar Transition = function (_Component) {\n _inherits(Transition, _Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));\n\n var initialStatus = void 0;\n if (props[\"in\"]) {\n // 在componentdidmount时开始执行动画\n initialStatus = props.transitionAppear ? EXITED : ENTERED;\n } else {\n initialStatus = props.unmountOnExit ? UNMOUNTED : EXITED;\n }\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n if (this.props.transitionAppear && this.props[\"in\"]) {\n this.performEnter(this.props);\n }\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps[\"in\"] && this.props.unmountOnExit) {\n if (this.state.status === UNMOUNTED) {\n // 在componentDidUpdate执行动画.\n this.setState({ status: EXITED });\n }\n } else {\n this._needsUpdate = true;\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n var status = this.state.status;\n\n if (this.props.unmountOnExit && status === EXITED) {\n // 当使用unmountOnExit时,exited为exiting和unmont的过渡状态\n if (this.props[\"in\"]) {\n this.performEnter(this.props);\n } else {\n this.setState({ status: UNMOUNTED });\n }\n\n return;\n }\n\n // 确保只响应prop变化\n if (this._needsUpdate) {\n this._needsUpdate = false;\n\n if (this.props[\"in\"]) {\n if (status === EXITING) {\n this.performEnter(this.props);\n } else if (status === EXITED) {\n this.performEnter(this.props);\n }\n // 其他,当我们已经输入或输出\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.performExit(this.props);\n }\n // 我们已经输入或输出完成\n }\n }\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.performEnter = function performEnter(props) {\n var _this2 = this;\n\n this.cancelNextCallback();\n var node = _reactDom2[\"default\"].findDOMNode(this);\n\n // 这里接收新props\n props.onEnter(node);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node);\n\n _this2.onTransitionEnd(node, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(props) {\n var _this3 = this;\n\n this.cancelNextCallback();\n var node = _reactDom2[\"default\"].findDOMNode(this);\n\n props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n // 确保在组件销毁后挂起的setState被消除\n this.setState(nextState, this.setNextCallback(callback));\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (transitionEndEvent == undefined) {\n this.nextCallback();\n } else {\n (0, _on2[\"default\"])(node, transitionEndEvent, this.nextCallback);\n }\n setTimeout(this.nextCallback, this.props.timeout);\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n className = _props.className,\n childProps = _objectWithoutProperties(_props, ['children', 'className']);\n\n Object.keys(Transition.propTypes).forEach(function (key) {\n return delete childProps[key];\n });\n\n var transitionClassName = void 0;\n if (status === EXITED) {\n transitionClassName = this.props.exitedClassName;\n } else if (status === ENTERING) {\n transitionClassName = this.props.enteringClassName;\n } else if (status === ENTERED) {\n transitionClassName = this.props.enteredClassName;\n } else if (status === EXITING) {\n transitionClassName = this.props.exitingClassName;\n }\n\n var child = _react2[\"default\"].Children.only(children);\n return _react2[\"default\"].cloneElement(child, _extends({}, childProps, {\n className: (0, _classnames2[\"default\"])(child.props.className, className, transitionClassName)\n }));\n };\n\n return Transition;\n}(_react.Component);\n\nTransition.propTypes = propTypes;\n\nTransition.defaultProps = defaultProps;\n\nexports[\"default\"] = Transition;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Transition.js\n// module id = 11\n// module chunks = 0","module.exports = ReactDOM;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactDOM\"\n// module id = 12\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = undefined;\n\nvar _inDOM = require('../util/inDOM');\n\nvar _inDOM2 = _interopRequireDefault(_inDOM);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar transform = 'transform';\nvar prefix = void 0,\n transitionEnd = void 0,\n animationEnd = void 0;\nvar transitionProperty = void 0,\n transitionDuration = void 0,\n transitionTiming = void 0,\n transitionDelay = void 0;\nvar animationName = void 0,\n animationDuration = void 0,\n animationTiming = void 0,\n animationDelay = void 0;\n\nif (_inDOM2.default) {\n var _getTransitionPropert = getTransitionProperties();\n\n prefix = _getTransitionPropert.prefix;\n exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd;\n exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd;\n\n\n exports.transform = transform = prefix + '-' + transform;\n exports.transitionProperty = transitionProperty = prefix + '-transition-property';\n exports.transitionDuration = transitionDuration = prefix + '-transition-duration';\n exports.transitionDelay = transitionDelay = prefix + '-transition-delay';\n exports.transitionTiming = transitionTiming = prefix + '-transition-timing-function';\n\n exports.animationName = animationName = prefix + '-animation-name';\n exports.animationDuration = animationDuration = prefix + '-animation-duration';\n exports.animationTiming = animationTiming = prefix + '-animation-delay';\n exports.animationDelay = animationDelay = prefix + '-animation-timing-function';\n}\n\nexports.transform = transform;\nexports.transitionProperty = transitionProperty;\nexports.transitionTiming = transitionTiming;\nexports.transitionDelay = transitionDelay;\nexports.transitionDuration = transitionDuration;\nexports.transitionEnd = transitionEnd;\nexports.animationName = animationName;\nexports.animationDuration = animationDuration;\nexports.animationTiming = animationTiming;\nexports.animationDelay = animationDelay;\nexports.animationEnd = animationEnd;\nexports.default = {\n transform: transform,\n end: transitionEnd,\n property: transitionProperty,\n timing: transitionTiming,\n delay: transitionDelay,\n duration: transitionDuration\n};\n\n\nfunction getTransitionProperties() {\n var style = document.createElement('div').style;\n\n var vendorMap = {\n O: function O(e) {\n return 'o' + e.toLowerCase();\n },\n Moz: function Moz(e) {\n return e.toLowerCase();\n },\n Webkit: function Webkit(e) {\n return 'webkit' + e;\n },\n ms: function ms(e) {\n return 'MS' + e;\n }\n };\n\n var vendors = Object.keys(vendorMap);\n\n var transitionEnd = void 0,\n animationEnd = void 0;\n var prefix = '';\n\n for (var i = 0; i < vendors.length; i++) {\n var vendor = vendors[i];\n\n if (vendor + 'TransitionProperty' in style) {\n prefix = '-' + vendor.toLowerCase();\n transitionEnd = vendorMap[vendor]('TransitionEnd');\n animationEnd = vendorMap[vendor]('AnimationEnd');\n break;\n }\n }\n\n if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend';\n\n if (!animationEnd && 'animationName' in style) animationEnd = 'animationend';\n\n style = null;\n\n return { animationEnd: animationEnd, transitionEnd: transitionEnd, prefix: prefix };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/transition/properties.js\n// module id = 13\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/inDOM.js\n// module id = 14\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _inDOM = require('../util/inDOM');\n\nvar _inDOM2 = _interopRequireDefault(_inDOM);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar on = function on() {};\nif (_inDOM2.default) {\n on = function () {\n\n if (document.addEventListener) return function (node, eventName, handler, capture) {\n return node.addEventListener(eventName, handler, capture || false);\n };else if (document.attachEvent) return function (node, eventName, handler) {\n return node.attachEvent('on' + eventName, function (e) {\n e = e || window.event;\n e.target = e.target || e.srcElement;\n e.currentTarget = node;\n handler.call(node, e);\n });\n };\n }();\n}\n\nexports.default = on;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/events/on.js\n// module id = 15\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _style = require('dom-helpers/style');\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _Transition = require('./Transition');\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nvar _capitalize = require('./util/capitalize');\n\nvar _capitalize2 = _interopRequireDefault(_capitalize);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar MARGINS = {\n height: ['marginTop', 'marginBottom'],\n width: ['marginLeft', 'marginRight']\n};\n\n// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nfunction triggerBrowserReflow(node) {\n node.offsetHeight; // eslint-disable-line no-unused-expressions\n}\n\nfunction getDimensionValue(dimension, elem) {\n var value = elem['offset' + (0, _capitalize2[\"default\"])(dimension)];\n var margins = MARGINS[dimension];\n\n return value + parseInt((0, _style2[\"default\"])(elem, margins[0]), 10) + parseInt((0, _style2[\"default\"])(elem, margins[1]), 10);\n}\n\nvar propTypes = {\n /**\n * Show the component; triggers the expand or collapse animation\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * Unmount the component (remove it from the DOM) when it is collapsed\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * Run the expand animation when the component mounts, if it is initially\n * shown\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * Duration of the collapse animation in milliseconds, to ensure that\n * finishing callbacks are fired even if the original browser transition end\n * events are canceled\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * Callback fired before the component expands\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to expand\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has expanded\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * Callback fired before the component collapses\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to collapse\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has collapsed\n */\n onExited: _propTypes2[\"default\"].func,\n\n /**\n * The dimension used when collapsing, or a function that returns the\n * dimension\n *\n * _Note: Bootstrap only partially supports 'width'!\n * You will need to supply your own CSS animation for the `.width` CSS class._\n */\n dimension: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].oneOf(['height', 'width']), _propTypes2[\"default\"].func]),\n\n /**\n * Function that returns the height or width of the animating DOM node\n *\n * Allows for providing some custom logic for how much the Collapse component\n * should animate in its specified dimension. Called with the current\n * dimension prop value and the DOM node.\n */\n getDimensionValue: _propTypes2[\"default\"].func,\n\n /**\n * ARIA role of collapsible element\n */\n role: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n \"in\": false,\n timeout: 300,\n unmountOnExit: false,\n transitionAppear: false,\n\n dimension: 'height',\n getDimensionValue: getDimensionValue\n};\n\nvar Collapse = function (_React$Component) {\n _inherits(Collapse, _React$Component);\n\n function Collapse(props, context) {\n _classCallCheck(this, Collapse);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleEnter = _this.handleEnter.bind(_this);\n _this.handleEntering = _this.handleEntering.bind(_this);\n _this.handleEntered = _this.handleEntered.bind(_this);\n _this.handleExit = _this.handleExit.bind(_this);\n _this.handleExiting = _this.handleExiting.bind(_this);\n return _this;\n }\n\n /* -- Expanding -- */\n\n\n Collapse.prototype.handleEnter = function handleEnter(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = '0';\n };\n\n Collapse.prototype.handleEntering = function handleEntering(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = this._getScrollDimensionValue(elem, dimension);\n };\n\n Collapse.prototype.handleEntered = function handleEntered(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = null;\n };\n\n /* -- Collapsing -- */\n\n\n Collapse.prototype.handleExit = function handleExit(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = this.props.getDimensionValue(dimension, elem) + 'px';\n triggerBrowserReflow(elem);\n };\n\n Collapse.prototype.handleExiting = function handleExiting(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = '0';\n };\n\n Collapse.prototype._dimension = function _dimension() {\n return typeof this.props.dimension === 'function' ? this.props.dimension() : this.props.dimension;\n };\n\n // for testing\n\n\n Collapse.prototype._getScrollDimensionValue = function _getScrollDimensionValue(elem, dimension) {\n return elem['scroll' + (0, _capitalize2[\"default\"])(dimension)] + 'px';\n };\n\n Collapse.prototype.render = function render() {\n var _props = this.props,\n onEnter = _props.onEnter,\n onEntering = _props.onEntering,\n onEntered = _props.onEntered,\n onExit = _props.onExit,\n onExiting = _props.onExiting,\n className = _props.className,\n props = _objectWithoutProperties(_props, ['onEnter', 'onEntering', 'onEntered', 'onExit', 'onExiting', 'className']);\n\n delete props.dimension;\n delete props.getDimensionValue;\n\n var handleEnter = (0, _tinperBeeCore.createChainedFunction)(this.handleEnter, onEnter);\n var handleEntering = (0, _tinperBeeCore.createChainedFunction)(this.handleEntering, onEntering);\n var handleEntered = (0, _tinperBeeCore.createChainedFunction)(this.handleEntered, onEntered);\n var handleExit = (0, _tinperBeeCore.createChainedFunction)(this.handleExit, onExit);\n var handleExiting = (0, _tinperBeeCore.createChainedFunction)(this.handleExiting, onExiting);\n\n var classes = {\n width: this._dimension() === 'width'\n };\n\n return _react2[\"default\"].createElement(_Transition2[\"default\"], _extends({}, props, {\n 'aria-expanded': props.role ? props[\"in\"] : null,\n className: (0, _classnames2[\"default\"])(className, classes),\n exitedClassName: 'collapse',\n exitingClassName: 'collapsing',\n enteredClassName: 'collapse in',\n enteringClassName: 'collapsing',\n onEnter: handleEnter,\n onEntering: handleEntering,\n onEntered: handleEntered,\n onExit: handleExit,\n onExiting: handleExiting\n }));\n };\n\n return Collapse;\n}(_react2[\"default\"].Component);\n\nCollapse.propTypes = propTypes;\nCollapse.defaultProps = defaultProps;\n\nexports[\"default\"] = Collapse;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Collapse.js\n// module id = 16\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = style;\n\nvar _camelizeStyle = require('../util/camelizeStyle');\n\nvar _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);\n\nvar _hyphenateStyle = require('../util/hyphenateStyle');\n\nvar _hyphenateStyle2 = _interopRequireDefault(_hyphenateStyle);\n\nvar _getComputedStyle2 = require('./getComputedStyle');\n\nvar _getComputedStyle3 = _interopRequireDefault(_getComputedStyle2);\n\nvar _removeStyle = require('./removeStyle');\n\nvar _removeStyle2 = _interopRequireDefault(_removeStyle);\n\nvar _properties = require('../transition/properties');\n\nvar _isTransform = require('../transition/isTransform');\n\nvar _isTransform2 = _interopRequireDefault(_isTransform);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction style(node, property, value) {\n var css = '';\n var transforms = '';\n var props = property;\n\n if (typeof property === 'string') {\n if (value === undefined) {\n return node.style[(0, _camelizeStyle2.default)(property)] || (0, _getComputedStyle3.default)(node).getPropertyValue((0, _hyphenateStyle2.default)(property));\n } else {\n (props = {})[property] = value;\n }\n }\n\n Object.keys(props).forEach(function (key) {\n var value = props[key];\n if (!value && value !== 0) {\n (0, _removeStyle2.default)(node, (0, _hyphenateStyle2.default)(key));\n } else if ((0, _isTransform2.default)(key)) {\n transforms += key + '(' + value + ') ';\n } else {\n css += (0, _hyphenateStyle2.default)(key) + ': ' + value + ';';\n }\n });\n\n if (transforms) {\n css += _properties.transform + ': ' + transforms + ';';\n }\n\n node.style.cssText += ';' + css;\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/index.js\n// module id = 17\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = camelizeStyleName;\n\nvar _camelize = require('./camelize');\n\nvar _camelize2 = _interopRequireDefault(_camelize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar msPattern = /^-ms-/; /**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js\n */\nfunction camelizeStyleName(string) {\n return (0, _camelize2.default)(string.replace(msPattern, 'ms-'));\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/camelizeStyle.js\n// module id = 18\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = camelize;\nvar rHyphen = /-(.)/g;\n\nfunction camelize(string) {\n return string.replace(rHyphen, function (_, chr) {\n return chr.toUpperCase();\n });\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/camelize.js\n// module id = 19\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = hyphenateStyleName;\n\nvar _hyphenate = require('./hyphenate');\n\nvar _hyphenate2 = _interopRequireDefault(_hyphenate);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar msPattern = /^ms-/; /**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\n\nfunction hyphenateStyleName(string) {\n return (0, _hyphenate2.default)(string).replace(msPattern, '-ms-');\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenateStyle.js\n// module id = 20\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = hyphenate;\n\nvar rUpper = /([A-Z])/g;\n\nfunction hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenate.js\n// module id = 21\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = _getComputedStyle;\n\nvar _camelizeStyle = require('../util/camelizeStyle');\n\nvar _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rposition = /^(top|right|bottom|left)$/;\nvar rnumnonpx = /^([+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|))(?!px)[a-z%]+$/i;\n\nfunction _getComputedStyle(node) {\n if (!node) throw new TypeError('No Element passed to `getComputedStyle()`');\n var doc = node.ownerDocument;\n\n return 'defaultView' in doc ? doc.defaultView.opener ? node.ownerDocument.defaultView.getComputedStyle(node, null) : window.getComputedStyle(node, null) : {\n //ie 8 \"magic\" from: https://github.com/jquery/jquery/blob/1.11-stable/src/css/curCSS.js#L72\n getPropertyValue: function getPropertyValue(prop) {\n var style = node.style;\n\n prop = (0, _camelizeStyle2.default)(prop);\n\n if (prop == 'float') prop = 'styleFloat';\n\n var current = node.currentStyle[prop] || null;\n\n if (current == null && style && style[prop]) current = style[prop];\n\n if (rnumnonpx.test(current) && !rposition.test(prop)) {\n // Remember the original values\n var left = style.left;\n var runStyle = node.runtimeStyle;\n var rsLeft = runStyle && runStyle.left;\n\n // Put in the new values to get a computed value out\n if (rsLeft) runStyle.left = node.currentStyle.left;\n\n style.left = prop === 'fontSize' ? '1em' : current;\n current = style.pixelLeft + 'px';\n\n // Revert the changed values\n style.left = left;\n if (rsLeft) runStyle.left = rsLeft;\n }\n\n return current;\n }\n };\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/getComputedStyle.js\n// module id = 22\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = removeStyle;\nfunction removeStyle(node, key) {\n return 'removeProperty' in node.style ? node.style.removeProperty(key) : node.style.removeAttribute(key);\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/removeStyle.js\n// module id = 23\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = isTransform;\nvar supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\n\nfunction isTransform(property) {\n return !!(property && supportedTransforms.test(property));\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/transition/isTransform.js\n// module id = 24\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = capitalize;\nfunction capitalize(string) {\n return \"\" + string.charAt(0).toUpperCase() + string.slice(1);\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/util/capitalize.js\n// module id = 25\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.Align = exports.toArray = exports.cssAnimation = exports.addEventListener = exports.contains = exports.KeyCode = exports.createChainedFunction = exports.splitComponent = exports.isRequiredForA11y = exports.elementType = exports.deprecated = exports.componentOrElement = exports.all = undefined;\n\nvar _all2 = require('./all');\n\nvar _all3 = _interopRequireDefault(_all2);\n\nvar _componentOrElement2 = require('./componentOrElement');\n\nvar _componentOrElement3 = _interopRequireDefault(_componentOrElement2);\n\nvar _deprecated2 = require('./deprecated');\n\nvar _deprecated3 = _interopRequireDefault(_deprecated2);\n\nvar _elementType2 = require('./elementType');\n\nvar _elementType3 = _interopRequireDefault(_elementType2);\n\nvar _isRequiredForA11y2 = require('./isRequiredForA11y');\n\nvar _isRequiredForA11y3 = _interopRequireDefault(_isRequiredForA11y2);\n\nvar _splitComponent2 = require('./splitComponent');\n\nvar _splitComponent3 = _interopRequireDefault(_splitComponent2);\n\nvar _createChainedFunction2 = require('./createChainedFunction');\n\nvar _createChainedFunction3 = _interopRequireDefault(_createChainedFunction2);\n\nvar _keyCode = require('./keyCode');\n\nvar _keyCode2 = _interopRequireDefault(_keyCode);\n\nvar _contains2 = require('./contains');\n\nvar _contains3 = _interopRequireDefault(_contains2);\n\nvar _addEventListener2 = require('./addEventListener');\n\nvar _addEventListener3 = _interopRequireDefault(_addEventListener2);\n\nvar _cssAnimation2 = require('./cssAnimation');\n\nvar _cssAnimation3 = _interopRequireDefault(_cssAnimation2);\n\nvar _toArray2 = require('./toArray');\n\nvar _toArray3 = _interopRequireDefault(_toArray2);\n\nvar _Align2 = require('./Align');\n\nvar _Align3 = _interopRequireDefault(_Align2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.all = _all3.default;\nexports.componentOrElement = _componentOrElement3.default;\nexports.deprecated = _deprecated3.default;\nexports.elementType = _elementType3.default;\nexports.isRequiredForA11y = _isRequiredForA11y3.default;\nexports.splitComponent = _splitComponent3.default;\nexports.createChainedFunction = _createChainedFunction3.default;\nexports.KeyCode = _keyCode2.default;\nexports.contains = _contains3.default;\nexports.addEventListener = _addEventListener3.default;\nexports.cssAnimation = _cssAnimation3.default;\nexports.toArray = _toArray3.default;\n//export getContainerRenderMixin from './getContainerRenderMixin';\n\nexports.Align = _Align3.default;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/index.js\n// module id = 26\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = all;\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction all() {\n for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) {\n validators[_key] = arguments[_key];\n }\n\n function allPropTypes() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var error = null;\n\n validators.forEach(function (validator) {\n if (error != null) {\n return;\n }\n\n var result = validator.apply(undefined, args);\n if (result != null) {\n error = result;\n }\n });\n\n return error;\n }\n\n return (0, _createChainableTypeChecker2.default)(allPropTypes);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/all.js\n// module id = 27\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = createChainableTypeChecker;\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n// Mostly taken from ReactPropTypes.\n\nfunction createChainableTypeChecker(validate) {\n function checkType(isRequired, props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] == null) {\n if (isRequired) {\n return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.'));\n }\n\n return null;\n }\n\n for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) {\n args[_key - 6] = arguments[_key];\n }\n\n return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args));\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/utils/createChainableTypeChecker.js\n// module id = 28\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\n\n if (_react2.default.isValidElement(propValue)) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement. You can usually obtain a ReactComponent or DOMElement ' + 'from a ReactElement by attaching a ref to it.');\n }\n\n if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.');\n }\n\n return null;\n}\n\nexports.default = (0, _createChainableTypeChecker2.default)(validate);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/componentOrElement.js\n// module id = 29\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = deprecated;\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar warned = {};\n\nfunction deprecated(validator, reason) {\n return function validate(props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] != null) {\n var messageKey = componentName + '.' + propName;\n\n (0, _warning2.default)(warned[messageKey], 'The ' + location + ' `' + propFullNameSafe + '` of ' + ('`' + componentNameSafe + '` is deprecated. ' + reason + '.'));\n\n warned[messageKey] = true;\n }\n\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\n args[_key - 5] = arguments[_key];\n }\n\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\n };\n}\n\n/* eslint-disable no-underscore-dangle */\nfunction _resetWarned() {\n warned = {};\n}\n\ndeprecated._resetWarned = _resetWarned;\n/* eslint-enable no-underscore-dangle */\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/deprecated.js\n// module id = 30\n// module chunks = 0","/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n\n if (format.length < 10 || (/^[s\\W]*$/).test(format)) {\n throw new Error(\n 'The warning format should be able to uniquely identify this ' +\n 'warning. Please, use a more descriptive format than: ' + format\n );\n }\n\n if (!condition) {\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch(x) {}\n }\n };\n}\n\nmodule.exports = warning;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_warning@3.0.0@warning/browser.js\n// module id = 31\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Program Files/nodejs/~/bee-tools/~/_process@0.11.10@process/browser.js\n// module id = 32\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction elementType(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\n\n if (_react2.default.isValidElement(propValue)) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\n }\n\n if (propType !== 'function' && propType !== 'string') {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\n }\n\n return null;\n}\n\nexports.default = (0, _createChainableTypeChecker2.default)(elementType);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/elementType.js\n// module id = 33\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = isRequiredForA11y;\nfunction isRequiredForA11y(validator) {\n return function validate(props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] == null) {\n return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.');\n }\n\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\n args[_key - 5] = arguments[_key];\n }\n\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\n };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/isRequiredForA11y.js\n// module id = 34\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _entries = require(\"babel-runtime/core-js/object/entries\");\n\nvar _entries2 = _interopRequireDefault(_entries);\n\nexports.default = splitComponentProps;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * 分割要传入父元素和子元素的props\n * @param {[object]} props 传入的属性\n * @param {[reactElement]} Component 组件\n * @return {[array]} 返回数组,第一个元素为父元素props对象,第二个子元素props对象\n */\nfunction splitComponentProps(props, Component) {\n var componentPropTypes = Component.propTypes;\n\n var parentProps = {};\n var childProps = {};\n\n (0, _entries2.default)(props).forEach(function (_ref) {\n var propName = _ref[0],\n propValue = _ref[1];\n\n if (componentPropTypes[propName]) {\n parentProps[propName] = propValue;\n } else {\n childProps[propName] = propValue;\n }\n });\n\n return [parentProps, childProps];\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/splitComponent.js\n// module id = 35\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/entries\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/entries.js\n// module id = 36\n// module chunks = 0","require('../../modules/es7.object.entries');\nmodule.exports = require('../../modules/_core').Object.entries;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/fn/object/entries.js\n// module id = 37\n// module chunks = 0","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $entries = require('./_object-to-array')(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it) {\n return $entries(it);\n }\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/es7.object.entries.js\n// module id = 38\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar ctx = require('./_ctx');\nvar hide = require('./_hide');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && key in exports) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_export.js\n// module id = 39\n// module chunks = 0","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_global.js\n// module id = 40\n// module chunks = 0","var core = module.exports = { version: '2.5.1' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_core.js\n// module id = 41\n// module chunks = 0","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_ctx.js\n// module id = 42\n// module chunks = 0","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_a-function.js\n// module id = 43\n// module chunks = 0","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_hide.js\n// module id = 44\n// module chunks = 0","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-dp.js\n// module id = 45\n// module chunks = 0","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_an-object.js\n// module id = 46\n// module chunks = 0","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_is-object.js\n// module id = 47\n// module chunks = 0","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_ie8-dom-define.js\n// module id = 48\n// module chunks = 0","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_descriptors.js\n// module id = 49\n// module chunks = 0","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_fails.js\n// module id = 50\n// module chunks = 0","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_dom-create.js\n// module id = 51\n// module chunks = 0","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-primitive.js\n// module id = 52\n// module chunks = 0","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_property-desc.js\n// module id = 53\n// module chunks = 0","var getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) if (isEnum.call(O, key = keys[i++])) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-to-array.js\n// module id = 54\n// module chunks = 0","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-keys.js\n// module id = 55\n// module chunks = 0","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-keys-internal.js\n// module id = 56\n// module chunks = 0","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_has.js\n// module id = 57\n// module chunks = 0","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-iobject.js\n// module id = 58\n// module chunks = 0","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_iobject.js\n// module id = 59\n// module chunks = 0","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_cof.js\n// module id = 60\n// module chunks = 0","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_defined.js\n// module id = 61\n// module chunks = 0","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_array-includes.js\n// module id = 62\n// module chunks = 0","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-length.js\n// module id = 63\n// module chunks = 0","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-integer.js\n// module id = 64\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-absolute-index.js\n// module id = 65\n// module chunks = 0","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_shared-key.js\n// module id = 66\n// module chunks = 0","var global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function (key) {\n return store[key] || (store[key] = {});\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_shared.js\n// module id = 67\n// module chunks = 0","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_uid.js\n// module id = 68\n// module chunks = 0","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_enum-bug-keys.js\n// module id = 69\n// module chunks = 0","exports.f = {}.propertyIsEnumerable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-pie.js\n// module id = 70\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nfunction createChainedFunction() {\n for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n return funcs.filter(function (f) {\n return f != null;\n }).reduce(function (acc, f) {\n if (typeof f !== 'function') {\n throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.');\n }\n\n if (acc === null) {\n return f;\n }\n\n return function chainedFunction() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n acc.apply(this, args);\n f.apply(this, args);\n };\n }, null);\n}\nexports.default = createChainedFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/createChainedFunction.js\n// module id = 71\n// module chunks = 0","'use strict';\n\n/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33, // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34, // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35, // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36, // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37, // also NUM_WEST\n /**\n * UP\n */\n UP: 38, // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39, // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40, // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45, // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46, // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63, // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91, // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186, // needs localization\n /**\n * DASH\n */\n DASH: 189, // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187, // needs localization\n /**\n * COMMA\n */\n COMMA: 188, // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190, // needs localization\n /**\n * SLASH\n */\n SLASH: 191, // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192, // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222, // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219, // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220, // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221, // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229\n};\n\n/*\n whether text and modified key is entered at the same time.\n */\nKeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n};\n\n/*\n whether character is entered.\n */\nKeyCode.isCharacterKey = function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n};\n\nmodule.exports = KeyCode;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/keyCode.js\n// module id = 72\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = contains;\nfunction contains(root, n) {\n var node = n;\n while (node) {\n if (node === root) {\n return true;\n }\n node = node.parentNode;\n }\n\n return false;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/contains.js\n// module id = 73\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = addEventListenerWrap;\n\nvar _addDomEventListener = require('add-dom-event-listener');\n\nvar _addDomEventListener2 = _interopRequireDefault(_addDomEventListener);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction addEventListenerWrap(target, eventType, cb) {\n /* eslint camelcase: 2 */\n var callback = _reactDom2.default.unstable_batchedUpdates ? function run(e) {\n _reactDom2.default.unstable_batchedUpdates(cb, e);\n } : cb;\n return (0, _addDomEventListener2.default)(target, eventType, callback);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/addEventListener.js\n// module id = 74\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = addEventListener;\n\nvar _EventObject = require('./EventObject');\n\nvar _EventObject2 = _interopRequireDefault(_EventObject);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction addEventListener(target, eventType, callback) {\n function wrapCallback(e) {\n var ne = new _EventObject2[\"default\"](e);\n callback.call(target, ne);\n }\n\n if (target.addEventListener) {\n target.addEventListener(eventType, wrapCallback, false);\n return {\n remove: function remove() {\n target.removeEventListener(eventType, wrapCallback, false);\n }\n };\n } else if (target.attachEvent) {\n target.attachEvent('on' + eventType, wrapCallback);\n return {\n remove: function remove() {\n target.detachEvent('on' + eventType, wrapCallback);\n }\n };\n }\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/index.js\n// module id = 75\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _EventBaseObject = require('./EventBaseObject');\n\nvar _EventBaseObject2 = _interopRequireDefault(_EventBaseObject);\n\nvar _objectAssign = require('object-assign');\n\nvar _objectAssign2 = _interopRequireDefault(_objectAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @ignore\n * event object for dom\n * @author yiminghe@gmail.com\n */\n\nvar TRUE = true;\nvar FALSE = false;\nvar commonProps = ['altKey', 'bubbles', 'cancelable', 'ctrlKey', 'currentTarget', 'eventPhase', 'metaKey', 'shiftKey', 'target', 'timeStamp', 'view', 'type'];\n\nfunction isNullOrUndefined(w) {\n return w === null || w === undefined;\n}\n\nvar eventNormalizers = [{\n reg: /^key/,\n props: ['char', 'charCode', 'key', 'keyCode', 'which'],\n fix: function fix(event, nativeEvent) {\n if (isNullOrUndefined(event.which)) {\n event.which = !isNullOrUndefined(nativeEvent.charCode) ? nativeEvent.charCode : nativeEvent.keyCode;\n }\n\n // add metaKey to non-Mac browsers (use ctrl for PC 's and Meta for Macs)\n if (event.metaKey === undefined) {\n event.metaKey = event.ctrlKey;\n }\n }\n}, {\n reg: /^touch/,\n props: ['touches', 'changedTouches', 'targetTouches']\n}, {\n reg: /^hashchange$/,\n props: ['newURL', 'oldURL']\n}, {\n reg: /^gesturechange$/i,\n props: ['rotation', 'scale']\n}, {\n reg: /^(mousewheel|DOMMouseScroll)$/,\n props: [],\n fix: function fix(event, nativeEvent) {\n var deltaX = void 0;\n var deltaY = void 0;\n var delta = void 0;\n var wheelDelta = nativeEvent.wheelDelta;\n var axis = nativeEvent.axis;\n var wheelDeltaY = nativeEvent.wheelDeltaY;\n var wheelDeltaX = nativeEvent.wheelDeltaX;\n var detail = nativeEvent.detail;\n\n // ie/webkit\n if (wheelDelta) {\n delta = wheelDelta / 120;\n }\n\n // gecko\n if (detail) {\n // press control e.detail == 1 else e.detail == 3\n delta = 0 - (detail % 3 === 0 ? detail / 3 : detail);\n }\n\n // Gecko\n if (axis !== undefined) {\n if (axis === event.HORIZONTAL_AXIS) {\n deltaY = 0;\n deltaX = 0 - delta;\n } else if (axis === event.VERTICAL_AXIS) {\n deltaX = 0;\n deltaY = delta;\n }\n }\n\n // Webkit\n if (wheelDeltaY !== undefined) {\n deltaY = wheelDeltaY / 120;\n }\n if (wheelDeltaX !== undefined) {\n deltaX = -1 * wheelDeltaX / 120;\n }\n\n // 默认 deltaY (ie)\n if (!deltaX && !deltaY) {\n deltaY = delta;\n }\n\n if (deltaX !== undefined) {\n /**\n * deltaX of mousewheel event\n * @property deltaX\n * @member Event.DomEvent.Object\n */\n event.deltaX = deltaX;\n }\n\n if (deltaY !== undefined) {\n /**\n * deltaY of mousewheel event\n * @property deltaY\n * @member Event.DomEvent.Object\n */\n event.deltaY = deltaY;\n }\n\n if (delta !== undefined) {\n /**\n * delta of mousewheel event\n * @property delta\n * @member Event.DomEvent.Object\n */\n event.delta = delta;\n }\n }\n}, {\n reg: /^mouse|contextmenu|click|mspointer|(^DOMMouseScroll$)/i,\n props: ['buttons', 'clientX', 'clientY', 'button', 'offsetX', 'relatedTarget', 'which', 'fromElement', 'toElement', 'offsetY', 'pageX', 'pageY', 'screenX', 'screenY'],\n fix: function fix(event, nativeEvent) {\n var eventDoc = void 0;\n var doc = void 0;\n var body = void 0;\n var target = event.target;\n var button = nativeEvent.button;\n\n // Calculate pageX/Y if missing and clientX/Y available\n if (target && isNullOrUndefined(event.pageX) && !isNullOrUndefined(nativeEvent.clientX)) {\n eventDoc = target.ownerDocument || document;\n doc = eventDoc.documentElement;\n body = eventDoc.body;\n event.pageX = nativeEvent.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);\n event.pageY = nativeEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);\n }\n\n // which for click: 1 === left; 2 === middle; 3 === right\n // do not use button\n if (!event.which && button !== undefined) {\n if (button & 1) {\n event.which = 1;\n } else if (button & 2) {\n event.which = 3;\n } else if (button & 4) {\n event.which = 2;\n } else {\n event.which = 0;\n }\n }\n\n // add relatedTarget, if necessary\n if (!event.relatedTarget && event.fromElement) {\n event.relatedTarget = event.fromElement === target ? event.toElement : event.fromElement;\n }\n\n return event;\n }\n}];\n\nfunction retTrue() {\n return TRUE;\n}\n\nfunction retFalse() {\n return FALSE;\n}\n\nfunction DomEventObject(nativeEvent) {\n var type = nativeEvent.type;\n\n var isNative = typeof nativeEvent.stopPropagation === 'function' || typeof nativeEvent.cancelBubble === 'boolean';\n\n _EventBaseObject2[\"default\"].call(this);\n\n this.nativeEvent = nativeEvent;\n\n // in case dom event has been mark as default prevented by lower dom node\n var isDefaultPrevented = retFalse;\n if ('defaultPrevented' in nativeEvent) {\n isDefaultPrevented = nativeEvent.defaultPrevented ? retTrue : retFalse;\n } else if ('getPreventDefault' in nativeEvent) {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=691151\n isDefaultPrevented = nativeEvent.getPreventDefault() ? retTrue : retFalse;\n } else if ('returnValue' in nativeEvent) {\n isDefaultPrevented = nativeEvent.returnValue === FALSE ? retTrue : retFalse;\n }\n\n this.isDefaultPrevented = isDefaultPrevented;\n\n var fixFns = [];\n var fixFn = void 0;\n var l = void 0;\n var prop = void 0;\n var props = commonProps.concat();\n\n eventNormalizers.forEach(function (normalizer) {\n if (type.match(normalizer.reg)) {\n props = props.concat(normalizer.props);\n if (normalizer.fix) {\n fixFns.push(normalizer.fix);\n }\n }\n });\n\n l = props.length;\n\n // clone properties of the original event object\n while (l) {\n prop = props[--l];\n this[prop] = nativeEvent[prop];\n }\n\n // fix target property, if necessary\n if (!this.target && isNative) {\n this.target = nativeEvent.srcElement || document; // srcElement might not be defined either\n }\n\n // check if target is a text node (safari)\n if (this.target && this.target.nodeType === 3) {\n this.target = this.target.parentNode;\n }\n\n l = fixFns.length;\n\n while (l) {\n fixFn = fixFns[--l];\n fixFn(this, nativeEvent);\n }\n\n this.timeStamp = nativeEvent.timeStamp || Date.now();\n}\n\nvar EventBaseObjectProto = _EventBaseObject2[\"default\"].prototype;\n\n(0, _objectAssign2[\"default\"])(DomEventObject.prototype, EventBaseObjectProto, {\n constructor: DomEventObject,\n\n preventDefault: function preventDefault() {\n var e = this.nativeEvent;\n\n // if preventDefault exists run it on the original event\n if (e.preventDefault) {\n e.preventDefault();\n } else {\n // otherwise set the returnValue property of the original event to FALSE (IE)\n e.returnValue = FALSE;\n }\n\n EventBaseObjectProto.preventDefault.call(this);\n },\n stopPropagation: function stopPropagation() {\n var e = this.nativeEvent;\n\n // if stopPropagation exists run it on the original event\n if (e.stopPropagation) {\n e.stopPropagation();\n } else {\n // otherwise set the cancelBubble property of the original event to TRUE (IE)\n e.cancelBubble = TRUE;\n }\n\n EventBaseObjectProto.stopPropagation.call(this);\n }\n});\n\nexports[\"default\"] = DomEventObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventObject.js\n// module id = 76\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * @ignore\n * base event object for custom and dom event.\n * @author yiminghe@gmail.com\n */\n\nfunction returnFalse() {\n return false;\n}\n\nfunction returnTrue() {\n return true;\n}\n\nfunction EventBaseObject() {\n this.timeStamp = Date.now();\n this.target = undefined;\n this.currentTarget = undefined;\n}\n\nEventBaseObject.prototype = {\n isEventObject: 1,\n\n constructor: EventBaseObject,\n\n isDefaultPrevented: returnFalse,\n\n isPropagationStopped: returnFalse,\n\n isImmediatePropagationStopped: returnFalse,\n\n preventDefault: function preventDefault() {\n this.isDefaultPrevented = returnTrue;\n },\n stopPropagation: function stopPropagation() {\n this.isPropagationStopped = returnTrue;\n },\n stopImmediatePropagation: function stopImmediatePropagation() {\n this.isImmediatePropagationStopped = returnTrue;\n // fixed 1.2\n // call stopPropagation implicitly\n this.stopPropagation();\n },\n halt: function halt(immediate) {\n if (immediate) {\n this.stopImmediatePropagation();\n } else {\n this.stopPropagation();\n }\n this.preventDefault();\n }\n};\n\nexports[\"default\"] = EventBaseObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventBaseObject.js\n// module id = 77\n// module chunks = 0","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_object-assign@4.1.1@object-assign/index.js\n// module id = 78\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _Event = require('./Event');\n\nvar _Event2 = _interopRequireDefault(_Event);\n\nvar _componentClasses = require('component-classes');\n\nvar _componentClasses2 = _interopRequireDefault(_componentClasses);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar isCssAnimationSupported = _Event2.default.endEvents.length !== 0;\n\n\nvar capitalPrefixes = ['Webkit', 'Moz', 'O',\n// ms is special .... !\n'ms'];\nvar prefixes = ['-webkit-', '-moz-', '-o-', 'ms-', ''];\n\nfunction getStyleProperty(node, name) {\n var style = window.getComputedStyle(node);\n\n var ret = '';\n for (var i = 0; i < prefixes.length; i++) {\n ret = style.getPropertyValue(prefixes[i] + name);\n if (ret) {\n break;\n }\n }\n return ret;\n}\n\nfunction fixBrowserByTimeout(node) {\n if (isCssAnimationSupported) {\n var transitionDelay = parseFloat(getStyleProperty(node, 'transition-delay')) || 0;\n var transitionDuration = parseFloat(getStyleProperty(node, 'transition-duration')) || 0;\n var animationDelay = parseFloat(getStyleProperty(node, 'animation-delay')) || 0;\n var animationDuration = parseFloat(getStyleProperty(node, 'animation-duration')) || 0;\n var time = Math.max(transitionDuration + transitionDelay, animationDuration + animationDelay);\n // sometimes, browser bug\n node.rcEndAnimTimeout = setTimeout(function () {\n node.rcEndAnimTimeout = null;\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }, time * 1000 + 200);\n }\n}\n\nfunction clearBrowserBugTimeout(node) {\n if (node.rcEndAnimTimeout) {\n clearTimeout(node.rcEndAnimTimeout);\n node.rcEndAnimTimeout = null;\n }\n}\n\nvar cssAnimation = function cssAnimation(node, transitionName, endCallback) {\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\n var className = nameIsObj ? transitionName.name : transitionName;\n var activeClassName = nameIsObj ? transitionName.active : transitionName + '-active';\n var end = endCallback;\n var start = void 0;\n var active = void 0;\n var nodeClasses = (0, _componentClasses2.default)(node);\n\n if (endCallback && Object.prototype.toString.call(endCallback) === '[object Object]') {\n end = endCallback.end;\n start = endCallback.start;\n active = endCallback.active;\n }\n\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n nodeClasses.remove(className);\n nodeClasses.remove(activeClassName);\n\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional end is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (end) {\n end();\n }\n };\n\n _Event2.default.addEndEventListener(node, node.rcEndListener);\n\n if (start) {\n start();\n }\n nodeClasses.add(className);\n\n node.rcAnimTimeout = setTimeout(function () {\n node.rcAnimTimeout = null;\n nodeClasses.add(activeClassName);\n if (active) {\n setTimeout(active, 0);\n }\n fixBrowserByTimeout(node);\n // 30ms for firefox\n }, 30);\n\n return {\n stop: function stop() {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }\n };\n};\n\ncssAnimation.style = function (node, style, callback) {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional callback is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (callback) {\n callback();\n }\n };\n\n _Event2.default.addEndEventListener(node, node.rcEndListener);\n\n node.rcAnimTimeout = setTimeout(function () {\n for (var s in style) {\n if (style.hasOwnProperty(s)) {\n node.style[s] = style[s];\n }\n }\n node.rcAnimTimeout = null;\n fixBrowserByTimeout(node);\n }, 0);\n};\n\ncssAnimation.setTransition = function (node, p, value) {\n var property = p;\n var v = value;\n if (value === undefined) {\n v = property;\n property = '';\n }\n property = property || '';\n capitalPrefixes.forEach(function (prefix) {\n node.style[prefix + 'Transition' + property] = v;\n });\n};\n\ncssAnimation.isCssAnimationSupported = isCssAnimationSupported;\n\nexports.default = cssAnimation;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/cssAnimation.js\n// module id = 79\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nvar EVENT_NAME_MAP = {\n transitionend: {\n transition: 'transitionend',\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'mozTransitionEnd',\n OTransition: 'oTransitionEnd',\n msTransition: 'MSTransitionEnd'\n },\n\n animationend: {\n animation: 'animationend',\n WebkitAnimation: 'webkitAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n OAnimation: 'oAnimationEnd',\n msAnimation: 'MSAnimationEnd'\n }\n};\n\nvar endEvents = [];\n\nfunction detectEvents() {\n var testEl = document.createElement('div');\n var style = testEl.style;\n\n if (!('AnimationEvent' in window)) {\n delete EVENT_NAME_MAP.animationend.animation;\n }\n\n if (!('TransitionEvent' in window)) {\n delete EVENT_NAME_MAP.transitionend.transition;\n }\n\n for (var baseEventName in EVENT_NAME_MAP) {\n if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {\n var baseEvents = EVENT_NAME_MAP[baseEventName];\n for (var styleName in baseEvents) {\n if (styleName in style) {\n endEvents.push(baseEvents[styleName]);\n break;\n }\n }\n }\n }\n}\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n detectEvents();\n}\n\nfunction addEventListener(node, eventName, eventListener) {\n node.addEventListener(eventName, eventListener, false);\n}\n\nfunction removeEventListener(node, eventName, eventListener) {\n node.removeEventListener(eventName, eventListener, false);\n}\n\nvar TransitionEvents = {\n addEndEventListener: function addEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n endEvents.forEach(function (endEvent) {\n addEventListener(node, endEvent, eventListener);\n });\n },\n\n\n endEvents: endEvents,\n\n removeEndEventListener: function removeEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n return;\n }\n endEvents.forEach(function (endEvent) {\n removeEventListener(node, endEvent, eventListener);\n });\n }\n};\n\nexports.default = TransitionEvents;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Event.js\n// module id = 80\n// module chunks = 0","/**\n * Module dependencies.\n */\n\ntry {\n var index = require('indexof');\n} catch (err) {\n var index = require('component-indexof');\n}\n\n/**\n * Whitespace regexp.\n */\n\nvar re = /\\s+/;\n\n/**\n * toString reference.\n */\n\nvar toString = Object.prototype.toString;\n\n/**\n * Wrap `el` in a `ClassList`.\n *\n * @param {Element} el\n * @return {ClassList}\n * @api public\n */\n\nmodule.exports = function(el){\n return new ClassList(el);\n};\n\n/**\n * Initialize a new ClassList for `el`.\n *\n * @param {Element} el\n * @api private\n */\n\nfunction ClassList(el) {\n if (!el || !el.nodeType) {\n throw new Error('A DOM element reference is required');\n }\n this.el = el;\n this.list = el.classList;\n}\n\n/**\n * Add class `name` if not already present.\n *\n * @param {String} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.add = function(name){\n // classList\n if (this.list) {\n this.list.add(name);\n return this;\n }\n\n // fallback\n var arr = this.array();\n var i = index(arr, name);\n if (!~i) arr.push(name);\n this.el.className = arr.join(' ');\n return this;\n};\n\n/**\n * Remove class `name` when present, or\n * pass a regular expression to remove\n * any which match.\n *\n * @param {String|RegExp} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.remove = function(name){\n if ('[object RegExp]' == toString.call(name)) {\n return this.removeMatching(name);\n }\n\n // classList\n if (this.list) {\n this.list.remove(name);\n return this;\n }\n\n // fallback\n var arr = this.array();\n var i = index(arr, name);\n if (~i) arr.splice(i, 1);\n this.el.className = arr.join(' ');\n return this;\n};\n\n/**\n * Remove all classes matching `re`.\n *\n * @param {RegExp} re\n * @return {ClassList}\n * @api private\n */\n\nClassList.prototype.removeMatching = function(re){\n var arr = this.array();\n for (var i = 0; i < arr.length; i++) {\n if (re.test(arr[i])) {\n this.remove(arr[i]);\n }\n }\n return this;\n};\n\n/**\n * Toggle class `name`, can force state via `force`.\n *\n * For browsers that support classList, but do not support `force` yet,\n * the mistake will be detected and corrected.\n *\n * @param {String} name\n * @param {Boolean} force\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.toggle = function(name, force){\n // classList\n if (this.list) {\n if (\"undefined\" !== typeof force) {\n if (force !== this.list.toggle(name, force)) {\n this.list.toggle(name); // toggle again to correct\n }\n } else {\n this.list.toggle(name);\n }\n return this;\n }\n\n // fallback\n if (\"undefined\" !== typeof force) {\n if (!force) {\n this.remove(name);\n } else {\n this.add(name);\n }\n } else {\n if (this.has(name)) {\n this.remove(name);\n } else {\n this.add(name);\n }\n }\n\n return this;\n};\n\n/**\n * Return an array of classes.\n *\n * @return {Array}\n * @api public\n */\n\nClassList.prototype.array = function(){\n var className = this.el.getAttribute('class') || '';\n var str = className.replace(/^\\s+|\\s+$/g, '');\n var arr = str.split(re);\n if ('' === arr[0]) arr.shift();\n return arr;\n};\n\n/**\n * Check if class `name` is present.\n *\n * @param {String} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.has =\nClassList.prototype.contains = function(name){\n return this.list\n ? this.list.contains(name)\n : !! ~index(this.array(), name);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_component-classes@1.2.6@component-classes/index.js\n// module id = 81\n// module chunks = 0","module.exports = function(arr, obj){\n if (arr.indexOf) return arr.indexOf(obj);\n for (var i = 0; i < arr.length; ++i) {\n if (arr[i] === obj) return i;\n }\n return -1;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_component-indexof@0.0.3@component-indexof/index.js\n// module id = 82\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = toArray;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction toArray(children) {\n var ret = [];\n _react2.default.Children.forEach(children, function (c) {\n ret.push(c);\n });\n return ret;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/toArray.js\n// module id = 83\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _createReactClass = require('create-react-class');\n\nvar _createReactClass2 = _interopRequireDefault(_createReactClass);\n\nvar _domAlign = require('dom-align');\n\nvar _domAlign2 = _interopRequireDefault(_domAlign);\n\nvar _addEventListener = require('./addEventListener');\n\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n//import isWindow from './isWindow';\n\nfunction isWindow(obj) {\n /* eslint no-eq-null: 0 */\n /* eslint eqeqeq: 0 */\n return obj != null && obj == obj.window;\n}\n\nfunction buffer(fn, ms) {\n var timer = void 0;\n\n function clear() {\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n }\n\n function bufferFn() {\n clear();\n timer = setTimeout(fn, ms);\n }\n\n bufferFn.clear = clear;\n\n return bufferFn;\n}\nvar propTypes = {\n childrenProps: _propTypes2.default.object,\n align: _propTypes2.default.object.isRequired,\n target: _propTypes2.default.func,\n onAlign: _propTypes2.default.func,\n monitorBufferTime: _propTypes2.default.number,\n monitorWindowResize: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n children: _propTypes2.default.any\n};\n\nvar defaultProps = {\n target: function target() {\n return window;\n },\n onAlign: function onAlign() {},\n\n monitorBufferTime: 50,\n monitorWindowResize: false,\n disabled: false\n};\n\nvar Align = function (_React$Component) {\n _inherits(Align, _React$Component);\n\n function Align(props) {\n _classCallCheck(this, Align);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _initialiseProps.call(_this);\n\n return _this;\n }\n\n Align.prototype.componentDidMount = function componentDidMount() {\n var props = this.props;\n // if parent ref not attached .... use document.getElementById\n this.forceAlign();\n if (!props.disabled && props.monitorWindowResize) {\n this.startMonitorWindowResize();\n }\n };\n\n Align.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var reAlign = false;\n var props = this.props;\n\n if (!props.disabled) {\n if (prevProps.disabled || prevProps.align !== props.align) {\n reAlign = true;\n } else {\n var lastTarget = prevProps.target();\n var currentTarget = props.target();\n if (isWindow(lastTarget) && isWindow(currentTarget)) {\n reAlign = false;\n } else if (lastTarget !== currentTarget) {\n reAlign = true;\n }\n }\n }\n\n if (reAlign) {\n this.forceAlign();\n }\n\n if (props.monitorWindowResize && !props.disabled) {\n this.startMonitorWindowResize();\n } else {\n this.stopMonitorWindowResize();\n }\n };\n\n Align.prototype.componentWillUnmount = function componentWillUnmount() {\n this.stopMonitorWindowResize();\n };\n\n Align.prototype.startMonitorWindowResize = function startMonitorWindowResize() {\n if (!this.resizeHandler) {\n this.bufferMonitor = buffer(this.forceAlign, this.props.monitorBufferTime);\n this.resizeHandler = (0, _addEventListener2.default)(window, 'resize', this.bufferMonitor);\n }\n };\n\n Align.prototype.render = function render() {\n var _props = this.props,\n childrenProps = _props.childrenProps,\n children = _props.children;\n\n var child = _react2.default.Children.only(children);\n if (childrenProps) {\n var newProps = {};\n for (var prop in childrenProps) {\n if (childrenProps.hasOwnProperty(prop)) {\n newProps[prop] = this.props[childrenProps[prop]];\n }\n }\n return _react2.default.cloneElement(child, newProps);\n }\n return child;\n };\n\n return Align;\n}(_react2.default.Component);\n\nvar _initialiseProps = function _initialiseProps() {\n var _this2 = this;\n\n this.stopMonitorWindowResize = function () {\n if (_this2.resizeHandler) {\n _this2.bufferMonitor.clear();\n _this2.resizeHandler.remove();\n _this2.resizeHandler = null;\n }\n };\n\n this.forceAlign = function () {\n var props = _this2.props;\n if (!props.disabled) {\n var source = _reactDom2.default.findDOMNode(_this2);\n props.onAlign(source, (0, _domAlign2.default)(source, props.target(), props.align));\n }\n };\n};\n\n;\n\nAlign.defaultProps = defaultProps;\nAlign.propTypes = propTypes;\nexports.default = Align;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Align.js\n// module id = 84\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar React = require('react');\nvar factory = require('./factory');\n\nif (typeof React === 'undefined') {\n throw Error(\n 'create-react-class could not find the React object. If you are using script tags, ' +\n 'make sure that React is being loaded before create-react-class.'\n );\n}\n\n// Hack to grab NoopUpdateQueue from isomorphic React\nvar ReactNoopUpdateQueue = new React.Component().updater;\n\nmodule.exports = factory(\n React.Component,\n React.isValidElement,\n ReactNoopUpdateQueue\n);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_create-react-class@15.6.2@create-react-class/index.js\n// module id = 85\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar _assign = require('object-assign');\n\nvar emptyObject = require('fbjs/lib/emptyObject');\nvar _invariant = require('fbjs/lib/invariant');\n\nif (process.env.NODE_ENV !== 'production') {\n var warning = require('fbjs/lib/warning');\n}\n\nvar MIXINS_KEY = 'mixins';\n\n// Helper function to allow the creation of anonymous functions which do not\n// have .name set to the name of the variable being assigned to.\nfunction identity(fn) {\n return fn;\n}\n\nvar ReactPropTypeLocationNames;\nif (process.env.NODE_ENV !== 'production') {\n ReactPropTypeLocationNames = {\n prop: 'prop',\n context: 'context',\n childContext: 'child context'\n };\n} else {\n ReactPropTypeLocationNames = {};\n}\n\nfunction factory(ReactComponent, isValidElement, ReactNoopUpdateQueue) {\n /**\n * Policies that describe methods in `ReactClassInterface`.\n */\n\n var injectedMixins = [];\n\n /**\n * Composite components are higher-level components that compose other composite\n * or host components.\n *\n * To create a new type of `ReactClass`, pass a specification of\n * your new class to `React.createClass`. The only requirement of your class\n * specification is that you implement a `render` method.\n *\n * var MyComponent = React.createClass({\n * render: function() {\n * return Hello World
;\n * }\n * });\n *\n * The class specification supports a specific protocol of methods that have\n * special meaning (e.g. `render`). See `ReactClassInterface` for\n * more the comprehensive protocol. Any other properties and methods in the\n * class specification will be available on the prototype.\n *\n * @interface ReactClassInterface\n * @internal\n */\n var ReactClassInterface = {\n /**\n * An array of Mixin objects to include when defining your component.\n *\n * @type {array}\n * @optional\n */\n mixins: 'DEFINE_MANY',\n\n /**\n * An object containing properties and methods that should be defined on\n * the component's constructor instead of its prototype (static methods).\n *\n * @type {object}\n * @optional\n */\n statics: 'DEFINE_MANY',\n\n /**\n * Definition of prop types for this component.\n *\n * @type {object}\n * @optional\n */\n propTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types for this component.\n *\n * @type {object}\n * @optional\n */\n contextTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types this component sets for its children.\n *\n * @type {object}\n * @optional\n */\n childContextTypes: 'DEFINE_MANY',\n\n // ==== Definition methods ====\n\n /**\n * Invoked when the component is mounted. Values in the mapping will be set on\n * `this.props` if that prop is not specified (i.e. using an `in` check).\n *\n * This method is invoked before `getInitialState` and therefore cannot rely\n * on `this.state` or use `this.setState`.\n *\n * @return {object}\n * @optional\n */\n getDefaultProps: 'DEFINE_MANY_MERGED',\n\n /**\n * Invoked once before the component is mounted. The return value will be used\n * as the initial value of `this.state`.\n *\n * getInitialState: function() {\n * return {\n * isOn: false,\n * fooBaz: new BazFoo()\n * }\n * }\n *\n * @return {object}\n * @optional\n */\n getInitialState: 'DEFINE_MANY_MERGED',\n\n /**\n * @return {object}\n * @optional\n */\n getChildContext: 'DEFINE_MANY_MERGED',\n\n /**\n * Uses props from `this.props` and state from `this.state` to render the\n * structure of the component.\n *\n * No guarantees are made about when or how often this method is invoked, so\n * it must not have side effects.\n *\n * render: function() {\n * var name = this.props.name;\n * return Hello, {name}!
;\n * }\n *\n * @return {ReactComponent}\n * @required\n */\n render: 'DEFINE_ONCE',\n\n // ==== Delegate methods ====\n\n /**\n * Invoked when the component is initially created and about to be mounted.\n * This may have side effects, but any external subscriptions or data created\n * by this method must be cleaned up in `componentWillUnmount`.\n *\n * @optional\n */\n componentWillMount: 'DEFINE_MANY',\n\n /**\n * Invoked when the component has been mounted and has a DOM representation.\n * However, there is no guarantee that the DOM node is in the document.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been mounted (initialized and rendered) for the first time.\n *\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidMount: 'DEFINE_MANY',\n\n /**\n * Invoked before the component receives new props.\n *\n * Use this as an opportunity to react to a prop transition by updating the\n * state using `this.setState`. Current props are accessed via `this.props`.\n *\n * componentWillReceiveProps: function(nextProps, nextContext) {\n * this.setState({\n * likesIncreasing: nextProps.likeCount > this.props.likeCount\n * });\n * }\n *\n * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop\n * transition may cause a state change, but the opposite is not true. If you\n * need it, you are probably looking for `componentWillUpdate`.\n *\n * @param {object} nextProps\n * @optional\n */\n componentWillReceiveProps: 'DEFINE_MANY',\n\n /**\n * Invoked while deciding if the component should be updated as a result of\n * receiving new props, state and/or context.\n *\n * Use this as an opportunity to `return false` when you're certain that the\n * transition to the new props/state/context will not require a component\n * update.\n *\n * shouldComponentUpdate: function(nextProps, nextState, nextContext) {\n * return !equal(nextProps, this.props) ||\n * !equal(nextState, this.state) ||\n * !equal(nextContext, this.context);\n * }\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @return {boolean} True if the component should update.\n * @optional\n */\n shouldComponentUpdate: 'DEFINE_ONCE',\n\n /**\n * Invoked when the component is about to update due to a transition from\n * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState`\n * and `nextContext`.\n *\n * Use this as an opportunity to perform preparation before an update occurs.\n *\n * NOTE: You **cannot** use `this.setState()` in this method.\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @param {ReactReconcileTransaction} transaction\n * @optional\n */\n componentWillUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component's DOM representation has been updated.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been updated.\n *\n * @param {object} prevProps\n * @param {?object} prevState\n * @param {?object} prevContext\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component is about to be removed from its parent and have\n * its DOM representation destroyed.\n *\n * Use this as an opportunity to deallocate any external resources.\n *\n * NOTE: There is no `componentDidUnmount` since your component will have been\n * destroyed by that point.\n *\n * @optional\n */\n componentWillUnmount: 'DEFINE_MANY',\n\n // ==== Advanced methods ====\n\n /**\n * Updates the component's currently mounted DOM representation.\n *\n * By default, this implements React's rendering and reconciliation algorithm.\n * Sophisticated clients may wish to override this.\n *\n * @param {ReactReconcileTransaction} transaction\n * @internal\n * @overridable\n */\n updateComponent: 'OVERRIDE_BASE'\n };\n\n /**\n * Mapping from class specification keys to special processing functions.\n *\n * Although these are declared like instance properties in the specification\n * when defining classes using `React.createClass`, they are actually static\n * and are accessible on the constructor instead of the prototype. Despite\n * being static, they must be defined outside of the \"statics\" key under\n * which all other static methods are defined.\n */\n var RESERVED_SPEC_KEYS = {\n displayName: function(Constructor, displayName) {\n Constructor.displayName = displayName;\n },\n mixins: function(Constructor, mixins) {\n if (mixins) {\n for (var i = 0; i < mixins.length; i++) {\n mixSpecIntoComponent(Constructor, mixins[i]);\n }\n }\n },\n childContextTypes: function(Constructor, childContextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, childContextTypes, 'childContext');\n }\n Constructor.childContextTypes = _assign(\n {},\n Constructor.childContextTypes,\n childContextTypes\n );\n },\n contextTypes: function(Constructor, contextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, contextTypes, 'context');\n }\n Constructor.contextTypes = _assign(\n {},\n Constructor.contextTypes,\n contextTypes\n );\n },\n /**\n * Special case getDefaultProps which should move into statics but requires\n * automatic merging.\n */\n getDefaultProps: function(Constructor, getDefaultProps) {\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps = createMergedResultFunction(\n Constructor.getDefaultProps,\n getDefaultProps\n );\n } else {\n Constructor.getDefaultProps = getDefaultProps;\n }\n },\n propTypes: function(Constructor, propTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, propTypes, 'prop');\n }\n Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes);\n },\n statics: function(Constructor, statics) {\n mixStaticSpecIntoComponent(Constructor, statics);\n },\n autobind: function() {}\n };\n\n function validateTypeDef(Constructor, typeDef, location) {\n for (var propName in typeDef) {\n if (typeDef.hasOwnProperty(propName)) {\n // use a warning instead of an _invariant so components\n // don't show up in prod but only in __DEV__\n if (process.env.NODE_ENV !== 'production') {\n warning(\n typeof typeDef[propName] === 'function',\n '%s: %s type `%s` is invalid; it must be a function, usually from ' +\n 'React.PropTypes.',\n Constructor.displayName || 'ReactClass',\n ReactPropTypeLocationNames[location],\n propName\n );\n }\n }\n }\n }\n\n function validateMethodOverride(isAlreadyDefined, name) {\n var specPolicy = ReactClassInterface.hasOwnProperty(name)\n ? ReactClassInterface[name]\n : null;\n\n // Disallow overriding of base class methods unless explicitly allowed.\n if (ReactClassMixin.hasOwnProperty(name)) {\n _invariant(\n specPolicy === 'OVERRIDE_BASE',\n 'ReactClassInterface: You are attempting to override ' +\n '`%s` from your class specification. Ensure that your method names ' +\n 'do not overlap with React methods.',\n name\n );\n }\n\n // Disallow defining methods more than once unless explicitly allowed.\n if (isAlreadyDefined) {\n _invariant(\n specPolicy === 'DEFINE_MANY' || specPolicy === 'DEFINE_MANY_MERGED',\n 'ReactClassInterface: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be due ' +\n 'to a mixin.',\n name\n );\n }\n }\n\n /**\n * Mixin helper which handles policy validation and reserved\n * specification keys when building React classes.\n */\n function mixSpecIntoComponent(Constructor, spec) {\n if (!spec) {\n if (process.env.NODE_ENV !== 'production') {\n var typeofSpec = typeof spec;\n var isMixinValid = typeofSpec === 'object' && spec !== null;\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n isMixinValid,\n \"%s: You're attempting to include a mixin that is either null \" +\n 'or not an object. Check the mixins included by the component, ' +\n 'as well as any mixins they include themselves. ' +\n 'Expected object but got %s.',\n Constructor.displayName || 'ReactClass',\n spec === null ? null : typeofSpec\n );\n }\n }\n\n return;\n }\n\n _invariant(\n typeof spec !== 'function',\n \"ReactClass: You're attempting to \" +\n 'use a component class or function as a mixin. Instead, just use a ' +\n 'regular object.'\n );\n _invariant(\n !isValidElement(spec),\n \"ReactClass: You're attempting to \" +\n 'use a component as a mixin. Instead, just use a regular object.'\n );\n\n var proto = Constructor.prototype;\n var autoBindPairs = proto.__reactAutoBindPairs;\n\n // By handling mixins before any other properties, we ensure the same\n // chaining order is applied to methods with DEFINE_MANY policy, whether\n // mixins are listed before or after these methods in the spec.\n if (spec.hasOwnProperty(MIXINS_KEY)) {\n RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins);\n }\n\n for (var name in spec) {\n if (!spec.hasOwnProperty(name)) {\n continue;\n }\n\n if (name === MIXINS_KEY) {\n // We have already handled mixins in a special case above.\n continue;\n }\n\n var property = spec[name];\n var isAlreadyDefined = proto.hasOwnProperty(name);\n validateMethodOverride(isAlreadyDefined, name);\n\n if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) {\n RESERVED_SPEC_KEYS[name](Constructor, property);\n } else {\n // Setup methods on prototype:\n // The following member methods should not be automatically bound:\n // 1. Expected ReactClass methods (in the \"interface\").\n // 2. Overridden methods (that were mixed in).\n var isReactClassMethod = ReactClassInterface.hasOwnProperty(name);\n var isFunction = typeof property === 'function';\n var shouldAutoBind =\n isFunction &&\n !isReactClassMethod &&\n !isAlreadyDefined &&\n spec.autobind !== false;\n\n if (shouldAutoBind) {\n autoBindPairs.push(name, property);\n proto[name] = property;\n } else {\n if (isAlreadyDefined) {\n var specPolicy = ReactClassInterface[name];\n\n // These cases should already be caught by validateMethodOverride.\n _invariant(\n isReactClassMethod &&\n (specPolicy === 'DEFINE_MANY_MERGED' ||\n specPolicy === 'DEFINE_MANY'),\n 'ReactClass: Unexpected spec policy %s for key %s ' +\n 'when mixing in component specs.',\n specPolicy,\n name\n );\n\n // For methods which are defined more than once, call the existing\n // methods before calling the new property, merging if appropriate.\n if (specPolicy === 'DEFINE_MANY_MERGED') {\n proto[name] = createMergedResultFunction(proto[name], property);\n } else if (specPolicy === 'DEFINE_MANY') {\n proto[name] = createChainedFunction(proto[name], property);\n }\n } else {\n proto[name] = property;\n if (process.env.NODE_ENV !== 'production') {\n // Add verbose displayName to the function, which helps when looking\n // at profiling tools.\n if (typeof property === 'function' && spec.displayName) {\n proto[name].displayName = spec.displayName + '_' + name;\n }\n }\n }\n }\n }\n }\n }\n\n function mixStaticSpecIntoComponent(Constructor, statics) {\n if (!statics) {\n return;\n }\n for (var name in statics) {\n var property = statics[name];\n if (!statics.hasOwnProperty(name)) {\n continue;\n }\n\n var isReserved = name in RESERVED_SPEC_KEYS;\n _invariant(\n !isReserved,\n 'ReactClass: You are attempting to define a reserved ' +\n 'property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it ' +\n 'as an instance property instead; it will still be accessible on the ' +\n 'constructor.',\n name\n );\n\n var isInherited = name in Constructor;\n _invariant(\n !isInherited,\n 'ReactClass: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be ' +\n 'due to a mixin.',\n name\n );\n Constructor[name] = property;\n }\n }\n\n /**\n * Merge two objects, but throw if both contain the same key.\n *\n * @param {object} one The first object, which is mutated.\n * @param {object} two The second object\n * @return {object} one after it has been mutated to contain everything in two.\n */\n function mergeIntoWithNoDuplicateKeys(one, two) {\n _invariant(\n one && two && typeof one === 'object' && typeof two === 'object',\n 'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.'\n );\n\n for (var key in two) {\n if (two.hasOwnProperty(key)) {\n _invariant(\n one[key] === undefined,\n 'mergeIntoWithNoDuplicateKeys(): ' +\n 'Tried to merge two objects with the same key: `%s`. This conflict ' +\n 'may be due to a mixin; in particular, this may be caused by two ' +\n 'getInitialState() or getDefaultProps() methods returning objects ' +\n 'with clashing keys.',\n key\n );\n one[key] = two[key];\n }\n }\n return one;\n }\n\n /**\n * Creates a function that invokes two functions and merges their return values.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createMergedResultFunction(one, two) {\n return function mergedResult() {\n var a = one.apply(this, arguments);\n var b = two.apply(this, arguments);\n if (a == null) {\n return b;\n } else if (b == null) {\n return a;\n }\n var c = {};\n mergeIntoWithNoDuplicateKeys(c, a);\n mergeIntoWithNoDuplicateKeys(c, b);\n return c;\n };\n }\n\n /**\n * Creates a function that invokes two functions and ignores their return vales.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createChainedFunction(one, two) {\n return function chainedFunction() {\n one.apply(this, arguments);\n two.apply(this, arguments);\n };\n }\n\n /**\n * Binds a method to the component.\n *\n * @param {object} component Component whose method is going to be bound.\n * @param {function} method Method to be bound.\n * @return {function} The bound method.\n */\n function bindAutoBindMethod(component, method) {\n var boundMethod = method.bind(component);\n if (process.env.NODE_ENV !== 'production') {\n boundMethod.__reactBoundContext = component;\n boundMethod.__reactBoundMethod = method;\n boundMethod.__reactBoundArguments = null;\n var componentName = component.constructor.displayName;\n var _bind = boundMethod.bind;\n boundMethod.bind = function(newThis) {\n for (\n var _len = arguments.length,\n args = Array(_len > 1 ? _len - 1 : 0),\n _key = 1;\n _key < _len;\n _key++\n ) {\n args[_key - 1] = arguments[_key];\n }\n\n // User is trying to bind() an autobound method; we effectively will\n // ignore the value of \"this\" that the user is trying to use, so\n // let's warn.\n if (newThis !== component && newThis !== null) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): React component methods may only be bound to the ' +\n 'component instance. See %s',\n componentName\n );\n }\n } else if (!args.length) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): You are binding a component method to the component. ' +\n 'React does this for you automatically in a high-performance ' +\n 'way, so you can safely remove this call. See %s',\n componentName\n );\n }\n return boundMethod;\n }\n var reboundMethod = _bind.apply(boundMethod, arguments);\n reboundMethod.__reactBoundContext = component;\n reboundMethod.__reactBoundMethod = method;\n reboundMethod.__reactBoundArguments = args;\n return reboundMethod;\n };\n }\n return boundMethod;\n }\n\n /**\n * Binds all auto-bound methods in a component.\n *\n * @param {object} component Component whose method is going to be bound.\n */\n function bindAutoBindMethods(component) {\n var pairs = component.__reactAutoBindPairs;\n for (var i = 0; i < pairs.length; i += 2) {\n var autoBindKey = pairs[i];\n var method = pairs[i + 1];\n component[autoBindKey] = bindAutoBindMethod(component, method);\n }\n }\n\n var IsMountedPreMixin = {\n componentDidMount: function() {\n this.__isMounted = true;\n }\n };\n\n var IsMountedPostMixin = {\n componentWillUnmount: function() {\n this.__isMounted = false;\n }\n };\n\n /**\n * Add more to the ReactClass base class. These are all legacy features and\n * therefore not already part of the modern ReactComponent.\n */\n var ReactClassMixin = {\n /**\n * TODO: This will be deprecated because state should always keep a consistent\n * type signature and the only use case for this, is to avoid that.\n */\n replaceState: function(newState, callback) {\n this.updater.enqueueReplaceState(this, newState, callback);\n },\n\n /**\n * Checks whether or not this composite component is mounted.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function() {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this.__didWarnIsMounted,\n '%s: isMounted is deprecated. Instead, make sure to clean up ' +\n 'subscriptions and pending requests in componentWillUnmount to ' +\n 'prevent memory leaks.',\n (this.constructor && this.constructor.displayName) ||\n this.name ||\n 'Component'\n );\n this.__didWarnIsMounted = true;\n }\n return !!this.__isMounted;\n }\n };\n\n var ReactClassComponent = function() {};\n _assign(\n ReactClassComponent.prototype,\n ReactComponent.prototype,\n ReactClassMixin\n );\n\n /**\n * Creates a composite component class given a class specification.\n * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass\n *\n * @param {object} spec Class specification (which must define `render`).\n * @return {function} Component constructor function.\n * @public\n */\n function createClass(spec) {\n // To keep our warnings more understandable, we'll use a little hack here to\n // ensure that Constructor.name !== 'Constructor'. This makes sure we don't\n // unnecessarily identify a class without displayName as 'Constructor'.\n var Constructor = identity(function(props, context, updater) {\n // This constructor gets overridden by mocks. The argument is used\n // by mocks to assert on what gets mounted.\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this instanceof Constructor,\n 'Something is calling a React component directly. Use a factory or ' +\n 'JSX instead. See: https://fb.me/react-legacyfactory'\n );\n }\n\n // Wire up auto-binding\n if (this.__reactAutoBindPairs.length) {\n bindAutoBindMethods(this);\n }\n\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n\n this.state = null;\n\n // ReactClasses doesn't have constructors. Instead, they use the\n // getInitialState and componentWillMount methods for initialization.\n\n var initialState = this.getInitialState ? this.getInitialState() : null;\n if (process.env.NODE_ENV !== 'production') {\n // We allow auto-mocks to proceed as if they're returning null.\n if (\n initialState === undefined &&\n this.getInitialState._isMockFunction\n ) {\n // This is probably bad practice. Consider warning here and\n // deprecating this convenience.\n initialState = null;\n }\n }\n _invariant(\n typeof initialState === 'object' && !Array.isArray(initialState),\n '%s.getInitialState(): must return an object or null',\n Constructor.displayName || 'ReactCompositeComponent'\n );\n\n this.state = initialState;\n });\n Constructor.prototype = new ReactClassComponent();\n Constructor.prototype.constructor = Constructor;\n Constructor.prototype.__reactAutoBindPairs = [];\n\n injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor));\n\n mixSpecIntoComponent(Constructor, IsMountedPreMixin);\n mixSpecIntoComponent(Constructor, spec);\n mixSpecIntoComponent(Constructor, IsMountedPostMixin);\n\n // Initialize the defaultProps property after all mixins have been merged.\n if (Constructor.getDefaultProps) {\n Constructor.defaultProps = Constructor.getDefaultProps();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n // This is a tag to indicate that the use of these method names is ok,\n // since it's used with createClass. If it's not, then it's likely a\n // mistake so we'll warn you to use the static property, property\n // initializer or constructor respectively.\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps.isReactClassApproved = {};\n }\n if (Constructor.prototype.getInitialState) {\n Constructor.prototype.getInitialState.isReactClassApproved = {};\n }\n }\n\n _invariant(\n Constructor.prototype.render,\n 'createClass(...): Class specification must implement a `render` method.'\n );\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n !Constructor.prototype.componentShouldUpdate,\n '%s has a method called ' +\n 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' +\n 'The name is phrased as a question because the function is ' +\n 'expected to return a value.',\n spec.displayName || 'A component'\n );\n warning(\n !Constructor.prototype.componentWillRecieveProps,\n '%s has a method called ' +\n 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?',\n spec.displayName || 'A component'\n );\n }\n\n // Reduce time spent doing lookups by setting these on the prototype.\n for (var methodName in ReactClassInterface) {\n if (!Constructor.prototype[methodName]) {\n Constructor.prototype[methodName] = null;\n }\n }\n\n return Constructor;\n }\n\n return createClass;\n}\n\nmodule.exports = factory;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_create-react-class@15.6.2@create-react-class/factory.js\n// module id = 86\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyObject = {};\n\nif (process.env.NODE_ENV !== 'production') {\n Object.freeze(emptyObject);\n}\n\nmodule.exports = emptyObject;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/emptyObject.js\n// module id = 87\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/invariant.js\n// module id = 88\n// module chunks = 0","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/warning.js\n// module id = 89\n// module chunks = 0","\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/emptyFunction.js\n// module id = 90\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _getOffsetParent = require('./getOffsetParent');\n\nvar _getOffsetParent2 = _interopRequireDefault(_getOffsetParent);\n\nvar _getVisibleRectForElement = require('./getVisibleRectForElement');\n\nvar _getVisibleRectForElement2 = _interopRequireDefault(_getVisibleRectForElement);\n\nvar _adjustForViewport = require('./adjustForViewport');\n\nvar _adjustForViewport2 = _interopRequireDefault(_adjustForViewport);\n\nvar _getRegion = require('./getRegion');\n\nvar _getRegion2 = _interopRequireDefault(_getRegion);\n\nvar _getElFuturePos = require('./getElFuturePos');\n\nvar _getElFuturePos2 = _interopRequireDefault(_getElFuturePos);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// http://yiminghe.iteye.com/blog/1124720\n\n/**\n * align dom node flexibly\n * @author yiminghe@gmail.com\n */\n\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;\n}\n\nfunction isFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top < visibleRect.top || elFuturePos.top + elRegion.height > visibleRect.bottom;\n}\n\nfunction isCompleteFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left > visibleRect.right || elFuturePos.left + elRegion.width < visibleRect.left;\n}\n\nfunction isCompleteFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top > visibleRect.bottom || elFuturePos.top + elRegion.height < visibleRect.top;\n}\n\nfunction isOutOfVisibleRect(target) {\n var visibleRect = (0, _getVisibleRectForElement2['default'])(target);\n var targetRegion = (0, _getRegion2['default'])(target);\n\n return !visibleRect || targetRegion.left + targetRegion.width <= visibleRect.left || targetRegion.top + targetRegion.height <= visibleRect.top || targetRegion.left >= visibleRect.right || targetRegion.top >= visibleRect.bottom;\n}\n\nfunction flip(points, reg, map) {\n var ret = [];\n _utils2['default'].each(points, function (p) {\n ret.push(p.replace(reg, function (m) {\n return map[m];\n }));\n });\n return ret;\n}\n\nfunction flipOffset(offset, index) {\n offset[index] = -offset[index];\n return offset;\n}\n\nfunction convertOffset(str, offsetLen) {\n var n = void 0;\n if (/%$/.test(str)) {\n n = parseInt(str.substring(0, str.length - 1), 10) / 100 * offsetLen;\n } else {\n n = parseInt(str, 10);\n }\n return n || 0;\n}\n\nfunction normalizeOffset(offset, el) {\n offset[0] = convertOffset(offset[0], el.width);\n offset[1] = convertOffset(offset[1], el.height);\n}\n\nfunction domAlign(el, refNode, align) {\n var points = align.points;\n var offset = align.offset || [0, 0];\n var targetOffset = align.targetOffset || [0, 0];\n var overflow = align.overflow;\n var target = align.target || refNode;\n var source = align.source || el;\n offset = [].concat(offset);\n targetOffset = [].concat(targetOffset);\n overflow = overflow || {};\n var newOverflowCfg = {};\n var fail = 0;\n // 当前节点可以被放置的显示区域\n var visibleRect = (0, _getVisibleRectForElement2['default'])(source);\n // 当前节点所占的区域, left/top/width/height\n var elRegion = (0, _getRegion2['default'])(source);\n // 参照节点所占的区域, left/top/width/height\n var refNodeRegion = (0, _getRegion2['default'])(target);\n // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, refNodeRegion);\n // 当前节点将要被放置的位置\n var elFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, points, offset, targetOffset);\n // 当前节点将要所处的区域\n var newElRegion = _utils2['default'].merge(elRegion, elFuturePos);\n\n var isTargetNotOutOfVisible = !isOutOfVisibleRect(target);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTargetNotOutOfVisible) {\n if (overflow.adjustX) {\n // 如果横向不能放下\n if (isFailX(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var newPoints = flip(points, /[lr]/ig, {\n l: 'r',\n r: 'l'\n });\n // 偏移量也反下\n var newOffset = flipOffset(offset, 0);\n var newTargetOffset = flipOffset(targetOffset, 0);\n var newElFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, newPoints, newOffset, newTargetOffset);\n\n if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n\n if (overflow.adjustY) {\n // 如果纵向不能放下\n if (isFailY(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var _newPoints = flip(points, /[tb]/ig, {\n t: 'b',\n b: 't'\n });\n // 偏移量也反下\n var _newOffset = flipOffset(offset, 1);\n var _newTargetOffset = flipOffset(targetOffset, 1);\n var _newElFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, _newPoints, _newOffset, _newTargetOffset);\n\n if (!isCompleteFailY(_newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = _newPoints;\n offset = _newOffset;\n targetOffset = _newTargetOffset;\n }\n }\n }\n\n // 如果失败,重新计算当前节点将要被放置的位置\n if (fail) {\n elFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, points, offset, targetOffset);\n _utils2['default'].mix(newElRegion, elFuturePos);\n }\n\n // 检查反下后的位置是否可以放下了\n // 如果仍然放不下只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isFailX(elFuturePos, elRegion, visibleRect);\n\n newOverflowCfg.adjustY = overflow.adjustY && isFailY(elFuturePos, elRegion, visibleRect);\n\n // 确实要调整,甚至可能会调整高度宽度\n if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {\n newElRegion = (0, _adjustForViewport2['default'])(elFuturePos, elRegion, visibleRect, newOverflowCfg);\n }\n }\n\n // need judge to in case set fixed with in css on height auto element\n if (newElRegion.width !== elRegion.width) {\n _utils2['default'].css(source, 'width', _utils2['default'].width(source) + newElRegion.width - elRegion.width);\n }\n\n if (newElRegion.height !== elRegion.height) {\n _utils2['default'].css(source, 'height', _utils2['default'].height(source) + newElRegion.height - elRegion.height);\n }\n\n // https://github.com/kissyteam/kissy/issues/190\n // 相对于屏幕位置没变,而 left/top 变了\n // 例如
\n _utils2['default'].offset(source, {\n left: newElRegion.left,\n top: newElRegion.top\n }, {\n useCssRight: align.useCssRight,\n useCssBottom: align.useCssBottom,\n useCssTransform: align.useCssTransform\n });\n\n return {\n points: points,\n offset: offset,\n targetOffset: targetOffset,\n overflow: newOverflowCfg\n };\n}\n\ndomAlign.__getOffsetParent = _getOffsetParent2['default'];\n\ndomAlign.__getVisibleRectForElement = _getVisibleRectForElement2['default'];\n\nexports['default'] = domAlign;\n/**\n * 2012-04-26 yiminghe@gmail.com\n * - 优化智能对齐算法\n * - 慎用 resizeXX\n *\n * 2011-07-13 yiminghe@gmail.com note:\n * - 增加智能对齐,以及大小调整选项\n **/\n\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/index.js\n// module id = 91\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _propertyUtils = require('./propertyUtils');\n\nvar RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\n\nvar getComputedStyleX = void 0;\n\nfunction force(x, y) {\n return x + y;\n}\n\nfunction css(el, name, v) {\n var value = v;\n if ((typeof name === 'undefined' ? 'undefined' : _typeof(name)) === 'object') {\n for (var i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n return undefined;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = value + 'px';\n }\n el.style[name] = value;\n return undefined;\n }\n return getComputedStyleX(el, name);\n}\n\nfunction getClientPosition(elem) {\n var box = void 0;\n var x = void 0;\n var y = void 0;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = box.left;\n y = box.top;\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n\n return {\n left: x,\n top: y\n };\n}\n\nfunction getScroll(w, top) {\n var ret = w['page' + (top ? 'Y' : 'X') + 'Offset'];\n var method = 'scroll' + (top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n // ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\n\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\n\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\n\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\n\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n if (node.nodeType === 9) {\n return node;\n }\n return node.ownerDocument;\n}\n\nfunction _getComputedStyle(elem, name, cs) {\n var computedStyle = cs;\n var val = '';\n var d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);\n\n // https://github.com/kissyteam/kissy/issues/61\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n\n return val;\n}\n\nvar _RE_NUM_NO_PX = new RegExp('^(' + RE_NUM + ')(?!px)[a-z%]+$', 'i');\nvar RE_POS = /^(top|right|bottom|left)$/;\nvar CURRENT_STYLE = 'currentStyle';\nvar RUNTIME_STYLE = 'runtimeStyle';\nvar LEFT = 'left';\nvar PX = 'px';\n\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style;\n var left = style[LEFT];\n var rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\n\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\n\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n return option.useCssBottom ? 'bottom' : dir;\n}\n\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n var presetH = -999;\n var presetV = -999;\n var horizontalProperty = getOffsetDirection('left', option);\n var verticalProperty = getOffsetDirection('top', option);\n var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);\n var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n var originalTransition = '';\n var originalOffset = getOffset(elem);\n if ('left' in offset || 'top' in offset) {\n originalTransition = (0, _propertyUtils.getTransitionProperty)(elem) || '';\n (0, _propertyUtils.setTransitionProperty)(elem, 'none');\n }\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = presetH + 'px';\n }\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = presetV + 'px';\n }\n var old = getOffset(elem);\n var originalStyle = {};\n for (var key in offset) {\n if (offset.hasOwnProperty(key)) {\n var dir = getOffsetDirection(key, option);\n var preset = key === 'left' ? presetH : presetV;\n var off = originalOffset[key] - old[key];\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n css(elem, originalStyle);\n // force relayout\n force(elem.offsetTop, elem.offsetLeft);\n if ('left' in offset || 'top' in offset) {\n (0, _propertyUtils.setTransitionProperty)(elem, originalTransition);\n }\n var ret = {};\n for (var _key in offset) {\n if (offset.hasOwnProperty(_key)) {\n var _dir = getOffsetDirection(_key, option);\n var _off = offset[_key] - originalOffset[_key];\n if (_key === _dir) {\n ret[_dir] = originalStyle[_dir] + _off;\n } else {\n ret[_dir] = originalStyle[_dir] - _off;\n }\n }\n }\n css(elem, ret);\n}\n\nfunction setTransform(elem, offset) {\n var originalOffset = getOffset(elem);\n var originalXY = (0, _propertyUtils.getTransformXY)(elem);\n var resultXY = { x: originalXY.x, y: originalXY.y };\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n (0, _propertyUtils.setTransformXY)(elem, resultXY);\n}\n\nfunction setOffset(elem, offset, option) {\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && (0, _propertyUtils.getTransformName)() in document.body.style) {\n setTransform(elem, offset, option);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\n\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\n\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\n\nvar BOX_MODELS = ['margin', 'border', 'padding'];\nvar CONTENT_INDEX = -1;\nvar PADDING_INDEX = 2;\nvar BORDER_INDEX = 1;\nvar MARGIN_INDEX = 0;\n\nfunction swap(elem, options, callback) {\n var old = {};\n var style = elem.style;\n var name = void 0;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\n\nfunction getPBMWidth(elem, props, which) {\n var value = 0;\n var prop = void 0;\n var j = void 0;\n var i = void 0;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp = void 0;\n if (prop === 'border') {\n cssProp = '' + prop + which[i] + 'Width';\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\n\nvar domUtils = {};\n\neach(['Width', 'Height'], function (name) {\n domUtils['doc' + name] = function (refWin) {\n var d = refWin.document;\n return Math.max(\n // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement['scroll' + name],\n // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body['scroll' + name], domUtils['viewport' + name](d));\n };\n\n domUtils['viewport' + name] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = 'client' + name;\n var doc = win.document;\n var body = doc.body;\n var documentElement = doc.documentElement;\n var documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, ex) {\n var extra = ex;\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n var borderBoxValue = name === 'width' ? elem.getBoundingClientRect().width : elem.getBoundingClientRect().height;\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem, computedStyle);\n var cssBoxValue = 0;\n if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = parseFloat(cssBoxValue) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which, computedStyle);\n }\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which, computedStyle) : getPBMWidth(elem, ['margin'], which, computedStyle));\n }\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which, computedStyle);\n}\n\nvar cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block'\n};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay() {\n for (var _len = arguments.length, args = Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var val = void 0;\n var elem = args[0];\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\n\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils['outer' + first] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n\n domUtils[name] = function (elem, v) {\n var val = v;\n if (val !== undefined) {\n if (elem) {\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which, computedStyle);\n }\n return css(elem, name, val);\n }\n return undefined;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\n\nfunction mix(to, from) {\n for (var i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n return to;\n}\n\nvar utils = {\n getWindow: function getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n\n getDocument: getDocument,\n offset: function offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function clone(obj) {\n var i = void 0;\n var ret = {};\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n var overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n return ret;\n },\n\n mix: mix,\n getWindowScrollLeft: function getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop: function getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge: function merge() {\n var ret = {};\n\n for (var _len2 = arguments.length, args = Array(_len2), _key3 = 0; _key3 < _len2; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n for (var i = 0; i < args.length; i++) {\n utils.mix(ret, args[i]);\n }\n return ret;\n },\n\n viewportWidth: 0,\n viewportHeight: 0\n};\n\nmix(utils, domUtils);\n\nexports['default'] = utils;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/utils.js\n// module id = 92\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTransformName = getTransformName;\nexports.setTransitionProperty = setTransitionProperty;\nexports.getTransitionProperty = getTransitionProperty;\nexports.getTransformXY = getTransformXY;\nexports.setTransformXY = setTransformXY;\nvar vendorPrefix = void 0;\n\nvar jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-'\n};\n\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n vendorPrefix = '';\n var style = document.createElement('p').style;\n var testProp = 'Transform';\n for (var key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n return vendorPrefix;\n}\n\nfunction getTransitionName() {\n return getVendorPrefix() ? getVendorPrefix() + 'TransitionProperty' : 'transitionProperty';\n}\n\nfunction getTransformName() {\n return getVendorPrefix() ? getVendorPrefix() + 'Transform' : 'transform';\n}\n\nfunction setTransitionProperty(node, value) {\n var name = getTransitionName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\n\nfunction setTransform(node, value) {\n var name = getTransformName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\n\nfunction getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\n\nfunction getTransformXY(node) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return { x: parseFloat(matrix[12] || matrix[4], 0), y: parseFloat(matrix[13] || matrix[5], 0) };\n }\n return {\n x: 0,\n y: 0\n };\n}\n\nvar matrix2d = /matrix\\((.*)\\)/;\nvar matrix3d = /matrix3d\\((.*)\\)/;\n\nfunction setTransformXY(node, xy) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var arr = void 0;\n var match2d = transform.match(matrix2d);\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, 'matrix(' + arr.join(',') + ')');\n } else {\n var match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, 'matrix3d(' + arr.join(',') + ')');\n }\n } else {\n setTransform(node, 'translateX(' + xy.x + 'px) translateY(' + xy.y + 'px) translateZ(0)');\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/propertyUtils.js\n// module id = 93\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\n\nfunction getOffsetParent(element) {\n if (_utils2['default'].isWindow(element) || element.nodeType === 9) {\n return null;\n }\n // ie 这个也不是完全可行\n /*\n \n
\n 元素 6 高 100px 宽 50px \n
\n
\n */\n // element.offsetParent does the right thing in ie7 and below. Return parent with layout!\n // In other browsers it only includes elements with position absolute, relative or\n // fixed, not elements with overflow set to auto or scroll.\n // if (UA.ie && ieMode < 8) {\n // return element.offsetParent;\n // }\n // 统一的 offsetParent 方法\n var doc = _utils2['default'].getDocument(element);\n var body = doc.body;\n var parent = void 0;\n var positionStyle = _utils2['default'].css(element, 'position');\n var skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';\n\n if (!skipStatic) {\n return element.nodeName.toLowerCase() === 'html' ? null : element.parentNode;\n }\n\n for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {\n positionStyle = _utils2['default'].css(parent, 'position');\n if (positionStyle !== 'static') {\n return parent;\n }\n }\n return null;\n}\n\nexports['default'] = getOffsetParent;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getOffsetParent.js\n// module id = 94\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _getOffsetParent = require('./getOffsetParent');\n\nvar _getOffsetParent2 = _interopRequireDefault(_getOffsetParent);\n\nvar _isAncestorFixed = require('./isAncestorFixed');\n\nvar _isAncestorFixed2 = _interopRequireDefault(_isAncestorFixed);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * 获得元素的显示部分的区域\n */\nfunction getVisibleRectForElement(element) {\n var visibleRect = {\n left: 0,\n right: Infinity,\n top: 0,\n bottom: Infinity\n };\n var el = (0, _getOffsetParent2['default'])(element);\n var doc = _utils2['default'].getDocument(element);\n var win = doc.defaultView || doc.parentWindow;\n var body = doc.body;\n var documentElement = doc.documentElement;\n\n // Determine the size of the visible rect by climbing the dom accounting for\n // all scrollable containers.\n while (el) {\n // clientWidth is zero for inline block elements in ie.\n if ((navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&\n // body may have overflow set on it, yet we still get the entire\n // viewport. In some browsers, el.offsetParent may be\n // document.documentElement, so check for that too.\n el !== body && el !== documentElement && _utils2['default'].css(el, 'overflow') !== 'visible') {\n var pos = _utils2['default'].offset(el);\n // add border\n pos.left += el.clientLeft;\n pos.top += el.clientTop;\n visibleRect.top = Math.max(visibleRect.top, pos.top);\n visibleRect.right = Math.min(visibleRect.right,\n // consider area without scrollBar\n pos.left + el.clientWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, pos.top + el.clientHeight);\n visibleRect.left = Math.max(visibleRect.left, pos.left);\n } else if (el === body || el === documentElement) {\n break;\n }\n el = (0, _getOffsetParent2['default'])(el);\n }\n\n // Set element position to fixed\n // make sure absolute element itself don't affect it's visible area\n // https://github.com/ant-design/ant-design/issues/7601\n var originalPosition = null;\n if (!_utils2['default'].isWindow(element) && element.nodeType !== 9) {\n originalPosition = element.style.position;\n var position = _utils2['default'].css(element, 'position');\n if (position === 'absolute') {\n element.style.position = 'fixed';\n }\n }\n\n var scrollX = _utils2['default'].getWindowScrollLeft(win);\n var scrollY = _utils2['default'].getWindowScrollTop(win);\n var viewportWidth = _utils2['default'].viewportWidth(win);\n var viewportHeight = _utils2['default'].viewportHeight(win);\n var documentWidth = documentElement.scrollWidth;\n var documentHeight = documentElement.scrollHeight;\n\n // Reset element position after calculate the visible area\n if (element.style) {\n element.style.position = originalPosition;\n }\n\n if ((0, _isAncestorFixed2['default'])(element)) {\n // Clip by viewport's size.\n visibleRect.left = Math.max(visibleRect.left, scrollX);\n visibleRect.top = Math.max(visibleRect.top, scrollY);\n visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);\n } else {\n // Clip by document's size.\n var maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);\n visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);\n\n var maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);\n visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);\n }\n\n return visibleRect.top >= 0 && visibleRect.left >= 0 && visibleRect.bottom > visibleRect.top && visibleRect.right > visibleRect.left ? visibleRect : null;\n}\n\nexports['default'] = getVisibleRectForElement;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getVisibleRectForElement.js\n// module id = 95\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports['default'] = isAncestorFixed;\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction isAncestorFixed(element) {\n if (_utils2['default'].isWindow(element) || element.nodeType === 9) {\n return false;\n }\n\n var doc = _utils2['default'].getDocument(element);\n var body = doc.body;\n var parent = null;\n for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {\n var positionStyle = _utils2['default'].css(parent, 'position');\n if (positionStyle === 'fixed') {\n return true;\n }\n }\n return false;\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/isAncestorFixed.js\n// module id = 96\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {\n var pos = _utils2['default'].clone(elFuturePos);\n var size = {\n width: elRegion.width,\n height: elRegion.height\n };\n\n if (overflow.adjustX && pos.left < visibleRect.left) {\n pos.left = visibleRect.left;\n }\n\n // Left edge inside and right edge outside viewport, try to resize it.\n if (overflow.resizeWidth && pos.left >= visibleRect.left && pos.left + size.width > visibleRect.right) {\n size.width -= pos.left + size.width - visibleRect.right;\n }\n\n // Right edge outside viewport, try to move it.\n if (overflow.adjustX && pos.left + size.width > visibleRect.right) {\n // 保证左边界和可视区域左边界对齐\n pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);\n }\n\n // Top edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top < visibleRect.top) {\n pos.top = visibleRect.top;\n }\n\n // Top edge inside and bottom edge outside viewport, try to resize it.\n if (overflow.resizeHeight && pos.top >= visibleRect.top && pos.top + size.height > visibleRect.bottom) {\n size.height -= pos.top + size.height - visibleRect.bottom;\n }\n\n // Bottom edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {\n // 保证上边界和可视区域上边界对齐\n pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);\n }\n\n return _utils2['default'].mix(pos, size);\n}\n\nexports['default'] = adjustForViewport;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/adjustForViewport.js\n// module id = 97\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction getRegion(node) {\n var offset = void 0;\n var w = void 0;\n var h = void 0;\n if (!_utils2['default'].isWindow(node) && node.nodeType !== 9) {\n offset = _utils2['default'].offset(node);\n w = _utils2['default'].outerWidth(node);\n h = _utils2['default'].outerHeight(node);\n } else {\n var win = _utils2['default'].getWindow(node);\n offset = {\n left: _utils2['default'].getWindowScrollLeft(win),\n top: _utils2['default'].getWindowScrollTop(win)\n };\n w = _utils2['default'].viewportWidth(win);\n h = _utils2['default'].viewportHeight(win);\n }\n offset.width = w;\n offset.height = h;\n return offset;\n}\n\nexports['default'] = getRegion;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getRegion.js\n// module id = 98\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _getAlignOffset = require('./getAlignOffset');\n\nvar _getAlignOffset2 = _interopRequireDefault(_getAlignOffset);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {\n var p1 = (0, _getAlignOffset2['default'])(refNodeRegion, points[1]);\n var p2 = (0, _getAlignOffset2['default'])(elRegion, points[0]);\n var diff = [p2.left - p1.left, p2.top - p1.top];\n\n return {\n left: elRegion.left - diff[0] + offset[0] - targetOffset[0],\n top: elRegion.top - diff[1] + offset[1] - targetOffset[1]\n };\n}\n\nexports['default'] = getElFuturePos;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getElFuturePos.js\n// module id = 99\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * 获取 node 上的 align 对齐点 相对于页面的坐标\n */\n\nfunction getAlignOffset(region, align) {\n var V = align.charAt(0);\n var H = align.charAt(1);\n var w = region.width;\n var h = region.height;\n\n var x = region.left;\n var y = region.top;\n\n if (V === 'c') {\n y += h / 2;\n } else if (V === 'b') {\n y += h;\n }\n\n if (H === 'c') {\n x += w / 2;\n } else if (H === 'r') {\n x += w;\n }\n\n return {\n left: x,\n top: y\n };\n}\n\nexports['default'] = getAlignOffset;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getAlignOffset.js\n// module id = 100\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _Transition = require('./Transition');\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * Show the component; triggers the fade in or fade out animation\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * Unmount the component (remove it from the DOM) when it is faded out\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * Run the fade in animation when the component mounts, if it is initially\n * shown\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * Duration of the fade animation in milliseconds, to ensure that finishing\n * callbacks are fired even if the original browser transition end events are\n * canceled\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * Callback fired before the component fades in\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to fade in\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the has component faded in\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * Callback fired before the component fades out\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to fade out\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has faded out\n */\n onExited: _propTypes2[\"default\"].func\n};\n\nvar defaultProps = {\n \"in\": false,\n timeout: 300,\n unmountOnExit: false,\n transitionAppear: false\n};\n\nvar Fade = function (_React$Component) {\n _inherits(Fade, _React$Component);\n\n function Fade() {\n _classCallCheck(this, Fade);\n\n return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n Fade.prototype.render = function render() {\n return _react2[\"default\"].createElement(_Transition2[\"default\"], _extends({}, this.props, {\n className: (0, _classnames2[\"default\"])(this.props.className, 'fade'),\n enteredClassName: 'in',\n enteringClassName: 'in'\n }));\n };\n\n return Fade;\n}(_react2[\"default\"].Component);\n\nFade.propTypes = propTypes;\nFade.defaultProps = defaultProps;\n\nexports[\"default\"] = Fade;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Fade.js\n// module id = 101\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n //是否是手风琴效果\n accordion: _propTypes2[\"default\"].bool,\n //激活的项\n activeKey: _propTypes2[\"default\"].any,\n //默认的激活的项\n defaultActiveKey: _propTypes2[\"default\"].any,\n //选中函数\n onSelect: _propTypes2[\"default\"].func,\n role: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n accordion: false,\n clsPrefix: 'u-panel-group'\n};\n\n// TODO: Use uncontrollable.\n\nvar PanelGroup = function (_React$Component) {\n _inherits(PanelGroup, _React$Component);\n\n function PanelGroup(props, context) {\n _classCallCheck(this, PanelGroup);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleSelect = _this.handleSelect.bind(_this);\n\n _this.state = {\n activeKey: props.defaultActiveKey\n };\n return _this;\n }\n\n PanelGroup.prototype.handleSelect = function handleSelect(key, e) {\n e.preventDefault();\n\n if (this.props.onSelect) {\n this.props.onSelect(key, e);\n }\n\n if (this.state.activeKey === key) {\n key = null;\n }\n\n this.setState({ activeKey: key });\n };\n\n PanelGroup.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n accordion = _props.accordion,\n propsActiveKey = _props.activeKey,\n className = _props.className,\n children = _props.children,\n defaultActiveKey = _props.defaultActiveKey,\n onSelect = _props.onSelect,\n style = _props.style,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['accordion', 'activeKey', 'className', 'children', 'defaultActiveKey', 'onSelect', 'style', 'clsPrefix']);\n\n var activeKey = void 0;\n if (accordion) {\n activeKey = propsActiveKey != null ? propsActiveKey : this.state.activeKey;\n others.role = others.role || 'tablist';\n }\n\n var classes = {};\n classes['' + clsPrefix] = true;\n\n return _react2[\"default\"].createElement(\n 'div',\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(className, classes)\n }),\n _react2[\"default\"].Children.map(children, function (child) {\n if (!_react2[\"default\"].isValidElement(child)) {\n return child;\n }\n var childProps = {\n style: child.props.style\n };\n\n if (accordion) {\n _extends(childProps, {\n headerRole: 'tab',\n panelRole: 'tabpanel',\n collapsible: true,\n expanded: child.props.eventKey === activeKey,\n onSelect: (0, _tinperBeeCore.createChainedFunction)(_this2.handleSelect, child.props.onSelect)\n });\n }\n\n return (0, _react.cloneElement)(child, childProps);\n })\n );\n };\n\n return PanelGroup;\n}(_react2[\"default\"].Component);\n\nPanelGroup.propTypes = propTypes;\nPanelGroup.defaultProps = defaultProps;\n\nexports[\"default\"] = PanelGroup;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/PanelGroup.js\n// module id = 102\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Button = require('./Button');\n\nvar _Button2 = _interopRequireDefault(_Button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Button2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-button@1.0.2@bee-button/build/index.js\n// module id = 103\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * @title 尺寸\n */\n size: _propTypes2[\"default\"].oneOf(['sm', 'xg', 'lg']),\n /**\n * @title 样式\n */\n style: _propTypes2[\"default\"].object,\n /**\n * @title 形状\n */\n shape: _propTypes2[\"default\"].oneOf(['block', 'round', 'border', 'squared', 'floating', 'pillRight', 'pillLeft', 'icon']),\n\n bordered: _propTypes2[\"default\"].bool,\n /**\n * @title 类型\n */\n colors: _propTypes2[\"default\"].oneOf(['primary', 'accent', 'success', 'info', 'warning', 'danger', 'default']),\n /**\n * @title 是否禁用\n * @veIgnore\n */\n disabled: _propTypes2[\"default\"].bool,\n /**\n * @title 类名\n * @veIgnore\n */\n className: _propTypes2[\"default\"].string,\n\n /**\n * @title 的 type\n * @veIgnore\n */\n htmlType: _propTypes2[\"default\"].oneOf(['submit', 'button', 'reset'])\n};\n\nvar defaultProps = {\n disabled: false,\n htmlType: 'button',\n clsPrefix: 'u-button',\n bordered: false\n\n};\n\nvar sizeMap = {\n sm: 'sm',\n xg: 'xg',\n lg: 'lg'\n},\n colorsMap = {\n primary: 'primary',\n accent: 'accent',\n success: 'success',\n info: 'info',\n warning: 'warning',\n danger: 'danger'\n},\n shapeMap = {\n block: 'block',\n round: 'round',\n border: 'border',\n squared: 'squared',\n floating: 'floating',\n pillRight: 'pill-right',\n pillLeft: 'pill-left',\n icon: 'icon'\n};\n\nvar Button = function (_Component) {\n _inherits(Button, _Component);\n\n function Button(props) {\n _classCallCheck(this, Button);\n\n return _possibleConstructorReturn(this, _Component.call(this, props));\n }\n\n Button.prototype.render = function render() {\n var _props = this.props,\n colors = _props.colors,\n shape = _props.shape,\n disabled = _props.disabled,\n className = _props.className,\n size = _props.size,\n bordered = _props.bordered,\n children = _props.children,\n htmlType = _props.htmlType,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['colors', 'shape', 'disabled', 'className', 'size', 'bordered', 'children', 'htmlType', 'clsPrefix']);\n\n var clsObj = {};\n if (className) {\n clsObj[className] = true;\n }\n if (sizeMap[size]) {\n clsObj[clsPrefix + '-' + sizeMap[size]] = true;\n }\n\n if (shapeMap[shape]) {\n clsObj[clsPrefix + '-' + shapeMap[shape]] = true;\n }\n if (colorsMap[colors]) {\n clsObj[clsPrefix + '-' + colorsMap[colors]] = true;\n }\n //clsObj[`${clsPrefix}-border`] = bordered;\n var classes = (0, _classnames2[\"default\"])(clsPrefix, clsObj);\n return _react2[\"default\"].createElement(\n 'button',\n _extends({\n type: htmlType,\n className: classes,\n disabled: disabled\n }, others),\n this.props.children\n );\n };\n\n return Button;\n}(_react.Component);\n\nButton.propTypes = propTypes;\nButton.defaultProps = defaultProps;\n\nexports[\"default\"] = Button;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-button@1.0.2@bee-button/build/Button.js\n// module id = 104\n// module chunks = 0","/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\tlet checkedKeys = {\r\n\t\t\tchecked:this.state.defaultCheckedKeys\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo1.js","import React,{Component} from 'react';\r\nimport RcTree from './Tree';\r\nimport TreeNode from './TreeNode';\r\nimport animation from './openAnimation';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst TreeProps ={\r\n showLine: PropTypes.bool,\r\n className: PropTypes.string,\r\n /** 是否支持多选 */\r\n multiple: PropTypes.bool,\r\n /** 是否自动展开父节点 */\r\n autoExpandParent: PropTypes.bool,\r\n /** checkable状态下节点选择完全受控(父子节点选中状态不再关联)*/\r\n checkStrictly: PropTypes.bool,\r\n /** 是否支持选中 */\r\n checkable: PropTypes.bool,\r\n /** 默认展开所有树节点 */\r\n defaultExpandAll: PropTypes.bool,\r\n /** 默认展开指定的树节点 */\r\n defaultExpandedKeys: PropTypes.array,\r\n /** (受控)展开指定的树节点 */\r\n expandedKeys: PropTypes.array,\r\n /** (受控)选中复选框的树节点 */\r\n checkedKeys: PropTypes.oneOfType([\r\n PropTypes.array,\r\n PropTypes.object\r\n ]),\r\n /** 默认选中复选框的树节点 */\r\n defaultCheckedKeys: PropTypes.array,\r\n /** (受控)设置选中的树节点 */\r\n selectedKeys: PropTypes.array,\r\n /** 默认选中的树节点 */\r\n defaultSelectedKeys: PropTypes.array,\r\n /** 展开/收起节点时触发 */\r\n onExpand: PropTypes.func,\r\n /** 点击复选框触发 */\r\n onCheck: PropTypes.func,\r\n /** 点击树节点触发 */\r\n onSelect: PropTypes.func,\r\n /** filter some AntTreeNodes as you need. it should return true */\r\n filterAntTreeNode: PropTypes.func,\r\n /** 异步加载数据 */\r\n loadData: PropTypes.func,\r\n /** 响应右键点击 */\r\n onRightClick: PropTypes.func,\r\n /** 设置节点可拖拽(IE>8)*/\r\n draggable: PropTypes.bool,\r\n /** 开始拖拽时调用 */\r\n onDragStart: PropTypes.func,\r\n /** dragenter 触发时调用 */\r\n onDragEnter: PropTypes.func,\r\n /** dragover 触发时调用 */\r\n onDragOver: PropTypes.func,\r\n /** dragleave 触发时调用 */\r\n onDragLeave: PropTypes.func,\r\n /** drop 触发时调用 */\r\n onDrop: PropTypes.func,\r\n style: React.CSSProperties,\r\n prefixCls: PropTypes.string,\r\n filterTreeNode: PropTypes.func\r\n}\r\n\r\nconst defaultProps = {\r\n prefixCls: 'u-tree',\r\n checkable: false,\r\n showIcon: false,\r\n openAnimation: animation,\r\n}\r\n\r\nclass Tree extends Component{\r\n\r\n render() {\r\n const props = this.props;\r\n let checkable = props.checkable;\r\n return (\r\n ) : checkable }\r\n >\r\n {this.props.children}\r\n \r\n );\r\n }\r\n}\r\n\r\nTree.TreeNode = TreeNode;\r\nTree.TreeProps = TreeProps;\r\nTree.defaultProps = defaultProps;\r\nexport default Tree;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","/* eslint no-console:0 */\r\nimport React from 'react';\r\nimport classNames from 'classnames';\r\nimport {\r\n loopAllChildren,\r\n isInclude,\r\n getOffset,\r\n filterParentPosition,\r\n handleCheckState,\r\n getCheck,\r\n getStrictlyValue,\r\n arraysEqual,\r\n} from './util';\r\nimport PropTypes from 'prop-types';\r\n\r\n\r\nfunction noop() {}\r\n\r\nclass Tree extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n ['onKeyDown', 'onCheck'].forEach((m) => {\r\n this[m] = this[m].bind(this);\r\n });\r\n this.contextmenuKeys = [];\r\n this.checkedKeysChange = true;\r\n\r\n this.state = {\r\n expandedKeys: this.getDefaultExpandedKeys(props),\r\n checkedKeys: this.getDefaultCheckedKeys(props),\r\n selectedKeys: this.getDefaultSelectedKeys(props),\r\n dragNodesKeys: '',\r\n dragOverNodeKey: '',\r\n dropNodeKey: '',\r\n };\r\n }\r\n\r\n componentWillReceiveProps(nextProps) {\r\n const expandedKeys = this.getDefaultExpandedKeys(nextProps, true);\r\n const checkedKeys = this.getDefaultCheckedKeys(nextProps, true);\r\n const selectedKeys = this.getDefaultSelectedKeys(nextProps, true);\r\n const st = {};\r\n if (expandedKeys) {\r\n st.expandedKeys = expandedKeys;\r\n }\r\n if (checkedKeys) {\r\n if (nextProps.checkedKeys === this.props.checkedKeys) {\r\n this.checkedKeysChange = false;\r\n } else {\r\n this.checkedKeysChange = true;\r\n }\r\n st.checkedKeys = checkedKeys;\r\n }\r\n if (selectedKeys) {\r\n st.selectedKeys = selectedKeys;\r\n }\r\n this.setState(st);\r\n }\r\n\r\n onDragStart(e, treeNode) {\r\n this.dragNode = treeNode;\r\n this.dragNodesKeys = this.getDragNodes(treeNode);\r\n const st = {\r\n dragNodesKeys: this.dragNodesKeys,\r\n };\r\n const expandedKeys = this.getExpandedKeys(treeNode, false);\r\n if (expandedKeys) {\r\n // Controlled expand, save and then reset\r\n this.getRawExpandedKeys();\r\n st.expandedKeys = expandedKeys;\r\n }\r\n this.setState(st);\r\n this.props.onDragStart({\r\n event: e,\r\n node: treeNode,\r\n });\r\n this._dropTrigger = false;\r\n }\r\n\r\n onDragEnterGap(e, treeNode) {\r\n const offsetTop = (0, getOffset)(treeNode.refs.selectHandle).top;\r\n const offsetHeight = treeNode.refs.selectHandle.offsetHeight;\r\n const pageY = e.pageY;\r\n const gapHeight = 2;\r\n if (pageY > offsetTop + offsetHeight - gapHeight) {\r\n this.dropPosition = 1;\r\n return 1;\r\n }\r\n if (pageY < offsetTop + gapHeight) {\r\n this.dropPosition = -1;\r\n return -1;\r\n }\r\n this.dropPosition = 0;\r\n return 0;\r\n }\r\n\r\n onDragEnter(e, treeNode) {\r\n const enterGap = this.onDragEnterGap(e, treeNode);\r\n if (this.dragNode.props.eventKey === treeNode.props.eventKey && enterGap === 0) {\r\n this.setState({\r\n dragOverNodeKey: '',\r\n });\r\n return;\r\n }\r\n const st = {\r\n dragOverNodeKey: treeNode.props.eventKey,\r\n };\r\n const expandedKeys = this.getExpandedKeys(treeNode, true);\r\n if (expandedKeys) {\r\n this.getRawExpandedKeys();\r\n st.expandedKeys = expandedKeys;\r\n }\r\n this.setState(st);\r\n this.props.onDragEnter({\r\n event: e,\r\n node: treeNode,\r\n expandedKeys: expandedKeys && [...expandedKeys] || [...this.state.expandedKeys],\r\n });\r\n }\r\n\r\n onDragOver(e, treeNode) {\r\n this.props.onDragOver({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onDragLeave(e, treeNode) {\r\n this.props.onDragLeave({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onDrop(e, treeNode) {\r\n const key = treeNode.props.eventKey;\r\n this.setState({\r\n dragOverNodeKey: '',\r\n dropNodeKey: key,\r\n });\r\n if (this.dragNodesKeys.indexOf(key) > -1) {\r\n if (console.warn) {\r\n console.warn('can not drop to dragNode(include it\\'s children node)');\r\n }\r\n return false;\r\n }\r\n\r\n const posArr = treeNode.props.pos.split('-');\r\n const res = {\r\n event: e,\r\n node: treeNode,\r\n dragNode: this.dragNode,\r\n dragNodesKeys: [...this.dragNodesKeys],\r\n dropPosition: this.dropPosition + Number(posArr[posArr.length - 1]),\r\n };\r\n if (this.dropPosition !== 0) {\r\n res.dropToGap = true;\r\n }\r\n if ('expandedKeys' in this.props) {\r\n res.rawExpandedKeys = [...this._rawExpandedKeys] || [...this.state.expandedKeys];\r\n }\r\n this.props.onDrop(res);\r\n this._dropTrigger = true;\r\n }\r\n\r\n onDragEnd(e, treeNode) {\r\n this.setState({\r\n dragOverNodeKey: '',\r\n });\r\n this.props.onDragEnd({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onExpand(treeNode) {\r\n const expanded = !treeNode.props.expanded;\r\n const controlled = 'expandedKeys' in this.props;\r\n const expandedKeys = [...this.state.expandedKeys];\r\n const index = expandedKeys.indexOf(treeNode.props.eventKey);\r\n if (expanded && index === -1) {\r\n expandedKeys.push(treeNode.props.eventKey);\r\n } else if (!expanded && index > -1) {\r\n expandedKeys.splice(index, 1);\r\n }\r\n if (!controlled) {\r\n this.setState({\r\n expandedKeys\r\n });\r\n }\r\n this.props.onExpand(expandedKeys, {\r\n node: treeNode,\r\n expanded\r\n });\r\n\r\n // after data loaded, need set new expandedKeys\r\n if (expanded && this.props.loadData) {\r\n return this.props.loadData(treeNode).then(() => {\r\n if (!controlled) {\r\n this.setState({\r\n expandedKeys\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n onCheck(treeNode) {\r\n let checked = !treeNode.props.checked;\r\n if (treeNode.props.halfChecked) {\r\n checked = true;\r\n }\r\n const key = treeNode.props.eventKey;\r\n let checkedKeys = [...this.state.checkedKeys];\r\n const index = checkedKeys.indexOf(key);\r\n\r\n const newSt = {\r\n event: 'check',\r\n node: treeNode,\r\n checked,\r\n };\r\n\r\n if (this.props.checkStrictly) {\r\n if (checked && index === -1) {\r\n checkedKeys.push(key);\r\n }\r\n if (!checked && index > -1) {\r\n checkedKeys.splice(index, 1);\r\n }\r\n this.treeNodesStates[treeNode.props.pos].checked = checked;\r\n newSt.checkedNodes = [];\r\n loopAllChildren(this.props.children, (item, ind, pos, keyOrPos) => {\r\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\r\n newSt.checkedNodes.push(item);\r\n }\r\n });\r\n if (!('checkedKeys' in this.props)) {\r\n this.setState({\r\n checkedKeys,\r\n });\r\n }\r\n const halfChecked = this.props.checkedKeys ? this.props.checkedKeys.halfChecked : [];\r\n this.props.onCheck(getStrictlyValue(checkedKeys, halfChecked), newSt);\r\n } else {\r\n if (checked && index === -1) {\r\n this.treeNodesStates[treeNode.props.pos].checked = true;\r\n const checkedPositions = [];\r\n Object.keys(this.treeNodesStates).forEach(i => {\r\n if (this.treeNodesStates[i].checked) {\r\n checkedPositions.push(i);\r\n }\r\n });\r\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\r\n }\r\n if (!checked) {\r\n this.treeNodesStates[treeNode.props.pos].checked = false;\r\n this.treeNodesStates[treeNode.props.pos].halfChecked = false;\r\n handleCheckState(this.treeNodesStates, [treeNode.props.pos], false);\r\n }\r\n const checkKeys = getCheck(this.treeNodesStates);\r\n newSt.checkedNodes = checkKeys.checkedNodes;\r\n newSt.checkedNodesPositions = checkKeys.checkedNodesPositions;\r\n newSt.halfCheckedKeys = checkKeys.halfCheckedKeys;\r\n this.checkKeys = checkKeys;\r\n\r\n this._checkedKeys = checkedKeys = checkKeys.checkedKeys;\r\n if (!('checkedKeys' in this.props)) {\r\n this.setState({\r\n checkedKeys,\r\n });\r\n }\r\n this.props.onCheck(checkedKeys, newSt);\r\n }\r\n }\r\n\r\n onSelect(treeNode) {\r\n const props = this.props;\r\n const selectedKeys = [...this.state.selectedKeys];\r\n const eventKey = treeNode.props.eventKey;\r\n const index = selectedKeys.indexOf(eventKey);\r\n let selected;\r\n if (index !== -1) {\r\n selected = false;\r\n selectedKeys.splice(index, 1);\r\n } else {\r\n selected = true;\r\n if (!props.multiple) {\r\n selectedKeys.length = 0;\r\n }\r\n selectedKeys.push(eventKey);\r\n }\r\n const selectedNodes = [];\r\n if (selectedKeys.length) {\r\n loopAllChildren(this.props.children, (item) => {\r\n if (selectedKeys.indexOf(item.key) !== -1) {\r\n selectedNodes.push(item);\r\n }\r\n });\r\n }\r\n const newSt = {\r\n event: 'select',\r\n node: treeNode,\r\n selected,\r\n selectedNodes,\r\n };\r\n if (!('selectedKeys' in this.props)) {\r\n this.setState({\r\n selectedKeys,\r\n });\r\n }\r\n props.onSelect(selectedKeys, newSt);\r\n }\r\n\r\n onMouseEnter(e, treeNode) {\r\n this.props.onMouseEnter({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onMouseLeave(e, treeNode) {\r\n this.props.onMouseLeave({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onContextMenu(e, treeNode) {\r\n const selectedKeys = [...this.state.selectedKeys];\r\n const eventKey = treeNode.props.eventKey;\r\n if (this.contextmenuKeys.indexOf(eventKey) === -1) {\r\n this.contextmenuKeys.push(eventKey);\r\n }\r\n this.contextmenuKeys.forEach((key) => {\r\n const index = selectedKeys.indexOf(key);\r\n if (index !== -1) {\r\n selectedKeys.splice(index, 1);\r\n }\r\n });\r\n if (selectedKeys.indexOf(eventKey) === -1) {\r\n selectedKeys.push(eventKey);\r\n }\r\n this.setState({\r\n selectedKeys,\r\n });\r\n this.props.onRightClick({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n // all keyboard events callbacks run from here at first\r\n onKeyDown(e) {\r\n e.preventDefault();\r\n }\r\n\r\n getFilterExpandedKeys(props, expandKeyProp, expandAll) {\r\n const keys = props[expandKeyProp];\r\n if (!expandAll && !props.autoExpandParent) {\r\n return keys || [];\r\n }\r\n const expandedPositionArr = [];\r\n if (props.autoExpandParent) {\r\n loopAllChildren(props.children, (item, index, pos, newKey) => {\r\n if (keys.indexOf(newKey) > -1) {\r\n expandedPositionArr.push(pos);\r\n }\r\n });\r\n }\r\n const filterExpandedKeys = [];\r\n loopAllChildren(props.children, (item, index, pos, newKey) => {\r\n if (expandAll) {\r\n filterExpandedKeys.push(newKey);\r\n } else if (props.autoExpandParent) {\r\n expandedPositionArr.forEach(p => {\r\n if ((p.split('-').length > pos.split('-').length && isInclude(pos.split('-'), p.split('-')) || pos === p) && filterExpandedKeys.indexOf(newKey) === -1) {\r\n filterExpandedKeys.push(newKey);\r\n }\r\n });\r\n }\r\n });\r\n return filterExpandedKeys.length ? filterExpandedKeys : keys;\r\n }\r\n\r\n getDefaultExpandedKeys(props, willReceiveProps) {\r\n let expandedKeys = willReceiveProps ? undefined :\r\n this.getFilterExpandedKeys(props, 'defaultExpandedKeys',\r\n props.defaultExpandedKeys.length ? false : props.defaultExpandAll);\r\n if ('expandedKeys' in props) {\r\n expandedKeys = (props.autoExpandParent ?\r\n this.getFilterExpandedKeys(props, 'expandedKeys', false) :\r\n props.expandedKeys) || [];\r\n }\r\n return expandedKeys;\r\n }\r\n\r\n getDefaultCheckedKeys(props, willReceiveProps) {\r\n let checkedKeys = willReceiveProps ? undefined : props.defaultCheckedKeys;\r\n if ('checkedKeys' in props) {\r\n checkedKeys = props.checkedKeys || [];\r\n if (props.checkStrictly) {\r\n if (props.checkedKeys.checked) {\r\n checkedKeys = props.checkedKeys.checked;\r\n } else if (!Array.isArray(props.checkedKeys)) {\r\n checkedKeys = [];\r\n }\r\n }\r\n }\r\n return checkedKeys;\r\n }\r\n\r\n getDefaultSelectedKeys(props, willReceiveProps) {\r\n const getKeys = (keys) => {\r\n if (props.multiple) {\r\n return [...keys];\r\n }\r\n if (keys.length) {\r\n return [keys[0]];\r\n }\r\n return keys;\r\n };\r\n let selectedKeys = willReceiveProps ? undefined : getKeys(props.defaultSelectedKeys);\r\n if ('selectedKeys' in props) {\r\n selectedKeys = getKeys(props.selectedKeys);\r\n }\r\n return selectedKeys;\r\n }\r\n\r\n getRawExpandedKeys() {\r\n if (!this._rawExpandedKeys && ('expandedKeys' in this.props)) {\r\n this._rawExpandedKeys = [...this.state.expandedKeys];\r\n }\r\n }\r\n\r\n getOpenTransitionName() {\r\n const props = this.props;\r\n let transitionName = props.openTransitionName;\r\n const animationName = props.openAnimation;\r\n if (!transitionName && typeof animationName === 'string') {\r\n transitionName = `${props.prefixCls}-open-${animationName}`;\r\n }\r\n return transitionName;\r\n }\r\n\r\n getDragNodes(treeNode) {\r\n const dragNodesKeys = [];\r\n const tPArr = treeNode.props.pos.split('-');\r\n loopAllChildren(this.props.children, (item, index, pos, newKey) => {\r\n const pArr = pos.split('-');\r\n if (treeNode.props.pos === pos || tPArr.length < pArr.length && isInclude(tPArr, pArr)) {\r\n dragNodesKeys.push(newKey);\r\n }\r\n });\r\n return dragNodesKeys;\r\n }\r\n\r\n getExpandedKeys(treeNode, expand) {\r\n const key = treeNode.props.eventKey;\r\n const expandedKeys = this.state.expandedKeys;\r\n const expandedIndex = expandedKeys.indexOf(key);\r\n let exKeys;\r\n if (expandedIndex > -1 && !expand) {\r\n exKeys = [...expandedKeys];\r\n exKeys.splice(expandedIndex, 1);\r\n return exKeys;\r\n }\r\n if (expand && expandedKeys.indexOf(key) === -1) {\r\n return expandedKeys.concat([key]);\r\n }\r\n }\r\n\r\n filterTreeNode(treeNode) {\r\n const filterTreeNode = this.props.filterTreeNode;\r\n if (typeof filterTreeNode !== 'function' || treeNode.props.disabled) {\r\n return false;\r\n }\r\n return filterTreeNode.call(this, treeNode);\r\n }\r\n\r\n renderTreeNode(child, index, level = 0) {\r\n const pos = `${level}-${index}`;\r\n const key = child.key || pos;\r\n const state = this.state;\r\n const props = this.props;\r\n\r\n // prefer to child's own selectable property if passed\r\n let selectable = props.selectable;\r\n if (child.props.hasOwnProperty('selectable')) {\r\n selectable = child.props.selectable;\r\n }\r\n\r\n const cloneProps = {\r\n ref: `treeNode-${key}`,\r\n root: this,\r\n eventKey: key,\r\n pos,\r\n selectable,\r\n loadData: props.loadData,\r\n onMouseEnter: props.onMouseEnter,\r\n onMouseLeave: props.onMouseLeave,\r\n onRightClick: props.onRightClick,\r\n prefixCls: props.prefixCls,\r\n showLine: props.showLine,\r\n showIcon: props.showIcon,\r\n draggable: props.draggable,\r\n dragOver: state.dragOverNodeKey === key && this.dropPosition === 0,\r\n dragOverGapTop: state.dragOverNodeKey === key && this.dropPosition === -1,\r\n dragOverGapBottom: state.dragOverNodeKey === key && this.dropPosition === 1,\r\n _dropTrigger: this._dropTrigger,\r\n expanded: state.expandedKeys.indexOf(key) !== -1,\r\n selected: state.selectedKeys.indexOf(key) !== -1,\r\n openTransitionName: this.getOpenTransitionName(),\r\n openAnimation: props.openAnimation,\r\n filterTreeNode: this.filterTreeNode.bind(this),\r\n openIcon: props.openIcon,\r\n closeIcon: props.closeIcon\r\n };\r\n if (props.checkable) {\r\n cloneProps.checkable = props.checkable;\r\n if (props.checkStrictly) {\r\n if (state.checkedKeys) {\r\n cloneProps.checked = state.checkedKeys.indexOf(key) !== -1 || false;\r\n }\r\n if (props.checkedKeys && props.checkedKeys.halfChecked) {\r\n cloneProps.halfChecked = props.checkedKeys.halfChecked.indexOf(key) !== -1 || false;\r\n } else {\r\n cloneProps.halfChecked = false;\r\n }\r\n } else {\r\n if (this.checkedKeys) {\r\n cloneProps.checked = this.checkedKeys.indexOf(key) !== -1 || false;\r\n }\r\n cloneProps.halfChecked = this.halfCheckedKeys.indexOf(key) !== -1;\r\n }\r\n }\r\n if (this.treeNodesStates && this.treeNodesStates[pos]) {\r\n Object.assign(cloneProps, this.treeNodesStates[pos].siblingPosition);\r\n }\r\n return React.cloneElement(child, cloneProps);\r\n }\r\n\r\n render() {\r\n const props = this.props;\r\n let showLineCls = \"\";\r\n if (props.showLine) {\r\n showLineCls = `${props.prefixCls}-show-line`;\r\n }\r\n const domProps = {\r\n className: classNames(props.className, props.prefixCls, showLineCls),\r\n role: 'tree-node',\r\n };\r\n\r\n if (props.focusable) {\r\n domProps.tabIndex = '0';\r\n domProps.onKeyDown = this.onKeyDown;\r\n }\r\n const getTreeNodesStates = () => {\r\n this.treeNodesStates = {};\r\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\r\n this.treeNodesStates[pos] = {\r\n siblingPosition,\r\n };\r\n });\r\n };\r\n if (props.showLine && !props.checkable) {\r\n getTreeNodesStates();\r\n }\r\n if (props.checkable && (this.checkedKeysChange || props.loadData)) {\r\n if (props.checkStrictly) {\r\n getTreeNodesStates();\r\n } else if (props._treeNodesStates) {\r\n this.treeNodesStates = props._treeNodesStates.treeNodesStates;\r\n this.halfCheckedKeys = props._treeNodesStates.halfCheckedKeys;\r\n this.checkedKeys = props._treeNodesStates.checkedKeys;\r\n } else {\r\n const checkedKeys = this.state.checkedKeys;\r\n let checkKeys;\r\n if (!props.loadData && this.checkKeys && this._checkedKeys &&\r\n arraysEqual(this._checkedKeys, checkedKeys)) {\r\n // if checkedKeys the same as _checkedKeys from onCheck, use _checkedKeys.\r\n checkKeys = this.checkKeys;\r\n } else {\r\n const checkedPositions = [];\r\n this.treeNodesStates = {};\r\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\r\n this.treeNodesStates[pos] = {\r\n node: item,\r\n key: keyOrPos,\r\n checked: false,\r\n halfChecked: false,\r\n siblingPosition,\r\n };\r\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\r\n this.treeNodesStates[pos].checked = true;\r\n checkedPositions.push(pos);\r\n }\r\n });\r\n // if the parent node's key exists, it all children node will be checked\r\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\r\n checkKeys = getCheck(this.treeNodesStates);\r\n }\r\n this.halfCheckedKeys = checkKeys.halfCheckedKeys;\r\n this.checkedKeys = checkKeys.checkedKeys;\r\n }\r\n }\r\n\r\n return (\r\n \r\n {React.Children.map(props.children, this.renderTreeNode, this)}\r\n \r\n );\r\n }\r\n}\r\n\r\nTree.propTypes = {\r\n prefixCls: PropTypes.string,\r\n children: PropTypes.any,\r\n showLine: PropTypes.bool,\r\n showIcon: PropTypes.bool,\r\n selectable: PropTypes.bool,\r\n multiple: PropTypes.bool,\r\n checkable: PropTypes.oneOfType([\r\n PropTypes.bool,\r\n PropTypes.node,\r\n ]),\r\n _treeNodesStates: PropTypes.object,\r\n checkStrictly: PropTypes.bool,\r\n draggable: PropTypes.bool,\r\n autoExpandParent: PropTypes.bool,\r\n defaultExpandAll: PropTypes.bool,\r\n defaultExpandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n defaultCheckedKeys: PropTypes.arrayOf(PropTypes.string),\r\n checkedKeys: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.string),\r\n PropTypes.object,\r\n ]),\r\n defaultSelectedKeys: PropTypes.arrayOf(PropTypes.string),\r\n selectedKeys: PropTypes.arrayOf(PropTypes.string),\r\n onExpand: PropTypes.func,\r\n onCheck: PropTypes.func,\r\n onSelect: PropTypes.func,\r\n loadData: PropTypes.func,\r\n onMouseEnter: PropTypes.func,\r\n onMouseLeave: PropTypes.func,\r\n onRightClick: PropTypes.func,\r\n onDragStart: PropTypes.func,\r\n onDragEnter: PropTypes.func,\r\n onDragOver: PropTypes.func,\r\n onDragLeave: PropTypes.func,\r\n onDrop: PropTypes.func,\r\n onDragEnd: PropTypes.func,\r\n filterTreeNode: PropTypes.func,\r\n openTransitionName: PropTypes.string,\r\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\r\n};\r\n\r\nTree.defaultProps = {\r\n prefixCls: 'rc-tree',\r\n showLine: false,\r\n showIcon: true,\r\n selectable: true,\r\n multiple: false,\r\n checkable: false,\r\n checkStrictly: false,\r\n draggable: false,\r\n autoExpandParent: true,\r\n defaultExpandAll: false,\r\n defaultExpandedKeys: [],\r\n defaultCheckedKeys: [],\r\n defaultSelectedKeys: [],\r\n onExpand: noop,\r\n onCheck: noop,\r\n onSelect: noop,\r\n onDragStart: noop,\r\n onDragEnter: noop,\r\n onDragOver: noop,\r\n onDragLeave: noop,\r\n onDrop: noop,\r\n onDragEnd: noop,\r\n};\r\n\r\nexport default Tree;\n\n\n// WEBPACK FOOTER //\n// ./src/Tree.js","/* eslint no-loop-func: 0*/\r\n\r\nimport React from 'react';\r\n\r\nexport function browser(navigator) {\r\n let tem;\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return `IE ${tem[1] || ''}`;\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\b(OPR|Edge)\\/(\\d+)/);\r\n if (tem) return tem.slice(1).join(' ').replace('OPR', 'Opera');\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem) {\r\n M.splice(1, 1, tem[1]);\r\n }\r\n return M.join(' ');\r\n}\r\n\r\n// export function getOffset(el) {\r\n// const obj = el.getBoundingClientRect();\r\n// return {\r\n// left: obj.left + document.body.scrollLeft,\r\n// top: obj.top + document.body.scrollTop,\r\n// width: obj.width,\r\n// height: obj.height\r\n// };\r\n// }\r\n\r\n// // iscroll offset\r\n// offset = function (el) {\r\n// var left = -el.offsetLeft,\r\n// top = -el.offsetTop;\r\n\r\n// // jshint -W084\r\n// while (el = el.offsetParent) {\r\n// left -= el.offsetLeft;\r\n// top -= el.offsetTop;\r\n// }\r\n// // jshint +W084\r\n\r\n// return {\r\n// left: left,\r\n// top: top\r\n// };\r\n// }\r\n\r\n/* eslint-disable */\r\nexport function getOffset(ele) {\r\n let doc, win, docElem, rect;\r\n\r\n if (!ele.getClientRects().length) {\r\n return { top: 0, left: 0 };\r\n }\r\n\r\n rect = ele.getBoundingClientRect();\r\n\r\n if (rect.width || rect.height) {\r\n doc = ele.ownerDocument;\r\n win = doc.defaultView;\r\n docElem = doc.documentElement;\r\n\r\n return {\r\n top: rect.top + win.pageYOffset - docElem.clientTop,\r\n left: rect.left + win.pageXOffset - docElem.clientLeft\r\n };\r\n }\r\n\r\n return rect;\r\n}\r\n/* eslint-enable */\r\n\r\nfunction getChildrenlength(children) {\r\n let len = 1;\r\n if (Array.isArray(children)) {\r\n len = children.length;\r\n }\r\n return len;\r\n}\r\n\r\nfunction getSiblingPosition(index, len, siblingPosition) {\r\n if (len === 1) {\r\n siblingPosition.first = true;\r\n siblingPosition.last = true;\r\n } else {\r\n siblingPosition.first = index === 0;\r\n siblingPosition.last = index === len - 1;\r\n }\r\n return siblingPosition;\r\n}\r\n\r\nexport function loopAllChildren(childs, callback, parent) {\r\n const loop = (children, level, _parent) => {\r\n const len = getChildrenlength(children);\r\n React.Children.forEach(children, (item, index) => {\r\n const pos = `${level}-${index}`;\r\n if (item.props.children && item.type && item.type.isTreeNode) {\r\n loop(item.props.children, pos, { node: item, pos });\r\n }\r\n callback(item, index, pos, item.key || pos, getSiblingPosition(index, len, {}), _parent);\r\n });\r\n };\r\n loop(childs, 0, parent);\r\n}\r\n\r\nexport function isInclude(smallArray, bigArray) {\r\n return smallArray.every((ii, i) => {\r\n return ii === bigArray[i];\r\n });\r\n}\r\n// console.log(isInclude(['0', '1'], ['0', '10', '1']));\r\n\r\n\r\n// arr.length === 628, use time: ~20ms\r\nexport function filterParentPosition(arr) {\r\n const levelObj = {};\r\n arr.forEach((item) => {\r\n const posLen = item.split('-').length;\r\n if (!levelObj[posLen]) {\r\n levelObj[posLen] = [];\r\n }\r\n levelObj[posLen].push(item);\r\n });\r\n const levelArr = Object.keys(levelObj).sort();\r\n for (let i = 0; i < levelArr.length; i++) {\r\n if (levelArr[i + 1]) {\r\n levelObj[levelArr[i]].forEach(ii => {\r\n for (let j = i + 1; j < levelArr.length; j++) {\r\n levelObj[levelArr[j]].forEach((_i, index) => {\r\n if (isInclude(ii.split('-'), _i.split('-'))) {\r\n levelObj[levelArr[j]][index] = null;\r\n }\r\n });\r\n levelObj[levelArr[j]] = levelObj[levelArr[j]].filter(p => p);\r\n }\r\n });\r\n }\r\n }\r\n let nArr = [];\r\n levelArr.forEach(i => {\r\n nArr = nArr.concat(levelObj[i]);\r\n });\r\n return nArr;\r\n}\r\n// console.log(filterParentPosition(\r\n// ['0-2', '0-3-3', '0-10', '0-10-0', '0-0-1', '0-0', '0-1-1', '0-1']\r\n// ));\r\n\r\n\r\nfunction stripTail(str) {\r\n const arr = str.match(/(.+)(-[^-]+)$/);\r\n let st = '';\r\n if (arr && arr.length === 3) {\r\n st = arr[1];\r\n }\r\n return st;\r\n}\r\nfunction splitPosition(pos) {\r\n return pos.split('-');\r\n}\r\n\r\nexport function handleCheckState(obj, checkedPositionArr, checkIt) {\r\n // console.log(stripTail('0-101-000'));\r\n let objKeys = Object.keys(obj);\r\n // let s = Date.now();\r\n objKeys.forEach((i, index) => {\r\n const iArr = splitPosition(i);\r\n let saved = false;\r\n checkedPositionArr.forEach((_pos) => {\r\n // 设置子节点,全选或全不选\r\n const _posArr = splitPosition(_pos);\r\n if (iArr.length > _posArr.length && isInclude(_posArr, iArr)) {\r\n obj[i].halfChecked = false;\r\n obj[i].checked = checkIt;\r\n objKeys[index] = null;\r\n }\r\n if (iArr[0] === _posArr[0] && iArr[1] === _posArr[1]) {\r\n // 如果\r\n saved = true;\r\n }\r\n });\r\n if (!saved) {\r\n objKeys[index] = null;\r\n }\r\n });\r\n // TODO: 循环 2470000 次耗时约 1400 ms。 性能瓶颈!\r\n // console.log(Date.now()-s, checkedPositionArr.length * objKeys.length);\r\n objKeys = objKeys.filter(i => i); // filter non null;\r\n\r\n for (let pIndex = 0; pIndex < checkedPositionArr.length; pIndex++) {\r\n // 循环设置父节点的 选中 或 半选状态\r\n const loop = (__pos) => {\r\n const _posLen = splitPosition(__pos).length;\r\n if (_posLen <= 2) { // e.g. '0-0', '0-1'\r\n return;\r\n }\r\n let sibling = 0;\r\n let siblingChecked = 0;\r\n const parentPosition = stripTail(__pos);\r\n objKeys.forEach((i /* , index*/) => {\r\n const iArr = splitPosition(i);\r\n if (iArr.length === _posLen && isInclude(splitPosition(parentPosition), iArr)) {\r\n sibling++;\r\n if (obj[i].checked) {\r\n siblingChecked++;\r\n const _i = checkedPositionArr.indexOf(i);\r\n if (_i > -1) {\r\n checkedPositionArr.splice(_i, 1);\r\n if (_i <= pIndex) {\r\n pIndex--;\r\n }\r\n }\r\n } else if (obj[i].halfChecked) {\r\n siblingChecked += 0.5;\r\n }\r\n // objKeys[index] = null;\r\n }\r\n });\r\n // objKeys = objKeys.filter(i => i); // filter non null;\r\n const parent = obj[parentPosition];\r\n // sibling 不会等于0\r\n // 全不选 - 全选 - 半选\r\n if (siblingChecked === 0) {\r\n parent.checked = false;\r\n parent.halfChecked = false;\r\n } else if (siblingChecked === sibling) {\r\n parent.checked = true;\r\n parent.halfChecked = false;\r\n } else {\r\n parent.halfChecked = true;\r\n parent.checked = false;\r\n }\r\n loop(parentPosition);\r\n };\r\n loop(checkedPositionArr[pIndex], pIndex);\r\n }\r\n // console.log(Date.now()-s, objKeys.length, checkIt);\r\n}\r\n\r\nexport function getCheck(treeNodesStates) {\r\n const halfCheckedKeys = [];\r\n const checkedKeys = [];\r\n const checkedNodes = [];\r\n const checkedNodesPositions = [];\r\n Object.keys(treeNodesStates).forEach((item) => {\r\n const itemObj = treeNodesStates[item];\r\n if (itemObj.checked) {\r\n checkedKeys.push(itemObj.key);\r\n checkedNodes.push(itemObj.node);\r\n checkedNodesPositions.push({ node: itemObj.node, pos: item });\r\n } else if (itemObj.halfChecked) {\r\n halfCheckedKeys.push(itemObj.key);\r\n }\r\n });\r\n return {\r\n halfCheckedKeys, checkedKeys, checkedNodes, checkedNodesPositions, treeNodesStates,\r\n };\r\n}\r\n\r\nexport function getStrictlyValue(checkedKeys, halfChecked) {\r\n if (halfChecked) {\r\n return { checked: checkedKeys, halfChecked };\r\n }\r\n return checkedKeys;\r\n}\r\n\r\nexport function arraysEqual(a, b) {\r\n if (a === b) return true;\r\n if (a === null || typeof a === 'undefined' || b === null || typeof b === 'undefined') {\r\n return false;\r\n }\r\n if (a.length !== b.length) return false;\r\n\r\n // If you don't care about the order of the elements inside\r\n // the array, you should sort both arrays here.\r\n\r\n for (let i = 0; i < a.length; ++i) {\r\n if (a[i] !== b[i]) return false;\r\n }\r\n return true;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/util.js","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport Animate from 'bee-animate';\r\nimport {\r\n browser\r\n} from './util';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst browserUa = typeof window !== 'undefined' ? browser(window.navigator) : '';\r\nconst ieOrEdge = /.*(IE|Edge).+/.test(browserUa);\r\n// const uaArray = browserUa.split(' ');\r\n// const gtIE8 = uaArray.length !== 2 || uaArray[0].indexOf('IE') === -1 || Number(uaArray[1]) > 8;\r\n\r\nconst defaultTitle = '---';\r\n\r\nclass TreeNode extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n [\r\n 'onExpand',\r\n 'onCheck',\r\n 'onContextMenu',\r\n 'onMouseEnter',\r\n 'onMouseLeave',\r\n 'onDragStart',\r\n 'onDragEnter',\r\n 'onDragOver',\r\n 'onDragLeave',\r\n 'onDrop',\r\n 'onDragEnd',\r\n ].forEach((m) => {\r\n this[m] = this[m].bind(this);\r\n });\r\n this.state = {\r\n dataLoading: false,\r\n dragNodeHighlight: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n if (!this.props.root._treeNodeInstances) {\r\n this.props.root._treeNodeInstances = [];\r\n }\r\n this.props.root._treeNodeInstances.push(this);\r\n }\r\n // shouldComponentUpdate(nextProps) {\r\n // if (!nextProps.expanded) {\r\n // return false;\r\n // }\r\n // return true;\r\n // }\r\n\r\n onCheck() {\r\n this.props.root.onCheck(this);\r\n }\r\n\r\n onSelect() {\r\n this.props.root.onSelect(this);\r\n }\r\n\r\n onMouseEnter(e) {\r\n e.preventDefault();\r\n this.props.root.onMouseEnter(e, this);\r\n }\r\n\r\n onMouseLeave(e) {\r\n e.preventDefault();\r\n this.props.root.onMouseLeave(e, this);\r\n }\r\n\r\n onContextMenu(e) {\r\n e.preventDefault();\r\n this.props.root.onContextMenu(e, this);\r\n }\r\n\r\n onDragStart(e) {\r\n // console.log('dragstart', this.props.eventKey, e);\r\n // e.preventDefault();\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: true,\r\n });\r\n this.props.root.onDragStart(e, this);\r\n try {\r\n // ie throw error\r\n // firefox-need-it\r\n e.dataTransfer.setData('text/plain', '');\r\n } finally {\r\n // empty\r\n }\r\n }\r\n\r\n onDragEnter(e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.props.root.onDragEnter(e, this);\r\n }\r\n\r\n onDragOver(e) {\r\n // todo disabled\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.props.root.onDragOver(e, this);\r\n return false;\r\n }\r\n\r\n onDragLeave(e) {\r\n e.stopPropagation();\r\n this.props.root.onDragLeave(e, this);\r\n }\r\n\r\n onDrop(e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: false,\r\n });\r\n this.props.root.onDrop(e, this);\r\n }\r\n\r\n onDragEnd(e) {\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: false,\r\n });\r\n this.props.root.onDragEnd(e, this);\r\n }\r\n\r\n onExpand() {\r\n const callbackPromise = this.props.root.onExpand(this);\r\n if (callbackPromise && typeof callbackPromise === 'object') {\r\n const setLoading = (dataLoading) => {\r\n this.setState({\r\n dataLoading\r\n });\r\n };\r\n setLoading(true);\r\n callbackPromise.then(() => {\r\n setLoading(false);\r\n }, () => {\r\n setLoading(false);\r\n });\r\n }\r\n }\r\n\r\n // keyboard event support\r\n onKeyDown(e) {\r\n e.preventDefault();\r\n }\r\n\r\n renderSwitcher(props, expandedState) {\r\n let stateIcon;\r\n const prefixCls = props.prefixCls;\r\n const switcherCls = {\r\n [`${prefixCls}-switcher`]: true,\r\n };\r\n if (!props.showLine) {\r\n switcherCls[`${prefixCls}-noline_${expandedState}`] = true;\r\n } else if (props.pos === '0-0') {\r\n switcherCls[`${prefixCls}-roots_${expandedState}`] = true;\r\n } else {\r\n switcherCls[`${prefixCls}-center_${expandedState}`] = !props.last;\r\n switcherCls[`${prefixCls}-bottom_${expandedState}`] = props.last;\r\n }\r\n\r\n if (expandedState === 'open' && props.openIcon) {\r\n stateIcon = props.openIcon;\r\n switcherCls['icon-none'] = true;\r\n }\r\n if (expandedState === 'close' && props.closeIcon) {\r\n stateIcon = props.closeIcon;\r\n switcherCls['icon-none'] = true;\r\n }\r\n //switcherCls[stateIcon] = stateIcon;\r\n\r\n if (props.disabled) {\r\n switcherCls[`${prefixCls}-switcher-disabled`] = true;\r\n return {stateIcon} ;\r\n }\r\n return {stateIcon} ;\r\n }\r\n\r\n renderCheckbox(props) {\r\n const prefixCls = props.prefixCls;\r\n const checkboxCls = {\r\n [`${prefixCls}-checkbox`]: true,\r\n };\r\n if (props.checked) {\r\n checkboxCls[`${prefixCls}-checkbox-checked`] = true;\r\n } else if (props.halfChecked) {\r\n checkboxCls[`${prefixCls}-checkbox-indeterminate`] = true;\r\n }\r\n let customEle = null;\r\n if (typeof props.checkable !== 'boolean') {\r\n customEle = props.checkable;\r\n }\r\n if (props.disabled || props.disableCheckbox) {\r\n checkboxCls[`${prefixCls}-checkbox-disabled`] = true;\r\n return {customEle} ;\r\n }\r\n return (\r\n {customEle} );\r\n }\r\n\r\n renderChildren(props) {\r\n const renderFirst = this.renderFirst;\r\n this.renderFirst = 1;\r\n let transitionAppear = true;\r\n if (!renderFirst && props.expanded) {\r\n transitionAppear = false;\r\n }\r\n const children = props.children;\r\n let newChildren = children;\r\n if (children &&\r\n (children.type === TreeNode ||\r\n Array.isArray(children) &&\r\n children.every((item) => {\r\n return item.type === TreeNode;\r\n }))) {\r\n const cls = {\r\n [`${props.prefixCls}-child-tree`]: true,\r\n [`${props.prefixCls}-child-tree-open`]: props.expanded,\r\n };\r\n if (props.showLine) {\r\n cls[`${props.prefixCls}-line`] = !props.last;\r\n }\r\n const animProps = {};\r\n if (props.openTransitionName) {\r\n animProps.transitionName = props.openTransitionName;\r\n } else if (typeof props.openAnimation === 'object') {\r\n animProps.animation = Object.assign({}, props.openAnimation);\r\n if (!transitionAppear) {\r\n delete animProps.animation.appear;\r\n }\r\n }\r\n newChildren = (\r\n \r\n {!props.expanded ? null : \r\n {React.Children.map(children, (item, index) => {\r\n return props.root.renderTreeNode(item, index, props.pos);\r\n }, props.root)}\r\n }\r\n \r\n );\r\n }\r\n return newChildren;\r\n }\r\n\r\n render() {\r\n const props = this.props;\r\n const prefixCls = props.prefixCls;\r\n const expandedState = props.expanded ? 'open' : 'close';\r\n let iconState = expandedState;\r\n\r\n let canRenderSwitcher = true;\r\n const content = props.title;\r\n let newChildren = this.renderChildren(props);\r\n let openIconCls = false,\r\n closeIconCls = false;\r\n\r\n //以下变量控制是否鼠标单机双击方法中的变量\r\n let timer = 0;\r\n let delay = 500;\r\n let prevent = false;\r\n\r\n if (!newChildren || newChildren === props.children) {\r\n // content = newChildren;\r\n newChildren = null;\r\n if (!props.loadData || props.isLeaf) {\r\n canRenderSwitcher = false;\r\n iconState = 'docu';\r\n }\r\n }\r\n // For performance, does't render children into dom when `!props.expanded` (move to Animate)\r\n // if (!props.expanded) {\r\n // newChildren = null;\r\n // }\r\n\r\n const iconEleCls = {\r\n [`${prefixCls}-iconEle`]: true,\r\n [`${prefixCls}-icon_loading`]: this.state.dataLoading,\r\n [`${prefixCls}-icon__${iconState}`]: true\r\n };\r\n const selectHandle = () => {\r\n const icon = (props.showIcon || props.loadData && this.state.dataLoading) ?\r\n : null;\r\n const title = {content} ;\r\n const wrap = `${prefixCls}-node-content-wrapper`;\r\n const domProps = {\r\n className: `${wrap} ${wrap}-${iconState === expandedState ? iconState : 'normal'}`,\r\n };\r\n if (!props.disabled) {\r\n if (props.selected || !props._dropTrigger && this.state.dragNodeHighlight) {\r\n domProps.className += ` ${prefixCls}-node-selected`;\r\n }\r\n domProps.onClick = (e) => {\r\n var _this = this;\r\n e.preventDefault();\r\n if (props.selectable) {\r\n _this.onSelect();\r\n }\r\n\r\n // not fire check event\r\n // if (props.checkable) {\r\n // this.onCheck();\r\n // }\r\n };\r\n\r\n if (props.onRightClick) {\r\n domProps.onContextMenu = this.onContextMenu;\r\n }\r\n if (props.onMouseEnter) {\r\n domProps.onMouseEnter = this.onMouseEnter;\r\n }\r\n if (props.onMouseLeave) {\r\n domProps.onMouseLeave = this.onMouseLeave;\r\n }\r\n\r\n if (props.draggable) {\r\n domProps.className += ' draggable';\r\n if (ieOrEdge) {\r\n // ie bug!\r\n domProps.href = '#';\r\n }\r\n domProps.draggable = true;\r\n domProps['aria-grabbed'] = true;\r\n domProps.onDragStart = this.onDragStart;\r\n }\r\n }\r\n return (\r\n \r\n {icon}{title}\r\n \r\n );\r\n };\r\n\r\n const liProps = {};\r\n if (props.draggable) {\r\n liProps.onDragEnter = this.onDragEnter;\r\n liProps.onDragOver = this.onDragOver;\r\n liProps.onDragLeave = this.onDragLeave;\r\n liProps.onDrop = this.onDrop;\r\n liProps.onDragEnd = this.onDragEnd;\r\n }\r\n\r\n let disabledCls = '';\r\n let dragOverCls = '';\r\n if (props.disabled) {\r\n disabledCls = `${prefixCls}-treenode-disabled`;\r\n } else if (props.dragOver) {\r\n dragOverCls = 'drag-over';\r\n } else if (props.dragOverGapTop) {\r\n dragOverCls = 'drag-over-gap-top';\r\n } else if (props.dragOverGapBottom) {\r\n dragOverCls = 'drag-over-gap-bottom';\r\n }\r\n\r\n const filterCls = props.filterTreeNode(this) ? 'filter-node' : '';\r\n\r\n const noopSwitcher = () => {\r\n const cls = {\r\n [`${prefixCls}-switcher`]: true,\r\n [`${prefixCls}-switcher-noop`]: true,\r\n };\r\n if (props.showLine) {\r\n console.log('line---------');\r\n cls[`${prefixCls}-center_docu`] = !props.last;\r\n cls[`${prefixCls}-bottom_docu`] = props.last;\r\n } else {\r\n cls[`${prefixCls}-noline_docu`] = true;\r\n }\r\n return ;\r\n };\r\n\r\n return (\r\n \r\n {canRenderSwitcher ? this.renderSwitcher(props, expandedState) : noopSwitcher()}\r\n {props.checkable ? this.renderCheckbox(props) : null}\r\n {selectHandle()}\r\n {newChildren}\r\n \r\n );\r\n }\r\n}\r\n\r\nTreeNode.isTreeNode = 1;\r\n\r\nTreeNode.propTypes = {\r\n prefixCls: PropTypes.string,\r\n disabled: PropTypes.bool,\r\n disableCheckbox: PropTypes.bool,\r\n expanded: PropTypes.bool,\r\n isLeaf: PropTypes.bool,\r\n root: PropTypes.object,\r\n onSelect: PropTypes.func,\r\n openIcon: PropTypes.element,\r\n closeIcon: PropTypes.element\r\n};\r\n\r\nTreeNode.defaultProps = {\r\n title: defaultTitle,\r\n};\r\n\r\nexport default TreeNode;\n\n\n// WEBPACK FOOTER //\n// ./src/TreeNode.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Animate = require('./Animate');\n\nvar _Animate2 = _interopRequireDefault(_Animate);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Animate2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/index.js\n// module id = 110\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ChildrenUtils = require('./ChildrenUtils');\n\nvar _AnimateChild = require('./AnimateChild');\n\nvar _AnimateChild2 = _interopRequireDefault(_AnimateChild);\n\nvar _util = require('./util');\n\nvar _util2 = _interopRequireDefault(_util);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar defaultKey = 'u_animate_' + Date.now();\n\n\nfunction getChildrenFromProps(props) {\n var children = props.children;\n if (_react2[\"default\"].isValidElement(children)) {\n if (!children.key) {\n return _react2[\"default\"].cloneElement(children, {\n key: defaultKey\n });\n }\n }\n return children;\n}\n\nfunction noop() {}\n\nvar propTypes = {\n component: _propTypes2[\"default\"].any,\n animation: _propTypes2[\"default\"].object,\n transitionName: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].string, _propTypes2[\"default\"].object]),\n transitionEnter: _propTypes2[\"default\"].bool,\n transitionAppear: _propTypes2[\"default\"].bool,\n exclusive: _propTypes2[\"default\"].bool,\n transitionLeave: _propTypes2[\"default\"].bool,\n onEnd: _propTypes2[\"default\"].func,\n onEnter: _propTypes2[\"default\"].func,\n onLeave: _propTypes2[\"default\"].func,\n onAppear: _propTypes2[\"default\"].func,\n showProp: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n animation: {},\n component: 'span',\n transitionEnter: true,\n transitionLeave: true,\n transitionAppear: false,\n onEnd: noop,\n onEnter: noop,\n onLeave: noop,\n onAppear: noop\n};\n\nvar Animate = function (_Component) {\n _inherits(Animate, _Component);\n\n function Animate(props) {\n _classCallCheck(this, Animate);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.currentlyAnimatingKeys = {};\n _this.keysToEnter = [];\n _this.keysToLeave = [];\n _this.state = {\n children: (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(_this.props))\n };\n\n _this.performEnter = _this.performEnter.bind(_this);\n _this.performAppear = _this.performAppear.bind(_this);\n _this.handleDoneAdding = _this.handleDoneAdding.bind(_this);\n _this.performLeave = _this.performLeave.bind(_this);\n\n _this.performLeave = _this.performLeave.bind(_this);\n _this.handleDoneLeaving = _this.handleDoneLeaving.bind(_this);\n _this.isValidChildByKey = _this.isValidChildByKey.bind(_this);\n _this.stop = _this.stop.bind(_this);\n return _this;\n }\n\n Animate.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this.mounted = true;\n var showProp = this.props.showProp;\n var children = this.state.children;\n if (showProp) {\n children = children.filter(function (child) {\n return !!child.props[showProp];\n });\n }\n children.forEach(function (child) {\n if (child) {\n _this2.performAppear(child.key);\n }\n });\n };\n\n Animate.prototype.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n Animate.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this3 = this;\n\n this.nextProps = nextProps;\n var nextChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(nextProps));\n var props = this.props;\n // exclusive needs immediate response\n if (props.exclusive) {\n Object.keys(this.currentlyAnimatingKeys).forEach(function (key) {\n _this3.stop(key);\n });\n }\n var showProp = props.showProp;\n var currentlyAnimatingKeys = this.currentlyAnimatingKeys;\n // last props children if exclusive\n var currentChildren = props.exclusive ? (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props)) : this.state.children;\n // in case destroy in showProp mode\n var newChildren = [];\n if (showProp) {\n currentChildren.forEach(function (currentChild) {\n var nextChild = currentChild && (0, _ChildrenUtils.findChildInChildrenByKey)(nextChildren, currentChild.key);\n var newChild = void 0;\n if ((!nextChild || !nextChild.props[showProp]) && currentChild.props[showProp]) {\n newChild = _react2[\"default\"].cloneElement(nextChild || currentChild, _defineProperty({}, showProp, true));\n } else {\n newChild = nextChild;\n }\n if (newChild) {\n newChildren.push(newChild);\n }\n });\n nextChildren.forEach(function (nextChild) {\n if (!nextChild || !(0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, nextChild.key)) {\n newChildren.push(nextChild);\n }\n });\n } else {\n newChildren = (0, _ChildrenUtils.mergeChildren)(currentChildren, nextChildren);\n }\n\n // need render to avoid update\n this.setState({\n children: newChildren\n });\n\n nextChildren.forEach(function (child) {\n var key = child && child.key;\n if (child && currentlyAnimatingKeys[key]) {\n return;\n }\n var hasPrev = child && (0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, key);\n if (showProp) {\n var showInNext = child.props[showProp];\n if (hasPrev) {\n var showInNow = (0, _ChildrenUtils.findShownChildInChildrenByKey)(currentChildren, key, showProp);\n if (!showInNow && showInNext) {\n _this3.keysToEnter.push(key);\n }\n } else if (showInNext) {\n _this3.keysToEnter.push(key);\n }\n } else if (!hasPrev) {\n _this3.keysToEnter.push(key);\n }\n });\n\n currentChildren.forEach(function (child) {\n var key = child && child.key;\n if (child && currentlyAnimatingKeys[key]) {\n return;\n }\n var hasNext = child && (0, _ChildrenUtils.findChildInChildrenByKey)(nextChildren, key);\n if (showProp) {\n var showInNow = child.props[showProp];\n if (hasNext) {\n var showInNext = (0, _ChildrenUtils.findShownChildInChildrenByKey)(nextChildren, key, showProp);\n if (!showInNext && showInNow) {\n _this3.keysToLeave.push(key);\n }\n } else if (showInNow) {\n _this3.keysToLeave.push(key);\n }\n } else if (!hasNext) {\n _this3.keysToLeave.push(key);\n }\n });\n };\n\n Animate.prototype.componentDidUpdate = function componentDidUpdate() {\n var keysToEnter = this.keysToEnter;\n this.keysToEnter = [];\n keysToEnter.forEach(this.performEnter);\n var keysToLeave = this.keysToLeave;\n this.keysToLeave = [];\n keysToLeave.forEach(this.performLeave);\n };\n\n Animate.prototype.performEnter = function performEnter(key) {\n // may already remove by exclusive\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillEnter(this.handleDoneAdding.bind(this, key, 'enter'));\n }\n };\n\n Animate.prototype.performAppear = function performAppear(key) {\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillAppear(this.handleDoneAdding.bind(this, key, 'appear'));\n }\n };\n\n Animate.prototype.handleDoneAdding = function handleDoneAdding(key, type) {\n var props = this.props;\n delete this.currentlyAnimatingKeys[key];\n // if update on exclusive mode, skip check\n if (props.exclusive && props !== this.nextProps) {\n return;\n }\n var currentChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props));\n if (!this.isValidChildByKey(currentChildren, key)) {\n // exclusive will not need this\n this.performLeave(key);\n } else {\n if (type === 'appear') {\n if (_util2[\"default\"].allowAppearCallback(props)) {\n props.onAppear(key);\n props.onEnd(key, true);\n }\n } else {\n if (_util2[\"default\"].allowEnterCallback(props)) {\n props.onEnter(key);\n props.onEnd(key, true);\n }\n }\n }\n };\n\n Animate.prototype.performLeave = function performLeave(key) {\n // may already remove by exclusive\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillLeave(this.handleDoneLeaving.bind(this, key));\n }\n };\n\n Animate.prototype.handleDoneLeaving = function handleDoneLeaving(key) {\n var props = this.props;\n delete this.currentlyAnimatingKeys[key];\n // if update on exclusive mode, skip check\n if (props.exclusive && props !== this.nextProps) {\n return;\n }\n var currentChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props));\n // in case state change is too fast\n if (this.isValidChildByKey(currentChildren, key)) {\n this.performEnter(key);\n } else {\n var end = function end() {\n if (_util2[\"default\"].allowLeaveCallback(props)) {\n props.onLeave(key);\n props.onEnd(key, false);\n }\n };\n /* eslint react/no-is-mounted:0 */\n if (this.mounted && !(0, _ChildrenUtils.isSameChildren)(this.state.children, currentChildren, props.showProp)) {\n this.setState({\n children: currentChildren\n }, end);\n } else {\n end();\n }\n }\n };\n\n Animate.prototype.isValidChildByKey = function isValidChildByKey(currentChildren, key) {\n var showProp = this.props.showProp;\n if (showProp) {\n return (0, _ChildrenUtils.findShownChildInChildrenByKey)(currentChildren, key, showProp);\n }\n return (0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, key);\n };\n\n Animate.prototype.stop = function stop(key) {\n delete this.currentlyAnimatingKeys[key];\n var component = this.refs[key];\n if (component) {\n component.stop();\n }\n };\n\n Animate.prototype.render = function render() {\n var props = this.props;\n this.nextProps = props;\n var stateChildren = this.state.children;\n var children = null;\n if (stateChildren) {\n children = stateChildren.map(function (child) {\n if (child === null || child === undefined) {\n return child;\n }\n if (!child.key) {\n throw new Error('must set key for children');\n }\n return _react2[\"default\"].createElement(\n _AnimateChild2[\"default\"],\n {\n key: child.key,\n ref: child.key,\n animation: props.animation,\n transitionName: props.transitionName,\n transitionEnter: props.transitionEnter,\n transitionAppear: props.transitionAppear,\n transitionLeave: props.transitionLeave\n },\n child\n );\n });\n }\n var Component = props.component;\n if (Component) {\n var passedProps = props;\n if (typeof Component === 'string') {\n passedProps = {\n className: props.className,\n style: props.style\n };\n }\n return _react2[\"default\"].createElement(\n Component,\n passedProps,\n children\n );\n }\n return children[0] || null;\n };\n\n return Animate;\n}(_react.Component);\n\n;\nAnimate.defaultProps = defaultProps;\nAnimate.propTypes = Animate.propTypes;\n\nexports[\"default\"] = Animate;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/Animate.js\n// module id = 111\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.toArrayChildren = toArrayChildren;\nexports.findChildInChildrenByKey = findChildInChildrenByKey;\nexports.findShownChildInChildrenByKey = findShownChildInChildrenByKey;\nexports.findHiddenChildInChildrenByKey = findHiddenChildInChildrenByKey;\nexports.isSameChildren = isSameChildren;\nexports.mergeChildren = mergeChildren;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction toArrayChildren(children) {\n var ret = [];\n _react2[\"default\"].Children.forEach(children, function (child) {\n ret.push(child);\n });\n return ret;\n}\n\nfunction findChildInChildrenByKey(children, key) {\n var ret = null;\n if (children) {\n children.forEach(function (child) {\n if (ret) {\n return;\n }\n if (child && child.key === key) {\n ret = child;\n }\n });\n }\n return ret;\n}\n\nfunction findShownChildInChildrenByKey(children, key, showProp) {\n var ret = null;\n if (children) {\n children.forEach(function (child) {\n if (child && child.key === key && child.props[showProp]) {\n if (ret) {\n throw new Error('two child with same key for children');\n }\n ret = child;\n }\n });\n }\n return ret;\n}\n\nfunction findHiddenChildInChildrenByKey(children, key, showProp) {\n var found = 0;\n if (children) {\n children.forEach(function (child) {\n if (found) {\n return;\n }\n found = child && child.key === key && !child.props[showProp];\n });\n }\n return found;\n}\n\nfunction isSameChildren(c1, c2, showProp) {\n var same = c1.length === c2.length;\n if (same) {\n c1.forEach(function (child, index) {\n var child2 = c2[index];\n if (child && child2) {\n if (child && !child2 || !child && child2) {\n same = false;\n } else if (child.key !== child2.key) {\n same = false;\n } else if (showProp && child.props[showProp] !== child2.props[showProp]) {\n same = false;\n }\n }\n });\n }\n return same;\n}\n\nfunction mergeChildren(prev, next) {\n var ret = [];\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextChildrenPending = {};\n var pendingChildren = [];\n prev.forEach(function (child) {\n if (child && findChildInChildrenByKey(next, child.key)) {\n if (pendingChildren.length) {\n nextChildrenPending[child.key] = pendingChildren;\n pendingChildren = [];\n }\n } else {\n pendingChildren.push(child);\n }\n });\n\n next.forEach(function (child) {\n if (child && nextChildrenPending.hasOwnProperty(child.key)) {\n ret = ret.concat(nextChildrenPending[child.key]);\n }\n ret.push(child);\n });\n\n ret = ret.concat(pendingChildren);\n\n return ret;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/ChildrenUtils.js\n// module id = 112\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nvar _util = require('./util');\n\nvar _util2 = _interopRequireDefault(_util);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar transitionMap = {\n enter: 'transitionEnter',\n appear: 'transitionAppear',\n leave: 'transitionLeave'\n};\n\nvar propTypes = {\n children: _propTypes2[\"default\"].any\n};\n\nvar AnimateChild = function (_Component) {\n _inherits(AnimateChild, _Component);\n\n function AnimateChild(props) {\n _classCallCheck(this, AnimateChild);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.transition = _this.transition.bind(_this);\n _this.stop = _this.stop.bind(_this);\n return _this;\n }\n\n AnimateChild.prototype.componentWillUnmount = function componentWillUnmount() {\n this.stop();\n };\n\n AnimateChild.prototype.componentWillEnter = function componentWillEnter(done) {\n if (_util2[\"default\"].isEnterSupported(this.props)) {\n this.transition('enter', done);\n } else {\n done();\n }\n };\n\n AnimateChild.prototype.componentWillAppear = function componentWillAppear(done) {\n if (_util2[\"default\"].isAppearSupported(this.props)) {\n this.transition('appear', done);\n } else {\n done();\n }\n };\n\n AnimateChild.prototype.componentWillLeave = function componentWillLeave(done) {\n if (_util2[\"default\"].isLeaveSupported(this.props)) {\n this.transition('leave', done);\n } else {\n // always sync, do not interupt with react component life cycle\n // update hidden -> animate hidden ->\n // didUpdate -> animate leave -> unmount (if animate is none)\n done();\n }\n };\n\n AnimateChild.prototype.transition = function transition(animationType, finishCallback) {\n var _this2 = this;\n\n var node = _reactDom2[\"default\"].findDOMNode(this);\n var props = this.props;\n var transitionName = props.transitionName;\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\n this.stop();\n var end = function end() {\n _this2.stopper = null;\n finishCallback();\n };\n if ((_tinperBeeCore.cssAnimation.isCssAnimationSupported || !props.animation[animationType]) && transitionName && props[transitionMap[animationType]]) {\n var name = nameIsObj ? transitionName[animationType] : transitionName + '-' + animationType;\n var activeName = name + '-active';\n if (nameIsObj && transitionName[animationType + 'Active']) {\n activeName = transitionName[animationType + 'Active'];\n }\n this.stopper = (0, _tinperBeeCore.cssAnimation)(node, {\n name: name,\n active: activeName\n }, end);\n } else {\n this.stopper = props.animation[animationType](node, end);\n }\n };\n\n AnimateChild.prototype.stop = function stop() {\n var stopper = this.stopper;\n if (stopper) {\n this.stopper = null;\n stopper.stop();\n }\n };\n\n AnimateChild.prototype.render = function render() {\n return this.props.children;\n };\n\n return AnimateChild;\n}(_react.Component);\n\n;\n\nAnimateChild.propTypes = propTypes;\n\nexports[\"default\"] = AnimateChild;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/AnimateChild.js\n// module id = 113\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar util = {\n isAppearSupported: function isAppearSupported(props) {\n return props.transitionName && props.transitionAppear || props.animation.appear;\n },\n isEnterSupported: function isEnterSupported(props) {\n return props.transitionName && props.transitionEnter || props.animation.enter;\n },\n isLeaveSupported: function isLeaveSupported(props) {\n return props.transitionName && props.transitionLeave || props.animation.leave;\n },\n allowAppearCallback: function allowAppearCallback(props) {\n return props.transitionAppear || props.animation.appear;\n },\n allowEnterCallback: function allowEnterCallback(props) {\n return props.transitionEnter || props.animation.enter;\n },\n allowLeaveCallback: function allowLeaveCallback(props) {\n return props.transitionLeave || props.animation.leave;\n }\n};\nexports[\"default\"] = util;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/util.js\n// module id = 114\n// module chunks = 0","import { cssAnimation } from 'tinper-bee-core';\r\n\r\nfunction animate(node, show, done) {\r\n let height;\r\n return cssAnimation(node, 'u-motion-collapse', {\r\n start() {\r\n if (!show) {\r\n node.style.height = `${node.offsetHeight}px`;\r\n } else {\r\n height = node.offsetHeight;\r\n node.style.height = 0;\r\n }\r\n },\r\n active() {\r\n node.style.height = `${show ? height : 0}px`;\r\n },\r\n end() {\r\n node.style.height = '';\r\n done();\r\n },\r\n });\r\n}\r\n\r\nconst animation = {\r\n enter(node, done) {\r\n return animate(node, true, done);\r\n },\r\n leave(node, done) {\r\n return animate(node, false, done);\r\n },\r\n appear(node, done) {\r\n return animate(node, true, done);\r\n },\r\n};\r\n\r\nexport default animation;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/openAnimation.js","/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\nexport default Demo2;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo2.js","/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default Demo3;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo3.js","/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport FormControl from 'bee-form-control';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Demo4;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo4.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _FormControl = require('./FormControl');\n\nvar _FormControl2 = _interopRequireDefault(_FormControl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _FormControl2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-form-control@1.0.2@bee-form-control/build/index.js\n// module id = 119\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _beeIcon = require('bee-icon');\n\nvar _beeIcon2 = _interopRequireDefault(_beeIcon);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string]),\n type: _propTypes2[\"default\"].string,\n size: _propTypes2[\"default\"].oneOf(['sm', 'md', 'lg']),\n id: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n componentClass: 'input',\n clsPrefix: 'u-form-control',\n type: 'text',\n size: 'md'\n};\n\nvar FormControl = function (_React$Component) {\n _inherits(FormControl, _React$Component);\n\n function FormControl(props) {\n _classCallCheck(this, FormControl);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _this.onChange = function (e) {\n var value = e.target.value;\n var onChange = _this.props.onChange;\n\n _this.setState(_defineProperty({ value: value, showSearch: false }, 'showSearch', value == \"\"));\n if (onChange) {\n onChange(value);\n }\n };\n\n _this.clearValue = function () {\n _this.setState({ showSearch: true });\n };\n\n _this.state = {\n showSearch: true,\n value: props.value || \"\"\n };\n _this.input = {};\n return _this;\n }\n\n FormControl.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProp) {\n if (nextProp.value !== this.state.value) {\n this.setState({ value: nextProp.value });\n }\n };\n\n FormControl.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n Component = _props.componentClass,\n type = _props.type,\n id = _props.id,\n className = _props.className,\n size = _props.size,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['componentClass', 'type', 'id', 'className', 'size', 'clsPrefix']);\n // input[type=\"file\"] 不应该有类名 .form-control.\n\n\n var classes = {};\n if (size) {\n classes['' + size] = true;\n }\n if (type == \"search\") {\n classes['u-input-search'] = true;\n }\n\n var classNames = void 0;\n if (type !== 'file') {\n classNames = (0, _classnames2[\"default\"])(clsPrefix, classes);\n }\n\n if (type == \"search\") {\n\n return _react2[\"default\"].createElement(\n 'span',\n { className: 'u-input-search u-input-affix-wrapper' },\n _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n onChange: this.onChange,\n value: this.state.value,\n id: id,\n className: (0, _classnames2[\"default\"])(className, classNames)\n })),\n _react2[\"default\"].createElement(\n 'span',\n { className: 'u-input-suffix' },\n this.state.showSearch && _react2[\"default\"].createElement(_beeIcon2[\"default\"], { type: 'uf-search' }),\n !this.state.showSearch && _react2[\"default\"].createElement(_beeIcon2[\"default\"], { onClick: this.clearValue, type: 'uf-close-c' })\n )\n );\n }\n\n return _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n id: id,\n ref: function ref(el) {\n return _this2.input = el;\n },\n value: this.state.value,\n onChange: this.onChange,\n className: (0, _classnames2[\"default\"])(className, classNames)\n }));\n };\n\n return FormControl;\n}(_react2[\"default\"].Component);\n\nFormControl.propTypes = propTypes;\nFormControl.defaultProps = defaultProps;\n\nexports[\"default\"] = FormControl;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-form-control@1.0.2@bee-form-control/build/FormControl.js\n// module id = 120\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Icon = require('./Icon');\n\nvar _Icon2 = _interopRequireDefault(_Icon);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Icon2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-icon@1.0.0@bee-icon/build/index.js\n// module id = 121\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n\ttype: _propTypes2[\"default\"].string\n\n};\n/**\n * badge 默认显示内容1\n */\nvar defaultProps = {\n\tclsPrefix: 'uf'\n};\n\nvar Icon = function (_Component) {\n\t_inherits(Icon, _Component);\n\n\tfunction Icon(props) {\n\t\t_classCallCheck(this, Icon);\n\n\t\treturn _possibleConstructorReturn(this, _Component.call(this, props));\n\t}\n\n\tIcon.prototype.render = function render() {\n\t\tvar _props = this.props,\n\t\t type = _props.type,\n\t\t className = _props.className,\n\t\t clsPrefix = _props.clsPrefix,\n\t\t others = _objectWithoutProperties(_props, ['type', 'className', 'clsPrefix']);\n\n\t\tvar clsObj = {};\n\n\t\tvar classNames = (0, _classnames2[\"default\"])(clsPrefix, type);\n\n\t\treturn _react2[\"default\"].createElement('i', _extends({}, others, { className: (0, _classnames2[\"default\"])(classNames, className) }));\n\t};\n\n\treturn Icon;\n}(_react.Component);\n\nIcon.defaultProps = defaultProps;\nIcon.PropTypes = _propTypes2[\"default\"];\n\nexports[\"default\"] = Icon;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-icon@1.0.0@bee-icon/build/Icon.js\n// module id = 122\n// module chunks = 0","/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default Demo5\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo5.js","/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Icon from 'bee-icon';\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo6.js","/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Button from 'bee-button';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n \r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\nexport default Demo7\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo7.js","/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Button from 'bee-button';\r\nimport Icon from 'bee-icon';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\nexport default Demo8;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo8.js","/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Demo9;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo9.js"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///webpack/bootstrap 3a3d5b282ab4cbc3e8e4","webpack:///./demo/index.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/index.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Col.js","webpack:///./~/_classnames@2.2.5@classnames/index.js","webpack:///external \"React\"","webpack:///external \"PropTypes\"","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Row.js","webpack:///./~/_bee-layout@1.0.0@bee-layout/build/Layout.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/index.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/Panel.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/index.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Transition.js","webpack:///external \"ReactDOM\"","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/transition/properties.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/inDOM.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/events/on.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Collapse.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/index.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/camelizeStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/camelize.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenateStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenate.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/getComputedStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/style/removeStyle.js","webpack:///./~/_dom-helpers@3.2.1@dom-helpers/transition/isTransform.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/util/capitalize.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/all.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/utils/createChainableTypeChecker.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/componentOrElement.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/deprecated.js","webpack:///./~/_warning@3.0.0@warning/browser.js","webpack:///C:/Program Files/nodejs/~/bee-tools/~/_process@0.11.10@process/browser.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/elementType.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/isRequiredForA11y.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/splitComponent.js","webpack:///./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/fn/object/entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/es7.object.entries.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_export.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_global.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_core.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_ctx.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_a-function.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_hide.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-dp.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_an-object.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_is-object.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_ie8-dom-define.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_descriptors.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_fails.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_dom-create.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-primitive.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_property-desc.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-to-array.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-keys.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-keys-internal.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_has.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-iobject.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_iobject.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_cof.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_defined.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_array-includes.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-length.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-integer.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_to-absolute-index.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_shared-key.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_shared.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_uid.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_enum-bug-keys.js","webpack:///./~/_core-js@2.5.1@core-js/library/modules/_object-pie.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/createChainedFunction.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/keyCode.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/contains.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/addEventListener.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/index.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventObject.js","webpack:///./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventBaseObject.js","webpack:///./~/_object-assign@4.1.1@object-assign/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/cssAnimation.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Event.js","webpack:///./~/_component-classes@1.2.6@component-classes/index.js","webpack:///./~/_component-indexof@0.0.3@component-indexof/index.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/toArray.js","webpack:///./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Align.js","webpack:///./~/_create-react-class@15.6.2@create-react-class/index.js","webpack:///./~/_create-react-class@15.6.2@create-react-class/factory.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/emptyObject.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/invariant.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/warning.js","webpack:///./~/_fbjs@0.8.16@fbjs/lib/emptyFunction.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/index.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/utils.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/propertyUtils.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getOffsetParent.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getVisibleRectForElement.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/isAncestorFixed.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/adjustForViewport.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getRegion.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getElFuturePos.js","webpack:///./~/_dom-align@1.6.5@dom-align/lib/getAlignOffset.js","webpack:///./~/_bee-transition@1.0.0@bee-transition/build/Fade.js","webpack:///./~/_bee-panel@1.0.0@bee-panel/build/PanelGroup.js","webpack:///./~/_bee-button@1.0.2@bee-button/build/index.js","webpack:///./~/_bee-button@1.0.2@bee-button/build/Button.js","webpack:///./demo/demolist/Demo1.js","webpack:///./src/index.js","webpack:///./src/Tree.js","webpack:///./src/util.js","webpack:///./src/TreeNode.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/index.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/Animate.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/ChildrenUtils.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/AnimateChild.js","webpack:///./~/_bee-animate@1.0.0@bee-animate/build/util.js","webpack:///./src/openAnimation.js","webpack:///./demo/demolist/Demo2.js","webpack:///./demo/demolist/Demo3.js","webpack:///./demo/demolist/Demo4.js","webpack:///./~/_bee-form-control@1.0.2@bee-form-control/build/index.js","webpack:///./~/_bee-form-control@1.0.2@bee-form-control/build/FormControl.js","webpack:///./~/_bee-icon@1.0.0@bee-icon/build/index.js","webpack:///./~/_bee-icon@1.0.0@bee-icon/build/Icon.js","webpack:///./demo/demolist/Demo5.js","webpack:///./demo/demolist/Demo6.js","webpack:///./demo/demolist/Demo7.js","webpack:///./demo/demolist/Demo8.js","webpack:///./demo/demolist/Demo9.js"],"names":["CARET","CARETUP","Demo1","require","Demo2","Demo3","Demo4","Demo5","Demo6","Demo7","Demo8","Demo9","DemoArray","Demo","props","state","open","handleClick","bind","setState","render","title","example","code","desc","scss_code","caret","text","header","padding","DemoGroup","map","child","index","document","getElementById","TreeNode","defaultProps","keys","console","log","onCheck","checkedKeys","self","cks","checked","defaultExpandedKeys","defaultSelectedKeys","onSelect","info","color","TreeProps","showLine","bool","className","string","multiple","autoExpandParent","checkStrictly","checkable","defaultExpandAll","array","expandedKeys","oneOfType","object","defaultCheckedKeys","selectedKeys","onExpand","func","filterAntTreeNode","loadData","onRightClick","draggable","onDragStart","onDragEnter","onDragOver","onDragLeave","onDrop","style","CSSProperties","prefixCls","filterTreeNode","showIcon","openAnimation","Tree","children","noop","forEach","m","contextmenuKeys","checkedKeysChange","getDefaultExpandedKeys","getDefaultCheckedKeys","getDefaultSelectedKeys","dragNodesKeys","dragOverNodeKey","dropNodeKey","componentWillReceiveProps","nextProps","st","e","treeNode","dragNode","getDragNodes","getExpandedKeys","getRawExpandedKeys","event","node","_dropTrigger","onDragEnterGap","offsetTop","refs","selectHandle","top","offsetHeight","pageY","gapHeight","dropPosition","enterGap","eventKey","key","indexOf","warn","posArr","pos","split","res","Number","length","dropToGap","rawExpandedKeys","_rawExpandedKeys","onDragEnd","expanded","controlled","push","splice","then","halfChecked","newSt","treeNodesStates","checkedNodes","item","ind","keyOrPos","checkedPositions","Object","i","checkKeys","checkedNodesPositions","halfCheckedKeys","_checkedKeys","selected","selectedNodes","onMouseEnter","onMouseLeave","onContextMenu","onKeyDown","preventDefault","getFilterExpandedKeys","expandKeyProp","expandAll","expandedPositionArr","newKey","filterExpandedKeys","p","willReceiveProps","undefined","Array","isArray","getKeys","getOpenTransitionName","transitionName","openTransitionName","animationName","tPArr","pArr","expand","expandedIndex","exKeys","concat","disabled","call","renderTreeNode","level","selectable","hasOwnProperty","cloneProps","ref","root","dragOver","dragOverGapTop","dragOverGapBottom","openIcon","closeIcon","siblingPosition","cloneElement","showLineCls","domProps","role","focusable","tabIndex","getTreeNodesStates","_treeNodesStates","Children","Component","propTypes","any","arrayOf","browser","getOffset","loopAllChildren","isInclude","filterParentPosition","handleCheckState","getCheck","getStrictlyValue","arraysEqual","navigator","tem","ua","userAgent","M","match","test","exec","slice","join","replace","appName","appVersion","ele","doc","win","docElem","rect","getClientRects","left","getBoundingClientRect","width","height","ownerDocument","defaultView","documentElement","pageYOffset","clientTop","pageXOffset","clientLeft","getChildrenlength","len","getSiblingPosition","first","last","childs","callback","parent","loop","_parent","type","isTreeNode","smallArray","bigArray","every","ii","arr","levelObj","posLen","levelArr","sort","j","_i","filter","nArr","stripTail","str","splitPosition","obj","checkedPositionArr","checkIt","objKeys","iArr","saved","_pos","_posArr","__pos","_posLen","sibling","siblingChecked","parentPosition","pIndex","itemObj","a","b","browserUa","window","ieOrEdge","defaultTitle","dataLoading","dragNodeHighlight","componentDidMount","_treeNodeInstances","stopPropagation","dataTransfer","setData","callbackPromise","setLoading","renderSwitcher","expandedState","stateIcon","switcherCls","renderCheckbox","checkboxCls","customEle","disableCheckbox","renderChildren","renderFirst","transitionAppear","newChildren","cls","animProps","animation","appear","iconState","canRenderSwitcher","content","openIconCls","closeIconCls","timer","delay","prevent","isLeaf","iconEleCls","icon","wrap","onClick","_this","href","liProps","disabledCls","dragOverCls","filterCls","noopSwitcher","element","animate","show","done","start","active","end","enter","leave","x","y","z","gData","generateData","_level","_preKey","_tns","preKey","tns","arguments","data","dropKey","dragKey","dragObj","ar","dataList","generateList","getParentKey","tree","parentKey","some","onChange","value","uniqueExpandedKeys","searchValue","search","beforeStr","substr","afterStr","generateTreeNodes","name","setLeaf","treeData","curKey","loopLeaf","lev","l","getNewTreeData","onLoadData","setTimeout","Promise","resolve","treeNodes","parentNode","addNode","clickFun","getNodeByKey","prKey","nodeItem","parNode","find","isHover","treenode","editKey","editRender","nodechange","renderTreeTitle","titleIcon","titleInfo","target"],"mappings":"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A6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;ACnKA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAgB;;AAEhB;AACA;;AAEA,kBAAiB,sBAAsB;AACvC;AACA;;AAEA;;AAEA;AACA;AACA,KAAI;AACJ;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,GAAE;AACF;AACA;AACA;AACA,IAAG;AACH,GAAE;AACF;AACA;AACA,EAAC;;;;;;;AC/CD,wB;;;;;;ACAA,4B;;;;;;ACAA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;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AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;;AAEA;AACA;AACA;AACA,MAAK;AACL;;AAEA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA,iBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS,iDAAiD;AAC1D;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,wDAAuD,kBAAkB;;AAEzE;AACA;;AAEA;AACA,MAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,yCAAwC;;AAExC;AACA;AACA,kBAAiB;AACjB;AACA;AACA,QAAO;AACP;AACA;AACA,UAAS,2GAA2G;AACpH;AACA;AACA,+FAA8F,2HAA2H;AACzN;AACA;AACA,UAAS,uDAAuD;AAChE;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AChSA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA,kC;;;;;;ACvBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,oBAAmB;;AAEnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAuB,iBAAiB;AACxC;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAO;AACP,wBAAuB,oBAAoB;AAC3C;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,wBAAuB,mBAAmB;AAC1C;;AAEA;AACA,8BAA6B,kBAAkB;AAC/C;AACA,UAAS;AACT,QAAO;AACP,MAAK;AACL;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA,wBAAuB,kBAAkB;AACzC;;AAEA;AACA,8BAA6B,iBAAiB;AAC9C;AACA,UAAS;AACT,QAAO;AACP,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA;;AAEA;AACA,8DAA6D;AAC7D;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;;AAEA;;AAEA,iC;;;;;;ACnVA,2B;;;;;;ACAA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,kBAAiB,oBAAoB;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,WAAU;AACV,E;;;;;;AC7GA;;AAEA;AACA;AACA,EAAC;AACD;AACA,qC;;;;;;ACNA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA,IAAG;AACH;;AAEA;AACA,qC;;;;;;AC9BA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAoB;AACpB;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,yBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,iFAAgF;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AC3PA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL,kBAAiB;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL,oEAAmE;AACnE;AACA,IAAG;;AAEH;AACA,0DAAyD;AACzD;;AAEA,2BAA0B;AAC1B;AACA,qC;;;;;;AC7DA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,yBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;ACrBA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,wBAAuB;AACvB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACtBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACZA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qC;;;;;;ACtDA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,qC;;;;;;ACTA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA,qC;;;;;;ACXA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA,qC;;;;;;ACTA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iC;;;;;;ACzEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA,wEAAuE,aAAa;AACpF;AACA;;AAEA;AACA,uEAAsE,eAAe;AACrF;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;;AAEA;AACA,E;;;;;;ACtCA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,E;;;;;;ACvCA;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,uE;;;;;;AC/BA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yC;;;;;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,sBAAqB,WAAW;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;;;;;;;;AC3DA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAqB;AACrB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAqC;;AAErC;AACA;AACA;;AAEA,4BAA2B;AAC3B;AACA;AACA;AACA,6BAA4B,UAAU;;;;;;;ACvLtC;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,0E;;;;;;AC/BA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA,E;;;;;;ACnBA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA,aAAY,SAAS;AACrB,aAAY,eAAe;AAC3B,aAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA,E;;;;;;ACpCA,mBAAkB,wD;;;;;;ACAlB;AACA;;;;;;;ACDA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAC;;;;;;;ACRD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAiE;AACjE;AACA,mFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX,UAAS;AACT;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,gDAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd,eAAc;AACd,eAAc;AACd,eAAc;AACd,gBAAe;AACf,gBAAe;AACf,gBAAe;AACf,iBAAgB;AAChB;;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA,0CAAyC;;;;;;;ACLzC,8BAA6B;AAC7B,wCAAuC;;;;;;;ACDvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA;AACA;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG,YAAY;AACf;AACA;AACA;AACA;;;;;;;ACfA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;;;;;;;ACFA;AACA,sEAAsE,mBAAmB,UAAU,EAAE,EAAE;AACvG,EAAC;;;;;;;ACFD;AACA;AACA,kCAAiC,QAAQ,mBAAmB,UAAU,EAAE,EAAE;AAC1E,EAAC;;;;;;;ACHD;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;;;;;;ACfA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AChBA,wBAAuB;AACvB;AACA;AACA;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA,kBAAiB;;AAEjB;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK,YAAY,eAAe;AAChC;AACA,MAAK;AACL;AACA;;;;;;;ACtBA;AACA;AACA;AACA;AACA,4DAA2D;AAC3D;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACNA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA,mDAAkD;AAClD;AACA,wCAAuC;AACvC;;;;;;;ACLA;AACA;AACA;AACA;AACA;;;;;;;ACJA;AACA;AACA;AACA;;;;;;;ACHA,eAAc;;;;;;;ACAd;;AAEA;AACA;AACA,mEAAkE,aAAa;AAC/E;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,yEAAwE,eAAe;AACvF;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,yC;;;;;;AC7BA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0B;;;;;;ACvgBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;ACdA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,E;;;;;;ACrBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;ACnCA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oCAAmC,cAAc;AACjD;AACA;AACA;AACA;AACA,QAAO;AACP;AACA,QAAO;AACP;AACA,QAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sDAAqD;AACrD;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,EAAC;;AAED;AACA,qC;;;;;;ACpRA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;AC3DA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH,mCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAgB,sBAAsB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAkB,oBAAoB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;ACzFA;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;;AAEA,gC;;;;;;AC1LA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;;;AAGH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;;AAEA,oC;;;;;;ACpFA;AACA;AACA;;AAEA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,YAAW,QAAQ;AACnB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,QAAQ;AACnB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAW,cAAc;AACzB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW,OAAO;AAClB,YAAW,QAAQ;AACnB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAA+B;AAC/B;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;AACH;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAW,OAAO;AAClB,aAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC9LA;AACA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,G;;;;;;ACNA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,E;;;;;;ACjBA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH,iCAAgC;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,yB;;;;;;AChMA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAc;AACd;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAA+B,KAAK;AACpC;AACA;AACA,iBAAgB;AAChB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,WAAW;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,iBAAgB,QAAQ;AACxB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,gBAAe,0BAA0B;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,OAAO;AACtB,gBAAe,QAAQ;AACvB,gBAAe,QAAQ;AACvB,gBAAe,WAAW;AAC1B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAe,0BAA0B;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,wBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAU;AACV;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,WAAU;AACV;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA,yCAAwC;AACxC,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA,YAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA2C;AAC3C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB,cAAa,OAAO;AACpB,eAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,SAAS;AACtB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,SAAS;AACtB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB,cAAa,SAAS;AACtB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,yDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa,OAAO;AACpB;AACA;AACA;AACA,oBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA,iBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAa,OAAO;AACpB,eAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;;;;;;;ACr2BA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA,8B;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,sDAAqD;AACrD,MAAK;AACL;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA,2BAA0B;AAC1B;AACA;AACA;;AAEA,4B;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAa;AACb;;AAEA;AACA,6FAA4F,eAAe;AAC3G;AACA;;AAEA;AACA;AACA;AACA;;AAEA,0B;;;;;;;AC7DA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,8CAA6C;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gC;;;;;;ACnCA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qC;;;;;;ACnOA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA,kBAAiB,gBAAgB;AACjC;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAa,kBAAkB;AAC/B;AACA;AACA,kBAAiB,kBAAkB;AACnC;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA,UAAS,OAAO;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mEAAkE,cAAc;AAChF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,wCAAuC;AACvC,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;;AAEA,uEAAsE,eAAe;AACrF;AACA;;AAEA,oBAAmB,iBAAiB;AACpC;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA,qC;;;;;;AC1jBA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,E;;;;;;AC7GA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA2B,cAAc;AACzC,4BAA2B,cAAc,mBAAmB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oCAAmC,2BAA2B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;ACvDA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,qC;;;;;;ACxGA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oCAAmC,2BAA2B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;AC7BA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,qC;;;;;;ACtDA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;ACnCA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;ACxBA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;ACrCA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA,yBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,iFAAgF;AAChF;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;ACnHA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAmB,iBAAiB;AACpC;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,kBAAiB;AACjB;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX;;AAEA;AACA,QAAO;AACP;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AC7IA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAoB,UAAU;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAa;AACb;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;;;;;;;ACzJA;;;;AAGA;;;;;;;;;;;;gfAXA;;;;;;;AAaA,KAAMC,WAAW,iBAAKA,QAAtB;;AAEA,KAAMC,eAAe;AACpBC,QAAM,CAAC,OAAD,EAAU,OAAV;AADc,EAArB;AAGAC,SAAQC,GAAR;;KACMtC,K;;;AACL,iBAAYY,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAAA,SAYnB2B,OAZmB,GAYT,UAACC,WAAD,EAAiB;AAC1B,QAAIC,YAAJ;AACAJ,YAAQC,GAAR,CAAY,SAAZ,EAAuBE,WAAvB;AACA,QAAME,MAAM;AACXC,cAASH,YAAYG,OAAZ,IAAuBH;AADrB,KAAZ;AAGA,UAAKvB,QAAL,CAAc,EAACuB,aAAYE,GAAb,EAAd;AACA,IAnBkB;;AAElB,OAAMN,OAAO,MAAKxB,KAAL,CAAWwB,IAAxB;AACA,SAAKvB,KAAL,GAAa;AACZ+B,yBAAqBR,IADT;AAEZS,yBAAqBT,IAFT;AAGZI,iBAAa,EAACG,SAAQP,IAAT;AAHD,IAAb;AAHkB;AAQlB;;kBACDU,Q,qBAASC,I,EAAM;AACdV,WAAQC,GAAR,CAAY,UAAZ,EAAwBS,IAAxB;AACA,G;;kBASD7B,M,qBAAS;;AAER,UACC;AAAA;AAAA,MAAM,WAAU,OAAhB,EAAwB,cAAxB,EAAiC,eAAjC;AACM,0BAAqB,KAAKL,KAAL,CAAW+B,mBADtC;AAEE,0BAAqB,KAAK/B,KAAL,CAAWgC,mBAFlC;AAGE,kBAAe,KAAKhC,KAAL,CAAW2B,WAH5B;AAIE,wBAJF;AAKE,eAAU,KAAKM,QALjB,EAK2B,SAAS,KAAKP;;AALzC;AAQM;AAAC,aAAD;AAAA,OAAU,OAAM,UAAhB,EAA2B,KAAI,KAA/B;AACE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC,EAAyC,cAAzC;AACE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B,EAAqC,qBAArC,GADF;AAEE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B;AAFF,MADF;AAKE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAO;AAAA;AAAA,UAAM,OAAO,EAAES,OAAO,MAAT,EAAb;AAAA;AAAA,QAAjB,EAA6D,KAAI,SAAjE;AADF;AALF;AARN,IADD;AAoBA,G;;;;;AAGFhD,OAAMmC,YAAN,GAAqBA,YAArB;;sBAGenC,K;;;;;;;;;;;;;;;ACpEf;;;;AACA;;;;AACA;;;;AACA;;;;AACA;;;;;;;;;;;;;;AAEA,KAAMiD,YAAW;AACfC,aAAU,uBAAUC,IADL;AAEfC,cAAW,uBAAUC,MAFN;AAGf;AACAC,aAAU,uBAAUH,IAJL;AAKf;AACAI,qBAAkB,uBAAUJ,IANb;AAOf;AACAK,kBAAe,uBAAUL,IARV;AASf;AACAM,cAAW,uBAAUN,IAVN;AAWf;AACAO,qBAAkB,uBAAUP,IAZb;AAaf;AACAP,wBAAqB,uBAAUe,KAdhB;AAef;AACAC,iBAAc,uBAAUD,KAhBT;AAiBf;AACAnB,gBAAa,uBAAUqB,SAAV,CAAoB,CAC7B,uBAAUF,KADmB,EAE7B,uBAAUG,MAFmB,CAApB,CAlBE;AAsBf;AACAC,uBAAoB,uBAAUJ,KAvBf;AAwBf;AACAK,iBAAc,uBAAUL,KAzBT;AA0Bf;AACAd,wBAAqB,uBAAUc,KA3BhB;AA4Bf;AACAM,aAAU,uBAAUC,IA7BL;AA8Bf;AACA3B,YAAS,uBAAU2B,IA/BJ;AAgCf;AACApB,aAAU,uBAAUoB,IAjCL;AAkCf;AACAC,sBAAmB,uBAAUD,IAnCd;AAoCf;AACAE,aAAU,uBAAUF,IArCL;AAsCf;AACAG,iBAAc,uBAAUH,IAvCT;AAwCf;AACAI,cAAW,uBAAUnB,IAzCN;AA0Cf;AACAoB,gBAAa,uBAAUL,IA3CR;AA4Cf;AACAM,gBAAa,uBAAUN,IA7CR;AA8Cf;AACAO,eAAY,uBAAUP,IA/CP;AAgDf;AACAQ,gBAAa,uBAAUR,IAjDR;AAkDf;AACAS,WAAQ,uBAAUT,IAnDH;AAoDfU,UAAO,mBAAMC,aApDE;AAqDfC,cAAW,uBAAUzB,MArDN;AAsDf0B,mBAAgB,uBAAUb;AAtDX,EAAjB;;AAyDA,KAAM/B,eAAe;AACjB2C,cAAW,QADM;AAEjBrB,cAAW,KAFM;AAGjBuB,aAAU,KAHO;AAIjBC;AAJiB,EAArB;;KAOMC,I;;;;;;;;;kBAEJhE,M,qBAAS;AACP,SAAMN,QAAQ,KAAKA,KAAnB;AACA,SAAI6C,YAAY7C,MAAM6C,SAAtB;AACA,YACE;AAAA;AAAA,oBACM7C,KADN;AAEE,oBAAW6C,YAAa,2CAAM,WAAc7C,MAAMkE,SAApB,oBAAN,GAAb,GAAyErB;AAFtF;AAIG,YAAK7C,KAAL,CAAWuE;AAJd,MADF;AAQD,I;;;;;AAGHD,MAAKhD,QAAL;AACAgD,MAAKjC,SAAL,GAAiBA,SAAjB;AACAiC,MAAK/C,YAAL,GAAoBA,YAApB;sBACe+C,I;;;;;;;;;;;;;;;ACxFf;;;;AACA;;;;AACA;;AAUA;;;;;;;;;;;;;;gfAbA;;;AAgBA,UAASE,IAAT,GAAgB,CAAE;;KAEZF,I;;;AACJ,iBAAYtE,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,4BAAMA,KAAN,CADiB;;AAEjB,MAAC,WAAD,EAAc,SAAd,EAAyByE,OAAzB,CAAiC,UAACC,CAAD,EAAO;AACtC,aAAKA,CAAL,IAAU,MAAKA,CAAL,EAAQtE,IAAR,OAAV;AACD,MAFD;AAGA,WAAKuE,eAAL,GAAuB,EAAvB;AACA,WAAKC,iBAAL,GAAyB,IAAzB;;AAEA,WAAK3E,KAAL,GAAa;AACX+C,qBAAc,MAAK6B,sBAAL,CAA4B7E,KAA5B,CADH;AAEX4B,oBAAa,MAAKkD,qBAAL,CAA2B9E,KAA3B,CAFF;AAGXoD,qBAAc,MAAK2B,sBAAL,CAA4B/E,KAA5B,CAHH;AAIXgF,sBAAe,EAJJ;AAKXC,wBAAiB,EALN;AAMXC,oBAAa;AANF,MAAb;AARiB;AAgBlB;;kBAEDC,yB,sCAA0BC,S,EAAW;AACnC,SAAMpC,eAAe,KAAK6B,sBAAL,CAA4BO,SAA5B,EAAuC,IAAvC,CAArB;AACA,SAAMxD,cAAc,KAAKkD,qBAAL,CAA2BM,SAA3B,EAAsC,IAAtC,CAApB;AACA,SAAMhC,eAAe,KAAK2B,sBAAL,CAA4BK,SAA5B,EAAuC,IAAvC,CAArB;AACA,SAAMC,KAAK,EAAX;AACA,SAAIrC,YAAJ,EAAkB;AAChBqC,UAAGrC,YAAH,GAAkBA,YAAlB;AACD;AACD,SAAIpB,WAAJ,EAAiB;AACf,WAAIwD,UAAUxD,WAAV,KAA0B,KAAK5B,KAAL,CAAW4B,WAAzC,EAAsD;AACpD,cAAKgD,iBAAL,GAAyB,KAAzB;AACD,QAFD,MAEO;AACL,cAAKA,iBAAL,GAAyB,IAAzB;AACD;AACDS,UAAGzD,WAAH,GAAiBA,WAAjB;AACD;AACD,SAAIwB,YAAJ,EAAkB;AAChBiC,UAAGjC,YAAH,GAAkBA,YAAlB;AACD;AACD,UAAK/C,QAAL,CAAcgF,EAAd;AACD,I;;kBAED1B,W,wBAAY2B,C,EAAGC,Q,EAAU;AACvB,UAAKC,QAAL,GAAgBD,QAAhB;AACA,UAAKP,aAAL,GAAqB,KAAKS,YAAL,CAAkBF,QAAlB,CAArB;AACA,SAAMF,KAAK;AACTL,sBAAe,KAAKA;AADX,MAAX;AAGA,SAAMhC,eAAe,KAAK0C,eAAL,CAAqBH,QAArB,EAA+B,KAA/B,CAArB;AACA,SAAIvC,YAAJ,EAAkB;AAChB;AACA,YAAK2C,kBAAL;AACAN,UAAGrC,YAAH,GAAkBA,YAAlB;AACD;AACD,UAAK3C,QAAL,CAAcgF,EAAd;AACA,UAAKrF,KAAL,CAAW2D,WAAX,CAAuB;AACrBiC,cAAON,CADc;AAErBO,aAAMN;AAFe,MAAvB;AAIA,UAAKO,YAAL,GAAoB,KAApB;AACD,I;;kBAEDC,c,2BAAeT,C,EAAGC,Q,EAAU;AAC1B,SAAMS,YAAY,CAAC,kBAAD,EAAeT,SAASU,IAAT,CAAcC,YAA7B,EAA2CC,GAA7D;AACA,SAAMC,eAAeb,SAASU,IAAT,CAAcC,YAAd,CAA2BE,YAAhD;AACA,SAAMC,QAAQf,EAAEe,KAAhB;AACA,SAAMC,YAAY,CAAlB;AACA,SAAID,QAAQL,YAAYI,YAAZ,GAA2BE,SAAvC,EAAkD;AAChD,YAAKC,YAAL,GAAoB,CAApB;AACA,cAAO,CAAP;AACD;AACD,SAAIF,QAAQL,YAAYM,SAAxB,EAAmC;AACjC,YAAKC,YAAL,GAAoB,CAAC,CAArB;AACA,cAAO,CAAC,CAAR;AACD;AACD,UAAKA,YAAL,GAAoB,CAApB;AACA,YAAO,CAAP;AACD,I;;kBAED3C,W,wBAAY0B,C,EAAGC,Q,EAAU;AACvB,SAAMiB,WAAW,KAAKT,cAAL,CAAoBT,CAApB,EAAuBC,QAAvB,CAAjB;AACA,SAAI,KAAKC,QAAL,CAAcxF,KAAd,CAAoByG,QAApB,KAAiClB,SAASvF,KAAT,CAAeyG,QAAhD,IAA4DD,aAAa,CAA7E,EAAgF;AAC9E,YAAKnG,QAAL,CAAc;AACZ4E,0BAAiB;AADL,QAAd;AAGA;AACD;AACD,SAAMI,KAAK;AACTJ,wBAAiBM,SAASvF,KAAT,CAAeyG;AADvB,MAAX;AAGA,SAAMzD,eAAe,KAAK0C,eAAL,CAAqBH,QAArB,EAA+B,IAA/B,CAArB;AACA,SAAIvC,YAAJ,EAAkB;AAChB,YAAK2C,kBAAL;AACAN,UAAGrC,YAAH,GAAkBA,YAAlB;AACD;AACD,UAAK3C,QAAL,CAAcgF,EAAd;AACA,UAAKrF,KAAL,CAAW4D,WAAX,CAAuB;AACrBgC,cAAON,CADc;AAErBO,aAAMN,QAFe;AAGrBvC,qBAAcA,6CAAoBA,YAApB,mCAAyC,KAAK/C,KAAL,CAAW+C,YAApD;AAHO,MAAvB;AAKD,I;;kBAEDa,U,uBAAWyB,C,EAAGC,Q,EAAU;AACtB,UAAKvF,KAAL,CAAW6D,UAAX,CAAsB;AACpB+B,cAAON,CADa;AAEpBO,aAAMN;AAFc,MAAtB;AAID,I;;kBAEDzB,W,wBAAYwB,C,EAAGC,Q,EAAU;AACvB,UAAKvF,KAAL,CAAW8D,WAAX,CAAuB;AACrB8B,cAAON,CADc;AAErBO,aAAMN;AAFe,MAAvB;AAID,I;;kBAEDxB,M,mBAAOuB,C,EAAGC,Q,EAAU;AAClB,SAAMmB,MAAMnB,SAASvF,KAAT,CAAeyG,QAA3B;AACA,UAAKpG,QAAL,CAAc;AACZ4E,wBAAiB,EADL;AAEZC,oBAAawB;AAFD,MAAd;AAIA,SAAI,KAAK1B,aAAL,CAAmB2B,OAAnB,CAA2BD,GAA3B,IAAkC,CAAC,CAAvC,EAA0C;AACxC,WAAIjF,QAAQmF,IAAZ,EAAkB;AAChBnF,iBAAQmF,IAAR,CAAa,uDAAb;AACD;AACD,cAAO,KAAP;AACD;;AAED,SAAMC,SAAStB,SAASvF,KAAT,CAAe8G,GAAf,CAAmBC,KAAnB,CAAyB,GAAzB,CAAf;AACA,SAAMC,MAAM;AACVpB,cAAON,CADG;AAEVO,aAAMN,QAFI;AAGVC,iBAAU,KAAKA,QAHL;AAIVR,mDAAmB,KAAKA,aAAxB,EAJU;AAKVuB,qBAAc,KAAKA,YAAL,GAAoBU,OAAOJ,OAAOA,OAAOK,MAAP,GAAgB,CAAvB,CAAP;AALxB,MAAZ;AAOA,SAAI,KAAKX,YAAL,KAAsB,CAA1B,EAA6B;AAC3BS,WAAIG,SAAJ,GAAgB,IAAhB;AACD;AACD,SAAI,kBAAkB,KAAKnH,KAA3B,EAAkC;AAChCgH,WAAII,eAAJ,GAAsB,6BAAI,KAAKC,gBAAT,mCAAkC,KAAKpH,KAAL,CAAW+C,YAA7C,EAAtB;AACD;AACD,UAAKhD,KAAL,CAAW+D,MAAX,CAAkBiD,GAAlB;AACA,UAAKlB,YAAL,GAAoB,IAApB;AACD,I;;kBAEDwB,S,sBAAUhC,C,EAAGC,Q,EAAU;AACrB,UAAKlF,QAAL,CAAc;AACZ4E,wBAAiB;AADL,MAAd;AAGA,UAAKjF,KAAL,CAAWsH,SAAX,CAAqB;AACnB1B,cAAON,CADY;AAEnBO,aAAMN;AAFa,MAArB;AAID,I;;kBAEDlC,Q,qBAASkC,Q,EAAU;AAAA;;AACjB,SAAMgC,WAAW,CAAChC,SAASvF,KAAT,CAAeuH,QAAjC;AACA,SAAMC,aAAa,kBAAkB,KAAKxH,KAA1C;AACA,SAAMgD,4CAAmB,KAAK/C,KAAL,CAAW+C,YAA9B,EAAN;AACA,SAAM7B,QAAQ6B,aAAa2D,OAAb,CAAqBpB,SAASvF,KAAT,CAAeyG,QAApC,CAAd;AACA,SAAIc,YAAYpG,UAAU,CAAC,CAA3B,EAA8B;AAC5B6B,oBAAayE,IAAb,CAAkBlC,SAASvF,KAAT,CAAeyG,QAAjC;AACD,MAFD,MAEO,IAAI,CAACc,QAAD,IAAapG,QAAQ,CAAC,CAA1B,EAA6B;AAClC6B,oBAAa0E,MAAb,CAAoBvG,KAApB,EAA2B,CAA3B;AACD;AACD,SAAI,CAACqG,UAAL,EAAiB;AACf,YAAKnH,QAAL,CAAc;AACZ2C;AADY,QAAd;AAGD;AACD,UAAKhD,KAAL,CAAWqD,QAAX,CAAoBL,YAApB,EAAkC;AAChC6C,aAAMN,QAD0B;AAEhCgC;AAFgC,MAAlC;;AAKA;AACA,SAAIA,YAAY,KAAKvH,KAAL,CAAWwD,QAA3B,EAAqC;AACnC,cAAO,KAAKxD,KAAL,CAAWwD,QAAX,CAAoB+B,QAApB,EAA8BoC,IAA9B,CAAmC,YAAM;AAC9C,aAAI,CAACH,UAAL,EAAiB;AACf,kBAAKnH,QAAL,CAAc;AACZ2C;AADY,YAAd;AAGD;AACF,QANM,CAAP;AAOD;AACF,I;;kBAEDrB,O,oBAAQ4D,Q,EAAU;AAAA;;AAChB,SAAIxD,UAAU,CAACwD,SAASvF,KAAT,CAAe+B,OAA9B;AACA,SAAIwD,SAASvF,KAAT,CAAe4H,WAAnB,EAAgC;AAC9B7F,iBAAU,IAAV;AACD;AACD,SAAM2E,MAAMnB,SAASvF,KAAT,CAAeyG,QAA3B;AACA,SAAI7E,2CAAkB,KAAK3B,KAAL,CAAW2B,WAA7B,EAAJ;AACA,SAAMT,QAAQS,YAAY+E,OAAZ,CAAoBD,GAApB,CAAd;;AAEA,SAAMmB,QAAQ;AACZjC,cAAO,OADK;AAEZC,aAAMN,QAFM;AAGZxD;AAHY,MAAd;;AAMA,SAAI,KAAK/B,KAAL,CAAW4C,aAAf,EAA8B;AAC5B,WAAIb,WAAWZ,UAAU,CAAC,CAA1B,EAA6B;AAC3BS,qBAAY6F,IAAZ,CAAiBf,GAAjB;AACD;AACD,WAAI,CAAC3E,OAAD,IAAYZ,QAAQ,CAAC,CAAzB,EAA4B;AAC1BS,qBAAY8F,MAAZ,CAAmBvG,KAAnB,EAA0B,CAA1B;AACD;AACD,YAAK2G,eAAL,CAAqBvC,SAASvF,KAAT,CAAe8G,GAApC,EAAyC/E,OAAzC,GAAmDA,OAAnD;AACA8F,aAAME,YAAN,GAAqB,EAArB;AACA,kCAAgB,KAAK/H,KAAL,CAAWuE,QAA3B,EAAqC,UAACyD,IAAD,EAAOC,GAAP,EAAYnB,GAAZ,EAAiBoB,QAAjB,EAA8B;AACjE,aAAItG,YAAY+E,OAAZ,CAAoBuB,QAApB,MAAkC,CAAC,CAAvC,EAA0C;AACxCL,iBAAME,YAAN,CAAmBN,IAAnB,CAAwBO,IAAxB;AACD;AACF,QAJD;AAKA,WAAI,EAAE,iBAAiB,KAAKhI,KAAxB,CAAJ,EAAoC;AAClC,cAAKK,QAAL,CAAc;AACZuB;AADY,UAAd;AAGD;AACD,WAAMgG,cAAc,KAAK5H,KAAL,CAAW4B,WAAX,GAAyB,KAAK5B,KAAL,CAAW4B,WAAX,CAAuBgG,WAAhD,GAA8D,EAAlF;AACA,YAAK5H,KAAL,CAAW2B,OAAX,CAAmB,4BAAiBC,WAAjB,EAA8BgG,WAA9B,CAAnB,EAA+DC,KAA/D;AACD,MArBD,MAqBO;AACL,WAAI9F,WAAWZ,UAAU,CAAC,CAA1B,EAA6B;AAC3B,cAAK2G,eAAL,CAAqBvC,SAASvF,KAAT,CAAe8G,GAApC,EAAyC/E,OAAzC,GAAmD,IAAnD;AACA,aAAMoG,mBAAmB,EAAzB;AACAC,gBAAO5G,IAAP,CAAY,KAAKsG,eAAjB,EAAkCrD,OAAlC,CAA0C,aAAK;AAC7C,eAAI,OAAKqD,eAAL,CAAqBO,CAArB,EAAwBtG,OAA5B,EAAqC;AACnCoG,8BAAiBV,IAAjB,CAAsBY,CAAtB;AACD;AACF,UAJD;AAKA,qCAAiB,KAAKP,eAAtB,EAAuC,gCAAqBK,gBAArB,CAAvC,EAA+E,IAA/E;AACD;AACD,WAAI,CAACpG,OAAL,EAAc;AACZ,cAAK+F,eAAL,CAAqBvC,SAASvF,KAAT,CAAe8G,GAApC,EAAyC/E,OAAzC,GAAmD,KAAnD;AACA,cAAK+F,eAAL,CAAqBvC,SAASvF,KAAT,CAAe8G,GAApC,EAAyCc,WAAzC,GAAuD,KAAvD;AACA,qCAAiB,KAAKE,eAAtB,EAAuC,CAACvC,SAASvF,KAAT,CAAe8G,GAAhB,CAAvC,EAA6D,KAA7D;AACD;AACD,WAAMwB,YAAY,oBAAS,KAAKR,eAAd,CAAlB;AACAD,aAAME,YAAN,GAAqBO,UAAUP,YAA/B;AACAF,aAAMU,qBAAN,GAA8BD,UAAUC,qBAAxC;AACAV,aAAMW,eAAN,GAAwBF,UAAUE,eAAlC;AACA,YAAKF,SAAL,GAAiBA,SAAjB;;AAEA,YAAKG,YAAL,GAAoB7G,cAAc0G,UAAU1G,WAA5C;AACA,WAAI,EAAE,iBAAiB,KAAK5B,KAAxB,CAAJ,EAAoC;AAClC,cAAKK,QAAL,CAAc;AACZuB;AADY,UAAd;AAGD;AACD,YAAK5B,KAAL,CAAW2B,OAAX,CAAmBC,WAAnB,EAAgCiG,KAAhC;AACD;AACF,I;;kBAED3F,Q,qBAASqD,Q,EAAU;AACjB,SAAMvF,QAAQ,KAAKA,KAAnB;AACA,SAAMoD,4CAAmB,KAAKnD,KAAL,CAAWmD,YAA9B,EAAN;AACA,SAAMqD,WAAWlB,SAASvF,KAAT,CAAeyG,QAAhC;AACA,SAAMtF,QAAQiC,aAAauD,OAAb,CAAqBF,QAArB,CAAd;AACA,SAAIiC,iBAAJ;AACA,SAAIvH,UAAU,CAAC,CAAf,EAAkB;AAChBuH,kBAAW,KAAX;AACAtF,oBAAasE,MAAb,CAAoBvG,KAApB,EAA2B,CAA3B;AACD,MAHD,MAGO;AACLuH,kBAAW,IAAX;AACA,WAAI,CAAC1I,MAAM0C,QAAX,EAAqB;AACnBU,sBAAa8D,MAAb,GAAsB,CAAtB;AACD;AACD9D,oBAAaqE,IAAb,CAAkBhB,QAAlB;AACD;AACD,SAAMkC,gBAAgB,EAAtB;AACA,SAAIvF,aAAa8D,MAAjB,EAAyB;AACvB,kCAAgB,KAAKlH,KAAL,CAAWuE,QAA3B,EAAqC,UAACyD,IAAD,EAAU;AAC7C,aAAI5E,aAAauD,OAAb,CAAqBqB,KAAKtB,GAA1B,MAAmC,CAAC,CAAxC,EAA2C;AACzCiC,yBAAclB,IAAd,CAAmBO,IAAnB;AACD;AACF,QAJD;AAKD;AACD,SAAMH,QAAQ;AACZjC,cAAO,QADK;AAEZC,aAAMN,QAFM;AAGZmD,yBAHY;AAIZC;AAJY,MAAd;AAMA,SAAI,EAAE,kBAAkB,KAAK3I,KAAzB,CAAJ,EAAqC;AACnC,YAAKK,QAAL,CAAc;AACZ+C;AADY,QAAd;AAGD;AACDpD,WAAMkC,QAAN,CAAekB,YAAf,EAA6ByE,KAA7B;AACD,I;;kBAEDe,Y,yBAAatD,C,EAAGC,Q,EAAU;AACxB,UAAKvF,KAAL,CAAW4I,YAAX,CAAwB;AACtBhD,cAAON,CADe;AAEtBO,aAAMN;AAFgB,MAAxB;AAID,I;;kBAEDsD,Y,yBAAavD,C,EAAGC,Q,EAAU;AACxB,UAAKvF,KAAL,CAAW6I,YAAX,CAAwB;AACtBjD,cAAON,CADe;AAEtBO,aAAMN;AAFgB,MAAxB;AAID,I;;kBAEDuD,a,0BAAcxD,C,EAAGC,Q,EAAU;AACzB,SAAMnC,4CAAmB,KAAKnD,KAAL,CAAWmD,YAA9B,EAAN;AACA,SAAMqD,WAAWlB,SAASvF,KAAT,CAAeyG,QAAhC;AACA,SAAI,KAAK9B,eAAL,CAAqBgC,OAArB,CAA6BF,QAA7B,MAA2C,CAAC,CAAhD,EAAmD;AACjD,YAAK9B,eAAL,CAAqB8C,IAArB,CAA0BhB,QAA1B;AACD;AACD,UAAK9B,eAAL,CAAqBF,OAArB,CAA6B,UAACiC,GAAD,EAAS;AACpC,WAAMvF,QAAQiC,aAAauD,OAAb,CAAqBD,GAArB,CAAd;AACA,WAAIvF,UAAU,CAAC,CAAf,EAAkB;AAChBiC,sBAAasE,MAAb,CAAoBvG,KAApB,EAA2B,CAA3B;AACD;AACF,MALD;AAMA,SAAIiC,aAAauD,OAAb,CAAqBF,QAArB,MAAmC,CAAC,CAAxC,EAA2C;AACzCrD,oBAAaqE,IAAb,CAAkBhB,QAAlB;AACD;AACD,UAAKpG,QAAL,CAAc;AACZ+C;AADY,MAAd;AAGA,UAAKpD,KAAL,CAAWyD,YAAX,CAAwB;AACtBmC,cAAON,CADe;AAEtBO,aAAMN;AAFgB,MAAxB;AAID,I;;AAED;;;kBACAwD,S,sBAAUzD,C,EAAG;AACXA,OAAE0D,cAAF;AACD,I;;kBAEDC,qB,kCAAsBjJ,K,EAAOkJ,a,EAAeC,S,EAAW;AACrD,SAAM3H,OAAOxB,MAAMkJ,aAAN,CAAb;AACA,SAAI,CAACC,SAAD,IAAc,CAACnJ,MAAM2C,gBAAzB,EAA2C;AACzC,cAAOnB,QAAQ,EAAf;AACD;AACD,SAAM4H,sBAAsB,EAA5B;AACA,SAAIpJ,MAAM2C,gBAAV,EAA4B;AAC1B,kCAAgB3C,MAAMuE,QAAtB,EAAgC,UAACyD,IAAD,EAAO7G,KAAP,EAAc2F,GAAd,EAAmBuC,MAAnB,EAA8B;AAC5D,aAAI7H,KAAKmF,OAAL,CAAa0C,MAAb,IAAuB,CAAC,CAA5B,EAA+B;AAC7BD,+BAAoB3B,IAApB,CAAyBX,GAAzB;AACD;AACF,QAJD;AAKD;AACD,SAAMwC,qBAAqB,EAA3B;AACA,gCAAgBtJ,MAAMuE,QAAtB,EAAgC,UAACyD,IAAD,EAAO7G,KAAP,EAAc2F,GAAd,EAAmBuC,MAAnB,EAA8B;AAC5D,WAAIF,SAAJ,EAAe;AACbG,4BAAmB7B,IAAnB,CAAwB4B,MAAxB;AACD,QAFD,MAEO,IAAIrJ,MAAM2C,gBAAV,EAA4B;AACjCyG,6BAAoB3E,OAApB,CAA4B,aAAK;AAC/B,eAAI,CAAC8E,EAAExC,KAAF,CAAQ,GAAR,EAAaG,MAAb,GAAsBJ,IAAIC,KAAJ,CAAU,GAAV,EAAeG,MAArC,IAA+C,qBAAUJ,IAAIC,KAAJ,CAAU,GAAV,CAAV,EAA0BwC,EAAExC,KAAF,CAAQ,GAAR,CAA1B,CAA/C,IAA0FD,QAAQyC,CAAnG,KAAyGD,mBAAmB3C,OAAnB,CAA2B0C,MAA3B,MAAuC,CAAC,CAArJ,EAAwJ;AACtJC,gCAAmB7B,IAAnB,CAAwB4B,MAAxB;AACD;AACF,UAJD;AAKD;AACF,MAVD;AAWA,YAAOC,mBAAmBpC,MAAnB,GAA4BoC,kBAA5B,GAAiD9H,IAAxD;AACD,I;;kBAEDqD,sB,mCAAuB7E,K,EAAOwJ,gB,EAAkB;AAC9C,SAAIxG,eAAewG,mBAAmBC,SAAnB,GACjB,KAAKR,qBAAL,CAA2BjJ,KAA3B,EAAkC,qBAAlC,EACEA,MAAMgC,mBAAN,CAA0BkF,MAA1B,GAAmC,KAAnC,GAA2ClH,MAAM8C,gBADnD,CADF;AAGA,SAAI,kBAAkB9C,KAAtB,EAA6B;AAC3BgD,sBAAe,CAAChD,MAAM2C,gBAAN,GACd,KAAKsG,qBAAL,CAA2BjJ,KAA3B,EAAkC,cAAlC,EAAkD,KAAlD,CADc,GAEdA,MAAMgD,YAFO,KAEU,EAFzB;AAGD;AACD,YAAOA,YAAP;AACD,I;;kBAED8B,qB,kCAAsB9E,K,EAAOwJ,gB,EAAkB;AAC7C,SAAI5H,cAAc4H,mBAAmBC,SAAnB,GAA+BzJ,MAAMmD,kBAAvD;AACA,SAAI,iBAAiBnD,KAArB,EAA4B;AAC1B4B,qBAAc5B,MAAM4B,WAAN,IAAqB,EAAnC;AACA,WAAI5B,MAAM4C,aAAV,EAAyB;AACvB,aAAI5C,MAAM4B,WAAN,CAAkBG,OAAtB,EAA+B;AAC7BH,yBAAc5B,MAAM4B,WAAN,CAAkBG,OAAhC;AACD,UAFD,MAEO,IAAI,CAAC2H,MAAMC,OAAN,CAAc3J,MAAM4B,WAApB,CAAL,EAAuC;AAC5CA,yBAAc,EAAd;AACD;AACF;AACF;AACD,YAAOA,WAAP;AACD,I;;kBAEDmD,sB,mCAAuB/E,K,EAAOwJ,gB,EAAkB;AAC9C,SAAMI,UAAU,SAAVA,OAAU,CAACpI,IAAD,EAAU;AACxB,WAAIxB,MAAM0C,QAAV,EAAoB;AAClB,6CAAWlB,IAAX;AACD;AACD,WAAIA,KAAK0F,MAAT,EAAiB;AACf,gBAAO,CAAC1F,KAAK,CAAL,CAAD,CAAP;AACD;AACD,cAAOA,IAAP;AACD,MARD;AASA,SAAI4B,eAAeoG,mBAAmBC,SAAnB,GAA+BG,QAAQ5J,MAAMiC,mBAAd,CAAlD;AACA,SAAI,kBAAkBjC,KAAtB,EAA6B;AAC3BoD,sBAAewG,QAAQ5J,MAAMoD,YAAd,CAAf;AACD;AACD,YAAOA,YAAP;AACD,I;;kBAEDuC,kB,iCAAqB;AACnB,SAAI,CAAC,KAAK0B,gBAAN,IAA2B,kBAAkB,KAAKrH,KAAtD,EAA8D;AAC5D,YAAKqH,gBAAL,gCAA4B,KAAKpH,KAAL,CAAW+C,YAAvC;AACD;AACF,I;;kBAED6G,qB,oCAAwB;AACtB,SAAM7J,QAAQ,KAAKA,KAAnB;AACA,SAAI8J,iBAAiB9J,MAAM+J,kBAA3B;AACA,SAAMC,gBAAgBhK,MAAMqE,aAA5B;AACA,SAAI,CAACyF,cAAD,IAAmB,OAAOE,aAAP,KAAyB,QAAhD,EAA0D;AACxDF,wBAAoB9J,MAAMkE,SAA1B,cAA4C8F,aAA5C;AACD;AACD,YAAOF,cAAP;AACD,I;;kBAEDrE,Y,yBAAaF,Q,EAAU;AACrB,SAAMP,gBAAgB,EAAtB;AACA,SAAMiF,QAAQ1E,SAASvF,KAAT,CAAe8G,GAAf,CAAmBC,KAAnB,CAAyB,GAAzB,CAAd;AACA,gCAAgB,KAAK/G,KAAL,CAAWuE,QAA3B,EAAqC,UAACyD,IAAD,EAAO7G,KAAP,EAAc2F,GAAd,EAAmBuC,MAAnB,EAA8B;AACjE,WAAMa,OAAOpD,IAAIC,KAAJ,CAAU,GAAV,CAAb;AACA,WAAIxB,SAASvF,KAAT,CAAe8G,GAAf,KAAuBA,GAAvB,IAA8BmD,MAAM/C,MAAN,GAAegD,KAAKhD,MAApB,IAA8B,qBAAU+C,KAAV,EAAiBC,IAAjB,CAAhE,EAAwF;AACtFlF,uBAAcyC,IAAd,CAAmB4B,MAAnB;AACD;AACF,MALD;AAMA,YAAOrE,aAAP;AACD,I;;kBAEDU,e,4BAAgBH,Q,EAAU4E,M,EAAQ;AAChC,SAAMzD,MAAMnB,SAASvF,KAAT,CAAeyG,QAA3B;AACA,SAAMzD,eAAe,KAAK/C,KAAL,CAAW+C,YAAhC;AACA,SAAMoH,gBAAgBpH,aAAa2D,OAAb,CAAqBD,GAArB,CAAtB;AACA,SAAI2D,eAAJ;AACA,SAAID,gBAAgB,CAAC,CAAjB,IAAsB,CAACD,MAA3B,EAAmC;AACjCE,6CAAarH,YAAb;AACAqH,cAAO3C,MAAP,CAAc0C,aAAd,EAA6B,CAA7B;AACA,cAAOC,MAAP;AACD;AACD,SAAIF,UAAUnH,aAAa2D,OAAb,CAAqBD,GAArB,MAA8B,CAAC,CAA7C,EAAgD;AAC9C,cAAO1D,aAAasH,MAAb,CAAoB,CAAC5D,GAAD,CAApB,CAAP;AACD;AACF,I;;kBAEDvC,c,2BAAeoB,Q,EAAU;AACvB,SAAMpB,iBAAiB,KAAKnE,KAAL,CAAWmE,cAAlC;AACA,SAAI,OAAOA,cAAP,KAA0B,UAA1B,IAAwCoB,SAASvF,KAAT,CAAeuK,QAA3D,EAAqE;AACnE,cAAO,KAAP;AACD;AACD,YAAOpG,eAAeqG,IAAf,CAAoB,IAApB,EAA0BjF,QAA1B,CAAP;AACD,I;;kBAEDkF,c,2BAAevJ,K,EAAOC,K,EAAkB;AAAA,SAAXuJ,KAAW,uEAAH,CAAG;;AACtC,SAAM5D,MAAS4D,KAAT,SAAkBvJ,KAAxB;AACA,SAAMuF,MAAMxF,MAAMwF,GAAN,IAAaI,GAAzB;AACA,SAAM7G,QAAQ,KAAKA,KAAnB;AACA,SAAMD,QAAQ,KAAKA,KAAnB;;AAEA;AACA,SAAI2K,aAAa3K,MAAM2K,UAAvB;AACA,SAAIzJ,MAAMlB,KAAN,CAAY4K,cAAZ,CAA2B,YAA3B,CAAJ,EAA8C;AAC5CD,oBAAazJ,MAAMlB,KAAN,CAAY2K,UAAzB;AACD;;AAED,SAAME,aAAa;AACjBC,0BAAiBpE,GADA;AAEjBqE,aAAM,IAFW;AAGjBtE,iBAAUC,GAHO;AAIjBI,eAJiB;AAKjB6D,6BALiB;AAMjBnH,iBAAUxD,MAAMwD,QANC;AAOjBoF,qBAAc5I,MAAM4I,YAPH;AAQjBC,qBAAc7I,MAAM6I,YARH;AASjBpF,qBAAczD,MAAMyD,YATH;AAUjBS,kBAAWlE,MAAMkE,SAVA;AAWjB5B,iBAAUtC,MAAMsC,QAXC;AAYjB8B,iBAAUpE,MAAMoE,QAZC;AAajBV,kBAAW1D,MAAM0D,SAbA;AAcjBsH,iBAAU/K,MAAMgF,eAAN,KAA0ByB,GAA1B,IAAiC,KAAKH,YAAL,KAAsB,CAdhD;AAejB0E,uBAAgBhL,MAAMgF,eAAN,KAA0ByB,GAA1B,IAAiC,KAAKH,YAAL,KAAsB,CAAC,CAfvD;AAgBjB2E,0BAAmBjL,MAAMgF,eAAN,KAA0ByB,GAA1B,IAAiC,KAAKH,YAAL,KAAsB,CAhBzD;AAiBjBT,qBAAc,KAAKA,YAjBF;AAkBjByB,iBAAUtH,MAAM+C,YAAN,CAAmB2D,OAAnB,CAA2BD,GAA3B,MAAoC,CAAC,CAlB9B;AAmBjBgC,iBAAUzI,MAAMmD,YAAN,CAAmBuD,OAAnB,CAA2BD,GAA3B,MAAoC,CAAC,CAnB9B;AAoBjBqD,2BAAoB,KAAKF,qBAAL,EApBH;AAqBjBxF,sBAAerE,MAAMqE,aArBJ;AAsBjBF,uBAAgB,KAAKA,cAAL,CAAoB/D,IAApB,CAAyB,IAAzB,CAtBC;AAuBjB+K,iBAAUnL,MAAMmL,QAvBC;AAwBjBC,kBAAWpL,MAAMoL;AAxBA,MAAnB;AA0BA,SAAIpL,MAAM6C,SAAV,EAAqB;AACnBgI,kBAAWhI,SAAX,GAAuB7C,MAAM6C,SAA7B;AACA,WAAI7C,MAAM4C,aAAV,EAAyB;AACvB,aAAI3C,MAAM2B,WAAV,EAAuB;AACrBiJ,sBAAW9I,OAAX,GAAqB9B,MAAM2B,WAAN,CAAkB+E,OAAlB,CAA0BD,GAA1B,MAAmC,CAAC,CAApC,IAAyC,KAA9D;AACD;AACD,aAAI1G,MAAM4B,WAAN,IAAqB5B,MAAM4B,WAAN,CAAkBgG,WAA3C,EAAwD;AACtDiD,sBAAWjD,WAAX,GAAyB5H,MAAM4B,WAAN,CAAkBgG,WAAlB,CAA8BjB,OAA9B,CAAsCD,GAAtC,MAA+C,CAAC,CAAhD,IAAqD,KAA9E;AACD,UAFD,MAEO;AACLmE,sBAAWjD,WAAX,GAAyB,KAAzB;AACD;AACF,QATD,MASO;AACL,aAAI,KAAKhG,WAAT,EAAsB;AACpBiJ,sBAAW9I,OAAX,GAAqB,KAAKH,WAAL,CAAiB+E,OAAjB,CAAyBD,GAAzB,MAAkC,CAAC,CAAnC,IAAwC,KAA7D;AACD;AACDmE,oBAAWjD,WAAX,GAAyB,KAAKY,eAAL,CAAqB7B,OAArB,CAA6BD,GAA7B,MAAsC,CAAC,CAAhE;AACD;AACF;AACD,SAAI,KAAKoB,eAAL,IAAwB,KAAKA,eAAL,CAAqBhB,GAArB,CAA5B,EAAuD;AACrD,gBAAc+D,UAAd,EAA0B,KAAK/C,eAAL,CAAqBhB,GAArB,EAA0BuE,eAApD;AACD;AACD,YAAO,mBAAMC,YAAN,CAAmBpK,KAAnB,EAA0B2J,UAA1B,CAAP;AACD,I;;kBAEDvK,M,qBAAS;AAAA;;AACP,SAAMN,QAAQ,KAAKA,KAAnB;AACA,SAAIuL,cAAc,EAAlB;AACA,SAAIvL,MAAMsC,QAAV,EAAoB;AAClBiJ,qBAAiBvL,MAAMkE,SAAvB;AACD;AACD,SAAMsH,WAAW;AACfhJ,kBAAW,6BAAWxC,MAAMwC,SAAjB,EAA4BxC,MAAMkE,SAAlC,EAA6CqH,WAA7C,CADI;AAEfE,aAAM;AAFS,MAAjB;;AAKA,SAAIzL,MAAM0L,SAAV,EAAqB;AACnBF,gBAASG,QAAT,GAAoB,GAApB;AACAH,gBAASzC,SAAT,GAAqB,KAAKA,SAA1B;AACD;AACD,SAAM6C,qBAAqB,SAArBA,kBAAqB,GAAM;AAC/B,cAAK9D,eAAL,GAAuB,EAAvB;AACA,kCAAgB9H,MAAMuE,QAAtB,EAAgC,UAACyD,IAAD,EAAO7G,KAAP,EAAc2F,GAAd,EAAmBoB,QAAnB,EAA6BmD,eAA7B,EAAiD;AAC/E,gBAAKvD,eAAL,CAAqBhB,GAArB,IAA4B;AAC1BuE;AAD0B,UAA5B;AAGD,QAJD;AAKD,MAPD;AAQA,SAAIrL,MAAMsC,QAAN,IAAkB,CAACtC,MAAM6C,SAA7B,EAAwC;AACtC+I;AACD;AACD,SAAI5L,MAAM6C,SAAN,KAAoB,KAAK+B,iBAAL,IAA0B5E,MAAMwD,QAApD,CAAJ,EAAmE;AACjE,WAAIxD,MAAM4C,aAAV,EAAyB;AACvBgJ;AACD,QAFD,MAEO,IAAI5L,MAAM6L,gBAAV,EAA4B;AACjC,cAAK/D,eAAL,GAAuB9H,MAAM6L,gBAAN,CAAuB/D,eAA9C;AACA,cAAKU,eAAL,GAAuBxI,MAAM6L,gBAAN,CAAuBrD,eAA9C;AACA,cAAK5G,WAAL,GAAmB5B,MAAM6L,gBAAN,CAAuBjK,WAA1C;AACD,QAJM,MAIA;AACL,aAAMA,cAAc,KAAK3B,KAAL,CAAW2B,WAA/B;AACA,aAAI0G,kBAAJ;AACA,aAAI,CAACtI,MAAMwD,QAAP,IAAmB,KAAK8E,SAAxB,IAAqC,KAAKG,YAA1C,IACF,uBAAY,KAAKA,YAAjB,EAA+B7G,WAA/B,CADF,EAC+C;AAC7C;AACA0G,uBAAY,KAAKA,SAAjB;AACD,UAJD,MAIO;AACL,eAAMH,mBAAmB,EAAzB;AACA,gBAAKL,eAAL,GAAuB,EAAvB;AACA,sCAAgB9H,MAAMuE,QAAtB,EAAgC,UAACyD,IAAD,EAAO7G,KAAP,EAAc2F,GAAd,EAAmBoB,QAAnB,EAA6BmD,eAA7B,EAAiD;AAC/E,oBAAKvD,eAAL,CAAqBhB,GAArB,IAA4B;AAC1BjB,qBAAMmC,IADoB;AAE1BtB,oBAAKwB,QAFqB;AAG1BnG,wBAAS,KAHiB;AAI1B6F,4BAAa,KAJa;AAK1ByD;AAL0B,cAA5B;AAOA,iBAAIzJ,YAAY+E,OAAZ,CAAoBuB,QAApB,MAAkC,CAAC,CAAvC,EAA0C;AACxC,sBAAKJ,eAAL,CAAqBhB,GAArB,EAA0B/E,OAA1B,GAAoC,IAApC;AACAoG,gCAAiBV,IAAjB,CAAsBX,GAAtB;AACD;AACF,YAZD;AAaA;AACA,uCAAiB,KAAKgB,eAAtB,EAAuC,gCAAqBK,gBAArB,CAAvC,EAA+E,IAA/E;AACAG,uBAAY,oBAAS,KAAKR,eAAd,CAAZ;AACD;AACD,cAAKU,eAAL,GAAuBF,UAAUE,eAAjC;AACA,cAAK5G,WAAL,GAAmB0G,UAAU1G,WAA7B;AACD;AACF;;AAED,YACE;AAAA;AAAA,oBAAQ4J,QAAR,IAAkB,cAAa,MAA/B,EAAsC,KAAI,MAA1C;AACG,0BAAMM,QAAN,CAAe7K,GAAf,CAAmBjB,MAAMuE,QAAzB,EAAmC,KAAKkG,cAAxC,EAAwD,IAAxD;AADH,MADF;AAKD,I;;;GAjlBgB,mBAAMsB,S;;AAolBzBzH,MAAK0H,SAAL,GAAiB;AACf9H,cAAW,uBAAUzB,MADN;AAEf8B,aAAU,uBAAU0H,GAFL;AAGf3J,aAAU,uBAAUC,IAHL;AAIf6B,aAAU,uBAAU7B,IAJL;AAKfoI,eAAY,uBAAUpI,IALP;AAMfG,aAAU,uBAAUH,IANL;AAOfM,cAAW,uBAAUI,SAAV,CAAoB,CAC7B,uBAAUV,IADmB,EAE7B,uBAAUsD,IAFmB,CAApB,CAPI;AAWfgG,qBAAkB,uBAAU3I,MAXb;AAYfN,kBAAe,uBAAUL,IAZV;AAafmB,cAAW,uBAAUnB,IAbN;AAcfI,qBAAkB,uBAAUJ,IAdb;AAefO,qBAAkB,uBAAUP,IAfb;AAgBfP,wBAAqB,uBAAUkK,OAAV,CAAkB,uBAAUzJ,MAA5B,CAhBN;AAiBfO,iBAAc,uBAAUkJ,OAAV,CAAkB,uBAAUzJ,MAA5B,CAjBC;AAkBfU,uBAAoB,uBAAU+I,OAAV,CAAkB,uBAAUzJ,MAA5B,CAlBL;AAmBfb,gBAAa,uBAAUqB,SAAV,CAAoB,CAC/B,uBAAUiJ,OAAV,CAAkB,uBAAUzJ,MAA5B,CAD+B,EAE/B,uBAAUS,MAFqB,CAApB,CAnBE;AAuBfjB,wBAAqB,uBAAUiK,OAAV,CAAkB,uBAAUzJ,MAA5B,CAvBN;AAwBfW,iBAAc,uBAAU8I,OAAV,CAAkB,uBAAUzJ,MAA5B,CAxBC;AAyBfY,aAAU,uBAAUC,IAzBL;AA0Bf3B,YAAS,uBAAU2B,IA1BJ;AA2BfpB,aAAU,uBAAUoB,IA3BL;AA4BfE,aAAU,uBAAUF,IA5BL;AA6BfsF,iBAAc,uBAAUtF,IA7BT;AA8BfuF,iBAAc,uBAAUvF,IA9BT;AA+BfG,iBAAc,uBAAUH,IA/BT;AAgCfK,gBAAa,uBAAUL,IAhCR;AAiCfM,gBAAa,uBAAUN,IAjCR;AAkCfO,eAAY,uBAAUP,IAlCP;AAmCfQ,gBAAa,uBAAUR,IAnCR;AAoCfS,WAAQ,uBAAUT,IApCH;AAqCfgE,cAAW,uBAAUhE,IArCN;AAsCfa,mBAAgB,uBAAUb,IAtCX;AAuCfyG,uBAAoB,uBAAUtH,MAvCf;AAwCf4B,kBAAe,uBAAUpB,SAAV,CAAoB,CAAC,uBAAUR,MAAX,EAAmB,uBAAUS,MAA7B,CAApB;AAxCA,EAAjB;;AA2CAoB,MAAK/C,YAAL,GAAoB;AAClB2C,cAAW,SADO;AAElB5B,aAAU,KAFQ;AAGlB8B,aAAU,IAHQ;AAIlBuG,eAAY,IAJM;AAKlBjI,aAAU,KALQ;AAMlBG,cAAW,KANO;AAOlBD,kBAAe,KAPG;AAQlBc,cAAW,KARO;AASlBf,qBAAkB,IATA;AAUlBG,qBAAkB,KAVA;AAWlBd,wBAAqB,EAXH;AAYlBmB,uBAAoB,EAZF;AAalBlB,wBAAqB,EAbH;AAclBoB,aAAUmB,IAdQ;AAelB7C,YAAS6C,IAfS;AAgBlBtC,aAAUsC,IAhBQ;AAiBlBb,gBAAaa,IAjBK;AAkBlBZ,gBAAaY,IAlBK;AAmBlBX,eAAYW,IAnBM;AAoBlBV,gBAAaU,IApBK;AAqBlBT,WAAQS,IArBU;AAsBlB8C,cAAW9C;AAtBO,EAApB;;sBAyBeF,I;;;;;;;;;;;;SCtqBC6H,O,GAAAA,O;SAiDAC,S,GAAAA,S;SA2CAC,e,GAAAA,e;SAcAC,S,GAAAA,S;SASAC,oB,GAAAA,oB;SA+CAC,gB,GAAAA,gB;SA8EAC,Q,GAAAA,Q;SAoBAC,gB,GAAAA,gB;SAOAC,W,GAAAA,W;;AA7QhB;;;;;;AAEO,UAASR,OAAT,CAAiBS,SAAjB,EAA4B;AACjC,OAAIC,YAAJ;AACA,OAAMC,KAAKF,UAAUG,SAArB;AACA,OAAIC,IAAIF,GAAGG,KAAH,CAAS,8DAAT,KAA4E,EAApF;AACA,OAAI,WAAWC,IAAX,CAAgBF,EAAE,CAAF,CAAhB,CAAJ,EAA2B;AACzBH,WAAM,kBAAkBM,IAAlB,CAAuBL,EAAvB,KAA8B,EAApC;AACA,qBAAaD,IAAI,CAAJ,KAAU,EAAvB;AACD;AACD,OAAIG,EAAE,CAAF,MAAS,QAAb,EAAuB;AACrBH,WAAMC,GAAGG,KAAH,CAAS,qBAAT,CAAN;AACA,SAAIJ,GAAJ,EAAS,OAAOA,IAAIO,KAAJ,CAAU,CAAV,EAAaC,IAAb,CAAkB,GAAlB,EAAuBC,OAAvB,CAA+B,KAA/B,EAAsC,OAAtC,CAAP;AACV;AACDN,OAAIA,EAAE,CAAF,IAAO,CAACA,EAAE,CAAF,CAAD,EAAOA,EAAE,CAAF,CAAP,CAAP,GAAsB,CAACJ,UAAUW,OAAX,EAAoBX,UAAUY,UAA9B,EAA0C,IAA1C,CAA1B;AACAX,SAAMC,GAAGG,KAAH,CAAS,iBAAT,CAAN;AACA,OAAIJ,GAAJ,EAAS;AACPG,OAAEtF,MAAF,CAAS,CAAT,EAAY,CAAZ,EAAemF,IAAI,CAAJ,CAAf;AACD;AACD,UAAOG,EAAEK,IAAF,CAAO,GAAP,CAAP;AACD;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AApDA;;AAqDO,UAASjB,SAAT,CAAmBqB,GAAnB,EAAwB;AAC7B,OAAIC,YAAJ;AAAA,OAASC,YAAT;AAAA,OAAcC,gBAAd;AAAA,OAAuBC,aAAvB;;AAEA,OAAI,CAACJ,IAAIK,cAAJ,GAAqB5G,MAA1B,EAAkC;AAChC,YAAO,EAAEf,KAAK,CAAP,EAAU4H,MAAM,CAAhB,EAAP;AACD;;AAEDF,UAAOJ,IAAIO,qBAAJ,EAAP;;AAEA,OAAIH,KAAKI,KAAL,IAAcJ,KAAKK,MAAvB,EAA+B;AAC7BR,WAAMD,IAAIU,aAAV;AACAR,WAAMD,IAAIU,WAAV;AACAR,eAAUF,IAAIW,eAAd;;AAEA,YAAO;AACLlI,YAAK0H,KAAK1H,GAAL,GAAWwH,IAAIW,WAAf,GAA6BV,QAAQW,SADrC;AAELR,aAAMF,KAAKE,IAAL,GAAYJ,IAAIa,WAAhB,GAA8BZ,QAAQa;AAFvC,MAAP;AAID;;AAED,UAAOZ,IAAP;AACD;AACD;;AAEA,UAASa,iBAAT,CAA2BnK,QAA3B,EAAqC;AACnC,OAAIoK,MAAM,CAAV;AACA,OAAIjF,MAAMC,OAAN,CAAcpF,QAAd,CAAJ,EAA6B;AAC3BoK,WAAMpK,SAAS2C,MAAf;AACD;AACD,UAAOyH,GAAP;AACD;;AAED,UAASC,kBAAT,CAA4BzN,KAA5B,EAAmCwN,GAAnC,EAAwCtD,eAAxC,EAAyD;AACvD,OAAIsD,QAAQ,CAAZ,EAAe;AACbtD,qBAAgBwD,KAAhB,GAAwB,IAAxB;AACAxD,qBAAgByD,IAAhB,GAAuB,IAAvB;AACD,IAHD,MAGO;AACLzD,qBAAgBwD,KAAhB,GAAwB1N,UAAU,CAAlC;AACAkK,qBAAgByD,IAAhB,GAAuB3N,UAAUwN,MAAM,CAAvC;AACD;AACD,UAAOtD,eAAP;AACD;;AAEM,UAASgB,eAAT,CAAyB0C,MAAzB,EAAiCC,QAAjC,EAA2CC,MAA3C,EAAmD;AACxD,OAAMC,OAAO,SAAPA,IAAO,CAAC3K,QAAD,EAAWmG,KAAX,EAAkByE,OAAlB,EAA8B;AACzC,SAAMR,MAAMD,kBAAkBnK,QAAlB,CAAZ;AACA,wBAAMuH,QAAN,CAAerH,OAAf,CAAuBF,QAAvB,EAAiC,UAACyD,IAAD,EAAO7G,KAAP,EAAiB;AAChD,WAAM2F,MAAS4D,KAAT,SAAkBvJ,KAAxB;AACA,WAAI6G,KAAKhI,KAAL,CAAWuE,QAAX,IAAuByD,KAAKoH,IAA5B,IAAoCpH,KAAKoH,IAAL,CAAUC,UAAlD,EAA8D;AAC5DH,cAAKlH,KAAKhI,KAAL,CAAWuE,QAAhB,EAA0BuC,GAA1B,EAA+B,EAAEjB,MAAMmC,IAAR,EAAclB,QAAd,EAA/B;AACD;AACDkI,gBAAShH,IAAT,EAAe7G,KAAf,EAAsB2F,GAAtB,EAA2BkB,KAAKtB,GAAL,IAAYI,GAAvC,EAA4C8H,mBAAmBzN,KAAnB,EAA0BwN,GAA1B,EAA+B,EAA/B,CAA5C,EAAgFQ,OAAhF;AACD,MAND;AAOD,IATD;AAUAD,QAAKH,MAAL,EAAa,CAAb,EAAgBE,MAAhB;AACD;;AAEM,UAAS3C,SAAT,CAAmBgD,UAAnB,EAA+BC,QAA/B,EAAyC;AAC9C,UAAOD,WAAWE,KAAX,CAAiB,UAACC,EAAD,EAAKpH,CAAL,EAAW;AACjC,YAAOoH,OAAOF,SAASlH,CAAT,CAAd;AACD,IAFM,CAAP;AAGD;AACD;;;AAGA;AACO,UAASkE,oBAAT,CAA8BmD,GAA9B,EAAmC;AACxC,OAAMC,WAAW,EAAjB;AACAD,OAAIjL,OAAJ,CAAY,UAACuD,IAAD,EAAU;AACpB,SAAM4H,SAAS5H,KAAKjB,KAAL,CAAW,GAAX,EAAgBG,MAA/B;AACA,SAAI,CAACyI,SAASC,MAAT,CAAL,EAAuB;AACrBD,gBAASC,MAAT,IAAmB,EAAnB;AACD;AACDD,cAASC,MAAT,EAAiBnI,IAAjB,CAAsBO,IAAtB;AACD,IAND;AAOA,OAAM6H,WAAWzH,OAAO5G,IAAP,CAAYmO,QAAZ,EAAsBG,IAAtB,EAAjB;;AATwC,8BAU/BzH,CAV+B;AAWtC,SAAIwH,SAASxH,IAAI,CAAb,CAAJ,EAAqB;AACnBsH,gBAASE,SAASxH,CAAT,CAAT,EAAsB5D,OAAtB,CAA8B,cAAM;AAAA,sCACzBsL,CADyB;AAEhCJ,oBAASE,SAASE,CAAT,CAAT,EAAsBtL,OAAtB,CAA8B,UAACuL,EAAD,EAAK7O,KAAL,EAAe;AAC3C,iBAAImL,UAAUmD,GAAG1I,KAAH,CAAS,GAAT,CAAV,EAAyBiJ,GAAGjJ,KAAH,CAAS,GAAT,CAAzB,CAAJ,EAA6C;AAC3C4I,wBAASE,SAASE,CAAT,CAAT,EAAsB5O,KAAtB,IAA+B,IAA/B;AACD;AACF,YAJD;AAKAwO,oBAASE,SAASE,CAAT,CAAT,IAAwBJ,SAASE,SAASE,CAAT,CAAT,EAAsBE,MAAtB,CAA6B;AAAA,oBAAK1G,CAAL;AAAA,YAA7B,CAAxB;AAPgC;;AAClC,cAAK,IAAIwG,IAAI1H,IAAI,CAAjB,EAAoB0H,IAAIF,SAAS3I,MAAjC,EAAyC6I,GAAzC,EAA8C;AAAA,kBAArCA,CAAqC;AAO7C;AACF,QATD;AAUD;AAtBqC;;AAUxC,QAAK,IAAI1H,IAAI,CAAb,EAAgBA,IAAIwH,SAAS3I,MAA7B,EAAqCmB,GAArC,EAA0C;AAAA,WAAjCA,CAAiC;AAazC;AACD,OAAI6H,OAAO,EAAX;AACAL,YAASpL,OAAT,CAAiB,aAAK;AACpByL,YAAOA,KAAK5F,MAAL,CAAYqF,SAAStH,CAAT,CAAZ,CAAP;AACD,IAFD;AAGA,UAAO6H,IAAP;AACD;AACD;AACA;AACA;;;AAGA,UAASC,SAAT,CAAmBC,GAAnB,EAAwB;AACtB,OAAMV,MAAMU,IAAInD,KAAJ,CAAU,eAAV,CAAZ;AACA,OAAI5H,KAAK,EAAT;AACA,OAAIqK,OAAOA,IAAIxI,MAAJ,KAAe,CAA1B,EAA6B;AAC3B7B,UAAKqK,IAAI,CAAJ,CAAL;AACD;AACD,UAAOrK,EAAP;AACD;AACD,UAASgL,aAAT,CAAuBvJ,GAAvB,EAA4B;AAC1B,UAAOA,IAAIC,KAAJ,CAAU,GAAV,CAAP;AACD;;AAEM,UAASyF,gBAAT,CAA0B8D,GAA1B,EAA+BC,kBAA/B,EAAmDC,OAAnD,EAA4D;AACjE;AACA,OAAIC,UAAUrI,OAAO5G,IAAP,CAAY8O,GAAZ,CAAd;AACA;AACAG,WAAQhM,OAAR,CAAgB,UAAC4D,CAAD,EAAIlH,KAAJ,EAAc;AAC5B,SAAMuP,OAAOL,cAAchI,CAAd,CAAb;AACA,SAAIsI,QAAQ,KAAZ;AACAJ,wBAAmB9L,OAAnB,CAA2B,UAACmM,IAAD,EAAU;AACnC;AACA,WAAMC,UAAUR,cAAcO,IAAd,CAAhB;AACA,WAAIF,KAAKxJ,MAAL,GAAc2J,QAAQ3J,MAAtB,IAAgCoF,UAAUuE,OAAV,EAAmBH,IAAnB,CAApC,EAA8D;AAC5DJ,aAAIjI,CAAJ,EAAOT,WAAP,GAAqB,KAArB;AACA0I,aAAIjI,CAAJ,EAAOtG,OAAP,GAAiByO,OAAjB;AACAC,iBAAQtP,KAAR,IAAiB,IAAjB;AACD;AACD,WAAIuP,KAAK,CAAL,MAAYG,QAAQ,CAAR,CAAZ,IAA0BH,KAAK,CAAL,MAAYG,QAAQ,CAAR,CAA1C,EAAsD;AACpD;AACAF,iBAAQ,IAAR;AACD;AACF,MAZD;AAaA,SAAI,CAACA,KAAL,EAAY;AACVF,eAAQtP,KAAR,IAAiB,IAAjB;AACD;AACF,IAnBD;AAoBA;AACA;AACAsP,aAAUA,QAAQR,MAAR,CAAe;AAAA,YAAK5H,CAAL;AAAA,IAAf,CAAV,CA1BiE,CA0B/B;;AA1B+B;AA6B/D;AACA,SAAM6G,OAAO,SAAPA,IAAO,CAAC4B,KAAD,EAAW;AACtB,WAAMC,UAAUV,cAAcS,KAAd,EAAqB5J,MAArC;AACA,WAAI6J,WAAW,CAAf,EAAkB;AAAE;AAClB;AACD;AACD,WAAIC,UAAU,CAAd;AACA,WAAIC,iBAAiB,CAArB;AACA,WAAMC,iBAAiBf,UAAUW,KAAV,CAAvB;AACAL,eAAQhM,OAAR,CAAgB,UAAC4D,CAAD,CAAG,YAAH,EAAoB;AAClC,aAAMqI,OAAOL,cAAchI,CAAd,CAAb;AACA,aAAIqI,KAAKxJ,MAAL,KAAgB6J,OAAhB,IAA2BzE,UAAU+D,cAAca,cAAd,CAAV,EAAyCR,IAAzC,CAA/B,EAA+E;AAC7EM;AACA,eAAIV,IAAIjI,CAAJ,EAAOtG,OAAX,EAAoB;AAClBkP;AACA,iBAAMjB,KAAKO,mBAAmB5J,OAAnB,CAA2B0B,CAA3B,CAAX;AACA,iBAAI2H,KAAK,CAAC,CAAV,EAAa;AACXO,kCAAmB7I,MAAnB,CAA0BsI,EAA1B,EAA8B,CAA9B;AACA,mBAAIA,MAAMmB,OAAV,EAAkB;AAChBA;AACD;AACF;AACF,YATD,MASO,IAAIb,IAAIjI,CAAJ,EAAOT,WAAX,EAAwB;AAC7BqJ,+BAAkB,GAAlB;AACD;AACD;AACD;AACF,QAlBD;AAmBA;AACA,WAAMhC,SAASqB,IAAIY,cAAJ,CAAf;AACA;AACA;AACA,WAAID,mBAAmB,CAAvB,EAA0B;AACxBhC,gBAAOlN,OAAP,GAAiB,KAAjB;AACAkN,gBAAOrH,WAAP,GAAqB,KAArB;AACD,QAHD,MAGO,IAAIqJ,mBAAmBD,OAAvB,EAAgC;AACrC/B,gBAAOlN,OAAP,GAAiB,IAAjB;AACAkN,gBAAOrH,WAAP,GAAqB,KAArB;AACD,QAHM,MAGA;AACLqH,gBAAOrH,WAAP,GAAqB,IAArB;AACAqH,gBAAOlN,OAAP,GAAiB,KAAjB;AACD;AACDmN,YAAKgC,cAAL;AACD,MA1CD;AA2CAhC,UAAKqB,mBAAmBY,OAAnB,CAAL,EAAiCA,OAAjC;AA7COA,WA5BwD;AAAA;;AA4BjE,QAAK,IAAIA,SAAS,CAAlB,EAAqBA,SAASZ,mBAAmBrJ,MAAjD,EAAyDiK,QAAzD,EAAmE;AAAA,YAA1DA,MAA0D;AA8ClE;AACD;AACD;;AAEM,UAAS1E,QAAT,CAAkB3E,eAAlB,EAAmC;AACxC,OAAMU,kBAAkB,EAAxB;AACA,OAAM5G,cAAc,EAApB;AACA,OAAMmG,eAAe,EAArB;AACA,OAAMQ,wBAAwB,EAA9B;AACAH,UAAO5G,IAAP,CAAYsG,eAAZ,EAA6BrD,OAA7B,CAAqC,UAACuD,IAAD,EAAU;AAC7C,SAAMoJ,UAAUtJ,gBAAgBE,IAAhB,CAAhB;AACA,SAAIoJ,QAAQrP,OAAZ,EAAqB;AACnBH,mBAAY6F,IAAZ,CAAiB2J,QAAQ1K,GAAzB;AACAqB,oBAAaN,IAAb,CAAkB2J,QAAQvL,IAA1B;AACA0C,6BAAsBd,IAAtB,CAA2B,EAAE5B,MAAMuL,QAAQvL,IAAhB,EAAsBiB,KAAKkB,IAA3B,EAA3B;AACD,MAJD,MAIO,IAAIoJ,QAAQxJ,WAAZ,EAAyB;AAC9BY,uBAAgBf,IAAhB,CAAqB2J,QAAQ1K,GAA7B;AACD;AACF,IATD;AAUA,UAAO;AACL8B,qCADK,EACY5G,wBADZ,EACyBmG,0BADzB,EACuCQ,4CADvC,EAC8DT;AAD9D,IAAP;AAGD;;AAEM,UAAS4E,gBAAT,CAA0B9K,WAA1B,EAAuCgG,WAAvC,EAAoD;AACzD,OAAIA,WAAJ,EAAiB;AACf,YAAO,EAAE7F,SAASH,WAAX,EAAwBgG,wBAAxB,EAAP;AACD;AACD,UAAOhG,WAAP;AACD;;AAEM,UAAS+K,WAAT,CAAqB0E,CAArB,EAAwBC,CAAxB,EAA2B;AAChC,OAAID,MAAMC,CAAV,EAAa,OAAO,IAAP;AACb,OAAID,MAAM,IAAN,IAAc,OAAOA,CAAP,KAAa,WAA3B,IAA0CC,MAAM,IAAhD,IAAwD,OAAOA,CAAP,KAAa,WAAzE,EAAsF;AACpF,YAAO,KAAP;AACD;AACD,OAAID,EAAEnK,MAAF,KAAaoK,EAAEpK,MAAnB,EAA2B,OAAO,KAAP;;AAE3B;AACA;;AAEA,QAAK,IAAImB,IAAI,CAAb,EAAgBA,IAAIgJ,EAAEnK,MAAtB,EAA8B,EAAEmB,CAAhC,EAAmC;AACjC,SAAIgJ,EAAEhJ,CAAF,MAASiJ,EAAEjJ,CAAF,CAAb,EAAmB,OAAO,KAAP;AACpB;AACD,UAAO,IAAP;AACD,E;;;;;;;;;;;;;;;;AC7RD;;;;AACA;;;;AACA;;;;AACA;;AAGA;;;;;;;;;;;;;;;;AAEA,KAAMkJ,YAAY,OAAOC,MAAP,KAAkB,WAAlB,GAAgC,mBAAQA,OAAO5E,SAAf,CAAhC,GAA4D,EAA9E;AACA,KAAM6E,WAAW,gBAAgBvE,IAAhB,CAAqBqE,SAArB,CAAjB;AACA;AACA;;AAEA,KAAMG,eAAe,KAArB;;KAEMpQ,Q;;;AACJ,qBAAYtB,KAAZ,EAAmB;AAAA;;AAAA,mDACjB,4BAAMA,KAAN,CADiB;;AAEjB,MACE,UADF,EAEE,SAFF,EAGE,eAHF,EAIE,cAJF,EAKE,cALF,EAME,aANF,EAOE,aAPF,EAQE,YARF,EASE,aATF,EAUE,QAVF,EAWE,WAXF,EAYEyE,OAZF,CAYU,UAACC,CAAD,EAAO;AACf,cAAKA,CAAL,IAAU,OAAKA,CAAL,EAAQtE,IAAR,QAAV;AACD,MAdD;AAeA,YAAKH,KAAL,GAAa;AACX0R,oBAAa,KADF;AAEXC,0BAAmB;AAFR,MAAb;AAjBiB;AAqBlB;;sBAEDC,iB,gCAAoB;AAChB,SAAI,CAAC,KAAK7R,KAAL,CAAW+K,IAAX,CAAgB+G,kBAArB,EAAyC;AACvC,YAAK9R,KAAL,CAAW+K,IAAX,CAAgB+G,kBAAhB,GAAqC,EAArC;AACD;AACD,UAAK9R,KAAL,CAAW+K,IAAX,CAAgB+G,kBAAhB,CAAmCrK,IAAnC,CAAwC,IAAxC;AACD,I;AACD;AACA;AACA;AACA;AACA;AACA;;sBAEF9F,O,sBAAU;AACR,UAAK3B,KAAL,CAAW+K,IAAX,CAAgBpJ,OAAhB,CAAwB,IAAxB;AACD,I;;sBAEDO,Q,uBAAW;AACT,UAAKlC,KAAL,CAAW+K,IAAX,CAAgB7I,QAAhB,CAAyB,IAAzB;AACD,I;;sBAED0G,Y,yBAAatD,C,EAAG;AACdA,OAAE0D,cAAF;AACA,UAAKhJ,KAAL,CAAW+K,IAAX,CAAgBnC,YAAhB,CAA6BtD,CAA7B,EAAgC,IAAhC;AACD,I;;sBAEDuD,Y,yBAAavD,C,EAAG;AACdA,OAAE0D,cAAF;AACA,UAAKhJ,KAAL,CAAW+K,IAAX,CAAgBlC,YAAhB,CAA6BvD,CAA7B,EAAgC,IAAhC;AACD,I;;sBAEDwD,a,0BAAcxD,C,EAAG;AACfA,OAAE0D,cAAF;AACA,UAAKhJ,KAAL,CAAW+K,IAAX,CAAgBjC,aAAhB,CAA8BxD,CAA9B,EAAiC,IAAjC;AACD,I;;sBAED3B,W,wBAAY2B,C,EAAG;AACb;AACA;AACAA,OAAEyM,eAAF;AACA,UAAK1R,QAAL,CAAc;AACZuR,0BAAmB;AADP,MAAd;AAGA,UAAK5R,KAAL,CAAW+K,IAAX,CAAgBpH,WAAhB,CAA4B2B,CAA5B,EAA+B,IAA/B;AACA,SAAI;AACF;AACA;AACAA,SAAE0M,YAAF,CAAeC,OAAf,CAAuB,YAAvB,EAAqC,EAArC;AACD,MAJD,SAIU;AACR;AACD;AACF,I;;sBAEDrO,W,wBAAY0B,C,EAAG;AACbA,OAAE0D,cAAF;AACA1D,OAAEyM,eAAF;AACA,UAAK/R,KAAL,CAAW+K,IAAX,CAAgBnH,WAAhB,CAA4B0B,CAA5B,EAA+B,IAA/B;AACD,I;;sBAEDzB,U,uBAAWyB,C,EAAG;AACZ;AACAA,OAAE0D,cAAF;AACA1D,OAAEyM,eAAF;AACA,UAAK/R,KAAL,CAAW+K,IAAX,CAAgBlH,UAAhB,CAA2ByB,CAA3B,EAA8B,IAA9B;AACA,YAAO,KAAP;AACD,I;;sBAEDxB,W,wBAAYwB,C,EAAG;AACbA,OAAEyM,eAAF;AACA,UAAK/R,KAAL,CAAW+K,IAAX,CAAgBjH,WAAhB,CAA4BwB,CAA5B,EAA+B,IAA/B;AACD,I;;sBAEDvB,M,mBAAOuB,C,EAAG;AACRA,OAAE0D,cAAF;AACA1D,OAAEyM,eAAF;AACA,UAAK1R,QAAL,CAAc;AACZuR,0BAAmB;AADP,MAAd;AAGA,UAAK5R,KAAL,CAAW+K,IAAX,CAAgBhH,MAAhB,CAAuBuB,CAAvB,EAA0B,IAA1B;AACD,I;;sBAEDgC,S,sBAAUhC,C,EAAG;AACXA,OAAEyM,eAAF;AACA,UAAK1R,QAAL,CAAc;AACZuR,0BAAmB;AADP,MAAd;AAGA,UAAK5R,KAAL,CAAW+K,IAAX,CAAgBzD,SAAhB,CAA0BhC,CAA1B,EAA6B,IAA7B;AACD,I;;sBAEDjC,Q,uBAAW;AAAA;;AACT,SAAM6O,kBAAkB,KAAKlS,KAAL,CAAW+K,IAAX,CAAgB1H,QAAhB,CAAyB,IAAzB,CAAxB;AACA,SAAI6O,mBAAmB,QAAOA,eAAP,yCAAOA,eAAP,OAA2B,QAAlD,EAA4D;AAC1D,WAAMC,aAAa,SAAbA,UAAa,CAACR,WAAD,EAAiB;AAClC,gBAAKtR,QAAL,CAAc;AACZsR;AADY,UAAd;AAGD,QAJD;AAKAQ,kBAAW,IAAX;AACAD,uBAAgBvK,IAAhB,CAAqB,YAAM;AACzBwK,oBAAW,KAAX;AACD,QAFD,EAEG,YAAM;AACPA,oBAAW,KAAX;AACD,QAJD;AAKD;AACF,I;;AAED;;;sBACApJ,S,sBAAUzD,C,EAAG;AACXA,OAAE0D,cAAF;AACD,I;;sBAEDoJ,c,2BAAepS,K,EAAOqS,a,EAAe;AACnC,SAAIC,kBAAJ;AACA,SAAMpO,YAAYlE,MAAMkE,SAAxB;AACA,SAAMqO,kCACArO,SADA,gBACuB,IADvB,CAAN;AAGA,SAAI,CAAClE,MAAMsC,QAAX,EAAqB;AACnBiQ,mBAAerO,SAAf,gBAAmCmO,aAAnC,IAAsD,IAAtD;AACD,MAFD,MAEO,IAAIrS,MAAM8G,GAAN,KAAc,KAAlB,EAAyB;AAC9ByL,mBAAerO,SAAf,eAAkCmO,aAAlC,IAAqD,IAArD;AACD,MAFM,MAEA;AACLE,mBAAerO,SAAf,gBAAmCmO,aAAnC,IAAsD,CAACrS,MAAM8O,IAA7D;AACAyD,mBAAerO,SAAf,gBAAmCmO,aAAnC,IAAsDrS,MAAM8O,IAA5D;AACD;;AAED,SAAIuD,kBAAkB,MAAlB,IAA4BrS,MAAMmL,QAAtC,EAAgD;AAC9CmH,mBAAYtS,MAAMmL,QAAlB;AACAoH,mBAAY,WAAZ,IAA2B,IAA3B;AACD;AACD,SAAIF,kBAAkB,OAAlB,IAA6BrS,MAAMoL,SAAvC,EAAkD;AAChDkH,mBAAYtS,MAAMoL,SAAlB;AACAmH,mBAAY,WAAZ,IAA2B,IAA3B;AACD;AACD;;AAEA,SAAIvS,MAAMuK,QAAV,EAAoB;AAClBgI,mBAAerO,SAAf,2BAAgD,IAAhD;AACA,cAAO;AAAA;AAAA,WAAM,WAAW,6BAAWqO,WAAX,CAAjB;AAA2CD;AAA3C,QAAP;AACD;AACD,YAAO;AAAA;AAAA,SAAM,WAAW,6BAAWC,WAAX,CAAjB,EAA0C,SAAS,KAAKlP,QAAxD;AAAmEiP;AAAnE,MAAP;AACD,I;;sBAEDE,c,2BAAexS,K,EAAO;AACpB,SAAMkE,YAAYlE,MAAMkE,SAAxB;AACA,SAAMuO,kCACAvO,SADA,gBACuB,IADvB,CAAN;AAGA,SAAIlE,MAAM+B,OAAV,EAAmB;AACjB0Q,mBAAevO,SAAf,0BAA+C,IAA/C;AACD,MAFD,MAEO,IAAIlE,MAAM4H,WAAV,EAAuB;AAC5B6K,mBAAevO,SAAf,gCAAqD,IAArD;AACD;AACD,SAAIwO,YAAY,IAAhB;AACA,SAAI,OAAO1S,MAAM6C,SAAb,KAA2B,SAA/B,EAA0C;AACxC6P,mBAAY1S,MAAM6C,SAAlB;AACD;AACD,SAAI7C,MAAMuK,QAAN,IAAkBvK,MAAM2S,eAA5B,EAA6C;AAC3CF,mBAAevO,SAAf,2BAAgD,IAAhD;AACA,cAAO;AAAA;AAAA,WAAM,KAAI,UAAV,EAAqB,WAAW,6BAAWuO,WAAX,CAAhC;AAA0DC;AAA1D,QAAP;AACD;AACD,YACE;AAAA;AAAA,SAAM,KAAI,UAAV;AACE,oBAAW,6BAAWD,WAAX,CADb;AAEE,kBAAS,KAAK9Q;AAFhB;AAGE+Q;AAHF,MADF;AAKD,I;;sBAEDE,c,2BAAe5S,K,EAAO;AACpB,SAAM6S,cAAc,KAAKA,WAAzB;AACA,UAAKA,WAAL,GAAmB,CAAnB;AACA,SAAIC,mBAAmB,IAAvB;AACA,SAAI,CAACD,WAAD,IAAgB7S,MAAMuH,QAA1B,EAAoC;AAClCuL,0BAAmB,KAAnB;AACD;AACD,SAAMvO,WAAWvE,MAAMuE,QAAvB;AACA,SAAIwO,cAAcxO,QAAlB;AACA,SAAIA,aACDA,SAAS6K,IAAT,KAAkB9N,QAAlB,IACCoI,MAAMC,OAAN,CAAcpF,QAAd,KACAA,SAASiL,KAAT,CAAe,UAACxH,IAAD,EAAU;AACvB,cAAOA,KAAKoH,IAAL,KAAc9N,QAArB;AACD,MAFD,CAHA,CAAJ,EAKS;AAAA;;AACP,WAAM0R,wCACAhT,MAAMkE,SADN,kBAC+B,IAD/B,yBAEAlE,MAAMkE,SAFN,uBAEoClE,MAAMuH,QAF1C,QAAN;AAIA,WAAIvH,MAAMsC,QAAV,EAAoB;AAClB0Q,aAAOhT,MAAMkE,SAAb,cAAiC,CAAClE,MAAM8O,IAAxC;AACD;AACD,WAAMmE,YAAY,EAAlB;AACA,WAAIjT,MAAM+J,kBAAV,EAA8B;AAC5BkJ,mBAAUnJ,cAAV,GAA2B9J,MAAM+J,kBAAjC;AACD,QAFD,MAEO,IAAI,QAAO/J,MAAMqE,aAAb,MAA+B,QAAnC,EAA6C;AAClD4O,mBAAUC,SAAV,GAAsB,SAAc,EAAd,EAAkBlT,MAAMqE,aAAxB,CAAtB;AACA,aAAI,CAACyO,gBAAL,EAAuB;AACrB,kBAAOG,UAAUC,SAAV,CAAoBC,MAA3B;AACD;AACF;AACDJ,qBACE;AAAA;AAAA,sBAAaE,SAAb;AACE,qBAAS,eADX;AAEE,6BAAkBH,gBAFpB;AAGE,sBAAU;AAHZ;AAKG,UAAC9S,MAAMuH,QAAP,GAAkB,IAAlB,GAAyB;AAAA;AAAA,aAAI,WAAW,6BAAWyL,GAAX,CAAf,EAAgC,iBAAehT,MAAMuH,QAArD;AACvB,8BAAMuE,QAAN,CAAe7K,GAAf,CAAmBsD,QAAnB,EAA6B,UAACyD,IAAD,EAAO7G,KAAP,EAAiB;AAC7C,oBAAOnB,MAAM+K,IAAN,CAAWN,cAAX,CAA0BzC,IAA1B,EAAgC7G,KAAhC,EAAuCnB,MAAM8G,GAA7C,CAAP;AACD,YAFA,EAEE9G,MAAM+K,IAFR;AADuB;AAL5B,QADF;AAaD;AACD,YAAOgI,WAAP;AACD,I;;sBAEDzS,M,qBAAS;AAAA;AAAA;;AACP,SAAMN,QAAQ,KAAKA,KAAnB;AACA,SAAMkE,YAAYlE,MAAMkE,SAAxB;AACA,SAAMmO,gBAAgBrS,MAAMuH,QAAN,GAAiB,MAAjB,GAA0B,OAAhD;AACA,SAAI6L,YAAYf,aAAhB;;AAEA,SAAIgB,oBAAoB,IAAxB;AACA,SAAMC,UAAUtT,MAAMO,KAAtB;AACA,SAAIwS,cAAc,KAAKH,cAAL,CAAoB5S,KAApB,CAAlB;AACA,SAAIuT,cAAc,KAAlB;AAAA,SACEC,eAAe,KADjB;;AAGA;AACA,SAAIC,QAAQ,CAAZ;AACA,SAAIC,QAAQ,GAAZ;AACA,SAAIC,UAAU,KAAd;;AAEA,SAAI,CAACZ,WAAD,IAAgBA,gBAAgB/S,MAAMuE,QAA1C,EAAoD;AAClD;AACAwO,qBAAc,IAAd;AACA,WAAI,CAAC/S,MAAMwD,QAAP,IAAmBxD,MAAM4T,MAA7B,EAAqC;AACnCP,6BAAoB,KAApB;AACAD,qBAAY,MAAZ;AACD;AACF;AACD;AACA;AACA;AACA;;AAEA,SAAMS,6DACA3P,SADA,eACsB,IADtB,gCAEAA,SAFA,oBAE2B,KAAKjE,KAAL,CAAW0R,WAFtC,gCAGAzN,SAHA,eAGmBkP,SAHnB,EAGiC,IAHjC,eAAN;AAKA,SAAMlN,eAAe,SAAfA,YAAe,GAAM;AACzB,WAAM4N,OAAQ9T,MAAMoE,QAAN,IAAkBpE,MAAMwD,QAAN,IAAkB,OAAKvD,KAAL,CAAW0R,WAAhD,GACX,2CAAM,WAAW,6BAAWkC,UAAX,CAAjB,GADW,GACwC,IADrD;AAEA,WAAMtT,QAAQ;AAAA;AAAA,WAAM,WAAc2D,SAAd,WAAN;AAAwCoP;AAAxC,QAAd;AACA,WAAMS,OAAU7P,SAAV,0BAAN;AACA,WAAMsH,WAAW;AACfhJ,oBAAcuR,IAAd,SAAsBA,IAAtB,UAA8BX,cAAcf,aAAd,GAA8Be,SAA9B,GAA0C,QAAxE;AADe,QAAjB;AAGA,WAAI,CAACpT,MAAMuK,QAAX,EAAqB;AACnB,aAAIvK,MAAM0I,QAAN,IAAkB,CAAC1I,MAAM8F,YAAP,IAAuB,OAAK7F,KAAL,CAAW2R,iBAAxD,EAA2E;AACzEpG,oBAAShJ,SAAT,UAA0B0B,SAA1B;AACD;AACDsH,kBAASwI,OAAT,GAAmB,UAAC1O,CAAD,EAAO;AACxB,eAAI2O,cAAJ;AACA3O,aAAE0D,cAAF;AACA,eAAIhJ,MAAM2K,UAAV,EAAsB;AACpBsJ,mBAAM/R,QAAN;AACD;;AAED;AACA;AACA;AACA;AACD,UAXD;;AAaA,aAAIlC,MAAMyD,YAAV,EAAwB;AACtB+H,oBAAS1C,aAAT,GAAyB,OAAKA,aAA9B;AACD;AACD,aAAI9I,MAAM4I,YAAV,EAAwB;AACtB4C,oBAAS5C,YAAT,GAAwB,OAAKA,YAA7B;AACD;AACD,aAAI5I,MAAM6I,YAAV,EAAwB;AACtB2C,oBAAS3C,YAAT,GAAwB,OAAKA,YAA7B;AACD;;AAED,aAAI7I,MAAM0D,SAAV,EAAqB;AACnB8H,oBAAShJ,SAAT,IAAsB,YAAtB;AACA,eAAIiP,QAAJ,EAAc;AACZ;AACAjG,sBAAS0I,IAAT,GAAgB,GAAhB;AACD;AACD1I,oBAAS9H,SAAT,GAAqB,IAArB;AACA8H,oBAAS,cAAT,IAA2B,IAA3B;AACAA,oBAAS7H,WAAT,GAAuB,OAAKA,WAA5B;AACD;AACF;AACD,cACE;AAAA;AAAA,oBAAG,KAAI,cAAP,EAAsB,OAAO,OAAO2P,OAAP,KAAmB,QAAnB,GAA8BA,OAA9B,GAAwC,EAArE,IAA6E9H,QAA7E;AACGsI,aADH;AACSvT;AADT,QADF;AAKD,MAnDD;;AAqDA,SAAM4T,UAAU,EAAhB;AACA,SAAInU,MAAM0D,SAAV,EAAqB;AACnByQ,eAAQvQ,WAAR,GAAsB,KAAKA,WAA3B;AACAuQ,eAAQtQ,UAAR,GAAqB,KAAKA,UAA1B;AACAsQ,eAAQrQ,WAAR,GAAsB,KAAKA,WAA3B;AACAqQ,eAAQpQ,MAAR,GAAiB,KAAKA,MAAtB;AACAoQ,eAAQ7M,SAAR,GAAoB,KAAKA,SAAzB;AACD;;AAED,SAAI8M,cAAc,EAAlB;AACA,SAAIC,cAAc,EAAlB;AACA,SAAIrU,MAAMuK,QAAV,EAAoB;AAClB6J,qBAAiBlQ,SAAjB;AACD,MAFD,MAEO,IAAIlE,MAAMgL,QAAV,EAAoB;AACzBqJ,qBAAc,WAAd;AACD,MAFM,MAEA,IAAIrU,MAAMiL,cAAV,EAA0B;AAC/BoJ,qBAAc,mBAAd;AACD,MAFM,MAEA,IAAIrU,MAAMkL,iBAAV,EAA6B;AAClCmJ,qBAAc,sBAAd;AACD;;AAED,SAAMC,YAAYtU,MAAMmE,cAAN,CAAqB,IAArB,IAA6B,aAA7B,GAA6C,EAA/D;;AAEA,SAAMoQ,eAAe,SAAfA,YAAe,GAAM;AAAA;;AACzB,WAAMvB,0CACA9O,SADA,gBACuB,IADvB,0BAEAA,SAFA,qBAE4B,IAF5B,SAAN;AAIA,WAAIlE,MAAMsC,QAAV,EAAoB;AAClBb,iBAAQC,GAAR,CAAY,eAAZ;AACAsR,aAAO9O,SAAP,qBAAkC,CAAClE,MAAM8O,IAAzC;AACAkE,aAAO9O,SAAP,qBAAkClE,MAAM8O,IAAxC;AACD,QAJD,MAIO;AACLkE,aAAO9O,SAAP,qBAAkC,IAAlC;AACD;AACD,cAAO,2CAAM,WAAW,6BAAW8O,GAAX,CAAjB,GAAP;AACD,MAbD;;AAeA,YACE;AAAA;AAAA,oBAAQmB,OAAR,IAAiB,KAAI,IAArB;AACE,oBAAW,6BAAWnU,MAAMwC,SAAjB,EAA4B4R,WAA5B,EAAyCC,WAAzC,EAAsDC,SAAtD;AADb;AAGGjB,2BAAoB,KAAKjB,cAAL,CAAoBpS,KAApB,EAA2BqS,aAA3B,CAApB,GAAgEkC,cAHnE;AAIGvU,aAAM6C,SAAN,GAAkB,KAAK2P,cAAL,CAAoBxS,KAApB,CAAlB,GAA+C,IAJlD;AAKGkG,qBALH;AAMG6M;AANH,MADF;AAUD,I;;;GAxXoB,mBAAMhH,S;;AA2X7BzK,UAAS+N,UAAT,GAAsB,CAAtB;;AAEA/N,UAAS0K,SAAT,GAAqB;AACnB9H,cAAW,uBAAUzB,MADF;AAEnB8H,aAAU,uBAAUhI,IAFD;AAGnBoQ,oBAAiB,uBAAUpQ,IAHR;AAInBgF,aAAU,uBAAUhF,IAJD;AAKnBqR,WAAQ,uBAAUrR,IALC;AAMnBwI,SAAM,uBAAU7H,MANG;AAOnBhB,aAAU,uBAAUoB,IAPD;AAQnB6H,aAAU,uBAAUqJ,OARD;AASnBpJ,cAAW,uBAAUoJ;AATF,EAArB;;AAYAlT,UAASC,YAAT,GAAwB;AACtBhB,UAAOmR;AADe,EAAxB;;sBAIepQ,Q;;;;;;;AC5Zf;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,4CAA2C,kBAAkB,kCAAkC,qEAAqE,EAAE,EAAE,OAAO,kBAAkB,EAAE,YAAY;;AAE/M,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mGAAkG;AAClG,UAAS;AACT;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,QAAO;AACP,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT,QAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAW;AACX;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;AACA,qC;;;;;;ACtXA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,UAAS;AACT;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;;AAEA;AACA,E;;;;;;ACpHA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;;AAEA;;AAEA;AACA,qC;;;;;;ACzIA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,qC;;;;;;;;;;;;AC1BA;;AAEA,UAASmT,OAAT,CAAiB5O,IAAjB,EAAuB6O,IAAvB,EAA6BC,IAA7B,EAAmC;AACjC,OAAIzG,eAAJ;AACA,UAAO,iCAAarI,IAAb,EAAmB,mBAAnB,EAAwC;AAC7C+O,UAD6C,mBACrC;AACN,WAAI,CAACF,IAAL,EAAW;AACT7O,cAAK7B,KAAL,CAAWkK,MAAX,GAAuBrI,KAAKO,YAA5B;AACD,QAFD,MAEO;AACL8H,kBAASrI,KAAKO,YAAd;AACAP,cAAK7B,KAAL,CAAWkK,MAAX,GAAoB,CAApB;AACD;AACF,MAR4C;AAS7C2G,WAT6C,oBASpC;AACPhP,YAAK7B,KAAL,CAAWkK,MAAX,IAAuBwG,OAAOxG,MAAP,GAAgB,CAAvC;AACD,MAX4C;AAY7C4G,QAZ6C,iBAYvC;AACJjP,YAAK7B,KAAL,CAAWkK,MAAX,GAAoB,EAApB;AACAyG;AACD;AAf4C,IAAxC,CAAP;AAiBD;;AAED,KAAMzB,YAAY;AAChB6B,QADgB,iBACVlP,IADU,EACJ8O,IADI,EACE;AAChB,YAAOF,QAAQ5O,IAAR,EAAc,IAAd,EAAoB8O,IAApB,CAAP;AACD,IAHe;AAIhBK,QAJgB,iBAIVnP,IAJU,EAIJ8O,IAJI,EAIE;AAChB,YAAOF,QAAQ5O,IAAR,EAAc,KAAd,EAAqB8O,IAArB,CAAP;AACD,IANe;AAOhBxB,SAPgB,kBAOTtN,IAPS,EAOH8O,IAPG,EAOG;AACjB,YAAOF,QAAQ5O,IAAR,EAAc,IAAd,EAAoB8O,IAApB,CAAP;AACD;AATe,EAAlB;;sBAYezB,S;;;;;;;;;;;;;ACEf;;;;AACA;;;;;;;;;;;;gfAtCA;;;;;;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,KAAM+B,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC5C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AACxB,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS,EAAElH,OAAOmG,GAAT,EAAcA,QAAd,EAAT;AACA,SAAI2B,IAAI6M,CAAR,EAAW;AACP3Q,gBAASkD,IAAT,CAAcf,GAAd;AACH;AACJ;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACZ,YAAOI,GAAP;AACH;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMvF,KAAN,EAAgB;AAC7BuU,SAAIvU,KAAJ,EAAWoD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIvU,KAAJ,EAAWoD,QAApC,CAAP;AACH,IAHD;AAIH,EApBD;AAqBA8Q,cAAaF,CAAb;;AAEA,KAAM7T,WAAW,iBAAKA,QAAtB;;KAGMhC,K;;;AACJ,kBAAYU,KAAZ,EAAmB;AAAA;;AAAA,kDAClB,sBAAMA,KAAN,CADkB;;AAEjB,WAAKC,KAAL,GAAa;AACX+C,qBAAc,CAAC,OAAD,EAAU,OAAV,CADH;AAEXL,yBAAkB,IAFP;AAGXf,oBAAa,CAAC,OAAD,CAHF;AAIXwB,qBAAc;AAJH,MAAb;AAMA,WAAKC,QAAL,GAAgB,MAAKA,QAAL,CAAcjD,IAAd,OAAhB;AACA,WAAKuB,OAAL,GAAe,MAAKA,OAAL,CAAavB,IAAb,OAAf;AACA,WAAK8B,QAAL,GAAgB,MAAKA,QAAL,CAAc9B,IAAd,OAAhB;AAViB;AAWlB;;mBACDiD,Q,qBAASL,Y,EAAc;AACrBvB,aAAQC,GAAR,CAAY,UAAZ,EAAwBiU,SAAxB;AACA;AACA;AACA,UAAKtV,QAAL,CAAc;AACZ2C,iCADY;AAEZL,yBAAkB;AAFN,MAAd;AAID,I;;mBACDhB,O,oBAAQC,W,EAAa;AACnB,UAAKvB,QAAL,CAAc;AACZuB,+BADY;AAEZwB,qBAAc,CAAC,KAAD,EAAQ,KAAR;AAFF,MAAd;AAID,I;;mBACDlB,Q,qBAASkB,Y,EAAcjB,I,EAAM;AAC3BV,aAAQC,GAAR,CAAY,UAAZ,EAAwBS,IAAxB;AACA,UAAK9B,QAAL,CAAc,EAAE+C,0BAAF,EAAd;AACD,I;;mBACD9C,M,qBAAS;AACP,SAAM4O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBACE;AAAC,qBAAD;AAAA,eAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,EAA0C,iBAAiBsB,KAAKtB,GAAL,KAAa,OAAxE;AACGwI,kBAAKlH,KAAKzD,QAAV;AADH,YADF;AAKD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,GAAP;AACD,QAToB,CAAR;AAAA,MAAb;AAUA,YACE;AAAA;AAAA;AACE,wBADF;AAEE,mBAAU,KAAKrD,QAFjB,EAE2B,cAAc,KAAKpD,KAAL,CAAW+C,YAFpD;AAGE,2BAAkB,KAAK/C,KAAL,CAAW0C,gBAH/B;AAIE,kBAAS,KAAKhB,OAJhB,EAIyB,aAAa,KAAK1B,KAAL,CAAW2B,WAJjD;AAKE,mBAAU,KAAKM,QALjB,EAK2B,cAAc,KAAKjC,KAAL,CAAWmD;AALpD;AAOG8L,YAAKkG,KAAL;AAPH,MADF;AAWD,I;;;;;AACF;;sBAGc9V,K;;;;;;;;;;;;;ACxHf;;;;AACA;;;;;;;;;;;;;;gfAVA;;;;;;;AAYA,KAAM2V,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC5C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AACxB,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS,EAAElH,OAAOmG,GAAT,EAAcA,QAAd,EAAT;AACA,SAAI2B,IAAI6M,CAAR,EAAW;AACP3Q,gBAASkD,IAAT,CAAcf,GAAd;AACH;AACJ;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACZ,YAAOI,GAAP;AACH;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMvF,KAAN,EAAgB;AAC7BuU,SAAIvU,KAAJ,EAAWoD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIvU,KAAJ,EAAWoD,QAApC,CAAP;AACH,IAHD;AAIH,EApBD;AAqBA8Q,cAAaF,CAAb;;AAEA,KAAM7T,WAAW,iBAAKA,QAAtB;;KAEM/B,K;;;AACJ,kBAAYS,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACXmV,mBADW;AAEXpS,qBAAc,CAAC,KAAD,EAAQ,OAAR,EAAiB,SAAjB;AAFH,MAAb;AAIA,WAAKY,WAAL,GAAmB,MAAKA,WAAL,CAAiBxD,IAAjB,OAAnB;AACA,WAAK2D,MAAL,GAAc,MAAKA,MAAL,CAAY3D,IAAZ,OAAd;AAPiB;AAQlB;;mBACDwD,W,wBAAYzB,I,EAAM;AAChBV,aAAQC,GAAR,CAAYS,IAAZ;AACA;AACA;AACA;AACA;AACD,I;;mBACD4B,M,mBAAO5B,I,EAAM;AACXV,aAAQC,GAAR,CAAYS,IAAZ;AACA,SAAM0T,UAAU1T,KAAK0D,IAAL,CAAU7F,KAAV,CAAgByG,QAAhC;AACA,SAAMqP,UAAU3T,KAAKqD,QAAL,CAAcxF,KAAd,CAAoByG,QAApC;AACA;AACA,SAAMyI,OAAO,SAAPA,IAAO,CAAC0G,IAAD,EAAOlP,GAAP,EAAYsI,QAAZ,EAAyB;AACpC4G,YAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAO7G,KAAP,EAAcuO,GAAd,EAAsB;AACjC,aAAI1H,KAAKtB,GAAL,KAAaA,GAAjB,EAAsB;AACpB,kBAAOsI,SAAShH,IAAT,EAAe7G,KAAf,EAAsBuO,GAAtB,CAAP;AACD;AACD,aAAI1H,KAAKzD,QAAT,EAAmB;AACjB,kBAAO2K,KAAKlH,KAAKzD,QAAV,EAAoBmC,GAApB,EAAyBsI,QAAzB,CAAP;AACD;AACF,QAPD;AAQD,MATD;AAUA,SAAM4G,oCAAW,KAAK3V,KAAL,CAAWmV,KAAtB,EAAN;AACA,SAAIW,gBAAJ;AACA7G,UAAK0G,IAAL,EAAWE,OAAX,EAAoB,UAAC9N,IAAD,EAAO7G,KAAP,EAAcuO,GAAd,EAAsB;AACxCA,WAAIhI,MAAJ,CAAWvG,KAAX,EAAkB,CAAlB;AACA4U,iBAAU/N,IAAV;AACD,MAHD;AAIA,SAAI7F,KAAKgF,SAAT,EAAoB;AAClB,WAAI6O,WAAJ;AACA,WAAI3N,UAAJ;AACA6G,YAAK0G,IAAL,EAAWC,OAAX,EAAoB,UAAC7N,IAAD,EAAO7G,KAAP,EAAcuO,GAAd,EAAsB;AACxCsG,cAAKtG,GAAL;AACArH,aAAIlH,KAAJ;AACD,QAHD;AAIA6U,UAAGtO,MAAH,CAAUW,CAAV,EAAa,CAAb,EAAgB0N,OAAhB;AACD,MARD,MAQO;AACL7G,YAAK0G,IAAL,EAAWC,OAAX,EAAoB,UAAC7N,IAAD,EAAU;AAC5BA,cAAKzD,QAAL,GAAgByD,KAAKzD,QAAL,IAAiB,EAAjC;AACA;AACAyD,cAAKzD,QAAL,CAAckD,IAAd,CAAmBsO,OAAnB;AACD,QAJD;AAKD;AACD,UAAK1V,QAAL,CAAc;AACZ+U,cAAOQ;AADK,MAAd;AAGD,I;;mBACDtV,M,qBAAS;AACP,SAAM4O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAL,IAAiByD,KAAKzD,QAAL,CAAc2C,MAAnC,EAA2C;AACzC,kBAAO;AAAC,qBAAD;AAAA,eAAU,KAAKc,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC;AAA2CwI,kBAAKlH,KAAKzD,QAAV;AAA3C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOsB,KAAKtB,GAArC,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,YACE;AAAA;AAAA;AACE,8BAAqB,KAAKzG,KAAL,CAAW+C,YADlC;AAEE,wBAFF;AAGE,sBAAa,KAAKY,WAHpB;AAIE,iBAAQ,KAAKG;AAJf;AAMGmL,YAAK,KAAKjP,KAAL,CAAWmV,KAAhB;AANH,MADF;AAUD,I;;;;;AACF;;sBAEc7V,K;;;;;;;;;;;;;AC/Gf;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAcA,KAAM0V,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC9C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AAC1B,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS;AACPlH,cAAOmG,GADA;AAEPA;AAFO,MAAT;AAIA,SAAI2B,IAAI6M,CAAR,EAAW;AACT3Q,gBAASkD,IAAT,CAAcf,GAAd;AACD;AACF;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACd,YAAOI,GAAP;AACD;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMvF,KAAN,EAAgB;AAC/BuU,SAAIvU,KAAJ,EAAWoD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIvU,KAAJ,EAAWoD,QAApC,CAAP;AACD,IAHD;AAID,EAvBD;AAwBA8Q,cAAaF,CAAb;;AAEA,KAAM7T,WAAW,iBAAKA,QAAtB;;AAEA,KAAM2U,WAAW,EAAjB;AACA,KAAMC,eAAe,SAAfA,YAAe,CAACN,IAAD,EAAU;AAC7B,QAAK,IAAIvN,IAAI,CAAb,EAAgBA,IAAIuN,KAAK1O,MAAzB,EAAiCmB,GAAjC,EAAsC;AACpC,SAAMxC,OAAO+P,KAAKvN,CAAL,CAAb;AACA,SAAM3B,MAAMb,KAAKa,GAAjB;AACAuP,cAASxO,IAAT,CAAc;AACZf,eADY;AAEZnG,cAAOmG;AAFK,MAAd;AAIA,SAAIb,KAAKtB,QAAT,EAAmB;AACjB2R,oBAAarQ,KAAKtB,QAAlB,EAA4BsB,KAAKa,GAAjC;AACD;AACF;AACF,EAZD;AAaAwP,cAAad,KAAb;;AAEA,KAAMe,eAAe,SAAfA,YAAe,CAACzP,GAAD,EAAM0P,IAAN,EAAe;AAClC,OAAIC,kBAAJ;AACA,QAAK,IAAIhO,IAAI,CAAb,EAAgBA,IAAI+N,KAAKlP,MAAzB,EAAiCmB,GAAjC,EAAsC;AACpC,SAAMxC,OAAOuQ,KAAK/N,CAAL,CAAb;AACA,SAAIxC,KAAKtB,QAAT,EAAmB;AACjB,WAAIsB,KAAKtB,QAAL,CAAc+R,IAAd,CAAmB;AAAA,gBAAQtO,KAAKtB,GAAL,KAAaA,GAArB;AAAA,QAAnB,CAAJ,EAAkD;AAChD2P,qBAAYxQ,KAAKa,GAAjB;AACD,QAFD,MAEO,IAAIyP,aAAazP,GAAb,EAAkBb,KAAKtB,QAAvB,CAAJ,EAAsC;AAC3C8R,qBAAYF,aAAazP,GAAb,EAAkBb,KAAKtB,QAAvB,CAAZ;AACD;AACF;AACF;AACD,UAAO8R,SAAP;AACD,EAbD;;KAgBM7W,K;;;AACJ,kBAAYQ,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAAA,WAQnBqD,QARmB,GAQR,UAACL,YAAD,EAAkB;AAC3B,aAAK3C,QAAL,CAAc;AACZ2C,mCADY;AAEZL,2BAAkB;AAFN,QAAd;AAID,MAbkB;;AAAA,WAcnB4T,QAdmB,GAcR,UAACC,KAAD,EAAW;;AAEpB,WAAMxT,eAAe,EAArB;AACAiT,gBAASxR,OAAT,CAAiB,UAACuD,IAAD,EAAU;AACzB,aAAIA,KAAKtB,GAAL,CAASC,OAAT,CAAiB6P,KAAjB,IAA0B,CAAC,CAA/B,EAAkC;AAChCxT,wBAAayE,IAAb,CAAkB0O,aAAanO,KAAKtB,GAAlB,EAAuB0O,KAAvB,CAAlB;AACD;AACF,QAJD;AAKA,WAAMqB,qBAAqB,EAA3B;AACAzT,oBAAayB,OAAb,CAAqB,UAACuD,IAAD,EAAU;AAC7B,aAAIA,QAAQyO,mBAAmB9P,OAAnB,CAA2BqB,IAA3B,MAAqC,CAAC,CAAlD,EAAqD;AACnDyO,8BAAmBhP,IAAnB,CAAwBO,IAAxB;AACD;AACF,QAJD;AAKA,aAAK3H,QAAL,CAAc;AACZ2C,uBAAcyT,kBADF;AAEZC,sBAAaF,KAFD;AAGZ7T,2BAAkB;AAHN,QAAd;AAKD,MAjCkB;;AAEjB,WAAK1C,KAAL,GAAa;AACX+C,qBAAc,EADH;AAEX0T,oBAAa,EAFF;AAGX/T,yBAAkB;AAHP,MAAb;AAFiB;AAOlB;;mBA2BDrC,M,qBAAS;AAAA,kBAKH,KAAKL,KALF;AAAA,SAELyW,WAFK,UAELA,WAFK;AAAA,SAGL1T,YAHK,UAGLA,YAHK;AAAA,SAILL,gBAJK,UAILA,gBAJK;;AAMP,SAAMuM,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACtC,aAAM7G,QAAQ6G,KAAKtB,GAAL,CAASiQ,MAAT,CAAgBD,WAAhB,CAAd;AACA,aAAME,YAAY5O,KAAKtB,GAAL,CAASmQ,MAAT,CAAgB,CAAhB,EAAmB1V,KAAnB,CAAlB;AACA,aAAM2V,WAAW9O,KAAKtB,GAAL,CAASmQ,MAAT,CAAgB1V,QAAQuV,YAAYxP,MAApC,CAAjB;AACA,aAAM3G,QAAQY,QAAQ,CAAC,CAAT,GACZ;AAAA;AAAA;AACGyV,oBADH;AAEE;AAAA;AAAA,eAAM,WAAU,0BAAhB;AAA4CF;AAA5C,YAFF;AAGGI;AAHH,UADY,GAMV;AAAA;AAAA;AAAO9O,gBAAKtB;AAAZ,UANJ;AAOA,aAAIsB,KAAKzD,QAAT,EAAmB;AACjB,kBACE;AAAC,qBAAD;AAAA,eAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOnG,KAAhC;AACG2O,kBAAKlH,KAAKzD,QAAV;AADH,YADF;AAKD;AACD,gBAAO,iCAAC,QAAD,IAAU,KAAKyD,KAAKtB,GAApB,EAAyB,OAAOnG,KAAhC,GAAP;AACD,QAnBoB,CAAR;AAAA,MAAb;AAoBA,YACE;AAAA;AAAA;AACE;AACE,gBAAO,EAAE0N,OAAO,GAAT,EADT;AAEE,sBAAY,QAFd;AAGE,mBAAU,KAAKsI;AAHjB,SADF;AAME;AAAA;AAAA;AACE,qBAAU,KAAKlT,QADjB;AAEE,yBAAcL,YAFhB;AAGE,6BAAkBL;AAHpB;AAKGuM,cAAKkG,KAAL;AALH;AANF,MADF;AAgBD,I;;;;;sBAGY5V,K;;;;;;;AC/Jf;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,4CAA2C,kBAAkB,kCAAkC,qEAAqE,EAAE,EAAE,OAAO,kBAAkB,EAAE,YAAY;;AAE/M,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,uCAAsC,kCAAkC;AACxE;AACA;AACA;AACA;;AAEA;AACA,uBAAsB,mBAAmB;AACzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAqB,wBAAwB;AAC7C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,UAAS,oDAAoD;AAC7D,gEAA+D;AAC/D;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA,YAAW,8BAA8B;AACzC,4FAA2F,oBAAoB;AAC/G,6FAA4F,+CAA+C;AAC3I;AACA;AACA;;AAEA,mEAAkE;AAClE;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;AC/JA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,oCAAmC,iDAAiD,gBAAgB,iBAAiB,OAAO,mBAAmB,4DAA4D,6DAA6D,wCAAwC,EAAE,EAAE,YAAY;;AAEhU,+CAA8C,iBAAiB,qBAAqB,oCAAoC,6DAA6D,oBAAoB,EAAE,eAAe;;AAE1N,kDAAiD,0CAA0C,0DAA0D,EAAE;;AAEvJ,kDAAiD,aAAa,uFAAuF,EAAE,uFAAuF;;AAE9O,2CAA0C,+DAA+D,qGAAqG,EAAE,yEAAyE,eAAe,yEAAyE,EAAE,EAAE,uHAAuH;;AAE5e;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,2DAA0D,WAAW,iEAAiE;AACtI;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;;;;;;;ACjEA;;;;AAGA;;;;;;;;;;;;;;gfAXA;;;;;;;AAaA,KAAMyV,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,IAAI,CAAV;AACA,KAAMC,QAAQ,EAAd;;AAEA,KAAMC,eAAe,SAAfA,YAAe,CAACC,MAAD,EAASC,OAAT,EAAkBC,IAAlB,EAA2B;AAC9C,OAAMC,SAASF,WAAW,GAA1B;AACA,OAAMG,MAAMF,QAAQJ,KAApB;;AAEA,OAAM7Q,WAAW,EAAjB;AACA,QAAK,IAAI8D,IAAI,CAAb,EAAgBA,IAAI4M,CAApB,EAAuB5M,GAAvB,EAA4B;AAC1B,SAAM3B,MAAS+O,MAAT,SAAmBpN,CAAzB;AACAqN,SAAIjO,IAAJ,CAAS;AACPlH,cAAOmG,GADA;AAEPA;AAFO,MAAT;AAIA,SAAI2B,IAAI6M,CAAR,EAAW;AACT3Q,gBAASkD,IAAT,CAAcf,GAAd;AACD;AACF;AACD,OAAI4O,SAAS,CAAb,EAAgB;AACd,YAAOI,GAAP;AACD;AACD,OAAMhL,QAAQ4K,SAAS,CAAvB;AACA/Q,YAASE,OAAT,CAAiB,UAACiC,GAAD,EAAMvF,KAAN,EAAgB;AAC/BuU,SAAIvU,KAAJ,EAAWoD,QAAX,GAAsB,EAAtB;AACA,YAAO8Q,aAAa3K,KAAb,EAAoBhE,GAApB,EAAyBgP,IAAIvU,KAAJ,EAAWoD,QAApC,CAAP;AACD,IAHD;AAID,EAvBD;AAwBA8Q,cAAaF,CAAb;;AAEA,KAAM7T,WAAW,iBAAKA,QAAtB;;AAEA,UAASyV,iBAAT,CAA2BxR,QAA3B,EAAqC;AACnC,OAAMmK,MAAM,EAAZ;AACA,OAAMhJ,MAAMnB,SAASvF,KAAT,CAAeyG,QAA3B;AACA,QAAK,IAAI4B,IAAI,CAAb,EAAgBA,IAAI,CAApB,EAAuBA,GAAvB,EAA4B;AAC1BqH,SAAIjI,IAAJ,CAAS;AACPuP,uBAActQ,GAAd,SAAqB2B,CADd;AAEP3B,YAAQA,GAAR,SAAe2B;AAFR,MAAT;AAID;AACD,UAAOqH,GAAP;AACD;;AAED,UAASuH,OAAT,CAAiBC,QAAjB,EAA2BC,MAA3B,EAAmCzM,KAAnC,EAA0C;AACxC,OAAM0M,WAAW,SAAXA,QAAW,CAACxB,IAAD,EAAOyB,GAAP,EAAe;AAC9B,SAAMC,IAAID,MAAM,CAAhB;AACAzB,UAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAU;AACrB,WAAKA,KAAKtB,GAAL,CAASQ,MAAT,GAAkBiQ,OAAOjQ,MAA1B,GAAoCc,KAAKtB,GAAL,CAASC,OAAT,CAAiBwQ,MAAjB,MAA6B,CAAjE,GACFA,OAAOxQ,OAAP,CAAeqB,KAAKtB,GAApB,MAA6B,CAD/B,EACkC;AAChC;AACD;AACD,WAAIsB,KAAKzD,QAAT,EAAmB;AACjB6S,kBAASpP,KAAKzD,QAAd,EAAwB+S,CAAxB;AACD,QAFD,MAEO,IAAIA,IAAI,CAAR,EAAW;AAChBtP,cAAK4L,MAAL,GAAc,IAAd;AACD;AACF,MAVD;AAWD,IAbD;AAcAwD,YAASF,QAAT,EAAmBxM,QAAQ,CAA3B;AACD;;AAED,UAAS6M,cAAT,CAAwBL,QAAxB,EAAkCC,MAAlC,EAA0CjW,KAA1C,EAAiDwJ,KAAjD,EAAwD;AACtD,OAAMwE,OAAO,SAAPA,IAAO,CAAC0G,IAAD,EAAU;AACrB,SAAIlL,QAAQ,CAAR,IAAayM,OAAOjQ,MAAP,GAAgB,CAAhB,GAAoBwD,QAAQ,CAA7C,EAAgD;AAChDkL,UAAKnR,OAAL,CAAa,UAACuD,IAAD,EAAU;AACrB,WAAImP,OAAOxQ,OAAP,CAAeqB,KAAKtB,GAApB,MAA6B,CAAjC,EAAoC;AAClC,aAAIsB,KAAKzD,QAAT,EAAmB;AACjB2K,gBAAKlH,KAAKzD,QAAV;AACD,UAFD,MAEO;AACLyD,gBAAKzD,QAAL,GAAgBrD,KAAhB;AACD;AACF;AACF,MARD;AASD,IAXD;AAYAgO,QAAKgI,QAAL;AACAD,WAAQC,QAAR,EAAkBC,MAAlB,EAA0BzM,KAA1B;AACD;;KAEKjL,K;;;AACJ,kBAAYO,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACXiX,iBAAU;AADC,MAAb;AAGA,WAAKhV,QAAL,GAAgB,MAAKA,QAAL,CAAc9B,IAAd,OAAhB;AACA,WAAKoX,UAAL,GAAkB,MAAKA,UAAL,CAAgBpX,IAAhB,OAAlB;AANiB;AAOlB;;mBACDyR,iB,gCAAoB;AAAA;;AAClB4F,gBAAW,YAAM;AACf,cAAKpX,QAAL,CAAc;AACZ6W,mBAAU,CAAC;AACTF,iBAAM,UADG;AAETtQ,gBAAK;AAFI,UAAD,EAGP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK;AAFJ,UAHO,EAMP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDkN,mBAAQ;AAHP,UANO;AADE,QAAd;AAaD,MAdD,EAcG,GAdH;AAeD,I;;mBACD1R,Q,qBAASC,I,EAAM;AACbV,aAAQC,GAAR,CAAY,UAAZ,EAAwBS,IAAxB;AACD,I;;mBACDqV,U,uBAAWjS,Q,EAAU;AAAA;;AACnB,YAAO,IAAImS,OAAJ,CAAY,UAACC,OAAD,EAAa;AAC9BF,kBAAW,YAAM;AACf,aAAMP,wCAAe,OAAKjX,KAAL,CAAWiX,QAA1B,EAAN;AACAK,wBAAeL,QAAf,EAAyB3R,SAASvF,KAAT,CAAeyG,QAAxC,EAAkDsQ,kBAAkBxR,QAAlB,CAAlD,EAA+E,CAA/E;AACA,gBAAKlF,QAAL,CAAc;AACZ6W;AADY,UAAd;AAGAS;AACD,QAPD,EAOG,IAPH;AAQD,MATM,CAAP;AAUD,I;;mBACDrX,M,qBAAS;AACP,SAAM4O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBAAO;AAAC,qBAAD;AAAA,eAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC;AAA4CwI,kBAAKlH,KAAKzD,QAAV;AAA5C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC,EAA2C,QAAQsB,KAAK4L,MAAxD,EAAgE,UAAU5L,KAAKtB,GAAL,KAAa,OAAvF,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,SAAMkR,YAAY1I,KAAK,KAAKjP,KAAL,CAAWiX,QAAhB,CAAlB;AACA,YACE;AAAA;AAAA,SAAM,UAAU,KAAKhV,QAArB,EAA+B,UAAU,KAAKsV,UAA9C;AACGI;AADH,MADF;AAKD,I;;;;;AACF;;sBAEcnY,K;;;;;;;;;;;;;AC9If;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAaA,KAAM6B,WAAW,iBAAKA,QAAtB;;AAEA,KAAMC,eAAe;AACpBC,QAAM,CAAC,OAAD,EAAU,OAAV;AADc,EAArB;AAGAC,SAAQC,GAAR;;KACMtC,K;;;AACL,iBAAYY,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAElB,OAAMwB,OAAO,MAAKxB,KAAL,CAAWwB,IAAxB;AACA,SAAKvB,KAAL,GAAa;AACZ+B,yBAAqBR,IADT;AAEZS,yBAAqBT,IAFT;AAGZ2B,wBAAoB3B;AAHR,IAAb;AAHkB;AAQlB;;kBACDU,Q,qBAASC,I,EAAM;AACdV,WAAQC,GAAR,CAAY,UAAZ,EAAwBS,IAAxB;AACA,G;;kBACDR,O,oBAAQQ,I,EAAM;AACbV,WAAQC,GAAR,CAAY,SAAZ,EAAuBS,IAAvB;AACA,G;;kBACD7B,M,qBAAS;AACR,UAEC;AAAA;AAAA,MAAM,WAAU,OAAhB,EAAyB,eAAzB,EAAmC,UAAU,yDAAM,MAAK,UAAX,GAA7C,EAAuE,WAAW,yDAAM,MAAK,SAAX,GAAlF;AACM,0BAAqB,KAAKL,KAAL,CAAW+B,mBADtC;AAEM,0BAAqB,KAAK/B,KAAL,CAAWgC,mBAFtC;AAGM,yBAAoB,KAAKhC,KAAL,CAAWkD,kBAHrC;AAIM,eAAU,KAAKjB,QAJrB,EAI+B,SAAS,KAAKP;AAJ7C;AAMM;AAAC,aAAD;AAAA,OAAU,OAAM,UAAhB,EAA2B,KAAI,KAA/B;AACE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC,EAAyC,cAAzC;AACE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B,EAAqC,qBAArC,GADF;AAEE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B;AAFF,MADF;AAKE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAO;AAAA;AAAA,UAAM,OAAO,EAAES,OAAO,MAAT,EAAb;AAAA;AAAA,QAAjB,EAA6D,KAAI,SAAjE;AADF;AALF;AANN,IAFD;AAmBA,G;;;;;AAGFhD,OAAMmC,YAAN,GAAqBA,YAArB;;sBAGenC,K;;;;;;;;;;;;;ACrDf;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAcA,KAAMkC,WAAW,iBAAKA,QAAtB;;KAGM3B,K;;;AACJ,kBAAYK,KAAZ,EAAmB;AAAA;;AAAA,kDACjB,sBAAMA,KAAN,CADiB;;AAEjB,WAAKC,KAAL,GAAa;AACXiX,iBAAU,EADC;AAEXlV,4BAAqB,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,CAFV;AAGX6V,mBAAY;AAHD,MAAb;AAKA,WAAK3V,QAAL,GAAgB,MAAKA,QAAL,CAAc9B,IAAd,OAAhB;AACA,WAAK0X,OAAL,GAAe,MAAKA,OAAL,CAAa1X,IAAb,OAAf;AACA,WAAK2X,QAAL,GAAgB,MAAKA,QAAL,CAAc3X,IAAd,OAAhB;AACA,WAAK4X,YAAL,GAAoB,MAAKA,YAAL,CAAkB5X,IAAlB,OAApB;AACA,WAAKyX,UAAL,GAAkB,IAAlB;AAXiB;AAYlB;;mBACDhG,iB,gCAAoB;AAAA;;AAChB4F,gBAAW,YAAM;AACf,cAAKpX,QAAL,CAAc;AACZ6W,mBAAU,CAAC;AACTF,iBAAM,UADG;AAETtQ,gBAAK,KAFI;AAGTnC,qBAAU,CAAC;AACTyS,mBAAM,YADG;AAETtQ,kBAAK;AAFI,YAAD,EAGP;AACDsQ,mBAAM,YADL;AAEDtQ,kBAAK;AAFJ,YAHO;AAHD,UAAD,EAUP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDnC,qBAAU,CAAC;AACTyS,mBAAM,YADG;AAETtQ,kBAAK;AAFI,YAAD,EAGP;AACDsQ,mBAAM,YADL;AAEDtQ,kBAAK;AAFJ,YAHO;AAHT,UAVO,EAoBP;AACDsQ,iBAAM,UADL;AAEDtQ,gBAAK,KAFJ;AAGDkN,mBAAQ;AAHP,UApBO;AADE,QAAd;AA2BD,MA5BD,EA4BG,GA5BH;AA6BD,I;AACD;;;;;;;mBAKFkE,O,oBAAQG,K,EAAOC,Q,EAAU;AACvB,SAAMtC,OAAO,KAAK3V,KAAL,CAAWiX,QAAxB;AACA,SAAIiB,gBAAJ;AACA,SAAIF,KAAJ,EAAW;AACT;AACAE,iBAAU,KAAKH,YAAL,CAAkBpC,IAAlB,EAAwBqC,KAAxB,CAAV;AACA;AACA,WAAIE,OAAJ,EAAa;AACX,aAAI,CAACA,QAAQ5T,QAAb,EAAuB;AACrB4T,mBAAQ5T,QAAR,GAAmB,EAAnB;AACD;AACD;AACA,aAAI,CAAC2T,SAASxR,GAAd,EAAmB;AACjBwR,oBAASxR,GAAT,GAAeuR,QAAQE,QAAQ5T,QAAR,CAAiB2C,MAAzB,GAAkC,CAAjD;AACD;AACDiR,iBAAQ5T,QAAR,CAAiBkD,IAAjB,CAAsByQ,QAAtB;AACD;AACF,MAdD,MAcO;AACL;AACA,WAAI,CAACA,SAASxR,GAAd,EAAmB;AACjBwR,kBAASxR,GAAT,GAAe,OAAOkP,KAAK1O,MAAZ,GAAqB,CAApC;AACD;AACD0O,YAAKnO,IAAL,CAAUyQ,QAAV;AACD;;AAED,UAAK7X,QAAL,CAAc;AACZuV;AADY,MAAd;AAGD,I;;mBAEDoC,Y,yBAAapC,I,EAAMlP,G,EAAK;AAAA;;AACtB,SAAI,CAAC,KAAKmR,UAAV,EAAsB;AACpBjC,YAAKwC,IAAL,CAAU,gBAAQ;AAChB,aAAIpQ,KAAKtB,GAAL,KAAaA,GAAjB,EAAsB;AACpBjF,mBAAQC,GAAR,CAAY,iBAAiBsG,KAAKgP,IAAlC;AACA,kBAAKa,UAAL,GAAkB7P,IAAlB;AACA,kBAAQ,IAAR;AACD,UAJD,MAIO,IAAIA,KAAKzD,QAAT,EAAmB;AACxB,kBAAO,OAAKyT,YAAL,CAAkBhQ,KAAKzD,QAAvB,EAAiCmC,GAAjC,CAAP;AAED;AACF,QATD;AAUD;AACD,YAAO,KAAKmR,UAAZ;AACD,I;;mBAID3V,Q,qBAASC,I,EAAM;AACXV,aAAQC,GAAR,CAAY,UAAZ,EAAwBS,IAAxB;AACD,I;AACD;;;;;mBAGF4V,Q,uBAAW;AACT,SAAIE,cAAJ;AAAA,SAAWC,iBAAX;AACAD,aAAQ,KAAR;AACAC,gBAAW;AACTlB,aAAM;AADG,MAAX;AAGA,UAAKc,OAAL,CAAaG,KAAb,EAAoBC,QAApB;AACD,I;;mBAED5X,M,qBAAS;AACP,SAAM4O,OAAO,SAAPA,IAAO;AAAA,cAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACtC,aAAIA,KAAKzD,QAAT,EAAmB;AACjB,kBAAO;AAAC,qBAAD;AAAA,eAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC;AAA4CwI,kBAAKlH,KAAKzD,QAAV;AAA5C,YAAP;AACD;AACD,gBAAO,iCAAC,QAAD,IAAU,OAAOyD,KAAKgP,IAAtB,EAA4B,KAAKhP,KAAKtB,GAAtC,EAA2C,QAAQsB,KAAK4L,MAAxD,EAAgE,UAAU5L,KAAKtB,GAAL,KAAa,OAAvF,GAAP;AACD,QALoB,CAAR;AAAA,MAAb;AAMA,SAAMkR,YAAY1I,KAAK,KAAKjP,KAAL,CAAWiX,QAAhB,CAAlB;AACAzV,aAAQC,GAAR,CAAY,kBAAkB,KAAKzB,KAAL,CAAW+B,mBAAzC;AACA,YACE;AAAA;AAAA;AACE;AAAA;AAAA,WAAM,UAAU,KAAKE,QAArB,EAA+B,qBAAqB,KAAKjC,KAAL,CAAW+B,mBAA/D;AACG4V;AADH,QADF;AAIE;AAAA;AAAA,WAAQ,QAAO,SAAf,EAAyB,SAAS,KAAKG,QAAvC;AAAA;AAAA;AAJF,MADF;AAUD,I;;;;;AACF;;sBAEcpY,K;;;;;;;;;;;;;ACjJf;;;;AAGA;;;;AACA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;AAcA,KAAM2B,WAAW,iBAAKA,QAAtB;;AAEA,KAAImS,QAAQ,CAAZ;AACA,KAAIC,QAAQ,GAAZ;AACA,KAAIC,UAAU,KAAd;;KAIM/T,K;;;AACL,iBAAYI,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAAA,SAYnB4I,YAZmB,GAYJ,UAACtD,CAAD,EAAO;AACrB,UAAKjF,QAAL,CAAc;AACbgY,cAAS/S,EAAEO,IAAF,CAAO7F,KAAP,CAAayG;AADT,KAAd;AAGA,IAhBkB;;AAAA,SAiBnBoC,YAjBmB,GAiBJ,UAACvD,CAAD,EAAIgT,QAAJ,EAAiB;AAC/B,UAAKjY,QAAL,CAAc;AACbgY,cAAS,EADI;AAEbE,cAAS;AAFI,KAAd;AAKA,IAvBkB;;AAAA,SAyBnBC,UAzBmB,GAyBN,UAACxQ,IAAD,EAAU;AACtB,UAAK3H,QAAL,CAAc;AACbkY,cAASvQ,KAAKtB;AADD,KAAd;AAGA,IA7BkB;;AAAA,SA8BnB+R,UA9BmB,GA8BN,UAACzQ,IAAD,EAAOwO,KAAP,EAAiB;AAC7BxO,SAAKgP,IAAL,GAAYR,KAAZ;AACA,IAhCkB;;AAAA,SAiCnBkC,eAjCmB,GAiCD,UAAC1Q,IAAD,EAAU;AAC3B,QAAI2Q,kBAAJ;AAAA,QAAeC,kBAAf;AACA;AACA,QAAI,MAAK3Y,KAAL,CAAWsY,OAAX,IAAsBvQ,KAAKtB,GAA/B,EAAoC;AACnCkS,iBAAY,4CAAO,MAAK,MAAZ,EAAmB,IAAG,SAAtB,EAAgC,cAAc5Q,KAAKgP,IAAnD,EAAyD,UAAU,kBAAC1R,CAAD;AAAA,cAAO,MAAKmT,UAAL,CAAgBzQ,IAAhB,EAAsB1C,EAAEuT,MAAF,CAASrC,KAA/B,CAAP;AAAA,OAAnE,GAAZ;AACA,KAFD,MAEO;AACNoC,iBAAY;AAAA;AAAA,QAAM,WAAU,cAAhB;AAAgC5Q,WAAKgP;AAArC,MAAZ;AACA;AACD;AACA,QAAI,MAAK/W,KAAL,CAAWoY,OAAX,IAAsBrQ,KAAKtB,GAA/B,EAAoC;AACnCiS,iBAAY,yDAAM,WAAU,wBAAhB,EAAyC,MAAK,WAA9C,EAA0D,SAAS,iBAACrT,CAAD;AAAA,cAAO,MAAKkT,UAAL,CAAgBxQ,IAAhB,CAAP;AAAA,OAAnE,GAAZ;AACA;AACD,WAAQ;AAAA;AAAA,OAAK,WAAU,WAAf;AAEN4Q,cAFM;AAGND;AAHM,KAAR;AAKA,IAlDkB;;AAAA,SAoDnB9G,iBApDmB,GAoDC,YAAM;AACzB4F,eAAW,YAAM;AAChB,WAAKpX,QAAL,CAAc;AACb6W,gBAAU,CAAC;AACVF,aAAM,UADI;AAEVtQ,YAAK,KAFK;AAGVnC,iBAAU,CAAC;AACVyS,cAAM,YADI;AAEVtQ,aAAK;AAFK,QAAD,EAGP;AACFsQ,cAAM,YADJ;AAEFtQ,aAAK;AAFH,QAHO;AAHA,OAAD,EAUP;AACFsQ,aAAM,UADJ;AAEFtQ,YAAK,KAFH;AAGFnC,iBAAU,CAAC;AACVyS,cAAM,YADI;AAEVtQ,aAAK;AAFK,QAAD,EAGP;AACFsQ,cAAM,YADJ;AAEFtQ,aAAK;AAFH,QAHO;AAHR,OAVO,EAoBP;AACFsQ,aAAM,UADJ;AAEFtQ,YAAK,KAFH;AAGFkN,eAAQ;AAHN,OApBO;AADG,MAAd;AA4BA,KA7BD,EA6BG,GA7BH;AA8BA,IAnFkB;;AAGlB,SAAK3T,KAAL,GAAa;AACZiX,cAAU,EADE;AAEZmB,aAAS,EAFG;AAGZE,aAAS;AAHG,IAAb;;AAHkB;AASlB;;kBA2EDjY,M,qBAAS;AAAA;;AACR,OAAM4O,OAAO,SAAPA,IAAO;AAAA,WAAQ0G,KAAK3U,GAAL,CAAS,UAAC+G,IAAD,EAAU;AACvC,SAAIA,KAAKzD,QAAT,EAAmB;AAClB,aAAO;AAAC,eAAD;AAAA,SAAU,OAAO,OAAKmU,eAAL,CAAqB1Q,IAArB,CAAjB,EAA6C,KAAKA,KAAKtB,GAAvD;AAA6DwI,YAAKlH,KAAKzD,QAAV;AAA7D,OAAP;AACA;AACD,YAAO,iCAAC,QAAD,IAAU,OAAO,OAAKmU,eAAL,CAAqB1Q,IAArB,CAAjB,EAA6C,KAAKA,KAAKtB,GAAvD,EAA4D,QAAQsB,KAAK4L,MAAzE,EAAiF,UAAU5L,KAAKtB,GAAL,KAAa,OAAxG,GAAP;AACA,KALoB,CAAR;AAAA,IAAb;AAMA,OAAMkR,YAAY1I,KAAK,KAAKjP,KAAL,CAAWiX,QAAhB,CAAlB;AACA,UACC;AAAA;AAAA,MAAM,cAAc,KAAKrO,YAAzB,EAAuC,cAAc,KAAKD,YAA1D;AACEgP;AADF,IADD;AAMA,G;;;;;sBAKahY,K;;;;;;;;;;;;;ACtHf;;;;AAGA;;;;;;;;;;;;gfAXA;;;;;;;AAaA,KAAM0B,WAAW,iBAAKA,QAAtB;;KACMzB,K;;;AACL,iBAAYG,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAElB,OAAMwB,OAAO,MAAKxB,KAAL,CAAWwB,IAAxB;AACA,SAAKvB,KAAL,GAAa;AACZ+B,yBAAqBR;AADT,IAAb;;AAHkB;AAOlB;;kBAEDlB,M,qBAAS;AACR,UACC;AAAA;AAAA,MAAM,WAAU,OAAhB,EAAwB,cAAxB,EAAiC,eAAjC,EAA4C,kBAAkB,IAA9D;AACM;AAAC,aAAD;AAAA,OAAU,OAAM,UAAhB,EAA2B,KAAI,KAA/B;AACE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B,GADF;AAEE,uCAAC,QAAD,IAAU,OAAM,MAAhB,EAAuB,KAAI,SAA3B;AAFF,MADF;AAKE;AAAC,cAAD;AAAA,QAAU,OAAM,YAAhB,EAA6B,KAAI,OAAjC;AACE,uCAAC,QAAD,IAAU,OAAO;AAAA;AAAA,UAAM,OAAO,EAAE8B,OAAO,MAAT,EAAb;AAAA;AAAA,QAAjB,EAA6D,KAAI,SAAjE;AADF;AALF;AADN,IADD;AAaA,G;;;;;sBAGavC,K","file":"demo.js","sourcesContent":[" \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\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\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.loaded = 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// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 3a3d5b282ab4cbc3e8e4","import {Col, Row} from 'bee-layout';\r\nimport {Panel} from 'bee-panel';\r\nimport Button from 'bee-button';\r\nimport React, {Component} from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\n\r\nconst CARET = ;\r\n\r\nconst CARETUP = ;\r\n\r\n\r\nvar Demo1 = require(\"./demolist/Demo1\");var Demo2 = require(\"./demolist/Demo2\");var Demo3 = require(\"./demolist/Demo3\");var Demo4 = require(\"./demolist/Demo4\");var Demo5 = require(\"./demolist/Demo5\");var Demo6 = require(\"./demolist/Demo6\");var Demo7 = require(\"./demolist/Demo7\");var Demo8 = require(\"./demolist/Demo8\");var Demo9 = require(\"./demolist/Demo9\");var DemoArray = [{\"example\": ,\"title\":\" Tree基本使用事例\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree基本使用事例\\r\\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport { Tree } from 'tinper-bee';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst defaultProps = {\\r\\n\\tkeys: ['0-0-0', '0-0-1']\\r\\n}\\r\\nconsole.log(Tree);\\r\\nclass Demo1 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys,\\r\\n\\t\\t\\tdefaultSelectedKeys: keys,\\r\\n\\t\\t\\tcheckedKeys: {checked:keys},\\r\\n\\t\\t};\\r\\n\\t}\\r\\n\\tonSelect(info) {\\r\\n\\t\\tconsole.log('selected', info);\\r\\n\\t}\\r\\n\\tonCheck = (checkedKeys) => {\\r\\n\\t\\tlet self = this;\\r\\n\\t\\tconsole.log('onCheck', checkedKeys);\\r\\n\\t\\tconst cks = {\\r\\n\\t\\t\\tchecked: checkedKeys.checked || checkedKeys,\\r\\n\\t\\t};\\r\\n\\t\\tthis.setState({checkedKeys:cks});\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\nDemo1.defaultProps = defaultProps;\\r\\n\\r\\n\\r\\n\",\"desc\":\" 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\"},{\"example\": ,\"title\":\" Tree数据可控事例\",\"code\":\"/**\\r\\n*\\r\\n* @title Tree数据可控事例\\r\\n* @description\\r\\n*\\r\\n*/\\r\\n/*\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n*/\\r\\n\\r\\n\\r\\nimport React, { Component } from 'react';\\r\\nimport { Tree } from 'tinper-bee';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\n\\r\\nclass Demo2 extends Component{\\r\\n constructor(props) {\\r\\n \\tsuper(props);\\r\\n this.state = {\\r\\n expandedKeys: ['0-0-0', '0-0-1'],\\r\\n autoExpandParent: true,\\r\\n checkedKeys: ['0-0-0'],\\r\\n selectedKeys: [],\\r\\n };\\r\\n this.onExpand = this.onExpand.bind(this);\\r\\n this.onCheck = this.onCheck.bind(this);\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n }\\r\\n onExpand(expandedKeys) {\\r\\n console.log('onExpand', arguments);\\r\\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\\r\\n // or, you can remove all expanded children keys.\\r\\n this.setState({\\r\\n expandedKeys,\\r\\n autoExpandParent: false,\\r\\n });\\r\\n }\\r\\n onCheck(checkedKeys) {\\r\\n this.setState({\\r\\n checkedKeys,\\r\\n selectedKeys: ['0-3', '0-4'],\\r\\n });\\r\\n }\\r\\n onSelect(selectedKeys, info) {\\r\\n console.log('onSelect', info);\\r\\n this.setState({ selectedKeys });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return (\\r\\n \\r\\n {loop(item.children)}\\r\\n \\r\\n );\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n {loop(gData)}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\\r\\n\",\"desc\":\"\"},{\"example\": ,\"title\":\" Tree 拖拽使用事例\",\"code\":\"/**\\r\\n*\\r\\n* @title Tree 拖拽使用事例\\r\\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\\r\\n*\\r\\n*/\\r\\n\\r\\n\\r\\n\\r\\nimport React, { Component } from 'react';\\r\\nimport { Tree } from 'tinper-bee';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({ title: key, key });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nclass Demo3 extends Component{\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n gData,\\r\\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\\r\\n };\\r\\n this.onDragEnter = this.onDragEnter.bind(this);\\r\\n this.onDrop = this.onDrop.bind(this);\\r\\n }\\r\\n onDragEnter(info) {\\r\\n console.log(info);\\r\\n // expandedKeys 需要受控时设置\\r\\n // this.setState({\\r\\n // expandedKeys: info.expandedKeys,\\r\\n // });\\r\\n }\\r\\n onDrop(info) {\\r\\n console.log(info);\\r\\n const dropKey = info.node.props.eventKey;\\r\\n const dragKey = info.dragNode.props.eventKey;\\r\\n // const dragNodesKeys = info.dragNodesKeys;\\r\\n const loop = (data, key, callback) => {\\r\\n data.forEach((item, index, arr) => {\\r\\n if (item.key === key) {\\r\\n return callback(item, index, arr);\\r\\n }\\r\\n if (item.children) {\\r\\n return loop(item.children, key, callback);\\r\\n }\\r\\n });\\r\\n };\\r\\n const data = [...this.state.gData];\\r\\n let dragObj;\\r\\n loop(data, dragKey, (item, index, arr) => {\\r\\n arr.splice(index, 1);\\r\\n dragObj = item;\\r\\n });\\r\\n if (info.dropToGap) {\\r\\n let ar;\\r\\n let i;\\r\\n loop(data, dropKey, (item, index, arr) => {\\r\\n ar = arr;\\r\\n i = index;\\r\\n });\\r\\n ar.splice(i, 0, dragObj);\\r\\n } else {\\r\\n loop(data, dropKey, (item) => {\\r\\n item.children = item.children || [];\\r\\n // where to insert 示例添加到尾部,可以是随意位置\\r\\n item.children.push(dragObj);\\r\\n });\\r\\n }\\r\\n this.setState({\\r\\n gData: data,\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children && item.children.length) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n {loop(this.state.gData)}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" 拖动结点插入到另一个结点后面或者其他的父节点里面。\"},{\"example\": ,\"title\":\" Tree可搜索事例\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree可搜索事例\\r\\n * @description\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\n\\nimport { Tree, FormControl } from 'tinper-bee';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({\\r\\n title: key,\\r\\n key\\r\\n });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst dataList = [];\\r\\nconst generateList = (data) => {\\r\\n for (let i = 0; i < data.length; i++) {\\r\\n const node = data[i];\\r\\n const key = node.key;\\r\\n dataList.push({\\r\\n key,\\r\\n title: key\\r\\n });\\r\\n if (node.children) {\\r\\n generateList(node.children, node.key);\\r\\n }\\r\\n }\\r\\n};\\r\\ngenerateList(gData);\\r\\n\\r\\nconst getParentKey = (key, tree) => {\\r\\n let parentKey;\\r\\n for (let i = 0; i < tree.length; i++) {\\r\\n const node = tree[i];\\r\\n if (node.children) {\\r\\n if (node.children.some(item => item.key === key)) {\\r\\n parentKey = node.key;\\r\\n } else if (getParentKey(key, node.children)) {\\r\\n parentKey = getParentKey(key, node.children);\\r\\n }\\r\\n }\\r\\n }\\r\\n return parentKey;\\r\\n};\\r\\n\\r\\n\\r\\nclass Demo4 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n expandedKeys: [],\\r\\n searchValue: '',\\r\\n autoExpandParent: true,\\r\\n }\\r\\n }\\r\\n onExpand = (expandedKeys) => {\\r\\n this.setState({\\r\\n expandedKeys,\\r\\n autoExpandParent: false,\\r\\n });\\r\\n }\\r\\n onChange = (value) => {\\r\\n\\r\\n const expandedKeys = [];\\r\\n dataList.forEach((item) => {\\r\\n if (item.key.indexOf(value) > -1) {\\r\\n expandedKeys.push(getParentKey(item.key, gData));\\r\\n }\\r\\n });\\r\\n const uniqueExpandedKeys = [];\\r\\n expandedKeys.forEach((item) => {\\r\\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\\r\\n uniqueExpandedKeys.push(item);\\r\\n }\\r\\n });\\r\\n this.setState({\\r\\n expandedKeys: uniqueExpandedKeys,\\r\\n searchValue: value,\\r\\n autoExpandParent: true,\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const {\\r\\n searchValue,\\r\\n expandedKeys,\\r\\n autoExpandParent\\r\\n } = this.state;\\r\\n const loop = data => data.map((item) => {\\r\\n const index = item.key.search(searchValue);\\r\\n const beforeStr = item.key.substr(0, index);\\r\\n const afterStr = item.key.substr(index + searchValue.length);\\r\\n const title = index > -1 ? (\\r\\n \\r\\n {beforeStr}\\r\\n {searchValue} \\r\\n {afterStr}\\r\\n \\r\\n ) : {item.key} ;\\r\\n if (item.children) {\\r\\n return (\\r\\n \\r\\n {loop(item.children)}\\r\\n \\r\\n );\\r\\n }\\r\\n return ;\\r\\n });\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n {loop(gData)}\\r\\n \\r\\n
\\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\n\",\"desc\":\"\",\"scss_code\":\".u-tree-searchable-filter {\\r\\n color: #f50;\\r\\n transition: all .3s ease;\\r\\n}\"},{\"example\": ,\"title\":\" Tree异步数据加载\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree异步数据加载\\r\\n * @description 当点击展开,异步获取子节点数据\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\nimport { Tree } from 'tinper-bee';\\r\\n\\r\\nconst x = 3;\\r\\nconst y = 2;\\r\\nconst z = 1;\\r\\nconst gData = [];\\r\\n\\r\\nconst generateData = (_level, _preKey, _tns) => {\\r\\n const preKey = _preKey || '0';\\r\\n const tns = _tns || gData;\\r\\n\\r\\n const children = [];\\r\\n for (let i = 0; i < x; i++) {\\r\\n const key = `${preKey}-${i}`;\\r\\n tns.push({\\r\\n title: key,\\r\\n key\\r\\n });\\r\\n if (i < y) {\\r\\n children.push(key);\\r\\n }\\r\\n }\\r\\n if (_level < 0) {\\r\\n return tns;\\r\\n }\\r\\n const level = _level - 1;\\r\\n children.forEach((key, index) => {\\r\\n tns[index].children = [];\\r\\n return generateData(level, key, tns[index].children);\\r\\n });\\r\\n};\\r\\ngenerateData(z);\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nfunction generateTreeNodes(treeNode) {\\r\\n const arr = [];\\r\\n const key = treeNode.props.eventKey;\\r\\n for (let i = 0; i < 3; i++) {\\r\\n arr.push({\\r\\n name: `leaf ${key}-${i}`,\\r\\n key: `${key}-${i}`\\r\\n });\\r\\n }\\r\\n return arr;\\r\\n}\\r\\n\\r\\nfunction setLeaf(treeData, curKey, level) {\\r\\n const loopLeaf = (data, lev) => {\\r\\n const l = lev - 1;\\r\\n data.forEach((item) => {\\r\\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\\r\\n curKey.indexOf(item.key) !== 0) {\\r\\n return;\\r\\n }\\r\\n if (item.children) {\\r\\n loopLeaf(item.children, l);\\r\\n } else if (l < 1) {\\r\\n item.isLeaf = true;\\r\\n }\\r\\n });\\r\\n };\\r\\n loopLeaf(treeData, level + 1);\\r\\n}\\r\\n\\r\\nfunction getNewTreeData(treeData, curKey, child, level) {\\r\\n const loop = (data) => {\\r\\n if (level < 1 || curKey.length - 3 > level * 2) return;\\r\\n data.forEach((item) => {\\r\\n if (curKey.indexOf(item.key) === 0) {\\r\\n if (item.children) {\\r\\n loop(item.children);\\r\\n } else {\\r\\n item.children = child;\\r\\n }\\r\\n }\\r\\n });\\r\\n };\\r\\n loop(treeData);\\r\\n setLeaf(treeData, curKey, level);\\r\\n}\\r\\n\\r\\nclass Demo5 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n treeData: [],\\r\\n };\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n this.onLoadData = this.onLoadData.bind(this);\\r\\n }\\r\\n componentDidMount() {\\r\\n setTimeout(() => {\\r\\n this.setState({\\r\\n treeData: [{\\r\\n name: 'pNode 01',\\r\\n key: '0-0'\\r\\n }, {\\r\\n name: 'pNode 02',\\r\\n key: '0-1'\\r\\n }, {\\r\\n name: 'pNode 03',\\r\\n key: '0-2',\\r\\n isLeaf: true\\r\\n }, ],\\r\\n });\\r\\n }, 100);\\r\\n }\\r\\n onSelect(info) {\\r\\n console.log('selected', info);\\r\\n }\\r\\n onLoadData(treeNode) {\\r\\n return new Promise((resolve) => {\\r\\n setTimeout(() => {\\r\\n const treeData = [...this.state.treeData];\\r\\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\\r\\n this.setState({\\r\\n treeData\\r\\n });\\r\\n resolve();\\r\\n }, 1000);\\r\\n });\\r\\n }\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n const treeNodes = loop(this.state.treeData);\\r\\n return (\\r\\n \\r\\n {treeNodes}\\r\\n \\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" 当点击展开,异步获取子节点数据\"},{\"example\": ,\"title\":\" Tree基本使用事例自定义图标\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree基本使用事例自定义图标\\r\\n * @description 添加openIcon、closeIcon属性\\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport { Tree, Icon } from 'tinper-bee';\\r\\n\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nconst defaultProps = {\\r\\n\\tkeys: ['0-0-0', '0-0-1']\\r\\n}\\r\\nconsole.log(Tree);\\r\\nclass Demo1 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys,\\r\\n\\t\\t\\tdefaultSelectedKeys: keys,\\r\\n\\t\\t\\tdefaultCheckedKeys: keys,\\r\\n\\t\\t};\\r\\n\\t}\\r\\n\\tonSelect(info) {\\r\\n\\t\\tconsole.log('selected', info);\\r\\n\\t}\\r\\n\\tonCheck(info) {\\r\\n\\t\\tconsole.log('onCheck', info);\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\treturn (\\r\\n\\r\\n\\t\\t\\t } closeIcon={ }\\r\\n\\t defaultExpandedKeys={this.state.defaultExpandedKeys}\\r\\n\\t defaultSelectedKeys={this.state.defaultSelectedKeys}\\r\\n\\t defaultCheckedKeys={this.state.defaultCheckedKeys}\\r\\n\\t onSelect={this.onSelect} onCheck={this.onCheck}\\r\\n\\t >\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\nDemo1.defaultProps = defaultProps;\\r\\n\\r\\n\\r\\n\",\"desc\":\" 添加openIcon、closeIcon属性\"},{\"example\": ,\"title\":\" Tree增加节点\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree增加节点\\r\\n * @description \\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n Component\\r\\n} from 'react';\\r\\nimport { Tree, Button } from 'tinper-bee';\\r\\n\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\n\\r\\nclass Demo7 extends Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n treeData: [],\\r\\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\\r\\n parentNode: {}\\r\\n };\\r\\n this.onSelect = this.onSelect.bind(this);\\r\\n this.addNode = this.addNode.bind(this);\\r\\n this.clickFun = this.clickFun.bind(this);\\r\\n this.getNodeByKey = this.getNodeByKey.bind(this);\\r\\n this.parentNode = null\\r\\n }\\r\\n componentDidMount() {\\r\\n setTimeout(() => {\\r\\n this.setState({\\r\\n treeData: [{\\r\\n name: 'pNode 01',\\r\\n key: '0-0',\\r\\n children: [{\\r\\n name: 'leaf 0-0-0',\\r\\n key: '0-0-0'\\r\\n }, {\\r\\n name: 'leaf 0-0-1',\\r\\n key: '0-0-1'\\r\\n }]\\r\\n }, {\\r\\n name: 'pNode 02',\\r\\n key: '0-1',\\r\\n children: [{\\r\\n name: 'leaf 0-1-0',\\r\\n key: '0-1-0'\\r\\n }, {\\r\\n name: 'leaf 0-1-1',\\r\\n key: '0-1-1'\\r\\n }]\\r\\n }, {\\r\\n name: 'pNode 03',\\r\\n key: '0-2',\\r\\n isLeaf: true\\r\\n }, ],\\r\\n });\\r\\n }, 100);\\r\\n }\\r\\n /**\\r\\n * 增加节点\\r\\n * @param string prKey [父节点key]\\r\\n * @param object nodeItem [子节点信息]\\r\\n */\\r\\n addNode(prKey, nodeItem) {\\r\\n const data = this.state.treeData;\\r\\n let parNode;\\r\\n if (prKey) {\\r\\n // 如果prKey存在则搜索父节点进行添加\\r\\n parNode = this.getNodeByKey(data, prKey);\\r\\n //如果父节点存在的话,添加到父节点上\\r\\n if (parNode) {\\r\\n if (!parNode.children) {\\r\\n parNode.children = [];\\r\\n }\\r\\n // 如果key不存在就动态生成一个\\r\\n if (!nodeItem.key) {\\r\\n nodeItem.key = prKey + parNode.children.length + 1;\\r\\n }\\r\\n parNode.children.push(nodeItem);\\r\\n }\\r\\n } else {\\r\\n // 没有穿prKey添加到根下成为一级节点\\r\\n if (!nodeItem.key) {\\r\\n nodeItem.key = \\\"0-\\\" + data.length + 1;\\r\\n }\\r\\n data.push(nodeItem);\\r\\n }\\r\\n\\r\\n this.setState({\\r\\n data\\r\\n });\\r\\n }\\r\\n\\r\\n getNodeByKey(data, key) {\\r\\n if (!this.parentNode) {\\r\\n data.find(item => {\\r\\n if (item.key === key) {\\r\\n console.log('item.name---' + item.name)\\r\\n this.parentNode = item;\\r\\n return (true);\\r\\n } else if (item.children) {\\r\\n return this.getNodeByKey(item.children, key);\\r\\n\\r\\n }\\r\\n })\\r\\n }\\r\\n return this.parentNode;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n onSelect(info) {\\r\\n console.log('selected', info);\\r\\n }\\r\\n /**\\r\\n * 点击button事件\\r\\n */\\r\\n clickFun() {\\r\\n let prKey, nodeItem;\\r\\n prKey = '0-1';\\r\\n nodeItem = {\\r\\n name: 'leaf 0-0-4'\\r\\n }\\r\\n this.addNode(prKey, nodeItem);\\r\\n }\\r\\n\\r\\n render() {\\r\\n const loop = data => data.map((item) => {\\r\\n if (item.children) {\\r\\n return {loop(item.children)} ;\\r\\n }\\r\\n return ;\\r\\n });\\r\\n const treeNodes = loop(this.state.treeData);\\r\\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\\r\\n return (\\r\\n \\r\\n \\r\\n {treeNodes}\\r\\n \\r\\n \\r\\n 增加节点\\r\\n \\r\\n
\\r\\n );\\r\\n }\\r\\n};\\r\\n\\r\\n\",\"desc\":\" \"},{\"example\": ,\"title\":\" Tree 节点可编辑\",\"code\":\"/**\\r\\n *\\r\\n * @title Tree 节点可编辑\\r\\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport { Tree, Icon, Button } from 'tinper-bee';\\r\\n\\n\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\n\\r\\nlet timer = 0;\\r\\nlet delay = 200;\\r\\nlet prevent = false;\\r\\n\\r\\n\\r\\n\\r\\nclass Demo8 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\ttreeData: [],\\r\\n\\t\\t\\tisHover: \\\"\\\",\\r\\n\\t\\t\\teditKey: \\\"\\\"\\r\\n\\t\\t};\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\r\\n\\tonMouseEnter = (e) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\tisHover: e.node.props.eventKey\\r\\n\\t\\t})\\r\\n\\t}\\r\\n\\tonMouseLeave = (e, treenode) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\tisHover: \\\"\\\",\\r\\n\\t\\t\\teditKey: \\\"\\\"\\r\\n\\t\\t})\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\teditRender = (item) => {\\r\\n\\t\\tthis.setState({\\r\\n\\t\\t\\teditKey: item.key\\r\\n\\t\\t});\\r\\n\\t}\\r\\n\\tnodechange = (item, value) => {\\r\\n\\t\\titem.name = value;\\r\\n\\t}\\r\\n\\trenderTreeTitle = (item) => {\\r\\n\\t\\tlet titleIcon, titleInfo;\\r\\n\\t\\t//编辑时input框\\r\\n\\t\\tif (this.state.editKey == item.key) {\\r\\n\\t\\t\\ttitleInfo = this.nodechange(item, e.target.value)} />\\r\\n\\t\\t} else {\\r\\n\\t\\t\\ttitleInfo = {item.name} \\r\\n\\t\\t}\\r\\n\\t\\t//编辑图标\\r\\n\\t\\tif (this.state.isHover == item.key) {\\r\\n\\t\\t\\ttitleIcon = this.editRender(item)}> ;\\r\\n\\t\\t}\\r\\n\\t\\treturn (\\r\\n\\r\\n\\t\\t\\t{titleInfo}\\r\\n\\t\\t\\t{titleIcon}\\r\\n\\t\\t
);\\r\\n\\t}\\r\\n\\r\\n\\tcomponentDidMount = () => {\\r\\n\\t\\tsetTimeout(() => {\\r\\n\\t\\t\\tthis.setState({\\r\\n\\t\\t\\t\\ttreeData: [{\\r\\n\\t\\t\\t\\t\\tname: 'pNode 01',\\r\\n\\t\\t\\t\\t\\tkey: '0-0',\\r\\n\\t\\t\\t\\t\\tchildren: [{\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-0',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-0-0'\\r\\n\\t\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-1',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-0-1'\\r\\n\\t\\t\\t\\t\\t}]\\r\\n\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\tname: 'pNode 02',\\r\\n\\t\\t\\t\\t\\tkey: '0-1',\\r\\n\\t\\t\\t\\t\\tchildren: [{\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-0',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-1-0'\\r\\n\\t\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-1',\\r\\n\\t\\t\\t\\t\\t\\tkey: '0-1-1'\\r\\n\\t\\t\\t\\t\\t}]\\r\\n\\t\\t\\t\\t}, {\\r\\n\\t\\t\\t\\t\\tname: 'pNode 03',\\r\\n\\t\\t\\t\\t\\tkey: '0-2',\\r\\n\\t\\t\\t\\t\\tisLeaf: true\\r\\n\\t\\t\\t\\t}, ],\\r\\n\\t\\t\\t});\\r\\n\\t\\t\\r\\n\\t\\t}, 100);\\r\\n\\t}\\r\\n\\trender() {\\r\\n\\t\\tconst loop = data => data.map((item) => {\\r\\n\\t\\t\\tif (item.children) {\\r\\n\\t\\t\\t\\treturn {loop(item.children)} ;\\r\\n\\t\\t\\t}\\r\\n\\t\\t\\treturn ;\\r\\n\\t\\t});\\r\\n\\t\\tconst treeNodes = loop(this.state.treeData);\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t\\t\\t\\t{treeNodes}\\r\\n\\t\\t\\t \\r\\n\\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n\",\"desc\":\" 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\",\"scss_code\":\".title-middle {\\r\\n display: inline-block;\\r\\n vertical-align: middle;\\r\\n}\\r\\n.edit-icon {\\r\\n float:right;\\r\\n font-size: 14px;\\r\\n}\\r\\n.title-con {\\r\\n min-width: 150px;\\r\\n}\"},{\"example\": ,\"title\":\" 连接线Tree\",\"code\":\"/**\\r\\n *\\r\\n * @title 连接线Tree\\r\\n * @description \\r\\n *\\r\\n */\\r\\n\\r\\n\\r\\nimport React, {\\r\\n\\tComponent\\r\\n} from 'react';\\r\\nimport { Tree } from 'tinper-bee';\\r\\n\\r\\nconst TreeNode = Tree.TreeNode;\\r\\nclass Demo9 extends Component {\\r\\n\\tconstructor(props) {\\r\\n\\t\\tsuper(props);\\r\\n\\t\\tconst keys = this.props.keys;\\r\\n\\t\\tthis.state = {\\r\\n\\t\\t\\tdefaultExpandedKeys: keys\\r\\n\\t\\t};\\r\\n\\r\\n\\t}\\r\\n\\r\\n\\trender() {\\r\\n\\t\\treturn (\\r\\n\\t\\t\\t\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t sss} key=\\\"0-0-1-0\\\" />\\r\\n\\t \\r\\n\\t \\r\\n\\t \\r\\n\\t\\t);\\r\\n\\t}\\r\\n}\\r\\n\\r\\n\",\"desc\":\" \"}]\n\r\n\r\nclass Demo extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n open: false\r\n }\r\n this.handleClick = this.handleClick.bind(this);\r\n }\r\n\r\n handleClick() {\r\n this.setState({open: !this.state.open})\r\n }\r\n\r\n render() {\r\n const {title, example, code, desc, scss_code} = this.props;\r\n let caret = this.state.open ? CARETUP : CARET;\r\n let text = this.state.open ? \"隐藏代码\" : \"查看代码\";\r\n\r\n const header = (\r\n \r\n {example}\r\n \r\n {caret}\r\n {text}\r\n \r\n
\r\n );\r\n return (\r\n \r\n {title} \r\n {desc}
\r\n \r\n {code}
\r\n {!!scss_code ? {scss_code}
: null}\r\n \r\n \r\n )\r\n }\r\n}\r\n\r\nclass DemoGroup extends Component {\r\n constructor(props) {\r\n super(props)\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n {DemoArray.map((child, index) => {\r\n\r\n return (\r\n \r\n )\r\n\r\n })}\r\n
\r\n )\r\n }\r\n}\r\n\r\nReactDOM.render( , document.getElementById('tinperBeeDemo'));\r\n\n\n\n// WEBPACK FOOTER //\n// ./demo/index.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Con = exports.Row = exports.Col = undefined;\n\nvar _Col2 = require('./Col');\n\nvar _Col3 = _interopRequireDefault(_Col2);\n\nvar _Row2 = require('./Row');\n\nvar _Row3 = _interopRequireDefault(_Row2);\n\nvar _Layout = require('./Layout');\n\nvar _Layout2 = _interopRequireDefault(_Layout);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Col = _Col3[\"default\"];\nexports.Row = _Row3[\"default\"];\nexports.Con = _Layout2[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/index.js\n// module id = 1\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string]),\n\n /**\n * xs显示列数\n */\n xs: _propTypes2[\"default\"].number,\n /**\n * sm显示列数\n */\n sm: _propTypes2[\"default\"].number,\n /**\n * md显示列数\n */\n md: _propTypes2[\"default\"].number,\n /**\n * lg显示列数\n */\n lg: _propTypes2[\"default\"].number,\n /**\n * xs偏移列数\n */\n xsOffset: _propTypes2[\"default\"].number,\n /**\n * sm偏移列数\n */\n smOffset: _propTypes2[\"default\"].number,\n /**\n * md偏移列数\n */\n mdOffset: _propTypes2[\"default\"].number,\n /**\n * lg偏移列数\n */\n lgOffset: _propTypes2[\"default\"].number,\n /**\n * xs右偏移列数\n */\n xsPush: _propTypes2[\"default\"].number,\n /**\n * sm右偏移列数\n */\n smPush: _propTypes2[\"default\"].number,\n /**\n * md右偏移列数\n */\n mdPush: _propTypes2[\"default\"].number,\n /**\n * lg右偏移列数\n */\n lgPush: _propTypes2[\"default\"].number,\n /**\n * xs左偏移列数\n */\n xsPull: _propTypes2[\"default\"].number,\n /**\n * sm左偏移列数\n */\n smPull: _propTypes2[\"default\"].number,\n /**\n * md左偏移列数\n */\n mdPull: _propTypes2[\"default\"].number,\n /**\n * lg左偏移列数\n */\n lgPull: _propTypes2[\"default\"].number\n};\n\nvar defaultProps = {\n componentClass: 'div',\n clsPrefix: 'u-col'\n};\n\nvar DEVICE_SIZES = ['lg', 'md', 'sm', 'xs'];\n\nvar Col = function (_Component) {\n _inherits(Col, _Component);\n\n function Col() {\n _classCallCheck(this, Col);\n\n return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n }\n\n Col.prototype.render = function render() {\n var _props = this.props,\n Component = _props.componentClass,\n className = _props.className,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['componentClass', 'className', 'clsPrefix']);\n\n var tbClass = [];\n /**\n * 对传入props做样式转化\n * @type {[type]}\n */\n DEVICE_SIZES.forEach(function (size) {\n function popProp(propSuffix, modifier) {\n var propName = '' + size + propSuffix;\n var propValue = others[propName];\n\n if (propValue != undefined && propValue != null) {\n tbClass.push(clsPrefix + '-' + size + modifier + '-' + propValue);\n }\n\n delete others[propName];\n }\n\n popProp('', '');\n popProp('Offset', '-offset');\n popProp('Push', '-push');\n popProp('Pull', '-pull');\n });\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({\n className: (0, _classnames2[\"default\"])(tbClass, className)\n }, others),\n this.props.children\n );\n };\n\n return Col;\n}(_react.Component);\n\nCol.defaultProps = defaultProps;\nCol.propTypes = propTypes;\n\nexports[\"default\"] = Col;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Col.js\n// module id = 2\n// module chunks = 0","/*!\n Copyright (c) 2016 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_classnames@2.2.5@classnames/index.js\n// module id = 3\n// module chunks = 0","module.exports = React;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"React\"\n// module id = 4\n// module chunks = 0","module.exports = PropTypes;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"PropTypes\"\n// module id = 5\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string])\n};\n\nvar defaultProps = {\n componentClass: 'div',\n clsPrefix: 'u-row'\n};\n\nvar Row = function (_Component) {\n _inherits(Row, _Component);\n\n function Row() {\n _classCallCheck(this, Row);\n\n return _possibleConstructorReturn(this, _Component.apply(this, arguments));\n }\n\n Row.prototype.render = function render() {\n var _props = this.props,\n Component = _props.componentClass,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n others = _objectWithoutProperties(_props, ['componentClass', 'clsPrefix', 'className']);\n\n var bsclass = '' + clsPrefix;\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(bsclass, className)\n }),\n this.props.children\n );\n };\n\n return Row;\n}(_react.Component);\n\nRow.propTypes = propTypes;\nRow.defaultProps = defaultProps;\n\nexports[\"default\"] = Row;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Row.js\n// module id = 6\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * Adds `container-fluid` class.\n */\n fluid: _propTypes2[\"default\"].bool,\n /**\n * You can use a custom element for this component\n */\n componentClass: _propTypes2[\"default\"].oneOf([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string])\n};\n\nvar defaultProps = {\n componentClass: 'div',\n fluid: false,\n clsPrefix: 'u-container'\n};\n\nvar Con = function (_React$Component) {\n _inherits(Con, _React$Component);\n\n function Con() {\n _classCallCheck(this, Con);\n\n return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n Con.prototype.render = function render() {\n var _tbclass;\n\n var _props = this.props,\n fluid = _props.fluid,\n Component = _props.componentClass,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n others = _objectWithoutProperties(_props, ['fluid', 'componentClass', 'clsPrefix', 'className']);\n\n var tbclass = (_tbclass = {}, _defineProperty(_tbclass, '' + clsPrefix, !fluid), _defineProperty(_tbclass, clsPrefix + '-fluid', fluid), _tbclass);\n\n return _react2[\"default\"].createElement(\n Component,\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(tbclass, className)\n }),\n this.props.children\n );\n };\n\n return Con;\n}(_react2[\"default\"].Component);\n\nCon.propTypes = propTypes;\nCon.defaultProps = defaultProps;\n\nexports[\"default\"] = Con;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-layout@1.0.0@bee-layout/build/Layout.js\n// module id = 7\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PanelGroup = exports.Panel = undefined;\n\nvar _Panel2 = require('./Panel');\n\nvar _Panel3 = _interopRequireDefault(_Panel2);\n\nvar _PanelGroup2 = require('./PanelGroup');\n\nvar _PanelGroup3 = _interopRequireDefault(_PanelGroup2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Panel = _Panel3[\"default\"];\nexports.PanelGroup = _PanelGroup3[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/index.js\n// module id = 8\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _beeTransition = require('bee-transition');\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n //是否添加折叠\n collapsible: _propTypes2[\"default\"].bool,\n onSelect: _propTypes2[\"default\"].func,\n //头部组件\n header: _propTypes2[\"default\"].node,\n headerStyle: _propTypes2[\"default\"].object,\n id: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].string, _propTypes2[\"default\"].number]),\n headerContent: _propTypes2[\"default\"].bool,\n //footer组件\n footer: _propTypes2[\"default\"].node,\n footerStyle: _propTypes2[\"default\"].object,\n //默认是否打开\n defaultExpanded: _propTypes2[\"default\"].bool,\n //是否打开\n expanded: _propTypes2[\"default\"].bool,\n //每个panel的标记\n eventKey: _propTypes2[\"default\"].any,\n headerRole: _propTypes2[\"default\"].string,\n panelRole: _propTypes2[\"default\"].string,\n //颜色\n colors: _propTypes2[\"default\"].oneOf(['primary', 'accent', 'success', 'info', 'warning', 'danger', 'default', 'bordered']),\n\n // From Collapse.的扩展动画\n onEnter: _propTypes2[\"default\"].func,\n onEntering: _propTypes2[\"default\"].func,\n onEntered: _propTypes2[\"default\"].func,\n onExit: _propTypes2[\"default\"].func,\n onExiting: _propTypes2[\"default\"].func,\n onExited: _propTypes2[\"default\"].func\n};\n\nvar defaultProps = {\n defaultExpanded: false,\n clsPrefix: \"u-panel\",\n colors: \"default\"\n};\n\nvar Panel = function (_React$Component) {\n _inherits(Panel, _React$Component);\n\n function Panel(props, context) {\n _classCallCheck(this, Panel);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleClickTitle = _this.handleClickTitle.bind(_this);\n\n _this.state = {\n expanded: _this.props.defaultExpanded\n };\n return _this;\n }\n\n //头部点击事件\n\n\n Panel.prototype.handleClickTitle = function handleClickTitle(e) {\n // 不让事件进入事件池\n e.persist();\n e.selected = true;\n\n if (this.props.onSelect) {\n this.props.onSelect(this.props.eventKey, e);\n } else {\n e.preventDefault();\n }\n\n if (e.selected) {\n this.setState({ expanded: !this.state.expanded });\n }\n };\n\n //渲染panelheader\n\n\n Panel.prototype.renderHeader = function renderHeader(collapsible, header, id, role, expanded, clsPrefix) {\n var titleClassName = clsPrefix + '-title';\n\n if (!collapsible) {\n if (!_react2[\"default\"].isValidElement(header)) {\n return header;\n }\n\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName)\n });\n }\n\n if (!_react2[\"default\"].isValidElement(header)) {\n return _react2[\"default\"].createElement(\n 'h4',\n { role: 'presentation', className: titleClassName },\n this.renderAnchor(header, id, role, expanded)\n );\n }\n if (this.props.headerContent) {\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName)\n });\n }\n\n return (0, _react.cloneElement)(header, {\n className: (0, _classnames2[\"default\"])(header.props.className, titleClassName),\n children: this.renderAnchor(header.props.children, id, role, expanded)\n });\n };\n\n //如果使用链接,渲染为a标签\n\n\n Panel.prototype.renderAnchor = function renderAnchor(header, id, role, expanded) {\n return _react2[\"default\"].createElement(\n 'a',\n {\n role: role,\n href: id && '#' + id,\n 'aria-controls': id,\n 'aria-expanded': expanded,\n 'aria-selected': expanded,\n className: expanded ? null : 'collapsed'\n },\n header\n );\n };\n\n //如果有折叠动画,渲染折叠动画\n\n\n Panel.prototype.renderCollapsibleBody = function renderCollapsibleBody(id, expanded, role, children, clsPrefix, animationHooks) {\n return _react2[\"default\"].createElement(\n _beeTransition.Collapse,\n _extends({ 'in': expanded }, animationHooks),\n _react2[\"default\"].createElement(\n 'div',\n {\n id: id,\n role: role,\n className: clsPrefix + '-collapse',\n 'aria-hidden': !expanded\n },\n this.renderBody(children, clsPrefix)\n )\n );\n };\n\n //渲染panelbody\n\n\n Panel.prototype.renderBody = function renderBody(rawChildren, clsPrefix) {\n var children = [];\n var bodyChildren = [];\n\n var bodyClassName = clsPrefix + '-body';\n\n //添加到body的children中\n function maybeAddBody() {\n if (!bodyChildren.length) {\n return;\n }\n\n // 给子组件添加key,为了之后触发事件时使用\n children.push(_react2[\"default\"].createElement(\n 'div',\n { key: children.length, className: bodyClassName },\n bodyChildren\n ));\n\n bodyChildren = [];\n }\n\n //转换为数组,方便复用\n _react2[\"default\"].Children.toArray(rawChildren).forEach(function (child) {\n if (_react2[\"default\"].isValidElement(child) && child.props.fill) {\n maybeAddBody();\n\n //将标示fill设置为undefined\n children.push((0, _react.cloneElement)(child, { fill: undefined }));\n\n return;\n }\n\n bodyChildren.push(child);\n });\n\n maybeAddBody();\n\n return children;\n };\n\n Panel.prototype.render = function render() {\n var _props = this.props,\n collapsible = _props.collapsible,\n header = _props.header,\n id = _props.id,\n footer = _props.footer,\n propsExpanded = _props.expanded,\n footerStyle = _props.footerStyle,\n headerStyle = _props.headerStyle,\n headerRole = _props.headerRole,\n panelRole = _props.panelRole,\n className = _props.className,\n colors = _props.colors,\n children = _props.children,\n onEnter = _props.onEnter,\n onEntering = _props.onEntering,\n onEntered = _props.onEntered,\n clsPrefix = _props.clsPrefix,\n onExit = _props.onExit,\n headerContent = _props.headerContent,\n onExiting = _props.onExiting,\n onExited = _props.onExited,\n defaultExpanded = _props.defaultExpanded,\n eventKey = _props.eventKey,\n onSelect = _props.onSelect,\n props = _objectWithoutProperties(_props, ['collapsible', 'header', 'id', 'footer', 'expanded', 'footerStyle', 'headerStyle', 'headerRole', 'panelRole', 'className', 'colors', 'children', 'onEnter', 'onEntering', 'onEntered', 'clsPrefix', 'onExit', 'headerContent', 'onExiting', 'onExited', 'defaultExpanded', 'eventKey', 'onSelect']);\n\n var expanded = propsExpanded != null ? propsExpanded : this.state.expanded;\n\n var classes = {};\n classes['' + clsPrefix] = true;\n classes[clsPrefix + '-' + colors] = true;\n\n var headerClass = _defineProperty({}, clsPrefix + '-heading', true);\n\n return _react2[\"default\"].createElement(\n 'div',\n _extends({}, props, {\n className: (0, _classnames2[\"default\"])(className, classes),\n id: collapsible ? null : id\n }),\n header && _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(headerClass), style: headerStyle, onClick: this.handleClickTitle },\n this.renderHeader(collapsible, header, id, headerRole, expanded, clsPrefix)\n ),\n collapsible ? this.renderCollapsibleBody(id, expanded, panelRole, children, clsPrefix, { onEnter: onEnter, onEntering: onEntering, onEntered: onEntered, onExit: onExit, onExiting: onExiting, onExited: onExited }) : this.renderBody(children, clsPrefix),\n footer && _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-footer', style: footerStyle },\n footer\n )\n );\n };\n\n return Panel;\n}(_react2[\"default\"].Component);\n\nPanel.propTypes = propTypes;\nPanel.defaultProps = defaultProps;\n\nexports[\"default\"] = Panel;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/Panel.js\n// module id = 9\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Fade = exports.Collapse = exports.Transition = undefined;\n\nvar _Transition2 = require('./Transition');\n\nvar _Transition3 = _interopRequireDefault(_Transition2);\n\nvar _Collapse2 = require('./Collapse');\n\nvar _Collapse3 = _interopRequireDefault(_Collapse2);\n\nvar _Fade2 = require('./Fade');\n\nvar _Fade3 = _interopRequireDefault(_Fade2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports.Transition = _Transition3[\"default\"];\nexports.Collapse = _Collapse3[\"default\"];\nexports.Fade = _Fade3[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/index.js\n// module id = 10\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _properties = require('dom-helpers/transition/properties');\n\nvar _properties2 = _interopRequireDefault(_properties);\n\nvar _on = require('dom-helpers/events/on');\n\nvar _on2 = _interopRequireDefault(_on);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar transitionEndEvent = _properties2[\"default\"].end;\n\n//设置状态码\nvar UNMOUNTED = exports.UNMOUNTED = 0;\nvar EXITED = exports.EXITED = 1;\nvar ENTERING = exports.ENTERING = 2;\nvar ENTERED = exports.ENTERED = 3;\nvar EXITING = exports.EXITING = 4;\n\nvar propTypes = {\n /**\n * 是否触发动画\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * 不显示的时候是否移除组件\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * 如果设置为默认显示,挂载时显示动画\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * 设置超时时间,防止出现问题,可设置为>=动画时间\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * 退出组件时添加的class\n */\n exitedClassName: _propTypes2[\"default\"].string,\n /**\n * 退出组件中添加的class\n */\n exitingClassName: _propTypes2[\"default\"].string,\n /**\n * 进入动画后添加的class\n */\n enteredClassName: _propTypes2[\"default\"].string,\n /**\n * 进入动画时添加的class\n */\n enteringClassName: _propTypes2[\"default\"].string,\n\n /**\n * 进入动画开始时的钩子函数\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * 进入动画中的钩子函数\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * 进入动画后的钩子函数\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * 退出动画开始时的钩子函数\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * 退出动画中的钩子函数\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * 退出动画后的钩子函数\n */\n onExited: _propTypes2[\"default\"].func\n};\n\nfunction noop() {}\n\nvar defaultProps = {\n \"in\": false,\n unmountOnExit: false,\n transitionAppear: false,\n timeout: 5000,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\n/**\n * 动画组件\n */\n\nvar Transition = function (_Component) {\n _inherits(Transition, _Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));\n\n var initialStatus = void 0;\n if (props[\"in\"]) {\n // 在componentdidmount时开始执行动画\n initialStatus = props.transitionAppear ? EXITED : ENTERED;\n } else {\n initialStatus = props.unmountOnExit ? UNMOUNTED : EXITED;\n }\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n if (this.props.transitionAppear && this.props[\"in\"]) {\n this.performEnter(this.props);\n }\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (nextProps[\"in\"] && this.props.unmountOnExit) {\n if (this.state.status === UNMOUNTED) {\n // 在componentDidUpdate执行动画.\n this.setState({ status: EXITED });\n }\n } else {\n this._needsUpdate = true;\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n var status = this.state.status;\n\n if (this.props.unmountOnExit && status === EXITED) {\n // 当使用unmountOnExit时,exited为exiting和unmont的过渡状态\n if (this.props[\"in\"]) {\n this.performEnter(this.props);\n } else {\n this.setState({ status: UNMOUNTED });\n }\n\n return;\n }\n\n // 确保只响应prop变化\n if (this._needsUpdate) {\n this._needsUpdate = false;\n\n if (this.props[\"in\"]) {\n if (status === EXITING) {\n this.performEnter(this.props);\n } else if (status === EXITED) {\n this.performEnter(this.props);\n }\n // 其他,当我们已经输入或输出\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.performExit(this.props);\n }\n // 我们已经输入或输出完成\n }\n }\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.performEnter = function performEnter(props) {\n var _this2 = this;\n\n this.cancelNextCallback();\n var node = _reactDom2[\"default\"].findDOMNode(this);\n\n // 这里接收新props\n props.onEnter(node);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node);\n\n _this2.onTransitionEnd(node, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(props) {\n var _this3 = this;\n\n this.cancelNextCallback();\n var node = _reactDom2[\"default\"].findDOMNode(this);\n\n props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n // 确保在组件销毁后挂起的setState被消除\n this.setState(nextState, this.setNextCallback(callback));\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (transitionEndEvent == undefined) {\n this.nextCallback();\n } else {\n (0, _on2[\"default\"])(node, transitionEndEvent, this.nextCallback);\n }\n setTimeout(this.nextCallback, this.props.timeout);\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n className = _props.className,\n childProps = _objectWithoutProperties(_props, ['children', 'className']);\n\n Object.keys(Transition.propTypes).forEach(function (key) {\n return delete childProps[key];\n });\n\n var transitionClassName = void 0;\n if (status === EXITED) {\n transitionClassName = this.props.exitedClassName;\n } else if (status === ENTERING) {\n transitionClassName = this.props.enteringClassName;\n } else if (status === ENTERED) {\n transitionClassName = this.props.enteredClassName;\n } else if (status === EXITING) {\n transitionClassName = this.props.exitingClassName;\n }\n\n var child = _react2[\"default\"].Children.only(children);\n return _react2[\"default\"].cloneElement(child, _extends({}, childProps, {\n className: (0, _classnames2[\"default\"])(child.props.className, className, transitionClassName)\n }));\n };\n\n return Transition;\n}(_react.Component);\n\nTransition.propTypes = propTypes;\n\nTransition.defaultProps = defaultProps;\n\nexports[\"default\"] = Transition;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Transition.js\n// module id = 11\n// module chunks = 0","module.exports = ReactDOM;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactDOM\"\n// module id = 12\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = undefined;\n\nvar _inDOM = require('../util/inDOM');\n\nvar _inDOM2 = _interopRequireDefault(_inDOM);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar transform = 'transform';\nvar prefix = void 0,\n transitionEnd = void 0,\n animationEnd = void 0;\nvar transitionProperty = void 0,\n transitionDuration = void 0,\n transitionTiming = void 0,\n transitionDelay = void 0;\nvar animationName = void 0,\n animationDuration = void 0,\n animationTiming = void 0,\n animationDelay = void 0;\n\nif (_inDOM2.default) {\n var _getTransitionPropert = getTransitionProperties();\n\n prefix = _getTransitionPropert.prefix;\n exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd;\n exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd;\n\n\n exports.transform = transform = prefix + '-' + transform;\n exports.transitionProperty = transitionProperty = prefix + '-transition-property';\n exports.transitionDuration = transitionDuration = prefix + '-transition-duration';\n exports.transitionDelay = transitionDelay = prefix + '-transition-delay';\n exports.transitionTiming = transitionTiming = prefix + '-transition-timing-function';\n\n exports.animationName = animationName = prefix + '-animation-name';\n exports.animationDuration = animationDuration = prefix + '-animation-duration';\n exports.animationTiming = animationTiming = prefix + '-animation-delay';\n exports.animationDelay = animationDelay = prefix + '-animation-timing-function';\n}\n\nexports.transform = transform;\nexports.transitionProperty = transitionProperty;\nexports.transitionTiming = transitionTiming;\nexports.transitionDelay = transitionDelay;\nexports.transitionDuration = transitionDuration;\nexports.transitionEnd = transitionEnd;\nexports.animationName = animationName;\nexports.animationDuration = animationDuration;\nexports.animationTiming = animationTiming;\nexports.animationDelay = animationDelay;\nexports.animationEnd = animationEnd;\nexports.default = {\n transform: transform,\n end: transitionEnd,\n property: transitionProperty,\n timing: transitionTiming,\n delay: transitionDelay,\n duration: transitionDuration\n};\n\n\nfunction getTransitionProperties() {\n var style = document.createElement('div').style;\n\n var vendorMap = {\n O: function O(e) {\n return 'o' + e.toLowerCase();\n },\n Moz: function Moz(e) {\n return e.toLowerCase();\n },\n Webkit: function Webkit(e) {\n return 'webkit' + e;\n },\n ms: function ms(e) {\n return 'MS' + e;\n }\n };\n\n var vendors = Object.keys(vendorMap);\n\n var transitionEnd = void 0,\n animationEnd = void 0;\n var prefix = '';\n\n for (var i = 0; i < vendors.length; i++) {\n var vendor = vendors[i];\n\n if (vendor + 'TransitionProperty' in style) {\n prefix = '-' + vendor.toLowerCase();\n transitionEnd = vendorMap[vendor]('TransitionEnd');\n animationEnd = vendorMap[vendor]('AnimationEnd');\n break;\n }\n }\n\n if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend';\n\n if (!animationEnd && 'animationName' in style) animationEnd = 'animationend';\n\n style = null;\n\n return { animationEnd: animationEnd, transitionEnd: transitionEnd, prefix: prefix };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/transition/properties.js\n// module id = 13\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/inDOM.js\n// module id = 14\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _inDOM = require('../util/inDOM');\n\nvar _inDOM2 = _interopRequireDefault(_inDOM);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar on = function on() {};\nif (_inDOM2.default) {\n on = function () {\n\n if (document.addEventListener) return function (node, eventName, handler, capture) {\n return node.addEventListener(eventName, handler, capture || false);\n };else if (document.attachEvent) return function (node, eventName, handler) {\n return node.attachEvent('on' + eventName, function (e) {\n e = e || window.event;\n e.target = e.target || e.srcElement;\n e.currentTarget = node;\n handler.call(node, e);\n });\n };\n }();\n}\n\nexports.default = on;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/events/on.js\n// module id = 15\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _style = require('dom-helpers/style');\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _Transition = require('./Transition');\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nvar _capitalize = require('./util/capitalize');\n\nvar _capitalize2 = _interopRequireDefault(_capitalize);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar MARGINS = {\n height: ['marginTop', 'marginBottom'],\n width: ['marginLeft', 'marginRight']\n};\n\n// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nfunction triggerBrowserReflow(node) {\n node.offsetHeight; // eslint-disable-line no-unused-expressions\n}\n\nfunction getDimensionValue(dimension, elem) {\n var value = elem['offset' + (0, _capitalize2[\"default\"])(dimension)];\n var margins = MARGINS[dimension];\n\n return value + parseInt((0, _style2[\"default\"])(elem, margins[0]), 10) + parseInt((0, _style2[\"default\"])(elem, margins[1]), 10);\n}\n\nvar propTypes = {\n /**\n * Show the component; triggers the expand or collapse animation\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * Unmount the component (remove it from the DOM) when it is collapsed\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * Run the expand animation when the component mounts, if it is initially\n * shown\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * Duration of the collapse animation in milliseconds, to ensure that\n * finishing callbacks are fired even if the original browser transition end\n * events are canceled\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * Callback fired before the component expands\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to expand\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has expanded\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * Callback fired before the component collapses\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to collapse\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has collapsed\n */\n onExited: _propTypes2[\"default\"].func,\n\n /**\n * The dimension used when collapsing, or a function that returns the\n * dimension\n *\n * _Note: Bootstrap only partially supports 'width'!\n * You will need to supply your own CSS animation for the `.width` CSS class._\n */\n dimension: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].oneOf(['height', 'width']), _propTypes2[\"default\"].func]),\n\n /**\n * Function that returns the height or width of the animating DOM node\n *\n * Allows for providing some custom logic for how much the Collapse component\n * should animate in its specified dimension. Called with the current\n * dimension prop value and the DOM node.\n */\n getDimensionValue: _propTypes2[\"default\"].func,\n\n /**\n * ARIA role of collapsible element\n */\n role: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n \"in\": false,\n timeout: 300,\n unmountOnExit: false,\n transitionAppear: false,\n\n dimension: 'height',\n getDimensionValue: getDimensionValue\n};\n\nvar Collapse = function (_React$Component) {\n _inherits(Collapse, _React$Component);\n\n function Collapse(props, context) {\n _classCallCheck(this, Collapse);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleEnter = _this.handleEnter.bind(_this);\n _this.handleEntering = _this.handleEntering.bind(_this);\n _this.handleEntered = _this.handleEntered.bind(_this);\n _this.handleExit = _this.handleExit.bind(_this);\n _this.handleExiting = _this.handleExiting.bind(_this);\n return _this;\n }\n\n /* -- Expanding -- */\n\n\n Collapse.prototype.handleEnter = function handleEnter(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = '0';\n };\n\n Collapse.prototype.handleEntering = function handleEntering(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = this._getScrollDimensionValue(elem, dimension);\n };\n\n Collapse.prototype.handleEntered = function handleEntered(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = null;\n };\n\n /* -- Collapsing -- */\n\n\n Collapse.prototype.handleExit = function handleExit(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = this.props.getDimensionValue(dimension, elem) + 'px';\n triggerBrowserReflow(elem);\n };\n\n Collapse.prototype.handleExiting = function handleExiting(elem) {\n var dimension = this._dimension();\n elem.style[dimension] = '0';\n };\n\n Collapse.prototype._dimension = function _dimension() {\n return typeof this.props.dimension === 'function' ? this.props.dimension() : this.props.dimension;\n };\n\n // for testing\n\n\n Collapse.prototype._getScrollDimensionValue = function _getScrollDimensionValue(elem, dimension) {\n return elem['scroll' + (0, _capitalize2[\"default\"])(dimension)] + 'px';\n };\n\n Collapse.prototype.render = function render() {\n var _props = this.props,\n onEnter = _props.onEnter,\n onEntering = _props.onEntering,\n onEntered = _props.onEntered,\n onExit = _props.onExit,\n onExiting = _props.onExiting,\n className = _props.className,\n props = _objectWithoutProperties(_props, ['onEnter', 'onEntering', 'onEntered', 'onExit', 'onExiting', 'className']);\n\n delete props.dimension;\n delete props.getDimensionValue;\n\n var handleEnter = (0, _tinperBeeCore.createChainedFunction)(this.handleEnter, onEnter);\n var handleEntering = (0, _tinperBeeCore.createChainedFunction)(this.handleEntering, onEntering);\n var handleEntered = (0, _tinperBeeCore.createChainedFunction)(this.handleEntered, onEntered);\n var handleExit = (0, _tinperBeeCore.createChainedFunction)(this.handleExit, onExit);\n var handleExiting = (0, _tinperBeeCore.createChainedFunction)(this.handleExiting, onExiting);\n\n var classes = {\n width: this._dimension() === 'width'\n };\n\n return _react2[\"default\"].createElement(_Transition2[\"default\"], _extends({}, props, {\n 'aria-expanded': props.role ? props[\"in\"] : null,\n className: (0, _classnames2[\"default\"])(className, classes),\n exitedClassName: 'collapse',\n exitingClassName: 'collapsing',\n enteredClassName: 'collapse in',\n enteringClassName: 'collapsing',\n onEnter: handleEnter,\n onEntering: handleEntering,\n onEntered: handleEntered,\n onExit: handleExit,\n onExiting: handleExiting\n }));\n };\n\n return Collapse;\n}(_react2[\"default\"].Component);\n\nCollapse.propTypes = propTypes;\nCollapse.defaultProps = defaultProps;\n\nexports[\"default\"] = Collapse;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Collapse.js\n// module id = 16\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = style;\n\nvar _camelizeStyle = require('../util/camelizeStyle');\n\nvar _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);\n\nvar _hyphenateStyle = require('../util/hyphenateStyle');\n\nvar _hyphenateStyle2 = _interopRequireDefault(_hyphenateStyle);\n\nvar _getComputedStyle2 = require('./getComputedStyle');\n\nvar _getComputedStyle3 = _interopRequireDefault(_getComputedStyle2);\n\nvar _removeStyle = require('./removeStyle');\n\nvar _removeStyle2 = _interopRequireDefault(_removeStyle);\n\nvar _properties = require('../transition/properties');\n\nvar _isTransform = require('../transition/isTransform');\n\nvar _isTransform2 = _interopRequireDefault(_isTransform);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction style(node, property, value) {\n var css = '';\n var transforms = '';\n var props = property;\n\n if (typeof property === 'string') {\n if (value === undefined) {\n return node.style[(0, _camelizeStyle2.default)(property)] || (0, _getComputedStyle3.default)(node).getPropertyValue((0, _hyphenateStyle2.default)(property));\n } else {\n (props = {})[property] = value;\n }\n }\n\n Object.keys(props).forEach(function (key) {\n var value = props[key];\n if (!value && value !== 0) {\n (0, _removeStyle2.default)(node, (0, _hyphenateStyle2.default)(key));\n } else if ((0, _isTransform2.default)(key)) {\n transforms += key + '(' + value + ') ';\n } else {\n css += (0, _hyphenateStyle2.default)(key) + ': ' + value + ';';\n }\n });\n\n if (transforms) {\n css += _properties.transform + ': ' + transforms + ';';\n }\n\n node.style.cssText += ';' + css;\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/index.js\n// module id = 17\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = camelizeStyleName;\n\nvar _camelize = require('./camelize');\n\nvar _camelize2 = _interopRequireDefault(_camelize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar msPattern = /^-ms-/; /**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js\n */\nfunction camelizeStyleName(string) {\n return (0, _camelize2.default)(string.replace(msPattern, 'ms-'));\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/camelizeStyle.js\n// module id = 18\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = camelize;\nvar rHyphen = /-(.)/g;\n\nfunction camelize(string) {\n return string.replace(rHyphen, function (_, chr) {\n return chr.toUpperCase();\n });\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/camelize.js\n// module id = 19\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = hyphenateStyleName;\n\nvar _hyphenate = require('./hyphenate');\n\nvar _hyphenate2 = _interopRequireDefault(_hyphenate);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar msPattern = /^ms-/; /**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\n\nfunction hyphenateStyleName(string) {\n return (0, _hyphenate2.default)(string).replace(msPattern, '-ms-');\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenateStyle.js\n// module id = 20\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = hyphenate;\n\nvar rUpper = /([A-Z])/g;\n\nfunction hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/util/hyphenate.js\n// module id = 21\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = _getComputedStyle;\n\nvar _camelizeStyle = require('../util/camelizeStyle');\n\nvar _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rposition = /^(top|right|bottom|left)$/;\nvar rnumnonpx = /^([+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|))(?!px)[a-z%]+$/i;\n\nfunction _getComputedStyle(node) {\n if (!node) throw new TypeError('No Element passed to `getComputedStyle()`');\n var doc = node.ownerDocument;\n\n return 'defaultView' in doc ? doc.defaultView.opener ? node.ownerDocument.defaultView.getComputedStyle(node, null) : window.getComputedStyle(node, null) : {\n //ie 8 \"magic\" from: https://github.com/jquery/jquery/blob/1.11-stable/src/css/curCSS.js#L72\n getPropertyValue: function getPropertyValue(prop) {\n var style = node.style;\n\n prop = (0, _camelizeStyle2.default)(prop);\n\n if (prop == 'float') prop = 'styleFloat';\n\n var current = node.currentStyle[prop] || null;\n\n if (current == null && style && style[prop]) current = style[prop];\n\n if (rnumnonpx.test(current) && !rposition.test(prop)) {\n // Remember the original values\n var left = style.left;\n var runStyle = node.runtimeStyle;\n var rsLeft = runStyle && runStyle.left;\n\n // Put in the new values to get a computed value out\n if (rsLeft) runStyle.left = node.currentStyle.left;\n\n style.left = prop === 'fontSize' ? '1em' : current;\n current = style.pixelLeft + 'px';\n\n // Revert the changed values\n style.left = left;\n if (rsLeft) runStyle.left = rsLeft;\n }\n\n return current;\n }\n };\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/getComputedStyle.js\n// module id = 22\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = removeStyle;\nfunction removeStyle(node, key) {\n return 'removeProperty' in node.style ? node.style.removeProperty(key) : node.style.removeAttribute(key);\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/style/removeStyle.js\n// module id = 23\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = isTransform;\nvar supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\n\nfunction isTransform(property) {\n return !!(property && supportedTransforms.test(property));\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-helpers@3.2.1@dom-helpers/transition/isTransform.js\n// module id = 24\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = capitalize;\nfunction capitalize(string) {\n return \"\" + string.charAt(0).toUpperCase() + string.slice(1);\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/util/capitalize.js\n// module id = 25\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.Align = exports.toArray = exports.cssAnimation = exports.addEventListener = exports.contains = exports.KeyCode = exports.createChainedFunction = exports.splitComponent = exports.isRequiredForA11y = exports.elementType = exports.deprecated = exports.componentOrElement = exports.all = undefined;\n\nvar _all2 = require('./all');\n\nvar _all3 = _interopRequireDefault(_all2);\n\nvar _componentOrElement2 = require('./componentOrElement');\n\nvar _componentOrElement3 = _interopRequireDefault(_componentOrElement2);\n\nvar _deprecated2 = require('./deprecated');\n\nvar _deprecated3 = _interopRequireDefault(_deprecated2);\n\nvar _elementType2 = require('./elementType');\n\nvar _elementType3 = _interopRequireDefault(_elementType2);\n\nvar _isRequiredForA11y2 = require('./isRequiredForA11y');\n\nvar _isRequiredForA11y3 = _interopRequireDefault(_isRequiredForA11y2);\n\nvar _splitComponent2 = require('./splitComponent');\n\nvar _splitComponent3 = _interopRequireDefault(_splitComponent2);\n\nvar _createChainedFunction2 = require('./createChainedFunction');\n\nvar _createChainedFunction3 = _interopRequireDefault(_createChainedFunction2);\n\nvar _keyCode = require('./keyCode');\n\nvar _keyCode2 = _interopRequireDefault(_keyCode);\n\nvar _contains2 = require('./contains');\n\nvar _contains3 = _interopRequireDefault(_contains2);\n\nvar _addEventListener2 = require('./addEventListener');\n\nvar _addEventListener3 = _interopRequireDefault(_addEventListener2);\n\nvar _cssAnimation2 = require('./cssAnimation');\n\nvar _cssAnimation3 = _interopRequireDefault(_cssAnimation2);\n\nvar _toArray2 = require('./toArray');\n\nvar _toArray3 = _interopRequireDefault(_toArray2);\n\nvar _Align2 = require('./Align');\n\nvar _Align3 = _interopRequireDefault(_Align2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.all = _all3.default;\nexports.componentOrElement = _componentOrElement3.default;\nexports.deprecated = _deprecated3.default;\nexports.elementType = _elementType3.default;\nexports.isRequiredForA11y = _isRequiredForA11y3.default;\nexports.splitComponent = _splitComponent3.default;\nexports.createChainedFunction = _createChainedFunction3.default;\nexports.KeyCode = _keyCode2.default;\nexports.contains = _contains3.default;\nexports.addEventListener = _addEventListener3.default;\nexports.cssAnimation = _cssAnimation3.default;\nexports.toArray = _toArray3.default;\n//export getContainerRenderMixin from './getContainerRenderMixin';\n\nexports.Align = _Align3.default;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/index.js\n// module id = 26\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = all;\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction all() {\n for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) {\n validators[_key] = arguments[_key];\n }\n\n function allPropTypes() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var error = null;\n\n validators.forEach(function (validator) {\n if (error != null) {\n return;\n }\n\n var result = validator.apply(undefined, args);\n if (result != null) {\n error = result;\n }\n });\n\n return error;\n }\n\n return (0, _createChainableTypeChecker2.default)(allPropTypes);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/all.js\n// module id = 27\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = createChainableTypeChecker;\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n// Mostly taken from ReactPropTypes.\n\nfunction createChainableTypeChecker(validate) {\n function checkType(isRequired, props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] == null) {\n if (isRequired) {\n return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.'));\n }\n\n return null;\n }\n\n for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) {\n args[_key - 6] = arguments[_key];\n }\n\n return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args));\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/utils/createChainableTypeChecker.js\n// module id = 28\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\n\n if (_react2.default.isValidElement(propValue)) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement. You can usually obtain a ReactComponent or DOMElement ' + 'from a ReactElement by attaching a ref to it.');\n }\n\n if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.');\n }\n\n return null;\n}\n\nexports.default = (0, _createChainableTypeChecker2.default)(validate);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/componentOrElement.js\n// module id = 29\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = deprecated;\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar warned = {};\n\nfunction deprecated(validator, reason) {\n return function validate(props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] != null) {\n var messageKey = componentName + '.' + propName;\n\n (0, _warning2.default)(warned[messageKey], 'The ' + location + ' `' + propFullNameSafe + '` of ' + ('`' + componentNameSafe + '` is deprecated. ' + reason + '.'));\n\n warned[messageKey] = true;\n }\n\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\n args[_key - 5] = arguments[_key];\n }\n\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\n };\n}\n\n/* eslint-disable no-underscore-dangle */\nfunction _resetWarned() {\n warned = {};\n}\n\ndeprecated._resetWarned = _resetWarned;\n/* eslint-enable no-underscore-dangle */\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/deprecated.js\n// module id = 30\n// module chunks = 0","/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n\n if (format.length < 10 || (/^[s\\W]*$/).test(format)) {\n throw new Error(\n 'The warning format should be able to uniquely identify this ' +\n 'warning. Please, use a more descriptive format than: ' + format\n );\n }\n\n if (!condition) {\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch(x) {}\n }\n };\n}\n\nmodule.exports = warning;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_warning@3.0.0@warning/browser.js\n// module id = 31\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/Program Files/nodejs/~/bee-tools/~/_process@0.11.10@process/browser.js\n// module id = 32\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction elementType(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\n\n if (_react2.default.isValidElement(propValue)) {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\n }\n\n if (propType !== 'function' && propType !== 'string') {\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\n }\n\n return null;\n}\n\nexports.default = (0, _createChainableTypeChecker2.default)(elementType);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/elementType.js\n// module id = 33\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = isRequiredForA11y;\nfunction isRequiredForA11y(validator) {\n return function validate(props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] == null) {\n return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.');\n }\n\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\n args[_key - 5] = arguments[_key];\n }\n\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\n };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/isRequiredForA11y.js\n// module id = 34\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _entries = require(\"babel-runtime/core-js/object/entries\");\n\nvar _entries2 = _interopRequireDefault(_entries);\n\nexports.default = splitComponentProps;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * 分割要传入父元素和子元素的props\n * @param {[object]} props 传入的属性\n * @param {[reactElement]} Component 组件\n * @return {[array]} 返回数组,第一个元素为父元素props对象,第二个子元素props对象\n */\nfunction splitComponentProps(props, Component) {\n var componentPropTypes = Component.propTypes;\n\n var parentProps = {};\n var childProps = {};\n\n (0, _entries2.default)(props).forEach(function (_ref) {\n var propName = _ref[0],\n propValue = _ref[1];\n\n if (componentPropTypes[propName]) {\n parentProps[propName] = propValue;\n } else {\n childProps[propName] = propValue;\n }\n });\n\n return [parentProps, childProps];\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/splitComponent.js\n// module id = 35\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/entries\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_babel-runtime@6.26.0@babel-runtime/core-js/object/entries.js\n// module id = 36\n// module chunks = 0","require('../../modules/es7.object.entries');\nmodule.exports = require('../../modules/_core').Object.entries;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/fn/object/entries.js\n// module id = 37\n// module chunks = 0","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $entries = require('./_object-to-array')(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it) {\n return $entries(it);\n }\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/es7.object.entries.js\n// module id = 38\n// module chunks = 0","var global = require('./_global');\nvar core = require('./_core');\nvar ctx = require('./_ctx');\nvar hide = require('./_hide');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && key in exports) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_export.js\n// module id = 39\n// module chunks = 0","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_global.js\n// module id = 40\n// module chunks = 0","var core = module.exports = { version: '2.5.1' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_core.js\n// module id = 41\n// module chunks = 0","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_ctx.js\n// module id = 42\n// module chunks = 0","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_a-function.js\n// module id = 43\n// module chunks = 0","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_hide.js\n// module id = 44\n// module chunks = 0","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-dp.js\n// module id = 45\n// module chunks = 0","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_an-object.js\n// module id = 46\n// module chunks = 0","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_is-object.js\n// module id = 47\n// module chunks = 0","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_ie8-dom-define.js\n// module id = 48\n// module chunks = 0","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_descriptors.js\n// module id = 49\n// module chunks = 0","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_fails.js\n// module id = 50\n// module chunks = 0","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_dom-create.js\n// module id = 51\n// module chunks = 0","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-primitive.js\n// module id = 52\n// module chunks = 0","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_property-desc.js\n// module id = 53\n// module chunks = 0","var getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) if (isEnum.call(O, key = keys[i++])) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-to-array.js\n// module id = 54\n// module chunks = 0","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-keys.js\n// module id = 55\n// module chunks = 0","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-keys-internal.js\n// module id = 56\n// module chunks = 0","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_has.js\n// module id = 57\n// module chunks = 0","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-iobject.js\n// module id = 58\n// module chunks = 0","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_iobject.js\n// module id = 59\n// module chunks = 0","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_cof.js\n// module id = 60\n// module chunks = 0","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_defined.js\n// module id = 61\n// module chunks = 0","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_array-includes.js\n// module id = 62\n// module chunks = 0","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-length.js\n// module id = 63\n// module chunks = 0","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-integer.js\n// module id = 64\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_to-absolute-index.js\n// module id = 65\n// module chunks = 0","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_shared-key.js\n// module id = 66\n// module chunks = 0","var global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function (key) {\n return store[key] || (store[key] = {});\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_shared.js\n// module id = 67\n// module chunks = 0","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_uid.js\n// module id = 68\n// module chunks = 0","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_enum-bug-keys.js\n// module id = 69\n// module chunks = 0","exports.f = {}.propertyIsEnumerable;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_core-js@2.5.1@core-js/library/modules/_object-pie.js\n// module id = 70\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nfunction createChainedFunction() {\n for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n return funcs.filter(function (f) {\n return f != null;\n }).reduce(function (acc, f) {\n if (typeof f !== 'function') {\n throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.');\n }\n\n if (acc === null) {\n return f;\n }\n\n return function chainedFunction() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n acc.apply(this, args);\n f.apply(this, args);\n };\n }, null);\n}\nexports.default = createChainedFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/createChainedFunction.js\n// module id = 71\n// module chunks = 0","'use strict';\n\n/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33, // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34, // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35, // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36, // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37, // also NUM_WEST\n /**\n * UP\n */\n UP: 38, // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39, // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40, // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45, // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46, // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63, // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91, // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186, // needs localization\n /**\n * DASH\n */\n DASH: 189, // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187, // needs localization\n /**\n * COMMA\n */\n COMMA: 188, // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190, // needs localization\n /**\n * SLASH\n */\n SLASH: 191, // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192, // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222, // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219, // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220, // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221, // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229\n};\n\n/*\n whether text and modified key is entered at the same time.\n */\nKeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n};\n\n/*\n whether character is entered.\n */\nKeyCode.isCharacterKey = function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n};\n\nmodule.exports = KeyCode;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/keyCode.js\n// module id = 72\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = contains;\nfunction contains(root, n) {\n var node = n;\n while (node) {\n if (node === root) {\n return true;\n }\n node = node.parentNode;\n }\n\n return false;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/contains.js\n// module id = 73\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = addEventListenerWrap;\n\nvar _addDomEventListener = require('add-dom-event-listener');\n\nvar _addDomEventListener2 = _interopRequireDefault(_addDomEventListener);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction addEventListenerWrap(target, eventType, cb) {\n /* eslint camelcase: 2 */\n var callback = _reactDom2.default.unstable_batchedUpdates ? function run(e) {\n _reactDom2.default.unstable_batchedUpdates(cb, e);\n } : cb;\n return (0, _addDomEventListener2.default)(target, eventType, callback);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/addEventListener.js\n// module id = 74\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = addEventListener;\n\nvar _EventObject = require('./EventObject');\n\nvar _EventObject2 = _interopRequireDefault(_EventObject);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction addEventListener(target, eventType, callback) {\n function wrapCallback(e) {\n var ne = new _EventObject2[\"default\"](e);\n callback.call(target, ne);\n }\n\n if (target.addEventListener) {\n target.addEventListener(eventType, wrapCallback, false);\n return {\n remove: function remove() {\n target.removeEventListener(eventType, wrapCallback, false);\n }\n };\n } else if (target.attachEvent) {\n target.attachEvent('on' + eventType, wrapCallback);\n return {\n remove: function remove() {\n target.detachEvent('on' + eventType, wrapCallback);\n }\n };\n }\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/index.js\n// module id = 75\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _EventBaseObject = require('./EventBaseObject');\n\nvar _EventBaseObject2 = _interopRequireDefault(_EventBaseObject);\n\nvar _objectAssign = require('object-assign');\n\nvar _objectAssign2 = _interopRequireDefault(_objectAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @ignore\n * event object for dom\n * @author yiminghe@gmail.com\n */\n\nvar TRUE = true;\nvar FALSE = false;\nvar commonProps = ['altKey', 'bubbles', 'cancelable', 'ctrlKey', 'currentTarget', 'eventPhase', 'metaKey', 'shiftKey', 'target', 'timeStamp', 'view', 'type'];\n\nfunction isNullOrUndefined(w) {\n return w === null || w === undefined;\n}\n\nvar eventNormalizers = [{\n reg: /^key/,\n props: ['char', 'charCode', 'key', 'keyCode', 'which'],\n fix: function fix(event, nativeEvent) {\n if (isNullOrUndefined(event.which)) {\n event.which = !isNullOrUndefined(nativeEvent.charCode) ? nativeEvent.charCode : nativeEvent.keyCode;\n }\n\n // add metaKey to non-Mac browsers (use ctrl for PC 's and Meta for Macs)\n if (event.metaKey === undefined) {\n event.metaKey = event.ctrlKey;\n }\n }\n}, {\n reg: /^touch/,\n props: ['touches', 'changedTouches', 'targetTouches']\n}, {\n reg: /^hashchange$/,\n props: ['newURL', 'oldURL']\n}, {\n reg: /^gesturechange$/i,\n props: ['rotation', 'scale']\n}, {\n reg: /^(mousewheel|DOMMouseScroll)$/,\n props: [],\n fix: function fix(event, nativeEvent) {\n var deltaX = void 0;\n var deltaY = void 0;\n var delta = void 0;\n var wheelDelta = nativeEvent.wheelDelta;\n var axis = nativeEvent.axis;\n var wheelDeltaY = nativeEvent.wheelDeltaY;\n var wheelDeltaX = nativeEvent.wheelDeltaX;\n var detail = nativeEvent.detail;\n\n // ie/webkit\n if (wheelDelta) {\n delta = wheelDelta / 120;\n }\n\n // gecko\n if (detail) {\n // press control e.detail == 1 else e.detail == 3\n delta = 0 - (detail % 3 === 0 ? detail / 3 : detail);\n }\n\n // Gecko\n if (axis !== undefined) {\n if (axis === event.HORIZONTAL_AXIS) {\n deltaY = 0;\n deltaX = 0 - delta;\n } else if (axis === event.VERTICAL_AXIS) {\n deltaX = 0;\n deltaY = delta;\n }\n }\n\n // Webkit\n if (wheelDeltaY !== undefined) {\n deltaY = wheelDeltaY / 120;\n }\n if (wheelDeltaX !== undefined) {\n deltaX = -1 * wheelDeltaX / 120;\n }\n\n // 默认 deltaY (ie)\n if (!deltaX && !deltaY) {\n deltaY = delta;\n }\n\n if (deltaX !== undefined) {\n /**\n * deltaX of mousewheel event\n * @property deltaX\n * @member Event.DomEvent.Object\n */\n event.deltaX = deltaX;\n }\n\n if (deltaY !== undefined) {\n /**\n * deltaY of mousewheel event\n * @property deltaY\n * @member Event.DomEvent.Object\n */\n event.deltaY = deltaY;\n }\n\n if (delta !== undefined) {\n /**\n * delta of mousewheel event\n * @property delta\n * @member Event.DomEvent.Object\n */\n event.delta = delta;\n }\n }\n}, {\n reg: /^mouse|contextmenu|click|mspointer|(^DOMMouseScroll$)/i,\n props: ['buttons', 'clientX', 'clientY', 'button', 'offsetX', 'relatedTarget', 'which', 'fromElement', 'toElement', 'offsetY', 'pageX', 'pageY', 'screenX', 'screenY'],\n fix: function fix(event, nativeEvent) {\n var eventDoc = void 0;\n var doc = void 0;\n var body = void 0;\n var target = event.target;\n var button = nativeEvent.button;\n\n // Calculate pageX/Y if missing and clientX/Y available\n if (target && isNullOrUndefined(event.pageX) && !isNullOrUndefined(nativeEvent.clientX)) {\n eventDoc = target.ownerDocument || document;\n doc = eventDoc.documentElement;\n body = eventDoc.body;\n event.pageX = nativeEvent.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);\n event.pageY = nativeEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);\n }\n\n // which for click: 1 === left; 2 === middle; 3 === right\n // do not use button\n if (!event.which && button !== undefined) {\n if (button & 1) {\n event.which = 1;\n } else if (button & 2) {\n event.which = 3;\n } else if (button & 4) {\n event.which = 2;\n } else {\n event.which = 0;\n }\n }\n\n // add relatedTarget, if necessary\n if (!event.relatedTarget && event.fromElement) {\n event.relatedTarget = event.fromElement === target ? event.toElement : event.fromElement;\n }\n\n return event;\n }\n}];\n\nfunction retTrue() {\n return TRUE;\n}\n\nfunction retFalse() {\n return FALSE;\n}\n\nfunction DomEventObject(nativeEvent) {\n var type = nativeEvent.type;\n\n var isNative = typeof nativeEvent.stopPropagation === 'function' || typeof nativeEvent.cancelBubble === 'boolean';\n\n _EventBaseObject2[\"default\"].call(this);\n\n this.nativeEvent = nativeEvent;\n\n // in case dom event has been mark as default prevented by lower dom node\n var isDefaultPrevented = retFalse;\n if ('defaultPrevented' in nativeEvent) {\n isDefaultPrevented = nativeEvent.defaultPrevented ? retTrue : retFalse;\n } else if ('getPreventDefault' in nativeEvent) {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=691151\n isDefaultPrevented = nativeEvent.getPreventDefault() ? retTrue : retFalse;\n } else if ('returnValue' in nativeEvent) {\n isDefaultPrevented = nativeEvent.returnValue === FALSE ? retTrue : retFalse;\n }\n\n this.isDefaultPrevented = isDefaultPrevented;\n\n var fixFns = [];\n var fixFn = void 0;\n var l = void 0;\n var prop = void 0;\n var props = commonProps.concat();\n\n eventNormalizers.forEach(function (normalizer) {\n if (type.match(normalizer.reg)) {\n props = props.concat(normalizer.props);\n if (normalizer.fix) {\n fixFns.push(normalizer.fix);\n }\n }\n });\n\n l = props.length;\n\n // clone properties of the original event object\n while (l) {\n prop = props[--l];\n this[prop] = nativeEvent[prop];\n }\n\n // fix target property, if necessary\n if (!this.target && isNative) {\n this.target = nativeEvent.srcElement || document; // srcElement might not be defined either\n }\n\n // check if target is a text node (safari)\n if (this.target && this.target.nodeType === 3) {\n this.target = this.target.parentNode;\n }\n\n l = fixFns.length;\n\n while (l) {\n fixFn = fixFns[--l];\n fixFn(this, nativeEvent);\n }\n\n this.timeStamp = nativeEvent.timeStamp || Date.now();\n}\n\nvar EventBaseObjectProto = _EventBaseObject2[\"default\"].prototype;\n\n(0, _objectAssign2[\"default\"])(DomEventObject.prototype, EventBaseObjectProto, {\n constructor: DomEventObject,\n\n preventDefault: function preventDefault() {\n var e = this.nativeEvent;\n\n // if preventDefault exists run it on the original event\n if (e.preventDefault) {\n e.preventDefault();\n } else {\n // otherwise set the returnValue property of the original event to FALSE (IE)\n e.returnValue = FALSE;\n }\n\n EventBaseObjectProto.preventDefault.call(this);\n },\n stopPropagation: function stopPropagation() {\n var e = this.nativeEvent;\n\n // if stopPropagation exists run it on the original event\n if (e.stopPropagation) {\n e.stopPropagation();\n } else {\n // otherwise set the cancelBubble property of the original event to TRUE (IE)\n e.cancelBubble = TRUE;\n }\n\n EventBaseObjectProto.stopPropagation.call(this);\n }\n});\n\nexports[\"default\"] = DomEventObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventObject.js\n// module id = 76\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * @ignore\n * base event object for custom and dom event.\n * @author yiminghe@gmail.com\n */\n\nfunction returnFalse() {\n return false;\n}\n\nfunction returnTrue() {\n return true;\n}\n\nfunction EventBaseObject() {\n this.timeStamp = Date.now();\n this.target = undefined;\n this.currentTarget = undefined;\n}\n\nEventBaseObject.prototype = {\n isEventObject: 1,\n\n constructor: EventBaseObject,\n\n isDefaultPrevented: returnFalse,\n\n isPropagationStopped: returnFalse,\n\n isImmediatePropagationStopped: returnFalse,\n\n preventDefault: function preventDefault() {\n this.isDefaultPrevented = returnTrue;\n },\n stopPropagation: function stopPropagation() {\n this.isPropagationStopped = returnTrue;\n },\n stopImmediatePropagation: function stopImmediatePropagation() {\n this.isImmediatePropagationStopped = returnTrue;\n // fixed 1.2\n // call stopPropagation implicitly\n this.stopPropagation();\n },\n halt: function halt(immediate) {\n if (immediate) {\n this.stopImmediatePropagation();\n } else {\n this.stopPropagation();\n }\n this.preventDefault();\n }\n};\n\nexports[\"default\"] = EventBaseObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_add-dom-event-listener@1.0.2@add-dom-event-listener/lib/EventBaseObject.js\n// module id = 77\n// module chunks = 0","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_object-assign@4.1.1@object-assign/index.js\n// module id = 78\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _Event = require('./Event');\n\nvar _Event2 = _interopRequireDefault(_Event);\n\nvar _componentClasses = require('component-classes');\n\nvar _componentClasses2 = _interopRequireDefault(_componentClasses);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar isCssAnimationSupported = _Event2.default.endEvents.length !== 0;\n\n\nvar capitalPrefixes = ['Webkit', 'Moz', 'O',\n// ms is special .... !\n'ms'];\nvar prefixes = ['-webkit-', '-moz-', '-o-', 'ms-', ''];\n\nfunction getStyleProperty(node, name) {\n var style = window.getComputedStyle(node);\n\n var ret = '';\n for (var i = 0; i < prefixes.length; i++) {\n ret = style.getPropertyValue(prefixes[i] + name);\n if (ret) {\n break;\n }\n }\n return ret;\n}\n\nfunction fixBrowserByTimeout(node) {\n if (isCssAnimationSupported) {\n var transitionDelay = parseFloat(getStyleProperty(node, 'transition-delay')) || 0;\n var transitionDuration = parseFloat(getStyleProperty(node, 'transition-duration')) || 0;\n var animationDelay = parseFloat(getStyleProperty(node, 'animation-delay')) || 0;\n var animationDuration = parseFloat(getStyleProperty(node, 'animation-duration')) || 0;\n var time = Math.max(transitionDuration + transitionDelay, animationDuration + animationDelay);\n // sometimes, browser bug\n node.rcEndAnimTimeout = setTimeout(function () {\n node.rcEndAnimTimeout = null;\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }, time * 1000 + 200);\n }\n}\n\nfunction clearBrowserBugTimeout(node) {\n if (node.rcEndAnimTimeout) {\n clearTimeout(node.rcEndAnimTimeout);\n node.rcEndAnimTimeout = null;\n }\n}\n\nvar cssAnimation = function cssAnimation(node, transitionName, endCallback) {\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\n var className = nameIsObj ? transitionName.name : transitionName;\n var activeClassName = nameIsObj ? transitionName.active : transitionName + '-active';\n var end = endCallback;\n var start = void 0;\n var active = void 0;\n var nodeClasses = (0, _componentClasses2.default)(node);\n\n if (endCallback && Object.prototype.toString.call(endCallback) === '[object Object]') {\n end = endCallback.end;\n start = endCallback.start;\n active = endCallback.active;\n }\n\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n nodeClasses.remove(className);\n nodeClasses.remove(activeClassName);\n\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional end is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (end) {\n end();\n }\n };\n\n _Event2.default.addEndEventListener(node, node.rcEndListener);\n\n if (start) {\n start();\n }\n nodeClasses.add(className);\n\n node.rcAnimTimeout = setTimeout(function () {\n node.rcAnimTimeout = null;\n nodeClasses.add(activeClassName);\n if (active) {\n setTimeout(active, 0);\n }\n fixBrowserByTimeout(node);\n // 30ms for firefox\n }, 30);\n\n return {\n stop: function stop() {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }\n };\n};\n\ncssAnimation.style = function (node, style, callback) {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional callback is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (callback) {\n callback();\n }\n };\n\n _Event2.default.addEndEventListener(node, node.rcEndListener);\n\n node.rcAnimTimeout = setTimeout(function () {\n for (var s in style) {\n if (style.hasOwnProperty(s)) {\n node.style[s] = style[s];\n }\n }\n node.rcAnimTimeout = null;\n fixBrowserByTimeout(node);\n }, 0);\n};\n\ncssAnimation.setTransition = function (node, p, value) {\n var property = p;\n var v = value;\n if (value === undefined) {\n v = property;\n property = '';\n }\n property = property || '';\n capitalPrefixes.forEach(function (prefix) {\n node.style[prefix + 'Transition' + property] = v;\n });\n};\n\ncssAnimation.isCssAnimationSupported = isCssAnimationSupported;\n\nexports.default = cssAnimation;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/cssAnimation.js\n// module id = 79\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nvar EVENT_NAME_MAP = {\n transitionend: {\n transition: 'transitionend',\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'mozTransitionEnd',\n OTransition: 'oTransitionEnd',\n msTransition: 'MSTransitionEnd'\n },\n\n animationend: {\n animation: 'animationend',\n WebkitAnimation: 'webkitAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n OAnimation: 'oAnimationEnd',\n msAnimation: 'MSAnimationEnd'\n }\n};\n\nvar endEvents = [];\n\nfunction detectEvents() {\n var testEl = document.createElement('div');\n var style = testEl.style;\n\n if (!('AnimationEvent' in window)) {\n delete EVENT_NAME_MAP.animationend.animation;\n }\n\n if (!('TransitionEvent' in window)) {\n delete EVENT_NAME_MAP.transitionend.transition;\n }\n\n for (var baseEventName in EVENT_NAME_MAP) {\n if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {\n var baseEvents = EVENT_NAME_MAP[baseEventName];\n for (var styleName in baseEvents) {\n if (styleName in style) {\n endEvents.push(baseEvents[styleName]);\n break;\n }\n }\n }\n }\n}\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n detectEvents();\n}\n\nfunction addEventListener(node, eventName, eventListener) {\n node.addEventListener(eventName, eventListener, false);\n}\n\nfunction removeEventListener(node, eventName, eventListener) {\n node.removeEventListener(eventName, eventListener, false);\n}\n\nvar TransitionEvents = {\n addEndEventListener: function addEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n endEvents.forEach(function (endEvent) {\n addEventListener(node, endEvent, eventListener);\n });\n },\n\n\n endEvents: endEvents,\n\n removeEndEventListener: function removeEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n return;\n }\n endEvents.forEach(function (endEvent) {\n removeEventListener(node, endEvent, eventListener);\n });\n }\n};\n\nexports.default = TransitionEvents;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Event.js\n// module id = 80\n// module chunks = 0","/**\n * Module dependencies.\n */\n\ntry {\n var index = require('indexof');\n} catch (err) {\n var index = require('component-indexof');\n}\n\n/**\n * Whitespace regexp.\n */\n\nvar re = /\\s+/;\n\n/**\n * toString reference.\n */\n\nvar toString = Object.prototype.toString;\n\n/**\n * Wrap `el` in a `ClassList`.\n *\n * @param {Element} el\n * @return {ClassList}\n * @api public\n */\n\nmodule.exports = function(el){\n return new ClassList(el);\n};\n\n/**\n * Initialize a new ClassList for `el`.\n *\n * @param {Element} el\n * @api private\n */\n\nfunction ClassList(el) {\n if (!el || !el.nodeType) {\n throw new Error('A DOM element reference is required');\n }\n this.el = el;\n this.list = el.classList;\n}\n\n/**\n * Add class `name` if not already present.\n *\n * @param {String} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.add = function(name){\n // classList\n if (this.list) {\n this.list.add(name);\n return this;\n }\n\n // fallback\n var arr = this.array();\n var i = index(arr, name);\n if (!~i) arr.push(name);\n this.el.className = arr.join(' ');\n return this;\n};\n\n/**\n * Remove class `name` when present, or\n * pass a regular expression to remove\n * any which match.\n *\n * @param {String|RegExp} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.remove = function(name){\n if ('[object RegExp]' == toString.call(name)) {\n return this.removeMatching(name);\n }\n\n // classList\n if (this.list) {\n this.list.remove(name);\n return this;\n }\n\n // fallback\n var arr = this.array();\n var i = index(arr, name);\n if (~i) arr.splice(i, 1);\n this.el.className = arr.join(' ');\n return this;\n};\n\n/**\n * Remove all classes matching `re`.\n *\n * @param {RegExp} re\n * @return {ClassList}\n * @api private\n */\n\nClassList.prototype.removeMatching = function(re){\n var arr = this.array();\n for (var i = 0; i < arr.length; i++) {\n if (re.test(arr[i])) {\n this.remove(arr[i]);\n }\n }\n return this;\n};\n\n/**\n * Toggle class `name`, can force state via `force`.\n *\n * For browsers that support classList, but do not support `force` yet,\n * the mistake will be detected and corrected.\n *\n * @param {String} name\n * @param {Boolean} force\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.toggle = function(name, force){\n // classList\n if (this.list) {\n if (\"undefined\" !== typeof force) {\n if (force !== this.list.toggle(name, force)) {\n this.list.toggle(name); // toggle again to correct\n }\n } else {\n this.list.toggle(name);\n }\n return this;\n }\n\n // fallback\n if (\"undefined\" !== typeof force) {\n if (!force) {\n this.remove(name);\n } else {\n this.add(name);\n }\n } else {\n if (this.has(name)) {\n this.remove(name);\n } else {\n this.add(name);\n }\n }\n\n return this;\n};\n\n/**\n * Return an array of classes.\n *\n * @return {Array}\n * @api public\n */\n\nClassList.prototype.array = function(){\n var className = this.el.getAttribute('class') || '';\n var str = className.replace(/^\\s+|\\s+$/g, '');\n var arr = str.split(re);\n if ('' === arr[0]) arr.shift();\n return arr;\n};\n\n/**\n * Check if class `name` is present.\n *\n * @param {String} name\n * @return {ClassList}\n * @api public\n */\n\nClassList.prototype.has =\nClassList.prototype.contains = function(name){\n return this.list\n ? this.list.contains(name)\n : !! ~index(this.array(), name);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_component-classes@1.2.6@component-classes/index.js\n// module id = 81\n// module chunks = 0","module.exports = function(arr, obj){\n if (arr.indexOf) return arr.indexOf(obj);\n for (var i = 0; i < arr.length; ++i) {\n if (arr[i] === obj) return i;\n }\n return -1;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_component-indexof@0.0.3@component-indexof/index.js\n// module id = 82\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.default = toArray;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction toArray(children) {\n var ret = [];\n _react2.default.Children.forEach(children, function (c) {\n ret.push(c);\n });\n return ret;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/toArray.js\n// module id = 83\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _createReactClass = require('create-react-class');\n\nvar _createReactClass2 = _interopRequireDefault(_createReactClass);\n\nvar _domAlign = require('dom-align');\n\nvar _domAlign2 = _interopRequireDefault(_domAlign);\n\nvar _addEventListener = require('./addEventListener');\n\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n//import isWindow from './isWindow';\n\nfunction isWindow(obj) {\n /* eslint no-eq-null: 0 */\n /* eslint eqeqeq: 0 */\n return obj != null && obj == obj.window;\n}\n\nfunction buffer(fn, ms) {\n var timer = void 0;\n\n function clear() {\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n }\n\n function bufferFn() {\n clear();\n timer = setTimeout(fn, ms);\n }\n\n bufferFn.clear = clear;\n\n return bufferFn;\n}\nvar propTypes = {\n childrenProps: _propTypes2.default.object,\n align: _propTypes2.default.object.isRequired,\n target: _propTypes2.default.func,\n onAlign: _propTypes2.default.func,\n monitorBufferTime: _propTypes2.default.number,\n monitorWindowResize: _propTypes2.default.bool,\n disabled: _propTypes2.default.bool,\n children: _propTypes2.default.any\n};\n\nvar defaultProps = {\n target: function target() {\n return window;\n },\n onAlign: function onAlign() {},\n\n monitorBufferTime: 50,\n monitorWindowResize: false,\n disabled: false\n};\n\nvar Align = function (_React$Component) {\n _inherits(Align, _React$Component);\n\n function Align(props) {\n _classCallCheck(this, Align);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _initialiseProps.call(_this);\n\n return _this;\n }\n\n Align.prototype.componentDidMount = function componentDidMount() {\n var props = this.props;\n // if parent ref not attached .... use document.getElementById\n this.forceAlign();\n if (!props.disabled && props.monitorWindowResize) {\n this.startMonitorWindowResize();\n }\n };\n\n Align.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\n var reAlign = false;\n var props = this.props;\n\n if (!props.disabled) {\n if (prevProps.disabled || prevProps.align !== props.align) {\n reAlign = true;\n } else {\n var lastTarget = prevProps.target();\n var currentTarget = props.target();\n if (isWindow(lastTarget) && isWindow(currentTarget)) {\n reAlign = false;\n } else if (lastTarget !== currentTarget) {\n reAlign = true;\n }\n }\n }\n\n if (reAlign) {\n this.forceAlign();\n }\n\n if (props.monitorWindowResize && !props.disabled) {\n this.startMonitorWindowResize();\n } else {\n this.stopMonitorWindowResize();\n }\n };\n\n Align.prototype.componentWillUnmount = function componentWillUnmount() {\n this.stopMonitorWindowResize();\n };\n\n Align.prototype.startMonitorWindowResize = function startMonitorWindowResize() {\n if (!this.resizeHandler) {\n this.bufferMonitor = buffer(this.forceAlign, this.props.monitorBufferTime);\n this.resizeHandler = (0, _addEventListener2.default)(window, 'resize', this.bufferMonitor);\n }\n };\n\n Align.prototype.render = function render() {\n var _props = this.props,\n childrenProps = _props.childrenProps,\n children = _props.children;\n\n var child = _react2.default.Children.only(children);\n if (childrenProps) {\n var newProps = {};\n for (var prop in childrenProps) {\n if (childrenProps.hasOwnProperty(prop)) {\n newProps[prop] = this.props[childrenProps[prop]];\n }\n }\n return _react2.default.cloneElement(child, newProps);\n }\n return child;\n };\n\n return Align;\n}(_react2.default.Component);\n\nvar _initialiseProps = function _initialiseProps() {\n var _this2 = this;\n\n this.stopMonitorWindowResize = function () {\n if (_this2.resizeHandler) {\n _this2.bufferMonitor.clear();\n _this2.resizeHandler.remove();\n _this2.resizeHandler = null;\n }\n };\n\n this.forceAlign = function () {\n var props = _this2.props;\n if (!props.disabled) {\n var source = _reactDom2.default.findDOMNode(_this2);\n props.onAlign(source, (0, _domAlign2.default)(source, props.target(), props.align));\n }\n };\n};\n\n;\n\nAlign.defaultProps = defaultProps;\nAlign.propTypes = propTypes;\nexports.default = Align;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_tinper-bee-core@0.2.11@tinper-bee-core/lib/Align.js\n// module id = 84\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar React = require('react');\nvar factory = require('./factory');\n\nif (typeof React === 'undefined') {\n throw Error(\n 'create-react-class could not find the React object. If you are using script tags, ' +\n 'make sure that React is being loaded before create-react-class.'\n );\n}\n\n// Hack to grab NoopUpdateQueue from isomorphic React\nvar ReactNoopUpdateQueue = new React.Component().updater;\n\nmodule.exports = factory(\n React.Component,\n React.isValidElement,\n ReactNoopUpdateQueue\n);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_create-react-class@15.6.2@create-react-class/index.js\n// module id = 85\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar _assign = require('object-assign');\n\nvar emptyObject = require('fbjs/lib/emptyObject');\nvar _invariant = require('fbjs/lib/invariant');\n\nif (process.env.NODE_ENV !== 'production') {\n var warning = require('fbjs/lib/warning');\n}\n\nvar MIXINS_KEY = 'mixins';\n\n// Helper function to allow the creation of anonymous functions which do not\n// have .name set to the name of the variable being assigned to.\nfunction identity(fn) {\n return fn;\n}\n\nvar ReactPropTypeLocationNames;\nif (process.env.NODE_ENV !== 'production') {\n ReactPropTypeLocationNames = {\n prop: 'prop',\n context: 'context',\n childContext: 'child context'\n };\n} else {\n ReactPropTypeLocationNames = {};\n}\n\nfunction factory(ReactComponent, isValidElement, ReactNoopUpdateQueue) {\n /**\n * Policies that describe methods in `ReactClassInterface`.\n */\n\n var injectedMixins = [];\n\n /**\n * Composite components are higher-level components that compose other composite\n * or host components.\n *\n * To create a new type of `ReactClass`, pass a specification of\n * your new class to `React.createClass`. The only requirement of your class\n * specification is that you implement a `render` method.\n *\n * var MyComponent = React.createClass({\n * render: function() {\n * return Hello World
;\n * }\n * });\n *\n * The class specification supports a specific protocol of methods that have\n * special meaning (e.g. `render`). See `ReactClassInterface` for\n * more the comprehensive protocol. Any other properties and methods in the\n * class specification will be available on the prototype.\n *\n * @interface ReactClassInterface\n * @internal\n */\n var ReactClassInterface = {\n /**\n * An array of Mixin objects to include when defining your component.\n *\n * @type {array}\n * @optional\n */\n mixins: 'DEFINE_MANY',\n\n /**\n * An object containing properties and methods that should be defined on\n * the component's constructor instead of its prototype (static methods).\n *\n * @type {object}\n * @optional\n */\n statics: 'DEFINE_MANY',\n\n /**\n * Definition of prop types for this component.\n *\n * @type {object}\n * @optional\n */\n propTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types for this component.\n *\n * @type {object}\n * @optional\n */\n contextTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types this component sets for its children.\n *\n * @type {object}\n * @optional\n */\n childContextTypes: 'DEFINE_MANY',\n\n // ==== Definition methods ====\n\n /**\n * Invoked when the component is mounted. Values in the mapping will be set on\n * `this.props` if that prop is not specified (i.e. using an `in` check).\n *\n * This method is invoked before `getInitialState` and therefore cannot rely\n * on `this.state` or use `this.setState`.\n *\n * @return {object}\n * @optional\n */\n getDefaultProps: 'DEFINE_MANY_MERGED',\n\n /**\n * Invoked once before the component is mounted. The return value will be used\n * as the initial value of `this.state`.\n *\n * getInitialState: function() {\n * return {\n * isOn: false,\n * fooBaz: new BazFoo()\n * }\n * }\n *\n * @return {object}\n * @optional\n */\n getInitialState: 'DEFINE_MANY_MERGED',\n\n /**\n * @return {object}\n * @optional\n */\n getChildContext: 'DEFINE_MANY_MERGED',\n\n /**\n * Uses props from `this.props` and state from `this.state` to render the\n * structure of the component.\n *\n * No guarantees are made about when or how often this method is invoked, so\n * it must not have side effects.\n *\n * render: function() {\n * var name = this.props.name;\n * return Hello, {name}!
;\n * }\n *\n * @return {ReactComponent}\n * @required\n */\n render: 'DEFINE_ONCE',\n\n // ==== Delegate methods ====\n\n /**\n * Invoked when the component is initially created and about to be mounted.\n * This may have side effects, but any external subscriptions or data created\n * by this method must be cleaned up in `componentWillUnmount`.\n *\n * @optional\n */\n componentWillMount: 'DEFINE_MANY',\n\n /**\n * Invoked when the component has been mounted and has a DOM representation.\n * However, there is no guarantee that the DOM node is in the document.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been mounted (initialized and rendered) for the first time.\n *\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidMount: 'DEFINE_MANY',\n\n /**\n * Invoked before the component receives new props.\n *\n * Use this as an opportunity to react to a prop transition by updating the\n * state using `this.setState`. Current props are accessed via `this.props`.\n *\n * componentWillReceiveProps: function(nextProps, nextContext) {\n * this.setState({\n * likesIncreasing: nextProps.likeCount > this.props.likeCount\n * });\n * }\n *\n * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop\n * transition may cause a state change, but the opposite is not true. If you\n * need it, you are probably looking for `componentWillUpdate`.\n *\n * @param {object} nextProps\n * @optional\n */\n componentWillReceiveProps: 'DEFINE_MANY',\n\n /**\n * Invoked while deciding if the component should be updated as a result of\n * receiving new props, state and/or context.\n *\n * Use this as an opportunity to `return false` when you're certain that the\n * transition to the new props/state/context will not require a component\n * update.\n *\n * shouldComponentUpdate: function(nextProps, nextState, nextContext) {\n * return !equal(nextProps, this.props) ||\n * !equal(nextState, this.state) ||\n * !equal(nextContext, this.context);\n * }\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @return {boolean} True if the component should update.\n * @optional\n */\n shouldComponentUpdate: 'DEFINE_ONCE',\n\n /**\n * Invoked when the component is about to update due to a transition from\n * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState`\n * and `nextContext`.\n *\n * Use this as an opportunity to perform preparation before an update occurs.\n *\n * NOTE: You **cannot** use `this.setState()` in this method.\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @param {ReactReconcileTransaction} transaction\n * @optional\n */\n componentWillUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component's DOM representation has been updated.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been updated.\n *\n * @param {object} prevProps\n * @param {?object} prevState\n * @param {?object} prevContext\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component is about to be removed from its parent and have\n * its DOM representation destroyed.\n *\n * Use this as an opportunity to deallocate any external resources.\n *\n * NOTE: There is no `componentDidUnmount` since your component will have been\n * destroyed by that point.\n *\n * @optional\n */\n componentWillUnmount: 'DEFINE_MANY',\n\n // ==== Advanced methods ====\n\n /**\n * Updates the component's currently mounted DOM representation.\n *\n * By default, this implements React's rendering and reconciliation algorithm.\n * Sophisticated clients may wish to override this.\n *\n * @param {ReactReconcileTransaction} transaction\n * @internal\n * @overridable\n */\n updateComponent: 'OVERRIDE_BASE'\n };\n\n /**\n * Mapping from class specification keys to special processing functions.\n *\n * Although these are declared like instance properties in the specification\n * when defining classes using `React.createClass`, they are actually static\n * and are accessible on the constructor instead of the prototype. Despite\n * being static, they must be defined outside of the \"statics\" key under\n * which all other static methods are defined.\n */\n var RESERVED_SPEC_KEYS = {\n displayName: function(Constructor, displayName) {\n Constructor.displayName = displayName;\n },\n mixins: function(Constructor, mixins) {\n if (mixins) {\n for (var i = 0; i < mixins.length; i++) {\n mixSpecIntoComponent(Constructor, mixins[i]);\n }\n }\n },\n childContextTypes: function(Constructor, childContextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, childContextTypes, 'childContext');\n }\n Constructor.childContextTypes = _assign(\n {},\n Constructor.childContextTypes,\n childContextTypes\n );\n },\n contextTypes: function(Constructor, contextTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, contextTypes, 'context');\n }\n Constructor.contextTypes = _assign(\n {},\n Constructor.contextTypes,\n contextTypes\n );\n },\n /**\n * Special case getDefaultProps which should move into statics but requires\n * automatic merging.\n */\n getDefaultProps: function(Constructor, getDefaultProps) {\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps = createMergedResultFunction(\n Constructor.getDefaultProps,\n getDefaultProps\n );\n } else {\n Constructor.getDefaultProps = getDefaultProps;\n }\n },\n propTypes: function(Constructor, propTypes) {\n if (process.env.NODE_ENV !== 'production') {\n validateTypeDef(Constructor, propTypes, 'prop');\n }\n Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes);\n },\n statics: function(Constructor, statics) {\n mixStaticSpecIntoComponent(Constructor, statics);\n },\n autobind: function() {}\n };\n\n function validateTypeDef(Constructor, typeDef, location) {\n for (var propName in typeDef) {\n if (typeDef.hasOwnProperty(propName)) {\n // use a warning instead of an _invariant so components\n // don't show up in prod but only in __DEV__\n if (process.env.NODE_ENV !== 'production') {\n warning(\n typeof typeDef[propName] === 'function',\n '%s: %s type `%s` is invalid; it must be a function, usually from ' +\n 'React.PropTypes.',\n Constructor.displayName || 'ReactClass',\n ReactPropTypeLocationNames[location],\n propName\n );\n }\n }\n }\n }\n\n function validateMethodOverride(isAlreadyDefined, name) {\n var specPolicy = ReactClassInterface.hasOwnProperty(name)\n ? ReactClassInterface[name]\n : null;\n\n // Disallow overriding of base class methods unless explicitly allowed.\n if (ReactClassMixin.hasOwnProperty(name)) {\n _invariant(\n specPolicy === 'OVERRIDE_BASE',\n 'ReactClassInterface: You are attempting to override ' +\n '`%s` from your class specification. Ensure that your method names ' +\n 'do not overlap with React methods.',\n name\n );\n }\n\n // Disallow defining methods more than once unless explicitly allowed.\n if (isAlreadyDefined) {\n _invariant(\n specPolicy === 'DEFINE_MANY' || specPolicy === 'DEFINE_MANY_MERGED',\n 'ReactClassInterface: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be due ' +\n 'to a mixin.',\n name\n );\n }\n }\n\n /**\n * Mixin helper which handles policy validation and reserved\n * specification keys when building React classes.\n */\n function mixSpecIntoComponent(Constructor, spec) {\n if (!spec) {\n if (process.env.NODE_ENV !== 'production') {\n var typeofSpec = typeof spec;\n var isMixinValid = typeofSpec === 'object' && spec !== null;\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n isMixinValid,\n \"%s: You're attempting to include a mixin that is either null \" +\n 'or not an object. Check the mixins included by the component, ' +\n 'as well as any mixins they include themselves. ' +\n 'Expected object but got %s.',\n Constructor.displayName || 'ReactClass',\n spec === null ? null : typeofSpec\n );\n }\n }\n\n return;\n }\n\n _invariant(\n typeof spec !== 'function',\n \"ReactClass: You're attempting to \" +\n 'use a component class or function as a mixin. Instead, just use a ' +\n 'regular object.'\n );\n _invariant(\n !isValidElement(spec),\n \"ReactClass: You're attempting to \" +\n 'use a component as a mixin. Instead, just use a regular object.'\n );\n\n var proto = Constructor.prototype;\n var autoBindPairs = proto.__reactAutoBindPairs;\n\n // By handling mixins before any other properties, we ensure the same\n // chaining order is applied to methods with DEFINE_MANY policy, whether\n // mixins are listed before or after these methods in the spec.\n if (spec.hasOwnProperty(MIXINS_KEY)) {\n RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins);\n }\n\n for (var name in spec) {\n if (!spec.hasOwnProperty(name)) {\n continue;\n }\n\n if (name === MIXINS_KEY) {\n // We have already handled mixins in a special case above.\n continue;\n }\n\n var property = spec[name];\n var isAlreadyDefined = proto.hasOwnProperty(name);\n validateMethodOverride(isAlreadyDefined, name);\n\n if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) {\n RESERVED_SPEC_KEYS[name](Constructor, property);\n } else {\n // Setup methods on prototype:\n // The following member methods should not be automatically bound:\n // 1. Expected ReactClass methods (in the \"interface\").\n // 2. Overridden methods (that were mixed in).\n var isReactClassMethod = ReactClassInterface.hasOwnProperty(name);\n var isFunction = typeof property === 'function';\n var shouldAutoBind =\n isFunction &&\n !isReactClassMethod &&\n !isAlreadyDefined &&\n spec.autobind !== false;\n\n if (shouldAutoBind) {\n autoBindPairs.push(name, property);\n proto[name] = property;\n } else {\n if (isAlreadyDefined) {\n var specPolicy = ReactClassInterface[name];\n\n // These cases should already be caught by validateMethodOverride.\n _invariant(\n isReactClassMethod &&\n (specPolicy === 'DEFINE_MANY_MERGED' ||\n specPolicy === 'DEFINE_MANY'),\n 'ReactClass: Unexpected spec policy %s for key %s ' +\n 'when mixing in component specs.',\n specPolicy,\n name\n );\n\n // For methods which are defined more than once, call the existing\n // methods before calling the new property, merging if appropriate.\n if (specPolicy === 'DEFINE_MANY_MERGED') {\n proto[name] = createMergedResultFunction(proto[name], property);\n } else if (specPolicy === 'DEFINE_MANY') {\n proto[name] = createChainedFunction(proto[name], property);\n }\n } else {\n proto[name] = property;\n if (process.env.NODE_ENV !== 'production') {\n // Add verbose displayName to the function, which helps when looking\n // at profiling tools.\n if (typeof property === 'function' && spec.displayName) {\n proto[name].displayName = spec.displayName + '_' + name;\n }\n }\n }\n }\n }\n }\n }\n\n function mixStaticSpecIntoComponent(Constructor, statics) {\n if (!statics) {\n return;\n }\n for (var name in statics) {\n var property = statics[name];\n if (!statics.hasOwnProperty(name)) {\n continue;\n }\n\n var isReserved = name in RESERVED_SPEC_KEYS;\n _invariant(\n !isReserved,\n 'ReactClass: You are attempting to define a reserved ' +\n 'property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it ' +\n 'as an instance property instead; it will still be accessible on the ' +\n 'constructor.',\n name\n );\n\n var isInherited = name in Constructor;\n _invariant(\n !isInherited,\n 'ReactClass: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be ' +\n 'due to a mixin.',\n name\n );\n Constructor[name] = property;\n }\n }\n\n /**\n * Merge two objects, but throw if both contain the same key.\n *\n * @param {object} one The first object, which is mutated.\n * @param {object} two The second object\n * @return {object} one after it has been mutated to contain everything in two.\n */\n function mergeIntoWithNoDuplicateKeys(one, two) {\n _invariant(\n one && two && typeof one === 'object' && typeof two === 'object',\n 'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.'\n );\n\n for (var key in two) {\n if (two.hasOwnProperty(key)) {\n _invariant(\n one[key] === undefined,\n 'mergeIntoWithNoDuplicateKeys(): ' +\n 'Tried to merge two objects with the same key: `%s`. This conflict ' +\n 'may be due to a mixin; in particular, this may be caused by two ' +\n 'getInitialState() or getDefaultProps() methods returning objects ' +\n 'with clashing keys.',\n key\n );\n one[key] = two[key];\n }\n }\n return one;\n }\n\n /**\n * Creates a function that invokes two functions and merges their return values.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createMergedResultFunction(one, two) {\n return function mergedResult() {\n var a = one.apply(this, arguments);\n var b = two.apply(this, arguments);\n if (a == null) {\n return b;\n } else if (b == null) {\n return a;\n }\n var c = {};\n mergeIntoWithNoDuplicateKeys(c, a);\n mergeIntoWithNoDuplicateKeys(c, b);\n return c;\n };\n }\n\n /**\n * Creates a function that invokes two functions and ignores their return vales.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createChainedFunction(one, two) {\n return function chainedFunction() {\n one.apply(this, arguments);\n two.apply(this, arguments);\n };\n }\n\n /**\n * Binds a method to the component.\n *\n * @param {object} component Component whose method is going to be bound.\n * @param {function} method Method to be bound.\n * @return {function} The bound method.\n */\n function bindAutoBindMethod(component, method) {\n var boundMethod = method.bind(component);\n if (process.env.NODE_ENV !== 'production') {\n boundMethod.__reactBoundContext = component;\n boundMethod.__reactBoundMethod = method;\n boundMethod.__reactBoundArguments = null;\n var componentName = component.constructor.displayName;\n var _bind = boundMethod.bind;\n boundMethod.bind = function(newThis) {\n for (\n var _len = arguments.length,\n args = Array(_len > 1 ? _len - 1 : 0),\n _key = 1;\n _key < _len;\n _key++\n ) {\n args[_key - 1] = arguments[_key];\n }\n\n // User is trying to bind() an autobound method; we effectively will\n // ignore the value of \"this\" that the user is trying to use, so\n // let's warn.\n if (newThis !== component && newThis !== null) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): React component methods may only be bound to the ' +\n 'component instance. See %s',\n componentName\n );\n }\n } else if (!args.length) {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n false,\n 'bind(): You are binding a component method to the component. ' +\n 'React does this for you automatically in a high-performance ' +\n 'way, so you can safely remove this call. See %s',\n componentName\n );\n }\n return boundMethod;\n }\n var reboundMethod = _bind.apply(boundMethod, arguments);\n reboundMethod.__reactBoundContext = component;\n reboundMethod.__reactBoundMethod = method;\n reboundMethod.__reactBoundArguments = args;\n return reboundMethod;\n };\n }\n return boundMethod;\n }\n\n /**\n * Binds all auto-bound methods in a component.\n *\n * @param {object} component Component whose method is going to be bound.\n */\n function bindAutoBindMethods(component) {\n var pairs = component.__reactAutoBindPairs;\n for (var i = 0; i < pairs.length; i += 2) {\n var autoBindKey = pairs[i];\n var method = pairs[i + 1];\n component[autoBindKey] = bindAutoBindMethod(component, method);\n }\n }\n\n var IsMountedPreMixin = {\n componentDidMount: function() {\n this.__isMounted = true;\n }\n };\n\n var IsMountedPostMixin = {\n componentWillUnmount: function() {\n this.__isMounted = false;\n }\n };\n\n /**\n * Add more to the ReactClass base class. These are all legacy features and\n * therefore not already part of the modern ReactComponent.\n */\n var ReactClassMixin = {\n /**\n * TODO: This will be deprecated because state should always keep a consistent\n * type signature and the only use case for this, is to avoid that.\n */\n replaceState: function(newState, callback) {\n this.updater.enqueueReplaceState(this, newState, callback);\n },\n\n /**\n * Checks whether or not this composite component is mounted.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function() {\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this.__didWarnIsMounted,\n '%s: isMounted is deprecated. Instead, make sure to clean up ' +\n 'subscriptions and pending requests in componentWillUnmount to ' +\n 'prevent memory leaks.',\n (this.constructor && this.constructor.displayName) ||\n this.name ||\n 'Component'\n );\n this.__didWarnIsMounted = true;\n }\n return !!this.__isMounted;\n }\n };\n\n var ReactClassComponent = function() {};\n _assign(\n ReactClassComponent.prototype,\n ReactComponent.prototype,\n ReactClassMixin\n );\n\n /**\n * Creates a composite component class given a class specification.\n * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass\n *\n * @param {object} spec Class specification (which must define `render`).\n * @return {function} Component constructor function.\n * @public\n */\n function createClass(spec) {\n // To keep our warnings more understandable, we'll use a little hack here to\n // ensure that Constructor.name !== 'Constructor'. This makes sure we don't\n // unnecessarily identify a class without displayName as 'Constructor'.\n var Constructor = identity(function(props, context, updater) {\n // This constructor gets overridden by mocks. The argument is used\n // by mocks to assert on what gets mounted.\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n this instanceof Constructor,\n 'Something is calling a React component directly. Use a factory or ' +\n 'JSX instead. See: https://fb.me/react-legacyfactory'\n );\n }\n\n // Wire up auto-binding\n if (this.__reactAutoBindPairs.length) {\n bindAutoBindMethods(this);\n }\n\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n\n this.state = null;\n\n // ReactClasses doesn't have constructors. Instead, they use the\n // getInitialState and componentWillMount methods for initialization.\n\n var initialState = this.getInitialState ? this.getInitialState() : null;\n if (process.env.NODE_ENV !== 'production') {\n // We allow auto-mocks to proceed as if they're returning null.\n if (\n initialState === undefined &&\n this.getInitialState._isMockFunction\n ) {\n // This is probably bad practice. Consider warning here and\n // deprecating this convenience.\n initialState = null;\n }\n }\n _invariant(\n typeof initialState === 'object' && !Array.isArray(initialState),\n '%s.getInitialState(): must return an object or null',\n Constructor.displayName || 'ReactCompositeComponent'\n );\n\n this.state = initialState;\n });\n Constructor.prototype = new ReactClassComponent();\n Constructor.prototype.constructor = Constructor;\n Constructor.prototype.__reactAutoBindPairs = [];\n\n injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor));\n\n mixSpecIntoComponent(Constructor, IsMountedPreMixin);\n mixSpecIntoComponent(Constructor, spec);\n mixSpecIntoComponent(Constructor, IsMountedPostMixin);\n\n // Initialize the defaultProps property after all mixins have been merged.\n if (Constructor.getDefaultProps) {\n Constructor.defaultProps = Constructor.getDefaultProps();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n // This is a tag to indicate that the use of these method names is ok,\n // since it's used with createClass. If it's not, then it's likely a\n // mistake so we'll warn you to use the static property, property\n // initializer or constructor respectively.\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps.isReactClassApproved = {};\n }\n if (Constructor.prototype.getInitialState) {\n Constructor.prototype.getInitialState.isReactClassApproved = {};\n }\n }\n\n _invariant(\n Constructor.prototype.render,\n 'createClass(...): Class specification must implement a `render` method.'\n );\n\n if (process.env.NODE_ENV !== 'production') {\n warning(\n !Constructor.prototype.componentShouldUpdate,\n '%s has a method called ' +\n 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' +\n 'The name is phrased as a question because the function is ' +\n 'expected to return a value.',\n spec.displayName || 'A component'\n );\n warning(\n !Constructor.prototype.componentWillRecieveProps,\n '%s has a method called ' +\n 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?',\n spec.displayName || 'A component'\n );\n }\n\n // Reduce time spent doing lookups by setting these on the prototype.\n for (var methodName in ReactClassInterface) {\n if (!Constructor.prototype[methodName]) {\n Constructor.prototype[methodName] = null;\n }\n }\n\n return Constructor;\n }\n\n return createClass;\n}\n\nmodule.exports = factory;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_create-react-class@15.6.2@create-react-class/factory.js\n// module id = 86\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyObject = {};\n\nif (process.env.NODE_ENV !== 'production') {\n Object.freeze(emptyObject);\n}\n\nmodule.exports = emptyObject;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/emptyObject.js\n// module id = 87\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/invariant.js\n// module id = 88\n// module chunks = 0","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/warning.js\n// module id = 89\n// module chunks = 0","\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_fbjs@0.8.16@fbjs/lib/emptyFunction.js\n// module id = 90\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _getOffsetParent = require('./getOffsetParent');\n\nvar _getOffsetParent2 = _interopRequireDefault(_getOffsetParent);\n\nvar _getVisibleRectForElement = require('./getVisibleRectForElement');\n\nvar _getVisibleRectForElement2 = _interopRequireDefault(_getVisibleRectForElement);\n\nvar _adjustForViewport = require('./adjustForViewport');\n\nvar _adjustForViewport2 = _interopRequireDefault(_adjustForViewport);\n\nvar _getRegion = require('./getRegion');\n\nvar _getRegion2 = _interopRequireDefault(_getRegion);\n\nvar _getElFuturePos = require('./getElFuturePos');\n\nvar _getElFuturePos2 = _interopRequireDefault(_getElFuturePos);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n// http://yiminghe.iteye.com/blog/1124720\n\n/**\n * align dom node flexibly\n * @author yiminghe@gmail.com\n */\n\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;\n}\n\nfunction isFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top < visibleRect.top || elFuturePos.top + elRegion.height > visibleRect.bottom;\n}\n\nfunction isCompleteFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left > visibleRect.right || elFuturePos.left + elRegion.width < visibleRect.left;\n}\n\nfunction isCompleteFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top > visibleRect.bottom || elFuturePos.top + elRegion.height < visibleRect.top;\n}\n\nfunction isOutOfVisibleRect(target) {\n var visibleRect = (0, _getVisibleRectForElement2['default'])(target);\n var targetRegion = (0, _getRegion2['default'])(target);\n\n return !visibleRect || targetRegion.left + targetRegion.width <= visibleRect.left || targetRegion.top + targetRegion.height <= visibleRect.top || targetRegion.left >= visibleRect.right || targetRegion.top >= visibleRect.bottom;\n}\n\nfunction flip(points, reg, map) {\n var ret = [];\n _utils2['default'].each(points, function (p) {\n ret.push(p.replace(reg, function (m) {\n return map[m];\n }));\n });\n return ret;\n}\n\nfunction flipOffset(offset, index) {\n offset[index] = -offset[index];\n return offset;\n}\n\nfunction convertOffset(str, offsetLen) {\n var n = void 0;\n if (/%$/.test(str)) {\n n = parseInt(str.substring(0, str.length - 1), 10) / 100 * offsetLen;\n } else {\n n = parseInt(str, 10);\n }\n return n || 0;\n}\n\nfunction normalizeOffset(offset, el) {\n offset[0] = convertOffset(offset[0], el.width);\n offset[1] = convertOffset(offset[1], el.height);\n}\n\nfunction domAlign(el, refNode, align) {\n var points = align.points;\n var offset = align.offset || [0, 0];\n var targetOffset = align.targetOffset || [0, 0];\n var overflow = align.overflow;\n var target = align.target || refNode;\n var source = align.source || el;\n offset = [].concat(offset);\n targetOffset = [].concat(targetOffset);\n overflow = overflow || {};\n var newOverflowCfg = {};\n var fail = 0;\n // 当前节点可以被放置的显示区域\n var visibleRect = (0, _getVisibleRectForElement2['default'])(source);\n // 当前节点所占的区域, left/top/width/height\n var elRegion = (0, _getRegion2['default'])(source);\n // 参照节点所占的区域, left/top/width/height\n var refNodeRegion = (0, _getRegion2['default'])(target);\n // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, refNodeRegion);\n // 当前节点将要被放置的位置\n var elFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, points, offset, targetOffset);\n // 当前节点将要所处的区域\n var newElRegion = _utils2['default'].merge(elRegion, elFuturePos);\n\n var isTargetNotOutOfVisible = !isOutOfVisibleRect(target);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTargetNotOutOfVisible) {\n if (overflow.adjustX) {\n // 如果横向不能放下\n if (isFailX(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var newPoints = flip(points, /[lr]/ig, {\n l: 'r',\n r: 'l'\n });\n // 偏移量也反下\n var newOffset = flipOffset(offset, 0);\n var newTargetOffset = flipOffset(targetOffset, 0);\n var newElFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, newPoints, newOffset, newTargetOffset);\n\n if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n\n if (overflow.adjustY) {\n // 如果纵向不能放下\n if (isFailY(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var _newPoints = flip(points, /[tb]/ig, {\n t: 'b',\n b: 't'\n });\n // 偏移量也反下\n var _newOffset = flipOffset(offset, 1);\n var _newTargetOffset = flipOffset(targetOffset, 1);\n var _newElFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, _newPoints, _newOffset, _newTargetOffset);\n\n if (!isCompleteFailY(_newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = _newPoints;\n offset = _newOffset;\n targetOffset = _newTargetOffset;\n }\n }\n }\n\n // 如果失败,重新计算当前节点将要被放置的位置\n if (fail) {\n elFuturePos = (0, _getElFuturePos2['default'])(elRegion, refNodeRegion, points, offset, targetOffset);\n _utils2['default'].mix(newElRegion, elFuturePos);\n }\n\n // 检查反下后的位置是否可以放下了\n // 如果仍然放不下只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isFailX(elFuturePos, elRegion, visibleRect);\n\n newOverflowCfg.adjustY = overflow.adjustY && isFailY(elFuturePos, elRegion, visibleRect);\n\n // 确实要调整,甚至可能会调整高度宽度\n if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {\n newElRegion = (0, _adjustForViewport2['default'])(elFuturePos, elRegion, visibleRect, newOverflowCfg);\n }\n }\n\n // need judge to in case set fixed with in css on height auto element\n if (newElRegion.width !== elRegion.width) {\n _utils2['default'].css(source, 'width', _utils2['default'].width(source) + newElRegion.width - elRegion.width);\n }\n\n if (newElRegion.height !== elRegion.height) {\n _utils2['default'].css(source, 'height', _utils2['default'].height(source) + newElRegion.height - elRegion.height);\n }\n\n // https://github.com/kissyteam/kissy/issues/190\n // 相对于屏幕位置没变,而 left/top 变了\n // 例如
\n _utils2['default'].offset(source, {\n left: newElRegion.left,\n top: newElRegion.top\n }, {\n useCssRight: align.useCssRight,\n useCssBottom: align.useCssBottom,\n useCssTransform: align.useCssTransform\n });\n\n return {\n points: points,\n offset: offset,\n targetOffset: targetOffset,\n overflow: newOverflowCfg\n };\n}\n\ndomAlign.__getOffsetParent = _getOffsetParent2['default'];\n\ndomAlign.__getVisibleRectForElement = _getVisibleRectForElement2['default'];\n\nexports['default'] = domAlign;\n/**\n * 2012-04-26 yiminghe@gmail.com\n * - 优化智能对齐算法\n * - 慎用 resizeXX\n *\n * 2011-07-13 yiminghe@gmail.com note:\n * - 增加智能对齐,以及大小调整选项\n **/\n\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/index.js\n// module id = 91\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _propertyUtils = require('./propertyUtils');\n\nvar RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\n\nvar getComputedStyleX = void 0;\n\nfunction force(x, y) {\n return x + y;\n}\n\nfunction css(el, name, v) {\n var value = v;\n if ((typeof name === 'undefined' ? 'undefined' : _typeof(name)) === 'object') {\n for (var i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n return undefined;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = value + 'px';\n }\n el.style[name] = value;\n return undefined;\n }\n return getComputedStyleX(el, name);\n}\n\nfunction getClientPosition(elem) {\n var box = void 0;\n var x = void 0;\n var y = void 0;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = box.left;\n y = box.top;\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n\n return {\n left: x,\n top: y\n };\n}\n\nfunction getScroll(w, top) {\n var ret = w['page' + (top ? 'Y' : 'X') + 'Offset'];\n var method = 'scroll' + (top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n // ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\n\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\n\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\n\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\n\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n if (node.nodeType === 9) {\n return node;\n }\n return node.ownerDocument;\n}\n\nfunction _getComputedStyle(elem, name, cs) {\n var computedStyle = cs;\n var val = '';\n var d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);\n\n // https://github.com/kissyteam/kissy/issues/61\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n\n return val;\n}\n\nvar _RE_NUM_NO_PX = new RegExp('^(' + RE_NUM + ')(?!px)[a-z%]+$', 'i');\nvar RE_POS = /^(top|right|bottom|left)$/;\nvar CURRENT_STYLE = 'currentStyle';\nvar RUNTIME_STYLE = 'runtimeStyle';\nvar LEFT = 'left';\nvar PX = 'px';\n\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style;\n var left = style[LEFT];\n var rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\n\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\n\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n return option.useCssBottom ? 'bottom' : dir;\n}\n\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n var presetH = -999;\n var presetV = -999;\n var horizontalProperty = getOffsetDirection('left', option);\n var verticalProperty = getOffsetDirection('top', option);\n var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);\n var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n var originalTransition = '';\n var originalOffset = getOffset(elem);\n if ('left' in offset || 'top' in offset) {\n originalTransition = (0, _propertyUtils.getTransitionProperty)(elem) || '';\n (0, _propertyUtils.setTransitionProperty)(elem, 'none');\n }\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = presetH + 'px';\n }\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = presetV + 'px';\n }\n var old = getOffset(elem);\n var originalStyle = {};\n for (var key in offset) {\n if (offset.hasOwnProperty(key)) {\n var dir = getOffsetDirection(key, option);\n var preset = key === 'left' ? presetH : presetV;\n var off = originalOffset[key] - old[key];\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n css(elem, originalStyle);\n // force relayout\n force(elem.offsetTop, elem.offsetLeft);\n if ('left' in offset || 'top' in offset) {\n (0, _propertyUtils.setTransitionProperty)(elem, originalTransition);\n }\n var ret = {};\n for (var _key in offset) {\n if (offset.hasOwnProperty(_key)) {\n var _dir = getOffsetDirection(_key, option);\n var _off = offset[_key] - originalOffset[_key];\n if (_key === _dir) {\n ret[_dir] = originalStyle[_dir] + _off;\n } else {\n ret[_dir] = originalStyle[_dir] - _off;\n }\n }\n }\n css(elem, ret);\n}\n\nfunction setTransform(elem, offset) {\n var originalOffset = getOffset(elem);\n var originalXY = (0, _propertyUtils.getTransformXY)(elem);\n var resultXY = { x: originalXY.x, y: originalXY.y };\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n (0, _propertyUtils.setTransformXY)(elem, resultXY);\n}\n\nfunction setOffset(elem, offset, option) {\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && (0, _propertyUtils.getTransformName)() in document.body.style) {\n setTransform(elem, offset, option);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\n\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\n\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\n\nvar BOX_MODELS = ['margin', 'border', 'padding'];\nvar CONTENT_INDEX = -1;\nvar PADDING_INDEX = 2;\nvar BORDER_INDEX = 1;\nvar MARGIN_INDEX = 0;\n\nfunction swap(elem, options, callback) {\n var old = {};\n var style = elem.style;\n var name = void 0;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\n\nfunction getPBMWidth(elem, props, which) {\n var value = 0;\n var prop = void 0;\n var j = void 0;\n var i = void 0;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp = void 0;\n if (prop === 'border') {\n cssProp = '' + prop + which[i] + 'Width';\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\n\nvar domUtils = {};\n\neach(['Width', 'Height'], function (name) {\n domUtils['doc' + name] = function (refWin) {\n var d = refWin.document;\n return Math.max(\n // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement['scroll' + name],\n // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body['scroll' + name], domUtils['viewport' + name](d));\n };\n\n domUtils['viewport' + name] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = 'client' + name;\n var doc = win.document;\n var body = doc.body;\n var documentElement = doc.documentElement;\n var documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, ex) {\n var extra = ex;\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n var borderBoxValue = name === 'width' ? elem.getBoundingClientRect().width : elem.getBoundingClientRect().height;\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem, computedStyle);\n var cssBoxValue = 0;\n if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = parseFloat(cssBoxValue) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which, computedStyle);\n }\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which, computedStyle) : getPBMWidth(elem, ['margin'], which, computedStyle));\n }\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which, computedStyle);\n}\n\nvar cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block'\n};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay() {\n for (var _len = arguments.length, args = Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var val = void 0;\n var elem = args[0];\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\n\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils['outer' + first] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n\n domUtils[name] = function (elem, v) {\n var val = v;\n if (val !== undefined) {\n if (elem) {\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which, computedStyle);\n }\n return css(elem, name, val);\n }\n return undefined;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\n\nfunction mix(to, from) {\n for (var i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n return to;\n}\n\nvar utils = {\n getWindow: function getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n\n getDocument: getDocument,\n offset: function offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function clone(obj) {\n var i = void 0;\n var ret = {};\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n var overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n return ret;\n },\n\n mix: mix,\n getWindowScrollLeft: function getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop: function getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge: function merge() {\n var ret = {};\n\n for (var _len2 = arguments.length, args = Array(_len2), _key3 = 0; _key3 < _len2; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n for (var i = 0; i < args.length; i++) {\n utils.mix(ret, args[i]);\n }\n return ret;\n },\n\n viewportWidth: 0,\n viewportHeight: 0\n};\n\nmix(utils, domUtils);\n\nexports['default'] = utils;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/utils.js\n// module id = 92\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTransformName = getTransformName;\nexports.setTransitionProperty = setTransitionProperty;\nexports.getTransitionProperty = getTransitionProperty;\nexports.getTransformXY = getTransformXY;\nexports.setTransformXY = setTransformXY;\nvar vendorPrefix = void 0;\n\nvar jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-'\n};\n\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n vendorPrefix = '';\n var style = document.createElement('p').style;\n var testProp = 'Transform';\n for (var key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n return vendorPrefix;\n}\n\nfunction getTransitionName() {\n return getVendorPrefix() ? getVendorPrefix() + 'TransitionProperty' : 'transitionProperty';\n}\n\nfunction getTransformName() {\n return getVendorPrefix() ? getVendorPrefix() + 'Transform' : 'transform';\n}\n\nfunction setTransitionProperty(node, value) {\n var name = getTransitionName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\n\nfunction setTransform(node, value) {\n var name = getTransformName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\n\nfunction getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\n\nfunction getTransformXY(node) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return { x: parseFloat(matrix[12] || matrix[4], 0), y: parseFloat(matrix[13] || matrix[5], 0) };\n }\n return {\n x: 0,\n y: 0\n };\n}\n\nvar matrix2d = /matrix\\((.*)\\)/;\nvar matrix3d = /matrix3d\\((.*)\\)/;\n\nfunction setTransformXY(node, xy) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var arr = void 0;\n var match2d = transform.match(matrix2d);\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, 'matrix(' + arr.join(',') + ')');\n } else {\n var match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, 'matrix3d(' + arr.join(',') + ')');\n }\n } else {\n setTransform(node, 'translateX(' + xy.x + 'px) translateY(' + xy.y + 'px) translateZ(0)');\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/propertyUtils.js\n// module id = 93\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\n\nfunction getOffsetParent(element) {\n if (_utils2['default'].isWindow(element) || element.nodeType === 9) {\n return null;\n }\n // ie 这个也不是完全可行\n /*\n \n
\n 元素 6 高 100px 宽 50px \n
\n
\n */\n // element.offsetParent does the right thing in ie7 and below. Return parent with layout!\n // In other browsers it only includes elements with position absolute, relative or\n // fixed, not elements with overflow set to auto or scroll.\n // if (UA.ie && ieMode < 8) {\n // return element.offsetParent;\n // }\n // 统一的 offsetParent 方法\n var doc = _utils2['default'].getDocument(element);\n var body = doc.body;\n var parent = void 0;\n var positionStyle = _utils2['default'].css(element, 'position');\n var skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';\n\n if (!skipStatic) {\n return element.nodeName.toLowerCase() === 'html' ? null : element.parentNode;\n }\n\n for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {\n positionStyle = _utils2['default'].css(parent, 'position');\n if (positionStyle !== 'static') {\n return parent;\n }\n }\n return null;\n}\n\nexports['default'] = getOffsetParent;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getOffsetParent.js\n// module id = 94\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _getOffsetParent = require('./getOffsetParent');\n\nvar _getOffsetParent2 = _interopRequireDefault(_getOffsetParent);\n\nvar _isAncestorFixed = require('./isAncestorFixed');\n\nvar _isAncestorFixed2 = _interopRequireDefault(_isAncestorFixed);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * 获得元素的显示部分的区域\n */\nfunction getVisibleRectForElement(element) {\n var visibleRect = {\n left: 0,\n right: Infinity,\n top: 0,\n bottom: Infinity\n };\n var el = (0, _getOffsetParent2['default'])(element);\n var doc = _utils2['default'].getDocument(element);\n var win = doc.defaultView || doc.parentWindow;\n var body = doc.body;\n var documentElement = doc.documentElement;\n\n // Determine the size of the visible rect by climbing the dom accounting for\n // all scrollable containers.\n while (el) {\n // clientWidth is zero for inline block elements in ie.\n if ((navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&\n // body may have overflow set on it, yet we still get the entire\n // viewport. In some browsers, el.offsetParent may be\n // document.documentElement, so check for that too.\n el !== body && el !== documentElement && _utils2['default'].css(el, 'overflow') !== 'visible') {\n var pos = _utils2['default'].offset(el);\n // add border\n pos.left += el.clientLeft;\n pos.top += el.clientTop;\n visibleRect.top = Math.max(visibleRect.top, pos.top);\n visibleRect.right = Math.min(visibleRect.right,\n // consider area without scrollBar\n pos.left + el.clientWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, pos.top + el.clientHeight);\n visibleRect.left = Math.max(visibleRect.left, pos.left);\n } else if (el === body || el === documentElement) {\n break;\n }\n el = (0, _getOffsetParent2['default'])(el);\n }\n\n // Set element position to fixed\n // make sure absolute element itself don't affect it's visible area\n // https://github.com/ant-design/ant-design/issues/7601\n var originalPosition = null;\n if (!_utils2['default'].isWindow(element) && element.nodeType !== 9) {\n originalPosition = element.style.position;\n var position = _utils2['default'].css(element, 'position');\n if (position === 'absolute') {\n element.style.position = 'fixed';\n }\n }\n\n var scrollX = _utils2['default'].getWindowScrollLeft(win);\n var scrollY = _utils2['default'].getWindowScrollTop(win);\n var viewportWidth = _utils2['default'].viewportWidth(win);\n var viewportHeight = _utils2['default'].viewportHeight(win);\n var documentWidth = documentElement.scrollWidth;\n var documentHeight = documentElement.scrollHeight;\n\n // Reset element position after calculate the visible area\n if (element.style) {\n element.style.position = originalPosition;\n }\n\n if ((0, _isAncestorFixed2['default'])(element)) {\n // Clip by viewport's size.\n visibleRect.left = Math.max(visibleRect.left, scrollX);\n visibleRect.top = Math.max(visibleRect.top, scrollY);\n visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);\n } else {\n // Clip by document's size.\n var maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);\n visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);\n\n var maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);\n visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);\n }\n\n return visibleRect.top >= 0 && visibleRect.left >= 0 && visibleRect.bottom > visibleRect.top && visibleRect.right > visibleRect.left ? visibleRect : null;\n}\n\nexports['default'] = getVisibleRectForElement;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getVisibleRectForElement.js\n// module id = 95\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports['default'] = isAncestorFixed;\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction isAncestorFixed(element) {\n if (_utils2['default'].isWindow(element) || element.nodeType === 9) {\n return false;\n }\n\n var doc = _utils2['default'].getDocument(element);\n var body = doc.body;\n var parent = null;\n for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {\n var positionStyle = _utils2['default'].css(parent, 'position');\n if (positionStyle === 'fixed') {\n return true;\n }\n }\n return false;\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/isAncestorFixed.js\n// module id = 96\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {\n var pos = _utils2['default'].clone(elFuturePos);\n var size = {\n width: elRegion.width,\n height: elRegion.height\n };\n\n if (overflow.adjustX && pos.left < visibleRect.left) {\n pos.left = visibleRect.left;\n }\n\n // Left edge inside and right edge outside viewport, try to resize it.\n if (overflow.resizeWidth && pos.left >= visibleRect.left && pos.left + size.width > visibleRect.right) {\n size.width -= pos.left + size.width - visibleRect.right;\n }\n\n // Right edge outside viewport, try to move it.\n if (overflow.adjustX && pos.left + size.width > visibleRect.right) {\n // 保证左边界和可视区域左边界对齐\n pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);\n }\n\n // Top edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top < visibleRect.top) {\n pos.top = visibleRect.top;\n }\n\n // Top edge inside and bottom edge outside viewport, try to resize it.\n if (overflow.resizeHeight && pos.top >= visibleRect.top && pos.top + size.height > visibleRect.bottom) {\n size.height -= pos.top + size.height - visibleRect.bottom;\n }\n\n // Bottom edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {\n // 保证上边界和可视区域上边界对齐\n pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);\n }\n\n return _utils2['default'].mix(pos, size);\n}\n\nexports['default'] = adjustForViewport;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/adjustForViewport.js\n// module id = 97\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction getRegion(node) {\n var offset = void 0;\n var w = void 0;\n var h = void 0;\n if (!_utils2['default'].isWindow(node) && node.nodeType !== 9) {\n offset = _utils2['default'].offset(node);\n w = _utils2['default'].outerWidth(node);\n h = _utils2['default'].outerHeight(node);\n } else {\n var win = _utils2['default'].getWindow(node);\n offset = {\n left: _utils2['default'].getWindowScrollLeft(win),\n top: _utils2['default'].getWindowScrollTop(win)\n };\n w = _utils2['default'].viewportWidth(win);\n h = _utils2['default'].viewportHeight(win);\n }\n offset.width = w;\n offset.height = h;\n return offset;\n}\n\nexports['default'] = getRegion;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getRegion.js\n// module id = 98\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _getAlignOffset = require('./getAlignOffset');\n\nvar _getAlignOffset2 = _interopRequireDefault(_getAlignOffset);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {\n var p1 = (0, _getAlignOffset2['default'])(refNodeRegion, points[1]);\n var p2 = (0, _getAlignOffset2['default'])(elRegion, points[0]);\n var diff = [p2.left - p1.left, p2.top - p1.top];\n\n return {\n left: elRegion.left - diff[0] + offset[0] - targetOffset[0],\n top: elRegion.top - diff[1] + offset[1] - targetOffset[1]\n };\n}\n\nexports['default'] = getElFuturePos;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getElFuturePos.js\n// module id = 99\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * 获取 node 上的 align 对齐点 相对于页面的坐标\n */\n\nfunction getAlignOffset(region, align) {\n var V = align.charAt(0);\n var H = align.charAt(1);\n var w = region.width;\n var h = region.height;\n\n var x = region.left;\n var y = region.top;\n\n if (V === 'c') {\n y += h / 2;\n } else if (V === 'b') {\n y += h;\n }\n\n if (H === 'c') {\n x += w / 2;\n } else if (H === 'r') {\n x += w;\n }\n\n return {\n left: x,\n top: y\n };\n}\n\nexports['default'] = getAlignOffset;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_dom-align@1.6.5@dom-align/lib/getAlignOffset.js\n// module id = 100\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _Transition = require('./Transition');\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * Show the component; triggers the fade in or fade out animation\n */\n \"in\": _propTypes2[\"default\"].bool,\n\n /**\n * Unmount the component (remove it from the DOM) when it is faded out\n */\n unmountOnExit: _propTypes2[\"default\"].bool,\n\n /**\n * Run the fade in animation when the component mounts, if it is initially\n * shown\n */\n transitionAppear: _propTypes2[\"default\"].bool,\n\n /**\n * Duration of the fade animation in milliseconds, to ensure that finishing\n * callbacks are fired even if the original browser transition end events are\n * canceled\n */\n timeout: _propTypes2[\"default\"].number,\n\n /**\n * Callback fired before the component fades in\n */\n onEnter: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to fade in\n */\n onEntering: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the has component faded in\n */\n onEntered: _propTypes2[\"default\"].func,\n /**\n * Callback fired before the component fades out\n */\n onExit: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component starts to fade out\n */\n onExiting: _propTypes2[\"default\"].func,\n /**\n * Callback fired after the component has faded out\n */\n onExited: _propTypes2[\"default\"].func\n};\n\nvar defaultProps = {\n \"in\": false,\n timeout: 300,\n unmountOnExit: false,\n transitionAppear: false\n};\n\nvar Fade = function (_React$Component) {\n _inherits(Fade, _React$Component);\n\n function Fade() {\n _classCallCheck(this, Fade);\n\n return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n Fade.prototype.render = function render() {\n return _react2[\"default\"].createElement(_Transition2[\"default\"], _extends({}, this.props, {\n className: (0, _classnames2[\"default\"])(this.props.className, 'fade'),\n enteredClassName: 'in',\n enteringClassName: 'in'\n }));\n };\n\n return Fade;\n}(_react2[\"default\"].Component);\n\nFade.propTypes = propTypes;\nFade.defaultProps = defaultProps;\n\nexports[\"default\"] = Fade;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-transition@1.0.0@bee-transition/build/Fade.js\n// module id = 101\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n //是否是手风琴效果\n accordion: _propTypes2[\"default\"].bool,\n //激活的项\n activeKey: _propTypes2[\"default\"].any,\n //默认的激活的项\n defaultActiveKey: _propTypes2[\"default\"].any,\n //选中函数\n onSelect: _propTypes2[\"default\"].func,\n role: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n accordion: false,\n clsPrefix: 'u-panel-group'\n};\n\n// TODO: Use uncontrollable.\n\nvar PanelGroup = function (_React$Component) {\n _inherits(PanelGroup, _React$Component);\n\n function PanelGroup(props, context) {\n _classCallCheck(this, PanelGroup);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleSelect = _this.handleSelect.bind(_this);\n\n _this.state = {\n activeKey: props.defaultActiveKey\n };\n return _this;\n }\n\n PanelGroup.prototype.handleSelect = function handleSelect(key, e) {\n e.preventDefault();\n\n if (this.props.onSelect) {\n this.props.onSelect(key, e);\n }\n\n if (this.state.activeKey === key) {\n key = null;\n }\n\n this.setState({ activeKey: key });\n };\n\n PanelGroup.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n accordion = _props.accordion,\n propsActiveKey = _props.activeKey,\n className = _props.className,\n children = _props.children,\n defaultActiveKey = _props.defaultActiveKey,\n onSelect = _props.onSelect,\n style = _props.style,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['accordion', 'activeKey', 'className', 'children', 'defaultActiveKey', 'onSelect', 'style', 'clsPrefix']);\n\n var activeKey = void 0;\n if (accordion) {\n activeKey = propsActiveKey != null ? propsActiveKey : this.state.activeKey;\n others.role = others.role || 'tablist';\n }\n\n var classes = {};\n classes['' + clsPrefix] = true;\n\n return _react2[\"default\"].createElement(\n 'div',\n _extends({}, others, {\n className: (0, _classnames2[\"default\"])(className, classes)\n }),\n _react2[\"default\"].Children.map(children, function (child) {\n if (!_react2[\"default\"].isValidElement(child)) {\n return child;\n }\n var childProps = {\n style: child.props.style\n };\n\n if (accordion) {\n _extends(childProps, {\n headerRole: 'tab',\n panelRole: 'tabpanel',\n collapsible: true,\n expanded: child.props.eventKey === activeKey,\n onSelect: (0, _tinperBeeCore.createChainedFunction)(_this2.handleSelect, child.props.onSelect)\n });\n }\n\n return (0, _react.cloneElement)(child, childProps);\n })\n );\n };\n\n return PanelGroup;\n}(_react2[\"default\"].Component);\n\nPanelGroup.propTypes = propTypes;\nPanelGroup.defaultProps = defaultProps;\n\nexports[\"default\"] = PanelGroup;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-panel@1.0.0@bee-panel/build/PanelGroup.js\n// module id = 102\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Button = require('./Button');\n\nvar _Button2 = _interopRequireDefault(_Button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Button2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-button@1.0.2@bee-button/build/index.js\n// module id = 103\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n /**\n * @title 尺寸\n */\n size: _propTypes2[\"default\"].oneOf(['sm', 'xg', 'lg']),\n /**\n * @title 样式\n */\n style: _propTypes2[\"default\"].object,\n /**\n * @title 形状\n */\n shape: _propTypes2[\"default\"].oneOf(['block', 'round', 'border', 'squared', 'floating', 'pillRight', 'pillLeft', 'icon']),\n\n bordered: _propTypes2[\"default\"].bool,\n /**\n * @title 类型\n */\n colors: _propTypes2[\"default\"].oneOf(['primary', 'accent', 'success', 'info', 'warning', 'danger', 'default']),\n /**\n * @title 是否禁用\n * @veIgnore\n */\n disabled: _propTypes2[\"default\"].bool,\n /**\n * @title 类名\n * @veIgnore\n */\n className: _propTypes2[\"default\"].string,\n\n /**\n * @title 的 type\n * @veIgnore\n */\n htmlType: _propTypes2[\"default\"].oneOf(['submit', 'button', 'reset'])\n};\n\nvar defaultProps = {\n disabled: false,\n htmlType: 'button',\n clsPrefix: 'u-button',\n bordered: false\n\n};\n\nvar sizeMap = {\n sm: 'sm',\n xg: 'xg',\n lg: 'lg'\n},\n colorsMap = {\n primary: 'primary',\n accent: 'accent',\n success: 'success',\n info: 'info',\n warning: 'warning',\n danger: 'danger'\n},\n shapeMap = {\n block: 'block',\n round: 'round',\n border: 'border',\n squared: 'squared',\n floating: 'floating',\n pillRight: 'pill-right',\n pillLeft: 'pill-left',\n icon: 'icon'\n};\n\nvar Button = function (_Component) {\n _inherits(Button, _Component);\n\n function Button(props) {\n _classCallCheck(this, Button);\n\n return _possibleConstructorReturn(this, _Component.call(this, props));\n }\n\n Button.prototype.render = function render() {\n var _props = this.props,\n colors = _props.colors,\n shape = _props.shape,\n disabled = _props.disabled,\n className = _props.className,\n size = _props.size,\n bordered = _props.bordered,\n children = _props.children,\n htmlType = _props.htmlType,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['colors', 'shape', 'disabled', 'className', 'size', 'bordered', 'children', 'htmlType', 'clsPrefix']);\n\n var clsObj = {};\n if (className) {\n clsObj[className] = true;\n }\n if (sizeMap[size]) {\n clsObj[clsPrefix + '-' + sizeMap[size]] = true;\n }\n\n if (shapeMap[shape]) {\n clsObj[clsPrefix + '-' + shapeMap[shape]] = true;\n }\n if (colorsMap[colors]) {\n clsObj[clsPrefix + '-' + colorsMap[colors]] = true;\n }\n //clsObj[`${clsPrefix}-border`] = bordered;\n var classes = (0, _classnames2[\"default\"])(clsPrefix, clsObj);\n return _react2[\"default\"].createElement(\n 'button',\n _extends({\n type: htmlType,\n className: classes,\n disabled: disabled\n }, others),\n this.props.children\n );\n };\n\n return Button;\n}(_react.Component);\n\nButton.propTypes = propTypes;\nButton.defaultProps = defaultProps;\n\nexports[\"default\"] = Button;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-button@1.0.2@bee-button/build/Button.js\n// module id = 104\n// module chunks = 0","/**\r\n *\r\n * @title Tree基本使用事例\r\n * @description 事例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tcheckedKeys: {checked:keys},\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck = (checkedKeys) => {\r\n\t\tlet self = this;\r\n\t\tconsole.log('onCheck', checkedKeys);\r\n\t\tconst cks = {\r\n\t\t\tchecked: checkedKeys.checked || checkedKeys,\r\n\t\t};\r\n\t\tthis.setState({checkedKeys:cks});\r\n\t}\r\n\trender() {\r\n\t\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo1.js","import React,{Component} from 'react';\r\nimport RcTree from './Tree';\r\nimport TreeNode from './TreeNode';\r\nimport animation from './openAnimation';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst TreeProps ={\r\n showLine: PropTypes.bool,\r\n className: PropTypes.string,\r\n /** 是否支持多选 */\r\n multiple: PropTypes.bool,\r\n /** 是否自动展开父节点 */\r\n autoExpandParent: PropTypes.bool,\r\n /** checkable状态下节点选择完全受控(父子节点选中状态不再关联)*/\r\n checkStrictly: PropTypes.bool,\r\n /** 是否支持选中 */\r\n checkable: PropTypes.bool,\r\n /** 默认展开所有树节点 */\r\n defaultExpandAll: PropTypes.bool,\r\n /** 默认展开指定的树节点 */\r\n defaultExpandedKeys: PropTypes.array,\r\n /** (受控)展开指定的树节点 */\r\n expandedKeys: PropTypes.array,\r\n /** (受控)选中复选框的树节点 */\r\n checkedKeys: PropTypes.oneOfType([\r\n PropTypes.array,\r\n PropTypes.object\r\n ]),\r\n /** 默认选中复选框的树节点 */\r\n defaultCheckedKeys: PropTypes.array,\r\n /** (受控)设置选中的树节点 */\r\n selectedKeys: PropTypes.array,\r\n /** 默认选中的树节点 */\r\n defaultSelectedKeys: PropTypes.array,\r\n /** 展开/收起节点时触发 */\r\n onExpand: PropTypes.func,\r\n /** 点击复选框触发 */\r\n onCheck: PropTypes.func,\r\n /** 点击树节点触发 */\r\n onSelect: PropTypes.func,\r\n /** filter some AntTreeNodes as you need. it should return true */\r\n filterAntTreeNode: PropTypes.func,\r\n /** 异步加载数据 */\r\n loadData: PropTypes.func,\r\n /** 响应右键点击 */\r\n onRightClick: PropTypes.func,\r\n /** 设置节点可拖拽(IE>8)*/\r\n draggable: PropTypes.bool,\r\n /** 开始拖拽时调用 */\r\n onDragStart: PropTypes.func,\r\n /** dragenter 触发时调用 */\r\n onDragEnter: PropTypes.func,\r\n /** dragover 触发时调用 */\r\n onDragOver: PropTypes.func,\r\n /** dragleave 触发时调用 */\r\n onDragLeave: PropTypes.func,\r\n /** drop 触发时调用 */\r\n onDrop: PropTypes.func,\r\n style: React.CSSProperties,\r\n prefixCls: PropTypes.string,\r\n filterTreeNode: PropTypes.func\r\n}\r\n\r\nconst defaultProps = {\r\n prefixCls: 'u-tree',\r\n checkable: false,\r\n showIcon: false,\r\n openAnimation: animation,\r\n}\r\n\r\nclass Tree extends Component{\r\n\r\n render() {\r\n const props = this.props;\r\n let checkable = props.checkable;\r\n return (\r\n ) : checkable }\r\n >\r\n {this.props.children}\r\n \r\n );\r\n }\r\n}\r\n\r\nTree.TreeNode = TreeNode;\r\nTree.TreeProps = TreeProps;\r\nTree.defaultProps = defaultProps;\r\nexport default Tree;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","/* eslint no-console:0 */\r\nimport React from 'react';\r\nimport classNames from 'classnames';\r\nimport {\r\n loopAllChildren,\r\n isInclude,\r\n getOffset,\r\n filterParentPosition,\r\n handleCheckState,\r\n getCheck,\r\n getStrictlyValue,\r\n arraysEqual,\r\n} from './util';\r\nimport PropTypes from 'prop-types';\r\n\r\n\r\nfunction noop() {}\r\n\r\nclass Tree extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n ['onKeyDown', 'onCheck'].forEach((m) => {\r\n this[m] = this[m].bind(this);\r\n });\r\n this.contextmenuKeys = [];\r\n this.checkedKeysChange = true;\r\n\r\n this.state = {\r\n expandedKeys: this.getDefaultExpandedKeys(props),\r\n checkedKeys: this.getDefaultCheckedKeys(props),\r\n selectedKeys: this.getDefaultSelectedKeys(props),\r\n dragNodesKeys: '',\r\n dragOverNodeKey: '',\r\n dropNodeKey: '',\r\n };\r\n }\r\n\r\n componentWillReceiveProps(nextProps) {\r\n const expandedKeys = this.getDefaultExpandedKeys(nextProps, true);\r\n const checkedKeys = this.getDefaultCheckedKeys(nextProps, true);\r\n const selectedKeys = this.getDefaultSelectedKeys(nextProps, true);\r\n const st = {};\r\n if (expandedKeys) {\r\n st.expandedKeys = expandedKeys;\r\n }\r\n if (checkedKeys) {\r\n if (nextProps.checkedKeys === this.props.checkedKeys) {\r\n this.checkedKeysChange = false;\r\n } else {\r\n this.checkedKeysChange = true;\r\n }\r\n st.checkedKeys = checkedKeys;\r\n }\r\n if (selectedKeys) {\r\n st.selectedKeys = selectedKeys;\r\n }\r\n this.setState(st);\r\n }\r\n\r\n onDragStart(e, treeNode) {\r\n this.dragNode = treeNode;\r\n this.dragNodesKeys = this.getDragNodes(treeNode);\r\n const st = {\r\n dragNodesKeys: this.dragNodesKeys,\r\n };\r\n const expandedKeys = this.getExpandedKeys(treeNode, false);\r\n if (expandedKeys) {\r\n // Controlled expand, save and then reset\r\n this.getRawExpandedKeys();\r\n st.expandedKeys = expandedKeys;\r\n }\r\n this.setState(st);\r\n this.props.onDragStart({\r\n event: e,\r\n node: treeNode,\r\n });\r\n this._dropTrigger = false;\r\n }\r\n\r\n onDragEnterGap(e, treeNode) {\r\n const offsetTop = (0, getOffset)(treeNode.refs.selectHandle).top;\r\n const offsetHeight = treeNode.refs.selectHandle.offsetHeight;\r\n const pageY = e.pageY;\r\n const gapHeight = 2;\r\n if (pageY > offsetTop + offsetHeight - gapHeight) {\r\n this.dropPosition = 1;\r\n return 1;\r\n }\r\n if (pageY < offsetTop + gapHeight) {\r\n this.dropPosition = -1;\r\n return -1;\r\n }\r\n this.dropPosition = 0;\r\n return 0;\r\n }\r\n\r\n onDragEnter(e, treeNode) {\r\n const enterGap = this.onDragEnterGap(e, treeNode);\r\n if (this.dragNode.props.eventKey === treeNode.props.eventKey && enterGap === 0) {\r\n this.setState({\r\n dragOverNodeKey: '',\r\n });\r\n return;\r\n }\r\n const st = {\r\n dragOverNodeKey: treeNode.props.eventKey,\r\n };\r\n const expandedKeys = this.getExpandedKeys(treeNode, true);\r\n if (expandedKeys) {\r\n this.getRawExpandedKeys();\r\n st.expandedKeys = expandedKeys;\r\n }\r\n this.setState(st);\r\n this.props.onDragEnter({\r\n event: e,\r\n node: treeNode,\r\n expandedKeys: expandedKeys && [...expandedKeys] || [...this.state.expandedKeys],\r\n });\r\n }\r\n\r\n onDragOver(e, treeNode) {\r\n this.props.onDragOver({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onDragLeave(e, treeNode) {\r\n this.props.onDragLeave({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onDrop(e, treeNode) {\r\n const key = treeNode.props.eventKey;\r\n this.setState({\r\n dragOverNodeKey: '',\r\n dropNodeKey: key,\r\n });\r\n if (this.dragNodesKeys.indexOf(key) > -1) {\r\n if (console.warn) {\r\n console.warn('can not drop to dragNode(include it\\'s children node)');\r\n }\r\n return false;\r\n }\r\n\r\n const posArr = treeNode.props.pos.split('-');\r\n const res = {\r\n event: e,\r\n node: treeNode,\r\n dragNode: this.dragNode,\r\n dragNodesKeys: [...this.dragNodesKeys],\r\n dropPosition: this.dropPosition + Number(posArr[posArr.length - 1]),\r\n };\r\n if (this.dropPosition !== 0) {\r\n res.dropToGap = true;\r\n }\r\n if ('expandedKeys' in this.props) {\r\n res.rawExpandedKeys = [...this._rawExpandedKeys] || [...this.state.expandedKeys];\r\n }\r\n this.props.onDrop(res);\r\n this._dropTrigger = true;\r\n }\r\n\r\n onDragEnd(e, treeNode) {\r\n this.setState({\r\n dragOverNodeKey: '',\r\n });\r\n this.props.onDragEnd({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onExpand(treeNode) {\r\n const expanded = !treeNode.props.expanded;\r\n const controlled = 'expandedKeys' in this.props;\r\n const expandedKeys = [...this.state.expandedKeys];\r\n const index = expandedKeys.indexOf(treeNode.props.eventKey);\r\n if (expanded && index === -1) {\r\n expandedKeys.push(treeNode.props.eventKey);\r\n } else if (!expanded && index > -1) {\r\n expandedKeys.splice(index, 1);\r\n }\r\n if (!controlled) {\r\n this.setState({\r\n expandedKeys\r\n });\r\n }\r\n this.props.onExpand(expandedKeys, {\r\n node: treeNode,\r\n expanded\r\n });\r\n\r\n // after data loaded, need set new expandedKeys\r\n if (expanded && this.props.loadData) {\r\n return this.props.loadData(treeNode).then(() => {\r\n if (!controlled) {\r\n this.setState({\r\n expandedKeys\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n onCheck(treeNode) {\r\n let checked = !treeNode.props.checked;\r\n if (treeNode.props.halfChecked) {\r\n checked = true;\r\n }\r\n const key = treeNode.props.eventKey;\r\n let checkedKeys = [...this.state.checkedKeys];\r\n const index = checkedKeys.indexOf(key);\r\n\r\n const newSt = {\r\n event: 'check',\r\n node: treeNode,\r\n checked,\r\n };\r\n\r\n if (this.props.checkStrictly) {\r\n if (checked && index === -1) {\r\n checkedKeys.push(key);\r\n }\r\n if (!checked && index > -1) {\r\n checkedKeys.splice(index, 1);\r\n }\r\n this.treeNodesStates[treeNode.props.pos].checked = checked;\r\n newSt.checkedNodes = [];\r\n loopAllChildren(this.props.children, (item, ind, pos, keyOrPos) => {\r\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\r\n newSt.checkedNodes.push(item);\r\n }\r\n });\r\n if (!('checkedKeys' in this.props)) {\r\n this.setState({\r\n checkedKeys,\r\n });\r\n }\r\n const halfChecked = this.props.checkedKeys ? this.props.checkedKeys.halfChecked : [];\r\n this.props.onCheck(getStrictlyValue(checkedKeys, halfChecked), newSt);\r\n } else {\r\n if (checked && index === -1) {\r\n this.treeNodesStates[treeNode.props.pos].checked = true;\r\n const checkedPositions = [];\r\n Object.keys(this.treeNodesStates).forEach(i => {\r\n if (this.treeNodesStates[i].checked) {\r\n checkedPositions.push(i);\r\n }\r\n });\r\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\r\n }\r\n if (!checked) {\r\n this.treeNodesStates[treeNode.props.pos].checked = false;\r\n this.treeNodesStates[treeNode.props.pos].halfChecked = false;\r\n handleCheckState(this.treeNodesStates, [treeNode.props.pos], false);\r\n }\r\n const checkKeys = getCheck(this.treeNodesStates);\r\n newSt.checkedNodes = checkKeys.checkedNodes;\r\n newSt.checkedNodesPositions = checkKeys.checkedNodesPositions;\r\n newSt.halfCheckedKeys = checkKeys.halfCheckedKeys;\r\n this.checkKeys = checkKeys;\r\n\r\n this._checkedKeys = checkedKeys = checkKeys.checkedKeys;\r\n if (!('checkedKeys' in this.props)) {\r\n this.setState({\r\n checkedKeys,\r\n });\r\n }\r\n this.props.onCheck(checkedKeys, newSt);\r\n }\r\n }\r\n\r\n onSelect(treeNode) {\r\n const props = this.props;\r\n const selectedKeys = [...this.state.selectedKeys];\r\n const eventKey = treeNode.props.eventKey;\r\n const index = selectedKeys.indexOf(eventKey);\r\n let selected;\r\n if (index !== -1) {\r\n selected = false;\r\n selectedKeys.splice(index, 1);\r\n } else {\r\n selected = true;\r\n if (!props.multiple) {\r\n selectedKeys.length = 0;\r\n }\r\n selectedKeys.push(eventKey);\r\n }\r\n const selectedNodes = [];\r\n if (selectedKeys.length) {\r\n loopAllChildren(this.props.children, (item) => {\r\n if (selectedKeys.indexOf(item.key) !== -1) {\r\n selectedNodes.push(item);\r\n }\r\n });\r\n }\r\n const newSt = {\r\n event: 'select',\r\n node: treeNode,\r\n selected,\r\n selectedNodes,\r\n };\r\n if (!('selectedKeys' in this.props)) {\r\n this.setState({\r\n selectedKeys,\r\n });\r\n }\r\n props.onSelect(selectedKeys, newSt);\r\n }\r\n\r\n onMouseEnter(e, treeNode) {\r\n this.props.onMouseEnter({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onMouseLeave(e, treeNode) {\r\n this.props.onMouseLeave({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n onContextMenu(e, treeNode) {\r\n const selectedKeys = [...this.state.selectedKeys];\r\n const eventKey = treeNode.props.eventKey;\r\n if (this.contextmenuKeys.indexOf(eventKey) === -1) {\r\n this.contextmenuKeys.push(eventKey);\r\n }\r\n this.contextmenuKeys.forEach((key) => {\r\n const index = selectedKeys.indexOf(key);\r\n if (index !== -1) {\r\n selectedKeys.splice(index, 1);\r\n }\r\n });\r\n if (selectedKeys.indexOf(eventKey) === -1) {\r\n selectedKeys.push(eventKey);\r\n }\r\n this.setState({\r\n selectedKeys,\r\n });\r\n this.props.onRightClick({\r\n event: e,\r\n node: treeNode\r\n });\r\n }\r\n\r\n // all keyboard events callbacks run from here at first\r\n onKeyDown(e) {\r\n e.preventDefault();\r\n }\r\n\r\n getFilterExpandedKeys(props, expandKeyProp, expandAll) {\r\n const keys = props[expandKeyProp];\r\n if (!expandAll && !props.autoExpandParent) {\r\n return keys || [];\r\n }\r\n const expandedPositionArr = [];\r\n if (props.autoExpandParent) {\r\n loopAllChildren(props.children, (item, index, pos, newKey) => {\r\n if (keys.indexOf(newKey) > -1) {\r\n expandedPositionArr.push(pos);\r\n }\r\n });\r\n }\r\n const filterExpandedKeys = [];\r\n loopAllChildren(props.children, (item, index, pos, newKey) => {\r\n if (expandAll) {\r\n filterExpandedKeys.push(newKey);\r\n } else if (props.autoExpandParent) {\r\n expandedPositionArr.forEach(p => {\r\n if ((p.split('-').length > pos.split('-').length && isInclude(pos.split('-'), p.split('-')) || pos === p) && filterExpandedKeys.indexOf(newKey) === -1) {\r\n filterExpandedKeys.push(newKey);\r\n }\r\n });\r\n }\r\n });\r\n return filterExpandedKeys.length ? filterExpandedKeys : keys;\r\n }\r\n\r\n getDefaultExpandedKeys(props, willReceiveProps) {\r\n let expandedKeys = willReceiveProps ? undefined :\r\n this.getFilterExpandedKeys(props, 'defaultExpandedKeys',\r\n props.defaultExpandedKeys.length ? false : props.defaultExpandAll);\r\n if ('expandedKeys' in props) {\r\n expandedKeys = (props.autoExpandParent ?\r\n this.getFilterExpandedKeys(props, 'expandedKeys', false) :\r\n props.expandedKeys) || [];\r\n }\r\n return expandedKeys;\r\n }\r\n\r\n getDefaultCheckedKeys(props, willReceiveProps) {\r\n let checkedKeys = willReceiveProps ? undefined : props.defaultCheckedKeys;\r\n if ('checkedKeys' in props) {\r\n checkedKeys = props.checkedKeys || [];\r\n if (props.checkStrictly) {\r\n if (props.checkedKeys.checked) {\r\n checkedKeys = props.checkedKeys.checked;\r\n } else if (!Array.isArray(props.checkedKeys)) {\r\n checkedKeys = [];\r\n }\r\n }\r\n }\r\n return checkedKeys;\r\n }\r\n\r\n getDefaultSelectedKeys(props, willReceiveProps) {\r\n const getKeys = (keys) => {\r\n if (props.multiple) {\r\n return [...keys];\r\n }\r\n if (keys.length) {\r\n return [keys[0]];\r\n }\r\n return keys;\r\n };\r\n let selectedKeys = willReceiveProps ? undefined : getKeys(props.defaultSelectedKeys);\r\n if ('selectedKeys' in props) {\r\n selectedKeys = getKeys(props.selectedKeys);\r\n }\r\n return selectedKeys;\r\n }\r\n\r\n getRawExpandedKeys() {\r\n if (!this._rawExpandedKeys && ('expandedKeys' in this.props)) {\r\n this._rawExpandedKeys = [...this.state.expandedKeys];\r\n }\r\n }\r\n\r\n getOpenTransitionName() {\r\n const props = this.props;\r\n let transitionName = props.openTransitionName;\r\n const animationName = props.openAnimation;\r\n if (!transitionName && typeof animationName === 'string') {\r\n transitionName = `${props.prefixCls}-open-${animationName}`;\r\n }\r\n return transitionName;\r\n }\r\n\r\n getDragNodes(treeNode) {\r\n const dragNodesKeys = [];\r\n const tPArr = treeNode.props.pos.split('-');\r\n loopAllChildren(this.props.children, (item, index, pos, newKey) => {\r\n const pArr = pos.split('-');\r\n if (treeNode.props.pos === pos || tPArr.length < pArr.length && isInclude(tPArr, pArr)) {\r\n dragNodesKeys.push(newKey);\r\n }\r\n });\r\n return dragNodesKeys;\r\n }\r\n\r\n getExpandedKeys(treeNode, expand) {\r\n const key = treeNode.props.eventKey;\r\n const expandedKeys = this.state.expandedKeys;\r\n const expandedIndex = expandedKeys.indexOf(key);\r\n let exKeys;\r\n if (expandedIndex > -1 && !expand) {\r\n exKeys = [...expandedKeys];\r\n exKeys.splice(expandedIndex, 1);\r\n return exKeys;\r\n }\r\n if (expand && expandedKeys.indexOf(key) === -1) {\r\n return expandedKeys.concat([key]);\r\n }\r\n }\r\n\r\n filterTreeNode(treeNode) {\r\n const filterTreeNode = this.props.filterTreeNode;\r\n if (typeof filterTreeNode !== 'function' || treeNode.props.disabled) {\r\n return false;\r\n }\r\n return filterTreeNode.call(this, treeNode);\r\n }\r\n\r\n renderTreeNode(child, index, level = 0) {\r\n const pos = `${level}-${index}`;\r\n const key = child.key || pos;\r\n const state = this.state;\r\n const props = this.props;\r\n\r\n // prefer to child's own selectable property if passed\r\n let selectable = props.selectable;\r\n if (child.props.hasOwnProperty('selectable')) {\r\n selectable = child.props.selectable;\r\n }\r\n\r\n const cloneProps = {\r\n ref: `treeNode-${key}`,\r\n root: this,\r\n eventKey: key,\r\n pos,\r\n selectable,\r\n loadData: props.loadData,\r\n onMouseEnter: props.onMouseEnter,\r\n onMouseLeave: props.onMouseLeave,\r\n onRightClick: props.onRightClick,\r\n prefixCls: props.prefixCls,\r\n showLine: props.showLine,\r\n showIcon: props.showIcon,\r\n draggable: props.draggable,\r\n dragOver: state.dragOverNodeKey === key && this.dropPosition === 0,\r\n dragOverGapTop: state.dragOverNodeKey === key && this.dropPosition === -1,\r\n dragOverGapBottom: state.dragOverNodeKey === key && this.dropPosition === 1,\r\n _dropTrigger: this._dropTrigger,\r\n expanded: state.expandedKeys.indexOf(key) !== -1,\r\n selected: state.selectedKeys.indexOf(key) !== -1,\r\n openTransitionName: this.getOpenTransitionName(),\r\n openAnimation: props.openAnimation,\r\n filterTreeNode: this.filterTreeNode.bind(this),\r\n openIcon: props.openIcon,\r\n closeIcon: props.closeIcon\r\n };\r\n if (props.checkable) {\r\n cloneProps.checkable = props.checkable;\r\n if (props.checkStrictly) {\r\n if (state.checkedKeys) {\r\n cloneProps.checked = state.checkedKeys.indexOf(key) !== -1 || false;\r\n }\r\n if (props.checkedKeys && props.checkedKeys.halfChecked) {\r\n cloneProps.halfChecked = props.checkedKeys.halfChecked.indexOf(key) !== -1 || false;\r\n } else {\r\n cloneProps.halfChecked = false;\r\n }\r\n } else {\r\n if (this.checkedKeys) {\r\n cloneProps.checked = this.checkedKeys.indexOf(key) !== -1 || false;\r\n }\r\n cloneProps.halfChecked = this.halfCheckedKeys.indexOf(key) !== -1;\r\n }\r\n }\r\n if (this.treeNodesStates && this.treeNodesStates[pos]) {\r\n Object.assign(cloneProps, this.treeNodesStates[pos].siblingPosition);\r\n }\r\n return React.cloneElement(child, cloneProps);\r\n }\r\n\r\n render() {\r\n const props = this.props;\r\n let showLineCls = \"\";\r\n if (props.showLine) {\r\n showLineCls = `${props.prefixCls}-show-line`;\r\n }\r\n const domProps = {\r\n className: classNames(props.className, props.prefixCls, showLineCls),\r\n role: 'tree-node',\r\n };\r\n\r\n if (props.focusable) {\r\n domProps.tabIndex = '0';\r\n domProps.onKeyDown = this.onKeyDown;\r\n }\r\n const getTreeNodesStates = () => {\r\n this.treeNodesStates = {};\r\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\r\n this.treeNodesStates[pos] = {\r\n siblingPosition,\r\n };\r\n });\r\n };\r\n if (props.showLine && !props.checkable) {\r\n getTreeNodesStates();\r\n }\r\n if (props.checkable && (this.checkedKeysChange || props.loadData)) {\r\n if (props.checkStrictly) {\r\n getTreeNodesStates();\r\n } else if (props._treeNodesStates) {\r\n this.treeNodesStates = props._treeNodesStates.treeNodesStates;\r\n this.halfCheckedKeys = props._treeNodesStates.halfCheckedKeys;\r\n this.checkedKeys = props._treeNodesStates.checkedKeys;\r\n } else {\r\n const checkedKeys = this.state.checkedKeys;\r\n let checkKeys;\r\n if (!props.loadData && this.checkKeys && this._checkedKeys &&\r\n arraysEqual(this._checkedKeys, checkedKeys)) {\r\n // if checkedKeys the same as _checkedKeys from onCheck, use _checkedKeys.\r\n checkKeys = this.checkKeys;\r\n } else {\r\n const checkedPositions = [];\r\n this.treeNodesStates = {};\r\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\r\n this.treeNodesStates[pos] = {\r\n node: item,\r\n key: keyOrPos,\r\n checked: false,\r\n halfChecked: false,\r\n siblingPosition,\r\n };\r\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\r\n this.treeNodesStates[pos].checked = true;\r\n checkedPositions.push(pos);\r\n }\r\n });\r\n // if the parent node's key exists, it all children node will be checked\r\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\r\n checkKeys = getCheck(this.treeNodesStates);\r\n }\r\n this.halfCheckedKeys = checkKeys.halfCheckedKeys;\r\n this.checkedKeys = checkKeys.checkedKeys;\r\n }\r\n }\r\n\r\n return (\r\n \r\n {React.Children.map(props.children, this.renderTreeNode, this)}\r\n \r\n );\r\n }\r\n}\r\n\r\nTree.propTypes = {\r\n prefixCls: PropTypes.string,\r\n children: PropTypes.any,\r\n showLine: PropTypes.bool,\r\n showIcon: PropTypes.bool,\r\n selectable: PropTypes.bool,\r\n multiple: PropTypes.bool,\r\n checkable: PropTypes.oneOfType([\r\n PropTypes.bool,\r\n PropTypes.node,\r\n ]),\r\n _treeNodesStates: PropTypes.object,\r\n checkStrictly: PropTypes.bool,\r\n draggable: PropTypes.bool,\r\n autoExpandParent: PropTypes.bool,\r\n defaultExpandAll: PropTypes.bool,\r\n defaultExpandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n defaultCheckedKeys: PropTypes.arrayOf(PropTypes.string),\r\n checkedKeys: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.string),\r\n PropTypes.object,\r\n ]),\r\n defaultSelectedKeys: PropTypes.arrayOf(PropTypes.string),\r\n selectedKeys: PropTypes.arrayOf(PropTypes.string),\r\n onExpand: PropTypes.func,\r\n onCheck: PropTypes.func,\r\n onSelect: PropTypes.func,\r\n loadData: PropTypes.func,\r\n onMouseEnter: PropTypes.func,\r\n onMouseLeave: PropTypes.func,\r\n onRightClick: PropTypes.func,\r\n onDragStart: PropTypes.func,\r\n onDragEnter: PropTypes.func,\r\n onDragOver: PropTypes.func,\r\n onDragLeave: PropTypes.func,\r\n onDrop: PropTypes.func,\r\n onDragEnd: PropTypes.func,\r\n filterTreeNode: PropTypes.func,\r\n openTransitionName: PropTypes.string,\r\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\r\n};\r\n\r\nTree.defaultProps = {\r\n prefixCls: 'rc-tree',\r\n showLine: false,\r\n showIcon: true,\r\n selectable: true,\r\n multiple: false,\r\n checkable: false,\r\n checkStrictly: false,\r\n draggable: false,\r\n autoExpandParent: true,\r\n defaultExpandAll: false,\r\n defaultExpandedKeys: [],\r\n defaultCheckedKeys: [],\r\n defaultSelectedKeys: [],\r\n onExpand: noop,\r\n onCheck: noop,\r\n onSelect: noop,\r\n onDragStart: noop,\r\n onDragEnter: noop,\r\n onDragOver: noop,\r\n onDragLeave: noop,\r\n onDrop: noop,\r\n onDragEnd: noop,\r\n};\r\n\r\nexport default Tree;\n\n\n// WEBPACK FOOTER //\n// ./src/Tree.js","/* eslint no-loop-func: 0*/\r\n\r\nimport React from 'react';\r\n\r\nexport function browser(navigator) {\r\n let tem;\r\n const ua = navigator.userAgent;\r\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n if (/trident/i.test(M[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n return `IE ${tem[1] || ''}`;\r\n }\r\n if (M[1] === 'Chrome') {\r\n tem = ua.match(/\\b(OPR|Edge)\\/(\\d+)/);\r\n if (tem) return tem.slice(1).join(' ').replace('OPR', 'Opera');\r\n }\r\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n tem = ua.match(/version\\/(\\d+)/i);\r\n if (tem) {\r\n M.splice(1, 1, tem[1]);\r\n }\r\n return M.join(' ');\r\n}\r\n\r\n// export function getOffset(el) {\r\n// const obj = el.getBoundingClientRect();\r\n// return {\r\n// left: obj.left + document.body.scrollLeft,\r\n// top: obj.top + document.body.scrollTop,\r\n// width: obj.width,\r\n// height: obj.height\r\n// };\r\n// }\r\n\r\n// // iscroll offset\r\n// offset = function (el) {\r\n// var left = -el.offsetLeft,\r\n// top = -el.offsetTop;\r\n\r\n// // jshint -W084\r\n// while (el = el.offsetParent) {\r\n// left -= el.offsetLeft;\r\n// top -= el.offsetTop;\r\n// }\r\n// // jshint +W084\r\n\r\n// return {\r\n// left: left,\r\n// top: top\r\n// };\r\n// }\r\n\r\n/* eslint-disable */\r\nexport function getOffset(ele) {\r\n let doc, win, docElem, rect;\r\n\r\n if (!ele.getClientRects().length) {\r\n return { top: 0, left: 0 };\r\n }\r\n\r\n rect = ele.getBoundingClientRect();\r\n\r\n if (rect.width || rect.height) {\r\n doc = ele.ownerDocument;\r\n win = doc.defaultView;\r\n docElem = doc.documentElement;\r\n\r\n return {\r\n top: rect.top + win.pageYOffset - docElem.clientTop,\r\n left: rect.left + win.pageXOffset - docElem.clientLeft\r\n };\r\n }\r\n\r\n return rect;\r\n}\r\n/* eslint-enable */\r\n\r\nfunction getChildrenlength(children) {\r\n let len = 1;\r\n if (Array.isArray(children)) {\r\n len = children.length;\r\n }\r\n return len;\r\n}\r\n\r\nfunction getSiblingPosition(index, len, siblingPosition) {\r\n if (len === 1) {\r\n siblingPosition.first = true;\r\n siblingPosition.last = true;\r\n } else {\r\n siblingPosition.first = index === 0;\r\n siblingPosition.last = index === len - 1;\r\n }\r\n return siblingPosition;\r\n}\r\n\r\nexport function loopAllChildren(childs, callback, parent) {\r\n const loop = (children, level, _parent) => {\r\n const len = getChildrenlength(children);\r\n React.Children.forEach(children, (item, index) => {\r\n const pos = `${level}-${index}`;\r\n if (item.props.children && item.type && item.type.isTreeNode) {\r\n loop(item.props.children, pos, { node: item, pos });\r\n }\r\n callback(item, index, pos, item.key || pos, getSiblingPosition(index, len, {}), _parent);\r\n });\r\n };\r\n loop(childs, 0, parent);\r\n}\r\n\r\nexport function isInclude(smallArray, bigArray) {\r\n return smallArray.every((ii, i) => {\r\n return ii === bigArray[i];\r\n });\r\n}\r\n// console.log(isInclude(['0', '1'], ['0', '10', '1']));\r\n\r\n\r\n// arr.length === 628, use time: ~20ms\r\nexport function filterParentPosition(arr) {\r\n const levelObj = {};\r\n arr.forEach((item) => {\r\n const posLen = item.split('-').length;\r\n if (!levelObj[posLen]) {\r\n levelObj[posLen] = [];\r\n }\r\n levelObj[posLen].push(item);\r\n });\r\n const levelArr = Object.keys(levelObj).sort();\r\n for (let i = 0; i < levelArr.length; i++) {\r\n if (levelArr[i + 1]) {\r\n levelObj[levelArr[i]].forEach(ii => {\r\n for (let j = i + 1; j < levelArr.length; j++) {\r\n levelObj[levelArr[j]].forEach((_i, index) => {\r\n if (isInclude(ii.split('-'), _i.split('-'))) {\r\n levelObj[levelArr[j]][index] = null;\r\n }\r\n });\r\n levelObj[levelArr[j]] = levelObj[levelArr[j]].filter(p => p);\r\n }\r\n });\r\n }\r\n }\r\n let nArr = [];\r\n levelArr.forEach(i => {\r\n nArr = nArr.concat(levelObj[i]);\r\n });\r\n return nArr;\r\n}\r\n// console.log(filterParentPosition(\r\n// ['0-2', '0-3-3', '0-10', '0-10-0', '0-0-1', '0-0', '0-1-1', '0-1']\r\n// ));\r\n\r\n\r\nfunction stripTail(str) {\r\n const arr = str.match(/(.+)(-[^-]+)$/);\r\n let st = '';\r\n if (arr && arr.length === 3) {\r\n st = arr[1];\r\n }\r\n return st;\r\n}\r\nfunction splitPosition(pos) {\r\n return pos.split('-');\r\n}\r\n\r\nexport function handleCheckState(obj, checkedPositionArr, checkIt) {\r\n // console.log(stripTail('0-101-000'));\r\n let objKeys = Object.keys(obj);\r\n // let s = Date.now();\r\n objKeys.forEach((i, index) => {\r\n const iArr = splitPosition(i);\r\n let saved = false;\r\n checkedPositionArr.forEach((_pos) => {\r\n // 设置子节点,全选或全不选\r\n const _posArr = splitPosition(_pos);\r\n if (iArr.length > _posArr.length && isInclude(_posArr, iArr)) {\r\n obj[i].halfChecked = false;\r\n obj[i].checked = checkIt;\r\n objKeys[index] = null;\r\n }\r\n if (iArr[0] === _posArr[0] && iArr[1] === _posArr[1]) {\r\n // 如果\r\n saved = true;\r\n }\r\n });\r\n if (!saved) {\r\n objKeys[index] = null;\r\n }\r\n });\r\n // TODO: 循环 2470000 次耗时约 1400 ms。 性能瓶颈!\r\n // console.log(Date.now()-s, checkedPositionArr.length * objKeys.length);\r\n objKeys = objKeys.filter(i => i); // filter non null;\r\n\r\n for (let pIndex = 0; pIndex < checkedPositionArr.length; pIndex++) {\r\n // 循环设置父节点的 选中 或 半选状态\r\n const loop = (__pos) => {\r\n const _posLen = splitPosition(__pos).length;\r\n if (_posLen <= 2) { // e.g. '0-0', '0-1'\r\n return;\r\n }\r\n let sibling = 0;\r\n let siblingChecked = 0;\r\n const parentPosition = stripTail(__pos);\r\n objKeys.forEach((i /* , index*/) => {\r\n const iArr = splitPosition(i);\r\n if (iArr.length === _posLen && isInclude(splitPosition(parentPosition), iArr)) {\r\n sibling++;\r\n if (obj[i].checked) {\r\n siblingChecked++;\r\n const _i = checkedPositionArr.indexOf(i);\r\n if (_i > -1) {\r\n checkedPositionArr.splice(_i, 1);\r\n if (_i <= pIndex) {\r\n pIndex--;\r\n }\r\n }\r\n } else if (obj[i].halfChecked) {\r\n siblingChecked += 0.5;\r\n }\r\n // objKeys[index] = null;\r\n }\r\n });\r\n // objKeys = objKeys.filter(i => i); // filter non null;\r\n const parent = obj[parentPosition];\r\n // sibling 不会等于0\r\n // 全不选 - 全选 - 半选\r\n if (siblingChecked === 0) {\r\n parent.checked = false;\r\n parent.halfChecked = false;\r\n } else if (siblingChecked === sibling) {\r\n parent.checked = true;\r\n parent.halfChecked = false;\r\n } else {\r\n parent.halfChecked = true;\r\n parent.checked = false;\r\n }\r\n loop(parentPosition);\r\n };\r\n loop(checkedPositionArr[pIndex], pIndex);\r\n }\r\n // console.log(Date.now()-s, objKeys.length, checkIt);\r\n}\r\n\r\nexport function getCheck(treeNodesStates) {\r\n const halfCheckedKeys = [];\r\n const checkedKeys = [];\r\n const checkedNodes = [];\r\n const checkedNodesPositions = [];\r\n Object.keys(treeNodesStates).forEach((item) => {\r\n const itemObj = treeNodesStates[item];\r\n if (itemObj.checked) {\r\n checkedKeys.push(itemObj.key);\r\n checkedNodes.push(itemObj.node);\r\n checkedNodesPositions.push({ node: itemObj.node, pos: item });\r\n } else if (itemObj.halfChecked) {\r\n halfCheckedKeys.push(itemObj.key);\r\n }\r\n });\r\n return {\r\n halfCheckedKeys, checkedKeys, checkedNodes, checkedNodesPositions, treeNodesStates,\r\n };\r\n}\r\n\r\nexport function getStrictlyValue(checkedKeys, halfChecked) {\r\n if (halfChecked) {\r\n return { checked: checkedKeys, halfChecked };\r\n }\r\n return checkedKeys;\r\n}\r\n\r\nexport function arraysEqual(a, b) {\r\n if (a === b) return true;\r\n if (a === null || typeof a === 'undefined' || b === null || typeof b === 'undefined') {\r\n return false;\r\n }\r\n if (a.length !== b.length) return false;\r\n\r\n // If you don't care about the order of the elements inside\r\n // the array, you should sort both arrays here.\r\n\r\n for (let i = 0; i < a.length; ++i) {\r\n if (a[i] !== b[i]) return false;\r\n }\r\n return true;\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/util.js","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport Animate from 'bee-animate';\r\nimport {\r\n browser\r\n} from './util';\r\nimport PropTypes from 'prop-types';\r\n\r\nconst browserUa = typeof window !== 'undefined' ? browser(window.navigator) : '';\r\nconst ieOrEdge = /.*(IE|Edge).+/.test(browserUa);\r\n// const uaArray = browserUa.split(' ');\r\n// const gtIE8 = uaArray.length !== 2 || uaArray[0].indexOf('IE') === -1 || Number(uaArray[1]) > 8;\r\n\r\nconst defaultTitle = '---';\r\n\r\nclass TreeNode extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n [\r\n 'onExpand',\r\n 'onCheck',\r\n 'onContextMenu',\r\n 'onMouseEnter',\r\n 'onMouseLeave',\r\n 'onDragStart',\r\n 'onDragEnter',\r\n 'onDragOver',\r\n 'onDragLeave',\r\n 'onDrop',\r\n 'onDragEnd',\r\n ].forEach((m) => {\r\n this[m] = this[m].bind(this);\r\n });\r\n this.state = {\r\n dataLoading: false,\r\n dragNodeHighlight: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n if (!this.props.root._treeNodeInstances) {\r\n this.props.root._treeNodeInstances = [];\r\n }\r\n this.props.root._treeNodeInstances.push(this);\r\n }\r\n // shouldComponentUpdate(nextProps) {\r\n // if (!nextProps.expanded) {\r\n // return false;\r\n // }\r\n // return true;\r\n // }\r\n\r\n onCheck() {\r\n this.props.root.onCheck(this);\r\n }\r\n\r\n onSelect() {\r\n this.props.root.onSelect(this);\r\n }\r\n\r\n onMouseEnter(e) {\r\n e.preventDefault();\r\n this.props.root.onMouseEnter(e, this);\r\n }\r\n\r\n onMouseLeave(e) {\r\n e.preventDefault();\r\n this.props.root.onMouseLeave(e, this);\r\n }\r\n\r\n onContextMenu(e) {\r\n e.preventDefault();\r\n this.props.root.onContextMenu(e, this);\r\n }\r\n\r\n onDragStart(e) {\r\n // console.log('dragstart', this.props.eventKey, e);\r\n // e.preventDefault();\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: true,\r\n });\r\n this.props.root.onDragStart(e, this);\r\n try {\r\n // ie throw error\r\n // firefox-need-it\r\n e.dataTransfer.setData('text/plain', '');\r\n } finally {\r\n // empty\r\n }\r\n }\r\n\r\n onDragEnter(e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.props.root.onDragEnter(e, this);\r\n }\r\n\r\n onDragOver(e) {\r\n // todo disabled\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.props.root.onDragOver(e, this);\r\n return false;\r\n }\r\n\r\n onDragLeave(e) {\r\n e.stopPropagation();\r\n this.props.root.onDragLeave(e, this);\r\n }\r\n\r\n onDrop(e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: false,\r\n });\r\n this.props.root.onDrop(e, this);\r\n }\r\n\r\n onDragEnd(e) {\r\n e.stopPropagation();\r\n this.setState({\r\n dragNodeHighlight: false,\r\n });\r\n this.props.root.onDragEnd(e, this);\r\n }\r\n\r\n onExpand() {\r\n const callbackPromise = this.props.root.onExpand(this);\r\n if (callbackPromise && typeof callbackPromise === 'object') {\r\n const setLoading = (dataLoading) => {\r\n this.setState({\r\n dataLoading\r\n });\r\n };\r\n setLoading(true);\r\n callbackPromise.then(() => {\r\n setLoading(false);\r\n }, () => {\r\n setLoading(false);\r\n });\r\n }\r\n }\r\n\r\n // keyboard event support\r\n onKeyDown(e) {\r\n e.preventDefault();\r\n }\r\n\r\n renderSwitcher(props, expandedState) {\r\n let stateIcon;\r\n const prefixCls = props.prefixCls;\r\n const switcherCls = {\r\n [`${prefixCls}-switcher`]: true,\r\n };\r\n if (!props.showLine) {\r\n switcherCls[`${prefixCls}-noline_${expandedState}`] = true;\r\n } else if (props.pos === '0-0') {\r\n switcherCls[`${prefixCls}-roots_${expandedState}`] = true;\r\n } else {\r\n switcherCls[`${prefixCls}-center_${expandedState}`] = !props.last;\r\n switcherCls[`${prefixCls}-bottom_${expandedState}`] = props.last;\r\n }\r\n\r\n if (expandedState === 'open' && props.openIcon) {\r\n stateIcon = props.openIcon;\r\n switcherCls['icon-none'] = true;\r\n }\r\n if (expandedState === 'close' && props.closeIcon) {\r\n stateIcon = props.closeIcon;\r\n switcherCls['icon-none'] = true;\r\n }\r\n //switcherCls[stateIcon] = stateIcon;\r\n\r\n if (props.disabled) {\r\n switcherCls[`${prefixCls}-switcher-disabled`] = true;\r\n return {stateIcon} ;\r\n }\r\n return {stateIcon} ;\r\n }\r\n\r\n renderCheckbox(props) {\r\n const prefixCls = props.prefixCls;\r\n const checkboxCls = {\r\n [`${prefixCls}-checkbox`]: true,\r\n };\r\n if (props.checked) {\r\n checkboxCls[`${prefixCls}-checkbox-checked`] = true;\r\n } else if (props.halfChecked) {\r\n checkboxCls[`${prefixCls}-checkbox-indeterminate`] = true;\r\n }\r\n let customEle = null;\r\n if (typeof props.checkable !== 'boolean') {\r\n customEle = props.checkable;\r\n }\r\n if (props.disabled || props.disableCheckbox) {\r\n checkboxCls[`${prefixCls}-checkbox-disabled`] = true;\r\n return {customEle} ;\r\n }\r\n return (\r\n {customEle} );\r\n }\r\n\r\n renderChildren(props) {\r\n const renderFirst = this.renderFirst;\r\n this.renderFirst = 1;\r\n let transitionAppear = true;\r\n if (!renderFirst && props.expanded) {\r\n transitionAppear = false;\r\n }\r\n const children = props.children;\r\n let newChildren = children;\r\n if (children &&\r\n (children.type === TreeNode ||\r\n Array.isArray(children) &&\r\n children.every((item) => {\r\n return item.type === TreeNode;\r\n }))) {\r\n const cls = {\r\n [`${props.prefixCls}-child-tree`]: true,\r\n [`${props.prefixCls}-child-tree-open`]: props.expanded,\r\n };\r\n if (props.showLine) {\r\n cls[`${props.prefixCls}-line`] = !props.last;\r\n }\r\n const animProps = {};\r\n if (props.openTransitionName) {\r\n animProps.transitionName = props.openTransitionName;\r\n } else if (typeof props.openAnimation === 'object') {\r\n animProps.animation = Object.assign({}, props.openAnimation);\r\n if (!transitionAppear) {\r\n delete animProps.animation.appear;\r\n }\r\n }\r\n newChildren = (\r\n \r\n {!props.expanded ? null : \r\n {React.Children.map(children, (item, index) => {\r\n return props.root.renderTreeNode(item, index, props.pos);\r\n }, props.root)}\r\n }\r\n \r\n );\r\n }\r\n return newChildren;\r\n }\r\n\r\n render() {\r\n const props = this.props;\r\n const prefixCls = props.prefixCls;\r\n const expandedState = props.expanded ? 'open' : 'close';\r\n let iconState = expandedState;\r\n\r\n let canRenderSwitcher = true;\r\n const content = props.title;\r\n let newChildren = this.renderChildren(props);\r\n let openIconCls = false,\r\n closeIconCls = false;\r\n\r\n //以下变量控制是否鼠标单机双击方法中的变量\r\n let timer = 0;\r\n let delay = 500;\r\n let prevent = false;\r\n\r\n if (!newChildren || newChildren === props.children) {\r\n // content = newChildren;\r\n newChildren = null;\r\n if (!props.loadData || props.isLeaf) {\r\n canRenderSwitcher = false;\r\n iconState = 'docu';\r\n }\r\n }\r\n // For performance, does't render children into dom when `!props.expanded` (move to Animate)\r\n // if (!props.expanded) {\r\n // newChildren = null;\r\n // }\r\n\r\n const iconEleCls = {\r\n [`${prefixCls}-iconEle`]: true,\r\n [`${prefixCls}-icon_loading`]: this.state.dataLoading,\r\n [`${prefixCls}-icon__${iconState}`]: true\r\n };\r\n const selectHandle = () => {\r\n const icon = (props.showIcon || props.loadData && this.state.dataLoading) ?\r\n : null;\r\n const title = {content} ;\r\n const wrap = `${prefixCls}-node-content-wrapper`;\r\n const domProps = {\r\n className: `${wrap} ${wrap}-${iconState === expandedState ? iconState : 'normal'}`,\r\n };\r\n if (!props.disabled) {\r\n if (props.selected || !props._dropTrigger && this.state.dragNodeHighlight) {\r\n domProps.className += ` ${prefixCls}-node-selected`;\r\n }\r\n domProps.onClick = (e) => {\r\n var _this = this;\r\n e.preventDefault();\r\n if (props.selectable) {\r\n _this.onSelect();\r\n }\r\n\r\n // not fire check event\r\n // if (props.checkable) {\r\n // this.onCheck();\r\n // }\r\n };\r\n\r\n if (props.onRightClick) {\r\n domProps.onContextMenu = this.onContextMenu;\r\n }\r\n if (props.onMouseEnter) {\r\n domProps.onMouseEnter = this.onMouseEnter;\r\n }\r\n if (props.onMouseLeave) {\r\n domProps.onMouseLeave = this.onMouseLeave;\r\n }\r\n\r\n if (props.draggable) {\r\n domProps.className += ' draggable';\r\n if (ieOrEdge) {\r\n // ie bug!\r\n domProps.href = '#';\r\n }\r\n domProps.draggable = true;\r\n domProps['aria-grabbed'] = true;\r\n domProps.onDragStart = this.onDragStart;\r\n }\r\n }\r\n return (\r\n \r\n {icon}{title}\r\n \r\n );\r\n };\r\n\r\n const liProps = {};\r\n if (props.draggable) {\r\n liProps.onDragEnter = this.onDragEnter;\r\n liProps.onDragOver = this.onDragOver;\r\n liProps.onDragLeave = this.onDragLeave;\r\n liProps.onDrop = this.onDrop;\r\n liProps.onDragEnd = this.onDragEnd;\r\n }\r\n\r\n let disabledCls = '';\r\n let dragOverCls = '';\r\n if (props.disabled) {\r\n disabledCls = `${prefixCls}-treenode-disabled`;\r\n } else if (props.dragOver) {\r\n dragOverCls = 'drag-over';\r\n } else if (props.dragOverGapTop) {\r\n dragOverCls = 'drag-over-gap-top';\r\n } else if (props.dragOverGapBottom) {\r\n dragOverCls = 'drag-over-gap-bottom';\r\n }\r\n\r\n const filterCls = props.filterTreeNode(this) ? 'filter-node' : '';\r\n\r\n const noopSwitcher = () => {\r\n const cls = {\r\n [`${prefixCls}-switcher`]: true,\r\n [`${prefixCls}-switcher-noop`]: true,\r\n };\r\n if (props.showLine) {\r\n console.log('line---------');\r\n cls[`${prefixCls}-center_docu`] = !props.last;\r\n cls[`${prefixCls}-bottom_docu`] = props.last;\r\n } else {\r\n cls[`${prefixCls}-noline_docu`] = true;\r\n }\r\n return ;\r\n };\r\n\r\n return (\r\n \r\n {canRenderSwitcher ? this.renderSwitcher(props, expandedState) : noopSwitcher()}\r\n {props.checkable ? this.renderCheckbox(props) : null}\r\n {selectHandle()}\r\n {newChildren}\r\n \r\n );\r\n }\r\n}\r\n\r\nTreeNode.isTreeNode = 1;\r\n\r\nTreeNode.propTypes = {\r\n prefixCls: PropTypes.string,\r\n disabled: PropTypes.bool,\r\n disableCheckbox: PropTypes.bool,\r\n expanded: PropTypes.bool,\r\n isLeaf: PropTypes.bool,\r\n root: PropTypes.object,\r\n onSelect: PropTypes.func,\r\n openIcon: PropTypes.element,\r\n closeIcon: PropTypes.element\r\n};\r\n\r\nTreeNode.defaultProps = {\r\n title: defaultTitle,\r\n};\r\n\r\nexport default TreeNode;\n\n\n// WEBPACK FOOTER //\n// ./src/TreeNode.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Animate = require('./Animate');\n\nvar _Animate2 = _interopRequireDefault(_Animate);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Animate2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/index.js\n// module id = 110\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ChildrenUtils = require('./ChildrenUtils');\n\nvar _AnimateChild = require('./AnimateChild');\n\nvar _AnimateChild2 = _interopRequireDefault(_AnimateChild);\n\nvar _util = require('./util');\n\nvar _util2 = _interopRequireDefault(_util);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar defaultKey = 'u_animate_' + Date.now();\n\n\nfunction getChildrenFromProps(props) {\n var children = props.children;\n if (_react2[\"default\"].isValidElement(children)) {\n if (!children.key) {\n return _react2[\"default\"].cloneElement(children, {\n key: defaultKey\n });\n }\n }\n return children;\n}\n\nfunction noop() {}\n\nvar propTypes = {\n component: _propTypes2[\"default\"].any,\n animation: _propTypes2[\"default\"].object,\n transitionName: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].string, _propTypes2[\"default\"].object]),\n transitionEnter: _propTypes2[\"default\"].bool,\n transitionAppear: _propTypes2[\"default\"].bool,\n exclusive: _propTypes2[\"default\"].bool,\n transitionLeave: _propTypes2[\"default\"].bool,\n onEnd: _propTypes2[\"default\"].func,\n onEnter: _propTypes2[\"default\"].func,\n onLeave: _propTypes2[\"default\"].func,\n onAppear: _propTypes2[\"default\"].func,\n showProp: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n animation: {},\n component: 'span',\n transitionEnter: true,\n transitionLeave: true,\n transitionAppear: false,\n onEnd: noop,\n onEnter: noop,\n onLeave: noop,\n onAppear: noop\n};\n\nvar Animate = function (_Component) {\n _inherits(Animate, _Component);\n\n function Animate(props) {\n _classCallCheck(this, Animate);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.currentlyAnimatingKeys = {};\n _this.keysToEnter = [];\n _this.keysToLeave = [];\n _this.state = {\n children: (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(_this.props))\n };\n\n _this.performEnter = _this.performEnter.bind(_this);\n _this.performAppear = _this.performAppear.bind(_this);\n _this.handleDoneAdding = _this.handleDoneAdding.bind(_this);\n _this.performLeave = _this.performLeave.bind(_this);\n\n _this.performLeave = _this.performLeave.bind(_this);\n _this.handleDoneLeaving = _this.handleDoneLeaving.bind(_this);\n _this.isValidChildByKey = _this.isValidChildByKey.bind(_this);\n _this.stop = _this.stop.bind(_this);\n return _this;\n }\n\n Animate.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this.mounted = true;\n var showProp = this.props.showProp;\n var children = this.state.children;\n if (showProp) {\n children = children.filter(function (child) {\n return !!child.props[showProp];\n });\n }\n children.forEach(function (child) {\n if (child) {\n _this2.performAppear(child.key);\n }\n });\n };\n\n Animate.prototype.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n Animate.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this3 = this;\n\n this.nextProps = nextProps;\n var nextChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(nextProps));\n var props = this.props;\n // exclusive needs immediate response\n if (props.exclusive) {\n Object.keys(this.currentlyAnimatingKeys).forEach(function (key) {\n _this3.stop(key);\n });\n }\n var showProp = props.showProp;\n var currentlyAnimatingKeys = this.currentlyAnimatingKeys;\n // last props children if exclusive\n var currentChildren = props.exclusive ? (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props)) : this.state.children;\n // in case destroy in showProp mode\n var newChildren = [];\n if (showProp) {\n currentChildren.forEach(function (currentChild) {\n var nextChild = currentChild && (0, _ChildrenUtils.findChildInChildrenByKey)(nextChildren, currentChild.key);\n var newChild = void 0;\n if ((!nextChild || !nextChild.props[showProp]) && currentChild.props[showProp]) {\n newChild = _react2[\"default\"].cloneElement(nextChild || currentChild, _defineProperty({}, showProp, true));\n } else {\n newChild = nextChild;\n }\n if (newChild) {\n newChildren.push(newChild);\n }\n });\n nextChildren.forEach(function (nextChild) {\n if (!nextChild || !(0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, nextChild.key)) {\n newChildren.push(nextChild);\n }\n });\n } else {\n newChildren = (0, _ChildrenUtils.mergeChildren)(currentChildren, nextChildren);\n }\n\n // need render to avoid update\n this.setState({\n children: newChildren\n });\n\n nextChildren.forEach(function (child) {\n var key = child && child.key;\n if (child && currentlyAnimatingKeys[key]) {\n return;\n }\n var hasPrev = child && (0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, key);\n if (showProp) {\n var showInNext = child.props[showProp];\n if (hasPrev) {\n var showInNow = (0, _ChildrenUtils.findShownChildInChildrenByKey)(currentChildren, key, showProp);\n if (!showInNow && showInNext) {\n _this3.keysToEnter.push(key);\n }\n } else if (showInNext) {\n _this3.keysToEnter.push(key);\n }\n } else if (!hasPrev) {\n _this3.keysToEnter.push(key);\n }\n });\n\n currentChildren.forEach(function (child) {\n var key = child && child.key;\n if (child && currentlyAnimatingKeys[key]) {\n return;\n }\n var hasNext = child && (0, _ChildrenUtils.findChildInChildrenByKey)(nextChildren, key);\n if (showProp) {\n var showInNow = child.props[showProp];\n if (hasNext) {\n var showInNext = (0, _ChildrenUtils.findShownChildInChildrenByKey)(nextChildren, key, showProp);\n if (!showInNext && showInNow) {\n _this3.keysToLeave.push(key);\n }\n } else if (showInNow) {\n _this3.keysToLeave.push(key);\n }\n } else if (!hasNext) {\n _this3.keysToLeave.push(key);\n }\n });\n };\n\n Animate.prototype.componentDidUpdate = function componentDidUpdate() {\n var keysToEnter = this.keysToEnter;\n this.keysToEnter = [];\n keysToEnter.forEach(this.performEnter);\n var keysToLeave = this.keysToLeave;\n this.keysToLeave = [];\n keysToLeave.forEach(this.performLeave);\n };\n\n Animate.prototype.performEnter = function performEnter(key) {\n // may already remove by exclusive\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillEnter(this.handleDoneAdding.bind(this, key, 'enter'));\n }\n };\n\n Animate.prototype.performAppear = function performAppear(key) {\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillAppear(this.handleDoneAdding.bind(this, key, 'appear'));\n }\n };\n\n Animate.prototype.handleDoneAdding = function handleDoneAdding(key, type) {\n var props = this.props;\n delete this.currentlyAnimatingKeys[key];\n // if update on exclusive mode, skip check\n if (props.exclusive && props !== this.nextProps) {\n return;\n }\n var currentChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props));\n if (!this.isValidChildByKey(currentChildren, key)) {\n // exclusive will not need this\n this.performLeave(key);\n } else {\n if (type === 'appear') {\n if (_util2[\"default\"].allowAppearCallback(props)) {\n props.onAppear(key);\n props.onEnd(key, true);\n }\n } else {\n if (_util2[\"default\"].allowEnterCallback(props)) {\n props.onEnter(key);\n props.onEnd(key, true);\n }\n }\n }\n };\n\n Animate.prototype.performLeave = function performLeave(key) {\n // may already remove by exclusive\n if (this.refs[key]) {\n this.currentlyAnimatingKeys[key] = true;\n this.refs[key].componentWillLeave(this.handleDoneLeaving.bind(this, key));\n }\n };\n\n Animate.prototype.handleDoneLeaving = function handleDoneLeaving(key) {\n var props = this.props;\n delete this.currentlyAnimatingKeys[key];\n // if update on exclusive mode, skip check\n if (props.exclusive && props !== this.nextProps) {\n return;\n }\n var currentChildren = (0, _ChildrenUtils.toArrayChildren)(getChildrenFromProps(props));\n // in case state change is too fast\n if (this.isValidChildByKey(currentChildren, key)) {\n this.performEnter(key);\n } else {\n var end = function end() {\n if (_util2[\"default\"].allowLeaveCallback(props)) {\n props.onLeave(key);\n props.onEnd(key, false);\n }\n };\n /* eslint react/no-is-mounted:0 */\n if (this.mounted && !(0, _ChildrenUtils.isSameChildren)(this.state.children, currentChildren, props.showProp)) {\n this.setState({\n children: currentChildren\n }, end);\n } else {\n end();\n }\n }\n };\n\n Animate.prototype.isValidChildByKey = function isValidChildByKey(currentChildren, key) {\n var showProp = this.props.showProp;\n if (showProp) {\n return (0, _ChildrenUtils.findShownChildInChildrenByKey)(currentChildren, key, showProp);\n }\n return (0, _ChildrenUtils.findChildInChildrenByKey)(currentChildren, key);\n };\n\n Animate.prototype.stop = function stop(key) {\n delete this.currentlyAnimatingKeys[key];\n var component = this.refs[key];\n if (component) {\n component.stop();\n }\n };\n\n Animate.prototype.render = function render() {\n var props = this.props;\n this.nextProps = props;\n var stateChildren = this.state.children;\n var children = null;\n if (stateChildren) {\n children = stateChildren.map(function (child) {\n if (child === null || child === undefined) {\n return child;\n }\n if (!child.key) {\n throw new Error('must set key for children');\n }\n return _react2[\"default\"].createElement(\n _AnimateChild2[\"default\"],\n {\n key: child.key,\n ref: child.key,\n animation: props.animation,\n transitionName: props.transitionName,\n transitionEnter: props.transitionEnter,\n transitionAppear: props.transitionAppear,\n transitionLeave: props.transitionLeave\n },\n child\n );\n });\n }\n var Component = props.component;\n if (Component) {\n var passedProps = props;\n if (typeof Component === 'string') {\n passedProps = {\n className: props.className,\n style: props.style\n };\n }\n return _react2[\"default\"].createElement(\n Component,\n passedProps,\n children\n );\n }\n return children[0] || null;\n };\n\n return Animate;\n}(_react.Component);\n\n;\nAnimate.defaultProps = defaultProps;\nAnimate.propTypes = Animate.propTypes;\n\nexports[\"default\"] = Animate;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/Animate.js\n// module id = 111\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.toArrayChildren = toArrayChildren;\nexports.findChildInChildrenByKey = findChildInChildrenByKey;\nexports.findShownChildInChildrenByKey = findShownChildInChildrenByKey;\nexports.findHiddenChildInChildrenByKey = findHiddenChildInChildrenByKey;\nexports.isSameChildren = isSameChildren;\nexports.mergeChildren = mergeChildren;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction toArrayChildren(children) {\n var ret = [];\n _react2[\"default\"].Children.forEach(children, function (child) {\n ret.push(child);\n });\n return ret;\n}\n\nfunction findChildInChildrenByKey(children, key) {\n var ret = null;\n if (children) {\n children.forEach(function (child) {\n if (ret) {\n return;\n }\n if (child && child.key === key) {\n ret = child;\n }\n });\n }\n return ret;\n}\n\nfunction findShownChildInChildrenByKey(children, key, showProp) {\n var ret = null;\n if (children) {\n children.forEach(function (child) {\n if (child && child.key === key && child.props[showProp]) {\n if (ret) {\n throw new Error('two child with same key for children');\n }\n ret = child;\n }\n });\n }\n return ret;\n}\n\nfunction findHiddenChildInChildrenByKey(children, key, showProp) {\n var found = 0;\n if (children) {\n children.forEach(function (child) {\n if (found) {\n return;\n }\n found = child && child.key === key && !child.props[showProp];\n });\n }\n return found;\n}\n\nfunction isSameChildren(c1, c2, showProp) {\n var same = c1.length === c2.length;\n if (same) {\n c1.forEach(function (child, index) {\n var child2 = c2[index];\n if (child && child2) {\n if (child && !child2 || !child && child2) {\n same = false;\n } else if (child.key !== child2.key) {\n same = false;\n } else if (showProp && child.props[showProp] !== child2.props[showProp]) {\n same = false;\n }\n }\n });\n }\n return same;\n}\n\nfunction mergeChildren(prev, next) {\n var ret = [];\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextChildrenPending = {};\n var pendingChildren = [];\n prev.forEach(function (child) {\n if (child && findChildInChildrenByKey(next, child.key)) {\n if (pendingChildren.length) {\n nextChildrenPending[child.key] = pendingChildren;\n pendingChildren = [];\n }\n } else {\n pendingChildren.push(child);\n }\n });\n\n next.forEach(function (child) {\n if (child && nextChildrenPending.hasOwnProperty(child.key)) {\n ret = ret.concat(nextChildrenPending[child.key]);\n }\n ret.push(child);\n });\n\n ret = ret.concat(pendingChildren);\n\n return ret;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/ChildrenUtils.js\n// module id = 112\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _tinperBeeCore = require('tinper-bee-core');\n\nvar _util = require('./util');\n\nvar _util2 = _interopRequireDefault(_util);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar transitionMap = {\n enter: 'transitionEnter',\n appear: 'transitionAppear',\n leave: 'transitionLeave'\n};\n\nvar propTypes = {\n children: _propTypes2[\"default\"].any\n};\n\nvar AnimateChild = function (_Component) {\n _inherits(AnimateChild, _Component);\n\n function AnimateChild(props) {\n _classCallCheck(this, AnimateChild);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.transition = _this.transition.bind(_this);\n _this.stop = _this.stop.bind(_this);\n return _this;\n }\n\n AnimateChild.prototype.componentWillUnmount = function componentWillUnmount() {\n this.stop();\n };\n\n AnimateChild.prototype.componentWillEnter = function componentWillEnter(done) {\n if (_util2[\"default\"].isEnterSupported(this.props)) {\n this.transition('enter', done);\n } else {\n done();\n }\n };\n\n AnimateChild.prototype.componentWillAppear = function componentWillAppear(done) {\n if (_util2[\"default\"].isAppearSupported(this.props)) {\n this.transition('appear', done);\n } else {\n done();\n }\n };\n\n AnimateChild.prototype.componentWillLeave = function componentWillLeave(done) {\n if (_util2[\"default\"].isLeaveSupported(this.props)) {\n this.transition('leave', done);\n } else {\n // always sync, do not interupt with react component life cycle\n // update hidden -> animate hidden ->\n // didUpdate -> animate leave -> unmount (if animate is none)\n done();\n }\n };\n\n AnimateChild.prototype.transition = function transition(animationType, finishCallback) {\n var _this2 = this;\n\n var node = _reactDom2[\"default\"].findDOMNode(this);\n var props = this.props;\n var transitionName = props.transitionName;\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\n this.stop();\n var end = function end() {\n _this2.stopper = null;\n finishCallback();\n };\n if ((_tinperBeeCore.cssAnimation.isCssAnimationSupported || !props.animation[animationType]) && transitionName && props[transitionMap[animationType]]) {\n var name = nameIsObj ? transitionName[animationType] : transitionName + '-' + animationType;\n var activeName = name + '-active';\n if (nameIsObj && transitionName[animationType + 'Active']) {\n activeName = transitionName[animationType + 'Active'];\n }\n this.stopper = (0, _tinperBeeCore.cssAnimation)(node, {\n name: name,\n active: activeName\n }, end);\n } else {\n this.stopper = props.animation[animationType](node, end);\n }\n };\n\n AnimateChild.prototype.stop = function stop() {\n var stopper = this.stopper;\n if (stopper) {\n this.stopper = null;\n stopper.stop();\n }\n };\n\n AnimateChild.prototype.render = function render() {\n return this.props.children;\n };\n\n return AnimateChild;\n}(_react.Component);\n\n;\n\nAnimateChild.propTypes = propTypes;\n\nexports[\"default\"] = AnimateChild;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/AnimateChild.js\n// module id = 113\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar util = {\n isAppearSupported: function isAppearSupported(props) {\n return props.transitionName && props.transitionAppear || props.animation.appear;\n },\n isEnterSupported: function isEnterSupported(props) {\n return props.transitionName && props.transitionEnter || props.animation.enter;\n },\n isLeaveSupported: function isLeaveSupported(props) {\n return props.transitionName && props.transitionLeave || props.animation.leave;\n },\n allowAppearCallback: function allowAppearCallback(props) {\n return props.transitionAppear || props.animation.appear;\n },\n allowEnterCallback: function allowEnterCallback(props) {\n return props.transitionEnter || props.animation.enter;\n },\n allowLeaveCallback: function allowLeaveCallback(props) {\n return props.transitionLeave || props.animation.leave;\n }\n};\nexports[\"default\"] = util;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-animate@1.0.0@bee-animate/build/util.js\n// module id = 114\n// module chunks = 0","import { cssAnimation } from 'tinper-bee-core';\r\n\r\nfunction animate(node, show, done) {\r\n let height;\r\n return cssAnimation(node, 'u-motion-collapse', {\r\n start() {\r\n if (!show) {\r\n node.style.height = `${node.offsetHeight}px`;\r\n } else {\r\n height = node.offsetHeight;\r\n node.style.height = 0;\r\n }\r\n },\r\n active() {\r\n node.style.height = `${show ? height : 0}px`;\r\n },\r\n end() {\r\n node.style.height = '';\r\n done();\r\n },\r\n });\r\n}\r\n\r\nconst animation = {\r\n enter(node, done) {\r\n return animate(node, true, done);\r\n },\r\n leave(node, done) {\r\n return animate(node, false, done);\r\n },\r\n appear(node, done) {\r\n return animate(node, true, done);\r\n },\r\n};\r\n\r\nexport default animation;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/openAnimation.js","/**\r\n*\r\n* @title Tree数据可控事例\r\n* @description\r\n*\r\n*/\r\n/*\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n*/\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo2 extends Component{\r\n constructor(props) {\r\n \tsuper(props);\r\n this.state = {\r\n expandedKeys: ['0-0-0', '0-0-1'],\r\n autoExpandParent: true,\r\n checkedKeys: ['0-0-0'],\r\n selectedKeys: [],\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onCheck = this.onCheck.bind(this);\r\n this.onSelect = this.onSelect.bind(this);\r\n }\r\n onExpand(expandedKeys) {\r\n console.log('onExpand', arguments);\r\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\r\n // or, you can remove all expanded children keys.\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onCheck(checkedKeys) {\r\n this.setState({\r\n checkedKeys,\r\n selectedKeys: ['0-3', '0-4'],\r\n });\r\n }\r\n onSelect(selectedKeys, info) {\r\n console.log('onSelect', info);\r\n this.setState({ selectedKeys });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\n\r\nexport default Demo2;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo2.js","/**\r\n*\r\n* @title Tree 拖拽使用事例\r\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\r\n*\r\n*/\r\n\r\n\r\n\r\nimport React, { Component } from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({ title: key, key });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nclass Demo3 extends Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n gData,\r\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\r\n };\r\n this.onDragEnter = this.onDragEnter.bind(this);\r\n this.onDrop = this.onDrop.bind(this);\r\n }\r\n onDragEnter(info) {\r\n console.log(info);\r\n // expandedKeys 需要受控时设置\r\n // this.setState({\r\n // expandedKeys: info.expandedKeys,\r\n // });\r\n }\r\n onDrop(info) {\r\n console.log(info);\r\n const dropKey = info.node.props.eventKey;\r\n const dragKey = info.dragNode.props.eventKey;\r\n // const dragNodesKeys = info.dragNodesKeys;\r\n const loop = (data, key, callback) => {\r\n data.forEach((item, index, arr) => {\r\n if (item.key === key) {\r\n return callback(item, index, arr);\r\n }\r\n if (item.children) {\r\n return loop(item.children, key, callback);\r\n }\r\n });\r\n };\r\n const data = [...this.state.gData];\r\n let dragObj;\r\n loop(data, dragKey, (item, index, arr) => {\r\n arr.splice(index, 1);\r\n dragObj = item;\r\n });\r\n if (info.dropToGap) {\r\n let ar;\r\n let i;\r\n loop(data, dropKey, (item, index, arr) => {\r\n ar = arr;\r\n i = index;\r\n });\r\n ar.splice(i, 0, dragObj);\r\n } else {\r\n loop(data, dropKey, (item) => {\r\n item.children = item.children || [];\r\n // where to insert 示例添加到尾部,可以是随意位置\r\n item.children.push(dragObj);\r\n });\r\n }\r\n this.setState({\r\n gData: data,\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children && item.children.length) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n {loop(this.state.gData)}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default Demo3;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo3.js","/**\r\n *\r\n * @title Tree可搜索事例\r\n * @description\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport FormControl from 'bee-form-control';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst dataList = [];\r\nconst generateList = (data) => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const key = node.key;\r\n dataList.push({\r\n key,\r\n title: key\r\n });\r\n if (node.children) {\r\n generateList(node.children, node.key);\r\n }\r\n }\r\n};\r\ngenerateList(gData);\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\n\r\nclass Demo4 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n searchValue: '',\r\n autoExpandParent: true,\r\n }\r\n }\r\n onExpand = (expandedKeys) => {\r\n this.setState({\r\n expandedKeys,\r\n autoExpandParent: false,\r\n });\r\n }\r\n onChange = (value) => {\r\n\r\n const expandedKeys = [];\r\n dataList.forEach((item) => {\r\n if (item.key.indexOf(value) > -1) {\r\n expandedKeys.push(getParentKey(item.key, gData));\r\n }\r\n });\r\n const uniqueExpandedKeys = [];\r\n expandedKeys.forEach((item) => {\r\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\r\n uniqueExpandedKeys.push(item);\r\n }\r\n });\r\n this.setState({\r\n expandedKeys: uniqueExpandedKeys,\r\n searchValue: value,\r\n autoExpandParent: true,\r\n });\r\n }\r\n render() {\r\n const {\r\n searchValue,\r\n expandedKeys,\r\n autoExpandParent\r\n } = this.state;\r\n const loop = data => data.map((item) => {\r\n const index = item.key.search(searchValue);\r\n const beforeStr = item.key.substr(0, index);\r\n const afterStr = item.key.substr(index + searchValue.length);\r\n const title = index > -1 ? (\r\n \r\n {beforeStr}\r\n {searchValue} \r\n {afterStr}\r\n \r\n ) : {item.key} ;\r\n if (item.children) {\r\n return (\r\n \r\n {loop(item.children)}\r\n \r\n );\r\n }\r\n return ;\r\n });\r\n return (\r\n \r\n \r\n \r\n {loop(gData)}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Demo4;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo4.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _FormControl = require('./FormControl');\n\nvar _FormControl2 = _interopRequireDefault(_FormControl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _FormControl2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-form-control@1.0.2@bee-form-control/build/index.js\n// module id = 119\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _beeIcon = require('bee-icon');\n\nvar _beeIcon2 = _interopRequireDefault(_beeIcon);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n componentClass: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].element, _propTypes2[\"default\"].string]),\n type: _propTypes2[\"default\"].string,\n size: _propTypes2[\"default\"].oneOf(['sm', 'md', 'lg']),\n id: _propTypes2[\"default\"].string\n};\n\nvar defaultProps = {\n componentClass: 'input',\n clsPrefix: 'u-form-control',\n type: 'text',\n size: 'md'\n};\n\nvar FormControl = function (_React$Component) {\n _inherits(FormControl, _React$Component);\n\n function FormControl(props) {\n _classCallCheck(this, FormControl);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _this.onChange = function (e) {\n var value = e.target.value;\n var onChange = _this.props.onChange;\n\n _this.setState(_defineProperty({ value: value, showSearch: false }, 'showSearch', value == \"\"));\n if (onChange) {\n onChange(value);\n }\n };\n\n _this.clearValue = function () {\n _this.setState({ showSearch: true });\n };\n\n _this.state = {\n showSearch: true,\n value: props.value || \"\"\n };\n _this.input = {};\n return _this;\n }\n\n FormControl.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProp) {\n if (nextProp.value !== this.state.value) {\n this.setState({ value: nextProp.value });\n }\n };\n\n FormControl.prototype.render = function render() {\n var _this2 = this;\n\n var _props = this.props,\n Component = _props.componentClass,\n type = _props.type,\n id = _props.id,\n className = _props.className,\n size = _props.size,\n clsPrefix = _props.clsPrefix,\n others = _objectWithoutProperties(_props, ['componentClass', 'type', 'id', 'className', 'size', 'clsPrefix']);\n // input[type=\"file\"] 不应该有类名 .form-control.\n\n\n var classes = {};\n if (size) {\n classes['' + size] = true;\n }\n if (type == \"search\") {\n classes['u-input-search'] = true;\n }\n\n var classNames = void 0;\n if (type !== 'file') {\n classNames = (0, _classnames2[\"default\"])(clsPrefix, classes);\n }\n\n if (type == \"search\") {\n\n return _react2[\"default\"].createElement(\n 'span',\n { className: 'u-input-search u-input-affix-wrapper' },\n _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n onChange: this.onChange,\n value: this.state.value,\n id: id,\n className: (0, _classnames2[\"default\"])(className, classNames)\n })),\n _react2[\"default\"].createElement(\n 'span',\n { className: 'u-input-suffix' },\n this.state.showSearch && _react2[\"default\"].createElement(_beeIcon2[\"default\"], { type: 'uf-search' }),\n !this.state.showSearch && _react2[\"default\"].createElement(_beeIcon2[\"default\"], { onClick: this.clearValue, type: 'uf-close-c' })\n )\n );\n }\n\n return _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n id: id,\n ref: function ref(el) {\n return _this2.input = el;\n },\n value: this.state.value,\n onChange: this.onChange,\n className: (0, _classnames2[\"default\"])(className, classNames)\n }));\n };\n\n return FormControl;\n}(_react2[\"default\"].Component);\n\nFormControl.propTypes = propTypes;\nFormControl.defaultProps = defaultProps;\n\nexports[\"default\"] = FormControl;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-form-control@1.0.2@bee-form-control/build/FormControl.js\n// module id = 120\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Icon = require('./Icon');\n\nvar _Icon2 = _interopRequireDefault(_Icon);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Icon2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-icon@1.0.0@bee-icon/build/index.js\n// module id = 121\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction _defaults(obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass); }\n\nvar propTypes = {\n\ttype: _propTypes2[\"default\"].string\n\n};\n/**\n * badge 默认显示内容1\n */\nvar defaultProps = {\n\tclsPrefix: 'uf'\n};\n\nvar Icon = function (_Component) {\n\t_inherits(Icon, _Component);\n\n\tfunction Icon(props) {\n\t\t_classCallCheck(this, Icon);\n\n\t\treturn _possibleConstructorReturn(this, _Component.call(this, props));\n\t}\n\n\tIcon.prototype.render = function render() {\n\t\tvar _props = this.props,\n\t\t type = _props.type,\n\t\t className = _props.className,\n\t\t clsPrefix = _props.clsPrefix,\n\t\t others = _objectWithoutProperties(_props, ['type', 'className', 'clsPrefix']);\n\n\t\tvar clsObj = {};\n\n\t\tvar classNames = (0, _classnames2[\"default\"])(clsPrefix, type);\n\n\t\treturn _react2[\"default\"].createElement('i', _extends({}, others, { className: (0, _classnames2[\"default\"])(classNames, className) }));\n\t};\n\n\treturn Icon;\n}(_react.Component);\n\nIcon.defaultProps = defaultProps;\nIcon.PropTypes = _propTypes2[\"default\"];\n\nexports[\"default\"] = Icon;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/_bee-icon@1.0.0@bee-icon/build/Icon.js\n// module id = 122\n// module chunks = 0","/**\r\n *\r\n * @title Tree异步数据加载\r\n * @description 当点击展开,异步获取子节点数据\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst x = 3;\r\nconst y = 2;\r\nconst z = 1;\r\nconst gData = [];\r\n\r\nconst generateData = (_level, _preKey, _tns) => {\r\n const preKey = _preKey || '0';\r\n const tns = _tns || gData;\r\n\r\n const children = [];\r\n for (let i = 0; i < x; i++) {\r\n const key = `${preKey}-${i}`;\r\n tns.push({\r\n title: key,\r\n key\r\n });\r\n if (i < y) {\r\n children.push(key);\r\n }\r\n }\r\n if (_level < 0) {\r\n return tns;\r\n }\r\n const level = _level - 1;\r\n children.forEach((key, index) => {\r\n tns[index].children = [];\r\n return generateData(level, key, tns[index].children);\r\n });\r\n};\r\ngenerateData(z);\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nfunction generateTreeNodes(treeNode) {\r\n const arr = [];\r\n const key = treeNode.props.eventKey;\r\n for (let i = 0; i < 3; i++) {\r\n arr.push({\r\n name: `leaf ${key}-${i}`,\r\n key: `${key}-${i}`\r\n });\r\n }\r\n return arr;\r\n}\r\n\r\nfunction setLeaf(treeData, curKey, level) {\r\n const loopLeaf = (data, lev) => {\r\n const l = lev - 1;\r\n data.forEach((item) => {\r\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\r\n curKey.indexOf(item.key) !== 0) {\r\n return;\r\n }\r\n if (item.children) {\r\n loopLeaf(item.children, l);\r\n } else if (l < 1) {\r\n item.isLeaf = true;\r\n }\r\n });\r\n };\r\n loopLeaf(treeData, level + 1);\r\n}\r\n\r\nfunction getNewTreeData(treeData, curKey, child, level) {\r\n const loop = (data) => {\r\n if (level < 1 || curKey.length - 3 > level * 2) return;\r\n data.forEach((item) => {\r\n if (curKey.indexOf(item.key) === 0) {\r\n if (item.children) {\r\n loop(item.children);\r\n } else {\r\n item.children = child;\r\n }\r\n }\r\n });\r\n };\r\n loop(treeData);\r\n setLeaf(treeData, curKey, level);\r\n}\r\n\r\nclass Demo5 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0'\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1'\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n onLoadData(treeNode) {\r\n return new Promise((resolve) => {\r\n setTimeout(() => {\r\n const treeData = [...this.state.treeData];\r\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\r\n this.setState({\r\n treeData\r\n });\r\n resolve();\r\n }, 1000);\r\n });\r\n }\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n return (\r\n \r\n {treeNodes}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default Demo5\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo5.js","/**\r\n *\r\n * @title Tree基本使用事例自定义图标\r\n * @description 添加openIcon、closeIcon属性\r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Icon from 'bee-icon';\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nconst defaultProps = {\r\n\tkeys: ['0-0-0', '0-0-1']\r\n}\r\nconsole.log(Tree);\r\nclass Demo1 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys,\r\n\t\t\tdefaultSelectedKeys: keys,\r\n\t\t\tdefaultCheckedKeys: keys,\r\n\t\t};\r\n\t}\r\n\tonSelect(info) {\r\n\t\tconsole.log('selected', info);\r\n\t}\r\n\tonCheck(info) {\r\n\t\tconsole.log('onCheck', info);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\r\n\t\t\t } closeIcon={ }\r\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\r\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\r\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\r\n\t onSelect={this.onSelect} onCheck={this.onCheck}\r\n\t >\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nDemo1.defaultProps = defaultProps;\r\n\r\n\r\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo6.js","/**\r\n *\r\n * @title Tree增加节点\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n Component\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Button from 'bee-button';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\n\r\nclass Demo7 extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\r\n parentNode: {}\r\n };\r\n this.onSelect = this.onSelect.bind(this);\r\n this.addNode = this.addNode.bind(this);\r\n this.clickFun = this.clickFun.bind(this);\r\n this.getNodeByKey = this.getNodeByKey.bind(this);\r\n this.parentNode = null\r\n }\r\n componentDidMount() {\r\n setTimeout(() => {\r\n this.setState({\r\n treeData: [{\r\n name: 'pNode 01',\r\n key: '0-0',\r\n children: [{\r\n name: 'leaf 0-0-0',\r\n key: '0-0-0'\r\n }, {\r\n name: 'leaf 0-0-1',\r\n key: '0-0-1'\r\n }]\r\n }, {\r\n name: 'pNode 02',\r\n key: '0-1',\r\n children: [{\r\n name: 'leaf 0-1-0',\r\n key: '0-1-0'\r\n }, {\r\n name: 'leaf 0-1-1',\r\n key: '0-1-1'\r\n }]\r\n }, {\r\n name: 'pNode 03',\r\n key: '0-2',\r\n isLeaf: true\r\n }, ],\r\n });\r\n }, 100);\r\n }\r\n /**\r\n * 增加节点\r\n * @param string prKey [父节点key]\r\n * @param object nodeItem [子节点信息]\r\n */\r\n addNode(prKey, nodeItem) {\r\n const data = this.state.treeData;\r\n let parNode;\r\n if (prKey) {\r\n // 如果prKey存在则搜索父节点进行添加\r\n parNode = this.getNodeByKey(data, prKey);\r\n //如果父节点存在的话,添加到父节点上\r\n if (parNode) {\r\n if (!parNode.children) {\r\n parNode.children = [];\r\n }\r\n // 如果key不存在就动态生成一个\r\n if (!nodeItem.key) {\r\n nodeItem.key = prKey + parNode.children.length + 1;\r\n }\r\n parNode.children.push(nodeItem);\r\n }\r\n } else {\r\n // 没有穿prKey添加到根下成为一级节点\r\n if (!nodeItem.key) {\r\n nodeItem.key = \"0-\" + data.length + 1;\r\n }\r\n data.push(nodeItem);\r\n }\r\n\r\n this.setState({\r\n data\r\n });\r\n }\r\n\r\n getNodeByKey(data, key) {\r\n if (!this.parentNode) {\r\n data.find(item => {\r\n if (item.key === key) {\r\n console.log('item.name---' + item.name)\r\n this.parentNode = item;\r\n return (true);\r\n } else if (item.children) {\r\n return this.getNodeByKey(item.children, key);\r\n\r\n }\r\n })\r\n }\r\n return this.parentNode;\r\n }\r\n\r\n\r\n\r\n onSelect(info) {\r\n console.log('selected', info);\r\n }\r\n /**\r\n * 点击button事件\r\n */\r\n clickFun() {\r\n let prKey, nodeItem;\r\n prKey = '0-1';\r\n nodeItem = {\r\n name: 'leaf 0-0-4'\r\n }\r\n this.addNode(prKey, nodeItem);\r\n }\r\n\r\n render() {\r\n const loop = data => data.map((item) => {\r\n if (item.children) {\r\n return {loop(item.children)} ;\r\n }\r\n return ;\r\n });\r\n const treeNodes = loop(this.state.treeData);\r\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\r\n return (\r\n \r\n \r\n {treeNodes}\r\n \r\n \r\n 增加节点\r\n \r\n
\r\n );\r\n }\r\n};\r\n\r\nexport default Demo7\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo7.js","/**\r\n *\r\n * @title Tree 节点可编辑\r\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\nimport Button from 'bee-button';\r\nimport Icon from 'bee-icon';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\n\r\nlet timer = 0;\r\nlet delay = 200;\r\nlet prevent = false;\r\n\r\n\r\n\r\nclass Demo8 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttreeData: [],\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t};\r\n\r\n\t}\r\n\r\n\r\n\tonMouseEnter = (e) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: e.node.props.eventKey\r\n\t\t})\r\n\t}\r\n\tonMouseLeave = (e, treenode) => {\r\n\t\tthis.setState({\r\n\t\t\tisHover: \"\",\r\n\t\t\teditKey: \"\"\r\n\t\t})\r\n\r\n\t}\r\n\r\n\teditRender = (item) => {\r\n\t\tthis.setState({\r\n\t\t\teditKey: item.key\r\n\t\t});\r\n\t}\r\n\tnodechange = (item, value) => {\r\n\t\titem.name = value;\r\n\t}\r\n\trenderTreeTitle = (item) => {\r\n\t\tlet titleIcon, titleInfo;\r\n\t\t//编辑时input框\r\n\t\tif (this.state.editKey == item.key) {\r\n\t\t\ttitleInfo = this.nodechange(item, e.target.value)} />\r\n\t\t} else {\r\n\t\t\ttitleInfo = {item.name} \r\n\t\t}\r\n\t\t//编辑图标\r\n\t\tif (this.state.isHover == item.key) {\r\n\t\t\ttitleIcon = this.editRender(item)}> ;\r\n\t\t}\r\n\t\treturn (\r\n\r\n\t\t\t{titleInfo}\r\n\t\t\t{titleIcon}\r\n\t\t
);\r\n\t}\r\n\r\n\tcomponentDidMount = () => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({\r\n\t\t\t\ttreeData: [{\r\n\t\t\t\t\tname: 'pNode 01',\r\n\t\t\t\t\tkey: '0-0',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-0-0',\r\n\t\t\t\t\t\tkey: '0-0-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-0-1',\r\n\t\t\t\t\t\tkey: '0-0-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 02',\r\n\t\t\t\t\tkey: '0-1',\r\n\t\t\t\t\tchildren: [{\r\n\t\t\t\t\t\tname: 'leaf 0-1-0',\r\n\t\t\t\t\t\tkey: '0-1-0'\r\n\t\t\t\t\t}, {\r\n\t\t\t\t\t\tname: 'leaf 0-1-1',\r\n\t\t\t\t\t\tkey: '0-1-1'\r\n\t\t\t\t\t}]\r\n\t\t\t\t}, {\r\n\t\t\t\t\tname: 'pNode 03',\r\n\t\t\t\t\tkey: '0-2',\r\n\t\t\t\t\tisLeaf: true\r\n\t\t\t\t}, ],\r\n\t\t\t});\r\n\t\t\r\n\t\t}, 100);\r\n\t}\r\n\trender() {\r\n\t\tconst loop = data => data.map((item) => {\r\n\t\t\tif (item.children) {\r\n\t\t\t\treturn {loop(item.children)} ;\r\n\t\t\t}\r\n\t\t\treturn ;\r\n\t\t});\r\n\t\tconst treeNodes = loop(this.state.treeData);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{treeNodes}\r\n\t\t\t \r\n\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\n\r\nexport default Demo8;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo8.js","/**\r\n *\r\n * @title 连接线Tree\r\n * @description \r\n *\r\n */\r\n\r\n\r\nimport React, {\r\n\tComponent\r\n} from 'react';\r\nimport Tree from '../../src';\r\n\r\nconst TreeNode = Tree.TreeNode;\r\nclass Demo9 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tconst keys = this.props.keys;\r\n\t\tthis.state = {\r\n\t\t\tdefaultExpandedKeys: keys\r\n\t\t};\r\n\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t \r\n\t sss} key=\"0-0-1-0\" />\r\n\t \r\n\t \r\n\t \r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Demo9;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo9.js"],"sourceRoot":""}
\ No newline at end of file
diff --git a/package.json b/package.json
index 02c06d9..72f40c7 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "bee-tree",
- "version": "1.0.3",
+ "version": "1.0.4",
"description": "Tree ui component for react",
"keywords": [
"react",