{"version":3,"sources":["webpack:///./src/views/markting/smartForm/setFormComponent.vue?318b","webpack:///./src/views/markting/smartForm/setFormComponent.vue?afc5","webpack:///./src/views/markting/smartForm/setFormComponent.vue?5237","webpack:///./src/views/markting/smartForm/setFormComponent.vue","webpack:///./node_modules/tinymce/plugins/textcolor/plugin.js","webpack:///./node_modules/util/node_modules/inherits/inherits_browser.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/tinymce/plugins/colorpicker/index.js","webpack:///./node_modules/util/util.js","webpack:///./node_modules/tinymce/plugins/colorpicker/plugin.js","webpack:///./node_modules/vuedraggable/dist/vuedraggable.common.js","webpack:///./node_modules/tinymce/plugins/textcolor/index.js","webpack:///./node_modules/vuedraggable/node_modules/sortablejs/modular/sortable.esm.js","webpack:///./node_modules/tinymce/plugins/insertdatetime/index.js","webpack:///./node_modules/tinymce/plugins/contextmenu/plugin.js","webpack:///./src/components/editor/tinymce.vue?bc8d","webpack:///./src/components/editor/tinymce.vue?95ee","webpack:///src/components/editor/tinymce.vue","webpack:///./src/components/editor/tinymce.vue?0f11","webpack:///./src/components/editor/tinymce.vue","webpack:///./src/Entity/weixin/WxCard.ts","webpack:///./node_modules/tinymce/plugins/insertdatetime/plugin.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./src/views/markting/smartForm/setFormComponent.vue?5c3d","webpack:///./src/JS/Bus.ts","webpack:///./node_modules/util/support/isBufferBrowser.js","webpack:///./node_modules/tinymce/plugins/contextmenu/index.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticStyle","attrs","propModuleData","apiName","model","value","callback","$$v","$set","expression","inputType","_v","_e","_l","rItem","index","key","staticClass","on","$event","delOption","addOption","sItem","checkMinValue","options","length","checkMaxValue","placeholderText","dItem","isDetailAdr","init","_s","btnWidth","item","path","UploadImage","describe","url","addImgOption","titleText","description","UploadImageShare","logoImg","focusTitle","focusUrl","tenantsDialogVisible","staticRenderFns","draggable","disabled","selector","language_url","language","skin_url","menubar","inline","statusbar","toolbar_drawer","toolbar","height","content","labeltxt","parseInt","push","label","param","reader","FileReader","typeValue","readAsDataURL","file","onload","e","target","obj","result","params","Input","Name","name","SmartFormUploadVue","res","ErrorCode","valueStr","output","data","$message","error","ErrorMessage","console","log","s","$confirm","confirmButtonText","cancelButtonText","type","then","splice","maxSelect","minSelect","message","catch","newImg","numberValue","String","Array","default","components","Editor","component","domGlobals","global","tinymce","util","Tools","resolve","Plugin","add","warn","window","Object","create","module","exports","ctor","superCtor","super_","prototype","constructor","enumerable","writable","configurable","TempCtor","isRegExp","anObject","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","$min","Math","min","$push","$SPLIT","LENGTH","LAST_INDEX","MAX_UINT32","SUPPORTS_Y","RegExp","defined","SPLIT","$split","maybeCallNative","internalSplit","separator","limit","string","undefined","call","match","lastIndex","lastLength","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","splitLimit","separatorCopy","source","slice","apply","test","O","splitter","regexp","done","rx","S","C","unicodeMatching","lim","p","q","A","z","i","getOwnPropertyDescriptors","keys","descriptors","getOwnPropertyDescriptor","formatRegExp","format","f","isString","objects","arguments","inspect","join","args","len","str","replace","x","Number","JSON","stringify","_","isNull","isObject","deprecate","fn","msg","process","noDeprecation","warned","deprecated","throwDeprecation","Error","traceDeprecation","trace","debugEnviron","debugs","opts","ctx","seen","stylize","stylizeNoColor","depth","colors","isBoolean","showHidden","_extend","isUndefined","customInspect","stylizeWithColor","formatValue","styleType","style","styles","arrayToHash","array","hash","forEach","val","idx","recurseTimes","isFunction","ret","primitive","formatPrimitive","visibleKeys","getOwnPropertyNames","isError","indexOf","formatError","toString","isDate","Date","base","braces","isArray","n","toUTCString","formatArray","map","formatProperty","pop","reduceToSingleString","simple","isNumber","l","hasOwnProperty","desc","get","set","split","line","substr","reduce","prev","cur","numLinesEst","ar","arg","isNullOrUndefined","isSymbol","re","objectToString","d","isPrimitive","o","pad","debuglog","NODE_DEBUG","toUpperCase","pid","isBuffer","months","timestamp","time","getHours","getMinutes","getSeconds","getDate","getMonth","prop","inherits","origin","kCustomPromisifiedSymbol","Symbol","callbackifyOnRejected","reason","cb","newReason","callbackify","original","TypeError","callbackified","maybeCb","self","nextTick","rej","setPrototypeOf","getPrototypeOf","defineProperties","promisify","defineProperty","promiseResolve","promiseReject","promise","Promise","reject","err","custom","modules","installedModules","__webpack_require__","moduleId","m","c","getter","r","toStringTag","t","mode","__esModule","ns","bind","object","property","toInteger","TO_STRING","that","pos","a","b","charCodeAt","charAt","at","it","max","$at","iterated","_t","_i","point","$export","valueOf","document","is","createElement","$defineProperty","createDesc","redefine","hide","wks","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","exec","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","nativeMethod","arg2","forceStringMethod","strfn","rxfn","cof","TAG","ARG","tryGet","T","B","callee","has","SRC","$toString","TPL","inspectSource","safe","Function","store","uid","USE_SYMBOL","$exports","context","INCLUDES","P","F","includes","searchString","LIBRARY","Iterators","$iterCreate","setToStringTag","ITERATOR","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","Base","NAME","Constructor","next","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","proto","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","entries","values","toObject","$keys","dP","documentElement","propertyIsEnumerable","IObject","ArrayProto","ceil","floor","isNaN","def","tag","stat","bitmap","SAFE_CLOSING","riter","from","skipClosing","arr","iter","MATCH","assign","regexpFlags","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","re1","re2","NPCG_INCLUDED","PATCH","reCopy","IE_PROTO","ObjectProto","isArrayIter","createProperty","getIterFn","arrayLike","step","iterator","aLen","mapfn","mapping","iterFn","core","SHARED","version","copyright","shared","__e","toIObject","toAbsoluteIndex","IS_INCLUDES","$this","el","fromIndex","PROTOTYPE","own","out","exp","IS_FORCED","IS_GLOBAL","G","IS_STATIC","IS_PROTO","IS_BIND","expProto","U","W","R","classof","builtinExec","id","px","random","concat","IS_WRAP","virtual","$includes","TO_STRING_TAG","DOMIterables","Collection","__g","getIteratorMethod","getIterator","getKeys","Properties","IE8_DOM_DEFINE","toPrimitive","Attributes","descriptor","gOPS","pIE","$assign","K","k","getSymbols","isEnum","j","isIterable","getOwnPropertySymbols","aFunction","UNSCOPABLES","dPs","enumBugKeys","Empty","createDict","iframeDocument","iframe","lt","gt","display","appendChild","src","contentWindow","open","write","close","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","$replace","searchValue","replaceValue","functionalReplace","fullUnicode","results","matchStr","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","replacerArgs","replacement","getSubstitution","tailPos","symbols","ch","capture","forced","addToUnscopables","_k","Arguments","__webpack_exports__","insertNodeAt","camelize","removeNode","F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1__","F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1___default","getConsole","cached","cache","hit","regex","node","parentElement","removeChild","fatherNode","refNode","children","nextSibling","insertBefore","g","$Object","D","arrayIndexOf","names","STARTS_WITH","$startsWith","startsWith","search","setPublicPath_i","currentScript","object_assign","assign_default","keys_default","is_array","is_array_default","_arrayWithHoles","get_iterator","get_iterator_default","_iterableToArrayLimit","_arr","_n","_d","_nonIterableRest","_slicedToArray","_arrayWithoutHoles","arr2","from_default","is_iterable","is_iterable_default","_iterableToArray","_nonIterableSpread","_toConsumableArray","external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_","external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default","helper","buildAttribute","propName","computeVmIndex","vnodes","element","elt","elm","_computeIndexes","slots","isTransition","footerOffset","elmFromNodes","footerIndex","rawIndexes","filter","ind","emit","evtName","evtData","_this","$nextTick","$emit","toLowerCase","delegateAndEmit","_this2","realList","isTransitionName","vuedraggable_isTransition","_slots","componentOptions","getSlot","slot","scopedSlot","computeChildrenAndOffsets","headerOffset","header","footer","getComponentAttributes","$attrs","componentData","attributes","update","props","componentDataAttrs","eventsListened","eventsToEmit","readonlyProperties","evt","draggingElement","vuedraggable_props","list","required","noTransitionOnDrag","Boolean","clone","move","draggableComponent","inheritAttrs","transitionMode","noneFunctionalComponentMode","h","$slots","_computeChildrenAndOf","$scopedSlots","getTag","created","mounted","_this3","$el","nodeName","getIsFunctional","optionsAdded","onMove","originalEvent","onDragMove","_sortable","rootContainer","computeIndexes","beforeDestroy","destroy","computed","watch","handler","newOptionValue","updateOptions","deep","fnOptions","_vnode","functional","option","getChildrenNodes","$children","rawNodes","child","_this4","visibleIndexes","getUnderlyingVm","htmlElt","getUnderlyingPotencialDraggableComponent","_ref","vue","__vue__","$options","_componentTag","$parent","emitChanges","_this5","alterList","onList","newList","spliceList","_arguments","updatePosition","oldIndex","newIndex","getRelatedContextFromMoveEvent","_ref2","to","related","destination","getVmIndex","domIndex","indexes","numberIndexes","getComponent","componentInstance","resetTransitionData","nodes","transitionContainer","kept","onDragStart","_underlying_vm_","onDragAdd","added","onDragRemove","pullMode","removed","onDragUpdate","moved","updateProperty","propertyName","computeFutureIndex","relatedContext","domChildren","currentDOMIndex","currentIndex","draggedInList","willInsertAfter","draggedContext","futureIndex","sendEvt","onDragEnd","Vue","vuedraggable","_typeof","_defineProperty","_extends","_objectSpread","ownKeys","sym","_objectWithoutPropertiesLoose","excluded","sourceKeys","_objectWithoutProperties","sourceSymbolKeys","userAgent","pattern","navigator","IE11OrLess","Edge","FireFox","Safari","IOS","ChromeForAndroid","captureMode","passive","event","addEventListener","off","removeEventListener","matches","substring","msMatchesSelector","webkitMatchesSelector","getParentOrHost","host","nodeType","parentNode","closest","includeCTX","_throttleTimeout","R_SPACE","toggleClass","state","classList","className","css","defaultView","getComputedStyle","currentStyle","matrix","selfOnly","appliedTransforms","transform","matrixFn","DOMMatrix","WebKitCSSMatrix","CSSMatrix","find","tagName","getElementsByTagName","getWindowScrollingElement","scrollingElement","getRect","relativeToContainingBlock","relativeToNonStaticParent","undoScale","container","getBoundingClientRect","elRect","top","left","bottom","right","width","innerHeight","innerWidth","containerRect","elMatrix","scaleX","scaleY","isScrolledPast","elSide","parentSide","parent","getParentAutoScrollElement","elSideVal","parentSideVal","visible","getChild","childNum","currentChild","Sortable","ghost","dragged","lastChild","last","lastElementChild","previousElementSibling","getRelativeScrollOffset","offsetLeft","offsetTop","winScroller","scrollLeft","scrollTop","indexOfObject","includeSelf","elem","gotSelf","clientWidth","scrollWidth","clientHeight","scrollHeight","elemCSS","overflowX","overflowY","body","extend","dst","isRectEqual","rect1","rect2","round","throttle","ms","setTimeout","cancelThrottle","clearTimeout","scrollBy","y","Polymer","$","jQuery","Zepto","dom","cloneNode","setRect","rect","unsetRect","expando","getTime","AnimationStateManager","animationCallbackId","animationStates","captureAnimationState","animation","fromRect","thisAnimationDuration","childMatrix","addAnimationState","removeAnimationState","animateAll","animating","animationTime","toRect","prevFromRect","prevToRect","animatingRect","targetMatrix","calculateRealTime","animate","animationResetTimer","currentRect","duration","translateX","translateY","animatingX","animatingY","repaint","easing","animated","offsetWidth","sqrt","pow","plugins","defaults","initializeByDefault","PluginManager","mount","plugin","pluginEvent","eventName","sortable","eventCanceled","cancel","eventNameGlobal","pluginName","initializePlugins","initialized","modified","modifyOption","getEventProperties","eventProperties","modifiedValue","optionListeners","dispatchEvent","rootEl","targetEl","cloneEl","toEl","fromEl","oldDraggableIndex","newDraggableIndex","putSortable","extraEventProperties","onName","CustomEvent","createEvent","initEvent","bubbles","cancelable","lastPutMode","allEventProperties","dragEl","parentEl","ghostEl","nextEl","lastDownEl","cloneHidden","dragStarted","activeSortable","active","hideGhostForTarget","_hideGhostForTarget","unhideGhostForTarget","_unhideGhostForTarget","cloneNowHidden","cloneNowShown","dispatchSortableEvent","_dispatchEvent","info","activeGroup","tapEvt","touchEvt","lastDx","lastDy","tapDistanceLeft","tapDistanceTop","lastTarget","lastDirection","targetMoveDistance","ghostRelativeParent","awaitingDragStarted","ignoreNextClick","sortables","pastFirstInvertThresh","isCircumstantialInvert","ghostRelativeParentInitialScroll","_silent","savedInputChecked","documentExists","PositionGhostAbsolutely","CSSFloatProperty","supportDraggable","supportCssPointerEvents","cssText","pointerEvents","_detectDirection","elCSS","elWidth","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","child1","child2","firstChildCSS","secondChildCSS","firstChildWidth","marginLeft","marginRight","secondChildWidth","flexDirection","gridTemplateColumns","touchingSideChild2","clear","_dragElInRowColumn","dragRect","targetRect","vertical","dragElS1Opp","dragElS2Opp","dragElOppLength","targetS1Opp","targetS2Opp","targetOppLength","_detectNearestEmptySortable","some","threshold","emptyInsertThreshold","insideHorizontally","insideVertically","_prepareGroup","toFn","pull","sameGroup","group","otherGroup","originalGroup","checkPull","checkPut","put","revertClone","preventDefault","stopPropagation","stopImmediatePropagation","nearestEmptyInsertDetectEvent","touches","nearest","clientX","clientY","_onDragOver","_checkOutsideTargetEl","_isOutsideThisEl","sort","handle","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","direction","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","setData","dataTransfer","textContent","dropBubble","dragoverBubble","dataIdAttr","delay","delayOnTouchOnly","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","_globalDragOver","dropEffect","_onMove","retVal","onMoveFn","draggedRect","relatedRect","_disableDraggable","_unsilent","_ghostIsLast","spacer","_getSwapDirection","isLastTarget","mouseOnAxis","targetLength","targetS1","targetS2","invert","_getInsertDirection","_generateId","href","sum","_saveInputCheckedState","root","inputs","checked","_nextTick","_cancelNextTick","contains","_getDirection","touch","pointerType","originalTarget","shadowRoot","composedPath","button","isContentEditable","criteria","trim","_prepareDragStart","dragStartFn","ownerDocument","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","abs","_onTouchMove","_onDragStart","selection","empty","getSelection","removeAllRanges","_dragStarted","fallback","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","inserted","ghostMatrix","relativeScrollOffset","dx","dy","cssMatrix","_hideClone","cloneId","_loopId","setInterval","effectAllowed","_dragStartId","revert","isOwner","canSort","fromSortable","completedFired","dragOverEvent","_ignoreWhileAnimating","completed","elLastChild","changed","targetBeforeFirstSwap","sibling","differentLevel","differentRowCol","side1","scrolledPastTop","scrollBefore","dragIndex","nextElementSibling","after","moveVector","extra","axis","insertion","_showClone","_offMoveEvents","_offUpEvents","clearInterval","save","handleEvent","toArray","order","getAttribute","items","querySelectorAll","removeAttribute","utils","cancelNextTick","detectDirection","_len","_key","scrollEl","scrollRootEl","lastAutoScrollX","lastAutoScrollY","touchEvt$1","pointerElemChangedInterval","autoScrolls","scrolling","AutoScrollPlugin","AutoScroll","scroll","scrollSensitivity","scrollSpeed","bubbleScroll","_handleAutoScroll","_handleFallbackAutoScroll","dragOverCompleted","dragOverBubble","drop","clearPointerElemChangedInterval","clearAutoScrolls","nulling","autoScroll","ogElemScroller","newElem","lastSwapEl","isFallback","scrollCustomFn","sens","speed","scrollThisInstance","scrollFn","layersOut","currentParent","canScrollX","canScrollY","scrollPosX","scrollPosY","vx","vy","layer","scrollOffsetY","scrollOffsetX","toSortable","changedTouches","onSpill","Revert","Remove","SwapPlugin","Swap","swapClass","dragStart","dragOverValid","swap","prevSwapEl","_ref3","swapNodes","swapItem","n1","n2","i1","i2","p1","p2","isEqualNode","startIndex","_ref4","parentSortable","lastMultiDragSelect","multiDragSortable","dragEl$1","clonesFromRect","clonesHidden","multiDragElements","multiDragClones","initialFolding","folding","MultiDragPlugin","MultiDrag","_deselectMultiDrag","_checkKeyDown","_checkKeyUp","selectedClass","multiDragKey","multiDragElement","multiDragKeyDown","isMultiDrag","delayStartGlobal","delayEnded","setupClone","sortableIndex","insertMultiDragClones","showClone","hideClone","_ref5","dragStartGlobal","_ref6","multiDrag","_ref7","removeMultiDragElements","dragOver","_ref8","_ref9","insertMultiDragElements","_ref10","dragRectAbsolute","clonesHiddenBefore","dragOverAnimationCapture","_ref11","dragMatrix","dragOverAnimationComplete","_ref12","originalEvt","shiftKey","multiDragIndex","nullingGlobal","destroyGlobal","shift","select","deselect","oldIndicies","newIndicies","clones","clonesInserted","elementsInserted","onClick","myValue","templates","dialog_width","images_upload_url","fontsize_formats","font_formats","emoticons_database_url","setup","Bus","wxVideoitems","Item","wxVoiceitems","editor","ui","registry","addButton","text","tooltip","onAction","title","tabs","buttons","initialData","videoUrl","onChange","api","getData","isUrl","tempUrlLen","arry","listData","attryStr","arrtay","temp","tempArry","onSubmit","page1Config","wxCarditems","pageCardConfig","musicKey","musicpageSize","musicpages","page2Config","size","Fruit","musicpage","details","dialogApi","redial","resultData","insertMusic","txtCardVal","insertCard","domain","location","resList","logo_url","brand_name","color","cardid","images_upload_handler","loademoticons","selectMusic","newValue","loadData","tempData","wxcardItems","html","errcode","card","card_type","baseInfo","discount","base_info","CardVal","cardDataTimeFormat","date_info","sku","quantity","CardStatus","status","cash","gift","groupon","general_coupon","member_card","primary","dateinfo","fixed_term","fixed_begin_term","begin_timestamp","formatDate","end_timestamp","encodeURIComponent","date","getFullYear","MM","MMstr","dstr","getDateFormat","getParam","translate","getTimeFormat","getFormats","getDefaultDateTime","formats","shouldInsertTimeElement","Settings","daysShort","daysLong","monthsShort","monthsLong","addZeros","getDateTime","fmt","getYear","getDay","updateElement","timeElm","computerTime","userTime","newTimeElm","datetime","remove","collapse","insertDateTime","getParent","getStart","insertContent","Actions","register","addCommand","Commands","global$1","Cell","initial","v","register$1","defaultFormat","addSplitButton","icon","fetch","onItemAction","makeMenuItemHandler","addNestedMenuItem","getSubmenuItems","Buttons","bus","copy","fill","readUInt8"],"mappings":"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,GAEkBV,EAAI90B,cAQZ,IAAIy1B,EAAc,CAChBjB,MAAO,OACPze,KAAM,CACJzzB,KAAM,WACNmyC,KAAM,CACpB,CACgB,KAAhB,SACgB,MAAhB,OACgB,MAAhB,CACA,CACkB,KAAlB,QACkB,MAAlB,GAEA,CACkB,KAAlB,SACkB,KAAlB,KACkB,SAAlB,EACkB,KAAlB,oBAMA,CACgB,KAAhB,SACgB,MAAhB,OACgB,MAAhB,CACA,CACkB,KAAlB,QACkB,KAAlB,WACkB,MAAlB,wBACkB,YAAlB,aACkB,KAAlB,SAMgB,CACE,KAAlB,SACkB,KAAlB,OACkB,SAAlB,EACkB,KAAlB,4BAQYC,QAAS,CACrB,CACc,KAAd,SACc,KAAd,cACc,KAAd,WAGYC,YAAa,CACXiB,SAAU,GACVC,cAAe,GACfC,WAAY,GAEdvB,SAAU,WAAtB,sLAGA,cAGA,2BACA,KACA,8BACA,yBACA,sBAEA,eACA,uBAEA,mBACA,aACA,cACA,gBAWA,uBACA,uBACA,EACA,4IACA,KACA,yHACA,yBACA,gEACA,KACA,6EACA,6BACA,oBACA,EACA,MAGA,WAEA,+BA/CA,oBAgDA,eAhDA,gBAiDA,qCACA,gBAlDA,8BAsDA,GACA,OAEA,CACA,WACA,MACA,6EACA,WACA,eA9DA,UAmEA,qBAnEA,WAmEA,EAnEA,OAoEA,eApEA,oBAqEA,4BACA,YACA,IAEA,4BACA,gBAEA,UA5EA,iBA6EA,qCACA,mBA9EA,+BAiFA,gBAEA,mBAMA,GAEA,KACA,uBACA,qBAGA,uBACA,GACA,KACA,kCACA,wBACA,qCAEA,OACA,4BACA,oBACA,OACA,OACA,UACA,aACA,QACA,YACA,gBAGA,uCAEA,oBACA,wBAGA,GACA,OAE0B,CACElzC,KAAM,MACNxE,MAC5B,kMACA,KAhIA,UAqIA,qBArIA,QAqIA,EArIA,OAuIA,iBACA,aACA,mBAEA,gBAEA,uBAGA,MACA,+CACA,UACA,oBAEA,cACA,wBAKA,YACA,EACA,EACA,yFACA,UACA,kBAIA,kCACA,mBACA,gBACA,KACA,UACA,IACA,WACA,IACA,+BACA,IACA,4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","file":"js/chunk-dc306370.375354e8.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.propModuleData)?_c('div',{staticStyle:{\"height\":\"100%\"}},[_c('el-form',{staticStyle:{\"height\":\"100%\"},attrs:{\"model\":_vm.propModuleData,\"label-width\":\"98px\"}},[(_vm.propModuleData.apiName!='focusAccounts' && _vm.propModuleData.apiName!='carousel' && _vm.propModuleData.apiName!='buttonBox'&&_vm.propModuleData.apiName!='elEditText')?[_c('el-form-item',{attrs:{\"label\":\"标题\"}},[_c('el-input',{model:{value:(_vm.propModuleData.titleText),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"titleText\", $$v)},expression:\"propModuleData.titleText\"}})],1),(_vm.propModuleData.apiName=='elWriteInput')?[_c('el-form-item',{attrs:{\"label\":\"占位文本\"}},[_c('el-input',{model:{value:(_vm.propModuleData.placeholderText),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"placeholderText\", $$v)},expression:\"propModuleData.placeholderText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"类型\"}},[_c('el-select',{model:{value:(_vm.propModuleData.inputType),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"inputType\", $$v)},expression:\"propModuleData.inputType\"}},[_c('el-option',{attrs:{\"label\":\"文本\",\"value\":\"text\"}}),_c('el-option',{attrs:{\"label\":\"手机号\",\"value\":\"tel\"}}),_c('el-option',{attrs:{\"label\":\"数字\",\"value\":\"number\"}}),_c('el-option',{attrs:{\"label\":\"邮箱\",\"value\":\"email\"}})],1)],1),(_vm.propModuleData.inputType=='text')?_c('div',{staticStyle:{\"padding-left\":\"98px\"}},[_vm._v(\"\\n 最多不超过\\n \"),_c('el-input',{staticStyle:{\"width\":\"108px\",\"margin\":\"0 8px\"},model:{value:(_vm.propModuleData.maxLength),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"maxLength\", $$v)},expression:\"propModuleData.maxLength\"}}),_vm._v(\"个字\\n \")],1):_vm._e()]:_vm._e(),(_vm.propModuleData.apiName=='radioSelect')?[_c('el-form-item',{attrs:{\"label\":\"选项\"}},[_c('draggable',{model:{value:(_vm.propModuleData.options),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"options\", $$v)},expression:\"propModuleData.options\"}},[_c('transition-group',_vm._l((_vm.propModuleData.options),function(rItem,index){return _c('div',{key:index,staticClass:\"radio-item\"},[_c('el-input',{model:{value:(rItem.value),callback:function ($$v) {_vm.$set(rItem, \"value\", $$v)},expression:\"rItem.value\"}}),_c('div',{staticClass:\"btn-icon crd crd-move\"}),_c('div',{staticClass:\"btn-icon crd crd-trash\",on:{\"click\":function($event){return _vm.delOption(index)}}})],1)}),0)],1),_c('el-button',{staticClass:\"btn-add\",attrs:{\"icon\":\"el-icon-plus\",\"size\":\"mini\"},on:{\"click\":_vm.addOption}},[_vm._v(\"添加\")])],1)]:_vm._e(),(_vm.propModuleData.apiName=='optinsSelect')?[_c('el-form-item',{attrs:{\"label\":\"选项\"}},[_c('draggable',{model:{value:(_vm.propModuleData.options),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"options\", $$v)},expression:\"propModuleData.options\"}},[_c('transition-group',_vm._l((_vm.propModuleData.options),function(sItem,index){return _c('div',{key:index,staticClass:\"select-item\"},[_c('el-input',{model:{value:(sItem.value),callback:function ($$v) {_vm.$set(sItem, \"value\", $$v)},expression:\"sItem.value\"}}),_c('div',{staticClass:\"btn-icon crd crd-move\"}),_c('div',{staticClass:\"btn-icon crd crd-trash\",on:{\"click\":function($event){return _vm.delOption(index)}}})],1)}),0)],1),_c('el-button',{staticClass:\"btn-add\",attrs:{\"icon\":\"el-icon-plus\",\"size\":\"small\"},on:{\"click\":_vm.addOption}},[_vm._v(\"添加\")])],1),_c('el-form-item',{attrs:{\"label\":\"至少选择\"}},[_c('el-input',{staticClass:\"check-input\",attrs:{\"type\":\"number\",\"min\":\"1\"},on:{\"input\":_vm.checkMinValue},model:{value:(_vm.propModuleData.minSelect),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"minSelect\", $$v)},expression:\"propModuleData.minSelect\"}}),_vm._v(\"项\\n \")],1),_c('el-form-item',{attrs:{\"label\":\"至多选择\"}},[_c('el-input',{staticClass:\"check-input\",attrs:{\"type\":\"number\",\"min\":\"1\",\"max\":_vm.propModuleData.options.length},on:{\"input\":_vm.checkMaxValue},model:{value:(_vm.propModuleData.maxSelect),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"maxSelect\", $$v)},expression:\"propModuleData.maxSelect\"}}),_vm._v(\"项\\n \")],1)]:_vm._e(),(_vm.propModuleData.apiName=='dropdowns')?[_c('el-form-item',{attrs:{\"label\":\"默认值\"}},[_c('el-input',{attrs:{\"placeholder\":_vm.propModuleData.placeholderText},model:{value:(_vm.propModuleData.val),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"val\", $$v)},expression:\"propModuleData.val\"}})],1),_c('el-form-item',{attrs:{\"label\":\"选项\"}},[_c('draggable',{model:{value:(_vm.propModuleData.options),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"options\", $$v)},expression:\"propModuleData.options\"}},[_c('transition-group',_vm._l((_vm.propModuleData.options),function(dItem,index){return _c('div',{key:index,staticClass:\"select-item\"},[_c('el-input',{model:{value:(dItem.value),callback:function ($$v) {_vm.$set(dItem, \"value\", $$v)},expression:\"dItem.value\"}}),_c('div',{staticClass:\"btn-icon crd crd-move\"}),_c('div',{staticClass:\"btn-icon crd crd-trash\",on:{\"click\":function($event){return _vm.delOption(index)}}})],1)}),0)],1),_c('el-button',{staticClass:\"btn-add\",attrs:{\"icon\":\"el-icon-plus\",\"size\":\"mini\"},on:{\"click\":_vm.addOption}},[_vm._v(\"添加\")])],1)]:_vm._e(),(_vm.propModuleData.apiName=='dateTime')?[_c('el-form-item',{attrs:{\"label\":\"格式\"}},[_c('el-radio',{attrs:{\"label\":\"年/月/日 时:分\"},model:{value:(_vm.propModuleData.dateFormat),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"dateFormat\", $$v)},expression:\"propModuleData.dateFormat\"}},[_vm._v(\"年月日时分\")]),_c('el-radio',{attrs:{\"label\":\"年/月/日\"},model:{value:(_vm.propModuleData.dateFormat),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"dateFormat\", $$v)},expression:\"propModuleData.dateFormat\"}},[_vm._v(\"年月日\")]),_c('el-radio',{attrs:{\"label\":\"时:分\"},model:{value:(_vm.propModuleData.dateFormat),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"dateFormat\", $$v)},expression:\"propModuleData.dateFormat\"}},[_vm._v(\"时分\")])],1)]:_vm._e(),(_vm.propModuleData.apiName=='adress')?[_c('el-form-item',{attrs:{\"label\":\"隐藏\"}},[_c('el-switch',{attrs:{\"active-color\":\"#0093FF\",\"inactive-color\":\"#E8E8E8\"},model:{value:(_vm.propModuleData.isDetailAdr),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"isDetailAdr\", $$v)},expression:\"propModuleData.isDetailAdr\"}})],1),(!_vm.propModuleData.isDetailAdr)?_c('el-form-item',{attrs:{\"label\":\"详细地址\"}},[_c('el-input',{model:{value:(_vm.propModuleData.detailAdr),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"detailAdr\", $$v)},expression:\"propModuleData.detailAdr\"}})],1):_vm._e()]:_vm._e(),(_vm.propModuleData.apiName=='imgUpload')?void 0:_vm._e(),_c('el-form-item',{attrs:{\"label\":\"必填\"}},[_c('el-switch',{attrs:{\"active-color\":\"#0093FF\",\"inactive-color\":\"#E8E8E8\"},model:{value:(_vm.propModuleData.isNeeds),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"isNeeds\", $$v)},expression:\"propModuleData.isNeeds\"}})],1),_c('el-form-item',{attrs:{\"label\":\"样式\"}},[_c('el-select',{model:{value:(_vm.propModuleData.style),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"style\", $$v)},expression:\"propModuleData.style\"}},[_c('el-option',{attrs:{\"label\":\"标题在上输入框在下\",\"value\":\"column\"}}),_c('el-option',{attrs:{\"label\":\"标题在左输入框在右\",\"value\":\"row\"}}),_c('el-option',{attrs:{\"label\":\"不显示标题\",\"value\":\"none\"}})],1)],1)]:_vm._e(),(_vm.propModuleData.apiName=='elEditText')?[_c('editor',{attrs:{\"init\":_vm.init},model:{value:(_vm.propModuleData.val),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"val\", $$v)},expression:\"propModuleData.val\"}})]:_vm._e(),(_vm.propModuleData.apiName=='buttonBox')?[_c('el-form-item',{attrs:{\"label\":\"标题\"}},[_c('el-input',{model:{value:(_vm.propModuleData.titleText),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"titleText\", $$v)},expression:\"propModuleData.titleText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"关注公众号\"}},[_c('el-switch',{attrs:{\"active-color\":\"#0093FF\",\"inactive-color\":\"#E8E8E8\"},model:{value:(_vm.propModuleData.isFocusTenants),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"isFocusTenants\", $$v)},expression:\"propModuleData.isFocusTenants\"}})],1),(_vm.propModuleData.isFocusTenants)?_c('el-form-item',{attrs:{\"label\":\"关注地址\"}},[_c('el-input',{model:{value:(_vm.propModuleData.focusTenants),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"focusTenants\", $$v)},expression:\"propModuleData.focusTenants\"}}),_c('div',{staticClass:\"tips-box\",staticStyle:{\"cursor\":\"pointer\"}},[_vm._v(\"如何获得公众号关注地址?\")])],1):_vm._e(),_c('el-form-item',{attrs:{\"label\":\"宽度\"}},[_c('el-slider',{staticStyle:{\"width\":\"80%\",\"display\":\"inline-block\"},model:{value:(_vm.propModuleData.btnWidth),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"btnWidth\", $$v)},expression:\"propModuleData.btnWidth\"}}),_c('div',{staticStyle:{\"float\":\"right\"}},[_vm._v(_vm._s(_vm.propModuleData.btnWidth)+\"%\")])],1),_c('el-form-item',{attrs:{\"label\":\"背景色\"}},[_c('el-color-picker',{model:{value:(_vm.propModuleData.bgcolor),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"bgcolor\", $$v)},expression:\"propModuleData.bgcolor\"}})],1),_c('el-form-item',{attrs:{\"label\":\"接收地址:\"}},[_c('el-input',{attrs:{\"size\":\"small\",\"placeholder\":\"接收收集数据提交地址(不填为系统默认)\"},model:{value:(_vm.propModuleData.receivingAddress),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"receivingAddress\", $$v)},expression:\"propModuleData.receivingAddress\"}})],1),_c('el-form-item',{attrs:{\"label\":\"跳转地址:\"}},[_c('el-input',{attrs:{\"size\":\"small\",\"placeholder\":\"信息提交完成跳转地址(为空时刷新当页面)\"},model:{value:(_vm.propModuleData.jumpAddress),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"jumpAddress\", $$v)},expression:\"propModuleData.jumpAddress\"}})],1)]:_vm._e(),(_vm.propModuleData.apiName=='carousel')?[_c('draggable',{model:{value:(_vm.propModuleData.options),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"options\", $$v)},expression:\"propModuleData.options\"}},[_c('transition-group',_vm._l((_vm.propModuleData.options),function(item,index){return _c('div',{key:index,staticClass:\"carousel-item-group\"},[_c('h3',[_vm._v(\"\\n 图片\"+_vm._s(index+1)+\"\\n \"),_c('div',{staticClass:\"crd crd-move\"}),_c('div',{staticClass:\"crd crd-trash\",on:{\"click\":function($event){return _vm.delOption(index)}}})]),_c('el-form-item',{attrs:{\"label\":\"选择图片\"}},[_c('div',{staticClass:\"img-box\"},[_c('img',{attrs:{\"src\":item.path}})]),_c('el-upload',{staticClass:\"upload-demo\",attrs:{\"accept\":\"image/jpeg, image/png, image/bmp\",\"show-file-list\":false,\"data\":item,\"http-request\":_vm.UploadImage,\"action\":_vm.UploadImage}},[_c('el-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"}},[_vm._v(\"点击上传\")])],1)],1),_c('el-form-item',{attrs:{\"label\":\"描述\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"placeholder\":item.describe},model:{value:(item.describe),callback:function ($$v) {_vm.$set(item, \"describe\", $$v)},expression:\"item.describe\"}})],1),_c('el-form-item',{attrs:{\"label\":\"链接\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"placeholder\":item.url},model:{value:(item.url),callback:function ($$v) {_vm.$set(item, \"url\", $$v)},expression:\"item.url\"}})],1)],1)}),0)],1),_c('div',{staticClass:\"add-option-group\",on:{\"click\":_vm.addImgOption}},[_c('div',[_vm._v(\"+ 点击添加图片\")]),_c('div',{staticClass:\"tips-box\"},[_vm._v(\"建议图片尺寸为720*320px,大小不超过2M\")])])]:_vm._e(),(_vm.propModuleData.apiName=='focusAccounts')?[_c('el-form-item',{attrs:{\"label\":\"名称\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"placeholder\":_vm.propModuleData.titleText},model:{value:(_vm.propModuleData.titleText),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"titleText\", $$v)},expression:\"propModuleData.titleText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"简介\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"type\":\"textarea\",\"rows\":\"5\",\"placeholder\":_vm.propModuleData.description},model:{value:(_vm.propModuleData.description),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"description\", $$v)},expression:\"propModuleData.description\"}})],1),_c('el-form-item',{attrs:{\"label\":\"Logo\"}},[_c('el-upload',{staticClass:\"upload-demo\",attrs:{\"accept\":\"image/jpeg, image/png, image/bmp\",\"show-file-list\":false,\"data\":_vm.propModuleData,\"http-request\":_vm.UploadImageShare,\"action\":_vm.UploadImageShare}},[_c('img',{staticClass:\"logo-img\",attrs:{\"src\":_vm.propModuleData.logoImg}}),_c('el-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"}},[_vm._v(\"点击上传\")])],1)],1),_c('el-form-item',{attrs:{\"label\":\"关注标题\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"placeholder\":_vm.propModuleData.focusTitle},model:{value:(_vm.propModuleData.focusTitle),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"focusTitle\", $$v)},expression:\"propModuleData.focusTitle\"}})],1),_c('el-form-item',{attrs:{\"label\":\"关注地址\"}},[_c('el-input',{staticStyle:{\"width\":\"90%\"},attrs:{\"placeholder\":_vm.propModuleData.focusUrl},model:{value:(_vm.propModuleData.focusUrl),callback:function ($$v) {_vm.$set(_vm.propModuleData, \"focusUrl\", $$v)},expression:\"propModuleData.focusUrl\"}}),_c('div',{staticClass:\"tips-box\",on:{\"click\":function($event){_vm.tenantsDialogVisible = true}}},[_vm._v(\"如何获得公众号关注地址?\")])],1)]:_vm._e()],2),_c('el-dialog',{attrs:{\"title\":\"如何获得公众号关注地址——以云盒CMS为例\",\"visible\":_vm.tenantsDialogVisible,\"top\":\"0\",\"width\":\"auto\"},on:{\"update:visible\":function($event){_vm.tenantsDialogVisible=$event}}},[_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[_c('div',[_vm._v(\"1.进入微信桌面端-公众号窗口,点击右上角“更多”图标,再点击弹框内的“历史记录图标”\")]),_c('div',[_c('img',{staticStyle:{\"max-width\":\"750px\"},attrs:{\"src\":\"https://img.crd.cn/upload/article/20200824112658619ac84a.png\"}})]),_c('div',[_vm._v(\"2.在新弹出的窗口中点击左上的“链接”图标获取链接地址,将此链接地址在输入框粘贴即可\")]),_c('div',[_c('img',{staticStyle:{\"max-width\":\"750px\"},attrs:{\"src\":\"https://img.crd.cn/upload/article/20200824112703758ad73e.png\"}})]),_c('el-button',{staticClass:\"iknow\",attrs:{\"size\":\"small\"},on:{\"click\":function($event){_vm.tenantsDialogVisible = false}}},[_vm._v(\"我知道了\")])],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Provide, Vue, Watch, Prop } from \"vue-property-decorator\";\r\nimport httpApi from \"@/API/Tenant/Weixin\";\r\nimport \"@/components/editor/tinymce.vue\";\r\nimport Editor from \"@tinymce/tinymce-vue\";\r\nimport \"tinymce/themes/silver\";\r\nconst draggable = require(\"vuedraggable\"); //引入拖动排序插件\r\nimport \"tinymce/plugins/image\";\r\nimport \"tinymce/plugins/link\";\r\nimport \"tinymce/plugins/code\";\r\nimport \"tinymce/plugins/table\";\r\nimport \"tinymce/plugins/lists\";\r\nimport \"tinymce/plugins/contextmenu\";\r\nimport \"tinymce/plugins/wordcount\";\r\nimport \"tinymce/plugins/colorpicker\";\r\nimport \"tinymce/plugins/textcolor\";\r\n\r\n@Component({\r\n components: {\r\n Editor,\r\n draggable\r\n }\r\n})\r\nexport default class extends Vue {\r\n @Provide() tenantsDialogVisible: boolean = false;\r\n @Prop() private propModuleData!: any;\r\n @Provide() disabled: false = false;\r\n @Prop({\r\n type: [String, Array],\r\n default:\r\n \"undo redo | fontselect fontsizeselect hr | blockquote removeformat formatpainter | link unlink openlink emoticons | table code | bold italic underline strikethrough forecolor backcolor | alignleft aligncenter alignright alignjustify alignnone | bullist numlist indent outdent checklist formatpainter | subscript superscript | formatselect | lists image insertvideo insertmusic insertcard preview \"\r\n })\r\n @Provide() toolbar: any;\r\n @Provide() init: any = {\r\n selector: \"#tinymce\", //tinymce的id\r\n language_url: \"/static/tinymce/langs/zh_CN.js\",\r\n language: \"zh_CN\",\r\n skin_url: \"/static/tinymce/skins/ui/oxide\", //编辑器需要一个skin才能正常工作,所以要设置一个skin_url指向之前复制出来的skin文件\r\n menubar: false, //最上方menu\r\n inline: false, //\r\n statusbar: false, //状态栏\r\n toolbar_drawer: false, //工具栏浮动\r\n toolbar: this.toolbar, //工具栏 我用到的也就是lists image media table wordcount 这些 根据需求而定\r\n height: \"100%\"\r\n };\r\n created() {\r\n \r\n }\r\n addOption() {\r\n var content = this;\r\n var labeltxt =\r\n \"选项\" + (parseInt(content.propModuleData.options.length) + 1);\r\n content.propModuleData.options.push({ label: labeltxt, value: labeltxt });\r\n // this.$emit('radioAdd',this.propModuleData)\r\n }\r\n //上传背景图片\r\n async UploadImage(param: any) {\r\n let reader = new FileReader();\r\n let typeValue = \"SmartFormImage\";\r\n // console.log(param.data);\r\n reader.readAsDataURL(param.file);\r\n //console.log(reader);\r\n reader.onload = async e => {\r\n if (e.target) {\r\n let obj: any = (e.target as any).result;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"Type\",\r\n value: typeValue\r\n },\r\n {\r\n Name: \"FileName\",\r\n value: param.file.name\r\n },\r\n {\r\n Name: \"FileBase64\",\r\n value: obj\r\n }\r\n ]\r\n };\r\n // console.log(params);\r\n var res: any = await httpApi.SmartFormUploadVue(params);\r\n //console.log(res);\r\n if (res.ErrorCode == 0) {\r\n let valueStr = res.output[0].value;\r\n if (valueStr) {\r\n //console.log(valueStr);\r\n param.data.path = valueStr;\r\n }\r\n } else {\r\n this.$message.error(\"保存失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n };\r\n }\r\n //上传logo图片\r\n async UploadImageShare(param: any) {\r\n //console.log(param);\r\n let reader = new FileReader();\r\n let typeValue = \"SmartFormImageShare\";\r\n console.log(param);\r\n reader.readAsDataURL(param.file);\r\n //console.log(reader);\r\n reader.onload = async e => {\r\n if (e.target) {\r\n let obj: any = (e.target as any).result;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"Type\",\r\n value: typeValue\r\n },\r\n {\r\n Name: \"FileName\",\r\n value: param.file.name\r\n },\r\n {\r\n Name: \"FileBase64\",\r\n value: obj\r\n }\r\n ]\r\n };\r\n // console.log(params);\r\n var res: any = await httpApi.SmartFormUploadVue(params);\r\n //console.log(res);\r\n if (res.ErrorCode == 0) {\r\n let valueStr = res.output[0].value;\r\n if (valueStr) {\r\n //console.log(valueStr);\r\n param.data.logoImg = valueStr;\r\n // this.pageInfo.shareCoverImg = valueStr;\r\n }\r\n } else {\r\n this.$message.error(\"保存失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n };\r\n }\r\n //删除\r\n delOption(s: number) {\r\n var content = this;\r\n if (content.propModuleData.options.length > 1) {\r\n this.$confirm(\"此操作将永久删除该文件, 是否继续?\", \"提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n })\r\n .then(() => {\r\n content.propModuleData.options.splice(s, 1);\r\n if(content.propModuleData.apiName == 'optinsSelect'){\r\n if(content.propModuleData.maxSelect > content.propModuleData.options.length){\r\n content.propModuleData.maxSelect = content.propModuleData.options.length;\r\n }\r\n if(content.propModuleData.minSelect >= content.propModuleData.options.length){\r\n content.propModuleData.minSelect = content.propModuleData.maxSelect;\r\n }\r\n }\r\n this.$message({\r\n type: \"success\",\r\n message: \"删除成功!\"\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\"\r\n });\r\n });\r\n }\r\n }\r\n addImgOption() {\r\n var content = this;\r\n var newImg = {\r\n path: \"https://img.crd.cn/module/2020-04-27/750-950.jpg\",\r\n describe: \"这里输入图片描述,建议不超过20个字,可不填\",\r\n url: \"这里输入图片链接,可不填\"\r\n };\r\n content.propModuleData.options.push(newImg);\r\n }\r\n // 限制多项选择的最大项数字\r\n checkMaxValue(numberValue:any){\r\n if(numberValue > this.propModuleData.options.length){\r\n this.propModuleData.maxSelect = this.propModuleData.options.length;\r\n }\r\n if(numberValue < this.propModuleData.minSelect){\r\n this.propModuleData.maxSelect = this.propModuleData.minSelect;\r\n }\r\n }\r\n checkMinValue(numberValue:any){\r\n if(numberValue <= 0){\r\n this.propModuleData.minSelect = 1;\r\n }\r\n if(numberValue > this.propModuleData.maxSelect){\r\n this.propModuleData.minSelect = this.propModuleData.maxSelect;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./setFormComponent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./setFormComponent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./setFormComponent.vue?vue&type=template&id=9292dc30&scoped=true&\"\nimport script from \"./setFormComponent.vue?vue&type=script&lang=ts&\"\nexport * from \"./setFormComponent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./setFormComponent.vue?vue&type=style&index=0&id=9292dc30&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9292dc30\",\n null\n \n)\n\nexport default component.exports","/**\n * Copyright (c) Tiny Technologies, Inc. All rights reserved.\n * Licensed under the LGPL or a commercial license.\n * For LGPL see License.txt in the project root for license information.\n * For commercial licenses see https://www.tiny.cloud/\n *\n * Version: 5.2.2 (2020-04-23)\n */\n(function (domGlobals) {\n 'use strict';\n\n var global = tinymce.util.Tools.resolve('tinymce.PluginManager');\n\n function Plugin () {\n global.add('textcolor', function () {\n domGlobals.console.warn('Text color plugin is now built in to the core editor, please remove it from your editor configuration');\n });\n }\n\n Plugin();\n\n}(window));\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","// Exports the \"colorpicker\" plugin for usage with module loaders\n// Usage:\n// CommonJS:\n// require('tinymce/plugins/colorpicker')\n// ES2015:\n// import 'tinymce/plugins/colorpicker'\nrequire('./plugin.js');","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb, null, ret) },\n function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","/**\n * Copyright (c) Tiny Technologies, Inc. All rights reserved.\n * Licensed under the LGPL or a commercial license.\n * For LGPL see License.txt in the project root for license information.\n * For commercial licenses see https://www.tiny.cloud/\n *\n * Version: 5.2.2 (2020-04-23)\n */\n(function (domGlobals) {\n 'use strict';\n\n var global = tinymce.util.Tools.resolve('tinymce.PluginManager');\n\n function Plugin () {\n global.add('colorpicker', function () {\n domGlobals.console.warn('Color picker plugin is now built in to the core editor, please remove it from your editor configuration');\n });\n }\n\n Plugin();\n\n}(window));\n","module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"02f4\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"4588\");\nvar defined = __webpack_require__(\"be13\");\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n/***/ }),\n\n/***/ \"0390\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar at = __webpack_require__(\"02f4\")(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n\n\n/***/ }),\n\n/***/ \"07e3\":\n/***/ (function(module, exports) {\n\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n/***/ }),\n\n/***/ \"0bfb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = __webpack_require__(\"cb7c\");\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n\n/***/ }),\n\n/***/ \"0fc9\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"3a38\");\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n/***/ }),\n\n/***/ \"1654\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $at = __webpack_require__(\"71c1\")(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\n__webpack_require__(\"30f1\")(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n\n\n/***/ }),\n\n/***/ \"1691\":\n/***/ (function(module, exports) {\n\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n/***/ }),\n\n/***/ \"1af6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = __webpack_require__(\"63b6\");\n\n$export($export.S, 'Array', { isArray: __webpack_require__(\"9003\") });\n\n\n/***/ }),\n\n/***/ \"1bc3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(\"f772\");\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n/***/ }),\n\n/***/ \"1ec9\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"f772\");\nvar document = __webpack_require__(\"e53d\").document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n/***/ }),\n\n/***/ \"20fd\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $defineProperty = __webpack_require__(\"d9f6\");\nvar createDesc = __webpack_require__(\"aebd\");\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n\n/***/ }),\n\n/***/ \"214f\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n__webpack_require__(\"b0c5\");\nvar redefine = __webpack_require__(\"2aba\");\nvar hide = __webpack_require__(\"32e9\");\nvar fails = __webpack_require__(\"79e5\");\nvar defined = __webpack_require__(\"be13\");\nvar wks = __webpack_require__(\"2b4c\");\nvar regexpExec = __webpack_require__(\"520a\");\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\n\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n\n\n/***/ }),\n\n/***/ \"230e\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"d3f4\");\nvar document = __webpack_require__(\"7726\").document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n/***/ }),\n\n/***/ \"23c6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = __webpack_require__(\"2d95\");\nvar TAG = __webpack_require__(\"2b4c\")('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n/***/ }),\n\n/***/ \"241e\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__(\"25eb\");\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"25eb\":\n/***/ (function(module, exports) {\n\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"294c\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n/***/ }),\n\n/***/ \"2aba\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(\"7726\");\nvar hide = __webpack_require__(\"32e9\");\nvar has = __webpack_require__(\"69a8\");\nvar SRC = __webpack_require__(\"ca5a\")('src');\nvar $toString = __webpack_require__(\"fa5b\");\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\n__webpack_require__(\"8378\").inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n\n\n/***/ }),\n\n/***/ \"2b4c\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar store = __webpack_require__(\"5537\")('wks');\nvar uid = __webpack_require__(\"ca5a\");\nvar Symbol = __webpack_require__(\"7726\").Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n/***/ }),\n\n/***/ \"2d00\":\n/***/ (function(module, exports) {\n\nmodule.exports = false;\n\n\n/***/ }),\n\n/***/ \"2d95\":\n/***/ (function(module, exports) {\n\nvar toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n/***/ }),\n\n/***/ \"2fdb\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n\nvar $export = __webpack_require__(\"5ca1\");\nvar context = __webpack_require__(\"d2c8\");\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * __webpack_require__(\"5147\")(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n\n/***/ }),\n\n/***/ \"30f1\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(\"b8e3\");\nvar $export = __webpack_require__(\"63b6\");\nvar redefine = __webpack_require__(\"9138\");\nvar hide = __webpack_require__(\"35e8\");\nvar Iterators = __webpack_require__(\"481b\");\nvar $iterCreate = __webpack_require__(\"8f60\");\nvar setToStringTag = __webpack_require__(\"45f2\");\nvar getPrototypeOf = __webpack_require__(\"53e2\");\nvar ITERATOR = __webpack_require__(\"5168\")('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n\n/***/ }),\n\n/***/ \"32a6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 Object.keys(O)\nvar toObject = __webpack_require__(\"241e\");\nvar $keys = __webpack_require__(\"c3a1\");\n\n__webpack_require__(\"ce7e\")('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n\n\n/***/ }),\n\n/***/ \"32e9\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(\"86cc\");\nvar createDesc = __webpack_require__(\"4630\");\nmodule.exports = __webpack_require__(\"9e1e\") ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n/***/ }),\n\n/***/ \"32fc\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar document = __webpack_require__(\"e53d\").document;\nmodule.exports = document && document.documentElement;\n\n\n/***/ }),\n\n/***/ \"335c\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(\"6b4c\");\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n/***/ }),\n\n/***/ \"355d\":\n/***/ (function(module, exports) {\n\nexports.f = {}.propertyIsEnumerable;\n\n\n/***/ }),\n\n/***/ \"35e8\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(\"d9f6\");\nvar createDesc = __webpack_require__(\"aebd\");\nmodule.exports = __webpack_require__(\"8e60\") ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n/***/ }),\n\n/***/ \"36c3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__(\"335c\");\nvar defined = __webpack_require__(\"25eb\");\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"3702\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// check on default Array iterator\nvar Iterators = __webpack_require__(\"481b\");\nvar ITERATOR = __webpack_require__(\"5168\")('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n\n/***/ }),\n\n/***/ \"3a38\":\n/***/ (function(module, exports) {\n\n// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n/***/ }),\n\n/***/ \"40c3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = __webpack_require__(\"6b4c\");\nvar TAG = __webpack_require__(\"5168\")('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n/***/ }),\n\n/***/ \"4588\":\n/***/ (function(module, exports) {\n\n// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n/***/ }),\n\n/***/ \"45f2\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar def = __webpack_require__(\"d9f6\").f;\nvar has = __webpack_require__(\"07e3\");\nvar TAG = __webpack_require__(\"5168\")('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n\n\n/***/ }),\n\n/***/ \"4630\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n/***/ }),\n\n/***/ \"469f\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"6c1c\");\n__webpack_require__(\"1654\");\nmodule.exports = __webpack_require__(\"7d7b\");\n\n\n/***/ }),\n\n/***/ \"481b\":\n/***/ (function(module, exports) {\n\nmodule.exports = {};\n\n\n/***/ }),\n\n/***/ \"4aa6\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"dc62\");\n\n/***/ }),\n\n/***/ \"4bf8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__(\"be13\");\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"4ee1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ITERATOR = __webpack_require__(\"5168\")('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n\n\n/***/ }),\n\n/***/ \"50ed\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n/***/ }),\n\n/***/ \"5147\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar MATCH = __webpack_require__(\"2b4c\")('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n\n\n/***/ }),\n\n/***/ \"5168\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar store = __webpack_require__(\"dbdb\")('wks');\nvar uid = __webpack_require__(\"62a0\");\nvar Symbol = __webpack_require__(\"e53d\").Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n/***/ }),\n\n/***/ \"5176\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"51b6\");\n\n/***/ }),\n\n/***/ \"51b6\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"a3c3\");\nmodule.exports = __webpack_require__(\"584a\").Object.assign;\n\n\n/***/ }),\n\n/***/ \"520a\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar regexpFlags = __webpack_require__(\"0bfb\");\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n\n\n/***/ }),\n\n/***/ \"53e2\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = __webpack_require__(\"07e3\");\nvar toObject = __webpack_require__(\"241e\");\nvar IE_PROTO = __webpack_require__(\"5559\")('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n\n/***/ }),\n\n/***/ \"549b\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar ctx = __webpack_require__(\"d864\");\nvar $export = __webpack_require__(\"63b6\");\nvar toObject = __webpack_require__(\"241e\");\nvar call = __webpack_require__(\"b0dc\");\nvar isArrayIter = __webpack_require__(\"3702\");\nvar toLength = __webpack_require__(\"b447\");\nvar createProperty = __webpack_require__(\"20fd\");\nvar getIterFn = __webpack_require__(\"7cd6\");\n\n$export($export.S + $export.F * !__webpack_require__(\"4ee1\")(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n\n/***/ }),\n\n/***/ \"54a1\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"6c1c\");\n__webpack_require__(\"1654\");\nmodule.exports = __webpack_require__(\"95d5\");\n\n\n/***/ }),\n\n/***/ \"5537\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar core = __webpack_require__(\"8378\");\nvar global = __webpack_require__(\"7726\");\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: __webpack_require__(\"2d00\") ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n\n\n/***/ }),\n\n/***/ \"5559\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar shared = __webpack_require__(\"dbdb\")('keys');\nvar uid = __webpack_require__(\"62a0\");\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n/***/ }),\n\n/***/ \"584a\":\n/***/ (function(module, exports) {\n\nvar core = module.exports = { version: '2.6.5' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"5b4e\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__(\"36c3\");\nvar toLength = __webpack_require__(\"b447\");\nvar toAbsoluteIndex = __webpack_require__(\"0fc9\");\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n/***/ }),\n\n/***/ \"5ca1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(\"7726\");\nvar core = __webpack_require__(\"8378\");\nvar hide = __webpack_require__(\"32e9\");\nvar redefine = __webpack_require__(\"2aba\");\nvar ctx = __webpack_require__(\"9b43\");\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n/***/ }),\n\n/***/ \"5d73\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"469f\");\n\n/***/ }),\n\n/***/ \"5f1b\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar classof = __webpack_require__(\"23c6\");\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n\n\n/***/ }),\n\n/***/ \"626a\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(\"2d95\");\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n/***/ }),\n\n/***/ \"62a0\":\n/***/ (function(module, exports) {\n\nvar id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n/***/ }),\n\n/***/ \"63b6\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(\"e53d\");\nvar core = __webpack_require__(\"584a\");\nvar ctx = __webpack_require__(\"d864\");\nvar hide = __webpack_require__(\"35e8\");\nvar has = __webpack_require__(\"07e3\");\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var IS_WRAP = type & $export.W;\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE];\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];\n var key, own, out;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if (own && has(exports, key)) continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function (C) {\n var F = function (a, b, c) {\n if (this instanceof C) {\n switch (arguments.length) {\n case 0: return new C();\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if (IS_PROTO) {\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n/***/ }),\n\n/***/ \"6762\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// https://github.com/tc39/Array.prototype.includes\nvar $export = __webpack_require__(\"5ca1\");\nvar $includes = __webpack_require__(\"c366\")(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n__webpack_require__(\"9c6c\")('includes');\n\n\n/***/ }),\n\n/***/ \"6821\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__(\"626a\");\nvar defined = __webpack_require__(\"be13\");\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n/***/ }),\n\n/***/ \"69a8\":\n/***/ (function(module, exports) {\n\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n/***/ }),\n\n/***/ \"6a99\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(\"d3f4\");\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n/***/ }),\n\n/***/ \"6b4c\":\n/***/ (function(module, exports) {\n\nvar toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n/***/ }),\n\n/***/ \"6c1c\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"c367\");\nvar global = __webpack_require__(\"e53d\");\nvar hide = __webpack_require__(\"35e8\");\nvar Iterators = __webpack_require__(\"481b\");\nvar TO_STRING_TAG = __webpack_require__(\"5168\")('toStringTag');\n\nvar DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +\n 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +\n 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +\n 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +\n 'TextTrackList,TouchList').split(',');\n\nfor (var i = 0; i < DOMIterables.length; i++) {\n var NAME = DOMIterables[i];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n\n/***/ }),\n\n/***/ \"71c1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"3a38\");\nvar defined = __webpack_require__(\"25eb\");\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n/***/ }),\n\n/***/ \"7726\":\n/***/ (function(module, exports) {\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"774e\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"d2d5\");\n\n/***/ }),\n\n/***/ \"77f1\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(\"4588\");\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n/***/ }),\n\n/***/ \"794b\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = !__webpack_require__(\"8e60\") && !__webpack_require__(\"294c\")(function () {\n return Object.defineProperty(__webpack_require__(\"1ec9\")('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"79aa\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"79e5\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n/***/ }),\n\n/***/ \"7cd6\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar classof = __webpack_require__(\"40c3\");\nvar ITERATOR = __webpack_require__(\"5168\")('iterator');\nvar Iterators = __webpack_require__(\"481b\");\nmodule.exports = __webpack_require__(\"584a\").getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n\n/***/ }),\n\n/***/ \"7d7b\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(\"e4ae\");\nvar get = __webpack_require__(\"7cd6\");\nmodule.exports = __webpack_require__(\"584a\").getIterator = function (it) {\n var iterFn = get(it);\n if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!');\n return anObject(iterFn.call(it));\n};\n\n\n/***/ }),\n\n/***/ \"7e90\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(\"d9f6\");\nvar anObject = __webpack_require__(\"e4ae\");\nvar getKeys = __webpack_require__(\"c3a1\");\n\nmodule.exports = __webpack_require__(\"8e60\") ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n\n/***/ }),\n\n/***/ \"8378\":\n/***/ (function(module, exports) {\n\nvar core = module.exports = { version: '2.6.5' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"8436\":\n/***/ (function(module, exports) {\n\nmodule.exports = function () { /* empty */ };\n\n\n/***/ }),\n\n/***/ \"86cc\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(\"cb7c\");\nvar IE8_DOM_DEFINE = __webpack_require__(\"c69a\");\nvar toPrimitive = __webpack_require__(\"6a99\");\nvar dP = Object.defineProperty;\n\nexports.f = __webpack_require__(\"9e1e\") ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n/***/ }),\n\n/***/ \"8aae\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"32a6\");\nmodule.exports = __webpack_require__(\"584a\").Object.keys;\n\n\n/***/ }),\n\n/***/ \"8e60\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(\"294c\")(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"8f60\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar create = __webpack_require__(\"a159\");\nvar descriptor = __webpack_require__(\"aebd\");\nvar setToStringTag = __webpack_require__(\"45f2\");\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n__webpack_require__(\"35e8\")(IteratorPrototype, __webpack_require__(\"5168\")('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n/***/ }),\n\n/***/ \"9003\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.2 IsArray(argument)\nvar cof = __webpack_require__(\"6b4c\");\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n\n/***/ }),\n\n/***/ \"9138\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"35e8\");\n\n\n/***/ }),\n\n/***/ \"9306\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = __webpack_require__(\"c3a1\");\nvar gOPS = __webpack_require__(\"9aa9\");\nvar pIE = __webpack_require__(\"355d\");\nvar toObject = __webpack_require__(\"241e\");\nvar IObject = __webpack_require__(\"335c\");\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || __webpack_require__(\"294c\")(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n\n\n/***/ }),\n\n/***/ \"9427\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(\"63b6\");\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: __webpack_require__(\"a159\") });\n\n\n/***/ }),\n\n/***/ \"95d5\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar classof = __webpack_require__(\"40c3\");\nvar ITERATOR = __webpack_require__(\"5168\")('iterator');\nvar Iterators = __webpack_require__(\"481b\");\nmodule.exports = __webpack_require__(\"584a\").isIterable = function (it) {\n var O = Object(it);\n return O[ITERATOR] !== undefined\n || '@@iterator' in O\n // eslint-disable-next-line no-prototype-builtins\n || Iterators.hasOwnProperty(classof(O));\n};\n\n\n/***/ }),\n\n/***/ \"9aa9\":\n/***/ (function(module, exports) {\n\nexports.f = Object.getOwnPropertySymbols;\n\n\n/***/ }),\n\n/***/ \"9b43\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// optional / simple context binding\nvar aFunction = __webpack_require__(\"d8e8\");\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n/***/ }),\n\n/***/ \"9c6c\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = __webpack_require__(\"2b4c\")('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(\"32e9\")(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n\n\n/***/ }),\n\n/***/ \"9def\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.15 ToLength\nvar toInteger = __webpack_require__(\"4588\");\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n/***/ }),\n\n/***/ \"9e1e\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(\"79e5\")(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"a159\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = __webpack_require__(\"e4ae\");\nvar dPs = __webpack_require__(\"7e90\");\nvar enumBugKeys = __webpack_require__(\"1691\");\nvar IE_PROTO = __webpack_require__(\"5559\")('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = __webpack_require__(\"1ec9\")('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n __webpack_require__(\"32fc\").appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n\n/***/ }),\n\n/***/ \"a352\":\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"sortablejs\");\n\n/***/ }),\n\n/***/ \"a3c3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.1 Object.assign(target, source)\nvar $export = __webpack_require__(\"63b6\");\n\n$export($export.S + $export.F, 'Object', { assign: __webpack_require__(\"9306\") });\n\n\n/***/ }),\n\n/***/ \"a481\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar anObject = __webpack_require__(\"cb7c\");\nvar toObject = __webpack_require__(\"4bf8\");\nvar toLength = __webpack_require__(\"9def\");\nvar toInteger = __webpack_require__(\"4588\");\nvar advanceStringIndex = __webpack_require__(\"0390\");\nvar regExpExec = __webpack_require__(\"5f1b\");\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\n__webpack_require__(\"214f\")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n\n\n/***/ }),\n\n/***/ \"a4bb\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"8aae\");\n\n/***/ }),\n\n/***/ \"a745\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"f410\");\n\n/***/ }),\n\n/***/ \"aae3\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.8 IsRegExp(argument)\nvar isObject = __webpack_require__(\"d3f4\");\nvar cof = __webpack_require__(\"2d95\");\nvar MATCH = __webpack_require__(\"2b4c\")('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n\n\n/***/ }),\n\n/***/ \"aebd\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n/***/ }),\n\n/***/ \"b0c5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar regexpExec = __webpack_require__(\"520a\");\n__webpack_require__(\"5ca1\")({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\n});\n\n\n/***/ }),\n\n/***/ \"b0dc\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// call something on iterator step with safe closing on error\nvar anObject = __webpack_require__(\"e4ae\");\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n\n\n/***/ }),\n\n/***/ \"b447\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.15 ToLength\nvar toInteger = __webpack_require__(\"3a38\");\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n/***/ }),\n\n/***/ \"b8e3\":\n/***/ (function(module, exports) {\n\nmodule.exports = true;\n\n\n/***/ }),\n\n/***/ \"be13\":\n/***/ (function(module, exports) {\n\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"c366\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__(\"6821\");\nvar toLength = __webpack_require__(\"9def\");\nvar toAbsoluteIndex = __webpack_require__(\"77f1\");\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n/***/ }),\n\n/***/ \"c367\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar addToUnscopables = __webpack_require__(\"8436\");\nvar step = __webpack_require__(\"50ed\");\nvar Iterators = __webpack_require__(\"481b\");\nvar toIObject = __webpack_require__(\"36c3\");\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = __webpack_require__(\"30f1\")(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n/***/ }),\n\n/***/ \"c3a1\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = __webpack_require__(\"e6f3\");\nvar enumBugKeys = __webpack_require__(\"1691\");\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n/***/ }),\n\n/***/ \"c649\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return insertNodeAt; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return camelize; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return console; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"d\", function() { return removeNode; });\n/* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"a481\");\n/* harmony import */ var core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_regexp_replace__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(\"4aa6\");\n/* harmony import */ var F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1__);\n\n\n\nfunction getConsole() {\n if (typeof window !== \"undefined\") {\n return window.console;\n }\n\n return global.console;\n}\n\nvar console = getConsole();\n\nfunction cached(fn) {\n var cache = F_source_Vue_Draggable_node_modules_babel_runtime_corejs2_core_js_object_create__WEBPACK_IMPORTED_MODULE_1___default()(null);\n\n return function cachedFn(str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\n\nvar regex = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(regex, function (_, c) {\n return c ? c.toUpperCase() : \"\";\n });\n});\n\nfunction removeNode(node) {\n if (node.parentElement !== null) {\n node.parentElement.removeChild(node);\n }\n}\n\nfunction insertNodeAt(fatherNode, node, position) {\n var refNode = position === 0 ? fatherNode.children[0] : fatherNode.children[position - 1].nextSibling;\n fatherNode.insertBefore(node, refNode);\n}\n\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(\"c8ba\")))\n\n/***/ }),\n\n/***/ \"c69a\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = !__webpack_require__(\"9e1e\") && !__webpack_require__(\"79e5\")(function () {\n return Object.defineProperty(__webpack_require__(\"230e\")('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n\n/***/ \"c8ba\":\n/***/ (function(module, exports) {\n\nvar g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n\n\n/***/ }),\n\n/***/ \"c8bb\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"54a1\");\n\n/***/ }),\n\n/***/ \"ca5a\":\n/***/ (function(module, exports) {\n\nvar id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n/***/ }),\n\n/***/ \"cb7c\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"d3f4\");\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"ce7e\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// most Object methods by ES6 should accept primitives\nvar $export = __webpack_require__(\"63b6\");\nvar core = __webpack_require__(\"584a\");\nvar fails = __webpack_require__(\"294c\");\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n\n\n/***/ }),\n\n/***/ \"d2c8\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = __webpack_require__(\"aae3\");\nvar defined = __webpack_require__(\"be13\");\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n\n\n/***/ }),\n\n/***/ \"d2d5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"1654\");\n__webpack_require__(\"549b\");\nmodule.exports = __webpack_require__(\"584a\").Array.from;\n\n\n/***/ }),\n\n/***/ \"d3f4\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n/***/ }),\n\n/***/ \"d864\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// optional / simple context binding\nvar aFunction = __webpack_require__(\"79aa\");\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n/***/ }),\n\n/***/ \"d8e8\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"d9f6\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(\"e4ae\");\nvar IE8_DOM_DEFINE = __webpack_require__(\"794b\");\nvar toPrimitive = __webpack_require__(\"1bc3\");\nvar dP = Object.defineProperty;\n\nexports.f = __webpack_require__(\"8e60\") ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n/***/ }),\n\n/***/ \"dbdb\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar core = __webpack_require__(\"584a\");\nvar global = __webpack_require__(\"e53d\");\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: __webpack_require__(\"b8e3\") ? 'pure' : 'global',\n copyright: '© 2019 Denis Pushkarev (zloirock.ru)'\n});\n\n\n/***/ }),\n\n/***/ \"dc62\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"9427\");\nvar $Object = __webpack_require__(\"584a\").Object;\nmodule.exports = function create(P, D) {\n return $Object.create(P, D);\n};\n\n\n/***/ }),\n\n/***/ \"e4ae\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(\"f772\");\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n/***/ }),\n\n/***/ \"e53d\":\n/***/ (function(module, exports) {\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n/***/ }),\n\n/***/ \"e6f3\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar has = __webpack_require__(\"07e3\");\nvar toIObject = __webpack_require__(\"36c3\");\nvar arrayIndexOf = __webpack_require__(\"5b4e\")(false);\nvar IE_PROTO = __webpack_require__(\"5559\")('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n/***/ }),\n\n/***/ \"f410\":\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(\"1af6\");\nmodule.exports = __webpack_require__(\"584a\").Array.isArray;\n\n\n/***/ }),\n\n/***/ \"f559\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n\nvar $export = __webpack_require__(\"5ca1\");\nvar toLength = __webpack_require__(\"9def\");\nvar context = __webpack_require__(\"d2c8\");\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * __webpack_require__(\"5147\")(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n\n\n/***/ }),\n\n/***/ \"f772\":\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n/***/ }),\n\n/***/ \"fa5b\":\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(\"5537\")('native-function-to-string', Function.toString);\n\n\n/***/ }),\n\n/***/ \"fb15\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var setPublicPath_i\n if ((setPublicPath_i = window.document.currentScript) && (setPublicPath_i = setPublicPath_i.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/))) {\n __webpack_require__.p = setPublicPath_i[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ var setPublicPath = (null);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/object/assign.js\nvar object_assign = __webpack_require__(\"5176\");\nvar assign_default = /*#__PURE__*/__webpack_require__.n(object_assign);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.starts-with.js\nvar es6_string_starts_with = __webpack_require__(\"f559\");\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/object/keys.js\nvar keys = __webpack_require__(\"a4bb\");\nvar keys_default = /*#__PURE__*/__webpack_require__.n(keys);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/array/is-array.js\nvar is_array = __webpack_require__(\"a745\");\nvar is_array_default = /*#__PURE__*/__webpack_require__.n(is_array);\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/arrayWithHoles.js\n\nfunction _arrayWithHoles(arr) {\n if (is_array_default()(arr)) return arr;\n}\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/get-iterator.js\nvar get_iterator = __webpack_require__(\"5d73\");\nvar get_iterator_default = /*#__PURE__*/__webpack_require__.n(get_iterator);\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/iterableToArrayLimit.js\n\nfunction _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = get_iterator_default()(arr), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/nonIterableRest.js\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/slicedToArray.js\n\n\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n}\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es7.array.includes.js\nvar es7_array_includes = __webpack_require__(\"6762\");\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.includes.js\nvar es6_string_includes = __webpack_require__(\"2fdb\");\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/arrayWithoutHoles.js\n\nfunction _arrayWithoutHoles(arr) {\n if (is_array_default()(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/array/from.js\nvar from = __webpack_require__(\"774e\");\nvar from_default = /*#__PURE__*/__webpack_require__.n(from);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/is-iterable.js\nvar is_iterable = __webpack_require__(\"c8bb\");\nvar is_iterable_default = /*#__PURE__*/__webpack_require__.n(is_iterable);\n\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/iterableToArray.js\n\n\nfunction _iterableToArray(iter) {\n if (is_iterable_default()(Object(iter)) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return from_default()(iter);\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/nonIterableSpread.js\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/toConsumableArray.js\n\n\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n// EXTERNAL MODULE: external {\"commonjs\":\"sortablejs\",\"commonjs2\":\"sortablejs\",\"amd\":\"sortablejs\",\"root\":\"Sortable\"}\nvar external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_ = __webpack_require__(\"a352\");\nvar external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_);\n\n// EXTERNAL MODULE: ./src/util/helper.js\nvar helper = __webpack_require__(\"c649\");\n\n// CONCATENATED MODULE: ./src/vuedraggable.js\n\n\n\n\n\n\n\n\n\n\nfunction buildAttribute(object, propName, value) {\n if (value === undefined) {\n return object;\n }\n\n object = object || {};\n object[propName] = value;\n return object;\n}\n\nfunction computeVmIndex(vnodes, element) {\n return vnodes.map(function (elt) {\n return elt.elm;\n }).indexOf(element);\n}\n\nfunction _computeIndexes(slots, children, isTransition, footerOffset) {\n if (!slots) {\n return [];\n }\n\n var elmFromNodes = slots.map(function (elt) {\n return elt.elm;\n });\n var footerIndex = children.length - footerOffset;\n\n var rawIndexes = _toConsumableArray(children).map(function (elt, idx) {\n return idx >= footerIndex ? elmFromNodes.length : elmFromNodes.indexOf(elt);\n });\n\n return isTransition ? rawIndexes.filter(function (ind) {\n return ind !== -1;\n }) : rawIndexes;\n}\n\nfunction emit(evtName, evtData) {\n var _this = this;\n\n this.$nextTick(function () {\n return _this.$emit(evtName.toLowerCase(), evtData);\n });\n}\n\nfunction delegateAndEmit(evtName) {\n var _this2 = this;\n\n return function (evtData) {\n if (_this2.realList !== null) {\n _this2[\"onDrag\" + evtName](evtData);\n }\n\n emit.call(_this2, evtName, evtData);\n };\n}\n\nfunction isTransitionName(name) {\n return [\"transition-group\", \"TransitionGroup\"].includes(name);\n}\n\nfunction vuedraggable_isTransition(slots) {\n if (!slots || slots.length !== 1) {\n return false;\n }\n\n var _slots = _slicedToArray(slots, 1),\n componentOptions = _slots[0].componentOptions;\n\n if (!componentOptions) {\n return false;\n }\n\n return isTransitionName(componentOptions.tag);\n}\n\nfunction getSlot(slot, scopedSlot, key) {\n return slot[key] || (scopedSlot[key] ? scopedSlot[key]() : undefined);\n}\n\nfunction computeChildrenAndOffsets(children, slot, scopedSlot) {\n var headerOffset = 0;\n var footerOffset = 0;\n var header = getSlot(slot, scopedSlot, \"header\");\n\n if (header) {\n headerOffset = header.length;\n children = children ? [].concat(_toConsumableArray(header), _toConsumableArray(children)) : _toConsumableArray(header);\n }\n\n var footer = getSlot(slot, scopedSlot, \"footer\");\n\n if (footer) {\n footerOffset = footer.length;\n children = children ? [].concat(_toConsumableArray(children), _toConsumableArray(footer)) : _toConsumableArray(footer);\n }\n\n return {\n children: children,\n headerOffset: headerOffset,\n footerOffset: footerOffset\n };\n}\n\nfunction getComponentAttributes($attrs, componentData) {\n var attributes = null;\n\n var update = function update(name, value) {\n attributes = buildAttribute(attributes, name, value);\n };\n\n var attrs = keys_default()($attrs).filter(function (key) {\n return key === \"id\" || key.startsWith(\"data-\");\n }).reduce(function (res, key) {\n res[key] = $attrs[key];\n return res;\n }, {});\n\n update(\"attrs\", attrs);\n\n if (!componentData) {\n return attributes;\n }\n\n var on = componentData.on,\n props = componentData.props,\n componentDataAttrs = componentData.attrs;\n update(\"on\", on);\n update(\"props\", props);\n\n assign_default()(attributes.attrs, componentDataAttrs);\n\n return attributes;\n}\n\nvar eventsListened = [\"Start\", \"Add\", \"Remove\", \"Update\", \"End\"];\nvar eventsToEmit = [\"Choose\", \"Unchoose\", \"Sort\", \"Filter\", \"Clone\"];\nvar readonlyProperties = [\"Move\"].concat(eventsListened, eventsToEmit).map(function (evt) {\n return \"on\" + evt;\n});\nvar draggingElement = null;\nvar vuedraggable_props = {\n options: Object,\n list: {\n type: Array,\n required: false,\n default: null\n },\n value: {\n type: Array,\n required: false,\n default: null\n },\n noTransitionOnDrag: {\n type: Boolean,\n default: false\n },\n clone: {\n type: Function,\n default: function _default(original) {\n return original;\n }\n },\n element: {\n type: String,\n default: \"div\"\n },\n tag: {\n type: String,\n default: null\n },\n move: {\n type: Function,\n default: null\n },\n componentData: {\n type: Object,\n required: false,\n default: null\n }\n};\nvar draggableComponent = {\n name: \"draggable\",\n inheritAttrs: false,\n props: vuedraggable_props,\n data: function data() {\n return {\n transitionMode: false,\n noneFunctionalComponentMode: false\n };\n },\n render: function render(h) {\n var slots = this.$slots.default;\n this.transitionMode = vuedraggable_isTransition(slots);\n\n var _computeChildrenAndOf = computeChildrenAndOffsets(slots, this.$slots, this.$scopedSlots),\n children = _computeChildrenAndOf.children,\n headerOffset = _computeChildrenAndOf.headerOffset,\n footerOffset = _computeChildrenAndOf.footerOffset;\n\n this.headerOffset = headerOffset;\n this.footerOffset = footerOffset;\n var attributes = getComponentAttributes(this.$attrs, this.componentData);\n return h(this.getTag(), attributes, children);\n },\n created: function created() {\n if (this.list !== null && this.value !== null) {\n helper[\"b\" /* console */].error(\"Value and list props are mutually exclusive! Please set one or another.\");\n }\n\n if (this.element !== \"div\") {\n helper[\"b\" /* console */].warn(\"Element props is deprecated please use tag props instead. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#element-props\");\n }\n\n if (this.options !== undefined) {\n helper[\"b\" /* console */].warn(\"Options props is deprecated, add sortable options directly as vue.draggable item, or use v-bind. See https://github.com/SortableJS/Vue.Draggable/blob/master/documentation/migrate.md#options-props\");\n }\n },\n mounted: function mounted() {\n var _this3 = this;\n\n this.noneFunctionalComponentMode = this.getTag().toLowerCase() !== this.$el.nodeName.toLowerCase() && !this.getIsFunctional();\n\n if (this.noneFunctionalComponentMode && this.transitionMode) {\n throw new Error(\"Transition-group inside component is not supported. Please alter tag value or remove transition-group. Current tag value: \".concat(this.getTag()));\n }\n\n var optionsAdded = {};\n eventsListened.forEach(function (elt) {\n optionsAdded[\"on\" + elt] = delegateAndEmit.call(_this3, elt);\n });\n eventsToEmit.forEach(function (elt) {\n optionsAdded[\"on\" + elt] = emit.bind(_this3, elt);\n });\n\n var attributes = keys_default()(this.$attrs).reduce(function (res, key) {\n res[Object(helper[\"a\" /* camelize */])(key)] = _this3.$attrs[key];\n return res;\n }, {});\n\n var options = assign_default()({}, this.options, attributes, optionsAdded, {\n onMove: function onMove(evt, originalEvent) {\n return _this3.onDragMove(evt, originalEvent);\n }\n });\n\n !(\"draggable\" in options) && (options.draggable = \">*\");\n this._sortable = new external_commonjs_sortablejs_commonjs2_sortablejs_amd_sortablejs_root_Sortable_default.a(this.rootContainer, options);\n this.computeIndexes();\n },\n beforeDestroy: function beforeDestroy() {\n if (this._sortable !== undefined) this._sortable.destroy();\n },\n computed: {\n rootContainer: function rootContainer() {\n return this.transitionMode ? this.$el.children[0] : this.$el;\n },\n realList: function realList() {\n return this.list ? this.list : this.value;\n }\n },\n watch: {\n options: {\n handler: function handler(newOptionValue) {\n this.updateOptions(newOptionValue);\n },\n deep: true\n },\n $attrs: {\n handler: function handler(newOptionValue) {\n this.updateOptions(newOptionValue);\n },\n deep: true\n },\n realList: function realList() {\n this.computeIndexes();\n }\n },\n methods: {\n getIsFunctional: function getIsFunctional() {\n var fnOptions = this._vnode.fnOptions;\n return fnOptions && fnOptions.functional;\n },\n getTag: function getTag() {\n return this.tag || this.element;\n },\n updateOptions: function updateOptions(newOptionValue) {\n for (var property in newOptionValue) {\n var value = Object(helper[\"a\" /* camelize */])(property);\n\n if (readonlyProperties.indexOf(value) === -1) {\n this._sortable.option(value, newOptionValue[property]);\n }\n }\n },\n getChildrenNodes: function getChildrenNodes() {\n if (this.noneFunctionalComponentMode) {\n return this.$children[0].$slots.default;\n }\n\n var rawNodes = this.$slots.default;\n return this.transitionMode ? rawNodes[0].child.$slots.default : rawNodes;\n },\n computeIndexes: function computeIndexes() {\n var _this4 = this;\n\n this.$nextTick(function () {\n _this4.visibleIndexes = _computeIndexes(_this4.getChildrenNodes(), _this4.rootContainer.children, _this4.transitionMode, _this4.footerOffset);\n });\n },\n getUnderlyingVm: function getUnderlyingVm(htmlElt) {\n var index = computeVmIndex(this.getChildrenNodes() || [], htmlElt);\n\n if (index === -1) {\n //Edge case during move callback: related element might be\n //an element different from collection\n return null;\n }\n\n var element = this.realList[index];\n return {\n index: index,\n element: element\n };\n },\n getUnderlyingPotencialDraggableComponent: function getUnderlyingPotencialDraggableComponent(_ref) {\n var vue = _ref.__vue__;\n\n if (!vue || !vue.$options || !isTransitionName(vue.$options._componentTag)) {\n if (!(\"realList\" in vue) && vue.$children.length === 1 && \"realList\" in vue.$children[0]) return vue.$children[0];\n return vue;\n }\n\n return vue.$parent;\n },\n emitChanges: function emitChanges(evt) {\n var _this5 = this;\n\n this.$nextTick(function () {\n _this5.$emit(\"change\", evt);\n });\n },\n alterList: function alterList(onList) {\n if (this.list) {\n onList(this.list);\n return;\n }\n\n var newList = _toConsumableArray(this.value);\n\n onList(newList);\n this.$emit(\"input\", newList);\n },\n spliceList: function spliceList() {\n var _arguments = arguments;\n\n var spliceList = function spliceList(list) {\n return list.splice.apply(list, _toConsumableArray(_arguments));\n };\n\n this.alterList(spliceList);\n },\n updatePosition: function updatePosition(oldIndex, newIndex) {\n var updatePosition = function updatePosition(list) {\n return list.splice(newIndex, 0, list.splice(oldIndex, 1)[0]);\n };\n\n this.alterList(updatePosition);\n },\n getRelatedContextFromMoveEvent: function getRelatedContextFromMoveEvent(_ref2) {\n var to = _ref2.to,\n related = _ref2.related;\n var component = this.getUnderlyingPotencialDraggableComponent(to);\n\n if (!component) {\n return {\n component: component\n };\n }\n\n var list = component.realList;\n var context = {\n list: list,\n component: component\n };\n\n if (to !== related && list && component.getUnderlyingVm) {\n var destination = component.getUnderlyingVm(related);\n\n if (destination) {\n return assign_default()(destination, context);\n }\n }\n\n return context;\n },\n getVmIndex: function getVmIndex(domIndex) {\n var indexes = this.visibleIndexes;\n var numberIndexes = indexes.length;\n return domIndex > numberIndexes - 1 ? numberIndexes : indexes[domIndex];\n },\n getComponent: function getComponent() {\n return this.$slots.default[0].componentInstance;\n },\n resetTransitionData: function resetTransitionData(index) {\n if (!this.noTransitionOnDrag || !this.transitionMode) {\n return;\n }\n\n var nodes = this.getChildrenNodes();\n nodes[index].data = null;\n var transitionContainer = this.getComponent();\n transitionContainer.children = [];\n transitionContainer.kept = undefined;\n },\n onDragStart: function onDragStart(evt) {\n this.context = this.getUnderlyingVm(evt.item);\n evt.item._underlying_vm_ = this.clone(this.context.element);\n draggingElement = evt.item;\n },\n onDragAdd: function onDragAdd(evt) {\n var element = evt.item._underlying_vm_;\n\n if (element === undefined) {\n return;\n }\n\n Object(helper[\"d\" /* removeNode */])(evt.item);\n var newIndex = this.getVmIndex(evt.newIndex);\n this.spliceList(newIndex, 0, element);\n this.computeIndexes();\n var added = {\n element: element,\n newIndex: newIndex\n };\n this.emitChanges({\n added: added\n });\n },\n onDragRemove: function onDragRemove(evt) {\n Object(helper[\"c\" /* insertNodeAt */])(this.rootContainer, evt.item, evt.oldIndex);\n\n if (evt.pullMode === \"clone\") {\n Object(helper[\"d\" /* removeNode */])(evt.clone);\n return;\n }\n\n var oldIndex = this.context.index;\n this.spliceList(oldIndex, 1);\n var removed = {\n element: this.context.element,\n oldIndex: oldIndex\n };\n this.resetTransitionData(oldIndex);\n this.emitChanges({\n removed: removed\n });\n },\n onDragUpdate: function onDragUpdate(evt) {\n Object(helper[\"d\" /* removeNode */])(evt.item);\n Object(helper[\"c\" /* insertNodeAt */])(evt.from, evt.item, evt.oldIndex);\n var oldIndex = this.context.index;\n var newIndex = this.getVmIndex(evt.newIndex);\n this.updatePosition(oldIndex, newIndex);\n var moved = {\n element: this.context.element,\n oldIndex: oldIndex,\n newIndex: newIndex\n };\n this.emitChanges({\n moved: moved\n });\n },\n updateProperty: function updateProperty(evt, propertyName) {\n evt.hasOwnProperty(propertyName) && (evt[propertyName] += this.headerOffset);\n },\n computeFutureIndex: function computeFutureIndex(relatedContext, evt) {\n if (!relatedContext.element) {\n return 0;\n }\n\n var domChildren = _toConsumableArray(evt.to.children).filter(function (el) {\n return el.style[\"display\"] !== \"none\";\n });\n\n var currentDOMIndex = domChildren.indexOf(evt.related);\n var currentIndex = relatedContext.component.getVmIndex(currentDOMIndex);\n var draggedInList = domChildren.indexOf(draggingElement) !== -1;\n return draggedInList || !evt.willInsertAfter ? currentIndex : currentIndex + 1;\n },\n onDragMove: function onDragMove(evt, originalEvent) {\n var onMove = this.move;\n\n if (!onMove || !this.realList) {\n return true;\n }\n\n var relatedContext = this.getRelatedContextFromMoveEvent(evt);\n var draggedContext = this.context;\n var futureIndex = this.computeFutureIndex(relatedContext, evt);\n\n assign_default()(draggedContext, {\n futureIndex: futureIndex\n });\n\n var sendEvt = assign_default()({}, evt, {\n relatedContext: relatedContext,\n draggedContext: draggedContext\n });\n\n return onMove(sendEvt, originalEvent);\n },\n onDragEnd: function onDragEnd() {\n this.computeIndexes();\n draggingElement = null;\n }\n }\n};\n\nif (typeof window !== \"undefined\" && \"Vue\" in window) {\n window.Vue.component(\"draggable\", draggableComponent);\n}\n\n/* harmony default export */ var vuedraggable = (draggableComponent);\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ var entry_lib = __webpack_exports__[\"default\"] = (vuedraggable);\n\n\n\n/***/ })\n\n/******/ })[\"default\"];\n//# sourceMappingURL=vuedraggable.common.js.map","// Exports the \"textcolor\" plugin for usage with module loaders\n// Usage:\n// CommonJS:\n// require('tinymce/plugins/textcolor')\n// ES2015:\n// import 'tinymce/plugins/textcolor'\nrequire('./plugin.js');","/**!\n * Sortable 1.10.1\n * @author\tRubaXa \n * @author\towenm \n * @license MIT\n */\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nvar version = \"1.10.1\";\n\nfunction userAgent(pattern) {\n if (typeof window !== 'undefined' && window.navigator) {\n return !!\n /*@__PURE__*/\n navigator.userAgent.match(pattern);\n }\n}\n\nvar IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i);\nvar Edge = userAgent(/Edge/i);\nvar FireFox = userAgent(/firefox/i);\nvar Safari = userAgent(/safari/i) && !userAgent(/chrome/i) && !userAgent(/android/i);\nvar IOS = userAgent(/iP(ad|od|hone)/i);\nvar ChromeForAndroid = userAgent(/chrome/i) && userAgent(/android/i);\n\nvar captureMode = {\n capture: false,\n passive: false\n};\n\nfunction on(el, event, fn) {\n el.addEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction off(el, event, fn) {\n el.removeEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction matches(\n/**HTMLElement*/\nel,\n/**String*/\nselector) {\n if (!selector) return;\n selector[0] === '>' && (selector = selector.substring(1));\n\n if (el) {\n try {\n if (el.matches) {\n return el.matches(selector);\n } else if (el.msMatchesSelector) {\n return el.msMatchesSelector(selector);\n } else if (el.webkitMatchesSelector) {\n return el.webkitMatchesSelector(selector);\n }\n } catch (_) {\n return false;\n }\n }\n\n return false;\n}\n\nfunction getParentOrHost(el) {\n return el.host && el !== document && el.host.nodeType ? el.host : el.parentNode;\n}\n\nfunction closest(\n/**HTMLElement*/\nel,\n/**String*/\nselector,\n/**HTMLElement*/\nctx, includeCTX) {\n if (el) {\n ctx = ctx || document;\n\n do {\n if (selector != null && (selector[0] === '>' ? el.parentNode === ctx && matches(el, selector) : matches(el, selector)) || includeCTX && el === ctx) {\n return el;\n }\n\n if (el === ctx) break;\n /* jshint boss:true */\n } while (el = getParentOrHost(el));\n }\n\n return null;\n}\n\nvar R_SPACE = /\\s+/g;\n\nfunction toggleClass(el, name, state) {\n if (el && name) {\n if (el.classList) {\n el.classList[state ? 'add' : 'remove'](name);\n } else {\n var className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' ');\n el.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' ');\n }\n }\n}\n\nfunction css(el, prop, val) {\n var style = el && el.style;\n\n if (style) {\n if (val === void 0) {\n if (document.defaultView && document.defaultView.getComputedStyle) {\n val = document.defaultView.getComputedStyle(el, '');\n } else if (el.currentStyle) {\n val = el.currentStyle;\n }\n\n return prop === void 0 ? val : val[prop];\n } else {\n if (!(prop in style) && prop.indexOf('webkit') === -1) {\n prop = '-webkit-' + prop;\n }\n\n style[prop] = val + (typeof val === 'string' ? '' : 'px');\n }\n }\n}\n\nfunction matrix(el, selfOnly) {\n var appliedTransforms = '';\n\n if (typeof el === 'string') {\n appliedTransforms = el;\n } else {\n do {\n var transform = css(el, 'transform');\n\n if (transform && transform !== 'none') {\n appliedTransforms = transform + ' ' + appliedTransforms;\n }\n /* jshint boss:true */\n\n } while (!selfOnly && (el = el.parentNode));\n }\n\n var matrixFn = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix;\n /*jshint -W056 */\n\n return matrixFn && new matrixFn(appliedTransforms);\n}\n\nfunction find(ctx, tagName, iterator) {\n if (ctx) {\n var list = ctx.getElementsByTagName(tagName),\n i = 0,\n n = list.length;\n\n if (iterator) {\n for (; i < n; i++) {\n iterator(list[i], i);\n }\n }\n\n return list;\n }\n\n return [];\n}\n\nfunction getWindowScrollingElement() {\n if (IE11OrLess) {\n return document.documentElement;\n } else {\n return document.scrollingElement;\n }\n}\n/**\n * Returns the \"bounding client rect\" of given element\n * @param {HTMLElement} el The element whose boundingClientRect is wanted\n * @param {[Boolean]} relativeToContainingBlock Whether the rect should be relative to the containing block of (including) the container\n * @param {[Boolean]} relativeToNonStaticParent Whether the rect should be relative to the relative parent of (including) the contaienr\n * @param {[Boolean]} undoScale Whether the container's scale() should be undone\n * @param {[HTMLElement]} container The parent the element will be placed in\n * @return {Object} The boundingClientRect of el, with specified adjustments\n */\n\n\nfunction getRect(el, relativeToContainingBlock, relativeToNonStaticParent, undoScale, container) {\n if (!el.getBoundingClientRect && el !== window) return;\n var elRect, top, left, bottom, right, height, width;\n\n if (el !== window && el !== getWindowScrollingElement()) {\n elRect = el.getBoundingClientRect();\n top = elRect.top;\n left = elRect.left;\n bottom = elRect.bottom;\n right = elRect.right;\n height = elRect.height;\n width = elRect.width;\n } else {\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n height = window.innerHeight;\n width = window.innerWidth;\n }\n\n if ((relativeToContainingBlock || relativeToNonStaticParent) && el !== window) {\n // Adjust for translate()\n container = container || el.parentNode; // solves #1123 (see: https://stackoverflow.com/a/37953806/6088312)\n // Not needed on <= IE11\n\n if (!IE11OrLess) {\n do {\n if (container && container.getBoundingClientRect && (css(container, 'transform') !== 'none' || relativeToNonStaticParent && css(container, 'position') !== 'static')) {\n var containerRect = container.getBoundingClientRect(); // Set relative to edges of padding box of container\n\n top -= containerRect.top + parseInt(css(container, 'border-top-width'));\n left -= containerRect.left + parseInt(css(container, 'border-left-width'));\n bottom = top + elRect.height;\n right = left + elRect.width;\n break;\n }\n /* jshint boss:true */\n\n } while (container = container.parentNode);\n }\n }\n\n if (undoScale && el !== window) {\n // Adjust for scale()\n var elMatrix = matrix(container || el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d;\n\n if (elMatrix) {\n top /= scaleY;\n left /= scaleX;\n width /= scaleX;\n height /= scaleY;\n bottom = top + height;\n right = left + width;\n }\n }\n\n return {\n top: top,\n left: left,\n bottom: bottom,\n right: right,\n width: width,\n height: height\n };\n}\n/**\n * Checks if a side of an element is scrolled past a side of its parents\n * @param {HTMLElement} el The element who's side being scrolled out of view is in question\n * @param {String} elSide Side of the element in question ('top', 'left', 'right', 'bottom')\n * @param {String} parentSide Side of the parent in question ('top', 'left', 'right', 'bottom')\n * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element\n */\n\n\nfunction isScrolledPast(el, elSide, parentSide) {\n var parent = getParentAutoScrollElement(el, true),\n elSideVal = getRect(el)[elSide];\n /* jshint boss:true */\n\n while (parent) {\n var parentSideVal = getRect(parent)[parentSide],\n visible = void 0;\n\n if (parentSide === 'top' || parentSide === 'left') {\n visible = elSideVal >= parentSideVal;\n } else {\n visible = elSideVal <= parentSideVal;\n }\n\n if (!visible) return parent;\n if (parent === getWindowScrollingElement()) break;\n parent = getParentAutoScrollElement(parent, false);\n }\n\n return false;\n}\n/**\n * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible)\n * and non-draggable elements\n * @param {HTMLElement} el The parent element\n * @param {Number} childNum The index of the child\n * @param {Object} options Parent Sortable's options\n * @return {HTMLElement} The child at index childNum, or null if not found\n */\n\n\nfunction getChild(el, childNum, options) {\n var currentChild = 0,\n i = 0,\n children = el.children;\n\n while (i < children.length) {\n if (children[i].style.display !== 'none' && children[i] !== Sortable.ghost && children[i] !== Sortable.dragged && closest(children[i], options.draggable, el, false)) {\n if (currentChild === childNum) {\n return children[i];\n }\n\n currentChild++;\n }\n\n i++;\n }\n\n return null;\n}\n/**\n * Gets the last child in the el, ignoring ghostEl or invisible elements (clones)\n * @param {HTMLElement} el Parent element\n * @param {selector} selector Any other elements that should be ignored\n * @return {HTMLElement} The last child, ignoring ghostEl\n */\n\n\nfunction lastChild(el, selector) {\n var last = el.lastElementChild;\n\n while (last && (last === Sortable.ghost || css(last, 'display') === 'none' || selector && !matches(last, selector))) {\n last = last.previousElementSibling;\n }\n\n return last || null;\n}\n/**\n * Returns the index of an element within its parent for a selected set of\n * elements\n * @param {HTMLElement} el\n * @param {selector} selector\n * @return {number}\n */\n\n\nfunction index(el, selector) {\n var index = 0;\n\n if (!el || !el.parentNode) {\n return -1;\n }\n /* jshint boss:true */\n\n\n while (el = el.previousElementSibling) {\n if (el.nodeName.toUpperCase() !== 'TEMPLATE' && el !== Sortable.clone && (!selector || matches(el, selector))) {\n index++;\n }\n }\n\n return index;\n}\n/**\n * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements.\n * The value is returned in real pixels.\n * @param {HTMLElement} el\n * @return {Array} Offsets in the format of [left, top]\n */\n\n\nfunction getRelativeScrollOffset(el) {\n var offsetLeft = 0,\n offsetTop = 0,\n winScroller = getWindowScrollingElement();\n\n if (el) {\n do {\n var elMatrix = matrix(el),\n scaleX = elMatrix.a,\n scaleY = elMatrix.d;\n offsetLeft += el.scrollLeft * scaleX;\n offsetTop += el.scrollTop * scaleY;\n } while (el !== winScroller && (el = el.parentNode));\n }\n\n return [offsetLeft, offsetTop];\n}\n/**\n * Returns the index of the object within the given array\n * @param {Array} arr Array that may or may not hold the object\n * @param {Object} obj An object that has a key-value pair unique to and identical to a key-value pair in the object you want to find\n * @return {Number} The index of the object in the array, or -1\n */\n\n\nfunction indexOfObject(arr, obj) {\n for (var i in arr) {\n if (!arr.hasOwnProperty(i)) continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] === arr[i][key]) return Number(i);\n }\n }\n\n return -1;\n}\n\nfunction getParentAutoScrollElement(el, includeSelf) {\n // skip to window\n if (!el || !el.getBoundingClientRect) return getWindowScrollingElement();\n var elem = el;\n var gotSelf = false;\n\n do {\n // we don't need to get elem css if it isn't even overflowing in the first place (performance)\n if (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) {\n var elemCSS = css(elem);\n\n if (elem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') || elem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')) {\n if (!elem.getBoundingClientRect || elem === document.body) return getWindowScrollingElement();\n if (gotSelf || includeSelf) return elem;\n gotSelf = true;\n }\n }\n /* jshint boss:true */\n\n } while (elem = elem.parentNode);\n\n return getWindowScrollingElement();\n}\n\nfunction extend(dst, src) {\n if (dst && src) {\n for (var key in src) {\n if (src.hasOwnProperty(key)) {\n dst[key] = src[key];\n }\n }\n }\n\n return dst;\n}\n\nfunction isRectEqual(rect1, rect2) {\n return Math.round(rect1.top) === Math.round(rect2.top) && Math.round(rect1.left) === Math.round(rect2.left) && Math.round(rect1.height) === Math.round(rect2.height) && Math.round(rect1.width) === Math.round(rect2.width);\n}\n\nvar _throttleTimeout;\n\nfunction throttle(callback, ms) {\n return function () {\n if (!_throttleTimeout) {\n var args = arguments,\n _this = this;\n\n if (args.length === 1) {\n callback.call(_this, args[0]);\n } else {\n callback.apply(_this, args);\n }\n\n _throttleTimeout = setTimeout(function () {\n _throttleTimeout = void 0;\n }, ms);\n }\n };\n}\n\nfunction cancelThrottle() {\n clearTimeout(_throttleTimeout);\n _throttleTimeout = void 0;\n}\n\nfunction scrollBy(el, x, y) {\n el.scrollLeft += x;\n el.scrollTop += y;\n}\n\nfunction clone(el) {\n var Polymer = window.Polymer;\n var $ = window.jQuery || window.Zepto;\n\n if (Polymer && Polymer.dom) {\n return Polymer.dom(el).cloneNode(true);\n } else if ($) {\n return $(el).clone(true)[0];\n } else {\n return el.cloneNode(true);\n }\n}\n\nfunction setRect(el, rect) {\n css(el, 'position', 'absolute');\n css(el, 'top', rect.top);\n css(el, 'left', rect.left);\n css(el, 'width', rect.width);\n css(el, 'height', rect.height);\n}\n\nfunction unsetRect(el) {\n css(el, 'position', '');\n css(el, 'top', '');\n css(el, 'left', '');\n css(el, 'width', '');\n css(el, 'height', '');\n}\n\nvar expando = 'Sortable' + new Date().getTime();\n\nfunction AnimationStateManager() {\n var animationStates = [],\n animationCallbackId;\n return {\n captureAnimationState: function captureAnimationState() {\n animationStates = [];\n if (!this.options.animation) return;\n var children = [].slice.call(this.el.children);\n children.forEach(function (child) {\n if (css(child, 'display') === 'none' || child === Sortable.ghost) return;\n animationStates.push({\n target: child,\n rect: getRect(child)\n });\n\n var fromRect = _objectSpread({}, animationStates[animationStates.length - 1].rect); // If animating: compensate for current animation\n\n\n if (child.thisAnimationDuration) {\n var childMatrix = matrix(child, true);\n\n if (childMatrix) {\n fromRect.top -= childMatrix.f;\n fromRect.left -= childMatrix.e;\n }\n }\n\n child.fromRect = fromRect;\n });\n },\n addAnimationState: function addAnimationState(state) {\n animationStates.push(state);\n },\n removeAnimationState: function removeAnimationState(target) {\n animationStates.splice(indexOfObject(animationStates, {\n target: target\n }), 1);\n },\n animateAll: function animateAll(callback) {\n var _this = this;\n\n if (!this.options.animation) {\n clearTimeout(animationCallbackId);\n if (typeof callback === 'function') callback();\n return;\n }\n\n var animating = false,\n animationTime = 0;\n animationStates.forEach(function (state) {\n var time = 0,\n target = state.target,\n fromRect = target.fromRect,\n toRect = getRect(target),\n prevFromRect = target.prevFromRect,\n prevToRect = target.prevToRect,\n animatingRect = state.rect,\n targetMatrix = matrix(target, true);\n\n if (targetMatrix) {\n // Compensate for current animation\n toRect.top -= targetMatrix.f;\n toRect.left -= targetMatrix.e;\n }\n\n target.toRect = toRect;\n\n if (target.thisAnimationDuration) {\n // Could also check if animatingRect is between fromRect and toRect\n if (isRectEqual(prevFromRect, toRect) && !isRectEqual(fromRect, toRect) && // Make sure animatingRect is on line between toRect & fromRect\n (animatingRect.top - toRect.top) / (animatingRect.left - toRect.left) === (fromRect.top - toRect.top) / (fromRect.left - toRect.left)) {\n // If returning to same place as started from animation and on same axis\n time = calculateRealTime(animatingRect, prevFromRect, prevToRect, _this.options);\n }\n } // if fromRect != toRect: animate\n\n\n if (!isRectEqual(toRect, fromRect)) {\n target.prevFromRect = fromRect;\n target.prevToRect = toRect;\n\n if (!time) {\n time = _this.options.animation;\n }\n\n _this.animate(target, animatingRect, toRect, time);\n }\n\n if (time) {\n animating = true;\n animationTime = Math.max(animationTime, time);\n clearTimeout(target.animationResetTimer);\n target.animationResetTimer = setTimeout(function () {\n target.animationTime = 0;\n target.prevFromRect = null;\n target.fromRect = null;\n target.prevToRect = null;\n target.thisAnimationDuration = null;\n }, time);\n target.thisAnimationDuration = time;\n }\n });\n clearTimeout(animationCallbackId);\n\n if (!animating) {\n if (typeof callback === 'function') callback();\n } else {\n animationCallbackId = setTimeout(function () {\n if (typeof callback === 'function') callback();\n }, animationTime);\n }\n\n animationStates = [];\n },\n animate: function animate(target, currentRect, toRect, duration) {\n if (duration) {\n css(target, 'transition', '');\n css(target, 'transform', '');\n var elMatrix = matrix(this.el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d,\n translateX = (currentRect.left - toRect.left) / (scaleX || 1),\n translateY = (currentRect.top - toRect.top) / (scaleY || 1);\n target.animatingX = !!translateX;\n target.animatingY = !!translateY;\n css(target, 'transform', 'translate3d(' + translateX + 'px,' + translateY + 'px,0)');\n repaint(target); // repaint\n\n css(target, 'transition', 'transform ' + duration + 'ms' + (this.options.easing ? ' ' + this.options.easing : ''));\n css(target, 'transform', 'translate3d(0,0,0)');\n typeof target.animated === 'number' && clearTimeout(target.animated);\n target.animated = setTimeout(function () {\n css(target, 'transition', '');\n css(target, 'transform', '');\n target.animated = false;\n target.animatingX = false;\n target.animatingY = false;\n }, duration);\n }\n }\n };\n}\n\nfunction repaint(target) {\n return target.offsetWidth;\n}\n\nfunction calculateRealTime(animatingRect, fromRect, toRect, options) {\n return Math.sqrt(Math.pow(fromRect.top - animatingRect.top, 2) + Math.pow(fromRect.left - animatingRect.left, 2)) / Math.sqrt(Math.pow(fromRect.top - toRect.top, 2) + Math.pow(fromRect.left - toRect.left, 2)) * options.animation;\n}\n\nvar plugins = [];\nvar defaults = {\n initializeByDefault: true\n};\nvar PluginManager = {\n mount: function mount(plugin) {\n // Set default static properties\n for (var option in defaults) {\n if (defaults.hasOwnProperty(option) && !(option in plugin)) {\n plugin[option] = defaults[option];\n }\n }\n\n plugins.push(plugin);\n },\n pluginEvent: function pluginEvent(eventName, sortable, evt) {\n var _this = this;\n\n this.eventCanceled = false;\n\n evt.cancel = function () {\n _this.eventCanceled = true;\n };\n\n var eventNameGlobal = eventName + 'Global';\n plugins.forEach(function (plugin) {\n if (!sortable[plugin.pluginName]) return; // Fire global events if it exists in this sortable\n\n if (sortable[plugin.pluginName][eventNameGlobal]) {\n sortable[plugin.pluginName][eventNameGlobal](_objectSpread({\n sortable: sortable\n }, evt));\n } // Only fire plugin event if plugin is enabled in this sortable,\n // and plugin has event defined\n\n\n if (sortable.options[plugin.pluginName] && sortable[plugin.pluginName][eventName]) {\n sortable[plugin.pluginName][eventName](_objectSpread({\n sortable: sortable\n }, evt));\n }\n });\n },\n initializePlugins: function initializePlugins(sortable, el, defaults, options) {\n plugins.forEach(function (plugin) {\n var pluginName = plugin.pluginName;\n if (!sortable.options[pluginName] && !plugin.initializeByDefault) return;\n var initialized = new plugin(sortable, el, sortable.options);\n initialized.sortable = sortable;\n initialized.options = sortable.options;\n sortable[pluginName] = initialized; // Add default options from plugin\n\n _extends(defaults, initialized.defaults);\n });\n\n for (var option in sortable.options) {\n if (!sortable.options.hasOwnProperty(option)) continue;\n var modified = this.modifyOption(sortable, option, sortable.options[option]);\n\n if (typeof modified !== 'undefined') {\n sortable.options[option] = modified;\n }\n }\n },\n getEventProperties: function getEventProperties(name, sortable) {\n var eventProperties = {};\n plugins.forEach(function (plugin) {\n if (typeof plugin.eventProperties !== 'function') return;\n\n _extends(eventProperties, plugin.eventProperties.call(sortable[plugin.pluginName], name));\n });\n return eventProperties;\n },\n modifyOption: function modifyOption(sortable, name, value) {\n var modifiedValue;\n plugins.forEach(function (plugin) {\n // Plugin must exist on the Sortable\n if (!sortable[plugin.pluginName]) return; // If static option listener exists for this option, call in the context of the Sortable's instance of this plugin\n\n if (plugin.optionListeners && typeof plugin.optionListeners[name] === 'function') {\n modifiedValue = plugin.optionListeners[name].call(sortable[plugin.pluginName], value);\n }\n });\n return modifiedValue;\n }\n};\n\nfunction dispatchEvent(_ref) {\n var sortable = _ref.sortable,\n rootEl = _ref.rootEl,\n name = _ref.name,\n targetEl = _ref.targetEl,\n cloneEl = _ref.cloneEl,\n toEl = _ref.toEl,\n fromEl = _ref.fromEl,\n oldIndex = _ref.oldIndex,\n newIndex = _ref.newIndex,\n oldDraggableIndex = _ref.oldDraggableIndex,\n newDraggableIndex = _ref.newDraggableIndex,\n originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n extraEventProperties = _ref.extraEventProperties;\n sortable = sortable || rootEl && rootEl[expando];\n if (!sortable) return;\n var evt,\n options = sortable.options,\n onName = 'on' + name.charAt(0).toUpperCase() + name.substr(1); // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent(name, {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent(name, true, true);\n }\n\n evt.to = toEl || rootEl;\n evt.from = fromEl || rootEl;\n evt.item = targetEl || rootEl;\n evt.clone = cloneEl;\n evt.oldIndex = oldIndex;\n evt.newIndex = newIndex;\n evt.oldDraggableIndex = oldDraggableIndex;\n evt.newDraggableIndex = newDraggableIndex;\n evt.originalEvent = originalEvent;\n evt.pullMode = putSortable ? putSortable.lastPutMode : undefined;\n\n var allEventProperties = _objectSpread({}, extraEventProperties, PluginManager.getEventProperties(name, sortable));\n\n for (var option in allEventProperties) {\n evt[option] = allEventProperties[option];\n }\n\n if (rootEl) {\n rootEl.dispatchEvent(evt);\n }\n\n if (options[onName]) {\n options[onName].call(sortable, evt);\n }\n}\n\nvar pluginEvent = function pluginEvent(eventName, sortable) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n originalEvent = _ref.evt,\n data = _objectWithoutProperties(_ref, [\"evt\"]);\n\n PluginManager.pluginEvent.bind(Sortable)(eventName, sortable, _objectSpread({\n dragEl: dragEl,\n parentEl: parentEl,\n ghostEl: ghostEl,\n rootEl: rootEl,\n nextEl: nextEl,\n lastDownEl: lastDownEl,\n cloneEl: cloneEl,\n cloneHidden: cloneHidden,\n dragStarted: moved,\n putSortable: putSortable,\n activeSortable: Sortable.active,\n originalEvent: originalEvent,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n hideGhostForTarget: _hideGhostForTarget,\n unhideGhostForTarget: _unhideGhostForTarget,\n cloneNowHidden: function cloneNowHidden() {\n cloneHidden = true;\n },\n cloneNowShown: function cloneNowShown() {\n cloneHidden = false;\n },\n dispatchSortableEvent: function dispatchSortableEvent(name) {\n _dispatchEvent({\n sortable: sortable,\n name: name,\n originalEvent: originalEvent\n });\n }\n }, data));\n};\n\nfunction _dispatchEvent(info) {\n dispatchEvent(_objectSpread({\n putSortable: putSortable,\n cloneEl: cloneEl,\n targetEl: dragEl,\n rootEl: rootEl,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex\n }, info));\n}\n\nvar dragEl,\n parentEl,\n ghostEl,\n rootEl,\n nextEl,\n lastDownEl,\n cloneEl,\n cloneHidden,\n oldIndex,\n newIndex,\n oldDraggableIndex,\n newDraggableIndex,\n activeGroup,\n putSortable,\n awaitingDragStarted = false,\n ignoreNextClick = false,\n sortables = [],\n tapEvt,\n touchEvt,\n lastDx,\n lastDy,\n tapDistanceLeft,\n tapDistanceTop,\n moved,\n lastTarget,\n lastDirection,\n pastFirstInvertThresh = false,\n isCircumstantialInvert = false,\n targetMoveDistance,\n // For positioning ghost absolutely\nghostRelativeParent,\n ghostRelativeParentInitialScroll = [],\n // (left, top)\n_silent = false,\n savedInputChecked = [];\n/** @const */\n\nvar documentExists = typeof document !== 'undefined',\n PositionGhostAbsolutely = IOS,\n CSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float',\n // This will not pass for IE9, because IE9 DnD only works on anchors\nsupportDraggable = documentExists && !ChromeForAndroid && !IOS && 'draggable' in document.createElement('div'),\n supportCssPointerEvents = function () {\n if (!documentExists) return; // false when <= IE11\n\n if (IE11OrLess) {\n return false;\n }\n\n var el = document.createElement('x');\n el.style.cssText = 'pointer-events:auto';\n return el.style.pointerEvents === 'auto';\n}(),\n _detectDirection = function _detectDirection(el, options) {\n var elCSS = css(el),\n elWidth = parseInt(elCSS.width) - parseInt(elCSS.paddingLeft) - parseInt(elCSS.paddingRight) - parseInt(elCSS.borderLeftWidth) - parseInt(elCSS.borderRightWidth),\n child1 = getChild(el, 0, options),\n child2 = getChild(el, 1, options),\n firstChildCSS = child1 && css(child1),\n secondChildCSS = child2 && css(child2),\n firstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + getRect(child1).width,\n secondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + getRect(child2).width;\n\n if (elCSS.display === 'flex') {\n return elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse' ? 'vertical' : 'horizontal';\n }\n\n if (elCSS.display === 'grid') {\n return elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal';\n }\n\n if (child1 && firstChildCSS[\"float\"] && firstChildCSS[\"float\"] !== 'none') {\n var touchingSideChild2 = firstChildCSS[\"float\"] === 'left' ? 'left' : 'right';\n return child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ? 'vertical' : 'horizontal';\n }\n\n return child1 && (firstChildCSS.display === 'block' || firstChildCSS.display === 'flex' || firstChildCSS.display === 'table' || firstChildCSS.display === 'grid' || firstChildWidth >= elWidth && elCSS[CSSFloatProperty] === 'none' || child2 && elCSS[CSSFloatProperty] === 'none' && firstChildWidth + secondChildWidth > elWidth) ? 'vertical' : 'horizontal';\n},\n _dragElInRowColumn = function _dragElInRowColumn(dragRect, targetRect, vertical) {\n var dragElS1Opp = vertical ? dragRect.left : dragRect.top,\n dragElS2Opp = vertical ? dragRect.right : dragRect.bottom,\n dragElOppLength = vertical ? dragRect.width : dragRect.height,\n targetS1Opp = vertical ? targetRect.left : targetRect.top,\n targetS2Opp = vertical ? targetRect.right : targetRect.bottom,\n targetOppLength = vertical ? targetRect.width : targetRect.height;\n return dragElS1Opp === targetS1Opp || dragElS2Opp === targetS2Opp || dragElS1Opp + dragElOppLength / 2 === targetS1Opp + targetOppLength / 2;\n},\n\n/**\n * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold.\n * @param {Number} x X position\n * @param {Number} y Y position\n * @return {HTMLElement} Element of the first found nearest Sortable\n */\n_detectNearestEmptySortable = function _detectNearestEmptySortable(x, y) {\n var ret;\n sortables.some(function (sortable) {\n if (lastChild(sortable)) return;\n var rect = getRect(sortable),\n threshold = sortable[expando].options.emptyInsertThreshold,\n insideHorizontally = x >= rect.left - threshold && x <= rect.right + threshold,\n insideVertically = y >= rect.top - threshold && y <= rect.bottom + threshold;\n\n if (threshold && insideHorizontally && insideVertically) {\n return ret = sortable;\n }\n });\n return ret;\n},\n _prepareGroup = function _prepareGroup(options) {\n function toFn(value, pull) {\n return function (to, from, dragEl, evt) {\n var sameGroup = to.options.group.name && from.options.group.name && to.options.group.name === from.options.group.name;\n\n if (value == null && (pull || sameGroup)) {\n // Default pull value\n // Default pull and put value if same group\n return true;\n } else if (value == null || value === false) {\n return false;\n } else if (pull && value === 'clone') {\n return value;\n } else if (typeof value === 'function') {\n return toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt);\n } else {\n var otherGroup = (pull ? to : from).options.group.name;\n return value === true || typeof value === 'string' && value === otherGroup || value.join && value.indexOf(otherGroup) > -1;\n }\n };\n }\n\n var group = {};\n var originalGroup = options.group;\n\n if (!originalGroup || _typeof(originalGroup) != 'object') {\n originalGroup = {\n name: originalGroup\n };\n }\n\n group.name = originalGroup.name;\n group.checkPull = toFn(originalGroup.pull, true);\n group.checkPut = toFn(originalGroup.put);\n group.revertClone = originalGroup.revertClone;\n options.group = group;\n},\n _hideGhostForTarget = function _hideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', 'none');\n }\n},\n _unhideGhostForTarget = function _unhideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', '');\n }\n}; // #1184 fix - Prevent click event on fallback if dragged but item not changed position\n\n\nif (documentExists) {\n document.addEventListener('click', function (evt) {\n if (ignoreNextClick) {\n evt.preventDefault();\n evt.stopPropagation && evt.stopPropagation();\n evt.stopImmediatePropagation && evt.stopImmediatePropagation();\n ignoreNextClick = false;\n return false;\n }\n }, true);\n}\n\nvar nearestEmptyInsertDetectEvent = function nearestEmptyInsertDetectEvent(evt) {\n if (dragEl) {\n evt = evt.touches ? evt.touches[0] : evt;\n\n var nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY);\n\n if (nearest) {\n // Create imitation event\n var event = {};\n\n for (var i in evt) {\n if (evt.hasOwnProperty(i)) {\n event[i] = evt[i];\n }\n }\n\n event.target = event.rootEl = nearest;\n event.preventDefault = void 0;\n event.stopPropagation = void 0;\n\n nearest[expando]._onDragOver(event);\n }\n }\n};\n\nvar _checkOutsideTargetEl = function _checkOutsideTargetEl(evt) {\n if (dragEl) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target);\n }\n};\n/**\n * @class Sortable\n * @param {HTMLElement} el\n * @param {Object} [options]\n */\n\n\nfunction Sortable(el, options) {\n if (!(el && el.nodeType && el.nodeType === 1)) {\n throw \"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(el));\n }\n\n this.el = el; // root element\n\n this.options = options = _extends({}, options); // Export instance\n\n el[expando] = this;\n var defaults = {\n group: null,\n sort: true,\n disabled: false,\n store: null,\n handle: null,\n draggable: /^[uo]l$/i.test(el.nodeName) ? '>li' : '>*',\n swapThreshold: 1,\n // percentage; 0 <= x <= 1\n invertSwap: false,\n // invert always\n invertedSwapThreshold: null,\n // will be set to same as swapThreshold if default\n removeCloneOnHide: true,\n direction: function direction() {\n return _detectDirection(el, this.options);\n },\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n dragClass: 'sortable-drag',\n ignore: 'a, img',\n filter: null,\n preventOnFilter: true,\n animation: 0,\n easing: null,\n setData: function setData(dataTransfer, dragEl) {\n dataTransfer.setData('Text', dragEl.textContent);\n },\n dropBubble: false,\n dragoverBubble: false,\n dataIdAttr: 'data-id',\n delay: 0,\n delayOnTouchOnly: false,\n touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,\n forceFallback: false,\n fallbackClass: 'sortable-fallback',\n fallbackOnBody: false,\n fallbackTolerance: 0,\n fallbackOffset: {\n x: 0,\n y: 0\n },\n supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window,\n emptyInsertThreshold: 5\n };\n PluginManager.initializePlugins(this, el, defaults); // Set default options\n\n for (var name in defaults) {\n !(name in options) && (options[name] = defaults[name]);\n }\n\n _prepareGroup(options); // Bind all private methods\n\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n } // Setup drag mode\n\n\n this.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n if (this.nativeDraggable) {\n // Touch start threshold cannot be greater than the native dragstart threshold\n this.options.touchStartThreshold = 1;\n } // Bind events\n\n\n if (options.supportPointer) {\n on(el, 'pointerdown', this._onTapStart);\n } else {\n on(el, 'mousedown', this._onTapStart);\n on(el, 'touchstart', this._onTapStart);\n }\n\n if (this.nativeDraggable) {\n on(el, 'dragover', this);\n on(el, 'dragenter', this);\n }\n\n sortables.push(this.el); // Restore sorting\n\n options.store && options.store.get && this.sort(options.store.get(this) || []); // Add animation state manager\n\n _extends(this, AnimationStateManager());\n}\n\nSortable.prototype =\n/** @lends Sortable.prototype */\n{\n constructor: Sortable,\n _isOutsideThisEl: function _isOutsideThisEl(target) {\n if (!this.el.contains(target) && target !== this.el) {\n lastTarget = null;\n }\n },\n _getDirection: function _getDirection(evt, target) {\n return typeof this.options.direction === 'function' ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction;\n },\n _onTapStart: function _onTapStart(\n /** Event|TouchEvent */\n evt) {\n if (!evt.cancelable) return;\n\n var _this = this,\n el = this.el,\n options = this.options,\n preventOnFilter = options.preventOnFilter,\n type = evt.type,\n touch = evt.touches && evt.touches[0] || evt.pointerType && evt.pointerType === 'touch' && evt,\n target = (touch || evt).target,\n originalTarget = evt.target.shadowRoot && (evt.path && evt.path[0] || evt.composedPath && evt.composedPath()[0]) || target,\n filter = options.filter;\n\n _saveInputCheckedState(el); // Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group.\n\n\n if (dragEl) {\n return;\n }\n\n if (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) {\n return; // only left button and enabled\n } // cancel dnd if original target is content editable\n\n\n if (originalTarget.isContentEditable) {\n return;\n }\n\n target = closest(target, options.draggable, el, false);\n\n if (target && target.animated) {\n return;\n }\n\n if (lastDownEl === target) {\n // Ignoring duplicate `down`\n return;\n } // Get the index of the dragged element within its parent\n\n\n oldIndex = index(target);\n oldDraggableIndex = index(target, options.draggable); // Check filter\n\n if (typeof filter === 'function') {\n if (filter.call(this, evt, target, this)) {\n _dispatchEvent({\n sortable: _this,\n rootEl: originalTarget,\n name: 'filter',\n targetEl: target,\n toEl: el,\n fromEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n } else if (filter) {\n filter = filter.split(',').some(function (criteria) {\n criteria = closest(originalTarget, criteria.trim(), el, false);\n\n if (criteria) {\n _dispatchEvent({\n sortable: _this,\n rootEl: criteria,\n name: 'filter',\n targetEl: target,\n fromEl: el,\n toEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n return true;\n }\n });\n\n if (filter) {\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n }\n\n if (options.handle && !closest(originalTarget, options.handle, el, false)) {\n return;\n } // Prepare `dragstart`\n\n\n this._prepareDragStart(evt, touch, target);\n },\n _prepareDragStart: function _prepareDragStart(\n /** Event */\n evt,\n /** Touch */\n touch,\n /** HTMLElement */\n target) {\n var _this = this,\n el = _this.el,\n options = _this.options,\n ownerDocument = el.ownerDocument,\n dragStartFn;\n\n if (target && !dragEl && target.parentNode === el) {\n var dragRect = getRect(target);\n rootEl = el;\n dragEl = target;\n parentEl = dragEl.parentNode;\n nextEl = dragEl.nextSibling;\n lastDownEl = target;\n activeGroup = options.group;\n Sortable.dragged = dragEl;\n tapEvt = {\n target: dragEl,\n clientX: (touch || evt).clientX,\n clientY: (touch || evt).clientY\n };\n tapDistanceLeft = tapEvt.clientX - dragRect.left;\n tapDistanceTop = tapEvt.clientY - dragRect.top;\n this._lastX = (touch || evt).clientX;\n this._lastY = (touch || evt).clientY;\n dragEl.style['will-change'] = 'all';\n\n dragStartFn = function dragStartFn() {\n pluginEvent('delayEnded', _this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n _this._onDrop();\n\n return;\n } // Delayed drag has been triggered\n // we can re-enable the events: touchmove/mousemove\n\n\n _this._disableDelayedDragEvents();\n\n if (!FireFox && _this.nativeDraggable) {\n dragEl.draggable = true;\n } // Bind the events: dragstart/dragend\n\n\n _this._triggerDragStart(evt, touch); // Drag start event\n\n\n _dispatchEvent({\n sortable: _this,\n name: 'choose',\n originalEvent: evt\n }); // Chosen item\n\n\n toggleClass(dragEl, options.chosenClass, true);\n }; // Disable \"draggable\"\n\n\n options.ignore.split(',').forEach(function (criteria) {\n find(dragEl, criteria.trim(), _disableDraggable);\n });\n on(ownerDocument, 'dragover', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mousemove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'touchmove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mouseup', _this._onDrop);\n on(ownerDocument, 'touchend', _this._onDrop);\n on(ownerDocument, 'touchcancel', _this._onDrop); // Make dragEl draggable (must be before delay for FireFox)\n\n if (FireFox && this.nativeDraggable) {\n this.options.touchStartThreshold = 4;\n dragEl.draggable = true;\n }\n\n pluginEvent('delayStart', this, {\n evt: evt\n }); // Delay is impossible for native DnD in Edge or IE\n\n if (options.delay && (!options.delayOnTouchOnly || touch) && (!this.nativeDraggable || !(Edge || IE11OrLess))) {\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n } // If the user moves the pointer or let go the click or touch\n // before the delay has been reached:\n // disable the delayed drag\n\n\n on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler);\n on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler);\n options.supportPointer && on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler);\n _this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n } else {\n dragStartFn();\n }\n }\n },\n _delayedDragTouchMoveHandler: function _delayedDragTouchMoveHandler(\n /** TouchEvent|PointerEvent **/\n e) {\n var touch = e.touches ? e.touches[0] : e;\n\n if (Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))) {\n this._disableDelayedDrag();\n }\n },\n _disableDelayedDrag: function _disableDelayedDrag() {\n dragEl && _disableDraggable(dragEl);\n clearTimeout(this._dragStartTimer);\n\n this._disableDelayedDragEvents();\n },\n _disableDelayedDragEvents: function _disableDelayedDragEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n off(ownerDocument, 'touchend', this._disableDelayedDrag);\n off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler);\n },\n _triggerDragStart: function _triggerDragStart(\n /** Event */\n evt,\n /** Touch */\n touch) {\n touch = touch || evt.pointerType == 'touch' && evt;\n\n if (!this.nativeDraggable || touch) {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._onTouchMove);\n } else if (touch) {\n on(document, 'touchmove', this._onTouchMove);\n } else {\n on(document, 'mousemove', this._onTouchMove);\n }\n } else {\n on(dragEl, 'dragend', this);\n on(rootEl, 'dragstart', this._onDragStart);\n }\n\n try {\n if (document.selection) {\n // Timeout neccessary for IE9\n _nextTick(function () {\n document.selection.empty();\n });\n } else {\n window.getSelection().removeAllRanges();\n }\n } catch (err) {}\n },\n _dragStarted: function _dragStarted(fallback, evt) {\n\n awaitingDragStarted = false;\n\n if (rootEl && dragEl) {\n pluginEvent('dragStarted', this, {\n evt: evt\n });\n\n if (this.nativeDraggable) {\n on(document, 'dragover', _checkOutsideTargetEl);\n }\n\n var options = this.options; // Apply effect\n\n !fallback && toggleClass(dragEl, options.dragClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n Sortable.active = this;\n fallback && this._appendGhost(); // Drag start event\n\n _dispatchEvent({\n sortable: this,\n name: 'start',\n originalEvent: evt\n });\n } else {\n this._nulling();\n }\n },\n _emulateDragOver: function _emulateDragOver() {\n if (touchEvt) {\n this._lastX = touchEvt.clientX;\n this._lastY = touchEvt.clientY;\n\n _hideGhostForTarget();\n\n var target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n var parent = target;\n\n while (target && target.shadowRoot) {\n target = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n if (target === parent) break;\n parent = target;\n }\n\n dragEl.parentNode[expando]._isOutsideThisEl(target);\n\n if (parent) {\n do {\n if (parent[expando]) {\n var inserted = void 0;\n inserted = parent[expando]._onDragOver({\n clientX: touchEvt.clientX,\n clientY: touchEvt.clientY,\n target: target,\n rootEl: parent\n });\n\n if (inserted && !this.options.dragoverBubble) {\n break;\n }\n }\n\n target = parent; // store last element\n }\n /* jshint boss:true */\n while (parent = parent.parentNode);\n }\n\n _unhideGhostForTarget();\n }\n },\n _onTouchMove: function _onTouchMove(\n /**TouchEvent*/\n evt) {\n if (tapEvt) {\n var options = this.options,\n fallbackTolerance = options.fallbackTolerance,\n fallbackOffset = options.fallbackOffset,\n touch = evt.touches ? evt.touches[0] : evt,\n ghostMatrix = ghostEl && matrix(ghostEl),\n scaleX = ghostEl && ghostMatrix && ghostMatrix.a,\n scaleY = ghostEl && ghostMatrix && ghostMatrix.d,\n relativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && getRelativeScrollOffset(ghostRelativeParent),\n dx = (touch.clientX - tapEvt.clientX + fallbackOffset.x) / (scaleX || 1) + (relativeScrollOffset ? relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0] : 0) / (scaleX || 1),\n dy = (touch.clientY - tapEvt.clientY + fallbackOffset.y) / (scaleY || 1) + (relativeScrollOffset ? relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1] : 0) / (scaleY || 1); // only set the status to dragging, when we are actually dragging\n\n if (!Sortable.active && !awaitingDragStarted) {\n if (fallbackTolerance && Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) < fallbackTolerance) {\n return;\n }\n\n this._onDragStart(evt, true);\n }\n\n if (ghostEl) {\n if (ghostMatrix) {\n ghostMatrix.e += dx - (lastDx || 0);\n ghostMatrix.f += dy - (lastDy || 0);\n } else {\n ghostMatrix = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: dx,\n f: dy\n };\n }\n\n var cssMatrix = \"matrix(\".concat(ghostMatrix.a, \",\").concat(ghostMatrix.b, \",\").concat(ghostMatrix.c, \",\").concat(ghostMatrix.d, \",\").concat(ghostMatrix.e, \",\").concat(ghostMatrix.f, \")\");\n css(ghostEl, 'webkitTransform', cssMatrix);\n css(ghostEl, 'mozTransform', cssMatrix);\n css(ghostEl, 'msTransform', cssMatrix);\n css(ghostEl, 'transform', cssMatrix);\n lastDx = dx;\n lastDy = dy;\n touchEvt = touch;\n }\n\n evt.cancelable && evt.preventDefault();\n }\n },\n _appendGhost: function _appendGhost() {\n // Bug if using scale(): https://stackoverflow.com/questions/2637058\n // Not being adjusted for\n if (!ghostEl) {\n var container = this.options.fallbackOnBody ? document.body : rootEl,\n rect = getRect(dragEl, true, PositionGhostAbsolutely, true, container),\n options = this.options; // Position absolutely\n\n if (PositionGhostAbsolutely) {\n // Get relatively positioned parent\n ghostRelativeParent = container;\n\n while (css(ghostRelativeParent, 'position') === 'static' && css(ghostRelativeParent, 'transform') === 'none' && ghostRelativeParent !== document) {\n ghostRelativeParent = ghostRelativeParent.parentNode;\n }\n\n if (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) {\n if (ghostRelativeParent === document) ghostRelativeParent = getWindowScrollingElement();\n rect.top += ghostRelativeParent.scrollTop;\n rect.left += ghostRelativeParent.scrollLeft;\n } else {\n ghostRelativeParent = getWindowScrollingElement();\n }\n\n ghostRelativeParentInitialScroll = getRelativeScrollOffset(ghostRelativeParent);\n }\n\n ghostEl = dragEl.cloneNode(true);\n toggleClass(ghostEl, options.ghostClass, false);\n toggleClass(ghostEl, options.fallbackClass, true);\n toggleClass(ghostEl, options.dragClass, true);\n css(ghostEl, 'transition', '');\n css(ghostEl, 'transform', '');\n css(ghostEl, 'box-sizing', 'border-box');\n css(ghostEl, 'margin', 0);\n css(ghostEl, 'top', rect.top);\n css(ghostEl, 'left', rect.left);\n css(ghostEl, 'width', rect.width);\n css(ghostEl, 'height', rect.height);\n css(ghostEl, 'opacity', '0.8');\n css(ghostEl, 'position', PositionGhostAbsolutely ? 'absolute' : 'fixed');\n css(ghostEl, 'zIndex', '100000');\n css(ghostEl, 'pointerEvents', 'none');\n Sortable.ghost = ghostEl;\n container.appendChild(ghostEl); // Set transform-origin\n\n css(ghostEl, 'transform-origin', tapDistanceLeft / parseInt(ghostEl.style.width) * 100 + '% ' + tapDistanceTop / parseInt(ghostEl.style.height) * 100 + '%');\n }\n },\n _onDragStart: function _onDragStart(\n /**Event*/\n evt,\n /**boolean*/\n fallback) {\n var _this = this;\n\n var dataTransfer = evt.dataTransfer;\n var options = _this.options;\n pluginEvent('dragStart', this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n }\n\n pluginEvent('setupClone', this);\n\n if (!Sortable.eventCanceled) {\n cloneEl = clone(dragEl);\n cloneEl.draggable = false;\n cloneEl.style['will-change'] = '';\n\n this._hideClone();\n\n toggleClass(cloneEl, this.options.chosenClass, false);\n Sortable.clone = cloneEl;\n } // #1143: IFrame support workaround\n\n\n _this.cloneId = _nextTick(function () {\n pluginEvent('clone', _this);\n if (Sortable.eventCanceled) return;\n\n if (!_this.options.removeCloneOnHide) {\n rootEl.insertBefore(cloneEl, dragEl);\n }\n\n _this._hideClone();\n\n _dispatchEvent({\n sortable: _this,\n name: 'clone'\n });\n });\n !fallback && toggleClass(dragEl, options.dragClass, true); // Set proper drop events\n\n if (fallback) {\n ignoreNextClick = true;\n _this._loopId = setInterval(_this._emulateDragOver, 50);\n } else {\n // Undo what was set in _prepareDragStart before drag started\n off(document, 'mouseup', _this._onDrop);\n off(document, 'touchend', _this._onDrop);\n off(document, 'touchcancel', _this._onDrop);\n\n if (dataTransfer) {\n dataTransfer.effectAllowed = 'move';\n options.setData && options.setData.call(_this, dataTransfer, dragEl);\n }\n\n on(document, 'drop', _this); // #1276 fix:\n\n css(dragEl, 'transform', 'translateZ(0)');\n }\n\n awaitingDragStarted = true;\n _this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt));\n on(document, 'selectstart', _this);\n moved = true;\n\n if (Safari) {\n css(document.body, 'user-select', 'none');\n }\n },\n // Returns true - if no further action is needed (either inserted or another condition)\n _onDragOver: function _onDragOver(\n /**Event*/\n evt) {\n var el = this.el,\n target = evt.target,\n dragRect,\n targetRect,\n revert,\n options = this.options,\n group = options.group,\n activeSortable = Sortable.active,\n isOwner = activeGroup === group,\n canSort = options.sort,\n fromSortable = putSortable || activeSortable,\n vertical,\n _this = this,\n completedFired = false;\n\n if (_silent) return;\n\n function dragOverEvent(name, extra) {\n pluginEvent(name, _this, _objectSpread({\n evt: evt,\n isOwner: isOwner,\n axis: vertical ? 'vertical' : 'horizontal',\n revert: revert,\n dragRect: dragRect,\n targetRect: targetRect,\n canSort: canSort,\n fromSortable: fromSortable,\n target: target,\n completed: completed,\n onMove: function onMove(target, after) {\n return _onMove(rootEl, el, dragEl, dragRect, target, getRect(target), evt, after);\n },\n changed: changed\n }, extra));\n } // Capture animation state\n\n\n function capture() {\n dragOverEvent('dragOverAnimationCapture');\n\n _this.captureAnimationState();\n\n if (_this !== fromSortable) {\n fromSortable.captureAnimationState();\n }\n } // Return invocation when dragEl is inserted (or completed)\n\n\n function completed(insertion) {\n dragOverEvent('dragOverCompleted', {\n insertion: insertion\n });\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n } else {\n activeSortable._showClone(_this);\n }\n\n if (_this !== fromSortable) {\n // Set ghost class to new sortable's ghost class\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n }\n\n if (putSortable !== _this && _this !== Sortable.active) {\n putSortable = _this;\n } else if (_this === Sortable.active && putSortable) {\n putSortable = null;\n } // Animation\n\n\n if (fromSortable === _this) {\n _this._ignoreWhileAnimating = target;\n }\n\n _this.animateAll(function () {\n dragOverEvent('dragOverAnimationComplete');\n _this._ignoreWhileAnimating = null;\n });\n\n if (_this !== fromSortable) {\n fromSortable.animateAll();\n fromSortable._ignoreWhileAnimating = null;\n }\n } // Null lastTarget if it is not inside a previously swapped element\n\n\n if (target === dragEl && !dragEl.animated || target === el && !target.animated) {\n lastTarget = null;\n } // no bubbling and not fallback\n\n\n if (!options.dragoverBubble && !evt.rootEl && target !== document) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target); // Do not detect for empty insert if already inserted\n\n\n !insertion && nearestEmptyInsertDetectEvent(evt);\n }\n\n !options.dragoverBubble && evt.stopPropagation && evt.stopPropagation();\n return completedFired = true;\n } // Call when dragEl has been inserted\n\n\n function changed() {\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n _dispatchEvent({\n sortable: _this,\n name: 'change',\n toEl: el,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n originalEvent: evt\n });\n }\n\n if (evt.preventDefault !== void 0) {\n evt.cancelable && evt.preventDefault();\n }\n\n target = closest(target, options.draggable, el, true);\n dragOverEvent('dragOver');\n if (Sortable.eventCanceled) return completedFired;\n\n if (dragEl.contains(evt.target) || target.animated && target.animatingX && target.animatingY || _this._ignoreWhileAnimating === target) {\n return completed(false);\n }\n\n ignoreNextClick = false;\n\n if (activeSortable && !options.disabled && (isOwner ? canSort || (revert = !rootEl.contains(dragEl)) // Reverting item into the original list\n : putSortable === this || (this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) && group.checkPut(this, activeSortable, dragEl, evt))) {\n vertical = this._getDirection(evt, target) === 'vertical';\n dragRect = getRect(dragEl);\n dragOverEvent('dragOverValid');\n if (Sortable.eventCanceled) return completedFired;\n\n if (revert) {\n parentEl = rootEl; // actualization\n\n capture();\n\n this._hideClone();\n\n dragOverEvent('revert');\n\n if (!Sortable.eventCanceled) {\n if (nextEl) {\n rootEl.insertBefore(dragEl, nextEl);\n } else {\n rootEl.appendChild(dragEl);\n }\n }\n\n return completed(true);\n }\n\n var elLastChild = lastChild(el, options.draggable);\n\n if (!elLastChild || _ghostIsLast(evt, vertical, this) && !elLastChild.animated) {\n // If already at end of list: Do not insert\n if (elLastChild === dragEl) {\n return completed(false);\n } // assign target only if condition is true\n\n\n if (elLastChild && el === evt.target) {\n target = elLastChild;\n }\n\n if (target) {\n targetRect = getRect(target);\n }\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {\n capture();\n el.appendChild(dragEl);\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (target.parentNode === el) {\n targetRect = getRect(target);\n var direction = 0,\n targetBeforeFirstSwap,\n differentLevel = dragEl.parentNode !== el,\n differentRowCol = !_dragElInRowColumn(dragEl.animated && dragEl.toRect || dragRect, target.animated && target.toRect || targetRect, vertical),\n side1 = vertical ? 'top' : 'left',\n scrolledPastTop = isScrolledPast(target, 'top', 'top') || isScrolledPast(dragEl, 'top', 'top'),\n scrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0;\n\n if (lastTarget !== target) {\n targetBeforeFirstSwap = targetRect[side1];\n pastFirstInvertThresh = false;\n isCircumstantialInvert = !differentRowCol && options.invertSwap || differentLevel;\n }\n\n direction = _getSwapDirection(evt, target, targetRect, vertical, differentRowCol ? 1 : options.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold, isCircumstantialInvert, lastTarget === target);\n var sibling;\n\n if (direction !== 0) {\n // Check if target is beside dragEl in respective direction (ignoring hidden elements)\n var dragIndex = index(dragEl);\n\n do {\n dragIndex -= direction;\n sibling = parentEl.children[dragIndex];\n } while (sibling && (css(sibling, 'display') === 'none' || sibling === ghostEl));\n } // If dragEl is already beside target: Do not insert\n\n\n if (direction === 0 || sibling === target) {\n return completed(false);\n }\n\n lastTarget = target;\n lastDirection = direction;\n var nextSibling = target.nextElementSibling,\n after = false;\n after = direction === 1;\n\n var moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after);\n\n if (moveVector !== false) {\n if (moveVector === 1 || moveVector === -1) {\n after = moveVector === 1;\n }\n\n _silent = true;\n setTimeout(_unsilent, 30);\n capture();\n\n if (after && !nextSibling) {\n el.appendChild(dragEl);\n } else {\n target.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n } // Undo chrome's scroll adjustment (has no effect on other browsers)\n\n\n if (scrolledPastTop) {\n scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);\n }\n\n parentEl = dragEl.parentNode; // actualization\n // must be done before animation\n\n if (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) {\n targetMoveDistance = Math.abs(targetBeforeFirstSwap - getRect(target)[side1]);\n }\n\n changed();\n return completed(true);\n }\n }\n\n if (el.contains(dragEl)) {\n return completed(false);\n }\n }\n\n return false;\n },\n _ignoreWhileAnimating: null,\n _offMoveEvents: function _offMoveEvents() {\n off(document, 'mousemove', this._onTouchMove);\n off(document, 'touchmove', this._onTouchMove);\n off(document, 'pointermove', this._onTouchMove);\n off(document, 'dragover', nearestEmptyInsertDetectEvent);\n off(document, 'mousemove', nearestEmptyInsertDetectEvent);\n off(document, 'touchmove', nearestEmptyInsertDetectEvent);\n },\n _offUpEvents: function _offUpEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._onDrop);\n off(ownerDocument, 'touchend', this._onDrop);\n off(ownerDocument, 'pointerup', this._onDrop);\n off(ownerDocument, 'touchcancel', this._onDrop);\n off(document, 'selectstart', this);\n },\n _onDrop: function _onDrop(\n /**Event*/\n evt) {\n var el = this.el,\n options = this.options; // Get the index of the dragged element within its parent\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n pluginEvent('drop', this, {\n evt: evt\n });\n parentEl = dragEl && dragEl.parentNode; // Get again after plugin event\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n if (Sortable.eventCanceled) {\n this._nulling();\n\n return;\n }\n\n awaitingDragStarted = false;\n isCircumstantialInvert = false;\n pastFirstInvertThresh = false;\n clearInterval(this._loopId);\n clearTimeout(this._dragStartTimer);\n\n _cancelNextTick(this.cloneId);\n\n _cancelNextTick(this._dragStartId); // Unbind events\n\n\n if (this.nativeDraggable) {\n off(document, 'drop', this);\n off(el, 'dragstart', this._onDragStart);\n }\n\n this._offMoveEvents();\n\n this._offUpEvents();\n\n if (Safari) {\n css(document.body, 'user-select', '');\n }\n\n if (evt) {\n if (moved) {\n evt.cancelable && evt.preventDefault();\n !options.dropBubble && evt.stopPropagation();\n }\n\n ghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl);\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n // Remove clone(s)\n cloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl);\n }\n\n if (dragEl) {\n if (this.nativeDraggable) {\n off(dragEl, 'dragend', this);\n }\n\n _disableDraggable(dragEl);\n\n dragEl.style['will-change'] = ''; // Remove classes\n // ghostClass is added in dragStarted\n\n if (moved && !awaitingDragStarted) {\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false);\n }\n\n toggleClass(dragEl, this.options.chosenClass, false); // Drag stop event\n\n _dispatchEvent({\n sortable: this,\n name: 'unchoose',\n toEl: parentEl,\n newIndex: null,\n newDraggableIndex: null,\n originalEvent: evt\n });\n\n if (rootEl !== parentEl) {\n if (newIndex >= 0) {\n // Add event\n _dispatchEvent({\n rootEl: parentEl,\n name: 'add',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n }); // Remove event\n\n\n _dispatchEvent({\n sortable: this,\n name: 'remove',\n toEl: parentEl,\n originalEvent: evt\n }); // drag from one list and drop into another\n\n\n _dispatchEvent({\n rootEl: parentEl,\n name: 'sort',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n\n putSortable && putSortable.save();\n } else {\n if (newIndex !== oldIndex) {\n if (newIndex >= 0) {\n // drag & drop within the same list\n _dispatchEvent({\n sortable: this,\n name: 'update',\n toEl: parentEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n }\n }\n\n if (Sortable.active) {\n /* jshint eqnull:true */\n if (newIndex == null || newIndex === -1) {\n newIndex = oldIndex;\n newDraggableIndex = oldDraggableIndex;\n }\n\n _dispatchEvent({\n sortable: this,\n name: 'end',\n toEl: parentEl,\n originalEvent: evt\n }); // Save sorting\n\n\n this.save();\n }\n }\n }\n\n this._nulling();\n },\n _nulling: function _nulling() {\n pluginEvent('nulling', this);\n rootEl = dragEl = parentEl = ghostEl = nextEl = cloneEl = lastDownEl = cloneHidden = tapEvt = touchEvt = moved = newIndex = newDraggableIndex = oldIndex = oldDraggableIndex = lastTarget = lastDirection = putSortable = activeGroup = Sortable.dragged = Sortable.ghost = Sortable.clone = Sortable.active = null;\n savedInputChecked.forEach(function (el) {\n el.checked = true;\n });\n savedInputChecked.length = lastDx = lastDy = 0;\n },\n handleEvent: function handleEvent(\n /**Event*/\n evt) {\n switch (evt.type) {\n case 'drop':\n case 'dragend':\n this._onDrop(evt);\n\n break;\n\n case 'dragenter':\n case 'dragover':\n if (dragEl) {\n this._onDragOver(evt);\n\n _globalDragOver(evt);\n }\n\n break;\n\n case 'selectstart':\n evt.preventDefault();\n break;\n }\n },\n\n /**\n * Serializes the item into an array of string.\n * @returns {String[]}\n */\n toArray: function toArray() {\n var order = [],\n el,\n children = this.el.children,\n i = 0,\n n = children.length,\n options = this.options;\n\n for (; i < n; i++) {\n el = children[i];\n\n if (closest(el, options.draggable, this.el, false)) {\n order.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n }\n }\n\n return order;\n },\n\n /**\n * Sorts the elements according to the array.\n * @param {String[]} order order of the items\n */\n sort: function sort(order) {\n var items = {},\n rootEl = this.el;\n this.toArray().forEach(function (id, i) {\n var el = rootEl.children[i];\n\n if (closest(el, this.options.draggable, rootEl, false)) {\n items[id] = el;\n }\n }, this);\n order.forEach(function (id) {\n if (items[id]) {\n rootEl.removeChild(items[id]);\n rootEl.appendChild(items[id]);\n }\n });\n },\n\n /**\n * Save the current sorting\n */\n save: function save() {\n var store = this.options.store;\n store && store.set && store.set(this);\n },\n\n /**\n * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\n * @param {HTMLElement} el\n * @param {String} [selector] default: `options.draggable`\n * @returns {HTMLElement|null}\n */\n closest: function closest$1(el, selector) {\n return closest(el, selector || this.options.draggable, this.el, false);\n },\n\n /**\n * Set/get option\n * @param {string} name\n * @param {*} [value]\n * @returns {*}\n */\n option: function option(name, value) {\n var options = this.options;\n\n if (value === void 0) {\n return options[name];\n } else {\n var modifiedValue = PluginManager.modifyOption(this, name, value);\n\n if (typeof modifiedValue !== 'undefined') {\n options[name] = modifiedValue;\n } else {\n options[name] = value;\n }\n\n if (name === 'group') {\n _prepareGroup(options);\n }\n }\n },\n\n /**\n * Destroy\n */\n destroy: function destroy() {\n pluginEvent('destroy', this);\n var el = this.el;\n el[expando] = null;\n off(el, 'mousedown', this._onTapStart);\n off(el, 'touchstart', this._onTapStart);\n off(el, 'pointerdown', this._onTapStart);\n\n if (this.nativeDraggable) {\n off(el, 'dragover', this);\n off(el, 'dragenter', this);\n } // Remove draggable attributes\n\n\n Array.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n el.removeAttribute('draggable');\n });\n\n this._onDrop();\n\n sortables.splice(sortables.indexOf(this.el), 1);\n this.el = el = null;\n },\n _hideClone: function _hideClone() {\n if (!cloneHidden) {\n pluginEvent('hideClone', this);\n if (Sortable.eventCanceled) return;\n css(cloneEl, 'display', 'none');\n\n if (this.options.removeCloneOnHide && cloneEl.parentNode) {\n cloneEl.parentNode.removeChild(cloneEl);\n }\n\n cloneHidden = true;\n }\n },\n _showClone: function _showClone(putSortable) {\n if (putSortable.lastPutMode !== 'clone') {\n this._hideClone();\n\n return;\n }\n\n if (cloneHidden) {\n pluginEvent('showClone', this);\n if (Sortable.eventCanceled) return; // show clone at dragEl or original position\n\n if (rootEl.contains(dragEl) && !this.options.group.revertClone) {\n rootEl.insertBefore(cloneEl, dragEl);\n } else if (nextEl) {\n rootEl.insertBefore(cloneEl, nextEl);\n } else {\n rootEl.appendChild(cloneEl);\n }\n\n if (this.options.group.revertClone) {\n this.animate(dragEl, cloneEl);\n }\n\n css(cloneEl, 'display', '');\n cloneHidden = false;\n }\n }\n};\n\nfunction _globalDragOver(\n/**Event*/\nevt) {\n if (evt.dataTransfer) {\n evt.dataTransfer.dropEffect = 'move';\n }\n\n evt.cancelable && evt.preventDefault();\n}\n\nfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvent, willInsertAfter) {\n var evt,\n sortable = fromEl[expando],\n onMoveFn = sortable.options.onMove,\n retVal; // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent('move', {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent('move', true, true);\n }\n\n evt.to = toEl;\n evt.from = fromEl;\n evt.dragged = dragEl;\n evt.draggedRect = dragRect;\n evt.related = targetEl || toEl;\n evt.relatedRect = targetRect || getRect(toEl);\n evt.willInsertAfter = willInsertAfter;\n evt.originalEvent = originalEvent;\n fromEl.dispatchEvent(evt);\n\n if (onMoveFn) {\n retVal = onMoveFn.call(sortable, evt, originalEvent);\n }\n\n return retVal;\n}\n\nfunction _disableDraggable(el) {\n el.draggable = false;\n}\n\nfunction _unsilent() {\n _silent = false;\n}\n\nfunction _ghostIsLast(evt, vertical, sortable) {\n var rect = getRect(lastChild(sortable.el, sortable.options.draggable));\n var spacer = 10;\n return vertical ? evt.clientX > rect.right + spacer || evt.clientX <= rect.right && evt.clientY > rect.bottom && evt.clientX >= rect.left : evt.clientX > rect.right && evt.clientY > rect.top || evt.clientX <= rect.right && evt.clientY > rect.bottom + spacer;\n}\n\nfunction _getSwapDirection(evt, target, targetRect, vertical, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) {\n var mouseOnAxis = vertical ? evt.clientY : evt.clientX,\n targetLength = vertical ? targetRect.height : targetRect.width,\n targetS1 = vertical ? targetRect.top : targetRect.left,\n targetS2 = vertical ? targetRect.bottom : targetRect.right,\n invert = false;\n\n if (!invertSwap) {\n // Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold\n if (isLastTarget && targetMoveDistance < targetLength * swapThreshold) {\n // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2\n // check if past first invert threshold on side opposite of lastDirection\n if (!pastFirstInvertThresh && (lastDirection === 1 ? mouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2 : mouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2)) {\n // past first invert threshold, do not restrict inverted threshold to dragEl shadow\n pastFirstInvertThresh = true;\n }\n\n if (!pastFirstInvertThresh) {\n // dragEl shadow (target move distance shadow)\n if (lastDirection === 1 ? mouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow\n : mouseOnAxis > targetS2 - targetMoveDistance) {\n return -lastDirection;\n }\n } else {\n invert = true;\n }\n } else {\n // Regular\n if (mouseOnAxis > targetS1 + targetLength * (1 - swapThreshold) / 2 && mouseOnAxis < targetS2 - targetLength * (1 - swapThreshold) / 2) {\n return _getInsertDirection(target);\n }\n }\n }\n\n invert = invert || invertSwap;\n\n if (invert) {\n // Invert of regular\n if (mouseOnAxis < targetS1 + targetLength * invertedSwapThreshold / 2 || mouseOnAxis > targetS2 - targetLength * invertedSwapThreshold / 2) {\n return mouseOnAxis > targetS1 + targetLength / 2 ? 1 : -1;\n }\n }\n\n return 0;\n}\n/**\n * Gets the direction dragEl must be swapped relative to target in order to make it\n * seem that dragEl has been \"inserted\" into that element's position\n * @param {HTMLElement} target The target whose position dragEl is being inserted at\n * @return {Number} Direction dragEl must be swapped\n */\n\n\nfunction _getInsertDirection(target) {\n if (index(dragEl) < index(target)) {\n return 1;\n } else {\n return -1;\n }\n}\n/**\n * Generate id\n * @param {HTMLElement} el\n * @returns {String}\n * @private\n */\n\n\nfunction _generateId(el) {\n var str = el.tagName + el.className + el.src + el.href + el.textContent,\n i = str.length,\n sum = 0;\n\n while (i--) {\n sum += str.charCodeAt(i);\n }\n\n return sum.toString(36);\n}\n\nfunction _saveInputCheckedState(root) {\n savedInputChecked.length = 0;\n var inputs = root.getElementsByTagName('input');\n var idx = inputs.length;\n\n while (idx--) {\n var el = inputs[idx];\n el.checked && savedInputChecked.push(el);\n }\n}\n\nfunction _nextTick(fn) {\n return setTimeout(fn, 0);\n}\n\nfunction _cancelNextTick(id) {\n return clearTimeout(id);\n} // Fixed #973:\n\n\nif (documentExists) {\n on(document, 'touchmove', function (evt) {\n if ((Sortable.active || awaitingDragStarted) && evt.cancelable) {\n evt.preventDefault();\n }\n });\n} // Export utils\n\n\nSortable.utils = {\n on: on,\n off: off,\n css: css,\n find: find,\n is: function is(el, selector) {\n return !!closest(el, selector, el, false);\n },\n extend: extend,\n throttle: throttle,\n closest: closest,\n toggleClass: toggleClass,\n clone: clone,\n index: index,\n nextTick: _nextTick,\n cancelNextTick: _cancelNextTick,\n detectDirection: _detectDirection,\n getChild: getChild\n};\n/**\n * Get the Sortable instance of an element\n * @param {HTMLElement} element The element\n * @return {Sortable|undefined} The instance of Sortable\n */\n\nSortable.get = function (element) {\n return element[expando];\n};\n/**\n * Mount a plugin to Sortable\n * @param {...SortablePlugin|SortablePlugin[]} plugins Plugins being mounted\n */\n\n\nSortable.mount = function () {\n for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {\n plugins[_key] = arguments[_key];\n }\n\n if (plugins[0].constructor === Array) plugins = plugins[0];\n plugins.forEach(function (plugin) {\n if (!plugin.prototype || !plugin.prototype.constructor) {\n throw \"Sortable: Mounted plugin must be a constructor function, not \".concat({}.toString.call(plugin));\n }\n\n if (plugin.utils) Sortable.utils = _objectSpread({}, Sortable.utils, plugin.utils);\n PluginManager.mount(plugin);\n });\n};\n/**\n * Create sortable instance\n * @param {HTMLElement} el\n * @param {Object} [options]\n */\n\n\nSortable.create = function (el, options) {\n return new Sortable(el, options);\n}; // Export\n\n\nSortable.version = version;\n\nvar autoScrolls = [],\n scrollEl,\n scrollRootEl,\n scrolling = false,\n lastAutoScrollX,\n lastAutoScrollY,\n touchEvt$1,\n pointerElemChangedInterval;\n\nfunction AutoScrollPlugin() {\n function AutoScroll() {\n this.defaults = {\n scroll: true,\n scrollSensitivity: 30,\n scrollSpeed: 10,\n bubbleScroll: true\n }; // Bind all private methods\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n }\n\n AutoScroll.prototype = {\n dragStarted: function dragStarted(_ref) {\n var originalEvent = _ref.originalEvent;\n\n if (this.sortable.nativeDraggable) {\n on(document, 'dragover', this._handleAutoScroll);\n } else {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._handleFallbackAutoScroll);\n } else if (originalEvent.touches) {\n on(document, 'touchmove', this._handleFallbackAutoScroll);\n } else {\n on(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref2) {\n var originalEvent = _ref2.originalEvent;\n\n // For when bubbling is canceled and using fallback (fallback 'touchmove' always reached)\n if (!this.options.dragOverBubble && !originalEvent.rootEl) {\n this._handleAutoScroll(originalEvent);\n }\n },\n drop: function drop() {\n if (this.sortable.nativeDraggable) {\n off(document, 'dragover', this._handleAutoScroll);\n } else {\n off(document, 'pointermove', this._handleFallbackAutoScroll);\n off(document, 'touchmove', this._handleFallbackAutoScroll);\n off(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n\n clearPointerElemChangedInterval();\n clearAutoScrolls();\n cancelThrottle();\n },\n nulling: function nulling() {\n touchEvt$1 = scrollRootEl = scrollEl = scrolling = pointerElemChangedInterval = lastAutoScrollX = lastAutoScrollY = null;\n autoScrolls.length = 0;\n },\n _handleFallbackAutoScroll: function _handleFallbackAutoScroll(evt) {\n this._handleAutoScroll(evt, true);\n },\n _handleAutoScroll: function _handleAutoScroll(evt, fallback) {\n var _this = this;\n\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n elem = document.elementFromPoint(x, y);\n touchEvt$1 = evt; // IE does not seem to have native autoscroll,\n // Edge's autoscroll seems too conditional,\n // MACOS Safari does not have autoscroll,\n // Firefox and Chrome are good\n\n if (fallback || Edge || IE11OrLess || Safari) {\n autoScroll(evt, this.options, elem, fallback); // Listener for pointer element change\n\n var ogElemScroller = getParentAutoScrollElement(elem, true);\n\n if (scrolling && (!pointerElemChangedInterval || x !== lastAutoScrollX || y !== lastAutoScrollY)) {\n pointerElemChangedInterval && clearPointerElemChangedInterval(); // Detect for pointer elem change, emulating native DnD behaviour\n\n pointerElemChangedInterval = setInterval(function () {\n var newElem = getParentAutoScrollElement(document.elementFromPoint(x, y), true);\n\n if (newElem !== ogElemScroller) {\n ogElemScroller = newElem;\n clearAutoScrolls();\n }\n\n autoScroll(evt, _this.options, newElem, fallback);\n }, 10);\n lastAutoScrollX = x;\n lastAutoScrollY = y;\n }\n } else {\n // if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll\n if (!this.options.bubbleScroll || getParentAutoScrollElement(elem, true) === getWindowScrollingElement()) {\n clearAutoScrolls();\n return;\n }\n\n autoScroll(evt, this.options, getParentAutoScrollElement(elem, false), false);\n }\n }\n };\n return _extends(AutoScroll, {\n pluginName: 'scroll',\n initializeByDefault: true\n });\n}\n\nfunction clearAutoScrolls() {\n autoScrolls.forEach(function (autoScroll) {\n clearInterval(autoScroll.pid);\n });\n autoScrolls = [];\n}\n\nfunction clearPointerElemChangedInterval() {\n clearInterval(pointerElemChangedInterval);\n}\n\nvar autoScroll = throttle(function (evt, options, rootEl, isFallback) {\n // Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n if (!options.scroll) return;\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n sens = options.scrollSensitivity,\n speed = options.scrollSpeed,\n winScroller = getWindowScrollingElement();\n var scrollThisInstance = false,\n scrollCustomFn; // New scroll root, set scrollEl\n\n if (scrollRootEl !== rootEl) {\n scrollRootEl = rootEl;\n clearAutoScrolls();\n scrollEl = options.scroll;\n scrollCustomFn = options.scrollFn;\n\n if (scrollEl === true) {\n scrollEl = getParentAutoScrollElement(rootEl, true);\n }\n }\n\n var layersOut = 0;\n var currentParent = scrollEl;\n\n do {\n var el = currentParent,\n rect = getRect(el),\n top = rect.top,\n bottom = rect.bottom,\n left = rect.left,\n right = rect.right,\n width = rect.width,\n height = rect.height,\n canScrollX = void 0,\n canScrollY = void 0,\n scrollWidth = el.scrollWidth,\n scrollHeight = el.scrollHeight,\n elCSS = css(el),\n scrollPosX = el.scrollLeft,\n scrollPosY = el.scrollTop;\n\n if (el === winScroller) {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll' || elCSS.overflowX === 'visible');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll' || elCSS.overflowY === 'visible');\n } else {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll');\n }\n\n var vx = canScrollX && (Math.abs(right - x) <= sens && scrollPosX + width < scrollWidth) - (Math.abs(left - x) <= sens && !!scrollPosX);\n var vy = canScrollY && (Math.abs(bottom - y) <= sens && scrollPosY + height < scrollHeight) - (Math.abs(top - y) <= sens && !!scrollPosY);\n\n if (!autoScrolls[layersOut]) {\n for (var i = 0; i <= layersOut; i++) {\n if (!autoScrolls[i]) {\n autoScrolls[i] = {};\n }\n }\n }\n\n if (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) {\n autoScrolls[layersOut].el = el;\n autoScrolls[layersOut].vx = vx;\n autoScrolls[layersOut].vy = vy;\n clearInterval(autoScrolls[layersOut].pid);\n\n if (vx != 0 || vy != 0) {\n scrollThisInstance = true;\n /* jshint loopfunc:true */\n\n autoScrolls[layersOut].pid = setInterval(function () {\n // emulate drag over during autoscroll (fallback), emulating native DnD behaviour\n if (isFallback && this.layer === 0) {\n Sortable.active._onTouchMove(touchEvt$1); // To move ghost if it is positioned absolutely\n\n }\n\n var scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0;\n var scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0;\n\n if (typeof scrollCustomFn === 'function') {\n if (scrollCustomFn.call(Sortable.dragged.parentNode[expando], scrollOffsetX, scrollOffsetY, evt, touchEvt$1, autoScrolls[this.layer].el) !== 'continue') {\n return;\n }\n }\n\n scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY);\n }.bind({\n layer: layersOut\n }), 24);\n }\n }\n\n layersOut++;\n } while (options.bubbleScroll && currentParent !== winScroller && (currentParent = getParentAutoScrollElement(currentParent, false)));\n\n scrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not\n}, 30);\n\nvar drop = function drop(_ref) {\n var originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n dragEl = _ref.dragEl,\n activeSortable = _ref.activeSortable,\n dispatchSortableEvent = _ref.dispatchSortableEvent,\n hideGhostForTarget = _ref.hideGhostForTarget,\n unhideGhostForTarget = _ref.unhideGhostForTarget;\n if (!originalEvent) return;\n var toSortable = putSortable || activeSortable;\n hideGhostForTarget();\n var touch = originalEvent.changedTouches && originalEvent.changedTouches.length ? originalEvent.changedTouches[0] : originalEvent;\n var target = document.elementFromPoint(touch.clientX, touch.clientY);\n unhideGhostForTarget();\n\n if (toSortable && !toSortable.el.contains(target)) {\n dispatchSortableEvent('spill');\n this.onSpill({\n dragEl: dragEl,\n putSortable: putSortable\n });\n }\n};\n\nfunction Revert() {}\n\nRevert.prototype = {\n startIndex: null,\n dragStart: function dragStart(_ref2) {\n var oldDraggableIndex = _ref2.oldDraggableIndex;\n this.startIndex = oldDraggableIndex;\n },\n onSpill: function onSpill(_ref3) {\n var dragEl = _ref3.dragEl,\n putSortable = _ref3.putSortable;\n this.sortable.captureAnimationState();\n\n if (putSortable) {\n putSortable.captureAnimationState();\n }\n\n var nextSibling = getChild(this.sortable.el, this.startIndex, this.options);\n\n if (nextSibling) {\n this.sortable.el.insertBefore(dragEl, nextSibling);\n } else {\n this.sortable.el.appendChild(dragEl);\n }\n\n this.sortable.animateAll();\n\n if (putSortable) {\n putSortable.animateAll();\n }\n },\n drop: drop\n};\n\n_extends(Revert, {\n pluginName: 'revertOnSpill'\n});\n\nfunction Remove() {}\n\nRemove.prototype = {\n onSpill: function onSpill(_ref4) {\n var dragEl = _ref4.dragEl,\n putSortable = _ref4.putSortable;\n var parentSortable = putSortable || this.sortable;\n parentSortable.captureAnimationState();\n dragEl.parentNode && dragEl.parentNode.removeChild(dragEl);\n parentSortable.animateAll();\n },\n drop: drop\n};\n\n_extends(Remove, {\n pluginName: 'removeOnSpill'\n});\n\nvar lastSwapEl;\n\nfunction SwapPlugin() {\n function Swap() {\n this.defaults = {\n swapClass: 'sortable-swap-highlight'\n };\n }\n\n Swap.prototype = {\n dragStart: function dragStart(_ref) {\n var dragEl = _ref.dragEl;\n lastSwapEl = dragEl;\n },\n dragOverValid: function dragOverValid(_ref2) {\n var completed = _ref2.completed,\n target = _ref2.target,\n onMove = _ref2.onMove,\n activeSortable = _ref2.activeSortable,\n changed = _ref2.changed,\n cancel = _ref2.cancel;\n if (!activeSortable.options.swap) return;\n var el = this.sortable.el,\n options = this.options;\n\n if (target && target !== el) {\n var prevSwapEl = lastSwapEl;\n\n if (onMove(target) !== false) {\n toggleClass(target, options.swapClass, true);\n lastSwapEl = target;\n } else {\n lastSwapEl = null;\n }\n\n if (prevSwapEl && prevSwapEl !== lastSwapEl) {\n toggleClass(prevSwapEl, options.swapClass, false);\n }\n }\n\n changed();\n completed(true);\n cancel();\n },\n drop: function drop(_ref3) {\n var activeSortable = _ref3.activeSortable,\n putSortable = _ref3.putSortable,\n dragEl = _ref3.dragEl;\n var toSortable = putSortable || this.sortable;\n var options = this.options;\n lastSwapEl && toggleClass(lastSwapEl, options.swapClass, false);\n\n if (lastSwapEl && (options.swap || putSortable && putSortable.options.swap)) {\n if (dragEl !== lastSwapEl) {\n toSortable.captureAnimationState();\n if (toSortable !== activeSortable) activeSortable.captureAnimationState();\n swapNodes(dragEl, lastSwapEl);\n toSortable.animateAll();\n if (toSortable !== activeSortable) activeSortable.animateAll();\n }\n }\n },\n nulling: function nulling() {\n lastSwapEl = null;\n }\n };\n return _extends(Swap, {\n pluginName: 'swap',\n eventProperties: function eventProperties() {\n return {\n swapItem: lastSwapEl\n };\n }\n });\n}\n\nfunction swapNodes(n1, n2) {\n var p1 = n1.parentNode,\n p2 = n2.parentNode,\n i1,\n i2;\n if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return;\n i1 = index(n1);\n i2 = index(n2);\n\n if (p1.isEqualNode(p2) && i1 < i2) {\n i2++;\n }\n\n p1.insertBefore(n2, p1.children[i1]);\n p2.insertBefore(n1, p2.children[i2]);\n}\n\nvar multiDragElements = [],\n multiDragClones = [],\n lastMultiDragSelect,\n // for selection with modifier key down (SHIFT)\nmultiDragSortable,\n initialFolding = false,\n // Initial multi-drag fold when drag started\nfolding = false,\n // Folding any other time\ndragStarted = false,\n dragEl$1,\n clonesFromRect,\n clonesHidden;\n\nfunction MultiDragPlugin() {\n function MultiDrag(sortable) {\n // Bind all private methods\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n\n if (sortable.options.supportPointer) {\n on(document, 'pointerup', this._deselectMultiDrag);\n } else {\n on(document, 'mouseup', this._deselectMultiDrag);\n on(document, 'touchend', this._deselectMultiDrag);\n }\n\n on(document, 'keydown', this._checkKeyDown);\n on(document, 'keyup', this._checkKeyUp);\n this.defaults = {\n selectedClass: 'sortable-selected',\n multiDragKey: null,\n setData: function setData(dataTransfer, dragEl) {\n var data = '';\n\n if (multiDragElements.length && multiDragSortable === sortable) {\n multiDragElements.forEach(function (multiDragElement, i) {\n data += (!i ? '' : ', ') + multiDragElement.textContent;\n });\n } else {\n data = dragEl.textContent;\n }\n\n dataTransfer.setData('Text', data);\n }\n };\n }\n\n MultiDrag.prototype = {\n multiDragKeyDown: false,\n isMultiDrag: false,\n delayStartGlobal: function delayStartGlobal(_ref) {\n var dragged = _ref.dragEl;\n dragEl$1 = dragged;\n },\n delayEnded: function delayEnded() {\n this.isMultiDrag = ~multiDragElements.indexOf(dragEl$1);\n },\n setupClone: function setupClone(_ref2) {\n var sortable = _ref2.sortable,\n cancel = _ref2.cancel;\n if (!this.isMultiDrag) return;\n\n for (var i = 0; i < multiDragElements.length; i++) {\n multiDragClones.push(clone(multiDragElements[i]));\n multiDragClones[i].sortableIndex = multiDragElements[i].sortableIndex;\n multiDragClones[i].draggable = false;\n multiDragClones[i].style['will-change'] = '';\n toggleClass(multiDragClones[i], this.options.selectedClass, false);\n multiDragElements[i] === dragEl$1 && toggleClass(multiDragClones[i], this.options.chosenClass, false);\n }\n\n sortable._hideClone();\n\n cancel();\n },\n clone: function clone(_ref3) {\n var sortable = _ref3.sortable,\n rootEl = _ref3.rootEl,\n dispatchSortableEvent = _ref3.dispatchSortableEvent,\n cancel = _ref3.cancel;\n if (!this.isMultiDrag) return;\n\n if (!this.options.removeCloneOnHide) {\n if (multiDragElements.length && multiDragSortable === sortable) {\n insertMultiDragClones(true, rootEl);\n dispatchSortableEvent('clone');\n cancel();\n }\n }\n },\n showClone: function showClone(_ref4) {\n var cloneNowShown = _ref4.cloneNowShown,\n rootEl = _ref4.rootEl,\n cancel = _ref4.cancel;\n if (!this.isMultiDrag) return;\n insertMultiDragClones(false, rootEl);\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', '');\n });\n cloneNowShown();\n clonesHidden = false;\n cancel();\n },\n hideClone: function hideClone(_ref5) {\n var _this = this;\n\n var sortable = _ref5.sortable,\n cloneNowHidden = _ref5.cloneNowHidden,\n cancel = _ref5.cancel;\n if (!this.isMultiDrag) return;\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', 'none');\n\n if (_this.options.removeCloneOnHide && clone.parentNode) {\n clone.parentNode.removeChild(clone);\n }\n });\n cloneNowHidden();\n clonesHidden = true;\n cancel();\n },\n dragStartGlobal: function dragStartGlobal(_ref6) {\n var sortable = _ref6.sortable;\n\n if (!this.isMultiDrag && multiDragSortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n }\n\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.sortableIndex = index(multiDragElement);\n }); // Sort multi-drag elements\n\n multiDragElements = multiDragElements.sort(function (a, b) {\n return a.sortableIndex - b.sortableIndex;\n });\n dragStarted = true;\n },\n dragStarted: function dragStarted(_ref7) {\n var _this2 = this;\n\n var sortable = _ref7.sortable;\n if (!this.isMultiDrag) return;\n\n if (this.options.sort) {\n // Capture rects,\n // hide multi drag elements (by positioning them absolute),\n // set multi drag elements rects to dragRect,\n // show multi drag elements,\n // animate to rects,\n // unset rects & remove from DOM\n sortable.captureAnimationState();\n\n if (this.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n css(multiDragElement, 'position', 'absolute');\n });\n var dragRect = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRect);\n });\n folding = true;\n initialFolding = true;\n }\n }\n\n sortable.animateAll(function () {\n folding = false;\n initialFolding = false;\n\n if (_this2.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n } // Remove all auxiliary multidrag items from el, if sorting enabled\n\n\n if (_this2.options.sort) {\n removeMultiDragElements();\n }\n });\n },\n dragOver: function dragOver(_ref8) {\n var target = _ref8.target,\n completed = _ref8.completed,\n cancel = _ref8.cancel;\n\n if (folding && ~multiDragElements.indexOf(target)) {\n completed(false);\n cancel();\n }\n },\n revert: function revert(_ref9) {\n var fromSortable = _ref9.fromSortable,\n rootEl = _ref9.rootEl,\n sortable = _ref9.sortable,\n dragRect = _ref9.dragRect;\n\n if (multiDragElements.length > 1) {\n // Setup unfold animation\n multiDragElements.forEach(function (multiDragElement) {\n sortable.addAnimationState({\n target: multiDragElement,\n rect: folding ? getRect(multiDragElement) : dragRect\n });\n unsetRect(multiDragElement);\n multiDragElement.fromRect = dragRect;\n fromSortable.removeAnimationState(multiDragElement);\n });\n folding = false;\n insertMultiDragElements(!this.options.removeCloneOnHide, rootEl);\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref10) {\n var sortable = _ref10.sortable,\n isOwner = _ref10.isOwner,\n insertion = _ref10.insertion,\n activeSortable = _ref10.activeSortable,\n parentEl = _ref10.parentEl,\n putSortable = _ref10.putSortable;\n var options = this.options;\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n }\n\n initialFolding = false; // If leaving sort:false root, or already folding - Fold to new location\n\n if (options.animation && multiDragElements.length > 1 && (folding || !isOwner && !activeSortable.options.sort && !putSortable)) {\n // Fold: Set all multi drag elements's rects to dragEl's rect when multi-drag elements are invisible\n var dragRectAbsolute = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRectAbsolute); // Move element(s) to end of parentEl so that it does not interfere with multi-drag clones insertion if they are inserted\n // while folding, and so that we can capture them again because old sortable will no longer be fromSortable\n\n parentEl.appendChild(multiDragElement);\n });\n folding = true;\n } // Clones must be shown (and check to remove multi drags) after folding when interfering multiDragElements are moved out\n\n\n if (!isOwner) {\n // Only remove if not folding (folding will remove them anyways)\n if (!folding) {\n removeMultiDragElements();\n }\n\n if (multiDragElements.length > 1) {\n var clonesHiddenBefore = clonesHidden;\n\n activeSortable._showClone(sortable); // Unfold animation for clones if showing from hidden\n\n\n if (activeSortable.options.animation && !clonesHidden && clonesHiddenBefore) {\n multiDragClones.forEach(function (clone) {\n activeSortable.addAnimationState({\n target: clone,\n rect: clonesFromRect\n });\n clone.fromRect = clonesFromRect;\n clone.thisAnimationDuration = null;\n });\n }\n } else {\n activeSortable._showClone(sortable);\n }\n }\n }\n },\n dragOverAnimationCapture: function dragOverAnimationCapture(_ref11) {\n var dragRect = _ref11.dragRect,\n isOwner = _ref11.isOwner,\n activeSortable = _ref11.activeSortable;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n });\n\n if (activeSortable.options.animation && !isOwner && activeSortable.multiDrag.isMultiDrag) {\n clonesFromRect = _extends({}, dragRect);\n var dragMatrix = matrix(dragEl$1, true);\n clonesFromRect.top -= dragMatrix.f;\n clonesFromRect.left -= dragMatrix.e;\n }\n },\n dragOverAnimationComplete: function dragOverAnimationComplete() {\n if (folding) {\n folding = false;\n removeMultiDragElements();\n }\n },\n drop: function drop(_ref12) {\n var evt = _ref12.originalEvent,\n rootEl = _ref12.rootEl,\n parentEl = _ref12.parentEl,\n sortable = _ref12.sortable,\n dispatchSortableEvent = _ref12.dispatchSortableEvent,\n oldIndex = _ref12.oldIndex,\n putSortable = _ref12.putSortable;\n var toSortable = putSortable || this.sortable;\n if (!evt) return;\n var options = this.options,\n children = parentEl.children; // Multi-drag selection\n\n if (!dragStarted) {\n if (options.multiDragKey && !this.multiDragKeyDown) {\n this._deselectMultiDrag();\n }\n\n toggleClass(dragEl$1, options.selectedClass, !~multiDragElements.indexOf(dragEl$1));\n\n if (!~multiDragElements.indexOf(dragEl$1)) {\n multiDragElements.push(dragEl$1);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: dragEl$1,\n originalEvt: evt\n }); // Modifier activated, select from last to dragEl\n\n if (evt.shiftKey && lastMultiDragSelect && sortable.el.contains(lastMultiDragSelect)) {\n var lastIndex = index(lastMultiDragSelect),\n currentIndex = index(dragEl$1);\n\n if (~lastIndex && ~currentIndex && lastIndex !== currentIndex) {\n // Must include lastMultiDragSelect (select it), in case modified selection from no selection\n // (but previous selection existed)\n var n, i;\n\n if (currentIndex > lastIndex) {\n i = lastIndex;\n n = currentIndex;\n } else {\n i = currentIndex;\n n = lastIndex + 1;\n }\n\n for (; i < n; i++) {\n if (~multiDragElements.indexOf(children[i])) continue;\n toggleClass(children[i], options.selectedClass, true);\n multiDragElements.push(children[i]);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: children[i],\n originalEvt: evt\n });\n }\n }\n } else {\n lastMultiDragSelect = dragEl$1;\n }\n\n multiDragSortable = toSortable;\n } else {\n multiDragElements.splice(multiDragElements.indexOf(dragEl$1), 1);\n lastMultiDragSelect = null;\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'deselect',\n targetEl: dragEl$1,\n originalEvt: evt\n });\n }\n } // Multi-drag drop\n\n\n if (dragStarted && this.isMultiDrag) {\n // Do not \"unfold\" after around dragEl if reverted\n if ((parentEl[expando].options.sort || parentEl !== rootEl) && multiDragElements.length > 1) {\n var dragRect = getRect(dragEl$1),\n multiDragIndex = index(dragEl$1, ':not(.' + this.options.selectedClass + ')');\n if (!initialFolding && options.animation) dragEl$1.thisAnimationDuration = null;\n toSortable.captureAnimationState();\n\n if (!initialFolding) {\n if (options.animation) {\n dragEl$1.fromRect = dragRect;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n\n if (multiDragElement !== dragEl$1) {\n var rect = folding ? getRect(multiDragElement) : dragRect;\n multiDragElement.fromRect = rect; // Prepare unfold animation\n\n toSortable.addAnimationState({\n target: multiDragElement,\n rect: rect\n });\n }\n });\n } // Multi drag elements are not necessarily removed from the DOM on drop, so to reinsert\n // properly they must all be removed\n\n\n removeMultiDragElements();\n multiDragElements.forEach(function (multiDragElement) {\n if (children[multiDragIndex]) {\n parentEl.insertBefore(multiDragElement, children[multiDragIndex]);\n } else {\n parentEl.appendChild(multiDragElement);\n }\n\n multiDragIndex++;\n }); // If initial folding is done, the elements may have changed position because they are now\n // unfolding around dragEl, even though dragEl may not have his index changed, so update event\n // must be fired here as Sortable will not.\n\n if (oldIndex === index(dragEl$1)) {\n var update = false;\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement.sortableIndex !== index(multiDragElement)) {\n update = true;\n return;\n }\n });\n\n if (update) {\n dispatchSortableEvent('update');\n }\n }\n } // Must be done after capturing individual rects (scroll bar)\n\n\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n toSortable.animateAll();\n }\n\n multiDragSortable = toSortable;\n } // Remove clones if necessary\n\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n multiDragClones.forEach(function (clone) {\n clone.parentNode && clone.parentNode.removeChild(clone);\n });\n }\n },\n nullingGlobal: function nullingGlobal() {\n this.isMultiDrag = dragStarted = false;\n multiDragClones.length = 0;\n },\n destroyGlobal: function destroyGlobal() {\n this._deselectMultiDrag();\n\n off(document, 'pointerup', this._deselectMultiDrag);\n off(document, 'mouseup', this._deselectMultiDrag);\n off(document, 'touchend', this._deselectMultiDrag);\n off(document, 'keydown', this._checkKeyDown);\n off(document, 'keyup', this._checkKeyUp);\n },\n _deselectMultiDrag: function _deselectMultiDrag(evt) {\n if (dragStarted) return; // Only deselect if selection is in this sortable\n\n if (multiDragSortable !== this.sortable) return; // Only deselect if target is not item in this sortable\n\n if (evt && closest(evt.target, this.options.draggable, this.sortable.el, false)) return; // Only deselect if left click\n\n if (evt && evt.button !== 0) return;\n\n while (multiDragElements.length) {\n var el = multiDragElements[0];\n toggleClass(el, this.options.selectedClass, false);\n multiDragElements.shift();\n dispatchEvent({\n sortable: this.sortable,\n rootEl: this.sortable.el,\n name: 'deselect',\n targetEl: el,\n originalEvt: evt\n });\n }\n },\n _checkKeyDown: function _checkKeyDown(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = true;\n }\n },\n _checkKeyUp: function _checkKeyUp(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = false;\n }\n }\n };\n return _extends(MultiDrag, {\n // Static methods & properties\n pluginName: 'multiDrag',\n utils: {\n /**\n * Selects the provided multi-drag item\n * @param {HTMLElement} el The element to be selected\n */\n select: function select(el) {\n var sortable = el.parentNode[expando];\n if (!sortable || !sortable.options.multiDrag || ~multiDragElements.indexOf(el)) return;\n\n if (multiDragSortable && multiDragSortable !== sortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n\n multiDragSortable = sortable;\n }\n\n toggleClass(el, sortable.options.selectedClass, true);\n multiDragElements.push(el);\n },\n\n /**\n * Deselects the provided multi-drag item\n * @param {HTMLElement} el The element to be deselected\n */\n deselect: function deselect(el) {\n var sortable = el.parentNode[expando],\n index = multiDragElements.indexOf(el);\n if (!sortable || !sortable.options.multiDrag || !~index) return;\n toggleClass(el, sortable.options.selectedClass, false);\n multiDragElements.splice(index, 1);\n }\n },\n eventProperties: function eventProperties() {\n var _this3 = this;\n\n var oldIndicies = [],\n newIndicies = [];\n multiDragElements.forEach(function (multiDragElement) {\n oldIndicies.push({\n multiDragElement: multiDragElement,\n index: multiDragElement.sortableIndex\n }); // multiDragElements will already be sorted if folding\n\n var newIndex;\n\n if (folding && multiDragElement !== dragEl$1) {\n newIndex = -1;\n } else if (folding) {\n newIndex = index(multiDragElement, ':not(.' + _this3.options.selectedClass + ')');\n } else {\n newIndex = index(multiDragElement);\n }\n\n newIndicies.push({\n multiDragElement: multiDragElement,\n index: newIndex\n });\n });\n return {\n items: _toConsumableArray(multiDragElements),\n clones: [].concat(multiDragClones),\n oldIndicies: oldIndicies,\n newIndicies: newIndicies\n };\n },\n optionListeners: {\n multiDragKey: function multiDragKey(key) {\n key = key.toLowerCase();\n\n if (key === 'ctrl') {\n key = 'Control';\n } else if (key.length > 1) {\n key = key.charAt(0).toUpperCase() + key.substr(1);\n }\n\n return key;\n }\n }\n });\n}\n\nfunction insertMultiDragElements(clonesInserted, rootEl) {\n multiDragElements.forEach(function (multiDragElement, i) {\n var target = rootEl.children[multiDragElement.sortableIndex + (clonesInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(multiDragElement, target);\n } else {\n rootEl.appendChild(multiDragElement);\n }\n });\n}\n/**\n * Insert multi-drag clones\n * @param {[Boolean]} elementsInserted Whether the multi-drag elements are inserted\n * @param {HTMLElement} rootEl\n */\n\n\nfunction insertMultiDragClones(elementsInserted, rootEl) {\n multiDragClones.forEach(function (clone, i) {\n var target = rootEl.children[clone.sortableIndex + (elementsInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(clone, target);\n } else {\n rootEl.appendChild(clone);\n }\n });\n}\n\nfunction removeMultiDragElements() {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n multiDragElement.parentNode && multiDragElement.parentNode.removeChild(multiDragElement);\n });\n}\n\nSortable.mount(new AutoScrollPlugin());\nSortable.mount(Remove, Revert);\n\nexport default Sortable;\nexport { MultiDragPlugin as MultiDrag, Sortable, SwapPlugin as Swap };\n","// Exports the \"insertdatetime\" plugin for usage with module loaders\n// Usage:\n// CommonJS:\n// require('tinymce/plugins/insertdatetime')\n// ES2015:\n// import 'tinymce/plugins/insertdatetime'\nrequire('./plugin.js');","/**\n * Copyright (c) Tiny Technologies, Inc. All rights reserved.\n * Licensed under the LGPL or a commercial license.\n * For LGPL see License.txt in the project root for license information.\n * For commercial licenses see https://www.tiny.cloud/\n *\n * Version: 5.2.2 (2020-04-23)\n */\n(function (domGlobals) {\n 'use strict';\n\n var global = tinymce.util.Tools.resolve('tinymce.PluginManager');\n\n function Plugin () {\n global.add('contextmenu', function () {\n domGlobals.console.warn('Context menu plugin is now built in to the core editor, please remove it from your editor configuration');\n });\n }\n\n Plugin();\n\n}(window));\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tinymce.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tinymce.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('editor',{attrs:{\"init\":_vm.init,\"disabled\":_vm.disabled},on:{\"onClick\":_vm.onClick},model:{value:(_vm.myValue),callback:function ($$v) {_vm.myValue=$$v},expression:\"myValue\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tinymce.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tinymce.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tinymce.vue?vue&type=template&id=093ee963&\"\nimport script from \"./tinymce.vue?vue&type=script&lang=js&\"\nexport * from \"./tinymce.vue?vue&type=script&lang=js&\"\nimport style0 from \"./tinymce.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\r\n //处理卡券方法\r\n loadData(tempData: any) {\r\n let wxcardItems: any = [];\r\n wxcardItems.push({\r\n type: \"htmlpanel\", // A HTML panel component\r\n html:\r\n \"
 卡券类型卡券名称卡券有效期库存微信价(元)卡券状态
