diff --git a/dist/assets/index-BDcd5TnC.css b/dist/assets/index-BDcd5TnC.css deleted file mode 100644 index 8be6742..0000000 --- a/dist/assets/index-BDcd5TnC.css +++ /dev/null @@ -1 +0,0 @@ -:root{--primary-7: #8552a1;--primary-6: #9b6bc2;--fill-1: #f7f8fa;--fill-3: #e5e6eb;--fill-4: #c9cdd4;--text-1: #ffffff;--text-3: #86909c;--text-4: #4e5969;--danger-3: #fbaca3;--font-pingfang: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{background:#f3f4f6;color:#1d2129;font-family:var(--font-pingfang)}.page{position:relative;width:100%;height:calc(var(--app-vh, 1vh) * 100);padding:16px 16px 10px;display:flex;flex-direction:column;overflow:hidden}.top-bar{position:relative;display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px;padding:0 8px}.brand{display:flex;align-items:center;gap:8px}.logo{width:64px;height:64px;border-radius:16px}.title-logo{width:174px;height:auto}.toolbar{display:flex;align-items:center;gap:12px;flex:1;justify-content:flex-end}.tool-item{display:flex;align-items:center;gap:4px}.theme-trigger{position:relative}.tool-label{color:#1d2129;font-size:14px;white-space:nowrap}.icon-btn{border:0;background:transparent;cursor:pointer;padding:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}.icon-btn img{max-width:100%;max-height:100%;object-fit:contain}.upload-area{min-width:280px;max-width:420px;flex:1;min-height:38px;border-radius:6px;display:flex;align-items:center;padding:4px 10px;background:var(--fill-1);border:1px solid var(--fill-3);cursor:pointer;position:relative}.hidden-input{display:none}.upload-text{color:var(--text-4);font-size:12px}.export-box{display:flex;gap:6px;align-items:center;background:#fff;border:1px solid var(--fill-3);border-radius:8px;padding:2px 8px}.export-main{width:18px;height:34px}.export-item{width:40px;height:40px}.theme-popover{position:fixed;width:292px;border:1px solid var(--primary-7);border-radius:24px 24px 0 0;background:#fff;z-index:10;padding:8px 8px 10px}.theme-popover:before{content:"";position:absolute;top:-8px;left:var(--theme-arrow-left, 50%);width:14px;height:14px;background:#fff;border-top:1px solid var(--primary-7);border-left:1px solid var(--primary-7);transform:translate(-50%) rotate(45deg)}.theme-header{text-align:center;color:var(--primary-6);font-size:15px;margin-bottom:6px}.theme-wheel-wrap{--theme-row-height: 42px;position:relative;height:calc(var(--theme-row-height) * 5);overflow:hidden}.theme-wheel{height:100%;overflow-y:auto;padding-block:calc(var(--theme-row-height) * 2);margin:0;scrollbar-width:thin;scrollbar-color:#d6d8dc #fff}.theme-wheel::-webkit-scrollbar{width:6px}.theme-wheel::-webkit-scrollbar-track{background:#fff}.theme-wheel::-webkit-scrollbar-thumb{background:#d6d8dc;border-radius:999px}.theme-mask{position:absolute;inset:0;pointer-events:none;z-index:3;background:linear-gradient(180deg,#fff,#ffffffbd 20%,#fff0 35% 65%,#ffffffbd 80%,#fff)}.theme-row{width:100%;border:0;background:#fff;display:flex;align-items:center;gap:8px;height:42px;padding:5px 6px;cursor:pointer;transition:opacity .2s ease}.theme-row.selected{opacity:1}.theme-row img{width:18px;height:18px}.palette{flex:1;display:grid;height:20px;border-radius:2px;overflow:hidden;position:relative}.theme-row.selected .palette:before,.theme-row.selected .palette:after{content:"";position:absolute;left:0;right:0;border-top:1px solid var(--fill-3)}.theme-row.selected .palette:before{top:0}.theme-row.selected .palette:after{bottom:0}.palette-cell{display:block}.weixin-trigger{position:relative}.weixin-popover{position:absolute;top:calc(100% + 12px);right:0;width:180px;border:1px solid var(--primary-7);border-radius:12px;background:#fff;z-index:10;padding:12px;text-align:center;box-shadow:0 4px 12px #0000001a}.weixin-popover:before{content:"";position:absolute;top:-8px;right:16px;width:14px;height:14px;background:#fff;border-top:1px solid var(--primary-7);border-left:1px solid var(--primary-7);transform:rotate(45deg)}.weixin-header{color:var(--primary-6);font-size:14px;margin-bottom:12px}.weixin-qrcode{width:140px;height:140px;border-radius:8px}.content{display:grid;grid-template-columns:360px 1fr;gap:8px;flex:1;min-height:0}.left-pane{display:flex;flex-direction:column;gap:10px;min-height:0}.panel{border:1px solid #f7dede;border-radius:16px;background:#fff}.block-panel{padding:8px 8px 10px}.select-panel{flex:1;min-height:0;overflow:auto}.panel-title-svg{display:block;max-width:100%;height:auto}.panel-title-select{width:189px}.panel-title-preview{width:238px}.panel-title-info{width:186px}.field-block{margin-top:14px;position:relative}.field-title-wrap{width:100%;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:6px;margin-bottom:8px;cursor:pointer;text-align:left}.field-title-wrap h3{margin:0;font-size:18px;font-weight:500}.expand-icon{width:20px;height:20px}.column-list{position:relative;--connector-x: 10px;--icon-left: 20px;--row-height: 32px;--connector-top-offset: -6px}.column-list:before{content:"";position:absolute;left:var(--connector-x);top:var(--connector-top-offset);bottom:calc(var(--row-height) / 2);border-left:1px solid var(--fill-4)}.column-row{position:relative;display:flex;align-items:center;gap:8px;height:32px;padding-bottom:6px;padding-left:var(--icon-left)}.column-row:before{content:"";position:absolute;left:var(--connector-x);top:calc(50% - .5px);width:calc(var(--icon-left) - var(--connector-x));border-top:1px solid var(--fill-4)}.column-row:after{content:"";position:absolute;left:var(--icon-left);right:0;bottom:0;border-top:1px solid var(--fill-4)}.column-icon{width:18px;height:18px}.column-label{flex:1;color:var(--text-3);font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.select-btn{border:0;background:transparent;cursor:pointer;padding:0;width:16px;height:16px}.select-btn img{width:16px;height:16px}.preview-panel{padding:8px;display:flex;flex-direction:column;min-height:0}.preview-head{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:60px;margin-bottom:8px}.preview-controls{display:flex;align-items:center;gap:24px}.desktop-only{display:inline-flex}.mobile-only{display:none}.preview-controls .slider-label{display:inline-flex;align-items:center;gap:6px;width:148px}.slider-track-wrap{position:relative;width:122px;height:24px}.slider-icon{width:20px;height:20px;flex-shrink:0}.slider-input{width:100%;height:24px;margin:0;background:transparent;-webkit-appearance:none;appearance:none}.slider-input::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,var(--primary-6) 0,var(--primary-6) var(--slider-percent, 0%),var(--fill-3) var(--slider-percent, 0%),var(--fill-3) 100%)}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;border:1px solid var(--fill-3);background:#fff;box-shadow:0 2px 4px #00000014;margin-top:-7px}.slider-input::-moz-range-track{height:4px;border-radius:999px;background:var(--fill-3)}.slider-input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;border:1px solid var(--fill-3);background:#fff;box-shadow:0 2px 4px #00000014}.slider-input::-moz-range-progress{height:4px;border-radius:999px;background:var(--primary-6)}.slider-value{position:absolute;top:-13px;transform:translate(-50%);font-size:10px;line-height:1;color:var(--primary-6);white-space:nowrap;pointer-events:none}.direction-control{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;cursor:pointer;flex-shrink:0}.direction-label{font-size:14px;font-weight:600;color:#000;line-height:1}.direction-switch{display:inline-flex;align-items:center;gap:1px;min-width:0;width:auto;height:14px;padding:1px;border-radius:58.333px;background:var(--fill-3);justify-content:space-between}.direction-switch-text{font-size:8px;line-height:1;padding:0 1px;white-space:nowrap;color:var(--text-4)}.direction-switch-thumb{width:11.667px;height:11.667px;border-radius:50%;background:#fff;border:0;box-shadow:none}.direction-switch.on{background:var(--primary-6)}.direction-switch.on .direction-switch-text{color:#fff}.direction-switch:not(.on){flex-direction:row-reverse}.label-position-control{display:inline-flex;align-items:center;gap:6px}.label-position-label{font-size:14px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.label-position-select{min-width:0}.target-align-control{display:inline-flex;align-items:center;gap:6px}.target-align-label{font-size:14px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.target-align-select{min-width:0}.compact-control{display:inline-flex;align-items:center;gap:4px}.compact-label{font-size:12px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.compact-select{min-width:0}.label-position-select,.target-align-select,.compact-select{width:auto;inline-size:max-content;height:14px;border:.5px solid #c9aee0;border-radius:4px;background:#fff;color:#1d2129;font-size:12px;line-height:1;padding:0 14px 0 4px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10'%20height='9'%20fill='none'%20viewBox='0%200%2010%209'%3e%3cpath%20fill='%23606060'%20d='m9.755%202.404-3.19%204.904c-.696%201.068-2.434%201.068-3.13%200L.246%202.404C-.451%201.336.419%200%201.809%200h6.382c1.39%200%202.26%201.336%201.564%202.404Z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 2px center;background-size:10px 8px;flex-shrink:0}.example-line{margin:4px 0 8px;color:var(--text-4);font-size:12px}.chart-area{background:var(--fill-1);border-radius:8px;flex:1;min-height:0}.info-panel{padding:8px;min-height:120px;max-height:220px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.info-log-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;overflow:auto}.info-log-item{font-size:12px;line-height:1.45;color:var(--text-4)}.info-log-item.level-warn{color:#8d5b00}.info-log-item.level-error{color:#cb272d}.info-log-empty{margin:0;font-size:12px;color:var(--text-3)}.footer{margin-top:6px;flex-shrink:0;color:var(--text-3);font-size:16px}@media(max-width:1024px){.top-bar{flex-direction:column;align-items:stretch}.toolbar{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:8px;scrollbar-width:none}.toolbar::-webkit-scrollbar{display:none}.tool-item,.export-box,.upload-area{flex-shrink:0}.content{display:flex;flex-direction:column;overflow:hidden}.preview-panel{order:1;flex:1;min-height:0}.left-pane{order:2;min-height:0;max-height:42%;overflow:auto}.block-panel{min-height:auto}.chart-area{min-height:0}.preview-head{min-height:auto;align-items:center;flex-direction:row;gap:8px}.preview-controls{flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;justify-content:flex-start;scrollbar-width:none}.preview-controls::-webkit-scrollbar{display:none}.preview-controls .slider-label{width:120px}.slider-track-wrap{width:96px}.label-position-control,.target-align-control{margin-left:0;flex-shrink:0}.info-panel{max-height:180px}.footer{font-size:14px}}@media(max-width:640px){.page{padding:8px}.logo{width:48px;height:48px;border-radius:12px}.title-logo{width:160px}.tool-label{font-size:12px}.upload-area{display:flex;min-width:92px;max-width:none;flex:1 1 auto;min-height:28px;padding:2px 5px}.upload-text{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-bar{padding:0;gap:6px}.toolbar{width:100%;flex-wrap:nowrap;overflow:hidden;justify-content:flex-start;gap:4px}.tool-item .tool-label{display:none}.tool-item,.export-box{flex-shrink:0}.tool-item .icon-btn{width:28px;height:28px}.export-box{padding:1px 4px;gap:4px}.export-main{display:block;width:12px;height:24px}.export-item{width:28px;height:28px}.content{gap:6px}.left-pane{max-height:46%}.field-title-wrap h3{font-size:16px}.panel-title-preview{width:190px}.preview-head{gap:4px}.preview-controls{width:100%;flex-wrap:nowrap;gap:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;justify-content:flex-start}.preview-controls::-webkit-scrollbar{display:none}.desktop-only{display:none}.mobile-only{display:inline-flex}.preview-controls .slider-label{width:74px}.slider-track-wrap{width:61px}.label-position-control,.target-align-control{gap:4px;flex-shrink:0}.label-position-label,.target-align-label{font-size:12px}.label-position-select,.target-align-select{min-width:0;font-size:12px;padding:0 14px 0 4px}.direction-control{flex-shrink:0}} diff --git a/dist/assets/index-DtItNIz4.js b/dist/assets/index-CDL0T79C.js similarity index 99% rename from dist/assets/index-DtItNIz4.js rename to dist/assets/index-CDL0T79C.js index a8566e4..d4d2cc7 100644 --- a/dist/assets/index-DtItNIz4.js +++ b/dist/assets/index-CDL0T79C.js @@ -61,4 +61,4 @@ `),r=tt(t.replace(/<[^>]*>/g,""));return[r]}var F_={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function eE(e,t){var r=t||{},a=d1(e),n=[],i,s,o={name:""},f="",l=0,u,c,h={},d=[],v=r.dense?[]:{},p,g,m={value:""},x="",_=0,y=[],F=-1,k=-1,E={s:{r:1e6,c:1e7},e:{r:0,c:0}},C=0,T={},b=[],M={},R=0,B=0,G=[],re=1,j=1,q=[],ve={Names:[]},U={},xe=["",""],se=[],P={},V="",H=0,z=!1,ae=!1,pe=0;for(hl.lastIndex=0,a=a.replace(//mg,"").replace(//gm,"");p=hl.exec(a);)switch(p[3]=p[3].replace(/_.*$/,"")){case"table":case"工作表":p[1]==="/"?(E.e.c>=E.s.c&&E.e.r>=E.s.r?v["!ref"]=Je(E):v["!ref"]="A1:A1",r.sheetRows>0&&r.sheetRows<=E.e.r&&(v["!fullref"]=v["!ref"],E.e.r=r.sheetRows-1,v["!ref"]=Je(E)),b.length&&(v["!merges"]=b),G.length&&(v["!rows"]=G),u.name=u.名称||u.name,typeof JSON<"u"&&JSON.stringify(u),d.push(u.name),h[u.name]=v,ae=!1):p[0].charAt(p[0].length-2)!=="/"&&(u=Le(p[0],!1),F=k=-1,E.s.r=E.s.c=1e7,E.e.r=E.e.c=0,v=r.dense?[]:{},b=[],G=[],ae=!0);break;case"table-row-group":p[1]==="/"?--C:++C;break;case"table-row":case"行":if(p[1]==="/"){F+=re,re=1;break}if(c=Le(p[0],!1),c.行号?F=c.行号-1:F==-1&&(F=0),re=+c["number-rows-repeated"]||1,re<10)for(pe=0;pe0&&(G[F+pe]={level:C});k=-1;break;case"covered-table-cell":p[1]!=="/"&&++k,r.sheetStubs&&(r.dense?(v[F]||(v[F]=[]),v[F][k]={t:"z"}):v[Ue({r:F,c:k})]={t:"z"}),x="",y=[];break;case"table-cell":case"数据":if(p[0].charAt(p[0].length-2)==="/")++k,m=Le(p[0],!1),j=parseInt(m["number-columns-repeated"]||"1",10),g={t:"z",v:null},m.formula&&r.cellFormula!=!1&&(g.f=E_(tt(m.formula))),(m.数据类型||m["value-type"])=="string"&&(g.t="s",g.v=tt(m["string-value"]||""),r.dense?(v[F]||(v[F]=[]),v[F][k]=g):v[Ue({r:F,c:k})]=g),k+=j-1;else if(p[1]!=="/"){++k,x="",_=0,y=[],j=1;var le=re?F+re-1:F;if(k>E.e.c&&(E.e.c=k),kE.e.r&&(E.e.r=le),m=Le(p[0],!1),se=[],P={},g={t:m.数据类型||m["value-type"],v:null},r.cellFormula)if(m.formula&&(m.formula=tt(m.formula)),m["number-matrix-columns-spanned"]&&m["number-matrix-rows-spanned"]&&(R=parseInt(m["number-matrix-rows-spanned"],10)||0,B=parseInt(m["number-matrix-columns-spanned"],10)||0,M={s:{r:F,c:k},e:{r:F+R-1,c:k+B-1}},g.F=Je(M),q.push([M,g.F])),m.formula)g.f=E_(m.formula);else for(pe=0;pe=q[pe][0].s.r&&F<=q[pe][0].e.r&&k>=q[pe][0].s.c&&k<=q[pe][0].e.c&&(g.F=q[pe][1]);switch((m["number-columns-spanned"]||m["number-rows-spanned"])&&(R=parseInt(m["number-rows-spanned"],10)||0,B=parseInt(m["number-columns-spanned"],10)||0,M={s:{r:F,c:k},e:{r:F+R-1,c:k+B-1}},b.push(M)),m["number-columns-repeated"]&&(j=parseInt(m["number-columns-repeated"],10)),g.t){case"boolean":g.t="b",g.v=Tt(m["boolean-value"]);break;case"float":g.t="n",g.v=parseFloat(m.value);break;case"percentage":g.t="n",g.v=parseFloat(m.value);break;case"currency":g.t="n",g.v=parseFloat(m.value);break;case"date":g.t="d",g.v=$t(m["date-value"]),r.cellDates||(g.t="n",g.v=Ar(g.v)),g.z="m/d/yy";break;case"time":g.t="n",g.v=r7(m["time-value"])/86400,r.cellDates&&(g.t="d",g.v=yc(g.v)),g.z="HH:MM:SS";break;case"number":g.t="n",g.v=parseFloat(m.数据数值);break;default:if(g.t==="string"||g.t==="text"||!g.t)g.t="s",m["string-value"]!=null&&(x=tt(m["string-value"]),y=[]);else throw new Error("Unsupported value type "+g.t)}}else{if(z=!1,g.t==="s"&&(g.v=x||"",y.length&&(g.R=y),z=_==0),U.Target&&(g.l=U),se.length>0&&(g.c=se,se=[]),x&&r.cellText!==!1&&(g.w=x),z&&(g.t="z",delete g.v),(!z||r.sheetStubs)&&!(r.sheetRows&&r.sheetRows<=F))for(var ie=0;ie0;)v[F+ie][k+j]=Kt(g);else for(v[Ue({r:F+ie,c:k})]=g;--j>0;)v[Ue({r:F+ie,c:k+j})]=Kt(g);E.e.c<=k&&(E.e.c=k)}j=parseInt(m["number-columns-repeated"]||"1",10),k+=j-1,j=0,g={},x="",y=[]}U={};break;case"document":case"document-content":case"电子表格文档":case"spreadsheet":case"主体":case"scripts":case"styles":case"font-face-decls":case"master-styles":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else p[0].charAt(p[0].length-2)!=="/"&&n.push([p[3],!0]);break;case"annotation":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i;P.t=x,y.length&&(P.R=y),P.a=V,se.push(P)}else p[0].charAt(p[0].length-2)!=="/"&&n.push([p[3],!1]);V="",H=0,x="",_=0,y=[];break;case"creator":p[1]==="/"?V=a.slice(H,p.index):H=p.index+p[0].length;break;case"meta":case"元数据":case"settings":case"config-item-set":case"config-item-map-indexed":case"config-item-map-entry":case"config-item-map-named":case"shapes":case"frame":case"text-box":case"image":case"data-pilot-tables":case"list-style":case"form":case"dde-links":case"event-listeners":case"chart":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else p[0].charAt(p[0].length-2)!=="/"&&n.push([p[3],!1]);x="",_=0,y=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":case"percentage-style":case"date-style":case"time-style":if(p[1]==="/"){if(T[o.name]=f,(i=n.pop())[0]!==p[3])throw"Bad state: "+i}else p[0].charAt(p[0].length-2)!=="/"&&(f="",o=Le(p[0],!1),n.push([p[3],!0]));break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":case"page-layout":break;case"style":break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":switch(n[n.length-1][0]){case"time-style":case"date-style":s=Le(p[0],!1),f+=F_[p[3]][s.style==="long"?1:0];break}break;case"fraction":break;case"day":case"month":case"year":case"era":case"day-of-week":case"week-of-year":case"quarter":case"hours":case"minutes":case"seconds":case"am-pm":switch(n[n.length-1][0]){case"time-style":case"date-style":s=Le(p[0],!1),f+=F_[p[3]][s.style==="long"?1:0];break}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(p[0].slice(-2)==="/>")break;if(p[1]==="/")switch(n[n.length-1][0]){case"number-style":case"date-style":case"time-style":f+=a.slice(l,p.index);break}else l=p.index+p[0].length;break;case"named-range":s=Le(p[0],!1),xe=ld(s["cell-range-address"]);var ne={Name:s.name,Ref:xe[0]+"!"+xe[1]};ae&&(ne.Sheet=d.length),ve.Names.push(ne);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":case"文本串":if(["master-styles"].indexOf(n[n.length-1][0])>-1)break;if(p[1]==="/"&&(!m||!m["string-value"])){var ue=WH(a.slice(_,p.index));x=(x.length>0?x+` `:"")+ue[0]}else Le(p[0],!1),_=p.index+p[0].length;break;case"s":break;case"database-range":if(p[1]==="/")break;try{xe=ld(Le(p[0])["target-range-address"]),h[xe[0]]["!autofilter"]={ref:xe[1]}}catch{}break;case"date":break;case"object":break;case"title":case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":case"sender-lastname":case"sender-initials":case"sender-title":case"sender-position":case"sender-email":case"sender-phone-private":case"sender-fax":case"sender-company":case"sender-phone-work":case"sender-street":case"sender-city":case"sender-postal-code":case"sender-country":case"sender-state-or-province":case"author-name":case"author-initials":case"chapter":case"file-name":case"template-name":case"sheet-name":break;case"event-listener":break;case"initial-creator":case"creation-date":case"print-date":case"generator":case"document-statistic":case"user-defined":case"editing-duration":case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":case"source-cell-range":case"source-service":case"data-pilot-field":case"data-pilot-level":case"data-pilot-subtotals":case"data-pilot-subtotal":case"data-pilot-members":case"data-pilot-member":case"data-pilot-display-info":case"data-pilot-sort-info":case"data-pilot-layout-info":case"data-pilot-field-reference":case"data-pilot-groups":case"data-pilot-group":case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":case"dde-connection-decl":case"dde-link":case"dde-source":break;case"properties":break;case"property":break;case"a":if(p[1]!=="/"){if(U=Le(p[0],!1),!U.href)break;U.Target=tt(U.href),delete U.href,U.Target.charAt(0)=="#"&&U.Target.indexOf(".")>-1?(xe=ld(U.Target.slice(1)),U.Target="#"+xe[0]+"!"+xe[1]):U.Target.match(/^\.\.[\\\/]/)&&(U.Target=U.Target.slice(3))}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(p[2]){case"dc:":case"calcext:":case"loext:":case"ooo:":case"chartooo:":case"draw:":case"style:":case"chart:":case"form:":case"uof:":case"表:":case"字:":break;default:if(r.WTF)throw new Error(p)}}var w={Sheets:h,SheetNames:d,Workbook:ve};return r.bookSheets&&delete w.Sheets,w}function I_(e,t){t=t||{},aa(e,"META-INF/manifest.xml")&&iL(Pt(e,"META-INF/manifest.xml"),t);var r=Wr(e,"content.xml");if(!r)throw new Error("Missing content.xml in ODS / UOF file");var a=eE(_t(r),t);return aa(e,"meta.xml")&&(a.Props=d3(Pt(e,"meta.xml"))),a}function M_(e,t){return eE(e,t)}function A1(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Mv(e){return typeof TextDecoder<"u"?new TextDecoder().decode(e):_t(vs(e))}function Rv(e){var t=e.reduce(function(n,i){return n+i.length},0),r=new Uint8Array(t),a=0;return e.forEach(function(n){r.set(n,a),a+=n.length}),r}function R_(e){return e-=e>>1&1431655765,e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>>24}function GH(e,t){for(var r=(e[t+15]&127)<<7|e[t+14]>>1,a=e[t+14]&1,n=t+13;n>=t;--n)a=a*256+e[n];return(e[t+15]&128?-a:a)*Math.pow(10,r-6176)}function gl(e,t){var r=t?t[0]:0,a=e[r]&127;e:if(e[r++]>=128&&(a|=(e[r]&127)<<7,e[r++]<128||(a|=(e[r]&127)<<14,e[r++]<128)||(a|=(e[r]&127)<<21,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,28),++r,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,35),++r,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,42),++r,e[r++]<128)))break e;return t&&(t[0]=r),a}function Wt(e){var t=0,r=e[t]&127;e:if(e[t++]>=128){if(r|=(e[t]&127)<<7,e[t++]<128||(r|=(e[t]&127)<<14,e[t++]<128)||(r|=(e[t]&127)<<21,e[t++]<128))break e;r|=(e[t]&127)<<28}return r}function or(e){for(var t=[],r=[0];r[0]=128;);o=e.slice(f,r[0])}break;case 5:s=4,o=e.slice(r[0],r[0]+s),r[0]+=s;break;case 1:s=8,o=e.slice(r[0],r[0]+s),r[0]+=s;break;case 2:s=gl(e,r),o=e.slice(r[0],r[0]+s),r[0]+=s;break;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a))}var l={data:o,type:i};t[n]==null?t[n]=[l]:t[n].push(l)}return t}function D1(e,t){return e?.map(function(r){return t(r.data)})||[]}function $H(e){for(var t,r=[],a=[0];a[0]>>0>0),r.push(s)}return r}function XH(e,t){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));for(var r=[0],a=gl(t,r),n=[];r[0]>2;if(s<60)++s;else{var o=s-59;s=t[r[0]],o>1&&(s|=t[r[0]+1]<<8),o>2&&(s|=t[r[0]+2]<<16),o>3&&(s|=t[r[0]+3]<<24),s>>>=0,s++,r[0]+=o}n.push(t.slice(r[0],r[0]+s)),r[0]+=s;continue}else{var f=0,l=0;if(i==1?(l=(t[r[0]]>>2&7)+4,f=(t[r[0]++]&224)<<3,f|=t[r[0]++]):(l=(t[r[0]++]>>2)+1,i==2?(f=t[r[0]]|t[r[0]+1]<<8,r[0]+=2):(f=(t[r[0]]|t[r[0]+1]<<8|t[r[0]+2]<<16|t[r[0]+3]<<24)>>>0,r[0]+=4)),n=[Rv(n)],f==0)throw new Error("Invalid offset 0");if(f>n[0].length)throw new Error("Invalid offset beyond length");if(l>=f)for(n.push(n[0].slice(-f)),l-=f;l>=n[n.length-1].length;)n.push(n[n.length-1]),l-=n[n.length-1].length;n.push(n[0].slice(-f,-f+l))}}var u=Rv(n);if(u.length!=a)throw new Error("Unexpected length: ".concat(u.length," != ").concat(a));return u}function YH(e){for(var t=[],r=0;r1?12:8)+R_(i&(a>1?3470:398))*4,o=-1,f=-1,l=NaN,u=new Date(2001,0,1);i&512&&(o=n.getUint32(s,!0),s+=4),s+=R_(i&(a>1?12288:4096))*4,i&16&&(f=n.getUint32(s,!0),s+=4),i&32&&(l=n.getFloat64(s,!0),s+=8),i&64&&(u.setTime(u.getTime()+n.getFloat64(s,!0)*1e3),s+=8);var c;switch(e[2]){case 0:break;case 2:c={t:"n",v:l};break;case 3:c={t:"s",v:t[f]};break;case 5:c={t:"d",v:u};break;case 6:c={t:"b",v:l>0};break;case 7:c={t:"n",v:l/86400};break;case 8:c={t:"e",v:0};break;case 9:if(o>-1)c={t:"s",v:r[o]};else if(f>-1)c={t:"s",v:t[f]};else if(!isNaN(l))c={t:"n",v:l};else throw new Error("Unsupported cell type ".concat(e.slice(0,4)));break;default:throw new Error("Unsupported cell type ".concat(e.slice(0,4)))}return c}function ZH(e,t,r){var a=A1(e),n=a.getUint32(8,!0),i=12,s=-1,o=-1,f=NaN,l=NaN,u=new Date(2001,0,1);n&1&&(f=GH(e,i),i+=16),n&2&&(l=a.getFloat64(i,!0),i+=8),n&4&&(u.setTime(u.getTime()+a.getFloat64(i,!0)*1e3),i+=8),n&8&&(o=a.getUint32(i,!0),i+=4),n&16&&(s=a.getUint32(i,!0),i+=4);var c;switch(e[1]){case 0:break;case 2:c={t:"n",v:f};break;case 3:c={t:"s",v:t[o]};break;case 5:c={t:"d",v:u};break;case 6:c={t:"b",v:l>0};break;case 7:c={t:"n",v:l/86400};break;case 8:c={t:"e",v:0};break;case 9:if(s>-1)c={t:"s",v:r[s]};else throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)));break;case 10:c={t:"n",v:f};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)))}return c}function jH(e,t,r){switch(e[0]){case 0:case 1:case 2:case 3:return KH(e,t,r,e[0]);case 5:return ZH(e,t,r);default:throw new Error("Unsupported payload version ".concat(e[0]))}}function Qn(e){var t=or(e);return gl(t[1][0].data)}function P_(e,t){var r=or(t.data),a=Wt(r[1][0].data),n=r[3],i=[];return(n||[]).forEach(function(s){var o=or(s.data),f=Wt(o[1][0].data)>>>0;switch(a){case 1:i[f]=Mv(o[3][0].data);break;case 8:{var l=e[Qn(o[9][0].data)][0],u=or(l.data),c=e[Qn(u[1][0].data)][0],h=Wt(c.meta[1][0].data);if(h!=2001)throw new Error("2000 unexpected reference to ".concat(h));var d=or(c.data);i[f]=d[3].map(function(v){return Mv(v.data)}).join("")}break}}),i}function qH(e,t){var r,a,n,i,s,o,f,l,u,c,h,d,v,p,g=or(e),m=Wt(g[1][0].data)>>>0,x=Wt(g[2][0].data)>>>0,_=((a=(r=g[8])==null?void 0:r[0])==null?void 0:a.data)&&Wt(g[8][0].data)>0||!1,y,F;if((i=(n=g[7])==null?void 0:n[0])!=null&&i.data&&t!=0)y=(o=(s=g[7])==null?void 0:s[0])==null?void 0:o.data,F=(l=(f=g[6])==null?void 0:f[0])==null?void 0:l.data;else if((c=(u=g[4])==null?void 0:u[0])!=null&&c.data&&t!=1)y=(d=(h=g[4])==null?void 0:h[0])==null?void 0:d.data,F=(p=(v=g[3])==null?void 0:v[0])==null?void 0:p.data;else throw"NUMBERS Tile missing ".concat(t," cell storage");for(var k=_?4:1,E=A1(y),C=[],T=0;T=1&&(M[C[C.length-1][0]]=F.subarray(C[C.length-1][1]*k)),{R:m,cells:M}}function JH(e,t){var r,a=or(t.data),n=(r=a?.[7])!=null&&r[0]?Wt(a[7][0].data)>>>0>0?1:0:-1,i=D1(a[5],function(s){return qH(s,n)});return{nrows:Wt(a[4][0].data)>>>0,data:i.reduce(function(s,o){return s[o.R]||(s[o.R]=[]),o.cells.forEach(function(f,l){if(s[o.R][l])throw new Error("Duplicate cell r=".concat(o.R," c=").concat(l));s[o.R][l]=f}),s},[])}}function QH(e,t,r){var a,n=or(t.data),i={s:{r:0,c:0},e:{r:0,c:0}};if(i.e.r=(Wt(n[6][0].data)>>>0)-1,i.e.r<0)throw new Error("Invalid row varint ".concat(n[6][0].data));if(i.e.c=(Wt(n[7][0].data)>>>0)-1,i.e.c<0)throw new Error("Invalid col varint ".concat(n[7][0].data));r["!ref"]=Je(i);var s=or(n[4][0].data),o=P_(e,e[Qn(s[4][0].data)][0]),f=(a=s[17])!=null&&a[0]?P_(e,e[Qn(s[17][0].data)][0]):[],l=or(s[3][0].data),u=0;l[1].forEach(function(c){var h=or(c.data),d=e[Qn(h[2][0].data)][0],v=Wt(d.meta[1][0].data);if(v!=6002)throw new Error("6001 unexpected reference to ".concat(v));var p=JH(e,d);p.data.forEach(function(g,m){g.forEach(function(x,_){var y=Ue({r:u+m,c:_}),F=jH(x,o,f);F&&(r[y]=F)})}),u+=p.nrows})}function eV(e,t){var r=or(t.data),a={"!ref":"A1"},n=e[Qn(r[2][0].data)],i=Wt(n[0].meta[1][0].data);if(i!=6001)throw new Error("6000 unexpected reference to ".concat(i));return QH(e,n[0],a),a}function tV(e,t){var r,a=or(t.data),n={name:(r=a[1])!=null&&r[0]?Mv(a[1][0].data):"",sheets:[]},i=D1(a[2],Qn);return i.forEach(function(s){e[s].forEach(function(o){var f=Wt(o.meta[1][0].data);f==6e3&&n.sheets.push(eV(e,o))})}),n}function rV(e,t){var r=F1(),a=or(t.data),n=D1(a[1],Qn);if(n.forEach(function(i){e[i].forEach(function(s){var o=Wt(s.meta[1][0].data);if(o==2){var f=tV(e,s);f.sheets.forEach(function(l,u){I1(r,l,u==0?f.name:f.name+"_"+u,!0)})}})}),r.SheetNames.length==0)throw new Error("Empty NUMBERS file");return r}function cd(e){var t,r,a,n,i={},s=[];if(e.FullPaths.forEach(function(f){if(f.match(/\.iwpv2/))throw new Error("Unsupported password protection")}),e.FileIndex.forEach(function(f){if(f.name.match(/\.iwa$/)){var l;try{l=YH(f.content)}catch(c){return console.log("?? "+f.content.length+" "+(c.message||c))}var u;try{u=$H(l)}catch(c){return console.log("## "+(c.message||c))}u.forEach(function(c){i[c.id]=c.messages,s.push(c.id)})}}),!s.length)throw new Error("File has no messages");var o=((n=(a=(r=(t=i?.[1])==null?void 0:t[0])==null?void 0:r.meta)==null?void 0:a[1])==null?void 0:n[0].data)&&Wt(i[1][0].meta[1][0].data)==1&&i[1][0];if(o||s.forEach(function(f){i[f].forEach(function(l){var u=Wt(l.meta[1][0].data)>>>0;if(u==1)if(!o)o=l;else throw new Error("Document has multiple roots")})}),!o)throw new Error("Cannot find Document root");return rV(i,o)}function aV(e){return function(r){for(var a=0;a!=e.length;++a){var n=e[a];r[n[0]]===void 0&&(r[n[0]]=n[1]),n[2]==="n"&&(r[n[0]]=Number(r[n[0]]))}}}function k1(e){aV([["cellNF",!1],["cellHTML",!0],["cellFormula",!0],["cellStyles",!1],["cellText",!0],["cellDates",!1],["sheetStubs",!1],["sheetRows",0,"n"],["bookDeps",!1],["bookSheets",!1],["bookProps",!1],["bookFiles",!1],["bookVBA",!1],["password",""],["WTF",!1]])(e)}function nV(e){return qs.WS.indexOf(e)>-1?"sheet":e==qs.CS?"chart":e==qs.DS?"dialog":e==qs.MS?"macro":e&&e.length?e:"sheet"}function iV(e,t){if(!e)return 0;try{e=t.map(function(a){return a.id||(a.id=a.strRelID),[a.name,e["!id"][a.id].Target,nV(e["!id"][a.id].Type)]})}catch{return null}return!e||e.length===0?null:e}function sV(e,t,r,a,n,i,s,o,f,l,u,c){try{i[a]=Pf(Wr(e,r,!0),t);var h=Pt(e,t),d;switch(o){case"sheet":d=hH(h,t,n,f,i[a],l,u,c);break;case"chart":if(d=dH(h,t,n,f,i[a],l,u,c),!d||!d["!drawel"])break;var v=uf(d["!drawel"].Target,t),p=Dv(v),g=cB(Wr(e,v,!0),Pf(Wr(e,p,!0),v)),m=uf(g,v),x=Dv(m);d=ZU(Wr(e,m,!0),m,f,Pf(Wr(e,x,!0),m),l,d);break;case"macro":d=vH(h,t,n,f,i[a],l,u,c);break;case"dialog":d=pH(h,t,n,f,i[a],l,u,c);break;default:throw new Error("Unrecognized sheet type "+o)}s[a]=d;var _=[];i&&i[a]&&Ja(i[a]).forEach(function(y){var F="";if(i[a][y].Type==qs.CMNT){F=uf(i[a][y].Target,t);var k=_H(Pt(e,F,!0),F,f);if(!k||!k.length)return;__(d,k,!1)}i[a][y].Type==qs.TCMNT&&(F=uf(i[a][y].Target,t),_=_.concat(dB(Pt(e,F,!0),f)))}),_&&_.length&&__(d,_,!0,f.people||[])}catch(y){if(f.WTF)throw y}}function qr(e){return e.charAt(0)=="/"?e.slice(1):e}function oV(e,t){if(N4(),t=t||{},k1(t),aa(e,"META-INF/manifest.xml")||aa(e,"objectdata.xml"))return I_(e,t);if(aa(e,"Index/Document.iwa")){if(typeof Uint8Array>"u")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof cd<"u"){if(e.FileIndex)return cd(e);var r=qe.utils.cfb_new();return Xx(e).forEach(function(G){f7(r,G,o7(e,G))}),cd(r)}throw new Error("Unsupported NUMBERS file")}if(!aa(e,"[Content_Types].xml"))throw aa(e,"index.xml.gz")?new Error("Unsupported NUMBERS 08 file"):aa(e,"index.xml")?new Error("Unsupported NUMBERS 09 file"):new Error("Unsupported ZIP file");var a=Xx(e),n=aL(Wr(e,"[Content_Types].xml")),i=!1,s,o;if(n.workbooks.length===0&&(o="xl/workbook.xml",Pt(e,o,!0)&&n.workbooks.push(o)),n.workbooks.length===0){if(o="xl/workbook.bin",!Pt(e,o,!0))throw new Error("Could not find workbook");n.workbooks.push(o),i=!0}n.workbooks[0].slice(-3)=="bin"&&(i=!0);var f={},l={};if(!t.bookSheets&&!t.bookProps){if(Bf=[],n.sst)try{Bf=xH(Pt(e,qr(n.sst)),n.sst,t)}catch(G){if(t.WTF)throw G}t.cellStyles&&n.themes.length&&(f=mH(Wr(e,n.themes[0].replace(/^\//,""),!0)||"",n.themes[0],t)),n.style&&(l=gH(Pt(e,qr(n.style)),n.style,f,t))}n.links.map(function(G){try{var re=Pf(Wr(e,Dv(qr(G))),G);return wH(Pt(e,qr(G)),re,G,t)}catch{}});var u=cH(Pt(e,qr(n.workbooks[0])),n.workbooks[0],t),c={},h="";n.coreprops.length&&(h=Pt(e,qr(n.coreprops[0]),!0),h&&(c=d3(h)),n.extprops.length!==0&&(h=Pt(e,qr(n.extprops[0]),!0),h&&fL(h,c,t)));var d={};(!t.bookSheets||t.bookProps)&&n.custprops.length!==0&&(h=Wr(e,qr(n.custprops[0]),!0),h&&(d=uL(h,t)));var v={};if((t.bookSheets||t.bookProps)&&(u.Sheets?s=u.Sheets.map(function(re){return re.name}):c.Worksheets&&c.SheetNames.length>0&&(s=c.SheetNames),t.bookProps&&(v.Props=c,v.Custprops=d),t.bookSheets&&typeof s<"u"&&(v.SheetNames=s),t.bookSheets?v.SheetNames:t.bookProps))return v;s={};var p={};t.bookDeps&&n.calcchain&&(p=yH(Pt(e,qr(n.calcchain)),n.calcchain));var g=0,m={},x,_;{var y=u.Sheets;c.Worksheets=y.length,c.SheetNames=[];for(var F=0;F!=y.length;++F)c.SheetNames[F]=y[F].name}var k=i?"bin":"xml",E=n.workbooks[0].lastIndexOf("/"),C=(n.workbooks[0].slice(0,E+1)+"_rels/"+n.workbooks[0].slice(E+1)+".rels").replace(/^\//,"");aa(e,C)||(C="xl/_rels/workbook."+k+".rels");var T=Pf(Wr(e,C,!0),C.replace(/_rels.*/,"s5s"));(n.metadata||[]).length>=1&&(t.xlmeta=TH(Pt(e,qr(n.metadata[0])),n.metadata[0],t)),(n.people||[]).length>=1&&(t.people=vB(Pt(e,qr(n.people[0])),t)),T&&(T=iV(T,u.Sheets));var b=Pt(e,"xl/worksheets/sheet.xml",!0)?1:0;e:for(g=0;g!=c.Worksheets;++g){var M="sheet";if(T&&T[g]?(x="xl/"+T[g][1].replace(/[\/]?xl\//,""),aa(e,x)||(x=T[g][1]),aa(e,x)||(x=C.replace(/_rels\/.*$/,"")+T[g][1]),M=T[g][2]):(x="xl/worksheets/sheet"+(g+1-b)+"."+k,x=x.replace(/sheet0\./,"sheet.")),_=x.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels"),t&&t.sheets!=null)switch(typeof t.sheets){case"number":if(g!=t.sheets)continue e;break;case"string":if(c.SheetNames[g].toLowerCase()!=t.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(t.sheets)){for(var R=!1,B=0;B!=t.sheets.length;++B)typeof t.sheets[B]=="number"&&t.sheets[B]==g&&(R=1),typeof t.sheets[B]=="string"&&t.sheets[B].toLowerCase()==c.SheetNames[g].toLowerCase()&&(R=1);if(!R)continue e}}sV(e,x,_,c.SheetNames[g],g,m,s,M,t,u,f,l)}return v={Directory:n,Workbook:u,Props:c,Custprops:d,Deps:p,Sheets:s,SheetNames:c.SheetNames,Strings:Bf,Styles:l,Themes:f,SSF:Kt(We)},t&&t.bookFiles&&(e.files?(v.keys=a,v.files=e.files):(v.keys=[],v.files={},e.FullPaths.forEach(function(G,re){G=G.replace(/^Root Entry[\/]/,""),v.keys.push(G),v.files[G]=e.FileIndex[re]}))),t&&t.bookVBA&&(n.vba.length>0?v.vbaraw=Pt(e,qr(n.vba[0]),!0):n.defaults&&n.defaults.bin===xB&&(v.vbaraw=Pt(e,"xl/vbaProject.bin",!0))),v}function fV(e,t){var r=t||{},a="Workbook",n=qe.find(e,a);try{if(a="/!DataSpaces/Version",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(e9(n.content),a="/!DataSpaces/DataSpaceMap",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=r9(n.content);if(i.length!==1||i[0].comps.length!==1||i[0].comps[0].t!==0||i[0].name!=="StrongEncryptionDataSpace"||i[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);if(a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=a9(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);if(a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);i9(n.content)}catch{}if(a="/EncryptionInfo",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=s9(n.content);if(a="/EncryptedPackage",n=qe.find(e,a),!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(o[0]==4&&typeof decrypt_agile<"u")return decrypt_agile(o[1],n.content,r.password||"",r);if(o[0]==2&&typeof decrypt_std76<"u")return decrypt_std76(o[1],n.content,r.password||"",r);throw new Error("File is password-protected")}function b1(e,t){var r="";switch((t||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":r=Kr(e.slice(0,12));break;case"binary":r=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(t&&t.type||"undefined"))}return[r.charCodeAt(0),r.charCodeAt(1),r.charCodeAt(2),r.charCodeAt(3),r.charCodeAt(4),r.charCodeAt(5),r.charCodeAt(6),r.charCodeAt(7)]}function lV(e,t){return qe.find(e,"EncryptedPackage")?fV(e,t):q3(e,t)}function uV(e,t){var r,a=e,n=t||{};return n.type||(n.type=Ze&&Buffer.isBuffer(e)?"buffer":"base64"),r=G4(a,n),oV(r,n)}function tE(e,t){var r=0;e:for(;r=2&&n[3]===0||n[2]===0&&(n[3]===8||n[3]===9)))return Of.to_workbook(a,r);break;case 3:case 131:case 139:case 140:return x_.to_workbook(a,r);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return x9.to_workbook(a,r);break;case 10:case 13:case 32:return cV(a,r);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break}return BO.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31?x_.to_workbook(a,r):hd(e,a,r,i)}function vV(e,t,r,a,n,i,s,o){var f=Zt(r),l=o.defval,u=o.raw||!Object.prototype.hasOwnProperty.call(o,"raw"),c=!0,h=n===1?[]:{};if(n!==1)if(Object.defineProperty)try{Object.defineProperty(h,"__rowNum__",{value:r,enumerable:!1})}catch{h.__rowNum__=r}else h.__rowNum__=r;if(!s||e[r])for(var d=t.s.c;d<=t.e.c;++d){var v=s?e[r][d]:e[a[d]+f];if(v===void 0||v.t===void 0){if(l===void 0)continue;i[d]!=null&&(h[i[d]]=l);continue}var p=v.v;switch(v.t){case"z":if(p==null)break;continue;case"e":p=p==0?null:void 0;break;case"s":case"d":case"b":case"n":break;default:throw new Error("unrecognized type "+v.t)}if(i[d]!=null){if(p==null)if(v.t=="e"&&p===null)h[i[d]]=null;else if(l!==void 0)h[i[d]]=l;else if(u&&p===null)h[i[d]]=null;else continue;else h[i[d]]=u&&(v.t!=="n"||v.t==="n"&&o.rawNumbers!==!1)?p:En(v,p,o);p!=null&&(c=!1)}}return{row:h,isempty:c}}function Lv(e,t){if(e==null||e["!ref"]==null)return[];var r={t:"n",v:0},a=0,n=1,i=[],s=0,o="",f={s:{r:0,c:0},e:{r:0,c:0}},l=t||{},u=l.range!=null?l.range:e["!ref"];switch(l.header===1?a=1:l.header==="A"?a=2:Array.isArray(l.header)?a=3:l.header==null&&(a=0),typeof u){case"string":f=kt(u);break;case"number":f=kt(e["!ref"]),f.s.r=u;break;default:f=u}a>0&&(n=0);var c=Zt(f.s.r),h=[],d=[],v=0,p=0,g=Array.isArray(e),m=f.s.r,x=0,_={};g&&!e[m]&&(e[m]=[]);var y=l.skipHidden&&e["!cols"]||[],F=l.skipHidden&&e["!rows"]||[];for(x=f.s.c;x<=f.e.c;++x)if(!(y[x]||{}).hidden)switch(h[x]=zt(x),r=g?e[m][x]:e[h[x]+c],a){case 1:i[x]=x-f.s.c;break;case 2:i[x]=h[x];break;case 3:i[x]=l.header[x-f.s.c];break;default:if(r==null&&(r={w:"__EMPTY",t:"s"}),o=s=En(r,null,l),p=_[s]||0,!p)_[s]=1;else{do o=s+"_"+p++;while(_[o]);_[s]=p,_[o]=1}i[x]=o}for(m=f.s.r+n;m<=f.e.r;++m)if(!(F[m]||{}).hidden){var k=vV(e,f,m,h,a,i,g,l);(k.isempty===!1||(a===1?l.blankrows!==!1:l.blankrows))&&(d[v++]=k.row)}return d.length=v,d}var L_=/"/g;function pV(e,t,r,a,n,i,s,o){for(var f=!0,l=[],u="",c=Zt(r),h=t.s.c;h<=t.e.c;++h)if(a[h]){var d=o.dense?(e[r]||[])[h]:e[a[h]+c];if(d==null)u="";else if(d.v!=null){f=!1,u=""+(o.rawNumbers&&d.t=="n"?d.v:En(d,null,o));for(var v=0,p=0;v!==u.length;++v)if((p=u.charCodeAt(v))===n||p===i||p===34||o.forceQuotes){u='"'+u.replace(L_,'""')+'"';break}u=="ID"&&(u='"ID"')}else d.f!=null&&!d.F?(f=!1,u="="+d.f,u.indexOf(",")>=0&&(u='"'+u.replace(L_,'""')+'"')):u="";l.push(u)}return o.blankrows===!1&&f?null:l.join(s)}function rE(e,t){var r=[],a=t??{};if(e==null||e["!ref"]==null)return"";var n=kt(e["!ref"]),i=a.FS!==void 0?a.FS:",",s=i.charCodeAt(0),o=a.RS!==void 0?a.RS:` `,f=o.charCodeAt(0),l=new RegExp((i=="|"?"\\|":i)+"+$"),u="",c=[];a.dense=Array.isArray(e);for(var h=a.skipHidden&&e["!cols"]||[],d=a.skipHidden&&e["!rows"]||[],v=n.s.c;v<=n.e.c;++v)(h[v]||{}).hidden||(c[v]=zt(v));for(var p=0,g=n.s.r;g<=n.e.r;++g)(d[g]||{}).hidden||(u=pV(e,n,g,c,s,f,i,a),u!=null&&(a.strip&&(u=u.replace(l,"")),(u||a.blankrows!==!1)&&r.push((p++?o:"")+u)));return delete a.dense,r.join("")}function gV(e,t){t||(t={}),t.FS=" ",t.RS=` -`;var r=rE(e,t);return r}function mV(e){var t="",r,a="";if(e==null||e["!ref"]==null)return[];var n=kt(e["!ref"]),i="",s=[],o,f=[],l=Array.isArray(e);for(o=n.s.c;o<=n.e.c;++o)s[o]=zt(o);for(var u=n.s.r;u<=n.e.r;++u)for(i=Zt(u),o=n.s.c;o<=n.e.c;++o)if(t=s[o]+i,r=l?(e[u]||[])[o]:e[t],a="",r!==void 0){if(r.F!=null){if(t=r.F,!r.f)continue;a=r.f,t.indexOf(":")==-1&&(t=t+":"+t)}if(r.f!=null)a=r.f;else{if(r.t=="z")continue;if(r.t=="n"&&r.v!=null)a=""+r.v;else if(r.t=="b")a=r.v?"TRUE":"FALSE";else if(r.w!==void 0)a="'"+r.w;else{if(r.v===void 0)continue;r.t=="s"?a="'"+r.v:a=""+r.v}}f[f.length]=t+"="+a}return f}function aE(e,t,r){var a=r||{},n=+!a.skipHeader,i=e||{},s=0,o=0;if(i&&a.origin!=null)if(typeof a.origin=="number")s=a.origin;else{var f=typeof a.origin=="string"?Tr(a.origin):a.origin;s=f.r,o=f.c}var l,u={s:{c:0,r:0},e:{c:o,r:s+t.length-1+n}};if(i["!ref"]){var c=kt(i["!ref"]);u.e.c=Math.max(u.e.c,c.e.c),u.e.r=Math.max(u.e.r,c.e.r),s==-1&&(s=c.e.r+1,u.e.r=s+t.length-1+n)}else s==-1&&(s=0,u.e.r=t.length-1+n);var h=a.header||[],d=0;t.forEach(function(p,g){Ja(p).forEach(function(m){(d=h.indexOf(m))==-1&&(h[d=h.length]=m);var x=p[m],_="z",y="",F=Ue({c:o+d,r:s+g+n});l=ml(i,F),x&&typeof x=="object"&&!(x instanceof Date)?i[F]=x:(typeof x=="number"?_="n":typeof x=="boolean"?_="b":typeof x=="string"?_="s":x instanceof Date?(_="d",a.cellDates||(_="n",x=Ar(x)),y=a.dateNF||We[14]):x===null&&a.nullError&&(_="e",x=0),l?(l.t=_,l.v=x,delete l.w,delete l.R,y&&(l.z=y)):i[F]=l={t:_,v:x},y&&(l.z=y))})}),u.e.c=Math.max(u.e.c,o+h.length-1);var v=Zt(s);if(n)for(d=0;d=0&&e.SheetNames.length>t)return t;throw new Error("Cannot find sheet # "+t)}else if(typeof t=="string"){var r=e.SheetNames.indexOf(t);if(r>-1)return r;throw new Error("Cannot find sheet name |"+t+"|")}else throw new Error("Cannot find sheet |"+t+"|")}function F1(){return{SheetNames:[],Sheets:{}}}function I1(e,t,r,a){var n=1;if(!r)for(;n<=65535&&e.SheetNames.indexOf(r="Sheet"+n)!=-1;++n,r=void 0);if(!r||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(r)>=0){var i=r.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||r;for(++n;n<=65535&&e.SheetNames.indexOf(r=s+n)!=-1;++n);}if(aH(r),e.SheetNames.indexOf(r)>=0)throw new Error("Worksheet with name |"+r+"| already exists!");return e.SheetNames.push(r),e.Sheets[r]=t,r}function yV(e,t,r){e.Workbook||(e.Workbook={}),e.Workbook.Sheets||(e.Workbook.Sheets=[]);var a=_V(e,t);switch(e.Workbook.Sheets[a]||(e.Workbook.Sheets[a]={}),r){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+r)}e.Workbook.Sheets[a].Hidden=r}function wV(e,t){return e.z=t,e}function nE(e,t,r){return t?(e.l={Target:t},r&&(e.l.Tooltip=r)):delete e.l,e}function TV(e,t,r){return nE(e,"#"+t,r)}function SV(e,t,r){e.c||(e.c=[]),e.c.push({t,a:r||"SheetJS"})}function EV(e,t,r,a){for(var n=typeof t!="string"?t:kt(t),i=typeof t=="string"?t:Je(t),s=n.s.r;s<=n.e.r;++s)for(var o=n.s.c;o<=n.e.c;++o){var f=ml(e,s,o);f.t="n",f.F=i,delete f.v,s==n.s.r&&o==n.s.c&&(f.f=r,a&&(f.D=!0))}return e}var CV={encode_col:zt,encode_row:Zt,encode_cell:Ue,encode_range:Je,decode_col:g1,decode_row:p1,split_cell:O7,decode_cell:Tr,decode_range:Co,format_cell:En,sheet_add_aoa:f3,sheet_add_json:aE,sheet_add_dom:J3,aoa_to_sheet:Ao,json_to_sheet:xV,table_to_sheet:Q3,table_to_book:VH,sheet_to_csv:rE,sheet_to_txt:gV,sheet_to_json:Lv,sheet_to_html:HH,sheet_to_formulae:mV,sheet_to_row_object_array:Lv,sheet_get_cell:ml,book_new:F1,book_append_sheet:I1,book_set_sheet_visibility:yV,cell_set_number_format:wV,cell_set_hyperlink:nE,cell_set_internal_link:TV,cell_add_comment:SV,sheet_set_array_formula:EV,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};function AV(e){const t=String(e);if(!t||/[\u4e00-\u9fff]/.test(t)||!/[ÃÂÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]/.test(t))return t;try{const r=decodeURIComponent(escape(t));if(/[\u4e00-\u9fff]/.test(r))return r}catch{}return t}function O_(e){return e==null?"":AV(e).trim()}function iE(e){if(e.length===0)return{headers:[],rows:[]};const t=e[0]??[],r=e.reduce((i,s)=>Math.max(i,s.length),t.length),a=Array.from({length:r},(i,s)=>O_(t[s])||`列${s+1}`),n=e.slice(1).map(i=>Array.from({length:r},(s,o)=>O_(i[o])));return{headers:a,rows:n}}function DV(e){const t=SP.parse(e,{skipEmptyLines:!1});if(t.errors.length>0){const a=t.errors[0];throw new Error(`CSV 解析失败: ${a.message}`)}const r=t.data.map(a=>a??[]);return iE(r)}function B_(e){const t=Pv(e,{type:"array",codepage:936}),r=t.SheetNames[0];if(!r)throw new Error("Excel 文件中没有工作表");const a=t.Sheets[r],n=CV.sheet_to_json(a,{header:1,raw:!1,blankrows:!1});return iE(n)}function Wu(e){return e.trim()}function kV(e){const t=e.replace(/,/g,"").trim();if(!t)return null;const r=Number(t);return Number.isNaN(r)?null:r}function sE(e){return e.length===0?"(空)":e}function N_(e,t,r){return r.length===0?"未选择列":r.map(a=>{const n=t[a]??`列${a+1}`,i=e[a]??"";return`第 ${a+1} 列(${n})="${sE(i)}"`}).join(",")}function bV(e,t){const r=t.sourceDataColumn===null?"":e[t.sourceDataColumn]??"";return t.sourceDescriptionColumns.length===0?Wu(r):t.sourceDescriptionColumns.map(n=>Wu(e[n]??"")).filter(n=>n.length>0).join(t.delimiter)}function FV(e,t,r){return t.targetDescriptionColumns.map(n=>{const i=Wu(e[n]??"");return i.length>0?(r.set(n,i),i):r.get(n)??""}).filter(n=>n.length>0).join(t.delimiter)}function IV(e,t){if(t.sourceDataColumn===null)throw new Error("必须选择源数据列");if(t.targetDescriptionColumns.length===0)throw new Error("必须至少选择一个目标描述列");const r=new Map,a=[];let n=0;const i=t.sourceDataColumn,s=e.headers[i]??`列${i+1}`,o=new Map;e.rows.forEach((h,d)=>{const v=d+2,p=h[i]??"",g=Wu(p),m=kV(g);if(m===null){a.push(`第 ${v} 行, 第 ${i+1} 列(${s}): 源数据不是有效数字,原始值="${sE(p)}",已跳过`),n+=1;return}const x=bV(h,t);if(!x){const k=N_(h,e.headers,t.sourceDescriptionColumns);a.push(`第 ${v} 行: 源描述为空,字段=${k},已跳过`),n+=1;return}const _=FV(h,t,o);if(!_){const k=N_(h,e.headers,t.targetDescriptionColumns);a.push(`第 ${v} 行: 目标描述为空,字段=${k},且无可继承的上方值,已跳过`),n+=1;return}const y=`${x}@@${_}`,F=r.get(y)??0;r.set(y,F+m)});const f=[],l=new Set,u=new Set;return r.forEach((h,d)=>{const[v,p]=d.split("@@");!v||!p||(l.add(v),u.add(p),f.push({source:v,target:p,value:h}))}),{nodes:[...Array.from(l).map(h=>({name:h,kind:"source"})),...Array.from(u).filter(h=>!l.has(h)).map(h=>({name:h,kind:"target"}))],links:f,meta:{droppedRows:n,warnings:a}}}function MV(e,t){return t==="source-to-target"?e:e.map(r=>({source:r.target,target:r.source,value:r.value}))}const RV=[{id:"figma-aegean",name:"Figma-Aegean",colors:["#264653","#287271","#2A9D8F","#8AB17D","#E9C46A","#EFB366","#F4A261","#F1965D","#EE8959","#E76F51"]},{id:"figma-violet",name:"Figma-Violet",colors:["#F72585","#B5179E","#7209B7","#560BAD","#480CA8","#3A0CA3","#3F37C9","#4361EE","#4895EF","#4CC9F0"]},{id:"figma-1",name:"Figma-01",colors:["#322F4F","#433E71","#554C93","#98958C","#DBDD85","#D8DD7D","#D5DB74","#CED56E","#C8CF67","#BAC35A"]},{id:"figma-2",name:"Figma-02",colors:["#2B3B51","#355971","#3F7690","#91A483","#E2D075","#E4C66F","#E4BD69","#E0B464","#DBAA5F","#D19654"]},{id:"figma-3",name:"Figma-03",colors:["#274D4C","#2B7171","#2F9595","#8B9395","#E79094","#EC878A","#EF7D7F","#EC7578","#E86D6F","#E15D5F"]},{id:"figma-4",name:"Figma-04",colors:["#3D3D3D","#5B5B5B","#797979","#9F9F9F","#C4C4C4","#BCBCBC","#B3B3B3","#AAAAAA","#A1A1A1","#8F8F8F"]},{id:"figma-5",name:"Figma-05",colors:["#F4F1DE","#EAB69F","#E07A5F","#8F5D5D","#3D405B","#5F797B","#81B29A","#9EB998","#BABF95","#F2CC8F"]},{id:"figma-6",name:"Figma-06",colors:["#F2F3E3","#D6DAA5","#B9C167","#7C805D","#3E3D52","#68667A","#938FA1","#A8A6A1","#BBBBA1","#E3E6A1"]},{id:"figma-7",name:"Figma-07",colors:["#F3F1E0","#E0C7A1","#CD9B62","#856D5D","#3D3F57","#63707A","#89A19D","#A2B09C","#BABD9A","#EBD896"]},{id:"figma-8",name:"Figma-08",colors:["#F3E6E7","#E7A8A9","#DA6A6B","#8C5D5D","#3D4F4E","#607A7A","#83A4A5","#9FA6A7","#BAA7A8","#F0A9AB"]},{id:"figma-9",name:"Figma-09",colors:["#EFEFEF","#C2C2C2","#959595","#6B6B6B","#424242","#717171","#A0A0A0","#ADADAD","#B8B8B8","#D0D0D0"]},{id:"figma-10",name:"Figma-10",colors:["#A8B868","#798575","#4A5282","#393F7C","#313679","#282C75","#3C3C9D","#4E4CC3","#645FD4","#7A71E4"]},{id:"figma-11",name:"Figma-11",colors:["#EF476F","#F78C6B","#FFD166","#83D483","#06D6A0","#001914","#118AB2","#0F7799","#0C637F","#073B4C"]},{id:"figma-12",name:"Figma-12",colors:["#D06A79","#984B8D","#5E2BA1","#482398","#3D1F94","#311B90","#3D39B6","#4857DC","#567BE3","#629FEB"]},{id:"figma-13",name:"Figma-13",colors:["#B0BC63","#CED674","#EDF186","#A19B9B","#5444B0","#493DAB","#3E35A6","#362E8E","#2C2676","#1A1646"]},{id:"figma-14",name:"Figma-14",colors:["#D07E6A","#E3AF6F","#F6E073","#91B98D","#2C90A6","#2A79A9","#2761AD","#225494","#1B467B","#102949"]},{id:"figma-15",name:"Figma-15",colors:["#E65D5C","#F1797A","#FC9498","#87A6A9","#10B7B9","#14ACAC","#17A09F","#148A88","#107271","#094443"]},{id:"figma-16",name:"Figma-16",colors:["#7D7D7D","#A8A8A8","#D2D2D2","#B2B2B2","#919191","#7E7E7E","#6A6A6A","#5B5B5B","#4C4C4C","#2D2D2D"]},{id:"figma-17",name:"Figma-17",colors:["#5F0F40","#7D092F","#9A031E","#CB4721","#FB8B24","#EF781C","#E36414","#AE5E26","#795838","#0F4C5C"]},{id:"figma-18",name:"Figma-18",colors:["#414731","#515A23","#616C15","#99A32C","#D1D942","#C2CB37","#B3BC2C","#909636","#6C6F41","#252157"]},{id:"figma-19",name:"Figma-19",colors:["#502939","#672F2A","#7E351A","#B27225","#E6B030","#D99F27","#CB8E1E","#9F782D","#72623C","#1A375A"]},{id:"figma-20",name:"Figma-20",colors:["#5B2A28","#771E1C","#921211","#C43133","#F55054","#E94347","#DC363A","#AA3E40","#774547","#125554"]},{id:"figma-21",name:"Figma-21",colors:["#2C2C2C","#303030","#333333","#6A6A6A","#A0A0A0","#919191","#808080","#6F6F6F","#5E5E5E","#3B3B3B"]},{id:"figma-22",name:"Figma-22",colors:["#366260","#516765","#6C6B6A","#8E6D6C","#B16E6D","#C76E6D","#DE6D6D","#E38384","#E6999A"]},{id:"figma-23",name:"Figma-23",colors:["#39476C","#515371","#695F75","#876F74","#A67F73","#BA8971","#CE936E","#D7AA7E","#DEC08F"]},{id:"figma-24",name:"Figma-24",colors:["#3F3D66","#52526B","#656770","#7E8270","#979D70","#A7AE6F","#B7C06D","#C5CC81","#D2D794"]},{id:"figma-25",name:"Figma-25",colors:["#4B4B4B","#575757","#626262","#707070","#7E7E7E","#878787","#8F8F8F","#A5A5A5","#BABABA"]},{id:"figma-26",name:"Figma-26",colors:["#363636","#474747","#585858","#9C9C9C","#E0E0E0","#A5A5A5","#696969","#565656","#424242"]},{id:"figma-27",name:"Figma-27",colors:["#293B3B","#235959","#1D7575","#84A6A6","#ECD7D8","#D58A8A","#BD3C3D","#993333","#732829"]},{id:"figma-28",name:"Figma-28",colors:["#2B363B","#2B4559","#295477","#899BA6","#EAE2D5","#CBA886","#AC6F37","#8B5B2F","#694626"]},{id:"figma-29",name:"Figma-29",colors:["#2F2E3B","#353159","#3A3376","#908EA6","#E7E8D6","#BEC388","#949D3A","#788031","#5B6127"]},{id:"figma-30",name:"Figma-30",colors:["#283D3B","#21585A","#197278","#83A8A6","#EDDDD4","#D99185","#E9B5AF","#9E3A2E","#772E25"]},{id:"figma-31",name:"Figma-31",colors:["#BDBDBD","#9D9D9D","#7E7E7E","#6B6B6B","#585858","#5D5D5D","#606060","#626262","#707070","#7D7D7D"]},{id:"figma-32",name:"Figma-32",colors:["#FB5860","#F74046","#F2292C","#F23433","#F23E39","#B86E68","#9C867F","#7F9E96","#5FB4AE","#3DCAC5"]},{id:"figma-33",name:"Figma-33",colors:["#F3D321","#E7B019","#DC8C10","#D67039","#D05460","#A2529A","#8C51B8","#7550D5","#5F5FE3","#476CEF"]},{id:"figma-34",name:"Figma-34",colors:["#E6EB40","#D1DA2F","#BDC91E","#AEBE36","#9FB24D","#838F81","#757E9C","#666CB6","#5F5FC8","#5650DA"]},{id:"figma-35",name:"Figma-35",colors:["#FFBE0B","#FD8A09","#FB5607","#FD2B3B","#FF006E","#C11CAD","#A22ACD","#8338EC","#5F5FF6","#3A86FF"]},{id:"figma-36",name:"Figma-36",colors:["#6E6E6E","#555555","#3C3C3C","#333333","#2F2F2F","#2A2A2A","#4A4A4A","#686868","#888888","#A8A8A8"]},{id:"figma-37",name:"Figma-37",colors:["#EC5B57","#AD635D","#6C6B64","#526660","#45645D","#37615B","#3E8983","#44B0AB","#4BC8C4","#52DFDD"]},{id:"figma-38",name:"Figma-38",colors:["#05668D","#04738F","#028090","#019493","#00A896","#01B698","#02C39A","#79DBAC","#B5E7B5","#F0F3BD"]},{id:"figma-39",name:"Figma-39",colors:["#292281","#2D2586","#31278B","#382D93","#3F329B","#4437A1","#4A3BA6","#9D96BA","#C7C4C4","#F1F0CD"]},{id:"figma-40",name:"Figma-40",colors:["#164588","#184E8B","#19568E","#1B6393","#1E7098","#22799B","#25829F","#8ABAB1","#BED6BB","#F0F2C3"]},{id:"figma-41",name:"Figma-41",colors:["#097C7A","#098281","#088988","#089393","#089D9E","#0AA4A6","#0BABAD","#7DC0C2","#B7CACC","#F0D4D6"]},{id:"figma-42",name:"Figma-42",colors:["#4D4D4D","#555555","#5C5C5C","#676767","#737373","#7C7C7C","#848484","#B8B8B8","#D2D2D2","#EBEBEB"]},{id:"figma-43",name:"Figma-43",colors:["#16697A","#2F8498","#489FB5","#65B0C1","#9DCAD2","#B8D4D8","#EDE7E3","#F2D7B5","#F6C787","#FFA62B"]},{id:"figma-44",name:"Figma-44",colors:["#352E74","#4E4892","#6862AE","#817BBB","#ADAACF","#C2C0D6","#EAEBE4","#E7E9BF","#E4E79A","#DDE44F"]},{id:"figma-45",name:"Figma-45",colors:["#254D77","#3E6795","#5782B2","#7297BE","#A5BBD1","#BDCAD7","#EBE8E3","#EDDFB9","#EDD68F","#EEC33A"]},{id:"figma-46",name:"Figma-46",colors:["#1A7271","#338F8E","#4CABAA","#68B9B8","#9FCECE","#B9D6D6","#ECE4E4","#F0C3C5","#F3A2A5","#FA6065"]},{id:"figma-47",name:"Figma-47",colors:["#525252","#6C6C6C","#878787","#9B9B9B","#BDBDBD","#CCCCCC","#E8E8E8","#DBDBDB","#CDCDCD","#B2B2B2"]}],PV="/assets/webicon-ajYrwN-u.png",LV="/assets/%E6%98%9F%E7%A8%8B%E6%A1%91%E5%9F%BA%E5%9B%BE-B-SY2I_4.svg",OV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='36'%20height='36'%20fill='none'%20viewBox='0%200%2036%2036'%3e%3cpath%20fill='%23FCFCFC'%20d='M22.774%2013.238a6.734%206.734%200%201%201-4.77-1.98%206.702%206.702%200%200%201%204.77%201.98Z'/%3e%3cpath%20fill='%2300E8CF'%20d='M18.005%206.76v4.498a6.703%206.703%200%200%200-4.769%201.98L10.05%2010.05a11.238%2011.238%200%200%201%207.955-3.292Z'/%3e%3cpath%20fill='%2370FFEF'%20d='M18.005.761V6.76a11.239%2011.239%200%200%200-7.955%203.292L5.813%205.815A17.162%2017.162%200%200%201%2018.005.76Z'/%3e%3cpath%20fill='%230064B5'%20d='m10.05%2010.051%203.186%203.187a6.702%206.702%200%200%200-1.98%204.768H6.759a11.239%2011.239%200%200%201%203.292-7.955Z'/%3e%3cpath%20fill='%230091FF'%20d='M10.05%2010.051a11.238%2011.238%200%200%200-3.292%207.955H.76A17.162%2017.162%200%200%201%205.813%205.815l4.237%204.236Z'/%3e%3cpath%20fill='%2331C4FF'%20d='M11.257%2018.006a6.7%206.7%200%200%200%201.98%204.769l-3.187%203.187a11.24%2011.24%200%200%201-3.292-7.956h4.499Z'/%3e%3cpath%20fill='%239EEBFF'%20d='M6.758%2018.006a11.24%2011.24%200%200%200%203.292%207.956l-4.237%204.236A17.162%2017.162%200%200%201%20.76%2018.006h5.998Z'/%3e%3cpath%20fill='%235F4A9E'%20d='M18.005%2024.754v4.5a11.239%2011.239%200%200%201-7.955-3.292l3.186-3.187a6.702%206.702%200%200%200%204.769%201.98Z'/%3e%3cpath%20fill='%239D87E0'%20d='M10.05%2025.962a11.24%2011.24%200%200%200%207.955%203.291v5.998a17.16%2017.16%200%200%201-12.192-5.053l4.237-4.236Z'/%3e%3cpath%20fill='%23FF468C'%20d='M25.96%2025.962a11.241%2011.241%200%200%201-7.955%203.291v-4.499a6.7%206.7%200%200%200%204.769-1.98l3.186%203.188Z'/%3e%3cpath%20fill='%23FFA1C8'%20d='m25.96%2025.962%204.236%204.236a17.162%2017.162%200%200%201-12.191%205.053v-5.998a11.239%2011.239%200%200%200%207.955-3.291Z'/%3e%3cpath%20fill='%23F03049'%20d='M24.753%2018.006h4.499a11.241%2011.241%200%200%201-3.292%207.956l-3.186-3.187a6.7%206.7%200%200%200%201.979-4.769Z'/%3e%3cpath%20fill='%23FF636E'%20d='M29.252%2018.006h5.998a17.163%2017.163%200%200%201-5.053%2012.192l-4.237-4.236a11.241%2011.241%200%200%200%203.292-7.956Z'/%3e%3cpath%20fill='%23FE8205'%20d='M25.96%2010.051a11.24%2011.24%200%200%201%203.292%207.955h-4.499a6.701%206.701%200%200%200-1.98-4.768l3.187-3.187Z'/%3e%3cpath%20fill='%23FFA426'%20d='M35.25%2018.006h-5.998a11.24%2011.24%200%200%200-3.292-7.955l4.236-4.236a17.163%2017.163%200%200%201%205.054%2012.191Z'/%3e%3cpath%20fill='%23FFC247'%20d='m25.96%2010.051-3.186%203.187a6.702%206.702%200%200%200-4.77-1.98V6.76a11.24%2011.24%200%200%201%207.956%203.292Z'/%3e%3cpath%20fill='%23FFFD78'%20d='M30.197%205.815%2025.96%2010.05a11.24%2011.24%200%200%200-7.955-3.292V.761a17.162%2017.162%200%200%201%2012.192%205.054Z'/%3e%3cpath%20fill='%23000'%20d='m32.863%2010.832%201.35-.653a19.376%2019.376%200%200%200-.854-1.56L32.08%209.4c.286.467.546.948.783%201.432Z'/%3e%3cpath%20fill='%23000'%20d='m34.88%2011.743-1.406.525c.589%201.601.924%203.284.993%204.988H29.97a11.883%2011.883%200%200%200-2.967-7.186l3.186-3.185c.317.347.62.707.905%201.08l1.19-.914a17.995%2017.995%200%200%200-29.629%2020.35l1.277-.786a16.459%2016.459%200%200%201-2.405-7.859H6.03a11.882%2011.882%200%200%200%202.985%207.18l-3.188%203.187a16.61%2016.61%200%200%201-.91-1.075l-1.19.914A18%2018%200%200%200%2034.88%2011.744ZM5.822%206.883l3.185%203.187a11.883%2011.883%200%200%200-2.965%207.186H1.543a16.345%2016.345%200%200%201%204.28-10.372Zm16.424%2015.365a5.998%205.998%200%201%201%201.757-4.242%205.96%205.96%200%200%201-1.757%204.242ZM12.2%2013.26a7.424%207.424%200%200%200-1.652%203.995H7.545a10.39%2010.39%200%200%201%202.533-6.116l2.121%202.12Zm10.55-1.06a7.423%207.423%200%200%200-3.995-1.651V7.546a10.39%2010.39%200%200%201%206.117%202.533L22.75%2012.2Zm-5.495-1.655a7.422%207.422%200%200%200-3.993%201.658l-2.124-2.123a10.39%2010.39%200%200%201%206.117-2.534v3Zm-6.711%208.211A7.423%207.423%200%200%200%2012.2%2022.75l-2.123%202.124a10.39%2010.39%200%200%201-2.533-6.117h2.999Zm2.715%205.057a7.423%207.423%200%200%200%203.996%201.65v3.004a10.39%2010.39%200%200%201-6.117-2.534l2.121-2.12Zm5.496%201.654a7.423%207.423%200%200%200%203.993-1.657l2.123%202.123a10.39%2010.39%200%200%201-6.116%202.534v-3Zm7.177-.594-2.121-2.121a7.423%207.423%200%200%200%201.651-3.996h3.003a10.39%2010.39%200%200%201-2.533%206.117Zm2.533-7.617h-2.999a7.423%207.423%200%200%200-1.658-3.993l2.124-2.123a10.39%2010.39%200%200%201%202.533%206.116Zm-9.71-15.729a16.358%2016.358%200%200%201%2010.36%204.31l-3.181%203.18a11.89%2011.89%200%200%200-7.18-2.985V1.527Zm-1.5.018v4.5a11.89%2011.89%200%200%200-7.187%202.964L6.882%205.824a16.345%2016.345%200%200%201%2010.373-4.279Zm-7.187%2025.459a11.89%2011.89%200%200%200%207.187%202.965v4.499a16.354%2016.354%200%200%201-10.373-4.28l3.186-3.184Zm8.687%207.481V29.98a11.898%2011.898%200%200%200%207.186-2.976l3.186%203.186a16.37%2016.37%200%200%201-10.372%204.295Zm11.42-5.37-3.18-3.18a11.882%2011.882%200%200%200%202.983-7.179h4.506a16.352%2016.352%200%200%201-4.31%2010.36Z'/%3e%3c/svg%3e",BV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='40'%20height='31'%20fill='none'%20viewBox='0%200%2040%2031'%3e%3cpath%20fill='%232420A8'%20d='M40%2024.68a5.17%205.17%200%200%201-.34%201.88%205.179%205.179%200%200%201-.96%201.58c-.413.467-.893.86-1.44%201.18-.547.32-1.14.533-1.78.64l.04.04H8.12c-.133.027-.347.04-.64.04-1.04%200-2.013-.2-2.92-.6-.907-.4-1.7-.94-2.38-1.62a7.48%207.48%200%200%201-1.6-2.38A7.365%207.365%200%200%201%200%2022.52c0-1.04.193-2.013.58-2.92a7.48%207.48%200%200%201%201.6-2.38%207.763%207.763%200%200%201%202.38-1.62c.907-.4%201.88-.6%202.92-.6h.04a4.85%204.85%200%200%201-.04-.6v-.64c0-1.893.36-3.68%201.08-5.36.72-1.68%201.707-3.14%202.96-4.38a14.132%2014.132%200%200%201%204.38-2.94C17.567.36%2019.347%200%2021.24%200c1.893%200%203.68.36%205.36%201.08%201.68.72%203.147%201.7%204.4%202.94%201.253%201.24%202.24%202.7%202.96%204.38.72%201.68%201.08%203.467%201.08%205.36%200%20.987-.107%201.953-.32%202.9a14.878%2014.878%200%200%201-.88%202.7%204.66%204.66%200%200%201%20.84-.08c.72%200%201.407.14%202.06.42.653.28%201.22.667%201.7%201.16.48.493.86%201.067%201.14%201.72.28.653.42%201.353.42%202.1Zm-14-4.76c.533%200%20.88-.06%201.04-.18.16-.12.053-.407-.32-.86-.373-.48-.787-1.107-1.24-1.88-.453-.773-.927-1.56-1.42-2.36-.493-.8-.993-1.547-1.5-2.24-.507-.693-1-1.2-1.48-1.52-.48-.347-.833-.533-1.06-.56-.227-.027-.553.133-.98.48-.48.4-.947.907-1.4%201.52a54.547%2054.547%200%200%200-1.38%201.96c-.467.693-.933%201.373-1.4%202.04a15.38%2015.38%200%200%201-1.42%201.76c-.48.48-.653.907-.52%201.28s.467.56%201%20.56h.64c.24%200%20.5.007.78.02.28.013.553.02.82.02h.68c.373.027.613.153.72.38.107.227.16.54.16.94%200%20.453-.007.853-.02%201.2-.013.347-.02.68-.02%201%200%20.32-.007.653-.02%201-.013.347-.02.747-.02%201.2%200%20.187.02.387.06.6.04.213.113.413.22.6s.267.34.48.46c.213.12.493.18.84.18h.92c.24%200%20.6.013%201.08.04.64%200%201.007-.16%201.1-.48.093-.32.14-.827.14-1.52%200-.613.007-1.167.02-1.66.013-.493.02-1.167.02-2.02%200-.613.06-1.087.18-1.42.12-.333.38-.5.78-.5.293%200%20.713-.007%201.26-.02.547-.013.967-.02%201.26-.02Z'/%3e%3c/svg%3e",NV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='42'%20fill='none'%20viewBox='0%200%2018%2042'%3e%3cpath%20fill='%2300E8CF'%20d='M12.723%205.08H3.775v.442c0%20.513.14.917.42%201.212.263.28.652.42%201.164.42h7.2c.56%200%20.987-.125%201.282-.373.264-.233.42-.59.466-1.072l.07-.955a.771.771%200%200%201%20.268-.56.882.882%200%200%201%20.594-.21.794.794%200%200%201%20.571.28.81.81%200%200%201%20.198.606l-.07.955c-.078.948-.42%201.678-1.025%202.19-.606.529-1.39.793-2.354.793h-7.2c-.947%200-1.732-.303-2.353-.909-.606-.606-.909-1.398-.909-2.377V.816c0-.218.082-.408.245-.571A.809.809%200%200%201%202.936%200h9.787c.217%200%20.411.082.582.245a.764.764%200%200%201%20.256.57v3.45a.754.754%200%200%201-.256.582.842.842%200%200%201-.582.233ZM.839%2011.068h10.043v-.979a.78.78%200%200%201%20.244-.57.809.809%200%200%201%20.595-.245c.217%200%20.407.082.57.245a.782.782%200%200%201%20.245.57v.98h3.659c.217%200%20.407.08.57.244a.782.782%200%200%201%20.245.57.808.808%200%200%201-.245.595.782.782%200%200%201-.57.245h-3.659v7.572a.809.809%200%200%201-.245.595.782.782%200%200%201-.57.244.81.81%200%200%201-.595-.244.809.809%200%200%201-.244-.595v-7.572H.839a.809.809%200%200%201-.594-.245.809.809%200%200%201-.245-.594c0-.218.082-.408.245-.571a.809.809%200%200%201%20.594-.245Zm11.045-9.414h-8.11V3.45h8.11V1.654ZM6.198%2014.866v2.866a.809.809%200%200%201-.245.595.782.782%200%200%201-.57.244.809.809%200%200%201-.595-.244.809.809%200%200%201-.244-.595v-2.866a.81.81%200%200%201%20.244-.594.809.809%200%200%201%20.595-.245c.217%200%20.407.082.57.245a.81.81%200%200%201%20.245.594ZM1.266%2041.161v-7.456c0-.233.081-.431.244-.594a.809.809%200%200%201%20.595-.245c.233%200%20.427.081.582.245a.83.83%200%200%201%20.233.594v6.64h4.66v-9.6H2.99a.83.83%200%200%201-.594-.233.771.771%200%200%201-.245-.582v-6.268c0-.218.082-.408.245-.571a.809.809%200%200%201%20.594-.245c.218%200%20.408.082.571.245a.782.782%200%200%201%20.245.57v5.453H7.58v-7.2a.81.81%200%200%201%20.245-.594.809.809%200%200%201%20.594-.245c.218%200%20.408.082.571.245a.809.809%200%200%201%20.245.594v7.2h3.775v-5.569a.78.78%200%200%201%20.244-.57.809.809%200%200%201%20.595-.245.78.78%200%200%201%20.57.244.782.782%200%200%201%20.245.571v6.385a.771.771%200%200%201-.245.582.801.801%200%200%201-.57.233H9.235v9.6h4.66v-6.757a.81.81%200%200%201%20.245-.594.782.782%200%200%201%20.57-.245.81.81%200%200%201%20.595.245.81.81%200%200%201%20.245.594v7.573a.809.809%200%200%201-.245.594.81.81%200%200%201-.594.245H2.105a.809.809%200%200%201-.595-.245.809.809%200%200%201-.244-.594Z'/%3e%3c/svg%3e",UV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='48'%20height='48'%20fill='none'%20viewBox='0%200%2048%2048'%3e%3ccircle%20cx='24'%20cy='24'%20r='24'%20fill='%238552A1'%20opacity='.2'/%3e%3ccircle%20cx='24'%20cy='24'%20r='18'%20fill='%238552A1'/%3e%3cpath%20fill='%23F3EDF7'%20d='M12.062%2018.99H17.4v1.942h-4.425c-.51%200-.834.025-.97.074-.287.1-.43.343-.43.728%200%20.324.137.573.41.747.15.1.555.15%201.214.15h1.475c.946%200%201.692.199%202.24.597.61.448.915%201.107.915%201.979%200%20.66-.187%201.263-.56%201.81-.274.436-.607.722-.999.86-.392.136-1.048.204-1.97.204H9.13V26.14h4.461c.548%200%20.921-.006%201.12-.019.448-.05.672-.305.672-.765%200-.373-.149-.629-.448-.765-.149-.075-.51-.112-1.082-.112h-1.512c-.598%200-1.055-.038-1.373-.112a2.451%202.451%200%200%201-.886-.411%202.399%202.399%200%200%201-.794-.98A3.14%203.14%200%200%201%209%2021.64c0-.908.33-1.63.99-2.165.398-.324%201.088-.486%202.072-.486Zm9.325%200%202.314%206.254%202.54-6.254h2.65l-3.92%209.091h-2.688l-3.622-9.09h2.726Zm12.946%200H39v9.036c0%20.51-.06.964-.177%201.362-.118.398-.29.734-.514%201.008a2.196%202.196%200%200%201-1.036.719c-.404.13-.992.196-1.764.196h-4.984V29.37h4.648c.548%200%20.905-.084%201.073-.252.168-.168.252-.514.252-1.037h-2.296c-.734%200-1.34-.077-1.82-.233a3.438%203.438%200%200%201-1.297-.774c-.909-.86-1.363-2.042-1.363-3.547%200-1.718.554-2.969%201.662-3.753a3.86%203.86%200%200%201%201.26-.606c.442-.119%201.005-.178%201.69-.178Zm2.166%207.15v-5.208h-2.073c-1.443%200-2.165.871-2.165%202.613%200%20.847.196%201.49.588%201.932.392.442.961.663%201.708.663h1.941Z'/%3e%3c/svg%3e",HV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='48'%20height='48'%20fill='none'%20viewBox='0%200%2048%2048'%3e%3ccircle%20cx='24'%20cy='24'%20r='24'%20fill='%232420A8'%20opacity='.2'/%3e%3ccircle%20cx='24'%20cy='24'%20r='18'%20fill='%232420A8'/%3e%3cpath%20fill='%23F3EDF7'%20d='M9%2031.301v-12.3h4.296c.833%200%201.463.051%201.891.155.429.104.839.31%201.23.615%201.065.832%201.598%202.112%201.598%203.837%200%201.31-.392%202.369-1.175%203.177a3.537%203.537%200%200%201-1.35.88c-.508.184-1.129.276-1.863.276H11.46v3.36H9Zm4.131-10.391h-1.67v5.122h1.505c.795%200%201.377-.172%201.744-.514.514-.453.771-1.15.771-2.093%200-.808-.202-1.43-.606-1.864-.404-.434-.985-.651-1.744-.651Zm6.683%207.031v-8.94h4.737c.71%200%201.251.051%201.625.155.373.104.713.29%201.019.56.624.575.936%201.481.936%202.717v5.508h-2.46v-5.783c0-.44-.098-.759-.294-.955-.196-.196-.52-.293-.973-.293h-2.13v7.031h-2.46ZM34.41%2019H39v8.886c0%20.502-.058.949-.174%201.34a2.807%202.807%200%200%201-.505.992%202.161%202.161%200%200%201-1.02.707c-.397.128-.975.193-1.734.193h-4.902v-1.91h4.571c.539%200%20.89-.082%201.056-.248.165-.165.248-.505.248-1.019h-2.258c-.723%200-1.32-.076-1.79-.23a3.381%203.381%200%200%201-1.277-.761c-.893-.845-1.34-2.008-1.34-3.488%200-1.69.545-2.92%201.634-3.69a3.806%203.806%200%200%201%201.24-.598c.434-.116.988-.174%201.661-.174Zm2.13%207.032V20.91h-2.038c-1.42%200-2.13.856-2.13%202.57%200%20.832.193%201.466.578%201.9.386.435.946.652%201.68.652h1.91Z'/%3e%3c/svg%3e",VV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='19'%20height='19'%20fill='none'%20viewBox='0%200%2019%2019'%3e%3cpath%20fill='%23FF7B15'%20d='M2.499%2015.435a2.105%202.105%200%200%201-2.105-2.104V6.314a2.105%202.105%200%200%201%204.21%200v7.017a2.105%202.105%200%200%201-2.105%202.104Zm6.548%200a2.105%202.105%200%200%201-2.105-2.104V2.104a2.105%202.105%200%200%201%204.21%200V13.33a2.105%202.105%200%200%201-2.105%202.104Zm6.548%200a2.105%202.105%200%200%201-2.105-2.104v-2.807a2.105%202.105%200%201%201%204.21%200v2.807a2.105%202.105%200%200%201-2.105%202.104Zm2.105%202.616H.394a.394.394%200%200%201%200-.788H17.7a.394.394%200%200%201%200%20.788Z'/%3e%3c/svg%3e",U_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='18'%20fill='none'%20viewBox='0%200%2018%2018'%3e%3cpath%20fill='%23F9D11F'%20d='M11.327%2018.005H2.1a2.043%202.043%200%200%201-1.485-.651A2.291%202.291%200%200%201%200%2015.78V2.224C0%201.634.221%201.068.615.65A2.043%202.043%200%200%201%202.1%200h9.227a2%202%200%200%201%20.803.17c.255.111.487.275.682.481.195.207.35.452.455.722.106.27.16.559.16.85v13.558c0%20.292-.054.581-.16.851-.105.27-.26.515-.455.721a2.1%202.1%200%200%201-.681.482%202%202%200%200%201-.804.17Z'/%3e%3cpath%20fill='%234C86C6'%20d='m12.187%2014.972%205.097-5.396A2.776%202.776%200%200%200%2018%207.682a2.772%202.772%200%200%200-.745-1.88%202.473%202.473%200%200%200-1.777-.788%202.469%202.469%200%200%200-1.788.758l-5.096%205.396v3.804h3.593Z'/%3e%3cpath%20fill='%23fff'%20d='M2.506%2014.971h6.087v-1.705H2.506v1.705Zm0-10.801h8.415V2.464H2.506V4.17Zm2.328%202.842h3.938V5.306H4.834v1.706Z'/%3e%3cpath%20fill='%231565B2'%20d='m8.594%2011.168-.001%203.803%203.594.001%201.24-1.313V6.051l-4.833%205.117Z'/%3e%3c/svg%3e",H_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='18'%20fill='none'%20viewBox='0%200%2018%2018'%3e%3cg%20clip-path='url(%23a)'%3e%3cpath%20fill='%238552A1'%20d='M9%200a9%209%200%200%200-9%209%209%209%200%200%200%209%209%209%209%200%200%200%209-9%209%209%200%200%200-9-9Zm5.934%206.21L8.16%2012.988a.843.843%200%200%201-.599.247.844.844%200%200%201-.6-.247L3.066%209.09a.846.846%200%201%201%201.198-1.197L7.56%2011.19l6.177-6.177a.847.847%200%201%201%201.197%201.198Z'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='a'%3e%3cpath%20fill='%23fff'%20d='M0%200h18v18H0z'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",V_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='12'%20fill='none'%20viewBox='0%200%2012%2012'%3e%3crect%20width='9.917'%20height='9.917'%20x='.875'%20y='.875'%20stroke='%23C9CDD4'%20stroke-width='.583'%20rx='4.958'/%3e%3c/svg%3e",z_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20fill='none'%20viewBox='0%200%2020%2020'%3e%3cpath%20fill='%238552A1'%20d='M15.5%200h-11A4.5%204.5%200%200%200%200%204.5v11A4.5%204.5%200%200%200%204.5%2020h11a4.5%204.5%200%200%200%204.5-4.5v-11A4.5%204.5%200%200%200%2015.5%200Zm1.394%206.902-7.445%207.444-.03.028-.033.028-.037.028-.035.025-.039.024-.036.021-.042.02-.037.018-.044.016-.037.014-.045.01-.038.01-.047.007H8.74l-.048-.006h-.035l-.05-.011-.033-.01-.049-.015-.032-.012-.048-.022-.031-.015-.047-.028-.03-.016c-.017-.011-.033-.024-.05-.036l-.022-.016a.887.887%200%200%201-.067-.06l-3.949-3.95a.883.883%200%200%201%20.01-1.26.904.904%200%200%201%201.261.033l3.304%203.303%206.82-6.82a.884.884%200%201%201%201.25%201.25l-.001-.002Z'/%3e%3cpath%20fill='%23fff'%20d='m15.645%205.654-6.82%206.82L5.523%209.17a.904.904%200%200%200-1.263-.03.883.883%200%200%200-.011%201.259l3.95%203.948a.866.866%200%200%200%20.068.06l.022.016a.711.711%200%200%200%20.05.037l.029.016.047.027.031.015.048.023.033.011.048.017.034.008.049.011h.035l.048.007h.208l.048-.008.037-.008.045-.012.037-.014.044-.016.038-.017.041-.02.036-.022.039-.023.035-.025.037-.028.033-.028.03-.028%207.444-7.444a.886.886%200%200%200%200-1.25.885.885%200%200%200-1.25%200l.001.003Z'/%3e%3c/svg%3e",W_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20fill='none'%20viewBox='0%200%2020%2020'%3e%3crect%20x='1'%20y='1'%20width='18'%20height='18'%20rx='4'%20stroke='%238552A1'%20stroke-width='2'/%3e%3c/svg%3e",dd="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='15'%20height='15'%20fill='none'%20viewBox='0%200%2015%2015'%3e%3cpath%20fill='%23000'%20d='M7.5%200a7.5%207.5%200%200%200%200%2015%207.5%207.5%200%200%200%200-15Zm4.242%206.567L8.03%2010.28a.751.751%200%200%201-1.062%200l-3.71-3.713A.751.751%200%200%201%204.32%205.505L7.5%208.688l3.183-3.18a.75.75%200%201%201%201.06%201.06Z'/%3e%3c/svg%3e",vd="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='15'%20height='15'%20fill='none'%20viewBox='0%200%2015%2015'%3e%3cpath%20fill='%23000'%20d='M15%207.5a7.5%207.5%200%201%201-15%200%207.5%207.5%200%200%201%2015%200Z'/%3e%3cpath%20fill='%23fff'%20d='M3%207.75A.75.75%200%200%201%203.75%207h7.5a.75.75%200%200%201%200%201.5h-7.5A.75.75%200%200%201%203%207.75Z'/%3e%3c/svg%3e",G_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='23'%20fill='none'%20viewBox='0%200%2024%2023'%3e%3cpath%20fill='%238552A1'%20d='M.858%202.656V0H24v2.656H.858Zm9.919%207.034V7.034h13.202V9.69H10.777Zm.02%205.464v-2.656h13.165v2.656H10.794h.003ZM.91%2022.085v-2.656h23.015v2.656H.91ZM0%209.621l4.109-4.18%204.106%204.182H0V9.62Zm.045%203.601h8.208L4.15%2017.356.045%2013.222Z'/%3e%3c/svg%3e",$_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20fill='none'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23C9CDD4'%20d='M5.6%2018.4h12.8V5.6H5.6v12.8ZM24%2020.8a3.2%203.2%200%200%201-2.874%203.184L20.8%2024H3.2l-.326-.016a3.2%203.2%200%200%201-2.856-2.858L0%2020.8V3.2A3.2%203.2%200%200%201%203.2%200h17.6A3.2%203.2%200%200%201%2024%203.2v17.6Z'/%3e%3cpath%20fill='%238552A1'%20d='M17.4%2021.6a1.2%201.2%200%201%201%200%202.4H6.6a1.2%201.2%200%201%201%200-2.4h10.8ZM0%2017.4V6.6a1.2%201.2%200%201%201%202.4%200v10.8a1.2%201.2%200%201%201-2.4%200Zm21.6%200V6.6a1.2%201.2%200%201%201%202.4%200v10.8a1.2%201.2%200%201%201-2.4%200ZM17.4%200a1.2%201.2%200%201%201%200%202.4H6.6a1.2%201.2%200%200%201%200-2.4h10.8Z'/%3e%3c/svg%3e",zV="/assets/sankeyview-4v1IjNp4.svg",WV="/assets/information-D2vc0JhH.svg",GV="/assets/select-B3ZlOGIm.svg",X_="/assets/weixin-BLJIkz8T.svg",$V={class:"page"},XV={class:"top-bar"},YV={class:"brand"},KV=["src"],ZV=["src"],jV={class:"toolbar"},qV=["src"],JV={class:"theme-wheel-wrap"},QV=["onClick"],ez=["src"],tz={class:"tool-item"},rz=["src"],az=["onKeydown"],nz={class:"upload-text"},iz={class:"export-box"},sz=["src"],oz=["src"],fz=["src"],lz=["src"],uz=["src"],cz={class:"content"},hz={class:"left-pane"},dz={class:"panel block-panel select-panel"},vz=["src"],pz={class:"field-block"},gz=["src","alt"],mz={key:0,class:"column-list"},xz=["src"],_z={class:"column-label"},yz=["onClick"],wz=["src"],Tz={class:"field-block"},Sz=["src","alt"],Ez={key:0,class:"column-list"},Cz=["src"],Az={class:"column-label"},Dz=["onClick"],kz=["src"],bz={class:"field-block"},Fz=["src","alt"],Iz={key:0,class:"column-list"},Mz=["src"],Rz={class:"column-label"},Pz=["onClick"],Lz=["src"],Oz={class:"panel info-panel"},Bz=["src"],Nz={key:0,class:"info-log-list"},Uz={key:1,class:"info-log-empty"},Hz={class:"panel preview-panel"},Vz={class:"preview-head"},zz=["src"],Wz={class:"preview-controls"},Gz={class:"compact-control"},$z=["src"],Xz=["value"],Yz={class:"compact-control"},Kz=["src"],Zz=["value"],jz={class:"slider-label desktop-only"},qz=["src"],Jz={class:"slider-track-wrap"},Qz={class:"slider-label desktop-only"},eW=["src"],tW={class:"slider-track-wrap"},rW={key:2,class:"compact-control mobile-only"},aW=["value"],nW={class:"direction-switch-text"},iW={class:"label-position-control"},sW=["value"],oW={class:"target-align-control"},fW=["value"],pd="sankey-workspace-v1",Y_=1,K_=42,Z_=8,j_=8,lW=sC({__name:"App",setup(e){Kp([WM,RR,xP,dP]);const t=RV,r=mt("figma-violet"),a=mt(!1),n=mt(!1),i=mt("点击上传或将csv/xls文件拖到这里上传"),s=mt(""),o=mt(""),f=mt(null),l=mt(0),u=mt(null),c=mt(null),h=mt(null),d=mt(null),v=mt(null),p=mt(null);let g=null,m=0,x=null;const _=mt({}),y=mt(null),F=mt(null),k=mt(null),E=mt(!1),C=mt(!1),T=mt(!1),b=zf({sourceDataColumn:null,sourceDescriptionColumns:[],targetDescriptionColumns:[],delimiter:"-"}),M=mt("source-to-target"),R=mt(5),B=mt(24),G=mt("inner"),re=[{value:"inner",label:"内"},{value:"outer",label:"外"},{value:"left",label:"左"},{value:"right",label:"右"}],j=mt("between"),q=[{value:"between",label:"两端"},{value:"middle",label:"中间"},{value:"top",label:"顶部"},{value:"bottom",label:"底部"}],ve=[{value:"source-to-target",label:"源"},{value:"target-to-source",label:"目标"}],U=[0,5,10,15,20,25,30],xe=[0,10,20,30,40,50,60,70,80],se=zf({sourceData:!0,sourceDesc:!0,targetDesc:!0}),P=Jr(()=>{const S=t.findIndex(A=>A.id===r.value);return S>=0?S:0}),V=Jr(()=>t[P.value]??t[0]),H=Jr(()=>{const S=y.value?.headers??[];return S.length>0?S.map((A,D)=>A||`列${D+1}`):["列1","列2","列3","列4"]}),z=Jr(()=>F.value?.meta.warnings.slice(0,8)??[]),ae=Jr(()=>b.sourceDataColumn===null?"未选择":H.value[b.sourceDataColumn]??`列${b.sourceDataColumn+1}`),pe=Jr(()=>b.sourceDescriptionColumns.length===0?"未选择":b.sourceDescriptionColumns.map(S=>H.value[S]??`列${S+1}`).join(",")),le=Jr(()=>b.targetDescriptionColumns.length===0?"未选择":b.targetDescriptionColumns.map(S=>H.value[S]??`列${S+1}`).join(",")),ie=Jr(()=>{const S=[],A=y.value,D=F.value;return A?S.push({level:"info",text:`解析信息: 已加载 ${A.rows.length} 行,${A.headers.length} 列`}):S.push({level:"info",text:"解析信息: 尚未加载数据文件"}),D&&(S.push({level:"info",text:`解析信息: 已生成 ${D.nodes.length} 个节点,${D.links.length} 条连线`}),D.meta.droppedRows>0&&S.push({level:"warn",text:`告警: 已跳过 ${D.meta.droppedRows} 行异常数据`})),S.push({level:"info",text:`日志: 源数据列=${ae.value}`}),S.push({level:"info",text:`日志: 源标签列=${pe.value}`}),S.push({level:"info",text:`日志: 目标标签列=${le.value}`}),z.value.forEach(I=>{S.push({level:"warn",text:`告警: ${I}`})}),s.value&&S.push({level:"error",text:`错误: ${s.value}`}),o.value&&S.push({level:"error",text:`错误: ${o.value}`}),S});function ne(S,A,D){const I=S===0&&A>0,L=A===0&&S>0;if(!(!I&&!L))return D==="left"?"left":D==="right"?"right":D==="inner"?I?"right":"left":I?"left":"right"}function ue(S){const A=new Map,D=Math.max(0,l.value-B.value*2-Z_-j_);if(D<=0||S.length===0)return A;const I=new Map,L=new Map,O=new Map,Z=new Map,fe=[],te=new Set;S.forEach(et=>{L.set(et.source,(L.get(et.source)??0)+1),I.set(et.target,(I.get(et.target)??0)+1),O.set(et.source,(O.get(et.source)??0)+et.value),Z.set(et.target,(Z.get(et.target)??0)+et.value),te.has(et.source)||(te.add(et.source),fe.push(et.source)),te.has(et.target)||(te.add(et.target),fe.push(et.target))});const ee=fe.filter(et=>{const dr=I.get(et)??0,Ss=L.get(et)??0;return dr===0&&Ss>0}),Q=fe.filter(et=>{const dr=I.get(et)??0;return(L.get(et)??0)===0&&dr>0});if(ee.length===0||Q.length===0)return A;const ge=ee.reduce((et,dr)=>et+(O.get(dr)??0),0);if(ge<=0)return A;const Te=Math.max(0,R.value),Ce=Math.max(0,ee.length-1),_e=Math.max(0,D-Te*Ce),Ee=ge>0?_e/ge:0,Oe=ge*Ee,ht=Oe+Te*Ce;let lt=Te;j.value==="between"&&Q.length>1&&(lt=(ht-Oe)/(Q.length-1)),lt=Math.max(0,lt);const Ut=Oe+lt*Math.max(0,Q.length-1);let va=0;j.value==="middle"?va=(ht-Ut)/2:j.value==="bottom"&&(va=ht-Ut),va=Math.max(0,va);let an=va;return Q.forEach((et,dr)=>{A.set(et,an/D),an+=(Z.get(et)??0)*Ee,dr{const S=N.value,A=new Set,D=new Map,I=new Map,L=ue(S);S.forEach(Z=>{A.add(Z.source),A.add(Z.target),I.set(Z.source,(I.get(Z.source)??0)+1),D.set(Z.target,(D.get(Z.target)??0)+1)});const O=V.value.colors;return Array.from(A).map((Z,fe)=>{const te=D.get(Z)??0,ee=I.get(Z)??0,Q=ne(te,ee,G.value);return{name:Z,itemStyle:{color:O[fe%O.length]},localY:L.get(Z),label:Q?{position:Q}:void 0}})}),N=Jr(()=>F.value?MV(F.value.links,M.value):[]),W=Jr(()=>({backgroundColor:"#f7f8fa",tooltip:{trigger:"item"},series:[{type:"sankey",left:B.value,top:B.value+Z_,right:B.value,bottom:B.value+j_,nodeAlign:"justify",nodeGap:R.value,nodeWidth:14,roam:!0,label:{color:"#4e5969",fontSize:12},lineStyle:{color:"source",curveness:.45,opacity:.45},data:w.value,links:N.value}]}));tC(()=>{const S=y.value;if(!S){F.value=null,o.value="";return}if(b.sourceDataColumn===null){F.value=null,o.value="请选择源数据列";return}if(b.targetDescriptionColumns.length===0){F.value=null,o.value="请至少选择一个目标描述列";return}try{F.value=IV(S,{sourceDataColumn:b.sourceDataColumn,sourceDescriptionColumns:[...b.sourceDescriptionColumns],targetDescriptionColumns:[...b.targetDescriptionColumns],delimiter:b.delimiter}),o.value=""}catch(A){F.value=null,o.value=A instanceof Error?A.message:"构建桑基图失败"}}),pf(W,()=>{g&&g.setOption(W.value,!0)},{deep:!0}),pf(()=>[b.sourceDataColumn,b.sourceDescriptionColumns.join(","),b.targetDescriptionColumns.join(","),b.delimiter,M.value,R.value,B.value,r.value,G.value,j.value,se.sourceData,se.sourceDesc,se.targetDesc,k.value?.name??"",k.value?.base64.length??0],()=>{E.value||Ol()});function J(){K(),Y(),l.value=f.value?.clientHeight??l.value,g?.resize()}function K(){if(typeof window>"u")return;const S=window.visualViewport?.height??window.innerHeight;document.documentElement.style.setProperty("--app-vh",`${S*.01}px`)}function Y(){typeof window>"u"||(C.value=window.matchMedia("(max-width: 640px)").matches,T.value=window.matchMedia("(max-width: 1024px)").matches)}function oe(){const S=f.value;!S||typeof ResizeObserver>"u"||(x?.disconnect(),x=new ResizeObserver(()=>{J()}),x.observe(S))}function ce(){a.value=!1}function de(){const S=!a.value;a.value=S,S&&Yv(()=>{ke(),De(P.value)})}function he(S){r.value=S,a.value=!1}function Ae(){n.value=!n.value}function ye(S){const A=S.target;if(A){if(a.value){const D=d.value,I=h.value;!D?.contains(A)&&!I?.contains(A)&&(a.value=!1)}if(n.value){const D=p.value,I=v.value;!D?.contains(A)&&!I?.contains(A)&&(n.value=!1)}}}function we(){m!==0&&cancelAnimationFrame(m),m=requestAnimationFrame(()=>{const S=c.value;if(!S)return;const A=Math.round(S.scrollTop/K_),D=Math.max(0,Math.min(t.length-1,A));r.value=t[D]?.id??r.value})}function De(S,A){const D=c.value;if(!D)return;const I=S*K_,L=Math.max(0,D.scrollHeight-D.clientHeight),O=Math.max(0,Math.min(L,I));D.scrollTo({top:O,behavior:"auto"})}function ke(){if(!a.value)return;const S=h.value,A=d.value;if(!S||!A)return;const D=S.getBoundingClientRect(),I=A.offsetWidth||292,L=window.innerWidth,O=8;let Z=D.left+D.width/2-I/2;Z=Math.max(O,Math.min(L-I-O,Z));const fe=D.bottom+8,te=D.left+D.width/2,ee=Math.max(20,Math.min(I-20,te-Z));_.value={left:`${Z}px`,top:`${fe}px`,"--theme-arrow-left":`${ee}px`}}function Pe(S){const A=Math.abs(S-P.value);return A===0?1:A===1?.75:A===2?.5:.3}function be(S,A,D){const I=Math.max(1,D-A),L=Math.max(0,Math.min(1,(S-A)/I)),Z=(.5-L)*18;return{left:`calc(${L*100}% + ${Z}px)`}}function rt(S,A,D){const I=Math.max(1,D-A);return{"--slider-percent":`${Math.max(0,Math.min(1,(S-A)/I))*100}%`}}function Fe(S){if(b.sourceDescriptionColumns.includes(S)){b.sourceDescriptionColumns=b.sourceDescriptionColumns.filter(A=>A!==S);return}b.sourceDescriptionColumns=[...b.sourceDescriptionColumns,S].sort((A,D)=>A-D)}function Ve(S){se[S]=!se[S]}function Ye(S){if(b.targetDescriptionColumns.includes(S)){b.targetDescriptionColumns=b.targetDescriptionColumns.filter(A=>A!==S);return}b.targetDescriptionColumns=[...b.targetDescriptionColumns,S].sort((A,D)=>A-D)}function Qe(){M.value=M.value==="source-to-target"?"target-to-source":"source-to-target"}function qt(){u.value?.click()}function Nt(S){return S.trim().toLowerCase().replace(/[\s_-]+/g,"")}function Jt(S,A){const D=new Set(A.map(I=>Nt(I)));return S.findIndex(I=>D.has(Nt(I)))}function _s(S){const A=S.replace(/,/g,"").trim();return A?!Number.isNaN(Number(A)):!1}function ci(S){return(S.rows[0]??[]).findIndex(D=>_s(D??""))}function ys(S){const A=S.headers,D=Jt(A,["data","value","数据","值"]),I=ci(S),L=Jt(A,["source","源"]),O=Jt(A,["target","目标"]);b.sourceDataColumn=D>=0?D:I>=0?I:null,b.sourceDescriptionColumns=L>=0?[L]:[],b.targetDescriptionColumns=O>=0?[O]:[]}function Do(S){b.sourceDataColumn=S.sourceDataColumn,b.sourceDescriptionColumns=[...S.sourceDescriptionColumns],b.targetDescriptionColumns=[...S.targetDescriptionColumns],b.delimiter=S.delimiter}function Pl(S,A){const D=S.toLowerCase();if(D.endsWith(".csv")){const I=new TextDecoder().decode(A);return DV(I)}if(D.endsWith(".xlsx")||D.endsWith(".xls"))return B_(A);throw new Error("仅支持 .csv / .xlsx / .xls 文件")}function Ec(S){const A=new Uint8Array(S),D=32768;let I="";for(let L=0;LMath.min(Math.max(ee,0),D-1),L=ee=>Array.isArray(ee)?ee.filter(Q=>Number.isInteger(Q)).map(Q=>I(Q)).filter((Q,ge,Te)=>Te.indexOf(Q)===ge).sort((Q,ge)=>Q-ge):[],O={sourceDataColumn:I(2),sourceDescriptionColumns:[I(0)].filter((ee,Q,ge)=>ge.indexOf(ee)===Q),targetDescriptionColumns:[I(2)].filter((ee,Q,ge)=>ge.indexOf(ee)===Q),delimiter:"-"};if(!S)return O;const Z=typeof S.sourceDataColumn=="number"&&Number.isInteger(S.sourceDataColumn)?I(S.sourceDataColumn):O.sourceDataColumn,fe=L(S.sourceDescriptionColumns),te=L(S.targetDescriptionColumns);return{sourceDataColumn:Z,sourceDescriptionColumns:fe,targetDescriptionColumns:te.length>0?te:O.targetDescriptionColumns,delimiter:typeof S.delimiter=="string"&&S.delimiter.length>0?S.delimiter:"-"}}function Ol(){if(typeof window>"u")return;const S={version:Y_,uploadedFile:k.value??void 0,mapping:{sourceDataColumn:b.sourceDataColumn,sourceDescriptionColumns:[...b.sourceDescriptionColumns],targetDescriptionColumns:[...b.targetDescriptionColumns],delimiter:b.delimiter},direction:M.value,nodeGap:R.value,chartPadding:B.value,selectedThemeId:r.value,labelPositionMode:G.value,targetAlignMode:j.value,sectionVisible:{sourceData:se.sourceData,sourceDesc:se.sourceDesc,targetDesc:se.targetDesc}};try{window.localStorage.setItem(pd,JSON.stringify(S))}catch(A){console.warn("工作区保存失败:",A)}}async function Ac(){if(typeof window>"u")return{restoredUploadedFile:!1};const S=window.localStorage.getItem(pd);if(!S)return{restoredUploadedFile:!1};E.value=!0;try{const A=JSON.parse(S);if(A.version!==Y_)return{restoredUploadedFile:!1};if((A.direction==="source-to-target"||A.direction==="target-to-source")&&(M.value=A.direction),typeof A.nodeGap=="number"&&Number.isFinite(A.nodeGap)&&(R.value=Math.max(0,Math.min(30,A.nodeGap))),typeof A.chartPadding=="number"&&Number.isFinite(A.chartPadding)&&(B.value=Math.max(0,Math.min(80,A.chartPadding))),typeof A.selectedThemeId=="string"&&t.some(L=>L.id===A.selectedThemeId)&&(r.value=A.selectedThemeId),(A.labelPositionMode==="inner"||A.labelPositionMode==="outer"||A.labelPositionMode==="left"||A.labelPositionMode==="right")&&(G.value=A.labelPositionMode),(A.targetAlignMode==="between"||A.targetAlignMode==="middle"||A.targetAlignMode==="top"||A.targetAlignMode==="bottom")&&(j.value=A.targetAlignMode),A.sectionVisible&&(typeof A.sectionVisible.sourceData=="boolean"&&(se.sourceData=A.sectionVisible.sourceData),typeof A.sectionVisible.sourceDesc=="boolean"&&(se.sourceDesc=A.sectionVisible.sourceDesc),typeof A.sectionVisible.targetDesc=="boolean"&&(se.targetDesc=A.sectionVisible.targetDesc)),!A.uploadedFile)return{restoredUploadedFile:!1,restoredMapping:A.mapping};const D=ws(A.uploadedFile.base64),I=Pl(A.uploadedFile.name,D);return y.value=I,k.value=A.uploadedFile,A.mapping?Do(Ll(A.mapping,I.headers.length)):ys(I),i.value=`已恢复: ${A.uploadedFile.name}(${I.rows.length} 行)`,s.value="",{restoredUploadedFile:!0}}catch(A){return window.localStorage.removeItem(pd),console.warn("工作区恢复失败,已清理坏数据:",A),{restoredUploadedFile:!1}}finally{E.value=!1}}async function Bl(S){s.value="";try{const A=await S.arrayBuffer(),D=Pl(S.name,A);y.value=D,ys(D),k.value=Cc(S.name,S.type,A),i.value=`已加载: ${S.name}(${D.rows.length} 行)`,Ol()}catch(A){s.value=A instanceof Error?A.message:"文件解析失败"}}async function Dc(S){const A=S.target,D=A.files?.[0];D&&(await Bl(D),A.value="")}async function kc(S){const A=S.dataTransfer?.files?.[0];A&&await Bl(A)}async function bc(){if(!y.value)try{const S=await fetch("/data/example0.xlsx",{cache:"no-store"});if(!S.ok)throw new Error(`示例文件加载失败: HTTP ${S.status}`);const A=await S.arrayBuffer(),D=B_(A);y.value=D,ys(D),k.value=null,i.value=`已加载: example0.xlsx(${D.rows.length} 行)`,s.value=""}catch(S){s.value=S instanceof Error?S.message:"示例文件加载失败"}}function Ts(){const S=new Date,A=D=>String(D).padStart(2,"0");return`${S.getFullYear()}${A(S.getMonth()+1)}${A(S.getDate())}_${A(S.getHours())}${A(S.getMinutes())}${A(S.getSeconds())}`}function Nl(S,A){const D=document.createElement("a");D.href=S,D.download=A,document.body.append(D),D.click(),D.remove()}function Fc(){if(!g)return;const S=g.getWidth(),A=g.getHeight(),D=document.createElement("div");D.style.position="fixed",D.style.left="-99999px",D.style.top="-99999px",D.style.width=`${S}px`,D.style.height=`${A}px`,D.style.opacity="0",D.style.pointerEvents="none",document.body.append(D);let I=null;try{I=Hm(D,void 0,{renderer:"svg",width:S,height:A}),I.setOption(g.getOption(),!0);const L=I.getDataURL({type:"svg",backgroundColor:"#ffffff"});Nl(L,`sankey_${Ts()}.svg`)}finally{I?.dispose(),D.remove()}}function Ic(){if(!g)return;const S=g.getDataURL({type:"png",backgroundColor:"#ffffff",pixelRatio:2});Nl(S,`sankey_${Ts()}.png`)}return Fy(()=>{const S=f.value;S&&(K(),Y(),g=Hm(S,void 0,{renderer:"canvas"}),l.value=S.clientHeight,g.setOption(W.value),oe(),J(),(async()=>{const{restoredUploadedFile:A,restoredMapping:D}=await Ac();A||(await bc(),D&&y.value&&Do(Ll(D,y.value.headers.length)))})(),window.addEventListener("resize",J),window.visualViewport?.addEventListener("resize",J),window.visualViewport?.addEventListener("scroll",J),window.addEventListener("resize",ke),window.addEventListener("scroll",ke,!0),window.addEventListener("pointerdown",ye))}),Iy(()=>{window.removeEventListener("resize",J),window.visualViewport?.removeEventListener("resize",J),window.visualViewport?.removeEventListener("scroll",J),window.removeEventListener("resize",ke),window.removeEventListener("scroll",ke,!0),window.removeEventListener("pointerdown",ye),x?.disconnect(),x=null,g?.dispose(),g=null,m!==0&&(cancelAnimationFrame(m),m=0)}),(S,A)=>(it(),ut("div",$V,[me("header",XV,[me("div",YV,[me("img",{src:Ke(PV),alt:"webicon",class:"logo"},null,8,KV),me("img",{src:Ke(LV),alt:"星程桑基图",class:"title-logo"},null,8,ZV)]),me("div",jV,[me("div",{ref_key:"themeTriggerRef",ref:h,class:"tool-item theme-trigger"},[A[15]||(A[15]=me("span",{class:"tool-label"},"选择主题",-1)),me("button",{class:"icon-btn",type:"button",title:"选择主题","aria-label":"选择主题",onClick:pi(de,["stop"])},[me("img",{src:Ke(OV),alt:"choose-color",title:"选择主题"},null,8,qV)]),a.value?(it(),ut("div",{key:0,ref_key:"themePopoverRef",ref:d,class:"theme-popover",style:Ta(_.value),onClick:A[0]||(A[0]=pi(()=>{},["stop"]))},[A[14]||(A[14]=me("div",{class:"theme-header"},"选择配色主题",-1)),me("div",JV,[me("div",{ref_key:"themeWheelRef",ref:c,class:"theme-wheel",onScroll:we},[(it(!0),ut(Ct,null,pa(Ke(t),(D,I)=>(it(),ut("button",{key:D.id,class:eo(["theme-row",{selected:r.value===D.id}]),style:Ta({opacity:Pe(I)}),type:"button",onClick:L=>he(D.id)},[me("img",{src:r.value===D.id?Ke(H_):Ke(V_),alt:"主题选择"},null,8,ez),me("div",{class:"palette",style:Ta({gridTemplateColumns:`repeat(${D.colors.length}, 1fr)`})},[(it(!0),ut(Ct,null,pa(D.colors,L=>(it(),ut("span",{key:`${D.id}-${L}`,class:"palette-cell",style:Ta({backgroundColor:L})},null,4))),128))],4)],14,QV))),128))],544),A[13]||(A[13]=me("div",{class:"theme-mask"},null,-1))])],4)):Fo("",!0)],512),me("div",tz,[A[16]||(A[16]=me("span",{class:"tool-label"},"文件上传",-1)),me("button",{class:"icon-btn",type:"button",title:"上传文件","aria-label":"上传文件",onClick:qt},[me("img",{src:Ke(BV),alt:"upload",title:"上传文件"},null,8,rz)])]),me("label",{class:"upload-area",onDragover:A[1]||(A[1]=pi(()=>{},["prevent"])),onDrop:pi(kc,["prevent"]),onKeydown:bA(pi(qt,["prevent"]),["enter"]),onClick:ce},[me("input",{ref_key:"fileInputRef",ref:u,class:"hidden-input",type:"file",accept:".csv,.xls,.xlsx",onChange:Dc},null,544),me("span",nz,br(i.value),1)],40,az),me("div",iz,[me("img",{src:Ke(NV),alt:"export",class:"export-main",title:"导出"},null,8,sz),me("button",{class:"icon-btn export-item",type:"button",title:"导出 SVG","aria-label":"导出 SVG",onClick:Fc},[me("img",{src:Ke(UV),alt:"export-svg",title:"导出 SVG"},null,8,oz)]),me("button",{class:"icon-btn export-item",type:"button",title:"导出 PNG","aria-label":"导出 PNG",onClick:Ic},[me("img",{src:Ke(HV),alt:"export-png",title:"导出 PNG"},null,8,fz)])]),me("div",{ref_key:"weixinTriggerRef",ref:v,class:"tool-item weixin-trigger"},[A[18]||(A[18]=me("span",{class:"tool-label"},"小程序",-1)),me("button",{class:"icon-btn",type:"button",title:"微信小程序","aria-label":"微信小程序",onClick:pi(Ae,["stop"])},[me("img",{src:Ke(X_),alt:"weixin",title:"微信小程序"},null,8,lz)]),n.value?(it(),ut("div",{key:0,ref_key:"weixinPopoverRef",ref:p,class:"weixin-popover",onClick:A[2]||(A[2]=pi(()=>{},["stop"]))},[A[17]||(A[17]=me("div",{class:"weixin-header"},"微信扫码使用小程序",-1)),me("img",{src:Ke(X_),alt:"小程序二维码",class:"weixin-qrcode"},null,8,uz)],512)):Fo("",!0)],512)])]),me("main",cz,[me("section",hz,[me("article",dz,[me("img",{src:Ke(GV),alt:"数据选择器",class:"panel-title-svg panel-title-select"},null,8,vz),me("div",pz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[3]||(A[3]=D=>Ve("sourceData"))},[me("img",{src:se.sourceData?Ke(vd):Ke(dd),alt:se.sourceData?"折叠":"展开",class:"expand-icon"},null,8,gz),A[19]||(A[19]=me("h3",null,"源数据(link value)",-1))]),se.sourceData?(it(),ut("div",mz,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`source-data-${I}`,class:"column-row"},[me("img",{src:Ke(VV),alt:"数据列",class:"column-icon"},null,8,xz),me("span",_z,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>b.sourceDataColumn=I},[me("img",{src:b.sourceDataColumn===I?Ke(H_):Ke(V_),alt:"单选"},null,8,wz)],8,yz)]))),128))])):Fo("",!0)]),me("div",Tz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[4]||(A[4]=D=>Ve("sourceDesc"))},[me("img",{src:se.sourceDesc?Ke(vd):Ke(dd),alt:se.sourceDesc?"折叠":"展开",class:"expand-icon"},null,8,Sz),A[20]||(A[20]=me("h3",null,"源标签(Source label)",-1))]),se.sourceDesc?(it(),ut("div",Ez,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`source-desc-${I}`,class:"column-row"},[me("img",{src:Ke(U_),alt:"源标签列",class:"column-icon"},null,8,Cz),me("span",Az,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>Fe(I)},[me("img",{src:b.sourceDescriptionColumns.includes(I)?Ke(z_):Ke(W_),alt:"复选"},null,8,kz)],8,Dz)]))),128))])):Fo("",!0)]),me("div",bz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[5]||(A[5]=D=>Ve("targetDesc"))},[me("img",{src:se.targetDesc?Ke(vd):Ke(dd),alt:se.targetDesc?"折叠":"展开",class:"expand-icon"},null,8,Fz),A[21]||(A[21]=me("h3",null,"目标标签(target label)",-1))]),se.targetDesc?(it(),ut("div",Iz,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`target-desc-${I}`,class:"column-row"},[me("img",{src:Ke(U_),alt:"目标标签列",class:"column-icon"},null,8,Mz),me("span",Rz,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>Ye(I)},[me("img",{src:b.targetDescriptionColumns.includes(I)?Ke(z_):Ke(W_),alt:"复选"},null,8,Lz)],8,Pz)]))),128))])):Fo("",!0)])]),me("article",Oz,[me("img",{src:Ke(WV),alt:"信息日志",class:"panel-title-svg panel-title-info"},null,8,Bz),ie.value.length>0?(it(),ut("ul",Nz,[(it(!0),ut(Ct,null,pa(ie.value,(D,I)=>(it(),ut("li",{key:`${D.level}-${I}-${D.text}`,class:eo(["info-log-item",`level-${D.level}`])},br(D.text),3))),128))])):(it(),ut("p",Uz,"暂无日志"))])]),me("section",Hz,[me("div",Vz,[me("img",{src:Ke(zV),alt:"桑基图预览",title:"桑基图预览",class:"panel-title-svg panel-title-preview"},null,8,zz),me("div",Wz,[T.value?(it(),ut(Ct,{key:0},[me("label",Gz,[me("img",{src:Ke(G_),alt:"间距",title:"间距",class:"slider-icon"},null,8,$z),hi(me("select",{"onUpdate:modelValue":A[6]||(A[6]=D=>R.value=D),class:"compact-select","aria-label":"间距"},[(it(),ut(Ct,null,pa(U,D=>me("option",{key:`gap-${D}`,value:D},br(D),9,Xz)),64))],512),[[Io,R.value,void 0,{number:!0}]])]),me("label",Yz,[me("img",{src:Ke($_),alt:"边距",title:"边距",class:"slider-icon"},null,8,Kz),hi(me("select",{"onUpdate:modelValue":A[7]||(A[7]=D=>B.value=D),class:"compact-select","aria-label":"边距"},[(it(),ut(Ct,null,pa(xe,D=>me("option",{key:`padding-${D}`,value:D},br(D),9,Zz)),64))],512),[[Io,B.value,void 0,{number:!0}]])])],64)):(it(),ut(Ct,{key:1},[me("label",jz,[me("img",{src:Ke(G_),alt:"间距",title:"间距",class:"slider-icon"},null,8,qz),me("div",Jz,[me("span",{class:"slider-value",style:Ta(be(R.value,0,30))},br(R.value),5),hi(me("input",{"onUpdate:modelValue":A[8]||(A[8]=D=>R.value=D),class:"slider-input",style:Ta(rt(R.value,0,30)),type:"range",min:"0",max:"30","aria-label":"间距"},null,4),[[lg,R.value,void 0,{number:!0}]])])]),me("label",Qz,[me("img",{src:Ke($_),alt:"边距",title:"边距",class:"slider-icon"},null,8,eW),me("div",tW,[me("span",{class:"slider-value",style:Ta(be(B.value,0,80))},br(B.value),5),hi(me("input",{"onUpdate:modelValue":A[9]||(A[9]=D=>B.value=D),class:"slider-input",style:Ta(rt(B.value,0,80)),type:"range",min:"0",max:"80","aria-label":"边距"},null,4),[[lg,B.value,void 0,{number:!0}]])])])],64)),C.value?(it(),ut("label",rW,[A[22]||(A[22]=me("span",{class:"compact-label"},"方向",-1)),hi(me("select",{"onUpdate:modelValue":A[10]||(A[10]=D=>M.value=D),class:"compact-select","aria-label":"方向"},[(it(),ut(Ct,null,pa(ve,D=>me("option",{key:D.value,value:D.value},br(D.label),9,aW)),64))],512),[[Io,M.value]])])):(it(),ut("button",{key:3,class:"direction-control desktop-only",type:"button",onClick:Qe},[A[24]||(A[24]=me("span",{class:"direction-label"},"方向",-1)),me("span",{class:eo(["direction-switch",{on:M.value==="source-to-target"}])},[me("span",nW,br(M.value==="source-to-target"?"源":"目标"),1),A[23]||(A[23]=me("span",{class:"direction-switch-thumb"},null,-1))],2)])),me("label",iW,[A[25]||(A[25]=me("span",{class:"label-position-label"},"标签位置",-1)),hi(me("select",{"onUpdate:modelValue":A[11]||(A[11]=D=>G.value=D),class:"label-position-select"},[(it(),ut(Ct,null,pa(re,D=>me("option",{key:D.value,value:D.value},br(D.label),9,sW)),64))],512),[[Io,G.value]])]),me("label",oW,[A[26]||(A[26]=me("span",{class:"target-align-label"},"汇聚对齐",-1)),hi(me("select",{"onUpdate:modelValue":A[12]||(A[12]=D=>j.value=D),class:"target-align-select"},[(it(),ut(Ct,null,pa(q,D=>me("option",{key:D.value,value:D.value},br(D.label),9,fW)),64))],512),[[Io,j.value]])])])]),me("div",{ref_key:"chartRef",ref:f,class:"chart-area"},null,512)])]),A[27]||(A[27]=me("footer",{class:"footer"},"@版权说明:星程社所有,反馈邮箱:douboer@gmail.com",-1))]))}});MA(lW).mount("#app"); +`;var r=rE(e,t);return r}function mV(e){var t="",r,a="";if(e==null||e["!ref"]==null)return[];var n=kt(e["!ref"]),i="",s=[],o,f=[],l=Array.isArray(e);for(o=n.s.c;o<=n.e.c;++o)s[o]=zt(o);for(var u=n.s.r;u<=n.e.r;++u)for(i=Zt(u),o=n.s.c;o<=n.e.c;++o)if(t=s[o]+i,r=l?(e[u]||[])[o]:e[t],a="",r!==void 0){if(r.F!=null){if(t=r.F,!r.f)continue;a=r.f,t.indexOf(":")==-1&&(t=t+":"+t)}if(r.f!=null)a=r.f;else{if(r.t=="z")continue;if(r.t=="n"&&r.v!=null)a=""+r.v;else if(r.t=="b")a=r.v?"TRUE":"FALSE";else if(r.w!==void 0)a="'"+r.w;else{if(r.v===void 0)continue;r.t=="s"?a="'"+r.v:a=""+r.v}}f[f.length]=t+"="+a}return f}function aE(e,t,r){var a=r||{},n=+!a.skipHeader,i=e||{},s=0,o=0;if(i&&a.origin!=null)if(typeof a.origin=="number")s=a.origin;else{var f=typeof a.origin=="string"?Tr(a.origin):a.origin;s=f.r,o=f.c}var l,u={s:{c:0,r:0},e:{c:o,r:s+t.length-1+n}};if(i["!ref"]){var c=kt(i["!ref"]);u.e.c=Math.max(u.e.c,c.e.c),u.e.r=Math.max(u.e.r,c.e.r),s==-1&&(s=c.e.r+1,u.e.r=s+t.length-1+n)}else s==-1&&(s=0,u.e.r=t.length-1+n);var h=a.header||[],d=0;t.forEach(function(p,g){Ja(p).forEach(function(m){(d=h.indexOf(m))==-1&&(h[d=h.length]=m);var x=p[m],_="z",y="",F=Ue({c:o+d,r:s+g+n});l=ml(i,F),x&&typeof x=="object"&&!(x instanceof Date)?i[F]=x:(typeof x=="number"?_="n":typeof x=="boolean"?_="b":typeof x=="string"?_="s":x instanceof Date?(_="d",a.cellDates||(_="n",x=Ar(x)),y=a.dateNF||We[14]):x===null&&a.nullError&&(_="e",x=0),l?(l.t=_,l.v=x,delete l.w,delete l.R,y&&(l.z=y)):i[F]=l={t:_,v:x},y&&(l.z=y))})}),u.e.c=Math.max(u.e.c,o+h.length-1);var v=Zt(s);if(n)for(d=0;d=0&&e.SheetNames.length>t)return t;throw new Error("Cannot find sheet # "+t)}else if(typeof t=="string"){var r=e.SheetNames.indexOf(t);if(r>-1)return r;throw new Error("Cannot find sheet name |"+t+"|")}else throw new Error("Cannot find sheet |"+t+"|")}function F1(){return{SheetNames:[],Sheets:{}}}function I1(e,t,r,a){var n=1;if(!r)for(;n<=65535&&e.SheetNames.indexOf(r="Sheet"+n)!=-1;++n,r=void 0);if(!r||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(r)>=0){var i=r.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||r;for(++n;n<=65535&&e.SheetNames.indexOf(r=s+n)!=-1;++n);}if(aH(r),e.SheetNames.indexOf(r)>=0)throw new Error("Worksheet with name |"+r+"| already exists!");return e.SheetNames.push(r),e.Sheets[r]=t,r}function yV(e,t,r){e.Workbook||(e.Workbook={}),e.Workbook.Sheets||(e.Workbook.Sheets=[]);var a=_V(e,t);switch(e.Workbook.Sheets[a]||(e.Workbook.Sheets[a]={}),r){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+r)}e.Workbook.Sheets[a].Hidden=r}function wV(e,t){return e.z=t,e}function nE(e,t,r){return t?(e.l={Target:t},r&&(e.l.Tooltip=r)):delete e.l,e}function TV(e,t,r){return nE(e,"#"+t,r)}function SV(e,t,r){e.c||(e.c=[]),e.c.push({t,a:r||"SheetJS"})}function EV(e,t,r,a){for(var n=typeof t!="string"?t:kt(t),i=typeof t=="string"?t:Je(t),s=n.s.r;s<=n.e.r;++s)for(var o=n.s.c;o<=n.e.c;++o){var f=ml(e,s,o);f.t="n",f.F=i,delete f.v,s==n.s.r&&o==n.s.c&&(f.f=r,a&&(f.D=!0))}return e}var CV={encode_col:zt,encode_row:Zt,encode_cell:Ue,encode_range:Je,decode_col:g1,decode_row:p1,split_cell:O7,decode_cell:Tr,decode_range:Co,format_cell:En,sheet_add_aoa:f3,sheet_add_json:aE,sheet_add_dom:J3,aoa_to_sheet:Ao,json_to_sheet:xV,table_to_sheet:Q3,table_to_book:VH,sheet_to_csv:rE,sheet_to_txt:gV,sheet_to_json:Lv,sheet_to_html:HH,sheet_to_formulae:mV,sheet_to_row_object_array:Lv,sheet_get_cell:ml,book_new:F1,book_append_sheet:I1,book_set_sheet_visibility:yV,cell_set_number_format:wV,cell_set_hyperlink:nE,cell_set_internal_link:TV,cell_add_comment:SV,sheet_set_array_formula:EV,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};function AV(e){const t=String(e);if(!t||/[\u4e00-\u9fff]/.test(t)||!/[ÃÂÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]/.test(t))return t;try{const r=decodeURIComponent(escape(t));if(/[\u4e00-\u9fff]/.test(r))return r}catch{}return t}function O_(e){return e==null?"":AV(e).trim()}function iE(e){if(e.length===0)return{headers:[],rows:[]};const t=e[0]??[],r=e.reduce((i,s)=>Math.max(i,s.length),t.length),a=Array.from({length:r},(i,s)=>O_(t[s])||`列${s+1}`),n=e.slice(1).map(i=>Array.from({length:r},(s,o)=>O_(i[o])));return{headers:a,rows:n}}function DV(e){const t=SP.parse(e,{skipEmptyLines:!1});if(t.errors.length>0){const a=t.errors[0];throw new Error(`CSV 解析失败: ${a.message}`)}const r=t.data.map(a=>a??[]);return iE(r)}function B_(e){const t=Pv(e,{type:"array",codepage:936}),r=t.SheetNames[0];if(!r)throw new Error("Excel 文件中没有工作表");const a=t.Sheets[r],n=CV.sheet_to_json(a,{header:1,raw:!1,blankrows:!1});return iE(n)}function Wu(e){return e.trim()}function kV(e){const t=e.replace(/,/g,"").trim();if(!t)return null;const r=Number(t);return Number.isNaN(r)?null:r}function sE(e){return e.length===0?"(空)":e}function N_(e,t,r){return r.length===0?"未选择列":r.map(a=>{const n=t[a]??`列${a+1}`,i=e[a]??"";return`第 ${a+1} 列(${n})="${sE(i)}"`}).join(",")}function bV(e,t){const r=t.sourceDataColumn===null?"":e[t.sourceDataColumn]??"";return t.sourceDescriptionColumns.length===0?Wu(r):t.sourceDescriptionColumns.map(n=>Wu(e[n]??"")).filter(n=>n.length>0).join(t.delimiter)}function FV(e,t,r){return t.targetDescriptionColumns.map(n=>{const i=Wu(e[n]??"");return i.length>0?(r.set(n,i),i):r.get(n)??""}).filter(n=>n.length>0).join(t.delimiter)}function IV(e,t){if(t.sourceDataColumn===null)throw new Error("必须选择源数据列");if(t.targetDescriptionColumns.length===0)throw new Error("必须至少选择一个目标描述列");const r=new Map,a=[];let n=0;const i=t.sourceDataColumn,s=e.headers[i]??`列${i+1}`,o=new Map;e.rows.forEach((h,d)=>{const v=d+2,p=h[i]??"",g=Wu(p),m=kV(g);if(m===null){a.push(`第 ${v} 行, 第 ${i+1} 列(${s}): 源数据不是有效数字,原始值="${sE(p)}",已跳过`),n+=1;return}const x=bV(h,t);if(!x){const k=N_(h,e.headers,t.sourceDescriptionColumns);a.push(`第 ${v} 行: 源描述为空,字段=${k},已跳过`),n+=1;return}const _=FV(h,t,o);if(!_){const k=N_(h,e.headers,t.targetDescriptionColumns);a.push(`第 ${v} 行: 目标描述为空,字段=${k},且无可继承的上方值,已跳过`),n+=1;return}const y=`${x}@@${_}`,F=r.get(y)??0;r.set(y,F+m)});const f=[],l=new Set,u=new Set;return r.forEach((h,d)=>{const[v,p]=d.split("@@");!v||!p||(l.add(v),u.add(p),f.push({source:v,target:p,value:h}))}),{nodes:[...Array.from(l).map(h=>({name:h,kind:"source"})),...Array.from(u).filter(h=>!l.has(h)).map(h=>({name:h,kind:"target"}))],links:f,meta:{droppedRows:n,warnings:a}}}function MV(e,t){return t==="source-to-target"?e:e.map(r=>({source:r.target,target:r.source,value:r.value}))}const RV=[{id:"figma-aegean",name:"Figma-Aegean",colors:["#264653","#287271","#2A9D8F","#8AB17D","#E9C46A","#EFB366","#F4A261","#F1965D","#EE8959","#E76F51"]},{id:"figma-violet",name:"Figma-Violet",colors:["#F72585","#B5179E","#7209B7","#560BAD","#480CA8","#3A0CA3","#3F37C9","#4361EE","#4895EF","#4CC9F0"]},{id:"figma-1",name:"Figma-01",colors:["#322F4F","#433E71","#554C93","#98958C","#DBDD85","#D8DD7D","#D5DB74","#CED56E","#C8CF67","#BAC35A"]},{id:"figma-2",name:"Figma-02",colors:["#2B3B51","#355971","#3F7690","#91A483","#E2D075","#E4C66F","#E4BD69","#E0B464","#DBAA5F","#D19654"]},{id:"figma-3",name:"Figma-03",colors:["#274D4C","#2B7171","#2F9595","#8B9395","#E79094","#EC878A","#EF7D7F","#EC7578","#E86D6F","#E15D5F"]},{id:"figma-4",name:"Figma-04",colors:["#3D3D3D","#5B5B5B","#797979","#9F9F9F","#C4C4C4","#BCBCBC","#B3B3B3","#AAAAAA","#A1A1A1","#8F8F8F"]},{id:"figma-5",name:"Figma-05",colors:["#F4F1DE","#EAB69F","#E07A5F","#8F5D5D","#3D405B","#5F797B","#81B29A","#9EB998","#BABF95","#F2CC8F"]},{id:"figma-6",name:"Figma-06",colors:["#F2F3E3","#D6DAA5","#B9C167","#7C805D","#3E3D52","#68667A","#938FA1","#A8A6A1","#BBBBA1","#E3E6A1"]},{id:"figma-7",name:"Figma-07",colors:["#F3F1E0","#E0C7A1","#CD9B62","#856D5D","#3D3F57","#63707A","#89A19D","#A2B09C","#BABD9A","#EBD896"]},{id:"figma-8",name:"Figma-08",colors:["#F3E6E7","#E7A8A9","#DA6A6B","#8C5D5D","#3D4F4E","#607A7A","#83A4A5","#9FA6A7","#BAA7A8","#F0A9AB"]},{id:"figma-9",name:"Figma-09",colors:["#EFEFEF","#C2C2C2","#959595","#6B6B6B","#424242","#717171","#A0A0A0","#ADADAD","#B8B8B8","#D0D0D0"]},{id:"figma-10",name:"Figma-10",colors:["#A8B868","#798575","#4A5282","#393F7C","#313679","#282C75","#3C3C9D","#4E4CC3","#645FD4","#7A71E4"]},{id:"figma-11",name:"Figma-11",colors:["#EF476F","#F78C6B","#FFD166","#83D483","#06D6A0","#001914","#118AB2","#0F7799","#0C637F","#073B4C"]},{id:"figma-12",name:"Figma-12",colors:["#D06A79","#984B8D","#5E2BA1","#482398","#3D1F94","#311B90","#3D39B6","#4857DC","#567BE3","#629FEB"]},{id:"figma-13",name:"Figma-13",colors:["#B0BC63","#CED674","#EDF186","#A19B9B","#5444B0","#493DAB","#3E35A6","#362E8E","#2C2676","#1A1646"]},{id:"figma-14",name:"Figma-14",colors:["#D07E6A","#E3AF6F","#F6E073","#91B98D","#2C90A6","#2A79A9","#2761AD","#225494","#1B467B","#102949"]},{id:"figma-15",name:"Figma-15",colors:["#E65D5C","#F1797A","#FC9498","#87A6A9","#10B7B9","#14ACAC","#17A09F","#148A88","#107271","#094443"]},{id:"figma-16",name:"Figma-16",colors:["#7D7D7D","#A8A8A8","#D2D2D2","#B2B2B2","#919191","#7E7E7E","#6A6A6A","#5B5B5B","#4C4C4C","#2D2D2D"]},{id:"figma-17",name:"Figma-17",colors:["#5F0F40","#7D092F","#9A031E","#CB4721","#FB8B24","#EF781C","#E36414","#AE5E26","#795838","#0F4C5C"]},{id:"figma-18",name:"Figma-18",colors:["#414731","#515A23","#616C15","#99A32C","#D1D942","#C2CB37","#B3BC2C","#909636","#6C6F41","#252157"]},{id:"figma-19",name:"Figma-19",colors:["#502939","#672F2A","#7E351A","#B27225","#E6B030","#D99F27","#CB8E1E","#9F782D","#72623C","#1A375A"]},{id:"figma-20",name:"Figma-20",colors:["#5B2A28","#771E1C","#921211","#C43133","#F55054","#E94347","#DC363A","#AA3E40","#774547","#125554"]},{id:"figma-21",name:"Figma-21",colors:["#2C2C2C","#303030","#333333","#6A6A6A","#A0A0A0","#919191","#808080","#6F6F6F","#5E5E5E","#3B3B3B"]},{id:"figma-22",name:"Figma-22",colors:["#366260","#516765","#6C6B6A","#8E6D6C","#B16E6D","#C76E6D","#DE6D6D","#E38384","#E6999A"]},{id:"figma-23",name:"Figma-23",colors:["#39476C","#515371","#695F75","#876F74","#A67F73","#BA8971","#CE936E","#D7AA7E","#DEC08F"]},{id:"figma-24",name:"Figma-24",colors:["#3F3D66","#52526B","#656770","#7E8270","#979D70","#A7AE6F","#B7C06D","#C5CC81","#D2D794"]},{id:"figma-25",name:"Figma-25",colors:["#4B4B4B","#575757","#626262","#707070","#7E7E7E","#878787","#8F8F8F","#A5A5A5","#BABABA"]},{id:"figma-26",name:"Figma-26",colors:["#363636","#474747","#585858","#9C9C9C","#E0E0E0","#A5A5A5","#696969","#565656","#424242"]},{id:"figma-27",name:"Figma-27",colors:["#293B3B","#235959","#1D7575","#84A6A6","#ECD7D8","#D58A8A","#BD3C3D","#993333","#732829"]},{id:"figma-28",name:"Figma-28",colors:["#2B363B","#2B4559","#295477","#899BA6","#EAE2D5","#CBA886","#AC6F37","#8B5B2F","#694626"]},{id:"figma-29",name:"Figma-29",colors:["#2F2E3B","#353159","#3A3376","#908EA6","#E7E8D6","#BEC388","#949D3A","#788031","#5B6127"]},{id:"figma-30",name:"Figma-30",colors:["#283D3B","#21585A","#197278","#83A8A6","#EDDDD4","#D99185","#E9B5AF","#9E3A2E","#772E25"]},{id:"figma-31",name:"Figma-31",colors:["#BDBDBD","#9D9D9D","#7E7E7E","#6B6B6B","#585858","#5D5D5D","#606060","#626262","#707070","#7D7D7D"]},{id:"figma-32",name:"Figma-32",colors:["#FB5860","#F74046","#F2292C","#F23433","#F23E39","#B86E68","#9C867F","#7F9E96","#5FB4AE","#3DCAC5"]},{id:"figma-33",name:"Figma-33",colors:["#F3D321","#E7B019","#DC8C10","#D67039","#D05460","#A2529A","#8C51B8","#7550D5","#5F5FE3","#476CEF"]},{id:"figma-34",name:"Figma-34",colors:["#E6EB40","#D1DA2F","#BDC91E","#AEBE36","#9FB24D","#838F81","#757E9C","#666CB6","#5F5FC8","#5650DA"]},{id:"figma-35",name:"Figma-35",colors:["#FFBE0B","#FD8A09","#FB5607","#FD2B3B","#FF006E","#C11CAD","#A22ACD","#8338EC","#5F5FF6","#3A86FF"]},{id:"figma-36",name:"Figma-36",colors:["#6E6E6E","#555555","#3C3C3C","#333333","#2F2F2F","#2A2A2A","#4A4A4A","#686868","#888888","#A8A8A8"]},{id:"figma-37",name:"Figma-37",colors:["#EC5B57","#AD635D","#6C6B64","#526660","#45645D","#37615B","#3E8983","#44B0AB","#4BC8C4","#52DFDD"]},{id:"figma-38",name:"Figma-38",colors:["#05668D","#04738F","#028090","#019493","#00A896","#01B698","#02C39A","#79DBAC","#B5E7B5","#F0F3BD"]},{id:"figma-39",name:"Figma-39",colors:["#292281","#2D2586","#31278B","#382D93","#3F329B","#4437A1","#4A3BA6","#9D96BA","#C7C4C4","#F1F0CD"]},{id:"figma-40",name:"Figma-40",colors:["#164588","#184E8B","#19568E","#1B6393","#1E7098","#22799B","#25829F","#8ABAB1","#BED6BB","#F0F2C3"]},{id:"figma-41",name:"Figma-41",colors:["#097C7A","#098281","#088988","#089393","#089D9E","#0AA4A6","#0BABAD","#7DC0C2","#B7CACC","#F0D4D6"]},{id:"figma-42",name:"Figma-42",colors:["#4D4D4D","#555555","#5C5C5C","#676767","#737373","#7C7C7C","#848484","#B8B8B8","#D2D2D2","#EBEBEB"]},{id:"figma-43",name:"Figma-43",colors:["#16697A","#2F8498","#489FB5","#65B0C1","#9DCAD2","#B8D4D8","#EDE7E3","#F2D7B5","#F6C787","#FFA62B"]},{id:"figma-44",name:"Figma-44",colors:["#352E74","#4E4892","#6862AE","#817BBB","#ADAACF","#C2C0D6","#EAEBE4","#E7E9BF","#E4E79A","#DDE44F"]},{id:"figma-45",name:"Figma-45",colors:["#254D77","#3E6795","#5782B2","#7297BE","#A5BBD1","#BDCAD7","#EBE8E3","#EDDFB9","#EDD68F","#EEC33A"]},{id:"figma-46",name:"Figma-46",colors:["#1A7271","#338F8E","#4CABAA","#68B9B8","#9FCECE","#B9D6D6","#ECE4E4","#F0C3C5","#F3A2A5","#FA6065"]},{id:"figma-47",name:"Figma-47",colors:["#525252","#6C6C6C","#878787","#9B9B9B","#BDBDBD","#CCCCCC","#E8E8E8","#DBDBDB","#CDCDCD","#B2B2B2"]}],PV="/assets/webicon-ajYrwN-u.png",LV="/assets/%E6%98%9F%E7%A8%8B%E6%A1%91%E5%9F%BA%E5%9B%BE-B-SY2I_4.svg",OV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='36'%20height='36'%20fill='none'%20viewBox='0%200%2036%2036'%3e%3cpath%20fill='%23FCFCFC'%20d='M22.774%2013.238a6.734%206.734%200%201%201-4.77-1.98%206.702%206.702%200%200%201%204.77%201.98Z'/%3e%3cpath%20fill='%2300E8CF'%20d='M18.005%206.76v4.498a6.703%206.703%200%200%200-4.769%201.98L10.05%2010.05a11.238%2011.238%200%200%201%207.955-3.292Z'/%3e%3cpath%20fill='%2370FFEF'%20d='M18.005.761V6.76a11.239%2011.239%200%200%200-7.955%203.292L5.813%205.815A17.162%2017.162%200%200%201%2018.005.76Z'/%3e%3cpath%20fill='%230064B5'%20d='m10.05%2010.051%203.186%203.187a6.702%206.702%200%200%200-1.98%204.768H6.759a11.239%2011.239%200%200%201%203.292-7.955Z'/%3e%3cpath%20fill='%230091FF'%20d='M10.05%2010.051a11.238%2011.238%200%200%200-3.292%207.955H.76A17.162%2017.162%200%200%201%205.813%205.815l4.237%204.236Z'/%3e%3cpath%20fill='%2331C4FF'%20d='M11.257%2018.006a6.7%206.7%200%200%200%201.98%204.769l-3.187%203.187a11.24%2011.24%200%200%201-3.292-7.956h4.499Z'/%3e%3cpath%20fill='%239EEBFF'%20d='M6.758%2018.006a11.24%2011.24%200%200%200%203.292%207.956l-4.237%204.236A17.162%2017.162%200%200%201%20.76%2018.006h5.998Z'/%3e%3cpath%20fill='%235F4A9E'%20d='M18.005%2024.754v4.5a11.239%2011.239%200%200%201-7.955-3.292l3.186-3.187a6.702%206.702%200%200%200%204.769%201.98Z'/%3e%3cpath%20fill='%239D87E0'%20d='M10.05%2025.962a11.24%2011.24%200%200%200%207.955%203.291v5.998a17.16%2017.16%200%200%201-12.192-5.053l4.237-4.236Z'/%3e%3cpath%20fill='%23FF468C'%20d='M25.96%2025.962a11.241%2011.241%200%200%201-7.955%203.291v-4.499a6.7%206.7%200%200%200%204.769-1.98l3.186%203.188Z'/%3e%3cpath%20fill='%23FFA1C8'%20d='m25.96%2025.962%204.236%204.236a17.162%2017.162%200%200%201-12.191%205.053v-5.998a11.239%2011.239%200%200%200%207.955-3.291Z'/%3e%3cpath%20fill='%23F03049'%20d='M24.753%2018.006h4.499a11.241%2011.241%200%200%201-3.292%207.956l-3.186-3.187a6.7%206.7%200%200%200%201.979-4.769Z'/%3e%3cpath%20fill='%23FF636E'%20d='M29.252%2018.006h5.998a17.163%2017.163%200%200%201-5.053%2012.192l-4.237-4.236a11.241%2011.241%200%200%200%203.292-7.956Z'/%3e%3cpath%20fill='%23FE8205'%20d='M25.96%2010.051a11.24%2011.24%200%200%201%203.292%207.955h-4.499a6.701%206.701%200%200%200-1.98-4.768l3.187-3.187Z'/%3e%3cpath%20fill='%23FFA426'%20d='M35.25%2018.006h-5.998a11.24%2011.24%200%200%200-3.292-7.955l4.236-4.236a17.163%2017.163%200%200%201%205.054%2012.191Z'/%3e%3cpath%20fill='%23FFC247'%20d='m25.96%2010.051-3.186%203.187a6.702%206.702%200%200%200-4.77-1.98V6.76a11.24%2011.24%200%200%201%207.956%203.292Z'/%3e%3cpath%20fill='%23FFFD78'%20d='M30.197%205.815%2025.96%2010.05a11.24%2011.24%200%200%200-7.955-3.292V.761a17.162%2017.162%200%200%201%2012.192%205.054Z'/%3e%3cpath%20fill='%23000'%20d='m32.863%2010.832%201.35-.653a19.376%2019.376%200%200%200-.854-1.56L32.08%209.4c.286.467.546.948.783%201.432Z'/%3e%3cpath%20fill='%23000'%20d='m34.88%2011.743-1.406.525c.589%201.601.924%203.284.993%204.988H29.97a11.883%2011.883%200%200%200-2.967-7.186l3.186-3.185c.317.347.62.707.905%201.08l1.19-.914a17.995%2017.995%200%200%200-29.629%2020.35l1.277-.786a16.459%2016.459%200%200%201-2.405-7.859H6.03a11.882%2011.882%200%200%200%202.985%207.18l-3.188%203.187a16.61%2016.61%200%200%201-.91-1.075l-1.19.914A18%2018%200%200%200%2034.88%2011.744ZM5.822%206.883l3.185%203.187a11.883%2011.883%200%200%200-2.965%207.186H1.543a16.345%2016.345%200%200%201%204.28-10.372Zm16.424%2015.365a5.998%205.998%200%201%201%201.757-4.242%205.96%205.96%200%200%201-1.757%204.242ZM12.2%2013.26a7.424%207.424%200%200%200-1.652%203.995H7.545a10.39%2010.39%200%200%201%202.533-6.116l2.121%202.12Zm10.55-1.06a7.423%207.423%200%200%200-3.995-1.651V7.546a10.39%2010.39%200%200%201%206.117%202.533L22.75%2012.2Zm-5.495-1.655a7.422%207.422%200%200%200-3.993%201.658l-2.124-2.123a10.39%2010.39%200%200%201%206.117-2.534v3Zm-6.711%208.211A7.423%207.423%200%200%200%2012.2%2022.75l-2.123%202.124a10.39%2010.39%200%200%201-2.533-6.117h2.999Zm2.715%205.057a7.423%207.423%200%200%200%203.996%201.65v3.004a10.39%2010.39%200%200%201-6.117-2.534l2.121-2.12Zm5.496%201.654a7.423%207.423%200%200%200%203.993-1.657l2.123%202.123a10.39%2010.39%200%200%201-6.116%202.534v-3Zm7.177-.594-2.121-2.121a7.423%207.423%200%200%200%201.651-3.996h3.003a10.39%2010.39%200%200%201-2.533%206.117Zm2.533-7.617h-2.999a7.423%207.423%200%200%200-1.658-3.993l2.124-2.123a10.39%2010.39%200%200%201%202.533%206.116Zm-9.71-15.729a16.358%2016.358%200%200%201%2010.36%204.31l-3.181%203.18a11.89%2011.89%200%200%200-7.18-2.985V1.527Zm-1.5.018v4.5a11.89%2011.89%200%200%200-7.187%202.964L6.882%205.824a16.345%2016.345%200%200%201%2010.373-4.279Zm-7.187%2025.459a11.89%2011.89%200%200%200%207.187%202.965v4.499a16.354%2016.354%200%200%201-10.373-4.28l3.186-3.184Zm8.687%207.481V29.98a11.898%2011.898%200%200%200%207.186-2.976l3.186%203.186a16.37%2016.37%200%200%201-10.372%204.295Zm11.42-5.37-3.18-3.18a11.882%2011.882%200%200%200%202.983-7.179h4.506a16.352%2016.352%200%200%201-4.31%2010.36Z'/%3e%3c/svg%3e",BV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='40'%20height='31'%20fill='none'%20viewBox='0%200%2040%2031'%3e%3cpath%20fill='%232420A8'%20d='M40%2024.68a5.17%205.17%200%200%201-.34%201.88%205.179%205.179%200%200%201-.96%201.58c-.413.467-.893.86-1.44%201.18-.547.32-1.14.533-1.78.64l.04.04H8.12c-.133.027-.347.04-.64.04-1.04%200-2.013-.2-2.92-.6-.907-.4-1.7-.94-2.38-1.62a7.48%207.48%200%200%201-1.6-2.38A7.365%207.365%200%200%201%200%2022.52c0-1.04.193-2.013.58-2.92a7.48%207.48%200%200%201%201.6-2.38%207.763%207.763%200%200%201%202.38-1.62c.907-.4%201.88-.6%202.92-.6h.04a4.85%204.85%200%200%201-.04-.6v-.64c0-1.893.36-3.68%201.08-5.36.72-1.68%201.707-3.14%202.96-4.38a14.132%2014.132%200%200%201%204.38-2.94C17.567.36%2019.347%200%2021.24%200c1.893%200%203.68.36%205.36%201.08%201.68.72%203.147%201.7%204.4%202.94%201.253%201.24%202.24%202.7%202.96%204.38.72%201.68%201.08%203.467%201.08%205.36%200%20.987-.107%201.953-.32%202.9a14.878%2014.878%200%200%201-.88%202.7%204.66%204.66%200%200%201%20.84-.08c.72%200%201.407.14%202.06.42.653.28%201.22.667%201.7%201.16.48.493.86%201.067%201.14%201.72.28.653.42%201.353.42%202.1Zm-14-4.76c.533%200%20.88-.06%201.04-.18.16-.12.053-.407-.32-.86-.373-.48-.787-1.107-1.24-1.88-.453-.773-.927-1.56-1.42-2.36-.493-.8-.993-1.547-1.5-2.24-.507-.693-1-1.2-1.48-1.52-.48-.347-.833-.533-1.06-.56-.227-.027-.553.133-.98.48-.48.4-.947.907-1.4%201.52a54.547%2054.547%200%200%200-1.38%201.96c-.467.693-.933%201.373-1.4%202.04a15.38%2015.38%200%200%201-1.42%201.76c-.48.48-.653.907-.52%201.28s.467.56%201%20.56h.64c.24%200%20.5.007.78.02.28.013.553.02.82.02h.68c.373.027.613.153.72.38.107.227.16.54.16.94%200%20.453-.007.853-.02%201.2-.013.347-.02.68-.02%201%200%20.32-.007.653-.02%201-.013.347-.02.747-.02%201.2%200%20.187.02.387.06.6.04.213.113.413.22.6s.267.34.48.46c.213.12.493.18.84.18h.92c.24%200%20.6.013%201.08.04.64%200%201.007-.16%201.1-.48.093-.32.14-.827.14-1.52%200-.613.007-1.167.02-1.66.013-.493.02-1.167.02-2.02%200-.613.06-1.087.18-1.42.12-.333.38-.5.78-.5.293%200%20.713-.007%201.26-.02.547-.013.967-.02%201.26-.02Z'/%3e%3c/svg%3e",NV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='42'%20fill='none'%20viewBox='0%200%2018%2042'%3e%3cpath%20fill='%2300E8CF'%20d='M12.723%205.08H3.775v.442c0%20.513.14.917.42%201.212.263.28.652.42%201.164.42h7.2c.56%200%20.987-.125%201.282-.373.264-.233.42-.59.466-1.072l.07-.955a.771.771%200%200%201%20.268-.56.882.882%200%200%201%20.594-.21.794.794%200%200%201%20.571.28.81.81%200%200%201%20.198.606l-.07.955c-.078.948-.42%201.678-1.025%202.19-.606.529-1.39.793-2.354.793h-7.2c-.947%200-1.732-.303-2.353-.909-.606-.606-.909-1.398-.909-2.377V.816c0-.218.082-.408.245-.571A.809.809%200%200%201%202.936%200h9.787c.217%200%20.411.082.582.245a.764.764%200%200%201%20.256.57v3.45a.754.754%200%200%201-.256.582.842.842%200%200%201-.582.233ZM.839%2011.068h10.043v-.979a.78.78%200%200%201%20.244-.57.809.809%200%200%201%20.595-.245c.217%200%20.407.082.57.245a.782.782%200%200%201%20.245.57v.98h3.659c.217%200%20.407.08.57.244a.782.782%200%200%201%20.245.57.808.808%200%200%201-.245.595.782.782%200%200%201-.57.245h-3.659v7.572a.809.809%200%200%201-.245.595.782.782%200%200%201-.57.244.81.81%200%200%201-.595-.244.809.809%200%200%201-.244-.595v-7.572H.839a.809.809%200%200%201-.594-.245.809.809%200%200%201-.245-.594c0-.218.082-.408.245-.571a.809.809%200%200%201%20.594-.245Zm11.045-9.414h-8.11V3.45h8.11V1.654ZM6.198%2014.866v2.866a.809.809%200%200%201-.245.595.782.782%200%200%201-.57.244.809.809%200%200%201-.595-.244.809.809%200%200%201-.244-.595v-2.866a.81.81%200%200%201%20.244-.594.809.809%200%200%201%20.595-.245c.217%200%20.407.082.57.245a.81.81%200%200%201%20.245.594ZM1.266%2041.161v-7.456c0-.233.081-.431.244-.594a.809.809%200%200%201%20.595-.245c.233%200%20.427.081.582.245a.83.83%200%200%201%20.233.594v6.64h4.66v-9.6H2.99a.83.83%200%200%201-.594-.233.771.771%200%200%201-.245-.582v-6.268c0-.218.082-.408.245-.571a.809.809%200%200%201%20.594-.245c.218%200%20.408.082.571.245a.782.782%200%200%201%20.245.57v5.453H7.58v-7.2a.81.81%200%200%201%20.245-.594.809.809%200%200%201%20.594-.245c.218%200%20.408.082.571.245a.809.809%200%200%201%20.245.594v7.2h3.775v-5.569a.78.78%200%200%201%20.244-.57.809.809%200%200%201%20.595-.245.78.78%200%200%201%20.57.244.782.782%200%200%201%20.245.571v6.385a.771.771%200%200%201-.245.582.801.801%200%200%201-.57.233H9.235v9.6h4.66v-6.757a.81.81%200%200%201%20.245-.594.782.782%200%200%201%20.57-.245.81.81%200%200%201%20.595.245.81.81%200%200%201%20.245.594v7.573a.809.809%200%200%201-.245.594.81.81%200%200%201-.594.245H2.105a.809.809%200%200%201-.595-.245.809.809%200%200%201-.244-.594Z'/%3e%3c/svg%3e",UV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='48'%20height='48'%20fill='none'%20viewBox='0%200%2048%2048'%3e%3ccircle%20cx='24'%20cy='24'%20r='24'%20fill='%238552A1'%20opacity='.2'/%3e%3ccircle%20cx='24'%20cy='24'%20r='18'%20fill='%238552A1'/%3e%3cpath%20fill='%23F3EDF7'%20d='M12.062%2018.99H17.4v1.942h-4.425c-.51%200-.834.025-.97.074-.287.1-.43.343-.43.728%200%20.324.137.573.41.747.15.1.555.15%201.214.15h1.475c.946%200%201.692.199%202.24.597.61.448.915%201.107.915%201.979%200%20.66-.187%201.263-.56%201.81-.274.436-.607.722-.999.86-.392.136-1.048.204-1.97.204H9.13V26.14h4.461c.548%200%20.921-.006%201.12-.019.448-.05.672-.305.672-.765%200-.373-.149-.629-.448-.765-.149-.075-.51-.112-1.082-.112h-1.512c-.598%200-1.055-.038-1.373-.112a2.451%202.451%200%200%201-.886-.411%202.399%202.399%200%200%201-.794-.98A3.14%203.14%200%200%201%209%2021.64c0-.908.33-1.63.99-2.165.398-.324%201.088-.486%202.072-.486Zm9.325%200%202.314%206.254%202.54-6.254h2.65l-3.92%209.091h-2.688l-3.622-9.09h2.726Zm12.946%200H39v9.036c0%20.51-.06.964-.177%201.362-.118.398-.29.734-.514%201.008a2.196%202.196%200%200%201-1.036.719c-.404.13-.992.196-1.764.196h-4.984V29.37h4.648c.548%200%20.905-.084%201.073-.252.168-.168.252-.514.252-1.037h-2.296c-.734%200-1.34-.077-1.82-.233a3.438%203.438%200%200%201-1.297-.774c-.909-.86-1.363-2.042-1.363-3.547%200-1.718.554-2.969%201.662-3.753a3.86%203.86%200%200%201%201.26-.606c.442-.119%201.005-.178%201.69-.178Zm2.166%207.15v-5.208h-2.073c-1.443%200-2.165.871-2.165%202.613%200%20.847.196%201.49.588%201.932.392.442.961.663%201.708.663h1.941Z'/%3e%3c/svg%3e",HV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='48'%20height='48'%20fill='none'%20viewBox='0%200%2048%2048'%3e%3ccircle%20cx='24'%20cy='24'%20r='24'%20fill='%232420A8'%20opacity='.2'/%3e%3ccircle%20cx='24'%20cy='24'%20r='18'%20fill='%232420A8'/%3e%3cpath%20fill='%23F3EDF7'%20d='M9%2031.301v-12.3h4.296c.833%200%201.463.051%201.891.155.429.104.839.31%201.23.615%201.065.832%201.598%202.112%201.598%203.837%200%201.31-.392%202.369-1.175%203.177a3.537%203.537%200%200%201-1.35.88c-.508.184-1.129.276-1.863.276H11.46v3.36H9Zm4.131-10.391h-1.67v5.122h1.505c.795%200%201.377-.172%201.744-.514.514-.453.771-1.15.771-2.093%200-.808-.202-1.43-.606-1.864-.404-.434-.985-.651-1.744-.651Zm6.683%207.031v-8.94h4.737c.71%200%201.251.051%201.625.155.373.104.713.29%201.019.56.624.575.936%201.481.936%202.717v5.508h-2.46v-5.783c0-.44-.098-.759-.294-.955-.196-.196-.52-.293-.973-.293h-2.13v7.031h-2.46ZM34.41%2019H39v8.886c0%20.502-.058.949-.174%201.34a2.807%202.807%200%200%201-.505.992%202.161%202.161%200%200%201-1.02.707c-.397.128-.975.193-1.734.193h-4.902v-1.91h4.571c.539%200%20.89-.082%201.056-.248.165-.165.248-.505.248-1.019h-2.258c-.723%200-1.32-.076-1.79-.23a3.381%203.381%200%200%201-1.277-.761c-.893-.845-1.34-2.008-1.34-3.488%200-1.69.545-2.92%201.634-3.69a3.806%203.806%200%200%201%201.24-.598c.434-.116.988-.174%201.661-.174Zm2.13%207.032V20.91h-2.038c-1.42%200-2.13.856-2.13%202.57%200%20.832.193%201.466.578%201.9.386.435.946.652%201.68.652h1.91Z'/%3e%3c/svg%3e",VV="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='19'%20height='19'%20fill='none'%20viewBox='0%200%2019%2019'%3e%3cpath%20fill='%23FF7B15'%20d='M2.499%2015.435a2.105%202.105%200%200%201-2.105-2.104V6.314a2.105%202.105%200%200%201%204.21%200v7.017a2.105%202.105%200%200%201-2.105%202.104Zm6.548%200a2.105%202.105%200%200%201-2.105-2.104V2.104a2.105%202.105%200%200%201%204.21%200V13.33a2.105%202.105%200%200%201-2.105%202.104Zm6.548%200a2.105%202.105%200%200%201-2.105-2.104v-2.807a2.105%202.105%200%201%201%204.21%200v2.807a2.105%202.105%200%200%201-2.105%202.104Zm2.105%202.616H.394a.394.394%200%200%201%200-.788H17.7a.394.394%200%200%201%200%20.788Z'/%3e%3c/svg%3e",U_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='18'%20fill='none'%20viewBox='0%200%2018%2018'%3e%3cpath%20fill='%23F9D11F'%20d='M11.327%2018.005H2.1a2.043%202.043%200%200%201-1.485-.651A2.291%202.291%200%200%201%200%2015.78V2.224C0%201.634.221%201.068.615.65A2.043%202.043%200%200%201%202.1%200h9.227a2%202%200%200%201%20.803.17c.255.111.487.275.682.481.195.207.35.452.455.722.106.27.16.559.16.85v13.558c0%20.292-.054.581-.16.851-.105.27-.26.515-.455.721a2.1%202.1%200%200%201-.681.482%202%202%200%200%201-.804.17Z'/%3e%3cpath%20fill='%234C86C6'%20d='m12.187%2014.972%205.097-5.396A2.776%202.776%200%200%200%2018%207.682a2.772%202.772%200%200%200-.745-1.88%202.473%202.473%200%200%200-1.777-.788%202.469%202.469%200%200%200-1.788.758l-5.096%205.396v3.804h3.593Z'/%3e%3cpath%20fill='%23fff'%20d='M2.506%2014.971h6.087v-1.705H2.506v1.705Zm0-10.801h8.415V2.464H2.506V4.17Zm2.328%202.842h3.938V5.306H4.834v1.706Z'/%3e%3cpath%20fill='%231565B2'%20d='m8.594%2011.168-.001%203.803%203.594.001%201.24-1.313V6.051l-4.833%205.117Z'/%3e%3c/svg%3e",H_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='18'%20fill='none'%20viewBox='0%200%2018%2018'%3e%3cg%20clip-path='url(%23a)'%3e%3cpath%20fill='%238552A1'%20d='M9%200a9%209%200%200%200-9%209%209%209%200%200%200%209%209%209%209%200%200%200%209-9%209%209%200%200%200-9-9Zm5.934%206.21L8.16%2012.988a.843.843%200%200%201-.599.247.844.844%200%200%201-.6-.247L3.066%209.09a.846.846%200%201%201%201.198-1.197L7.56%2011.19l6.177-6.177a.847.847%200%201%201%201.197%201.198Z'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='a'%3e%3cpath%20fill='%23fff'%20d='M0%200h18v18H0z'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",V_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='12'%20fill='none'%20viewBox='0%200%2012%2012'%3e%3crect%20width='9.917'%20height='9.917'%20x='.875'%20y='.875'%20stroke='%23C9CDD4'%20stroke-width='.583'%20rx='4.958'/%3e%3c/svg%3e",z_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20fill='none'%20viewBox='0%200%2020%2020'%3e%3cpath%20fill='%238552A1'%20d='M15.5%200h-11A4.5%204.5%200%200%200%200%204.5v11A4.5%204.5%200%200%200%204.5%2020h11a4.5%204.5%200%200%200%204.5-4.5v-11A4.5%204.5%200%200%200%2015.5%200Zm1.394%206.902-7.445%207.444-.03.028-.033.028-.037.028-.035.025-.039.024-.036.021-.042.02-.037.018-.044.016-.037.014-.045.01-.038.01-.047.007H8.74l-.048-.006h-.035l-.05-.011-.033-.01-.049-.015-.032-.012-.048-.022-.031-.015-.047-.028-.03-.016c-.017-.011-.033-.024-.05-.036l-.022-.016a.887.887%200%200%201-.067-.06l-3.949-3.95a.883.883%200%200%201%20.01-1.26.904.904%200%200%201%201.261.033l3.304%203.303%206.82-6.82a.884.884%200%201%201%201.25%201.25l-.001-.002Z'/%3e%3cpath%20fill='%23fff'%20d='m15.645%205.654-6.82%206.82L5.523%209.17a.904.904%200%200%200-1.263-.03.883.883%200%200%200-.011%201.259l3.95%203.948a.866.866%200%200%200%20.068.06l.022.016a.711.711%200%200%200%20.05.037l.029.016.047.027.031.015.048.023.033.011.048.017.034.008.049.011h.035l.048.007h.208l.048-.008.037-.008.045-.012.037-.014.044-.016.038-.017.041-.02.036-.022.039-.023.035-.025.037-.028.033-.028.03-.028%207.444-7.444a.886.886%200%200%200%200-1.25.885.885%200%200%200-1.25%200l.001.003Z'/%3e%3c/svg%3e",W_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20fill='none'%20viewBox='0%200%2020%2020'%3e%3crect%20x='1'%20y='1'%20width='18'%20height='18'%20rx='4'%20stroke='%238552A1'%20stroke-width='2'/%3e%3c/svg%3e",dd="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='15'%20height='15'%20fill='none'%20viewBox='0%200%2015%2015'%3e%3cpath%20fill='%23000'%20d='M7.5%200a7.5%207.5%200%200%200%200%2015%207.5%207.5%200%200%200%200-15Zm4.242%206.567L8.03%2010.28a.751.751%200%200%201-1.062%200l-3.71-3.713A.751.751%200%200%201%204.32%205.505L7.5%208.688l3.183-3.18a.75.75%200%201%201%201.06%201.06Z'/%3e%3c/svg%3e",vd="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='15'%20height='15'%20fill='none'%20viewBox='0%200%2015%2015'%3e%3cpath%20fill='%23000'%20d='M15%207.5a7.5%207.5%200%201%201-15%200%207.5%207.5%200%200%201%2015%200Z'/%3e%3cpath%20fill='%23fff'%20d='M3%207.75A.75.75%200%200%201%203.75%207h7.5a.75.75%200%200%201%200%201.5h-7.5A.75.75%200%200%201%203%207.75Z'/%3e%3c/svg%3e",G_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='23'%20fill='none'%20viewBox='0%200%2024%2023'%3e%3cpath%20fill='%238552A1'%20d='M.858%202.656V0H24v2.656H.858Zm9.919%207.034V7.034h13.202V9.69H10.777Zm.02%205.464v-2.656h13.165v2.656H10.794h.003ZM.91%2022.085v-2.656h23.015v2.656H.91ZM0%209.621l4.109-4.18%204.106%204.182H0V9.62Zm.045%203.601h8.208L4.15%2017.356.045%2013.222Z'/%3e%3c/svg%3e",$_="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20fill='none'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23C9CDD4'%20d='M5.6%2018.4h12.8V5.6H5.6v12.8ZM24%2020.8a3.2%203.2%200%200%201-2.874%203.184L20.8%2024H3.2l-.326-.016a3.2%203.2%200%200%201-2.856-2.858L0%2020.8V3.2A3.2%203.2%200%200%201%203.2%200h17.6A3.2%203.2%200%200%201%2024%203.2v17.6Z'/%3e%3cpath%20fill='%238552A1'%20d='M17.4%2021.6a1.2%201.2%200%201%201%200%202.4H6.6a1.2%201.2%200%201%201%200-2.4h10.8ZM0%2017.4V6.6a1.2%201.2%200%201%201%202.4%200v10.8a1.2%201.2%200%201%201-2.4%200Zm21.6%200V6.6a1.2%201.2%200%201%201%202.4%200v10.8a1.2%201.2%200%201%201-2.4%200ZM17.4%200a1.2%201.2%200%201%201%200%202.4H6.6a1.2%201.2%200%200%201%200-2.4h10.8Z'/%3e%3c/svg%3e",zV="/assets/sankeyview-4v1IjNp4.svg",WV="/assets/information-D2vc0JhH.svg",GV="/assets/select-B3ZlOGIm.svg",X_="/assets/weixin-BLJIkz8T.svg",$V={class:"page"},XV={class:"top-bar"},YV={class:"brand"},KV=["src"],ZV=["src"],jV={class:"toolbar"},qV=["src"],JV={class:"theme-wheel-wrap"},QV=["onClick"],ez=["src"],tz={class:"tool-item"},rz=["src"],az=["onKeydown"],nz={class:"upload-text"},iz={class:"export-box"},sz=["src"],oz=["src"],fz=["src"],lz=["src"],uz=["src"],cz={class:"content"},hz={class:"left-pane"},dz={class:"panel block-panel select-panel"},vz=["src"],pz={class:"field-block"},gz=["src","alt"],mz={key:0,class:"column-list"},xz=["src"],_z={class:"column-label"},yz=["onClick"],wz=["src"],Tz={class:"field-block"},Sz=["src","alt"],Ez={key:0,class:"column-list"},Cz=["src"],Az={class:"column-label"},Dz=["onClick"],kz=["src"],bz={class:"field-block"},Fz=["src","alt"],Iz={key:0,class:"column-list"},Mz=["src"],Rz={class:"column-label"},Pz=["onClick"],Lz=["src"],Oz={class:"panel info-panel"},Bz=["src"],Nz={key:0,class:"info-log-list"},Uz={key:1,class:"info-log-empty"},Hz={class:"panel preview-panel"},Vz={class:"preview-head"},zz=["src"],Wz={class:"preview-controls"},Gz={class:"compact-control"},$z=["src"],Xz=["value"],Yz={class:"compact-control"},Kz=["src"],Zz=["value"],jz={class:"slider-label desktop-only"},qz=["src"],Jz={class:"slider-track-wrap"},Qz={class:"slider-label desktop-only"},eW=["src"],tW={class:"slider-track-wrap"},rW={key:2,class:"compact-control mobile-only"},aW=["value"],nW={class:"direction-switch-text"},iW={class:"label-position-control"},sW=["value"],oW={class:"target-align-control"},fW=["value"],pd="sankey-workspace-v1",Y_=1,K_=42,Z_=8,j_=8,lW=sC({__name:"App",setup(e){Kp([WM,RR,xP,dP]);const t=RV,r=mt("figma-violet"),a=mt(!1),n=mt(!1),i=mt("点击上传或将csv/xls文件拖到这里上传"),s=mt(""),o=mt(""),f=mt(null),l=mt(0),u=mt(null),c=mt(null),h=mt(null),d=mt(null),v=mt(null),p=mt(null);let g=null,m=0,x=null;const _=mt({}),y=mt(null),F=mt(null),k=mt(null),E=mt(!1),C=mt(!1),T=mt(!1),b=zf({sourceDataColumn:null,sourceDescriptionColumns:[],targetDescriptionColumns:[],delimiter:"-"}),M=mt("source-to-target"),R=mt(5),B=mt(24),G=mt("inner"),re=[{value:"inner",label:"内"},{value:"outer",label:"外"},{value:"left",label:"左"},{value:"right",label:"右"}],j=mt("between"),q=[{value:"between",label:"两端"},{value:"middle",label:"中间"},{value:"top",label:"顶部"},{value:"bottom",label:"底部"}],ve=[{value:"source-to-target",label:"源"},{value:"target-to-source",label:"目标"}],U=[0,5,10,15,20,25,30],xe=[0,10,20,30,40,50,60,70,80],se=zf({sourceData:!0,sourceDesc:!0,targetDesc:!0}),P=Jr(()=>{const S=t.findIndex(A=>A.id===r.value);return S>=0?S:0}),V=Jr(()=>t[P.value]??t[0]),H=Jr(()=>{const S=y.value?.headers??[];return S.length>0?S.map((A,D)=>A||`列${D+1}`):["列1","列2","列3","列4"]}),z=Jr(()=>F.value?.meta.warnings.slice(0,8)??[]),ae=Jr(()=>b.sourceDataColumn===null?"未选择":H.value[b.sourceDataColumn]??`列${b.sourceDataColumn+1}`),pe=Jr(()=>b.sourceDescriptionColumns.length===0?"未选择":b.sourceDescriptionColumns.map(S=>H.value[S]??`列${S+1}`).join(",")),le=Jr(()=>b.targetDescriptionColumns.length===0?"未选择":b.targetDescriptionColumns.map(S=>H.value[S]??`列${S+1}`).join(",")),ie=Jr(()=>{const S=[],A=y.value,D=F.value;return A?S.push({level:"info",text:`解析信息: 已加载 ${A.rows.length} 行,${A.headers.length} 列`}):S.push({level:"info",text:"解析信息: 尚未加载数据文件"}),D&&(S.push({level:"info",text:`解析信息: 已生成 ${D.nodes.length} 个节点,${D.links.length} 条连线`}),D.meta.droppedRows>0&&S.push({level:"warn",text:`告警: 已跳过 ${D.meta.droppedRows} 行异常数据`})),S.push({level:"info",text:`日志: 源数据列=${ae.value}`}),S.push({level:"info",text:`日志: 源标签列=${pe.value}`}),S.push({level:"info",text:`日志: 目标标签列=${le.value}`}),z.value.forEach(I=>{S.push({level:"warn",text:`告警: ${I}`})}),s.value&&S.push({level:"error",text:`错误: ${s.value}`}),o.value&&S.push({level:"error",text:`错误: ${o.value}`}),S});function ne(S,A,D){const I=S===0&&A>0,L=A===0&&S>0;if(!(!I&&!L))return D==="left"?"left":D==="right"?"right":D==="inner"?I?"right":"left":I?"left":"right"}function ue(S){const A=new Map,D=Math.max(0,l.value-B.value*2-Z_-j_);if(D<=0||S.length===0)return A;const I=new Map,L=new Map,O=new Map,Z=new Map,fe=[],te=new Set;S.forEach(et=>{L.set(et.source,(L.get(et.source)??0)+1),I.set(et.target,(I.get(et.target)??0)+1),O.set(et.source,(O.get(et.source)??0)+et.value),Z.set(et.target,(Z.get(et.target)??0)+et.value),te.has(et.source)||(te.add(et.source),fe.push(et.source)),te.has(et.target)||(te.add(et.target),fe.push(et.target))});const ee=fe.filter(et=>{const dr=I.get(et)??0,Ss=L.get(et)??0;return dr===0&&Ss>0}),Q=fe.filter(et=>{const dr=I.get(et)??0;return(L.get(et)??0)===0&&dr>0});if(ee.length===0||Q.length===0)return A;const ge=ee.reduce((et,dr)=>et+(O.get(dr)??0),0);if(ge<=0)return A;const Te=Math.max(0,R.value),Ce=Math.max(0,ee.length-1),_e=Math.max(0,D-Te*Ce),Ee=ge>0?_e/ge:0,Oe=ge*Ee,ht=Oe+Te*Ce;let lt=Te;j.value==="between"&&Q.length>1&&(lt=(ht-Oe)/(Q.length-1)),lt=Math.max(0,lt);const Ut=Oe+lt*Math.max(0,Q.length-1);let va=0;j.value==="middle"?va=(ht-Ut)/2:j.value==="bottom"&&(va=ht-Ut),va=Math.max(0,va);let an=va;return Q.forEach((et,dr)=>{A.set(et,an/D),an+=(Z.get(et)??0)*Ee,dr{const S=N.value,A=new Set,D=new Map,I=new Map,L=ue(S);S.forEach(Z=>{A.add(Z.source),A.add(Z.target),I.set(Z.source,(I.get(Z.source)??0)+1),D.set(Z.target,(D.get(Z.target)??0)+1)});const O=V.value.colors;return Array.from(A).map((Z,fe)=>{const te=D.get(Z)??0,ee=I.get(Z)??0,Q=ne(te,ee,G.value);return{name:Z,itemStyle:{color:O[fe%O.length]},localY:L.get(Z),label:Q?{position:Q}:void 0}})}),N=Jr(()=>F.value?MV(F.value.links,M.value):[]),W=Jr(()=>({backgroundColor:"#f7f8fa",tooltip:{trigger:"item"},series:[{type:"sankey",left:B.value,top:B.value+Z_,right:B.value,bottom:B.value+j_,nodeAlign:"justify",nodeGap:R.value,nodeWidth:14,roam:!0,label:{color:"#4e5969",fontSize:12},lineStyle:{color:"source",curveness:.45,opacity:.45},data:w.value,links:N.value}]}));tC(()=>{const S=y.value;if(!S){F.value=null,o.value="";return}if(b.sourceDataColumn===null){F.value=null,o.value="请选择源数据列";return}if(b.targetDescriptionColumns.length===0){F.value=null,o.value="请至少选择一个目标描述列";return}try{F.value=IV(S,{sourceDataColumn:b.sourceDataColumn,sourceDescriptionColumns:[...b.sourceDescriptionColumns],targetDescriptionColumns:[...b.targetDescriptionColumns],delimiter:b.delimiter}),o.value=""}catch(A){F.value=null,o.value=A instanceof Error?A.message:"构建桑基图失败"}}),pf(W,()=>{g&&g.setOption(W.value,!0)},{deep:!0}),pf(()=>[b.sourceDataColumn,b.sourceDescriptionColumns.join(","),b.targetDescriptionColumns.join(","),b.delimiter,M.value,R.value,B.value,r.value,G.value,j.value,se.sourceData,se.sourceDesc,se.targetDesc,k.value?.name??"",k.value?.base64.length??0],()=>{E.value||Ol()});function J(){K(),Y(),l.value=f.value?.clientHeight??l.value,g?.resize()}function K(){if(typeof window>"u")return;const S=window.visualViewport?.height??window.innerHeight;document.documentElement.style.setProperty("--app-vh",`${S*.01}px`)}function Y(){typeof window>"u"||(C.value=window.matchMedia("(max-width: 640px)").matches,T.value=window.matchMedia("(max-width: 1024px)").matches)}function oe(){const S=f.value;!S||typeof ResizeObserver>"u"||(x?.disconnect(),x=new ResizeObserver(()=>{J()}),x.observe(S))}function ce(){a.value=!1}function de(){const S=!a.value;a.value=S,S&&Yv(()=>{ke(),De(P.value)})}function he(S){r.value=S,a.value=!1}function Ae(){n.value=!n.value}function ye(S){const A=S.target;if(A){if(a.value){const D=d.value,I=h.value;!D?.contains(A)&&!I?.contains(A)&&(a.value=!1)}if(n.value){const D=p.value,I=v.value;!D?.contains(A)&&!I?.contains(A)&&(n.value=!1)}}}function we(){m!==0&&cancelAnimationFrame(m),m=requestAnimationFrame(()=>{const S=c.value;if(!S)return;const A=Math.round(S.scrollTop/K_),D=Math.max(0,Math.min(t.length-1,A));r.value=t[D]?.id??r.value})}function De(S,A){const D=c.value;if(!D)return;const I=S*K_,L=Math.max(0,D.scrollHeight-D.clientHeight),O=Math.max(0,Math.min(L,I));D.scrollTo({top:O,behavior:"auto"})}function ke(){if(!a.value)return;const S=h.value,A=d.value;if(!S||!A)return;const D=S.getBoundingClientRect(),I=A.offsetWidth||292,L=window.innerWidth,O=8;let Z=D.left+D.width/2-I/2;Z=Math.max(O,Math.min(L-I-O,Z));const fe=D.bottom+8,te=D.left+D.width/2,ee=Math.max(20,Math.min(I-20,te-Z));_.value={left:`${Z}px`,top:`${fe}px`,"--theme-arrow-left":`${ee}px`}}function Pe(S){const A=Math.abs(S-P.value);return A===0?1:A===1?.75:A===2?.5:.3}function be(S,A,D){const I=Math.max(1,D-A),L=Math.max(0,Math.min(1,(S-A)/I)),Z=(.5-L)*18;return{left:`calc(${L*100}% + ${Z}px)`}}function rt(S,A,D){const I=Math.max(1,D-A);return{"--slider-percent":`${Math.max(0,Math.min(1,(S-A)/I))*100}%`}}function Fe(S){if(b.sourceDescriptionColumns.includes(S)){b.sourceDescriptionColumns=b.sourceDescriptionColumns.filter(A=>A!==S);return}b.sourceDescriptionColumns=[...b.sourceDescriptionColumns,S].sort((A,D)=>A-D)}function Ve(S){se[S]=!se[S]}function Ye(S){if(b.targetDescriptionColumns.includes(S)){b.targetDescriptionColumns=b.targetDescriptionColumns.filter(A=>A!==S);return}b.targetDescriptionColumns=[...b.targetDescriptionColumns,S].sort((A,D)=>A-D)}function Qe(){M.value=M.value==="source-to-target"?"target-to-source":"source-to-target"}function qt(){u.value?.click()}function Nt(S){return S.trim().toLowerCase().replace(/[\s_-]+/g,"")}function Jt(S,A){const D=new Set(A.map(I=>Nt(I)));return S.findIndex(I=>D.has(Nt(I)))}function _s(S){const A=S.replace(/,/g,"").trim();return A?!Number.isNaN(Number(A)):!1}function ci(S){return(S.rows[0]??[]).findIndex(D=>_s(D??""))}function ys(S){const A=S.headers,D=Jt(A,["data","value","数据","值"]),I=ci(S),L=Jt(A,["source","源"]),O=Jt(A,["target","目标"]);b.sourceDataColumn=D>=0?D:I>=0?I:null,b.sourceDescriptionColumns=L>=0?[L]:[],b.targetDescriptionColumns=O>=0?[O]:[]}function Do(S){b.sourceDataColumn=S.sourceDataColumn,b.sourceDescriptionColumns=[...S.sourceDescriptionColumns],b.targetDescriptionColumns=[...S.targetDescriptionColumns],b.delimiter=S.delimiter}function Pl(S,A){const D=S.toLowerCase();if(D.endsWith(".csv")){const I=new TextDecoder().decode(A);return DV(I)}if(D.endsWith(".xlsx")||D.endsWith(".xls"))return B_(A);throw new Error("仅支持 .csv / .xlsx / .xls 文件")}function Ec(S){const A=new Uint8Array(S),D=32768;let I="";for(let L=0;LMath.min(Math.max(ee,0),D-1),L=ee=>Array.isArray(ee)?ee.filter(Q=>Number.isInteger(Q)).map(Q=>I(Q)).filter((Q,ge,Te)=>Te.indexOf(Q)===ge).sort((Q,ge)=>Q-ge):[],O={sourceDataColumn:I(2),sourceDescriptionColumns:[I(0)].filter((ee,Q,ge)=>ge.indexOf(ee)===Q),targetDescriptionColumns:[I(2)].filter((ee,Q,ge)=>ge.indexOf(ee)===Q),delimiter:"-"};if(!S)return O;const Z=typeof S.sourceDataColumn=="number"&&Number.isInteger(S.sourceDataColumn)?I(S.sourceDataColumn):O.sourceDataColumn,fe=L(S.sourceDescriptionColumns),te=L(S.targetDescriptionColumns);return{sourceDataColumn:Z,sourceDescriptionColumns:fe,targetDescriptionColumns:te.length>0?te:O.targetDescriptionColumns,delimiter:typeof S.delimiter=="string"&&S.delimiter.length>0?S.delimiter:"-"}}function Ol(){if(typeof window>"u")return;const S={version:Y_,uploadedFile:k.value??void 0,mapping:{sourceDataColumn:b.sourceDataColumn,sourceDescriptionColumns:[...b.sourceDescriptionColumns],targetDescriptionColumns:[...b.targetDescriptionColumns],delimiter:b.delimiter},direction:M.value,nodeGap:R.value,chartPadding:B.value,selectedThemeId:r.value,labelPositionMode:G.value,targetAlignMode:j.value,sectionVisible:{sourceData:se.sourceData,sourceDesc:se.sourceDesc,targetDesc:se.targetDesc}};try{window.localStorage.setItem(pd,JSON.stringify(S))}catch(A){console.warn("工作区保存失败:",A)}}async function Ac(){if(typeof window>"u")return{restoredUploadedFile:!1};const S=window.localStorage.getItem(pd);if(!S)return{restoredUploadedFile:!1};E.value=!0;try{const A=JSON.parse(S);if(A.version!==Y_)return{restoredUploadedFile:!1};if((A.direction==="source-to-target"||A.direction==="target-to-source")&&(M.value=A.direction),typeof A.nodeGap=="number"&&Number.isFinite(A.nodeGap)&&(R.value=Math.max(0,Math.min(30,A.nodeGap))),typeof A.chartPadding=="number"&&Number.isFinite(A.chartPadding)&&(B.value=Math.max(0,Math.min(80,A.chartPadding))),typeof A.selectedThemeId=="string"&&t.some(L=>L.id===A.selectedThemeId)&&(r.value=A.selectedThemeId),(A.labelPositionMode==="inner"||A.labelPositionMode==="outer"||A.labelPositionMode==="left"||A.labelPositionMode==="right")&&(G.value=A.labelPositionMode),(A.targetAlignMode==="between"||A.targetAlignMode==="middle"||A.targetAlignMode==="top"||A.targetAlignMode==="bottom")&&(j.value=A.targetAlignMode),A.sectionVisible&&(typeof A.sectionVisible.sourceData=="boolean"&&(se.sourceData=A.sectionVisible.sourceData),typeof A.sectionVisible.sourceDesc=="boolean"&&(se.sourceDesc=A.sectionVisible.sourceDesc),typeof A.sectionVisible.targetDesc=="boolean"&&(se.targetDesc=A.sectionVisible.targetDesc)),!A.uploadedFile)return{restoredUploadedFile:!1,restoredMapping:A.mapping};const D=ws(A.uploadedFile.base64),I=Pl(A.uploadedFile.name,D);return y.value=I,k.value=A.uploadedFile,A.mapping?Do(Ll(A.mapping,I.headers.length)):ys(I),i.value=`已恢复: ${A.uploadedFile.name}(${I.rows.length} 行)`,s.value="",{restoredUploadedFile:!0}}catch(A){return window.localStorage.removeItem(pd),console.warn("工作区恢复失败,已清理坏数据:",A),{restoredUploadedFile:!1}}finally{E.value=!1}}async function Bl(S){s.value="";try{const A=await S.arrayBuffer(),D=Pl(S.name,A);y.value=D,ys(D),k.value=Cc(S.name,S.type,A),i.value=`已加载: ${S.name}(${D.rows.length} 行)`,Ol()}catch(A){s.value=A instanceof Error?A.message:"文件解析失败"}}async function Dc(S){const A=S.target,D=A.files?.[0];D&&(await Bl(D),A.value="")}async function kc(S){const A=S.dataTransfer?.files?.[0];A&&await Bl(A)}async function bc(){if(!y.value)try{const S=await fetch("/data/example0.xlsx",{cache:"no-store"});if(!S.ok)throw new Error(`示例文件加载失败: HTTP ${S.status}`);const A=await S.arrayBuffer(),D=B_(A);y.value=D,ys(D),k.value=null,i.value=`已加载: example0.xlsx(${D.rows.length} 行)`,s.value=""}catch(S){s.value=S instanceof Error?S.message:"示例文件加载失败"}}function Ts(){const S=new Date,A=D=>String(D).padStart(2,"0");return`${S.getFullYear()}${A(S.getMonth()+1)}${A(S.getDate())}_${A(S.getHours())}${A(S.getMinutes())}${A(S.getSeconds())}`}function Nl(S,A){const D=document.createElement("a");D.href=S,D.download=A,document.body.append(D),D.click(),D.remove()}function Fc(){if(!g)return;const S=g.getWidth(),A=g.getHeight(),D=document.createElement("div");D.style.position="fixed",D.style.left="-99999px",D.style.top="-99999px",D.style.width=`${S}px`,D.style.height=`${A}px`,D.style.opacity="0",D.style.pointerEvents="none",document.body.append(D);let I=null;try{I=Hm(D,void 0,{renderer:"svg",width:S,height:A}),I.setOption(g.getOption(),!0);const L=I.getDataURL({type:"svg",backgroundColor:"#ffffff"});Nl(L,`sankey_${Ts()}.svg`)}finally{I?.dispose(),D.remove()}}function Ic(){if(!g)return;const S=g.getDataURL({type:"png",backgroundColor:"#ffffff",pixelRatio:2});Nl(S,`sankey_${Ts()}.png`)}return Fy(()=>{const S=f.value;S&&(K(),Y(),g=Hm(S,void 0,{renderer:"canvas"}),l.value=S.clientHeight,g.setOption(W.value),oe(),J(),(async()=>{const{restoredUploadedFile:A,restoredMapping:D}=await Ac();A||(await bc(),D&&y.value&&Do(Ll(D,y.value.headers.length)))})(),window.addEventListener("resize",J),window.visualViewport?.addEventListener("resize",J),window.visualViewport?.addEventListener("scroll",J),window.addEventListener("resize",ke),window.addEventListener("scroll",ke,!0),window.addEventListener("pointerdown",ye))}),Iy(()=>{window.removeEventListener("resize",J),window.visualViewport?.removeEventListener("resize",J),window.visualViewport?.removeEventListener("scroll",J),window.removeEventListener("resize",ke),window.removeEventListener("scroll",ke,!0),window.removeEventListener("pointerdown",ye),x?.disconnect(),x=null,g?.dispose(),g=null,m!==0&&(cancelAnimationFrame(m),m=0)}),(S,A)=>(it(),ut("div",$V,[me("header",XV,[me("div",YV,[me("img",{src:Ke(PV),alt:"webicon",class:"logo"},null,8,KV),me("img",{src:Ke(LV),alt:"星程桑基图",class:"title-logo"},null,8,ZV)]),me("div",jV,[me("div",{ref_key:"themeTriggerRef",ref:h,class:"tool-item theme-trigger"},[A[15]||(A[15]=me("span",{class:"tool-label"},"选择主题",-1)),me("button",{class:"icon-btn",type:"button",title:"选择主题","aria-label":"选择主题",onClick:pi(de,["stop"])},[me("img",{src:Ke(OV),alt:"choose-color",title:"选择主题"},null,8,qV)]),a.value?(it(),ut("div",{key:0,ref_key:"themePopoverRef",ref:d,class:"theme-popover",style:Ta(_.value),onClick:A[0]||(A[0]=pi(()=>{},["stop"]))},[A[14]||(A[14]=me("div",{class:"theme-header"},"选择配色主题",-1)),me("div",JV,[me("div",{ref_key:"themeWheelRef",ref:c,class:"theme-wheel",onScroll:we},[(it(!0),ut(Ct,null,pa(Ke(t),(D,I)=>(it(),ut("button",{key:D.id,class:eo(["theme-row",{selected:r.value===D.id}]),style:Ta({opacity:Pe(I)}),type:"button",onClick:L=>he(D.id)},[me("img",{src:r.value===D.id?Ke(H_):Ke(V_),alt:"主题选择"},null,8,ez),me("div",{class:"palette",style:Ta({gridTemplateColumns:`repeat(${D.colors.length}, 1fr)`})},[(it(!0),ut(Ct,null,pa(D.colors,L=>(it(),ut("span",{key:`${D.id}-${L}`,class:"palette-cell",style:Ta({backgroundColor:L})},null,4))),128))],4)],14,QV))),128))],544),A[13]||(A[13]=me("div",{class:"theme-mask"},null,-1))])],4)):Fo("",!0)],512),me("div",tz,[A[16]||(A[16]=me("span",{class:"tool-label"},"文件上传",-1)),me("button",{class:"icon-btn",type:"button",title:"上传文件","aria-label":"上传文件",onClick:qt},[me("img",{src:Ke(BV),alt:"upload",title:"上传文件"},null,8,rz)])]),me("label",{class:"upload-area",onDragover:A[1]||(A[1]=pi(()=>{},["prevent"])),onDrop:pi(kc,["prevent"]),onKeydown:bA(pi(qt,["prevent"]),["enter"]),onClick:ce},[me("input",{ref_key:"fileInputRef",ref:u,class:"hidden-input",type:"file",accept:".csv,.xls,.xlsx",onChange:Dc},null,544),me("span",nz,br(i.value),1)],40,az),me("div",iz,[me("img",{src:Ke(NV),alt:"export",class:"export-main",title:"导出"},null,8,sz),me("button",{class:"icon-btn export-item",type:"button",title:"导出 SVG","aria-label":"导出 SVG",onClick:Fc},[me("img",{src:Ke(UV),alt:"export-svg",title:"导出 SVG"},null,8,oz)]),me("button",{class:"icon-btn export-item",type:"button",title:"导出 PNG","aria-label":"导出 PNG",onClick:Ic},[me("img",{src:Ke(HV),alt:"export-png",title:"导出 PNG"},null,8,fz)])]),me("div",{ref_key:"weixinTriggerRef",ref:v,class:"tool-item weixin-trigger"},[me("button",{class:"icon-btn weixin-btn",type:"button",title:"微信小程序","aria-label":"微信小程序",onClick:pi(Ae,["stop"])},[me("img",{src:Ke(X_),alt:"weixin",title:"微信小程序"},null,8,lz)]),n.value?(it(),ut("div",{key:0,ref_key:"weixinPopoverRef",ref:p,class:"weixin-popover",onClick:A[2]||(A[2]=pi(()=>{},["stop"]))},[A[17]||(A[17]=me("div",{class:"weixin-header"},"微信扫码使用小程序",-1)),me("img",{src:Ke(X_),alt:"小程序二维码",class:"weixin-qrcode"},null,8,uz)],512)):Fo("",!0)],512)])]),me("main",cz,[me("section",hz,[me("article",dz,[me("img",{src:Ke(GV),alt:"数据选择器",class:"panel-title-svg panel-title-select"},null,8,vz),me("div",pz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[3]||(A[3]=D=>Ve("sourceData"))},[me("img",{src:se.sourceData?Ke(vd):Ke(dd),alt:se.sourceData?"折叠":"展开",class:"expand-icon"},null,8,gz),A[18]||(A[18]=me("h3",null,"源数据(link value)",-1))]),se.sourceData?(it(),ut("div",mz,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`source-data-${I}`,class:"column-row"},[me("img",{src:Ke(VV),alt:"数据列",class:"column-icon"},null,8,xz),me("span",_z,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>b.sourceDataColumn=I},[me("img",{src:b.sourceDataColumn===I?Ke(H_):Ke(V_),alt:"单选"},null,8,wz)],8,yz)]))),128))])):Fo("",!0)]),me("div",Tz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[4]||(A[4]=D=>Ve("sourceDesc"))},[me("img",{src:se.sourceDesc?Ke(vd):Ke(dd),alt:se.sourceDesc?"折叠":"展开",class:"expand-icon"},null,8,Sz),A[19]||(A[19]=me("h3",null,"源标签(Source label)",-1))]),se.sourceDesc?(it(),ut("div",Ez,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`source-desc-${I}`,class:"column-row"},[me("img",{src:Ke(U_),alt:"源标签列",class:"column-icon"},null,8,Cz),me("span",Az,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>Fe(I)},[me("img",{src:b.sourceDescriptionColumns.includes(I)?Ke(z_):Ke(W_),alt:"复选"},null,8,kz)],8,Dz)]))),128))])):Fo("",!0)]),me("div",bz,[me("button",{class:"field-title-wrap",type:"button",onClick:A[5]||(A[5]=D=>Ve("targetDesc"))},[me("img",{src:se.targetDesc?Ke(vd):Ke(dd),alt:se.targetDesc?"折叠":"展开",class:"expand-icon"},null,8,Fz),A[20]||(A[20]=me("h3",null,"目标标签(target label)",-1))]),se.targetDesc?(it(),ut("div",Iz,[(it(!0),ut(Ct,null,pa(H.value,(D,I)=>(it(),ut("div",{key:`target-desc-${I}`,class:"column-row"},[me("img",{src:Ke(U_),alt:"目标标签列",class:"column-icon"},null,8,Mz),me("span",Rz,br(D),1),me("button",{class:"select-btn",type:"button",onClick:L=>Ye(I)},[me("img",{src:b.targetDescriptionColumns.includes(I)?Ke(z_):Ke(W_),alt:"复选"},null,8,Lz)],8,Pz)]))),128))])):Fo("",!0)])]),me("article",Oz,[me("img",{src:Ke(WV),alt:"信息日志",class:"panel-title-svg panel-title-info"},null,8,Bz),ie.value.length>0?(it(),ut("ul",Nz,[(it(!0),ut(Ct,null,pa(ie.value,(D,I)=>(it(),ut("li",{key:`${D.level}-${I}-${D.text}`,class:eo(["info-log-item",`level-${D.level}`])},br(D.text),3))),128))])):(it(),ut("p",Uz,"暂无日志"))])]),me("section",Hz,[me("div",Vz,[me("img",{src:Ke(zV),alt:"桑基图预览",title:"桑基图预览",class:"panel-title-svg panel-title-preview"},null,8,zz),me("div",Wz,[T.value?(it(),ut(Ct,{key:0},[me("label",Gz,[me("img",{src:Ke(G_),alt:"间距",title:"间距",class:"slider-icon"},null,8,$z),hi(me("select",{"onUpdate:modelValue":A[6]||(A[6]=D=>R.value=D),class:"compact-select","aria-label":"间距"},[(it(),ut(Ct,null,pa(U,D=>me("option",{key:`gap-${D}`,value:D},br(D),9,Xz)),64))],512),[[Io,R.value,void 0,{number:!0}]])]),me("label",Yz,[me("img",{src:Ke($_),alt:"边距",title:"边距",class:"slider-icon"},null,8,Kz),hi(me("select",{"onUpdate:modelValue":A[7]||(A[7]=D=>B.value=D),class:"compact-select","aria-label":"边距"},[(it(),ut(Ct,null,pa(xe,D=>me("option",{key:`padding-${D}`,value:D},br(D),9,Zz)),64))],512),[[Io,B.value,void 0,{number:!0}]])])],64)):(it(),ut(Ct,{key:1},[me("label",jz,[me("img",{src:Ke(G_),alt:"间距",title:"间距",class:"slider-icon"},null,8,qz),me("div",Jz,[me("span",{class:"slider-value",style:Ta(be(R.value,0,30))},br(R.value),5),hi(me("input",{"onUpdate:modelValue":A[8]||(A[8]=D=>R.value=D),class:"slider-input",style:Ta(rt(R.value,0,30)),type:"range",min:"0",max:"30","aria-label":"间距"},null,4),[[lg,R.value,void 0,{number:!0}]])])]),me("label",Qz,[me("img",{src:Ke($_),alt:"边距",title:"边距",class:"slider-icon"},null,8,eW),me("div",tW,[me("span",{class:"slider-value",style:Ta(be(B.value,0,80))},br(B.value),5),hi(me("input",{"onUpdate:modelValue":A[9]||(A[9]=D=>B.value=D),class:"slider-input",style:Ta(rt(B.value,0,80)),type:"range",min:"0",max:"80","aria-label":"边距"},null,4),[[lg,B.value,void 0,{number:!0}]])])])],64)),C.value?(it(),ut("label",rW,[A[21]||(A[21]=me("span",{class:"compact-label"},"方向",-1)),hi(me("select",{"onUpdate:modelValue":A[10]||(A[10]=D=>M.value=D),class:"compact-select","aria-label":"方向"},[(it(),ut(Ct,null,pa(ve,D=>me("option",{key:D.value,value:D.value},br(D.label),9,aW)),64))],512),[[Io,M.value]])])):(it(),ut("button",{key:3,class:"direction-control desktop-only",type:"button",onClick:Qe},[A[23]||(A[23]=me("span",{class:"direction-label"},"方向",-1)),me("span",{class:eo(["direction-switch",{on:M.value==="source-to-target"}])},[me("span",nW,br(M.value==="source-to-target"?"源":"目标"),1),A[22]||(A[22]=me("span",{class:"direction-switch-thumb"},null,-1))],2)])),me("label",iW,[A[24]||(A[24]=me("span",{class:"label-position-label"},"标签位置",-1)),hi(me("select",{"onUpdate:modelValue":A[11]||(A[11]=D=>G.value=D),class:"label-position-select"},[(it(),ut(Ct,null,pa(re,D=>me("option",{key:D.value,value:D.value},br(D.label),9,sW)),64))],512),[[Io,G.value]])]),me("label",oW,[A[25]||(A[25]=me("span",{class:"target-align-label"},"汇聚对齐",-1)),hi(me("select",{"onUpdate:modelValue":A[12]||(A[12]=D=>j.value=D),class:"target-align-select"},[(it(),ut(Ct,null,pa(q,D=>me("option",{key:D.value,value:D.value},br(D.label),9,fW)),64))],512),[[Io,j.value]])])])]),me("div",{ref_key:"chartRef",ref:f,class:"chart-area"},null,512)])]),A[26]||(A[26]=me("footer",{class:"footer"},"@版权说明:星程社所有,反馈邮箱:douboer@gmail.com",-1))]))}});MA(lW).mount("#app"); diff --git a/dist/assets/index-CilE6DOC.css b/dist/assets/index-CilE6DOC.css new file mode 100644 index 0000000..71ad6da --- /dev/null +++ b/dist/assets/index-CilE6DOC.css @@ -0,0 +1 @@ +:root{--primary-7: #8552a1;--primary-6: #9b6bc2;--fill-1: #f7f8fa;--fill-3: #e5e6eb;--fill-4: #c9cdd4;--text-1: #ffffff;--text-3: #86909c;--text-4: #4e5969;--danger-3: #fbaca3;--font-pingfang: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{background:#f3f4f6;color:#1d2129;font-family:var(--font-pingfang)}.page{position:relative;width:100%;height:calc(var(--app-vh, 1vh) * 100);padding:16px 16px 10px;display:flex;flex-direction:column;overflow:hidden}.top-bar{position:relative;display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px;padding:0 8px}.brand{display:flex;align-items:center;gap:8px}.logo{width:64px;height:64px;border-radius:16px}.title-logo{width:174px;height:auto}.toolbar{display:flex;align-items:center;gap:12px;flex:1;justify-content:flex-end}.tool-item{display:flex;align-items:center;gap:4px}.theme-trigger{position:relative}.tool-label{color:#1d2129;font-size:14px;white-space:nowrap}.icon-btn{border:0;background:transparent;cursor:pointer;padding:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}.icon-btn img{max-width:100%;max-height:100%;object-fit:contain}.upload-area{min-width:280px;max-width:420px;flex:1;min-height:38px;border-radius:6px;display:flex;align-items:center;padding:4px 10px;background:var(--fill-1);border:1px solid var(--fill-3);cursor:pointer;position:relative}.hidden-input{display:none}.upload-text{color:var(--text-4);font-size:12px}.export-box{display:flex;gap:6px;align-items:center;background:#fff;border:1px solid var(--fill-3);border-radius:8px;padding:2px 8px}.export-main{width:18px;height:34px}.export-item{width:40px;height:40px}.theme-popover{position:fixed;width:292px;border:1px solid var(--primary-7);border-radius:24px 24px 0 0;background:#fff;z-index:10;padding:8px 8px 10px}.theme-popover:before{content:"";position:absolute;top:-8px;left:var(--theme-arrow-left, 50%);width:14px;height:14px;background:#fff;border-top:1px solid var(--primary-7);border-left:1px solid var(--primary-7);transform:translate(-50%) rotate(45deg)}.theme-header{text-align:center;color:var(--primary-6);font-size:15px;margin-bottom:6px}.theme-wheel-wrap{--theme-row-height: 42px;position:relative;height:calc(var(--theme-row-height) * 5);overflow:hidden}.theme-wheel{height:100%;overflow-y:auto;padding-block:calc(var(--theme-row-height) * 2);margin:0;scrollbar-width:thin;scrollbar-color:#d6d8dc #fff}.theme-wheel::-webkit-scrollbar{width:6px}.theme-wheel::-webkit-scrollbar-track{background:#fff}.theme-wheel::-webkit-scrollbar-thumb{background:#d6d8dc;border-radius:999px}.theme-mask{position:absolute;inset:0;pointer-events:none;z-index:3;background:linear-gradient(180deg,#fff,#ffffffbd 20%,#fff0 35% 65%,#ffffffbd 80%,#fff)}.theme-row{width:100%;border:0;background:#fff;display:flex;align-items:center;gap:8px;height:42px;padding:5px 6px;cursor:pointer;transition:opacity .2s ease}.theme-row.selected{opacity:1}.theme-row img{width:18px;height:18px}.palette{flex:1;display:grid;height:20px;border-radius:2px;overflow:hidden;position:relative}.theme-row.selected .palette:before,.theme-row.selected .palette:after{content:"";position:absolute;left:0;right:0;border-top:1px solid var(--fill-3)}.theme-row.selected .palette:before{top:0}.theme-row.selected .palette:after{bottom:0}.palette-cell{display:block}.weixin-trigger{position:relative}.weixin-popover{position:absolute;top:calc(100% + 12px);right:0;width:180px;border:1px solid var(--primary-7);border-radius:12px;background:#fff;z-index:10;padding:12px;text-align:center;box-shadow:0 4px 12px #0000001a}.weixin-popover:before{content:"";position:absolute;top:-8px;right:16px;width:14px;height:14px;background:#fff;border-top:1px solid var(--primary-7);border-left:1px solid var(--primary-7);transform:rotate(45deg)}.weixin-header{color:var(--primary-6);font-size:14px;margin-bottom:12px}.weixin-qrcode{width:140px;height:140px;border-radius:8px}.weixin-btn img{height:36px;width:auto}.content{display:grid;grid-template-columns:360px 1fr;gap:8px;flex:1;min-height:0}.left-pane{display:flex;flex-direction:column;gap:10px;min-height:0}.panel{border:1px solid #f7dede;border-radius:16px;background:#fff}.block-panel{padding:8px 8px 10px}.select-panel{flex:1;min-height:0;overflow:auto}.panel-title-svg{display:block;max-width:100%;height:auto}.panel-title-select{width:189px}.panel-title-preview{width:238px}.panel-title-info{width:186px}.field-block{margin-top:14px;position:relative}.field-title-wrap{width:100%;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:6px;margin-bottom:8px;cursor:pointer;text-align:left}.field-title-wrap h3{margin:0;font-size:18px;font-weight:500}.expand-icon{width:20px;height:20px}.column-list{position:relative;--connector-x: 10px;--icon-left: 20px;--row-height: 32px;--connector-top-offset: -6px}.column-list:before{content:"";position:absolute;left:var(--connector-x);top:var(--connector-top-offset);bottom:calc(var(--row-height) / 2);border-left:1px solid var(--fill-4)}.column-row{position:relative;display:flex;align-items:center;gap:8px;height:32px;padding-bottom:6px;padding-left:var(--icon-left)}.column-row:before{content:"";position:absolute;left:var(--connector-x);top:calc(50% - .5px);width:calc(var(--icon-left) - var(--connector-x));border-top:1px solid var(--fill-4)}.column-row:after{content:"";position:absolute;left:var(--icon-left);right:0;bottom:0;border-top:1px solid var(--fill-4)}.column-icon{width:18px;height:18px}.column-label{flex:1;color:var(--text-3);font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.select-btn{border:0;background:transparent;cursor:pointer;padding:0;width:16px;height:16px}.select-btn img{width:16px;height:16px}.preview-panel{padding:8px;display:flex;flex-direction:column;min-height:0}.preview-head{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:60px;margin-bottom:8px}.preview-controls{display:flex;align-items:center;gap:24px}.desktop-only{display:inline-flex}.mobile-only{display:none}.preview-controls .slider-label{display:inline-flex;align-items:center;gap:6px;width:148px}.slider-track-wrap{position:relative;width:122px;height:24px}.slider-icon{width:20px;height:20px;flex-shrink:0}.slider-input{width:100%;height:24px;margin:0;background:transparent;-webkit-appearance:none;appearance:none}.slider-input::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,var(--primary-6) 0,var(--primary-6) var(--slider-percent, 0%),var(--fill-3) var(--slider-percent, 0%),var(--fill-3) 100%)}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;border:1px solid var(--fill-3);background:#fff;box-shadow:0 2px 4px #00000014;margin-top:-7px}.slider-input::-moz-range-track{height:4px;border-radius:999px;background:var(--fill-3)}.slider-input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;border:1px solid var(--fill-3);background:#fff;box-shadow:0 2px 4px #00000014}.slider-input::-moz-range-progress{height:4px;border-radius:999px;background:var(--primary-6)}.slider-value{position:absolute;top:-13px;transform:translate(-50%);font-size:10px;line-height:1;color:var(--primary-6);white-space:nowrap;pointer-events:none}.direction-control{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;cursor:pointer;flex-shrink:0}.direction-label{font-size:14px;font-weight:600;color:#000;line-height:1}.direction-switch{display:inline-flex;align-items:center;gap:1px;min-width:0;width:auto;height:14px;padding:1px;border-radius:58.333px;background:var(--fill-3);justify-content:space-between}.direction-switch-text{font-size:8px;line-height:1;padding:0 1px;white-space:nowrap;color:var(--text-4)}.direction-switch-thumb{width:11.667px;height:11.667px;border-radius:50%;background:#fff;border:0;box-shadow:none}.direction-switch.on{background:var(--primary-6)}.direction-switch.on .direction-switch-text{color:#fff}.direction-switch:not(.on){flex-direction:row-reverse}.label-position-control{display:inline-flex;align-items:center;gap:6px}.label-position-label{font-size:14px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.label-position-select{min-width:0}.target-align-control{display:inline-flex;align-items:center;gap:6px}.target-align-label{font-size:14px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.target-align-select{min-width:0}.compact-control{display:inline-flex;align-items:center;gap:4px}.compact-label{font-size:12px;font-weight:600;color:#000;line-height:1;white-space:nowrap}.compact-select{min-width:0}.label-position-select,.target-align-select,.compact-select{width:auto;inline-size:max-content;height:14px;border:.5px solid #c9aee0;border-radius:4px;background:#fff;color:#1d2129;font-size:12px;line-height:1;padding:0 14px 0 4px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10'%20height='9'%20fill='none'%20viewBox='0%200%2010%209'%3e%3cpath%20fill='%23606060'%20d='m9.755%202.404-3.19%204.904c-.696%201.068-2.434%201.068-3.13%200L.246%202.404C-.451%201.336.419%200%201.809%200h6.382c1.39%200%202.26%201.336%201.564%202.404Z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 2px center;background-size:10px 8px;flex-shrink:0}.example-line{margin:4px 0 8px;color:var(--text-4);font-size:12px}.chart-area{background:var(--fill-1);border-radius:8px;flex:1;min-height:0}.info-panel{padding:8px;min-height:120px;max-height:220px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.info-log-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;overflow:auto}.info-log-item{font-size:12px;line-height:1.45;color:var(--text-4)}.info-log-item.level-warn{color:#8d5b00}.info-log-item.level-error{color:#cb272d}.info-log-empty{margin:0;font-size:12px;color:var(--text-3)}.footer{margin-top:6px;flex-shrink:0;color:var(--text-3);font-size:16px}@media(max-width:1024px){.top-bar{flex-direction:column;align-items:stretch}.toolbar{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:8px;scrollbar-width:none}.toolbar::-webkit-scrollbar{display:none}.tool-item,.export-box,.upload-area{flex-shrink:0}.content{display:flex;flex-direction:column;overflow:hidden}.preview-panel{order:1;flex:1;min-height:0}.left-pane{order:2;min-height:0;max-height:42%;overflow:auto}.block-panel{min-height:auto}.chart-area{min-height:0}.preview-head{min-height:auto;align-items:center;flex-direction:row;gap:8px}.preview-controls{flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;justify-content:flex-start;scrollbar-width:none}.preview-controls::-webkit-scrollbar{display:none}.preview-controls .slider-label{width:120px}.slider-track-wrap{width:96px}.label-position-control,.target-align-control{margin-left:0;flex-shrink:0}.info-panel{max-height:180px}.footer{font-size:14px}}@media(max-width:640px){.page{padding:8px}.logo{width:48px;height:48px;border-radius:12px}.title-logo{width:160px}.tool-label{font-size:12px}.upload-area{display:flex;min-width:92px;max-width:none;flex:1 1 auto;min-height:28px;padding:2px 5px}.upload-text{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-bar{padding:0;gap:6px}.toolbar{width:100%;flex-wrap:nowrap;overflow:hidden;justify-content:flex-start;gap:4px}.tool-item .tool-label{display:none}.tool-item,.export-box{flex-shrink:0}.tool-item .icon-btn{width:28px;height:28px}.export-box{padding:1px 4px;gap:4px}.export-main{display:block;width:12px;height:24px}.export-item{width:28px;height:28px}.content{gap:6px}.left-pane{max-height:46%}.field-title-wrap h3{font-size:16px}.panel-title-preview{width:190px}.preview-head{gap:4px}.preview-controls{width:100%;flex-wrap:nowrap;gap:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;justify-content:flex-start}.preview-controls::-webkit-scrollbar{display:none}.desktop-only{display:none}.mobile-only{display:inline-flex}.preview-controls .slider-label{width:74px}.slider-track-wrap{width:61px}.label-position-control,.target-align-control{gap:4px;flex-shrink:0}.label-position-label,.target-align-label{font-size:12px}.label-position-select,.target-align-select{min-width:0;font-size:12px;padding:0 14px 0 4px}.direction-control{flex-shrink:0}} diff --git a/dist/index.html b/dist/index.html index 13b5b55..2a3509d 100644 --- a/dist/index.html +++ b/dist/index.html @@ -7,8 +7,8 @@ 星程桑基图 - - + +
diff --git a/src/App.vue b/src/App.vue index c2901a4..de0ac77 100644 --- a/src/App.vue +++ b/src/App.vue @@ -113,9 +113,8 @@
- 小程序