mulmoclaude 2.7.0 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/client/assets/Graph-ChAxkn9o.js +1 -0
  2. package/client/assets/dist-Bij44LdC.js +2 -0
  3. package/client/assets/echarts-GV3U9sVf.js +1 -0
  4. package/client/assets/echarts-gl-BXx4On0Y.js +4282 -0
  5. package/client/assets/echarts-wordcloud-_9uQUAfp.js +1 -0
  6. package/client/assets/emscripten-module-Q67P5WYC-BU3Hlttz.js +2160 -0
  7. package/client/assets/ffi-4V2b7xu3.js +1 -0
  8. package/client/assets/{index-lkpgbKtk.js → index-D6xzCZhP.js} +600 -589
  9. package/client/assets/index-DzMsXDnj.css +2 -0
  10. package/client/assets/{install-wxcddUsO.js → install-C1moNcrn.js} +1 -1
  11. package/client/assets/{marp-DcTywifN.js → marp-Du5Sym5b.js} +1 -1
  12. package/client/assets/module-ES6BEMUI-CDTIpMiA.js +6 -0
  13. package/client/index.html +4 -3
  14. package/package.json +5 -4
  15. package/server/api/routes/plugins.ts +8 -59
  16. package/server/build/mcp-server.mjs +609 -608
  17. package/server/index.ts +1 -0
  18. package/server/plugins/confined-file-ops.ts +136 -0
  19. package/server/plugins/runtime.ts +8 -115
  20. package/server/plugins/spreadsheet-builtin.ts +26 -0
  21. package/server/plugins/spreadsheet-save-outcome.ts +7 -0
  22. package/server/utils/files/store-resolvers.ts +1 -1
  23. package/src/lang/de.ts +0 -20
  24. package/src/lang/en.ts +0 -20
  25. package/src/lang/es.ts +0 -20
  26. package/src/lang/fr.ts +0 -20
  27. package/src/lang/ja.ts +0 -20
  28. package/src/lang/ko.ts +0 -20
  29. package/src/lang/pt-BR.ts +0 -20
  30. package/src/lang/zh.ts +0 -20
  31. package/src/plugins/spreadsheet/definition.ts +9 -127
  32. package/src/plugins/spreadsheet/index.ts +7 -4
  33. package/src/plugins/spreadsheet/meta.ts +2 -4
  34. package/client/assets/echarts-gl-Cq76Z6DA.js +0 -4282
  35. package/client/assets/index-Cz7JLE0k.css +0 -2
  36. package/server/utils/files/spreadsheet-store.ts +0 -26
  37. package/src/plugins/spreadsheet/Preview.vue +0 -31
  38. package/src/plugins/spreadsheet/View.vue +0 -1007
  39. package/src/plugins/spreadsheet/cellHighlights.ts +0 -78
  40. package/src/plugins/spreadsheet/engine/calculator.ts +0 -427
  41. package/src/plugins/spreadsheet/engine/cellBuilder.ts +0 -89
  42. package/src/plugins/spreadsheet/engine/cellEmpty.ts +0 -26
  43. package/src/plugins/spreadsheet/engine/cellFormatting.ts +0 -59
  44. package/src/plugins/spreadsheet/engine/coerce-boolean.ts +0 -26
  45. package/src/plugins/spreadsheet/engine/condition.ts +0 -182
  46. package/src/plugins/spreadsheet/engine/date-locale.ts +0 -47
  47. package/src/plugins/spreadsheet/engine/date-parser.ts +0 -234
  48. package/src/plugins/spreadsheet/engine/date-utils.ts +0 -73
  49. package/src/plugins/spreadsheet/engine/datedif.ts +0 -93
  50. package/src/plugins/spreadsheet/engine/engine.ts +0 -177
  51. package/src/plugins/spreadsheet/engine/evaluator.ts +0 -494
  52. package/src/plugins/spreadsheet/engine/financial-math.ts +0 -114
  53. package/src/plugins/spreadsheet/engine/formatter.ts +0 -158
  54. package/src/plugins/spreadsheet/engine/formulaError.ts +0 -67
  55. package/src/plugins/spreadsheet/engine/formulaRefs.ts +0 -202
  56. package/src/plugins/spreadsheet/engine/functions/date.ts +0 -212
  57. package/src/plugins/spreadsheet/engine/functions/financial.ts +0 -244
  58. package/src/plugins/spreadsheet/engine/functions/index.ts +0 -16
  59. package/src/plugins/spreadsheet/engine/functions/logical.ts +0 -221
  60. package/src/plugins/spreadsheet/engine/functions/lookup-math.ts +0 -28
  61. package/src/plugins/spreadsheet/engine/functions/lookup.ts +0 -257
  62. package/src/plugins/spreadsheet/engine/functions/mathematical.ts +0 -283
  63. package/src/plugins/spreadsheet/engine/functions/statistical-math.ts +0 -91
  64. package/src/plugins/spreadsheet/engine/functions/statistical.ts +0 -290
  65. package/src/plugins/spreadsheet/engine/functions/text.ts +0 -398
  66. package/src/plugins/spreadsheet/engine/index.ts +0 -34
  67. package/src/plugins/spreadsheet/engine/jsonCellLocator.ts +0 -111
  68. package/src/plugins/spreadsheet/engine/math-ops.ts +0 -98
  69. package/src/plugins/spreadsheet/engine/numericCoercion.ts +0 -61
  70. package/src/plugins/spreadsheet/engine/parser.ts +0 -40
  71. package/src/plugins/spreadsheet/engine/registry.ts +0 -201
  72. package/src/plugins/spreadsheet/engine/responseDecoder.ts +0 -68
  73. package/src/plugins/spreadsheet/engine/spreadsheet-errors.ts +0 -82
  74. package/src/plugins/spreadsheet/engine/textFormat.ts +0 -108
  75. package/src/plugins/spreadsheet/engine/translateFormula.ts +0 -69
  76. package/src/plugins/spreadsheet/engine/types.ts +0 -81
  77. package/src/plugins/spreadsheet/keyboardNav.ts +0 -38
