{"version":3,"sources":["webpack:///./src/components/replyTabs.vue?4a45","webpack:///./src/components/replyTabs.vue?c4ca","webpack:///./src/components/replyTabs.vue?fc5c","webpack:///./src/components/replyTabs.vue","webpack:///./node_modules/zrender/lib/core/timsort.js","webpack:///./node_modules/zrender/lib/animation/Animator.js","webpack:///./node_modules/zrender/lib/core/GestureMgr.js","webpack:///./node_modules/zrender/lib/core/arrayDiff2.js","webpack:///./node_modules/zrender/lib/mixin/Transformable.js","webpack:///./node_modules/zrender/lib/graphic/Image.js","webpack:///./node_modules/zrender/lib/core/matrix.js","webpack:///./node_modules/zrender/lib/graphic/Displayable.js","webpack:///./node_modules/zrender/lib/export.js","webpack:///./node_modules/zrender/lib/mixin/Eventful.js","webpack:///./node_modules/zrender/lib/core/PathProxy.js","webpack:///./node_modules/zrender/lib/core/env.js","webpack:///./src/components/editor/tinymce2.vue?4ee2","webpack:///src/components/editor/tinymce2.vue","webpack:///./src/components/editor/tinymce2.vue?a2df","webpack:///./src/components/editor/tinymce2.vue","webpack:///./node_modules/zrender/lib/graphic/Style.js","webpack:///./node_modules/zrender/lib/config.js","webpack:///./src/views/markting/QrCode/PosterEdit/PosterSet.vue?9214","webpack:///./src/views/markting/QrCode/PosterEdit/PosterSet.vue?293c","webpack:///./src/views/markting/QrCode/PosterEdit/PosterSet.vue?d2f3","webpack:///./src/views/markting/QrCode/PosterEdit/PosterSet.vue","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./node_modules/zrender/lib/tool/parseSVG.js","webpack:///./node_modules/zrender/lib/animation/Animation.js","webpack:///./node_modules/zrender/lib/tool/path.js","webpack:///./src/views/markting/QrCode/viewlist.vue?7e21","webpack:///./src/views/markting/QrCode/viewlist.vue?e0dd","webpack:///./src/views/markting/QrCode/viewlist.vue?54bf","webpack:///./src/views/markting/QrCode/viewlist.vue","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/zrender/lib/graphic/IncrementalDisplayable.js","webpack:///./src/components/TemplateMessagePopUp.vue?5a35","webpack:///./src/components/replyTabs.vue?f320","webpack:///./node_modules/zrender/lib/svg/graphic.js","webpack:///./node_modules/zrender/lib/core/vector.js","webpack:///./node_modules/zrender/lib/tool/color.js","webpack:///./src/views/markting/QrCode/list.vue?f565","webpack:///./src/views/markting/QrCode/list.vue?49c1","webpack:///./src/views/markting/QrCode/list.vue?6a04","webpack:///./src/views/markting/QrCode/list.vue","webpack:///./node_modules/zrender/lib/graphic/Gradient.js","webpack:///./src/assets/images/noavatar.jpg","webpack:///./node_modules/zrender/lib/animation/Clip.js","webpack:///./src/views/markting/QrCode/add.vue?eb23","webpack:///./src/views/markting/QrCode/add.vue?ad6c","webpack:///./src/views/markting/QrCode/add.vue?e7ab","webpack:///./src/views/markting/QrCode/add.vue","webpack:///./node_modules/zrender/lib/graphic/shape/Ring.js","webpack:///./node_modules/zrender/lib/graphic/LinearGradient.js","webpack:///./node_modules/zrender/lib/core/log.js","webpack:///./node_modules/zrender/lib/core/curve.js","webpack:///./node_modules/zrender/lib/graphic/shape/Sector.js","webpack:///./node_modules/zrender/lib/svg/helper/Definable.js","webpack:///./node_modules/zrender/lib/graphic/shape/Star.js","webpack:///./node_modules/zrender/lib/graphic/shape/Trochoid.js","webpack:///./node_modules/zrender/lib/graphic/helper/poly.js","webpack:///./node_modules/zrender/lib/graphic/helper/roundRect.js","webpack:///./src/views/markting/QrCode/statistical.vue?c831","webpack:///./src/views/markting/QrCode/statistical.vue?20f9","webpack:///./src/views/markting/QrCode/statistical.vue?e15b","webpack:///./src/views/markting/QrCode/statistical.vue","webpack:///./src/views/markting/QrCode/PosterEdit/NotificationSettings.vue?3359","webpack:///./node_modules/zrender/lib/Layer.js","webpack:///./node_modules/zrender/lib/graphic/helper/image.js","webpack:///./node_modules/zrender/lib/core/event.js","webpack:///./node_modules/zrender/lib/graphic/helper/smoothSpline.js","webpack:///./node_modules/zrender/lib/graphic/shape/Droplet.js","webpack:///./node_modules/zrender/lib/core/dom.js","webpack:///./src/views/markting/QrCode/PosterEdit/AdvancedSettings.vue?ae12","webpack:///./src/views/markting/QrCode/PosterEdit/AdvancedSettings.vue?2291","webpack:///./src/views/markting/QrCode/PosterEdit/AdvancedSettings.vue?a6de","webpack:///./src/views/markting/QrCode/PosterEdit/AdvancedSettings.vue","webpack:///./node_modules/core-js/modules/es7.array.includes.js","webpack:///./node_modules/zrender/lib/contain/quadratic.js","webpack:///./node_modules/zrender/lib/zrender.js","webpack:///./node_modules/core-js/modules/es6.string.fontcolor.js","webpack:///./src/views/markting/QrCode/PosterEdit/NotificationSettings.vue?2e0f","webpack:///./src/views/markting/QrCode/PosterEdit/NotificationSettings.vue?84ae","webpack:///./src/views/markting/QrCode/PosterEdit/NotificationSettings.vue?7a62","webpack:///./src/views/markting/QrCode/PosterEdit/NotificationSettings.vue","webpack:///./node_modules/zrender/lib/core/util.js","webpack:///./src/views/markting/QrCode/PosterEdit/PrizeVerification.vue?efa2","webpack:///./src/views/markting/QrCode/PosterEdit/PrizeVerification.vue?96f7","webpack:///./src/views/markting/QrCode/PosterEdit/PrizeVerification.vue?8567","webpack:///./src/views/markting/QrCode/PosterEdit/PrizeVerification.vue","webpack:///./node_modules/zrender/lib/animation/easing.js","webpack:///./node_modules/zrender/lib/graphic/Text.js","webpack:///./node_modules/zrender/lib/graphic/helper/fixShadow.js","webpack:///./node_modules/zrender/lib/graphic/constant.js","webpack:///./node_modules/zrender/lib/core/fourPointsTransform.js","webpack:///./node_modules/zrender/lib/contain/util.js","webpack:///./node_modules/zrender/lib/svg/core.js","webpack:///./node_modules/zrender/lib/contain/windingLine.js","webpack:///./node_modules/zrender/lib/graphic/shape/Polygon.js","webpack:///./node_modules/zrender/lib/graphic/helper/fixClipWithShadow.js","webpack:///./node_modules/zrender/lib/graphic/shape/Arc.js","webpack:///./node_modules/zrender/lib/svg/svg.js","webpack:///./src/views/markting/QrCode/PosterEdit/BasicInformation.vue?b84d","webpack:///./src/views/markting/QrCode/PosterEdit/BasicInformation.vue?6096","webpack:///./src/views/markting/QrCode/PosterEdit/BasicInformation.vue?97b3","webpack:///./src/views/markting/QrCode/PosterEdit/BasicInformation.vue","webpack:///./src/components/TemplateMessagePopUp.vue?a1a8","webpack:///./node_modules/zrender/index.js","webpack:///./node_modules/zrender/lib/contain/line.js","webpack:///./node_modules/zrender/lib/core/BoundingRect.js","webpack:///./node_modules/zrender/lib/animation/requestAnimationFrame.js","webpack:///./src/components/replyTabs.vue?2045","webpack:///./node_modules/zrender/lib/graphic/helper/smoothBezier.js","webpack:///./node_modules/zrender/lib/graphic/helper/subPixelOptimize.js","webpack:///./node_modules/zrender/lib/graphic/mixin/RectText.js","webpack:///./node_modules/core-js/modules/es6.string.fontsize.js","webpack:///./node_modules/zrender/lib/contain/arc.js","webpack:///./node_modules/zrender/lib/svg/helper/ClippathManager.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./node_modules/zrender/lib/graphic/helper/text.js","webpack:///./src/views/markting/QrCode/posterSeting.vue?f048","webpack:///./src/views/markting/QrCode/posterSeting.vue?5f33","webpack:///./src/views/markting/QrCode/posterSeting.vue?96a8","webpack:///./src/views/markting/QrCode/posterSeting.vue","webpack:///./node_modules/zrender/lib/vml/graphic.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./node_modules/zrender/lib/graphic/shape/BezierCurve.js","webpack:///./node_modules/zrender/lib/graphic/shape/Ellipse.js","webpack:///./node_modules/zrender/lib/Storage.js","webpack:///./node_modules/zrender/lib/svg/helper/GradientManager.js","webpack:///./src/views/markting/QrCode/index.vue?ed8b","webpack:///./src/views/markting/QrCode/index.vue?ee44","webpack:///./src/views/markting/QrCode/index.vue?bb72","webpack:///./src/views/markting/QrCode/index.vue","webpack:///./node_modules/core-js/modules/es6.string.link.js","webpack:///./node_modules/zrender/lib/graphic/shape/Rose.js","webpack:///./node_modules/zrender/lib/svg/helper/ShadowManager.js","webpack:///./node_modules/zrender/lib/mixin/Animatable.js","webpack:///./node_modules/zrender/lib/graphic/shape/Isogon.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./src/JS/Bus.ts","webpack:///./node_modules/zrender/lib/graphic/shape/Rect.js","webpack:///./node_modules/zrender/lib/graphic/shape/Line.js","webpack:///./node_modules/zrender/lib/mixin/Draggable.js","webpack:///./node_modules/zrender/lib/graphic/Path.js","webpack:///./node_modules/zrender/lib/dom/HandlerProxy.js","webpack:///./node_modules/zrender/lib/Handler.js","webpack:///./node_modules/zrender/lib/vml/core.js","webpack:///./node_modules/zrender/lib/graphic/shape/Polyline.js","webpack:///./node_modules/zrender/lib/graphic/CompoundPath.js","webpack:///./node_modules/zrender/lib/core/LRU.js","webpack:///./node_modules/zrender/lib/Element.js","webpack:///./node_modules/zrender/lib/contain/path.js","webpack:///./node_modules/zrender/lib/graphic/shape/Circle.js","webpack:///./node_modules/zrender/lib/svg/Painter.js","webpack:///./node_modules/zrender/lib/graphic/Pattern.js","webpack:///./node_modules/zrender/lib/graphic/RadialGradient.js","webpack:///./node_modules/zrender/lib/core/guid.js","webpack:///./src/assets/images/posterBg.jpg","webpack:///./node_modules/zrender/lib/container/Group.js","webpack:///./node_modules/zrender/lib/core/bbox.js","webpack:///./node_modules/zrender/lib/contain/cubic.js","webpack:///./node_modules/zrender/lib/contain/text.js","webpack:///./src/assets/images/crdcode.png","webpack:///./node_modules/zrender/lib/vml/Painter.js","webpack:///./node_modules/zrender/lib/Painter.js","webpack:///./src/views/markting/QrCode/PosterEdit/MissionRewards.vue?e85d","webpack:///./src/components/TemplateMessagePopUp.vue?17a7","webpack:///./src/components/TemplateMessagePopUp.vue?4b5e","webpack:///./src/components/TemplateMessagePopUp.vue?2dc6","webpack:///./src/components/TemplateMessagePopUp.vue","webpack:///./src/views/markting/QrCode/PosterEdit/MissionRewards.vue?947d","webpack:///./src/views/markting/QrCode/PosterEdit/MissionRewards.vue?f578","webpack:///./src/views/markting/QrCode/PosterEdit/MissionRewards.vue","webpack:///./node_modules/zrender/lib/tool/transformPath.js","webpack:///./node_modules/zrender/lib/vml/vml.js","webpack:///./node_modules/zrender/lib/graphic/shape/Heart.js","webpack:///./node_modules/core-js/modules/_string-ws.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","directives","name","rawName","value","expression","modifiers","attrs","staticClass","_l","typeItem","rtindex","key","class","typeID","momentDataArr","activeRow","rowArr","endRow","on","$event","changeReplyType","_v","_s","label","data","disabled","getEditValue","GetCustomEmoji","staticStyle","handleClick","model","callback","$$v","activeEmoji","emojiGroup","index","emoji","eName","eIndex","selectEmoji","slot","ref","linkData","linkDataRules","$set","pushLinkToMenuData","resetLinkForm","miniprogram","miniprogramRules","pushMiniToMenuData","pushFansName","_e","MediaUrl","MediaName","showFodderDialog","activeImgCate","clearSelectedFodder","UploadImage","beforeAvatarUpload","Title","style","MediaDes","activeImgTxtCate","voiceControl","ID","playVoiceValue","activeVoiceCate","beforeVoiceUpload","_m","activeVideoCate","videoControl","template_name","create_time","isInput","template_title","activeTempCate","toCreateTemp","title","coverImg","modifyminiproject","miniDialogVisible","replyDialogVisible","tabItem","iKey","activeCate","chooseImgCate","GroupName","TotalNum","searchFodder","SearchKeywords","imgList","length","imgItem","iIndex","activeImgValue","chooseImg","chooseImgTxtCate","syncWeChatImgText","imgTxtList","item","activeImgTxtValue","chooseImgTxt","chooseVoiceCate","voiceList","voiceItem","activeVoiceValue","chooseVoice","chooseVideoCate","videoList","videoItem","activeVideoValue","chooseVideo","Sid","chooseTempCate","TypeName","Counts","tempList","message","temKey","colNum","activeTempValue","template_id","chooseTemp","pushFodder","videoPlayDialogVisible","toSmallProgramData","smallProgramRules","pushMiniProject","staticRenderFns","activeTencent","replyObj","videoAction","replyType","iconName","textReplyData","emojiList","linkText","link","required","trigger","min","max","pattern","appid","pagePath","pagepathTwo","imgCateList","imgTxtCateList","voiceCateList","uploadLoading","videoCateList","playVideoValue","tempCateList","tempGroupList","pagePathTwo","_this","loadMessageList","getFodderList","Number","getAllFodderList","params","Input","Name","Value","AppReplyType","ActionName","ApplicationID","Aid","GetFodderCate","res","ErrorCode","output","$message","console","log","ErrorMessage","groupId","GroupID","GetFodderList","GetAllFodderList","replyindex","getCateList","loadCategoryList","TenantID","error","tab","event","formName","$refs","validate","valid","linkStr","resetFields","miniprogramForm","miniprogramStr","clickCate","imgObj","imgTxtObj","loadType","loadImgTextFormWechat","info","voiceObj","playVoiceEl","pause","listenVoice","isPlay","paused","play","clickVideo","playVideo","grouList","forEach","temp","template_category","push","Math","ceil","filterTempGroupList","clickTemp","routeData","$router","resolve","parentcode","localStorage","setItem","window","open","href","GetAppMessageTemplateList","result","filter","includes","ApplicationId","Status","GetAppMessageTemplateType","WXID","Image","src","width","height","JSON","parse","decrypt","getItem","newVal","oldVal","pushChooseImg","pushChooseImgTxt","pushChooseVoice","pushChooseVideo","pushChooseTemplate","pushMiniCoverImg","$confirm","confirmButtonText","cancelButtonText","type","then","param","uploadType","file","size","reader","FileReader","readAsDataURL","onload","e","target","obj","UploadImg","success","clearFiles","isJPG","isLt2M","isVoice","isLT200M","components","tinymce","component","DEFAULT_MIN_MERGE","DEFAULT_MIN_GALLOPING","minRunLength","n","r","makeAscendingRun","array","lo","hi","compare","runHi","reverseRun","t","binaryInsertionSort","start","mid","pivot","left","right","gallopLeft","hint","lastOffset","maxOffset","offset","tmp","m","gallopRight","TimSort","runStart","runLength","minGallop","stackSize","pushRun","_runStart","_runLength","mergeRuns","mergeAt","forceMergeRuns","i","start1","length1","start2","length2","k","mergeLow","mergeHigh","cursor1","cursor2","dest","count1","count2","exit","_minGallop","Error","customCursor","customDest","sort","remaining","ts","minRun","force","module","exports","Clip","color","_util","isArrayLike","arraySlice","Array","prototype","slice","defaultGetter","defaultSetter","interpolateNumber","p0","p1","percent","interpolateString","interpolateArray","out","arrDim","len","len2","j","fillArr","arr0","arr1","arr0Len","arr1Len","isPreviousLarger","call","isNaN","isArraySame","catmullRomInterpolateArray","p2","p3","t2","t3","catmullRomInterpolate","v0","v1","cloneValue","ret","rgba2String","rgba","floor","join","getArrayDim","keyframes","lastValue","createTrackClip","animator","easing","oneTrackDone","propName","forceAnimate","getter","_getter","setter","_setter","useSpline","trackLen","trackMaxTime","firstVal","isValueArray","isValueColor","isValueString","a","b","time","kfPercents","kfValues","prevValue","isAllValueEqual","colorArray","_target","w","lastFrame","lastFramePercent","onframe","frame","range","clip","life","loop","_loop","delay","_delay","ondestroy","Animator","_tracks","_clipCount","_doneList","_onframeList","_clipList","when","props","tracks","hasOwnProperty","during","_paused","resume","isPaused","_doneCallback","doneList","lastClip","self","clipCount","animation","addClip","oldOnFrame","stop","forwardToLast","clipList","removeClip","done","cb","getClips","_default","eventUtil","GestureMgr","_track","dist","pointPair","dx","dy","sqrt","center","constructor","recognize","root","_doTrack","_recognize","clear","touches","trackItem","points","touch","pos","clientToLocal","zrX","zrY","eventName","recognizers","gestureInfo","pinch","track","pinchEnd","pinchPre","pinchScale","isFinite","pinchCenter","pinchX","pinchY","Diff","buildValues","diff","newArr","oldArr","componentPos","componentLen","newPos","oldPos","removed","indices","count","added","clonePath","path","equals","newLen","oldLen","editLength","maxEditLength","bestPath","extractCommon","execEditLength","diagonalPath","basePath","addPath","removePath","undefined","canAdd","canRemove","pushComponent","last","commonCount","tokenize","arrayDiff","matrix","vector","mIdentity","identity","EPSILON","isNotAroundZero","val","Transformable","opts","position","rotation","scale","origin","transformableProto","transform","needLocalTransform","scaleTmp","updateTransform","parent","parentHasTransform","create","getLocalTransform","mul","copy","globalScaleRatio","getGlobalScale","relX","relY","sx","sy","invTransform","invert","setTransform","ctx","dpr","restoreTransform","tmpTransform","originTransform","setLocalTransform","atan2","decomposeTransform","transformCoordToLocal","x","y","v2","applyTransform","transformCoordToGlobal","rotate","Displayable","BoundingRect","zrUtil","imageHelper","ZImage","brush","prevEl","image","bind","_image","createOrUpdateImage","isImageReady","aspect","sWidth","sHeight","drawImage","text","drawRectText","getBoundingRect","_rect","inherits","ArrayCtor","Float32Array","m1","m2","out0","out1","out2","out3","out4","out5","translate","v","rad","aa","ac","atx","ab","ad","aty","st","sin","ct","cos","vx","vy","det","clone","Style","Element","RectText","__clipPaths","__dirty","invisible","z","z2","zlevel","draggable","dragging","silent","culling","cursor","rectHover","progressive","incremental","beforeBrush","afterBrush","contain","rectContain","traverse","context","coord","rect","dirty","__dirtyText","__zr","refresh","animateStyle","animate","attrKV","set","setStyle","useStyle","calculateTextPosition","mixin","util","colorTool","pathTool","_parseSVG","parseSVG","_Group","Group","_Path","Path","_Image","_CompoundPath","CompoundPath","_Text","Text","_IncrementalDisplayable","IncrementalDisplayable","_Arc","Arc","_BezierCurve","BezierCurve","_Circle","Circle","_Droplet","Droplet","_Ellipse","Ellipse","_Heart","Heart","_Isogon","Isogon","_Line","Line","_Polygon","Polygon","_Polyline","Polyline","_Rect","Rect","_Ring","Ring","_Rose","Rose","_Sector","Sector","_Star","Star","_Trochoid","Trochoid","_LinearGradient","LinearGradient","_RadialGradient","RadialGradient","_Pattern","Pattern","_BoundingRect","arrySlice","Eventful","eventProcessor","_$handlers","_$eventProcessor","normalizeQuery","host","query","eventful","handler","isOnce","h","wrap","one","callAtLast","zrEventfulCallAtLast","lastIndex","lastWrap","splice","isSilent","off","newList","l","args","arguments","argLen","hItem","apply","afterTrigger","triggerWithContext","curve","vec2","bbox","_config","devicePixelRatio","CMD","M","L","C","Q","A","Z","R","min2","max2","mathMin","mathMax","mathCos","mathSin","mathSqrt","mathAbs","abs","hasTypedArray","PathProxy","notSaveData","_saveData","_ctx","_xi","_yi","_x0","_y0","_ux","_uy","_len","_lineDash","_dashOffset","_dashIdx","_dashSum","setScale","segmentIgnoreThreshold","getContext","beginPath","moveTo","addData","lineTo","exceedUnit","_needsDash","_dashedLineTo","bezierCurveTo","x1","y1","x2","y2","x3","y3","_dashedBezierTo","quadraticCurveTo","_dashedQuadraticTo","arc","cx","cy","startAngle","endAngle","anticlockwise","arcTo","radius","closePath","x0","y0","fill","toStatic","stroke","setLineDash","lineDash","lineDashSum","setLineDashOffset","setData","appendPath","appendSize","appendPathData","cmd","_expandData","_prevCmd","newData","dash","idx","dashSum","nDash","cubicAt","bezierLen","tmpLen","MAX_VALUE","xi","yi","fromLine","fromCubic","fromQuadratic","rx","ry","fromArc","rebuildPath","d","ux","uy","theta","dTheta","psi","fs","scaleX","scaleY","isEllipse","env","wx","getSystemInfoSync","browser","os","node","wxa","canvasSupported","svgSupported","touchEventsSupported","domSupported","document","worker","navigator","detect","userAgent","ua","firefox","match","ie","edge","weChat","test","version","createElement","SVGRect","pointerEventsSupported","init","onClick","editorValue","Editor","String","default","Boolean","plugins","toolbar","language_url","language","skin_url","menubar","statusbar","forced_root_block","images_upload_handler","created","mounted","methods","newValue","$emit","fixShadow","_constant","ContextCachedBy","STYLE_COMMON_PROPS","extendFrom","createLinearGradient","global","canvasGradient","createRadialGradient","opacity","fillOpacity","strokeOpacity","lineDashOffset","shadowBlur","shadowOffsetX","shadowOffsetY","lineWidth","strokeNoScale","font","textFont","fontStyle","fontWeight","fontSize","fontFamily","textTag","textFill","textStroke","textWidth","textHeight","textStrokeWidth","textLineHeight","textPosition","textRect","textOffset","textAlign","textVerticalAlign","textDistance","textShadowColor","textShadowBlur","textShadowOffsetX","textShadowOffsetY","textBoxShadowColor","textBoxShadowBlur","textBoxShadowOffsetX","textBoxShadowOffsetY","transformText","textRotation","textOrigin","textBackgroundColor","textBorderColor","textBorderWidth","textBorderRadius","textPadding","rich","truncate","blend","el","prevStyle","notCheckCache","__attrCachedBy","STYLE_BIND","prop","styleName","fillStyle","strokeStyle","globalAlpha","globalCompositeOperation","hasStroke","getLineScale","hasFill","otherStyle","overwrite","newStyle","getGradient","method","colorStops","addColorStop","styleProto","debugMode","scrollHeight","getFile","posterSetData","qrcode","avatar","nickname","Reply","Regular","Complete","zrender","GetAppData","canvasGroup","canvasBgImg","Effect","canvasZoom","idCount","url","display","shape","fontcolor","fontsize","fontfamily","fontothe","Prize","Help","bgimg","fontFamilyData","loadCanvasData","$on","body","editData","Bus","Item","posterBg","getElementById","img","setAttribute","noavatarImg","id","parseInt","TenantId","PosterId","GetPosterModel","BgImg","QrCode","Avatar","Nickname","BgImgWh","imgData","fileList","stringify","getBase64","raw","upload","Promise","reject","imgResult","onerror","onloadend","crdcodeImg","element","container","zr","group","unique","parseFloat","imgdata","add","ev","topTarget","PI","clipPath","setClipPath","smText","painter","getRenderedCanvas","toDataURL","arr","$export","INCLUDES","P","F","searchString","indexOf","_path","createFromString","isString","extend","defaults","trim","each","DILIMITER_REG","parseXML","svg","parser","DOMParser","parseFromString","nodeType","firstChild","nodeName","toLowerCase","nextSibling","SVGParser","_defs","_root","_isDefine","_isText","xml","opt","viewBox","getAttribute","parseAttributes","viewBoxRect","viewBoxTransform","child","_parseNode","viewBoxArr","split","makeViewBoxTransform","ignoreViewBox","elRoot","ignoreRootClip","xmlNode","parentGroup","defineParsers","def","nodeParsers","_parseText","_textX","_textY","textContent","inheritStyle","g","setShape","circle","line","ellipse","parsePoints","polygon","polyline","gradient","_parseGradientColorStops","stopColor","__inheritedStyle","pointsString","list","attributesMap","defs","onlyInlineStyle","zrStyle","isTextEl","parseTransformAttribute","parseStyleAttribute","svgAttrName","attrValue","elFillProp","elStrokeProp","elStyle","getPaint","elPropName","textBaseline","urlRegex","str","urlMatch","transformRegex","replace","transformOps","warn","styleRegex","styleRegResult","styleList","exec","viewBoxScale","viewBoxPosition","_event","Dispatcher","requestAnimationFrame","Animation","options","stage","_clips","_running","_time","_pausedTime","_pauseStart","addAnimator","clips","removeAnimator","_update","Date","getTime","delta","deferredEvents","deferredClips","step","_needsRemove","pop","fire","update","_startLoop","isFinished","transformPath","vMag","vRatio","u","vAngle","acos","processArc","fa","psiDeg","xp","yp","lambda","f","cxp","cyp","commandReg","numberReg","createPathProxyFromString","prevCmd","cpx","cpy","subpathX","subpathY","cmdList","cmdText","cmdStr","charAt","p","pLen","ctlPtx","ctlPty","pathData","createPathOptions","pathProxy","buildPath","extendFromString","mergePath","pathEls","pathList","pathEl","createPathProxy","__dirtyPath","pathBundle","wxQrCodePosterListModel","EventName","back","formInline","GetQrCodePosterDetaila","EditPoster","addQrCode","dataList","scopedSlots","_u","fn","scope","row","difference","olddifference","nativeOn","preventDefault","viewRow","GetQrCodeRow","GetQrCodeSave","deleteRow","currentPage","pagesize","total","handleSizeChange","handleCurrentChange","GetQrCodeRowVisible","dialogWidth","BeautifyQrCodeVisible","iframeUrl","rules","DrainageMethod","Method","remoteMethod","loading","QrCodeVal","NickName","QrCodeUrl","subGetQrCodeRow","GetQrCodeSaveTow","beautifyQrCode","addQrCodeVisble","optionFansList","sceneId","GetQrCodePosterDetailaList","WxQrCodePosterList","page","aid","pagename","pageinfo","OpenID","Sex","SarchFansList","$forceUpdate","GetQrCodeData","SaveQrCodePosterDetail","GetCodeDecoder","status","rows","WxQrCodePosterDetail","SceneId","GetSaveQrCode","alink","download","click","fails","defined","quot","createHTML","string","tag","attribute","S","NAME","O","Displayble","IncrementalDisplayble","_displayables","_temporaryDisplayables","_cursor","notClear","clearDisplaybles","addDisplayable","displayable","notPersistent","addDisplayables","displayables","eachPendingDisplayable","Infinity","childRect","union","localPos","_core","textContain","textHelper","arrayJoin","NONE","mathRound","round","PI2","degree","round4","isAroundZero","pathHasFill","isText","pathHasStroke","svgEl","attr","attrXLink","setAttributeNS","bindStyle","strokeWidth","strokeScale","lineCap","lineJoin","miterLimit","pathDataToString","dataLength","nData","clockwise","dThetaPositive","isCircle","unifiedTheta","large","svgPath","__svgEl","subPixelOptimize","pathStr","svgTextDrawRectText","removeOldTextNode","svgImage","HTMLImageElement","dw","dh","__imageSrc","svgText","_tmpTextHostRect","_tmpTextBoxPos","_tmpTextTransform","TEXT_ALIGN_TO_ANCHRO","middle","hostRect","elTransform","needTransformTextByHostEl","normalizeTextStyle","needDrawText","textSvgEl","__textSvgEl","textSvgElStyle","DEFAULT_FONT","computedFont","__computedFont","__styleFont","contentBlock","__textCotentBlock","parsePlainText","outerHeight","lineHeight","getBoxPosition","baseX","baseY","setTextTransform","boxY","adjustTextY","textX","textY","getTextXForPadding","canCacheByTextString","tspanList","__tspanList","tspanOriginLen","__canCacheByTextString","__text","updateTextLocation","textLines","lines","nTextLines","tspan","singleLineText","__zrText","innerHTML","appendChild","createTextNode","removeChild","parentNode","scaleAndAdd","sub","lenSquare","lengthSquare","div","dot","s","normalize","distance","distanceSquare","distSquare","negate","lerp","LRU","kCSSColorTable","clampCssByte","clampCssAngle","clampCssFloat","parseCssInt","parseCssFloat","cssHueToRgb","lerpNumber","setRgba","copyRgba","colorCache","lastRemovedArr","putToCache","colorStr","rgbaArr","put","cached","get","op","ep","fname","substr","alpha","hsla2rgba","iv","hsla","rgba2hsla","H","G","B","vMin","vMax","deltaR","deltaG","deltaB","lift","level","colorArr","toHex","toString","fastLerp","normalizedValue","colors","leftIndex","rightIndex","leftColor","rightColor","dv","fastMapToColor","fullOutput","mapToColor","modifyHSL","modifyAlpha","arrColor","wxGetPosterList","drainageMethod","formDialogVisible","modelTemplateTitle","FormListData","formatDrainageMethod","formatQrCodeType","EventEndTime","QrCodeType","editPosterRow","UpOrStop","ScanCodeRow","modfiyRow","ScanCodeRowVisible","replyDisplay","ScanCodeonSubmit","pickerOptions","Remarks","Ldentification","TagsId","WxName","WxId","addLabel","onSubmit","sortid","isActive","TagidData","drainageMethodOptions","methodOptions","aidOptions","Inquire","AccountList","onPick","maxDate","minDate","disabledDate","now","Groups","eventEndTime","ScanStatistics","GetSarchTagsAsync","column","PromotePosterListId","GetVerifyData","datares","SavePosterList","expireDays","resData","$prompt","saveTag","catch","vaule","saveData","SaveSynchronousTagsAsync","SarchTags","replyTabs","Gradient","easingFuncs","_life","_initialized","gap","onrestart","globalTime","deltaTime","_startTime","easingFunc","schedule","restart","remainder","eventType","arg","r0","globalCoord","logError","_vector","v2Create","v2DistSquare","mathPow","pow","EPSILON_NUMERIC","THREE_SQRT","ONE_THIRD","_v0","_v1","_v2","onet","cubicDerivativeAt","cubicRootAt","roots","c","t1","disc","K","discSqrt","Y1","Y2","T","ASqrt","cubicExtrema","extrema","cubicSubdivide","p01","p12","p23","p012","p123","p0123","cubicProjectPoint","prev","next","d1","d2","interval","_t","quadraticAt","quadraticDerivativeAt","quadraticRootAt","quadraticExtremum","divider","quadraticSubdivide","quadraticProjectPoint","fixClipWithShadow","unitX","unitY","ZText","_graphic","MARK_UNUSED","MARK_USED","Definable","zrId","svgRoot","tagNames","markLabel","domName","_zrId","_svgRoot","_tagNames","_markLabel","_domName","nextId","getDefs","isForceCreating","getElementsByTagName","insertBefore","contains","children","onUpdate","dom","addDom","removeDom","getDoms","doms","tagName","tags","concat","markAllUnused","that","markUsed","removeUnused","getSvgProxy","getTextSvgElement","getSvgElement","dStep","deg","xStart","yStart","ri","end","location","offsetX","offsetY","num","smoothSpline","smoothBezier","smooth","controlPoints","smoothConstraint","cp1","cp2","r1","r2","r3","r4","content","activeName","GetQrCodePosterStatistical","HeadImg","NewUser","UpdatedTime","wxFansList","FatherId","Type","returnFalse","createDom","newDom","createCanvas","getWidth","getHeight","newDomStyle","top","Layer","isObject","domStyle","onselectstart","domBack","ctxBack","config","clearColor","motionBlur","lastFrameAlpha","__used","__drawIndex","__startIndex","__endIndex","getElementCount","initContext","createBackBuffer","resize","clearAll","clearColorGradientOrPattern","haveMotionBLur","clearRect","__canvasGradient","getCanvasPattern","save","fillRect","restore","globalImageCache","findExistImage","newImageOrSrc","cachedImgObj","hostEl","cbPayload","__zrImageSrc","pendingWrap","pending","imageOnLoad","__cachedImgObj","_dom","isCanvasEl","transformCoordWithViewport","isDomLevel2","addEventListener","MOUSE_EVENT_REG","_calcOut","calculate","calculateZrXY","layerX","layerY","getBoundingClientRect","ex","clientX","ey","clientY","box","getNativeEvent","normalizeEvent","isTouch","targetTouches","changedTouches","zrDelta","wheelDelta","detail","button","which","attachEvent","removeEventListener","detachEvent","stopPropagation","cancelBubble","returnValue","isMiddleOrRightButtonOnMouseUpDown","notLeftMouse","v2Distance","interpolate","isLoop","segs","w2","w3","_fourPointsTransform","buildTransformer","EVENT_SAVED_PROP","transformLocalCoord","elFrom","elTarget","inX","inY","inverse","saved","markers","prepareCoordMarkers","transformer","preparePointerTransformer","propLR","propTB","marker","stl","idxLR","idxTB","cssText","transformerName","oldSrcCoords","srcCoords","oldCoordTheSame","destCoords","ii","offsetLeft","offsetTop","toUpperCase","AdvancedSettingsData","participate","AreaData","receive","antiBrush","areaDisplay","area","genderDisplay","gender","Display","unit","people","complaint","openId","multiple","lazy","lazyLoad","GetRegionInfoListAsync","nodes","Code","ShortName","loadtree","ParticipateData","Participate","loadListData","Receive","AntiBrush","loadtreeItme","datat","paramsa","$includes","_curve","containStroke","guid","Handler","Storage","Painter","HandlerProxy","useVML","painterCtors","canvas","instances","ZRender","dispose","getInstance","registerPainter","Ctor","delInstance","storage","rendererType","renderer","vml","handerProxy","getViewportRoot","flush","_needsRefresh","oldDelFromStorage","delFromStorage","oldAddToStorage","addToStorage","removeSelfFromZr","addSelfToZr","getId","addRoot","remove","delRoot","configLayer","zLevel","setBackgroundColor","backgroundColor","refreshImmediately","_needsRefreshHover","triggerRendered","refreshHoverImmediately","addHover","elMirror","refreshHover","removeHover","clearHover","clearAnimation","pathToImage","setCursorStyle","cursorStyle","findHover","eventHandler","notificationSettingsData","typeName","Notification","BUILTIN_OBJECT","TYPED_ARRAY","objToString","Object","arrayProto","nativeForEach","nativeFilter","nativeSlice","nativeMap","map","nativeReduce","reduce","$override","source","typeStr","isPrimitive","from","isDom","merge","targetProp","sourceProp","isArray","isBuiltInObject","mergeAll","targetAndSources","overlay","clazz","baseClazz","clazzPrototype","superClass","memo","find","func","curry","isFunction","isTypedArray","ownerDocument","eqNaN","retrieve","values","retrieve2","value0","value1","retrieve3","value2","Function","normalizeCssArray","assert","condition","primitiveKey","setAsPrimitive","HashMap","isArr","thisMap","visit","createHashMap","concatArray","newArray","noop","removeKey","RefreshPrize","tableData","PrizeName","Mobile","Store","StoreDate","StoreTime","CreatedTime","formatStatus","onModify","awardNotice","nickName","dialogVisible","handleClose","SendDate","Keyword","Winning","textarea","SendWxText","onModifyVisible","modelData","SaveWxQrCodeReservation","form","listdata","loadData","pages","WxQrCode","prizeList","noMore","setTimeout","getMessageRecordList","OpenId","Reads","MessageRecordList","datalist","HttpClient","ServerWxHost","GetWxQrCodeReservationList","linear","quadraticIn","quadraticOut","quadraticInOut","cubicIn","cubicOut","cubicInOut","quarticIn","quarticOut","quarticInOut","quinticIn","quinticOut","quinticInOut","sinusoidalIn","sinusoidalOut","sinusoidalInOut","exponentialIn","exponentialOut","exponentialInOut","circularIn","circularOut","circularInOut","elasticIn","asin","elasticOut","elasticInOut","backIn","backOut","backInOut","bounceIn","bounceOut","bounceInOut","shadowColor","renderText","getStroke","SHADOW_PROPS","PLAIN_TEXT","WILL_BE_RESTORED","LN2","determinant","rank","rowStart","rowMask","colMask","detCache","cacheKey","fullRank","colStart","subRowMask","subRowStart","sum","colLocalIdx","colTag","mA","vh","srcPointX","srcPointY","pk","normalizeRadian","angle","svgURI","createElementNS","windingLine","dir","x_","polyHelper","shadowTemp","orignalBrush","modified","clipPaths","_zrender","BasicInformationData","addgroup","expirationDate","groupList","keyWords","reward","labelDisplay","activityTime","day","hour","minute","loadGroupsList","GetPosterGroupsListAsync","EventStartTime","KeyWords","Reward","Label","PosterValidity","AppAccount","_export","_a","_b","v2ApplyTransform","other","lt","rb","lb","rt","maxX","maxY","calculateTransform","intersect","ax0","ax1","ay0","ay1","bx0","bx1","by0","by1","plain","msRequestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","v2Min","v2Max","v2Scale","v2Add","v2Clone","v2Sub","constraint","prevPoint","nextPoint","cps","point","d0","cp0","shift","subPixelOptimizeLine","outputShape","inputShape","subPixelOptimizeRect","originX","originY","originWidth","originHeight","positiveOrNegative","doubledPosition","tmpRect","ClippathManager","updateDom","textEl","parentEl","clipPathEl","svgProxy","cloneNode","_textDom","anObject","toObject","toLength","toInteger","advanceStringIndex","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","it","REPLACE","$replace","maybeCallNative","searchValue","replaceValue","regexp","functionalReplace","fullUnicode","unicode","results","matchStr","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","groups","replacerArgs","replacement","getSubstitution","tailPos","symbols","ch","capture","roundRectHelper","VALID_TEXT_ALIGN","VALID_TEXT_VERTICAL_ALIGN","bottom","SHADOW_STYLE_COMMON_PROPS","_tmpTextPositionResult","_tmpBoxPositionResult","normalizeStyle","makeFont","renderRichText","renderPlainText","needDrawBg","needDrawBackground","checkCache","cachedByMe","styleFont","boxPos","applyTextRotation","outerWidth","boxX","adjustTextX","drawBackground","propItem","styleProp","ctxProp","textStrokeWidthPrev","strokeWidthChanged","strokeChanged","getFill","strokeText","fillText","parseRichText","drawRichText","contentWidth","xLeft","lineTop","xRight","token","tokens","tokenCount","usedWidth","lineXLeft","lineXRight","placeToken","tokenStyle","isLineHolder","setCtx","isPlainBg","originalGlobalAlpha","onBgImageLoaded","parsePercent","maxValue","lastIndexOf","posterInfo","cancle","isEditPoster","buttonDisplay","warning","wxQrCode","GetSavePoster","BasicInformation","PosterSet","AdvancedSettings","NotificationSettings","MissionRewards","PrizeVerification","vmlCore","comma","imageTransformPrefix","Z2","ZLEVEL_BASE","Z_BASE","initRootElStyle","coordsize","coordorigin","encodeHtmlAttribute","rgb2Str","append","getZIndex","setColorAndOpacity","getColorAndAlpha","updateFillNode","zrEl","gradientType","focus","expansion","rectWidth","rectHeight","dimension","stops","cs1","cs2","colorAndAlphaList","colorAndAlpha","color1","color2","opacity1","opacity2","focusposition","updateStrokeNode","dashstyle","updateFillAndStroke","vmlEl","isFill","createNode","nPoint","brushVML","vmlRoot","_vmlEl","needTransform","strokeEl","weight","zIndex","removeRectText","onRemove","onAdd","appendRectText","isImage","ow","oh","_imageSrc","_imageWidth","_imageHeight","imageRuntimeStyle","runtimeStyle","oldRuntimeWidth","oldRuntimeHeight","sw","sh","hasCrop","doc","vmlElStyle","hasRotation","transformFilter","padding","imageEl","_imageEl","cropEl","_cropEl","imageELStyle","tmpImage","overflow","cropElStyle","filterStr","textMeasureEl","DEFAULT_STYLE_NORMAL","fontStyleCache","fontStyleCacheCount","MAX_FONT_CACHE_SIZE","fontEl","getFontStyle","fontString","variant","fontVariant","family","offsetWidth","fromTextEl","textLine","align","verticalAlign","textPathEl","skewEl","textVmlEl","_textVmlEl","textpathok","to","coords","textVmlElStyle","toFixed","proto","spaces","space","non","ltrim","RegExp","rtrim","exporter","KEY","ALIAS","exp","FORCE","TYPE","someVectorAt","isTangent","cpx2","cpy2","cpx1","cpy1","pointAt","tangentAt","ox","oy","timsort","shapeCompareFunc","_roots","_displayList","_displayListLen","getDisplayList","includeIgnore","updateDisplayList","displayList","_updateAndAddDisplayable","ignore","beforeUpdate","afterUpdate","userSetClipPath","currentClipPath","parentClipPath","isGroup","_children","__storage","addChildrenToStorage","delChildrenFromStorage","_renderList","displayableSortFunc","GradientManager","addWithoutUpdate","svgElement","fillOrStroke","hex","addModifyForm","formData","seche","viewlist","statistical","posterSeting","radian","ShadowManager","hasShadow","_shadowDom","_shadowDomId","domChild","blur","stdDx","stdDy","stdDeviation","Animatable","animators","animateTo","animatable","reverse","stopAnimation","animateToShallow","objShallow","propertyCount","setAttrByPath","animatingShape","pathSplitted","animateFrom","has","cof","inheritIfRequired","toPrimitive","gOPN","gOPD","dP","$trim","NUMBER","$Number","Base","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","charCodeAt","NaN","code","digits","valueOf","keys","bus","_subPixelOptimize","subPixelOptimizeOutputShape","Draggable","_dragStart","_drag","_dragEnd","draggingTarget","_draggingTarget","_x","_y","dispatchToElement","drift","dropTarget","lastDropTarget","_dropTarget","pathContain","pathProxyForDraw","strokeContainThreshold","hasFillGradient","hasStrokeGradient","hasFillPattern","hasStrokePattern","_fillGradient","_strokeGradient","ctxLineDash","shapeCfg","inBundle","needsUpdateRect","rectWithStroke","_rectWithStroke","lineScale","dirtyPath","__clipTarget","animateShape","Sub","defaultShape","thisShape","TOUCH_CLICK_DELAY","globalEventSupported","localNativeListenerNames","mouseHandlerNames","touchHandlerNames","pointerEventNameMap","pointerdown","pointerup","pointermove","pointerout","pointerHandlerNames","nm","mouse","pointer","globalNativeListenerNames","eventNameFix","isPointerFromTouch","pointerType","setTouchTimer","touching","touchTimer","clearTimeout","markTouch","zrByTouch","normalizeGlobalEvent","instance","FakeGlobalEvent","isLocalEl","elTmp","isLocal","domBelongToZr","painterRoot","currentTarget","fakeGlobalEventProto","stopImmediatePropagation","localDOMHandlers","mousedown","_mayPointerCapture","mousemove","downPoint","togglePointerCapture","mouseup","mouseout","_pointerCapturing","zrEventControl","toElement","relatedTarget","zrIsToLocalDOM","touchstart","_lastTouchMoment","processGesture","touchmove","touchend","globalDOMHandlers","pointerCaptureReleasing","mountLocalDOMEventListeners","domHandlers","nativeEventName","mountSingleDOMEventListener","mountGlobalDOMEventListeners","mount","nativeEventListener","listener","listenerOpts","domTarget","unmountDOMEventListeners","isPointerCapturing","globalHandlerScope","_globalHandlerScope","DOMHandlerScope","HandlerDomProxy","_localHandlerScope","handlerDomProxyProto","setCursor","eventTool","SILENT","makeEventPacket","eveType","targetInfo","gestureEvent","stopEvent","EmptyProxy","handlerNames","proxy","_hovered","_lastX","_lastY","_gestureMgr","setHandlerProxy","isHover","isOutsideBoundary","handlerInstance","isOutside","lastHovered","lastHoveredTarget","hovered","hoveredTarget","eventControl","dispatch","eventArgs","eventPacket","eachOtherLayer","layer","exclude","hoverCheckResult","gestureMgr","_downEl","_downPoint","_upEl","doCreateNode","urn","win","vmlInited","namespaces","zrvml","initVML","styleSheets","createStyleSheet","addRule","paths","_updatePathDirty","LinkedList","head","tail","linkedListProto","insert","entry","Entry","insertEntry","maxSize","_list","_map","_maxSize","_lastRemovedEntry","LRUProto","leastUsedEntry","hide","show","removeClipPath","cubic","quadratic","isAroundEqual","swapExtrema","windingCubic","nRoots","y0_","y1_","nExtrema","windingQuadratic","y_","windingArc","containPath","isStroke","parseInt10","checkParentAvailable","insertAfter","prevSibling","prepend","SVGPainter","_opts","svgDom","bgRoot","gradientManager","clipPathManager","shadowManager","viewport","_svgDom","_backgroundRoot","_viewport","_visibleList","createMethodNotSupport","getType","getSvgDom","getSvgRoot","getViewportRootOffset","viewportRoot","_paintList","_backgroundNode","bgNode","visibleList","listLen","newVisibleList","prevSvgElement","textSvgElement","_getDefs","_getSize","_width","_height","viewportStyle","whIdx","wh","cwh","plt","prb","defaultView","getComputedStyle","html","encodeURIComponent","outerHTML","repeat","createPattern","idStart","childAt","childOfName","childCount","_doAdd","addBefore","removeAll","eachChild","includeChildren","tmpMat","extremity","fromPoints","xDim","yDim","tx","ty","vec2Min","vec2Max","textWidthCache","textWidthCacheCounter","TEXT_CACHE_MAX","STYLE_REG","measureText","getRichTextRect","getPlainTextRect","halfHeight","adjustTextPositionOnRect","dummyStyle","truncateText","containerWidth","ellipsis","prepareTruncateOptions","truncateSingleLine","maxIterations","minChar","cnCharWidth","ascCharWidth","placeholder","ellipsisWidth","subLength","estimateLength","charCode","getLineHeight","truncOuterHeight","truncOuterWidth","matchedIndex","pushTokens","substring","contentHeight","pendingList","stlPadding","truncateWidth","truncateHeight","tokenHeight","tokenWidth","tokenWidthNotSpecified","percentWidth","bgImg","paddingW","remianTruncWidth","block","isEmptyStr","strs","tokensLen","VMLPainter","vmlViewport","_vmlRoot","_vmlViewport","_firstPaint","__alreadyNotVisible","_getWidth","_getHeight","vmlViewportStyle","currentStyle","clientWidth","paddingLeft","paddingRight","clientHeight","paddingTop","paddingBottom","HOVER_LAYER_ZLEVEL","CANVAS_ZLEVEL","EL_AFTER_INCREMENTAL_INC","INCREMENTAL_INC","isLayerValid","__builtin__","viewRect","isDisplayableCulled","isClipPathChanged","prevClipPaths","doClip","createRoot","domRoot","singleCanvas","_singleCanvas","rootStyle","zlevelList","_zlevelList","layers","_layers","_layerConfig","_needsManuallyCompositing","mainLayer","_domRoot","_hoverlayer","_hoverElements","isSingleCanvas","paintAll","_redrawId","random","_backgroundColor","hoverStyle","__hoverMir","__from","hoverElements","hoverLayer","getLayer","originalEl","_doPaintEl","getHoverLayer","redrawId","_updateLayerStatus","finished","_doPaintList","_compositeManually","eachBuiltinLayer","virtual","layerList","zi","useTimer","startTime","firstEl","dTime","prevElClipPaths","draw","currentLayer","forcePaint","insertLayer","layersMap","prevLayer","prevDom","eachLayer","getLayers","updatePrevLayer","prevZlevel","incrementalLayerCount","_clearLayer","layerConfig","_zlevel","delLayer","_progressiveLayers","clearLayer","imageLayer","pixelRatio","renderToCanvas","shadowBlurSize","leftMargin","rightMargin","topMargin","bottomMargin","pathTransform","ImageShape","imgShape","Refresh","formatIsTemplateId","IsTemplateId","dialogTemplateMessagePopUpVisible","TemplateMessage","prizeSubmit","TemplateMessageDialogconfirm","TemplateId","TemplateMessageDialogcancel","Received","Conditions","SendTemplateTime","Sort","GetQrCodePrizeList","SaveQrCodePrizeService","TemplateMessagePopUp","mathAtan2"],"mappings":"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","file":"js/chunk-39431fe8.b9c54302.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"loading\",rawName:\"v-loading.fullscreen.lock\",value:(_vm.uploadLoading),expression:\"uploadLoading\",modifiers:{\"fullscreen\":true,\"lock\":true}}],attrs:{\"element-loading-text\":\"素材正在上传,请稍后...\",\"element-loading-spinner\":\"el-icon-loading\",\"element-loading-background\":\"rgba(255, 255, 255, 0.6)\"}},[_c('ul',{staticClass:\"replytype-box\"},_vm._l((_vm.replyType),function(typeItem,rtindex){return _c('li',{key:rtindex,class:typeItem.typeID == _vm.momentDataArr[_vm.activeRow].rowArr[_vm.momentDataArr[_vm.activeRow].endRow].typeID ?'activertli':'',on:{\"click\":function($event){return _vm.changeReplyType(rtindex)}}},[_c('span',{class:(\"cms cms-\" + (typeItem.iconName))},[_vm._v(_vm._s(typeItem.label))])])}),0),(_vm.momentDataArr[_vm.activeRow].endRow == 0)?_c('div',[_c('div',{staticClass:\"wxmenucustom-tinymce\"},[_c('tinymce',{attrs:{\"value\":_vm.momentDataArr[_vm.activeRow].rowArr[0].data,\"toolbar\":'',\"disabled\":_vm.disabled},on:{\"input\":_vm.getEditValue}})],1),_c('div',{staticClass:\"text-toolbar\"},[_c('el-popover',{attrs:{\"placement\":\"top\",\"trigger\":\"click\"},on:{\"show\":_vm.GetCustomEmoji}},[_c('el-tabs',{staticStyle:{\"width\":\"354px\"},attrs:{\"tab-position\":\"top\",\"stretch\":true},on:{\"tab-click\":_vm.handleClick},model:{value:(_vm.activeEmoji),callback:function ($$v) {_vm.activeEmoji=$$v},expression:\"activeEmoji\"}},[_vm._l((_vm.emojiList),function(emojiGroup,name,index){return [_c('el-tab-pane',{key:index,attrs:{\"label\":name,\"name\":name}},[_c('div',{staticStyle:{\"width\":\"354px\"}},[_c('el-scrollbar',{staticStyle:{\"height\":\"120px\"}},_vm._l((emojiGroup),function(emoji,eName,eIndex){return _c('span',{key:eIndex,staticClass:\"emoji-item\",attrs:{\"title\":eName},on:{\"click\":function($event){return _vm.selectEmoji([eName,emoji])}}},[_vm._v(_vm._s(emoji))])}),0)],1)])]})],2),_c('el-button',{attrs:{\"slot\":\"reference\"},slot:\"reference\"},[_c('i',{staticClass:\"cms cms-emoji\"})])],1),_c('el-popover',{attrs:{\"placement\":\"top\",\"trigger\":\"hover\"}},[_c('el-form',{ref:\"linkData\",staticStyle:{\"padding\":\"20px 15px 0 0\"},attrs:{\"model\":_vm.linkData,\"rules\":_vm.linkDataRules,\"label-width\":\"80px\"}},[_c('el-form-item',{attrs:{\"label\":\"链接文字\",\"prop\":\"linkText\"}},[_c('el-input',{model:{value:(_vm.linkData.linkText),callback:function ($$v) {_vm.$set(_vm.linkData, \"linkText\", $$v)},expression:\"linkData.linkText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"链接地址\",\"prop\":\"link\"}},[_c('el-input',{model:{value:(_vm.linkData.link),callback:function ($$v) {_vm.$set(_vm.linkData, \"link\", $$v)},expression:\"linkData.link\"}})],1),_c('el-form-item',[_c('div',{staticClass:\"btn btn-primary\",staticStyle:{\"margin-right\":\"15px\"},on:{\"click\":function($event){return _vm.pushLinkToMenuData('linkData')}}},[_vm._v(\"确定\")]),_c('div',{staticClass:\"btn btn-default\",on:{\"click\":function($event){return _vm.resetLinkForm('linkData')}}},[_vm._v(\"取消\")])])],1),_c('el-button',{attrs:{\"slot\":\"reference\"},slot:\"reference\"},[_c('i',{staticClass:\"cms cms-link\"})])],1),_c('el-popover',{attrs:{\"placement\":\"top\",\"trigger\":\"hover\"}},[_c('div',{staticClass:\"miniprogram-group\",staticStyle:{\"width\":\"420px\"}},[_c('div',{staticClass:\"cms cms-tips-fill tips-box\"},[_vm._v(\"\\n 添加的小程序需要与当前公众号有关联关系,如果没有关联关系,前往微信公众号平台关联。\\n \"),_c('a',{attrs:{\"href\":\"#\"}},[_vm._v(\"立即关联\")])]),_c('el-form',{ref:\"miniprogram\",staticStyle:{\"padding\":\"20px 15px 0 0\"},attrs:{\"model\":_vm.miniprogram,\"rules\":_vm.miniprogramRules,\"label-width\":\"140px\"}},[_c('el-form-item',{attrs:{\"label\":\"链接文字\",\"prop\":\"linkText\"}},[_c('el-input',{model:{value:(_vm.miniprogram.linkText),callback:function ($$v) {_vm.$set(_vm.miniprogram, \"linkText\", $$v)},expression:\"miniprogram.linkText\"}})],1),_c('el-form-item',{attrs:{\"label\":\"小程序APPID\",\"prop\":\"appid\"}},[_c('el-input',{attrs:{\"placeholder\":\"请确保公众号已经绑定该小程序!\"},model:{value:(_vm.miniprogram.appid),callback:function ($$v) {_vm.$set(_vm.miniprogram, \"appid\", $$v)},expression:\"miniprogram.appid\"}})],1),_c('el-form-item',{attrs:{\"label\":\"小程序页面路径\",\"prop\":\"pagePath\"}},[_c('el-input',{attrs:{\"placeholder\":\"请填写正确的路径\"},model:{value:(_vm.miniprogram.pagePath),callback:function ($$v) {_vm.$set(_vm.miniprogram, \"pagePath\", $$v)},expression:\"miniprogram.pagePath\"}})],1),_c('el-form-item',{attrs:{\"label\":\"备用网页url\"}},[_c('el-input',{attrs:{\"placeholder\":\"请填写完整的URL\"},model:{value:(_vm.miniprogram.pagepathTwo),callback:function ($$v) {_vm.$set(_vm.miniprogram, \"pagepathTwo\", $$v)},expression:\"miniprogram.pagepathTwo\"}})],1),_c('el-form-item',[_c('div',{staticClass:\"btn btn-primary\",staticStyle:{\"margin-right\":\"15px\"},on:{\"click\":function($event){return _vm.pushMiniToMenuData('miniprogram')}}},[_vm._v(\"确定\")]),_c('div',{staticClass:\"btn btn-default\",on:{\"click\":function($event){return _vm.resetLinkForm('miniprogram')}}},[_vm._v(\"取消\")])])],1)],1),_c('el-button',{attrs:{\"slot\":\"reference\"},slot:\"reference\"},[_c('i',{staticClass:\"cms cms-miniprogram\"})])],1),_c('div',{staticClass:\"fans-box\",on:{\"click\":_vm.pushFansName}},[_vm._v(\"[粉丝昵称]\")]),_c('div',[_vm._v(\"按下Shift+Enter键换行\")])],1)]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 1)?_c('div',{staticClass:\"wximage-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[1].data != '')?_c('div',{staticClass:\"image-group\"},[_c('div',{staticClass:\"imgleft-box\"},[_c('img',{attrs:{\"src\":_vm.momentDataArr[_vm.activeRow].rowArr[1].data.MediaUrl,\"alt\":_vm.momentDataArr[_vm.activeRow].rowArr[1].data.MediaName}})]),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeImgCate)}}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('ul',{staticClass:\"addimage-group\"},[_c('li',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeImgCate)}}},[_c('i',{staticClass:\"cms cms-file\"}),_c('p',[_vm._v(\"从图片素材中选\")])]),_c('li',[_c('el-upload',{ref:\"upload_el\",staticClass:\"upload-demo\",attrs:{\"action\":\"\",\"limit\":1,\"http-request\":_vm.UploadImage,\"before-upload\":_vm.beforeAvatarUpload,\"show-file-list\":false}},[_c('i',{staticClass:\"cms cms-add\"}),_c('p',[_vm._v(\"上传图片\")])])],1)])]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 2)?_c('div',{staticClass:\"wximagetext-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[2].data != '')?_c('div',{staticClass:\"imgtxt-group\"},[_c('div',{staticClass:\"imgtxtleft\"},[_c('h4',{staticClass:\"title-box\"},[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[2].data.Title))]),_c('div',{staticClass:\"cover-group\",style:((\"background-image:url('\" + (_vm.momentDataArr[_vm.activeRow].rowArr[2].data.MediaUrl) + \"');\"))}),_c('p',[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[2].data.MediaDes))])]),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeImgTxtCate)}}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('ul',{staticClass:\"addimgtext-group\"},[_c('li',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeImgTxtCate)}}},[_c('i',{staticClass:\"cms cms-file\"}),_c('p',[_vm._v(\"从图文素材中选\")])])])]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 3)?_c('div',{staticClass:\"wxvoice-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[3].data!='')?_c('div',{staticClass:\"voice-group\"},[_c('div',{staticClass:\"voiceleft-box\",on:{\"click\":function($event){return _vm.voiceControl(_vm.momentDataArr[_vm.activeRow].rowArr[3].data)}}},[(_vm.momentDataArr[_vm.activeRow].rowArr[3].data.ID == _vm.playVoiceValue.ID)?_c('img',{attrs:{\"src\":\"https://img.crd.cn/upload/article/2020090907311728192b45.gif\"}}):_c('img',{attrs:{\"src\":\"https://img.crd.cn/upload/article/20200909073134546068dc.png\"}}),_c('div',{staticClass:\"voicename-box\"},[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[3].data.MediaName))])]),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeVoiceCate)}}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('ul',{staticClass:\"addvoice-group\"},[_c('li',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeVoiceCate)}}},[_c('i',{staticClass:\"cms cms-file\"}),_c('p',[_vm._v(\"从音频素材中选\")])]),_c('li',[_c('el-upload',{ref:\"upload_el\",staticClass:\"upload-demo\",attrs:{\"action\":\"\",\"limit\":1,\"http-request\":_vm.UploadImage,\"before-upload\":_vm.beforeVoiceUpload,\"show-file-list\":false}},[_c('i',{staticClass:\"cms cms-add\"}),_c('p',[_vm._v(\"上传音频\")])])],1)]),_c('audio',{ref:\"playVoiceEl\",attrs:{\"autoplay\":\"\",\"muted\":\"\",\"src\":_vm.playVoiceValue.MediaUrl}},[_vm._v(\"您的浏览器不支持 audio 标签。\")])]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 4)?_c('div',{staticClass:\"wxvideo-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[4].data != '')?_c('div',{staticClass:\"video-group\"},[_c('div',{staticClass:\"videoleft-box\"},[_vm._m(0),_c('div',[_c('h6',[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[4].data.MediaName))])])]),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeVideoCate)}}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":function($event){return _vm.videoControl(_vm.momentDataArr[_vm.activeRow].rowArr[4].data)}}},[_vm._v(\"播放\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('ul',{staticClass:\"addvideo-group\"},[_c('li',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeVideoCate)}}},[_c('i',{staticClass:\"cms cms-file\"}),_c('p',[_vm._v(\"从视频素材中选\")])])])]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 5)?_c('div',{staticClass:\"wxtemplate-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[5].data != '')?_c('div',{staticClass:\"template-group\"},[_c('dl',{staticClass:\"tempitem\"},[_c('dt',[_c('div',{staticClass:\"title-txt\"},[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[5].data.template_name))]),_c('p',[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[5].data.create_time))])]),_vm._l((_vm.momentDataArr[_vm.activeRow].rowArr[5].data.data),function(data,name,index){return [(name=='first' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-content\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e(),(name!='first' && name != 'remark'&&data.isInput)?_c('dd',{key:index,staticClass:\"center-item\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(name)+\":\"+_vm._s(data.value))]):_vm._e(),(!data.isInput)?_c('dd',{key:index,staticClass:\"xxmb-content\"},[_vm._v(_vm._s(name))]):_vm._e(),(name=='remark' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-end\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e()]}),_c('dd',[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[5].data.template_title))])],2),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeTempCate)}}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('ul',{staticClass:\"addTemplate-group\"},[_c('li',{on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeTempCate)}}},[_c('i',{staticClass:\"cms cms-file\"}),_c('p',[_vm._v(\"从模板消息中选\")])]),_c('li',{on:{\"click\":_vm.toCreateTemp}},[_c('i',{staticClass:\"cms cms-add\"}),_c('p',[_vm._v(\"新建模板消息\")])])])]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 6)?_c('div',{staticClass:\"miniproject-wrap\"},[(_vm.momentDataArr[_vm.activeRow].rowArr[6].data != '')?_c('div',{staticClass:\"miniproject-group\"},[_c('div',{staticClass:\"miniproject-box\"},[_c('h3',{staticClass:\"cms cms-market\"},[_vm._v(_vm._s(_vm.momentDataArr[_vm.activeRow].rowArr[6].data.title))]),_c('div',[_c('img',{attrs:{\"src\":_vm.momentDataArr[_vm.activeRow].rowArr[6].data.coverImg}})]),_c('p',{staticClass:\"cms cms-miniprogram\"},[_vm._v(\"小程序\")])]),_c('div',{staticClass:\"handle-box\"},[_c('span',{on:{\"click\":_vm.modifyminiproject}},[_vm._v(\"修改\")]),_c('span',{on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"删除\")])])]):_c('div',{staticClass:\"addminiproject-group\",on:{\"click\":function($event){_vm.miniDialogVisible=true}}},[_c('i',{staticClass:\"cms cms-add\"}),_c('p',[_vm._v(\"添加小程序\")])])]):_vm._e(),_c('el-dialog',{attrs:{\"title\":\"选择素材\",\"visible\":_vm.replyDialogVisible,\"width\":\"885px\"},on:{\"update:visible\":function($event){_vm.replyDialogVisible=$event}}},[(_vm.momentDataArr[_vm.activeRow].endRow == 1 || _vm.momentDataArr[_vm.activeRow].endRow == 6)?_c('div',{staticClass:\"imagedialog-group\"},[_c('ul',{staticClass:\"cate-group\"},[_vm._l((_vm.imgCateList),function(tabItem,iKey){return _c('li',{key:iKey,class:_vm.activeCate.ID==tabItem.ID?'on':'',on:{\"click\":function($event){return _vm.chooseImgCate(tabItem)}}},[_vm._v(_vm._s(tabItem.GroupName)+\"(\"+_vm._s(tabItem.TotalNum)+\")\")])}),_c('li',{class:_vm.activeCate == '全部'?'on':'',on:{\"click\":function($event){return _vm.chooseImgCate('all')}}},[_vm._v(\"全部\")])],2),_c('div',{staticClass:\"list-group\"},[_c('div',{staticClass:\"imagesearch-group\"},[_c('el-input',{staticStyle:{\"width\":\"60%\",\"max-width\":\"260px\"},attrs:{\"placeholder\":\"搜索图片名称\"},on:{\"input\":function($event){return _vm.searchFodder(_vm.activeImgCate)}},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"cms cms-search search-icon\",attrs:{\"slot\":\"suffix\"},slot:\"suffix\"})]),_c('el-upload',{ref:\"upload_el\",staticClass:\"upload-demo\",attrs:{\"action\":\"\",\"limit\":1,\"http-request\":_vm.UploadImage,\"before-upload\":_vm.beforeAvatarUpload,\"show-file-list\":false}},[_c('el-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"}},[_vm._v(\"上传图片\")])],1)],1),_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[(_vm.imgList.length > 0)?_c('ul',{staticClass:\"imagedialog-main\"},_vm._l((_vm.imgList),function(imgItem,iIndex){return _c('li',{key:iIndex,class:(\"tupian-item \" + (_vm.activeImgValue.ID == imgItem.ID?'activeli':'')),on:{\"click\":function($event){return _vm.chooseImg(imgItem)}}},[_c('div',{staticClass:\"checkdiv\"},[_c('i')]),_c('div',{staticClass:\"imgbox\",style:((\"background-image: url('\" + (imgItem.MediaUrl) + \"')\"))}),_c('p',{staticClass:\"imgtxt\"},[_vm._v(_vm._s(imgItem.MediaName))])])}),0):_c('div',{staticClass:\"nulllist-box\"},[_vm._v(\"暂无数据...\")])])],1)]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 2)?_c('div',{staticClass:\"imgtextdialog-group\"},[_c('ul',{staticClass:\"cate-group\"},[_vm._l((_vm.imgTxtCateList),function(tabItem,iKey){return _c('li',{key:iKey,class:_vm.activeCate.ID==tabItem.ID?'on':'',on:{\"click\":function($event){return _vm.chooseImgTxtCate(tabItem)}}},[_vm._v(_vm._s(tabItem.GroupName)+\"(\"+_vm._s(tabItem.TotalNum)+\")\")])}),_c('li',{class:_vm.activeCate == '全部'?'on':'',on:{\"click\":function($event){return _vm.chooseImgTxtCate('all')}}},[_vm._v(\"全部\")])],2),_c('div',{staticClass:\"list-group\"},[_c('div',{staticClass:\"imgtextsearch-group\"},[_c('el-input',{staticStyle:{\"width\":\"60%\",\"max-width\":\"260px\"},attrs:{\"placeholder\":\"搜索文章标题\"},on:{\"input\":function($event){return _vm.searchFodder(_vm.activeImgTxtCate)}},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"cms cms-search search-icon\",attrs:{\"slot\":\"suffix\"},slot:\"suffix\"})]),_c('div',{staticClass:\"btn btn-primary btn-xjtw\",on:{\"click\":function($event){return _vm.syncWeChatImgText('NewsMedia')}}},[_vm._v(\"同步微信图文\")])],1),_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[(_vm.imgTxtList.length > 0)?_c('ul',{staticClass:\"imgtxtdialog-main\"},[_c('li',[_vm._l((_vm.imgTxtList),function(item,iIndex){return [((iIndex % 2) === 0)?_c('div',{key:iIndex,class:(\"tupian-item \" + (_vm.activeImgTxtValue.ID == item.ID?'activeli':'')),on:{\"click\":function($event){return _vm.chooseImgTxt(item)}}},[_c('div',{staticClass:\"checkdiv\"},[_c('i',{staticClass:\"cms cms-enable\"})]),_c('h4',{staticClass:\"title-box\"},[_vm._v(_vm._s(item.Title))]),_c('div',{staticClass:\"cover-group\",style:((\"background-image:url(\" + (item.MediaUrl) + \");\"))}),_c('p',[_vm._v(_vm._s(item.MediaDes))])]):_vm._e()]})],2),_c('li',[_vm._l((_vm.imgTxtList),function(item,iIndex){return [((iIndex%2) !== 0)?_c('div',{key:iIndex,class:(\"tupian-item \" + (_vm.activeImgTxtValue.ID == item.ID?'activeli':'')),on:{\"click\":function($event){return _vm.chooseImgTxt(item)}}},[_c('div',{staticClass:\"checkdiv\"},[_c('i',{staticClass:\"cms cms-enable\"})]),_c('h4',{staticClass:\"title-box\"},[_vm._v(_vm._s(item.Title))]),_c('div',{staticClass:\"cover-group\",style:((\"background-image:url(\" + (item.MediaUrl) + \");\"))}),_c('p',[_vm._v(_vm._s(item.MediaDes))])]):_vm._e()]})],2)]):_c('div',{staticClass:\"nulllist-box\"},[_vm._v(\"暂无数据...\")])])],1)]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 3)?_c('div',{staticClass:\"voicedialog-group\"},[_c('ul',{staticClass:\"cate-group\"},[_vm._l((_vm.voiceCateList),function(tabItem,iKey){return _c('li',{key:iKey,class:_vm.activeCate.ID == tabItem.ID?'on':'',on:{\"click\":function($event){return _vm.chooseVoiceCate(tabItem)}}},[_vm._v(_vm._s(tabItem.GroupName)+\"(\"+_vm._s(tabItem.TotalNum)+\")\")])}),_c('li',{class:_vm.activeCate == '全部'?'on':'',on:{\"click\":function($event){return _vm.chooseVoiceCate('all')}}},[_vm._v(\"全部\")])],2),_c('div',{staticClass:\"list-group\"},[_c('div',{staticClass:\"voicesearch-group\"},[_c('el-input',{staticStyle:{\"width\":\"60%\",\"max-width\":\"260px\"},attrs:{\"placeholder\":\"搜索音频名称\"},on:{\"input\":function($event){return _vm.searchFodder(_vm.activeVoiceCate)}},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"cms cms-search search-icon\",attrs:{\"slot\":\"suffix\"},slot:\"suffix\"})]),_c('el-upload',{ref:\"upload_el\",staticClass:\"upload-demo\",attrs:{\"action\":\"\",\"limit\":1,\"http-request\":_vm.UploadImage,\"before-upload\":_vm.beforeVoiceUpload,\"show-file-list\":false}},[_c('el-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"}},[_vm._v(\"上传音频\")])],1)],1),_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[(_vm.voiceList.length > 0)?_c('ul',{staticClass:\"voicedialog-main\"},_vm._l((_vm.voiceList),function(voiceItem,iIndex){return _c('li',{key:iIndex,class:(\"shengyin-item \" + (_vm.activeVoiceValue.ID == voiceItem.ID?'activeli':''))},[_c('div',{staticClass:\"choose-box\",on:{\"click\":function($event){return _vm.chooseVoice(voiceItem)}}},[_c('div',{staticClass:\"checkdiv\"},[_c('i')]),_c('div',{staticStyle:{\"line-height\":\"84px\"}},[_vm._v(_vm._s(voiceItem.MediaName))])]),_c('div',{staticClass:\"listen-box\",on:{\"click\":function($event){return _vm.voiceControl(voiceItem)}}},[(voiceItem.ID == _vm.playVoiceValue.ID)?_c('img',{attrs:{\"src\":\"https://img.crd.cn/upload/article/2020090907311728192b45.gif\"}}):_c('img',{attrs:{\"src\":\"https://img.crd.cn/upload/article/20200909073134546068dc.png\"}})])])}),0):_c('div',{staticClass:\"nulllist-box\"},[_vm._v(\"暂无数据...\")])])],1)]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 4)?_c('div',{staticClass:\"videodialog-group\"},[_c('div',{staticClass:\"cate-group\"},[_vm._l((_vm.videoCateList),function(tabItem,iKey){return _c('li',{key:iKey,class:_vm.activeCate.ID == tabItem.ID?'on':'',on:{\"click\":function($event){return _vm.chooseVideoCate(tabItem)}}},[_vm._v(_vm._s(tabItem.GroupName)+\"(\"+_vm._s(tabItem.TotalNum)+\")\")])}),_c('li',{class:_vm.activeCate == '全部'?'on':'',on:{\"click\":function($event){return _vm.chooseVideoCate('all')}}},[_vm._v(\"全部\")])],2),_c('div',{staticClass:\"list-group\"},[_c('div',{staticClass:\"videosearch-group\"},[_c('el-input',{staticStyle:{\"width\":\"60%\",\"max-width\":\"260px\"},attrs:{\"placeholder\":\"搜索视频频名称\"},on:{\"input\":function($event){return _vm.searchFodder(_vm.activeVoiceCate)}},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"cms cms-search search-icon\",attrs:{\"slot\":\"suffix\"},slot:\"suffix\"})]),_c('el-button',{attrs:{\"size\":\"small\",\"type\":\"primary\"},on:{\"click\":function($event){return _vm.syncWeChatImgText('Video')}}},[_vm._v(\"同步微信视频\")])],1),_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[(_vm.videoList.length > 0)?_c('ul',{staticClass:\"videodialog-main\"},_vm._l((_vm.videoList),function(videoItem,iIndex){return _c('li',{key:iIndex,class:(\"shipin-item \" + (videoItem.ID == _vm.activeVideoValue.ID?'activeli':''))},[_c('div',{staticClass:\"cms cms-video\"}),_c('div',{staticClass:\"videocenter-box\"},[_c('h6',[_vm._v(_vm._s(videoItem.MediaName))])]),_c('div',{staticClass:\"videolist-handle\"},[_c('span',{on:{\"click\":function($event){return _vm.chooseVideo(videoItem)}}},[_vm._v(\"选择\")]),_c('span',{on:{\"click\":function($event){return _vm.videoControl(videoItem)}}},[_vm._v(\"播放\")])])])}),0):_c('div',{staticClass:\"nulllist-box\"},[_vm._v(\"暂无数据...\")])])],1)]):_vm._e(),(_vm.momentDataArr[_vm.activeRow].endRow == 5)?_c('div',{staticClass:\"tempdialog-group\"},[_c('ul',{staticClass:\"cate-group\"},[_vm._l((_vm.tempCateList),function(tabItem,iKey){return _c('li',{key:iKey,class:_vm.activeCate.Sid==tabItem.Sid?'on':'',on:{\"click\":function($event){return _vm.chooseTempCate(tabItem)}}},[_vm._v(_vm._s(tabItem.TypeName)+\"(\"+_vm._s(tabItem.Counts)+\")\")])}),_c('li',{class:_vm.activeCate == '全部'?'on':'',on:{\"click\":function($event){return _vm.chooseTempCate('all')}}},[_vm._v(\"全部(\"+_vm._s(_vm.tempList.length)+\")\")])],2),_c('div',{staticClass:\"list-group\"},[_c('div',{staticClass:\"tempsearch-group\"},[_c('el-input',{staticStyle:{\"width\":\"60%\",\"max-width\":\"260px\"},attrs:{\"placeholder\":\"搜索模板标题\"},on:{\"input\":function($event){return _vm.searchFodder(_vm.activeTempCate)}},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"cms cms-search search-icon\",attrs:{\"slot\":\"suffix\"},slot:\"suffix\"})]),_c('div',{staticClass:\"btn btn-primary btn-xjmb\",on:{\"click\":_vm.toCreateTemp}},[_vm._v(\"新建模板\")])],1),_c('el-scrollbar',{staticStyle:{\"height\":\"50vh\"}},[(_vm.tempList.length > 0)?_c('div',{staticClass:\"tempdialog_main\"},[_c('div',[_vm._l((_vm.tempGroupList),function(message,temKey){return [(temKey < _vm.colNum)?_c('dl',{key:temKey,class:(\"tempitem \" + (_vm.activeTempValue.template_id == message.template_id?'activeitem':'')),on:{\"click\":function($event){return _vm.chooseTemp(message)}}},[_c('dt',[_c('div',{staticClass:\"title-txt\"},[_vm._v(_vm._s(message.template_name))]),_c('p',[_vm._v(_vm._s(message.create_time))])]),_vm._l((message.data),function(data,name,index){return [(name=='first' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-content\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e(),(name!='first' && name != 'remark'&&data.isInput)?_c('dd',{key:index,staticClass:\"center-item\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(name)+\":\"+_vm._s(data.value))]):_vm._e(),(!data.isInput)?_c('dd',{key:index,staticClass:\"xxmb-content\"},[_vm._v(_vm._s(name))]):_vm._e(),(name=='remark' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-end\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e()]}),_c('dd',[_vm._v(_vm._s(message.template_title))])],2):_vm._e()]})],2),_c('div',[_vm._l((_vm.tempGroupList),function(message,temKey){return [(temKey >= _vm.colNum && temKey < _vm.colNum*2)?_c('dl',{key:temKey,class:(\"tempitem \" + (_vm.activeTempValue.template_id == message.template_id?'activeitem':'')),on:{\"click\":function($event){return _vm.chooseTemp(message)}}},[_vm._v(\"\\n \"+_vm._s(message.template_id)+\"\\n \"),_c('dt',[_c('div',{staticClass:\"title-txt\"},[_vm._v(_vm._s(message.template_name))]),_c('p',[_vm._v(_vm._s(message.create_time))])]),_vm._l((message.data),function(data,name,index){return [(name=='first' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-content\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e(),(name!='first' && name != 'remark'&&data.isInput)?_c('dd',{key:index,staticClass:\"center-item\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(name)+\":\"+_vm._s(data.value))]):_vm._e(),(!data.isInput)?_c('dd',{key:index,staticClass:\"xxmb-content\"},[_vm._v(_vm._s(name))]):_vm._e(),(name=='remark' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-end\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e()]}),_c('dd',[_vm._v(_vm._s(message.template_title))])],2):_vm._e()]})],2),_c('div',[_vm._l((_vm.tempGroupList),function(message,temKey){return [(temKey >= _vm.colNum*2)?_c('dl',{key:temKey,class:(\"tempitem \" + (_vm.activeTempValue.template_id == message.template_id?'activeitem':'')),on:{\"click\":function($event){return _vm.chooseTemp(message)}}},[_vm._v(\"\\n \"+_vm._s(message.template_id)+\"\\n \"),_c('dt',[_c('div',{staticClass:\"title-txt\"},[_vm._v(_vm._s(message.template_name))]),_c('p',[_vm._v(_vm._s(message.create_time))])]),_vm._l((message.data),function(data,name,index){return [(name=='first' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-content\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e(),(name!='first' && name != 'remark'&&data.isInput)?_c('dd',{key:index,staticClass:\"center-item\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(name)+\":\"+_vm._s(data.value))]):_vm._e(),(!data.isInput)?_c('dd',{key:index,staticClass:\"xxmb-content\"},[_vm._v(_vm._s(name))]):_vm._e(),(name=='remark' && data.value!='')?_c('dd',{key:index,staticClass:\"xxmb-end\",style:((\"color:\" + (data.color) + \";\"))},[_vm._v(_vm._s(data.value))]):_vm._e()]}),_c('dd',[_vm._v(_vm._s(message.template_title))])],2):_vm._e()]})],2)]):_c('div',{staticClass:\"nulllist-box\"},[_vm._v(\"暂无数据...\")])])],1)]):_vm._e(),_c('div',{staticClass:\"imagefooter-group\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('div',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.pushFodder}},[_vm._v(\"确 定\")]),_c('div',{staticClass:\"btn btn-default\",on:{\"click\":_vm.clearSelectedFodder}},[_vm._v(\"清 除\")])])]),(_vm.videoPlayDialogVisible)?_c('div',{staticClass:\"videoplay-dialog\"},[_c('div',[_c('video',{staticStyle:{\"max-height\":\"50vh\"},attrs:{\"src\":_vm.playVoiceValue.MediaUrl,\"controls\":\"controls\"}},[_vm._v(\"您的浏览器不支持 video 标签。\")]),_c('div',{staticClass:\"btn-videocolse\",on:{\"click\":function($event){_vm.videoPlayDialogVisible=false}}},[_c('i',{staticClass:\"cms cms-close\"})])])]):_vm._e(),_c('el-dialog',{attrs:{\"title\":\"选择素材\",\"visible\":_vm.miniDialogVisible,\"width\":\"60%\"},on:{\"update:visible\":function($event){_vm.miniDialogVisible=$event}}},[(_vm.momentDataArr[_vm.activeRow].endRow == 6)?_c('div',{staticClass:\"minidialog-group\"},[_c('el-form',{ref:\"toSmallProgramData\",attrs:{\"model\":_vm.toSmallProgramData,\"rules\":_vm.smallProgramRules,\"label-width\":\"126px\"}},[_c('el-form-item',{attrs:{\"label\":\"小程序标题\",\"prop\":\"title\"}},[_c('el-input',{model:{value:(_vm.toSmallProgramData.title),callback:function ($$v) {_vm.$set(_vm.toSmallProgramData, \"title\", $$v)},expression:\"toSmallProgramData.title\"}})],1),_c('el-form-item',{attrs:{\"label\":\"小程序ID\",\"prop\":\"appid\"}},[_c('el-input',{model:{value:(_vm.toSmallProgramData.appid),callback:function ($$v) {_vm.$set(_vm.toSmallProgramData, \"appid\", $$v)},expression:\"toSmallProgramData.appid\"}})],1),_c('el-form-item',{attrs:{\"label\":\"小程序页面路径\",\"prop\":\"pagePath\"}},[_c('el-input',{model:{value:(_vm.toSmallProgramData.pagePath),callback:function ($$v) {_vm.$set(_vm.toSmallProgramData, \"pagePath\", $$v)},expression:\"toSmallProgramData.pagePath\"}})],1),_c('el-form-item',{attrs:{\"label\":\"备用网页URL\",\"prop\":\"pagePathTwo\"}},[_c('el-input',{model:{value:(_vm.toSmallProgramData.pagePathTwo),callback:function ($$v) {_vm.$set(_vm.toSmallProgramData, \"pagePathTwo\", $$v)},expression:\"toSmallProgramData.pagePathTwo\"}})],1),_c('p',{staticClass:\"tips-p\"},[_vm._v(\"旧版微信客户端无法支持小程序,用户点击菜单时将会打开备用网页,不超过1024字节。\")]),_c('el-form-item',{attrs:{\"label\":\"小程序封面图片\",\"prop\":\"coverImg\"}},[_c('div',{staticClass:\"coverdialogbox\"},[_c('div',{staticClass:\"fengbox\"},[(_vm.toSmallProgramData.coverImg!='')?_c('img',{attrs:{\"src\":_vm.toSmallProgramData.coverImg}}):_vm._e()]),_c('div',[_c('div',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.showFodderDialog(_vm.activeImgCate)}}},[_vm._v(\"选择图片\")]),_c('p',[_vm._v(\"图片尺寸520*416px\")])])])]),_c('el-form-item',[_c('div',{staticClass:\"btn btn-primary\",staticStyle:{\"margin-right\":\"10px\"},on:{\"click\":function($event){return _vm.pushMiniProject('toSmallProgramData')}}},[_vm._v(\"确 定\")]),_c('div',{staticClass:\"btn btn-default\",on:{\"click\":function($event){_vm.miniDialogVisible=false}}},[_vm._v(\"取 消\")])])],1)],1):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"videoicon\"},[_c('i',{staticClass:\"cms cms-video\"})])}]\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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 HttpClient from \"@/API/HttpClient\";\r\nimport Utils from \"@/store/utils\";\r\nimport httpApi from \"@/API/Tenant/Weixin\";\r\nimport { getCookie } from \"../JS/cookie\"; //使用getCookie方法\r\nimport tinymce from \"@/components/editor/tinymce2.vue\"; //引入tinymce\r\nimport axios from \"axios\";\r\nimport userInfo from '@/store/modules/userInfo';\r\n@Component({\r\n components: { tinymce }\r\n})\r\nexport default class LeftMenu extends Vue {\r\n @Prop() private momentDataArr!: any; // 存储数据的二维对象\r\n @Prop() private activeRow!: number; // 父组件传值当前行\r\n @Provide() activeTencent: any = \"\"; // 当前公众号\r\n @Provide() replyObj: any = \"\"; // 添加修改对象\r\n @Provide() videoAction: any = \"\";\r\n @Provide() replyType: any = [\r\n { typeID: \"1\", label: \"文字\", value: \"wx-text\", iconName: \"text\" },\r\n { typeID: \"2\", label: \"图片\", value: \"wx-image\", iconName: \"image\" },\r\n {\r\n typeID: \"3\",\r\n label: \"图文消息\",\r\n value: \"wx-image-text\",\r\n iconName: \"tuwen\"\r\n },\r\n { typeID: \"4\", label: \"语音\", value: \"wx-voice\", iconName: \"voice\" },\r\n { typeID: \"5\", label: \"视频\", value: \"wx-video\", iconName: \"video\" },\r\n { typeID: \"6\", label: \"模板消息\", value: \"wx-template\", iconName: \"moban\" },\r\n {\r\n typeID: \"7\",\r\n label: \"微信小程序\",\r\n value: \"miniprogram\",\r\n iconName: \"miniprogram\"\r\n }\r\n ];\r\n @Provide() activeCate: any = \"\";\r\n @Provide() SearchKeywords: string = \"\";\r\n @Provide() replyDialogVisible: boolean = false;\r\n\r\n // 显示弹窗\r\n showFodderDialog(activeCate: any) {\r\n let _this = this;\r\n _this.replyDialogVisible = true;\r\n _this.activeCate = activeCate;\r\n if (_this.momentDataArr[_this.activeRow].endRow == 5) {\r\n if (_this.tempList == \"\") {\r\n _this.loadMessageList();\r\n }\r\n }else {\r\n _this.getFodderList(activeCate.ID);\r\n }\r\n }\r\n // 搜索素材\r\n searchFodder(activeCate: any) {\r\n let _this = this;\r\n if (Number(_this.momentDataArr[_this.activeRow].endRow) == 5) {\r\n _this.loadMessageList();\r\n } else {\r\n _this.getAllFodderList();\r\n }\r\n this.activeCate = \"全部\";\r\n }\r\n // 获取素材分组\r\n async getCateList() {\r\n let _this = this;\r\n let replyType = Number(_this.momentDataArr[_this.activeRow].endRow);\r\n if (replyType == 6) {\r\n replyType = 1;\r\n }\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"data\",\r\n Value: { AppReplyType: replyType + 1, ActionName: 4,ApplicationID:_this.activeTencent.Aid }\r\n }\r\n ]\r\n };\r\n let res: any = await httpApi.GetFodderCate(params);\r\n if (res.ErrorCode == 0) {\r\n switch (replyType) {\r\n case 1:\r\n case 6:\r\n _this.imgCateList = res.output[0].value;\r\n _this.activeImgCate = _this.imgCateList[0];\r\n _this.activeCate = _this.activeImgCate;\r\n break;\r\n case 2:\r\n _this.imgTxtCateList = res.output[0].value;\r\n _this.activeImgTxtCate = _this.imgTxtCateList[0];\r\n _this.activeCate = _this.activeImgTxtCate;\r\n break;\r\n case 3:\r\n _this.voiceCateList = res.output[0].value;\r\n _this.activeVoiceCate = _this.voiceCateList[0];\r\n _this.activeCate = _this.activeVoiceCate;\r\n break;\r\n case 4:\r\n _this.videoCateList = res.output[0].value;\r\n _this.activeVideoCate = _this.videoCateList[0];\r\n _this.activeCate = _this.activeVideoCate;\r\n break;\r\n }\r\n } else {\r\n this.$message(\"分组获取失败!\");\r\n console.log(res.ErrorMessage);\r\n }\r\n }\r\n\r\n // 获取分组素材列表\r\n async getFodderList(groupId: any) {\r\n let _this = this;\r\n let replyType = Number(_this.momentDataArr[_this.activeRow].endRow);\r\n // { \"Input\":[{\"Name\":\"data\",\"Value\":{\"GroupID\":\"1\", \"ActionName\": 4}}]}\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"data\",\r\n Value: { GroupID: groupId, MediaName: \"\", ActionName: 4 }\r\n }\r\n ]\r\n };\r\n let res: any = await httpApi.GetFodderList(params);\r\n if (res.ErrorCode == 0) {\r\n switch (replyType) {\r\n case 1:\r\n case 6:\r\n _this.imgList = res.output[0].value;\r\n break;\r\n case 2:\r\n _this.imgTxtList = res.output[0].value;\r\n break;\r\n case 3:\r\n _this.voiceList = res.output[0].value;\r\n break;\r\n case 4:\r\n _this.videoList = res.output[0].value;\r\n break;\r\n }\r\n } else {\r\n this.$message(\"素材列表获取失败!\");\r\n console.log(res.ErrorMessage);\r\n }\r\n }\r\n\r\n // 获取所有素材\r\n async getAllFodderList() {\r\n let _this = this;\r\n // { \"Input\":[{\"Name\":\"data\",\"Value\":{\"AppReplyType\":\"3\",\"ActionName\": 4}}]}\r\n let replyType = Number(_this.momentDataArr[_this.activeRow].endRow);\r\n if (replyType == 6) {\r\n replyType = 1;\r\n }\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"data\",\r\n Value: {\r\n AppReplyType: replyType + 1,\r\n MediaName: _this.SearchKeywords,\r\n ApplicationID:_this.activeTencent.Aid,\r\n ActionName: 4\r\n }\r\n }\r\n ]\r\n };\r\n let res: any = await httpApi.GetAllFodderList(params);\r\n if (res.ErrorCode == 0) {\r\n switch (replyType) {\r\n case 1:\r\n case 6:\r\n _this.imgList = res.output[0].value;\r\n break;\r\n case 2:\r\n _this.imgTxtList = res.output[0].value;\r\n break;\r\n case 3:\r\n _this.voiceList = res.output[0].value;\r\n break;\r\n case 4:\r\n _this.videoList = res.output[0].value;\r\n break;\r\n }\r\n } else {\r\n this.$message(\"全部素材列表获取失败!\");\r\n console.log(res.ErrorMessage);\r\n }\r\n }\r\n\r\n //切换回复类型\r\n changeReplyType(replyindex: number) {\r\n let _this = this;\r\n _this.momentDataArr[_this.activeRow].endRow = replyindex;\r\n switch (replyindex) {\r\n case 1:\r\n case 6:\r\n if (_this.imgCateList == \"\") {\r\n _this.getCateList();\r\n }\r\n break;\r\n case 2:\r\n if (_this.imgTxtCateList == \"\") {\r\n _this.getCateList();\r\n }\r\n break;\r\n case 3:\r\n if (_this.voiceCateList == \"\") {\r\n _this.getCateList();\r\n }\r\n break;\r\n case 4:\r\n if (_this.videoCateList == \"\") {\r\n _this.getCateList();\r\n }\r\n break;\r\n case 5:\r\n if (_this.tempCateList == \"\") {\r\n _this.loadCategoryList();\r\n }\r\n break;\r\n }\r\n }\r\n\r\n @Provide() textReplyData: any = \"\";\r\n @Provide() disabled: boolean = false;\r\n getEditValue(value: any) {\r\n let _this = this;\r\n _this.momentDataArr[_this.activeRow].rowArr[0].data = value;\r\n }\r\n // Emoji表情\r\n @Provide() activeEmoji: string = \"常用\";\r\n @Provide() emojiList: any = [];\r\n //加载表情\r\n async GetCustomEmoji() {\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"AppEmotionDTO\",\r\n Value: {\r\n TenantID: this.activeTencent.TenantID\r\n } //消息模板类型\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.GetCustomEmoji(params);\r\n if (res.ErrorCode == 0) {\r\n this.emojiList = res.output[0].value;\r\n } else {\r\n this.$message.error(\"取列表失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n // Tab切换事件\r\n handleClick(tab: any, event: any) {\r\n if (tab.name == \"second\" && this.emojiList.length == 0) {\r\n this.GetCustomEmoji();\r\n }\r\n }\r\n selectEmoji(emoji: any) {\r\n let _this = this;\r\n _this.momentDataArr[_this.activeRow].rowArr[0].data += emoji[1];\r\n }\r\n // 文字链接\r\n @Provide() linkData: any = {\r\n linkText: \"\",\r\n link: \"\"\r\n };\r\n @Provide() linkDataRules: any = {\r\n linkText: [\r\n { required: true, message: '请输入链接文字', trigger: 'blur' },\r\n { min: 1, max: 20, message: \"长度在 3 到 5 个字符\", trigger: \"blur\" }\r\n ],\r\n link: [\r\n { required: true, message: '请输入网址', trigger: 'blur' },\r\n {\r\n pattern: /[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\\.?/,\r\n // pattern: /^([hH][tT]{2}[pP]:\\/\\/|[hH][tT]{2}[pP][sS]:\\/\\/|[a-zA-Z]\\.)(([A-Za-z0-9-~]+)\\.)+([A-Za-z0-9-~\\/])+$/,\r\n message: \"链接地址不正确\",\r\n trigger: \"blur\"\r\n }\r\n ]\r\n };\r\n // 添加链接\r\n // \r\n pushLinkToMenuData(formName: any) {\r\n (this.$refs[formName] as any).validate((valid: any) => {\r\n if (valid) {\r\n let _this = this;\r\n let linkStr =\r\n \"\" +\r\n _this.linkData.linkText +\r\n \"\";\r\n _this.momentDataArr[_this.activeRow].rowArr[0].data += linkStr;\r\n _this.linkData.linkText = \"\";\r\n _this.linkData.link = \"\";\r\n } else {\r\n console.log(\"error submit!!\");\r\n return false;\r\n }\r\n });\r\n }\r\n resetLinkForm(formName: any) {\r\n (this.$refs[formName] as any).resetFields();\r\n }\r\n\r\n // 小程序链接\r\n @Provide() miniprogram: any = {\r\n linkText: \"\",\r\n appid: \"\",\r\n pagePath: \"\",\r\n pagepathTwo: \"\"\r\n };\r\n @Provide() miniprogramRules: any = {\r\n linkText: [\r\n { required: true, message: \"必填\", trigger: \"blur\" },\r\n { min: 1, max: 20, message: \"标题不超过20个汉字\", trigger: \"blur\" }\r\n ],\r\n appid: [\r\n { required: true, message: \"必填\", trigger: \"blur\" },\r\n {\r\n pattern: /^wx[a-z0-9]{16}$/,\r\n message: \"请输入正确的小程序appid\",\r\n trigger: \"blur\"\r\n }\r\n ],\r\n pagePath: [\r\n { required: true, message: \"必填\", trigger: \"blur\" },\r\n {\r\n pattern: /^\\/\\w+/,\r\n message: \"请输入正确的小程序地址\",\r\n trigger: \"blur\"\r\n }\r\n ]\r\n };\r\n pushMiniToMenuData(miniprogramForm: any) {\r\n (this.$refs[miniprogramForm] as any).validate((valid: any) => {\r\n if (valid) {\r\n let _this = this;\r\n let miniprogramStr =\r\n \"\" +\r\n _this.miniprogram.linkText +\r\n \"\";\r\n _this.momentDataArr[_this.activeRow].rowArr[0].data += miniprogramStr;\r\n\r\n // 清空表单的内容\r\n _this.miniprogram.linkText = \"\";\r\n _this.miniprogram.appid = \"\";\r\n _this.miniprogram.pagePath = \"\";\r\n _this.miniprogram.pagepathTwo = \"\";\r\n } else {\r\n console.log(\"error submit!!\");\r\n return false;\r\n }\r\n });\r\n }\r\n // 粉丝昵称\r\n pushFansName() {\r\n let _this = this;\r\n _this.momentDataArr[_this.activeRow].rowArr[0].data += '[粉丝昵称]';\r\n }\r\n\r\n // 图片回复\r\n @Provide() imgCateList: any = \"\"; // 图片素材分组列表\r\n @Provide() imgList: any = []; // 图片列表\r\n @Provide() activeImgCate: any = \"\"; // 当前图片分类\r\n @Provide() activeImgValue: any = []; // 已选图片对象\r\n chooseImgCate(clickCate: any) {\r\n let _this = this;\r\n if (clickCate == \"all\") {\r\n _this.getAllFodderList();\r\n _this.activeCate = \"全部\";\r\n } else {\r\n _this.getFodderList(clickCate.ID);\r\n _this.activeImgCate = _this.activeCate = clickCate;\r\n }\r\n }\r\n chooseImg(imgObj: any) {\r\n let _this = this;\r\n _this.activeImgValue = imgObj;\r\n }\r\n pushChooseImg() {\r\n let _this = this;\r\n if (_this.activeImgValue.length == 0) {\r\n this.$message.error(\"请选择图片素材!\");\r\n return;\r\n }\r\n _this.momentDataArr[this.activeRow].rowArr[1].data = _this.activeImgValue;\r\n _this.replyDialogVisible = false;\r\n }\r\n\r\n // 图文回复\r\n @Provide() imgTxtCateList: any = \"\";\r\n @Provide() imgTxtList: any = [];\r\n @Provide() activeImgTxtCate: any = \"\";\r\n @Provide() activeImgTxtValue: any = [];\r\n chooseImgTxtCate(clickCate: any) {\r\n let _this = this;\r\n if (clickCate == \"all\") {\r\n _this.getAllFodderList();\r\n _this.activeCate = \"全部\";\r\n } else {\r\n _this.getFodderList(clickCate.ID);\r\n _this.activeCate = _this.activeImgTxtCate = clickCate;\r\n }\r\n }\r\n chooseImgTxt(imgTxtObj: any) {\r\n let _this = this;\r\n _this.activeImgTxtValue = imgTxtObj;\r\n }\r\n pushChooseImgTxt() {\r\n let _this = this;\r\n if (_this.activeImgTxtValue.length == 0) {\r\n this.$message.error(\"请选择图文素材!\");\r\n return;\r\n }\r\n _this.momentDataArr[this.activeRow].rowArr[2].data =\r\n _this.activeImgTxtValue;\r\n _this.replyDialogVisible = false;\r\n }\r\n /**\r\n * 同步微信图文\r\n */\r\n async syncWeChatImgText(loadType:string){\r\n let _this = this;\r\n let params = { \r\n Input:[\r\n {\r\n Name: \"Aid\",\r\n Value: _this.activeTencent.Aid\r\n },\r\n {\r\n Name: \"Type\",\r\n Value: loadType\r\n },\r\n {\r\n Name: \"GroupID\",\r\n Value: _this.activeCate.ID\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.loadImgTextFormWechat(params);\r\n if (res.ErrorCode == 0) {\r\n switch(_this.momentDataArr[_this.activeRow].endRow){\r\n case 2:\r\n _this.chooseImgTxtCate(_this.activeCate);//_this.imgTxtList = res.output[0].value;\r\n break;\r\n case 4:\r\n _this.chooseVideoCate(_this.activeCate);// = res.output[0].value;\r\n break;\r\n }\r\n } else {\r\n this.$message.info(res.ErrorMessage);\r\n }\r\n }\r\n\r\n // 音频回复\r\n @Provide() playVoiceValue: any = \"\"; //当前播放的音频\r\n @Provide() voiceCateList: any = \"\";\r\n @Provide() voiceList: any = \"\";\r\n @Provide() activeVoiceCate: any = \"\";\r\n @Provide() activeVoiceValue: any = [];\r\n @Provide() uploadLoading = false;\r\n chooseVoiceCate(clickCate: any) {\r\n let _this = this;\r\n if (clickCate == \"all\") {\r\n _this.getAllFodderList();\r\n _this.activeCate = \"全部\";\r\n } else {\r\n _this.getFodderList(clickCate.ID);\r\n _this.activeCate = _this.activeVoiceCate = clickCate;\r\n }\r\n }\r\n chooseVoice(voiceObj: any) {\r\n let _this = this;\r\n _this.activeVoiceValue = voiceObj;\r\n }\r\n pushChooseVoice() {\r\n let _this = this;\r\n if (_this.activeVoiceValue.length == 0) {\r\n this.$message(\"未选择音频!\");\r\n return;\r\n }\r\n _this.momentDataArr[_this.activeRow].rowArr[3].data =\r\n _this.activeVoiceValue;\r\n _this.replyDialogVisible = false;\r\n }\r\n // 音频播放\r\n clearVoiceTabData() {\r\n let _this = this;\r\n _this.momentDataArr[_this.activeRow].rowArr[3].data = \"\";\r\n this.playVoiceValue = \"\";\r\n (this.$refs as any).playVoiceEl.pause();\r\n }\r\n voiceControl(listenVoice: any) {\r\n let _this = this;\r\n let isPlay = (this.$refs as any).playVoiceEl.paused;\r\n if (_this.playVoiceValue != \"\") {\r\n if (_this.playVoiceValue.ID == listenVoice.ID) {\r\n if (isPlay) {\r\n (this.$refs as any).playVoiceEl.play();\r\n } else {\r\n _this.playVoiceValue = \"\";\r\n (this.$refs as any).playVoiceEl.pause();\r\n }\r\n } else {\r\n _this.playVoiceValue = listenVoice;\r\n (this.$refs as any).playVoiceEl.play();\r\n }\r\n } else {\r\n _this.playVoiceValue = listenVoice;\r\n (this.$refs as any).playVoiceEl.play();\r\n }\r\n }\r\n\r\n // 发送消息-视频\r\n @Provide() videoCateList: any = \"\";\r\n @Provide() videoList: any = \"\";\r\n @Provide() activeVideoCate: string = \"\";\r\n @Provide() activeVideoValue: any = [];\r\n @Provide() playVideoValue: any = \"\";\r\n @Provide() videoPlayDialogVisible: boolean = false;\r\n chooseVideoCate(clickCate: any) {\r\n let _this = this;\r\n if (clickCate == \"all\") {\r\n _this.getAllFodderList();\r\n _this.activeCate = \"全部\";\r\n } else {\r\n _this.getFodderList(clickCate.ID);\r\n _this.activeCate = _this.activeVideoCate = clickCate;\r\n }\r\n }\r\n chooseVideo(clickVideo: any) {\r\n let _this = this;\r\n _this.activeVideoValue = clickVideo;\r\n }\r\n pushChooseVideo() {\r\n let _this = this;\r\n if (_this.activeVideoValue.length == 0) {\r\n this.$message(\"未选择视频!\");\r\n return;\r\n }\r\n _this.momentDataArr[_this.activeRow].rowArr[4].data =\r\n _this.activeVideoValue;\r\n _this.replyDialogVisible = false;\r\n }\r\n // 视频播放\r\n clearvideoTabData() {\r\n let _this = this;\r\n _this.activeVideoValue = \"\";\r\n _this.momentDataArr[_this.activeRow].rowArr[4].data =\r\n _this.activeVideoValue;\r\n }\r\n videoControl(playVideo: any) {\r\n if (this.videoPlayDialogVisible) {\r\n this.videoPlayDialogVisible = false;\r\n this.playVideoValue = \"\";\r\n } else {\r\n this.playVoiceValue = playVideo;\r\n this.videoPlayDialogVisible = true;\r\n }\r\n }\r\n\r\n // 回复模板消息模板\r\n @Provide() tempCateList: any = \"\";\r\n @Provide() tempList: any = \"\";\r\n @Provide() tempGroupList: any = \"\";\r\n @Provide() activeTempCate: any = \"\";\r\n @Provide() activeTempValue: any = [];\r\n @Provide() colNum: number = 0;\r\n filterTempGroupList() {\r\n let _this = this;\r\n let grouList: any = [];\r\n _this.tempList.forEach((temp: any) => {\r\n if (temp.template_category == _this.activeTempCate.TypeName) {\r\n grouList.push(temp);\r\n }\r\n });\r\n _this.tempGroupList = grouList;\r\n _this.colNum = Math.ceil(_this.tempGroupList.length / 3);\r\n }\r\n chooseTempCate(clickCate: any) {\r\n let _this = this;\r\n if (clickCate == \"all\") {\r\n _this.tempGroupList = _this.tempList;\r\n _this.activeCate = \"全部\";\r\n _this.colNum = Math.ceil(_this.tempGroupList.length / 3);\r\n } else {\r\n _this.activeCate = _this.activeTempCate = clickCate;\r\n _this.filterTempGroupList();\r\n }\r\n }\r\n chooseTemp(clickTemp: any) {\r\n let _this = this;\r\n _this.activeTempValue = clickTemp;\r\n }\r\n pushChooseTemplate() {\r\n let _this = this;\r\n if (_this.activeTempValue.length == 0) {\r\n this.$message(\"未选择模板消息!\");\r\n return;\r\n }\r\n _this.momentDataArr[_this.activeRow].rowArr[5].data = _this.activeTempValue;\r\n _this.replyDialogVisible = false;\r\n }\r\n toCreateTemp() {\r\n let routeData = this.$router.resolve({\r\n name: \"/tenants/tenantsView/wx-message_ModelTable\",\r\n params: { parentcode: \"M159\" }\r\n });\r\n localStorage.setItem(\"menuKey\", \"M159\");\r\n localStorage.setItem(\"slideKey\", \"M198\");\r\n localStorage.setItem(\"target\", \"_blank\");\r\n window.open(routeData.href, \"_blank\");\r\n }\r\n /** 加载模板数据 */\r\n async loadMessageList() {\r\n let _this = this;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"aid\",\r\n Value: this.activeTencent.Aid\r\n },\r\n {\r\n Name: \"status\",\r\n Value: 1\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.GetAppMessageTemplateList(params);\r\n if (res.ErrorCode == 0) {\r\n _this.tempList = res.output[0].value;\r\n _this.filterTempGroupList();\r\n var result = res.output[0].value;\r\n if (this.SearchKeywords) {\r\n _this.tempGroupList = result.filter((item: any, index: any) =>\r\n item.template_title.includes(this.SearchKeywords)\r\n );\r\n }\r\n } else {\r\n this.$message.error(res.ErrorMessage);\r\n }\r\n }\r\n /** 加载分类列表 */\r\n async loadCategoryList() {\r\n let _this = this;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"Model\",\r\n Value: { ApplicationId: this.activeTencent.Aid, Status: 1 }\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.GetAppMessageTemplateType(params);\r\n if (res.ErrorCode == 0) {\r\n _this.tempCateList = res.output[0].value;\r\n _this.activeTempCate = this.tempCateList[0];\r\n _this.activeCate = this.activeTempCate;\r\n } else {\r\n this.$message.error(\"保存失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n\r\n /** 回复小程序 */\r\n @Provide() toSmallProgramData: any = {\r\n title: \"\",\r\n appid: \"\",\r\n pagePath: \"\",\r\n pagePathTwo: \"\",\r\n coverImg: \"\"\r\n };\r\n @Provide() miniDialogVisible: boolean = false;\r\n @Provide() smallProgramRules: any = {\r\n title: [{ required: true, message: \"请输入活动名称\", trigger: \"blur\" }],\r\n appid: [\r\n { required: true, message: \"请输入正确的小程序appid\", trigger: \"blur\" },\r\n {\r\n pattern: /^wx[a-z0-9]{16}$/,\r\n message: \"请输入正确的小程序appid\",\r\n trigger: \"blur\"\r\n }\r\n ],\r\n pagePath: [\r\n { required: true, message: \"请输入正确的小程序页面路径\", trigger: \"blur\" }\r\n ],\r\n pagePathTwo: [\r\n {\r\n required: false,\r\n message: \"请输入正确的小程序页面路径\",\r\n trigger: \"blur\"\r\n },\r\n {\r\n pattern: /^wx[a-z0-9]{16}$/,\r\n message: \"请输入正确的小程序appid\",\r\n trigger: \"blur\"\r\n }\r\n ],\r\n coverImg: [\r\n { required: true, message: \"小程序封面不能空!\", trigger: \"blur\" }\r\n ]\r\n };\r\n pushMiniCoverImg() {\r\n let _this = this;\r\n if (_this.activeImgValue.length == 0) {\r\n this.$message.error(\"请选择封面图片!\");\r\n return;\r\n }\r\n _this.toSmallProgramData.coverImg = _this.activeImgValue.MediaUrl;\r\n _this.toSmallProgramData.WXID = _this.activeImgValue.WXID;\r\n _this.replyDialogVisible = false;\r\n }\r\n modifyminiproject() {\r\n let _this = this;\r\n // debugger\r\n _this.toSmallProgramData =\r\n _this.momentDataArr[_this.activeRow].rowArr[6].data;\r\n _this.miniDialogVisible = true;\r\n }\r\n pushMiniProject(formName: string) {\r\n let _this = this;\r\n (_this.$refs[formName] as any).validate((valid: any) => {\r\n if (valid) {\r\n let imgObj = new Image();\r\n imgObj.src = _this.toSmallProgramData.coverImg;\r\n if (imgObj.width != 520 || imgObj.height != 416) {\r\n this.$message.error(\"封面图片尺寸不符合要求!!!\");\r\n return false;\r\n }\r\n _this.momentDataArr[_this.activeRow].rowArr[6].data =\r\n _this.toSmallProgramData;\r\n _this.miniDialogVisible = false;\r\n } else {\r\n this.$message.error(\"请检查表单是否填写正确。\");\r\n return false;\r\n }\r\n });\r\n }\r\n\r\n created() {\r\n let _this = this;\r\n // 获取缓存中的当前公众号\r\n _this.activeTencent = JSON.parse(\r\n Utils.decrypt(localStorage.getItem(\"activeTencent\") as any, \"\")\r\n );\r\n if (\r\n _this.momentDataArr[this.activeRow].endRow != 0 &&\r\n _this.momentDataArr[this.activeRow].endRow != 5\r\n ) {\r\n _this.getCateList();\r\n }\r\n if (_this.momentDataArr[this.activeRow].endRow == 5) {\r\n _this.loadCategoryList();\r\n }\r\n }\r\n @Watch(\"activeRow\")\r\n getVisible(newVal: any, oldVal: any) {\r\n if (\r\n this.momentDataArr[newVal].endRow != 0 &&\r\n this.momentDataArr[newVal].endRow != 6\r\n ) {\r\n this.getCateList();\r\n }\r\n }\r\n // 添加素材\r\n pushFodder() {\r\n let _this = this;\r\n let replyType = Number(_this.momentDataArr[_this.activeRow].endRow);\r\n switch (replyType) {\r\n case 1:\r\n _this.pushChooseImg();\r\n break;\r\n case 2:\r\n _this.pushChooseImgTxt();\r\n break;\r\n case 3:\r\n _this.pushChooseVoice();\r\n break;\r\n case 4:\r\n _this.pushChooseVideo();\r\n break;\r\n case 5:\r\n _this.pushChooseTemplate();\r\n break;\r\n case 6:\r\n _this.pushMiniCoverImg();\r\n break;\r\n }\r\n }\r\n // 清除\r\n clearSelectedFodder() {\r\n let _this = this;\r\n let replyType = Number(_this.momentDataArr[_this.activeRow].endRow);\r\n if (_this.replyDialogVisible) {\r\n switch (replyType) {\r\n case 1:\r\n case 6:\r\n _this.activeImgValue = [];\r\n break;\r\n case 2:\r\n _this.activeImgTxtValue = [];\r\n break;\r\n case 3:\r\n _this.activeVoiceValue = [];\r\n break;\r\n case 4:\r\n _this.activeVideoValue = [];\r\n break;\r\n case 5:\r\n _this.activeTempValue = [];\r\n break;\r\n }\r\n } else {\r\n this.$confirm(\"确定清除已选素材?\", \"提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n }).then(() => {\r\n _this.momentDataArr[this.activeRow].rowArr[replyType].data = \"\";\r\n if (replyType == 6) {\r\n _this.toSmallProgramData = {\r\n title: \"\",\r\n appid: \"\",\r\n pagePath: \"\",\r\n pagePathTwo: \"\",\r\n coverImg: \"\"\r\n };\r\n }\r\n this.$message({\r\n type: \"success\",\r\n message: \"删除成功!\"\r\n });\r\n });\r\n }\r\n }\r\n\r\n // 生命周期\r\n mounted() {}\r\n\r\n // 文件上传\r\n UploadImage(param: any) {\r\n let _this = this;\r\n if (this.activeCate == \"全部\") {\r\n this.$message.error(\"请选择分组后上传!\");\r\n return;\r\n }\r\n let uploadType = \"\";\r\n switch (Number(_this.momentDataArr[_this.activeRow].endRow)) {\r\n case 1:\r\n case 6:\r\n uploadType = \"AppReplyImage\";\r\n break;\r\n // case 2:\r\n // uploadType = \"AppReplyGraphic\";\r\n // break;\r\n case 3:\r\n uploadType = \"AppReplyVoice\";\r\n break;\r\n default:\r\n this.$message.error(\"上传类型不能为空, 请联系管理员!\");\r\n return;\r\n break;\r\n }\r\n\r\n if(uploadType==\"AppReplyImage\" && param.file.size>2*1024*1024){\r\n this.$message.error(\"图片大小不能超过2M!\");\r\n return;\r\n }\r\n let reader = new FileReader();\r\n reader.readAsDataURL(param.file);\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 { Name: \"Type\", Value: uploadType },\r\n { Name: \"FileName\", Value: param.file.name },\r\n { Name: \"FileBase64\", Value: obj },\r\n { Name: \"GroupID\", Value: _this.activeCate.ID }, //默认的分级ID\r\n { Name: \"ApplicationID\", Value: _this.activeTencent.Aid }\r\n ]\r\n };\r\n _this.uploadLoading = true;\r\n var res: any = await httpApi.UploadImg(params);\r\n if (res.ErrorCode == 0) {\r\n if (!_this.replyDialogVisible) {\r\n // 将上传的对象赋值到数据数组中;\r\n _this.momentDataArr[_this.activeRow].rowArr[\r\n _this.momentDataArr[_this.activeRow].endRow\r\n ].data = res.output[0].value;\r\n }\r\n await _this.getFodderList(_this.activeCate.ID);\r\n _this.activeCate.TotalNum ++;\r\n this.$message.success(\"上传成功!\");\r\n } else {\r\n (this.$refs['upload_el'] as any).clearFiles();\r\n this.$message.error(\"上传失败,请稍后再试!\");\r\n console.log(res.ErrorMessage);\r\n }\r\n _this.uploadLoading = false;\r\n }\r\n };\r\n }\r\n\r\n // 上传图片前检测\r\n beforeAvatarUpload(file: any) {\r\n let isJPG = false;\r\n if (\r\n file.type === \"image/jpeg\" ||\r\n file.type === \"image/jpg\" ||\r\n file.type === \"image/png\" ||\r\n file.type === \"image/gif\" ||\r\n file.type === \"image/svg+xml\"\r\n ) {\r\n isJPG = true;\r\n } else {\r\n this.$message.error(\"上传图片只能是 JPG,png,gif,svg格式!\");\r\n }\r\n let isLt2M = false;\r\n if ((isLt2M = file.size / 1024 / 1024 < 2)) {\r\n isLt2M = true;\r\n } else {\r\n this.$message.error(\"上传图片大小不能超过 2MB!\");\r\n }\r\n return isJPG && isLt2M;\r\n }\r\n\r\n // 上传音频前检测\r\n beforeVoiceUpload(file: any) {\r\n let isVoice = false;\r\n if (\r\n file.type === \"audio/mp3\" ||\r\n file.type === \"audio/mpeg\" ||\r\n file.type === \"audio/x-ms-wma\" ||\r\n file.type === \"audio/wav\" ||\r\n file.type === \"audio/wav\" ||\r\n file.type === \"audio/amr\"\r\n ) {\r\n isVoice = true;\r\n } else {\r\n this.$message.error(\"上传音频只能是 mp3、wma、wav、amr、m4a格式!\");\r\n }\r\n let isLT200M = false;\r\n if ((isLT200M = file.size / 1024 / 1024 < 200)) {\r\n isLT200M = true;\r\n } else {\r\n this.$message.error(\"上传音频大小不能超过 200M!\");\r\n }\r\n return isVoice && isLT200M;\r\n }\r\n // 文件上传END\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!./replyTabs.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!./replyTabs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./replyTabs.vue?vue&type=template&id=6cd3fd62&scoped=true&\"\nimport script from \"./replyTabs.vue?vue&type=script&lang=ts&\"\nexport * from \"./replyTabs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./replyTabs.vue?vue&type=style&index=0&id=6cd3fd62&lang=less&scoped=true&\"\nimport style1 from \"./replyTabs.vue?vue&type=style&index=1&lang=less&\"\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 \"6cd3fd62\",\n null\n \n)\n\nexport default component.exports","// https://github.com/mziccard/node-timsort\nvar DEFAULT_MIN_MERGE = 32;\nvar DEFAULT_MIN_GALLOPING = 7;\nvar DEFAULT_TMP_STORAGE_LENGTH = 256;\n\nfunction minRunLength(n) {\n var r = 0;\n\n while (n >= DEFAULT_MIN_MERGE) {\n r |= n & 1;\n n >>= 1;\n }\n\n return n + r;\n}\n\nfunction makeAscendingRun(array, lo, hi, compare) {\n var runHi = lo + 1;\n\n if (runHi === hi) {\n return 1;\n }\n\n if (compare(array[runHi++], array[lo]) < 0) {\n while (runHi < hi && compare(array[runHi], array[runHi - 1]) < 0) {\n runHi++;\n }\n\n reverseRun(array, lo, runHi);\n } else {\n while (runHi < hi && compare(array[runHi], array[runHi - 1]) >= 0) {\n runHi++;\n }\n }\n\n return runHi - lo;\n}\n\nfunction reverseRun(array, lo, hi) {\n hi--;\n\n while (lo < hi) {\n var t = array[lo];\n array[lo++] = array[hi];\n array[hi--] = t;\n }\n}\n\nfunction binaryInsertionSort(array, lo, hi, start, compare) {\n if (start === lo) {\n start++;\n }\n\n for (; start < hi; start++) {\n var pivot = array[start];\n var left = lo;\n var right = start;\n var mid;\n\n while (left < right) {\n mid = left + right >>> 1;\n\n if (compare(pivot, array[mid]) < 0) {\n right = mid;\n } else {\n left = mid + 1;\n }\n }\n\n var n = start - left;\n\n switch (n) {\n case 3:\n array[left + 3] = array[left + 2];\n\n case 2:\n array[left + 2] = array[left + 1];\n\n case 1:\n array[left + 1] = array[left];\n break;\n\n default:\n while (n > 0) {\n array[left + n] = array[left + n - 1];\n n--;\n }\n\n }\n\n array[left] = pivot;\n }\n}\n\nfunction gallopLeft(value, array, start, length, hint, compare) {\n var lastOffset = 0;\n var maxOffset = 0;\n var offset = 1;\n\n if (compare(value, array[start + hint]) > 0) {\n maxOffset = length - hint;\n\n while (offset < maxOffset && compare(value, array[start + hint + offset]) > 0) {\n lastOffset = offset;\n offset = (offset << 1) + 1;\n\n if (offset <= 0) {\n offset = maxOffset;\n }\n }\n\n if (offset > maxOffset) {\n offset = maxOffset;\n }\n\n lastOffset += hint;\n offset += hint;\n } else {\n maxOffset = hint + 1;\n\n while (offset < maxOffset && compare(value, array[start + hint - offset]) <= 0) {\n lastOffset = offset;\n offset = (offset << 1) + 1;\n\n if (offset <= 0) {\n offset = maxOffset;\n }\n }\n\n if (offset > maxOffset) {\n offset = maxOffset;\n }\n\n var tmp = lastOffset;\n lastOffset = hint - offset;\n offset = hint - tmp;\n }\n\n lastOffset++;\n\n while (lastOffset < offset) {\n var m = lastOffset + (offset - lastOffset >>> 1);\n\n if (compare(value, array[start + m]) > 0) {\n lastOffset = m + 1;\n } else {\n offset = m;\n }\n }\n\n return offset;\n}\n\nfunction gallopRight(value, array, start, length, hint, compare) {\n var lastOffset = 0;\n var maxOffset = 0;\n var offset = 1;\n\n if (compare(value, array[start + hint]) < 0) {\n maxOffset = hint + 1;\n\n while (offset < maxOffset && compare(value, array[start + hint - offset]) < 0) {\n lastOffset = offset;\n offset = (offset << 1) + 1;\n\n if (offset <= 0) {\n offset = maxOffset;\n }\n }\n\n if (offset > maxOffset) {\n offset = maxOffset;\n }\n\n var tmp = lastOffset;\n lastOffset = hint - offset;\n offset = hint - tmp;\n } else {\n maxOffset = length - hint;\n\n while (offset < maxOffset && compare(value, array[start + hint + offset]) >= 0) {\n lastOffset = offset;\n offset = (offset << 1) + 1;\n\n if (offset <= 0) {\n offset = maxOffset;\n }\n }\n\n if (offset > maxOffset) {\n offset = maxOffset;\n }\n\n lastOffset += hint;\n offset += hint;\n }\n\n lastOffset++;\n\n while (lastOffset < offset) {\n var m = lastOffset + (offset - lastOffset >>> 1);\n\n if (compare(value, array[start + m]) < 0) {\n offset = m;\n } else {\n lastOffset = m + 1;\n }\n }\n\n return offset;\n}\n\nfunction TimSort(array, compare) {\n var minGallop = DEFAULT_MIN_GALLOPING;\n var length = 0;\n var tmpStorageLength = DEFAULT_TMP_STORAGE_LENGTH;\n var stackLength = 0;\n var runStart;\n var runLength;\n var stackSize = 0;\n length = array.length;\n\n if (length < 2 * DEFAULT_TMP_STORAGE_LENGTH) {\n tmpStorageLength = length >>> 1;\n }\n\n var tmp = [];\n stackLength = length < 120 ? 5 : length < 1542 ? 10 : length < 119151 ? 19 : 40;\n runStart = [];\n runLength = [];\n\n function pushRun(_runStart, _runLength) {\n runStart[stackSize] = _runStart;\n runLength[stackSize] = _runLength;\n stackSize += 1;\n }\n\n function mergeRuns() {\n while (stackSize > 1) {\n var n = stackSize - 2;\n\n if (n >= 1 && runLength[n - 1] <= runLength[n] + runLength[n + 1] || n >= 2 && runLength[n - 2] <= runLength[n] + runLength[n - 1]) {\n if (runLength[n - 1] < runLength[n + 1]) {\n n--;\n }\n } else if (runLength[n] > runLength[n + 1]) {\n break;\n }\n\n mergeAt(n);\n }\n }\n\n function forceMergeRuns() {\n while (stackSize > 1) {\n var n = stackSize - 2;\n\n if (n > 0 && runLength[n - 1] < runLength[n + 1]) {\n n--;\n }\n\n mergeAt(n);\n }\n }\n\n function mergeAt(i) {\n var start1 = runStart[i];\n var length1 = runLength[i];\n var start2 = runStart[i + 1];\n var length2 = runLength[i + 1];\n runLength[i] = length1 + length2;\n\n if (i === stackSize - 3) {\n runStart[i + 1] = runStart[i + 2];\n runLength[i + 1] = runLength[i + 2];\n }\n\n stackSize--;\n var k = gallopRight(array[start2], array, start1, length1, 0, compare);\n start1 += k;\n length1 -= k;\n\n if (length1 === 0) {\n return;\n }\n\n length2 = gallopLeft(array[start1 + length1 - 1], array, start2, length2, length2 - 1, compare);\n\n if (length2 === 0) {\n return;\n }\n\n if (length1 <= length2) {\n mergeLow(start1, length1, start2, length2);\n } else {\n mergeHigh(start1, length1, start2, length2);\n }\n }\n\n function mergeLow(start1, length1, start2, length2) {\n var i = 0;\n\n for (i = 0; i < length1; i++) {\n tmp[i] = array[start1 + i];\n }\n\n var cursor1 = 0;\n var cursor2 = start2;\n var dest = start1;\n array[dest++] = array[cursor2++];\n\n if (--length2 === 0) {\n for (i = 0; i < length1; i++) {\n array[dest + i] = tmp[cursor1 + i];\n }\n\n return;\n }\n\n if (length1 === 1) {\n for (i = 0; i < length2; i++) {\n array[dest + i] = array[cursor2 + i];\n }\n\n array[dest + length2] = tmp[cursor1];\n return;\n }\n\n var _minGallop = minGallop;\n var count1;\n var count2;\n var exit;\n\n while (1) {\n count1 = 0;\n count2 = 0;\n exit = false;\n\n do {\n if (compare(array[cursor2], tmp[cursor1]) < 0) {\n array[dest++] = array[cursor2++];\n count2++;\n count1 = 0;\n\n if (--length2 === 0) {\n exit = true;\n break;\n }\n } else {\n array[dest++] = tmp[cursor1++];\n count1++;\n count2 = 0;\n\n if (--length1 === 1) {\n exit = true;\n break;\n }\n }\n } while ((count1 | count2) < _minGallop);\n\n if (exit) {\n break;\n }\n\n do {\n count1 = gallopRight(array[cursor2], tmp, cursor1, length1, 0, compare);\n\n if (count1 !== 0) {\n for (i = 0; i < count1; i++) {\n array[dest + i] = tmp[cursor1 + i];\n }\n\n dest += count1;\n cursor1 += count1;\n length1 -= count1;\n\n if (length1 <= 1) {\n exit = true;\n break;\n }\n }\n\n array[dest++] = array[cursor2++];\n\n if (--length2 === 0) {\n exit = true;\n break;\n }\n\n count2 = gallopLeft(tmp[cursor1], array, cursor2, length2, 0, compare);\n\n if (count2 !== 0) {\n for (i = 0; i < count2; i++) {\n array[dest + i] = array[cursor2 + i];\n }\n\n dest += count2;\n cursor2 += count2;\n length2 -= count2;\n\n if (length2 === 0) {\n exit = true;\n break;\n }\n }\n\n array[dest++] = tmp[cursor1++];\n\n if (--length1 === 1) {\n exit = true;\n break;\n }\n\n _minGallop--;\n } while (count1 >= DEFAULT_MIN_GALLOPING || count2 >= DEFAULT_MIN_GALLOPING);\n\n if (exit) {\n break;\n }\n\n if (_minGallop < 0) {\n _minGallop = 0;\n }\n\n _minGallop += 2;\n }\n\n minGallop = _minGallop;\n minGallop < 1 && (minGallop = 1);\n\n if (length1 === 1) {\n for (i = 0; i < length2; i++) {\n array[dest + i] = array[cursor2 + i];\n }\n\n array[dest + length2] = tmp[cursor1];\n } else if (length1 === 0) {\n throw new Error(); // throw new Error('mergeLow preconditions were not respected');\n } else {\n for (i = 0; i < length1; i++) {\n array[dest + i] = tmp[cursor1 + i];\n }\n }\n }\n\n function mergeHigh(start1, length1, start2, length2) {\n var i = 0;\n\n for (i = 0; i < length2; i++) {\n tmp[i] = array[start2 + i];\n }\n\n var cursor1 = start1 + length1 - 1;\n var cursor2 = length2 - 1;\n var dest = start2 + length2 - 1;\n var customCursor = 0;\n var customDest = 0;\n array[dest--] = array[cursor1--];\n\n if (--length1 === 0) {\n customCursor = dest - (length2 - 1);\n\n for (i = 0; i < length2; i++) {\n array[customCursor + i] = tmp[i];\n }\n\n return;\n }\n\n if (length2 === 1) {\n dest -= length1;\n cursor1 -= length1;\n customDest = dest + 1;\n customCursor = cursor1 + 1;\n\n for (i = length1 - 1; i >= 0; i--) {\n array[customDest + i] = array[customCursor + i];\n }\n\n array[dest] = tmp[cursor2];\n return;\n }\n\n var _minGallop = minGallop;\n\n while (true) {\n var count1 = 0;\n var count2 = 0;\n var exit = false;\n\n do {\n if (compare(tmp[cursor2], array[cursor1]) < 0) {\n array[dest--] = array[cursor1--];\n count1++;\n count2 = 0;\n\n if (--length1 === 0) {\n exit = true;\n break;\n }\n } else {\n array[dest--] = tmp[cursor2--];\n count2++;\n count1 = 0;\n\n if (--length2 === 1) {\n exit = true;\n break;\n }\n }\n } while ((count1 | count2) < _minGallop);\n\n if (exit) {\n break;\n }\n\n do {\n count1 = length1 - gallopRight(tmp[cursor2], array, start1, length1, length1 - 1, compare);\n\n if (count1 !== 0) {\n dest -= count1;\n cursor1 -= count1;\n length1 -= count1;\n customDest = dest + 1;\n customCursor = cursor1 + 1;\n\n for (i = count1 - 1; i >= 0; i--) {\n array[customDest + i] = array[customCursor + i];\n }\n\n if (length1 === 0) {\n exit = true;\n break;\n }\n }\n\n array[dest--] = tmp[cursor2--];\n\n if (--length2 === 1) {\n exit = true;\n break;\n }\n\n count2 = length2 - gallopLeft(array[cursor1], tmp, 0, length2, length2 - 1, compare);\n\n if (count2 !== 0) {\n dest -= count2;\n cursor2 -= count2;\n length2 -= count2;\n customDest = dest + 1;\n customCursor = cursor2 + 1;\n\n for (i = 0; i < count2; i++) {\n array[customDest + i] = tmp[customCursor + i];\n }\n\n if (length2 <= 1) {\n exit = true;\n break;\n }\n }\n\n array[dest--] = array[cursor1--];\n\n if (--length1 === 0) {\n exit = true;\n break;\n }\n\n _minGallop--;\n } while (count1 >= DEFAULT_MIN_GALLOPING || count2 >= DEFAULT_MIN_GALLOPING);\n\n if (exit) {\n break;\n }\n\n if (_minGallop < 0) {\n _minGallop = 0;\n }\n\n _minGallop += 2;\n }\n\n minGallop = _minGallop;\n\n if (minGallop < 1) {\n minGallop = 1;\n }\n\n if (length2 === 1) {\n dest -= length1;\n cursor1 -= length1;\n customDest = dest + 1;\n customCursor = cursor1 + 1;\n\n for (i = length1 - 1; i >= 0; i--) {\n array[customDest + i] = array[customCursor + i];\n }\n\n array[dest] = tmp[cursor2];\n } else if (length2 === 0) {\n throw new Error(); // throw new Error('mergeHigh preconditions were not respected');\n } else {\n customCursor = dest - (length2 - 1);\n\n for (i = 0; i < length2; i++) {\n array[customCursor + i] = tmp[i];\n }\n }\n }\n\n this.mergeRuns = mergeRuns;\n this.forceMergeRuns = forceMergeRuns;\n this.pushRun = pushRun;\n}\n\nfunction sort(array, compare, lo, hi) {\n if (!lo) {\n lo = 0;\n }\n\n if (!hi) {\n hi = array.length;\n }\n\n var remaining = hi - lo;\n\n if (remaining < 2) {\n return;\n }\n\n var runLength = 0;\n\n if (remaining < DEFAULT_MIN_MERGE) {\n runLength = makeAscendingRun(array, lo, hi, compare);\n binaryInsertionSort(array, lo, hi, lo + runLength, compare);\n return;\n }\n\n var ts = new TimSort(array, compare);\n var minRun = minRunLength(remaining);\n\n do {\n runLength = makeAscendingRun(array, lo, hi, compare);\n\n if (runLength < minRun) {\n var force = remaining;\n\n if (force > minRun) {\n force = minRun;\n }\n\n binaryInsertionSort(array, lo, lo + force, lo + runLength, compare);\n runLength = force;\n }\n\n ts.pushRun(lo, runLength);\n ts.mergeRuns();\n remaining -= runLength;\n lo += runLength;\n } while (remaining !== 0);\n\n ts.forceMergeRuns();\n}\n\nmodule.exports = sort;","var Clip = require(\"./Clip\");\n\nvar color = require(\"../tool/color\");\n\nvar _util = require(\"../core/util\");\n\nvar isArrayLike = _util.isArrayLike;\n\n/**\n * @module echarts/animation/Animator\n */\nvar arraySlice = Array.prototype.slice;\n\nfunction defaultGetter(target, key) {\n return target[key];\n}\n\nfunction defaultSetter(target, key, value) {\n target[key] = value;\n}\n/**\n * @param {number} p0\n * @param {number} p1\n * @param {number} percent\n * @return {number}\n */\n\n\nfunction interpolateNumber(p0, p1, percent) {\n return (p1 - p0) * percent + p0;\n}\n/**\n * @param {string} p0\n * @param {string} p1\n * @param {number} percent\n * @return {string}\n */\n\n\nfunction interpolateString(p0, p1, percent) {\n return percent > 0.5 ? p1 : p0;\n}\n/**\n * @param {Array} p0\n * @param {Array} p1\n * @param {number} percent\n * @param {Array} out\n * @param {number} arrDim\n */\n\n\nfunction interpolateArray(p0, p1, percent, out, arrDim) {\n var len = p0.length;\n\n if (arrDim === 1) {\n for (var i = 0; i < len; i++) {\n out[i] = interpolateNumber(p0[i], p1[i], percent);\n }\n } else {\n var len2 = len && p0[0].length;\n\n for (var i = 0; i < len; i++) {\n for (var j = 0; j < len2; j++) {\n out[i][j] = interpolateNumber(p0[i][j], p1[i][j], percent);\n }\n }\n }\n} // arr0 is source array, arr1 is target array.\n// Do some preprocess to avoid error happened when interpolating from arr0 to arr1\n\n\nfunction fillArr(arr0, arr1, arrDim) {\n var arr0Len = arr0.length;\n var arr1Len = arr1.length;\n\n if (arr0Len !== arr1Len) {\n // FIXME Not work for TypedArray\n var isPreviousLarger = arr0Len > arr1Len;\n\n if (isPreviousLarger) {\n // Cut the previous\n arr0.length = arr1Len;\n } else {\n // Fill the previous\n for (var i = arr0Len; i < arr1Len; i++) {\n arr0.push(arrDim === 1 ? arr1[i] : arraySlice.call(arr1[i]));\n }\n }\n } // Handling NaN value\n\n\n var len2 = arr0[0] && arr0[0].length;\n\n for (var i = 0; i < arr0.length; i++) {\n if (arrDim === 1) {\n if (isNaN(arr0[i])) {\n arr0[i] = arr1[i];\n }\n } else {\n for (var j = 0; j < len2; j++) {\n if (isNaN(arr0[i][j])) {\n arr0[i][j] = arr1[i][j];\n }\n }\n }\n }\n}\n/**\n * @param {Array} arr0\n * @param {Array} arr1\n * @param {number} arrDim\n * @return {boolean}\n */\n\n\nfunction isArraySame(arr0, arr1, arrDim) {\n if (arr0 === arr1) {\n return true;\n }\n\n var len = arr0.length;\n\n if (len !== arr1.length) {\n return false;\n }\n\n if (arrDim === 1) {\n for (var i = 0; i < len; i++) {\n if (arr0[i] !== arr1[i]) {\n return false;\n }\n }\n } else {\n var len2 = arr0[0].length;\n\n for (var i = 0; i < len; i++) {\n for (var j = 0; j < len2; j++) {\n if (arr0[i][j] !== arr1[i][j]) {\n return false;\n }\n }\n }\n }\n\n return true;\n}\n/**\n * Catmull Rom interpolate array\n * @param {Array} p0\n * @param {Array} p1\n * @param {Array} p2\n * @param {Array} p3\n * @param {number} t\n * @param {number} t2\n * @param {number} t3\n * @param {Array} out\n * @param {number} arrDim\n */\n\n\nfunction catmullRomInterpolateArray(p0, p1, p2, p3, t, t2, t3, out, arrDim) {\n var len = p0.length;\n\n if (arrDim === 1) {\n for (var i = 0; i < len; i++) {\n out[i] = catmullRomInterpolate(p0[i], p1[i], p2[i], p3[i], t, t2, t3);\n }\n } else {\n var len2 = p0[0].length;\n\n for (var i = 0; i < len; i++) {\n for (var j = 0; j < len2; j++) {\n out[i][j] = catmullRomInterpolate(p0[i][j], p1[i][j], p2[i][j], p3[i][j], t, t2, t3);\n }\n }\n }\n}\n/**\n * Catmull Rom interpolate number\n * @param {number} p0\n * @param {number} p1\n * @param {number} p2\n * @param {number} p3\n * @param {number} t\n * @param {number} t2\n * @param {number} t3\n * @return {number}\n */\n\n\nfunction catmullRomInterpolate(p0, p1, p2, p3, t, t2, t3) {\n var v0 = (p2 - p0) * 0.5;\n var v1 = (p3 - p1) * 0.5;\n return (2 * (p1 - p2) + v0 + v1) * t3 + (-3 * (p1 - p2) - 2 * v0 - v1) * t2 + v0 * t + p1;\n}\n\nfunction cloneValue(value) {\n if (isArrayLike(value)) {\n var len = value.length;\n\n if (isArrayLike(value[0])) {\n var ret = [];\n\n for (var i = 0; i < len; i++) {\n ret.push(arraySlice.call(value[i]));\n }\n\n return ret;\n }\n\n return arraySlice.call(value);\n }\n\n return value;\n}\n\nfunction rgba2String(rgba) {\n rgba[0] = Math.floor(rgba[0]);\n rgba[1] = Math.floor(rgba[1]);\n rgba[2] = Math.floor(rgba[2]);\n return 'rgba(' + rgba.join(',') + ')';\n}\n\nfunction getArrayDim(keyframes) {\n var lastValue = keyframes[keyframes.length - 1].value;\n return isArrayLike(lastValue && lastValue[0]) ? 2 : 1;\n}\n\nfunction createTrackClip(animator, easing, oneTrackDone, keyframes, propName, forceAnimate) {\n var getter = animator._getter;\n var setter = animator._setter;\n var useSpline = easing === 'spline';\n var trackLen = keyframes.length;\n\n if (!trackLen) {\n return;\n } // Guess data type\n\n\n var firstVal = keyframes[0].value;\n var isValueArray = isArrayLike(firstVal);\n var isValueColor = false;\n var isValueString = false; // For vertices morphing\n\n var arrDim = isValueArray ? getArrayDim(keyframes) : 0;\n var trackMaxTime; // Sort keyframe as ascending\n\n keyframes.sort(function (a, b) {\n return a.time - b.time;\n });\n trackMaxTime = keyframes[trackLen - 1].time; // Percents of each keyframe\n\n var kfPercents = []; // Value of each keyframe\n\n var kfValues = [];\n var prevValue = keyframes[0].value;\n var isAllValueEqual = true;\n\n for (var i = 0; i < trackLen; i++) {\n kfPercents.push(keyframes[i].time / trackMaxTime); // Assume value is a color when it is a string\n\n var value = keyframes[i].value; // Check if value is equal, deep check if value is array\n\n if (!(isValueArray && isArraySame(value, prevValue, arrDim) || !isValueArray && value === prevValue)) {\n isAllValueEqual = false;\n }\n\n prevValue = value; // Try converting a string to a color array\n\n if (typeof value === 'string') {\n var colorArray = color.parse(value);\n\n if (colorArray) {\n value = colorArray;\n isValueColor = true;\n } else {\n isValueString = true;\n }\n }\n\n kfValues.push(value);\n }\n\n if (!forceAnimate && isAllValueEqual) {\n return;\n }\n\n var lastValue = kfValues[trackLen - 1]; // Polyfill array and NaN value\n\n for (var i = 0; i < trackLen - 1; i++) {\n if (isValueArray) {\n fillArr(kfValues[i], lastValue, arrDim);\n } else {\n if (isNaN(kfValues[i]) && !isNaN(lastValue) && !isValueString && !isValueColor) {\n kfValues[i] = lastValue;\n }\n }\n }\n\n isValueArray && fillArr(getter(animator._target, propName), lastValue, arrDim); // Cache the key of last frame to speed up when\n // animation playback is sequency\n\n var lastFrame = 0;\n var lastFramePercent = 0;\n var start;\n var w;\n var p0;\n var p1;\n var p2;\n var p3;\n\n if (isValueColor) {\n var rgba = [0, 0, 0, 0];\n }\n\n var onframe = function (target, percent) {\n // Find the range keyframes\n // kf1-----kf2---------current--------kf3\n // find kf2 and kf3 and do interpolation\n var frame; // In the easing function like elasticOut, percent may less than 0\n\n if (percent < 0) {\n frame = 0;\n } else if (percent < lastFramePercent) {\n // Start from next key\n // PENDING start from lastFrame ?\n start = Math.min(lastFrame + 1, trackLen - 1);\n\n for (frame = start; frame >= 0; frame--) {\n if (kfPercents[frame] <= percent) {\n break;\n }\n } // PENDING really need to do this ?\n\n\n frame = Math.min(frame, trackLen - 2);\n } else {\n for (frame = lastFrame; frame < trackLen; frame++) {\n if (kfPercents[frame] > percent) {\n break;\n }\n }\n\n frame = Math.min(frame - 1, trackLen - 2);\n }\n\n lastFrame = frame;\n lastFramePercent = percent;\n var range = kfPercents[frame + 1] - kfPercents[frame];\n\n if (range === 0) {\n return;\n } else {\n w = (percent - kfPercents[frame]) / range;\n }\n\n if (useSpline) {\n p1 = kfValues[frame];\n p0 = kfValues[frame === 0 ? frame : frame - 1];\n p2 = kfValues[frame > trackLen - 2 ? trackLen - 1 : frame + 1];\n p3 = kfValues[frame > trackLen - 3 ? trackLen - 1 : frame + 2];\n\n if (isValueArray) {\n catmullRomInterpolateArray(p0, p1, p2, p3, w, w * w, w * w * w, getter(target, propName), arrDim);\n } else {\n var value;\n\n if (isValueColor) {\n value = catmullRomInterpolateArray(p0, p1, p2, p3, w, w * w, w * w * w, rgba, 1);\n value = rgba2String(rgba);\n } else if (isValueString) {\n // String is step(0.5)\n return interpolateString(p1, p2, w);\n } else {\n value = catmullRomInterpolate(p0, p1, p2, p3, w, w * w, w * w * w);\n }\n\n setter(target, propName, value);\n }\n } else {\n if (isValueArray) {\n interpolateArray(kfValues[frame], kfValues[frame + 1], w, getter(target, propName), arrDim);\n } else {\n var value;\n\n if (isValueColor) {\n interpolateArray(kfValues[frame], kfValues[frame + 1], w, rgba, 1);\n value = rgba2String(rgba);\n } else if (isValueString) {\n // String is step(0.5)\n return interpolateString(kfValues[frame], kfValues[frame + 1], w);\n } else {\n value = interpolateNumber(kfValues[frame], kfValues[frame + 1], w);\n }\n\n setter(target, propName, value);\n }\n }\n };\n\n var clip = new Clip({\n target: animator._target,\n life: trackMaxTime,\n loop: animator._loop,\n delay: animator._delay,\n onframe: onframe,\n ondestroy: oneTrackDone\n });\n\n if (easing && easing !== 'spline') {\n clip.easing = easing;\n }\n\n return clip;\n}\n/**\n * @alias module:zrender/animation/Animator\n * @constructor\n * @param {Object} target\n * @param {boolean} loop\n * @param {Function} getter\n * @param {Function} setter\n */\n\n\nvar Animator = function (target, loop, getter, setter) {\n this._tracks = {};\n this._target = target;\n this._loop = loop || false;\n this._getter = getter || defaultGetter;\n this._setter = setter || defaultSetter;\n this._clipCount = 0;\n this._delay = 0;\n this._doneList = [];\n this._onframeList = [];\n this._clipList = [];\n};\n\nAnimator.prototype = {\n /**\n * Set Animation keyframe\n * @param {number} time 关键帧时间,单位是ms\n * @param {Object} props 关键帧的属性值,key-value表示\n * @return {module:zrender/animation/Animator}\n */\n when: function (time\n /* ms */\n , props) {\n var tracks = this._tracks;\n\n for (var propName in props) {\n if (!props.hasOwnProperty(propName)) {\n continue;\n }\n\n if (!tracks[propName]) {\n tracks[propName] = []; // Invalid value\n\n var value = this._getter(this._target, propName);\n\n if (value == null) {\n // zrLog('Invalid property ' + propName);\n continue;\n } // If time is 0\n // Then props is given initialize value\n // Else\n // Initialize value from current prop value\n\n\n if (time !== 0) {\n tracks[propName].push({\n time: 0,\n value: cloneValue(value)\n });\n }\n }\n\n tracks[propName].push({\n time: time,\n value: props[propName]\n });\n }\n\n return this;\n },\n\n /**\n * 添加动画每一帧的回调函数\n * @param {Function} callback\n * @return {module:zrender/animation/Animator}\n */\n during: function (callback) {\n this._onframeList.push(callback);\n\n return this;\n },\n pause: function () {\n for (var i = 0; i < this._clipList.length; i++) {\n this._clipList[i].pause();\n }\n\n this._paused = true;\n },\n resume: function () {\n for (var i = 0; i < this._clipList.length; i++) {\n this._clipList[i].resume();\n }\n\n this._paused = false;\n },\n isPaused: function () {\n return !!this._paused;\n },\n _doneCallback: function () {\n // Clear all tracks\n this._tracks = {}; // Clear all clips\n\n this._clipList.length = 0;\n var doneList = this._doneList;\n var len = doneList.length;\n\n for (var i = 0; i < len; i++) {\n doneList[i].call(this);\n }\n },\n\n /**\n * Start the animation\n * @param {string|Function} [easing]\n * 动画缓动函数,详见{@link module:zrender/animation/easing}\n * @param {boolean} forceAnimate\n * @return {module:zrender/animation/Animator}\n */\n start: function (easing, forceAnimate) {\n var self = this;\n var clipCount = 0;\n\n var oneTrackDone = function () {\n clipCount--;\n\n if (!clipCount) {\n self._doneCallback();\n }\n };\n\n var lastClip;\n\n for (var propName in this._tracks) {\n if (!this._tracks.hasOwnProperty(propName)) {\n continue;\n }\n\n var clip = createTrackClip(this, easing, oneTrackDone, this._tracks[propName], propName, forceAnimate);\n\n if (clip) {\n this._clipList.push(clip);\n\n clipCount++; // If start after added to animation\n\n if (this.animation) {\n this.animation.addClip(clip);\n }\n\n lastClip = clip;\n }\n } // Add during callback on the last clip\n\n\n if (lastClip) {\n var oldOnFrame = lastClip.onframe;\n\n lastClip.onframe = function (target, percent) {\n oldOnFrame(target, percent);\n\n for (var i = 0; i < self._onframeList.length; i++) {\n self._onframeList[i](target, percent);\n }\n };\n } // This optimization will help the case that in the upper application\n // the view may be refreshed frequently, where animation will be\n // called repeatly but nothing changed.\n\n\n if (!clipCount) {\n this._doneCallback();\n }\n\n return this;\n },\n\n /**\n * Stop animation\n * @param {boolean} forwardToLast If move to last frame before stop\n */\n stop: function (forwardToLast) {\n var clipList = this._clipList;\n var animation = this.animation;\n\n for (var i = 0; i < clipList.length; i++) {\n var clip = clipList[i];\n\n if (forwardToLast) {\n // Move to last frame before stop\n clip.onframe(this._target, 1);\n }\n\n animation && animation.removeClip(clip);\n }\n\n clipList.length = 0;\n },\n\n /**\n * Set when animation delay starts\n * @param {number} time 单位ms\n * @return {module:zrender/animation/Animator}\n */\n delay: function (time) {\n this._delay = time;\n return this;\n },\n\n /**\n * Add callback for animation end\n * @param {Function} cb\n * @return {module:zrender/animation/Animator}\n */\n done: function (cb) {\n if (cb) {\n this._doneList.push(cb);\n }\n\n return this;\n },\n\n /**\n * @return {Array.}\n */\n getClips: function () {\n return this._clipList;\n }\n};\nvar _default = Animator;\nmodule.exports = _default;","var eventUtil = require(\"./event\");\n\n/**\n * Only implements needed gestures for mobile.\n */\nvar GestureMgr = function () {\n /**\n * @private\n * @type {Array.}\n */\n this._track = [];\n};\n\nGestureMgr.prototype = {\n constructor: GestureMgr,\n recognize: function (event, target, root) {\n this._doTrack(event, target, root);\n\n return this._recognize(event);\n },\n clear: function () {\n this._track.length = 0;\n return this;\n },\n _doTrack: function (event, target, root) {\n var touches = event.touches;\n\n if (!touches) {\n return;\n }\n\n var trackItem = {\n points: [],\n touches: [],\n target: target,\n event: event\n };\n\n for (var i = 0, len = touches.length; i < len; i++) {\n var touch = touches[i];\n var pos = eventUtil.clientToLocal(root, touch, {});\n trackItem.points.push([pos.zrX, pos.zrY]);\n trackItem.touches.push(touch);\n }\n\n this._track.push(trackItem);\n },\n _recognize: function (event) {\n for (var eventName in recognizers) {\n if (recognizers.hasOwnProperty(eventName)) {\n var gestureInfo = recognizers[eventName](this._track, event);\n\n if (gestureInfo) {\n return gestureInfo;\n }\n }\n }\n }\n};\n\nfunction dist(pointPair) {\n var dx = pointPair[1][0] - pointPair[0][0];\n var dy = pointPair[1][1] - pointPair[0][1];\n return Math.sqrt(dx * dx + dy * dy);\n}\n\nfunction center(pointPair) {\n return [(pointPair[0][0] + pointPair[1][0]) / 2, (pointPair[0][1] + pointPair[1][1]) / 2];\n}\n\nvar recognizers = {\n pinch: function (track, event) {\n var trackLen = track.length;\n\n if (!trackLen) {\n return;\n }\n\n var pinchEnd = (track[trackLen - 1] || {}).points;\n var pinchPre = (track[trackLen - 2] || {}).points || pinchEnd;\n\n if (pinchPre && pinchPre.length > 1 && pinchEnd && pinchEnd.length > 1) {\n var pinchScale = dist(pinchEnd) / dist(pinchPre);\n !isFinite(pinchScale) && (pinchScale = 1);\n event.pinchScale = pinchScale;\n var pinchCenter = center(pinchEnd);\n event.pinchX = pinchCenter[0];\n event.pinchY = pinchCenter[1];\n return {\n type: 'pinch',\n target: track[0].target,\n event: event\n };\n }\n } // Only pinch currently.\n\n};\nvar _default = GestureMgr;\nmodule.exports = _default;","// Myers' Diff Algorithm\n// Modified from https://github.com/kpdecker/jsdiff/blob/master/src/diff/base.js\nfunction Diff() {}\n\nDiff.prototype = {\n diff: function (oldArr, newArr, equals) {\n if (!equals) {\n equals = function (a, b) {\n return a === b;\n };\n }\n\n this.equals = equals;\n var self = this;\n oldArr = oldArr.slice();\n newArr = newArr.slice(); // Allow subclasses to massage the input prior to running\n\n var newLen = newArr.length;\n var oldLen = oldArr.length;\n var editLength = 1;\n var maxEditLength = newLen + oldLen;\n var bestPath = [{\n newPos: -1,\n components: []\n }]; // Seed editLength = 0, i.e. the content starts with the same values\n\n var oldPos = this.extractCommon(bestPath[0], newArr, oldArr, 0);\n\n if (bestPath[0].newPos + 1 >= newLen && oldPos + 1 >= oldLen) {\n var indices = [];\n\n for (var i = 0; i < newArr.length; i++) {\n indices.push(i);\n } // Identity per the equality and tokenizer\n\n\n return [{\n indices: indices,\n count: newArr.length\n }];\n } // Main worker method. checks all permutations of a given edit length for acceptance.\n\n\n function execEditLength() {\n for (var diagonalPath = -1 * editLength; diagonalPath <= editLength; diagonalPath += 2) {\n var basePath;\n var addPath = bestPath[diagonalPath - 1];\n var removePath = bestPath[diagonalPath + 1];\n var oldPos = (removePath ? removePath.newPos : 0) - diagonalPath;\n\n if (addPath) {\n // No one else is going to attempt to use this value, clear it\n bestPath[diagonalPath - 1] = undefined;\n }\n\n var canAdd = addPath && addPath.newPos + 1 < newLen;\n var canRemove = removePath && 0 <= oldPos && oldPos < oldLen;\n\n if (!canAdd && !canRemove) {\n // If this path is a terminal then prune\n bestPath[diagonalPath] = undefined;\n continue;\n } // Select the diagonal that we want to branch from. We select the prior\n // path whose position in the new string is the farthest from the origin\n // and does not pass the bounds of the diff graph\n\n\n if (!canAdd || canRemove && addPath.newPos < removePath.newPos) {\n basePath = clonePath(removePath);\n self.pushComponent(basePath.components, undefined, true);\n } else {\n basePath = addPath; // No need to clone, we've pulled it from the list\n\n basePath.newPos++;\n self.pushComponent(basePath.components, true, undefined);\n }\n\n oldPos = self.extractCommon(basePath, newArr, oldArr, diagonalPath); // If we have hit the end of both strings, then we are done\n\n if (basePath.newPos + 1 >= newLen && oldPos + 1 >= oldLen) {\n return buildValues(self, basePath.components, newArr, oldArr);\n } else {\n // Otherwise track this path as a potential candidate and continue.\n bestPath[diagonalPath] = basePath;\n }\n }\n\n editLength++;\n }\n\n while (editLength <= maxEditLength) {\n var ret = execEditLength();\n\n if (ret) {\n return ret;\n }\n }\n },\n pushComponent: function (components, added, removed) {\n var last = components[components.length - 1];\n\n if (last && last.added === added && last.removed === removed) {\n // We need to clone here as the component clone operation is just\n // as shallow array clone\n components[components.length - 1] = {\n count: last.count + 1,\n added: added,\n removed: removed\n };\n } else {\n components.push({\n count: 1,\n added: added,\n removed: removed\n });\n }\n },\n extractCommon: function (basePath, newArr, oldArr, diagonalPath) {\n var newLen = newArr.length;\n var oldLen = oldArr.length;\n var newPos = basePath.newPos;\n var oldPos = newPos - diagonalPath;\n var commonCount = 0;\n\n while (newPos + 1 < newLen && oldPos + 1 < oldLen && this.equals(newArr[newPos + 1], oldArr[oldPos + 1])) {\n newPos++;\n oldPos++;\n commonCount++;\n }\n\n if (commonCount) {\n basePath.components.push({\n count: commonCount\n });\n }\n\n basePath.newPos = newPos;\n return oldPos;\n },\n tokenize: function (value) {\n return value.slice();\n },\n join: function (value) {\n return value.slice();\n }\n};\n\nfunction buildValues(diff, components, newArr, oldArr) {\n var componentPos = 0;\n var componentLen = components.length;\n var newPos = 0;\n var oldPos = 0;\n\n for (; componentPos < componentLen; componentPos++) {\n var component = components[componentPos];\n\n if (!component.removed) {\n var indices = [];\n\n for (var i = newPos; i < newPos + component.count; i++) {\n indices.push(i);\n }\n\n component.indices = indices;\n newPos += component.count; // Common case\n\n if (!component.added) {\n oldPos += component.count;\n }\n } else {\n var indices = [];\n\n for (var i = oldPos; i < oldPos + component.count; i++) {\n indices.push(i);\n }\n\n component.indices = indices;\n oldPos += component.count;\n }\n }\n\n return components;\n}\n\nfunction clonePath(path) {\n return {\n newPos: path.newPos,\n components: path.components.slice(0)\n };\n}\n\nvar arrayDiff = new Diff();\n\nfunction _default(oldArr, newArr, callback) {\n return arrayDiff.diff(oldArr, newArr, callback);\n}\n\nmodule.exports = _default;","var matrix = require(\"../core/matrix\");\n\nvar vector = require(\"../core/vector\");\n\n/**\n * 提供变换扩展\n * @module zrender/mixin/Transformable\n * @author pissang (https://www.github.com/pissang)\n */\nvar mIdentity = matrix.identity;\nvar EPSILON = 5e-5;\n\nfunction isNotAroundZero(val) {\n return val > EPSILON || val < -EPSILON;\n}\n/**\n * @alias module:zrender/mixin/Transformable\n * @constructor\n */\n\n\nvar Transformable = function (opts) {\n opts = opts || {}; // If there are no given position, rotation, scale\n\n if (!opts.position) {\n /**\n * 平移\n * @type {Array.}\n * @default [0, 0]\n */\n this.position = [0, 0];\n }\n\n if (opts.rotation == null) {\n /**\n * 旋转\n * @type {Array.}\n * @default 0\n */\n this.rotation = 0;\n }\n\n if (!opts.scale) {\n /**\n * 缩放\n * @type {Array.}\n * @default [1, 1]\n */\n this.scale = [1, 1];\n }\n /**\n * 旋转和缩放的原点\n * @type {Array.}\n * @default null\n */\n\n\n this.origin = this.origin || null;\n};\n\nvar transformableProto = Transformable.prototype;\ntransformableProto.transform = null;\n/**\n * 判断是否需要有坐标变换\n * 如果有坐标变换, 则从position, rotation, scale以及父节点的transform计算出自身的transform矩阵\n */\n\ntransformableProto.needLocalTransform = function () {\n return isNotAroundZero(this.rotation) || isNotAroundZero(this.position[0]) || isNotAroundZero(this.position[1]) || isNotAroundZero(this.scale[0] - 1) || isNotAroundZero(this.scale[1] - 1);\n};\n\nvar scaleTmp = [];\n\ntransformableProto.updateTransform = function () {\n var parent = this.parent;\n var parentHasTransform = parent && parent.transform;\n var needLocalTransform = this.needLocalTransform();\n var m = this.transform;\n\n if (!(needLocalTransform || parentHasTransform)) {\n m && mIdentity(m);\n return;\n }\n\n m = m || matrix.create();\n\n if (needLocalTransform) {\n this.getLocalTransform(m);\n } else {\n mIdentity(m);\n } // 应用父节点变换\n\n\n if (parentHasTransform) {\n if (needLocalTransform) {\n matrix.mul(m, parent.transform, m);\n } else {\n matrix.copy(m, parent.transform);\n }\n } // 保存这个变换矩阵\n\n\n this.transform = m;\n var globalScaleRatio = this.globalScaleRatio;\n\n if (globalScaleRatio != null && globalScaleRatio !== 1) {\n this.getGlobalScale(scaleTmp);\n var relX = scaleTmp[0] < 0 ? -1 : 1;\n var relY = scaleTmp[1] < 0 ? -1 : 1;\n var sx = ((scaleTmp[0] - relX) * globalScaleRatio + relX) / scaleTmp[0] || 0;\n var sy = ((scaleTmp[1] - relY) * globalScaleRatio + relY) / scaleTmp[1] || 0;\n m[0] *= sx;\n m[1] *= sx;\n m[2] *= sy;\n m[3] *= sy;\n }\n\n this.invTransform = this.invTransform || matrix.create();\n matrix.invert(this.invTransform, m);\n};\n\ntransformableProto.getLocalTransform = function (m) {\n return Transformable.getLocalTransform(this, m);\n};\n/**\n * 将自己的transform应用到context上\n * @param {CanvasRenderingContext2D} ctx\n */\n\n\ntransformableProto.setTransform = function (ctx) {\n var m = this.transform;\n var dpr = ctx.dpr || 1;\n\n if (m) {\n ctx.setTransform(dpr * m[0], dpr * m[1], dpr * m[2], dpr * m[3], dpr * m[4], dpr * m[5]);\n } else {\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n }\n};\n\ntransformableProto.restoreTransform = function (ctx) {\n var dpr = ctx.dpr || 1;\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n};\n\nvar tmpTransform = [];\nvar originTransform = matrix.create();\n\ntransformableProto.setLocalTransform = function (m) {\n if (!m) {\n // TODO return or set identity?\n return;\n }\n\n var sx = m[0] * m[0] + m[1] * m[1];\n var sy = m[2] * m[2] + m[3] * m[3];\n var position = this.position;\n var scale = this.scale;\n\n if (isNotAroundZero(sx - 1)) {\n sx = Math.sqrt(sx);\n }\n\n if (isNotAroundZero(sy - 1)) {\n sy = Math.sqrt(sy);\n }\n\n if (m[0] < 0) {\n sx = -sx;\n }\n\n if (m[3] < 0) {\n sy = -sy;\n }\n\n position[0] = m[4];\n position[1] = m[5];\n scale[0] = sx;\n scale[1] = sy;\n this.rotation = Math.atan2(-m[1] / sy, m[0] / sx);\n};\n/**\n * 分解`transform`矩阵到`position`, `rotation`, `scale`\n */\n\n\ntransformableProto.decomposeTransform = function () {\n if (!this.transform) {\n return;\n }\n\n var parent = this.parent;\n var m = this.transform;\n\n if (parent && parent.transform) {\n // Get local transform and decompose them to position, scale, rotation\n matrix.mul(tmpTransform, parent.invTransform, m);\n m = tmpTransform;\n }\n\n var origin = this.origin;\n\n if (origin && (origin[0] || origin[1])) {\n originTransform[4] = origin[0];\n originTransform[5] = origin[1];\n matrix.mul(tmpTransform, m, originTransform);\n tmpTransform[4] -= origin[0];\n tmpTransform[5] -= origin[1];\n m = tmpTransform;\n }\n\n this.setLocalTransform(m);\n};\n/**\n * Get global scale\n * @return {Array.}\n */\n\n\ntransformableProto.getGlobalScale = function (out) {\n var m = this.transform;\n out = out || [];\n\n if (!m) {\n out[0] = 1;\n out[1] = 1;\n return out;\n }\n\n out[0] = Math.sqrt(m[0] * m[0] + m[1] * m[1]);\n out[1] = Math.sqrt(m[2] * m[2] + m[3] * m[3]);\n\n if (m[0] < 0) {\n out[0] = -out[0];\n }\n\n if (m[3] < 0) {\n out[1] = -out[1];\n }\n\n return out;\n};\n/**\n * 变换坐标位置到 shape 的局部坐标空间\n * @method\n * @param {number} x\n * @param {number} y\n * @return {Array.}\n */\n\n\ntransformableProto.transformCoordToLocal = function (x, y) {\n var v2 = [x, y];\n var invTransform = this.invTransform;\n\n if (invTransform) {\n vector.applyTransform(v2, v2, invTransform);\n }\n\n return v2;\n};\n/**\n * 变换局部坐标位置到全局坐标空间\n * @method\n * @param {number} x\n * @param {number} y\n * @return {Array.}\n */\n\n\ntransformableProto.transformCoordToGlobal = function (x, y) {\n var v2 = [x, y];\n var transform = this.transform;\n\n if (transform) {\n vector.applyTransform(v2, v2, transform);\n }\n\n return v2;\n};\n/**\n * @static\n * @param {Object} target\n * @param {Array.} target.origin\n * @param {number} target.rotation\n * @param {Array.} target.position\n * @param {Array.} [m]\n */\n\n\nTransformable.getLocalTransform = function (target, m) {\n m = m || [];\n mIdentity(m);\n var origin = target.origin;\n var scale = target.scale || [1, 1];\n var rotation = target.rotation || 0;\n var position = target.position || [0, 0];\n\n if (origin) {\n // Translate to origin\n m[4] -= origin[0];\n m[5] -= origin[1];\n }\n\n matrix.scale(m, m, scale);\n\n if (rotation) {\n matrix.rotate(m, m, rotation);\n }\n\n if (origin) {\n // Translate back from origin\n m[4] += origin[0];\n m[5] += origin[1];\n }\n\n m[4] += position[0];\n m[5] += position[1];\n return m;\n};\n\nvar _default = Transformable;\nmodule.exports = _default;","var Displayable = require(\"./Displayable\");\n\nvar BoundingRect = require(\"../core/BoundingRect\");\n\nvar zrUtil = require(\"../core/util\");\n\nvar imageHelper = require(\"./helper/image\");\n\n/**\n * @alias zrender/graphic/Image\n * @extends module:zrender/graphic/Displayable\n * @constructor\n * @param {Object} opts\n */\nfunction ZImage(opts) {\n Displayable.call(this, opts);\n}\n\nZImage.prototype = {\n constructor: ZImage,\n type: 'image',\n brush: function (ctx, prevEl) {\n var style = this.style;\n var src = style.image; // Must bind each time\n\n style.bind(ctx, this, prevEl);\n var image = this._image = imageHelper.createOrUpdateImage(src, this._image, this, this.onload);\n\n if (!image || !imageHelper.isImageReady(image)) {\n return;\n } // 图片已经加载完成\n // if (image.nodeName.toUpperCase() == 'IMG') {\n // if (!image.complete) {\n // return;\n // }\n // }\n // Else is canvas\n\n\n var x = style.x || 0;\n var y = style.y || 0;\n var width = style.width;\n var height = style.height;\n var aspect = image.width / image.height;\n\n if (width == null && height != null) {\n // Keep image/height ratio\n width = height * aspect;\n } else if (height == null && width != null) {\n height = width / aspect;\n } else if (width == null && height == null) {\n width = image.width;\n height = image.height;\n } // 设置transform\n\n\n this.setTransform(ctx);\n\n if (style.sWidth && style.sHeight) {\n var sx = style.sx || 0;\n var sy = style.sy || 0;\n ctx.drawImage(image, sx, sy, style.sWidth, style.sHeight, x, y, width, height);\n } else if (style.sx && style.sy) {\n var sx = style.sx;\n var sy = style.sy;\n var sWidth = width - sx;\n var sHeight = height - sy;\n ctx.drawImage(image, sx, sy, sWidth, sHeight, x, y, width, height);\n } else {\n ctx.drawImage(image, x, y, width, height);\n } // Draw rect text\n\n\n if (style.text != null) {\n // Only restore transform when needs draw text.\n this.restoreTransform(ctx);\n this.drawRectText(ctx, this.getBoundingRect());\n }\n },\n getBoundingRect: function () {\n var style = this.style;\n\n if (!this._rect) {\n this._rect = new BoundingRect(style.x || 0, style.y || 0, style.width || 0, style.height || 0);\n }\n\n return this._rect;\n }\n};\nzrUtil.inherits(ZImage, Displayable);\nvar _default = ZImage;\nmodule.exports = _default;","/**\n * 3x2矩阵操作类\n * @exports zrender/tool/matrix\n */\n\n/* global Float32Array */\nvar ArrayCtor = typeof Float32Array === 'undefined' ? Array : Float32Array;\n/**\n * Create a identity matrix.\n * @return {Float32Array|Array.}\n */\n\nfunction create() {\n var out = new ArrayCtor(6);\n identity(out);\n return out;\n}\n/**\n * 设置矩阵为单位矩阵\n * @param {Float32Array|Array.} out\n */\n\n\nfunction identity(out) {\n out[0] = 1;\n out[1] = 0;\n out[2] = 0;\n out[3] = 1;\n out[4] = 0;\n out[5] = 0;\n return out;\n}\n/**\n * 复制矩阵\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} m\n */\n\n\nfunction copy(out, m) {\n out[0] = m[0];\n out[1] = m[1];\n out[2] = m[2];\n out[3] = m[3];\n out[4] = m[4];\n out[5] = m[5];\n return out;\n}\n/**\n * 矩阵相乘\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} m1\n * @param {Float32Array|Array.} m2\n */\n\n\nfunction mul(out, m1, m2) {\n // Consider matrix.mul(m, m2, m);\n // where out is the same as m2.\n // So use temp variable to escape error.\n var out0 = m1[0] * m2[0] + m1[2] * m2[1];\n var out1 = m1[1] * m2[0] + m1[3] * m2[1];\n var out2 = m1[0] * m2[2] + m1[2] * m2[3];\n var out3 = m1[1] * m2[2] + m1[3] * m2[3];\n var out4 = m1[0] * m2[4] + m1[2] * m2[5] + m1[4];\n var out5 = m1[1] * m2[4] + m1[3] * m2[5] + m1[5];\n out[0] = out0;\n out[1] = out1;\n out[2] = out2;\n out[3] = out3;\n out[4] = out4;\n out[5] = out5;\n return out;\n}\n/**\n * 平移变换\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} a\n * @param {Float32Array|Array.} v\n */\n\n\nfunction translate(out, a, v) {\n out[0] = a[0];\n out[1] = a[1];\n out[2] = a[2];\n out[3] = a[3];\n out[4] = a[4] + v[0];\n out[5] = a[5] + v[1];\n return out;\n}\n/**\n * 旋转变换\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} a\n * @param {number} rad\n */\n\n\nfunction rotate(out, a, rad) {\n var aa = a[0];\n var ac = a[2];\n var atx = a[4];\n var ab = a[1];\n var ad = a[3];\n var aty = a[5];\n var st = Math.sin(rad);\n var ct = Math.cos(rad);\n out[0] = aa * ct + ab * st;\n out[1] = -aa * st + ab * ct;\n out[2] = ac * ct + ad * st;\n out[3] = -ac * st + ct * ad;\n out[4] = ct * atx + st * aty;\n out[5] = ct * aty - st * atx;\n return out;\n}\n/**\n * 缩放变换\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} a\n * @param {Float32Array|Array.} v\n */\n\n\nfunction scale(out, a, v) {\n var vx = v[0];\n var vy = v[1];\n out[0] = a[0] * vx;\n out[1] = a[1] * vy;\n out[2] = a[2] * vx;\n out[3] = a[3] * vy;\n out[4] = a[4] * vx;\n out[5] = a[5] * vy;\n return out;\n}\n/**\n * 求逆矩阵\n * @param {Float32Array|Array.} out\n * @param {Float32Array|Array.} a\n */\n\n\nfunction invert(out, a) {\n var aa = a[0];\n var ac = a[2];\n var atx = a[4];\n var ab = a[1];\n var ad = a[3];\n var aty = a[5];\n var det = aa * ad - ab * ac;\n\n if (!det) {\n return null;\n }\n\n det = 1.0 / det;\n out[0] = ad * det;\n out[1] = -ab * det;\n out[2] = -ac * det;\n out[3] = aa * det;\n out[4] = (ac * aty - ad * atx) * det;\n out[5] = (ab * atx - aa * aty) * det;\n return out;\n}\n/**\n * Clone a new matrix.\n * @param {Float32Array|Array.} a\n */\n\n\nfunction clone(a) {\n var b = create();\n copy(b, a);\n return b;\n}\n\nexports.create = create;\nexports.identity = identity;\nexports.copy = copy;\nexports.mul = mul;\nexports.translate = translate;\nexports.rotate = rotate;\nexports.scale = scale;\nexports.invert = invert;\nexports.clone = clone;","var zrUtil = require(\"../core/util\");\n\nvar Style = require(\"./Style\");\n\nvar Element = require(\"../Element\");\n\nvar RectText = require(\"./mixin/RectText\");\n\n/**\n * Base class of all displayable graphic objects\n * @module zrender/graphic/Displayable\n */\n\n/**\n * @alias module:zrender/graphic/Displayable\n * @extends module:zrender/Element\n * @extends module:zrender/graphic/mixin/RectText\n */\nfunction Displayable(opts) {\n opts = opts || {};\n Element.call(this, opts); // Extend properties\n\n for (var name in opts) {\n if (opts.hasOwnProperty(name) && name !== 'style') {\n this[name] = opts[name];\n }\n }\n /**\n * @type {module:zrender/graphic/Style}\n */\n\n\n this.style = new Style(opts.style, this);\n this._rect = null; // Shapes for cascade clipping.\n // Can only be `null`/`undefined` or an non-empty array, MUST NOT be an empty array.\n // because it is easy to only using null to check whether clipPaths changed.\n\n this.__clipPaths = null; // FIXME Stateful must be mixined after style is setted\n // Stateful.call(this, opts);\n}\n\nDisplayable.prototype = {\n constructor: Displayable,\n type: 'displayable',\n\n /**\n * Dirty flag. From which painter will determine if this displayable object needs brush.\n * @name module:zrender/graphic/Displayable#__dirty\n * @type {boolean}\n */\n __dirty: true,\n\n /**\n * Whether the displayable object is visible. when it is true, the displayable object\n * is not drawn, but the mouse event can still trigger the object.\n * @name module:/zrender/graphic/Displayable#invisible\n * @type {boolean}\n * @default false\n */\n invisible: false,\n\n /**\n * @name module:/zrender/graphic/Displayable#z\n * @type {number}\n * @default 0\n */\n z: 0,\n\n /**\n * @name module:/zrender/graphic/Displayable#z\n * @type {number}\n * @default 0\n */\n z2: 0,\n\n /**\n * The z level determines the displayable object can be drawn in which layer canvas.\n * @name module:/zrender/graphic/Displayable#zlevel\n * @type {number}\n * @default 0\n */\n zlevel: 0,\n\n /**\n * Whether it can be dragged.\n * @name module:/zrender/graphic/Displayable#draggable\n * @type {boolean}\n * @default false\n */\n draggable: false,\n\n /**\n * Whether is it dragging.\n * @name module:/zrender/graphic/Displayable#draggable\n * @type {boolean}\n * @default false\n */\n dragging: false,\n\n /**\n * Whether to respond to mouse events.\n * @name module:/zrender/graphic/Displayable#silent\n * @type {boolean}\n * @default false\n */\n silent: false,\n\n /**\n * If enable culling\n * @type {boolean}\n * @default false\n */\n culling: false,\n\n /**\n * Mouse cursor when hovered\n * @name module:/zrender/graphic/Displayable#cursor\n * @type {string}\n */\n cursor: 'pointer',\n\n /**\n * If hover area is bounding rect\n * @name module:/zrender/graphic/Displayable#rectHover\n * @type {string}\n */\n rectHover: false,\n\n /**\n * Render the element progressively when the value >= 0,\n * usefull for large data.\n * @type {boolean}\n */\n progressive: false,\n\n /**\n * @type {boolean}\n */\n incremental: false,\n\n /**\n * Scale ratio for global scale.\n * @type {boolean}\n */\n globalScaleRatio: 1,\n beforeBrush: function (ctx) {},\n afterBrush: function (ctx) {},\n\n /**\n * Graphic drawing method.\n * @param {CanvasRenderingContext2D} ctx\n */\n // Interface\n brush: function (ctx, prevEl) {},\n\n /**\n * Get the minimum bounding box.\n * @return {module:zrender/core/BoundingRect}\n */\n // Interface\n getBoundingRect: function () {},\n\n /**\n * If displayable element contain coord x, y\n * @param {number} x\n * @param {number} y\n * @return {boolean}\n */\n contain: function (x, y) {\n return this.rectContain(x, y);\n },\n\n /**\n * @param {Function} cb\n * @param {} context\n */\n traverse: function (cb, context) {\n cb.call(context, this);\n },\n\n /**\n * If bounding rect of element contain coord x, y\n * @param {number} x\n * @param {number} y\n * @return {boolean}\n */\n rectContain: function (x, y) {\n var coord = this.transformCoordToLocal(x, y);\n var rect = this.getBoundingRect();\n return rect.contain(coord[0], coord[1]);\n },\n\n /**\n * Mark displayable element dirty and refresh next frame\n */\n dirty: function () {\n this.__dirty = this.__dirtyText = true;\n this._rect = null;\n this.__zr && this.__zr.refresh();\n },\n\n /**\n * If displayable object binded any event\n * @return {boolean}\n */\n // TODO, events bound by bind\n // isSilent: function () {\n // return !(\n // this.hoverable || this.draggable\n // || this.onmousemove || this.onmouseover || this.onmouseout\n // || this.onmousedown || this.onmouseup || this.onclick\n // || this.ondragenter || this.ondragover || this.ondragleave\n // || this.ondrop\n // );\n // },\n\n /**\n * Alias for animate('style')\n * @param {boolean} loop\n */\n animateStyle: function (loop) {\n return this.animate('style', loop);\n },\n attrKV: function (key, value) {\n if (key !== 'style') {\n Element.prototype.attrKV.call(this, key, value);\n } else {\n this.style.set(value);\n }\n },\n\n /**\n * @param {Object|string} key\n * @param {*} value\n */\n setStyle: function (key, value) {\n this.style.set(key, value);\n this.dirty(false);\n return this;\n },\n\n /**\n * Use given style object\n * @param {Object} obj\n */\n useStyle: function (obj) {\n this.style = new Style(obj, this);\n this.dirty(false);\n return this;\n },\n\n /**\n * The string value of `textPosition` needs to be calculated to a real postion.\n * For example, `'inside'` is calculated to `[rect.width/2, rect.height/2]`\n * by default. See `contain/text.js#calculateTextPosition` for more details.\n * But some coutom shapes like \"pin\", \"flag\" have center that is not exactly\n * `[width/2, height/2]`. So we provide this hook to customize the calculation\n * for those shapes. It will be called if the `style.textPosition` is a string.\n * @param {Obejct} [out] Prepared out object. If not provided, this method should\n * be responsible for creating one.\n * @param {module:zrender/graphic/Style} style\n * @param {Object} rect {x, y, width, height}\n * @return {Obejct} out The same as the input out.\n * {\n * x: number. mandatory.\n * y: number. mandatory.\n * textAlign: string. optional. use style.textAlign by default.\n * textVerticalAlign: string. optional. use style.textVerticalAlign by default.\n * }\n */\n calculateTextPosition: null\n};\nzrUtil.inherits(Displayable, Element);\nzrUtil.mixin(Displayable, RectText); // zrUtil.mixin(Displayable, Stateful);\n\nvar _default = Displayable;\nmodule.exports = _default;","var zrUtil = require(\"./core/util\");\n\nexports.util = zrUtil;\n\nvar matrix = require(\"./core/matrix\");\n\nexports.matrix = matrix;\n\nvar vector = require(\"./core/vector\");\n\nexports.vector = vector;\n\nvar colorTool = require(\"./tool/color\");\n\nexports.color = colorTool;\n\nvar pathTool = require(\"./tool/path\");\n\nexports.path = pathTool;\n\nvar _parseSVG = require(\"./tool/parseSVG\");\n\nvar parseSVG = _parseSVG.parseSVG;\nexports.parseSVG = _parseSVG.parseSVG;\n\nvar _Group = require(\"./container/Group\");\n\nexports.Group = _Group;\n\nvar _Path = require(\"./graphic/Path\");\n\nexports.Path = _Path;\n\nvar _Image = require(\"./graphic/Image\");\n\nexports.Image = _Image;\n\nvar _CompoundPath = require(\"./graphic/CompoundPath\");\n\nexports.CompoundPath = _CompoundPath;\n\nvar _Text = require(\"./graphic/Text\");\n\nexports.Text = _Text;\n\nvar _IncrementalDisplayable = require(\"./graphic/IncrementalDisplayable\");\n\nexports.IncrementalDisplayable = _IncrementalDisplayable;\n\nvar _Arc = require(\"./graphic/shape/Arc\");\n\nexports.Arc = _Arc;\n\nvar _BezierCurve = require(\"./graphic/shape/BezierCurve\");\n\nexports.BezierCurve = _BezierCurve;\n\nvar _Circle = require(\"./graphic/shape/Circle\");\n\nexports.Circle = _Circle;\n\nvar _Droplet = require(\"./graphic/shape/Droplet\");\n\nexports.Droplet = _Droplet;\n\nvar _Ellipse = require(\"./graphic/shape/Ellipse\");\n\nexports.Ellipse = _Ellipse;\n\nvar _Heart = require(\"./graphic/shape/Heart\");\n\nexports.Heart = _Heart;\n\nvar _Isogon = require(\"./graphic/shape/Isogon\");\n\nexports.Isogon = _Isogon;\n\nvar _Line = require(\"./graphic/shape/Line\");\n\nexports.Line = _Line;\n\nvar _Polygon = require(\"./graphic/shape/Polygon\");\n\nexports.Polygon = _Polygon;\n\nvar _Polyline = require(\"./graphic/shape/Polyline\");\n\nexports.Polyline = _Polyline;\n\nvar _Rect = require(\"./graphic/shape/Rect\");\n\nexports.Rect = _Rect;\n\nvar _Ring = require(\"./graphic/shape/Ring\");\n\nexports.Ring = _Ring;\n\nvar _Rose = require(\"./graphic/shape/Rose\");\n\nexports.Rose = _Rose;\n\nvar _Sector = require(\"./graphic/shape/Sector\");\n\nexports.Sector = _Sector;\n\nvar _Star = require(\"./graphic/shape/Star\");\n\nexports.Star = _Star;\n\nvar _Trochoid = require(\"./graphic/shape/Trochoid\");\n\nexports.Trochoid = _Trochoid;\n\nvar _LinearGradient = require(\"./graphic/LinearGradient\");\n\nexports.LinearGradient = _LinearGradient;\n\nvar _RadialGradient = require(\"./graphic/RadialGradient\");\n\nexports.RadialGradient = _RadialGradient;\n\nvar _Pattern = require(\"./graphic/Pattern\");\n\nexports.Pattern = _Pattern;\n\nvar _BoundingRect = require(\"./core/BoundingRect\");\n\nexports.BoundingRect = _BoundingRect;","/**\n * Event Mixin\n * @module zrender/mixin/Eventful\n * @author Kener (@Kener-林峰, kener.linfeng@gmail.com)\n * pissang (https://www.github.com/pissang)\n */\nvar arrySlice = Array.prototype.slice;\n/**\n * Event dispatcher.\n *\n * @alias module:zrender/mixin/Eventful\n * @constructor\n * @param {Object} [eventProcessor] The object eventProcessor is the scope when\n * `eventProcessor.xxx` called.\n * @param {Function} [eventProcessor.normalizeQuery]\n * param: {string|Object} Raw query.\n * return: {string|Object} Normalized query.\n * @param {Function} [eventProcessor.filter] Event will be dispatched only\n * if it returns `true`.\n * param: {string} eventType\n * param: {string|Object} query\n * return: {boolean}\n * @param {Function} [eventProcessor.afterTrigger] Called after all handlers called.\n * param: {string} eventType\n */\n\nvar Eventful = function (eventProcessor) {\n this._$handlers = {};\n this._$eventProcessor = eventProcessor;\n};\n\nEventful.prototype = {\n constructor: Eventful,\n\n /**\n * The handler can only be triggered once, then removed.\n *\n * @param {string} event The event name.\n * @param {string|Object} [query] Condition used on event filter.\n * @param {Function} handler The event handler.\n * @param {Object} context\n */\n one: function (event, query, handler, context) {\n return on(this, event, query, handler, context, true);\n },\n\n /**\n * Bind a handler.\n *\n * @param {string} event The event name.\n * @param {string|Object} [query] Condition used on event filter.\n * @param {Function} handler The event handler.\n * @param {Object} [context]\n */\n on: function (event, query, handler, context) {\n return on(this, event, query, handler, context, false);\n },\n\n /**\n * Whether any handler has bound.\n *\n * @param {string} event\n * @return {boolean}\n */\n isSilent: function (event) {\n var _h = this._$handlers;\n return !_h[event] || !_h[event].length;\n },\n\n /**\n * Unbind a event.\n *\n * @param {string} [event] The event name.\n * If no `event` input, \"off\" all listeners.\n * @param {Function} [handler] The event handler.\n * If no `handler` input, \"off\" all listeners of the `event`.\n */\n off: function (event, handler) {\n var _h = this._$handlers;\n\n if (!event) {\n this._$handlers = {};\n return this;\n }\n\n if (handler) {\n if (_h[event]) {\n var newList = [];\n\n for (var i = 0, l = _h[event].length; i < l; i++) {\n if (_h[event][i].h !== handler) {\n newList.push(_h[event][i]);\n }\n }\n\n _h[event] = newList;\n }\n\n if (_h[event] && _h[event].length === 0) {\n delete _h[event];\n }\n } else {\n delete _h[event];\n }\n\n return this;\n },\n\n /**\n * Dispatch a event.\n *\n * @param {string} type The event name.\n */\n trigger: function (type) {\n var _h = this._$handlers[type];\n var eventProcessor = this._$eventProcessor;\n\n if (_h) {\n var args = arguments;\n var argLen = args.length;\n\n if (argLen > 3) {\n args = arrySlice.call(args, 1);\n }\n\n var len = _h.length;\n\n for (var i = 0; i < len;) {\n var hItem = _h[i];\n\n if (eventProcessor && eventProcessor.filter && hItem.query != null && !eventProcessor.filter(type, hItem.query)) {\n i++;\n continue;\n } // Optimize advise from backbone\n\n\n switch (argLen) {\n case 1:\n hItem.h.call(hItem.ctx);\n break;\n\n case 2:\n hItem.h.call(hItem.ctx, args[1]);\n break;\n\n case 3:\n hItem.h.call(hItem.ctx, args[1], args[2]);\n break;\n\n default:\n // have more than 2 given arguments\n hItem.h.apply(hItem.ctx, args);\n break;\n }\n\n if (hItem.one) {\n _h.splice(i, 1);\n\n len--;\n } else {\n i++;\n }\n }\n }\n\n eventProcessor && eventProcessor.afterTrigger && eventProcessor.afterTrigger(type);\n return this;\n },\n\n /**\n * Dispatch a event with context, which is specified at the last parameter.\n *\n * @param {string} type The event name.\n */\n triggerWithContext: function (type) {\n var _h = this._$handlers[type];\n var eventProcessor = this._$eventProcessor;\n\n if (_h) {\n var args = arguments;\n var argLen = args.length;\n\n if (argLen > 4) {\n args = arrySlice.call(args, 1, args.length - 1);\n }\n\n var ctx = args[args.length - 1];\n var len = _h.length;\n\n for (var i = 0; i < len;) {\n var hItem = _h[i];\n\n if (eventProcessor && eventProcessor.filter && hItem.query != null && !eventProcessor.filter(type, hItem.query)) {\n i++;\n continue;\n } // Optimize advise from backbone\n\n\n switch (argLen) {\n case 1:\n hItem.h.call(ctx);\n break;\n\n case 2:\n hItem.h.call(ctx, args[1]);\n break;\n\n case 3:\n hItem.h.call(ctx, args[1], args[2]);\n break;\n\n default:\n // have more than 2 given arguments\n hItem.h.apply(ctx, args);\n break;\n }\n\n if (hItem.one) {\n _h.splice(i, 1);\n\n len--;\n } else {\n i++;\n }\n }\n }\n\n eventProcessor && eventProcessor.afterTrigger && eventProcessor.afterTrigger(type);\n return this;\n }\n};\n\nfunction normalizeQuery(host, query) {\n var eventProcessor = host._$eventProcessor;\n\n if (query != null && eventProcessor && eventProcessor.normalizeQuery) {\n query = eventProcessor.normalizeQuery(query);\n }\n\n return query;\n}\n\nfunction on(eventful, event, query, handler, context, isOnce) {\n var _h = eventful._$handlers;\n\n if (typeof query === 'function') {\n context = handler;\n handler = query;\n query = null;\n }\n\n if (!handler || !event) {\n return eventful;\n }\n\n query = normalizeQuery(eventful, query);\n\n if (!_h[event]) {\n _h[event] = [];\n }\n\n for (var i = 0; i < _h[event].length; i++) {\n if (_h[event][i].h === handler) {\n return eventful;\n }\n }\n\n var wrap = {\n h: handler,\n one: isOnce,\n query: query,\n ctx: context || eventful,\n // FIXME\n // Do not publish this feature util it is proved that it makes sense.\n callAtLast: handler.zrEventfulCallAtLast\n };\n var lastIndex = _h[event].length - 1;\n var lastWrap = _h[event][lastIndex];\n lastWrap && lastWrap.callAtLast ? _h[event].splice(lastIndex, 0, wrap) : _h[event].push(wrap);\n return eventful;\n} // ----------------------\n// The events in zrender\n// ----------------------\n\n/**\n * @event module:zrender/mixin/Eventful#onclick\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmouseover\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmouseout\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmousemove\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmousewheel\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmousedown\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#onmouseup\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondrag\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondragstart\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondragend\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondragenter\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondragleave\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondragover\n * @type {Function}\n * @default null\n */\n\n/**\n * @event module:zrender/mixin/Eventful#ondrop\n * @type {Function}\n * @default null\n */\n\n\nvar _default = Eventful;\nmodule.exports = _default;","var curve = require(\"./curve\");\n\nvar vec2 = require(\"./vector\");\n\nvar bbox = require(\"./bbox\");\n\nvar BoundingRect = require(\"./BoundingRect\");\n\nvar _config = require(\"../config\");\n\nvar dpr = _config.devicePixelRatio;\n\n/**\n * Path 代理,可以在`buildPath`中用于替代`ctx`, 会保存每个path操作的命令到pathCommands属性中\n * 可以用于 isInsidePath 判断以及获取boundingRect\n *\n * @module zrender/core/PathProxy\n * @author Yi Shen (http://www.github.com/pissang)\n */\n// TODO getTotalLength, getPointAtLength\n\n/* global Float32Array */\nvar CMD = {\n M: 1,\n L: 2,\n C: 3,\n Q: 4,\n A: 5,\n Z: 6,\n // Rect\n R: 7\n}; // var CMD_MEM_SIZE = {\n// M: 3,\n// L: 3,\n// C: 7,\n// Q: 5,\n// A: 9,\n// R: 5,\n// Z: 1\n// };\n\nvar min = [];\nvar max = [];\nvar min2 = [];\nvar max2 = [];\nvar mathMin = Math.min;\nvar mathMax = Math.max;\nvar mathCos = Math.cos;\nvar mathSin = Math.sin;\nvar mathSqrt = Math.sqrt;\nvar mathAbs = Math.abs;\nvar hasTypedArray = typeof Float32Array !== 'undefined';\n/**\n * @alias module:zrender/core/PathProxy\n * @constructor\n */\n\nvar PathProxy = function (notSaveData) {\n this._saveData = !(notSaveData || false);\n\n if (this._saveData) {\n /**\n * Path data. Stored as flat array\n * @type {Array.}\n */\n this.data = [];\n }\n\n this._ctx = null;\n};\n/**\n * 快速计算Path包围盒(并不是最小包围盒)\n * @return {Object}\n */\n\n\nPathProxy.prototype = {\n constructor: PathProxy,\n _xi: 0,\n _yi: 0,\n _x0: 0,\n _y0: 0,\n // Unit x, Unit y. Provide for avoiding drawing that too short line segment\n _ux: 0,\n _uy: 0,\n _len: 0,\n _lineDash: null,\n _dashOffset: 0,\n _dashIdx: 0,\n _dashSum: 0,\n\n /**\n * @readOnly\n */\n setScale: function (sx, sy, segmentIgnoreThreshold) {\n // Compat. Previously there is no segmentIgnoreThreshold.\n segmentIgnoreThreshold = segmentIgnoreThreshold || 0;\n this._ux = mathAbs(segmentIgnoreThreshold / dpr / sx) || 0;\n this._uy = mathAbs(segmentIgnoreThreshold / dpr / sy) || 0;\n },\n getContext: function () {\n return this._ctx;\n },\n\n /**\n * @param {CanvasRenderingContext2D} ctx\n * @return {module:zrender/core/PathProxy}\n */\n beginPath: function (ctx) {\n this._ctx = ctx;\n ctx && ctx.beginPath();\n ctx && (this.dpr = ctx.dpr); // Reset\n\n if (this._saveData) {\n this._len = 0;\n }\n\n if (this._lineDash) {\n this._lineDash = null;\n this._dashOffset = 0;\n }\n\n return this;\n },\n\n /**\n * @param {number} x\n * @param {number} y\n * @return {module:zrender/core/PathProxy}\n */\n moveTo: function (x, y) {\n this.addData(CMD.M, x, y);\n this._ctx && this._ctx.moveTo(x, y); // x0, y0, xi, yi 是记录在 _dashedXXXXTo 方法中使用\n // xi, yi 记录当前点, x0, y0 在 closePath 的时候回到起始点。\n // 有可能在 beginPath 之后直接调用 lineTo,这时候 x0, y0 需要\n // 在 lineTo 方法中记录,这里先不考虑这种情况,dashed line 也只在 IE10- 中不支持\n\n this._x0 = x;\n this._y0 = y;\n this._xi = x;\n this._yi = y;\n return this;\n },\n\n /**\n * @param {number} x\n * @param {number} y\n * @return {module:zrender/core/PathProxy}\n */\n lineTo: function (x, y) {\n var exceedUnit = mathAbs(x - this._xi) > this._ux || mathAbs(y - this._yi) > this._uy // Force draw the first segment\n || this._len < 5;\n this.addData(CMD.L, x, y);\n\n if (this._ctx && exceedUnit) {\n this._needsDash() ? this._dashedLineTo(x, y) : this._ctx.lineTo(x, y);\n }\n\n if (exceedUnit) {\n this._xi = x;\n this._yi = y;\n }\n\n return this;\n },\n\n /**\n * @param {number} x1\n * @param {number} y1\n * @param {number} x2\n * @param {number} y2\n * @param {number} x3\n * @param {number} y3\n * @return {module:zrender/core/PathProxy}\n */\n bezierCurveTo: function (x1, y1, x2, y2, x3, y3) {\n this.addData(CMD.C, x1, y1, x2, y2, x3, y3);\n\n if (this._ctx) {\n this._needsDash() ? this._dashedBezierTo(x1, y1, x2, y2, x3, y3) : this._ctx.bezierCurveTo(x1, y1, x2, y2, x3, y3);\n }\n\n this._xi = x3;\n this._yi = y3;\n return this;\n },\n\n /**\n * @param {number} x1\n * @param {number} y1\n * @param {number} x2\n * @param {number} y2\n * @return {module:zrender/core/PathProxy}\n */\n quadraticCurveTo: function (x1, y1, x2, y2) {\n this.addData(CMD.Q, x1, y1, x2, y2);\n\n if (this._ctx) {\n this._needsDash() ? this._dashedQuadraticTo(x1, y1, x2, y2) : this._ctx.quadraticCurveTo(x1, y1, x2, y2);\n }\n\n this._xi = x2;\n this._yi = y2;\n return this;\n },\n\n /**\n * @param {number} cx\n * @param {number} cy\n * @param {number} r\n * @param {number} startAngle\n * @param {number} endAngle\n * @param {boolean} anticlockwise\n * @return {module:zrender/core/PathProxy}\n */\n arc: function (cx, cy, r, startAngle, endAngle, anticlockwise) {\n this.addData(CMD.A, cx, cy, r, r, startAngle, endAngle - startAngle, 0, anticlockwise ? 0 : 1);\n this._ctx && this._ctx.arc(cx, cy, r, startAngle, endAngle, anticlockwise);\n this._xi = mathCos(endAngle) * r + cx;\n this._yi = mathSin(endAngle) * r + cy;\n return this;\n },\n // TODO\n arcTo: function (x1, y1, x2, y2, radius) {\n if (this._ctx) {\n this._ctx.arcTo(x1, y1, x2, y2, radius);\n }\n\n return this;\n },\n // TODO\n rect: function (x, y, w, h) {\n this._ctx && this._ctx.rect(x, y, w, h);\n this.addData(CMD.R, x, y, w, h);\n return this;\n },\n\n /**\n * @return {module:zrender/core/PathProxy}\n */\n closePath: function () {\n this.addData(CMD.Z);\n var ctx = this._ctx;\n var x0 = this._x0;\n var y0 = this._y0;\n\n if (ctx) {\n this._needsDash() && this._dashedLineTo(x0, y0);\n ctx.closePath();\n }\n\n this._xi = x0;\n this._yi = y0;\n return this;\n },\n\n /**\n * Context 从外部传入,因为有可能是 rebuildPath 完之后再 fill。\n * stroke 同样\n * @param {CanvasRenderingContext2D} ctx\n * @return {module:zrender/core/PathProxy}\n */\n fill: function (ctx) {\n ctx && ctx.fill();\n this.toStatic();\n },\n\n /**\n * @param {CanvasRenderingContext2D} ctx\n * @return {module:zrender/core/PathProxy}\n */\n stroke: function (ctx) {\n ctx && ctx.stroke();\n this.toStatic();\n },\n\n /**\n * 必须在其它绘制命令前调用\n * Must be invoked before all other path drawing methods\n * @return {module:zrender/core/PathProxy}\n */\n setLineDash: function (lineDash) {\n if (lineDash instanceof Array) {\n this._lineDash = lineDash;\n this._dashIdx = 0;\n var lineDashSum = 0;\n\n for (var i = 0; i < lineDash.length; i++) {\n lineDashSum += lineDash[i];\n }\n\n this._dashSum = lineDashSum;\n }\n\n return this;\n },\n\n /**\n * 必须在其它绘制命令前调用\n * Must be invoked before all other path drawing methods\n * @return {module:zrender/core/PathProxy}\n */\n setLineDashOffset: function (offset) {\n this._dashOffset = offset;\n return this;\n },\n\n /**\n *\n * @return {boolean}\n */\n len: function () {\n return this._len;\n },\n\n /**\n * 直接设置 Path 数据\n */\n setData: function (data) {\n var len = data.length;\n\n if (!(this.data && this.data.length === len) && hasTypedArray) {\n this.data = new Float32Array(len);\n }\n\n for (var i = 0; i < len; i++) {\n this.data[i] = data[i];\n }\n\n this._len = len;\n },\n\n /**\n * 添加子路径\n * @param {module:zrender/core/PathProxy|Array.} path\n */\n appendPath: function (path) {\n if (!(path instanceof Array)) {\n path = [path];\n }\n\n var len = path.length;\n var appendSize = 0;\n var offset = this._len;\n\n for (var i = 0; i < len; i++) {\n appendSize += path[i].len();\n }\n\n if (hasTypedArray && this.data instanceof Float32Array) {\n this.data = new Float32Array(offset + appendSize);\n }\n\n for (var i = 0; i < len; i++) {\n var appendPathData = path[i].data;\n\n for (var k = 0; k < appendPathData.length; k++) {\n this.data[offset++] = appendPathData[k];\n }\n }\n\n this._len = offset;\n },\n\n /**\n * 填充 Path 数据。\n * 尽量复用而不申明新的数组。大部分图形重绘的指令数据长度都是不变的。\n */\n addData: function (cmd) {\n if (!this._saveData) {\n return;\n }\n\n var data = this.data;\n\n if (this._len + arguments.length > data.length) {\n // 因为之前的数组已经转换成静态的 Float32Array\n // 所以不够用时需要扩展一个新的动态数组\n this._expandData();\n\n data = this.data;\n }\n\n for (var i = 0; i < arguments.length; i++) {\n data[this._len++] = arguments[i];\n }\n\n this._prevCmd = cmd;\n },\n _expandData: function () {\n // Only if data is Float32Array\n if (!(this.data instanceof Array)) {\n var newData = [];\n\n for (var i = 0; i < this._len; i++) {\n newData[i] = this.data[i];\n }\n\n this.data = newData;\n }\n },\n\n /**\n * If needs js implemented dashed line\n * @return {boolean}\n * @private\n */\n _needsDash: function () {\n return this._lineDash;\n },\n _dashedLineTo: function (x1, y1) {\n var dashSum = this._dashSum;\n var offset = this._dashOffset;\n var lineDash = this._lineDash;\n var ctx = this._ctx;\n var x0 = this._xi;\n var y0 = this._yi;\n var dx = x1 - x0;\n var dy = y1 - y0;\n var dist = mathSqrt(dx * dx + dy * dy);\n var x = x0;\n var y = y0;\n var dash;\n var nDash = lineDash.length;\n var idx;\n dx /= dist;\n dy /= dist;\n\n if (offset < 0) {\n // Convert to positive offset\n offset = dashSum + offset;\n }\n\n offset %= dashSum;\n x -= offset * dx;\n y -= offset * dy;\n\n while (dx > 0 && x <= x1 || dx < 0 && x >= x1 || dx === 0 && (dy > 0 && y <= y1 || dy < 0 && y >= y1)) {\n idx = this._dashIdx;\n dash = lineDash[idx];\n x += dx * dash;\n y += dy * dash;\n this._dashIdx = (idx + 1) % nDash; // Skip positive offset\n\n if (dx > 0 && x < x0 || dx < 0 && x > x0 || dy > 0 && y < y0 || dy < 0 && y > y0) {\n continue;\n }\n\n ctx[idx % 2 ? 'moveTo' : 'lineTo'](dx >= 0 ? mathMin(x, x1) : mathMax(x, x1), dy >= 0 ? mathMin(y, y1) : mathMax(y, y1));\n } // Offset for next lineTo\n\n\n dx = x - x1;\n dy = y - y1;\n this._dashOffset = -mathSqrt(dx * dx + dy * dy);\n },\n // Not accurate dashed line to\n _dashedBezierTo: function (x1, y1, x2, y2, x3, y3) {\n var dashSum = this._dashSum;\n var offset = this._dashOffset;\n var lineDash = this._lineDash;\n var ctx = this._ctx;\n var x0 = this._xi;\n var y0 = this._yi;\n var t;\n var dx;\n var dy;\n var cubicAt = curve.cubicAt;\n var bezierLen = 0;\n var idx = this._dashIdx;\n var nDash = lineDash.length;\n var x;\n var y;\n var tmpLen = 0;\n\n if (offset < 0) {\n // Convert to positive offset\n offset = dashSum + offset;\n }\n\n offset %= dashSum; // Bezier approx length\n\n for (t = 0; t < 1; t += 0.1) {\n dx = cubicAt(x0, x1, x2, x3, t + 0.1) - cubicAt(x0, x1, x2, x3, t);\n dy = cubicAt(y0, y1, y2, y3, t + 0.1) - cubicAt(y0, y1, y2, y3, t);\n bezierLen += mathSqrt(dx * dx + dy * dy);\n } // Find idx after add offset\n\n\n for (; idx < nDash; idx++) {\n tmpLen += lineDash[idx];\n\n if (tmpLen > offset) {\n break;\n }\n }\n\n t = (tmpLen - offset) / bezierLen;\n\n while (t <= 1) {\n x = cubicAt(x0, x1, x2, x3, t);\n y = cubicAt(y0, y1, y2, y3, t); // Use line to approximate dashed bezier\n // Bad result if dash is long\n\n idx % 2 ? ctx.moveTo(x, y) : ctx.lineTo(x, y);\n t += lineDash[idx] / bezierLen;\n idx = (idx + 1) % nDash;\n } // Finish the last segment and calculate the new offset\n\n\n idx % 2 !== 0 && ctx.lineTo(x3, y3);\n dx = x3 - x;\n dy = y3 - y;\n this._dashOffset = -mathSqrt(dx * dx + dy * dy);\n },\n _dashedQuadraticTo: function (x1, y1, x2, y2) {\n // Convert quadratic to cubic using degree elevation\n var x3 = x2;\n var y3 = y2;\n x2 = (x2 + 2 * x1) / 3;\n y2 = (y2 + 2 * y1) / 3;\n x1 = (this._xi + 2 * x1) / 3;\n y1 = (this._yi + 2 * y1) / 3;\n\n this._dashedBezierTo(x1, y1, x2, y2, x3, y3);\n },\n\n /**\n * 转成静态的 Float32Array 减少堆内存占用\n * Convert dynamic array to static Float32Array\n */\n toStatic: function () {\n var data = this.data;\n\n if (data instanceof Array) {\n data.length = this._len;\n\n if (hasTypedArray) {\n this.data = new Float32Array(data);\n }\n }\n },\n\n /**\n * @return {module:zrender/core/BoundingRect}\n */\n getBoundingRect: function () {\n min[0] = min[1] = min2[0] = min2[1] = Number.MAX_VALUE;\n max[0] = max[1] = max2[0] = max2[1] = -Number.MAX_VALUE;\n var data = this.data;\n var xi = 0;\n var yi = 0;\n var x0 = 0;\n var y0 = 0;\n\n for (var i = 0; i < data.length;) {\n var cmd = data[i++];\n\n if (i === 1) {\n // 如果第一个命令是 L, C, Q\n // 则 previous point 同绘制命令的第一个 point\n //\n // 第一个命令为 Arc 的情况下会在后面特殊处理\n xi = data[i];\n yi = data[i + 1];\n x0 = xi;\n y0 = yi;\n }\n\n switch (cmd) {\n case CMD.M:\n // moveTo 命令重新创建一个新的 subpath, 并且更新新的起点\n // 在 closePath 的时候使用\n x0 = data[i++];\n y0 = data[i++];\n xi = x0;\n yi = y0;\n min2[0] = x0;\n min2[1] = y0;\n max2[0] = x0;\n max2[1] = y0;\n break;\n\n case CMD.L:\n bbox.fromLine(xi, yi, data[i], data[i + 1], min2, max2);\n xi = data[i++];\n yi = data[i++];\n break;\n\n case CMD.C:\n bbox.fromCubic(xi, yi, data[i++], data[i++], data[i++], data[i++], data[i], data[i + 1], min2, max2);\n xi = data[i++];\n yi = data[i++];\n break;\n\n case CMD.Q:\n bbox.fromQuadratic(xi, yi, data[i++], data[i++], data[i], data[i + 1], min2, max2);\n xi = data[i++];\n yi = data[i++];\n break;\n\n case CMD.A:\n // TODO Arc 判断的开销比较大\n var cx = data[i++];\n var cy = data[i++];\n var rx = data[i++];\n var ry = data[i++];\n var startAngle = data[i++];\n var endAngle = data[i++] + startAngle; // TODO Arc 旋转\n\n i += 1;\n var anticlockwise = 1 - data[i++];\n\n if (i === 1) {\n // 直接使用 arc 命令\n // 第一个命令起点还未定义\n x0 = mathCos(startAngle) * rx + cx;\n y0 = mathSin(startAngle) * ry + cy;\n }\n\n bbox.fromArc(cx, cy, rx, ry, startAngle, endAngle, anticlockwise, min2, max2);\n xi = mathCos(endAngle) * rx + cx;\n yi = mathSin(endAngle) * ry + cy;\n break;\n\n case CMD.R:\n x0 = xi = data[i++];\n y0 = yi = data[i++];\n var width = data[i++];\n var height = data[i++]; // Use fromLine\n\n bbox.fromLine(x0, y0, x0 + width, y0 + height, min2, max2);\n break;\n\n case CMD.Z:\n xi = x0;\n yi = y0;\n break;\n } // Union\n\n\n vec2.min(min, min, min2);\n vec2.max(max, max, max2);\n } // No data\n\n\n if (i === 0) {\n min[0] = min[1] = max[0] = max[1] = 0;\n }\n\n return new BoundingRect(min[0], min[1], max[0] - min[0], max[1] - min[1]);\n },\n\n /**\n * Rebuild path from current data\n * Rebuild path will not consider javascript implemented line dash.\n * @param {CanvasRenderingContext2D} ctx\n */\n rebuildPath: function (ctx) {\n var d = this.data;\n var x0;\n var y0;\n var xi;\n var yi;\n var x;\n var y;\n var ux = this._ux;\n var uy = this._uy;\n var len = this._len;\n\n for (var i = 0; i < len;) {\n var cmd = d[i++];\n\n if (i === 1) {\n // 如果第一个命令是 L, C, Q\n // 则 previous point 同绘制命令的第一个 point\n //\n // 第一个命令为 Arc 的情况下会在后面特殊处理\n xi = d[i];\n yi = d[i + 1];\n x0 = xi;\n y0 = yi;\n }\n\n switch (cmd) {\n case CMD.M:\n x0 = xi = d[i++];\n y0 = yi = d[i++];\n ctx.moveTo(xi, yi);\n break;\n\n case CMD.L:\n x = d[i++];\n y = d[i++]; // Not draw too small seg between\n\n if (mathAbs(x - xi) > ux || mathAbs(y - yi) > uy || i === len - 1) {\n ctx.lineTo(x, y);\n xi = x;\n yi = y;\n }\n\n break;\n\n case CMD.C:\n ctx.bezierCurveTo(d[i++], d[i++], d[i++], d[i++], d[i++], d[i++]);\n xi = d[i - 2];\n yi = d[i - 1];\n break;\n\n case CMD.Q:\n ctx.quadraticCurveTo(d[i++], d[i++], d[i++], d[i++]);\n xi = d[i - 2];\n yi = d[i - 1];\n break;\n\n case CMD.A:\n var cx = d[i++];\n var cy = d[i++];\n var rx = d[i++];\n var ry = d[i++];\n var theta = d[i++];\n var dTheta = d[i++];\n var psi = d[i++];\n var fs = d[i++];\n var r = rx > ry ? rx : ry;\n var scaleX = rx > ry ? 1 : rx / ry;\n var scaleY = rx > ry ? ry / rx : 1;\n var isEllipse = Math.abs(rx - ry) > 1e-3;\n var endAngle = theta + dTheta;\n\n if (isEllipse) {\n ctx.translate(cx, cy);\n ctx.rotate(psi);\n ctx.scale(scaleX, scaleY);\n ctx.arc(0, 0, r, theta, endAngle, 1 - fs);\n ctx.scale(1 / scaleX, 1 / scaleY);\n ctx.rotate(-psi);\n ctx.translate(-cx, -cy);\n } else {\n ctx.arc(cx, cy, r, theta, endAngle, 1 - fs);\n }\n\n if (i === 1) {\n // 直接使用 arc 命令\n // 第一个命令起点还未定义\n x0 = mathCos(theta) * rx + cx;\n y0 = mathSin(theta) * ry + cy;\n }\n\n xi = mathCos(endAngle) * rx + cx;\n yi = mathSin(endAngle) * ry + cy;\n break;\n\n case CMD.R:\n x0 = xi = d[i];\n y0 = yi = d[i + 1];\n ctx.rect(d[i++], d[i++], d[i++], d[i++]);\n break;\n\n case CMD.Z:\n ctx.closePath();\n xi = x0;\n yi = y0;\n }\n }\n }\n};\nPathProxy.CMD = CMD;\nvar _default = PathProxy;\nmodule.exports = _default;","/**\n * echarts设备环境识别\n *\n * @desc echarts基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据统计图表。\n * @author firede[firede@firede.us]\n * @desc thanks zepto.\n */\n\n/* global wx */\nvar env = {};\n\nif (typeof wx === 'object' && typeof wx.getSystemInfoSync === 'function') {\n // In Weixin Application\n env = {\n browser: {},\n os: {},\n node: false,\n wxa: true,\n // Weixin Application\n canvasSupported: true,\n svgSupported: false,\n touchEventsSupported: true,\n domSupported: false\n };\n} else if (typeof document === 'undefined' && typeof self !== 'undefined') {\n // In worker\n env = {\n browser: {},\n os: {},\n node: false,\n worker: true,\n canvasSupported: true,\n domSupported: false\n };\n} else if (typeof navigator === 'undefined') {\n // In node\n env = {\n browser: {},\n os: {},\n node: true,\n worker: false,\n // Assume canvas is supported\n canvasSupported: true,\n svgSupported: true,\n domSupported: false\n };\n} else {\n env = detect(navigator.userAgent);\n}\n\nvar _default = env; // Zepto.js\n// (c) 2010-2013 Thomas Fuchs\n// Zepto.js may be freely distributed under the MIT license.\n\nfunction detect(ua) {\n var os = {};\n var browser = {}; // var webkit = ua.match(/Web[kK]it[\\/]{0,1}([\\d.]+)/);\n // var android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/);\n // var ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n // var ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n // var iphone = !ipad && ua.match(/(iPhone\\sOS)\\s([\\d_]+)/);\n // var webos = ua.match(/(webOS|hpwOS)[\\s\\/]([\\d.]+)/);\n // var touchpad = webos && ua.match(/TouchPad/);\n // var kindle = ua.match(/Kindle\\/([\\d.]+)/);\n // var silk = ua.match(/Silk\\/([\\d._]+)/);\n // var blackberry = ua.match(/(BlackBerry).*Version\\/([\\d.]+)/);\n // var bb10 = ua.match(/(BB10).*Version\\/([\\d.]+)/);\n // var rimtabletos = ua.match(/(RIM\\sTablet\\sOS)\\s([\\d.]+)/);\n // var playbook = ua.match(/PlayBook/);\n // var chrome = ua.match(/Chrome\\/([\\d.]+)/) || ua.match(/CriOS\\/([\\d.]+)/);\n\n var firefox = ua.match(/Firefox\\/([\\d.]+)/); // var safari = webkit && ua.match(/Mobile\\//) && !chrome;\n // var webview = ua.match(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/) && !chrome;\n\n var ie = ua.match(/MSIE\\s([\\d.]+)/) // IE 11 Trident/7.0; rv:11.0\n || ua.match(/Trident\\/.+?rv:(([\\d.]+))/);\n var edge = ua.match(/Edge\\/([\\d.]+)/); // IE 12 and 12+\n\n var weChat = /micromessenger/i.test(ua); // Todo: clean this up with a better OS/browser seperation:\n // - discern (more) between multiple browsers on android\n // - decide if kindle fire in silk mode is android or not\n // - Firefox on Android doesn't specify the Android version\n // - possibly devide in os, device and browser hashes\n // if (browser.webkit = !!webkit) browser.version = webkit[1];\n // if (android) os.android = true, os.version = android[2];\n // if (iphone && !ipod) os.ios = os.iphone = true, os.version = iphone[2].replace(/_/g, '.');\n // if (ipad) os.ios = os.ipad = true, os.version = ipad[2].replace(/_/g, '.');\n // if (ipod) os.ios = os.ipod = true, os.version = ipod[3] ? ipod[3].replace(/_/g, '.') : null;\n // if (webos) os.webos = true, os.version = webos[2];\n // if (touchpad) os.touchpad = true;\n // if (blackberry) os.blackberry = true, os.version = blackberry[2];\n // if (bb10) os.bb10 = true, os.version = bb10[2];\n // if (rimtabletos) os.rimtabletos = true, os.version = rimtabletos[2];\n // if (playbook) browser.playbook = true;\n // if (kindle) os.kindle = true, os.version = kindle[1];\n // if (silk) browser.silk = true, browser.version = silk[1];\n // if (!silk && os.android && ua.match(/Kindle Fire/)) browser.silk = true;\n // if (chrome) browser.chrome = true, browser.version = chrome[1];\n\n if (firefox) {\n browser.firefox = true;\n browser.version = firefox[1];\n } // if (safari && (ua.match(/Safari/) || !!os.ios)) browser.safari = true;\n // if (webview) browser.webview = true;\n\n\n if (ie) {\n browser.ie = true;\n browser.version = ie[1];\n }\n\n if (edge) {\n browser.edge = true;\n browser.version = edge[1];\n } // It is difficult to detect WeChat in Win Phone precisely, because ua can\n // not be set on win phone. So we do not consider Win Phone.\n\n\n if (weChat) {\n browser.weChat = true;\n } // os.tablet = !!(ipad || playbook || (android && !ua.match(/Mobile/)) ||\n // (firefox && ua.match(/Tablet/)) || (ie && !ua.match(/Phone/) && ua.match(/Touch/)));\n // os.phone = !!(!os.tablet && !os.ipod && (android || iphone || webos ||\n // (chrome && ua.match(/Android/)) || (chrome && ua.match(/CriOS\\/([\\d.]+)/)) ||\n // (firefox && ua.match(/Mobile/)) || (ie && ua.match(/Touch/))));\n\n\n return {\n browser: browser,\n os: os,\n node: false,\n // 原生canvas支持,改极端点了\n // canvasSupported : !(browser.ie && parseFloat(browser.version) < 9)\n canvasSupported: !!document.createElement('canvas').getContext,\n svgSupported: typeof SVGRect !== 'undefined',\n // works on most browsers\n // IE10/11 does not support touch event, and MS Edge supports them but not by\n // default, so we dont check navigator.maxTouchPoints for them here.\n touchEventsSupported: 'ontouchstart' in window && !browser.ie && !browser.edge,\n // .\n pointerEventsSupported: // (1) Firefox supports pointer but not by default, only MS browsers are reliable on pointer\n // events currently. So we dont use that on other browsers unless tested sufficiently.\n // For example, in iOS 13 Mobile Chromium 78, if the touching behavior starts page\n // scroll, the `pointermove` event can not be fired any more. That will break some\n // features like \"pan horizontally to move something and pan vertically to page scroll\".\n // The horizontal pan probably be interrupted by the casually triggered page scroll.\n // (2) Although IE 10 supports pointer event, it use old style and is different from the\n // standard. So we exclude that. (IE 10 is hardly used on touch device)\n 'onpointerdown' in window && (browser.edge || browser.ie && browser.version >= 11),\n // passiveSupported: detectPassiveSupport()\n domSupported: typeof document !== 'undefined'\n };\n} // See https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection\n// function detectPassiveSupport() {\n// // Test via a getter in the options object to see if the passive property is accessed\n// var supportsPassive = false;\n// try {\n// var opts = Object.defineProperty({}, 'passive', {\n// get: function() {\n// supportsPassive = true;\n// }\n// });\n// window.addEventListener('testPassive', function() {}, opts);\n// } catch (e) {\n// }\n// return supportsPassive;\n// }\n\n\nmodule.exports = _default;","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.editorValue),callback:function ($$v) {_vm.editorValue=$$v},expression:\"editorValue\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\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!./tinymce2.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!./tinymce2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tinymce2.vue?vue&type=template&id=084aba7e&scoped=true&\"\nimport script from \"./tinymce2.vue?vue&type=script&lang=js&\"\nexport * from \"./tinymce2.vue?vue&type=script&lang=js&\"\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 \"084aba7e\",\n null\n \n)\n\nexport default component.exports","var fixShadow = require(\"./helper/fixShadow\");\n\nvar _constant = require(\"./constant\");\n\nvar ContextCachedBy = _constant.ContextCachedBy;\nvar STYLE_COMMON_PROPS = [['shadowBlur', 0], ['shadowOffsetX', 0], ['shadowOffsetY', 0], ['shadowColor', '#000'], ['lineCap', 'butt'], ['lineJoin', 'miter'], ['miterLimit', 10]]; // var SHADOW_PROPS = STYLE_COMMON_PROPS.slice(0, 4);\n// var LINE_PROPS = STYLE_COMMON_PROPS.slice(4);\n\nvar Style = function (opts) {\n this.extendFrom(opts, false);\n};\n\nfunction createLinearGradient(ctx, obj, rect) {\n var x = obj.x == null ? 0 : obj.x;\n var x2 = obj.x2 == null ? 1 : obj.x2;\n var y = obj.y == null ? 0 : obj.y;\n var y2 = obj.y2 == null ? 0 : obj.y2;\n\n if (!obj.global) {\n x = x * rect.width + rect.x;\n x2 = x2 * rect.width + rect.x;\n y = y * rect.height + rect.y;\n y2 = y2 * rect.height + rect.y;\n } // Fix NaN when rect is Infinity\n\n\n x = isNaN(x) ? 0 : x;\n x2 = isNaN(x2) ? 1 : x2;\n y = isNaN(y) ? 0 : y;\n y2 = isNaN(y2) ? 0 : y2;\n var canvasGradient = ctx.createLinearGradient(x, y, x2, y2);\n return canvasGradient;\n}\n\nfunction createRadialGradient(ctx, obj, rect) {\n var width = rect.width;\n var height = rect.height;\n var min = Math.min(width, height);\n var x = obj.x == null ? 0.5 : obj.x;\n var y = obj.y == null ? 0.5 : obj.y;\n var r = obj.r == null ? 0.5 : obj.r;\n\n if (!obj.global) {\n x = x * width + rect.x;\n y = y * height + rect.y;\n r = r * min;\n }\n\n var canvasGradient = ctx.createRadialGradient(x, y, 0, x, y, r);\n return canvasGradient;\n}\n\nStyle.prototype = {\n constructor: Style,\n\n /**\n * @type {string}\n */\n fill: '#000',\n\n /**\n * @type {string}\n */\n stroke: null,\n\n /**\n * @type {number}\n */\n opacity: 1,\n\n /**\n * @type {number}\n */\n fillOpacity: null,\n\n /**\n * @type {number}\n */\n strokeOpacity: null,\n\n /**\n * `true` is not supported.\n * `false`/`null`/`undefined` are the same.\n * `false` is used to remove lineDash in some\n * case that `null`/`undefined` can not be set.\n * (e.g., emphasis.lineStyle in echarts)\n * @type {Array.|boolean}\n */\n lineDash: null,\n\n /**\n * @type {number}\n */\n lineDashOffset: 0,\n\n /**\n * @type {number}\n */\n shadowBlur: 0,\n\n /**\n * @type {number}\n */\n shadowOffsetX: 0,\n\n /**\n * @type {number}\n */\n shadowOffsetY: 0,\n\n /**\n * @type {number}\n */\n lineWidth: 1,\n\n /**\n * If stroke ignore scale\n * @type {Boolean}\n */\n strokeNoScale: false,\n // Bounding rect text configuration\n // Not affected by element transform\n\n /**\n * @type {string}\n */\n text: null,\n\n /**\n * If `fontSize` or `fontFamily` exists, `font` will be reset by\n * `fontSize`, `fontStyle`, `fontWeight`, `fontFamily`.\n * So do not visit it directly in upper application (like echarts),\n * but use `contain/text#makeFont` instead.\n * @type {string}\n */\n font: null,\n\n /**\n * The same as font. Use font please.\n * @deprecated\n * @type {string}\n */\n textFont: null,\n\n /**\n * It helps merging respectively, rather than parsing an entire font string.\n * @type {string}\n */\n fontStyle: null,\n\n /**\n * It helps merging respectively, rather than parsing an entire font string.\n * @type {string}\n */\n fontWeight: null,\n\n /**\n * It helps merging respectively, rather than parsing an entire font string.\n * Should be 12 but not '12px'.\n * @type {number}\n */\n fontSize: null,\n\n /**\n * It helps merging respectively, rather than parsing an entire font string.\n * @type {string}\n */\n fontFamily: null,\n\n /**\n * Reserved for special functinality, like 'hr'.\n * @type {string}\n */\n textTag: null,\n\n /**\n * @type {string}\n */\n textFill: '#000',\n\n /**\n * @type {string}\n */\n textStroke: null,\n\n /**\n * @type {number}\n */\n textWidth: null,\n\n /**\n * Only for textBackground.\n * @type {number}\n */\n textHeight: null,\n\n /**\n * textStroke may be set as some color as a default\n * value in upper applicaion, where the default value\n * of textStrokeWidth should be 0 to make sure that\n * user can choose to do not use text stroke.\n * @type {number}\n */\n textStrokeWidth: 0,\n\n /**\n * @type {number}\n */\n textLineHeight: null,\n\n /**\n * 'inside', 'left', 'right', 'top', 'bottom'\n * [x, y]\n * Based on x, y of rect.\n * @type {string|Array.}\n * @default 'inside'\n */\n textPosition: 'inside',\n\n /**\n * If not specified, use the boundingRect of a `displayable`.\n * @type {Object}\n */\n textRect: null,\n\n /**\n * [x, y]\n * @type {Array.}\n */\n textOffset: null,\n\n /**\n * @type {string}\n */\n textAlign: null,\n\n /**\n * @type {string}\n */\n textVerticalAlign: null,\n\n /**\n * @type {number}\n */\n textDistance: 5,\n\n /**\n * @type {string}\n */\n textShadowColor: 'transparent',\n\n /**\n * @type {number}\n */\n textShadowBlur: 0,\n\n /**\n * @type {number}\n */\n textShadowOffsetX: 0,\n\n /**\n * @type {number}\n */\n textShadowOffsetY: 0,\n\n /**\n * @type {string}\n */\n textBoxShadowColor: 'transparent',\n\n /**\n * @type {number}\n */\n textBoxShadowBlur: 0,\n\n /**\n * @type {number}\n */\n textBoxShadowOffsetX: 0,\n\n /**\n * @type {number}\n */\n textBoxShadowOffsetY: 0,\n\n /**\n * Whether transform text.\n * Only available in Path and Image element,\n * where the text is called as `RectText`.\n * @type {boolean}\n */\n transformText: false,\n\n /**\n * Text rotate around position of Path or Image.\n * The origin of the rotation can be specified by `textOrigin`.\n * Only available in Path and Image element,\n * where the text is called as `RectText`.\n */\n textRotation: 0,\n\n /**\n * Text origin of text rotation.\n * Useful in the case like label rotation of circular symbol.\n * Only available in Path and Image element, where the text is called\n * as `RectText` and the element is called as \"host element\".\n * The value can be:\n * + If specified as a coordinate like `[10, 40]`, it is the `[x, y]`\n * base on the left-top corner of the rect of its host element.\n * + If specified as a string `center`, it is the center of the rect of\n * its host element.\n * + By default, this origin is the `textPosition`.\n * @type {string|Array.}\n */\n textOrigin: null,\n\n /**\n * @type {string}\n */\n textBackgroundColor: null,\n\n /**\n * @type {string}\n */\n textBorderColor: null,\n\n /**\n * @type {number}\n */\n textBorderWidth: 0,\n\n /**\n * @type {number}\n */\n textBorderRadius: 0,\n\n /**\n * Can be `2` or `[2, 4]` or `[2, 3, 4, 5]`\n * @type {number|Array.}\n */\n textPadding: null,\n\n /**\n * Text styles for rich text.\n * @type {Object}\n */\n rich: null,\n\n /**\n * {outerWidth, outerHeight, ellipsis, placeholder}\n * @type {Object}\n */\n truncate: null,\n\n /**\n * https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation\n * @type {string}\n */\n blend: null,\n\n /**\n * @param {CanvasRenderingContext2D} ctx\n */\n bind: function (ctx, el, prevEl) {\n var style = this;\n var prevStyle = prevEl && prevEl.style; // If no prevStyle, it means first draw.\n // Only apply cache if the last time cachced by this function.\n\n var notCheckCache = !prevStyle || ctx.__attrCachedBy !== ContextCachedBy.STYLE_BIND;\n ctx.__attrCachedBy = ContextCachedBy.STYLE_BIND;\n\n for (var i = 0; i < STYLE_COMMON_PROPS.length; i++) {\n var prop = STYLE_COMMON_PROPS[i];\n var styleName = prop[0];\n\n if (notCheckCache || style[styleName] !== prevStyle[styleName]) {\n // FIXME Invalid property value will cause style leak from previous element.\n ctx[styleName] = fixShadow(ctx, styleName, style[styleName] || prop[1]);\n }\n }\n\n if (notCheckCache || style.fill !== prevStyle.fill) {\n ctx.fillStyle = style.fill;\n }\n\n if (notCheckCache || style.stroke !== prevStyle.stroke) {\n ctx.strokeStyle = style.stroke;\n }\n\n if (notCheckCache || style.opacity !== prevStyle.opacity) {\n ctx.globalAlpha = style.opacity == null ? 1 : style.opacity;\n }\n\n if (notCheckCache || style.blend !== prevStyle.blend) {\n ctx.globalCompositeOperation = style.blend || 'source-over';\n }\n\n if (this.hasStroke()) {\n var lineWidth = style.lineWidth;\n ctx.lineWidth = lineWidth / (this.strokeNoScale && el && el.getLineScale ? el.getLineScale() : 1);\n }\n },\n hasFill: function () {\n var fill = this.fill;\n return fill != null && fill !== 'none';\n },\n hasStroke: function () {\n var stroke = this.stroke;\n return stroke != null && stroke !== 'none' && this.lineWidth > 0;\n },\n\n /**\n * Extend from other style\n * @param {zrender/graphic/Style} otherStyle\n * @param {boolean} overwrite true: overwrirte any way.\n * false: overwrite only when !target.hasOwnProperty\n * others: overwrite when property is not null/undefined.\n */\n extendFrom: function (otherStyle, overwrite) {\n if (otherStyle) {\n for (var name in otherStyle) {\n if (otherStyle.hasOwnProperty(name) && (overwrite === true || (overwrite === false ? !this.hasOwnProperty(name) : otherStyle[name] != null))) {\n this[name] = otherStyle[name];\n }\n }\n }\n },\n\n /**\n * Batch setting style with a given object\n * @param {Object|string} obj\n * @param {*} [obj]\n */\n set: function (obj, value) {\n if (typeof obj === 'string') {\n this[obj] = value;\n } else {\n this.extendFrom(obj, true);\n }\n },\n\n /**\n * Clone\n * @return {zrender/graphic/Style} [description]\n */\n clone: function () {\n var newStyle = new this.constructor();\n newStyle.extendFrom(this, true);\n return newStyle;\n },\n getGradient: function (ctx, obj, rect) {\n var method = obj.type === 'radial' ? createRadialGradient : createLinearGradient;\n var canvasGradient = method(ctx, obj, rect);\n var colorStops = obj.colorStops;\n\n for (var i = 0; i < colorStops.length; i++) {\n canvasGradient.addColorStop(colorStops[i].offset, colorStops[i].color);\n }\n\n return canvasGradient;\n }\n};\nvar styleProto = Style.prototype;\n\nfor (var i = 0; i < STYLE_COMMON_PROPS.length; i++) {\n var prop = STYLE_COMMON_PROPS[i];\n\n if (!(prop[0] in styleProto)) {\n styleProto[prop[0]] = prop[1];\n }\n} // Provide for others\n\n\nStyle.getGradient = styleProto.getGradient;\nvar _default = Style;\nmodule.exports = _default;","var dpr = 1; // If in browser environment\n\nif (typeof window !== 'undefined') {\n dpr = Math.max(window.devicePixelRatio || 1, 1);\n}\n/**\n * config默认配置项\n * @exports zrender/config\n * @author Kener (@Kener-林峰, kener.linfeng@gmail.com)\n */\n\n/**\n * Debug log mode:\n * 0: Do nothing, for release.\n * 1: console.error, for debug.\n */\n\n\nvar debugMode = 0; // retina 屏幕优化\n\nvar devicePixelRatio = dpr;\nexports.debugMode = debugMode;\nexports.devicePixelRatio = devicePixelRatio;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('el-container',[_c('el-aside',{style:({'background':'#ffffff','height':_vm.scrollHeight+'px'}),attrs:{\"width\":\"600px\"}},[_c('el-form',{style:({'position':'fixed','overflow-x':'auto','width':'560px','height':_vm.scrollHeight+'px'}),attrs:{\"label-width\":\"110px\"}},[_c('el-upload',{ref:\"upload\",attrs:{\"action\":\"\",\"show-file-list\":false,\"on-change\":_vm.getFile,\"limit\":1,\"auto-upload\":false}},[_c('el-button',{attrs:{\"size\":\"small\"}},[_vm._v(\"上传背景图片\")])],1),_c('img',{staticStyle:{\"display\":\"none\"},attrs:{\"src\":require(\"@/assets/images/crdcode.png\"),\"id\":\"crdcodeImg\"}}),_c('img',{staticStyle:{\"display\":\"none\"},attrs:{\"src\":require(\"@/assets/images/noavatar.jpg\"),\"id\":\"noavatarImg\"}}),_c('img',{staticStyle:{\"display\":\"none\"},attrs:{\"src\":require(\"@/assets/images/posterBg.jpg\"),\"id\":\"posterBg\"}}),_c('el-form-item',{attrs:{\"label\":\"二维码:\",\"prop\":\"Name\"}},[_c('el-switch',{on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.qrcode.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.qrcode, \"display\", $$v)},expression:\"posterSetData.qrcode.display\"}}),(_vm.posterSetData.qrcode.display)?_c('span',[_vm._v(\"\\n 尺寸\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"mini\",\"min\":1,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.qrcode.size),callback:function ($$v) {_vm.$set(_vm.posterSetData.qrcode, \"size\", $$v)},expression:\"posterSetData.qrcode.size\"}}),_vm._v(\"左右\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.qrcode.x),callback:function ($$v) {_vm.$set(_vm.posterSetData.qrcode, \"x\", $$v)},expression:\"posterSetData.qrcode.x\"}}),_vm._v(\"上下\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.qrcode.y),callback:function ($$v) {_vm.$set(_vm.posterSetData.qrcode, \"y\", $$v)},expression:\"posterSetData.qrcode.y\"}})],1):_vm._e()],1),_c('el-form-item',{attrs:{\"label\":\"粉丝头像:\",\"prop\":\"Name\"}},[_c('el-switch',{on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.avatar.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.avatar, \"display\", $$v)},expression:\"posterSetData.avatar.display\"}}),(_vm.posterSetData.avatar.display)?_c('span',[_vm._v(\"\\n 形状\\n \"),_c('el-select',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"small\"},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.avatar.shape),callback:function ($$v) {_vm.$set(_vm.posterSetData.avatar, \"shape\", $$v)},expression:\"posterSetData.avatar.shape\"}},[_c('el-option',{attrs:{\"label\":\"正方形\",\"value\":\"1\"}}),_c('el-option',{attrs:{\"label\":\"圆形\",\"value\":\"2\"}})],1),_vm._v(\"尺寸\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"120px\"},attrs:{\"size\":\"small\",\"min\":1,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.avatar.size),callback:function ($$v) {_vm.$set(_vm.posterSetData.avatar, \"size\", $$v)},expression:\"posterSetData.avatar.size\"}}),_vm._v(\"左右\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"120px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.avatar.x),callback:function ($$v) {_vm.$set(_vm.posterSetData.avatar, \"x\", $$v)},expression:\"posterSetData.avatar.x\"}}),_vm._v(\"上下\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"120px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.avatar.y),callback:function ($$v) {_vm.$set(_vm.posterSetData.avatar, \"y\", $$v)},expression:\"posterSetData.avatar.y\"}})],1):_vm._e()],1),_c('el-form-item',{attrs:{\"label\":\"粉丝昵称:\",\"prop\":\"Name\"}},[_c('el-switch',{on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"display\", $$v)},expression:\"posterSetData.nickname.display\"}}),(_vm.posterSetData.nickname.display)?_c('span',[_vm._v(\"\\n 颜色\\n \"),_c('el-color-picker',{attrs:{\"size\":\"small\"},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.fontcolor),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"fontcolor\", $$v)},expression:\"posterSetData.nickname.fontcolor\"}}),_vm._v(\"字号\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"small\",\"min\":12,\"max\":600},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.fontsize),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"fontsize\", $$v)},expression:\"posterSetData.nickname.fontsize\"}}),_vm._v(\"字体\\n \"),_c('el-select',{staticStyle:{\"width\":\"150px\"},attrs:{\"size\":\"small\",\"filterable\":\"\"},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.fontfamily),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"fontfamily\", $$v)},expression:\"posterSetData.nickname.fontfamily\"}},_vm._l((_vm.fontFamilyData),function(item){return _c('el-option',{key:item,attrs:{\"label\":item,\"value\":item}})}),1),_c('el-checkbox-group',{staticStyle:{\"display\":\"inline\"},attrs:{\"size\":\"mini\"},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.fontothe),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"fontothe\", $$v)},expression:\"posterSetData.nickname.fontothe\"}},[_c('el-checkbox-button',{attrs:{\"label\":\"Bold\"}},[_vm._v(\"加粗\")]),_vm._v(\"underline\\n \"),_c('el-checkbox-button',{attrs:{\"label\":\"Italic\"}},[_vm._v(\"斜体\")])],1),_vm._v(\"左右\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.x),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"x\", $$v)},expression:\"posterSetData.nickname.x\"}}),_vm._v(\"上下\\n \"),_c('el-input-number',{staticStyle:{\"width\":\"100px\"},attrs:{\"size\":\"mini\",\"min\":0,\"max\":2000},on:{\"change\":_vm.refresh},model:{value:(_vm.posterSetData.nickname.y),callback:function ($$v) {_vm.$set(_vm.posterSetData.nickname, \"y\", $$v)},expression:\"posterSetData.nickname.y\"}})],1):_vm._e()],1),_c('el-form-item',{attrs:{\"label\":\"生成海报回复:\",\"prop\":\"Name\"}},[_c('el-switch',{model:{value:(_vm.posterSetData.Reply.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.Reply, \"display\", $$v)},expression:\"posterSetData.Reply.display\"}}),_vm._v(\"开启状态下,设置的回复内容“[]”内容请勿修改。\\n \"),(_vm.posterSetData.Reply.display)?_c('span',[_c('el-input',{attrs:{\"type\":\"textarea\",\"size\":\"small\",\"rows\":7,\"placeholder\":\"请输入内容\"},model:{value:(_vm.posterSetData.Reply.text),callback:function ($$v) {_vm.$set(_vm.posterSetData.Reply, \"text\", $$v)},expression:\"posterSetData.Reply.text\"}})],1):_vm._e()],1),_c('el-form-item',{attrs:{\"label\":\"规则话术:\",\"prop\":\"Name\"}},[_c('el-switch',{model:{value:(_vm.posterSetData.Regular.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.Regular, \"display\", $$v)},expression:\"posterSetData.Regular.display\"}}),_vm._v(\"开启状态下,粉丝生成海报将自动回复设置的回复内容。\\n \"),(_vm.posterSetData.Regular.display)?_c('span',[_c('el-input',{attrs:{\"type\":\"textarea\",\"size\":\"small\",\"rows\":7,\"placeholder\":\"请输入内容\"},model:{value:(_vm.posterSetData.Regular.text),callback:function ($$v) {_vm.$set(_vm.posterSetData.Regular, \"text\", $$v)},expression:\"posterSetData.Regular.text\"}})],1):_vm._e()],1),_c('el-form-item',{attrs:{\"label\":\"任务完成话术:\",\"prop\":\"Name\"}},[_c('el-switch',{model:{value:(_vm.posterSetData.Complete.display),callback:function ($$v) {_vm.$set(_vm.posterSetData.Complete, \"display\", $$v)},expression:\"posterSetData.Complete.display\"}}),_vm._v(\"开启状态下,回复内容。链接地址:[tenantid]、[openid]必填\\n \"),(_vm.posterSetData.Complete.display)?_c('span',[_c('el-input',{attrs:{\"type\":\"textarea\",\"size\":\"small\",\"rows\":7,\"placeholder\":\"请输入内容\"},model:{value:(_vm.posterSetData.Complete.text),callback:function ($$v) {_vm.$set(_vm.posterSetData.Complete, \"text\", $$v)},expression:\"posterSetData.Complete.text\"}})],1):_vm._e()],1)],1)],1),_c('el-main',{style:({'overflow-y':'no','overflow-x':'auto','height':_vm.scrollHeight+'px'})},[_c('div',{attrs:{\"id\":\"Mycanvas\"}})])],1)],1)}\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\r\nimport { Component, Provide, Vue, Watch } from \"vue-property-decorator\";\r\nimport Bus from \"@/JS/Bus\";\r\nimport { getCookie } from \"@/JS/cookie\"; //使用getCookie方法\r\nimport httpApi from \"@/API/Tenant/Weixin\";\r\nconst zrender = require(\"zrender\");\r\n@Component({\r\n components: {}\r\n})\r\nexport default class extends Vue {\r\n //$message: any;\r\n //注入数据 @Provide()\r\n @Provide()\r\n private scrollHeight = 600; //当前高度\r\n private GetAppData: any = {}; //当前应用号信息\r\n private canvasGroup: any = []; //canvas元素集合\r\n private canvasBgImg: any = \"\"; //海报背景图片\r\n private Effect: any = \"\"; //海报效果背景\r\n private canvasZoom: any = 1;\r\n private temp = -99999;\r\n private idCount = 1;\r\n //页面数据集合\r\n private posterSetData: any = {\r\n //二维码相关\r\n qrcode: {\r\n url: \"\",\r\n display: false,\r\n size: 128,\r\n x: 0,\r\n y: 0\r\n },\r\n //头像\r\n avatar: {\r\n url: \"\",\r\n display: false,\r\n shape: \"1\", //形状1正方形,2圆形\r\n size: 128,\r\n x: 0,\r\n y: 0\r\n },\r\n //昵称\r\n nickname: {\r\n display: false,\r\n fontcolor: \"#ff0000\",\r\n fontsize: \"24\",\r\n fontfamily: \"宋体\",\r\n fontothe: [],\r\n x: 0,\r\n y: 0\r\n },\r\n //海报回复\r\n Reply: {\r\n display: true,\r\n text:\r\n \"活动名称:[活动名称]\\r\\n您需要邀请[任务所需关注数]个小伙伴关注公众号后即可领取奖励哦,活动有效期为[活动时间],当前粉丝海报有效期为[海报有效期]。活动期间多与公众号互动哦,否则可能收不到进展通知。如有疑问请联第在线客服。我们在下方为您准备了转发到群或朋友圈的话术,您可直接使用哦。\"\r\n },\r\n //规则话术\r\n Regular: {\r\n display: true,\r\n text: \"我正在参与[活动名称]活动,大家扫码帮助下,拜托!\"\r\n },\r\n //任务完成话术\r\n Complete: {\r\n display: true,\r\n text:\r\n \"您已完成克徕帝宠粉日活动任务,点击下面链接去领取吧!\\r\\n查看详情》》\"\r\n },\r\n Prize: 500,\r\n Help: 17,\r\n //背景参数\r\n bgimg: {\r\n width: 0,\r\n height: 0\r\n }\r\n };\r\n private fontFamilyData = [\r\n \"宋体\",\r\n \"仿宋\",\r\n \"黑体\",\r\n \"隶书\",\r\n \"幼圆\",\r\n \"楷体\",\r\n \"新宋体\",\r\n \"新細明體\",\r\n \"华文细黑\",\r\n \"华文楷体\",\r\n \"华文宋体\",\r\n \"华文中宋\",\r\n \"华文仿宋\",\r\n \"方正舒体\",\r\n \"方正姚体\",\r\n \"华文彩云\",\r\n \"华文琥珀\",\r\n \"华文隶书\",\r\n \"华文行楷\",\r\n \"华文新魏\",\r\n \"微软雅黑体\"\r\n ];\r\n //缩小\r\n canvasOut() {\r\n this.canvasZoom = this.canvasZoom - 0.01;\r\n this.loadCanvasData();\r\n //var temp: any = document.getElementById(\"elMain\");\r\n // temp.style.zoom = this.canvasZoom;\r\n }\r\n //放大\r\n canvasIn() {\r\n this.canvasZoom = this.canvasZoom + 0.01;\r\n this.loadCanvasData();\r\n // var temp: any = document.getElementById(\"elMain\");\r\n // temp.style.zoom = this.canvasZoom;\r\n }\r\n\r\n //初始化\r\n created() {\r\n this.$on(\"PosterDataId\", (item: any) => {\r\n console.log(item);\r\n });\r\n this.scrollHeight = document.body.scrollHeight - 260;\r\n let Aid = getCookie(\"Aid\");\r\n let TenantID = getCookie(\"TenantID\");\r\n this.GetAppData = {\r\n Aid: Aid,\r\n TenantID: TenantID\r\n };\r\n this.editData();\r\n Bus.$on(\"posterInfo\", (Item: any) => {\r\n //this.BasicInformationData = Item;\r\n if (Item) {\r\n }\r\n });\r\n\r\n let posterBg: any = document.getElementById(\"posterBg\");\r\n this.canvasBgImg = posterBg.src;\r\n //console.log(this.canvasBgImg);\r\n //初始化背景\r\n let img = new Image();\r\n img.src = this.canvasBgImg;\r\n let _this = this; // onload 里面不能用this\r\n img.onload = function() {\r\n //原始宽度\r\n _this.posterSetData.bgimg.width = (this as any).width;\r\n //原始高度\r\n _this.posterSetData.bgimg.height = (this as any).height;\r\n //console.log(bgWidth);\r\n //console.log(bgHeight);\r\n (document.getElementById(\"Mycanvas\") as any).setAttribute(\r\n \"style\",\r\n \"overflow:scroll;width: \" +\r\n _this.posterSetData.bgimg.width +\r\n \"px;height:\" +\r\n _this.scrollHeight +\r\n \"px\"\r\n ); //一次添加多个\r\n // (document.getElementById(\"elAside\") as any).setAttribute(\r\n // \"style\",\r\n // \"width: \" +\r\n // _this.posterSetData.bgimg.width +\r\n // \"px;height:\" +\r\n // _this.posterSetData.bgimg.height +\r\n // \"px;background':'#ffffff;overflow:hidden;\"\r\n // );\r\n\r\n _this.canvasGroup.push({\r\n type: \"bgimg\",\r\n url: _this.canvasBgImg,\r\n width: _this.posterSetData.bgimg.width,\r\n height: _this.posterSetData.bgimg.height\r\n });\r\n };\r\n this.refresh();\r\n\r\n // console.log(this.qrcode);\r\n //头像\r\n let noavatarImg: any = document.getElementById(\"noavatarImg\");\r\n this.posterSetData.avatar.url = noavatarImg.src;\r\n\r\n //console.log(this.avatar);\r\n }\r\n //修改加载 数据\r\n async editData() {\r\n let id = localStorage.getItem(\"PosterDataId\");\r\n //let id: any = getCookie(\"PosterId\");\r\n if (id) {\r\n if (parseInt(id) > 0) {\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"PromotePosterListDTO\",\r\n Value: {\r\n TenantId: this.GetAppData.TenantID,\r\n Aid: this.GetAppData.Aid,\r\n PosterId: id\r\n }\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.GetPosterModel(params);\r\n if (res.ErrorCode == 0) {\r\n let data = res.output[0].value;\r\n console.log(data);\r\n if (data) {\r\n if (data.BgImg) this.canvasBgImg = data.BgImg;\r\n if (data.Effect) this.Effect = data.Effect;\r\n if (data.Prize) this.posterSetData.Prize = data.Prize;\r\n if (data.Help) this.posterSetData.Help = data.Help;\r\n\r\n if (data.QrCode)\r\n this.posterSetData.qrcode = JSON.parse(data.QrCode);\r\n if (data.Avatar)\r\n this.posterSetData.avatar = JSON.parse(data.Avatar);\r\n if (data.Nickname)\r\n this.posterSetData.nickname = JSON.parse(data.Nickname);\r\n if (data.Reply) this.posterSetData.Reply = JSON.parse(data.Reply);\r\n if (data.Regular)\r\n this.posterSetData.Regular = JSON.parse(data.Regular);\r\n if (data.Complete)\r\n this.posterSetData.Complete = JSON.parse(data.Complete);\r\n if (data.BgImgWh)\r\n this.posterSetData.bgimg = JSON.parse(data.BgImgWh);\r\n // console.log(data.BgImg);\r\n Bus.$emit(\"canvasBgImg\", data.BgImg);\r\n Bus.$emit(\"Effect\", data.Effect);\r\n this.Effect = data.Effect;\r\n let imgData: any = {\r\n type: \"bgimg\",\r\n url: data.BgImg\r\n // width: this.posterSetData.bgimg.width,\r\n // height: this.posterSetData.bgimg.height\r\n };\r\n if (this.posterSetData.bgimg.width)\r\n imgData.width = this.posterSetData.bgimg.width;\r\n if (this.posterSetData.bgimg.height)\r\n imgData.height = this.posterSetData.bgimg.height;\r\n this.canvasGroup.push(imgData);\r\n this.refresh();\r\n }\r\n } else {\r\n //res.ErrorMessage\r\n this.$message.error(\"加载修改数据失败!\" );\r\n }\r\n }\r\n }\r\n }\r\n //上传背景图片\r\n getFile(file: any, fileList: any) {\r\n console.log(this.canvasGroup);\r\n console.log(JSON.stringify(this.canvasGroup));\r\n if (this.canvasGroup.length > 0) {\r\n this.canvasGroup.forEach((data: any, index: number) => {\r\n if (data.type == \"bgimg\") {\r\n this.canvasGroup.splice(index, 1);\r\n }\r\n });\r\n console.log(this.canvasGroup);\r\n }\r\n this.getBase64(file.raw).then(res => {\r\n //console.log(res);\r\n this.canvasBgImg = String(res);\r\n //this.posterSetData.bgimg.url = this.canvasBgImg;\r\n Bus.$emit(\"canvasBgImg\", this.canvasBgImg);\r\n let img = new Image();\r\n img.src = this.canvasBgImg;\r\n let _this = this; // onload 里面不能用this\r\n img.onload = function() {\r\n //原始宽度\r\n _this.posterSetData.bgimg.width = (this as any).width;\r\n //原始高度\r\n _this.posterSetData.bgimg.height = (this as any).height;\r\n //console.log(bgWidth);\r\n //console.log(bgHeight);\r\n (document.getElementById(\"Mycanvas\") as any).setAttribute(\r\n \"style\",\r\n \"overflow:scroll;width: \" +\r\n _this.posterSetData.bgimg.width +\r\n \"px;height:\" +\r\n _this.scrollHeight +\r\n \"px\"\r\n ); //一次添加多个\r\n // (document.getElementById(\"elAside\") as any).setAttribute(\r\n // \"style\",\r\n // \"width: \" +\r\n // _this.posterSetData.bgimg.width +\r\n // \"px;height:\" +\r\n // _this.posterSetData.bgimg.height +\r\n // \"px;background':'#ffffff;overflow:hidden;\"\r\n // );\r\n\r\n _this.canvasGroup.push({\r\n type: \"bgimg\",\r\n url: _this.canvasBgImg,\r\n width: _this.posterSetData.bgimg.width,\r\n height: _this.posterSetData.bgimg.height\r\n });\r\n _this.loadCanvasData();\r\n _this.refresh();\r\n (_this as any).$refs.upload.clearFiles();\r\n /*var container: any = document.getElementById(\"Mycanvas\");\r\n var zr = zrender.init(container);\r\n let group: any = new zrender.Group();\r\n //绘画图片\r\n let imgdata = new zrender.Image({\r\n style: {\r\n image: _this.canvasBgImg,\r\n x: 0,\r\n y: 0,\r\n width: bgWidth,\r\n height: bgHeight\r\n },\r\n draggable: false\r\n });\r\n container.width = bgWidth;\r\n container.height = bgHeight;\r\n //console.log(imgdata);\r\n group.add(imgdata);\r\n zr.add(group);\r\n //_this.container.width = bgWidth;\r\n //_this.container.height = bgHeight;\r\n */\r\n };\r\n });\r\n }\r\n //把图片Base64\r\n getBase64(file: any) {\r\n return new Promise(function(resolve, reject) {\r\n let reader = new FileReader();\r\n let imgResult: any = \"\";\r\n reader.readAsDataURL(file);\r\n reader.onload = function() {\r\n imgResult = reader.result;\r\n };\r\n reader.onerror = function(error) {\r\n reject(error);\r\n };\r\n reader.onloadend = function() {\r\n resolve(imgResult);\r\n };\r\n });\r\n }\r\n\r\n //刷新数据\r\n refresh() {\r\n this.canvasGroup.forEach((data: any, index: number) => {\r\n if (data.type != \"bgimg\") {\r\n // this.posterSetData.qrcode.x = data.x;\r\n //this.posterSetData.qrcode.y = data.y;\r\n this.canvasGroup.splice(index, 1);\r\n }\r\n });\r\n //console.log(this.posterSetData);\r\n //二维码\r\n if (this.posterSetData.qrcode.display) {\r\n let crdcodeImg: any = document.getElementById(\"crdcodeImg\");\r\n console.log(crdcodeImg);\r\n this.posterSetData.qrcode.url = crdcodeImg.src;\r\n this.canvasGroup.push({\r\n type: \"qrcode\",\r\n url: this.posterSetData.qrcode.url,\r\n width: this.posterSetData.qrcode.size,\r\n height: this.posterSetData.qrcode.size,\r\n x: this.posterSetData.qrcode.x,\r\n y: this.posterSetData.qrcode.y\r\n });\r\n } else {\r\n this.canvasGroup.forEach((element: any, index: number) => {\r\n if (element.type == \"qrcode\") {\r\n this.canvasGroup.splice(index, 1);\r\n }\r\n });\r\n }\r\n //头像\r\n if (this.posterSetData.avatar.display) {\r\n let noavatarImg: any = document.getElementById(\"noavatarImg\");\r\n //console.log(crdcodeImg);\r\n this.posterSetData.avatar.url = noavatarImg.src;\r\n this.canvasGroup.push({\r\n type: \"avatar\",\r\n url: this.posterSetData.avatar.url,\r\n width: this.posterSetData.avatar.size,\r\n height: this.posterSetData.avatar.size,\r\n shape: this.posterSetData.avatar.shape,\r\n x: this.posterSetData.avatar.x,\r\n y: this.posterSetData.avatar.y\r\n });\r\n } else {\r\n this.canvasGroup.forEach((element: any, index: number) => {\r\n if (element.type == \"avatar\") {\r\n this.canvasGroup.splice(index, 1);\r\n }\r\n });\r\n }\r\n //昵称\r\n if (this.posterSetData.nickname.display) {\r\n this.canvasGroup.push({\r\n type: \"nickname\",\r\n fontcolor: this.posterSetData.nickname.fontcolor,\r\n fontsize: this.posterSetData.nickname.fontsize,\r\n fontfamily: this.posterSetData.nickname.fontfamily,\r\n x: this.posterSetData.nickname.x,\r\n y: this.posterSetData.nickname.y\r\n });\r\n } else {\r\n this.canvasGroup.forEach((element: any, index: number) => {\r\n if (element.type == \"nickname\") {\r\n this.canvasGroup.splice(index, 1);\r\n }\r\n });\r\n }\r\n //console.log(this.canvasGroup);\r\n this.loadCanvasData();\r\n Bus.$emit(\"posterSetData\", this.posterSetData);\r\n }\r\n //加载画布中所有元素\r\n loadCanvasData() {\r\n var _this = this;\r\n var container: any = document.getElementById(\"Mycanvas\");\r\n var opts: any = {\r\n width: this.posterSetData.bgimg.width,\r\n height: this.posterSetData.bgimg.height,\r\n devicePixelRatio: 1\r\n };\r\n var zr = zrender.init(container, opts);\r\n let group: any = new zrender.Group();\r\n\r\n this.canvasGroup = this.unique(this.canvasGroup);\r\n this.canvasGroup.forEach((data: any) => {\r\n if (data.type == \"bgimg\") {\r\n //绘画背景图片\r\n data.width = parseInt(data.width) * parseFloat(this.canvasZoom);\r\n data.height = parseInt(data.height) * parseFloat(this.canvasZoom);\r\n //console.log(data.height +\"-\"+ data.width );\r\n let imgdata = new zrender.Image({\r\n style: {\r\n image: data.url,\r\n x: data.x,\r\n y: data.y,\r\n width: data.width,\r\n height: data.height\r\n },\r\n cursor: \"defult\",\r\n zlevel: -999999,\r\n id: this.idCount,\r\n draggable: false,\r\n scale: [this.canvasZoom, this.canvasZoom]\r\n });\r\n container.width = data.width;\r\n container.height = data.height;\r\n //console.log(imgdata);\r\n group.add(imgdata);\r\n } else {\r\n if (data.x == 0) {\r\n data.x = this.posterSetData.bgimg.width / 2;\r\n }\r\n if (data.y == 0) {\r\n data.y = this.posterSetData.bgimg.height / 2;\r\n }\r\n }\r\n if (data.type == \"qrcode\") {\r\n //二维码\r\n let imgdata = new zrender.Image({\r\n style: {\r\n image: data.url,\r\n x: data.x,\r\n y: data.y,\r\n width: data.width,\r\n height: data.height\r\n },\r\n zlevel: this.temp,\r\n id: this.idCount,\r\n draggable: true,\r\n scale: [this.canvasZoom, this.canvasZoom]\r\n })\r\n .on(\"mousedown\", function(e: any) {\r\n //鼠标按下事件\r\n })\r\n .on(\"mouseup\", function(e: any) {\r\n //鼠标放开事件\r\n // console.log(e.event);\r\n data.x = e.event.zrX - data.width / 2;\r\n data.y = e.event.zrY - data.height / 2;\r\n //宽度超过画布\r\n if (data.x > _this.posterSetData.bgimg.width - data.width) {\r\n data.x = _this.posterSetData.bgimg.width - data.width;\r\n }\r\n //高度超过画布\r\n if (data.y > _this.posterSetData.bgimg.height - data.height) {\r\n data.y = _this.posterSetData.bgimg.height - data.height;\r\n }\r\n\r\n _this.canvasGroup.forEach((data: any, index: number) => {\r\n if (data.type == \"qrcode\") {\r\n _this.canvasGroup.splice(index, 1);\r\n _this.posterSetData.qrcode.x = data.x;\r\n _this.posterSetData.qrcode.y = data.y;\r\n _this.canvasGroup.push(data);\r\n }\r\n });\r\n })\r\n .on(\"dblclick\", function(ev: any) {\r\n console.log(ev);\r\n ev.topTarget.rotation = ev.topTarget.rotation - Math.PI / 12;\r\n //设置旋转角度\r\n //\tthis.attr('rotation',[this.rotation-Math.PI/12]);\r\n //设置旋转中心\r\n //this.attr('origin',[this.style.x+this.style.width/2,this.style.y+this.style.height/2]);\r\n });\r\n group.add(imgdata);\r\n }\r\n if (data.type == \"avatar\") {\r\n //头像\r\n let imgdata = new zrender.Image({\r\n style: {\r\n image: data.url,\r\n x: data.x,\r\n y: data.y,\r\n width: data.width,\r\n height: data.height\r\n },\r\n zlevel: this.temp,\r\n id: this.idCount,\r\n draggable: true,\r\n scale: [this.canvasZoom, this.canvasZoom]\r\n })\r\n .on(\"mouseup\", function(e: any) {\r\n // console.log(e.event);\r\n data.x = e.event.zrX - data.width / 2;\r\n data.y = e.event.zrY - data.height / 2;\r\n //宽度超过画布\r\n if (data.x > _this.posterSetData.bgimg.width - data.width) {\r\n data.x = _this.posterSetData.bgimg.width - data.width;\r\n }\r\n //高度超过画布\r\n if (data.y > _this.posterSetData.bgimg.height - data.height) {\r\n data.y = _this.posterSetData.bgimg.height - data.height;\r\n }\r\n _this.canvasGroup.forEach((data: any, index: number) => {\r\n if (data.type == \"avatar\") {\r\n _this.canvasGroup.splice(index, 1);\r\n _this.posterSetData.avatar.x = data.x;\r\n _this.posterSetData.avatar.y = data.y;\r\n _this.canvasGroup.push(data);\r\n }\r\n });\r\n })\r\n .on(\"dblclick\", function(ev: any) {\r\n //设置旋转角度\r\n //\tthis.attr('rotation',[this.rotation-Math.PI/12]);\r\n //设置旋转中心\r\n //this.attr('origin',[this.style.x+this.style.width/2,this.style.y+this.style.height/2]);\r\n });\r\n //console.log(data.shape);\r\n if (data.shape == 2) {\r\n var clipPath = new zrender.Circle({\r\n shape: {\r\n cx:\r\n _this.posterSetData.avatar.x +\r\n _this.posterSetData.avatar.size / 2,\r\n cy:\r\n _this.posterSetData.avatar.y +\r\n _this.posterSetData.avatar.size / 2,\r\n r: _this.posterSetData.avatar.size / 2\r\n }\r\n });\r\n imgdata.setClipPath(clipPath);\r\n }\r\n group.add(imgdata);\r\n }\r\n if (data.type == \"nickname\") {\r\n //粉丝昵称\r\n let fontStyle = \"\";\r\n if (_this.posterSetData.nickname.fontothe.length > 0) {\r\n _this.posterSetData.nickname.fontothe.forEach((x: any) => {\r\n if (x == \"Bold\") {\r\n fontStyle = fontStyle + \" Bold\";\r\n }\r\n if (x == \"Italic\") {\r\n fontStyle = fontStyle + \" Italic\";\r\n }\r\n });\r\n }\r\n var smText = new zrender.Text({\r\n style: {\r\n text: \"粉丝昵称\",\r\n x: data.x,\r\n y: data.y,\r\n fontSize: data.fontsize,\r\n fontFamily: data.fontfamily,\r\n textFill: data.fontcolor,\r\n textAlign: \"left\",\r\n textVerticalAlign: \"top\",\r\n fontStyle: fontStyle\r\n },\r\n zlevel: this.temp,\r\n id: this.idCount,\r\n draggable: true,\r\n scale: [this.canvasZoom, this.canvasZoom]\r\n })\r\n .on(\"mouseup\", function(e: any) {\r\n // console.log(e.event);\r\n data.x = e.event.zrX;\r\n data.y = e.event.zrY;\r\n //宽度超过画布\r\n if (data.x > _this.posterSetData.bgimg.width) {\r\n data.x = _this.posterSetData.bgimg.width;\r\n }\r\n //高度超过画布\r\n if (data.y > _this.posterSetData.bgimg.height) {\r\n data.y = _this.posterSetData.bgimg.height;\r\n }\r\n _this.canvasGroup.forEach((data: any, index: number) => {\r\n if (data.type == \"nickname\") {\r\n _this.canvasGroup.splice(index, 1);\r\n _this.posterSetData.nickname.x = data.x;\r\n _this.posterSetData.nickname.y = data.y;\r\n _this.canvasGroup.push(data);\r\n }\r\n });\r\n })\r\n .on(\"dblclick\", function(ev: any) {\r\n //设置旋转角度\r\n //\tthis.attr('rotation',[this.rotation-Math.PI/12]);\r\n //设置旋转中心\r\n //this.attr('origin',[this.style.x+this.style.width/2,this.style.y+this.style.height/2]);\r\n });\r\n //console.log(data);\r\n group.add(smText);\r\n }\r\n this.idCount++;\r\n });\r\n zr.add(group);\r\n this.Effect = zr.painter.getRenderedCanvas().toDataURL();\r\n if (this.Effect) {\r\n Bus.$emit(\"Effect\", this.Effect);\r\n }\r\n }\r\n //去重复数据\r\n unique(arr: any) {\r\n for (var i = 0; i < arr.length; i++) {\r\n // console.log(arr[i]);\r\n for (var j = i + 1; j < arr.length; j++) {\r\n if (arr[i].url == arr[j].url) {\r\n //第一个等同于第二个,splice方法删除第二个\r\n arr.splice(j, 1);\r\n j--;\r\n }\r\n }\r\n }\r\n return arr;\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!./PosterSet.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!./PosterSet.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PosterSet.vue?vue&type=template&id=8ac1f362&\"\nimport script from \"./PosterSet.vue?vue&type=script&lang=ts&\"\nexport * from \"./PosterSet.vue?vue&type=script&lang=ts&\"\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","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(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","var Group = require(\"../container/Group\");\n\nvar ZImage = require(\"../graphic/Image\");\n\nvar Text = require(\"../graphic/Text\");\n\nvar Circle = require(\"../graphic/shape/Circle\");\n\nvar Rect = require(\"../graphic/shape/Rect\");\n\nvar Ellipse = require(\"../graphic/shape/Ellipse\");\n\nvar Line = require(\"../graphic/shape/Line\");\n\nvar Path = require(\"../graphic/Path\");\n\nvar Polygon = require(\"../graphic/shape/Polygon\");\n\nvar Polyline = require(\"../graphic/shape/Polyline\");\n\nvar LinearGradient = require(\"../graphic/LinearGradient\");\n\nvar Style = require(\"../graphic/Style\");\n\nvar matrix = require(\"../core/matrix\");\n\nvar _path = require(\"./path\");\n\nvar createFromString = _path.createFromString;\n\nvar _util = require(\"../core/util\");\n\nvar isString = _util.isString;\nvar extend = _util.extend;\nvar defaults = _util.defaults;\nvar trim = _util.trim;\nvar each = _util.each;\n// import RadialGradient from '../graphic/RadialGradient';\n// import Pattern from '../graphic/Pattern';\n// import * as vector from '../core/vector';\n// Most of the values can be separated by comma and/or white space.\nvar DILIMITER_REG = /[\\s,]+/;\n/**\n * For big svg string, this method might be time consuming.\n *\n * @param {string} svg xml string\n * @return {Object} xml root.\n */\n\nfunction parseXML(svg) {\n if (isString(svg)) {\n var parser = new DOMParser();\n svg = parser.parseFromString(svg, 'text/xml');\n } // Document node. If using $.get, doc node may be input.\n\n\n if (svg.nodeType === 9) {\n svg = svg.firstChild;\n } // nodeName of is also 'svg'.\n\n\n while (svg.nodeName.toLowerCase() !== 'svg' || svg.nodeType !== 1) {\n svg = svg.nextSibling;\n }\n\n return svg;\n}\n\nfunction SVGParser() {\n this._defs = {};\n this._root = null;\n this._isDefine = false;\n this._isText = false;\n}\n\nSVGParser.prototype.parse = function (xml, opt) {\n opt = opt || {};\n var svg = parseXML(xml);\n\n if (!svg) {\n throw new Error('Illegal svg');\n }\n\n var root = new Group();\n this._root = root; // parse view port\n\n var viewBox = svg.getAttribute('viewBox') || ''; // If width/height not specified, means \"100%\" of `opt.width/height`.\n // TODO: Other percent value not supported yet.\n\n var width = parseFloat(svg.getAttribute('width') || opt.width);\n var height = parseFloat(svg.getAttribute('height') || opt.height); // If width/height not specified, set as null for output.\n\n isNaN(width) && (width = null);\n isNaN(height) && (height = null); // Apply inline style on svg element.\n\n parseAttributes(svg, root, null, true);\n var child = svg.firstChild;\n\n while (child) {\n this._parseNode(child, root);\n\n child = child.nextSibling;\n }\n\n var viewBoxRect;\n var viewBoxTransform;\n\n if (viewBox) {\n var viewBoxArr = trim(viewBox).split(DILIMITER_REG); // Some invalid case like viewBox: 'none'.\n\n if (viewBoxArr.length >= 4) {\n viewBoxRect = {\n x: parseFloat(viewBoxArr[0] || 0),\n y: parseFloat(viewBoxArr[1] || 0),\n width: parseFloat(viewBoxArr[2]),\n height: parseFloat(viewBoxArr[3])\n };\n }\n }\n\n if (viewBoxRect && width != null && height != null) {\n viewBoxTransform = makeViewBoxTransform(viewBoxRect, width, height);\n\n if (!opt.ignoreViewBox) {\n // If set transform on the output group, it probably bring trouble when\n // some users only intend to show the clipped content inside the viewBox,\n // but not intend to transform the output group. So we keep the output\n // group no transform. If the user intend to use the viewBox as a\n // camera, just set `opt.ignoreViewBox` as `true` and set transfrom\n // manually according to the viewBox info in the output of this method.\n var elRoot = root;\n root = new Group();\n root.add(elRoot);\n elRoot.scale = viewBoxTransform.scale.slice();\n elRoot.position = viewBoxTransform.position.slice();\n }\n } // Some shapes might be overflow the viewport, which should be\n // clipped despite whether the viewBox is used, as the SVG does.\n\n\n if (!opt.ignoreRootClip && width != null && height != null) {\n root.setClipPath(new Rect({\n shape: {\n x: 0,\n y: 0,\n width: width,\n height: height\n }\n }));\n } // Set width/height on group just for output the viewport size.\n\n\n return {\n root: root,\n width: width,\n height: height,\n viewBoxRect: viewBoxRect,\n viewBoxTransform: viewBoxTransform\n };\n};\n\nSVGParser.prototype._parseNode = function (xmlNode, parentGroup) {\n var nodeName = xmlNode.nodeName.toLowerCase(); // TODO\n // support in svg, where nodeName is 'style',\n // CSS classes is defined globally wherever the style tags are declared.\n\n if (nodeName === 'defs') {\n // define flag\n this._isDefine = true;\n } else if (nodeName === 'text') {\n this._isText = true;\n }\n\n var el;\n\n if (this._isDefine) {\n var parser = defineParsers[nodeName];\n\n if (parser) {\n var def = parser.call(this, xmlNode);\n var id = xmlNode.getAttribute('id');\n\n if (id) {\n this._defs[id] = def;\n }\n }\n } else {\n var parser = nodeParsers[nodeName];\n\n if (parser) {\n el = parser.call(this, xmlNode, parentGroup);\n parentGroup.add(el);\n }\n }\n\n var child = xmlNode.firstChild;\n\n while (child) {\n if (child.nodeType === 1) {\n this._parseNode(child, el);\n } // Is text\n\n\n if (child.nodeType === 3 && this._isText) {\n this._parseText(child, el);\n }\n\n child = child.nextSibling;\n } // Quit define\n\n\n if (nodeName === 'defs') {\n this._isDefine = false;\n } else if (nodeName === 'text') {\n this._isText = false;\n }\n};\n\nSVGParser.prototype._parseText = function (xmlNode, parentGroup) {\n if (xmlNode.nodeType === 1) {\n var dx = xmlNode.getAttribute('dx') || 0;\n var dy = xmlNode.getAttribute('dy') || 0;\n this._textX += parseFloat(dx);\n this._textY += parseFloat(dy);\n }\n\n var text = new Text({\n style: {\n text: xmlNode.textContent,\n transformText: true\n },\n position: [this._textX || 0, this._textY || 0]\n });\n inheritStyle(parentGroup, text);\n parseAttributes(xmlNode, text, this._defs);\n var fontSize = text.style.fontSize;\n\n if (fontSize && fontSize < 9) {\n // PENDING\n text.style.fontSize = 9;\n text.scale = text.scale || [1, 1];\n text.scale[0] *= fontSize / 9;\n text.scale[1] *= fontSize / 9;\n }\n\n var rect = text.getBoundingRect();\n this._textX += rect.width;\n parentGroup.add(text);\n return text;\n};\n\nvar nodeParsers = {\n 'g': function (xmlNode, parentGroup) {\n var g = new Group();\n inheritStyle(parentGroup, g);\n parseAttributes(xmlNode, g, this._defs);\n return g;\n },\n 'rect': function (xmlNode, parentGroup) {\n var rect = new Rect();\n inheritStyle(parentGroup, rect);\n parseAttributes(xmlNode, rect, this._defs);\n rect.setShape({\n x: parseFloat(xmlNode.getAttribute('x') || 0),\n y: parseFloat(xmlNode.getAttribute('y') || 0),\n width: parseFloat(xmlNode.getAttribute('width') || 0),\n height: parseFloat(xmlNode.getAttribute('height') || 0)\n }); // console.log(xmlNode.getAttribute('transform'));\n // console.log(rect.transform);\n\n return rect;\n },\n 'circle': function (xmlNode, parentGroup) {\n var circle = new Circle();\n inheritStyle(parentGroup, circle);\n parseAttributes(xmlNode, circle, this._defs);\n circle.setShape({\n cx: parseFloat(xmlNode.getAttribute('cx') || 0),\n cy: parseFloat(xmlNode.getAttribute('cy') || 0),\n r: parseFloat(xmlNode.getAttribute('r') || 0)\n });\n return circle;\n },\n 'line': function (xmlNode, parentGroup) {\n var line = new Line();\n inheritStyle(parentGroup, line);\n parseAttributes(xmlNode, line, this._defs);\n line.setShape({\n x1: parseFloat(xmlNode.getAttribute('x1') || 0),\n y1: parseFloat(xmlNode.getAttribute('y1') || 0),\n x2: parseFloat(xmlNode.getAttribute('x2') || 0),\n y2: parseFloat(xmlNode.getAttribute('y2') || 0)\n });\n return line;\n },\n 'ellipse': function (xmlNode, parentGroup) {\n var ellipse = new Ellipse();\n inheritStyle(parentGroup, ellipse);\n parseAttributes(xmlNode, ellipse, this._defs);\n ellipse.setShape({\n cx: parseFloat(xmlNode.getAttribute('cx') || 0),\n cy: parseFloat(xmlNode.getAttribute('cy') || 0),\n rx: parseFloat(xmlNode.getAttribute('rx') || 0),\n ry: parseFloat(xmlNode.getAttribute('ry') || 0)\n });\n return ellipse;\n },\n 'polygon': function (xmlNode, parentGroup) {\n var points = xmlNode.getAttribute('points');\n\n if (points) {\n points = parsePoints(points);\n }\n\n var polygon = new Polygon({\n shape: {\n points: points || []\n }\n });\n inheritStyle(parentGroup, polygon);\n parseAttributes(xmlNode, polygon, this._defs);\n return polygon;\n },\n 'polyline': function (xmlNode, parentGroup) {\n var path = new Path();\n inheritStyle(parentGroup, path);\n parseAttributes(xmlNode, path, this._defs);\n var points = xmlNode.getAttribute('points');\n\n if (points) {\n points = parsePoints(points);\n }\n\n var polyline = new Polyline({\n shape: {\n points: points || []\n }\n });\n return polyline;\n },\n 'image': function (xmlNode, parentGroup) {\n var img = new ZImage();\n inheritStyle(parentGroup, img);\n parseAttributes(xmlNode, img, this._defs);\n img.setStyle({\n image: xmlNode.getAttribute('xlink:href'),\n x: xmlNode.getAttribute('x'),\n y: xmlNode.getAttribute('y'),\n width: xmlNode.getAttribute('width'),\n height: xmlNode.getAttribute('height')\n });\n return img;\n },\n 'text': function (xmlNode, parentGroup) {\n var x = xmlNode.getAttribute('x') || 0;\n var y = xmlNode.getAttribute('y') || 0;\n var dx = xmlNode.getAttribute('dx') || 0;\n var dy = xmlNode.getAttribute('dy') || 0;\n this._textX = parseFloat(x) + parseFloat(dx);\n this._textY = parseFloat(y) + parseFloat(dy);\n var g = new Group();\n inheritStyle(parentGroup, g);\n parseAttributes(xmlNode, g, this._defs);\n return g;\n },\n 'tspan': function (xmlNode, parentGroup) {\n var x = xmlNode.getAttribute('x');\n var y = xmlNode.getAttribute('y');\n\n if (x != null) {\n // new offset x\n this._textX = parseFloat(x);\n }\n\n if (y != null) {\n // new offset y\n this._textY = parseFloat(y);\n }\n\n var dx = xmlNode.getAttribute('dx') || 0;\n var dy = xmlNode.getAttribute('dy') || 0;\n var g = new Group();\n inheritStyle(parentGroup, g);\n parseAttributes(xmlNode, g, this._defs);\n this._textX += dx;\n this._textY += dy;\n return g;\n },\n 'path': function (xmlNode, parentGroup) {\n // TODO svg fill rule\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule\n // path.style.globalCompositeOperation = 'xor';\n var d = xmlNode.getAttribute('d') || ''; // Performance sensitive.\n\n var path = createFromString(d);\n inheritStyle(parentGroup, path);\n parseAttributes(xmlNode, path, this._defs);\n return path;\n }\n};\nvar defineParsers = {\n 'lineargradient': function (xmlNode) {\n var x1 = parseInt(xmlNode.getAttribute('x1') || 0, 10);\n var y1 = parseInt(xmlNode.getAttribute('y1') || 0, 10);\n var x2 = parseInt(xmlNode.getAttribute('x2') || 10, 10);\n var y2 = parseInt(xmlNode.getAttribute('y2') || 0, 10);\n var gradient = new LinearGradient(x1, y1, x2, y2);\n\n _parseGradientColorStops(xmlNode, gradient);\n\n return gradient;\n },\n 'radialgradient': function (xmlNode) {}\n};\n\nfunction _parseGradientColorStops(xmlNode, gradient) {\n var stop = xmlNode.firstChild;\n\n while (stop) {\n if (stop.nodeType === 1) {\n var offset = stop.getAttribute('offset');\n\n if (offset.indexOf('%') > 0) {\n // percentage\n offset = parseInt(offset, 10) / 100;\n } else if (offset) {\n // number from 0 to 1\n offset = parseFloat(offset);\n } else {\n offset = 0;\n }\n\n var stopColor = stop.getAttribute('stop-color') || '#000000';\n gradient.addColorStop(offset, stopColor);\n }\n\n stop = stop.nextSibling;\n }\n}\n\nfunction inheritStyle(parent, child) {\n if (parent && parent.__inheritedStyle) {\n if (!child.__inheritedStyle) {\n child.__inheritedStyle = {};\n }\n\n defaults(child.__inheritedStyle, parent.__inheritedStyle);\n }\n}\n\nfunction parsePoints(pointsString) {\n var list = trim(pointsString).split(DILIMITER_REG);\n var points = [];\n\n for (var i = 0; i < list.length; i += 2) {\n var x = parseFloat(list[i]);\n var y = parseFloat(list[i + 1]);\n points.push([x, y]);\n }\n\n return points;\n}\n\nvar attributesMap = {\n 'fill': 'fill',\n 'stroke': 'stroke',\n 'stroke-width': 'lineWidth',\n 'opacity': 'opacity',\n 'fill-opacity': 'fillOpacity',\n 'stroke-opacity': 'strokeOpacity',\n 'stroke-dasharray': 'lineDash',\n 'stroke-dashoffset': 'lineDashOffset',\n 'stroke-linecap': 'lineCap',\n 'stroke-linejoin': 'lineJoin',\n 'stroke-miterlimit': 'miterLimit',\n 'font-family': 'fontFamily',\n 'font-size': 'fontSize',\n 'font-style': 'fontStyle',\n 'font-weight': 'fontWeight',\n 'text-align': 'textAlign',\n 'alignment-baseline': 'textBaseline'\n};\n\nfunction parseAttributes(xmlNode, el, defs, onlyInlineStyle) {\n var zrStyle = el.__inheritedStyle || {};\n var isTextEl = el.type === 'text'; // TODO Shadow\n\n if (xmlNode.nodeType === 1) {\n parseTransformAttribute(xmlNode, el);\n extend(zrStyle, parseStyleAttribute(xmlNode));\n\n if (!onlyInlineStyle) {\n for (var svgAttrName in attributesMap) {\n if (attributesMap.hasOwnProperty(svgAttrName)) {\n var attrValue = xmlNode.getAttribute(svgAttrName);\n\n if (attrValue != null) {\n zrStyle[attributesMap[svgAttrName]] = attrValue;\n }\n }\n }\n }\n }\n\n var elFillProp = isTextEl ? 'textFill' : 'fill';\n var elStrokeProp = isTextEl ? 'textStroke' : 'stroke';\n el.style = el.style || new Style();\n var elStyle = el.style;\n zrStyle.fill != null && elStyle.set(elFillProp, getPaint(zrStyle.fill, defs));\n zrStyle.stroke != null && elStyle.set(elStrokeProp, getPaint(zrStyle.stroke, defs));\n each(['lineWidth', 'opacity', 'fillOpacity', 'strokeOpacity', 'miterLimit', 'fontSize'], function (propName) {\n var elPropName = propName === 'lineWidth' && isTextEl ? 'textStrokeWidth' : propName;\n zrStyle[propName] != null && elStyle.set(elPropName, parseFloat(zrStyle[propName]));\n });\n\n if (!zrStyle.textBaseline || zrStyle.textBaseline === 'auto') {\n zrStyle.textBaseline = 'alphabetic';\n }\n\n if (zrStyle.textBaseline === 'alphabetic') {\n zrStyle.textBaseline = 'bottom';\n }\n\n if (zrStyle.textAlign === 'start') {\n zrStyle.textAlign = 'left';\n }\n\n if (zrStyle.textAlign === 'end') {\n zrStyle.textAlign = 'right';\n }\n\n each(['lineDashOffset', 'lineCap', 'lineJoin', 'fontWeight', 'fontFamily', 'fontStyle', 'textAlign', 'textBaseline'], function (propName) {\n zrStyle[propName] != null && elStyle.set(propName, zrStyle[propName]);\n });\n\n if (zrStyle.lineDash) {\n el.style.lineDash = trim(zrStyle.lineDash).split(DILIMITER_REG);\n }\n\n if (elStyle[elStrokeProp] && elStyle[elStrokeProp] !== 'none') {\n // enable stroke\n el[elStrokeProp] = true;\n }\n\n el.__inheritedStyle = zrStyle;\n}\n\nvar urlRegex = /url\\(\\s*#(.*?)\\)/;\n\nfunction getPaint(str, defs) {\n // if (str === 'none') {\n // return;\n // }\n var urlMatch = defs && str && str.match(urlRegex);\n\n if (urlMatch) {\n var url = trim(urlMatch[1]);\n var def = defs[url];\n return def;\n }\n\n return str;\n}\n\nvar transformRegex = /(translate|scale|rotate|skewX|skewY|matrix)\\(([\\-\\s0-9\\.e,]*)\\)/g;\n\nfunction parseTransformAttribute(xmlNode, node) {\n var transform = xmlNode.getAttribute('transform');\n\n if (transform) {\n transform = transform.replace(/,/g, ' ');\n var m = null;\n var transformOps = [];\n transform.replace(transformRegex, function (str, type, value) {\n transformOps.push(type, value);\n });\n\n for (var i = transformOps.length - 1; i > 0; i -= 2) {\n var value = transformOps[i];\n var type = transformOps[i - 1];\n m = m || matrix.create();\n\n switch (type) {\n case 'translate':\n value = trim(value).split(DILIMITER_REG);\n matrix.translate(m, m, [parseFloat(value[0]), parseFloat(value[1] || 0)]);\n break;\n\n case 'scale':\n value = trim(value).split(DILIMITER_REG);\n matrix.scale(m, m, [parseFloat(value[0]), parseFloat(value[1] || value[0])]);\n break;\n\n case 'rotate':\n value = trim(value).split(DILIMITER_REG);\n matrix.rotate(m, m, parseFloat(value[0]));\n break;\n\n case 'skew':\n value = trim(value).split(DILIMITER_REG);\n console.warn('Skew transform is not supported yet');\n break;\n\n case 'matrix':\n var value = trim(value).split(DILIMITER_REG);\n m[0] = parseFloat(value[0]);\n m[1] = parseFloat(value[1]);\n m[2] = parseFloat(value[2]);\n m[3] = parseFloat(value[3]);\n m[4] = parseFloat(value[4]);\n m[5] = parseFloat(value[5]);\n break;\n }\n }\n\n node.setLocalTransform(m);\n }\n} // Value may contain space.\n\n\nvar styleRegex = /([^\\s:;]+)\\s*:\\s*([^:;]+)/g;\n\nfunction parseStyleAttribute(xmlNode) {\n var style = xmlNode.getAttribute('style');\n var result = {};\n\n if (!style) {\n return result;\n }\n\n var styleList = {};\n styleRegex.lastIndex = 0;\n var styleRegResult;\n\n while ((styleRegResult = styleRegex.exec(style)) != null) {\n styleList[styleRegResult[1]] = styleRegResult[2];\n }\n\n for (var svgAttrName in attributesMap) {\n if (attributesMap.hasOwnProperty(svgAttrName) && styleList[svgAttrName] != null) {\n result[attributesMap[svgAttrName]] = styleList[svgAttrName];\n }\n }\n\n return result;\n}\n/**\n * @param {Array.} viewBoxRect\n * @param {number} width\n * @param {number} height\n * @return {Object} {scale, position}\n */\n\n\nfunction makeViewBoxTransform(viewBoxRect, width, height) {\n var scaleX = width / viewBoxRect.width;\n var scaleY = height / viewBoxRect.height;\n var scale = Math.min(scaleX, scaleY); // preserveAspectRatio 'xMidYMid'\n\n var viewBoxScale = [scale, scale];\n var viewBoxPosition = [-(viewBoxRect.x + viewBoxRect.width / 2) * scale + width / 2, -(viewBoxRect.y + viewBoxRect.height / 2) * scale + height / 2];\n return {\n scale: viewBoxScale,\n position: viewBoxPosition\n };\n}\n/**\n * @param {string|XMLElement} xml\n * @param {Object} [opt]\n * @param {number} [opt.width] Default width if svg width not specified or is a percent value.\n * @param {number} [opt.height] Default height if svg height not specified or is a percent value.\n * @param {boolean} [opt.ignoreViewBox]\n * @param {boolean} [opt.ignoreRootClip]\n * @return {Object} result:\n * {\n * root: Group, The root of the the result tree of zrender shapes,\n * width: number, the viewport width of the SVG,\n * height: number, the viewport height of the SVG,\n * viewBoxRect: {x, y, width, height}, the declared viewBox rect of the SVG, if exists,\n * viewBoxTransform: the {scale, position} calculated by viewBox and viewport, is exists.\n * }\n */\n\n\nfunction parseSVG(xml, opt) {\n var parser = new SVGParser();\n return parser.parse(xml, opt);\n}\n\nexports.parseXML = parseXML;\nexports.makeViewBoxTransform = makeViewBoxTransform;\nexports.parseSVG = parseSVG;","var util = require(\"../core/util\");\n\nvar _event = require(\"../core/event\");\n\nvar Dispatcher = _event.Dispatcher;\n\nvar requestAnimationFrame = require(\"./requestAnimationFrame\");\n\nvar Animator = require(\"./Animator\");\n\n/**\n * Animation main class, dispatch and manage all animation controllers\n *\n * @module zrender/animation/Animation\n * @author pissang(https://github.com/pissang)\n */\n// TODO Additive animation\n// http://iosoteric.com/additive-animations-animatewithduration-in-ios-8/\n// https://developer.apple.com/videos/wwdc2014/#236\n\n/**\n * @typedef {Object} IZRenderStage\n * @property {Function} update\n */\n\n/**\n * @alias module:zrender/animation/Animation\n * @constructor\n * @param {Object} [options]\n * @param {Function} [options.onframe]\n * @param {IZRenderStage} [options.stage]\n * @example\n * var animation = new Animation();\n * var obj = {\n * x: 100,\n * y: 100\n * };\n * animation.animate(node.position)\n * .when(1000, {\n * x: 500,\n * y: 500\n * })\n * .when(2000, {\n * x: 100,\n * y: 100\n * })\n * .start('spline');\n */\nvar Animation = function (options) {\n options = options || {};\n this.stage = options.stage || {};\n\n this.onframe = options.onframe || function () {}; // private properties\n\n\n this._clips = [];\n this._running = false;\n this._time;\n this._pausedTime;\n this._pauseStart;\n this._paused = false;\n Dispatcher.call(this);\n};\n\nAnimation.prototype = {\n constructor: Animation,\n\n /**\n * Add clip\n * @param {module:zrender/animation/Clip} clip\n */\n addClip: function (clip) {\n this._clips.push(clip);\n },\n\n /**\n * Add animator\n * @param {module:zrender/animation/Animator} animator\n */\n addAnimator: function (animator) {\n animator.animation = this;\n var clips = animator.getClips();\n\n for (var i = 0; i < clips.length; i++) {\n this.addClip(clips[i]);\n }\n },\n\n /**\n * Delete animation clip\n * @param {module:zrender/animation/Clip} clip\n */\n removeClip: function (clip) {\n var idx = util.indexOf(this._clips, clip);\n\n if (idx >= 0) {\n this._clips.splice(idx, 1);\n }\n },\n\n /**\n * Delete animation clip\n * @param {module:zrender/animation/Animator} animator\n */\n removeAnimator: function (animator) {\n var clips = animator.getClips();\n\n for (var i = 0; i < clips.length; i++) {\n this.removeClip(clips[i]);\n }\n\n animator.animation = null;\n },\n _update: function () {\n var time = new Date().getTime() - this._pausedTime;\n\n var delta = time - this._time;\n var clips = this._clips;\n var len = clips.length;\n var deferredEvents = [];\n var deferredClips = [];\n\n for (var i = 0; i < len; i++) {\n var clip = clips[i];\n var e = clip.step(time, delta); // Throw out the events need to be called after\n // stage.update, like destroy\n\n if (e) {\n deferredEvents.push(e);\n deferredClips.push(clip);\n }\n } // Remove the finished clip\n\n\n for (var i = 0; i < len;) {\n if (clips[i]._needsRemove) {\n clips[i] = clips[len - 1];\n clips.pop();\n len--;\n } else {\n i++;\n }\n }\n\n len = deferredEvents.length;\n\n for (var i = 0; i < len; i++) {\n deferredClips[i].fire(deferredEvents[i]);\n }\n\n this._time = time;\n this.onframe(delta); // 'frame' should be triggered before stage, because upper application\n // depends on the sequence (e.g., echarts-stream and finish\n // event judge)\n\n this.trigger('frame', delta);\n\n if (this.stage.update) {\n this.stage.update();\n }\n },\n _startLoop: function () {\n var self = this;\n this._running = true;\n\n function step() {\n if (self._running) {\n requestAnimationFrame(step);\n !self._paused && self._update();\n }\n }\n\n requestAnimationFrame(step);\n },\n\n /**\n * Start animation.\n */\n start: function () {\n this._time = new Date().getTime();\n this._pausedTime = 0;\n\n this._startLoop();\n },\n\n /**\n * Stop animation.\n */\n stop: function () {\n this._running = false;\n },\n\n /**\n * Pause animation.\n */\n pause: function () {\n if (!this._paused) {\n this._pauseStart = new Date().getTime();\n this._paused = true;\n }\n },\n\n /**\n * Resume animation.\n */\n resume: function () {\n if (this._paused) {\n this._pausedTime += new Date().getTime() - this._pauseStart;\n this._paused = false;\n }\n },\n\n /**\n * Clear animation.\n */\n clear: function () {\n this._clips = [];\n },\n\n /**\n * Whether animation finished.\n */\n isFinished: function () {\n return !this._clips.length;\n },\n\n /**\n * Creat animator for a target, whose props can be animated.\n *\n * @param {Object} target\n * @param {Object} options\n * @param {boolean} [options.loop=false] Whether loop animation.\n * @param {Function} [options.getter=null] Get value from target.\n * @param {Function} [options.setter=null] Set value to target.\n * @return {module:zrender/animation/Animation~Animator}\n */\n // TODO Gap\n animate: function (target, options) {\n options = options || {};\n var animator = new Animator(target, options.loop, options.getter, options.setter);\n this.addAnimator(animator);\n return animator;\n }\n};\nutil.mixin(Animation, Dispatcher);\nvar _default = Animation;\nmodule.exports = _default;","var Path = require(\"../graphic/Path\");\n\nvar PathProxy = require(\"../core/PathProxy\");\n\nvar transformPath = require(\"./transformPath\");\n\n// command chars\n// var cc = [\n// 'm', 'M', 'l', 'L', 'v', 'V', 'h', 'H', 'z', 'Z',\n// 'c', 'C', 'q', 'Q', 't', 'T', 's', 'S', 'a', 'A'\n// ];\nvar mathSqrt = Math.sqrt;\nvar mathSin = Math.sin;\nvar mathCos = Math.cos;\nvar PI = Math.PI;\n\nvar vMag = function (v) {\n return Math.sqrt(v[0] * v[0] + v[1] * v[1]);\n};\n\nvar vRatio = function (u, v) {\n return (u[0] * v[0] + u[1] * v[1]) / (vMag(u) * vMag(v));\n};\n\nvar vAngle = function (u, v) {\n return (u[0] * v[1] < u[1] * v[0] ? -1 : 1) * Math.acos(vRatio(u, v));\n};\n\nfunction processArc(x1, y1, x2, y2, fa, fs, rx, ry, psiDeg, cmd, path) {\n var psi = psiDeg * (PI / 180.0);\n var xp = mathCos(psi) * (x1 - x2) / 2.0 + mathSin(psi) * (y1 - y2) / 2.0;\n var yp = -1 * mathSin(psi) * (x1 - x2) / 2.0 + mathCos(psi) * (y1 - y2) / 2.0;\n var lambda = xp * xp / (rx * rx) + yp * yp / (ry * ry);\n\n if (lambda > 1) {\n rx *= mathSqrt(lambda);\n ry *= mathSqrt(lambda);\n }\n\n var f = (fa === fs ? -1 : 1) * mathSqrt((rx * rx * (ry * ry) - rx * rx * (yp * yp) - ry * ry * (xp * xp)) / (rx * rx * (yp * yp) + ry * ry * (xp * xp))) || 0;\n var cxp = f * rx * yp / ry;\n var cyp = f * -ry * xp / rx;\n var cx = (x1 + x2) / 2.0 + mathCos(psi) * cxp - mathSin(psi) * cyp;\n var cy = (y1 + y2) / 2.0 + mathSin(psi) * cxp + mathCos(psi) * cyp;\n var theta = vAngle([1, 0], [(xp - cxp) / rx, (yp - cyp) / ry]);\n var u = [(xp - cxp) / rx, (yp - cyp) / ry];\n var v = [(-1 * xp - cxp) / rx, (-1 * yp - cyp) / ry];\n var dTheta = vAngle(u, v);\n\n if (vRatio(u, v) <= -1) {\n dTheta = PI;\n }\n\n if (vRatio(u, v) >= 1) {\n dTheta = 0;\n }\n\n if (fs === 0 && dTheta > 0) {\n dTheta = dTheta - 2 * PI;\n }\n\n if (fs === 1 && dTheta < 0) {\n dTheta = dTheta + 2 * PI;\n }\n\n path.addData(cmd, cx, cy, rx, ry, theta, dTheta, psi, fs);\n}\n\nvar commandReg = /([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig; // Consider case:\n// (1) delimiter can be comma or space, where continuous commas\n// or spaces should be seen as one comma.\n// (2) value can be like:\n// '2e-4', 'l.5.9' (ignore 0), 'M-10-10', 'l-2.43e-1,34.9983',\n// 'l-.5E1,54', '121-23-44-11' (no delimiter)\n\nvar numberReg = /-?([0-9]*\\.)?[0-9]+([eE]-?[0-9]+)?/g; // var valueSplitReg = /[\\s,]+/;\n\nfunction createPathProxyFromString(data) {\n if (!data) {\n return new PathProxy();\n } // var data = data.replace(/-/g, ' -')\n // .replace(/ /g, ' ')\n // .replace(/ /g, ',')\n // .replace(/,,/g, ',');\n // var n;\n // create pipes so that we can split the data\n // for (n = 0; n < cc.length; n++) {\n // cs = cs.replace(new RegExp(cc[n], 'g'), '|' + cc[n]);\n // }\n // data = data.replace(/-/g, ',-');\n // create array\n // var arr = cs.split('|');\n // init context point\n\n\n var cpx = 0;\n var cpy = 0;\n var subpathX = cpx;\n var subpathY = cpy;\n var prevCmd;\n var path = new PathProxy();\n var CMD = PathProxy.CMD; // commandReg.lastIndex = 0;\n // var cmdResult;\n // while ((cmdResult = commandReg.exec(data)) != null) {\n // var cmdStr = cmdResult[1];\n // var cmdContent = cmdResult[2];\n\n var cmdList = data.match(commandReg);\n\n for (var l = 0; l < cmdList.length; l++) {\n var cmdText = cmdList[l];\n var cmdStr = cmdText.charAt(0);\n var cmd; // String#split is faster a little bit than String#replace or RegExp#exec.\n // var p = cmdContent.split(valueSplitReg);\n // var pLen = 0;\n // for (var i = 0; i < p.length; i++) {\n // // '' and other invalid str => NaN\n // var val = parseFloat(p[i]);\n // !isNaN(val) && (p[pLen++] = val);\n // }\n\n var p = cmdText.match(numberReg) || [];\n var pLen = p.length;\n\n for (var i = 0; i < pLen; i++) {\n p[i] = parseFloat(p[i]);\n }\n\n var off = 0;\n\n while (off < pLen) {\n var ctlPtx;\n var ctlPty;\n var rx;\n var ry;\n var psi;\n var fa;\n var fs;\n var x1 = cpx;\n var y1 = cpy; // convert l, H, h, V, and v to L\n\n switch (cmdStr) {\n case 'l':\n cpx += p[off++];\n cpy += p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'L':\n cpx = p[off++];\n cpy = p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'm':\n cpx += p[off++];\n cpy += p[off++];\n cmd = CMD.M;\n path.addData(cmd, cpx, cpy);\n subpathX = cpx;\n subpathY = cpy;\n cmdStr = 'l';\n break;\n\n case 'M':\n cpx = p[off++];\n cpy = p[off++];\n cmd = CMD.M;\n path.addData(cmd, cpx, cpy);\n subpathX = cpx;\n subpathY = cpy;\n cmdStr = 'L';\n break;\n\n case 'h':\n cpx += p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'H':\n cpx = p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'v':\n cpy += p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'V':\n cpy = p[off++];\n cmd = CMD.L;\n path.addData(cmd, cpx, cpy);\n break;\n\n case 'C':\n cmd = CMD.C;\n path.addData(cmd, p[off++], p[off++], p[off++], p[off++], p[off++], p[off++]);\n cpx = p[off - 2];\n cpy = p[off - 1];\n break;\n\n case 'c':\n cmd = CMD.C;\n path.addData(cmd, p[off++] + cpx, p[off++] + cpy, p[off++] + cpx, p[off++] + cpy, p[off++] + cpx, p[off++] + cpy);\n cpx += p[off - 2];\n cpy += p[off - 1];\n break;\n\n case 'S':\n ctlPtx = cpx;\n ctlPty = cpy;\n var len = path.len();\n var pathData = path.data;\n\n if (prevCmd === CMD.C) {\n ctlPtx += cpx - pathData[len - 4];\n ctlPty += cpy - pathData[len - 3];\n }\n\n cmd = CMD.C;\n x1 = p[off++];\n y1 = p[off++];\n cpx = p[off++];\n cpy = p[off++];\n path.addData(cmd, ctlPtx, ctlPty, x1, y1, cpx, cpy);\n break;\n\n case 's':\n ctlPtx = cpx;\n ctlPty = cpy;\n var len = path.len();\n var pathData = path.data;\n\n if (prevCmd === CMD.C) {\n ctlPtx += cpx - pathData[len - 4];\n ctlPty += cpy - pathData[len - 3];\n }\n\n cmd = CMD.C;\n x1 = cpx + p[off++];\n y1 = cpy + p[off++];\n cpx += p[off++];\n cpy += p[off++];\n path.addData(cmd, ctlPtx, ctlPty, x1, y1, cpx, cpy);\n break;\n\n case 'Q':\n x1 = p[off++];\n y1 = p[off++];\n cpx = p[off++];\n cpy = p[off++];\n cmd = CMD.Q;\n path.addData(cmd, x1, y1, cpx, cpy);\n break;\n\n case 'q':\n x1 = p[off++] + cpx;\n y1 = p[off++] + cpy;\n cpx += p[off++];\n cpy += p[off++];\n cmd = CMD.Q;\n path.addData(cmd, x1, y1, cpx, cpy);\n break;\n\n case 'T':\n ctlPtx = cpx;\n ctlPty = cpy;\n var len = path.len();\n var pathData = path.data;\n\n if (prevCmd === CMD.Q) {\n ctlPtx += cpx - pathData[len - 4];\n ctlPty += cpy - pathData[len - 3];\n }\n\n cpx = p[off++];\n cpy = p[off++];\n cmd = CMD.Q;\n path.addData(cmd, ctlPtx, ctlPty, cpx, cpy);\n break;\n\n case 't':\n ctlPtx = cpx;\n ctlPty = cpy;\n var len = path.len();\n var pathData = path.data;\n\n if (prevCmd === CMD.Q) {\n ctlPtx += cpx - pathData[len - 4];\n ctlPty += cpy - pathData[len - 3];\n }\n\n cpx += p[off++];\n cpy += p[off++];\n cmd = CMD.Q;\n path.addData(cmd, ctlPtx, ctlPty, cpx, cpy);\n break;\n\n case 'A':\n rx = p[off++];\n ry = p[off++];\n psi = p[off++];\n fa = p[off++];\n fs = p[off++];\n x1 = cpx, y1 = cpy;\n cpx = p[off++];\n cpy = p[off++];\n cmd = CMD.A;\n processArc(x1, y1, cpx, cpy, fa, fs, rx, ry, psi, cmd, path);\n break;\n\n case 'a':\n rx = p[off++];\n ry = p[off++];\n psi = p[off++];\n fa = p[off++];\n fs = p[off++];\n x1 = cpx, y1 = cpy;\n cpx += p[off++];\n cpy += p[off++];\n cmd = CMD.A;\n processArc(x1, y1, cpx, cpy, fa, fs, rx, ry, psi, cmd, path);\n break;\n }\n }\n\n if (cmdStr === 'z' || cmdStr === 'Z') {\n cmd = CMD.Z;\n path.addData(cmd); // z may be in the middle of the path.\n\n cpx = subpathX;\n cpy = subpathY;\n }\n\n prevCmd = cmd;\n }\n\n path.toStatic();\n return path;\n} // TODO Optimize double memory cost problem\n\n\nfunction createPathOptions(str, opts) {\n var pathProxy = createPathProxyFromString(str);\n opts = opts || {};\n\n opts.buildPath = function (path) {\n if (path.setData) {\n path.setData(pathProxy.data); // Svg and vml renderer don't have context\n\n var ctx = path.getContext();\n\n if (ctx) {\n path.rebuildPath(ctx);\n }\n } else {\n var ctx = path;\n pathProxy.rebuildPath(ctx);\n }\n };\n\n opts.applyTransform = function (m) {\n transformPath(pathProxy, m);\n this.dirty(true);\n };\n\n return opts;\n}\n/**\n * Create a Path object from path string data\n * http://www.w3.org/TR/SVG/paths.html#PathData\n * @param {Object} opts Other options\n */\n\n\nfunction createFromString(str, opts) {\n return new Path(createPathOptions(str, opts));\n}\n/**\n * Create a Path class from path string data\n * @param {string} str\n * @param {Object} opts Other options\n */\n\n\nfunction extendFromString(str, opts) {\n return Path.extend(createPathOptions(str, opts));\n}\n/**\n * Merge multiple paths\n */\n// TODO Apply transform\n// TODO stroke dash\n// TODO Optimize double memory cost problem\n\n\nfunction mergePath(pathEls, opts) {\n var pathList = [];\n var len = pathEls.length;\n\n for (var i = 0; i < len; i++) {\n var pathEl = pathEls[i];\n\n if (!pathEl.path) {\n pathEl.createPathProxy();\n }\n\n if (pathEl.__dirtyPath) {\n pathEl.buildPath(pathEl.path, pathEl.shape, true);\n }\n\n pathList.push(pathEl.path);\n }\n\n var pathBundle = new Path(opts); // Need path proxy.\n\n pathBundle.createPathProxy();\n\n pathBundle.buildPath = function (path) {\n path.appendPath(pathList); // Svg and vml renderer don't have context\n\n var ctx = path.getContext();\n\n if (ctx) {\n path.rebuildPath(ctx);\n }\n };\n\n return pathBundle;\n}\n\nexports.createFromString = createFromString;\nexports.extendFromString = extendFromString;\nexports.mergePath = mergePath;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"height\":\"100%\"}},[_c('div',{staticClass:\"page-top\"},[_c('el-page-header',{attrs:{\"content\":_vm.wxQrCodePosterListModel.EventName},on:{\"back\":_vm.back}}),_c('el-row',{attrs:{\"gutter\":10}},[_c('el-col',{attrs:{\"span\":20}},[_c('el-form',{staticClass:\"demo-form-inline\",attrs:{\"inline\":true,\"model\":_vm.formInline}},[_c('el-form-item',{attrs:{\"label\":\"关键词\"}},[_c('el-input',{attrs:{\"placeholder\":\"关键词(名称/编码/OpenId/UnionId)\",\"clearable\":\"\",\"size\":\"small\"},model:{value:(_vm.SearchKeywords),callback:function ($$v) {_vm.SearchKeywords=$$v},expression:\"SearchKeywords\"}},[_c('i',{staticClass:\"el-input__icon el-icon-search\",attrs:{\"slot\":\"prefix\"},slot:\"prefix\"})])],1),_c('el-form-item',[_c('el-button',{attrs:{\"type\":\"primary\",\"size\":\"small\"},on:{\"click\":_vm.GetQrCodePosterDetaila}},[_vm._v(\"搜索\")])],1)],1)],1),_c('el-col',{staticStyle:{\"text-align\":\"right\"},attrs:{\"span\":4}},[(_vm.wxQrCodePosterListModel.EditPoster==0)?_c('el-button',{attrs:{\"type\":\"success\",\"size\":\"small\"},on:{\"click\":_vm.addQrCode}},[_vm._v(\"创建\")]):_vm._e()],1)],1)],1),_c('div',{staticClass:\"list-group\",staticStyle:{\"height\":\"100%\"}},[_c('el-table',{staticStyle:{\"width\":\"100%\"},attrs:{\"data\":_vm.dataList,\"height\":_vm.scrollHeight}},[_c('el-table-column',{attrs:{\"prop\":\"NickName\",\"label\":\"项目名称\",\"show-overflow-tooltip\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"SceneId\",\"label\":\"推广码\",\"width\":\"150\",\"show-overflow-tooltip\":\"\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"label\":\"新粉丝\"}},[_c('el-table-column',{attrs:{\"prop\":\"subscribe\",\"label\":\"关注\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"unsubscribe\",\"label\":\"取消\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"difference\",\"label\":\"净关注\",\"sortable\":\"\"}})],1),_c('el-table-column',{attrs:{\"label\":\"老粉丝\"}},[_c('el-table-column',{attrs:{\"prop\":\"oldsubscribe\",\"label\":\"关注\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"oldunsubscribe\",\"label\":\"取消\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"olddifference\",\"label\":\"净关注\",\"sortable\":\"\"}})],1),_c('el-table-column',{attrs:{\"prop\":\"name\",\"label\":\"数据明细\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(scope.row.difference!=0||scope.row.olddifference!=0)?_c('el-link',{attrs:{\"type\":\"primary\",\"size\":\"small\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.viewRow(scope.row)}}},[_vm._v(\"查看明细\")]):_c('div',[_vm._v(\"无数据\")])]}}])}),_c('el-table-column',{attrs:{\"prop\":\"name\",\"label\":\"二维码\",\"width\":\"100\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-link',{attrs:{\"type\":\"primary\",\"size\":\"small\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.GetQrCodeRow(scope.row)}}},[_vm._v(\"获取\")]),_vm._v(\"|\\n \"),_c('el-link',{attrs:{\"type\":\"primary\",\"size\":\"small\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.GetQrCodeSave(scope.row)}}},[_vm._v(\"下载\")])]}}])}),_c('el-table-column',{attrs:{\"prop\":\"name\",\"label\":\"操作\",\"width\":\"150\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-link',{attrs:{\"type\":\"primary\",\"size\":\"small\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.deleteRow(scope.row)}}},[_vm._v(\"删除\")])]}}])})],1),(_vm.dataList!='')?_c('div',{staticClass:\"managerfy\",staticStyle:{\"border-top\":\"1px solid #E8E8E8\",\"text-align\":\"right\",\"padding\":\"20px 0 0 0\"}},[_c('el-pagination',{attrs:{\"layout\":\"total, sizes, prev, pager, next, jumper\",\"current-page\":_vm.currentPage,\"page-size\":_vm.pagesize,\"page-sizes\":[10,20,50,100],\"total\":_vm.total},on:{\"size-change\":_vm.handleSizeChange,\"current-change\":_vm.handleCurrentChange}})],1):_vm._e()],1),_c('el-dialog',{attrs:{\"title\":\"获取推广二维码\",\"visible\":_vm.GetQrCodeRowVisible,\"top\":\"0\",\"width\":_vm.dialogWidth,\"custom-class\":\"dialog-box\",\"close-on-click-modal\":false},on:{\"update:visible\":function($event){_vm.GetQrCodeRowVisible=$event}}},[(!_vm.BeautifyQrCodeVisible)?_c('el-form',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],ref:\"AddaccountForm\",attrs:{\"label-position\":\"right\",\"model\":_vm.wxQrCodePosterListModel,\"rules\":_vm.rules}},[(_vm.addQrCodeVisble)?_c('span',[(_vm.wxQrCodePosterListModel.DrainageMethod==1&&_vm.wxQrCodePosterListModel.Method==1)?_c('el-form-item',{attrs:{\"label\":\"常规引流(门店)-【门店编号】\",\"prop\":\"EditPoster\"}},[_c('el-input',{attrs:{\"maxlength\":\"64\",\"show-word-limit\":\"\",\"type\":\"text\",\"placeholder\":\"请输入门店编号\"},model:{value:(_vm.wxQrCodePosterListModel.QrCodeVal),callback:function ($$v) {_vm.$set(_vm.wxQrCodePosterListModel, \"QrCodeVal\", $$v)},expression:\"wxQrCodePosterListModel.QrCodeVal\"}})],1):_vm._e(),(_vm.wxQrCodePosterListModel.DrainageMethod==1&&_vm.wxQrCodePosterListModel.Method==2)?_c('el-form-item',{attrs:{\"label\":\"常规引流(个人)-【粉丝OpenId】\",\"prop\":\"EditPoster\"}},[_c('el-select',{staticStyle:{\"width\":\"100%\"},attrs:{\"filterable\":\"\",\"remote\":\"\",\"reserve-keyword\":\"\",\"placeholder\":\"请输入昵称\",\"remote-method\":_vm.remoteMethod,\"loading\":_vm.loading,\"size\":\"small\"},model:{value:(_vm.wxQrCodePosterListModel.QrCodeVal),callback:function ($$v) {_vm.$set(_vm.wxQrCodePosterListModel, \"QrCodeVal\", $$v)},expression:\"wxQrCodePosterListModel.QrCodeVal\"}},_vm._l((_vm.optionFansList),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value}})}),1)],1):_vm._e(),(_vm.wxQrCodePosterListModel.DrainageMethod==2)?_c('el-form-item',{attrs:{\"label\":\"活动引流-【活动编码+粉丝OpenId】\",\"prop\":\"EditPoster\"}},[_c('el-select',{staticStyle:{\"width\":\"100%\"},attrs:{\"filterable\":\"\",\"remote\":\"\",\"reserve-keyword\":\"\",\"placeholder\":\"请输入昵称\",\"remote-method\":_vm.remoteMethod,\"loading\":_vm.loading,\"size\":\"small\"},model:{value:(_vm.wxQrCodePosterListModel.QrCodeVal),callback:function ($$v) {_vm.$set(_vm.wxQrCodePosterListModel, \"QrCodeVal\", $$v)},expression:\"wxQrCodePosterListModel.QrCodeVal\"}},_vm._l((_vm.optionFansList),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value}})}),1)],1):_vm._e()],1):_c('span',[_c('el-form-item',[_c('h4',[_vm._v(\"推广码:\"+_vm._s(_vm.wxQrCodePosterListModel.QrCodeVal))])])],1),_c('el-form-item',[_c('el-input',{attrs:{\"placeholder\":\"请输入名称\",\"maxlength\":\"50\",\"show-word-limit\":\"\"},model:{value:(_vm.NickName),callback:function ($$v) {_vm.NickName=$$v},expression:\"NickName\"}})],1),_c('el-form-item',{staticStyle:{\"text-align\":\"center\"}},[_c('el-image',{staticStyle:{\"width\":\"300px\",\"height\":\"300px\"},attrs:{\"src\":_vm.QrCodeUrl}},[_c('div',{staticClass:\"image-slot\",staticStyle:{\"margin\":\"120px 80px\"},attrs:{\"slot\":\"error\"},slot:\"error\"},[_c('h2',[_vm._v(\"请获取二维码\")])])]),(_vm.NickName)?_c('div',{staticStyle:{\"width\":\"270px\",\"margin\":\"-25px auto 0 auto\",\"word-wrap\":\"break-all\"}},[_c('h3',[_vm._v(_vm._s(_vm.NickName))])]):_c('div',{staticStyle:{\"width\":\"270px\",\"margin\":\"-25px auto 0 auto\",\"word-wrap\":\"break-all\"}},[_c('h3',[_vm._v(_vm._s(_vm.wxQrCodePosterListModel.QrCodeVal))])])],1)],1):[_c('div',{staticStyle:{\"position\":\"relative\",\"height\":\"550px\",\"width\":\"1000px\",\"overflow\":\"hidden\"}},[_c('iframe',{attrs:{\"frameborder\":\"0\",\"scrolling\":\"no\",\"width\":\"1000px\",\"height\":\"100%\",\"src\":_vm.iframeUrl}})]),_vm._v(\"左侧二维码为优化后效果可截图保存备用!\\n \")],_c('span',{staticClass:\"dialog-footer\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[(_vm.wxQrCodePosterListModel.Status==2)?_c('span',[_c('el-button',{attrs:{\"type\":\"primary\",\"icon\":\"el-icon-check\",\"size\":\"small\"},on:{\"click\":_vm.subGetQrCodeRow}},[_vm._v(\"获取二维码\")]),(_vm.QrCodeUrl!='')?_c('el-button',{attrs:{\"type\":\"success\",\"icon\":\"el-icon-download\",\"size\":\"small\"},on:{\"click\":_vm.GetQrCodeSaveTow}},[_vm._v(\"下载二维码\")]):_vm._e()],1):_vm._e(),(_vm.BeautifyQrCodeVisible)?_c('el-button',{attrs:{\"type\":\"primary\",\"icon\":\"el-icon-check\",\"size\":\"small\"},on:{\"click\":function($event){_vm.BeautifyQrCodeVisible=false;_vm.dialogWidth='500px'}}},[_vm._v(\"返回二维码(原史)\")]):_c('el-button',{attrs:{\"type\":\"primary\",\"icon\":\"el-icon-check\",\"size\":\"small\"},on:{\"click\":_vm.beautifyQrCode}},[_vm._v(\"美化二维码(草料)\")]),_c('el-button',{attrs:{\"icon\":\"el-icon-close\",\"size\":\"small\"},on:{\"click\":function($event){_vm.GetQrCodeRowVisible = false;_vm.NickName='';_vm.QrCodeUrl='';_vm.wxQrCodePosterListModel.QrCodeVal=''}}},[_vm._v(\"关 闭\")])],1)],2)],1)}\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\r\nimport { Component, Provide, Vue, Watch, Prop } from \"vue-property-decorator\";\r\nimport HttpClient from \"@/API/HttpClient\";\r\nimport Utils from \"@/store/utils\";\r\nimport { setCookie, getCookie, delCookie } from \"@/JS/cookie\"; //使用getCookie方法\r\nimport httpApi from \"@/API/Tenant/Weixin\";\r\n@Component({\r\n components: {}\r\n})\r\nexport default class extends Vue {\r\n @Prop() private WxQrCodePosterList!: any;\r\n @Prop() private page!: any;\r\n @Provide() GetQrCodeRowVisible: boolean = false;\r\n @Provide() BeautifyQrCodeVisible: boolean = false;\r\n @Provide() loading: boolean = false;\r\n @Provide() addQrCodeVisble: boolean = false;\r\n @Provide() wxQrCodePosterListModel: any = {};\r\n @Provide() QrCodeUrl: any = \"\";\r\n @Provide() NickName: any = \"\";\r\n @Provide() optionFansList: any = [];\r\n @Provide() sceneId: string = \"\";\r\n @Provide() GetQrCodePosterDetailaList: any = [];\r\n @Provide() dataList: any = [];\r\n @Provide() currentPage: number = 1;\r\n @Provide() pagesize: number = 10;\r\n @Provide() total: number = 0;\r\n @Provide() scrollHeight: number = 500; //当前高度\r\n @Provide() dialogWidth: any = \"500px\";\r\n @Provide() SearchKeywords: string = \"\";\r\n @Provide() iframeUrl: string = \"\";\r\n async created() {\r\n //console.log(this.WxQrCodePosterList);\r\n this.scrollHeight = document.body.scrollHeight - 260;\r\n this.wxQrCodePosterListModel = this.WxQrCodePosterList;\r\n if (this.page.pagesize) this.pagesize = this.page.pagesize;\r\n if (this.page.currentPage) this.currentPage = this.page.currentPage;\r\n this.GetQrCodePosterDetaila();\r\n }\r\n //返回操作主页\r\n back() {\r\n this.page.aid = this.WxQrCodePosterList.Aid;\r\n this.$emit(\"formData\", {\r\n pagename: \"listForm\",\r\n pageinfo: this.wxQrCodePosterListModel,\r\n page: this.page\r\n });\r\n }\r\n //分页方法\r\n private handleClick() {}\r\n private handleSizeChange(val: any) {\r\n this.pagesize = val;\r\n this.GetQrCodePosterDetaila();\r\n }\r\n private handleCurrentChange(val: any) {\r\n this.currentPage = val;\r\n this.GetQrCodePosterDetaila();\r\n }\r\n //测试弹出框选择人\r\n async remoteMethod(query: any) {\r\n if (query) {\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"AppFansSelect\",\r\n Value: {\r\n Aid: this.wxQrCodePosterListModel.Aid,\r\n NickName: query,\r\n OpenID: \"\",\r\n Sex: -1\r\n }\r\n }\r\n ]\r\n };\r\n this.loading = true;\r\n this.optionFansList = [];\r\n var res: any = await httpApi.SarchFansList(params);\r\n this.loading = false;\r\n if (res.ErrorCode == 0) {\r\n // this.optionFansList =;\r\n res.output[0].value.forEach((element: any) => {\r\n this.optionFansList.push({\r\n label: element.NickName,\r\n value: element.OpenID\r\n });\r\n //this.temOptionList.push({ label: element.ElementName, value: element.ElementCode })\r\n });\r\n this.$forceUpdate();\r\n //console.log(this.optionFansList);\r\n } else {\r\n this.$router.push(\"/\");\r\n // this.$message.error(\"失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n }\r\n addQrCode() {\r\n this.GetQrCodeRowVisible = true;\r\n this.QrCodeUrl = \"\";\r\n this.NickName = \"\";\r\n this.wxQrCodePosterListModel.QrCodeVal = \"\";\r\n this.wxQrCodePosterListModel.Status = 2;\r\n this.addQrCodeVisble = true;\r\n }\r\n //生成二维码地址\r\n async subGetQrCodeRow() {\r\n if (!this.wxQrCodePosterListModel.QrCodeVal || !this.NickName) {\r\n this.$message.error(\"请输入内容!\");\r\n } else {\r\n this.wxQrCodePosterListModel.NickName = this.NickName;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"model\",\r\n value: this.wxQrCodePosterListModel\r\n }\r\n ]\r\n };\r\n this.loading = true;\r\n var res: any = await httpApi.GetQrCodeData(params);\r\n this.loading = false;\r\n // console.log(res);\r\n if (res.ErrorCode == 0) {\r\n this.QrCodeUrl = res.output[0].value;\r\n this.GetQrCodePosterDetaila();\r\n this.addQrCodeVisble = false;\r\n } else {\r\n this.$message.error(\"生成失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n }\r\n\r\n //删除\r\n deleteRow(data: any) {\r\n this.$confirm(\"确定要删除当前数据吗?\", \"提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n }).then(async () => {\r\n data.ActionName = \"DELETE\";\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"model\",\r\n value: data\r\n }\r\n ]\r\n };\r\n //console.log(params);\r\n var res: any = await httpApi.SaveQrCodePosterDetail(params);\r\n //console.log(res);\r\n if (res.ErrorCode == 0) {\r\n this.$message.success(\"删除成功!\");\r\n //保存成功后传个刷新方法过去\r\n this.GetQrCodePosterDetaila();\r\n } else {\r\n this.$message.error(\"删除失败:\" + res.ErrorMessage);\r\n }\r\n });\r\n }\r\n async beautifyQrCode() {\r\n this.BeautifyQrCodeVisible = true;\r\n this.dialogWidth = \"1025px\";\r\n //console.log(this.QrCodeUrl);\r\n\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"codeData\",\r\n value: this.QrCodeUrl\r\n }\r\n ]\r\n };\r\n this.loading = true;\r\n var res: any = await httpApi.GetCodeDecoder(params);\r\n this.loading = false;\r\n console.log(res);\r\n if (res.ErrorCode == 0) {\r\n this.iframeUrl =\r\n \"https://cli.im/api/qrcode/code?text=\" + res.output[0].value;\r\n //this.GetQrCodeRowVisible = true;\r\n //this.QrCodeUrl = res.output[0].value;\r\n //this.GetQrCodePosterDetaila(\"\");\r\n } else {\r\n this.$message.error(res.ErrorMessage);\r\n }\r\n }\r\n //取生成二维码数据列表\r\n async GetQrCodePosterDetaila() {\r\n let status = 255;\r\n if (this.wxQrCodePosterListModel.EditPoster == 0) {\r\n status = 2;\r\n }\r\n console.log(this.wxQrCodePosterListModel);\r\n\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"model\",\r\n value: {\r\n PosterId: this.wxQrCodePosterListModel.PosterId,\r\n aid: this.wxQrCodePosterListModel.Aid,\r\n Status: status,\r\n query: this.SearchKeywords\r\n }\r\n },\r\n {\r\n Name: \"page\",\r\n value: { page: this.currentPage, rows: this.pagesize }\r\n }\r\n ]\r\n };\r\n this.loading = true;\r\n var res: any = await httpApi.GetQrCodePosterDetaila(params);\r\n this.loading = false;\r\n console.log(res);\r\n if (res.ErrorCode == 0) {\r\n this.GetQrCodePosterDetailaList = res.output[0].value;\r\n this.dataList = res.output[0].value;\r\n this.total = res.output[1].value;\r\n } else {\r\n this.$message.error(\"取生成二维码数据列表失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n //查看数据\r\n viewRow(data: any) {\r\n this.page.pagesize = this.pagesize;\r\n this.page.currentPage = this.currentPage;\r\n //console.log(this.page);\r\n this.$emit(\"formData\", {\r\n pagename: \"statisticalForm\",\r\n WxQrCodePosterList: this.WxQrCodePosterList,\r\n WxQrCodePosterDetail: data,\r\n page: this.page\r\n });\r\n }\r\n //保存图片 GetSaveQrCode\r\n async GetQrCodeSave(data: any) {\r\n this.addQrCodeVisble = false;\r\n this.wxQrCodePosterListModel.QrCodeVal = data.SceneId;\r\n this.NickName = data.NickName;\r\n\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"model\",\r\n value: this.wxQrCodePosterListModel\r\n },\r\n {\r\n Name: \"update\",\r\n value: false\r\n }\r\n ]\r\n };\r\n var res: any = await httpApi.GetSaveQrCode(params);\r\n console.log(data);\r\n if (res.ErrorCode == 0) {\r\n // this.GetQrCodeRowVisible = true;\r\n // this.QrCodeUrl = res.output[0].value;\r\n var alink = document.createElement(\"a\");\r\n alink.href = res.output[0].value;\r\n alink.download = data.SceneId; //图片名\r\n alink.click();\r\n //this.GetQrCodePosterDetaila(\"\");\r\n } else {\r\n this.$message.error(\"下载失败:\" + res.ErrorMessage);\r\n }\r\n }\r\n GetQrCodeSaveTow() {\r\n var alink = document.createElement(\"a\");\r\n alink.href = this.QrCodeUrl;\r\n alink.download = this.wxQrCodePosterListModel.QrCodeVal; //图片名\r\n alink.click();\r\n }\r\n //获取二维码\r\n async GetQrCodeRow(data: any) {\r\n console.log(data);\r\n this.dialogWidth = \"500px\";\r\n this.BeautifyQrCodeVisible = false;\r\n this.addQrCodeVisble = false;\r\n this.wxQrCodePosterListModel.QrCodeVal = data.SceneId;\r\n this.NickName = data.NickName;\r\n let params: any = {\r\n Input: [\r\n {\r\n Name: \"model\",\r\n value: this.wxQrCodePosterListModel\r\n },\r\n {\r\n Name: \"update\",\r\n value: false\r\n }\r\n ]\r\n };\r\n this.loading = true;\r\n var res: any = await httpApi.GetQrCodeData(params);\r\n this.loading = false;\r\n console.log(res);\r\n if (res.ErrorCode == 0) {\r\n this.GetQrCodeRowVisible = true;\r\n this.QrCodeUrl = res.output[0].value;\r\n //this.GetQrCodePosterDetaila(\"\");\r\n } else {\r\n this.$message.error(\"生成失败:\" + res.ErrorMessage);\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!./viewlist.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!./viewlist.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./viewlist.vue?vue&type=template&id=0c123304&\"\nimport script from \"./viewlist.vue?vue&type=script&lang=ts&\"\nexport * from \"./viewlist.vue?vue&type=script&lang=ts&\"\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","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n","var _util = require(\"../core/util\");\n\nvar inherits = _util.inherits;\n\nvar Displayble = require(\"./Displayable\");\n\nvar BoundingRect = require(\"../core/BoundingRect\");\n\n/**\n * Displayable for incremental rendering. It will be rendered in a separate layer\n * IncrementalDisplay have two main methods. `clearDisplayables` and `addDisplayables`\n * addDisplayables will render the added displayables incremetally.\n *\n * It use a not clearFlag to tell the painter don't clear the layer if it's the first element.\n */\n// TODO Style override ?\nfunction IncrementalDisplayble(opts) {\n Displayble.call(this, opts);\n this._displayables = [];\n this._temporaryDisplayables = [];\n this._cursor = 0;\n this.notClear = true;\n}\n\nIncrementalDisplayble.prototype.incremental = true;\n\nIncrementalDisplayble.prototype.clearDisplaybles = function () {\n this._displayables = [];\n this._temporaryDisplayables = [];\n this._cursor = 0;\n this.dirty();\n this.notClear = false;\n};\n\nIncrementalDisplayble.prototype.addDisplayable = function (displayable, notPersistent) {\n if (notPersistent) {\n this._temporaryDisplayables.push(displayable);\n } else {\n this._displayables.push(displayable);\n }\n\n this.dirty();\n};\n\nIncrementalDisplayble.prototype.addDisplayables = function (displayables, notPersistent) {\n notPersistent = notPersistent || false;\n\n for (var i = 0; i < displayables.length; i++) {\n this.addDisplayable(displayables[i], notPersistent);\n }\n};\n\nIncrementalDisplayble.prototype.eachPendingDisplayable = function (cb) {\n for (var i = this._cursor; i < this._displayables.length; i++) {\n cb && cb(this._displayables[i]);\n }\n\n for (var i = 0; i < this._temporaryDisplayables.length; i++) {\n cb && cb(this._temporaryDisplayables[i]);\n }\n};\n\nIncrementalDisplayble.prototype.update = function () {\n this.updateTransform();\n\n for (var i = this._cursor; i < this._displayables.length; i++) {\n var displayable = this._displayables[i]; // PENDING\n\n displayable.parent = this;\n displayable.update();\n displayable.parent = null;\n }\n\n for (var i = 0; i < this._temporaryDisplayables.length; i++) {\n var displayable = this._temporaryDisplayables[i]; // PENDING\n\n displayable.parent = this;\n displayable.update();\n displayable.parent = null;\n }\n};\n\nIncrementalDisplayble.prototype.brush = function (ctx, prevEl) {\n // Render persistant displayables.\n for (var i = this._cursor; i < this._displayables.length; i++) {\n var displayable = this._displayables[i];\n displayable.beforeBrush && displayable.beforeBrush(ctx);\n displayable.brush(ctx, i === this._cursor ? null : this._displayables[i - 1]);\n displayable.afterBrush && displayable.afterBrush(ctx);\n }\n\n this._cursor = i; // Render temporary displayables.\n\n for (var i = 0; i < this._temporaryDisplayables.length; i++) {\n var displayable = this._temporaryDisplayables[i];\n displayable.beforeBrush && displayable.beforeBrush(ctx);\n displayable.brush(ctx, i === 0 ? null : this._temporaryDisplayables[i - 1]);\n displayable.afterBrush && displayable.afterBrush(ctx);\n }\n\n this._temporaryDisplayables = [];\n this.notClear = true;\n};\n\nvar m = [];\n\nIncrementalDisplayble.prototype.getBoundingRect = function () {\n if (!this._rect) {\n var rect = new BoundingRect(Infinity, Infinity, -Infinity, -Infinity);\n\n for (var i = 0; i < this._displayables.length; i++) {\n var displayable = this._displayables[i];\n var childRect = displayable.getBoundingRect().clone();\n\n if (displayable.needLocalTransform()) {\n childRect.applyTransform(displayable.getLocalTransform(m));\n }\n\n rect.union(childRect);\n }\n\n this._rect = rect;\n }\n\n return this._rect;\n};\n\nIncrementalDisplayble.prototype.contain = function (x, y) {\n var localPos = this.transformCoordToLocal(x, y);\n var rect = this.getBoundingRect();\n\n if (rect.contain(localPos[0], localPos[1])) {\n for (var i = 0; i < this._displayables.length; i++) {\n var displayable = this._displayables[i];\n\n if (displayable.contain(x, y)) {\n return true;\n }\n }\n }\n\n return false;\n};\n\ninherits(IncrementalDisplayble, Displayble);\nvar _default = IncrementalDisplayble;\nmodule.exports = _default;","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!./TemplateMessagePopUp.vue?vue&type=style&index=0&id=f34dac2a&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!./TemplateMessagePopUp.vue?vue&type=style&index=0&id=f34dac2a&lang=less&scoped=true&\"","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!./replyTabs.vue?vue&type=style&index=1&lang=less&\"; 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!./replyTabs.vue?vue&type=style&index=1&lang=less&\"","var _core = require(\"./core\");\n\nvar createElement = _core.createElement;\n\nvar PathProxy = require(\"../core/PathProxy\");\n\nvar BoundingRect = require(\"../core/BoundingRect\");\n\nvar matrix = require(\"../core/matrix\");\n\nvar textContain = require(\"../contain/text\");\n\nvar textHelper = require(\"../graphic/helper/text\");\n\nvar Text = require(\"../graphic/Text\");\n\n// TODO\n// 1. shadow\n// 2. Image: sx, sy, sw, sh\nvar CMD = PathProxy.CMD;\nvar arrayJoin = Array.prototype.join;\nvar NONE = 'none';\nvar mathRound = Math.round;\nvar mathSin = Math.sin;\nvar mathCos = Math.cos;\nvar PI = Math.PI;\nvar PI2 = Math.PI * 2;\nvar degree = 180 / PI;\nvar EPSILON = 1e-4;\n\nfunction round4(val) {\n return mathRound(val * 1e4) / 1e4;\n}\n\nfunction isAroundZero(val) {\n return val < EPSILON && val > -EPSILON;\n}\n\nfunction pathHasFill(style, isText) {\n var fill = isText ? style.textFill : style.fill;\n return fill != null && fill !== NONE;\n}\n\nfunction pathHasStroke(style, isText) {\n var stroke = isText ? style.textStroke : style.stroke;\n return stroke != null && stroke !== NONE;\n}\n\nfunction setTransform(svgEl, m) {\n if (m) {\n attr(svgEl, 'transform', 'matrix(' + arrayJoin.call(m, ',') + ')');\n }\n}\n\nfunction attr(el, key, val) {\n if (!val || val.type !== 'linear' && val.type !== 'radial') {\n // Don't set attribute for gradient, since it need new dom nodes\n el.setAttribute(key, val);\n }\n}\n\nfunction attrXLink(el, key, val) {\n el.setAttributeNS('http://www.w3.org/1999/xlink', key, val);\n}\n\nfunction bindStyle(svgEl, style, isText, el) {\n if (pathHasFill(style, isText)) {\n var fill = isText ? style.textFill : style.fill;\n fill = fill === 'transparent' ? NONE : fill;\n attr(svgEl, 'fill', fill);\n attr(svgEl, 'fill-opacity', style.fillOpacity != null ? style.fillOpacity * style.opacity : style.opacity);\n } else {\n attr(svgEl, 'fill', NONE);\n }\n\n if (pathHasStroke(style, isText)) {\n var stroke = isText ? style.textStroke : style.stroke;\n stroke = stroke === 'transparent' ? NONE : stroke;\n attr(svgEl, 'stroke', stroke);\n var strokeWidth = isText ? style.textStrokeWidth : style.lineWidth;\n var strokeScale = !isText && style.strokeNoScale ? el.getLineScale() : 1;\n attr(svgEl, 'stroke-width', strokeWidth / strokeScale); // stroke then fill for text; fill then stroke for others\n\n attr(svgEl, 'paint-order', isText ? 'stroke' : 'fill');\n attr(svgEl, 'stroke-opacity', style.strokeOpacity != null ? style.strokeOpacity : style.opacity);\n var lineDash = style.lineDash;\n\n if (lineDash) {\n attr(svgEl, 'stroke-dasharray', style.lineDash.join(','));\n attr(svgEl, 'stroke-dashoffset', mathRound(style.lineDashOffset || 0));\n } else {\n attr(svgEl, 'stroke-dasharray', '');\n } // PENDING\n\n\n style.lineCap && attr(svgEl, 'stroke-linecap', style.lineCap);\n style.lineJoin && attr(svgEl, 'stroke-linejoin', style.lineJoin);\n style.miterLimit && attr(svgEl, 'stroke-miterlimit', style.miterLimit);\n } else {\n attr(svgEl, 'stroke', NONE);\n }\n}\n/***************************************************\n * PATH\n **************************************************/\n\n\nfunction pathDataToString(path) {\n var str = [];\n var data = path.data;\n var dataLength = path.len();\n\n for (var i = 0; i < dataLength;) {\n var cmd = data[i++];\n var cmdStr = '';\n var nData = 0;\n\n switch (cmd) {\n case CMD.M:\n cmdStr = 'M';\n nData = 2;\n break;\n\n case CMD.L:\n cmdStr = 'L';\n nData = 2;\n break;\n\n case CMD.Q:\n cmdStr = 'Q';\n nData = 4;\n break;\n\n case CMD.C:\n cmdStr = 'C';\n nData = 6;\n break;\n\n case CMD.A:\n var cx = data[i++];\n var cy = data[i++];\n var rx = data[i++];\n var ry = data[i++];\n var theta = data[i++];\n var dTheta = data[i++];\n var psi = data[i++];\n var clockwise = data[i++];\n var dThetaPositive = Math.abs(dTheta);\n var isCircle = isAroundZero(dThetaPositive - PI2) || (clockwise ? dTheta >= PI2 : -dTheta >= PI2); // Mapping to 0~2PI\n\n var unifiedTheta = dTheta > 0 ? dTheta % PI2 : dTheta % PI2 + PI2;\n var large = false;\n\n if (isCircle) {\n large = true;\n } else if (isAroundZero(dThetaPositive)) {\n large = false;\n } else {\n large = unifiedTheta >= PI === !!clockwise;\n }\n\n var x0 = round4(cx + rx * mathCos(theta));\n var y0 = round4(cy + ry * mathSin(theta)); // It will not draw if start point and end point are exactly the same\n // We need to shift the end point with a small value\n // FIXME A better way to draw circle ?\n\n if (isCircle) {\n if (clockwise) {\n dTheta = PI2 - 1e-4;\n } else {\n dTheta = -PI2 + 1e-4;\n }\n\n large = true;\n\n if (i === 9) {\n // Move to (x0, y0) only when CMD.A comes at the\n // first position of a shape.\n // For instance, when drawing a ring, CMD.A comes\n // after CMD.M, so it's unnecessary to move to\n // (x0, y0).\n str.push('M', x0, y0);\n }\n }\n\n var x = round4(cx + rx * mathCos(theta + dTheta));\n var y = round4(cy + ry * mathSin(theta + dTheta)); // FIXME Ellipse\n\n str.push('A', round4(rx), round4(ry), mathRound(psi * degree), +large, +clockwise, x, y);\n break;\n\n case CMD.Z:\n cmdStr = 'Z';\n break;\n\n case CMD.R:\n var x = round4(data[i++]);\n var y = round4(data[i++]);\n var w = round4(data[i++]);\n var h = round4(data[i++]);\n str.push('M', x, y, 'L', x + w, y, 'L', x + w, y + h, 'L', x, y + h, 'L', x, y);\n break;\n }\n\n cmdStr && str.push(cmdStr);\n\n for (var j = 0; j < nData; j++) {\n // PENDING With scale\n str.push(round4(data[i++]));\n }\n }\n\n return str.join(' ');\n}\n\nvar svgPath = {};\n\nsvgPath.brush = function (el) {\n var style = el.style;\n var svgEl = el.__svgEl;\n\n if (!svgEl) {\n svgEl = createElement('path');\n el.__svgEl = svgEl;\n }\n\n if (!el.path) {\n el.createPathProxy();\n }\n\n var path = el.path;\n\n if (el.__dirtyPath) {\n path.beginPath();\n path.subPixelOptimize = false;\n el.buildPath(path, el.shape);\n el.__dirtyPath = false;\n var pathStr = pathDataToString(path);\n\n if (pathStr.indexOf('NaN') < 0) {\n // Ignore illegal path, which may happen such in out-of-range\n // data in Calendar series.\n attr(svgEl, 'd', pathStr);\n }\n }\n\n bindStyle(svgEl, style, false, el);\n setTransform(svgEl, el.transform);\n\n if (style.text != null) {\n svgTextDrawRectText(el, el.getBoundingRect());\n } else {\n removeOldTextNode(el);\n }\n};\n/***************************************************\n * IMAGE\n **************************************************/\n\n\nvar svgImage = {};\n\nsvgImage.brush = function (el) {\n var style = el.style;\n var image = style.image;\n\n if (image instanceof HTMLImageElement) {\n var src = image.src;\n image = src;\n }\n\n if (!image) {\n return;\n }\n\n var x = style.x || 0;\n var y = style.y || 0;\n var dw = style.width;\n var dh = style.height;\n var svgEl = el.__svgEl;\n\n if (!svgEl) {\n svgEl = createElement('image');\n el.__svgEl = svgEl;\n }\n\n if (image !== el.__imageSrc) {\n attrXLink(svgEl, 'href', image); // Caching image src\n\n el.__imageSrc = image;\n }\n\n attr(svgEl, 'width', dw);\n attr(svgEl, 'height', dh);\n attr(svgEl, 'x', x);\n attr(svgEl, 'y', y);\n setTransform(svgEl, el.transform);\n\n if (style.text != null) {\n svgTextDrawRectText(el, el.getBoundingRect());\n } else {\n removeOldTextNode(el);\n }\n};\n/***************************************************\n * TEXT\n **************************************************/\n\n\nvar svgText = {};\n\nvar _tmpTextHostRect = new BoundingRect();\n\nvar _tmpTextBoxPos = {};\nvar _tmpTextTransform = [];\nvar TEXT_ALIGN_TO_ANCHRO = {\n left: 'start',\n right: 'end',\n center: 'middle',\n middle: 'middle'\n};\n/**\n * @param {module:zrender/Element} el\n * @param {Object|boolean} [hostRect] {x, y, width, height}\n * If set false, rect text is not used.\n */\n\nvar svgTextDrawRectText = function (el, hostRect) {\n var style = el.style;\n var elTransform = el.transform;\n var needTransformTextByHostEl = el instanceof Text || style.transformText;\n el.__dirty && textHelper.normalizeTextStyle(style, true);\n var text = style.text; // Convert to string\n\n text != null && (text += '');\n\n if (!textHelper.needDrawText(text, style)) {\n return;\n } // render empty text for svg if no text but need draw text.\n\n\n text == null && (text = ''); // Follow the setting in the canvas renderer, if not transform the\n // text, transform the hostRect, by which the text is located.\n\n if (!needTransformTextByHostEl && elTransform) {\n _tmpTextHostRect.copy(hostRect);\n\n _tmpTextHostRect.applyTransform(elTransform);\n\n hostRect = _tmpTextHostRect;\n }\n\n var textSvgEl = el.__textSvgEl;\n\n if (!textSvgEl) {\n textSvgEl = createElement('text');\n el.__textSvgEl = textSvgEl;\n } // style.font has been normalized by `normalizeTextStyle`.\n\n\n var textSvgElStyle = textSvgEl.style;\n var font = style.font || textContain.DEFAULT_FONT;\n var computedFont = textSvgEl.__computedFont;\n\n if (font !== textSvgEl.__styleFont) {\n textSvgElStyle.font = textSvgEl.__styleFont = font; // The computedFont might not be the orginal font if it is illegal font.\n\n computedFont = textSvgEl.__computedFont = textSvgElStyle.font;\n }\n\n var textPadding = style.textPadding;\n var textLineHeight = style.textLineHeight;\n var contentBlock = el.__textCotentBlock;\n\n if (!contentBlock || el.__dirtyText) {\n contentBlock = el.__textCotentBlock = textContain.parsePlainText(text, computedFont, textPadding, textLineHeight, style.truncate);\n }\n\n var outerHeight = contentBlock.outerHeight;\n var lineHeight = contentBlock.lineHeight;\n textHelper.getBoxPosition(_tmpTextBoxPos, el, style, hostRect);\n var baseX = _tmpTextBoxPos.baseX;\n var baseY = _tmpTextBoxPos.baseY;\n var textAlign = _tmpTextBoxPos.textAlign || 'left';\n var textVerticalAlign = _tmpTextBoxPos.textVerticalAlign;\n setTextTransform(textSvgEl, needTransformTextByHostEl, elTransform, style, hostRect, baseX, baseY);\n var boxY = textContain.adjustTextY(baseY, outerHeight, textVerticalAlign);\n var textX = baseX;\n var textY = boxY; // TODO needDrawBg\n\n if (textPadding) {\n textX = getTextXForPadding(baseX, textAlign, textPadding);\n textY += textPadding[0];\n } // `textBaseline` is set as 'middle'.\n\n\n textY += lineHeight / 2;\n bindStyle(textSvgEl, style, true, el); // FIXME\n // Add a