1 line
499 KiB
Plaintext
1 line
499 KiB
Plaintext
{"version":3,"sources":["webpack:///webpack/bootstrap b479daf1ba8156c67dcb","webpack:///./demo/index.js","webpack:///./~/bee-layout/build/index.js","webpack:///./~/bee-layout/build/Col.js","webpack:///./~/classnames/index.js","webpack:///external \"React\"","webpack:///external \"PropTypes\"","webpack:///./~/bee-layout/build/Row.js","webpack:///./~/bee-layout/build/Layout.js","webpack:///./~/bee-panel/build/index.js","webpack:///./~/bee-panel/build/Panel.js","webpack:///./~/bee-transition/build/index.js","webpack:///./~/bee-transition/build/Transition.js","webpack:///external \"ReactDOM\"","webpack:///./~/dom-helpers/transition/properties.js","webpack:///./~/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./~/dom-helpers/util/inDOM.js","webpack:///./~/dom-helpers/events/on.js","webpack:///./~/bee-transition/build/Collapse.js","webpack:///./~/dom-helpers/style/index.js","webpack:///./~/dom-helpers/util/camelizeStyle.js","webpack:///./~/dom-helpers/util/camelize.js","webpack:///./~/dom-helpers/util/hyphenateStyle.js","webpack:///./~/dom-helpers/util/hyphenate.js","webpack:///./~/dom-helpers/style/getComputedStyle.js","webpack:///./~/dom-helpers/style/removeStyle.js","webpack:///./~/dom-helpers/transition/isTransform.js","webpack:///./~/bee-transition/build/util/capitalize.js","webpack:///./~/tinper-bee-core/lib/index.js","webpack:///./~/tinper-bee-core/lib/all.js","webpack:///./~/tinper-bee-core/lib/utils/createChainableTypeChecker.js","webpack:///./~/tinper-bee-core/lib/componentOrElement.js","webpack:///./~/tinper-bee-core/lib/deprecated.js","webpack:///./~/warning/browser.js","webpack:////usr/local/lib/~/bee-tools/~/process/browser.js","webpack:///./~/tinper-bee-core/lib/elementType.js","webpack:///./~/tinper-bee-core/lib/isRequiredForA11y.js","webpack:///./~/tinper-bee-core/lib/splitComponent.js","webpack:///./~/tinper-bee-core/lib/createChainedFunction.js","webpack:///./~/tinper-bee-core/lib/keyCode.js","webpack:///./~/tinper-bee-core/lib/contains.js","webpack:///./~/tinper-bee-core/lib/addEventListener.js","webpack:///./~/add-dom-event-listener/lib/index.js","webpack:///./~/add-dom-event-listener/lib/EventObject.js","webpack:///./~/add-dom-event-listener/lib/EventBaseObject.js","webpack:///./~/object-assign/index.js","webpack:///./~/tinper-bee-core/lib/cssAnimation.js","webpack:///./~/tinper-bee-core/lib/Event.js","webpack:///./~/component-classes/index.js","webpack:///./~/component-indexof/index.js","webpack:///./~/tinper-bee-core/lib/toArray.js","webpack:///./~/tinper-bee-core/lib/Align.js","webpack:///./~/dom-align/lib/index.js","webpack:///./~/dom-align/lib/align/alignElement.js","webpack:///./~/dom-align/lib/align/align.js","webpack:///./~/dom-align/lib/utils.js","webpack:///./~/dom-align/lib/propertyUtils.js","webpack:///./~/dom-align/lib/getVisibleRectForElement.js","webpack:///./~/dom-align/lib/getOffsetParent.js","webpack:///./~/dom-align/lib/isAncestorFixed.js","webpack:///./~/dom-align/lib/adjustForViewport.js","webpack:///./~/dom-align/lib/getRegion.js","webpack:///./~/dom-align/lib/getElFuturePos.js","webpack:///./~/dom-align/lib/getAlignOffset.js","webpack:///./~/dom-align/lib/align/alignPoint.js","webpack:///./~/bee-transition/build/Fade.js","webpack:///./~/bee-message/build/index.js","webpack:///./~/bee-message/build/Message.js","webpack:///./~/bee-notification/build/index.js","webpack:///./~/bee-notification/build/Notification.js","webpack:///./~/bee-animate/build/index.js","webpack:///./~/bee-animate/build/Animate.js","webpack:///./~/bee-animate/build/ChildrenUtils.js","webpack:///./~/bee-animate/build/AnimateChild.js","webpack:///./~/bee-animate/build/util.js","webpack:///./~/bee-overlay/build/utils/ownerDocument.js","webpack:///./~/dom-helpers/ownerDocument.js","webpack:///./~/bee-overlay/build/utils/addEventListener.js","webpack:///./~/dom-helpers/events/off.js","webpack:///./~/bee-notification/build/Notice.js","webpack:///./~/copy-to-clipboard/index.js","webpack:///./~/toggle-selection/index.js","webpack:///./~/bee-panel/build/PanelGroup.js","webpack:///./~/bee-button/build/index.js","webpack:///./~/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:///./src/openAnimation.js","webpack:///./~/bee-icon/build/index.js","webpack:///./~/bee-icon/build/Icon.js","webpack:///./demo/demolist/Demo2.js","webpack:///./demo/demolist/Demo3.js","webpack:///./demo/demolist/Demo4.js","webpack:///./~/bee-form-control/build/index.js","webpack:///./~/bee-form-control/build/FormControl.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","webpack:///./demo/demolist/Demo10.js"],"names":["CARET","CARETUP","Demo1","require","Demo2","Demo3","Demo4","Demo5","Demo6","Demo7","Demo8","Demo9","Demo10","DemoArray","Demo","props","state","open","handleClick","bind","setState","render","title","example","code","desc","scss_code","caret","text","header","padding","Component","DemoGroup","map","child","index","ReactDOM","document","getElementById","TreeNode","Tree","defaultProps","keys","onCheck","checkedKeys","newst","console","log","cks","checked","halfChecked","onDoubleClick","key","treeNode","defaultExpandedKeys","defaultSelectedKeys","defaultCheckedKeys","onSelect","info","TreeProps","showLine","PropTypes","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","React","CSSProperties","prefixCls","filterTreeNode","showIcon","openAnimation","animation","children","noop","forEach","m","contextmenuKeys","checkedKeysChange","selectKeyDomPos","getDefaultExpandedKeys","getDefaultCheckedKeys","getDefaultSelectedKeys","dragNodesKeys","dragOverNodeKey","dropNodeKey","componentWillReceiveProps","nextProps","st","dataChange","e","dragNode","getDragNodes","getExpandedKeys","getRawExpandedKeys","event","node","_dropTrigger","onDragEnterGap","offsetTop","getOffset","refs","selectHandle","top","offsetHeight","pageY","gapHeight","dropPosition","enterGap","eventKey","indexOf","warn","posArr","pos","split","res","Number","length","dropToGap","rawExpandedKeys","_rawExpandedKeys","onDragEnd","keyType","expanded","controlled","push","splice","then","newSt","treeNodesStates","checkedNodes","item","ind","keyOrPos","checkedPositions","Object","i","checkKeys","checkedNodesPositions","halfCheckedKeys","_checkedKeys","selected","cancelUnSelect","selectedNodes","on1Enter","onMouseEnter","onMouseLeave","onContextMenu","getTreeNode","goDown","currentPos","currentIndex","nextIndex","parseInt","nextPos","backNextPos","nextTreeNode","backNextTreeNode","backNextPosArr","backNextTreeNodeArr","tempBackNextPosArr","substr","lastIndexOf","tempPosArr","tempPosArrLength","slice","join","itemNode","newKey","queryInfo","parentEle","target","focusEle","querySelector","focus","goUp","preIndex","prePos","prevTreeNode","preElement","preElementArr","parentElement","previousElementSibling","querySelectorAll","getAttribute","onKeyDown","stopPropagation","keyCode","KeyCode","DOWN","UP","LEFT","isLeaf","RIGHT","SPACE","ENTER","_focusDom","targetDom","onUlFocus","tree","onFocus","tabIndexKey","isExist","selectKeyDomExist","onFocusRes","Promise","onUlMouseDown","preventDefault","getFilterExpandedKeys","expandKeyProp","expandAll","expandedPositionArr","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","focusable","tabIndexValue","siblingPosition","cloneElement","showLineCls","domProps","role","getTreeNodesStates","_treeNodesStates","Children","propTypes","any","arrayOf","browser","loopAllChildren","isInclude","filterParentPosition","handleCheckState","getCheck","getStrictlyValue","arraysEqual","closest","isTreeNode","toArray","getNodeChildren","warnOnlyTreeNode","navigator","tem","ua","userAgent","M","match","test","exec","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","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","el","selector","matchesSelector","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","ret","c","onlyTreeNodeWarned","browserUa","window","ieOrEdge","defaultTitle","originList","targetList","dataLoading","dragNodeHighlight","componentDidMount","_treeNodeInstances","clearTimeout","doubleClickFlag","_this","setTimeout","dataTransfer","setData","callbackPromise","setLoading","renderSwitcher","expandedState","stateIcon","switcherCls","switcherClass","switcherStyle","renderCheckbox","checkboxCls","customEle","disableCheckbox","renderChildren","renderFirst","transitionAppear","newChildren","allTreeNode","count","cls","animProps","appear","checkIsLeaf","hasChildren","iconState","canRenderSwitcher","content","openIconCls","closeIconCls","timer","delay","prevent","iconEleCls","titleClass","icon","currentIcon","createElement","titleStyle","wrap","onClick","href","tabIndex","liProps","disabledCls","dragOverCls","filterCls","noopSwitcher","selectedCls","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","parentKey","some","onChange","value","uniqueExpandedKeys","searchValue","search","beforeStr","afterStr","generateTreeNodes","name","setLeaf","treeData","curKey","loopLeaf","lev","l","getNewTreeData","onLoadData","resolve","treeNodes","color","parentNode","addNode","clickFun","getNodeByKey","prKey","nodeItem","parNode","find","isHover","treenode","editKey","editRender","nodechange","renderTreeTitle","titleIcon","titleInfo","self","currentObject"],"mappings":"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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;AACA;AACA;AACA,KAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AA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;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA;;AAEA;AACA,sBAAqB,iCAAiC;AACtD;AACA;;AAEA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAO;AACP;;AAEA;AACA;AACA;AACA,UAAS,kDAAkD;AAC3D;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;AACA,qCAAoC,kDAAkD;AACtF;;AAEA;;;AAGA;AACA;AACA;AACA,iBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS,iDAAiD;AAC1D;AACA,4DAA2D,uEAAuE;AAClI;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,wDAAuD,kBAAkB;;AAEzE;AACA;AACA;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;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,yCAAwC;;AAExC;AACA;AACA;AACA,kBAAiB;AACjB;AACA;AACA,QAAO;AACP;AACA;AACA,UAAS,2GAA2G;AACpH;AACA;AACA,yGAAwG,2HAA2H;AACnO;AACA;AACA,UAAS,uDAAuD;AAChE;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA,qC;;;;;;ACpTA;;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;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;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,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAiB,oBAAoB;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;AC3FA;AACA;AACA;AACA;AACA;;AAEA,yC;;;;;;ACNA;;AAEA;AACA;;AAEA;;AAEA;AACA,qC;;;;;;ACRA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA,IAAG;AACH;;AAEA;AACA;AACA,qC;;;;;;AC5BA;;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;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL,kBAAiB;AACjB;AACA;;AAEA;AACA;;AAEA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL,mEAAkE;AAClE;AACA,IAAG;;AAEH;AACA,0DAAyD;AACzD;;AAEA,2BAA0B;AAC1B;;AAEA,qC;;;;;;ACnDA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACpBA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;AACH;;AAEA,qC;;;;;;ACZA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACpBA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACVA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gDAA+C;;AAE/C;AACA;AACA,0CAAyC;;AAEzC;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,qC;;;;;;AC3CA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACTA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACVA;;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,EAAC;AACD;AACA;AACA,M;;;;;;ACzCA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,E;;;;;;AC3CA;;AAEA;;AAEA,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H,GAAG;AAC7Q;AACA;AACA;;;AAGA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,uE;;;;;;ACnCA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F,iBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yC;;;;;;AC1CA;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,GAAG;AAC7Q;AACA;AACA;;;AAGA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,0E;;;;;;ACnCA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,uFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA,E;;;;;;ACvBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAiB,iBAAiB;AAClC;AACA,IAAG;AACH;;AAEA;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;;;;;;ACzCA;;AAEA;AACA;AACA;AACA;AACA;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;;;;;;ACjCA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;;;;;AC3gBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,E;;;;;;AClBA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,gBAAgB;;AAE7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,E;;;;;;ACzBA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qC;;;;;;AClDA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,EAAC;;AAED,uCAAsC,uCAAuC,kBAAkB;;AAE/F;;AAEA;;AAEA;;AAEA;;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;;AAEH;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,EAAC;;AAED;AACA,qC;;;;;;ACrRA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAG;;AAEH;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA,qC;;;;;;AC9DA;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,GAAG;AAC7Q;AACA;AACA;;;AAGA;;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;;;;;;AC9LA;;AAEA;AACA;AACA;AACA;AACA;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;;;;;;ACxFA;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,EAAC;AACD;AACA;AACA,M;;;;;;ACpBA;;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,EAAE;AAC9e;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,yB;;;;;;AClMA;;AAEA;AACA;AACA,EAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA,gD;;;;;;ACnBA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA,qC;;;;;;AC7CA;;AAEA;AACA;AACA,EAAC;;AAED;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;;AAEA;AACA;AACA,EAAC;AACD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;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,iCAAgC;AAChC;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,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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA,IAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qC;;;;;;ACzNA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qBAAoB;AACpB;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;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;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;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;;;;;;AC7kBA;;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;;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;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;;;;;;AClHA;;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;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,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,iBAAgB,eAAe,KAAK,mBAAmB;AACvD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA,IAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,4DAA2D,UAAU,iBAAiB;AACtF;;AAEA;AACA,qC;;;;;;AC/DA;;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;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA,qC;;;;;;ACbA;;AAEA;AACA;AACA,EAAC;;AAED,qGAAoG,mBAAmB,EAAE,mBAAmB,8HAA8H;;AAE1Q,oDAAmD,gBAAgB,sBAAsB,OAAO,2BAA2B,0BAA0B,yDAAyD,2BAA2B,EAAE,EAAE,EAAE,eAAe;;AAE9P;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA,UAAS;AACT;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;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA,+BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA,sBAAqB,oDAAoD;AACzE,4DAA2D,oDAAoD;AAC/G;AACA;AACA;AACA,sBAAqB,uDAAuD;AAC5E;AACA;AACA;AACA;AACA,UAAS;AACT,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qC;;;;;;AC3NA;;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;;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;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,MAAK;AACL;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAS;AACT;AACA,UAAS;AACT;AACA;AACA,MAAK;AACL,iCAAgC;AAChC;AACA;AACA;;AAEA;AACA;AACA,QAAO,4EAA4E;AACnF;AACA;AACA,UAAS,2CAA2C;AACpD;AACA;AACA;AACA;;AAEA;AACA,EAAC;;AAED;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAO;AACP;AACA;AACA,QAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA,0FAAyF,UAAU,WAAW;AAC9G;;AAEA;AACA,qC;;;;;;AChPA;;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;AACA;AACA,EAAC;;AAED;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,qC;;;;;;ACpBA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,qC;;;;;;ACTA;;AAEA;AACA;AACA,EAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAsC,uCAAuC,kBAAkB;;AAE/F,qC;;;;;;AC1BA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAM;AACN;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA,qC;;;;;;ACvBA;;AAEA;AACA;AACA,EAAC;;AAED;;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;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA,QAAO,sFAAsF;AAC7F;AACA;AACA,UAAS,yCAAyC;AAClD;AACA;AACA,YAAW,uCAAuC;AAClD;AACA;AACA;AACA;AACA,YAAW,6CAA6C;AACxD;AACA;AACA;AACA;AACA;AACA,UAAS,2EAA2E;AACpF,mDAAkD,yCAAyC;AAC3F;AACA;AACA;;AAEA;AACA,EAAC;;AAED;;AAEA;AACA;;AAEA;AACA,qC;;;;;;ACzIA;;AAEA;;AAEA,4CAA2C,IAAI;;AAE/C;AACA;AACA,6BAA4B,UAAU;AACtC;;AAEA;AACA;AACA,kBAAiB,cAAc;AAC/B;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA;AACA;AACA,QAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;;;;;;;AC5EA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kBAAiB,0BAA0B;AAC3C;AACA;;AAEA,0CAAyC;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAO;AACP;;AAEA;AACA;AACA;AACA;;;;;;;ACtCA;;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;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAC;AACD;AACA;AACA;AACA;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;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;;;;;;;;;;;;AC/JA;;;;AAGA;;;;AACA;;;;;;;;;;;;gfAZA;;;;;;;AAaA,KAAMC,WAAWC,iBAAKD,QAAtB;;AAEA,KAAME,eAAe;AACpBC,QAAM,CAAC,OAAD,EAAU,OAAV;AADc,EAArB;;KAGMxC,K;;;AACL,iBAAYa,KAAZ,EAAmB;AAAA;;AAAA,gDAClB,sBAAMA,KAAN,CADkB;;AAAA,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","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 b479daf1ba8156c67dcb","import {Col, Row} from 'bee-layout';\nimport {Panel} from 'bee-panel';\nimport Button from 'bee-button';\nimport React, {Component} from 'react';\nimport ReactDOM from 'react-dom';\n\n\nconst CARET = <i className=\"uf uf-arrow-down\"></i>;\n\nconst CARETUP = <i className=\"uf uf-arrow-up\"></i>;\n\n\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 Demo10 = require(\"./demolist/Demo10\");var DemoArray = [{\"example\":<Demo1 />,\"title\":\" Tree基本使用示例\",\"code\":\"/**\\n *\\n * @title Tree基本使用示例\\n * @description 示例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\\n *\\n */\\n\\n\\nimport React, {\\n\\tComponent\\n} from 'react';\\nimport { Tree, Icon } from 'tinper-bee';\\nconst TreeNode = Tree.TreeNode;\\n\\nconst defaultProps = {\\n\\tkeys: ['0-0-0', '0-0-1']\\n}\\nclass Demo1 extends Component {\\n\\tconstructor(props) {\\n\\t\\tsuper(props);\\n\\t\\tconst keys = this.props.keys;\\n\\t\\tthis.state = {\\n\\t\\t\\tdefaultExpandedKeys: keys,\\n\\t\\t\\tdefaultSelectedKeys: keys,\\n\\t\\t\\tdefaultCheckedKeys:keys,\\n\\t\\t\\tcheckedKeys: {checked:keys},\\n\\t\\t};\\n\\t}\\n\\tonSelect(info) {\\n\\t\\tconsole.log('selected', info);\\n\\t}\\n\\tonCheck = (checkedKeys,newst) => {\\n\\t\\t//用户可以自定义当前选中和半选中的节点。\\n\\t\\tconsole.log('onCheck', checkedKeys);\\n\\t\\tconst cks = {\\n\\t\\t\\tchecked: checkedKeys.checked || checkedKeys,\\n\\t\\t\\thalfChecked:checkedKeys.halfChecked\\n\\t\\t};\\n\\t\\tthis.setState({checkedKeys:cks});\\n\\t}\\n\\n\\tonDoubleClick=(key,treeNode)=>{\\n\\t\\tconsole.log('---onDblClick---'+key+'--treeNode--'+treeNode);\\n\\t}\\n\\trender() {\\n\\t\\n\\t\\treturn (\\n\\t\\t\\t<Tree className=\\\"myCls\\\" showLine checkable\\n\\t defaultExpandedKeys={this.state.defaultExpandedKeys}\\n\\t\\t\\t\\t\\tdefaultSelectedKeys={this.state.defaultSelectedKeys}\\n\\t\\t\\t\\t\\tdefaultCheckedKeys = {this.state.defaultCheckedKeys}\\n\\t\\t\\t\\t\\tcheckStrictly\\n\\t\\t\\t\\t\\tshowIcon\\n\\t\\t\\t\\t\\tcancelUnSelect={true}\\n\\t\\t\\t\\t\\tonSelect={this.onSelect} onCheck={this.onCheck}\\n\\t\\t\\t\\t\\tonDoubleClick={this.onDoubleClick}\\n\\t >\\n\\t <TreeNode title=\\\"parent 1\\\" key=\\\"0-0\\\" icon={<Icon type=\\\"uf-treefolder\\\" />}>\\n\\t <TreeNode title=\\\"parent 1-0\\\" key=\\\"0-0-0\\\" disabled icon={<Icon type=\\\"uf-treefolder\\\" />}>\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-0\\\" disableCheckbox icon={<Icon type=\\\"uf-list-s-o\\\" />}/>\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-1\\\" icon={<Icon type=\\\"uf-list-s-o\\\" />}/>\\n\\t </TreeNode>\\n\\t <TreeNode title=\\\"parent 1-1\\\" key=\\\"0-0-1\\\" icon={<Icon type=\\\"uf-treefolder\\\" />}>\\n\\t <TreeNode title={<span>sss</span>} key=\\\"0-0-1-0\\\" icon={<Icon type=\\\"uf-list-s-o\\\" />}/>\\n\\t </TreeNode>\\n\\t </TreeNode>\\n\\t </Tree>\\n\\t\\t);\\n\\t}\\n}\\n\\nDemo1.defaultProps = defaultProps;\\n\\n\\n\",\"desc\":\" 示例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\"},{\"example\":<Demo2 />,\"title\":\" Tree数据可控示例\",\"code\":\"/**\\n*\\n* @title Tree数据可控示例\\n* @description\\n* \\b\\n*/\\n\\nimport React, { Component } from 'react';\\nimport { Tree } from 'tinper-bee';\\n\\nconst x = 6;\\nconst y = 5;\\nconst z = 2;\\nconst gData = [];\\n\\nconst generateData = (_level, _preKey, _tns) => {\\n const preKey = _preKey || '0';\\n const tns = _tns || gData;\\n\\n const children = [];\\n for (let i = 0; i < x; i++) {\\n const key = `${preKey}-${i}`;\\n tns.push({ title: key, key });\\n if (i < y) {\\n children.push(key);\\n }\\n }\\n if (_level < 0) {\\n return tns;\\n }\\n const level = _level - 1;\\n children.forEach((key, index) => {\\n tns[index].children = [];\\n return generateData(level, key, tns[index].children);\\n });\\n};\\ngenerateData(z);\\n\\nconst TreeNode = Tree.TreeNode;\\n\\n\\nclass Demo2 extends Component{\\n constructor(props) {\\n \\tsuper(props);\\n this.state = {\\n expandedKeys: [],\\n autoExpandParent: true,\\n checkedKeys: ['0-0-0'],\\n selectedKeys: [],\\n };\\n this.onExpand = this.onExpand.bind(this);\\n this.onCheck = this.onCheck.bind(this);\\n this.onSelect = this.onSelect.bind(this);\\n }\\n onExpand(expandedKeys) {\\n console.log('onExpand', arguments);\\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\\n // or, you can remove all expanded children keys.\\n this.setState({\\n expandedKeys,\\n autoExpandParent: false,\\n });\\n }\\n onCheck(checkedKeys) {\\n this.setState({\\n checkedKeys,\\n selectedKeys: ['0-3', '0-4'],\\n });\\n }\\n onSelect(selectedKeys, info) {\\n console.log('onSelect', info);\\n this.setState({ selectedKeys });\\n }\\n render() {\\n const loop = data => data.map((item) => {\\n if (item.children) {\\n return (\\n <TreeNode key={item.key} title={item.key} disableCheckbox={item.key === '0-0-0'}>\\n {loop(item.children)}\\n </TreeNode>\\n );\\n }\\n return <TreeNode key={item.key} title={item.key} isLeaf={true}/>;\\n });\\n return (\\n <Tree\\n checkable\\n focusable\\n className={'demo2'}\\n onExpand={this.onExpand} expandedKeys={this.state.expandedKeys}\\n autoExpandParent={this.state.autoExpandParent}\\n onCheck={this.onCheck} \\n onSelect={this.onSelect} \\n >\\n {loop(gData)}\\n </Tree>\\n );\\n }\\n};\\n\\n\\n\",\"desc\":\"\",\"scss_code\":\"// .demo2.u-tree {\\n// li a.u-tree-node-content-wrapper:hover::before {\\n// background: rgb(235, 236, 240);\\n// }\\n// li a.u-tree-node-content-wrapper.u-tree-node-selected {\\n// color: rgb(245, 60, 50);\\n// .u-tree-title{\\n// color: rgb(245, 60, 50);\\n// }\\n// background: transparent;\\n// &::before {\\n// background: rgb(235, 236, 240);\\n// }\\n// }\\n\\n// li a.u-tree-node-content-wrapper::before {\\n// position: absolute;\\n// right: 0;\\n// left: 0;\\n// height: 20px;\\n// -webkit-transition: all 0.3s;\\n// transition: all 0.3s;\\n// content: \\\"\\\";\\n// }\\n\\n// li span {\\n// position: relative;\\n// z-index: 1;\\n// }\\n// }\\n\"},{\"example\":<Demo3 />,\"title\":\" Tree 拖拽使用示例\",\"code\":\"/**\\n*\\n* @title Tree 拖拽使用示例\\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\\n*\\n*/\\n\\n\\n\\nimport React, { Component } from 'react';\\nimport { Tree } from 'tinper-bee';\\n\\nconst x = 3;\\nconst y = 2;\\nconst z = 1;\\nconst gData = [];\\n\\nconst generateData = (_level, _preKey, _tns) => {\\n const preKey = _preKey || '0';\\n const tns = _tns || gData;\\n\\n const children = [];\\n for (let i = 0; i < x; i++) {\\n const key = `${preKey}-${i}`;\\n tns.push({ title: key, key });\\n if (i < y) {\\n children.push(key);\\n }\\n }\\n if (_level < 0) {\\n return tns;\\n }\\n const level = _level - 1;\\n children.forEach((key, index) => {\\n tns[index].children = [];\\n return generateData(level, key, tns[index].children);\\n });\\n};\\ngenerateData(z);\\n\\nconst TreeNode = Tree.TreeNode;\\n\\nclass Demo3 extends Component{\\n constructor(props) {\\n super(props);\\n this.state = {\\n gData,\\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\\n };\\n this.onDragEnter = this.onDragEnter.bind(this);\\n this.onDrop = this.onDrop.bind(this);\\n }\\n onDragEnter(info) {\\n console.log(info);\\n // expandedKeys 需要受控时设置\\n // this.setState({\\n // expandedKeys: info.expandedKeys,\\n // });\\n }\\n onDrop(info) {\\n console.log(info);\\n const dropKey = info.node.props.eventKey;\\n const dragKey = info.dragNode.props.eventKey;\\n // const dragNodesKeys = info.dragNodesKeys;\\n const loop = (data, key, callback) => {\\n data.forEach((item, index, arr) => {\\n if (item.key === key) {\\n return callback(item, index, arr);\\n }\\n if (item.children) {\\n return loop(item.children, key, callback);\\n }\\n });\\n };\\n const data = [...this.state.gData];\\n let dragObj;\\n loop(data, dragKey, (item, index, arr) => {\\n arr.splice(index, 1);\\n dragObj = item;\\n });\\n if (info.dropToGap) {\\n let ar;\\n let i;\\n loop(data, dropKey, (item, index, arr) => {\\n ar = arr;\\n i = index;\\n });\\n ar.splice(i, 0, dragObj);\\n } else {\\n loop(data, dropKey, (item) => {\\n item.children = item.children || [];\\n // where to insert 示例添加到尾部,可以是随意位置\\n item.children.push(dragObj);\\n });\\n }\\n this.setState({\\n gData: data,\\n });\\n }\\n render() {\\n const loop = data => data.map((item) => {\\n if (item.children && item.children.length) {\\n return <TreeNode key={item.key} title={item.key}>{loop(item.children)}</TreeNode>;\\n }\\n return <TreeNode key={item.key} title={item.key} />;\\n });\\n return (\\n <Tree\\n defaultExpandedKeys={this.state.expandedKeys}\\n draggable\\n onDragEnter={this.onDragEnter}\\n onDrop={this.onDrop}\\n >\\n {loop(this.state.gData)}\\n </Tree>\\n );\\n }\\n};\\n\\n\",\"desc\":\" 拖动结点插入到另一个结点后面或者其他的父节点里面。\"},{\"example\":<Demo4 />,\"title\":\" Tree可搜索示例\",\"code\":\"/**\\n *\\n * @title Tree可搜索示例\\n * @description\\n *\\n */\\n\\n\\nimport React, {\\n Component\\n} from 'react';\\nimport { Tree, FormControl } from 'tinper-bee';\\n\\nconst x = 3;\\nconst y = 2;\\nconst z = 1;\\nconst gData = [];\\n\\nconst generateData = (_level, _preKey, _tns) => {\\n const preKey = _preKey || '0';\\n const tns = _tns || gData;\\n\\n const children = [];\\n for (let i = 0; i < x; i++) {\\n const key = `${preKey}-${i}`;\\n tns.push({\\n title: key,\\n key\\n });\\n if (i < y) {\\n children.push(key);\\n }\\n }\\n if (_level < 0) {\\n return tns;\\n }\\n const level = _level - 1;\\n children.forEach((key, index) => {\\n tns[index].children = [];\\n return generateData(level, key, tns[index].children);\\n });\\n};\\ngenerateData(z);\\n\\nconst TreeNode = Tree.TreeNode;\\n\\nconst dataList = [];\\nconst generateList = (data) => {\\n for (let i = 0; i < data.length; i++) {\\n const node = data[i];\\n const key = node.key;\\n dataList.push({\\n key,\\n title: key\\n });\\n if (node.children) {\\n generateList(node.children, node.key);\\n }\\n }\\n};\\ngenerateList(gData);\\n\\nconst getParentKey = (key, tree) => {\\n let parentKey;\\n for (let i = 0; i < tree.length; i++) {\\n const node = tree[i];\\n if (node.children) {\\n if (node.children.some(item => item.key === key)) {\\n parentKey = node.key;\\n } else if (getParentKey(key, node.children)) {\\n parentKey = getParentKey(key, node.children);\\n }\\n }\\n }\\n return parentKey;\\n};\\n\\n\\nclass Demo4 extends Component {\\n constructor(props) {\\n super(props);\\n this.state = {\\n expandedKeys: [],\\n searchValue: '',\\n autoExpandParent: true,\\n }\\n }\\n onExpand = (expandedKeys) => {\\n this.setState({\\n expandedKeys,\\n autoExpandParent: false,\\n });\\n }\\n onChange = (value) => {\\n\\n const expandedKeys = [];\\n dataList.forEach((item) => {\\n if (item.key.indexOf(value) > -1) {\\n expandedKeys.push(getParentKey(item.key, gData));\\n }\\n });\\n const uniqueExpandedKeys = [];\\n expandedKeys.forEach((item) => {\\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\\n uniqueExpandedKeys.push(item);\\n }\\n });\\n this.setState({\\n expandedKeys: uniqueExpandedKeys,\\n searchValue: value,\\n autoExpandParent: true,\\n });\\n }\\n render() {\\n const {\\n searchValue,\\n expandedKeys,\\n autoExpandParent\\n } = this.state;\\n const loop = data => data.map((item) => {\\n const index = item.key.search(searchValue);\\n const beforeStr = item.key.substr(0, index);\\n const afterStr = item.key.substr(index + searchValue.length);\\n const title = index > -1 ? (\\n <span>\\n {beforeStr}\\n <span className=\\\"u-tree-searchable-filter\\\">{searchValue}</span>\\n {afterStr}\\n </span>\\n ) : <span>{item.key}</span>;\\n if (item.children) {\\n return (\\n <TreeNode key={item.key} title={title}>\\n {loop(item.children)}\\n </TreeNode>\\n );\\n }\\n return <TreeNode key={item.key} title={title} />;\\n });\\n return (\\n <div>\\n <FormControl\\n style={{ width: 200 }}\\n placeholder=\\\"Search\\\"\\n onChange={this.onChange}\\n />\\n <Tree\\n onExpand={this.onExpand}\\n expandedKeys={expandedKeys}\\n autoExpandParent={autoExpandParent}\\n >\\n {loop(gData)}\\n </Tree>\\n </div>\\n );\\n }\\n}\\n\\n\",\"desc\":\"\",\"scss_code\":\".u-tree-searchable-filter {\\n color: #f50;\\n transition: all .3s ease;\\n}\"},{\"example\":<Demo5 />,\"title\":\" Tree异步数据加载\",\"code\":\"/**\\n *\\n * @title Tree异步数据加载\\n * @description 当点击展开,异步获取子节点数据\\n *\\n */\\n\\n\\nimport React, {\\n Component\\n} from 'react';\\nimport { Tree } from 'tinper-bee';\\n\\nconst x = 3;\\nconst y = 2;\\nconst z = 1;\\nconst gData = [];\\n\\nconst generateData = (_level, _preKey, _tns) => {\\n const preKey = _preKey || '0';\\n const tns = _tns || gData;\\n\\n const children = [];\\n for (let i = 0; i < x; i++) {\\n const key = `${preKey}-${i}`;\\n tns.push({\\n title: key,\\n key\\n });\\n if (i < y) {\\n children.push(key);\\n }\\n }\\n if (_level < 0) {\\n return tns;\\n }\\n const level = _level - 1;\\n children.forEach((key, index) => {\\n tns[index].children = [];\\n return generateData(level, key, tns[index].children);\\n });\\n};\\ngenerateData(z);\\n\\nconst TreeNode = Tree.TreeNode;\\n\\nfunction generateTreeNodes(treeNode) {\\n const arr = [];\\n const key = treeNode.props.eventKey;\\n for (let i = 0; i < 3; i++) {\\n arr.push({\\n name: `leaf ${key}-${i}`,\\n key: `${key}-${i}`\\n });\\n }\\n return arr;\\n}\\n\\nfunction setLeaf(treeData, curKey, level) {\\n const loopLeaf = (data, lev) => {\\n const l = lev - 1;\\n data.forEach((item) => {\\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\\n curKey.indexOf(item.key) !== 0) {\\n return;\\n }\\n if (item.children) {\\n loopLeaf(item.children, l);\\n } else if (l < 1) {\\n item.isLeaf = true;\\n }\\n });\\n };\\n loopLeaf(treeData, level + 1);\\n}\\n\\nfunction getNewTreeData(treeData, curKey, child, level) {\\n const loop = (data) => {\\n if (level < 1 || curKey.length - 3 > level * 2) return;\\n data.forEach((item) => {\\n if (curKey.indexOf(item.key) === 0) {\\n if (item.children) {\\n loop(item.children);\\n } else {\\n item.children = child;\\n }\\n }\\n });\\n };\\n loop(treeData);\\n setLeaf(treeData, curKey, level);\\n}\\n\\nclass Demo5 extends Component {\\n constructor(props) {\\n super(props);\\n this.state = {\\n treeData: [],\\n };\\n this.onSelect = this.onSelect.bind(this);\\n this.onLoadData = this.onLoadData.bind(this);\\n }\\n componentDidMount() {\\n setTimeout(() => {\\n this.setState({\\n treeData: [{\\n name: 'pNode 01',\\n key: '0-0'\\n }, {\\n name: 'pNode 02',\\n key: '0-1'\\n }, {\\n name: 'pNode 03',\\n key: '0-2',\\n isLeaf: true\\n }, ],\\n });\\n }, 100);\\n }\\n onSelect(info) {\\n console.log('selected', info);\\n }\\n onLoadData(treeNode) {\\n return new Promise((resolve) => {\\n setTimeout(() => {\\n const treeData = [...this.state.treeData];\\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\\n this.setState({\\n treeData\\n });\\n resolve();\\n }, 1000);\\n });\\n }\\n render() {\\n const loop = data => data.map((item) => {\\n if (item.children) {\\n return <TreeNode title={item.name} key={item.key}>{loop(item.children)}</TreeNode>;\\n }\\n return <TreeNode title={item.name} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\\n });\\n const treeNodes = loop(this.state.treeData);\\n return (\\n <Tree onSelect={this.onSelect} loadData={this.onLoadData} >\\n {treeNodes}\\n </Tree>\\n );\\n }\\n};\\n\\n\",\"desc\":\" 当点击展开,异步获取子节点数据\"},{\"example\":<Demo6 />,\"title\":\" Tree基本使用示例自定义图标\",\"code\":\"/**\\n *\\n * @title Tree基本使用示例自定义图标\\n * @description 添加openIcon、closeIcon属性\\n *\\n */\\n\\n\\nimport React, {\\n\\tComponent\\n} from 'react';\\nimport { Tree, Icon } from 'tinper-bee';\\nconst TreeNode = Tree.TreeNode;\\n\\nconst defaultProps = {\\n\\tkeys: ['0-0-0', '0-0-1']\\n}\\nconsole.log(Tree);\\nclass Demo1 extends Component {\\n\\tconstructor(props) {\\n\\t\\tsuper(props);\\n\\t\\tconst keys = this.props.keys;\\n\\t\\tthis.state = {\\n\\t\\t\\tdefaultExpandedKeys: keys,\\n\\t\\t\\tdefaultSelectedKeys: keys,\\n\\t\\t\\tdefaultCheckedKeys: keys,\\n\\t\\t};\\n\\t}\\n\\tonSelect(info) {\\n\\t\\tconsole.log('selected', info);\\n\\t}\\n\\tonCheck(info) {\\n\\t\\tconsole.log('onCheck', info);\\n\\t}\\n\\trender() {\\n\\t\\treturn (\\n\\n\\t\\t\\t<Tree className=\\\"myCls\\\" checkable openIcon={<Icon type=\\\"uf-minus\\\" />} closeIcon={<Icon type=\\\"uf-plus\\\" />}\\n\\t defaultExpandedKeys={this.state.defaultExpandedKeys}\\n\\t defaultSelectedKeys={this.state.defaultSelectedKeys}\\n\\t defaultCheckedKeys={this.state.defaultCheckedKeys}\\n\\t onSelect={this.onSelect} onCheck={this.onCheck}\\n\\t >\\n\\t <TreeNode title=\\\"parent 1\\\" key=\\\"0-0\\\">\\n\\t <TreeNode title=\\\"parent 1-0\\\" key=\\\"0-0-0\\\" disabled>\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-0\\\" disableCheckbox />\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-1\\\" />\\n\\t </TreeNode>\\n\\t <TreeNode title=\\\"parent 1-1\\\" key=\\\"0-0-1\\\">\\n\\t <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\\\"0-0-1-0\\\" />\\n\\t </TreeNode>\\n\\t </TreeNode>\\n\\t </Tree>\\n\\t\\t);\\n\\t}\\n}\\n\\nDemo1.defaultProps = defaultProps;\\n\\n\\n\",\"desc\":\" 添加openIcon、closeIcon属性\"},{\"example\":<Demo7 />,\"title\":\" Tree增加节点\",\"code\":\"/**\\n *\\n * @title Tree增加节点\\n * @description \\n *\\n */\\n\\n\\nimport React, {\\n Component\\n} from 'react';\\nimport { Tree, Button } from 'tinper-bee';\\n\\nconst TreeNode = Tree.TreeNode;\\n\\n\\nclass Demo7 extends Component {\\n constructor(props) {\\n super(props);\\n this.state = {\\n treeData: [],\\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\\n parentNode: {}\\n };\\n this.onSelect = this.onSelect.bind(this);\\n this.addNode = this.addNode.bind(this);\\n this.clickFun = this.clickFun.bind(this);\\n this.getNodeByKey = this.getNodeByKey.bind(this);\\n this.parentNode = null\\n }\\n componentDidMount() {\\n setTimeout(() => {\\n this.setState({\\n treeData: [{\\n name: 'pNode 01',\\n key: '0-0',\\n children: [{\\n name: 'leaf 0-0-0',\\n key: '0-0-0'\\n }, {\\n name: 'leaf 0-0-1',\\n key: '0-0-1'\\n }]\\n }, {\\n name: 'pNode 02',\\n key: '0-1',\\n children: [{\\n name: 'leaf 0-1-0',\\n key: '0-1-0'\\n }, {\\n name: 'leaf 0-1-1',\\n key: '0-1-1'\\n }]\\n }, {\\n name: 'pNode 03',\\n key: '0-2',\\n isLeaf: true\\n }, ],\\n });\\n }, 100);\\n }\\n /**\\n * 增加节点\\n * @param string prKey [父节点key]\\n * @param object nodeItem [子节点信息]\\n */\\n addNode(prKey, nodeItem) {\\n const data = this.state.treeData;\\n let parNode;\\n if (prKey) {\\n // 如果prKey存在则搜索父节点进行添加\\n parNode = this.getNodeByKey(data, prKey);\\n //如果父节点存在的话,添加到父节点上\\n if (parNode) {\\n if (!parNode.children) {\\n parNode.children = [];\\n }\\n // 如果key不存在就动态生成一个\\n if (!nodeItem.key) {\\n nodeItem.key = prKey + parNode.children.length + 1;\\n }\\n parNode.children.push(nodeItem);\\n }\\n } else {\\n // 没有穿prKey添加到根下成为一级节点\\n if (!nodeItem.key) {\\n nodeItem.key = \\\"0-\\\" + data.length + 1;\\n }\\n data.push(nodeItem);\\n }\\n\\n this.setState({\\n data\\n });\\n }\\n\\n getNodeByKey(data, key) {\\n if (!this.parentNode) {\\n data.find(item => {\\n if (item.key === key) {\\n console.log('item.name---' + item.name)\\n this.parentNode = item;\\n return (true);\\n } else if (item.children) {\\n return this.getNodeByKey(item.children, key);\\n\\n }\\n })\\n }\\n return this.parentNode;\\n }\\n\\n\\n\\n onSelect(info) {\\n console.log('selected', info);\\n }\\n /**\\n * 点击button事件\\n */\\n clickFun() {\\n let prKey, nodeItem;\\n prKey = '0-1';\\n nodeItem = {\\n name: 'leaf 0-0-4'\\n }\\n this.addNode(prKey, nodeItem);\\n }\\n\\n render() {\\n const loop = data => data.map((item) => {\\n if (item.children) {\\n return <TreeNode title={item.name} key={item.key}>{loop(item.children)}</TreeNode>;\\n }\\n return <TreeNode title={item.name} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\\n });\\n const treeNodes = loop(this.state.treeData);\\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\\n return (\\n <div>\\n <Tree onSelect={this.onSelect} defaultExpandedKeys={this.state.defaultExpandedKeys}>\\n {treeNodes}\\n </Tree>\\n <Button colors=\\\"success\\\" onClick={this.clickFun}>\\n 增加节点\\n </Button>\\n </div>\\n );\\n }\\n};\\n\\n\",\"desc\":\" \"},{\"example\":<Demo8 />,\"title\":\" Tree 节点可编辑\",\"code\":\"/**\\n *\\n * @title Tree 节点可编辑\\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\\n */\\n\\n\\nimport React, {\\n\\tComponent\\n} from 'react';\\nimport { Tree, Icon, Button } from 'tinper-bee';\\n\\nconst TreeNode = Tree.TreeNode;\\n\\nclass Demo8 extends Component {\\n\\tconstructor(props) {\\n\\t\\tsuper(props);\\n\\n\\t\\tthis.state = {\\n\\t\\t\\ttreeData: [],\\n\\t\\t\\tisHover: \\\"\\\",\\n\\t\\t\\teditKey: \\\"\\\"\\n\\t\\t};\\n\\n\\t}\\n\\n\\n\\tonMouseEnter = (e) => {\\n\\t\\tthis.setState({\\n\\t\\t\\tisHover: e.node.props.eventKey\\n\\t\\t})\\n\\t}\\n\\tonMouseLeave = (e, treenode) => {\\n\\t\\tthis.setState({\\n\\t\\t\\tisHover: \\\"\\\",\\n\\t\\t\\teditKey: \\\"\\\"\\n\\t\\t})\\n\\n\\t}\\n\\n\\teditRender = (item) => {\\n\\t\\tthis.setState({\\n\\t\\t\\teditKey: item.key\\n\\t\\t});\\n\\t}\\n\\tnodechange = (item, value) => {\\n\\t\\titem.name = value;\\n\\t}\\n\\trenderTreeTitle = (item) => {\\n\\t\\tlet titleIcon, titleInfo;\\n\\t\\t//编辑时input框\\n\\t\\tif (this.state.editKey == item.key) {\\n\\t\\t\\ttitleInfo = <input type=\\\"text\\\" id=\\\"itemKey\\\" defaultValue={item.name} onChange={(e) => this.nodechange(item, e.target.value)} />\\n\\t\\t} else {\\n\\t\\t\\ttitleInfo = <span className=\\\"title-middle\\\">{item.name}</span>\\n\\t\\t}\\n\\t\\t//编辑图标\\n\\t\\tif (this.state.isHover == item.key) {\\n\\t\\t\\ttitleIcon = <Icon className=\\\"title-middle edit-icon\\\" type=\\\"uf-pencil\\\" onClick={(e) => this.editRender(item)}></Icon>;\\n\\t\\t}\\n\\t\\treturn (<div className=\\\"title-con\\\">\\n\\n\\t\\t\\t{titleInfo}\\n\\t\\t\\t{titleIcon}\\n\\t\\t</div>);\\n\\t}\\n\\n\\tcomponentDidMount = () => {\\n\\t\\tsetTimeout(() => {\\n\\t\\t\\tthis.setState({\\n\\t\\t\\t\\ttreeData: [{\\n\\t\\t\\t\\t\\tname: 'pNode 01',\\n\\t\\t\\t\\t\\tkey: '0-0',\\n\\t\\t\\t\\t\\tchildren: [{\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-0',\\n\\t\\t\\t\\t\\t\\tkey: '0-0-0'\\n\\t\\t\\t\\t\\t}, {\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-0-1',\\n\\t\\t\\t\\t\\t\\tkey: '0-0-1'\\n\\t\\t\\t\\t\\t}]\\n\\t\\t\\t\\t}, {\\n\\t\\t\\t\\t\\tname: 'pNode 02',\\n\\t\\t\\t\\t\\tkey: '0-1',\\n\\t\\t\\t\\t\\tchildren: [{\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-0',\\n\\t\\t\\t\\t\\t\\tkey: '0-1-0'\\n\\t\\t\\t\\t\\t}, {\\n\\t\\t\\t\\t\\t\\tname: 'leaf 0-1-1',\\n\\t\\t\\t\\t\\t\\tkey: '0-1-1'\\n\\t\\t\\t\\t\\t}]\\n\\t\\t\\t\\t}, {\\n\\t\\t\\t\\t\\tname: 'pNode 03',\\n\\t\\t\\t\\t\\tkey: '0-2',\\n\\t\\t\\t\\t\\tisLeaf: true\\n\\t\\t\\t\\t}, ],\\n\\t\\t\\t});\\n\\t\\t\\n\\t\\t}, 100);\\n\\t}\\n\\trender() {\\n\\t\\tconst loop = data => data.map((item) => {\\n\\t\\t\\tif (item.children) {\\n\\t\\t\\t\\treturn <TreeNode title={this.renderTreeTitle(item)} key={item.key}>{loop(item.children)}</TreeNode>;\\n\\t\\t\\t}\\n\\t\\t\\treturn <TreeNode title={this.renderTreeTitle(item)} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\\n\\t\\t});\\n\\t\\tconst treeNodes = loop(this.state.treeData);\\n\\t\\treturn (\\n\\t\\t\\t<Tree onMouseLeave={this.onMouseLeave} onMouseEnter={this.onMouseEnter}>\\n\\t\\t\\t\\t{treeNodes}\\n\\t\\t\\t</Tree>\\n\\n\\t\\t);\\n\\t}\\n}\\n\\n\\n\\n\",\"desc\":\" 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\",\"scss_code\":\".title-middle {\\n display: inline-block;\\n vertical-align: middle;\\n}\\n.edit-icon {\\n float:right;\\n font-size: 14px;\\n}\\n.title-con {\\n min-width: 150px;\\n}\"},{\"example\":<Demo9 />,\"title\":\" 连接线Tree\",\"code\":\"/**\\n *\\n * @title 连接线Tree\\n * @description \\n *\\n */\\n\\n\\nimport React, {\\n\\tComponent\\n} from 'react';\\nimport { Tree } from 'tinper-bee';\\n\\nconst TreeNode = Tree.TreeNode;\\nclass Demo9 extends Component {\\n\\tconstructor(props) {\\n\\t\\tsuper(props);\\n\\t\\tconst keys = this.props.keys;\\n\\t\\tthis.state = {\\n\\t\\t\\tdefaultExpandedKeys: keys\\n\\t\\t};\\n\\n\\t}\\n\\n\\trender() {\\n\\t\\treturn (\\n\\t\\t\\t<Tree className=\\\"myCls\\\" showLine checkable defaultExpandAll={true}>\\n\\t <TreeNode title=\\\"parent 1\\\" key=\\\"0-0\\\">\\n\\t <TreeNode title=\\\"parent 1-0\\\" key=\\\"0-0-0\\\" >\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-0\\\" />\\n\\t <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-1\\\" />\\n\\t </TreeNode>\\n\\t <TreeNode title=\\\"parent 1-1\\\" key=\\\"0-0-1\\\">\\n\\t <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\\\"0-0-1-0\\\" />\\n\\t </TreeNode>\\n\\t </TreeNode>\\n\\t </Tree>\\n\\t\\t);\\n\\t}\\n}\\n\\n\",\"desc\":\" \"},{\"example\":<Demo10 />,\"title\":\" Tree基本使用示例\",\"code\":\"/**\\n *\\n * @title Tree基本使用示例\\n * @description 如何获取选中对象自定义对象和数据\\n *\\n */\\n\\n\\nimport React, {\\n\\tComponent\\n} from 'react';\\nimport { Tree } from 'tinper-bee';\\n\\nconst TreeNode = Tree.TreeNode;\\n\\nconst defaultProps = {\\n\\tkeys: ['0-0-0', '0-0-1']\\n}\\nclass Demo10 extends Component {\\n\\tconstructor(props) {\\n\\t\\tsuper(props);\\n\\t\\tconst keys = this.props.keys;\\n\\t\\tthis.state = {\\n\\t\\t\\tdefaultExpandedKeys: keys,\\n\\t\\t\\tdefaultSelectedKeys: keys,\\n\\t\\t\\tdefaultCheckedKeys:keys\\n\\t\\t\\t// checkedKeys: {checked:keys},\\n\\t\\t};\\n }\\n /**\\n * 获取当前选中行的item对象。\\n * @param {*} value \\n */\\n\\tonSelect(selectedKeys, e) {\\n console.log(`${selectedKeys} selected`);//获取key\\n let currentObject = {};\\n currentObject.title = e.node.props.title; //获取选中对象的数据\\n currentObject.key = e.node.props.eventKey;\\n console.log(currentObject); \\n\\t}\\n\\tonCheck = (checkedKeys) => {\\n\\t\\tlet self = this;\\n\\t\\tconsole.log('onCheck', checkedKeys);\\n\\t\\tconst cks = {\\n\\t\\t\\tchecked: checkedKeys.checked || checkedKeys,\\n\\t\\t};\\n\\t\\t// this.setState({checkedKeys:cks});\\n\\t}\\n\\n\\tonDoubleClick=(key,treeNode)=>{\\n\\t\\tconsole.log('---onDblClick---'+key+'--treeNode--'+treeNode);\\n\\t}\\n\\trender() {\\n\\t\\n\\t\\treturn (\\n\\t\\t\\t<Tree className=\\\"myCls\\\" showLine checkable\\n defaultExpandedKeys={this.state.defaultExpandedKeys}\\n defaultSelectedKeys={this.state.defaultSelectedKeys}\\n defaultCheckedKeys = {this.state.defaultCheckedKeys}\\n checkStrictly\\n onSelect={this.onSelect} onCheck={this.onCheck}\\n onDoubleClick={this.onDoubleClick}\\n >\\n <TreeNode title=\\\"parent 1\\\" key=\\\"0-0\\\" >\\n <TreeNode title=\\\"parent 1-0\\\" key=\\\"0-0-0\\\" disabled>\\n <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-0\\\" disableCheckbox />\\n <TreeNode title=\\\"leaf\\\" key=\\\"0-0-0-1\\\" />\\n </TreeNode>\\n <TreeNode title=\\\"parent 1-1\\\" key=\\\"0-0-1\\\">\\n <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\\\"0-0-1-0\\\" />\\n </TreeNode>\\n <TreeNode title=\\\"parent 1-2\\\" key=\\\"0-0-2\\\" >\\n <TreeNode title=\\\"leaf\\\" key=\\\"0-0-2-0\\\" />\\n <TreeNode title=\\\"leaf\\\" key=\\\"0-0-2-1\\\" />\\n </TreeNode>\\n </TreeNode>\\n\\t </Tree>\\n\\t\\t);\\n\\t}\\n}\\n\\nDemo10.defaultProps = defaultProps;\\n\\n\\n\",\"desc\":\" 如何获取选中对象自定义对象和数据\"}]\n\n\nclass Demo extends Component {\n constructor(props) {\n super(props);\n this.state = {\n open: false\n }\n this.handleClick = this.handleClick.bind(this);\n }\n\n handleClick() {\n this.setState({open: !this.state.open})\n }\n\n render() {\n const {title, example, code, desc, scss_code} = this.props;\n let caret = this.state.open ? CARETUP : CARET;\n let text = this.state.open ? \"隐藏代码\" : \"查看代码\";\n\n const header = (\n <div>\n {example}\n <Button style={{\"marginTop\": \"10px\"}} shape=\"block\" onClick={this.handleClick}>\n {caret}\n {text}\n </Button>\n </div>\n );\n return (\n <Col md={12}>\n <h3>{title}</h3>\n <p>{desc}</p>\n <Panel collapsible headerContent expanded={this.state.open} colors='bordered' header={header}\n footerStyle={{padding: 0}}>\n <pre><code className=\"hljs javascript\">{code}</code></pre>\n {!!scss_code ? <pre><code className=\"hljs css\">{scss_code}</code></pre> : null}\n </Panel>\n </Col>\n )\n }\n}\n\nclass DemoGroup extends Component {\n constructor(props) {\n super(props)\n }\n\n render() {\n return (\n <Row>\n {DemoArray.map((child, index) => {\n\n return (\n <Demo example={child.example} title={child.title} code={child.code} scss_code={child.scss_code}\n desc={child.desc} key={index}/>\n )\n\n })}\n </Row>\n )\n }\n}\n\nReactDOM.render(<DemoGroup/>, document.getElementById('tinperBeeDemo'));\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/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/build/Col.js\n// module id = 2\n// module chunks = 0","/*!\n Copyright (c) 2017 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) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\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\tclassNames.default = classNames;\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/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/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\"].oneOfType([_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/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/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 _beeMessage = require('bee-message');\n\nvar _beeMessage2 = _interopRequireDefault(_beeMessage);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _copyToClipboard = require('copy-to-clipboard');\n\nvar _copyToClipboard2 = _interopRequireDefault(_copyToClipboard);\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 copyable: _propTypes2[\"default\"].bool\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.copyDemo = function copyDemo(e) {\n var panelTarget = e.target.parentNode;\n var clipBoardContent = panelTarget.firstChild.innerText;\n (0, _copyToClipboard2[\"default\"])(clipBoardContent);\n _beeMessage2[\"default\"].create({ content: '复制成功!', color: 'success', duration: 2 });\n };\n\n //如果有折叠动画,渲染折叠动画\n\n\n Panel.prototype.renderCollapsibleBody = function renderCollapsibleBody(id, expanded, role, children, clsPrefix, copyable, 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, copyable)\n )\n );\n };\n\n //渲染panelbody\n\n\n Panel.prototype.renderBody = function renderBody(rawChildren, clsPrefix, copyable) {\n var self = this;\n var children = [];\n var bodyChildren = [];\n\n var bodyClassName = clsPrefix + '-body';\n //添加到body的children中\n function maybeAddBody(self) {\n if (!bodyChildren.length) {\n return;\n }\n // 给子组件添加key,为了之后触发事件时使用\n children.push(_react2[\"default\"].createElement(\n 'div',\n { key: children.length, className: bodyClassName },\n bodyChildren,\n copyable && _react2[\"default\"].createElement('i', { className: clsPrefix + '-copy uf uf-files-o', onClick: self.copyDemo })\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(self);\n\n //将标示fill设置为undefined\n children.push((0, _react.cloneElement)(child, { fill: undefined }));\n\n return;\n }\n bodyChildren.push(child);\n });\n\n maybeAddBody(self);\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 copyable = _props.copyable,\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', 'copyable']);\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 copyable === false ? false : true;\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, copyable, { onEnter: onEnter, onEntering: onEntering, onEntered: onEntered, onExit: onExit, onExiting: onExiting, onExited: onExited }) : this.renderBody(children, clsPrefix, copyable),\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/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/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/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\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = exports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = void 0;\n\nvar _inDOM = _interopRequireDefault(require(\"../util/inDOM\"));\n\nvar transform = 'transform';\nexports.transform = transform;\nvar prefix, transitionEnd, animationEnd;\nexports.animationEnd = animationEnd;\nexports.transitionEnd = transitionEnd;\nvar transitionProperty, transitionDuration, transitionTiming, transitionDelay;\nexports.transitionDelay = transitionDelay;\nexports.transitionTiming = transitionTiming;\nexports.transitionDuration = transitionDuration;\nexports.transitionProperty = transitionProperty;\nvar animationName, animationDuration, animationTiming, animationDelay;\nexports.animationDelay = animationDelay;\nexports.animationTiming = animationTiming;\nexports.animationDuration = animationDuration;\nexports.animationName = animationName;\n\nif (_inDOM.default) {\n var _getTransitionPropert = getTransitionProperties();\n\n prefix = _getTransitionPropert.prefix;\n exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd;\n exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd;\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 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\nvar _default = {\n transform: transform,\n end: transitionEnd,\n property: transitionProperty,\n timing: transitionTiming,\n delay: transitionDelay,\n duration: transitionDuration\n};\nexports.default = _default;\n\nfunction getTransitionProperties() {\n var style = document.createElement('div').style;\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 var vendors = Object.keys(vendorMap);\n var transitionEnd, animationEnd;\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 if (!animationEnd && 'animationName' in style) animationEnd = 'animationend';\n style = null;\n return {\n animationEnd: animationEnd,\n transitionEnd: transitionEnd,\n prefix: prefix\n };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/transition/properties.js\n// module id = 13\n// module chunks = 0","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nmodule.exports = _interopRequireDefault;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/@babel/runtime/helpers/interopRequireDefault.js\n// module id = 14\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _default = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nexports.default = _default;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/util/inDOM.js\n// module id = 15\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inDOM = _interopRequireDefault(require(\"../util/inDOM\"));\n\nvar on = function on() {};\n\nif (_inDOM.default) {\n on = function () {\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\nvar _default = on;\nexports.default = _default;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/events/on.js\n// module id = 16\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/build/Collapse.js\n// module id = 17\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = style;\n\nvar _camelizeStyle = _interopRequireDefault(require(\"../util/camelizeStyle\"));\n\nvar _hyphenateStyle = _interopRequireDefault(require(\"../util/hyphenateStyle\"));\n\nvar _getComputedStyle2 = _interopRequireDefault(require(\"./getComputedStyle\"));\n\nvar _removeStyle = _interopRequireDefault(require(\"./removeStyle\"));\n\nvar _properties = require(\"../transition/properties\");\n\nvar _isTransform = _interopRequireDefault(require(\"../transition/isTransform\"));\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, _camelizeStyle.default)(property)] || (0, _getComputedStyle2.default)(node).getPropertyValue((0, _hyphenateStyle.default)(property));\n } else {\n (props = {})[property] = value;\n }\n }\n\n Object.keys(props).forEach(function (key) {\n var value = props[key];\n\n if (!value && value !== 0) {\n (0, _removeStyle.default)(node, (0, _hyphenateStyle.default)(key));\n } else if ((0, _isTransform.default)(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += (0, _hyphenateStyle.default)(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += _properties.transform + \": \" + transforms + \";\";\n }\n\n node.style.cssText += ';' + css;\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/style/index.js\n// module id = 18\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = camelizeStyleName;\n\nvar _camelize = _interopRequireDefault(require(\"./camelize\"));\n\n/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js\n */\nvar msPattern = /^-ms-/;\n\nfunction camelizeStyleName(string) {\n return (0, _camelize.default)(string.replace(msPattern, 'ms-'));\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/util/camelizeStyle.js\n// module id = 19\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = camelize;\nvar rHyphen = /-(.)/g;\n\nfunction camelize(string) {\n return string.replace(rHyphen, function (_, chr) {\n return chr.toUpperCase();\n });\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/util/camelize.js\n// module id = 20\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = hyphenateStyleName;\n\nvar _hyphenate = _interopRequireDefault(require(\"./hyphenate\"));\n\n/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nvar msPattern = /^ms-/;\n\nfunction hyphenateStyleName(string) {\n return (0, _hyphenate.default)(string).replace(msPattern, '-ms-');\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/util/hyphenateStyle.js\n// module id = 21\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = hyphenate;\nvar rUpper = /([A-Z])/g;\n\nfunction hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/util/hyphenate.js\n// module id = 22\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = _getComputedStyle;\n\nvar _camelizeStyle = _interopRequireDefault(require(\"../util/camelizeStyle\"));\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 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 prop = (0, _camelizeStyle.default)(prop);\n if (prop == 'float') prop = 'styleFloat';\n var current = node.currentStyle[prop] || null;\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; // Put in the new values to get a computed value out\n\n if (rsLeft) runStyle.left = node.currentStyle.left;\n style.left = prop === 'fontSize' ? '1em' : current;\n current = style.pixelLeft + 'px'; // Revert the changed values\n\n style.left = left;\n if (rsLeft) runStyle.left = rsLeft;\n }\n\n return current;\n }\n };\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/style/getComputedStyle.js\n// module id = 23\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = removeStyle;\n\nfunction removeStyle(node, key) {\n return 'removeProperty' in node.style ? node.style.removeProperty(key) : node.style.removeAttribute(key);\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/style/removeStyle.js\n// module id = 24\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\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}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/transition/isTransform.js\n// module id = 25\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/build/util/capitalize.js\n// module id = 26\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\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;\r\n\r\nvar _all2 = require('./all');\r\n\r\nvar _all3 = _interopRequireDefault(_all2);\r\n\r\nvar _componentOrElement2 = require('./componentOrElement');\r\n\r\nvar _componentOrElement3 = _interopRequireDefault(_componentOrElement2);\r\n\r\nvar _deprecated2 = require('./deprecated');\r\n\r\nvar _deprecated3 = _interopRequireDefault(_deprecated2);\r\n\r\nvar _elementType2 = require('./elementType');\r\n\r\nvar _elementType3 = _interopRequireDefault(_elementType2);\r\n\r\nvar _isRequiredForA11y2 = require('./isRequiredForA11y');\r\n\r\nvar _isRequiredForA11y3 = _interopRequireDefault(_isRequiredForA11y2);\r\n\r\nvar _splitComponent2 = require('./splitComponent');\r\n\r\nvar _splitComponent3 = _interopRequireDefault(_splitComponent2);\r\n\r\nvar _createChainedFunction2 = require('./createChainedFunction');\r\n\r\nvar _createChainedFunction3 = _interopRequireDefault(_createChainedFunction2);\r\n\r\nvar _keyCode = require('./keyCode');\r\n\r\nvar _keyCode2 = _interopRequireDefault(_keyCode);\r\n\r\nvar _contains2 = require('./contains');\r\n\r\nvar _contains3 = _interopRequireDefault(_contains2);\r\n\r\nvar _addEventListener2 = require('./addEventListener');\r\n\r\nvar _addEventListener3 = _interopRequireDefault(_addEventListener2);\r\n\r\nvar _cssAnimation2 = require('./cssAnimation');\r\n\r\nvar _cssAnimation3 = _interopRequireDefault(_cssAnimation2);\r\n\r\nvar _toArray2 = require('./toArray');\r\n\r\nvar _toArray3 = _interopRequireDefault(_toArray2);\r\n\r\nvar _Align2 = require('./Align');\r\n\r\nvar _Align3 = _interopRequireDefault(_Align2);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nexports.all = _all3.default;\r\nexports.componentOrElement = _componentOrElement3.default;\r\nexports.deprecated = _deprecated3.default;\r\nexports.elementType = _elementType3.default;\r\nexports.isRequiredForA11y = _isRequiredForA11y3.default;\r\nexports.splitComponent = _splitComponent3.default;\r\nexports.createChainedFunction = _createChainedFunction3.default;\r\nexports.KeyCode = _keyCode2.default;\r\nexports.contains = _contains3.default;\r\nexports.addEventListener = _addEventListener3.default;\r\nexports.cssAnimation = _cssAnimation3.default;\r\nexports.toArray = _toArray3.default;\r\n//export getContainerRenderMixin from './getContainerRenderMixin';\r\n\r\nexports.Align = _Align3.default;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/index.js\n// module id = 27\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = all;\r\n\r\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\r\n\r\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nfunction all() {\r\n for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) {\r\n validators[_key] = arguments[_key];\r\n }\r\n\r\n function allPropTypes() {\r\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\r\n args[_key2] = arguments[_key2];\r\n }\r\n\r\n var error = null;\r\n\r\n validators.forEach(function (validator) {\r\n if (error != null) {\r\n return;\r\n }\r\n\r\n var result = validator.apply(undefined, args);\r\n if (result != null) {\r\n error = result;\r\n }\r\n });\r\n\r\n return error;\r\n }\r\n\r\n return (0, _createChainableTypeChecker2.default)(allPropTypes);\r\n} /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/all.js\n// module id = 28\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = createChainableTypeChecker;\r\n/**\r\n * Copyright 2013-present, Facebook, Inc.\r\n * All rights reserved.\r\n *\r\n * This source code is licensed under the BSD-style license found in the\r\n * LICENSE file in the root directory of this source tree. An additional grant\r\n * of patent rights can be found in the PATENTS file in the same directory.\r\n */\r\n\r\n// Mostly taken from ReactPropTypes.\r\n\r\n/* This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n\r\nfunction createChainableTypeChecker(validate) {\r\n function checkType(isRequired, props, propName, componentName, location, propFullName) {\r\n var componentNameSafe = componentName || '<<anonymous>>';\r\n var propFullNameSafe = propFullName || propName;\r\n\r\n if (props[propName] == null) {\r\n if (isRequired) {\r\n return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.'));\r\n }\r\n\r\n return null;\r\n }\r\n\r\n for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) {\r\n args[_key - 6] = arguments[_key];\r\n }\r\n\r\n return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args));\r\n }\r\n\r\n var chainedCheckType = checkType.bind(null, false);\r\n chainedCheckType.isRequired = checkType.bind(null, true);\r\n\r\n return chainedCheckType;\r\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/utils/createChainableTypeChecker.js\n// module id = 29\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n\r\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; }; /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n\r\n\r\nvar _react = require('react');\r\n\r\nvar _react2 = _interopRequireDefault(_react);\r\n\r\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\r\n\r\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nfunction validate(props, propName, componentName, location, propFullName) {\r\n var propValue = props[propName];\r\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\r\n\r\n if (_react2.default.isValidElement(propValue)) {\r\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.');\r\n }\r\n\r\n if ((propType !== 'object' || typeof propValue.render !== 'function') && propValue.nodeType !== 1) {\r\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected a ReactComponent or a ') + 'DOMElement.');\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexports.default = (0, _createChainableTypeChecker2.default)(validate);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/componentOrElement.js\n// module id = 30\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = deprecated;\r\n\r\nvar _warning = require('warning');\r\n\r\nvar _warning2 = _interopRequireDefault(_warning);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nvar warned = {}; /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction deprecated(validator, reason) {\r\n return function validate(props, propName, componentName, location, propFullName) {\r\n var componentNameSafe = componentName || '<<anonymous>>';\r\n var propFullNameSafe = propFullName || propName;\r\n\r\n if (props[propName] != null) {\r\n var messageKey = componentName + '.' + propName;\r\n\r\n (0, _warning2.default)(warned[messageKey], 'The ' + location + ' `' + propFullNameSafe + '` of ' + ('`' + componentNameSafe + '` is deprecated. ' + reason + '.'));\r\n\r\n warned[messageKey] = true;\r\n }\r\n\r\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\r\n args[_key - 5] = arguments[_key];\r\n }\r\n\r\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\r\n };\r\n}\r\n\r\n/* eslint-disable no-underscore-dangle */\r\nfunction _resetWarned() {\r\n warned = {};\r\n}\r\n\r\ndeprecated._resetWarned = _resetWarned;\r\n/* eslint-enable no-underscore-dangle */\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/deprecated.js\n// module id = 31\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/browser.js\n// module id = 32\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// /usr/local/lib/~/bee-tools/~/process/browser.js\n// module id = 33\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n\r\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; }; /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n\r\n\r\nvar _react = require('react');\r\n\r\nvar _react2 = _interopRequireDefault(_react);\r\n\r\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\r\n\r\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nfunction elementType(props, propName, componentName, location, propFullName) {\r\n var propValue = props[propName];\r\n var propType = typeof propValue === 'undefined' ? 'undefined' : _typeof(propValue);\r\n\r\n if (_react2.default.isValidElement(propValue)) {\r\n return new Error('Invalid ' + location + ' `' + propFullName + '` of type ReactElement ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\r\n }\r\n\r\n if (propType !== 'function' && propType !== 'string') {\r\n return new Error('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected an element type (a string ') + 'or a ReactClass).');\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexports.default = (0, _createChainableTypeChecker2.default)(elementType);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/elementType.js\n// module id = 34\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = isRequiredForA11y;\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction isRequiredForA11y(validator) {\r\n return function validate(props, propName, componentName, location, propFullName) {\r\n var componentNameSafe = componentName || '<<anonymous>>';\r\n var propFullNameSafe = propFullName || propName;\r\n\r\n if (props[propName] == null) {\r\n return new Error('The ' + location + ' `' + propFullNameSafe + '` is required to make ' + ('`' + componentNameSafe + '` accessible for users of assistive ') + 'technologies such as screen readers.');\r\n }\r\n\r\n for (var _len = arguments.length, args = Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++) {\r\n args[_key - 5] = arguments[_key];\r\n }\r\n\r\n return validator.apply(undefined, [props, propName, componentName, location, propFullName].concat(args));\r\n };\r\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/isRequiredForA11y.js\n// module id = 35\n// module chunks = 0","\"use strict\";\r\n\r\nexports.__esModule = true;\r\nexports.default = splitComponentProps;\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction _objectEntries(obj) {\r\n var entries = [];\r\n var keys = Object.keys(obj);\r\n\r\n for (var k = 0; k < keys.length; ++k) {\r\n entries.push([keys[k], obj[keys[k]]]);\r\n }return entries;\r\n}\r\n\r\n/**\r\n * 分割要传入父元素和子元素的props\r\n * @param {[object]} props 传入的属性\r\n * @param {[reactElement]} Component 组件\r\n * @return {[array]} 返回数组,第一个元素为父元素props对象,第二个子元素props对象\r\n */\r\nfunction splitComponentProps(props, Component) {\r\n var componentPropTypes = Component.propTypes;\r\n\r\n var parentProps = {};\r\n var childProps = {};\r\n\r\n _objectEntries(props).forEach(function (_ref) {\r\n var propName = _ref[0],\r\n propValue = _ref[1];\r\n\r\n if (componentPropTypes[propName]) {\r\n parentProps[propName] = propValue;\r\n } else {\r\n childProps[propName] = propValue;\r\n }\r\n });\r\n\r\n return [parentProps, childProps];\r\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/splitComponent.js\n// module id = 36\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction createChainedFunction() {\r\n for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) {\r\n funcs[_key] = arguments[_key];\r\n }\r\n\r\n return funcs.filter(function (f) {\r\n return f != null;\r\n }).reduce(function (acc, f) {\r\n if (typeof f !== 'function') {\r\n throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.');\r\n }\r\n\r\n if (acc === null) {\r\n return f;\r\n }\r\n\r\n return function chainedFunction() {\r\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\r\n args[_key2] = arguments[_key2];\r\n }\r\n\r\n acc.apply(this, args);\r\n f.apply(this, args);\r\n };\r\n }, null);\r\n}\r\nexports.default = createChainedFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/createChainedFunction.js\n// module id = 37\n// module chunks = 0","/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n'use strict';\r\n\r\n/**\r\n * @ignore\r\n * some key-codes definition and utils from closure-library\r\n * @author yiminghe@gmail.com\r\n */\r\n\r\nvar KeyCode = {\r\n /**\r\n * MAC_ENTER\r\n */\r\n MAC_ENTER: 3,\r\n /**\r\n * BACKSPACE\r\n */\r\n BACKSPACE: 8,\r\n /**\r\n * TAB\r\n */\r\n TAB: 9,\r\n /**\r\n * NUMLOCK on FF/Safari Mac\r\n */\r\n NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac\r\n /**\r\n * ENTER\r\n */\r\n ENTER: 13,\r\n /**\r\n * SHIFT\r\n */\r\n SHIFT: 16,\r\n /**\r\n * CTRL\r\n */\r\n CTRL: 17,\r\n /**\r\n * ALT\r\n */\r\n ALT: 18,\r\n /**\r\n * PAUSE\r\n */\r\n PAUSE: 19,\r\n /**\r\n * CAPS_LOCK\r\n */\r\n CAPS_LOCK: 20,\r\n /**\r\n * ESC\r\n */\r\n ESC: 27,\r\n /**\r\n * SPACE\r\n */\r\n SPACE: 32,\r\n /**\r\n * PAGE_UP\r\n */\r\n PAGE_UP: 33, // also NUM_NORTH_EAST\r\n /**\r\n * PAGE_DOWN\r\n */\r\n PAGE_DOWN: 34, // also NUM_SOUTH_EAST\r\n /**\r\n * END\r\n */\r\n END: 35, // also NUM_SOUTH_WEST\r\n /**\r\n * HOME\r\n */\r\n HOME: 36, // also NUM_NORTH_WEST\r\n /**\r\n * LEFT\r\n */\r\n LEFT: 37, // also NUM_WEST\r\n /**\r\n * UP\r\n */\r\n UP: 38, // also NUM_NORTH\r\n /**\r\n * RIGHT\r\n */\r\n RIGHT: 39, // also NUM_EAST\r\n /**\r\n * DOWN\r\n */\r\n DOWN: 40, // also NUM_SOUTH\r\n /**\r\n * PRINT_SCREEN\r\n */\r\n PRINT_SCREEN: 44,\r\n /**\r\n * INSERT\r\n */\r\n INSERT: 45, // also NUM_INSERT\r\n /**\r\n * DELETE\r\n */\r\n DELETE: 46, // also NUM_DELETE\r\n /**\r\n * ZERO\r\n */\r\n ZERO: 48,\r\n /**\r\n * ONE\r\n */\r\n ONE: 49,\r\n /**\r\n * TWO\r\n */\r\n TWO: 50,\r\n /**\r\n * THREE\r\n */\r\n THREE: 51,\r\n /**\r\n * FOUR\r\n */\r\n FOUR: 52,\r\n /**\r\n * FIVE\r\n */\r\n FIVE: 53,\r\n /**\r\n * SIX\r\n */\r\n SIX: 54,\r\n /**\r\n * SEVEN\r\n */\r\n SEVEN: 55,\r\n /**\r\n * EIGHT\r\n */\r\n EIGHT: 56,\r\n /**\r\n * NINE\r\n */\r\n NINE: 57,\r\n /**\r\n * QUESTION_MARK\r\n */\r\n QUESTION_MARK: 63, // needs localization\r\n /**\r\n * A\r\n */\r\n A: 65,\r\n /**\r\n * B\r\n */\r\n B: 66,\r\n /**\r\n * C\r\n */\r\n C: 67,\r\n /**\r\n * D\r\n */\r\n D: 68,\r\n /**\r\n * E\r\n */\r\n E: 69,\r\n /**\r\n * F\r\n */\r\n F: 70,\r\n /**\r\n * G\r\n */\r\n G: 71,\r\n /**\r\n * H\r\n */\r\n H: 72,\r\n /**\r\n * I\r\n */\r\n I: 73,\r\n /**\r\n * J\r\n */\r\n J: 74,\r\n /**\r\n * K\r\n */\r\n K: 75,\r\n /**\r\n * L\r\n */\r\n L: 76,\r\n /**\r\n * M\r\n */\r\n M: 77,\r\n /**\r\n * N\r\n */\r\n N: 78,\r\n /**\r\n * O\r\n */\r\n O: 79,\r\n /**\r\n * P\r\n */\r\n P: 80,\r\n /**\r\n * Q\r\n */\r\n Q: 81,\r\n /**\r\n * R\r\n */\r\n R: 82,\r\n /**\r\n * S\r\n */\r\n S: 83,\r\n /**\r\n * T\r\n */\r\n T: 84,\r\n /**\r\n * U\r\n */\r\n U: 85,\r\n /**\r\n * V\r\n */\r\n V: 86,\r\n /**\r\n * W\r\n */\r\n W: 87,\r\n /**\r\n * X\r\n */\r\n X: 88,\r\n /**\r\n * Y\r\n */\r\n Y: 89,\r\n /**\r\n * Z\r\n */\r\n Z: 90,\r\n /**\r\n * META\r\n */\r\n META: 91, // WIN_KEY_LEFT\r\n /**\r\n * WIN_KEY_RIGHT\r\n */\r\n WIN_KEY_RIGHT: 92,\r\n /**\r\n * CONTEXT_MENU\r\n */\r\n CONTEXT_MENU: 93,\r\n /**\r\n * NUM_ZERO\r\n */\r\n NUM_ZERO: 96,\r\n /**\r\n * NUM_ONE\r\n */\r\n NUM_ONE: 97,\r\n /**\r\n * NUM_TWO\r\n */\r\n NUM_TWO: 98,\r\n /**\r\n * NUM_THREE\r\n */\r\n NUM_THREE: 99,\r\n /**\r\n * NUM_FOUR\r\n */\r\n NUM_FOUR: 100,\r\n /**\r\n * NUM_FIVE\r\n */\r\n NUM_FIVE: 101,\r\n /**\r\n * NUM_SIX\r\n */\r\n NUM_SIX: 102,\r\n /**\r\n * NUM_SEVEN\r\n */\r\n NUM_SEVEN: 103,\r\n /**\r\n * NUM_EIGHT\r\n */\r\n NUM_EIGHT: 104,\r\n /**\r\n * NUM_NINE\r\n */\r\n NUM_NINE: 105,\r\n /**\r\n * NUM_MULTIPLY\r\n */\r\n NUM_MULTIPLY: 106,\r\n /**\r\n * NUM_PLUS\r\n */\r\n NUM_PLUS: 107,\r\n /**\r\n * NUM_MINUS\r\n */\r\n NUM_MINUS: 109,\r\n /**\r\n * NUM_PERIOD\r\n */\r\n NUM_PERIOD: 110,\r\n /**\r\n * NUM_DIVISION\r\n */\r\n NUM_DIVISION: 111,\r\n /**\r\n * F1\r\n */\r\n F1: 112,\r\n /**\r\n * F2\r\n */\r\n F2: 113,\r\n /**\r\n * F3\r\n */\r\n F3: 114,\r\n /**\r\n * F4\r\n */\r\n F4: 115,\r\n /**\r\n * F5\r\n */\r\n F5: 116,\r\n /**\r\n * F6\r\n */\r\n F6: 117,\r\n /**\r\n * F7\r\n */\r\n F7: 118,\r\n /**\r\n * F8\r\n */\r\n F8: 119,\r\n /**\r\n * F9\r\n */\r\n F9: 120,\r\n /**\r\n * F10\r\n */\r\n F10: 121,\r\n /**\r\n * F11\r\n */\r\n F11: 122,\r\n /**\r\n * F12\r\n */\r\n F12: 123,\r\n /**\r\n * NUMLOCK\r\n */\r\n NUMLOCK: 144,\r\n /**\r\n * SEMICOLON\r\n */\r\n SEMICOLON: 186, // needs localization\r\n /**\r\n * DASH\r\n */\r\n DASH: 189, // needs localization\r\n /**\r\n * EQUALS\r\n */\r\n EQUALS: 187, // needs localization\r\n /**\r\n * COMMA\r\n */\r\n COMMA: 188, // needs localization\r\n /**\r\n * PERIOD\r\n */\r\n PERIOD: 190, // needs localization\r\n /**\r\n * SLASH\r\n */\r\n SLASH: 191, // needs localization\r\n /**\r\n * APOSTROPHE\r\n */\r\n APOSTROPHE: 192, // needs localization\r\n /**\r\n * SINGLE_QUOTE\r\n */\r\n SINGLE_QUOTE: 222, // needs localization\r\n /**\r\n * OPEN_SQUARE_BRACKET\r\n */\r\n OPEN_SQUARE_BRACKET: 219, // needs localization\r\n /**\r\n * BACKSLASH\r\n */\r\n BACKSLASH: 220, // needs localization\r\n /**\r\n * CLOSE_SQUARE_BRACKET\r\n */\r\n CLOSE_SQUARE_BRACKET: 221, // needs localization\r\n /**\r\n * WIN_KEY\r\n */\r\n WIN_KEY: 224,\r\n /**\r\n * MAC_FF_META\r\n */\r\n MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91\r\n /**\r\n * WIN_IME\r\n */\r\n WIN_IME: 229\r\n};\r\n\r\n/*\r\n whether text and modified key is entered at the same time.\r\n */\r\nKeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) {\r\n var keyCode = e.keyCode;\r\n if (e.altKey && !e.ctrlKey || e.metaKey ||\r\n // Function keys don't generate text\r\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\r\n return false;\r\n }\r\n\r\n // The following keys are quite harmless, even in combination with\r\n // CTRL, ALT or SHIFT.\r\n switch (keyCode) {\r\n case KeyCode.ALT:\r\n case KeyCode.CAPS_LOCK:\r\n case KeyCode.CONTEXT_MENU:\r\n case KeyCode.CTRL:\r\n case KeyCode.DOWN:\r\n case KeyCode.END:\r\n case KeyCode.ESC:\r\n case KeyCode.HOME:\r\n case KeyCode.INSERT:\r\n case KeyCode.LEFT:\r\n case KeyCode.MAC_FF_META:\r\n case KeyCode.META:\r\n case KeyCode.NUMLOCK:\r\n case KeyCode.NUM_CENTER:\r\n case KeyCode.PAGE_DOWN:\r\n case KeyCode.PAGE_UP:\r\n case KeyCode.PAUSE:\r\n case KeyCode.PRINT_SCREEN:\r\n case KeyCode.RIGHT:\r\n case KeyCode.SHIFT:\r\n case KeyCode.UP:\r\n case KeyCode.WIN_KEY:\r\n case KeyCode.WIN_KEY_RIGHT:\r\n return false;\r\n default:\r\n return true;\r\n }\r\n};\r\n\r\n/*\r\n whether character is entered.\r\n */\r\nKeyCode.isCharacterKey = function isCharacterKey(keyCode) {\r\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\r\n return true;\r\n }\r\n\r\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\r\n return true;\r\n }\r\n\r\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\r\n return true;\r\n }\r\n\r\n // Safari sends zero key code for non-latin characters.\r\n if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\r\n return true;\r\n }\r\n\r\n switch (keyCode) {\r\n case KeyCode.SPACE:\r\n case KeyCode.QUESTION_MARK:\r\n case KeyCode.NUM_PLUS:\r\n case KeyCode.NUM_MINUS:\r\n case KeyCode.NUM_PERIOD:\r\n case KeyCode.NUM_DIVISION:\r\n case KeyCode.SEMICOLON:\r\n case KeyCode.DASH:\r\n case KeyCode.EQUALS:\r\n case KeyCode.COMMA:\r\n case KeyCode.PERIOD:\r\n case KeyCode.SLASH:\r\n case KeyCode.APOSTROPHE:\r\n case KeyCode.SINGLE_QUOTE:\r\n case KeyCode.OPEN_SQUARE_BRACKET:\r\n case KeyCode.BACKSLASH:\r\n case KeyCode.CLOSE_SQUARE_BRACKET:\r\n return true;\r\n default:\r\n return false;\r\n }\r\n};\r\n\r\nmodule.exports = KeyCode;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/keyCode.js\n// module id = 38\n// module chunks = 0","\"use strict\";\r\n\r\nexports.__esModule = true;\r\nexports.default = contains;\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction contains(root, n) {\r\n var node = n;\r\n while (node) {\r\n if (node === root) {\r\n return true;\r\n }\r\n node = node.parentNode;\r\n }\r\n\r\n return false;\r\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/contains.js\n// module id = 39\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = addEventListenerWrap;\r\n\r\nvar _addDomEventListener = require('add-dom-event-listener');\r\n\r\nvar _addDomEventListener2 = _interopRequireDefault(_addDomEventListener);\r\n\r\nvar _reactDom = require('react-dom');\r\n\r\nvar _reactDom2 = _interopRequireDefault(_reactDom);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nfunction addEventListenerWrap(target, eventType, cb) {\r\n /* eslint camelcase: 2 */\r\n var callback = _reactDom2.default.unstable_batchedUpdates ? function run(e) {\r\n _reactDom2.default.unstable_batchedUpdates(cb, e);\r\n } : cb;\r\n return (0, _addDomEventListener2.default)(target, eventType, callback);\r\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/addEventListener.js\n// module id = 40\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\nexports['default'] = addEventListener;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _EventObject = require('./EventObject');\n\nvar _EventObject2 = _interopRequireDefault(_EventObject);\n\nfunction addEventListener(target, eventType, callback, option) {\n function wrapCallback(e) {\n var ne = new _EventObject2['default'](e);\n callback.call(target, ne);\n }\n\n if (target.addEventListener) {\n var _ret = (function () {\n var useCapture = false;\n if (typeof option === 'object') {\n useCapture = option.capture || false;\n } else if (typeof option === 'boolean') {\n useCapture = option;\n }\n\n target.addEventListener(eventType, wrapCallback, option || false);\n\n return {\n v: {\n remove: function remove() {\n target.removeEventListener(eventType, wrapCallback, useCapture);\n }\n }\n };\n })();\n\n if (typeof _ret === 'object') return _ret.v;\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}\n\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/add-dom-event-listener/lib/index.js\n// module id = 41\n// module chunks = 0","/**\n * @ignore\n * event object for dom\n * @author yiminghe@gmail.com\n */\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _EventBaseObject = require('./EventBaseObject');\n\nvar _EventBaseObject2 = _interopRequireDefault(_EventBaseObject);\n\nvar _objectAssign = require('object-assign');\n\nvar _objectAssign2 = _interopRequireDefault(_objectAssign);\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 = undefined;\n var deltaY = undefined;\n var delta = undefined;\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 = undefined;\n var doc = undefined;\n var body = undefined;\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 = undefined;\n var l = undefined;\n var prop = undefined;\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\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/lib/EventObject.js\n// module id = 42\n// module chunks = 0","/**\n * @ignore\n * base event object for custom and dom event.\n * @author yiminghe@gmail.com\n */\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\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\n stopPropagation: function stopPropagation() {\n this.isPropagationStopped = returnTrue;\n },\n\n stopImmediatePropagation: function stopImmediatePropagation() {\n this.isImmediatePropagationStopped = returnTrue;\n // fixed 1.2\n // call stopPropagation implicitly\n this.stopPropagation();\n },\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/lib/EventBaseObject.js\n// module id = 43\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/index.js\n// module id = 44\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n\r\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; }; /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n\r\n\r\nvar _Event = require('./Event');\r\n\r\nvar _Event2 = _interopRequireDefault(_Event);\r\n\r\nvar _componentClasses = require('component-classes');\r\n\r\nvar _componentClasses2 = _interopRequireDefault(_componentClasses);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nvar isCssAnimationSupported = _Event2.default.endEvents.length !== 0;\r\n\r\n\r\nvar capitalPrefixes = ['Webkit', 'Moz', 'O',\r\n// ms is special .... !\r\n'ms'];\r\nvar prefixes = ['-webkit-', '-moz-', '-o-', 'ms-', ''];\r\n\r\nfunction getStyleProperty(node, name) {\r\n var style = window.getComputedStyle(node);\r\n\r\n var ret = '';\r\n for (var i = 0; i < prefixes.length; i++) {\r\n ret = style.getPropertyValue(prefixes[i] + name);\r\n if (ret) {\r\n break;\r\n }\r\n }\r\n return ret;\r\n}\r\n\r\nfunction fixBrowserByTimeout(node) {\r\n if (isCssAnimationSupported) {\r\n var transitionDelay = parseFloat(getStyleProperty(node, 'transition-delay')) || 0;\r\n var transitionDuration = parseFloat(getStyleProperty(node, 'transition-duration')) || 0;\r\n var animationDelay = parseFloat(getStyleProperty(node, 'animation-delay')) || 0;\r\n var animationDuration = parseFloat(getStyleProperty(node, 'animation-duration')) || 0;\r\n var time = Math.max(transitionDuration + transitionDelay, animationDuration + animationDelay);\r\n // sometimes, browser bug\r\n node.rcEndAnimTimeout = setTimeout(function () {\r\n node.rcEndAnimTimeout = null;\r\n if (node.rcEndListener) {\r\n node.rcEndListener();\r\n }\r\n }, time * 1000 + 200);\r\n }\r\n}\r\n\r\nfunction clearBrowserBugTimeout(node) {\r\n if (node.rcEndAnimTimeout) {\r\n clearTimeout(node.rcEndAnimTimeout);\r\n node.rcEndAnimTimeout = null;\r\n }\r\n}\r\n\r\nvar cssAnimation = function cssAnimation(node, transitionName, endCallback) {\r\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\r\n var className = nameIsObj ? transitionName.name : transitionName;\r\n var activeClassName = nameIsObj ? transitionName.active : transitionName + '-active';\r\n var end = endCallback;\r\n var start = void 0;\r\n var active = void 0;\r\n var nodeClasses = (0, _componentClasses2.default)(node);\r\n\r\n if (endCallback && Object.prototype.toString.call(endCallback) === '[object Object]') {\r\n end = endCallback.end;\r\n start = endCallback.start;\r\n active = endCallback.active;\r\n }\r\n\r\n if (node.rcEndListener) {\r\n node.rcEndListener();\r\n }\r\n\r\n node.rcEndListener = function (e) {\r\n if (e && e.target !== node) {\r\n return;\r\n }\r\n\r\n if (node.rcAnimTimeout) {\r\n clearTimeout(node.rcAnimTimeout);\r\n node.rcAnimTimeout = null;\r\n }\r\n\r\n clearBrowserBugTimeout(node);\r\n\r\n nodeClasses.remove(className);\r\n nodeClasses.remove(activeClassName);\r\n\r\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\r\n node.rcEndListener = null;\r\n\r\n // Usually this optional end is used for informing an owner of\r\n // a leave animation and telling it to remove the child.\r\n if (end) {\r\n end();\r\n }\r\n };\r\n\r\n _Event2.default.addEndEventListener(node, node.rcEndListener);\r\n\r\n if (start) {\r\n start();\r\n }\r\n nodeClasses.add(className);\r\n\r\n node.rcAnimTimeout = setTimeout(function () {\r\n node.rcAnimTimeout = null;\r\n nodeClasses.add(activeClassName);\r\n if (active) {\r\n setTimeout(active, 0);\r\n }\r\n fixBrowserByTimeout(node);\r\n // 30ms for firefox\r\n }, 30);\r\n\r\n return {\r\n stop: function stop() {\r\n if (node.rcEndListener) {\r\n node.rcEndListener();\r\n }\r\n }\r\n };\r\n};\r\n\r\ncssAnimation.style = function (node, style, callback) {\r\n if (node.rcEndListener) {\r\n node.rcEndListener();\r\n }\r\n\r\n node.rcEndListener = function (e) {\r\n if (e && e.target !== node) {\r\n return;\r\n }\r\n\r\n if (node.rcAnimTimeout) {\r\n clearTimeout(node.rcAnimTimeout);\r\n node.rcAnimTimeout = null;\r\n }\r\n\r\n clearBrowserBugTimeout(node);\r\n\r\n _Event2.default.removeEndEventListener(node, node.rcEndListener);\r\n node.rcEndListener = null;\r\n\r\n // Usually this optional callback is used for informing an owner of\r\n // a leave animation and telling it to remove the child.\r\n if (callback) {\r\n callback();\r\n }\r\n };\r\n\r\n _Event2.default.addEndEventListener(node, node.rcEndListener);\r\n\r\n node.rcAnimTimeout = setTimeout(function () {\r\n for (var s in style) {\r\n if (style.hasOwnProperty(s)) {\r\n node.style[s] = style[s];\r\n }\r\n }\r\n node.rcAnimTimeout = null;\r\n fixBrowserByTimeout(node);\r\n }, 0);\r\n};\r\n\r\ncssAnimation.setTransition = function (node, p, value) {\r\n var property = p;\r\n var v = value;\r\n if (value === undefined) {\r\n v = property;\r\n property = '';\r\n }\r\n property = property || '';\r\n capitalPrefixes.forEach(function (prefix) {\r\n node.style[prefix + 'Transition' + property] = v;\r\n });\r\n};\r\n\r\ncssAnimation.isCssAnimationSupported = isCssAnimationSupported;\r\n\r\nexports.default = cssAnimation;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/cssAnimation.js\n// module id = 45\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n/**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\nvar EVENT_NAME_MAP = {\r\n transitionend: {\r\n transition: 'transitionend',\r\n WebkitTransition: 'webkitTransitionEnd',\r\n MozTransition: 'mozTransitionEnd',\r\n OTransition: 'oTransitionEnd',\r\n msTransition: 'MSTransitionEnd'\r\n },\r\n\r\n animationend: {\r\n animation: 'animationend',\r\n WebkitAnimation: 'webkitAnimationEnd',\r\n MozAnimation: 'mozAnimationEnd',\r\n OAnimation: 'oAnimationEnd',\r\n msAnimation: 'MSAnimationEnd'\r\n }\r\n};\r\n\r\nvar endEvents = [];\r\n\r\nfunction detectEvents() {\r\n var testEl = document.createElement('div');\r\n var style = testEl.style;\r\n\r\n if (!('AnimationEvent' in window)) {\r\n delete EVENT_NAME_MAP.animationend.animation;\r\n }\r\n\r\n if (!('TransitionEvent' in window)) {\r\n delete EVENT_NAME_MAP.transitionend.transition;\r\n }\r\n\r\n for (var baseEventName in EVENT_NAME_MAP) {\r\n if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {\r\n var baseEvents = EVENT_NAME_MAP[baseEventName];\r\n for (var styleName in baseEvents) {\r\n if (styleName in style) {\r\n endEvents.push(baseEvents[styleName]);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\r\n detectEvents();\r\n}\r\n\r\nfunction addEventListener(node, eventName, eventListener) {\r\n node.addEventListener(eventName, eventListener, false);\r\n}\r\n\r\nfunction removeEventListener(node, eventName, eventListener) {\r\n node.removeEventListener(eventName, eventListener, false);\r\n}\r\n\r\nvar TransitionEvents = {\r\n addEndEventListener: function addEndEventListener(node, eventListener) {\r\n if (endEvents.length === 0) {\r\n window.setTimeout(eventListener, 0);\r\n return;\r\n }\r\n endEvents.forEach(function (endEvent) {\r\n addEventListener(node, endEvent, eventListener);\r\n });\r\n },\r\n\r\n\r\n endEvents: endEvents,\r\n\r\n removeEndEventListener: function removeEndEventListener(node, eventListener) {\r\n if (endEvents.length === 0) {\r\n return;\r\n }\r\n endEvents.forEach(function (endEvent) {\r\n removeEventListener(node, endEvent, eventListener);\r\n });\r\n }\r\n};\r\n\r\nexports.default = TransitionEvents;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/Event.js\n// module id = 46\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/index.js\n// module id = 47\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/index.js\n// module id = 48\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\nexports.default = toArray;\r\n\r\nvar _react = require('react');\r\n\r\nvar _react2 = _interopRequireDefault(_react);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nfunction toArray(children) {\r\n var ret = [];\r\n _react2.default.Children.forEach(children, function (c) {\r\n ret.push(c);\r\n });\r\n return ret;\r\n} /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/toArray.js\n// module id = 49\n// module chunks = 0","'use strict';\r\n\r\nexports.__esModule = true;\r\n\r\nvar _react = require('react');\r\n\r\nvar _react2 = _interopRequireDefault(_react);\r\n\r\nvar _propTypes = require('prop-types');\r\n\r\nvar _propTypes2 = _interopRequireDefault(_propTypes);\r\n\r\nvar _reactDom = require('react-dom');\r\n\r\nvar _reactDom2 = _interopRequireDefault(_reactDom);\r\n\r\nvar _domAlign = require('dom-align');\r\n\r\nvar _domAlign2 = _interopRequireDefault(_domAlign);\r\n\r\nvar _addEventListener = require('./addEventListener');\r\n\r\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\r\n\r\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\r\n\r\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\r\n\r\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; }\r\n\r\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; } /**\r\n * This source code is quoted from rc-util.\r\n * homepage: https://github.com/react-component/util\r\n */\r\n\r\n\r\n//import isWindow from './isWindow';\r\n\r\nfunction isWindow(obj) {\r\n /* eslint no-eq-null: 0 */\r\n /* eslint eqeqeq: 0 */\r\n return obj != null && obj == obj.window;\r\n}\r\n\r\nfunction buffer(fn, ms) {\r\n var timer = void 0;\r\n\r\n function clear() {\r\n if (timer) {\r\n clearTimeout(timer);\r\n timer = null;\r\n }\r\n }\r\n\r\n function bufferFn() {\r\n clear();\r\n timer = setTimeout(fn, ms);\r\n }\r\n\r\n bufferFn.clear = clear;\r\n\r\n return bufferFn;\r\n}\r\n\r\nvar propTypes = {\r\n childrenProps: _propTypes2.default.object,\r\n align: _propTypes2.default.object.isRequired,\r\n target: _propTypes2.default.func,\r\n onAlign: _propTypes2.default.func,\r\n monitorBufferTime: _propTypes2.default.number,\r\n monitorWindowResize: _propTypes2.default.bool,\r\n disabled: _propTypes2.default.bool,\r\n children: _propTypes2.default.any\r\n};\r\n\r\nvar defaultProps = {\r\n target: function target() {\r\n return window;\r\n },\r\n onAlign: function onAlign() {},\r\n\r\n monitorBufferTime: 50,\r\n monitorWindowResize: false,\r\n disabled: false\r\n};\r\n\r\nvar Align = function (_React$Component) {\r\n _inherits(Align, _React$Component);\r\n\r\n function Align(props) {\r\n _classCallCheck(this, Align);\r\n\r\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\r\n\r\n _initialiseProps.call(_this);\r\n\r\n return _this;\r\n }\r\n\r\n Align.prototype.componentDidMount = function componentDidMount() {\r\n var props = this.props;\r\n // if parent ref not attached .... use document.getElementById\r\n this.forceAlign();\r\n if (!props.disabled && props.monitorWindowResize) {\r\n this.startMonitorWindowResize();\r\n }\r\n };\r\n\r\n Align.prototype.componentDidUpdate = function componentDidUpdate(prevProps) {\r\n var reAlign = false;\r\n var props = this.props;\r\n\r\n if (!props.disabled) {\r\n if (prevProps.disabled || prevProps.align !== props.align) {\r\n reAlign = true;\r\n } else {\r\n var lastTarget = prevProps.target();\r\n var currentTarget = props.target();\r\n if (isWindow(lastTarget) && isWindow(currentTarget)) {\r\n reAlign = false;\r\n } else if (lastTarget !== currentTarget) {\r\n reAlign = true;\r\n }\r\n }\r\n }\r\n\r\n if (reAlign) {\r\n this.forceAlign();\r\n }\r\n\r\n if (props.monitorWindowResize && !props.disabled) {\r\n this.startMonitorWindowResize();\r\n } else {\r\n this.stopMonitorWindowResize();\r\n }\r\n };\r\n\r\n Align.prototype.componentWillUnmount = function componentWillUnmount() {\r\n this.stopMonitorWindowResize();\r\n };\r\n\r\n Align.prototype.render = function render() {\r\n var _props = this.props,\r\n childrenProps = _props.childrenProps,\r\n children = _props.children;\r\n\r\n var child = _react2.default.Children.only(children);\r\n if (childrenProps) {\r\n var newProps = {};\r\n for (var prop in childrenProps) {\r\n if (childrenProps.hasOwnProperty(prop)) {\r\n newProps[prop] = this.props[childrenProps[prop]];\r\n }\r\n }\r\n return _react2.default.cloneElement(child, newProps);\r\n }\r\n return child;\r\n };\r\n\r\n return Align;\r\n}(_react2.default.Component);\r\n\r\nvar _initialiseProps = function _initialiseProps() {\r\n var _this2 = this;\r\n\r\n this.startMonitorWindowResize = function () {\r\n if (!_this2.resizeHandler) {\r\n _this2.bufferMonitor = buffer(_this2.forceAlign, _this2.props.monitorBufferTime);\r\n _this2.resizeHandler = (0, _addEventListener2.default)(window, 'resize', _this2.bufferMonitor);\r\n }\r\n };\r\n\r\n this.stopMonitorWindowResize = function () {\r\n if (_this2.resizeHandler) {\r\n _this2.bufferMonitor.clear();\r\n _this2.resizeHandler.remove();\r\n _this2.resizeHandler = null;\r\n }\r\n };\r\n\r\n this.forceAlign = function () {\r\n var props = _this2.props;\r\n if (!props.disabled) {\r\n var source = _reactDom2.default.findDOMNode(_this2);\r\n props.onAlign(source, (0, _domAlign2.default)(source, props.target(), props.align));\r\n }\r\n };\r\n};\r\n\r\n;\r\n\r\nAlign.defaultProps = defaultProps;\r\nAlign.propTypes = propTypes;\r\n\r\nexports.default = Align;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/tinper-bee-core/lib/Align.js\n// module id = 50\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.alignPoint = exports.alignElement = undefined;\n\nvar _alignElement = require('./align/alignElement');\n\nvar _alignElement2 = _interopRequireDefault(_alignElement);\n\nvar _alignPoint = require('./align/alignPoint');\n\nvar _alignPoint2 = _interopRequireDefault(_alignPoint);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nexports.alignElement = _alignElement2['default'];\nexports.alignPoint = _alignPoint2['default'];\nexports['default'] = _alignElement2['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-align/lib/index.js\n// module id = 51\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _align = require('./align');\n\nvar _align2 = _interopRequireDefault(_align);\n\nvar _getOffsetParent = require('../getOffsetParent');\n\nvar _getOffsetParent2 = _interopRequireDefault(_getOffsetParent);\n\nvar _getVisibleRectForElement = require('../getVisibleRectForElement');\n\nvar _getVisibleRectForElement2 = _interopRequireDefault(_getVisibleRectForElement);\n\nvar _getRegion = require('../getRegion');\n\nvar _getRegion2 = _interopRequireDefault(_getRegion);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\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 alignElement(el, refNode, align) {\n var target = align.target || refNode;\n var refNodeRegion = (0, _getRegion2['default'])(target);\n\n var isTargetNotOutOfVisible = !isOutOfVisibleRect(target);\n\n return (0, _align2['default'])(el, refNodeRegion, align, isTargetNotOutOfVisible);\n}\n\nalignElement.__getOffsetParent = _getOffsetParent2['default'];\n\nalignElement.__getVisibleRectForElement = _getVisibleRectForElement2['default'];\n\nexports['default'] = alignElement;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-align/lib/align/alignElement.js\n// module id = 52\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 _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\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;\n} /**\n * align dom node flexibly\n * @author yiminghe@gmail.com\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 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\n/**\n * @param el\n * @param tgtRegion 参照节点所占的区域: { left, top, width, height }\n * @param align\n */\nfunction doAlign(el, tgtRegion, align, isTgtRegionVisible) {\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 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 // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, tgtRegion);\n // 当前节点将要被放置的位置\n var elFuturePos = (0, _getElFuturePos2['default'])(elRegion, tgtRegion, points, offset, targetOffset);\n // 当前节点将要所处的区域\n var newElRegion = _utils2['default'].merge(elRegion, elFuturePos);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTgtRegionVisible) {\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, tgtRegion, 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, tgtRegion, _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, tgtRegion, points, offset, targetOffset);\n _utils2['default'].mix(newElRegion, elFuturePos);\n }\n var isStillFailX = isFailX(elFuturePos, elRegion, visibleRect);\n var isStillFailY = isFailY(elFuturePos, elRegion, visibleRect);\n // 检查反下后的位置是否可以放下了,如果仍然放不下:\n // 1. 复原修改过的定位参数\n if (isStillFailX || isStillFailY) {\n points = align.points;\n offset = align.offset || [0, 0];\n targetOffset = align.targetOffset || [0, 0];\n }\n // 2. 只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isStillFailX;\n newOverflowCfg.adjustY = overflow.adjustY && isStillFailY;\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 // 例如 <div 'relative'><el absolute></div>\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 ignoreShake: align.ignoreShake\n });\n\n return {\n points: points,\n offset: offset,\n targetOffset: targetOffset,\n overflow: newOverflowCfg\n };\n}\n\nexports['default'] = doAlign;\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/lib/align/align.js\n// module id = 53\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\n// https://stackoverflow.com/a/3485654/3040605\nfunction forceRelayout(elem) {\n var originalStyle = elem.style.display;\n elem.style.display = 'none';\n elem.offsetHeight; // eslint-disable-line\n elem.style.display = originalStyle;\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 // force relayout\n forceRelayout(elem);\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 forceRelayout(elem);\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.ignoreShake) {\n var oriOffset = getOffset(elem);\n\n var oLeft = oriOffset.left.toFixed(0);\n var oTop = oriOffset.top.toFixed(0);\n var tLeft = offset.left.toFixed(0);\n var tTop = offset.top.toFixed(0);\n\n if (oLeft === tLeft && oTop === tTop) {\n return;\n }\n }\n\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && (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/lib/utils.js\n// module id = 54\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/lib/propertyUtils.js\n// module id = 55\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 // scrollXXX on html is sync with body which means overflow: hidden on body gets wrong scrollXXX.\n // We should cut this ourself.\n var bodyStyle = window.getComputedStyle(body);\n if (bodyStyle.overflowX === 'hidden') {\n documentWidth = win.innerWidth;\n }\n if (bodyStyle.overflowY === 'hidden') {\n documentHeight = win.innerHeight;\n }\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/lib/getVisibleRectForElement.js\n// module id = 56\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 <div style=\"width: 50px;height: 100px;overflow: hidden\">\n <div style=\"width: 50px;height: 100px;position: relative;\" id=\"d6\">\n 元素 6 高 100px 宽 50px<br/>\n </div>\n </div>\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/lib/getOffsetParent.js\n// module id = 57\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/lib/isAncestorFixed.js\n// module id = 58\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/lib/adjustForViewport.js\n// module id = 59\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/lib/getRegion.js\n// module id = 60\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/lib/getElFuturePos.js\n// module id = 61\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/lib/getAlignOffset.js\n// module id = 62\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 _utils = require('../utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _align = require('./align');\n\nvar _align2 = _interopRequireDefault(_align);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\n/**\n * `tgtPoint`: { pageX, pageY } or { clientX, clientY }.\n * If client position provided, will internal convert to page position.\n */\n\nfunction alignPoint(el, tgtPoint, align) {\n var pageX = void 0;\n var pageY = void 0;\n\n var doc = _utils2['default'].getDocument(el);\n var win = doc.defaultView || doc.parentWindow;\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\n if ('pageX' in tgtPoint) {\n pageX = tgtPoint.pageX;\n } else {\n pageX = scrollX + tgtPoint.clientX;\n }\n\n if ('pageY' in tgtPoint) {\n pageY = tgtPoint.pageY;\n } else {\n pageY = scrollY + tgtPoint.clientY;\n }\n\n var tgtRegion = {\n left: pageX,\n top: pageY,\n width: 0,\n height: 0\n };\n\n var pointInView = pageX >= 0 && pageX <= scrollX + viewportWidth && pageY >= 0 && pageY <= scrollY + viewportHeight;\n\n // Provide default target point\n var points = [align.points[0], 'cc'];\n\n return (0, _align2['default'])(el, tgtRegion, _extends({}, align, { points: points }), pointInView);\n}\n\nexports['default'] = alignPoint;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-align/lib/align/alignPoint.js\n// module id = 63\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/build/Fade.js\n// module id = 64\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Message = require('./Message');\n\nvar _Message2 = _interopRequireDefault(_Message);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Message2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-message/build/index.js\n// module id = 65\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 _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 _beeNotification = require('bee-notification');\n\nvar _beeNotification2 = _interopRequireDefault(_beeNotification);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar defaultDuration = 1.5;\nvar defaultTop = 0;\nvar defaultBottom = 48;\nvar bottom = 90;\nvar padding = 30;\nvar width = 200;\nvar messageInstance = void 0;\nvar key = 1;\nvar clsPrefix = 'u-message';\nvar noop = function noop() {};\n\nvar positionObj = {\n \"top\": {\n messageStyle: {\n width: \"100%\"\n },\n notificationStyle: {\n top: defaultTop,\n width: \"100%\"\n },\n transitionName: 'top'\n },\n \"bottom\": {\n messageStyle: {\n width: \"100%\"\n },\n notificationStyle: {\n bottom: defaultBottom,\n width: \"100%\"\n },\n transitionName: 'bottom'\n },\n \"topRight\": {\n messageStyle: {\n width: width\n },\n notificationStyle: {\n top: padding,\n right: padding,\n width: width\n },\n transitionName: 'right'\n },\n \"bottomRight\": {\n messageStyle: {\n width: width\n },\n notificationStyle: {\n bottom: bottom,\n right: padding,\n width: width\n },\n transitionName: 'right'\n },\n \"topLeft\": {\n messageStyle: {\n width: width\n },\n notificationStyle: {\n top: padding,\n left: padding,\n width: width\n },\n transitionName: 'left'\n },\n \"bottomLeft\": {\n messageStyle: {\n width: width\n },\n notificationStyle: {\n bottom: bottom,\n left: padding,\n width: width\n },\n transitionName: 'left'\n }\n};\n\nfunction getMessageInstance() {\n var position = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'top';\n var callback = arguments[1];\n var keyboard = arguments[2];\n var onEscapeKeyUp = arguments[3];\n\n if (messageInstance) {\n callback(messageInstance);\n return;\n }\n var style = positionObj[position].notificationStyle;\n var instanceObj = {\n clsPrefix: clsPrefix,\n transitionName: clsPrefix + '-' + positionObj[position].transitionName,\n style: style, // 覆盖原来的样式\n position: ''\n };\n if (typeof keyboard === 'boolean') {\n instanceObj.keyboard = keyboard;\n }\n if (typeof onEscapeKeyUp === 'function') {\n instanceObj.onEscapeKeyUp = onEscapeKeyUp;\n }\n _beeNotification2[\"default\"].newInstance(instanceObj, function (instance) {\n messageInstance = instance;\n callback(instance);\n });\n}\n\nfunction notice(content, duration, type, onClose, position, style, keyboard, onEscapeKeyUp, showIcon) {\n var iconType = {\n info: 'uf uf-i-c-2',\n success: 'uf uf-correct',\n danger: 'uf uf-close-c',\n warning: 'uf uf-exc-t',\n light: 'uf uf-notification',\n dark: 'uf uf-bubble',\n news: 'uf uf-bell',\n infolight: 'uf uf-i-c-2',\n successlight: 'uf uf-correct',\n dangerlight: 'uf uf-close-c',\n warninglight: 'uf uf-exc-t'\n }[type];\n\n var positionStyle = positionObj[position].messageStyle;\n\n getMessageInstance(position, function (instance) {\n instance.notice({\n key: key,\n duration: duration,\n color: type,\n style: _extends({}, positionStyle, style),\n content: _react2[\"default\"].createElement(\n 'div',\n null,\n showIcon ? _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-notice-description-icon' },\n _react2[\"default\"].createElement('i', { className: (0, _classnames2[\"default\"])(iconType) })\n ) : null,\n _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-notice-description-content' },\n content\n )\n ),\n onClose: onClose\n });\n }, keyboard, onEscapeKeyUp);\n return function () {\n var target = key++;\n return function () {\n if (messageInstance) {\n messageInstance.removeNotice(target);\n }\n };\n }();\n}\n\nexports[\"default\"] = {\n create: function create(obj) {\n var content = obj.content || '';\n var duration = _typeof(obj.duration) == undefined ? defaultDuration : obj.duration;\n var color = obj.color || 'dark';\n var onClose = obj.onClose || noop;\n var position = obj.position || \"top\";\n var style = obj.style || {};\n var showIcon = obj.showIcon || false;\n return notice(content, duration, color, onClose, position, style, obj.keyboard, obj.onEscapeKeyUp, showIcon);\n },\n config: function config(options) {\n if (options.top !== undefined) {\n defaultTop = options.top;\n }\n if (options.duration !== undefined) {\n defaultDuration = options.duration;\n }\n if (options.clsPrefix !== undefined) {\n clsPrefix = options.clsPrefix;\n }\n if (options.defaultBottom !== undefined) {\n defaultBottom = options.defaultBottom;\n }\n if (options.bottom !== undefined) {\n bottom = options.bottom;\n }\n if (options.width !== undefined) {\n bottom = options.width;\n }\n },\n destroy: function destroy() {\n if (messageInstance) {\n messageInstance.destroy();\n messageInstance = null;\n }\n }\n};\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-message/build/Message.js\n// module id = 66\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Notification = require('./Notification');\n\nvar _Notification2 = _interopRequireDefault(_Notification);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nexports[\"default\"] = _Notification2[\"default\"];\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-notification/build/index.js\n// module id = 67\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 _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _beeAnimate = require('bee-animate');\n\nvar _beeAnimate2 = _interopRequireDefault(_beeAnimate);\n\nvar _createChainedFunction = require('tinper-bee-core/lib/createChainedFunction');\n\nvar _createChainedFunction2 = _interopRequireDefault(_createChainedFunction);\n\nvar _ownerDocument = require('bee-overlay/build/utils/ownerDocument');\n\nvar _ownerDocument2 = _interopRequireDefault(_ownerDocument);\n\nvar _addEventListener = require('bee-overlay/build/utils/addEventListener');\n\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _Notice = require('./Notice');\n\nvar _Notice2 = _interopRequireDefault(_Notice);\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 seed = 0;\nvar now = Date.now();\n\nfunction getUuid() {\n return 'uNotification_' + now + '_' + seed++;\n}\n\nvar propTypes = {\n show: _propTypes2[\"default\"].bool,\n clsPrefix: _propTypes2[\"default\"].string,\n style: _propTypes2[\"default\"].object,\n position: _propTypes2[\"default\"].oneOf(['topRight', 'bottomRight', '']),\n transitionName: _propTypes2[\"default\"].string,\n keyboard: _propTypes2[\"default\"].bool, // 按esc键是否关闭notice\n onEscapeKeyUp: _propTypes2[\"default\"].func, // 设置esc键特殊钩子函数\n animation: _propTypes2[\"default\"].oneOfType([_propTypes2[\"default\"].string, _propTypes2[\"default\"].object])\n};\n\nvar defaultProps = {\n clsPrefix: 'u-notification',\n animation: 'fade',\n keyboard: true,\n position: 'topRight'\n};\n\nvar Notification = function (_Component) {\n _inherits(Notification, _Component);\n\n function Notification(props) {\n _classCallCheck(this, Notification);\n\n var _this = _possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.handleDocumentKeyUp = function (e) {\n if (_this.props.keyboard && e.keyCode === 27 && _this.state.notices.length) {\n _this.setState(function (previousState) {\n previousState.notices.shift();\n return {\n notices: previousState.notices\n };\n });\n if (_this.props.onEscapeKeyUp) {\n _this.props.onEscapeKeyUp(e);\n }\n }\n };\n\n _this.state = {\n notices: []\n };\n _this.add = _this.add.bind(_this);\n _this.remove = _this.remove.bind(_this);\n\n return _this;\n }\n\n Notification.prototype.componentDidMount = function componentDidMount() {\n // 给document绑定keyup事件\n var doc = (0, _ownerDocument2[\"default\"])(this);\n this._onDocumentKeyupListener = (0, _addEventListener2[\"default\"])(doc, 'keyup', this.handleDocumentKeyUp);\n };\n\n Notification.prototype.componentWillUnmount = function componentWillUnmount() {\n this._onDocumentKeyupListener.remove();\n };\n\n Notification.prototype.getTransitionName = function getTransitionName() {\n var props = this.props;\n var transitionName = props.transitionName;\n if (!transitionName && props.animation) {\n transitionName = props.clsPrefix + '-' + props.animation;\n }\n return transitionName;\n };\n\n Notification.prototype.add = function add(notice) {\n var key = notice.key = notice.key || getUuid();\n this.setState(function (previousState) {\n var notices = previousState.notices;\n if (!notices.filter(function (v) {\n return v.key === key;\n }).length) {\n return {\n notices: notices.concat(notice)\n };\n }\n });\n };\n\n Notification.prototype.remove = function remove(key) {\n this.setState(function (previousState) {\n return {\n notices: previousState.notices.filter(function (notice) {\n return notice.key !== key;\n })\n };\n });\n };\n\n /**\n * 处理绑定在document上的keyup事件\n */\n\n\n Notification.prototype.render = function render() {\n var _this2 = this,\n _classes;\n\n var _props = this.props,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n position = _props.position,\n style = _props.style;\n\n var noticeNodes = this.state.notices.map(function (notice) {\n var onClose = (0, _createChainedFunction2[\"default\"])(_this2.remove.bind(_this2, notice.key), notice.onClose);\n return _react2[\"default\"].createElement(\n _Notice2[\"default\"],\n _extends({\n clsPrefix: clsPrefix\n }, notice, {\n onClose: onClose\n }),\n notice.content\n );\n });\n var classes = (_classes = {}, _defineProperty(_classes, clsPrefix, 1), _defineProperty(_classes, className, !!className), _classes);\n if (position) {\n classes[clsPrefix + '-' + position] = !!position;\n }\n\n return _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(className, classes), style: style },\n _react2[\"default\"].createElement(\n _beeAnimate2[\"default\"],\n { transitionName: this.getTransitionName() },\n noticeNodes\n )\n );\n };\n\n return Notification;\n}(_react.Component);\n\n;\n\nNotification.propTypes = propTypes;\nNotification.defaultProps = defaultProps;\n\nNotification.newInstance = function newNotificationInstance(properties, callback) {\n if (typeof callback !== 'function') {\n console.error('You must introduce callback as the second parameter of Notification.newInstance().');\n return;\n }\n var props = properties || {};\n var div = document.createElement('div');\n document.body.appendChild(div);\n\n var called = false;\n function ref(notification) {\n if (called) {\n return;\n }\n called = true;\n callback({\n notice: function notice(noticeProps) {\n notification.add(noticeProps);\n },\n removeNotice: function removeNotice(key) {\n notification.remove(key);\n },\n\n component: notification,\n destroy: function destroy() {\n _reactDom2[\"default\"].unmountComponentAtNode(div);\n document.body.removeChild(div);\n }\n });\n }\n _reactDom2[\"default\"].render(_react2[\"default\"].createElement(Notification, _extends({}, props, { ref: ref })), div);\n};\n\nexports[\"default\"] = Notification;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-notification/build/Notification.js\n// module id = 68\n// module chunks = 0","'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/build/index.js\n// module id = 69\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 <rc-animate> 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/build/Animate.js\n// module id = 70\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 <rc-animate> 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/build/ChildrenUtils.js\n// module id = 71\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/build/AnimateChild.js\n// module id = 72\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/build/util.js\n// module id = 73\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports[\"default\"] = function (componentOrElement) {\n return (0, _ownerDocument2[\"default\"])(_reactDom2[\"default\"].findDOMNode(componentOrElement));\n};\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _ownerDocument = require('dom-helpers/ownerDocument');\n\nvar _ownerDocument2 = _interopRequireDefault(_ownerDocument);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-overlay/build/utils/ownerDocument.js\n// module id = 74\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\nexports.default = ownerDocument;\n\nfunction ownerDocument(node) {\n return node && node.ownerDocument || document;\n}\n\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/ownerDocument.js\n// module id = 75\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports[\"default\"] = function (node, event, handler, capture) {\n (0, _on2[\"default\"])(node, event, handler, capture);\n\n return {\n remove: function remove() {\n (0, _off2[\"default\"])(node, event, handler, capture);\n }\n };\n};\n\nvar _on = require('dom-helpers/events/on');\n\nvar _on2 = _interopRequireDefault(_on);\n\nvar _off = require('dom-helpers/events/off');\n\nvar _off2 = _interopRequireDefault(_off);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-overlay/build/utils/addEventListener.js\n// module id = 76\n// module chunks = 0","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inDOM = _interopRequireDefault(require(\"../util/inDOM\"));\n\nvar off = function off() {};\n\nif (_inDOM.default) {\n off = function () {\n if (document.addEventListener) return function (node, eventName, handler, capture) {\n return node.removeEventListener(eventName, handler, capture || false);\n };else if (document.attachEvent) return function (node, eventName, handler) {\n return node.detachEvent('on' + eventName, handler);\n };\n }();\n}\n\nvar _default = off;\nexports.default = _default;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/dom-helpers/events/off.js\n// module id = 77\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 _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 _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 duration: _propTypes2[\"default\"].number,\n onClose: _propTypes2[\"default\"].func,\n children: _propTypes2[\"default\"].any,\n color: _propTypes2[\"default\"].oneOf(['info', 'success', 'danger', 'warning', 'light', 'dark', 'news', 'infolight', 'successlight', 'dangerlight', 'warninglight']),\n title: _propTypes2[\"default\"].any\n};\n\nfunction noop() {}\n\nvar defaultProps = {\n onEnd: noop,\n onClose: noop,\n duration: 4.5,\n closable: true\n};\n\nvar Notice = function (_React$Component) {\n _inherits(Notice, _React$Component);\n\n function Notice(props) {\n _classCallCheck(this, Notice);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _this.clearCloseTimer = _this.clearCloseTimer.bind(_this);\n _this.close = _this.close.bind(_this);\n return _this;\n }\n\n Notice.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n if (this.props.duration) {\n this.closeTimer = setTimeout(function () {\n _this2.close();\n }, this.props.duration * 1000);\n }\n };\n\n Notice.prototype.componentWillUnmount = function componentWillUnmount() {\n this.clearCloseTimer();\n };\n\n Notice.prototype.clearCloseTimer = function clearCloseTimer() {\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n };\n\n Notice.prototype.close = function close() {\n this.clearCloseTimer();\n this.props.onClose();\n };\n\n Notice.prototype.render = function render() {\n var _classes;\n\n var _props = this.props,\n closable = _props.closable,\n clsPrefix = _props.clsPrefix,\n className = _props.className,\n style = _props.style,\n children = _props.children,\n color = _props.color,\n title = _props.title;\n\n var componentClass = clsPrefix + '-notice';\n var classes = (_classes = {}, _defineProperty(_classes, '' + componentClass, 1), _defineProperty(_classes, componentClass + '-closable', closable), _defineProperty(_classes, className, !!className), _classes);\n if (color) {\n classes[componentClass + '-' + color] = true;\n }\n return _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(classes), style: style, onClick: this.close },\n _react2[\"default\"].createElement(\n 'div',\n { className: componentClass + '-content' },\n title && _react2[\"default\"].createElement(\n 'div',\n { className: componentClass + '-title' },\n title\n ),\n _react2[\"default\"].createElement(\n 'div',\n { className: componentClass + '-description' },\n children\n )\n ),\n closable ? _react2[\"default\"].createElement(\n 'a',\n { tabIndex: '0', onClick: this.close, className: componentClass + '-close' },\n _react2[\"default\"].createElement('span', { className: componentClass + '-close-x' })\n ) : null\n );\n };\n\n return Notice;\n}(_react2[\"default\"].Component);\n\n;\n\nNotice.propTypes = propTypes;\nNotice.defaultProps = defaultProps;\n\nexports[\"default\"] = Notice;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-notification/build/Notice.js\n// module id = 78\n// module chunks = 0","'use strict';\n\nvar deselectCurrent = require('toggle-selection');\n\nvar defaultMessage = 'Copy to clipboard: #{key}, Enter';\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? '⌘' : 'Ctrl') + '+C';\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug, message, reselectPrevious, range, selection, mark, success = false;\n if (!options) { options = {}; }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement('span');\n mark.textContent = text;\n // reset user styles for span element\n mark.style.all = 'unset';\n // prevents scrolling to the end of the page\n mark.style.position = 'fixed';\n mark.style.top = 0;\n mark.style.clip = 'rect(0, 0, 0, 0)';\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = 'pre';\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = 'text';\n mark.style.MozUserSelect = 'text';\n mark.style.msUserSelect = 'text';\n mark.style.userSelect = 'text';\n\n document.body.appendChild(mark);\n\n range.selectNode(mark);\n selection.addRange(range);\n\n var successful = document.execCommand('copy');\n if (!successful) {\n throw new Error('copy command was unsuccessful');\n }\n success = true;\n } catch (err) {\n debug && console.error('unable to copy using execCommand: ', err);\n debug && console.warn('trying IE specific stuff');\n try {\n window.clipboardData.setData('text', text);\n success = true;\n } catch (err) {\n debug && console.error('unable to copy using clipboardData: ', err);\n debug && console.error('falling back to prompt');\n message = format('message' in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == 'function') {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/copy-to-clipboard/index.js\n// module id = 79\n// module chunks = 0","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/toggle-selection/index.js\n// module id = 80\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/build/PanelGroup.js\n// module id = 81\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/build/index.js\n// module id = 82\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 /**\r\n * @title 尺寸\r\n */\n size: _propTypes2[\"default\"].oneOf(['sm', 'md', 'xg', 'lg']),\n /**\r\n * @title 样式\r\n */\n style: _propTypes2[\"default\"].object,\n /**\r\n * @title 形状\r\n */\n shape: _propTypes2[\"default\"].oneOf(['block', 'round', 'border', 'squared', 'floating', 'pillRight', 'pillLeft', 'icon']),\n\n bordered: _propTypes2[\"default\"].bool,\n /**\r\n * @title 类型\r\n */\n colors: _propTypes2[\"default\"].oneOf(['primary', 'secondary', 'accent', 'success', 'info', 'warning', 'danger', 'dark', 'light', 'default']),\n /**\r\n * @title 是否禁用\r\n * @veIgnore\r\n */\n disabled: _propTypes2[\"default\"].bool,\n /**\r\n * @title 类名\r\n * @veIgnore\r\n */\n className: _propTypes2[\"default\"].string,\n\n /**\r\n * @title <button> 的 type\r\n * @veIgnore\r\n */\n htmlType: _propTypes2[\"default\"].oneOf(['submit', 'button', 'reset']),\n isSubmit: _propTypes2[\"default\"].bool //是否作为form的提交按钮\n};\n\nvar defaultProps = {\n disabled: false,\n htmlType: 'button',\n clsPrefix: 'u-button',\n bordered: false,\n isSubmit: false\n};\n\nvar sizeMap = {\n sm: 'sm',\n md: 'md',\n xg: 'xg',\n lg: 'lg'\n},\n colorsMap = {\n primary: 'primary',\n secondary: 'secondary',\n accent: 'accent',\n success: 'success',\n info: 'info',\n warning: 'warning',\n danger: 'danger',\n dark: 'dark',\n light: 'light'\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 isSubmit = _props.isSubmit,\n others = _objectWithoutProperties(_props, ['colors', 'shape', 'disabled', 'className', 'size', 'bordered', 'children', 'htmlType', 'clsPrefix', 'isSubmit']);\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/build/Button.js\n// module id = 83\n// module chunks = 0","/**\n *\n * @title Tree基本使用示例\n * @description 示例涵盖 checkbox如何选择,disable状态和部分选择状态。checkStrictly为true时,子节点与父节点的选择情况都不会影响到对方\n *\n */\n\n\nimport React, {\n\tComponent\n} from 'react';\nimport Tree from '../../src';\nimport Icon from 'bee-icon';\nconst TreeNode = Tree.TreeNode;\n\nconst defaultProps = {\n\tkeys: ['0-0-0', '0-0-1']\n}\nclass Demo1 extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst keys = this.props.keys;\n\t\tthis.state = {\n\t\t\tdefaultExpandedKeys: keys,\n\t\t\tdefaultSelectedKeys: keys,\n\t\t\tdefaultCheckedKeys:keys,\n\t\t\tcheckedKeys: {checked:keys},\n\t\t};\n\t}\n\tonSelect(info) {\n\t\tconsole.log('selected', info);\n\t}\n\tonCheck = (checkedKeys,newst) => {\n\t\t//用户可以自定义当前选中和半选中的节点。\n\t\tconsole.log('onCheck', checkedKeys);\n\t\tconst cks = {\n\t\t\tchecked: checkedKeys.checked || checkedKeys,\n\t\t\thalfChecked:checkedKeys.halfChecked\n\t\t};\n\t\tthis.setState({checkedKeys:cks});\n\t}\n\n\tonDoubleClick=(key,treeNode)=>{\n\t\tconsole.log('---onDblClick---'+key+'--treeNode--'+treeNode);\n\t}\n\trender() {\n\t\n\t\treturn (\n\t\t\t<Tree className=\"myCls\" showLine checkable\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\n\t\t\t\t\tdefaultSelectedKeys={this.state.defaultSelectedKeys}\n\t\t\t\t\tdefaultCheckedKeys = {this.state.defaultCheckedKeys}\n\t\t\t\t\tcheckStrictly\n\t\t\t\t\tshowIcon\n\t\t\t\t\tcancelUnSelect={true}\n\t\t\t\t\tonSelect={this.onSelect} onCheck={this.onCheck}\n\t\t\t\t\tonDoubleClick={this.onDoubleClick}\n\t >\n\t <TreeNode title=\"parent 1\" key=\"0-0\" icon={<Icon type=\"uf-treefolder\" />}>\n\t <TreeNode title=\"parent 1-0\" key=\"0-0-0\" disabled icon={<Icon type=\"uf-treefolder\" />}>\n\t <TreeNode title=\"leaf\" key=\"0-0-0-0\" disableCheckbox icon={<Icon type=\"uf-list-s-o\" />}/>\n\t <TreeNode title=\"leaf\" key=\"0-0-0-1\" icon={<Icon type=\"uf-list-s-o\" />}/>\n\t </TreeNode>\n\t <TreeNode title=\"parent 1-1\" key=\"0-0-1\" icon={<Icon type=\"uf-treefolder\" />}>\n\t <TreeNode title={<span>sss</span>} key=\"0-0-1-0\" icon={<Icon type=\"uf-list-s-o\" />}/>\n\t </TreeNode>\n\t </TreeNode>\n\t </Tree>\n\t\t);\n\t}\n}\n\nDemo1.defaultProps = defaultProps;\n\n\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo1.js","import React,{Component} from 'react';\nimport RcTree from './Tree';\nimport TreeNode from './TreeNode';\nimport animation from './openAnimation';\nimport PropTypes from 'prop-types';\n\nconst TreeProps ={\n showLine: PropTypes.bool,\n className: PropTypes.string,\n /** 是否支持多选 */\n multiple: PropTypes.bool,\n /** 是否自动展开父节点 */\n autoExpandParent: PropTypes.bool,\n /** checkable状态下节点选择完全受控(父子节点选中状态不再关联)*/\n checkStrictly: PropTypes.bool,\n /** 是否支持选中 */\n checkable: PropTypes.bool,\n /** 默认展开所有树节点 */\n defaultExpandAll: PropTypes.bool,\n /** 默认展开指定的树节点 */\n defaultExpandedKeys: PropTypes.array,\n /** (受控)展开指定的树节点 */\n expandedKeys: PropTypes.array,\n /** (受控)选中复选框的树节点 */\n checkedKeys: PropTypes.oneOfType([\n PropTypes.array,\n PropTypes.object\n ]),\n /** 默认选中复选框的树节点 */\n defaultCheckedKeys: PropTypes.array,\n /** (受控)设置选中的树节点 */\n selectedKeys: PropTypes.array,\n /** 默认选中的树节点 */\n defaultSelectedKeys: PropTypes.array,\n /** 展开/收起节点时触发 */\n onExpand: PropTypes.func,\n /** 点击复选框触发 */\n onCheck: PropTypes.func,\n /** 点击树节点触发 */\n onSelect: PropTypes.func,\n /** filter some AntTreeNodes as you need. it should return true */\n filterAntTreeNode: PropTypes.func,\n /** 异步加载数据 */\n loadData: PropTypes.func,\n /** 响应右键点击 */\n onRightClick: PropTypes.func,\n /** 设置节点可拖拽(IE>8)*/\n draggable: PropTypes.bool,\n /** 开始拖拽时调用 */\n onDragStart: PropTypes.func,\n /** dragenter 触发时调用 */\n onDragEnter: PropTypes.func,\n /** dragover 触发时调用 */\n onDragOver: PropTypes.func,\n /** dragleave 触发时调用 */\n onDragLeave: PropTypes.func,\n /** drop 触发时调用 */\n onDrop: PropTypes.func,\n style: React.CSSProperties,\n prefixCls: PropTypes.string,\n filterTreeNode: PropTypes.func\n}\n\nconst defaultProps = {\n prefixCls: 'u-tree',\n checkable: false,\n showIcon: false,\n openAnimation: animation,\n}\n\nclass Tree extends Component{\n\n render() {\n const props = this.props;\n let checkable = props.checkable;\n return (\n <RcTree\n {...props}\n checkable={checkable ? (<span className={`${props.prefixCls}-checkbox-inner`} />) : checkable }\n >\n {this.props.children}\n </RcTree>\n );\n }\n}\n\nTree.TreeNode = TreeNode;\nTree.TreeProps = TreeProps;\nTree.defaultProps = defaultProps;\nexport default Tree;\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","/* eslint no-console:0 */\nimport React from 'react';\n\nimport classNames from 'classnames';\nimport {\n loopAllChildren,\n isInclude,\n getOffset,\n filterParentPosition,\n handleCheckState,\n getCheck,\n getStrictlyValue,\n arraysEqual,\n closest\n} from './util';\nimport PropTypes from 'prop-types';\nimport { KeyCode } from 'tinper-bee-core';\n\nfunction noop() {}\n\nclass Tree extends React.Component {\n constructor(props) {\n super(props);\n ['onKeyDown', 'onCheck',\"onUlFocus\",\"_focusDom\"].forEach((m) => {\n this[m] = this[m].bind(this);\n });\n this.contextmenuKeys = [];\n this.checkedKeysChange = true;\n this.selectKeyDomPos = '0-0';\n this.state = {\n expandedKeys: this.getDefaultExpandedKeys(props),\n checkedKeys: this.getDefaultCheckedKeys(props),\n selectedKeys: this.getDefaultSelectedKeys(props),\n dragNodesKeys: '',\n dragOverNodeKey: '',\n dropNodeKey: '',\n };\n }\n\n componentWillReceiveProps(nextProps) {\n const expandedKeys = this.getDefaultExpandedKeys(nextProps, true);\n const checkedKeys = this.getDefaultCheckedKeys(nextProps, true);\n const selectedKeys = this.getDefaultSelectedKeys(nextProps, true);\n const st = {};\n // 用于记录这次data内容有没有变化\n this.dataChange = false;\n if (expandedKeys) {\n st.expandedKeys = expandedKeys;\n }\n if (checkedKeys) {\n if (nextProps.checkedKeys === this.props.checkedKeys) {\n this.checkedKeysChange = false;\n } else {\n this.checkedKeysChange = true;\n }\n st.checkedKeys = checkedKeys;\n }\n if (selectedKeys) {\n st.selectedKeys = selectedKeys;\n }\n if(nextProps.children !== this.props.children){\n this.dataChange = true;\n }\n this.setState(st);\n }\n\n onDragStart(e, treeNode) {\n this.dragNode = treeNode;\n this.dragNodesKeys = this.getDragNodes(treeNode);\n const st = {\n dragNodesKeys: this.dragNodesKeys,\n };\n const expandedKeys = this.getExpandedKeys(treeNode, false);\n if (expandedKeys) {\n // Controlled expand, save and then reset\n this.getRawExpandedKeys();\n st.expandedKeys = expandedKeys;\n }\n this.setState(st);\n this.props.onDragStart({\n event: e,\n node: treeNode,\n });\n this._dropTrigger = false;\n }\n\n onDragEnterGap(e, treeNode) {\n const offsetTop = (0, getOffset)(treeNode.refs.selectHandle).top;\n const offsetHeight = treeNode.refs.selectHandle.offsetHeight;\n const pageY = e.pageY;\n const gapHeight = 2;\n if (pageY > offsetTop + offsetHeight - gapHeight) {\n this.dropPosition = 1;\n return 1;\n }\n if (pageY < offsetTop + gapHeight) {\n this.dropPosition = -1;\n return -1;\n }\n this.dropPosition = 0;\n return 0;\n }\n\n onDragEnter(e, treeNode) {\n const enterGap = this.onDragEnterGap(e, treeNode);\n if (this.dragNode.props.eventKey === treeNode.props.eventKey && enterGap === 0) {\n this.setState({\n dragOverNodeKey: '',\n });\n return;\n }\n const st = {\n dragOverNodeKey: treeNode.props.eventKey,\n };\n const expandedKeys = this.getExpandedKeys(treeNode, true);\n if (expandedKeys) {\n this.getRawExpandedKeys();\n st.expandedKeys = expandedKeys;\n }\n this.setState(st);\n this.props.onDragEnter({\n event: e,\n node: treeNode,\n expandedKeys: expandedKeys && [...expandedKeys] || [...this.state.expandedKeys],\n });\n }\n\n onDragOver(e, treeNode) {\n this.props.onDragOver({\n event: e,\n node: treeNode\n });\n }\n\n onDragLeave(e, treeNode) {\n this.props.onDragLeave({\n event: e,\n node: treeNode\n });\n }\n\n onDrop(e, treeNode) {\n const key = treeNode.props.eventKey;\n this.setState({\n dragOverNodeKey: '',\n dropNodeKey: key,\n });\n if (this.dragNodesKeys.indexOf(key) > -1) {\n if (console.warn) {\n console.warn('can not drop to dragNode(include it\\'s children node)');\n }\n return false;\n }\n\n const posArr = treeNode.props.pos.split('-');\n const res = {\n event: e,\n node: treeNode,\n dragNode: this.dragNode,\n dragNodesKeys: [...this.dragNodesKeys],\n dropPosition: this.dropPosition + Number(posArr[posArr.length - 1]),\n };\n if (this.dropPosition !== 0) {\n res.dropToGap = true;\n }\n if ('expandedKeys' in this.props) {\n res.rawExpandedKeys = [...this._rawExpandedKeys] || [...this.state.expandedKeys];\n }\n this.props.onDrop(res);\n this._dropTrigger = true;\n }\n\n onDragEnd(e, treeNode) {\n this.setState({\n dragOverNodeKey: '',\n });\n this.props.onDragEnd({\n event: e,\n node: treeNode\n });\n }\n/**\n *\n *\n * @param {*} treeNode 当前操作的节点\n * @param {*} keyType 键盘事件通用的key类型 left 为收起,right为展开\n * @returns\n * @memberof Tree\n */\nonExpand(treeNode,keyType) {\n let expanded = !treeNode.props.expanded;\n const controlled = 'expandedKeys' in this.props;\n const expandedKeys = [...this.state.expandedKeys];\n const index = expandedKeys.indexOf(treeNode.props.eventKey);\n\n if(keyType == 'left'){\n expanded = false;\n }else if(keyType == 'right'){\n expanded = true;\n }\n \n if (expanded && index === -1) {\n expandedKeys.push(treeNode.props.eventKey);\n } else if (!expanded && index > -1) {\n expandedKeys.splice(index, 1);\n }\n if (!controlled) {\n this.setState({\n expandedKeys\n });\n }\n this.props.onExpand(expandedKeys, {\n node: treeNode,\n expanded\n });\n\n // after data loaded, need set new expandedKeys\n if (expanded && this.props.loadData) {\n return this.props.loadData(treeNode).then(() => {\n if (!controlled) {\n this.setState({\n expandedKeys\n });\n }\n });\n }\n }\n\n onCheck(treeNode) {\n let checked = !treeNode.props.checked;\n if (treeNode.props.halfChecked) {\n checked = true;\n }\n const key = treeNode.props.eventKey;\n let checkedKeys = [...this.state.checkedKeys];\n const index = checkedKeys.indexOf(key);\n\n const newSt = {\n event: 'check',\n node: treeNode,\n checked,\n };\n\n if (this.props.checkStrictly) {\n if (checked && index === -1) {\n checkedKeys.push(key);\n }\n if (!checked && index > -1) {\n checkedKeys.splice(index, 1);\n }\n this.treeNodesStates[treeNode.props.pos].checked = checked;\n newSt.checkedNodes = [];\n loopAllChildren(this.props.children, (item, ind, pos, keyOrPos) => {\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\n newSt.checkedNodes.push(item);\n }\n });\n if (!('checkedKeys' in this.props)) {\n this.setState({\n checkedKeys,\n });\n }\n const halfChecked = this.props.checkedKeys ? this.props.checkedKeys.halfChecked : [];\n this.props.onCheck(getStrictlyValue(checkedKeys, halfChecked), newSt);\n } else {\n if (checked && index === -1) {\n this.treeNodesStates[treeNode.props.pos].checked = true;\n const checkedPositions = [];\n Object.keys(this.treeNodesStates).forEach(i => {\n if (this.treeNodesStates[i].checked) {\n checkedPositions.push(i);\n }\n });\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\n }\n if (!checked) {\n this.treeNodesStates[treeNode.props.pos].checked = false;\n this.treeNodesStates[treeNode.props.pos].halfChecked = false;\n handleCheckState(this.treeNodesStates, [treeNode.props.pos], false);\n }\n const checkKeys = getCheck(this.treeNodesStates);\n newSt.checkedNodes = checkKeys.checkedNodes;\n newSt.checkedNodesPositions = checkKeys.checkedNodesPositions;\n newSt.halfCheckedKeys = checkKeys.halfCheckedKeys;\n this.checkKeys = checkKeys;\n\n this._checkedKeys = checkedKeys = checkKeys.checkedKeys;\n if (!('checkedKeys' in this.props)) {\n this.setState({\n checkedKeys,\n });\n }\n this.props.onCheck(checkedKeys, newSt);\n }\n }\n\n onSelect(treeNode) {\n const props = this.props;\n const selectedKeys = [...this.state.selectedKeys];\n const eventKey = treeNode.props.eventKey || treeNode.key;\n const index = selectedKeys.indexOf(eventKey);\n let selected;\n //cancelUnSelect为true时第二次点击时不取消选中\n if(props.cancelUnSelect){\n if (index == -1) {\n selected = true;\n if (!props.multiple) {\n selectedKeys.length = 0;\n }\n selectedKeys.push(eventKey);\n }\n }else{\n if (index !== -1) {\n selected = false;\n selectedKeys.splice(index, 1);\n } else {\n selected = true;\n if (!props.multiple) {\n selectedKeys.length = 0;\n }\n selectedKeys.push(eventKey);\n }\n }\n \n const selectedNodes = [];\n if (selectedKeys.length) {\n loopAllChildren(this.props.children, (item) => {\n if (selectedKeys.indexOf(item.key) !== -1) {\n selectedNodes.push(item);\n }\n });\n }\n const newSt = {\n event: 'select',\n node: treeNode,\n selected,\n selectedNodes,\n };\n if (!('selectedKeys' in this.props)) {\n this.setState({\n selectedKeys,\n });\n }\n props.onSelect(selectedKeys, newSt);\n }\n\n\n onDoubleClick(treeNode){\n const props = this.props;\n const eventKey = treeNode.props.eventKey;\n const newSt = {\n event: 'dblclick',\n node: treeNode\n };\n props.onDoubleClick(eventKey,newSt);\n }\n\n on1Enter(e, treeNode) {\n this.props.onMouseEnter({\n event: e,\n node: treeNode\n });\n }\n\n onMouseLeave(e, treeNode) {\n this.props.onMouseLeave({\n event: e,\n node: treeNode\n });\n }\n\n\n\n onContextMenu(e, treeNode) {\n const selectedKeys = [...this.state.selectedKeys];\n const eventKey = treeNode.props.eventKey;\n if (this.contextmenuKeys.indexOf(eventKey) === -1) {\n this.contextmenuKeys.push(eventKey);\n }\n this.contextmenuKeys.forEach((key) => {\n const index = selectedKeys.indexOf(key);\n if (index !== -1) {\n selectedKeys.splice(index, 1);\n }\n });\n if (selectedKeys.indexOf(eventKey) === -1) {\n selectedKeys.push(eventKey);\n }\n this.setState({\n selectedKeys,\n });\n this.props.onRightClick({\n event: e,\n node: treeNode\n });\n }\n\n getTreeNode(){\n const props = this.props;\n \n }\n\n goDown(currentPos,currentIndex,e,treeNode){\n const props = this.props;\n const nextIndex = parseInt(currentIndex) + 1;\n \n let nextPos,backNextPos;\n let nextTreeNode,backNextTreeNode;\n const backNextPosArr=[],backNextTreeNodeArr = [],tempBackNextPosArr=[];\n //是否为展开的节点,如果展开获取第一个子节点的信息,如果没有取相邻节点,若也没有相邻节点则获取父节点的下一个节点\n if(props.expandedKeys.indexOf(treeNode.props.eventKey)>-1){\n nextPos = currentPos + '-0';\n }else{\n nextPos = currentPos.substr(0,currentPos.lastIndexOf('-')+1)+nextIndex;\n \n \n }\n //若向下的节点没有了,找到父级相邻节点\n let tempPosArr = currentPos.split('-');\n let tempPosArrLength = tempPosArr.length;\n //将可能是下一个节点的的位置都备份一遍\n while(tempPosArrLength>1){\n backNextPos = tempPosArrLength>1 && tempPosArr.slice(0,tempPosArrLength-1).join('-')+'-' + (parseInt(tempPosArr[tempPosArrLength-1])+1)\n tempBackNextPosArr.push(backNextPos);\n tempPosArr = tempPosArr.slice(0,tempPosArrLength-1)\n tempPosArrLength = tempPosArr.length;\n }\n //选中下一个相邻的节点\n loopAllChildren(props.children,function(itemNode,index,pos,newKey){\n if(pos == nextPos){\n nextTreeNode = itemNode;\n }\n tempBackNextPosArr.forEach(item=>{\n if(item && item == pos){\n // backNextTreeNode = item;\n backNextTreeNodeArr.push(itemNode);\n backNextPosArr.push(pos);\n }\n })\n \n })\n //如果没有下一个节点,则获取父节点的下一个节点\n if(!nextTreeNode){\n for(let i=0;i<backNextTreeNodeArr.length;i++){\n if(backNextTreeNodeArr[i]){\n nextTreeNode = backNextTreeNodeArr[i];\n nextPos = backNextPosArr[i];\n break;\n }\n }\n\n \n }\n \n //查询的下一个节点不为空的话,则选中\n if(nextTreeNode){\n const queryInfo = `a[pos=\"${nextPos}\"]`;\n const parentEle = closest(e.target,\".u-tree\")\n const focusEle = parentEle?parentEle.querySelector(queryInfo):null;\n focusEle && focusEle.focus()\n this.onSelect(nextTreeNode);\n }\n }\n\n goUp(currentPos,currentIndex,e,treeNode){\n const props = this.props;\n if(currentIndex == 0 && currentPos.length === 3){\n return\n }\n // 向上键Up\n const preIndex = parseInt(currentIndex) - 1;\n let prePos;\n if(preIndex>= 0){\n prePos = currentPos.substr(0,currentPos.lastIndexOf('-')+1)+preIndex;\n }else{\n prePos = currentPos.substr(0,currentPos.lastIndexOf('-'));\n }\n \n let prevTreeNode,preElement;\n //选中上一个相邻的节点\n loopAllChildren(props.children,function(item,index,pos,newKey){\n if(pos == prePos){\n prevTreeNode = item;\n }\n })\n //查询的上一个节点不为空的话,则选中\n if(prevTreeNode){\n if(preIndex >=0){\n //如果上面的节点展开则默认选择最后一个子节点\n if(props.expandedKeys.indexOf(prevTreeNode.key)>-1){\n const preElementArr = e.target.parentElement.previousElementSibling.querySelectorAll('a');\n preElement = preElementArr[preElementArr.length-1];\n prePos = preElement.getAttribute('pos');\n loopAllChildren(props.children,function(item,index,pos,newKey){\n if(pos == prePos){\n prevTreeNode = item;\n }\n })\n }else{\n //上一个节点没有展开\n preElement = e.target.parentElement.previousElementSibling.querySelector('a')\n }\n }else{\n // 不存在上一个节点时,选中它的父节点\n preElement = e.target.parentElement.parentElement.parentElement.querySelector('a')\n }\n \n \n }\n preElement && preElement.focus();\n this.onSelect(prevTreeNode);\n }\n // all keyboard events callbacks run from here at first\n onKeyDown(e,treeNode) {\n e.stopPropagation();\n const props = this.props;\n const currentPos = treeNode.props.pos;\n const currentIndex = currentPos.substr(currentPos.lastIndexOf('-')+1);\n //向下键down\n if(e.keyCode == KeyCode.DOWN){\n this.goDown(currentPos,currentIndex,e,treeNode);\n }else if(e.keyCode == KeyCode.UP){\n this.goUp(currentPos,currentIndex,e,treeNode);\n }else if(e.keyCode == KeyCode.LEFT && !treeNode.props.isLeaf){\n // 收起树节点\n this.onExpand(treeNode,'left');\n }else if (e.keyCode == KeyCode.RIGHT && !treeNode.props.isLeaf){\n // 展开树节点\n this.onExpand(treeNode,'right');\n }else if (e.keyCode == KeyCode.SPACE && props.checkable){\n // 如果是多选tree则进行选中或者反选该节点\n this.onCheck(treeNode);\n }else if(e.keyCode == KeyCode.ENTER){\n this.onDoubleClick(treeNode);\n }\n // e.preventDefault();\n \n }\n\n _focusDom(selectKeyDomPos,targetDom){\n const queryInfo = `a[pos=\"${selectKeyDomPos}\"]`;\n const parentEle = closest(targetDom,\".u-tree\")\n const focusEle = parentEle?parentEle.querySelector(queryInfo):null;\n focusEle && focusEle.focus();\n }\n\n onUlFocus(e){ \n const targetDom = e.target;\n if(this.refs.tree == e.target){\n const {onFocus} = this.props;\n const {selectedKeys=[]} = this.state;\n let tabIndexKey = selectedKeys[0]\n let isExist = false;\n if((this.selectKeyDomExist && tabIndexKey) || !tabIndexKey){\n isExist = true;\n const queryInfo = `a[pos=\"${this.selectKeyDomPos}\"]`;\n const parentEle = closest(e.target,\".u-tree\")\n const focusEle = parentEle?parentEle.querySelector(queryInfo):null;\n focusEle && focusEle.focus();\n }\n let onFocusRes = onFocus && onFocus(isExist);\n if(onFocusRes instanceof Promise){\n onFocusRes.then(()=>{\n if(!isExist){\n this._focusDom(this.selectKeyDomPos,targetDom);\n }\n });\n }else{\n this._focusDom(this.selectKeyDomPos,targetDom);\n } \n }\n\n \n \n \n }\n onUlMouseDown(e){\n e.preventDefault();\n }\n \n getFilterExpandedKeys(props, expandKeyProp, expandAll) {\n const keys = props[expandKeyProp];\n if (!expandAll && !props.autoExpandParent) {\n return keys || [];\n }\n const expandedPositionArr = [];\n if (props.autoExpandParent) {\n loopAllChildren(props.children, (item, index, pos, newKey) => {\n if (keys.indexOf(newKey) > -1) {\n expandedPositionArr.push(pos);\n }\n });\n }\n const filterExpandedKeys = [];\n loopAllChildren(props.children, (item, index, pos, newKey) => {\n if (expandAll) {\n filterExpandedKeys.push(newKey);\n } else if (props.autoExpandParent) {\n expandedPositionArr.forEach(p => {\n if ((p.split('-').length > pos.split('-').length && isInclude(pos.split('-'), p.split('-')) || pos === p) && filterExpandedKeys.indexOf(newKey) === -1) {\n filterExpandedKeys.push(newKey);\n }\n });\n }\n });\n return filterExpandedKeys.length ? filterExpandedKeys : keys;\n }\n\n getDefaultExpandedKeys(props, willReceiveProps) {\n let expandedKeys = willReceiveProps ? undefined :\n this.getFilterExpandedKeys(props, 'defaultExpandedKeys',\n props.defaultExpandedKeys.length ? false : props.defaultExpandAll);\n if ('expandedKeys' in props) {\n expandedKeys = (props.autoExpandParent ?\n this.getFilterExpandedKeys(props, 'expandedKeys', false) :\n props.expandedKeys) || [];\n }\n return expandedKeys;\n }\n\n getDefaultCheckedKeys(props, willReceiveProps) {\n let checkedKeys = willReceiveProps ? undefined : props.defaultCheckedKeys;\n if ('checkedKeys' in props) {\n checkedKeys = props.checkedKeys || [];\n if (props.checkStrictly) {\n if (props.checkedKeys.checked) {\n checkedKeys = props.checkedKeys.checked;\n } else if (!Array.isArray(props.checkedKeys)) {\n checkedKeys = [];\n }\n }\n }\n return checkedKeys;\n }\n\n getDefaultSelectedKeys(props, willReceiveProps) {\n const getKeys = (keys) => {\n if (props.multiple) {\n return [...keys];\n }\n if (keys.length) {\n return [keys[0]];\n }\n return keys;\n };\n let selectedKeys = willReceiveProps ? undefined : getKeys(props.defaultSelectedKeys);\n if ('selectedKeys' in props) {\n selectedKeys = getKeys(props.selectedKeys);\n }\n return selectedKeys;\n }\n\n getRawExpandedKeys() {\n if (!this._rawExpandedKeys && ('expandedKeys' in this.props)) {\n this._rawExpandedKeys = [...this.state.expandedKeys];\n }\n }\n\n getOpenTransitionName() {\n const props = this.props;\n let transitionName = props.openTransitionName;\n const animationName = props.openAnimation;\n if (!transitionName && typeof animationName === 'string') {\n transitionName = `${props.prefixCls}-open-${animationName}`;\n }\n return transitionName;\n }\n\n getDragNodes(treeNode) {\n const dragNodesKeys = [];\n const tPArr = treeNode.props.pos.split('-');\n loopAllChildren(this.props.children, (item, index, pos, newKey) => {\n const pArr = pos.split('-');\n if (treeNode.props.pos === pos || tPArr.length < pArr.length && isInclude(tPArr, pArr)) {\n dragNodesKeys.push(newKey);\n }\n });\n return dragNodesKeys;\n }\n\n getExpandedKeys(treeNode, expand) {\n const key = treeNode.props.eventKey;\n const expandedKeys = this.state.expandedKeys;\n const expandedIndex = expandedKeys.indexOf(key);\n let exKeys;\n if (expandedIndex > -1 && !expand) {\n exKeys = [...expandedKeys];\n exKeys.splice(expandedIndex, 1);\n return exKeys;\n }\n if (expand && expandedKeys.indexOf(key) === -1) {\n return expandedKeys.concat([key]);\n }\n }\n\n filterTreeNode(treeNode) {\n const filterTreeNode = this.props.filterTreeNode;\n if (typeof filterTreeNode !== 'function' || treeNode.props.disabled) {\n return false;\n }\n return filterTreeNode.call(this, treeNode);\n }\n\n renderTreeNode(child, index, level = 0) {\n const pos = `${level}-${index}`;\n const key = child.key || pos;\n \n const state = this.state;\n const props = this.props;\n const {selectedKeys=[]} = this.state;\n let tabIndexKey = selectedKeys[0]\n if(tabIndexKey && key == tabIndexKey){\n this.selectKeyDomExist = true;\n this.selectKeyDomPos = pos;\n }\n // prefer to child's own selectable property if passed\n let selectable = props.selectable;\n if (child.props.hasOwnProperty('selectable')) {\n selectable = child.props.selectable;\n }\n let draggable = props.draggable;\n if(child.props.hasOwnProperty('draggable')){\n draggable = child.props.draggable;\n }\n \n const cloneProps = {\n ref: `treeNode-${key}`,\n root: this,\n eventKey: key,\n pos,\n selectable,\n loadData: props.loadData,\n onMouseEnter: props.onMouseEnter,\n onMouseLeave: props.onMouseLeave,\n onRightClick: props.onRightClick,\n onDoubleClick:props.onDoubleClick,\n onKeyDown:props.onKeyDown,\n prefixCls: props.prefixCls,\n showLine: props.showLine,\n showIcon: props.showIcon,\n draggable,\n dragOver: state.dragOverNodeKey === key && this.dropPosition === 0,\n dragOverGapTop: state.dragOverNodeKey === key && this.dropPosition === -1,\n dragOverGapBottom: state.dragOverNodeKey === key && this.dropPosition === 1,\n _dropTrigger: this._dropTrigger,\n expanded: state.expandedKeys.indexOf(key) !== -1,\n selected: state.selectedKeys.indexOf(key) !== -1,\n openTransitionName: this.getOpenTransitionName(),\n openAnimation: props.openAnimation,\n filterTreeNode: this.filterTreeNode.bind(this),\n openIcon: props.openIcon,\n closeIcon: props.closeIcon,\n focusable:props.focusable,\n tabIndexKey: state.selectedKeys[0],\n tabIndexValue:props.tabIndexValue\n };\n if (props.checkable) {\n cloneProps.checkable = props.checkable;\n if (props.checkStrictly) {\n if (state.checkedKeys) {\n cloneProps.checked = state.checkedKeys.indexOf(key) !== -1 || false;\n }\n if (props.checkedKeys && props.checkedKeys.halfChecked) {\n cloneProps.halfChecked = props.checkedKeys.halfChecked.indexOf(key) !== -1 || false;\n } else {\n cloneProps.halfChecked = false;\n }\n } else {\n if (this.checkedKeys) {\n cloneProps.checked = this.checkedKeys.indexOf(key) !== -1 || false;\n }\n cloneProps.halfChecked = this.halfCheckedKeys.indexOf(key) !== -1;\n }\n }\n if (this.treeNodesStates && this.treeNodesStates[pos]) {\n Object.assign(cloneProps, this.treeNodesStates[pos].siblingPosition);\n }\n return React.cloneElement(child, cloneProps);\n }\n\n render() {\n const props = this.props;\n let showLineCls = \"\";\n if (props.showLine) {\n showLineCls = `${props.prefixCls}-show-line`;\n }\n const domProps = {\n className: classNames(props.className, props.prefixCls, showLineCls),\n role: 'tree-node',\n };\n\n // if (props.focusable) {\n // // domProps.tabIndex = '0';//需求改成了默认选择第一个节点或者选中的节点\n // // domProps.onKeyDown = this.onKeyDown;//添加到具体的treeNode上了\n // }\n const getTreeNodesStates = () => {\n this.treeNodesStates = {};\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\n this.treeNodesStates[pos] = {\n siblingPosition,\n };\n });\n };\n if (props.showLine && !props.checkable ) {\n getTreeNodesStates();\n }\n if (props.checkable && (this.checkedKeysChange || props.loadData || this.dataChange)) {\n if (props.checkStrictly) {\n getTreeNodesStates();\n } else if (props._treeNodesStates) {\n this.treeNodesStates = props._treeNodesStates.treeNodesStates;\n this.halfCheckedKeys = props._treeNodesStates.halfCheckedKeys;\n this.checkedKeys = props._treeNodesStates.checkedKeys;\n } else {\n const checkedKeys = this.state.checkedKeys;\n let checkKeys;\n if (!props.loadData && this.checkKeys && this._checkedKeys &&\n arraysEqual(this._checkedKeys, checkedKeys)) {\n // if checkedKeys the same as _checkedKeys from onCheck, use _checkedKeys.\n checkKeys = this.checkKeys;\n } else {\n const checkedPositions = [];\n this.treeNodesStates = {};\n loopAllChildren(props.children, (item, index, pos, keyOrPos, siblingPosition) => {\n this.treeNodesStates[pos] = {\n node: item,\n key: keyOrPos,\n checked: false,\n halfChecked: false,\n siblingPosition,\n };\n if (checkedKeys.indexOf(keyOrPos) !== -1) {\n this.treeNodesStates[pos].checked = true;\n checkedPositions.push(pos);\n }\n });\n // if the parent node's key exists, it all children node will be checked\n handleCheckState(this.treeNodesStates, filterParentPosition(checkedPositions), true);\n checkKeys = getCheck(this.treeNodesStates);\n }\n this.halfCheckedKeys = checkKeys.halfCheckedKeys;\n this.checkedKeys = checkKeys.checkedKeys;\n }\n }\n this.selectKeyDomExist = false;\n return (\n <ul {...domProps} unselectable=\"true\" ref=\"tree\" onFocus = {this.onUlFocus} tabIndex={props.focusable && props.tabIndexValue} onMouseDown={this.onUlMouseDown}>\n {React.Children.map(props.children, this.renderTreeNode, this)}\n </ul>\n );\n }\n}\n\nTree.propTypes = {\n prefixCls: PropTypes.string,\n children: PropTypes.any,\n showLine: PropTypes.bool,\n showIcon: PropTypes.bool,\n selectable: PropTypes.bool,\n multiple: PropTypes.bool,\n checkable: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.node,\n ]),\n _treeNodesStates: PropTypes.object,\n checkStrictly: PropTypes.bool,\n draggable: PropTypes.bool,\n autoExpandParent: PropTypes.bool,\n defaultExpandAll: PropTypes.bool,\n defaultExpandedKeys: PropTypes.arrayOf(PropTypes.string),\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\n defaultCheckedKeys: PropTypes.arrayOf(PropTypes.string),\n checkedKeys: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.string),\n PropTypes.object,\n ]),\n defaultSelectedKeys: PropTypes.arrayOf(PropTypes.string),\n selectedKeys: PropTypes.arrayOf(PropTypes.string),\n onExpand: PropTypes.func,\n onCheck: PropTypes.func,\n onSelect: PropTypes.func,\n loadData: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onRightClick: PropTypes.func,\n onDragStart: PropTypes.func,\n onDragEnter: PropTypes.func,\n onDragOver: PropTypes.func,\n onDragLeave: PropTypes.func,\n onDrop: PropTypes.func,\n onDragEnd: PropTypes.func,\n filterTreeNode: PropTypes.func,\n openTransitionName: PropTypes.string,\n focusable: PropTypes.bool,\n openAnimation: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n};\n\nTree.defaultProps = {\n prefixCls: 'rc-tree',\n showLine: false,\n showIcon: true,\n selectable: true,\n multiple: false,\n checkable: false,\n checkStrictly: false,\n draggable: false,\n autoExpandParent: true,\n defaultExpandAll: false,\n defaultExpandedKeys: [],\n defaultCheckedKeys: [],\n defaultSelectedKeys: [],\n onExpand: noop,\n onCheck: noop,\n onSelect: noop,\n onDragStart: noop,\n onDragEnter: noop,\n onDragOver: noop,\n onDragLeave: noop,\n onDrop: noop,\n onDragEnd: noop,\n onDoubleClick:noop,\n tabIndexValue:0\n};\n\nexport default Tree;\n\n\n// WEBPACK FOOTER //\n// ./src/Tree.js","/* eslint no-loop-func: 0*/\n\nimport React from 'react';\n\nexport function browser(navigator) {\n let tem;\n const ua = navigator.userAgent;\n let M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\n if (/trident/i.test(M[1])) {\n tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\n return `IE ${tem[1] || ''}`;\n }\n if (M[1] === 'Chrome') {\n tem = ua.match(/\\b(OPR|Edge)\\/(\\d+)/);\n if (tem) return tem.slice(1).join(' ').replace('OPR', 'Opera');\n }\n M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];\n tem = ua.match(/version\\/(\\d+)/i);\n if (tem) {\n M.splice(1, 1, tem[1]);\n }\n return M.join(' ');\n}\n\n// export function getOffset(el) {\n// const obj = el.getBoundingClientRect();\n// return {\n// left: obj.left + document.body.scrollLeft,\n// top: obj.top + document.body.scrollTop,\n// width: obj.width,\n// height: obj.height\n// };\n// }\n\n// // iscroll offset\n// offset = function (el) {\n// var left = -el.offsetLeft,\n// top = -el.offsetTop;\n\n// // jshint -W084\n// while (el = el.offsetParent) {\n// left -= el.offsetLeft;\n// top -= el.offsetTop;\n// }\n// // jshint +W084\n\n// return {\n// left: left,\n// top: top\n// };\n// }\n\n/* eslint-disable */\nexport function getOffset(ele) {\n let doc, win, docElem, rect;\n\n if (!ele.getClientRects().length) {\n return { top: 0, left: 0 };\n }\n\n rect = ele.getBoundingClientRect();\n\n if (rect.width || rect.height) {\n doc = ele.ownerDocument;\n win = doc.defaultView;\n docElem = doc.documentElement;\n\n return {\n top: rect.top + win.pageYOffset - docElem.clientTop,\n left: rect.left + win.pageXOffset - docElem.clientLeft\n };\n }\n\n return rect;\n}\n/* eslint-enable */\n\nfunction getChildrenlength(children) {\n let len = 1;\n if (Array.isArray(children)) {\n len = children.length;\n }\n return len;\n}\n\nfunction getSiblingPosition(index, len, siblingPosition) {\n if (len === 1) {\n siblingPosition.first = true;\n siblingPosition.last = true;\n } else {\n siblingPosition.first = index === 0;\n siblingPosition.last = index === len - 1;\n }\n return siblingPosition;\n}\n\nexport function loopAllChildren(childs, callback, parent) {\n const loop = (children, level, _parent) => {\n const len = getChildrenlength(children);\n React.Children.forEach(children, (item, index) => {\n const pos = `${level}-${index}`;\n if (item.props.children && item.type && item.type.isTreeNode) {\n loop(item.props.children, pos, { node: item, pos });\n }\n callback(item, index, pos, item.key || pos, getSiblingPosition(index, len, {}), _parent);\n });\n };\n loop(childs, 0, parent);\n}\n\nexport function isInclude(smallArray, bigArray) {\n return smallArray.every((ii, i) => {\n return ii === bigArray[i];\n });\n}\n// console.log(isInclude(['0', '1'], ['0', '10', '1']));\n\n\n// arr.length === 628, use time: ~20ms\nexport function filterParentPosition(arr) {\n const levelObj = {};\n arr.forEach((item) => {\n const posLen = item.split('-').length;\n if (!levelObj[posLen]) {\n levelObj[posLen] = [];\n }\n levelObj[posLen].push(item);\n });\n const levelArr = Object.keys(levelObj).sort();\n for (let i = 0; i < levelArr.length; i++) {\n if (levelArr[i + 1]) {\n levelObj[levelArr[i]].forEach(ii => {\n for (let j = i + 1; j < levelArr.length; j++) {\n levelObj[levelArr[j]].forEach((_i, index) => {\n if (isInclude(ii.split('-'), _i.split('-'))) {\n levelObj[levelArr[j]][index] = null;\n }\n });\n levelObj[levelArr[j]] = levelObj[levelArr[j]].filter(p => p);\n }\n });\n }\n }\n let nArr = [];\n levelArr.forEach(i => {\n nArr = nArr.concat(levelObj[i]);\n });\n return nArr;\n}\n// console.log(filterParentPosition(\n// ['0-2', '0-3-3', '0-10', '0-10-0', '0-0-1', '0-0', '0-1-1', '0-1']\n// ));\n\n\nfunction stripTail(str) {\n const arr = str.match(/(.+)(-[^-]+)$/);\n let st = '';\n if (arr && arr.length === 3) {\n st = arr[1];\n }\n return st;\n}\nfunction splitPosition(pos) {\n return pos.split('-');\n}\n\nexport function handleCheckState(obj, checkedPositionArr, checkIt) {\n // console.log(stripTail('0-101-000'));\n let objKeys = Object.keys(obj);\n // let s = Date.now();\n objKeys.forEach((i, index) => {\n const iArr = splitPosition(i);\n let saved = false;\n checkedPositionArr.forEach((_pos) => {\n // 设置子节点,全选或全不选\n const _posArr = splitPosition(_pos);\n if (iArr.length > _posArr.length && isInclude(_posArr, iArr)) {\n obj[i].halfChecked = false;\n obj[i].checked = checkIt;\n objKeys[index] = null;\n }\n if (iArr[0] === _posArr[0] && iArr[1] === _posArr[1]) {\n // 如果\n saved = true;\n }\n });\n if (!saved) {\n objKeys[index] = null;\n }\n });\n // TODO: 循环 2470000 次耗时约 1400 ms。 性能瓶颈!\n // console.log(Date.now()-s, checkedPositionArr.length * objKeys.length);\n objKeys = objKeys.filter(i => i); // filter non null;\n\n for (let pIndex = 0; pIndex < checkedPositionArr.length; pIndex++) {\n // 循环设置父节点的 选中 或 半选状态\n const loop = (__pos) => {\n const _posLen = splitPosition(__pos).length;\n if (_posLen <= 2) { // e.g. '0-0', '0-1'\n return;\n }\n let sibling = 0;\n let siblingChecked = 0;\n const parentPosition = stripTail(__pos);\n objKeys.forEach((i /* , index*/) => {\n const iArr = splitPosition(i);\n if (iArr.length === _posLen && isInclude(splitPosition(parentPosition), iArr)) {\n sibling++;\n if (obj[i].checked) {\n siblingChecked++;\n const _i = checkedPositionArr.indexOf(i);\n if (_i > -1) {\n checkedPositionArr.splice(_i, 1);\n if (_i <= pIndex) {\n pIndex--;\n }\n }\n } else if (obj[i].halfChecked) {\n siblingChecked += 0.5;\n }\n // objKeys[index] = null;\n }\n });\n // objKeys = objKeys.filter(i => i); // filter non null;\n const parent = obj[parentPosition];\n // sibling 不会等于0\n // 全不选 - 全选 - 半选\n if (siblingChecked === 0) {\n parent.checked = false;\n parent.halfChecked = false;\n } else if (siblingChecked === sibling) {\n parent.checked = true;\n parent.halfChecked = false;\n } else {\n parent.halfChecked = true;\n parent.checked = false;\n }\n loop(parentPosition);\n };\n loop(checkedPositionArr[pIndex], pIndex);\n }\n // console.log(Date.now()-s, objKeys.length, checkIt);\n}\n\nexport function getCheck(treeNodesStates) {\n const halfCheckedKeys = [];\n const checkedKeys = [];\n const checkedNodes = [];\n const checkedNodesPositions = [];\n Object.keys(treeNodesStates).forEach((item) => {\n const itemObj = treeNodesStates[item];\n if (itemObj.checked) {\n checkedKeys.push(itemObj.key);\n checkedNodes.push(itemObj.node);\n checkedNodesPositions.push({ node: itemObj.node, pos: item });\n } else if (itemObj.halfChecked) {\n halfCheckedKeys.push(itemObj.key);\n }\n });\n return {\n halfCheckedKeys, checkedKeys, checkedNodes, checkedNodesPositions, treeNodesStates,\n };\n}\n\nexport function getStrictlyValue(checkedKeys, halfChecked) {\n if (halfChecked) {\n return { checked: checkedKeys, halfChecked };\n }\n return checkedKeys;\n}\n\nexport function arraysEqual(a, b) {\n if (a === b) return true;\n if (a === null || typeof a === 'undefined' || b === null || typeof b === 'undefined') {\n return false;\n }\n if (a.length !== b.length) return false;\n\n // If you don't care about the order of the elements inside\n // the array, you should sort both arrays here.\n\n for (let i = 0; i < a.length; ++i) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\n\nexport function closest(el, selector) {\n const matchesSelector = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;\n\n while (el) {\n if (matchesSelector.call(el, selector)) {\n return el;\n } else {\n el = el.parentElement;\n }\n }\n return null;\n}\n\nexport function isTreeNode(node) {\n return node && node.type && node.type.isTreeNode;\n}\n\nexport function toArray(children) {\n const ret = [];\n React.Children.forEach(children, (c) => {\n ret.push(c);\n });\n return ret;\n}\n\nexport function getNodeChildren(children) {\n return toArray(children).filter(isTreeNode);\n}\n\nlet onlyTreeNodeWarned = false;\n\nexport function warnOnlyTreeNode() {\n if (onlyTreeNodeWarned) return;\n onlyTreeNodeWarned = true;\n console.warn('Tree only accept TreeNode as children.');\n}\n\n\n\n\n// WEBPACK FOOTER //\n// ./src/util.js","import React from 'react';\nimport ReactDOM from 'react-dom'\nimport classNames from 'classnames';\nimport Animate from 'bee-animate';\nimport {\n browser,\n getNodeChildren,\n toArray,\n warnOnlyTreeNode\n} from './util';\nimport PropTypes from 'prop-types';\nimport { KeyCode } from 'tinper-bee-core';\nconst browserUa = typeof window !== 'undefined' ? browser(window.navigator) : '';\nconst ieOrEdge = /.*(IE|Edge).+/.test(browserUa);\n// const uaArray = browserUa.split(' ');\n// const gtIE8 = uaArray.length !== 2 || uaArray[0].indexOf('IE') === -1 || Number(uaArray[1]) > 8;\n\nconst defaultTitle = '---';\n\nclass TreeNode extends React.Component {\n constructor(props) {\n super(props);\n [\n 'onExpand',\n 'onCheck',\n 'onContextMenu',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onDragStart',\n 'onDragEnter',\n 'onDragOver',\n 'onDragLeave',\n 'onDrop',\n 'onDragEnd',\n 'onDoubleClick',\n 'onKeyDown'\n ].forEach((m) => {\n this[m] = this[m].bind(this);\n });\n this.state = {\n dataLoading: false,\n dragNodeHighlight: false,\n };\n }\n\n componentDidMount() {\n if (!this.props.root._treeNodeInstances) {\n this.props.root._treeNodeInstances = [];\n }\n this.props.root._treeNodeInstances.push(this);\n }\n // shouldComponentUpdate(nextProps) {\n // if (!nextProps.expanded) {\n // return false;\n // }\n // return true;\n // }\n\n onCheck() {\n\n this.props.root.onCheck(this);\n }\n\n onSelect() {\n clearTimeout(this.doubleClickFlag);\n let _this = this;\n if(this.props.onDoubleClick){\n //执行延时\n this.doubleClickFlag = setTimeout(function(){\n //do function在此处写单击事件要执行的代码\n _this.props.root.onSelect(_this);\n },300);\n }else{\n _this.props.root.onSelect(_this);\n }\n \n \n }\n\n \n onDoubleClick() {\n clearTimeout(this.doubleClickFlag);\n this.props.root.onDoubleClick(this);\n }\n\n onMouseEnter(e) {\n e.preventDefault();\n this.props.root.onMouseEnter(e, this);\n }\n\n onMouseLeave(e) {\n e.preventDefault();\n this.props.root.onMouseLeave(e, this);\n }\n\n onContextMenu(e) {\n e.preventDefault();\n this.props.root.onContextMenu(e, this);\n }\n\n onDragStart(e) {\n // console.log('dragstart', this.props.eventKey, e);\n // e.preventDefault();\n e.stopPropagation();\n this.setState({\n dragNodeHighlight: true,\n });\n this.props.root.onDragStart(e, this);\n try {\n // ie throw error\n // firefox-need-it\n e.dataTransfer.setData('text/plain', '');\n } finally {\n // empty\n }\n }\n\n onDragEnter(e) {\n e.preventDefault();\n e.stopPropagation();\n this.props.root.onDragEnter(e, this);\n }\n\n onDragOver(e) {\n // todo disabled\n e.preventDefault();\n e.stopPropagation();\n this.props.root.onDragOver(e, this);\n return false;\n }\n\n onDragLeave(e) {\n e.stopPropagation();\n this.props.root.onDragLeave(e, this);\n }\n\n onDrop(e) {\n e.preventDefault();\n e.stopPropagation();\n this.setState({\n dragNodeHighlight: false,\n });\n this.props.root.onDrop(e, this);\n }\n\n onDragEnd(e) {\n e.stopPropagation();\n this.setState({\n dragNodeHighlight: false,\n });\n this.props.root.onDragEnd(e, this);\n }\n\n onExpand() {\n const callbackPromise = this.props.root.onExpand(this);\n if (callbackPromise && typeof callbackPromise === 'object') {\n const setLoading = (dataLoading) => {\n this.setState({\n dataLoading\n });\n };\n setLoading(true);\n callbackPromise.then(() => {\n setLoading(false);\n }, () => {\n setLoading(false);\n });\n }\n }\n\n // keyboard event support\n onKeyDown(e) {\n this.props.root.onKeyDown(e,this);\n if(e.keyCode == KeyCode.SPACE || e.keyCode == KeyCode.DOWN || e.keyCode == KeyCode.LEFT || e.keyCode == KeyCode.RIGHT ||e.keyCode == KeyCode.UP){\n e.preventDefault();\n }\n \n }\n\n renderSwitcher(props, expandedState) {\n let stateIcon;\n const prefixCls = props.prefixCls;\n const switcherCls = {\n [`${prefixCls}-switcher`]: true\n };\n if (!props.showLine) {\n switcherCls[`${prefixCls}-noline_${expandedState}`] = true;\n } else if (props.pos === '0-0') {\n switcherCls[`${prefixCls}-roots_${expandedState}`] = true;\n } else {\n switcherCls[`${prefixCls}-center_${expandedState}`] = !props.last;\n switcherCls[`${prefixCls}-bottom_${expandedState}`] = props.last;\n }\n\n if (expandedState === 'open' && props.openIcon) {\n stateIcon = props.openIcon;\n switcherCls['icon-none'] = true;\n }\n if (expandedState === 'close' && props.closeIcon) {\n stateIcon = props.closeIcon;\n switcherCls['icon-none'] = true;\n }\n //switcherCls[stateIcon] = stateIcon;\n props.switcherClass?switcherCls[`${props.switcherClass}`]=true:'';\n if (props.disabled) {\n switcherCls[`${prefixCls}-switcher-disabled`] = true;\n return <span className={classNames(switcherCls)} style={props.switcherStyle}>{stateIcon}</span>;\n }\n return <span className={classNames(switcherCls)} style={props.switcherStyle} onClick={this.onExpand}>{stateIcon}</span>;\n }\n\n renderCheckbox(props) {\n const prefixCls = props.prefixCls;\n const checkboxCls = {\n [`${prefixCls}-checkbox`]: true,\n };\n if (props.checked) {\n checkboxCls[`${prefixCls}-checkbox-checked`] = true;\n } else if (props.halfChecked) {\n checkboxCls[`${prefixCls}-checkbox-indeterminate`] = true;\n }\n let customEle = null;\n if (typeof props.checkable !== 'boolean') {\n customEle = props.checkable;\n }\n if (props.disabled || props.disableCheckbox) {\n checkboxCls[`${prefixCls}-checkbox-disabled`] = true;\n return <span ref=\"checkbox\" className={classNames(checkboxCls)}>{customEle}</span>;\n }\n return (\n <span ref=\"checkbox\"\n className={classNames(checkboxCls) }\n onClick={this.onCheck}\n >{customEle}</span>);\n }\n\n renderChildren(props) {\n const renderFirst = this.renderFirst;\n this.renderFirst = 1;\n let transitionAppear = true;\n if (!renderFirst && props.expanded) {\n transitionAppear = false;\n }\n const children = props.children;\n let newChildren = children;\n // 确定所有子节点是否是TreeNode\n let allTreeNode = false;\n if (Array.isArray(children)) {\n for( let index = 0; index < children.length; index++ ){\n let item = children[index];\n allTreeNode = item.type.isTreeNode == 1;\n if( !allTreeNode ){\n //当检查到子节点中有不是 TreeNode 的,则直接结束检查。同时不会渲染所有子节点\n break;\n }\n }\n \n }else if(children && children.type && children.type.isTreeNode == 1){\n allTreeNode = true;\n }\n // 如果props.children的长度大于0才可以生成子对象\n if (allTreeNode && React.Children.count(children) ){\n const cls = {\n [`${props.prefixCls}-child-tree`]: true,\n [`${props.prefixCls}-child-tree-open`]: props.expanded,\n };\n if (props.showLine) {\n cls[`${props.prefixCls}-line`] = !props.last;\n }\n const animProps = {};\n if (props.openTransitionName) {\n animProps.transitionName = props.openTransitionName;\n } else if (typeof props.openAnimation === 'object') {\n animProps.animation = Object.assign({}, props.openAnimation);\n if (!transitionAppear) {\n delete animProps.animation.appear;\n }\n }\n newChildren = (\n <Animate {...animProps}\n showProp=\"data-expanded\"\n transitionAppear={transitionAppear}\n component=\"\"\n >\n {!props.expanded ? null : <ul className={classNames(cls)} data-expanded={props.expanded}>\n {React.Children.map(children, (item, index) => {\n return props.root.renderTreeNode(item, index, props.pos);\n }, props.root)}\n </ul>}\n </Animate>\n );\n }\n return newChildren;\n }\n\n getNodeChildren = () => {\n const { children } = this.props;\n const originList = toArray(children).filter(node => node);\n const targetList = getNodeChildren(originList);\n\n if (originList.length !== targetList.length) {\n warnOnlyTreeNode();\n }\n\n return targetList;\n };\n /**\n *判断是否为叶子节点,isLeaf的优先级>props.children。如果是异步加载是根据isLeaf的值进行判断的\n *\n * @returns\n * @memberof TreeNode\n */\n checkIsLeaf(){\n const { isLeaf, loadData } = this.props;\n\n const hasChildren = this.getNodeChildren().length !== 0;\n\n if (isLeaf === false) {\n return false;\n }\n\n return (\n isLeaf || (!loadData && !hasChildren) \n );\n }\n onFocus(e){\n e.stopPropagation();\n }\n render() {\n const props = this.props;\n const prefixCls = props.prefixCls;\n const expandedState = props.expanded ? 'open' : 'close';\n let iconState = expandedState;\n\n let canRenderSwitcher = true;\n const content = props.title;\n let newChildren = this.renderChildren(props);\n let openIconCls = false,\n closeIconCls = false;\n\n //以下变量控制是否鼠标单机双击方法中的变量\n let timer = 0;\n let delay = 500;\n let prevent = false;\n\n // if (!newChildren || newChildren === props.children) {\n // // content = newChildren;\n // newChildren = null;\n // if (!props.loadData || props.isLeaf) {\n // canRenderSwitcher = false;\n // iconState = 'docu';\n // }\n // }\n if(this.checkIsLeaf()){\n canRenderSwitcher = false;\n iconState = 'docu';\n }\n // For performance, does't render children into dom when `!props.expanded` (move to Animate)\n // if (!props.expanded) {\n // newChildren = null;\n // }\n\n const iconEleCls = {\n [`${prefixCls}-iconEle`]: true,\n [`${prefixCls}-icon_loading`]: this.state.dataLoading,\n [`${prefixCls}-icon__${iconState}`]: true\n };\n const selectHandle = () => {\n const titleClass=props.titleClass?prefixCls+'-title'+' '+props.className:prefixCls+'-title';\n // const icon = (props.showIcon || props.loadData && this.state.dataLoading) ?\n // <span className={classNames(iconEleCls)}></span> : null;\n let icon;\n if(props.showIcon && props.icon){\n icon = <span\n className={classNames(\n `${prefixCls}-iconEle`,\n `${prefixCls}-icon__customize`,\n )}\n >\n {typeof currentIcon === 'function' ?\n React.createElement(props.icon, {\n ...this.props,\n }) : props.icon}\n </span>\n }else if(props.showIcon || props.loadData && this.state.dataLoading){\n icon = <span className={classNames(iconEleCls)}></span>\n }\n const title = <span className={titleClass} style={props.titleStyle} >{content}</span>;\n const wrap = `${prefixCls}-node-content-wrapper`;\n const domProps = {\n className: `${wrap} ${wrap}-${iconState === expandedState ? iconState : 'normal'}`,\n };\n if (!props.disabled) {\n if (props.selected || !props._dropTrigger && this.state.dragNodeHighlight) {\n domProps.className += ` ${prefixCls}-node-selected`;\n }\n domProps.onClick = (e) => {\n var _this = this;\n e.preventDefault();\n if (props.selectable) {\n _this.onSelect();\n }\n\n // not fire check event\n // if (props.checkable) {\n // this.onCheck();\n // }\n };\n\n if(props.onDoubleClick){\n domProps.onDoubleClick = this.onDoubleClick;\n }\n\n if (props.onRightClick) {\n domProps.onContextMenu = this.onContextMenu;\n }\n if (props.onMouseEnter) {\n domProps.onMouseEnter = this.onMouseEnter;\n }\n if (props.onMouseLeave) {\n domProps.onMouseLeave = this.onMouseLeave;\n }\n \n\n if (props.draggable) {\n domProps.className += ' draggable';\n if (ieOrEdge) {\n // ie bug!\n domProps.href = '#';\n }\n domProps.draggable = true;\n domProps['aria-grabbed'] = true;\n domProps.onDragStart = this.onDragStart;\n }\n }\n //设置tabIndex\n if(props.focusable){\n domProps.onKeyDown = this.onKeyDown;\n domProps.tabIndex = -1;\n if(props.tabIndexKey){\n if(props.eventKey == props.tabIndexKey){\n domProps.tabIndex = props.tabIndexValue;\n }\n }else if(props.pos == '0-0'){\n domProps.tabIndex = props.tabIndexValue;\n }\n }\n \n\n \n return (\n <a ref=\"selectHandle\" pos={props.pos} title={typeof content === 'string' ? content : ''} {...domProps}>\n {icon}{title}\n </a>\n );\n };\n\n const liProps = {};\n if (props.draggable) {\n liProps.onDragEnter = this.onDragEnter;\n liProps.onDragOver = this.onDragOver;\n liProps.onDragLeave = this.onDragLeave;\n liProps.onDrop = this.onDrop;\n liProps.onDragEnd = this.onDragEnd;\n }\n liProps.onFocus = this.onFocus;\n let disabledCls = '';\n let dragOverCls = '';\n if (props.disabled) {\n disabledCls = `${prefixCls}-treenode-disabled`;\n } else if (props.dragOver) {\n dragOverCls = 'drag-over';\n } else if (props.dragOverGapTop) {\n dragOverCls = 'drag-over-gap-top';\n } else if (props.dragOverGapBottom) {\n dragOverCls = 'drag-over-gap-bottom';\n }\n\n const filterCls = props.filterTreeNode(this) ? 'filter-node' : '';\n\n const noopSwitcher = () => {\n const cls = {\n [`${prefixCls}-switcher`]: true,\n [`${prefixCls}-switcher-noop`]: true,\n };\n if (props.showLine) {\n // console.log('line---------');\n cls[`${prefixCls}-center_docu`] = !props.last;\n cls[`${prefixCls}-bottom_docu`] = props.last;\n } else {\n cls[`${prefixCls}-noline_docu`] = true;\n }\n return <span className={classNames(cls)}></span>;\n };\n const selectedCls = props.selected?`${prefixCls}-treenode-selected`:'';\n return (\n <li {...liProps} ref=\"li\" style={props.style}\n className={classNames(props.className, disabledCls, dragOverCls, filterCls,selectedCls) }\n >\n {canRenderSwitcher ? this.renderSwitcher(props, expandedState) : noopSwitcher()}\n {props.checkable ? this.renderCheckbox(props) : null}\n {selectHandle()}\n {newChildren}\n </li>\n );\n }\n}\n\nTreeNode.isTreeNode = 1;\n\nTreeNode.propTypes = {\n prefixCls: PropTypes.string,\n disabled: PropTypes.bool,\n disableCheckbox: PropTypes.bool,\n expanded: PropTypes.bool,\n isLeaf: PropTypes.bool,\n root: PropTypes.object,\n onSelect: PropTypes.func,\n openIcon: PropTypes.element,\n closeIcon: PropTypes.element,\n style: PropTypes.object,\n className: PropTypes.string,\n titleClass:PropTypes.string,\n titleStyle:PropTypes.object,\n switcherClass:PropTypes.string,\n switcherStyle:PropTypes.object\n};\n\nTreeNode.defaultProps = {\n title: defaultTitle,\n tabIndexValue:0\n};\n\nexport default TreeNode;\n\n\n// WEBPACK FOOTER //\n// ./src/TreeNode.js","import { cssAnimation } from 'tinper-bee-core';\n\nfunction animate(node, show, done) {\n let height;\n return cssAnimation(node, 'u-motion-collapse', {\n start() {\n if (!show) {\n node.style.height = `${node.offsetHeight}px`;\n } else {\n height = node.offsetHeight;\n node.style.height = 0;\n }\n },\n active() {\n node.style.height = `${show ? height : 0}px`;\n },\n end() {\n node.style.height = '';\n done();\n },\n });\n}\n\nconst animation = {\n enter(node, done) {\n return animate(node, true, done);\n },\n leave(node, done) {\n return animate(node, false, done);\n },\n appear(node, done) {\n return animate(node, true, done);\n },\n};\n\nexport default animation;\n\n\n\n// WEBPACK FOOTER //\n// ./src/openAnimation.js","'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/build/index.js\n// module id = 90\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 = propTypes;\n\nexports[\"default\"] = Icon;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/bee-icon/build/Icon.js\n// module id = 91\n// module chunks = 0","/**\n*\n* @title Tree数据可控示例\n* @description\n* \b\n*/\n\nimport React, { Component } from 'react';\nimport Tree from '../../src';\n\nconst x = 6;\nconst y = 5;\nconst z = 2;\nconst gData = [];\n\nconst generateData = (_level, _preKey, _tns) => {\n const preKey = _preKey || '0';\n const tns = _tns || gData;\n\n const children = [];\n for (let i = 0; i < x; i++) {\n const key = `${preKey}-${i}`;\n tns.push({ title: key, key });\n if (i < y) {\n children.push(key);\n }\n }\n if (_level < 0) {\n return tns;\n }\n const level = _level - 1;\n children.forEach((key, index) => {\n tns[index].children = [];\n return generateData(level, key, tns[index].children);\n });\n};\ngenerateData(z);\n\nconst TreeNode = Tree.TreeNode;\n\n\nclass Demo2 extends Component{\n constructor(props) {\n \tsuper(props);\n this.state = {\n expandedKeys: [],\n autoExpandParent: true,\n checkedKeys: ['0-0-0'],\n selectedKeys: [],\n };\n this.onExpand = this.onExpand.bind(this);\n this.onCheck = this.onCheck.bind(this);\n this.onSelect = this.onSelect.bind(this);\n }\n onExpand(expandedKeys) {\n console.log('onExpand', arguments);\n // if not set autoExpandParent to false, if children expanded, parent can not collapse.\n // or, you can remove all expanded children keys.\n this.setState({\n expandedKeys,\n autoExpandParent: false,\n });\n }\n onCheck(checkedKeys) {\n this.setState({\n checkedKeys,\n selectedKeys: ['0-3', '0-4'],\n });\n }\n onSelect(selectedKeys, info) {\n console.log('onSelect', info);\n this.setState({ selectedKeys });\n }\n render() {\n const loop = data => data.map((item) => {\n if (item.children) {\n return (\n <TreeNode key={item.key} title={item.key} disableCheckbox={item.key === '0-0-0'}>\n {loop(item.children)}\n </TreeNode>\n );\n }\n return <TreeNode key={item.key} title={item.key} isLeaf={true}/>;\n });\n return (\n <Tree\n checkable\n focusable\n className={'demo2'}\n onExpand={this.onExpand} expandedKeys={this.state.expandedKeys}\n autoExpandParent={this.state.autoExpandParent}\n onCheck={this.onCheck} \n onSelect={this.onSelect} \n >\n {loop(gData)}\n </Tree>\n );\n }\n};\n\n\nexport default Demo2;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo2.js","/**\n*\n* @title Tree 拖拽使用示例\n* @description 拖动结点插入到另一个结点后面或者其他的父节点里面。\n*\n*/\n\n\n\nimport React, { Component } from 'react';\nimport Tree from '../../src';\n\nconst x = 3;\nconst y = 2;\nconst z = 1;\nconst gData = [];\n\nconst generateData = (_level, _preKey, _tns) => {\n const preKey = _preKey || '0';\n const tns = _tns || gData;\n\n const children = [];\n for (let i = 0; i < x; i++) {\n const key = `${preKey}-${i}`;\n tns.push({ title: key, key });\n if (i < y) {\n children.push(key);\n }\n }\n if (_level < 0) {\n return tns;\n }\n const level = _level - 1;\n children.forEach((key, index) => {\n tns[index].children = [];\n return generateData(level, key, tns[index].children);\n });\n};\ngenerateData(z);\n\nconst TreeNode = Tree.TreeNode;\n\nclass Demo3 extends Component{\n constructor(props) {\n super(props);\n this.state = {\n gData,\n expandedKeys: ['0-0', '0-0-0', '0-0-0-0'],\n };\n this.onDragEnter = this.onDragEnter.bind(this);\n this.onDrop = this.onDrop.bind(this);\n }\n onDragEnter(info) {\n console.log(info);\n // expandedKeys 需要受控时设置\n // this.setState({\n // expandedKeys: info.expandedKeys,\n // });\n }\n onDrop(info) {\n console.log(info);\n const dropKey = info.node.props.eventKey;\n const dragKey = info.dragNode.props.eventKey;\n // const dragNodesKeys = info.dragNodesKeys;\n const loop = (data, key, callback) => {\n data.forEach((item, index, arr) => {\n if (item.key === key) {\n return callback(item, index, arr);\n }\n if (item.children) {\n return loop(item.children, key, callback);\n }\n });\n };\n const data = [...this.state.gData];\n let dragObj;\n loop(data, dragKey, (item, index, arr) => {\n arr.splice(index, 1);\n dragObj = item;\n });\n if (info.dropToGap) {\n let ar;\n let i;\n loop(data, dropKey, (item, index, arr) => {\n ar = arr;\n i = index;\n });\n ar.splice(i, 0, dragObj);\n } else {\n loop(data, dropKey, (item) => {\n item.children = item.children || [];\n // where to insert 示例添加到尾部,可以是随意位置\n item.children.push(dragObj);\n });\n }\n this.setState({\n gData: data,\n });\n }\n render() {\n const loop = data => data.map((item) => {\n if (item.children && item.children.length) {\n return <TreeNode key={item.key} title={item.key}>{loop(item.children)}</TreeNode>;\n }\n return <TreeNode key={item.key} title={item.key} />;\n });\n return (\n <Tree\n defaultExpandedKeys={this.state.expandedKeys}\n draggable\n onDragEnter={this.onDragEnter}\n onDrop={this.onDrop}\n >\n {loop(this.state.gData)}\n </Tree>\n );\n }\n};\n\nexport default Demo3;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo3.js","/**\n *\n * @title Tree可搜索示例\n * @description\n *\n */\n\n\nimport React, {\n Component\n} from 'react';\nimport FormControl from 'bee-form-control';\nimport Tree from '../../src';\n\nconst x = 3;\nconst y = 2;\nconst z = 1;\nconst gData = [];\n\nconst generateData = (_level, _preKey, _tns) => {\n const preKey = _preKey || '0';\n const tns = _tns || gData;\n\n const children = [];\n for (let i = 0; i < x; i++) {\n const key = `${preKey}-${i}`;\n tns.push({\n title: key,\n key\n });\n if (i < y) {\n children.push(key);\n }\n }\n if (_level < 0) {\n return tns;\n }\n const level = _level - 1;\n children.forEach((key, index) => {\n tns[index].children = [];\n return generateData(level, key, tns[index].children);\n });\n};\ngenerateData(z);\n\nconst TreeNode = Tree.TreeNode;\n\nconst dataList = [];\nconst generateList = (data) => {\n for (let i = 0; i < data.length; i++) {\n const node = data[i];\n const key = node.key;\n dataList.push({\n key,\n title: key\n });\n if (node.children) {\n generateList(node.children, node.key);\n }\n }\n};\ngenerateList(gData);\n\nconst getParentKey = (key, tree) => {\n let parentKey;\n for (let i = 0; i < tree.length; i++) {\n const node = tree[i];\n if (node.children) {\n if (node.children.some(item => item.key === key)) {\n parentKey = node.key;\n } else if (getParentKey(key, node.children)) {\n parentKey = getParentKey(key, node.children);\n }\n }\n }\n return parentKey;\n};\n\n\nclass Demo4 extends Component {\n constructor(props) {\n super(props);\n this.state = {\n expandedKeys: [],\n searchValue: '',\n autoExpandParent: true,\n }\n }\n onExpand = (expandedKeys) => {\n this.setState({\n expandedKeys,\n autoExpandParent: false,\n });\n }\n onChange = (value) => {\n\n const expandedKeys = [];\n dataList.forEach((item) => {\n if (item.key.indexOf(value) > -1) {\n expandedKeys.push(getParentKey(item.key, gData));\n }\n });\n const uniqueExpandedKeys = [];\n expandedKeys.forEach((item) => {\n if (item && uniqueExpandedKeys.indexOf(item) === -1) {\n uniqueExpandedKeys.push(item);\n }\n });\n this.setState({\n expandedKeys: uniqueExpandedKeys,\n searchValue: value,\n autoExpandParent: true,\n });\n }\n render() {\n const {\n searchValue,\n expandedKeys,\n autoExpandParent\n } = this.state;\n const loop = data => data.map((item) => {\n const index = item.key.search(searchValue);\n const beforeStr = item.key.substr(0, index);\n const afterStr = item.key.substr(index + searchValue.length);\n const title = index > -1 ? (\n <span>\n {beforeStr}\n <span className=\"u-tree-searchable-filter\">{searchValue}</span>\n {afterStr}\n </span>\n ) : <span>{item.key}</span>;\n if (item.children) {\n return (\n <TreeNode key={item.key} title={title}>\n {loop(item.children)}\n </TreeNode>\n );\n }\n return <TreeNode key={item.key} title={title} />;\n });\n return (\n <div>\n <FormControl\n style={{ width: 200 }}\n placeholder=\"Search\"\n onChange={this.onChange}\n />\n <Tree\n onExpand={this.onExpand}\n expandedKeys={expandedKeys}\n autoExpandParent={autoExpandParent}\n >\n {loop(gData)}\n </Tree>\n </div>\n );\n }\n}\n\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/build/index.js\n// module id = 95\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 _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 _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 onSearch: _propTypes2[\"default\"].func,\n onChange: _propTypes2[\"default\"].func,\n onBlur: _propTypes2[\"default\"].func,\n showClose: _propTypes2[\"default\"].bool,\n focusSelect: _propTypes2[\"default\"].bool\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.handleSearchChange = function (e) {\n var onChange = _this.props.onChange;\n\n var value = _this.input.value;\n _this.setState({\n value: value,\n showSearch: value == null || value === \"\"\n });\n if (onChange) {\n onChange(value, e);\n }\n };\n\n _this.handleChange = function (e) {\n var onChange = _this.props.onChange;\n\n var value = _this.input.value;\n _this.setState({\n showClose: true\n });\n if (onChange) {\n onChange(value, e);\n }\n };\n\n _this.clearValue = function () {\n var onChange = _this.props.onChange;\n\n _this.setState({\n showSearch: true,\n value: \"\",\n showClose: false\n });\n if (onChange) {\n onChange(\"\");\n }\n _this.input.focus();\n };\n\n _this.handleKeyDown = function (e) {\n var _this$props = _this.props,\n onSearch = _this$props.onSearch,\n type = _this$props.type;\n\n if (e.keyCode === 13 && type === \"search\") {\n if (onSearch) {\n onSearch(_this.input.value);\n }\n }\n };\n\n _this.handleSearch = function (e) {\n var onSearch = _this.props.onSearch;\n\n if (onSearch) onSearch(_this.input.value);\n };\n\n _this.handleBlur = function (e) {\n var value = _this.state.value;\n var onBlur = _this.props.onBlur;\n\n\n if (onBlur) {\n onBlur(value, e);\n }\n };\n\n _this.handleFocus = function (e) {\n var value = _this.state.value;\n var onFocus = _this.props.onFocus;\n\n if (_this.props.focusSelect) {\n _this.input.select();\n }\n if (onFocus) {\n onFocus(value, e);\n }\n };\n\n _this.renderInput = function () {\n var _this$props2 = _this.props,\n Component = _this$props2.componentClass,\n type = _this$props2.type,\n className = _this$props2.className,\n size = _this$props2.size,\n clsPrefix = _this$props2.clsPrefix,\n value = _this$props2.value,\n onChange = _this$props2.onChange,\n onSearch = _this$props2.onSearch,\n onBlur = _this$props2.onBlur,\n showClose = _this$props2.showClose,\n focusSelect = _this$props2.focusSelect,\n others = _objectWithoutProperties(_this$props2, ['componentClass', 'type', 'className', 'size', 'clsPrefix', 'value', 'onChange', 'onSearch', 'onBlur', 'showClose', 'focusSelect']);\n // input[type=\"file\"] 不应该有类名 .form-control.\n\n\n var classes = {};\n if (size) {\n classes['' + size] = true;\n }\n\n var classNames = void 0;\n if (type !== 'file') {\n classNames = (0, _classnames2[\"default\"])(clsPrefix, classes);\n }\n\n return showClose ? _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(clsPrefix + '-close', clsPrefix + '-affix-wrapper', className) },\n _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n ref: function ref(el) {\n return _this.input = el;\n },\n value: value,\n onChange: _this.handleChange,\n onBlur: _this.handleBlur,\n onFocus: _this.handleFocus,\n className: (0, _classnames2[\"default\"])(className, classNames)\n })),\n _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-suffix' },\n _this.state.showClose ? _react2[\"default\"].createElement(_beeIcon2[\"default\"], { onClick: _this.clearValue, type: 'uf-close-c' }) : ''\n )\n ) : _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n ref: function ref(el) {\n return _this.input = el;\n },\n value: value,\n onChange: _this.handleChange,\n onBlur: _this.handleBlur,\n onFocus: _this.handleFocus,\n className: (0, _classnames2[\"default\"])(className, classNames)\n }));\n };\n\n _this.renderSearch = function () {\n var _this$props3 = _this.props,\n Component = _this$props3.componentClass,\n type = _this$props3.type,\n className = _this$props3.className,\n size = _this$props3.size,\n clsPrefix = _this$props3.clsPrefix,\n value = _this$props3.value,\n onChange = _this$props3.onChange,\n onSearch = _this$props3.onSearch,\n onBlur = _this$props3.onBlur,\n others = _objectWithoutProperties(_this$props3, ['componentClass', 'type', 'className', 'size', 'clsPrefix', 'value', 'onChange', 'onSearch', 'onBlur']);\n // input[type=\"file\"] 不应该有类名 .form-control.\n\n\n var classes = {};\n if (size) {\n classes['' + size] = true;\n }\n classes[clsPrefix + '-search'] = true;\n\n if (type === \"search\") {\n return _react2[\"default\"].createElement(\n 'div',\n { className: (0, _classnames2[\"default\"])(clsPrefix + '-search', clsPrefix + '-affix-wrapper', className) },\n _react2[\"default\"].createElement(Component, _extends({}, others, {\n type: type,\n ref: function ref(el) {\n return _this.input = el;\n },\n onChange: _this.handleSearchChange,\n value: value,\n onKeyDown: _this.handleKeyDown,\n onBlur: _this.handleBlur,\n onFocus: _this.handleFocus,\n className: (0, _classnames2[\"default\"])(className, clsPrefix, classes)\n })),\n _react2[\"default\"].createElement(\n 'div',\n { className: clsPrefix + '-suffix' },\n _react2[\"default\"].createElement(_beeIcon2[\"default\"], { type: 'uf-search', onClick: _this.handleSearch })\n )\n );\n }\n };\n\n _this.state = {\n showSearch: !props.value,\n value: props.value == null ? \"\" : props.value,\n showClose: false\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\n if (this.props.type === \"search\") {\n return this.renderSearch();\n }\n\n return this.renderInput();\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/build/FormControl.js\n// module id = 96\n// module chunks = 0","/**\n *\n * @title Tree异步数据加载\n * @description 当点击展开,异步获取子节点数据\n *\n */\n\n\nimport React, {\n Component\n} from 'react';\nimport Tree from '../../src';\n\nconst x = 3;\nconst y = 2;\nconst z = 1;\nconst gData = [];\n\nconst generateData = (_level, _preKey, _tns) => {\n const preKey = _preKey || '0';\n const tns = _tns || gData;\n\n const children = [];\n for (let i = 0; i < x; i++) {\n const key = `${preKey}-${i}`;\n tns.push({\n title: key,\n key\n });\n if (i < y) {\n children.push(key);\n }\n }\n if (_level < 0) {\n return tns;\n }\n const level = _level - 1;\n children.forEach((key, index) => {\n tns[index].children = [];\n return generateData(level, key, tns[index].children);\n });\n};\ngenerateData(z);\n\nconst TreeNode = Tree.TreeNode;\n\nfunction generateTreeNodes(treeNode) {\n const arr = [];\n const key = treeNode.props.eventKey;\n for (let i = 0; i < 3; i++) {\n arr.push({\n name: `leaf ${key}-${i}`,\n key: `${key}-${i}`\n });\n }\n return arr;\n}\n\nfunction setLeaf(treeData, curKey, level) {\n const loopLeaf = (data, lev) => {\n const l = lev - 1;\n data.forEach((item) => {\n if ((item.key.length > curKey.length) ? item.key.indexOf(curKey) !== 0 :\n curKey.indexOf(item.key) !== 0) {\n return;\n }\n if (item.children) {\n loopLeaf(item.children, l);\n } else if (l < 1) {\n item.isLeaf = true;\n }\n });\n };\n loopLeaf(treeData, level + 1);\n}\n\nfunction getNewTreeData(treeData, curKey, child, level) {\n const loop = (data) => {\n if (level < 1 || curKey.length - 3 > level * 2) return;\n data.forEach((item) => {\n if (curKey.indexOf(item.key) === 0) {\n if (item.children) {\n loop(item.children);\n } else {\n item.children = child;\n }\n }\n });\n };\n loop(treeData);\n setLeaf(treeData, curKey, level);\n}\n\nclass Demo5 extends Component {\n constructor(props) {\n super(props);\n this.state = {\n treeData: [],\n };\n this.onSelect = this.onSelect.bind(this);\n this.onLoadData = this.onLoadData.bind(this);\n }\n componentDidMount() {\n setTimeout(() => {\n this.setState({\n treeData: [{\n name: 'pNode 01',\n key: '0-0'\n }, {\n name: 'pNode 02',\n key: '0-1'\n }, {\n name: 'pNode 03',\n key: '0-2',\n isLeaf: true\n }, ],\n });\n }, 100);\n }\n onSelect(info) {\n console.log('selected', info);\n }\n onLoadData(treeNode) {\n return new Promise((resolve) => {\n setTimeout(() => {\n const treeData = [...this.state.treeData];\n getNewTreeData(treeData, treeNode.props.eventKey, generateTreeNodes(treeNode), 2);\n this.setState({\n treeData\n });\n resolve();\n }, 1000);\n });\n }\n render() {\n const loop = data => data.map((item) => {\n if (item.children) {\n return <TreeNode title={item.name} key={item.key}>{loop(item.children)}</TreeNode>;\n }\n return <TreeNode title={item.name} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\n });\n const treeNodes = loop(this.state.treeData);\n return (\n <Tree onSelect={this.onSelect} loadData={this.onLoadData} >\n {treeNodes}\n </Tree>\n );\n }\n};\n\nexport default Demo5\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo5.js","/**\n *\n * @title Tree基本使用示例自定义图标\n * @description 添加openIcon、closeIcon属性\n *\n */\n\n\nimport React, {\n\tComponent\n} from 'react';\nimport Tree from '../../src';\nimport Icon from 'bee-icon';\nconst TreeNode = Tree.TreeNode;\n\nconst defaultProps = {\n\tkeys: ['0-0-0', '0-0-1']\n}\nconsole.log(Tree);\nclass Demo1 extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst keys = this.props.keys;\n\t\tthis.state = {\n\t\t\tdefaultExpandedKeys: keys,\n\t\t\tdefaultSelectedKeys: keys,\n\t\t\tdefaultCheckedKeys: keys,\n\t\t};\n\t}\n\tonSelect(info) {\n\t\tconsole.log('selected', info);\n\t}\n\tonCheck(info) {\n\t\tconsole.log('onCheck', info);\n\t}\n\trender() {\n\t\treturn (\n\n\t\t\t<Tree className=\"myCls\" checkable openIcon={<Icon type=\"uf-minus\" />} closeIcon={<Icon type=\"uf-plus\" />}\n\t defaultExpandedKeys={this.state.defaultExpandedKeys}\n\t defaultSelectedKeys={this.state.defaultSelectedKeys}\n\t defaultCheckedKeys={this.state.defaultCheckedKeys}\n\t onSelect={this.onSelect} onCheck={this.onCheck}\n\t >\n\t <TreeNode title=\"parent 1\" key=\"0-0\">\n\t <TreeNode title=\"parent 1-0\" key=\"0-0-0\" disabled>\n\t <TreeNode title=\"leaf\" key=\"0-0-0-0\" disableCheckbox />\n\t <TreeNode title=\"leaf\" key=\"0-0-0-1\" />\n\t </TreeNode>\n\t <TreeNode title=\"parent 1-1\" key=\"0-0-1\">\n\t <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\"0-0-1-0\" />\n\t </TreeNode>\n\t </TreeNode>\n\t </Tree>\n\t\t);\n\t}\n}\n\nDemo1.defaultProps = defaultProps;\n\n\nexport default Demo1;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo6.js","/**\n *\n * @title Tree增加节点\n * @description \n *\n */\n\n\nimport React, {\n Component\n} from 'react';\nimport Tree from '../../src';\nimport Button from 'bee-button';\n\nconst TreeNode = Tree.TreeNode;\n\n\nclass Demo7 extends Component {\n constructor(props) {\n super(props);\n this.state = {\n treeData: [],\n defaultExpandedKeys: ['0-0', '0-1', '0-2'],\n parentNode: {}\n };\n this.onSelect = this.onSelect.bind(this);\n this.addNode = this.addNode.bind(this);\n this.clickFun = this.clickFun.bind(this);\n this.getNodeByKey = this.getNodeByKey.bind(this);\n this.parentNode = null\n }\n componentDidMount() {\n setTimeout(() => {\n this.setState({\n treeData: [{\n name: 'pNode 01',\n key: '0-0',\n children: [{\n name: 'leaf 0-0-0',\n key: '0-0-0'\n }, {\n name: 'leaf 0-0-1',\n key: '0-0-1'\n }]\n }, {\n name: 'pNode 02',\n key: '0-1',\n children: [{\n name: 'leaf 0-1-0',\n key: '0-1-0'\n }, {\n name: 'leaf 0-1-1',\n key: '0-1-1'\n }]\n }, {\n name: 'pNode 03',\n key: '0-2',\n isLeaf: true\n }, ],\n });\n }, 100);\n }\n /**\n * 增加节点\n * @param string prKey [父节点key]\n * @param object nodeItem [子节点信息]\n */\n addNode(prKey, nodeItem) {\n const data = this.state.treeData;\n let parNode;\n if (prKey) {\n // 如果prKey存在则搜索父节点进行添加\n parNode = this.getNodeByKey(data, prKey);\n //如果父节点存在的话,添加到父节点上\n if (parNode) {\n if (!parNode.children) {\n parNode.children = [];\n }\n // 如果key不存在就动态生成一个\n if (!nodeItem.key) {\n nodeItem.key = prKey + parNode.children.length + 1;\n }\n parNode.children.push(nodeItem);\n }\n } else {\n // 没有穿prKey添加到根下成为一级节点\n if (!nodeItem.key) {\n nodeItem.key = \"0-\" + data.length + 1;\n }\n data.push(nodeItem);\n }\n\n this.setState({\n data\n });\n }\n\n getNodeByKey(data, key) {\n if (!this.parentNode) {\n data.find(item => {\n if (item.key === key) {\n console.log('item.name---' + item.name)\n this.parentNode = item;\n return (true);\n } else if (item.children) {\n return this.getNodeByKey(item.children, key);\n\n }\n })\n }\n return this.parentNode;\n }\n\n\n\n onSelect(info) {\n console.log('selected', info);\n }\n /**\n * 点击button事件\n */\n clickFun() {\n let prKey, nodeItem;\n prKey = '0-1';\n nodeItem = {\n name: 'leaf 0-0-4'\n }\n this.addNode(prKey, nodeItem);\n }\n\n render() {\n const loop = data => data.map((item) => {\n if (item.children) {\n return <TreeNode title={item.name} key={item.key}>{loop(item.children)}</TreeNode>;\n }\n return <TreeNode title={item.name} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\n });\n const treeNodes = loop(this.state.treeData);\n console.log('defaultKeys--' + this.state.defaultExpandedKeys);\n return (\n <div>\n <Tree onSelect={this.onSelect} defaultExpandedKeys={this.state.defaultExpandedKeys}>\n {treeNodes}\n </Tree>\n <Button colors=\"success\" onClick={this.clickFun}>\n 增加节点\n </Button>\n </div>\n );\n }\n};\n\nexport default Demo7\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo7.js","/**\n *\n * @title Tree 节点可编辑\n * @description 鼠标移动到节点上点击编辑图标进行编辑。e.node.props.eventKey代表当前节点key值。editKey指当前操作的节点key\n */\n\n\nimport React, {\n\tComponent\n} from 'react';\nimport Tree from '../../src';\nimport Button from 'bee-button';\nimport Icon from 'bee-icon';\n\nconst TreeNode = Tree.TreeNode;\n\nclass Demo8 extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\ttreeData: [],\n\t\t\tisHover: \"\",\n\t\t\teditKey: \"\"\n\t\t};\n\n\t}\n\n\n\tonMouseEnter = (e) => {\n\t\tthis.setState({\n\t\t\tisHover: e.node.props.eventKey\n\t\t})\n\t}\n\tonMouseLeave = (e, treenode) => {\n\t\tthis.setState({\n\t\t\tisHover: \"\",\n\t\t\teditKey: \"\"\n\t\t})\n\n\t}\n\n\teditRender = (item) => {\n\t\tthis.setState({\n\t\t\teditKey: item.key\n\t\t});\n\t}\n\tnodechange = (item, value) => {\n\t\titem.name = value;\n\t}\n\trenderTreeTitle = (item) => {\n\t\tlet titleIcon, titleInfo;\n\t\t//编辑时input框\n\t\tif (this.state.editKey == item.key) {\n\t\t\ttitleInfo = <input type=\"text\" id=\"itemKey\" defaultValue={item.name} onChange={(e) => this.nodechange(item, e.target.value)} />\n\t\t} else {\n\t\t\ttitleInfo = <span className=\"title-middle\">{item.name}</span>\n\t\t}\n\t\t//编辑图标\n\t\tif (this.state.isHover == item.key) {\n\t\t\ttitleIcon = <Icon className=\"title-middle edit-icon\" type=\"uf-pencil\" onClick={(e) => this.editRender(item)}></Icon>;\n\t\t}\n\t\treturn (<div className=\"title-con\">\n\n\t\t\t{titleInfo}\n\t\t\t{titleIcon}\n\t\t</div>);\n\t}\n\n\tcomponentDidMount = () => {\n\t\tsetTimeout(() => {\n\t\t\tthis.setState({\n\t\t\t\ttreeData: [{\n\t\t\t\t\tname: 'pNode 01',\n\t\t\t\t\tkey: '0-0',\n\t\t\t\t\tchildren: [{\n\t\t\t\t\t\tname: 'leaf 0-0-0',\n\t\t\t\t\t\tkey: '0-0-0'\n\t\t\t\t\t}, {\n\t\t\t\t\t\tname: 'leaf 0-0-1',\n\t\t\t\t\t\tkey: '0-0-1'\n\t\t\t\t\t}]\n\t\t\t\t}, {\n\t\t\t\t\tname: 'pNode 02',\n\t\t\t\t\tkey: '0-1',\n\t\t\t\t\tchildren: [{\n\t\t\t\t\t\tname: 'leaf 0-1-0',\n\t\t\t\t\t\tkey: '0-1-0'\n\t\t\t\t\t}, {\n\t\t\t\t\t\tname: 'leaf 0-1-1',\n\t\t\t\t\t\tkey: '0-1-1'\n\t\t\t\t\t}]\n\t\t\t\t}, {\n\t\t\t\t\tname: 'pNode 03',\n\t\t\t\t\tkey: '0-2',\n\t\t\t\t\tisLeaf: true\n\t\t\t\t}, ],\n\t\t\t});\n\t\t\n\t\t}, 100);\n\t}\n\trender() {\n\t\tconst loop = data => data.map((item) => {\n\t\t\tif (item.children) {\n\t\t\t\treturn <TreeNode title={this.renderTreeTitle(item)} key={item.key}>{loop(item.children)}</TreeNode>;\n\t\t\t}\n\t\t\treturn <TreeNode title={this.renderTreeTitle(item)} key={item.key} isLeaf={item.isLeaf} disabled={item.key === '0-0-0'} />;\n\t\t});\n\t\tconst treeNodes = loop(this.state.treeData);\n\t\treturn (\n\t\t\t<Tree onMouseLeave={this.onMouseLeave} onMouseEnter={this.onMouseEnter}>\n\t\t\t\t{treeNodes}\n\t\t\t</Tree>\n\n\t\t);\n\t}\n}\n\n\n\nexport default Demo8;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo8.js","/**\n *\n * @title 连接线Tree\n * @description \n *\n */\n\n\nimport React, {\n\tComponent\n} from 'react';\nimport Tree from '../../src';\n\nconst TreeNode = Tree.TreeNode;\nclass Demo9 extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst keys = this.props.keys;\n\t\tthis.state = {\n\t\t\tdefaultExpandedKeys: keys\n\t\t};\n\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Tree className=\"myCls\" showLine checkable defaultExpandAll={true}>\n\t <TreeNode title=\"parent 1\" key=\"0-0\">\n\t <TreeNode title=\"parent 1-0\" key=\"0-0-0\" >\n\t <TreeNode title=\"leaf\" key=\"0-0-0-0\" />\n\t <TreeNode title=\"leaf\" key=\"0-0-0-1\" />\n\t </TreeNode>\n\t <TreeNode title=\"parent 1-1\" key=\"0-0-1\">\n\t <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\"0-0-1-0\" />\n\t </TreeNode>\n\t </TreeNode>\n\t </Tree>\n\t\t);\n\t}\n}\n\nexport default Demo9;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo9.js","/**\n *\n * @title Tree基本使用示例\n * @description 如何获取选中对象自定义对象和数据\n *\n */\n\n\nimport React, {\n\tComponent\n} from 'react';\nimport Tree from '../../src';\n\nconst TreeNode = Tree.TreeNode;\n\nconst defaultProps = {\n\tkeys: ['0-0-0', '0-0-1']\n}\nclass Demo10 extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst keys = this.props.keys;\n\t\tthis.state = {\n\t\t\tdefaultExpandedKeys: keys,\n\t\t\tdefaultSelectedKeys: keys,\n\t\t\tdefaultCheckedKeys:keys\n\t\t\t// checkedKeys: {checked:keys},\n\t\t};\n }\n /**\n * 获取当前选中行的item对象。\n * @param {*} value \n */\n\tonSelect(selectedKeys, e) {\n console.log(`${selectedKeys} selected`);//获取key\n let currentObject = {};\n currentObject.title = e.node.props.title; //获取选中对象的数据\n currentObject.key = e.node.props.eventKey;\n console.log(currentObject); \n\t}\n\tonCheck = (checkedKeys) => {\n\t\tlet self = this;\n\t\tconsole.log('onCheck', checkedKeys);\n\t\tconst cks = {\n\t\t\tchecked: checkedKeys.checked || checkedKeys,\n\t\t};\n\t\t// this.setState({checkedKeys:cks});\n\t}\n\n\tonDoubleClick=(key,treeNode)=>{\n\t\tconsole.log('---onDblClick---'+key+'--treeNode--'+treeNode);\n\t}\n\trender() {\n\t\n\t\treturn (\n\t\t\t<Tree className=\"myCls\" showLine checkable\n defaultExpandedKeys={this.state.defaultExpandedKeys}\n defaultSelectedKeys={this.state.defaultSelectedKeys}\n defaultCheckedKeys = {this.state.defaultCheckedKeys}\n checkStrictly\n onSelect={this.onSelect} onCheck={this.onCheck}\n onDoubleClick={this.onDoubleClick}\n >\n <TreeNode title=\"parent 1\" key=\"0-0\" >\n <TreeNode title=\"parent 1-0\" key=\"0-0-0\" disabled>\n <TreeNode title=\"leaf\" key=\"0-0-0-0\" disableCheckbox />\n <TreeNode title=\"leaf\" key=\"0-0-0-1\" />\n </TreeNode>\n <TreeNode title=\"parent 1-1\" key=\"0-0-1\">\n <TreeNode title={<span style={{ color: '#08c' }}>sss</span>} key=\"0-0-1-0\" />\n </TreeNode>\n <TreeNode title=\"parent 1-2\" key=\"0-0-2\" >\n <TreeNode title=\"leaf\" key=\"0-0-2-0\" />\n <TreeNode title=\"leaf\" key=\"0-0-2-1\" />\n </TreeNode>\n </TreeNode>\n\t </Tree>\n\t\t);\n\t}\n}\n\nDemo10.defaultProps = defaultProps;\n\n\nexport default Demo10;\n\n\n// WEBPACK FOOTER //\n// ./demo/demolist/Demo10.js"],"sourceRoot":""} |