\"\r\n });\r\n if (!tempData || tempData.length == 0) {\r\n wxcardItems.push({\r\n type: \"htmlpanel\", // A HTML panel component\r\n html: \"
暂无卡券
\"\r\n });\r\n } else {\r\n //console.log(tempData);\r\n tempData.forEach((e: any) => {\r\n //console.log(e);\r\n if (e.errcode == 0) {\r\n var temp = e.card;\r\n //折扣券\r\n if (temp.card_type == \"DISCOUNT\") {\r\n var baseInfo = temp.discount.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"折扣券\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"\" +\r\n baseInfo.sku.quantity +\r\n \"--\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n // console.log(baseInfo); \r\n }\r\n //代金券\r\n if (temp.card_type == \"CASH\") {\r\n var baseInfo = temp.cash.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"代金券\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"\" +\r\n baseInfo.sku.quantity +\r\n \"--\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n }\r\n //兑换券\r\n if (temp.card_type == \"GIFT\") {\r\n var baseInfo = temp.gift.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"兑换券\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"\" +\r\n baseInfo.sku.quantity +\r\n \"--\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n }\r\n //团购券\r\n if (temp.card_type == \"GROUPON\") {\r\n var baseInfo = temp.groupon.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"团购券\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"\" +\r\n baseInfo.sku.quantity +\r\n \"--\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n }\r\n //优惠券\r\n if (temp.card_type == \"GENERAL_COUPON\") {\r\n var baseInfo = temp.general_coupon.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"优惠券\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"\" +\r\n baseInfo.sku.quantity +\r\n \"--\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n }\r\n //会员卡:MEMBER_CARD;\r\n if (temp.card_type == \"MEMBER_CARD\") {\r\n var baseInfo = temp.member_card.base_info;\r\n wxcardItems.push({\r\n type: \"checkbox\",\r\n name: this.CardVal(baseInfo,temp),\r\n label:\r\n \"会员卡\" +\r\n baseInfo.title +\r\n \"\" +\r\n this.cardDataTimeFormat(baseInfo.date_info) +\r\n \"----\" +\r\n this.CardStatus(baseInfo.status) +\r\n \"\"\r\n });\r\n //console.log(baseInfo); \r\n }\r\n // 景点门票:SCENIC_TICKET ; 电影票:MOVIE_TICKET; 飞机票:BOARDING_PASS; 会议门票:MEETING_TICKET; 汽车票:BUS_TICKET;\r\n }\r\n });\r\n }\r\n //wxCardHtml = wxCardHtml + \"只能投放普通券\";\r\n wxcardItems.push(\r\n {\r\n type: \"htmlpanel\", // component type\r\n html: \"
注意:因微信有防盗链限制可能会出现无法显示LOGO,但发布后可以正常显示!
\"\r\n\r\n },\r\n {\r\n type: \"button\", // component type\r\n text: \"获取最新卡券信息\",\r\n primary: true,\r\n name: \"wxCard-button\"\r\n // disabled: true,\r\n //borderless: false\r\n }\r\n );\r\n return wxcardItems;\r\n },\r\n //卡券有效时间格式化\r\n cardDataTimeFormat(dateinfo: any) {\r\n if (dateinfo.fixed_term != 0) {\r\n if (dateinfo.fixed_begin_term == 0) {\r\n return \"领取后当天生效\" + dateinfo.fixed_term + \"天有效\";\r\n } else {\r\n return (\r\n \"领取后\" +\r\n dateinfo.fixed_begin_term +\r\n \"天生效\" +\r\n dateinfo.fixed_term +\r\n \"天有效\"\r\n );\r\n }\r\n }\r\n if (dateinfo.begin_timestamp != 0) {\r\n return (\r\n this.formatDate(dateinfo.begin_timestamp * 1000) +\r\n \"至\" +\r\n this.formatDate(dateinfo.end_timestamp * 1000)\r\n );\r\n }\r\n return \" \";\r\n },\r\n //卡券状态格式化 “CARD_STATUS_NOT_VERIFY”,待审核 ; “CARD_STATUS_VERIFY_FAIL”,审核失败; “CARD_STATUS_VERIFY_OK”,通过审核; “CARD_STATUS_DELETE”,卡券被商户删除; “CARD_STATUS_DISPATCH”,在公众平台投放过的卡券 ;\r\n CardStatus(val: any) {\r\n switch (val) {\r\n case \"CARD_STATUS_VERIFY_OK\":\r\n return \"待投放\";\r\n case \"CARD_STATUS_DISPATCH\":\r\n return \"投放过\";\r\n }\r\n },\r\n //选择卡券内容\r\n CardVal(baseInfo: any,info:any) {\r\n let val =\r\n \"logo_url|$|\" +\r\n encodeURIComponent(baseInfo.logo_url) +\r\n \"|$$|brand_name|$|\" +\r\n encodeURIComponent(baseInfo.brand_name) +\r\n \"|$$|title|$|\" +\r\n encodeURIComponent(baseInfo.title) +\r\n \"|$$|color|$|\" +\r\n encodeURIComponent(baseInfo.color) +\r\n \"|$$|cardid|$|\" +\r\n baseInfo.id+\r\n \"|$$|card_type|$|\" +info.card_type;\r\n return val;\r\n },\r\n //时间戳转时间\r\n formatDate(value: any) {\r\n let date = new Date(value);\r\n let y = date.getFullYear();\r\n let MM = date.getMonth() + 1;\r\n let MMstr = MM < 10 ? \"0\" + MM : MM;\r\n let d = date.getDate();\r\n let dstr = d < 10 ? \"0\" + d : d;\r\n let h = date.getHours();\r\n let hstr = h < 10 ? \"0\" + h : h;\r\n let m = date.getMinutes();\r\n let mstr = m < 10 ? \"0\" + m : m;\r\n let s = date.getSeconds();\r\n let sstr = s < 10 ? \"0\" + s : s;\r\n //return y + \"-\" + MMstr + \"-\" + dstr + \" \" + hstr + \":\" + mstr + \":\" + sstr;\r\n return y + \"-\" + MMstr + \"-\" + dstr;\r\n }\r\n \r\n}\r\n","/**\n * Copyright (c) Tiny Technologies, Inc. All rights reserved.\n * Licensed under the LGPL or a commercial license.\n * For LGPL see License.txt in the project root for license information.\n * For commercial licenses see https://www.tiny.cloud/\n *\n * Version: 5.2.2 (2020-04-23)\n */\n(function () {\n 'use strict';\n\n var global = tinymce.util.Tools.resolve('tinymce.PluginManager');\n\n var getDateFormat = function (editor) {\n return editor.getParam('insertdatetime_dateformat', editor.translate('%Y-%m-%d'));\n };\n var getTimeFormat = function (editor) {\n return editor.getParam('insertdatetime_timeformat', editor.translate('%H:%M:%S'));\n };\n var getFormats = function (editor) {\n return editor.getParam('insertdatetime_formats', [\n '%H:%M:%S',\n '%Y-%m-%d',\n '%I:%M:%S %p',\n '%D'\n ]);\n };\n var getDefaultDateTime = function (editor) {\n var formats = getFormats(editor);\n return formats.length > 0 ? formats[0] : getTimeFormat(editor);\n };\n var shouldInsertTimeElement = function (editor) {\n return editor.getParam('insertdatetime_element', false);\n };\n var Settings = {\n getDateFormat: getDateFormat,\n getTimeFormat: getTimeFormat,\n getFormats: getFormats,\n getDefaultDateTime: getDefaultDateTime,\n shouldInsertTimeElement: shouldInsertTimeElement\n };\n\n var daysShort = 'Sun Mon Tue Wed Thu Fri Sat Sun'.split(' ');\n var daysLong = 'Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday'.split(' ');\n var monthsShort = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' ');\n var monthsLong = 'January February March April May June July August September October November December'.split(' ');\n var addZeros = function (value, len) {\n value = '' + value;\n if (value.length < len) {\n for (var i = 0; i < len - value.length; i++) {\n value = '0' + value;\n }\n }\n return value;\n };\n var getDateTime = function (editor, fmt, date) {\n date = date || new Date();\n fmt = fmt.replace('%D', '%m/%d/%Y');\n fmt = fmt.replace('%r', '%I:%M:%S %p');\n fmt = fmt.replace('%Y', '' + date.getFullYear());\n fmt = fmt.replace('%y', '' + date.getYear());\n fmt = fmt.replace('%m', addZeros(date.getMonth() + 1, 2));\n fmt = fmt.replace('%d', addZeros(date.getDate(), 2));\n fmt = fmt.replace('%H', '' + addZeros(date.getHours(), 2));\n fmt = fmt.replace('%M', '' + addZeros(date.getMinutes(), 2));\n fmt = fmt.replace('%S', '' + addZeros(date.getSeconds(), 2));\n fmt = fmt.replace('%I', '' + ((date.getHours() + 11) % 12 + 1));\n fmt = fmt.replace('%p', '' + (date.getHours() < 12 ? 'AM' : 'PM'));\n fmt = fmt.replace('%B', '' + editor.translate(monthsLong[date.getMonth()]));\n fmt = fmt.replace('%b', '' + editor.translate(monthsShort[date.getMonth()]));\n fmt = fmt.replace('%A', '' + editor.translate(daysLong[date.getDay()]));\n fmt = fmt.replace('%a', '' + editor.translate(daysShort[date.getDay()]));\n fmt = fmt.replace('%%', '%');\n return fmt;\n };\n var updateElement = function (editor, timeElm, computerTime, userTime) {\n var newTimeElm = editor.dom.create('time', { datetime: computerTime }, userTime);\n timeElm.parentNode.insertBefore(newTimeElm, timeElm);\n editor.dom.remove(timeElm);\n editor.selection.select(newTimeElm, true);\n editor.selection.collapse(false);\n };\n var insertDateTime = function (editor, format) {\n if (Settings.shouldInsertTimeElement(editor)) {\n var userTime = getDateTime(editor, format);\n var computerTime = void 0;\n if (/%[HMSIp]/.test(format)) {\n computerTime = getDateTime(editor, '%Y-%m-%dT%H:%M');\n } else {\n computerTime = getDateTime(editor, '%Y-%m-%d');\n }\n var timeElm = editor.dom.getParent(editor.selection.getStart(), 'time');\n if (timeElm) {\n updateElement(editor, timeElm, computerTime, userTime);\n } else {\n editor.insertContent('');\n }\n } else {\n editor.insertContent(getDateTime(editor, format));\n }\n };\n var Actions = {\n insertDateTime: insertDateTime,\n getDateTime: getDateTime\n };\n\n var register = function (editor) {\n editor.addCommand('mceInsertDate', function () {\n Actions.insertDateTime(editor, Settings.getDateFormat(editor));\n });\n editor.addCommand('mceInsertTime', function () {\n Actions.insertDateTime(editor, Settings.getTimeFormat(editor));\n });\n };\n var Commands = { register: register };\n\n var global$1 = tinymce.util.Tools.resolve('tinymce.util.Tools');\n\n var Cell = function (initial) {\n var value = initial;\n var get = function () {\n return value;\n };\n var set = function (v) {\n value = v;\n };\n var clone = function () {\n return Cell(get());\n };\n return {\n get: get,\n set: set,\n clone: clone\n };\n };\n\n var register$1 = function (editor) {\n var formats = Settings.getFormats(editor);\n var defaultFormat = Cell(Settings.getDefaultDateTime(editor));\n editor.ui.registry.addSplitButton('insertdatetime', {\n icon: 'insert-time',\n tooltip: 'Insert date/time',\n select: function (value) {\n return value === defaultFormat.get();\n },\n fetch: function (done) {\n done(global$1.map(formats, function (format) {\n return {\n type: 'choiceitem',\n text: Actions.getDateTime(editor, format),\n value: format\n };\n }));\n },\n onAction: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n Actions.insertDateTime(editor, defaultFormat.get());\n },\n onItemAction: function (_, value) {\n defaultFormat.set(value);\n Actions.insertDateTime(editor, value);\n }\n });\n var makeMenuItemHandler = function (format) {\n return function () {\n defaultFormat.set(format);\n Actions.insertDateTime(editor, format);\n };\n };\n editor.ui.registry.addNestedMenuItem('insertdatetime', {\n icon: 'insert-time',\n text: 'Date/time',\n getSubmenuItems: function () {\n return global$1.map(formats, function (format) {\n return {\n type: 'menuitem',\n text: Actions.getDateTime(editor, format),\n onAction: makeMenuItemHandler(format)\n };\n });\n }\n });\n };\n var Buttons = { register: register$1 };\n\n function Plugin () {\n global.add('insertdatetime', function (editor) {\n Commands.register(editor);\n Buttons.register(editor);\n });\n }\n\n Plugin();\n\n}());\n","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./setFormComponent.vue?vue&type=style&index=0&id=9292dc30&lang=less&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./setFormComponent.vue?vue&type=style&index=0&id=9292dc30&lang=less&scoped=true&\"","import Vue from 'vue';\r\n\r\n// 使用 Event Bus\r\nconst bus = new Vue();\r\n\r\nexport default bus;\r\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Exports the \"contextmenu\" plugin for usage with module loaders\n// Usage:\n// CommonJS:\n// require('tinymce/plugins/contextmenu')\n// ES2015:\n// import 'tinymce/plugins/contextmenu'\nrequire('./plugin.js');"],"sourceRoot":""}