@@ -0,0 +1 @@
1
+ import{$n as e,Kt as t,Li as n,Tc as r,Vt as i,lr as a,mo as o,ra as s,xt as c,yt as l}from"./install-C1moNcrn.js";import{n as u,o as d,r as f}from"./echarts-GV3U9sVf.js";f({type:`series.wordCloud`,visualStyleAccessPath:`textStyle`,visualStyleMapper:function(e){return{fill:e.get(`color`)}},visualDrawType:`fill`,optionUpdated:function(){let e=this.option;e.gridSize=Math.max(Math.floor(e.gridSize),4)},getInitialData:function(e){let t=l(e.data,{coordDimensions:[`value`]}),n=new c(t,this);return n.initData(e.data),n},defaultOption:{maskImage:null,shape:`circle`,keepAspect:!1,left:`center`,top:`center`,width:`70%`,height:`80%`,sizeRange:[12,60],rotationRange:[-90,90],rotationStep:45,gridSize:8,drawOutOfBound:!1,shrinkToFit:!1,textStyle:{fontWeight:`normal`}}});var p=new WeakMap,m=e=>e.subType===`wordCloud`,h=e=>p.get(e),g=e=>{let t=p.get(e);if(!t)throw Error(`wordCloud layout has not run for this series.`);return t},_=(e,t)=>{p.set(e,t)},v=new WeakMap,y=e=>{let t=v.get(e);if(!t)throw Error(`wordCloud view has not been rendered.`);return t};u({type:`wordCloud`,render:function(e){let t=this.group;t.removeAll();let r=e.getData(),i=e.get(`gridSize`);g(e).ondraw=function(a,o,c,l){let u=r.getItemModel(c),f=u.getModel(`textStyle`),p=new s({style:d(f),scaleX:1/l.info.mu,scaleY:1/l.info.mu,x:(l.gx+l.info.gw/2)*i,y:(l.gy+l.info.gh/2)*i,rotation:l.rot});Object.assign(p.style,{x:l.info.fillTextOffsetX,y:l.info.fillTextOffsetY+o*.5,text:a,verticalAlign:`middle`,fill:r.getItemVisual(c,`style`).fill,fontSize:o}),p.dirtyStyle(),t.add(p),r.setItemGraphicEl(c,p),p.ensureState(`emphasis`).style=d(u.getModel([`emphasis`,`textStyle`]),{state:`emphasis`}),p.ensureState(`blur`).style=d(u.getModel([`blur`,`textStyle`]),{state:`blur`}),n(p,u.get([`emphasis`,`focus`]),u.get([`emphasis`,`blurScope`])),p.stateTransition={duration:e.get(`animation`)?e.get([`stateAnimation`,`duration`]):0,easing:e.get([`stateAnimation`,`easing`])}},v.set(this,e)},remove:function(){this.group.removeAll(),g(y(this)).dispose()},dispose:function(){g(y(this)).dispose()}});function b(e,t,n,r){return n?!e.some(function(e){return!e.dispatchEvent(new CustomEvent(t,{detail:r,cancelable:n}))}):(e.forEach(function(e){e.dispatchEvent(new CustomEvent(t,{detail:r}))}),!0)}var x=e=>`getContext`in e&&!!e.getContext,S=(e,t)=>{let n=e.getContext(`2d`,t);if(!n)throw Error(`Canvas 2D context is not available.`);return n};function C(){if(typeof window.postMessage!=`function`||typeof window.addEventListener!=`function`)return null;let e=[void 0],t=`zero-timeout-message`;return window.addEventListener(`message`,function(n){if(typeof n.data!=`string`||n.data.substr(0,20)!==t)return;n.stopImmediatePropagation();let r=parseInt(n.data.substr(20),36),i=e[r];i&&(i(),e[r]=void 0)},!0),window.clearImmediate=function(t){t!==void 0&&e[t]&&(e[t]=void 0)},function(n){let r=e.length;return e.push(n),window.postMessage(t+r.toString(36),`*`),r}}var w=function(e){window.setTimeout(e,0)},T=function(e){window.clearTimeout(e)};window.setImmediate||(window.setImmediate=(function(){return window.msSetImmediate||window.webkitSetImmediate||window.mozSetImmediate||window.oSetImmediate||C()||w})()),window.clearImmediate||(window.clearImmediate=(function(){return window.msClearImmediate||window.webkitClearImmediate||window.mozClearImmediate||window.oClearImmediate||T})());var E=(function(){let e=document.createElement(`canvas`);if(!e||typeof e.getContext!=`function`)return!1;let t=e.getContext(`2d`);return!(!t||typeof t.getImageData!=`function`||typeof t.fillText!=`function`||typeof Array.prototype.some!=`function`||typeof Array.prototype.push!=`function`)})(),D=(function(){if(!E)return;let e=S(document.createElement(`canvas`)),t=20,n,r;for(;t;){if(e.font=t.toString(10)+`px sans-serif`,e.measureText(`W`).width===n&&e.measureText(`m`).width===r)return t+1;n=e.measureText(`W`).width,r=e.measureText(`m`).width,t--}return 0})(),O=function(e){if(Array.isArray(e)){let t=e.slice();return t.splice(0,2),t}return[]},k=function(e){for(let t=e.length;t;){let n=Math.floor(Math.random()*t),r=e[--t];e[t]=e[n],e[n]=r}return e},A=function(e){if(typeof e==`string`){let t=document.getElementById(e);if(!t)throw Error(`The element id specified is not found.`);return t}if(!e.tagName&&typeof e.appendChild!=`function`)throw Error(`You must pass valid HTML elements, or ID of the element.`);return e},j=()=>({list:[],fontFamily:`"Trebuchet MS", "Heiti TC", "微軟正黑體", "Arial Unicode MS", "Droid Fallback Sans", sans-serif`,fontWeight:`normal`,color:`random-dark`,minSize:0,weightFactor:1,clearCanvas:!0,backgroundColor:`#fff`,gridSize:8,drawOutOfBound:!1,shrinkToFit:!1,origin:null,drawMask:!1,maskColor:`rgba(255,0,0,0.3)`,maskGapWidth:.3,layoutAnimation:!0,wait:0,abortThreshold:0,abort:function(){},minRotation:-Math.PI/2,maxRotation:Math.PI/2,rotationStep:.1,shuffle:!0,rotateRatio:.1,shape:`circle`,ellipticity:.65,classes:null,hover:null,click:null});function M(e){switch(e){case`circle`:default:return`circle`;case`cardioid`:return function(e){return 1-Math.sin(e)};case`diamond`:return function(e){let t=e%(2*Math.PI/4);return 1/(Math.cos(t)+Math.sin(t))};case`square`:return function(e){return Math.min(1/Math.abs(Math.cos(e)),1/Math.abs(Math.sin(e)))};case`triangle-forward`:return function(e){let t=e%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};case`triangle`:case`triangle-upright`:return function(e){let t=(e+Math.PI*3/2)%(2*Math.PI/3);return 1/(Math.cos(t)+Math.sqrt(3)*Math.sin(t))};case`pentagon`:return function(e){let t=(e+.955)%(2*Math.PI/5);return 1/(Math.cos(t)+.726543*Math.sin(t))};case`star`:return function(e){let t=(e+.955)%(2*Math.PI/10);return(e+.955)%(2*Math.PI/5)-2*Math.PI/10>=0?1/(Math.cos(2*Math.PI/10-t)+3.07768*Math.sin(2*Math.PI/10-t)):1/(Math.cos(t)+3.07768*Math.sin(t))}}}var N={};function P(e,t){if(!E)return;let n=Math.floor(Math.random()*Date.now()),r=(Array.isArray(e)?e:[e]).map(A),i={...j(),...t},a=i.weightFactor,o=typeof a==`function`?a:function(e){return e*a},s=typeof i.shape==`function`?i.shape:M(i.shape);i.gridSize=Math.max(Math.floor(i.gridSize),4);let c=i.gridSize,l=c-i.maskGapWidth,u=Math.abs(i.maxRotation-i.minRotation),d=Math.min(i.maxRotation,i.minRotation),f=i.rotationStep,p=[],m=0,h=0,g=[0,0],_=0,v=0;function y(e,t){return`hsl(`+(Math.random()*360).toFixed()+`,`+(Math.random()*30+70).toFixed()+`%,`+(Math.random()*(t-e)+e).toFixed()+`%)`}let C=i.color,P=(function(){switch(C){case`random-dark`:return function(){return y(10,50)};case`random-light`:return function(){return y(50,90)};default:return typeof C==`function`?C:function(){return C}}})(),F=i.fontWeight,I=typeof F==`function`?F:function(){return F},L=i.classes,R=typeof L==`function`?L:function(){return L},z=!1,B=[],V,H=function(e){let t=e.currentTarget;if(!(t instanceof HTMLElement))return null;let n=t.getBoundingClientRect(),r=x(t)?t.width:NaN,i=x(t)?t.height:NaN,a,o;`touches`in e?(a=e.touches[0].clientX,o=e.touches[0].clientY):(a=e.clientX,o=e.clientY);let s=a-n.left,l=o-n.top,u=Math.floor(s*(r/n.width||1)/c),d=Math.floor(l*(i/n.height||1)/c);return B[u]?B[u][d]:null},U=function(e){let t=H(e);V!==t&&(V=t,t?i.hover?.(t.item,t.dimension,e):i.hover?.(void 0,void 0,e))},W=function(e){let t=H(e);t&&(i.click?.(t.item,t.dimension,e),e.preventDefault())},G=[],K=function(e){if(G[e])return G[e];let t=e*8,n=t,r=[];for(e===0&&r.push([g[0],g[1],0]);n--;){let a=1;s!==`circle`&&(a=s(n/t*2*Math.PI)),r.push([g[0]+e*a*Math.cos(-n/t*2*Math.PI),g[1]+e*a*Math.sin(-n/t*2*Math.PI)*i.ellipticity,n/t*2*Math.PI])}return G[e]=r,r},q=function(){return i.abortThreshold>0&&new Date().getTime()-v>i.abortThreshold},J=function(){return i.rotateRatio===0||Math.random()>i.rotateRatio?0:u===0?d:d+Math.round(Math.random()*u/f)*f},Y=function(e,t,n,r){let a=o(t);if(a<=i.minSize)return!1;let s=1;if(D!==void 0&&a<D){let e=D;s=(function(){let t=2;for(;t*a<e;)t+=2;return t})()}let l=I(e,t,a,r),u=document.createElement(`canvas`),d=S(u,{willReadFrequently:!0});d.font=l+` `+(a*s).toString(10)+`px `+i.fontFamily;let f=d.measureText(e).width/s,p=Math.max(a*s,d.measureText(`m`).width,d.measureText(`W`).width)/s,m=f+p*2,h=p*3,g=Math.ceil(m/c),_=Math.ceil(h/c);m=g*c,h=_*c;let v=-f/2,y=-p*.4,b=Math.ceil((m*Math.abs(Math.sin(n))+h*Math.abs(Math.cos(n)))/c),x=Math.ceil((m*Math.abs(Math.cos(n))+h*Math.abs(Math.sin(n)))/c),C=x*c,w=b*c;u.setAttribute(`width`,String(C)),u.setAttribute(`height`,String(w)),d.scale(1/s,1/s),d.translate(C*s/2,w*s/2),d.rotate(-n),d.font=l+` `+(a*s).toString(10)+`px `+i.fontFamily,d.fillStyle=`#000`,d.textBaseline=`middle`,d.fillText(e,v*s,(y+a*.5)*s);let T=d.getImageData(0,0,C,w).data;if(q())return!1;let E=[],O=x,k,A,j,M=[b/2,x/2,b/2,x/2];for(;O--;)for(k=b;k--;){j=c;singleGridLoop:for(;j--;)for(A=c;A--;)if(T[((k*c+j)*C+(O*c+A))*4+3]){E.push([O,k]),O<M[3]&&(M[3]=O),O>M[1]&&(M[1]=O),k<M[0]&&(M[0]=k),k>M[2]&&(M[2]=k);break singleGridLoop}}return{mu:s,occupied:E,bounds:M,gw:x,gh:b,fillTextOffsetX:v,fillTextOffsetY:y,fillTextWidth:f,fillTextHeight:p,fontSize:a}},X=function(e,t,n,r,a){let o=a.length;for(;o--;){let n=e+a[o][0],r=t+a[o][1];if(n>=m||r>=h||n<0||r<0){if(!i.drawOutOfBound)return!1}else if(!p[n][r])return!1}return!0},Z=function(e,t,n,a,o,s,l,u,d,f){let p=n.fontSize,m=P(a,o,p,s,l,f),h=I(a,o,p,f),g=R(a,o,p,f);r.forEach(function(r){if(x(r)){let o=S(r),s=n.mu;o.save(),o.scale(1/s,1/s),o.font=h+` `+(p*s).toString(10)+`px `+i.fontFamily,o.fillStyle=m,o.translate((e+n.gw/2)*c*s,(t+n.gh/2)*c*s),u!==0&&o.rotate(-u),o.textBaseline=`middle`,o.fillText(a,n.fillTextOffsetX*s,(n.fillTextOffsetY+p*.5)*s),o.restore()}else{let o=document.createElement(`span`),s=`rotate(`+-u/Math.PI*180+`deg) `;n.mu!==1&&(s+=`translateX(-`+n.fillTextWidth/4+`px) scale(`+1/n.mu+`)`);let l={position:`absolute`,display:`block`,font:h+` `+p*n.mu+`px `+i.fontFamily,left:(e+n.gw/2)*c+n.fillTextOffsetX+`px`,top:(t+n.gh/2)*c+n.fillTextOffsetY+`px`,width:n.fillTextWidth+`px`,height:n.fillTextHeight+`px`,lineHeight:p+`px`,whiteSpace:`nowrap`,transform:s,webkitTransform:s,msTransform:s,transformOrigin:`50% 40%`,webkitTransformOrigin:`50% 40%`,msTransformOrigin:`50% 40%`};if(m&&(l.color=m),o.textContent=a,Object.assign(o.style,l),d)for(let e in d)o.setAttribute(e,d[e]);g&&(o.className+=g),r.appendChild(o)}})},Q=function(){let e=r[0];if(!x(e))throw Error(`drawMask requires a canvas element.`);return S(e)},ee=function(e,t,n,r,i){e>=m||t>=h||e<0||t<0||(p[e][t]=!1,n&&Q().fillRect(e*c,t*c,l,l),z&&(B[e][t]={item:i,dimension:r}))},te=function(e,t,n,r,a,o){let s=a.occupied,l=i.drawMask,u;l&&(u=Q(),u.save(),u.fillStyle=i.maskColor);let d;if(z){let n=a.bounds;d={x:(e+n[3])*c,y:(t+n[0])*c,w:(n[1]-n[3]+1)*c,h:(n[2]-n[0]+1)*c}}let f=s.length;for(;f--;){let n=e+s[f][0],r=t+s[f][1];n>=m||r>=h||n<0||r<0||ee(n,r,l,d,o)}u&&u.restore()},ne=function e(t,n){if(n>20)return null;let r,a,o;Array.isArray(t)?(r=t[0],a=t[1]):(r=t.word,a=t.weight,o=t.attributes);let s=J(),c=O(t),l=Y(r,a,s,c);if(!l||q())return!1;if(!i.drawOutOfBound&&!i.shrinkToFit){let e=l.bounds;if(e[1]-e[3]+1>m||e[2]-e[0]+1>h)return!1}let u=_+1,d=function(e){let n=Math.floor(e[0]-l.gw/2),i=Math.floor(e[1]-l.gh/2),d=l.gw,f=l.gh;return X(n,i,d,f,l.occupied)?(Z(n,i,l,r,a,_-u,e[2],s,o,c),te(n,i,d,f,l,t),{gx:n,gy:i,rot:s,info:l}):!1};for(;u--;){let e=K(_-u);i.shuffle&&(e=e.slice(),k(e));for(let t=0;t<e.length;t++){let n=d(e[t]);if(n)return n}}return i.shrinkToFit?(Array.isArray(t)?t[1]=t[1]*3/4:t.weight=t.weight*3/4,e(t,n+1)):null},$=function(e,t,n){return b(r,e,t,n||{})};(function(){let e=r[0];if(x(e))m=Math.ceil(e.width/c),h=Math.ceil(e.height/c);else{let t=e.getBoundingClientRect();m=Math.ceil(t.width/c),h=Math.ceil(t.height/c)}if(!$(`wordcloudstart`,!0))return;g=i.origin?[i.origin[0]/c,i.origin[1]/c]:[m/2,h/2],_=Math.floor(Math.sqrt(m*m+h*h)),p=[];let t,a,o;if(!x(e)||i.clearCanvas)for(r.forEach(function(e){if(x(e)){let t=S(e);t.fillStyle=i.backgroundColor,t.clearRect(0,0,m*(c+1),h*(c+1)),t.fillRect(0,0,m*(c+1),h*(c+1))}else e.textContent=``,e.style.backgroundColor=i.backgroundColor,e.style.position=`relative`}),t=m;t--;)for(p[t]=[],a=h;a--;)p[t][a]=!0;else{let n=S(document.createElement(`canvas`));n.fillStyle=i.backgroundColor,n.fillRect(0,0,1,1);let r=n.getImageData(0,0,1,1).data,s=S(e).getImageData(0,0,m*c,h*c).data;t=m;let l,u;for(;t--;)for(p[t]=[],a=h;a--;){u=c;singleGridLoop:for(;u--;)for(l=c;l--;)for(o=4;o--;)if(s[((a*c+u)*m*c+(t*c+l))*4+o]!==r[o]){p[t][a]=!1;break singleGridLoop}p[t][a]!==!1&&(p[t][a]=!0)}}if(i.hover||i.click){for(z=!0,t=m+1;t--;)B[t]=[];i.hover&&e.addEventListener(`mousemove`,U),i.click&&(e.addEventListener(`click`,W),e.addEventListener(`touchstart`,W),e.addEventListener(`touchend`,function(e){e.preventDefault()}),Object.assign(e.style,{webkitTapHighlightColor:`rgba(0, 0, 0, 0)`})),e.addEventListener(`wordcloudstart`,function t(){e.removeEventListener(`wordcloudstart`,t),e.removeEventListener(`mousemove`,U),e.removeEventListener(`click`,W),V=void 0})}o=0;let s,l,u=!0;i.layoutAnimation?i.wait===0?(s=window.setImmediate||w,l=window.clearImmediate||T):(s=function(e,t){return window.setTimeout(e,t)},l=function(e){window.clearTimeout(e)}):(s=function(e){e()},l=function(){u=!1});let d=function(e,t){r.forEach(function(n){n.addEventListener(e,t)})},f=function(e,t){r.forEach(function(n){n.removeEventListener(e,t)})},y=function e(){f(`wordcloudstart`,e),l(N[n])};d(`wordcloudstart`,y),N[n]=(i.layoutAnimation?s:setTimeout)(function e(){if(!u)return;if(o>=i.list.length){l(N[n]),$(`wordcloudstop`,!1),f(`wordcloudstart`,y),delete N[n];return}v=new Date().getTime();let t=ne(i.list[o],0),r=!$(`wordclouddrawn`,!0,{item:i.list[o],drawn:t});q()||r?(l(N[n]),i.abort(),$(`wordcloudabort`,!1),$(`wordcloudstop`,!1),f(`wordcloudstart`,y)):(o++,N[n]=s(e,i.wait))},i.wait)})()}if(P.isSupported=E,P.minFontSize=D,!P.isSupported)throw Error(`Sorry your browser not support wordCloud`);var F=e=>typeof e==`object`&&!!e,I=e=>F(e)&&`item`in e&&`drawn`in e;function L(e){let t=e.getContext(`2d`);if(!t)throw Error(`Canvas 2D context is not available.`);let n=t.getImageData(0,0,e.width,e.height),r=t.createImageData(n),i=0,a=0;for(let e=0;e<n.data.length;e+=4)if(n.data[e+3]>128){let t=n.data[e]+n.data[e+1]+n.data[e+2];i+=t,++a}let o=i/a;for(let e=0;e<n.data.length;e+=4){let t=n.data[e]+n.data[e+1]+n.data[e+2];n.data[e+3]<128||t>o?(r.data[e]=0,r.data[e+1]=0,r.data[e+2]=0,r.data[e+3]=0):(r.data[e]=255,r.data[e+1]=255,r.data[e+2]=255,r.data[e+3]=255)}t.putImageData(r,0,0)}i(function(t,n){t.eachSeriesByType(`wordCloud`,function(r){if(!m(r))return;let i=e(r.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()}),a=r.get(`keepAspect`),s=r.get(`maskImage`),c=s?s.width/s.height:1;a&&R(i,c);let l=r.getData(),u=document.createElement(`canvas`);u.width=i.width,u.height=i.height;let d=u.getContext(`2d`);if(s)try{if(!d)throw Error(`Canvas 2D context is not available.`);d.drawImage(s,0,0,u.width,u.height),L(u)}catch(e){console.error(`Invalid mask image`),console.error(String(e))}let f=r.get(`sizeRange`),p=r.get(`rotationRange`),v=l.getDataExtent(`value`),y=Math.PI/180,b=r.get(`gridSize`);P(u,{list:l.mapArray(`value`,function(e,t){let n=l.getItemModel(t);return[l.getName(t),Number(n.get([`textStyle`,`fontSize`],!0)||o(Number(e),v,f)),t]}).sort(function(e,t){return t[1]-e[1]}),fontFamily:r.get([`textStyle`,`fontFamily`])||r.get([`emphasis`,`textStyle`,`fontFamily`])||t.get(`textStyle`)?.fontFamily,fontWeight:r.get([`textStyle`,`fontWeight`])||r.get([`emphasis`,`textStyle`,`fontWeight`])||t.get(`textStyle`)?.fontWeight,gridSize:b,ellipticity:i.height/i.width,minRotation:p[0]*y,maxRotation:p[1]*y,clearCanvas:!s,rotateRatio:1,rotationStep:r.get(`rotationStep`)*y,drawOutOfBound:r.get(`drawOutOfBound`),shrinkToFit:r.get(`shrinkToFit`),layoutAnimation:r.get(`layoutAnimation`),shuffle:!1,shape:r.get(`shape`)});let x=r;function S(e){if(!(e instanceof CustomEvent)||!I(e.detail))return;let t=e.detail.item,n=e.detail.drawn;if(!n)return;let r=g(x).ondraw;r&&Array.isArray(t)&&(n.gx+=i.x/b,n.gy+=i.y/b,r(t[0],t[1],Number(t[2]),n))}u.addEventListener(`wordclouddrawn`,S),h(r)?.dispose(),_(r,{ondraw:null,dispose:function(){u.removeEventListener(`wordclouddrawn`,S),u.addEventListener(`wordclouddrawn`,function(e){e.preventDefault()})}})})}),t(function(e){let t=(e||{}).series,n=Array.isArray(t)?t:t?[t]:[],i=[`shadowColor`,`shadowBlur`,`shadowOffsetX`,`shadowOffsetY`];r(n,function(e){if(F(e)&&e.type===`wordCloud`){let t=e.textStyle||{};F(t)&&(o(t.normal),o(t.emphasis))}});function o(e){F(e)&&r(i,function(t){Object.prototype.hasOwnProperty.call(e,t)&&(e[`text`+a(t)]=e[t])})}});function R(e,t){let n=e.width,r=e.height;n>r*t?(e.x+=(n-r*t)/2,e.width=r*t):(e.y+=(r-n/t)/2,e.height=n/t)}