showai-reader 0.9.0-reader.x77hhf3w → 0.9.0-reader.xtknvjfo
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/chunks/CardGrid-F5LYBSDH.js +2 -0
- package/chunks/CommandReference-5TSKPHE3.js +3 -0
- package/chunks/{ComparisonMatrix-KTLR7NQV.js → ComparisonMatrix-27M44OZJ.js} +1 -1
- package/chunks/EventTimeline-35QURTAO.js +2 -0
- package/chunks/{ExperimentTracker-JWWECSJR.js → ExperimentTracker-P4QX3TFY.js} +1 -1
- package/chunks/{ExternalDiagram-VNWAO35E.js → ExternalDiagram-AKYOCLQZ.js} +3156 -767
- package/chunks/Flowchart-ZNPOCEPD.js +12 -0
- package/chunks/{G2Chart-M63242NG.js → G2Chart-IA56I52P.js} +2 -2
- package/chunks/LayerDiagram-ES4DSFBP.js +2 -0
- package/chunks/{Mindmap-WERZLYP6.js → Mindmap-SQCZEOJ2.js} +2 -2
- package/chunks/RichTextEditor-GL7XCJFA.js +157 -0
- package/chunks/Roadmap-GTVA7DQG.js +2 -0
- package/chunks/{Scene3D-WNBIE7LS.js → Scene3D-H2F5Y2G3.js} +2 -2
- package/chunks/SequenceDiagram-VLOO736H.js +2 -0
- package/chunks/{StatusTree-JVEVAYO5.js → StatusTree-L6XZCK7R.js} +1 -1
- package/chunks/StepGuide-DLY5ZBMO.js +1 -0
- package/chunks/StructureBrowser-H72Y64DB.js +3 -0
- package/chunks/Waterfall-QA3U6LNC.js +2 -0
- package/chunks/{chunk-HHKKCN2F.js → chunk-2HAL7KBM.js} +1 -1
- package/chunks/chunk-3I4CQ55U.js +1 -0
- package/chunks/chunk-3RZMLHCB.js +1 -0
- package/chunks/chunk-AIBH6MTQ.js +1 -0
- package/chunks/chunk-D74K2NKW.js +1 -0
- package/chunks/chunk-EM2ABYID.js +1 -0
- package/chunks/chunk-EXOUDPUB.js +4 -0
- package/chunks/chunk-GLP5VV7P.js +1 -0
- package/chunks/chunk-HSNLLTYJ.js +2 -0
- package/chunks/chunk-JXKAISUX.js +1 -0
- package/chunks/{chunk-QIGHBYK6.js → chunk-JYWKSXK3.js} +1 -1
- package/chunks/chunk-NJBFXE6W.js +1 -0
- package/chunks/{chunk-NPT6AF6K.js → chunk-NWCMWKOF.js} +2 -2
- package/chunks/{chunk-UHMLBB4O.js → chunk-O5H6QDSV.js} +46 -44
- package/chunks/chunk-PVMEUQFU.js +21 -0
- package/chunks/{chunk-CMJMBEIC.js.LEGAL.txt → chunk-PVMEUQFU.js.LEGAL.txt} +10 -9
- package/chunks/{chunk-J7ZODHSI.js → chunk-VQIPL7NG.js} +1 -1
- package/chunks/chunk-YLTLOYBH.js +1 -0
- package/index.js +1 -1
- package/manifest.json +5 -5
- package/package.json +1 -1
- package/reader-XTKNVJFO.js +44 -0
- package/chunks/Flowchart-BOY3JGQF.js +0 -10
- package/chunks/RichTextEditor-3PQXABDI.js +0 -156
- package/chunks/chunk-CMJMBEIC.js +0 -21
- package/chunks/chunk-GNOF6PGV.js +0 -2
- package/chunks/chunk-M3KEZP5Z.js +0 -1
- package/chunks/chunk-QBNRB4AJ.js +0 -1
- package/reader-X77HHF3W.js +0 -41
- /package/chunks/{Flowchart-BOY3JGQF.js.LEGAL.txt → Flowchart-ZNPOCEPD.js.LEGAL.txt} +0 -0
- /package/chunks/{G2Chart-M63242NG.js.LEGAL.txt → G2Chart-IA56I52P.js.LEGAL.txt} +0 -0
- /package/chunks/{Scene3D-WNBIE7LS.js.LEGAL.txt → Scene3D-H2F5Y2G3.js.LEGAL.txt} +0 -0
- /package/chunks/{chunk-NPT6AF6K.js.LEGAL.txt → chunk-NWCMWKOF.js.LEGAL.txt} +0 -0
- /package/{reader-X77HHF3W.js.LEGAL.txt → reader-XTKNVJFO.js.LEGAL.txt} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as ss}from"./chunk-3I4CQ55U.js";import{a as G,d as U}from"./chunk-AIBH6MTQ.js";import"./chunk-D74K2NKW.js";import{d as Z}from"./chunk-VQIPL7NG.js";import{a as Q,c as as,jb as Y,mb as J}from"./chunk-PVMEUQFU.js";import{c as B,d as V}from"./chunk-DUIGVKKG.js";var h=B(as(),1);Q(`.sb-block.sq-block :is(h3,h4,p,ul,ol,li,pre):not(svg){margin:0}.sb-block.sq-block li:not(svg){padding:0}.sb-block.sq-block pre:not(svg){border:0;border-radius:0;background:none;color:inherit}.sb-block.sq-block{--sq-text: var(--sb-text);--sq-muted: var(--sb-muted);--sq-faint: color-mix(in srgb, var(--sb-muted) 70%, transparent);--sq-line: var(--sb-line);--sq-paper: var(--sb-surface);--sq-soft: var(--sb-soft);--sq-accent: var(--sb-accent);--sq-accent-soft: var(--sb-accent-soft);--sq-wire: color-mix(in srgb, var(--sb-muted) 85%, var(--sb-text));--sq-teal: #0d8579;--sq-teal-soft: #e6f4f2;--sq-orange: #bf6528;--sq-orange-soft: #fbefe6;--sq-violet: #7348d0;--sq-violet-soft: #f2edfc;--sq-rose: #c4415a;--sq-rose-soft: #fbebee;--sq-slate: #526476;--sq-slate-soft: #edf1f4;--t: var(--sq-accent);--ts: var(--sq-accent-soft);color:var(--sq-text);font-family:inherit;font-size:14px;line-height:1.65;padding:8px 0;overflow-wrap:anywhere}:root[data-theme=dark] .sb-block.sq-block,[data-theme=dark] .sb-block.sq-block{--sq-teal: #4fc4b6;--sq-teal-soft: #163734;--sq-orange: #e79c64;--sq-orange-soft: #3b2b1e;--sq-violet: #b497ff;--sq-violet-soft: #2e2648;--sq-rose: #f0839a;--sq-rose-soft: #3e222a;--sq-slate: #a2b2c2;--sq-slate-soft: #242d35}.sb-block.sq-block *{box-sizing:border-box}.sb-block.sq-block [data-tone=accent]{--t: var(--sq-accent);--ts: var(--sq-accent-soft)}.sb-block.sq-block [data-tone=teal]{--t: var(--sq-teal);--ts: var(--sq-teal-soft)}.sb-block.sq-block [data-tone=orange]{--t: var(--sq-orange);--ts: var(--sq-orange-soft)}.sb-block.sq-block [data-tone=violet]{--t: var(--sq-violet);--ts: var(--sq-violet-soft)}.sb-block.sq-block [data-tone=rose]{--t: var(--sq-rose);--ts: var(--sq-rose-soft)}.sb-block.sq-block [data-tone=slate]{--t: var(--sq-slate);--ts: var(--sq-slate-soft)}.sb-block.sq-block .sq-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 12px}.sb-block.sq-block .sq-title{margin:0;font-size:16px;line-height:1.5;font-weight:650}.sb-block.sq-block .sq-description{margin:2px 0 0;color:var(--sq-muted);font-size:13px}.sb-block.sq-block .sq-hint{flex:none;font-size:12px;color:var(--sq-faint);white-space:nowrap}.sb-block.sq-block code{font-family:var(--mono, ui-monospace, Menlo, Consolas, monospace);font-size:.88em;background:var(--sq-soft);border-radius:4px;padding:1px 5px}.sb-block.sq-block .sq-svg{display:block;max-width:100%;height:auto;overflow:visible;border-radius:6px;user-select:none;-webkit-user-select:none}.sb-block.sq-block .sq-svg:focus{outline:none}.sb-block.sq-block .sq-svg:focus-visible{outline:2px solid var(--sq-accent);outline-offset:2px}.sb-block.sq-block .sq-svg text{font-family:inherit}.sb-block.sq-block .sq-life{stroke:var(--sq-line);stroke-width:1.2;stroke-dasharray:3 4}.sb-block.sq-block .sq-life[data-on]{stroke:var(--t);stroke-opacity:.45;stroke-dasharray:none}.sb-block.sq-block .sq-actor rect{fill:var(--sq-paper);stroke:var(--sq-line)}.sb-block.sq-block .sq-actor[data-on] rect{fill:var(--ts);stroke:var(--t);stroke-width:1.4}.sb-block.sq-block .sq-alabel{fill:var(--sq-text);font-size:14px;font-weight:600}.sb-block.sq-block .sq-asub{fill:var(--sq-muted);font-size:12px}.sb-block.sq-block .sq-icon{font-size:15px}.sb-block.sq-block .sq-band{fill:var(--sq-accent-soft);opacity:.6}.sb-block.sq-block .sq-step{cursor:pointer;transition:opacity .2s ease}.sb-block.sq-block .sq-hit{fill:transparent}.sb-block.sq-block .sq-line{fill:none;stroke:var(--sq-wire);stroke-width:1.4;stroke-linejoin:round}.sb-block.sq-block .sq-line[data-reply]{stroke-dasharray:5 4}.sb-block.sq-block .sq-head{fill:var(--sq-wire)}.sb-block.sq-block .sq-open{fill:none;stroke:var(--sq-wire);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.sb-block.sq-block .sq-label{fill:var(--sq-text);font-size:13px;font-weight:500}.sb-block.sq-block .sq-note{fill:var(--sq-orange-soft);stroke:var(--sq-orange);stroke-opacity:.35}.sb-block.sq-block .sq-num circle{fill:var(--sq-paper);stroke:var(--sq-line)}.sb-block.sq-block .sq-num text{fill:var(--sq-muted);font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums}.sb-block.sq-block .sq-step[data-state=todo]{opacity:.3}.sb-block.sq-block .sq-step[data-state=todo]:hover{opacity:.55}.sb-block.sq-block .sq-step[data-state=cur] .sq-line{stroke:var(--sq-accent);stroke-width:2}.sb-block.sq-block .sq-step[data-state=cur] .sq-head{fill:var(--sq-accent)}.sb-block.sq-block .sq-step[data-state=cur] .sq-open{stroke:var(--sq-accent);stroke-width:2}.sb-block.sq-block .sq-step[data-state=cur] .sq-label{font-weight:650}.sb-block.sq-block .sq-step[data-state=cur] .sq-num circle{fill:var(--sq-accent);stroke:var(--sq-accent)}.sb-block.sq-block .sq-step[data-state=cur] .sq-num text{fill:var(--sq-paper)}.sb-block.sq-block .sq-step[data-state=cur] .sq-note{stroke-opacity:.8}.sb-block.sq-block .sq-actor rect,.sb-block.sq-block .sq-life{transition:fill .2s ease,stroke .2s ease}.sb-block.sq-block .sq-panel{margin-top:14px;border:1px solid var(--sq-line);border-radius:10px;background:var(--sq-soft);overflow:hidden}.sb-block.sq-block .sq-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:10px 12px}.sb-block.sq-block .sq-buttons{display:flex;flex-wrap:wrap;gap:6px}.sb-block.sq-block .sq-buttons button{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;line-height:1;color:var(--sq-text);background:var(--sq-paper);border:1px solid var(--sq-line);border-radius:6px;padding:7px 11px 7px 9px;cursor:pointer;transition:border-color .15s ease}.sb-block.sq-block .sq-buttons button:hover:not(:disabled){border-color:var(--sq-muted)}.sb-block.sq-block .sq-buttons button:disabled{color:var(--sq-faint);cursor:default}.sb-block.sq-block .sq-buttons svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sb-block.sq-block .sq-buttons svg .sq-fill{fill:currentColor;stroke:none}.sb-block.sq-block .sq-buttons .sq-play{background:var(--sq-accent);border-color:var(--sq-accent);color:var(--sq-paper)}.sb-block.sq-block .sq-buttons .sq-play:disabled{opacity:.5;color:var(--sq-paper)}.sb-block.sq-block .sq-buttons button:focus-visible,.sb-block.sq-block .sq-list button:focus-visible,.sb-block.sq-block a:focus-visible{outline:2px solid var(--sq-accent);outline-offset:2px}.sb-block.sq-block .sq-count{font-size:12px;color:var(--sq-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.sb-block.sq-block .sq-progress{height:2px;background:var(--sq-line)}.sb-block.sq-block .sq-progress i{display:block;height:100%;background:var(--sq-accent);transition:width .25s ease}.sb-block.sq-block .sq-detail{padding:14px 18px 16px;background:var(--sq-paper)}.sb-block.sq-block .sq-meta,.sb-block.sq-block .sq-route{display:flex;align-items:center;flex-wrap:wrap;gap:5px 6px;font-size:12px;color:var(--sq-muted)}.sb-block.sq-block .sq-meta em,.sb-block.sq-block .sq-route em{font-style:normal;font-size:12px;color:var(--sq-faint);margin-left:2px}.sb-block.sq-block .sq-detail h4{margin:8px 0 4px;font-size:15px;line-height:1.5;font-weight:650}.sb-block.sq-block .sq-md p{margin:0 0 6px;font-size:14px;line-height:1.7}.sb-block.sq-block .sq-md p:last-child{margin-bottom:0}.sb-block.sq-block .sq-md strong{font-weight:650}.sb-block.sq-block .sq-md a{color:var(--sq-accent);text-underline-offset:3px}.sb-block.sq-block .sq-lnum{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--sq-accent);color:var(--sq-paper);font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums}.sb-block.sq-block .sq-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;line-height:1;padding:4px 8px;border-radius:6px;background:var(--ts);color:var(--t);font-weight:600;white-space:nowrap}.sb-block.sq-block .sq-arrow{color:var(--sq-faint);font-size:13px}.sb-block.sq-block .sq-cast{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.sb-block.sq-block .sq-panel-bar{margin:0 0 10px}.sb-block.sq-block .sq-panel-bar .sq-buttons button{padding:7px 9px}.sb-block.sq-block .sq-list{list-style:none;margin:0;padding:0;position:relative}.sb-block.sq-block .sq-list:before{content:"";position:absolute;left:21px;top:16px;bottom:16px;width:1px;background:var(--sq-line)}.sb-block.sq-block .sq-list li{position:relative;border-radius:10px;transition:opacity .2s ease}.sb-block.sq-block .sq-list li[data-state=todo]{opacity:.5}.sb-block.sq-block .sq-list li[data-state=cur]{background:var(--sq-soft);box-shadow:inset 0 0 0 1px var(--sq-line)}.sb-block.sq-block .sq-list button{display:flex;align-items:flex-start;gap:12px;width:100%;font:inherit;text-align:left;color:inherit;background:none;border:0;padding:10px;cursor:pointer;border-radius:10px}.sb-block.sq-block .sq-list .sq-lnum{position:relative;margin-top:1px;background:var(--sq-paper);color:var(--sq-muted);box-shadow:inset 0 0 0 1px var(--sq-line)}.sb-block.sq-block .sq-list li[data-state=cur] .sq-lnum{background:var(--sq-accent);color:var(--sq-paper);box-shadow:none}.sb-block.sq-block .sq-lbody{flex:1;min-width:0;display:grid;gap:5px}.sb-block.sq-block .sq-ltitle{font-size:14px;line-height:1.5;font-weight:500}.sb-block.sq-block .sq-list li[data-state=cur] .sq-ltitle{font-weight:650}.sb-block.sq-block .sq-ldetail{padding:0 14px 12px 44px}.sb-block.sq-block .sq-static{display:none}@media(prefers-reduced-motion:reduce){.sb-block.sq-block .sq-step,.sb-block.sq-block .sq-actor rect,.sb-block.sq-block .sq-life,.sb-block.sq-block .sq-progress i,.sb-block.sq-block .sq-list li,.sb-block.sq-block .sq-buttons button{transition:none}}@media print{.sb-block.sq-block .sq-hint,.sb-block.sq-block .sq-panel,.sb-block.sq-block .sq-list,.sb-block.sq-block .sq-cast{display:none}.sb-block.sq-block .sq-step[data-state]{opacity:1}.sb-block.sq-block .sq-band{display:none}.sb-block.sq-block .sq-actor[data-on] rect{fill:var(--sq-paper);stroke:var(--sq-line);stroke-width:1}.sb-block.sq-block .sq-life[data-on]{stroke:var(--sq-line);stroke-opacity:1;stroke-dasharray:3 4}.sb-block.sq-block .sq-step[data-state=cur] .sq-line,.sb-block.sq-block .sq-step[data-state=cur] .sq-open{stroke:var(--sq-wire);stroke-width:1.4}.sb-block.sq-block .sq-step[data-state=cur] .sq-head{fill:var(--sq-wire)}.sb-block.sq-block .sq-step[data-state=cur] .sq-num circle{fill:var(--sq-paper);stroke:var(--sq-line)}.sb-block.sq-block .sq-step[data-state=cur] .sq-num text{fill:var(--sq-muted)}.sb-block.sq-block .sq-static{display:block;margin-top:12px}.sb-block.sq-block .sq-static-title{margin:0 0 6px;font-weight:650}.sb-block.sq-block .sq-static ol{margin:0;padding-left:22px}.sb-block.sq-block .sq-static li{break-inside:avoid;margin-bottom:8px}.sb-block.sq-block .sq-static b{display:block;font-weight:600}}
|
|
2
|
+
`);var ts=V("sequenceDiagram",{"zh-CN":{title:"\u65F6\u5E8F\u56FE",diagram:"\u65F6\u5E8F\u56FE\uFF0C\u5171 {count} \u6B65\u3002\u65B9\u5411\u952E\u5207\u6362\u6B65\u9AA4\uFF0CHome / End \u8DF3\u5230\u9996\u5C3E\u3002",controls:"\u6B65\u9AA4\u63A7\u5236",prev:"\u4E0A\u4E00\u6B65",next:"\u4E0B\u4E00\u6B65",play:"\u64AD\u653E",pause:"\u6682\u505C",restart:"\u91CD\u6765",count:"\u7B2C {current} / {total} \u6B65",hint:"\u70B9\u51FB\u7BAD\u5934\u8DF3\u5230\u8BE5\u6B65 \xB7 \u65B9\u5411\u952E\u5207\u6362",reply:"\u8FD4\u56DE",note:"\u5907\u6CE8",stepTitle:"{number}. {from} \u2192 {to}\uFF1A{label}",allSteps:"\u5168\u90E8\u6B65\u9AA4",actors:"\u53C2\u4E0E\u8005"},en:{title:"Sequence diagram",diagram:"Sequence diagram with {count} steps. Arrow keys change the step; Home and End jump to the ends.",controls:"Step controls",prev:"Previous",next:"Next",play:"Play",pause:"Pause",restart:"Restart",count:"Step {current} of {total}",hint:"Click an arrow to jump \xB7 arrow keys to step",reply:"reply",note:"note",stepTitle:"{number}. {from} \u2192 {to}: {label}",allSteps:"All steps",actors:"Participants"}});var s=B(Y(),1),ls=1600,ns=46,rs=56,es="system-ui, -apple-system, sans-serif";function F({source:e}){return(0,s.jsx)(s.Fragment,{children:U(e).map((o,l)=>(0,s.jsx)("p",{children:(0,s.jsx)(ss,{source:o})},l))})}var j;function cs(e){return j===void 0&&(j=typeof document>"u"?null:document.createElement("canvas").getContext("2d")),(o,l,b=400)=>{if(j)return j.font=`${b} ${l}px ${e}`,j.measureText(o).width;let n=0;for(let m of o)n+=/[\u2e80-\uffff]/.test(m)?l:l*.58;return n}}function K(e,o,l,b,n=400){if(e(o,b,n)<=l)return o;let m=Array.from(o),N=0,S=m.length;for(;N<S;){let H=N+S+1>>1;e(`${m.slice(0,H).join("")}\u2026`,b,n)<=l?N=H:S=H-1}return`${m.slice(0,N).join("").trimEnd()}\u2026`}function is(e){let o=(Array.isArray(e.actors)?e.actors:[]).map(n=>({...n,tone:G.includes(n.tone)?n.tone:"accent"})),l=new Map(o.map((n,m)=>[n.id,m])),b=[];for(let n of Array.isArray(e.steps)?e.steps:[]){let m=l.get(n.from),N=l.get(n.to);m===void 0||N===void 0||b.push({...n,a:m,b:N,kind:n.kind==="reply"||n.kind==="note"?n.kind:"call"})}return{actors:o,steps:b}}var bs={prev:(0,s.jsx)("path",{d:"M10 3.5 5.5 8l4.5 4.5"}),next:(0,s.jsx)("path",{d:"M6 3.5 10.5 8 6 12.5"}),play:(0,s.jsx)("path",{className:"sq-fill",d:"M5 3.2v9.6L12.6 8z"}),pause:(0,s.jsx)("path",{className:"sq-fill",d:"M4.5 3.5h2.4v9H4.5zM9.1 3.5h2.4v9H9.1z"}),restart:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M3.5 8a4.5 4.5 0 1 0 1.4-3.3"}),(0,s.jsx)("path",{d:"M4.6 2.2v2.7h2.7"})]})},I=({name:e})=>(0,s.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:bs[e]});function X({actor:e}){return(0,s.jsxs)("span",{className:"sq-chip","data-tone":e.tone,children:[e.icon&&(0,s.jsx)("span",{"aria-hidden":"true",children:e.icon}),e.label]})}function _({step:e,actors:o,t:l}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(X,{actor:o[e.a]}),e.a!==e.b&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"sq-arrow","aria-hidden":"true",children:e.kind==="note"?"\xB7":"\u2192"}),(0,s.jsx)(X,{actor:o[e.b]})]}),e.kind!=="call"&&(0,s.jsx)("em",{children:l(e.kind)})]})}function os(e,o,l){return e.key==="Home"?0:e.key==="End"?l-1:e.key==="ArrowRight"||e.key==="ArrowDown"?Math.min(l-1,o+1):e.key==="ArrowLeft"||e.key==="ArrowUp"?Math.max(0,o-1):null}function ps({actors:e,steps:o,width:l,current:b,measure:n,go:m,label:N,stepTitle:S}){let T=(l-8)/e.length,L=t=>4+T*(t+.5),W=e.some(t=>t.sub)?58:42,D=Math.min(T-12,176),v=[],P=W+16;for(let t of o){let c=t.kind!=="note"&&t.a===t.b?rs:ns;v.push({top:P,h:c,y:P+30}),P+=c}let f=P+14,p=o[b],O=new Set(p?[p.a,p.b]:[]),z=(t,c,q)=>(0,s.jsxs)("g",{className:"sq-num",children:[(0,s.jsx)("circle",{cx:t,cy:c,r:10}),(0,s.jsx)("text",{x:t,y:c+4,textAnchor:"middle",children:q+1})]});return(0,s.jsxs)("svg",{className:"sq-svg",width:l,height:f,viewBox:`0 0 ${l} ${f}`,tabIndex:0,role:"group","aria-label":N,onKeyDown:t=>{let c=os(t,b,o.length);c!==null&&(t.preventDefault(),m(c))},children:[e.map((t,c)=>(0,s.jsx)("line",{className:"sq-life","data-tone":t.tone,"data-on":O.has(c)?"":void 0,x1:L(c),x2:L(c),y1:W,y2:f-4},t.id)),p&&(0,s.jsx)("rect",{className:"sq-band",x:2,y:v[b].top+3,width:l-4,height:v[b].h-6,rx:8}),e.map((t,c)=>{let q=L(c),M=t.icon?26:0,r=K(n,t.label,D-20-M,14,600),w=q-(n(r,14,600)+M)/2,y=t.sub?K(n,t.sub,D-16,12):"",g=t.sub?24:W/2+5;return(0,s.jsxs)("g",{className:"sq-actor","data-tone":t.tone,"data-on":O.has(c)?"":void 0,children:[(0,s.jsx)("rect",{x:q-D/2,y:1,width:D,height:W-2,rx:10}),t.icon&&(0,s.jsx)("text",{className:"sq-icon",x:w+9,y:g,textAnchor:"middle",children:t.icon}),(0,s.jsx)("text",{className:"sq-alabel",x:w+M,y:g,children:r}),y&&(0,s.jsx)("text",{className:"sq-asub",x:q,y:g+19,textAnchor:"middle",children:y}),(0,s.jsx)("title",{children:t.sub?`${t.label} \xB7 ${t.sub}`:t.label})]},t.id)}),o.map((t,c)=>{let q=v[c],M=c<b?"done":c===b?"cur":"todo",r=L(t.a),w=L(t.b),y=13,g=M==="cur"?600:500,a,i;if(t.kind==="note"){let k=Math.min(r,w),$=Math.max(r,w),x=n(t.label,y,g)+52,d,u;if(t.a===t.b){let E=Math.min(x,T-8);d=k-E/2,u=k+E/2}else if(d=k-T*.36,u=$+T*.36,u-d<x){let E=(k+$)/2;d=E-x/2,u=E+x/2}d=Math.max(4,d),u=Math.min(l-4,u);let C=K(n,t.label,u-d-52,y,g),R=27+n(C,y,g),A=(d+u)/2-R/2;a=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{className:"sq-note",x:d,y:q.top+8,width:u-d,height:30,rx:6}),z(A+10,q.top+23,c),(0,s.jsx)("text",{className:"sq-label",x:A+27,y:q.top+27.5,children:C})]}),i={x:d,w:u-d}}else if(t.a===t.b){let k=r+74+n(t.label,y,g)<l-4||r<l/2,$=k?1:-1,x=q.top+16,d=q.top+40,u=r+$*30,C=K(n,t.label,k?l-4-(r+70):r-74,y,g),R=27+n(C,y,g),A=k?r+44:r-44-R;a=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{className:"sq-line","data-reply":t.kind==="reply"?"":void 0,d:`M${r},${x}H${u-$*6}Q${u},${x} ${u},${x+6}V${d-6}Q${u},${d} ${u-$*6},${d}H${r+$*8}`}),(0,s.jsx)("path",{className:"sq-head",d:`M${r+$},${d}l${$*8},-4.5v9z`}),z(A+10,(x+d)/2,c),(0,s.jsx)("text",{className:"sq-label",x:A+27,y:(x+d)/2+4.5,children:C})]});let E=k?r-8:A-4;i={x:E,w:(k?A+R+8:r+8)-E}}else{let k=w>r?1:-1,$=r+k*2,x=w-k*2,d=K(n,t.label,Math.max(84,Math.abs(w-r)+T*.4-36),y,g),u=27+n(d,y,g),C=Math.max(4,Math.min(l-4-u,(r+w)/2-u/2)),R=t.kind==="reply";a=(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{className:"sq-line","data-reply":R?"":void 0,d:`M${$},${q.y}H${x-k*(R?1:7)}`}),R?(0,s.jsx)("path",{className:"sq-open",d:`M${x-k*8},${q.y-5}L${x},${q.y}L${x-k*8},${q.y+5}`}):(0,s.jsx)("path",{className:"sq-head",d:`M${x},${q.y}l${-k*8},-4.5v9z`}),z(C+10,q.y-15,c),(0,s.jsx)("text",{className:"sq-label",x:C+27,y:q.y-10.5,children:d})]});let A=Math.min(r,w,C)-6;i={x:A,w:Math.max(r,w,C+u)+6-A}}return(0,s.jsxs)("g",{className:"sq-step","data-state":M,"data-kind":t.kind,onClick:()=>m(c),children:[(0,s.jsx)("rect",{className:"sq-hit",x:i.x,y:q.top+2,width:i.w,height:q.h-4}),a,(0,s.jsx)("title",{children:S(t,c)})]},c)})]})}function vs({data:e}){let o=J(ts),l=e,{actors:b,steps:n}=(0,h.useMemo)(()=>is(l),[l]),m=(0,h.useRef)(null),N=(0,h.useRef)(null),[S,H]=(0,h.useState)(800),[T,L]=(0,h.useState)(es),[W,D]=(0,h.useState)(0),[v,P]=(0,h.useState)(!1),f=n.length,p=Math.min(W,Math.max(0,f-1));(0,h.useEffect)(()=>{let a=m.current;if(!a)return;L(getComputedStyle(a).fontFamily||es);let i=()=>H(Math.floor(a.clientWidth));if(i(),typeof ResizeObserver!="function")return;let k=new ResizeObserver(i);return k.observe(a),()=>k.disconnect()},[]),(0,h.useEffect)(()=>{if(!v)return;let a=setInterval(()=>D(i=>Math.min(i+1,f-1)),ls);return()=>clearInterval(a)},[v,f]),(0,h.useEffect)(()=>{v&&p>=f-1&&P(!1)},[p,v,f]);let O=(0,h.useMemo)(()=>cs(T),[T]),z=a=>{P(!1),D(Math.max(0,Math.min(f-1,a)))},t=()=>{if(v)return P(!1);p>=f-1&&D(0),P(!0)},c=(a,i)=>o("stepTitle",{number:i+1,from:b[a.a].label,to:b[a.b].label,label:a.label}),q=Z(l.title,o("title")),M=S<640||(S-8)/Math.max(1,b.length)<96,r=n[p],w=a=>a<p?"done":a===p?"cur":"todo",y=(0,s.jsxs)("div",{className:"sq-bar",children:[(0,s.jsxs)("div",{className:"sq-buttons",role:"group","aria-label":o("controls"),children:[(0,s.jsxs)("button",{type:"button",onClick:()=>z(p-1),disabled:p===0,children:[(0,s.jsx)(I,{name:"prev"}),(0,s.jsx)("span",{children:o("prev")})]}),(0,s.jsxs)("button",{type:"button",onClick:()=>z(p+1),disabled:p>=f-1,children:[(0,s.jsx)(I,{name:"next"}),(0,s.jsx)("span",{children:o("next")})]}),(0,s.jsxs)("button",{type:"button",className:"sq-play","aria-pressed":v,onClick:t,disabled:f<2,children:[(0,s.jsx)(I,{name:v?"pause":"play"}),(0,s.jsx)("span",{children:o(v?"pause":"play")})]}),(0,s.jsxs)("button",{type:"button",onClick:()=>z(0),disabled:p===0&&!v,children:[(0,s.jsx)(I,{name:"restart"}),(0,s.jsx)("span",{children:o("restart")})]})]}),(0,s.jsx)("span",{className:"sq-count","aria-live":"polite",children:o("count",{current:p+1,total:f})})]}),g=(0,s.jsx)("div",{className:"sq-progress","aria-hidden":"true",children:(0,s.jsx)("i",{style:{width:`${(p+1)/Math.max(1,f)*100}%`}})});return(0,s.jsxs)("section",{className:"sb-block sq-block","aria-label":q,ref:m,"data-narrow":M?"":void 0,children:[(l.title||l.description||!M)&&(0,s.jsxs)("div",{className:"sq-top",children:[(0,s.jsxs)("div",{children:[l.title&&(0,s.jsx)("h3",{className:"sq-title",children:l.title}),l.description&&(0,s.jsx)("p",{className:"sq-description",children:l.description})]}),!M&&f>0&&(0,s.jsx)("span",{className:"sq-hint",children:o("hint")})]}),r&&(M?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"sq-cast","aria-label":o("actors"),children:b.map(a=>(0,s.jsx)(X,{actor:a},a.id))}),(0,s.jsxs)("div",{className:"sq-panel sq-panel-bar",children:[y,g]}),(0,s.jsx)("ol",{className:"sq-list",ref:N,onKeyDown:a=>{let i=os(a,p,f);i!==null&&(a.preventDefault(),z(i),N.current?.querySelectorAll("button")[i]?.focus())},children:n.map((a,i)=>(0,s.jsxs)("li",{"data-state":w(i),"data-kind":a.kind,children:[(0,s.jsxs)("button",{type:"button","aria-current":i===p?"step":void 0,onClick:()=>z(i),children:[(0,s.jsx)("span",{className:"sq-lnum",children:i+1}),(0,s.jsxs)("span",{className:"sq-lbody",children:[(0,s.jsx)("span",{className:"sq-route",children:(0,s.jsx)(_,{step:a,actors:b,t:o})}),(0,s.jsx)("span",{className:"sq-ltitle",children:a.label})]})]}),i===p&&a.detail&&(0,s.jsx)("div",{className:"sq-ldetail sq-md",children:(0,s.jsx)(F,{source:a.detail})})]},i))})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(ps,{actors:b,steps:n,width:S,current:p,measure:O,go:z,label:o("diagram",{count:f}),stepTitle:c}),(0,s.jsxs)("div",{className:"sq-panel",children:[y,g,(0,s.jsxs)("div",{className:"sq-detail","aria-live":"polite",children:[(0,s.jsxs)("div",{className:"sq-meta",children:[(0,s.jsx)("span",{className:"sq-lnum",children:p+1}),(0,s.jsx)(_,{step:r,actors:b,t:o})]}),(0,s.jsx)("h4",{children:r.label}),r.detail&&(0,s.jsx)("div",{className:"sq-md",children:(0,s.jsx)(F,{source:r.detail})})]})]})]})),(0,s.jsxs)("div",{className:"sq-static",children:[(0,s.jsx)("p",{className:"sq-static-title",children:o("allSteps")}),(0,s.jsx)("ol",{children:n.map((a,i)=>(0,s.jsxs)("li",{children:[(0,s.jsx)("div",{className:"sq-route",children:(0,s.jsx)(_,{step:a,actors:b,t:o})}),(0,s.jsx)("b",{children:a.label}),a.detail&&(0,s.jsx)("div",{className:"sq-md",children:(0,s.jsx)(F,{source:a.detail})})]},i))})]})]})}export{F as DetailText,vs as SequenceDiagramBlock};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as H}from"./chunk-
|
|
1
|
+
import{a as H}from"./chunk-2HAL7KBM.js";import{a as x,d as U}from"./chunk-KF47DKNH.js";import{d as z}from"./chunk-VQIPL7NG.js";import{c as ee,jb as O,mb as q}from"./chunk-PVMEUQFU.js";import{c as L}from"./chunk-DUIGVKKG.js";var m=L(ee(),1);var t=L(O(),1),R={done:"\u2713",failed:"\u2715",active:"\u25CF",todo:"\u25CB",paused:"\u2016"},X={done:["var(--an-good)","var(--an-good-soft)"],failed:["var(--an-bad)","var(--an-bad-soft)"],active:["var(--an-info)","var(--an-info-soft)"],todo:["var(--an-idle)","var(--an-idle-soft)"],paused:["var(--an-warn)","var(--an-warn-soft)"]},v=s=>({"--tone":s.color??X[s.tone][0],"--tone-soft":s.color?`color-mix(in srgb, ${s.color} 14%, transparent)`:X[s.tone][1]}),te=new Map(x.map(s=>[s.id,s.label])),se={done:"tree.status.done",active:"tree.status.active",failed:"tree.status.failed",todo:"tree.status.todo",paused:"tree.status.paused"};function ae(s,o){let a=se[s.id];return a&&te.get(s.id)===s.label?{...s,label:o(a)}:s}function ne(){let s=(0,m.useRef)(null),[o,a]=(0,m.useState)(800);return(0,m.useEffect)(()=>{let r=s.current;if(!r)return;let d=new ResizeObserver(([c])=>a(c.contentRect.width));return d.observe(r),()=>d.disconnect()},[]),[s,o]}function Y({items:s,statuses:o,height:a}){return(0,t.jsx)("div",{className:"an-bar",style:a?{height:a,borderRadius:a/2}:void 0,children:o.map(r=>{let d=s.filter(c=>c.status===r.id).length;return d?(0,t.jsx)("div",{style:{...v(r),width:`${d/s.length*100}%`,background:"var(--tone)"}},r.id):null})})}function ue({data:s}){let o=q(H),a=s,r=(a.statuses??x).map(e=>ae(e,o)),d=new Map(r.map(e=>[e.id,e])),c=a.groups.flatMap(e=>e.items),G=U(a),[V,E]=ne(),[g,J]=(0,m.useState)(()=>(c.find(e=>d.get(e.status)?.tone==="active")??c[0])?.id??""),[h,Q]=(0,m.useState)(null),k=E<980?E:E-316,b=!!a.root&&k>760,N=b?150:0,W=200,D=b?46:36,y=b?N+D:0,S=y+W+D,I=Math.max(180,k-S),K=38,P=16,p=0,A=[],$=[];for(let e of a.groups){let n=p;for(let l of e.items)A.push({item:l,y:p+K/2,group:e}),p+=K;$.push({group:e,y:(n+p)/2,top:n,bottom:p}),p+=P}let C=Math.max(0,p-P),B=C/2,i=c.find(e=>e.id===g),_=a.groups.find(e=>e.items.some(n=>n.id===g)),f=i?d.get(i.status):void 0,F=e=>h!==null&&e.status!==h;return(0,t.jsxs)("section",{className:"sb-block an-block","aria-label":z(a.title,o("tree.title")),children:[(0,t.jsxs)("div",{className:"an-head",children:[a.title&&(0,t.jsx)("h3",{className:"an-title",children:a.title}),a.description&&(0,t.jsx)("p",{className:"an-sub",children:a.description}),(0,t.jsx)("div",{className:"an-tools",role:"group","aria-label":o("tree.highlightByStatus"),children:r.map(e=>(0,t.jsx)("button",{type:"button",className:"an-chip",style:{...v(e),color:"var(--tone)"},"aria-pressed":h===e.id,onClick:()=>Q(h===e.id?null:e.id),children:`${R[e.tone]} ${e.label} ${G[e.id]??0}`},e.id))})]}),(0,t.jsxs)("div",{className:"an-tree-layout",ref:V,children:[(0,t.jsxs)("div",{className:"an-tree",style:{height:C,width:k},children:[(0,t.jsxs)("svg",{width:k,height:C,"aria-hidden":"true",children:[b&&$.map(({group:e,y:n})=>{let l=(N+y)/2;return(0,t.jsx)("path",{d:`M${N},${B} C${l},${B} ${l},${n} ${y},${n}`,fill:"none",stroke:"var(--an-line)",strokeWidth:1.5},e.id)}),A.map(({item:e,y:n,group:l})=>{let w=$.find(j=>j.group.id===l.id),u=d.get(e.status),T=y+W,M=(T+S)/2,Z=u.tone==="todo"||u.tone==="paused";return(0,t.jsx)("path",{d:`M${T},${w.y} C${M},${w.y} ${M},${n} ${S},${n}`,fill:"none",style:v(u),stroke:"var(--tone)",strokeOpacity:F(e)?.12:Z?.45:.7,strokeWidth:e.id===g?2.5:1.6,strokeDasharray:u.tone==="failed"||u.tone==="todo"?"4 4":void 0},e.id)})]}),b&&(0,t.jsxs)("div",{className:"an-root",style:{left:0,top:B-60,width:N,height:120},children:[(0,t.jsx)("small",{children:o("tree.question")}),a.root]}),$.map(({group:e,y:n,top:l,bottom:w})=>{let u=Math.max(56,Math.min(w-l-6,92)),T=e.items.filter(M=>d.get(M.status)?.tone==="done").length;return(0,t.jsxs)("div",{className:"an-group",style:{left:y,top:n-u/2,width:W,height:u},children:[(0,t.jsxs)("div",{className:"an-group-top",children:[(0,t.jsx)("b",{children:e.label}),(0,t.jsxs)("span",{children:[T,"/",e.items.length]})]}),e.summary&&u>70&&(0,t.jsx)("div",{className:"an-group-summary",children:e.summary}),(0,t.jsx)(Y,{items:e.items,statuses:r})]},e.id)}),A.map(({item:e,y:n})=>{let l=d.get(e.status);return(0,t.jsxs)("button",{type:"button",className:`an-item an-st-${l.tone}${e.id===g?" is-selected":""}${F(e)?" is-dim":""}`,style:{...v(l),left:S,top:n-15,width:I,height:30},"aria-pressed":e.id===g,onClick:()=>J(e.id),children:[(0,t.jsx)("span",{className:"an-mark","aria-label":l.label,children:R[l.tone]}),(0,t.jsx)("span",{className:"an-item-label",children:e.label}),e.result&&I>420&&(0,t.jsx)("span",{className:"an-item-result",children:e.result}),e.source&&(0,t.jsx)("span",{className:"an-item-source",children:e.source})]},e.id)})]}),i&&f&&(0,t.jsxs)("aside",{className:"an-detail","aria-live":"polite",children:[(0,t.jsxs)("div",{className:"an-panel",children:[_&&(0,t.jsx)("div",{className:"an-sub",children:_.label}),(0,t.jsx)("h4",{children:i.label}),(0,t.jsxs)("span",{className:"an-pill",style:v(f),children:[R[f.tone]," ",f.label]}),i.source&&(0,t.jsxs)("span",{className:"an-sub",children:[" \xB7 ",o("tree.source",{source:i.source})]}),i.detail&&(0,t.jsxs)("div",{className:"an-field",children:[(0,t.jsx)("small",{children:o("tree.detail")}),i.detail]}),i.result&&(0,t.jsxs)("div",{className:"an-result-box",style:v(f),children:[(0,t.jsx)("small",{style:{color:"var(--tone)",fontWeight:600},children:o("tree.result")}),(0,t.jsx)("div",{children:i.result})]}),i.links&&i.links.length>0&&(0,t.jsxs)("div",{className:"an-field",children:[(0,t.jsx)("small",{children:o("tree.links")}),(0,t.jsx)("div",{className:"an-tags",children:i.links.map(e=>(0,t.jsx)("span",{className:"an-tag",children:e},e))})]})]}),(0,t.jsxs)("div",{className:"an-panel",children:[(0,t.jsx)("p",{className:"an-panel-title",children:o("tree.overall")}),(0,t.jsx)(Y,{items:c,statuses:r,height:10}),(0,t.jsx)("div",{className:"an-legend",children:r.map(e=>(0,t.jsxs)("span",{style:v(e),children:[(0,t.jsx)("b",{children:R[e.tone]})," ",e.label," ",G[e.id]??0]},e.id))})]})]})]}),(0,t.jsxs)("details",{className:"an-static",children:[(0,t.jsx)("summary",{children:o("tree.readAll",{count:c.length})}),a.groups.map(e=>(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{children:e.label}),(0,t.jsx)("ul",{children:e.items.map(n=>(0,t.jsxs)("li",{children:[(0,t.jsx)("b",{children:d.get(n.status)?.label})," \xB7"," ",n.result?o("tree.itemResult",{label:n.label,result:n.result}):n.label]},n.id))})]},e.id))]})]})}export{ue as StatusTreeBlock};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a,b}from"./chunk-EXOUDPUB.js";import"./chunk-3I4CQ55U.js";import"./chunk-YLTLOYBH.js";import"./chunk-D74K2NKW.js";import"./chunk-VQIPL7NG.js";import"./chunk-PVMEUQFU.js";import"./chunk-DUIGVKKG.js";export{a as CodePanel,b as StepGuideBlock};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as y}from"./chunk-3I4CQ55U.js";import{a as M,b as I,c as O}from"./chunk-NJBFXE6W.js";import{d as E}from"./chunk-D74K2NKW.js";import{d as K}from"./chunk-VQIPL7NG.js";import{a as P,c as V,jb as D,mb as T}from"./chunk-PVMEUQFU.js";import{c as j,d as A}from"./chunk-DUIGVKKG.js";var c=j(V(),1);P(`.sb-block.stb-block :is(h3,h4,p,ul,ol,li,pre):not(svg){margin:0}.sb-block.stb-block li:not(svg){padding:0}.sb-block.stb-block pre:not(svg){border:0;border-radius:0;background:none;color:inherit}.sb-block.stb-block{--stb-text: var(--text, #222222);--stb-muted: var(--muted, #6a6a6a);--stb-faint: var(--subtle, #929292);--stb-line: var(--line, #dddddd);--stb-paper: var(--paper, #ffffff);--stb-surface: var(--surface, #fafafa);--stb-hover: var(--hover, #f7f7f7);--stb-accent: var(--accent, #120a8f);--stb-accent-soft: var(--accent-soft, #eeedf9);--stb-mono: var(--font-mono, ui-monospace, Menlo, Consolas, monospace);--stb-object: #7348d0;--stb-object-soft: #f2edfc;--stb-array: #0d8579;--stb-array-soft: #e6f4f2;--stb-note: #a8582a;color:var(--stb-text);font-family:inherit;font-size:14px;line-height:1.7;padding:8px 0;container-type:inline-size}:root[data-theme=dark] .sb-block.stb-block,[data-theme=dark] .sb-block.stb-block{--stb-object: #b497ff;--stb-object-soft: #2e2648;--stb-array: #4fc4b6;--stb-array-soft: #163734;--stb-note: #e79c64}.sb-block.stb-block *{box-sizing:border-box}.sb-block.stb-block .stb-heading{margin:0 0 10px;font-size:17px;font-weight:700}.sb-block.stb-block .stb-frame{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);border:1px solid var(--stb-line);border-radius:10px;overflow:hidden;background:var(--stb-paper)}.sb-block.stb-block .stb-nav{background:var(--stb-surface);border-right:1px solid var(--stb-line);padding:8px 0;min-width:0}.sb-block.stb-block .stb-tree{display:flex;flex-direction:column;gap:1px}.sb-block.stb-block .stb-row{position:relative;display:flex;align-items:center;gap:6px;min-height:30px;margin:0 6px;padding:0 10px 0 calc(8px + var(--depth) * 18px);border-radius:6px;cursor:pointer;font-family:var(--stb-mono);font-size:12.5px;line-height:1.2;color:var(--stb-text);user-select:none;-webkit-user-select:none}.sb-block.stb-block .stb-row:hover{background:var(--stb-hover)}.sb-block.stb-block .stb-row.is-selected{background:var(--stb-accent-soft)}.sb-block.stb-block .stb-row.is-selected .stb-name{color:var(--stb-accent);font-weight:600}.sb-block.stb-block .stb-row:focus{outline:none}.sb-block.stb-block .stb-row:focus-visible{outline:2px solid var(--stb-accent);outline-offset:-2px}.sb-block.stb-block .stb-guide{position:absolute;top:0;bottom:-1px;left:calc(8px + var(--level) * 18px + 6px);width:1px;background:var(--stb-line)}.sb-block.stb-block .stb-row.is-selected .stb-guide{background:color-mix(in srgb,var(--stb-accent) 18%,transparent)}.sb-block.stb-block .stb-chevron{flex:none;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-right:-1px;border-radius:4px;color:var(--stb-faint)}.sb-block.stb-block .stb-chevron svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}.sb-block.stb-block .stb-chevron.is-open svg{transform:rotate(90deg)}.sb-block.stb-block .stb-row:hover .stb-chevron:not(.is-none){color:var(--stb-muted)}.sb-block.stb-block .stb-name,.sb-block.stb-block .stb-type{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 0}.sb-block.stb-block .stb-type{color:var(--stb-faint);font-family:var(--stb-mono);font-size:11.5px}.sb-block.stb-block .stb-badge{flex:none;margin-left:auto;display:inline-flex;align-items:center;height:19px;padding:0 7px;border-radius:6px;background:var(--stb-surface);border:1px solid var(--stb-line);font-family:var(--font-sans, inherit);font-size:11px;line-height:1;color:var(--stb-muted);white-space:nowrap}.sb-block.stb-block .stb-row .stb-badge{background:var(--stb-paper)}.sb-block.stb-block .stb-row.is-selected .stb-badge{border-color:color-mix(in srgb,var(--stb-accent) 22%,transparent);color:var(--stb-accent)}.sb-block.stb-block .stb-icon{flex:none;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}.sb-block.stb-block svg.stb-icon{overflow:visible}.sb-block.stb-block .stb-icon.is-dir path{fill:color-mix(in srgb,var(--stb-accent) 14%,transparent);stroke:var(--stb-accent);stroke-width:1.2;stroke-linejoin:round}.sb-block.stb-block .stb-icon.is-dir.is-open path{fill:color-mix(in srgb,var(--stb-accent) 30%,transparent)}.sb-block.stb-block .stb-icon.is-file path{fill:none;stroke:var(--stb-muted);stroke-width:1.2;stroke-linejoin:round}.sb-block.stb-block .stb-icon.is-file path:first-child{fill:var(--stb-paper)}.sb-block.stb-block .stb-icon.is-field rect{fill:none;stroke:var(--stb-faint);stroke-width:1.3}.sb-block.stb-block .stb-icon.is-glyph{font-family:var(--stb-mono);font-size:10.5px;font-weight:700;letter-spacing:-.5px;border-radius:4px;line-height:16px}.sb-block.stb-block .stb-icon.is-object{color:var(--stb-object);background:var(--stb-object-soft)}.sb-block.stb-block .stb-icon.is-array{color:var(--stb-array);background:var(--stb-array-soft);letter-spacing:-2px;padding-right:2px}.sb-block.stb-block .stb-detail{padding:18px 24px 22px;min-width:0;overflow-wrap:anywhere}.sb-block.stb-block .stb-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;font-family:var(--stb-mono);font-size:11.5px;line-height:1.5;color:var(--stb-muted)}.sb-block.stb-block .stb-crumbs button{border:0;background:none;font:inherit;cursor:pointer;color:var(--stb-muted);border-radius:4px;padding:0 2px}.sb-block.stb-block .stb-crumbs button:hover{color:var(--stb-accent)}.sb-block.stb-block .stb-crumbs button:focus-visible{outline:2px solid var(--stb-accent);outline-offset:2px}.sb-block.stb-block .stb-crumbs [aria-current]{color:var(--stb-text);padding:0 2px}.sb-block.stb-block .stb-sep{color:var(--stb-faint)}.sb-block.stb-block .stb-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;margin-top:12px}.sb-block.stb-block .stb-title .stb-icon{width:18px;height:18px}.sb-block.stb-block .stb-title .stb-icon.is-glyph{font-size:11.5px;line-height:18px}.sb-block.stb-block .stb-title h4{margin:0;font-family:var(--stb-mono);font-size:17px;line-height:1.35;font-weight:600;letter-spacing:-.01em}.sb-block.stb-block .stb-dtype{font-family:var(--stb-mono);font-size:12px;line-height:1.5;color:var(--stb-muted);background:var(--stb-surface);border-radius:6px;padding:1px 7px}.sb-block.stb-block .stb-title .stb-badge{margin-left:0}.sb-block.stb-block .stb-meta{margin-top:3px;padding-left:27px;font-size:12px;color:var(--stb-faint)}.sb-block.stb-block .stb-summary{margin:12px 0 0;font-size:15px;line-height:1.65}.sb-block.stb-block .stb-body{margin-top:2px}.sb-block.stb-block .stb-para{margin:10px 0 0;line-height:1.75}.sb-block.stb-block ul.stb-para{padding-left:18px}.sb-block.stb-block ul.stb-para li+li{margin-top:3px}.sb-block.stb-block .stb-empty{margin:14px 0 0;font-size:13px;color:var(--stb-faint)}.sb-block.stb-block .stb-code{margin-top:16px;border:1px solid var(--stb-line);border-radius:8px;background:var(--stb-surface);overflow:hidden}.sb-block.stb-block .stb-codebar{display:flex;align-items:center;gap:8px;padding:5px 6px 5px 12px;border-bottom:1px solid var(--stb-line)}.sb-block.stb-block .stb-lang{font-family:var(--stb-mono);font-size:11px;color:var(--stb-muted);letter-spacing:.03em}.sb-block.stb-block .stb-copystate{flex:1;min-width:0;text-align:right;font-size:11.5px;color:var(--stb-note);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-block.stb-block .stb-copy{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--stb-muted);font:inherit;font-size:12px;cursor:pointer}.sb-block.stb-block .stb-copy:hover{background:var(--stb-line);color:var(--stb-text)}.sb-block.stb-block .stb-copy:focus-visible{outline:2px solid var(--stb-accent);outline-offset:2px}.sb-block.stb-block .stb-copy svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.sb-block.stb-block .stb-copy.is-done{color:var(--stb-array)}.sb-block.stb-block .stb-code .stb-pre{margin:0;padding:12px 14px 14px;overflow-x:auto;font-family:var(--stb-mono);font-size:12.5px;line-height:1.65;white-space:pre;tab-size:2;scrollbar-width:thin}.sb-block.stb-block .stb-code code{font:inherit;background:none;border:0;padding:0;border-radius:0;color:inherit;overflow-wrap:normal}.sb-block.stb-block .stb-kids{margin-top:20px}.sb-block.stb-block .stb-kidshead{font-size:12px;font-weight:600;color:var(--stb-muted);letter-spacing:.04em;margin-bottom:4px}.sb-block.stb-block .stb-kid{display:grid;grid-template-columns:16px auto minmax(0,1fr);align-items:center;gap:9px;width:100%;padding:7px 8px;border:0;border-top:1px solid var(--stb-line);border-radius:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.sb-block.stb-block .stb-kid:last-child{border-bottom:1px solid var(--stb-line)}.sb-block.stb-block .stb-kid:hover{background:var(--stb-hover)}.sb-block.stb-block .stb-kid:focus-visible{outline:2px solid var(--stb-accent);outline-offset:-2px;border-radius:4px}.sb-block.stb-block .stb-kidname{font-family:var(--stb-mono);font-size:12.5px;white-space:nowrap}.sb-block.stb-block .stb-kidsum{font-size:12.5px;color:var(--stb-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-block.stb-block .stb-detail code,.sb-block.stb-block .stb-caption code,.sb-block.stb-block .stb-print code{font-family:var(--stb-mono);font-size:.88em;background:var(--stb-surface);border:1px solid var(--stb-line);border-radius:4px;padding:0 4px;overflow-wrap:anywhere}.sb-block.stb-block a{color:var(--stb-accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--stb-accent) 35%,transparent)}.sb-block.stb-block a:hover{border-bottom-color:var(--stb-accent)}.sb-block.stb-block strong{font-weight:600}.sb-block.stb-block .stb-caption{margin:10px 2px 0;font-size:12.5px;line-height:1.65;color:var(--stb-muted)}.sb-block.stb-block .stb-print{display:none}.sb-block.stb-block .stb-print ul{list-style:none;margin:0;padding-left:18px}.sb-block.stb-block .stb-print>ul{padding-left:0}.sb-block.stb-block .stb-print li{margin:2px 0;break-inside:avoid}.sb-block.stb-block .stb-print-name{font-family:var(--stb-mono);font-weight:600;margin-right:6px}.sb-block.stb-block .stb-print .stb-type{display:inline;margin-right:6px}.sb-block.stb-block .stb-print .stb-badge{display:inline;height:auto;margin:0;padding:0 4px}.sb-block.stb-block .stb-print-summary{color:var(--stb-muted)}@container (max-width: 640px){.sb-block.stb-block .stb-frame{grid-template-columns:minmax(0,1fr)}.sb-block.stb-block .stb-nav{border-right:0;border-bottom:1px solid var(--stb-line)}.sb-block.stb-block .stb-detail{padding:16px 16px 18px}.sb-block.stb-block .stb-row{padding-left:calc(6px + var(--depth) * 16px)}.sb-block.stb-block .stb-guide{left:calc(6px + var(--level) * 16px + 6px)}.sb-block.stb-block .stb-summary{font-size:14.5px}}@media(prefers-reduced-motion:reduce){.sb-block.stb-block *{transition:none!important}}@media print{.sb-block.stb-block .stb-frame{display:none}.sb-block.stb-block .stb-print{display:block;font-size:12.5px;line-height:1.6}}
|
|
2
|
+
`);var B=A("structureBrowser",{"zh-CN":{title:"\u7ED3\u6784\u6D4F\u89C8\u5668",tree:"\u7ED3\u6784",path:"\u8DEF\u5F84","kind.dir":"\u6587\u4EF6\u5939","kind.file":"\u6587\u4EF6","kind.object":"\u5BF9\u8C61","kind.array":"\u6570\u7EC4","kind.field":"\u5B57\u6BB5",childCount:{other:"{count} \u4E2A\u5B50\u9879"},contains:"\u5305\u542B",example:"\u793A\u4F8B",copy:"\u590D\u5236",copied:"\u5DF2\u590D\u5236",copyLabel:"\u590D\u5236\u793A\u4F8B\uFF1A{name}",selectedToCopy:"\u5DF2\u9009\u4E2D\uFF0C\u6309 \u2318C / Ctrl+C \u590D\u5236",toggle:"\u5C55\u5F00\u6216\u6536\u8D77 {name}",noDetail:"\u8FD9\u4E00\u9879\u6CA1\u6709\u66F4\u591A\u8BF4\u660E\u3002",empty:"\u6CA1\u6709\u53EF\u663E\u793A\u7684\u7ED3\u6784\u3002"},en:{title:"Structure browser",tree:"Structure",path:"Path","kind.dir":"Folder","kind.file":"File","kind.object":"Object","kind.array":"Array","kind.field":"Field",childCount:{one:"{count} child",other:"{count} children"},contains:"Contains",example:"Example",copy:"Copy",copied:"Copied",copyLabel:"Copy example: {name}",selectedToCopy:"Selected \u2014 press \u2318C / Ctrl+C to copy",toggle:"Expand or collapse {name}",noDetail:"No further description for this item.",empty:"There is no structure to show."}});var t=j(D(),1);function U({source:l}){return l.trim().split(/\n\s*\n/).map((i,b)=>{let s=i.split(`
|
|
3
|
+
`);return s.every(a=>/^\s*[-•]\s+/.test(a))?(0,t.jsx)("ul",{className:"stb-para",children:s.map((a,d)=>(0,t.jsx)("li",{children:(0,t.jsx)(y,{source:a.replace(/^\s*[-•]\s+/,"")})},d))},b):(0,t.jsx)("p",{className:"stb-para",children:s.map((a,d)=>(0,t.jsxs)(c.Fragment,{children:[d>0&&(0,t.jsx)("br",{}),(0,t.jsx)(y,{source:a})]},d))},b)})}function L({kind:l,open:i}){return l==="dir"?(0,t.jsx)("svg",{className:`stb-icon is-dir${i?" is-open":""}`,viewBox:"0 0 16 16","aria-hidden":"true",children:(0,t.jsx)("path",{d:"M1.75 4.25c0-.69.56-1.25 1.25-1.25h2.6l1.4 1.5h6c.69 0 1.25.56 1.25 1.25v6c0 .69-.56 1.25-1.25 1.25H3c-.69 0-1.25-.56-1.25-1.25z"})}):l==="file"?(0,t.jsxs)("svg",{className:"stb-icon is-file",viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,t.jsx)("path",{d:"M4 1.75h5.2L12.75 5.3v8.2c0 .41-.34.75-.75.75H4a.75.75 0 0 1-.75-.75V2.5c0-.41.34-.75.75-.75z"}),(0,t.jsx)("path",{d:"M9 1.9v3.6h3.6"})]}):l==="object"?(0,t.jsx)("span",{className:"stb-icon is-glyph is-object","aria-hidden":"true",children:"{}"}):l==="array"?(0,t.jsx)("span",{className:"stb-icon is-glyph is-array","aria-hidden":"true",children:"[ ]"}):(0,t.jsx)("svg",{className:"stb-icon is-field",viewBox:"0 0 16 16","aria-hidden":"true",children:(0,t.jsx)("rect",{x:"5",y:"5",width:"6",height:"6",rx:"1.5",transform:"rotate(45 8 8)"})})}function _({code:l,lang:i,name:b}){let s=T(B),a=(0,c.useRef)(null),d=(0,c.useRef)(void 0),[m,k]=(0,c.useState)("idle");(0,c.useEffect)(()=>()=>window.clearTimeout(d.current),[]);let p=x=>{k(x),window.clearTimeout(d.current),d.current=window.setTimeout(()=>k("idle"),x==="copied"?1500:4e3)},h=()=>{let x=window.getSelection();if(a.current&&x){let g=document.createRange();g.selectNodeContents(a.current),x.removeAllRanges(),x.addRange(g)}p("selected")},w=()=>{if(!navigator.clipboard)return h();navigator.clipboard.writeText(l).then(()=>p("copied"),h)};return(0,t.jsxs)("div",{className:"stb-code",children:[(0,t.jsxs)("div",{className:"stb-codebar",children:[(0,t.jsx)("span",{className:"stb-lang",children:i||s("example")}),(0,t.jsx)("span",{className:"stb-copystate","aria-live":"polite",children:m==="selected"?s("selectedToCopy"):""}),(0,t.jsxs)("button",{type:"button",className:`stb-copy${m==="copied"?" is-done":""}`,"aria-label":s("copyLabel",{name:b}),onClick:w,children:[m==="copied"?(0,t.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:(0,t.jsx)("path",{d:"M3.5 8.5l3 3 6-6.5"})}):(0,t.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,t.jsx)("rect",{x:"5.5",y:"5.5",width:"8",height:"8",rx:"1.6"}),(0,t.jsx)("path",{d:"M10.5 3.5v-.4A1.6 1.6 0 0 0 8.9 1.5H4.1A1.6 1.6 0 0 0 2.5 3.1v4.8a1.6 1.6 0 0 0 1.6 1.6h.4"})]}),s(m==="copied"?"copied":"copy")]})]}),(0,t.jsx)("pre",{className:"stb-pre",children:(0,t.jsx)("code",{ref:a,children:l})})]})}function $({items:l,roots:i},b){let s=new Set;for(let k of l.values())k.node.open&&k.children.length&&s.add(k.path);let a=b?I(b):"",d=l.has(a)?a:null,m=d??i[0]??null;if(d)for(let k=d;k;k=l.get(k).parent)l.get(k).children.length&&s.add(k);else!s.size&&m&&l.get(m).children.length&&s.add(m);return{selected:m,open:s}}function F({paths:l,outline:i}){return(0,t.jsx)("ul",{children:l.map(b=>{let s=i.items.get(b);return(0,t.jsxs)("li",{children:[(0,t.jsx)("span",{className:"stb-print-name",children:s.node.name}),s.node.type&&(0,t.jsx)("span",{className:"stb-type",children:s.node.type}),s.node.badge&&(0,t.jsx)("span",{className:"stb-badge",children:s.node.badge}),s.node.summary&&(0,t.jsxs)("span",{className:"stb-print-summary",children:[" \u2014 ",(0,t.jsx)(y,{source:s.node.summary,links:!1})]}),s.children.length>0&&(0,t.jsx)(F,{paths:s.children,outline:i})]},b)})})}function et({data:l}){let i=T(B),b=l,s=(0,c.useMemo)(()=>O(b.nodes??[]),[b.nodes]),{items:a,roots:d}=s,[m,k]=(0,c.useState)(()=>$(s,b.initial));(0,c.useEffect)(()=>k($(s,b.initial)),[s,b.initial]);let{selected:p,open:h}=m,w=(e,o)=>k(u=>{let r=new Set(u.open);return o==="open"||o==="flip"&&!r.has(e)?r.add(e):(o==="close"||o==="flip")&&r.delete(e),{selected:e,open:r}}),x=e=>k(o=>{let u=new Set(o.open);for(let r=a.get(e)?.parent??null;r;r=a.get(r).parent)u.add(r);return{selected:e,open:u}}),g=(0,c.useMemo)(()=>{let e=[],o=u=>{for(let r of u){let f=a.get(r);e.push(f),f.children.length&&h.has(r)&&o(f.children)}};return o(d),e},[a,d,h]),z=(0,c.useRef)(new Map),C=(0,c.useRef)(!1);(0,c.useLayoutEffect)(()=>{C.current&&p&&z.current.get(p)?.focus(),C.current=!1},[p,g]);let H=e=>{if(!p)return;let o=a.get(p),u=g.findIndex(f=>f.path===p),r=(f,v)=>{e.preventDefault(),f&&(C.current=!0,w(f,v))};switch(e.key){case"ArrowDown":return r(g[u+1]?.path);case"ArrowUp":return r(g[u-1]?.path);case"Home":return r(g[0]?.path);case"End":return r(g[g.length-1]?.path);case"ArrowRight":return o.children.length?h.has(p)?r(o.children[0]):r(p,"open"):e.preventDefault();case"ArrowLeft":return o.children.length&&h.has(p)?r(p,"close"):r(o.parent);case"Enter":case" ":return o.children.length?r(p,"flip"):e.preventDefault()}},n=p?a.get(p):void 0,S=[];for(let e=p;e;e=a.get(e).parent)S.unshift(a.get(e));let R=e=>e.parent?a.get(e.parent).children:d;return(0,t.jsxs)("section",{className:"sb-block stb-block","aria-label":K(b.title,i("title")),children:[b.title&&(0,t.jsx)("h3",{className:"stb-heading",children:b.title}),(0,t.jsxs)("div",{className:"stb-frame",children:[(0,t.jsx)("div",{className:"stb-nav",children:(0,t.jsx)("div",{className:"stb-tree",role:"tree","aria-label":i("tree"),onKeyDown:H,children:g.map(e=>{let o=h.has(e.path),u=e.path===p,r=R(e);return(0,t.jsxs)("div",{ref:f=>{f?z.current.set(e.path,f):z.current.delete(e.path)},role:"treeitem","aria-level":e.depth+1,"aria-setsize":r.length,"aria-posinset":r.indexOf(e.path)+1,"aria-selected":u,"aria-expanded":e.children.length?o:void 0,tabIndex:u?0:-1,className:`stb-row${u?" is-selected":""}`,style:{"--depth":e.depth},onClick:()=>w(e.path,e.children.length&&(!o||u)?"flip":void 0),children:[Array.from({length:e.depth},(f,v)=>(0,t.jsx)("i",{className:"stb-guide",style:{"--level":v},"aria-hidden":"true"},v)),(0,t.jsx)("span",{className:`stb-chevron${e.children.length?"":" is-none"}${o?" is-open":""}`,"aria-hidden":"true",title:e.children.length?i("toggle",{name:e.node.name}):void 0,onClick:f=>{e.children.length&&(f.stopPropagation(),k(v=>{let N=new Set(v.open);return N.has(e.path)?N.delete(e.path):N.add(e.path),{...v,open:N}}))},children:e.children.length>0&&(0,t.jsx)("svg",{viewBox:"0 0 12 12",children:(0,t.jsx)("path",{d:"M4.5 2.75L7.75 6 4.5 9.25"})})}),(0,t.jsx)(L,{kind:e.kind,open:o}),(0,t.jsx)("span",{className:"stb-name",children:e.node.name}),e.node.type&&(0,t.jsx)("span",{className:"stb-type",children:e.node.type}),e.node.badge&&(0,t.jsx)("span",{className:"stb-badge",children:e.node.badge})]},e.path)})})}),(0,t.jsx)("div",{className:"stb-detail","aria-live":"polite",children:n?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("nav",{className:"stb-crumbs","aria-label":i("path"),children:S.map((e,o)=>(0,t.jsxs)(c.Fragment,{children:[o>0&&(0,t.jsx)("span",{className:"stb-sep","aria-hidden":"true",children:"/"}),o<S.length-1?(0,t.jsx)("button",{type:"button",onClick:()=>w(e.path),children:M(e.node.name)}):(0,t.jsx)("span",{"aria-current":"location",children:M(e.node.name)})]},e.path))}),(0,t.jsxs)("div",{className:"stb-title",children:[(0,t.jsx)(L,{kind:n.kind}),(0,t.jsx)("h4",{children:n.node.name}),n.node.type&&(0,t.jsx)("span",{className:"stb-dtype",children:n.node.type}),n.node.badge&&(0,t.jsx)("span",{className:"stb-badge",children:n.node.badge})]}),(0,t.jsxs)("div",{className:"stb-meta",children:[i(`kind.${n.kind}`),n.children.length>0&&` \xB7 ${i("childCount",{count:n.children.length})}`]}),n.node.summary&&(0,t.jsx)("p",{className:"stb-summary",children:(0,t.jsx)(y,{source:n.node.summary})}),n.node.detail&&(0,t.jsx)("div",{className:"stb-body",children:(0,t.jsx)(U,{source:n.node.detail})}),n.node.example&&(0,t.jsx)(_,{code:n.node.example,lang:n.node.exampleLang,name:n.node.name},n.path),n.children.length>0&&(0,t.jsxs)("div",{className:"stb-kids",children:[(0,t.jsx)("div",{className:"stb-kidshead",children:i("contains")}),n.children.map(e=>{let o=a.get(e);return(0,t.jsxs)("button",{type:"button",className:"stb-kid",onClick:()=>x(e),children:[(0,t.jsx)(L,{kind:o.kind}),(0,t.jsx)("span",{className:"stb-kidname",children:o.node.name}),o.node.summary&&(0,t.jsx)("span",{className:"stb-kidsum",children:E(o.node.summary)})]},e)})]}),!n.node.summary&&!n.node.detail&&!n.node.example&&!n.children.length&&(0,t.jsx)("p",{className:"stb-empty",children:i("noDetail")})]}):(0,t.jsx)("p",{className:"stb-empty",children:i("empty")})})]}),(0,t.jsx)("div",{className:"stb-print",children:(0,t.jsx)(F,{paths:d,outline:s})}),b.caption&&(0,t.jsx)("p",{className:"stb-caption",children:(0,t.jsx)(y,{source:b.caption})})]})}export{et as StructureBrowserBlock};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{f as P,g as j}from"./chunk-3RZMLHCB.js";import{d as X}from"./chunk-VQIPL7NG.js";import{a as H,c as be,jb as C,lb as V,mb as q}from"./chunk-PVMEUQFU.js";import{c as A,d as O}from"./chunk-DUIGVKKG.js";var c=A(be(),1);H(`.sb-block.wf-block :is(h3,h4,p,ul,ol,li,pre):not(svg){margin:0}.sb-block.wf-block li:not(svg){padding:0}.sb-block.wf-block pre:not(svg){border:0;border-radius:0;background:none;color:inherit}.sb-block.wf-block{--wf-text: var(--text, #222222);--wf-muted: var(--muted, #6a6a6a);--wf-line: var(--line, #dddddd);--wf-paper: var(--paper, #ffffff);--wf-surface: var(--surface, #fafafa);--wf-accent: var(--accent, #120a8f);--wf-accent-soft: var(--accent-soft, #eeedf9);--wf-good: #1d5fc4;--wf-bad: #c4402f;color:var(--wf-text);font-family:inherit;font-size:14px;line-height:1.5;padding:8px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;container-type:inline-size}:root[data-theme=dark] .sb-block.wf-block,[data-theme=dark] .sb-block.wf-block{--wf-good: #7fb0f0;--wf-bad: #ef8a7c}.sb-block.wf-block *{box-sizing:border-box}.sb-block.wf-block .wf-tone-total{--wf-tone: var(--wf-text)}.sb-block.wf-block .wf-tone-good{--wf-tone: var(--wf-good)}.sb-block.wf-block .wf-tone-bad{--wf-tone: var(--wf-bad)}.sb-block.wf-block .wf-eyebrow{font-size:11.5px;letter-spacing:.06em;color:var(--wf-muted);font-weight:600}.sb-block.wf-block .wf-title{font-size:17px;font-weight:700;margin:2px 0 0}.sb-block.wf-block .wf-story{margin:6px 0 14px;font-size:18px;line-height:1.42;font-weight:650;max-width:44em}.sb-block.wf-block .wf-heads{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;border-top:2px solid var(--wf-text);border-bottom:1px solid var(--wf-line)}.sb-block.wf-block .wf-head{display:flex;flex-direction:column;gap:2px;padding:10px 14px 11px 0;min-width:0}.sb-block.wf-block .wf-head+.wf-head{padding-left:16px;border-left:1px solid var(--wf-line)}.sb-block.wf-block .wf-head dt{font-size:12px;color:var(--wf-muted);font-weight:600}.sb-block.wf-block .wf-head dd{margin:0;display:flex;flex-direction:column;gap:2px}.sb-block.wf-block .wf-head b{font-size:26px;line-height:1.1;font-weight:750;letter-spacing:-.02em;white-space:nowrap}.sb-block.wf-block .wf-head dd span{font-size:12.5px;font-weight:600;color:var(--wf-tone)}.sb-block.wf-block .wf-head dd .wf-tone-total{color:var(--wf-muted)}.sb-block.wf-block .wf-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:20px;margin-top:14px;align-items:stretch}.sb-block.wf-block .wf-chart{margin:0;min-width:0}.sb-block.wf-block .wf-scroll{overflow-x:auto}.sb-block.wf-block .wf-canvas{position:relative}.sb-block.wf-block .wf-canvas svg{display:block;overflow:visible}.sb-block.wf-block .wf-gridline{stroke:var(--wf-line)}.sb-block.wf-block .wf-zero{stroke:var(--wf-muted)}.sb-block.wf-block .wf-tick{font-size:11px;fill:var(--wf-muted)}.sb-block.wf-block .wf-break path{fill:none;stroke:var(--wf-muted);stroke-width:1.4}.sb-block.wf-block .wf-bar{cursor:pointer;outline:none}.sb-block.wf-block .wf-slot{fill:transparent}.sb-block.wf-block .wf-bar.is-active .wf-slot{fill:var(--wf-accent-soft)}.sb-block.wf-block .wf-bar:focus-visible .wf-slot{stroke:var(--wf-accent);stroke-width:2}.sb-block.wf-block .wf-fill{fill:var(--wf-tone);opacity:.78;transition:opacity .15s}.sb-block.wf-block .wf-bar:hover .wf-fill,.sb-block.wf-block .wf-bar.is-active .wf-fill{opacity:1}.sb-block.wf-block .wf-connector{stroke:var(--wf-muted);stroke-dasharray:3 3}.sb-block.wf-block .wf-value{font-size:12.5px;font-weight:700;fill:var(--wf-tone)}.sb-block.wf-block .wf-labels{position:absolute;left:0;right:0;height:44px}.sb-block.wf-block .wf-labels span{position:absolute;top:4px;padding:0 4px;text-align:center;font-size:12px;font-weight:600;line-height:1.3;color:var(--wf-muted);cursor:pointer}.sb-block.wf-block .wf-labels span.is-active{color:var(--wf-text);font-weight:750}.sb-block.wf-block .wf-chart figcaption{font-size:11.5px;color:var(--wf-muted);margin-top:4px;display:flex;flex-direction:column;gap:2px}.sb-block.wf-block .wf-warn{color:var(--wf-bad);font-weight:600}.sb-block.wf-block .wf-side{border-radius:12px;background:var(--wf-surface);border:1px solid var(--wf-line);padding:14px 16px;display:flex;flex-direction:column;min-width:0}.sb-block.wf-block .wf-side-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sb-block.wf-block .wf-side-top span{font-size:13px;font-weight:700}.sb-block.wf-block .wf-side-top b{font-size:23px;font-weight:750;letter-spacing:-.02em;color:var(--wf-tone);white-space:nowrap}.sb-block.wf-block .wf-side-title{font-size:12px;color:var(--wf-muted);margin:2px 0 10px;font-weight:600}.sb-block.wf-block .wf-side ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.sb-block.wf-block .wf-row{display:flex;justify-content:space-between;gap:8px;font-size:13px;font-weight:600}.sb-block.wf-block .wf-row span:first-child{min-width:0}.sb-block.wf-block .wf-num{white-space:nowrap}.sb-block.wf-block .wf-num em{font-style:normal;color:var(--wf-muted);margin-left:6px;font-size:12px}.sb-block.wf-block .wf-track{height:7px;border-radius:4px;background:color-mix(in srgb,var(--wf-line) 70%,transparent);margin-top:4px;overflow:hidden}.sb-block.wf-block .wf-track span{display:block;height:100%;border-radius:4px;background:var(--wf-tone);transition:width .3s ease}.sb-block.wf-block .wf-muted{color:var(--wf-muted);font-size:12px;margin:8px 0 0}.sb-block.wf-block .wf-note{font-size:12.5px;line-height:1.45;margin:12px 0 0;padding-top:10px;border-top:1px solid var(--wf-line)}.sb-block.wf-block .wf-hint{margin:auto 0 0;padding-top:10px;font-size:11.5px;color:var(--wf-muted)}.sb-block.wf-block .wf-static{margin-top:12px;font-size:13px}.sb-block.wf-block .wf-static summary{cursor:pointer;color:var(--wf-muted)}.sb-block.wf-block .wf-static table{border-collapse:collapse;width:100%;margin-top:8px}.sb-block.wf-block .wf-static th,.sb-block.wf-block .wf-static td{border-bottom:1px solid var(--wf-line);padding:4px 6px;text-align:left;vertical-align:top}@container (max-width: 760px){.sb-block.wf-block .wf-body{grid-template-columns:minmax(0,1fr)}.sb-block.wf-block .wf-head b{font-size:22px}.sb-block.wf-block .wf-story{font-size:16px}}@container (max-width: 420px){.sb-block.wf-block .wf-head+.wf-head{padding-left:0;border-left:0}}@media(prefers-reduced-motion:reduce){.sb-block.wf-block .wf-fill,.sb-block.wf-block .wf-track span{transition:none}}@media print{.sb-block.wf-block .wf-hint{display:none}.sb-block.wf-block .wf-scroll{overflow:visible}}
|
|
2
|
+
`);var _=O("waterfall",{"zh-CN":{title:"\u7011\u5E03\u6865\u56FE","kind.total":"\u5408\u8BA1","kind.up":"\u589E\u52A0","kind.down":"\u51CF\u5C11",chart:"\u4ECE\u671F\u521D\u5230\u671F\u672B\u7684\u9010\u9879\u53D8\u52A8",step:"{label}\uFF0C{kind} {value}",hint:"\u70B9\u51FB\u67F1\u5B50\u6216\u7528\u65B9\u5411\u952E\u5207\u6362\uFF0C\u67E5\u770B\u8FD9\u4E00\u6B65\u7684\u6784\u6210\u3002",axisFloor:"\u7EB5\u8F74\u4ECE {value} \u8D77\uFF0C\u4EE5\u4FBF\u770B\u6E05\u53D8\u52A8\u3002",mismatch:"\u300C{label}\u300D\u5199\u7684\u662F {stated}\uFF0C\u5404\u9879\u7D2F\u8BA1\u4E3A {computed}\uFF0C\u4E24\u8005\u5BF9\u4E0D\u4E0A\u3002",share:"\u5360\u6BD4",noBreakdown:"\u8FD9\u4E00\u6B65\u6CA1\u6709\u5217\u51FA\u6784\u6210\u3002",breakdownGap:"\u660E\u7EC6\u5408\u8BA1 {sum}\uFF0C\u4E0E\u8FD9\u4E00\u6B65\u7684 {value} \u76F8\u5DEE {gap}\u3002",readAll:"\u4EE5\u8868\u683C\u9605\u8BFB\u5168\u90E8\u6B65\u9AA4\uFF08{count}\uFF09","column.step":"\u6B65\u9AA4","column.kind":"\u7C7B\u578B","column.value":"\u53D8\u52A8","column.level":"\u7D2F\u8BA1"},en:{title:"Waterfall","kind.total":"Total","kind.up":"Increase","kind.down":"Decrease",chart:"Step-by-step change from opening to closing value",step:"{label}, {kind} {value}",hint:"Click a bar or use the arrow keys to see what makes up that step.",axisFloor:"The axis starts at {value} so the changes stay visible.",mismatch:"\u201C{label}\u201D states {stated}, but the steps add up to {computed}.",share:"Share",noBreakdown:"No breakdown is listed for this step.",breakdownGap:"Items add up to {sum}, {gap} away from this step's {value}.",readAll:"Read every step as a table ({count})","column.step":"Step","column.kind":"Kind","column.value":"Change","column.level":"Running total"}});var t=A(C(),1),u=300,s={left:52,right:8,top:28,bottom:12},de=64;function we(){let m=(0,c.useRef)(null),[i,b]=(0,c.useState)(640);return(0,c.useEffect)(()=>{let l=m.current;if(!l)return;let a=new ResizeObserver(([n])=>b(n.contentRect.width));return a.observe(l),()=>a.disconnect()},[]),[m,i]}function pe(m,i){let b=(i-m)/4,l=10**Math.floor(Math.log10(b)),a=[1,2,2.5,5,10].map(d=>d*l).find(d=>d>=b)??b,n=[];for(let d=Math.ceil(m/a)*a;d<=i+a*1e-6;d+=a)n.push(Number(d.toPrecision(12)));return n}function Ne({data:m}){let i=q(_),b=V(),l=m,a=l.steps,n=l.format??{},d=l.upIsGood??!0,J=(0,c.useMemo)(()=>new Intl.NumberFormat(b,{minimumFractionDigits:n.decimals??0,maximumFractionDigits:n.decimals??0}),[b,n.decimals]),Q=(0,c.useMemo)(()=>new Intl.NumberFormat(b,{maximumFractionDigits:n.decimals??0}),[b,n.decimals]),f=(e,o=!1,h=!1)=>{let D=(h?Q:J).format(Math.abs(e)/(n.divisor??1));return`${e<0?"\u2212":o&&e>0?"+":""}${n.prefix??""}${D}${n.suffix??""}`},y=e=>e.kind==="total"?f(e.value):f(e.kind==="down"?-e.value:e.value,!0),F=e=>e==="total"||e==="neutral"?"total":e==="up"===d?"good":"bad",{spans:N}=P(a),E=N.map((e,o)=>a[o].kind==="total"?a[o].value:a[o].kind==="down"?e[0]:e[1]),U=j(l),[Y,M]=(0,c.useState)(()=>l.initialStep??a[1]?.id??a[0].id),r=a.find(e=>e.id===Y)??a[0],[Z,ee]=we(),K=(0,c.useRef)(null),G=(0,c.useRef)(null);(0,c.useEffect)(()=>{let e=()=>{G.current&&(G.current.open=!0)};return window.addEventListener("beforeprint",e),()=>window.removeEventListener("beforeprint",e)},[]);let g=Math.max(ee,s.left+s.right+a.length*de),z=Math.max(...N.map(e=>e[1])),te=Math.min(...N.map(e=>e[0])),w=l.axisFloor??Math.min(0,te),I=pe(w,z>w?z:w+1),oe=Math.max(z,I[I.length-1]??z),p=e=>s.top+(1-(Math.max(e,w)-w)/(oe-w||1))*(u-s.top-s.bottom),k=(g-s.left-s.right)/a.length,S=Math.min(k*.6,72),L=e=>s.left+e*k+(k-S)/2,T=w>0,ae=e=>{let o=a[(e+a.length)%a.length];M(o.id),K.current?.querySelector(`[data-step="${CSS.escape(o.id)}"]`)?.focus()},le=(e,o)=>{e.key==="Enter"||e.key===" "?(e.preventDefault(),M(a[o].id)):(e.key==="ArrowRight"||e.key==="ArrowLeft")&&(e.preventDefault(),ae(o+(e.key==="ArrowRight"?1:-1)))},v=r.breakdown?.items??[],x=v.reduce((e,o)=>e+o.value,0),se=Math.max(1e-9,...v.map(e=>Math.abs(e.value))),ie=.5*(n.divisor??1)/10**(n.decimals??0),ne=v.length>0&&Math.abs(x-Math.abs(r.value))>ie,B=e=>i(`kind.${e}`);return(0,t.jsxs)("section",{className:"sb-block wf-block","aria-label":X(l.title,i("title")),children:[l.eyebrow&&(0,t.jsx)("div",{className:"wf-eyebrow",children:l.eyebrow}),l.title&&(0,t.jsx)("h3",{className:"wf-title",children:l.title}),l.narrative&&(0,t.jsx)("p",{className:"wf-story",children:l.narrative}),l.headlines&&l.headlines.length>0&&(0,t.jsx)("dl",{className:"wf-heads",children:l.headlines.map((e,o)=>(0,t.jsxs)("div",{className:"wf-head",children:[(0,t.jsx)("dt",{children:e.label}),(0,t.jsxs)("dd",{children:[(0,t.jsx)("b",{children:e.value}),e.detail&&(0,t.jsx)("span",{className:`wf-tone-${F(e.tone??"neutral")}`,children:e.detail})]})]},o))}),(0,t.jsxs)("div",{className:"wf-body",children:[(0,t.jsxs)("figure",{className:"wf-chart",children:[(0,t.jsx)("div",{className:"wf-scroll",ref:Z,children:(0,t.jsxs)("div",{className:"wf-canvas",style:{width:g,height:u+44},children:[(0,t.jsxs)("svg",{width:g,height:u,role:"group","aria-label":i("chart"),children:[I.map(e=>(0,t.jsxs)("g",{"aria-hidden":"true",children:[(0,t.jsx)("line",{className:"wf-gridline",x1:s.left,x2:g-s.right,y1:p(e),y2:p(e)}),(0,t.jsx)("text",{className:"wf-tick",x:s.left-8,y:p(e)+4,textAnchor:"end",children:f(e,!1,!0)})]},e)),w<0&&(0,t.jsx)("line",{className:"wf-zero","aria-hidden":"true",x1:s.left,x2:g-s.right,y1:p(0),y2:p(0)}),T&&(0,t.jsxs)("g",{className:"wf-break","aria-hidden":"true",children:[(0,t.jsx)("path",{d:`M${s.left-5} ${u-s.bottom+2} l5 -5 l5 5`}),(0,t.jsx)("path",{d:`M${s.left-5} ${u-s.bottom+8} l5 -5 l5 5`})]}),(0,t.jsx)("g",{ref:K,children:a.map((e,o)=>{let[h,D]=N[o],$=L(o),R=p(D),re=Math.max(2,p(h)-R),W=e.id===r.id,ce=o<a.length-1;return(0,t.jsxs)("g",{className:`wf-bar wf-tone-${F(e.kind)}${W?" is-active":""}`,"data-step":e.id,tabIndex:0,role:"button","aria-pressed":W,"aria-label":i("step",{label:e.label,kind:B(e.kind),value:y(e)}),onClick:()=>M(e.id),onKeyDown:fe=>le(fe,o),children:[(0,t.jsx)("rect",{className:"wf-slot",x:s.left+o*k+2,y:s.top-24,width:k-4,height:u-s.top+22,rx:8}),(0,t.jsx)("rect",{className:"wf-fill",x:$,y:R,width:S,height:re,rx:3}),ce&&(0,t.jsx)("line",{className:"wf-connector",x1:$+S,x2:L(o+1),y1:p(E[o]),y2:p(E[o])}),(0,t.jsx)("text",{className:"wf-value",x:$+S/2,y:R-7,textAnchor:"middle",children:y(e)})]},e.id)})})]}),(0,t.jsx)("div",{className:"wf-labels",style:{top:u},"aria-hidden":"true",children:a.map((e,o)=>(0,t.jsx)("span",{className:e.id===r.id?"is-active":void 0,style:{left:s.left+o*k,width:k},onClick:()=>M(e.id),children:e.label},e.id))})]})}),(0,t.jsxs)("figcaption",{children:[l.axisNote??(T?i("axisFloor",{value:f(w)}):null),U.map(e=>(0,t.jsx)("span",{className:"wf-warn",role:"status",children:i("mismatch",{label:a.find(o=>o.id===e.id).label,stated:f(e.stated),computed:f(e.computed)})},e.id))]})]}),(0,t.jsxs)("aside",{className:`wf-side wf-tone-${F(r.kind)}`,"aria-live":"polite",children:[(0,t.jsxs)("div",{className:"wf-side-top",children:[(0,t.jsx)("span",{children:r.label}),(0,t.jsx)("b",{children:y(r)})]}),r.breakdown?.title&&(0,t.jsx)("div",{className:"wf-side-title",children:r.breakdown.title}),v.length>0?(0,t.jsx)("ul",{children:v.map((e,o)=>(0,t.jsxs)("li",{children:[(0,t.jsxs)("div",{className:"wf-row",children:[(0,t.jsx)("span",{children:e.label}),(0,t.jsxs)("span",{className:"wf-num",children:[f(e.value),(0,t.jsx)("em",{"aria-label":i("share"),children:x?`${Math.round(e.value/x*100)}%`:"\u2013"})]})]}),(0,t.jsx)("div",{className:"wf-track","aria-hidden":"true",children:(0,t.jsx)("span",{style:{width:`${Math.abs(e.value)/se*100}%`}})})]},o))}):(0,t.jsx)("p",{className:"wf-muted",children:i("noBreakdown")}),ne&&(0,t.jsx)("p",{className:"wf-muted",children:i("breakdownGap",{sum:f(x),value:f(Math.abs(r.value)),gap:f(Math.abs(x-Math.abs(r.value)))})}),r.breakdown?.note&&(0,t.jsx)("p",{className:"wf-note",children:r.breakdown.note}),(0,t.jsx)("p",{className:"wf-hint",children:i("hint")})]})]}),(0,t.jsxs)("details",{className:"wf-static",ref:G,children:[(0,t.jsx)("summary",{children:i("readAll",{count:a.length})}),(0,t.jsxs)("table",{children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{children:[(0,t.jsx)("th",{children:i("column.step")}),(0,t.jsx)("th",{children:i("column.kind")}),(0,t.jsx)("th",{children:i("column.value")}),(0,t.jsx)("th",{children:i("column.level")})]})}),(0,t.jsx)("tbody",{children:a.map((e,o)=>(0,t.jsxs)("tr",{children:[(0,t.jsxs)("td",{children:[e.label,e.breakdown&&e.breakdown.items.length>0&&(0,t.jsx)("div",{className:"wf-muted",children:e.breakdown.items.map(h=>`${h.label} ${f(h.value)}`).join(" \xB7 ")})]}),(0,t.jsx)("td",{children:B(e.kind)}),(0,t.jsx)("td",{children:y(e)}),(0,t.jsx)("td",{children:f(E[o])})]},e.id))})]})]})]})}export{Ne as WaterfallBlock};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"./chunk-CMJMBEIC.js";import{d as e}from"./chunk-DUIGVKKG.js";a(`.sb-block.an-block{--an-text: var(--text, #222222);--an-muted: var(--muted, #6a6a6a);--an-line: var(--line, #dddddd);--an-paper: var(--paper, #ffffff);--an-surface: var(--surface, #fafafa);--an-accent: var(--accent, #120a8f);--an-accent-soft: var(--accent-soft, #eeedf9);--an-good: #2f6b4f;--an-good-soft: #e6efe9;--an-bad: #b0473f;--an-bad-soft: #f8e7e5;--an-warn: #a86b34;--an-warn-soft: #f6ece2;--an-info: #3b74b8;--an-info-soft: #e5eff8;--an-idle: #8a918c;--an-idle-soft: #f1f2ee;color:var(--an-text);font-family:inherit;font-size:14px;line-height:1.55;padding:8px 0;container-type:inline-size;overflow-wrap:anywhere}:root[data-theme=dark] .an-block,[data-theme=dark] .an-block{--an-good: #7cc3a0;--an-good-soft: #20352b;--an-bad: #e48b83;--an-bad-soft: #3b2423;--an-warn: #e0a96f;--an-warn-soft: #3a2c1e;--an-info: #8bb8eb;--an-info-soft: #1f2d3d;--an-idle: #a3aaa5;--an-idle-soft: #2a2c2b}.an-block *{box-sizing:border-box}.an-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-bottom:12px}.an-title{font-size:17px;font-weight:700;margin:0}.an-sub{color:var(--an-muted);font-size:13px;margin:0}.an-tools{margin-left:auto;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.an-block .an-chip{border:1px solid var(--an-line);background:var(--an-paper);color:var(--an-muted);border-radius:999px;padding:3px 10px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.an-chip[aria-pressed=true]{border-color:currentColor;background:var(--an-surface);color:var(--an-text)}.an-chip:focus-visible,.an-item:focus-visible,.an-col-button:focus-visible,.an-row:focus-visible{outline:2px solid var(--an-accent);outline-offset:2px}.an-panel{background:var(--an-paper);border:1px solid var(--an-line);border-radius:12px;padding:12px;min-width:0}.an-panel-title{font-size:12.5px;font-weight:700;margin:0 0 8px}.an-empty{color:var(--an-muted);font-size:13px;padding:12px 0}.an-static{margin-top:10px;font-size:13px}.an-static summary{cursor:pointer;color:var(--an-muted)}.an-static table{border-collapse:collapse;width:100%;margin-top:8px}.an-static th,.an-static td{border-bottom:1px solid var(--an-line);padding:4px 6px;text-align:left;vertical-align:top}.an-tone-yes{--tone: var(--an-good);--tone-soft: var(--an-good-soft)}.an-tone-no{--tone: var(--an-bad);--tone-soft: var(--an-bad-soft)}.an-tone-partial{--tone: var(--an-warn);--tone-soft: var(--an-warn-soft)}.an-tone-neutral{--tone: var(--an-info);--tone-soft: var(--an-info-soft)}.an-tone-na{--tone: var(--an-idle);--tone-soft: transparent}.an-matrix-scroll{overflow-x:auto}.an-matrix{border-collapse:separate;border-spacing:0;width:100%;min-width:560px}.an-matrix th,.an-matrix td{padding:8px 10px;border-bottom:1px solid var(--an-line);text-align:left;vertical-align:top}.an-matrix thead th{font-size:13px;white-space:nowrap;border-bottom-width:2px}.an-matrix .an-rowhead{position:sticky;left:0;z-index:1;background:var(--an-paper);width:180px;min-width:140px}.an-row-label{font-weight:600}.an-row-hint{color:var(--an-muted);font-size:11.5px;margin-top:2px}.an-group-row th{background:var(--an-surface);color:var(--an-muted);font-size:12px;letter-spacing:.04em}.an-col-button{all:unset;cursor:pointer;display:block}.an-col-note{display:block;font-weight:500;font-size:11.5px;color:var(--an-muted);white-space:normal}.an-matrix .is-highlight{background:var(--an-accent-soft);box-shadow:inset 2px 0 var(--an-accent),inset -2px 0 var(--an-accent)}.an-matrix thead .is-highlight{color:var(--an-accent)}.an-matrix .is-focus{background:var(--an-surface);box-shadow:inset 2px 0 var(--an-text),inset -2px 0 var(--an-text)}.an-matrix.has-focus td:not(.is-focus):not(.is-highlight):not(.an-rowhead){opacity:.55}.an-matrix tbody tr:hover td,.an-matrix tbody tr:hover th{background-image:linear-gradient(var(--an-surface),var(--an-surface))}.an-cell{display:inline-flex;gap:5px;align-items:baseline;color:var(--tone);background:var(--tone-soft);border-radius:6px;padding:1px 6px;line-height:1.5;white-space:nowrap}.an-cell span{color:var(--an-text)}.an-tone-na.an-cell,.an-tone-na.an-cell span{color:var(--an-idle);padding:0}.an-note-mark{color:var(--an-muted);font-size:11px;vertical-align:super}.an-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:12px;color:var(--an-muted)}.an-legend b{color:var(--tone)}.an-tree-layout{display:flex;gap:16px;align-items:flex-start}.an-tree{flex:none;max-width:100%;position:relative}.an-tree svg{position:absolute;inset:0;overflow:visible}.an-root{position:absolute;border-radius:14px;background:var(--an-text);color:var(--an-paper);padding:12px 14px;display:flex;flex-direction:column;justify-content:center;font-size:13px;font-weight:600;line-height:1.45}.an-root small{opacity:.7;font-size:11px;font-weight:500}.an-group{position:absolute;background:var(--an-paper);border:1px solid var(--an-line);border-radius:12px;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;gap:5px}.an-group-top{display:flex;align-items:baseline;gap:6px;font-size:13.5px}.an-group-top span{margin-left:auto;font-size:11.5px;color:var(--an-muted)}.an-group-summary{font-size:11px;color:var(--an-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--an-idle-soft)}.an-block .an-item{position:absolute;display:flex;align-items:center;gap:8px;padding:0 10px 0 6px;border-radius:9px;border:1px solid var(--an-line);background:var(--an-paper);font:inherit;font-size:12.5px;color:var(--an-text);text-align:left;cursor:pointer;transition:opacity .15s}.an-item.is-selected{border-color:var(--tone);background:var(--tone-soft)}.an-item.is-dim{opacity:.3}.an-mark{width:20px;height:20px;flex-shrink:0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--tone);background:var(--tone-soft)}.an-st-done .an-mark{color:var(--an-paper);background:var(--tone)}.an-st-todo .an-mark{border:1px dashed var(--tone)}.an-st-active .an-mark{animation:an-pulse 1.4s ease-in-out infinite}.an-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-st-failed .an-item-label{color:var(--an-muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--an-bad) 55%,transparent)}.an-item-result{max-width:48%;font-size:11px;color:var(--an-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-st-done .an-item-result{color:var(--tone)}.an-item-source{font-size:10.5px;color:var(--an-muted);white-space:nowrap}.an-detail{width:300px;flex-shrink:0;position:sticky;top:8px;display:flex;flex-direction:column;gap:10px}.an-detail h4{font-size:15px;margin:4px 0 8px;line-height:1.4}.an-pill{display:inline-block;font-size:12px;font-weight:600;color:var(--tone);background:var(--tone-soft);border-radius:999px;padding:2px 10px}.an-field{margin-top:12px}.an-field small{display:block;font-size:11.5px;color:var(--an-muted);margin-bottom:3px}.an-result-box{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--tone-soft)}.an-tags{display:flex;flex-wrap:wrap;gap:5px}.an-tag{font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--an-idle-soft)}@keyframes an-pulse{0%,to{opacity:1}50%{opacity:.35}}.an-tracker{background:var(--an-surface);border:1px solid var(--an-line);border-radius:14px;padding:14px}.an-tracker-grid{display:grid;grid-template-columns:250px minmax(0,1fr) 250px;gap:16px;align-items:stretch}.an-runs{display:flex;flex-direction:column;padding:0;min-height:0}.an-runs-head{padding:10px 12px 8px;border-bottom:1px solid var(--an-line)}.an-runs-list{overflow-y:auto;flex:1 1 0;min-height:0}.an-row{display:grid;grid-template-columns:16px 40px minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px 10px;font-size:12px;cursor:pointer;border-bottom:1px solid var(--an-idle-soft)}.an-row:hover{background:var(--an-surface)}.an-row.is-selected{background:var(--an-accent-soft)}.an-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-row-name small{display:block;font-size:10.5px;color:var(--an-muted)}.an-score{font-variant-numeric:tabular-nums;font-weight:600}.an-status{font-size:10.5px;font-weight:600;color:var(--tone);background:var(--tone-soft);border-radius:999px;padding:0 7px;white-space:nowrap}.an-ex-kept{--tone: var(--an-good);--tone-soft: var(--an-good-soft)}.an-ex-discarded{--tone: var(--an-idle);--tone-soft: var(--an-idle-soft)}.an-ex-failed{--tone: var(--an-bad);--tone-soft: var(--an-bad-soft)}.an-ex-running{--tone: var(--an-info);--tone-soft: var(--an-info-soft)}.an-ex-stopped{--tone: var(--an-warn);--tone-soft: var(--an-warn-soft)}.an-main{display:flex;flex-direction:column;gap:12px;min-width:0}.an-plot-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--an-muted);padding:0 4px 6px;align-items:center}.an-plot-legend b{color:var(--an-text);font-size:13px}.an-plot{position:relative}.an-plot svg{display:block}.an-plot text{fill:var(--an-muted);font-size:11px}.an-grid-line{stroke:var(--an-line);stroke-dasharray:3 5}.an-frontier{fill:none;stroke:var(--an-good);stroke-width:2.5;stroke-linejoin:round}.an-baseline{stroke:var(--an-warn);stroke-dasharray:6 4}.an-plot .an-baseline-label{fill:var(--an-warn)}.an-lane{fill:var(--an-idle-soft)}.an-point{cursor:pointer}.an-point-kept{fill:var(--an-good)}.an-point-other{fill:var(--an-paper);stroke:var(--an-idle);stroke-width:1.6}.an-point-label{font-weight:600}.an-plot .an-point-label.is-frontier{fill:var(--an-good)}.an-ring{animation:an-ring 1.8s ease-out infinite;transform-box:fill-box;transform-origin:center}@keyframes an-ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.an-tip{position:absolute;width:220px;pointer-events:none;background:var(--an-text);color:var(--an-paper);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.6;box-shadow:0 10px 30px #0003}.an-tip span{display:block;opacity:.75}.an-small-multiples{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.an-mini text{fill:var(--an-muted);font-size:10px}.an-mini-values{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:11px;color:var(--an-muted);min-height:17px}.an-stats{display:flex;flex-direction:column;gap:8px}.an-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.an-stat{background:var(--an-paper);border:1px solid var(--an-line);border-radius:10px;padding:8px 10px;min-width:0}.an-stat.is-wide{grid-column:1 / -1}.an-stat small{display:block;font-size:11.5px;color:var(--an-muted)}.an-stat-value{display:block;font-size:21px;font-variant-numeric:tabular-nums;line-height:1.3;white-space:nowrap}.an-stat-unit{font-style:normal;font-size:12px;font-weight:500;color:var(--an-muted);margin-left:3px}.an-stat p{margin:0;font-size:10.5px;color:var(--an-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-meter{height:5px;border-radius:3px;background:var(--an-idle-soft);margin-top:6px;position:relative}.an-meter i{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--an-good)}.an-meter i.is-total{background:var(--an-line)}.an-detail-card{background:var(--an-text);color:var(--an-paper);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.6}.an-detail-card span{display:block;opacity:.75}@container (max-width: 980px){.an-tracker-grid{grid-template-columns:minmax(0,1fr)}.an-runs{order:3;max-height:320px}.an-stats{order:2}.an-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.an-tree-layout{flex-direction:column}.an-detail{width:100%;position:static}}@media(prefers-reduced-motion:reduce){.an-ring,.an-st-active .an-mark{animation:none}}@media print{.an-tools,.an-tip{display:none}.an-runs-list{overflow:visible}}
|
|
1
|
+
import{a}from"./chunk-PVMEUQFU.js";import{d as e}from"./chunk-DUIGVKKG.js";a(`.sb-block.an-block{--an-text: var(--text, #222222);--an-muted: var(--muted, #6a6a6a);--an-line: var(--line, #dddddd);--an-paper: var(--paper, #ffffff);--an-surface: var(--surface, #fafafa);--an-accent: var(--accent, #120a8f);--an-accent-soft: var(--accent-soft, #eeedf9);--an-good: #2f6b4f;--an-good-soft: #e6efe9;--an-bad: #b0473f;--an-bad-soft: #f8e7e5;--an-warn: #a86b34;--an-warn-soft: #f6ece2;--an-info: #3b74b8;--an-info-soft: #e5eff8;--an-idle: #8a918c;--an-idle-soft: #f1f2ee;color:var(--an-text);font-family:inherit;font-size:14px;line-height:1.55;padding:8px 0;container-type:inline-size;overflow-wrap:anywhere}:root[data-theme=dark] .an-block,[data-theme=dark] .an-block{--an-good: #7cc3a0;--an-good-soft: #20352b;--an-bad: #e48b83;--an-bad-soft: #3b2423;--an-warn: #e0a96f;--an-warn-soft: #3a2c1e;--an-info: #8bb8eb;--an-info-soft: #1f2d3d;--an-idle: #a3aaa5;--an-idle-soft: #2a2c2b}.an-block *{box-sizing:border-box}.an-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-bottom:12px}.an-title{font-size:17px;font-weight:700;margin:0}.an-sub{color:var(--an-muted);font-size:13px;margin:0}.an-tools{margin-left:auto;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.an-block .an-chip{border:1px solid var(--an-line);background:var(--an-paper);color:var(--an-muted);border-radius:999px;padding:3px 10px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.an-chip[aria-pressed=true]{border-color:currentColor;background:var(--an-surface);color:var(--an-text)}.an-chip:focus-visible,.an-item:focus-visible,.an-col-button:focus-visible,.an-row:focus-visible{outline:2px solid var(--an-accent);outline-offset:2px}.an-panel{background:var(--an-paper);border:1px solid var(--an-line);border-radius:12px;padding:12px;min-width:0}.an-panel-title{font-size:12.5px;font-weight:700;margin:0 0 8px}.an-empty{color:var(--an-muted);font-size:13px;padding:12px 0}.an-static{margin-top:10px;font-size:13px}.an-static summary{cursor:pointer;color:var(--an-muted)}.an-static table{border-collapse:collapse;width:100%;margin-top:8px}.an-static th,.an-static td{border-bottom:1px solid var(--an-line);padding:4px 6px;text-align:left;vertical-align:top}.an-tone-yes{--tone: var(--an-good);--tone-soft: var(--an-good-soft)}.an-tone-no{--tone: var(--an-bad);--tone-soft: var(--an-bad-soft)}.an-tone-partial{--tone: var(--an-warn);--tone-soft: var(--an-warn-soft)}.an-tone-neutral{--tone: var(--an-info);--tone-soft: var(--an-info-soft)}.an-tone-na{--tone: var(--an-idle);--tone-soft: transparent}.an-matrix-scroll{overflow-x:auto}.an-matrix{border-collapse:separate;border-spacing:0;width:100%;min-width:560px}.an-matrix th,.an-matrix td{padding:8px 10px;border-bottom:1px solid var(--an-line);text-align:left;vertical-align:top}.an-matrix thead th{font-size:13px;white-space:nowrap;border-bottom-width:2px}.an-matrix .an-rowhead{position:sticky;left:0;z-index:1;background:var(--an-paper);width:180px;min-width:140px}.an-row-label{font-weight:600}.an-row-hint{color:var(--an-muted);font-size:11.5px;margin-top:2px}.an-group-row th{background:var(--an-surface);color:var(--an-muted);font-size:12px;letter-spacing:.04em}.an-col-button{all:unset;cursor:pointer;display:block}.an-col-note{display:block;font-weight:500;font-size:11.5px;color:var(--an-muted);white-space:normal}.an-matrix .is-highlight{background:var(--an-accent-soft);box-shadow:inset 2px 0 var(--an-accent),inset -2px 0 var(--an-accent)}.an-matrix thead .is-highlight{color:var(--an-accent)}.an-matrix .is-focus{background:var(--an-surface);box-shadow:inset 2px 0 var(--an-text),inset -2px 0 var(--an-text)}.an-matrix.has-focus td:not(.is-focus):not(.is-highlight):not(.an-rowhead){opacity:.55}.an-matrix tbody tr:hover td,.an-matrix tbody tr:hover th{background-image:linear-gradient(var(--an-surface),var(--an-surface))}.an-cell{display:inline-flex;gap:5px;align-items:baseline;color:var(--tone);background:var(--tone-soft);border-radius:6px;padding:1px 6px;line-height:1.5;white-space:nowrap}.an-cell span{color:var(--an-text)}.an-tone-na.an-cell,.an-tone-na.an-cell span{color:var(--an-idle);padding:0}.an-note-mark{color:var(--an-muted);font-size:11px;vertical-align:super}.an-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:12px;color:var(--an-muted)}.an-legend b{color:var(--tone)}.an-tree-layout{display:flex;gap:16px;align-items:flex-start}.an-tree{flex:none;max-width:100%;position:relative}.an-tree svg{position:absolute;inset:0;overflow:visible}.an-root{position:absolute;border-radius:14px;background:var(--an-text);color:var(--an-paper);padding:12px 14px;display:flex;flex-direction:column;justify-content:center;font-size:13px;font-weight:600;line-height:1.45}.an-root small{opacity:.7;font-size:11px;font-weight:500}.an-group{position:absolute;background:var(--an-paper);border:1px solid var(--an-line);border-radius:12px;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;gap:5px}.an-group-top{display:flex;align-items:baseline;gap:6px;font-size:13.5px}.an-group-top span{margin-left:auto;font-size:11.5px;color:var(--an-muted)}.an-group-summary{font-size:11px;color:var(--an-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--an-idle-soft)}.an-block .an-item{position:absolute;display:flex;align-items:center;gap:8px;padding:0 10px 0 6px;border-radius:9px;border:1px solid var(--an-line);background:var(--an-paper);font:inherit;font-size:12.5px;color:var(--an-text);text-align:left;cursor:pointer;transition:opacity .15s}.an-item.is-selected{border-color:var(--tone);background:var(--tone-soft)}.an-item.is-dim{opacity:.3}.an-mark{width:20px;height:20px;flex-shrink:0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--tone);background:var(--tone-soft)}.an-st-done .an-mark{color:var(--an-paper);background:var(--tone)}.an-st-todo .an-mark{border:1px dashed var(--tone)}.an-st-active .an-mark{animation:an-pulse 1.4s ease-in-out infinite}.an-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-st-failed .an-item-label{color:var(--an-muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--an-bad) 55%,transparent)}.an-item-result{max-width:48%;font-size:11px;color:var(--an-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-st-done .an-item-result{color:var(--tone)}.an-item-source{font-size:10.5px;color:var(--an-muted);white-space:nowrap}.an-detail{width:300px;flex-shrink:0;position:sticky;top:8px;display:flex;flex-direction:column;gap:10px}.an-detail h4{font-size:15px;margin:4px 0 8px;line-height:1.4}.an-pill{display:inline-block;font-size:12px;font-weight:600;color:var(--tone);background:var(--tone-soft);border-radius:999px;padding:2px 10px}.an-field{margin-top:12px}.an-field small{display:block;font-size:11.5px;color:var(--an-muted);margin-bottom:3px}.an-result-box{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--tone-soft)}.an-tags{display:flex;flex-wrap:wrap;gap:5px}.an-tag{font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--an-idle-soft)}@keyframes an-pulse{0%,to{opacity:1}50%{opacity:.35}}.an-tracker{background:var(--an-surface);border:1px solid var(--an-line);border-radius:14px;padding:14px}.an-tracker-grid{display:grid;grid-template-columns:250px minmax(0,1fr) 250px;gap:16px;align-items:stretch}.an-runs{display:flex;flex-direction:column;padding:0;min-height:0}.an-runs-head{padding:10px 12px 8px;border-bottom:1px solid var(--an-line)}.an-runs-list{overflow-y:auto;flex:1 1 0;min-height:0}.an-row{display:grid;grid-template-columns:16px 40px minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px 10px;font-size:12px;cursor:pointer;border-bottom:1px solid var(--an-idle-soft)}.an-row:hover{background:var(--an-surface)}.an-row.is-selected{background:var(--an-accent-soft)}.an-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-row-name small{display:block;font-size:10.5px;color:var(--an-muted)}.an-score{font-variant-numeric:tabular-nums;font-weight:600}.an-status{font-size:10.5px;font-weight:600;color:var(--tone);background:var(--tone-soft);border-radius:999px;padding:0 7px;white-space:nowrap}.an-ex-kept{--tone: var(--an-good);--tone-soft: var(--an-good-soft)}.an-ex-discarded{--tone: var(--an-idle);--tone-soft: var(--an-idle-soft)}.an-ex-failed{--tone: var(--an-bad);--tone-soft: var(--an-bad-soft)}.an-ex-running{--tone: var(--an-info);--tone-soft: var(--an-info-soft)}.an-ex-stopped{--tone: var(--an-warn);--tone-soft: var(--an-warn-soft)}.an-main{display:flex;flex-direction:column;gap:12px;min-width:0}.an-plot-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--an-muted);padding:0 4px 6px;align-items:center}.an-plot-legend b{color:var(--an-text);font-size:13px}.an-plot{position:relative}.an-plot svg{display:block}.an-plot text{fill:var(--an-muted);font-size:11px}.an-grid-line{stroke:var(--an-line);stroke-dasharray:3 5}.an-frontier{fill:none;stroke:var(--an-good);stroke-width:2.5;stroke-linejoin:round}.an-baseline{stroke:var(--an-warn);stroke-dasharray:6 4}.an-plot .an-baseline-label{fill:var(--an-warn)}.an-lane{fill:var(--an-idle-soft)}.an-point{cursor:pointer}.an-point-kept{fill:var(--an-good)}.an-point-other{fill:var(--an-paper);stroke:var(--an-idle);stroke-width:1.6}.an-point-label{font-weight:600}.an-plot .an-point-label.is-frontier{fill:var(--an-good)}.an-ring{animation:an-ring 1.8s ease-out infinite;transform-box:fill-box;transform-origin:center}@keyframes an-ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.an-tip{position:absolute;width:220px;pointer-events:none;background:var(--an-text);color:var(--an-paper);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.6;box-shadow:0 10px 30px #0003}.an-tip span{display:block;opacity:.75}.an-small-multiples{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.an-mini text{fill:var(--an-muted);font-size:10px}.an-mini-values{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:11px;color:var(--an-muted);min-height:17px}.an-stats{display:flex;flex-direction:column;gap:8px}.an-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.an-stat{background:var(--an-paper);border:1px solid var(--an-line);border-radius:10px;padding:8px 10px;min-width:0}.an-stat.is-wide{grid-column:1 / -1}.an-stat small{display:block;font-size:11.5px;color:var(--an-muted)}.an-stat-value{display:block;font-size:21px;font-variant-numeric:tabular-nums;line-height:1.3;white-space:nowrap}.an-stat-unit{font-style:normal;font-size:12px;font-weight:500;color:var(--an-muted);margin-left:3px}.an-stat p{margin:0;font-size:10.5px;color:var(--an-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-meter{height:5px;border-radius:3px;background:var(--an-idle-soft);margin-top:6px;position:relative}.an-meter i{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--an-good)}.an-meter i.is-total{background:var(--an-line)}.an-detail-card{background:var(--an-text);color:var(--an-paper);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.6}.an-detail-card span{display:block;opacity:.75}@container (max-width: 980px){.an-tracker-grid{grid-template-columns:minmax(0,1fr)}.an-runs{order:3;max-height:320px}.an-stats{order:2}.an-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.an-tree-layout{flex-direction:column}.an-detail{width:100%;position:static}}@media(prefers-reduced-motion:reduce){.an-ring,.an-st-active .an-mark{animation:none}}@media print{.an-tools,.an-tip{display:none}.an-runs-list{overflow:visible}}
|
|
2
2
|
`);var n=e("analysis",{"zh-CN":{"matrix.title":"\u5BF9\u6BD4\u77E9\u9635","matrix.legend.yes":"\u91C7\u7528 / \u6EE1\u8DB3","matrix.legend.no":"\u4E0D\u91C7\u7528 / \u4E0D\u6EE1\u8DB3","matrix.legend.partial":"\u90E8\u5206\u6216\u6709\u6539\u52A8","matrix.legend.neutral":"\u4E2D\u6027\u8BF4\u660E","matrix.legend.na":"\u672A\u6D89\u53CA","matrix.diffOnly":"\u53EA\u770B\u5DEE\u5F02 {count}/{total}","matrix.clearFocus":"\u53D6\u6D88\u805A\u7126","matrix.dimension":"\u7EF4\u5EA6","matrix.source":"\u6765\u6E90 \u2197","matrix.allSame":"\u6240\u6709\u7EF4\u5EA6\u5728\u5404\u5217\u4E4B\u95F4\u90FD\u76F8\u540C\u3002","matrix.focusHint":"\u70B9\u51FB\u5217\u5934\u53EF\u805A\u7126\u4E00\u5217","matrix.notes":"\u6CE8\u91CA","matrix.note":"{column} \xB7 {row}\uFF1A{note}","tree.title":"\u72B6\u6001\u6811","tree.status.done":"\u8D70\u901A","tree.status.active":"\u8FDB\u884C\u4E2D","tree.status.failed":"\u6CA1\u8D70\u901A","tree.status.todo":"\u5F85\u63A2\u7D22","tree.status.paused":"\u6401\u7F6E","tree.highlightByStatus":"\u6309\u72B6\u6001\u7A81\u51FA","tree.question":"\u95EE\u9898","tree.source":"\u6765\u6E90\uFF1A{source}","tree.detail":"\u8BF4\u660E","tree.result":"\u7ED3\u679C","tree.links":"\u5173\u8054","tree.overall":"\u6574\u4F53\u8FDB\u5EA6","tree.readAll":"\u6309\u7C7B\u522B\u9605\u8BFB\u5168\u90E8\u6761\u76EE\uFF08{count}\uFF09","tree.itemResult":"{label}\uFF1A{result}","tracker.title":"\u5B9E\u9A8C\u8FFD\u8E2A","tracker.status.kept":"\u4FDD\u7559","tracker.status.discarded":"\u653E\u5F03","tracker.status.failed":"\u5931\u8D25","tracker.status.running":"\u8FD0\u884C\u4E2D","tracker.status.stopped":"\u5DF2\u505C\u6B62","tracker.overTime":"{metric} \u968F\u65F6\u95F4\u7684\u5206\u5E03","tracker.noScore":"\u65E0\u5206\u6570","tracker.baseline":"\u57FA\u7EBF {value}","tracker.startTime":"\u5F00\u59CB\u65F6\u95F4 \u2192","tracker.minutes":"{count} \u5206\u949F","tracker.metricValue":"{metric}\uFF1A{value}","tracker.best":"\u6700\u4F73","tracker.updatedAt":"\u66F4\u65B0\u4E8E {time}","tracker.runs":"\u8FD0\u884C \xB7 {count}","tracker.filterByStatus":"\u6309\u72B6\u6001\u7B5B\u9009","tracker.all":"\u5168\u90E8","tracker.showRun":"\u5728\u66F2\u7EBF\u4E2D\u663E\u793A {id}","tracker.allExperiments":"\u5168\u90E8\u5B9E\u9A8C \xB7 {metric}","tracker.higherIsBetter":"\u8D8A\u9AD8\u8D8A\u597D","tracker.lowerIsBetter":"\u8D8A\u4F4E\u8D8A\u597D","tracker.frontier":"\u2014 \u6700\u4F18\u524D\u6CBF","tracker.legendKept":"\u25CF \u4FDD\u7559","tracker.legendOther":"\u25CB \u5176\u4ED6","tracker.listSeparator":"\u3001","tracker.runsHint":"\u6A2A\u8F74\u4E3A\u8BAD\u7EC3\u6B65\uFF1B\u5728\u5DE6\u4FA7\u52FE\u9009\u4EE5\u663E\u793A\u6216\u9690\u85CF","tracker.total":"\u5B9E\u9A8C\u603B\u6570","tracker.runningCount":"\u8FD0\u884C\u4E2D {count}","tracker.groupBest":"{group}\u6700\u4F73","tracker.currentBest":"\u5F53\u524D\u6700\u4F73","tracker.gain":"\u6BD4\u57FA\u7EBF\u6539\u5584","tracker.gainDetail":"\u524D\u6CBF\u4E0A\u7684\u6700\u4F73 {best} \xB7 \u57FA\u7EBF {baseline}","tracker.keepRate":"\u4FDD\u7559\u7387","tracker.keepRateDetail":"\u4FDD\u7559 {kept} \xB7 \u8FD0\u884C\u4E2D {running}","tracker.resourceHours":"{unit} \xB7 \u65F6","tracker.budget":"\u9884\u7B97 {value}","tracker.cost":"\u4F30\u7B97\u6210\u672C","tracker.costRate":"\u6309 {rate} / {unit}\xB7\u65F6","tracker.byCategory":"\u6309\u65B9\u5411 \xB7 \u4FDD\u7559 / \u603B\u6570","tracker.readTable":"\u4EE5\u8868\u683C\u9605\u8BFB\u5168\u90E8\u5B9E\u9A8C\uFF08{count}\uFF09","tracker.column.name":"\u540D\u79F0","tracker.column.start":"\u5F00\u59CB","tracker.column.status":"\u72B6\u6001","tracker.column.note":"\u5907\u6CE8"},en:{"matrix.title":"Comparison matrix","matrix.legend.yes":"Adopted / met","matrix.legend.no":"Not adopted / not met","matrix.legend.partial":"Partly or with changes","matrix.legend.neutral":"Neutral note","matrix.legend.na":"Not covered","matrix.diffOnly":"Differences only {count}/{total}","matrix.clearFocus":"Clear focus","matrix.dimension":"Dimension","matrix.source":"Source \u2197","matrix.allSame":"Every dimension is the same across all columns.","matrix.focusHint":"Click a column header to focus it","matrix.notes":"Notes","matrix.note":"{column} \xB7 {row}: {note}","tree.title":"Status tree","tree.status.done":"Worked","tree.status.active":"In progress","tree.status.failed":"Didn't work","tree.status.todo":"To explore","tree.status.paused":"On hold","tree.highlightByStatus":"Highlight by status","tree.question":"Question","tree.source":"Source: {source}","tree.detail":"Details","tree.result":"Result","tree.links":"Related","tree.overall":"Overall progress","tree.readAll":"Read all items by category ({count})","tree.itemResult":"{label}: {result}","tracker.title":"Experiment tracker","tracker.status.kept":"Kept","tracker.status.discarded":"Discarded","tracker.status.failed":"Failed","tracker.status.running":"Running","tracker.status.stopped":"Stopped","tracker.overTime":"{metric} over time","tracker.noScore":"No score","tracker.baseline":"Baseline {value}","tracker.startTime":"Start time \u2192","tracker.minutes":"{count} min","tracker.metricValue":"{metric}: {value}","tracker.best":"Best","tracker.updatedAt":"Updated {time}","tracker.runs":"Runs \xB7 {count}","tracker.filterByStatus":"Filter by status","tracker.all":"All","tracker.showRun":"Show {id} in charts","tracker.allExperiments":"All experiments \xB7 {metric}","tracker.higherIsBetter":"higher is better","tracker.lowerIsBetter":"lower is better","tracker.frontier":"\u2014 Best frontier","tracker.legendKept":"\u25CF Kept","tracker.legendOther":"\u25CB Other","tracker.listSeparator":", ","tracker.runsHint":"X-axis shows training steps; check runs on the left to show or hide them","tracker.total":"Experiments","tracker.runningCount":"Running {count}","tracker.groupBest":"Best in {group}","tracker.currentBest":"Current best","tracker.gain":"Gain over baseline","tracker.gainDetail":"Best on the frontier {best} \xB7 baseline {baseline}","tracker.keepRate":"Keep rate","tracker.keepRateDetail":"Kept {kept} \xB7 running {running}","tracker.resourceHours":"{unit} hours","tracker.budget":"Budget {value}","tracker.cost":"Estimated cost","tracker.costRate":"At {rate} per {unit} hour","tracker.byCategory":"By direction \xB7 kept / total","tracker.readTable":"Read all experiments as a table ({count})","tracker.column.name":"Name","tracker.column.start":"Start","tracker.column.status":"Status","tracker.column.note":"Notes"}});export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as y,b as u,c as d}from"./chunk-D74K2NKW.js";import{jb as c}from"./chunk-PVMEUQFU.js";import{c as p}from"./chunk-DUIGVKKG.js";var t=p(c(),1);function l(i,o,a,n){return i.map((e,h)=>{let r=`${a}.${h}`;if(e.type==="text")return n?n(e.text,r):e.text;if(e.type==="code")return(0,t.jsx)("code",{children:n?n(e.text,r):e.text},r);if(e.type==="strong")return(0,t.jsx)("strong",{children:l(e.children,o,r,n)},r);let f=l(e.children,!1,r,n);return!o||!y(e.href)?(0,t.jsx)("span",{children:f},r):u(e.href)?(0,t.jsx)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",children:f},r):(0,t.jsx)("a",{href:e.href,children:f},r)})}function k({source:i,links:o=!0,mark:a}){return(0,t.jsx)(t.Fragment,{children:l(d(i),o,"i",a)})}export{k as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var r=e=>{throw new Error(e)},y=e=>!!e&&typeof e=="object"&&!Array.isArray(e);function m(e,s,n=400){(typeof e!="string"||!e.trim())&&r(`${s} must be non-empty text.`),e.length>n&&r(`${s} must be at most ${n} characters.`)}function u(e,s,n){e!==void 0&&m(e,s,n)}function h(e,s){(typeof e!="number"||!Number.isFinite(e))&&r(`${s} must be a finite number.`)}function $(e,s,n,i=0){return(!Array.isArray(e)||e.length<i||e.length>n)&&r(`${s} must be an array of ${i} to ${n} items.`),e.forEach((o,d)=>{y(o)||r(`${s}[${d}] must be an object.`)}),e}function w(e,s){let n=new Set;return e.forEach((i,o)=>{m(i.id,`${s}[${o}].id`,60),n.has(i.id)&&r(`${s} contains duplicate id ${i.id}.`),n.add(i.id)}),n}function D(e,s){e!==void 0&&!/^#[0-9a-fA-F]{6}$/.test(e)&&r(`${s} must be a six-digit hex color.`)}function g(e,s,n){s.includes(e)||r(`${n} must be one of ${s.join(", ")}.`)}var v=864e5;function c(e){let s=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e??"");if(!s)return Number.NaN;let[n,i,o]=s.slice(1).map(Number),d=Date.UTC(n,i-1,o),a=new Date(d);return a.getUTCFullYear()===n&&a.getUTCMonth()===i-1&&a.getUTCDate()===o?d/v:Number.NaN}function A(e){return new Date(e*v).toISOString().slice(0,10)}function b(e,s){return Number.isNaN(c(e))&&r(`${s} must be a calendar date written YYYY-MM-DD.`),c(e)}var F=["done","active","todo","blocked"],M=[{id:"done",label:"\u5DF2\u5B8C\u6210",tone:"done"},{id:"active",label:"\u8FDB\u884C\u4E2D",tone:"active"},{id:"todo",label:"\u672A\u5F00\u59CB",tone:"todo"},{id:"blocked",label:"\u53D7\u963B",tone:"blocked"}],E=400;function T(e){return c(e.end)-c(e.start)+1}function I(e){if(e.start&&e.end)return{start:c(e.start),end:c(e.end)};let s=[...e.items.flatMap(n=>[c(n.start),c(n.end)]),...(e.milestones??[]).map(n=>c(n.date)),...e.deadline?[c(e.deadline.date)]:[]];return{start:e.start?c(e.start):Math.min(...s),end:e.end?c(e.end):Math.max(...s)}}function W(e){let s=new Map((e.statuses??M).map(i=>[i.id,i.tone])),n={};for(let i of e.items){let o=i.owner??"",d=n[o]??={scheduled:0,open:0,items:0},a=T(i);d.scheduled+=a,d.items+=1,s.get(i.status)!=="done"&&(d.open+=a*(1-(i.progress??0)))}return n}function j(e){u(e.description,"description",400);for(let t of["start","end","today"])e[t]!==void 0&&b(e[t],t);e.start!==void 0&&e.end!==void 0&&c(e.end)<c(e.start)&&r("end must be on or after start."),e.groupBy!==void 0&&g(e.groupBy,["lane","owner"],"groupBy");let s=new Set;if(e.owners!==void 0){$(e.owners,"owners",8,1);for(let t of w(e.owners,"owners"))s.add(t);e.owners.forEach((t,l)=>{m(t.label,`owners[${l}].label`,40),D(t.color,`owners[${l}].color`)})}let n=w($(e.lanes,"lanes",12,1),"lanes");e.lanes.forEach((t,l)=>{m(t.label,`lanes[${l}].label`,40),u(t.summary,`lanes[${l}].summary`,120)}),e.statuses!==void 0&&($(e.statuses,"statuses",6,1),w(e.statuses,"statuses"),e.statuses.forEach((t,l)=>{m(t.label,`statuses[${l}].label`,30),g(t.tone,F,`statuses[${l}].tone`)}));let i=new Set((e.statuses??M).map(t=>t.id)),o=w($(e.items,"items",80,1),"items");e.items.forEach((t,l)=>{let f=`items[${l}]`;m(t.title,`${f}.title`,80),n.has(t.lane)||r(`${f}.lane ${t.lane} does not match a lane id.`),t.owner!==void 0&&!s.has(t.owner)&&r(`${f}.owner ${t.owner} does not match an owner id.`),i.has(t.status)||r(`${f}.status ${t.status} is not a defined status.`);let S=b(t.start,`${f}.start`);b(t.end,`${f}.end`)<S&&r(`${f}.end must be on or after ${f}.start.`),t.progress!==void 0&&(h(t.progress,`${f}.progress`),(t.progress<0||t.progress>1)&&r(`${f}.progress must be between 0 and 1.`)),u(t.detail,`${f}.detail`,600),u(t.doneWhen,`${f}.doneWhen`,240),u(t.basis,`${f}.basis`,300),t.tags!==void 0&&((!Array.isArray(t.tags)||t.tags.length>12)&&r(`${f}.tags must be an array of at most 12 labels.`),t.tags.forEach((p,k)=>m(p,`${f}.tags[${k}]`,30))),t.depends!==void 0&&((!Array.isArray(t.depends)||t.depends.length>12)&&r(`${f}.depends must be an array of at most 12 item ids.`),t.depends.forEach((p,k)=>{let x=`${f}.depends[${k}]`;o.has(p)||r(`${x} ${p} does not match an item id.`),p===t.id&&r(`${x} points to the item itself.`)}),new Set(t.depends).size!==t.depends.length&&r(`${f}.depends lists the same item twice.`))}),O(e.items),e.milestones!==void 0&&($(e.milestones,"milestones",12),e.milestones.forEach((t,l)=>{b(t.date,`milestones[${l}].date`),m(t.label,`milestones[${l}].label`,30)})),e.deadline!==void 0&&(y(e.deadline)||r("deadline must be an object."),b(e.deadline.date,"deadline.date"),u(e.deadline.label,"deadline.label",40)),e.initialItem!==void 0&&!o.has(e.initialItem)&&r(`initialItem ${e.initialItem} does not match an item id.`);let d=I(e);d.end-d.start+1>E&&r(`The roadmap spans more than ${E} days.`);let a=(t,l)=>{let f=c(t);(f<d.start||f>d.end)&&r(`${l} ${t} is outside the roadmap from ${A(d.start)} to ${A(d.end)}.`)};e.items.forEach((t,l)=>{a(t.start,`items[${l}].start`),a(t.end,`items[${l}].end`)}),(e.milestones??[]).forEach((t,l)=>a(t.date,`milestones[${l}].date`)),e.deadline&&a(e.deadline.date,"deadline.date")}function O(e){let s=new Map(e.map(o=>[o.id,o])),n=new Map,i=(o,d)=>{if(n.get(o)!=="done"){n.get(o)==="visiting"&&r(`items.depends form a cycle: ${[...d.slice(d.indexOf(o)),o].join(" \u2192 ")}.`),n.set(o,"visiting");for(let a of s.get(o).depends??[])i(a,[...d,o]);n.set(o,"done")}};for(let o of e)i(o.id,[])}var U=["total","up","down"];function N(e){let s=0,n=[];return{spans:e.map((o,d)=>{if(o.kind==="total")return d>0&&o.value!==s&&n.push({id:o.id,stated:o.value,computed:s}),s=o.value,[Math.min(0,s),Math.max(0,s)];let a=s;return s+=o.kind==="up"?o.value:-o.value,[Math.min(a,s),Math.max(a,s)]}),end:s,mismatches:n}}function _(e){let s=e.format??{},n=.5*(s.divisor??1)/10**(s.decimals??0);return N(e.steps).mismatches.filter(i=>Math.abs(i.stated-i.computed)>n)}function Y(e){if(u(e.eyebrow,"eyebrow",160),u(e.narrative,"narrative",400),u(e.axisNote,"axisNote",200),e.upIsGood!==void 0&&typeof e.upIsGood!="boolean"&&r("upIsGood must be true or false."),e.headlines!==void 0&&($(e.headlines,"headlines",5),e.headlines.forEach((n,i)=>{m(n.label,`headlines[${i}].label`,40),m(n.value,`headlines[${i}].value`,24),u(n.detail,`headlines[${i}].detail`,80),n.tone!==void 0&&g(n.tone,["up","down","neutral"],`headlines[${i}].tone`)})),e.format!==void 0){let n=e.format;y(n)||r("format must be an object.");for(let[i,o]of[["prefix",6],["suffix",10]])n[i]!==void 0&&(typeof n[i]!="string"||n[i].length>o)&&r(`format.${i} must be text of at most ${o} characters.`);n.divisor!==void 0&&(h(n.divisor,"format.divisor"),n.divisor<=0&&r("format.divisor must be greater than 0.")),n.decimals!==void 0&&(!Number.isInteger(n.decimals)||n.decimals<0||n.decimals>4)&&r("format.decimals must be an integer from 0 to 4.")}let s=w($(e.steps,"steps",16,2),"steps");if(e.steps.forEach((n,i)=>{let o=`steps[${i}]`;if(m(n.label,`${o}.label`,24),g(n.kind,U,`${o}.kind`),h(n.value,`${o}.value`),n.kind!=="total"&&n.value<0&&r(`${o}.value must be a positive magnitude; use kind down for decreases.`),n.breakdown!==void 0){let d=n.breakdown;y(d)||r(`${o}.breakdown must be an object.`),u(d.title,`${o}.breakdown.title`,80),u(d.note,`${o}.breakdown.note`,300),$(d.items,`${o}.breakdown.items`,12),d.items.forEach((a,t)=>{m(a.label,`${o}.breakdown.items[${t}].label`,60),h(a.value,`${o}.breakdown.items[${t}].value`)})}}),e.initialStep!==void 0&&!s.has(e.initialStep)&&r(`initialStep ${e.initialStep} does not match a step id.`),e.axisFloor!==void 0){h(e.axisFloor,"axisFloor");let{spans:n}=N(e.steps);e.steps.forEach((i,o)=>{let[d,a]=n[o];(i.kind==="total"?a<=e.axisFloor:d<e.axisFloor)&&r(`axisFloor ${e.axisFloor} cuts steps[${o}] (${i.label}); lower it below ${i.kind==="total"?a:d}.`)})}}function B(e,s){return y(s)||r("Component data must be an object."),u(s.title,"title",120),e==="roadmap"?j(s):e==="waterfall"?Y(s):r(`Unknown plan component ${e}.`),s}export{c as a,M as b,T as c,I as d,W as e,N as f,_ as g,B as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var r=n=>{throw new Error(n)},b=n=>!!n&&typeof n=="object"&&!Array.isArray(n);function c(n,t){(typeof n!="string"||!n.trim())&&r(`${t} must be non-empty text.`)}function a(n,t){n!==void 0&&c(n,t)}function $(n,t,e,s=0){return(!Array.isArray(n)||n.length<s||n.length>e)&&r(`${t} must be an array of ${s} to ${e} items.`),n.forEach((o,i)=>{b(o)||r(`${t}[${i}] must be an object.`)}),n}function d(n,t,e){c(t,e),n.has(t)&&r(`${e} duplicates id ${t}.`),n.add(t)}function y(n,t){n!==void 0&&!u.includes(n)&&r(`${t} must be one of ${u.join(", ")}.`)}var u=["accent","teal","orange","violet","rose","slate"],x=["accent","teal","violet","orange","rose","slate"],m=["call","reply","note"],p={actors:8,steps:40},h={layers:8,modules:12};function g(n){a(n.description,"description");let t=new Set;$(n.actors,"actors",p.actors,1).forEach((e,s)=>{let o=`actors[${s}]`;d(t,e.id,`${o}.id`),c(e.label,`${o}.label`),a(e.sub,`${o}.sub`),a(e.icon,`${o}.icon`),e.icon!==void 0&&Array.from(e.icon).length>8&&r(`${o}.icon must be a single emoji or short symbol.`),y(e.tone,`${o}.tone`)}),$(n.steps,"steps",p.steps,1).forEach((e,s)=>{let o=`steps[${s}]`;for(let i of["from","to"])c(e[i],`${o}.${i}`),t.has(e[i])||r(`${o}.${i} ${e[i]} does not match an actor id.`);c(e.label,`${o}.label`),a(e.detail,`${o}.detail`),e.kind!==void 0&&!m.includes(e.kind)&&r(`${o}.kind must be one of ${m.join(", ")}.`)})}function S(n){a(n.caption,"caption");let t=new Set,e=new Set;$(n.layers,"layers",h.layers,1).forEach((s,o)=>{let i=`layers[${o}]`;d(t,s.id,`${i}.id`),c(s.name,`${i}.name`),a(s.sub,`${i}.sub`),y(s.tone,`${i}.tone`),$(s.modules,`${i}.modules`,h.modules).forEach((f,E)=>{let l=`${i}.modules[${E}]`;d(e,f.id,`${l}.id`),c(f.name,`${l}.name`),a(f.path,`${l}.path`),a(f.detail,`${l}.detail`)})}),n.initial!==void 0&&(c(n.initial,"initial"),e.has(n.initial)||r(`initial ${n.initial} does not match a module id.`))}function A(n,t){return b(t)||r("Component data must be an object."),a(t.title,"title"),n==="sequence-diagram"?g(t):n==="layer-diagram"?S(t):r(`Unknown diagram component ${n}.`),t}function j(n){return typeof n!="string"?[]:n.split(/\n+/).map(t=>t.trim()).filter(Boolean)}export{u as a,x as b,A as c,j as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var p=/\*\*(.+?)\*\*|`([^`]+)`|\[([^\]]+)\]\(([^)\s]+)\)/g;function o(t){return typeof t!="string"||!t.trim()||/[\s\u0000-\u001f]/.test(t)?!1:/^(https?:\/\/[^/]|mailto:)/i.test(t)?!0:!/^[a-z][a-z0-9+.-]*:/i.test(t)&&!t.startsWith("//")}var l=t=>/^https?:\/\//i.test(t);function r(t){let n=[],s=new RegExp(p.source,"g"),i=0,e;for(;e=s.exec(t);)e.index>i&&n.push({type:"text",text:t.slice(i,e.index)}),e[1]!==void 0?n.push({type:"strong",children:r(e[1])}):e[2]!==void 0?n.push({type:"code",text:e[2]}):n.push({type:"link",href:e[4],children:r(e[3])}),i=s.lastIndex;return i<t.length&&n.push({type:"text",text:t.slice(i)}),n}var f=t=>t.replace(p,(n,s,i,e)=>s??i??e);function u(t){let n=[],s=i=>{for(let e of i)e.type==="link"&&!o(e.href)&&n.push(e.href),e.children&&s(e.children)};return s(r(t)),n}export{o as a,l as b,r as c,f as d,u as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var n=Object.freeze({archify:["workflow","architecture","sequence","dataflow","lifecycle","erd","class","tree","timeline","waterfall"],"diagram-design":["architecture","architecture-delta","axonometric-plan","bar","data-flow","db-schema","dependency","deployment","dp-integration","dp-security-matrix","er","exploded","fishbone","flowchart","gantt","heatmap","high-level","it-state","journey","kanban","layers","line","loop","medallion","nested","org-chart","polar","process","pyramid","quadrant","radar","sankey","scatter","sequence","service-blueprint","state","story-map","swimlane","timeline","tree","treemap","uml-class","venn","wardley","waterfall"],"fireworks-tech-graph":Array.from({length:12},(o,e)=>`style-${e+1}`)});function i(o,e){if(!Object.hasOwn(n,o))throw new Error(`Unknown diagram family: ${o}.`);if(!e||typeof e!="object"||Array.isArray(e))throw new Error("\u56FE\u5F62\u6570\u636E\u5FC5\u987B\u662F\u5BF9\u8C61\u3002");for(let r of Object.keys(e))if(!["template","source","title","description","height","presentation"].includes(r))throw new Error(`\u4E0D\u652F\u6301\u7684\u56FE\u5F62\u5B57\u6BB5\uFF1A${r}\u3002`);if(!n[o].includes(e.template)&&e.template!=="custom")throw new Error("\u8BF7\u9009\u62E9\u8BE5\u7EC4\u4EF6\u63D0\u4F9B\u7684\u6A21\u677F\uFF0C\u6216\u4F7F\u7528 custom \u5BFC\u5165\u56FE\u5F62\u6E90\u7801\u3002");for(let r of["title","description"])if(e[r]!==void 0&&(typeof e[r]!="string"||e[r].length>2e3))throw new Error(`${r} \u5FC5\u987B\u662F\u6700\u591A 2000 \u5B57\u7B26\u7684\u6587\u672C\u3002`);if(e.height!==void 0&&(!Number.isFinite(e.height)||e.height<240||e.height>1200))throw new Error("\u56FE\u5F62\u9AD8\u5EA6\u987B\u5728 240\u20131200 px \u4E4B\u95F4\u3002");if(e.source!==void 0){if(typeof e.source!="string"||!e.source.trim())throw new Error("\u56FE\u5F62\u6E90\u7801\u987B\u4E3A\u975E\u7A7A\u7684 SVG \u6216 HTML \u6587\u672C\u3002");if(new TextEncoder().encode(e.source).byteLength>8*1024*1024)throw new Error("\u56FE\u5F62\u6E90\u7801\u8D85\u8FC7 8 MiB \u4E0A\u9650\u3002");if(!/<svg\b/i.test(e.source))throw new Error("\u56FE\u5F62\u6E90\u7801\u987B\u5305\u542B SVG\u3002JSON \u8F93\u5165\u8BF7\u5148\u7528\u539F\u9879\u76EE\u6E32\u67D3\u5668\u751F\u6210 SVG \u6216 HTML\u3002")}if(e.template==="custom"&&e.source===void 0)throw new Error("\u81EA\u5B9A\u4E49\u56FE\u5F62\u987B\u63D0\u4F9B source\u3002");if(e.presentation!==void 0){let r=e.presentation;if(!r||typeof r!="object"||Array.isArray(r))throw new Error("presentation \u5FC5\u987B\u662F\u663E\u793A\u8BBE\u7F6E\u5BF9\u8C61\u3002");for(let t of Object.keys(r))if(!["title","description","notes","legend","controls"].includes(t))throw new Error(`\u4E0D\u652F\u6301\u7684\u663E\u793A\u8BBE\u7F6E\uFF1A${t}\u3002`);for(let t of["title","description"])if(r[t]!==void 0&&!["inside","outside","hidden"].includes(r[t]))throw new Error(`${t} \u7684\u663E\u793A\u4F4D\u7F6E\u65E0\u6548\u3002`);if(r.notes!==void 0&&!["inline","details","hidden"].includes(r.notes))throw new Error("\u8BF4\u660E\u6587\u5B57\u7684\u663E\u793A\u65B9\u5F0F\u65E0\u6548\u3002");for(let t of["legend","controls"])if(r[t]!==void 0&&typeof r[t]!="boolean")throw new Error(`${t} \u5FC5\u987B\u662F\u5E03\u5C14\u503C\u3002`)}}export{n as a,i as b};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{a as v}from"./chunk-3I4CQ55U.js";import{b as J,c as Q}from"./chunk-YLTLOYBH.js";import{d as U}from"./chunk-D74K2NKW.js";import{d as Z}from"./chunk-VQIPL7NG.js";import{a as q,c as rs,jb as F,mb as j}from"./chunk-PVMEUQFU.js";import{c as B,d as X}from"./chunk-DUIGVKKG.js";var d=B(rs(),1);q(`.sb-block.sg-block :is(h3,h4,p,ul,ol,li,pre):not(svg){margin:0}.sb-block.sg-block li:not(svg){padding:0}.sb-block.sg-block pre:not(svg){border:0;border-radius:0;background:none;color:inherit}.sb-block.sg-block{--sg-text: var(--text, #222222);--sg-muted: var(--muted, #6a6a6a);--sg-faint: var(--subtle, #929292);--sg-line: var(--line, #dddddd);--sg-paper: var(--paper, #ffffff);--sg-surface: var(--surface, #fafafa);--sg-accent: var(--accent, #120a8f);--sg-accent-soft: var(--accent-soft, #eeedf9);--sg-on-accent: var(--paper, #ffffff);--sg-good: #2f6b4f;--sg-good-soft: #e6efe9;--sg-warn: #a86b34;--sg-warn-soft: #f6ece2;--sg-wait: #d9a85b;--sg-wait-soft: #f8ead0;color:var(--sg-text);font-family:inherit;font-size:14px;line-height:1.7;padding:8px 0;container-type:inline-size;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}:root[data-theme=dark] .sb-block.sg-block,[data-theme=dark] .sb-block.sg-block{--sg-good: #7cc3a0;--sg-good-soft: #20352b;--sg-warn: #e0a96f;--sg-warn-soft: #3a2c1e;--sg-wait: #b88a45;--sg-wait-soft: #3a2f1c}.sb-block.sg-block *{box-sizing:border-box}.sb-block.sg-block button{font:inherit;cursor:pointer}.sb-block.sg-block button:focus-visible,.sb-block.sg-block pre:focus-visible,.sb-block.sg-block a:focus-visible{outline:2px solid var(--sg-accent);outline-offset:2px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-head{margin-bottom:14px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-heading{margin:0;font-size:17px;font-weight:700}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-sub{margin:2px 0 0;color:var(--sg-muted);font-size:13px}.sb-block.sg-block strong{font-weight:650}.sb-block.sg-block :not(pre)>code{font-family:var(--font-mono, ui-monospace, monospace);font-size:.88em;background:var(--sg-surface);border:1px solid var(--sg-line);border-radius:4px;padding:0 4px}.sb-block.sg-block a{color:var(--sg-accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--sg-accent) 35%,transparent)}.sb-block.sg-block a:hover{border-bottom-color:var(--sg-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-announce{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-progress{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 16px;font-size:12px;line-height:1.4;color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-count{white-space:nowrap}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-bar{flex:1;max-width:220px;min-width:60px;height:3px;border-radius:2px;background:var(--sg-line);overflow:hidden}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-bar i{display:block;height:100%;background:var(--sg-accent);border-radius:2px;transition:width .25s ease}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tip{color:var(--sg-faint);white-space:nowrap}.sb-block.sg-block .sg-clear{border:0;background:none;padding:2px 4px;margin:-2px -4px;font-size:12px;color:var(--sg-muted);border-radius:4px}.sb-block.sg-block .sg-clear:hover{color:var(--sg-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-list{list-style:none;margin:0;padding:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 16px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-rail{position:relative;display:flex;flex-direction:column;align-items:center}.sb-block.sg-block .sg-num{position:relative;z-index:1;flex:none;display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:50%;border:1px solid var(--sg-line);background:var(--sg-paper);color:var(--sg-text);font-size:13px;font-weight:600;transition:border-color .15s,background-color .15s,color .15s,box-shadow .15s}.sb-block.sg-block .sg-num:hover{border-color:var(--sg-accent);color:var(--sg-accent);box-shadow:0 0 0 3px var(--sg-accent-soft)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-num svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sb-block.sg-block .sg-num[aria-pressed=true]{background:var(--sg-accent);border-color:var(--sg-accent);color:var(--sg-on-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-line{flex:1;width:1px;margin:6px 0;background:var(--sg-line);position:relative}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-line:after{content:"";position:absolute;width:2px;inset:0 0 0 -.5px;background:var(--sg-accent);transform:scaleY(0);transform-origin:top;transition:transform .3s ease}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-step.is-done .sg-line:after{transform:scaleY(1)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-content{min-width:0;padding:3px 0 28px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-step:last-child .sg-content{padding-bottom:4px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-title{margin:0;font-size:16px;line-height:1.5;font-weight:650}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-badge{display:inline-block;vertical-align:2px;margin-left:8px;padding:0 8px;border:1px solid var(--sg-line);border-radius:999px;font-size:11.5px;font-weight:600;line-height:1.7;color:var(--sg-muted);background:var(--sg-paper)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-body{margin:6px 0 0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-note,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-result{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;font-size:13px;line-height:1.65}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-note{color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-note svg,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-result svg{flex:none;width:16px;height:16px;margin-top:2px;fill:none;stroke-linecap:round;stroke-linejoin:round}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-note svg{stroke:var(--sg-faint);stroke-width:1.3}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-result{background:var(--sg-good-soft);border-radius:6px;padding:8px 12px 8px 10px;width:fit-content;max-width:100%}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-result svg circle{fill:var(--sg-good);stroke:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-result svg path{stroke:var(--sg-good-soft);stroke-width:1.8}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint{margin:10px 0 0;padding:8px 12px;border-radius:8px;font-size:13.5px;line-height:1.6}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint b{margin-right:8px;font-weight:650}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint.is-cue{background:var(--sg-good-soft)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint.is-cue b{color:var(--sg-good)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint.is-wait{background:var(--sg-warn-soft)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-hint.is-wait b{color:var(--sg-warn)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print-only{display:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer-static{margin:10px 0 0;font-size:13px;color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code{--sg-code-line: var(--line, #dddddd);margin-top:12px;border:1px solid var(--sg-code-line);border-radius:10px;background:var(--surface, #fafafa);color:var(--text, #222222);overflow:hidden}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-codebar{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 6px 0 12px;border-bottom:1px solid var(--sg-code-line);background:color-mix(in srgb,var(--line, #dddddd) 30%,var(--surface, #fafafa))}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-lang{font-family:var(--font-mono, ui-monospace, monospace);font-size:11.5px;color:var(--muted, #6a6a6a);letter-spacing:.02em}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tabs{display:flex;align-self:stretch;gap:2px;margin-left:-4px;overflow-x:auto;scrollbar-width:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button{position:relative;border:0;background:none;padding:0 10px;font:inherit;font-size:12.5px;color:var(--muted, #6a6a6a);white-space:nowrap;cursor:pointer}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button:hover,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button[aria-selected=true]{color:var(--text, #222222)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button[aria-selected=true]{font-weight:650}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button[aria-selected=true]:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:1px;background:var(--accent, #120a8f)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy-hint{flex:1;min-width:0;text-align:right;font-size:12px;color:var(--muted, #6a6a6a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-copy{flex:none;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 9px;border:1px solid transparent;border-radius:6px;background:none;font:inherit;font-size:12px;color:var(--muted, #6a6a6a);cursor:pointer}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-copy:hover{color:var(--text, #222222);background:var(--paper, #ffffff);border-color:var(--sg-code-line)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-copy.is-ok{color:var(--accent, #120a8f)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-tabs button:focus-visible,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-copy:focus-visible,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre:focus-visible{outline:2px solid var(--accent, #120a8f);outline-offset:-2px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre{margin:0;padding:13px 16px 14px;overflow-x:auto;font-family:var(--font-mono, ui-monospace, monospace);font-size:12.5px;line-height:1.7;tab-size:2;background:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre code{font:inherit;color:inherit;background:none;border:0;padding:0;white-space:pre}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-comment{color:var(--muted, #6a6a6a)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;padding:8px 10px 8px 14px;border:1px solid var(--sg-line);border-radius:12px;background:var(--sg-paper);width:fit-content;max-width:100%}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-clock{display:flex;align-items:baseline;gap:8px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-clock b{font-size:18px;font-weight:700}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-clock span{font-size:12px;color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-meter{width:72px;height:4px;border-radius:2px;background:var(--sg-line);overflow:hidden}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-meter i{display:block;height:100%;background:var(--sg-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-run .sg-meter i{background:var(--sg-good)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer-buttons{display:flex;flex-wrap:wrap;gap:6px}.sb-block.sg-block .sg-go,.sb-block.sg-block .sg-reset{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.sb-block.sg-block .sg-go{border:1px solid var(--sg-accent);background:var(--sg-accent);color:var(--sg-on-accent)}.sb-block.sg-block .sg-timer.is-run .sg-go{background:var(--sg-good);border-color:var(--sg-good)}.sb-block.sg-block .sg-reset{border:1px solid var(--sg-line);background:var(--sg-paper);color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-done{border-color:var(--sg-warn);background:var(--sg-warn-soft);animation:sg-ding .6s ease 3}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-done .sg-clock b{color:var(--sg-warn)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large{position:relative;flex-direction:column;justify-content:flex-start;width:100%;margin:0;padding:14px 10px 12px;border-radius:16px;gap:10px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ring{width:132px;height:132px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ring-bg{fill:none;stroke:var(--sg-line);stroke-width:9}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ring-fg{fill:none;stroke:var(--sg-accent);stroke-width:9;stroke-linecap:round;transition:stroke-dashoffset .3s linear}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-run .sg-ring-fg{stroke:var(--sg-good)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-done .sg-ring-fg{stroke:var(--sg-warn)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-clock{position:absolute;top:14px;height:132px;width:110px;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-clock b{font-size:26px;line-height:1.2}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large.is-done .sg-clock b{font-size:18px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-clock span{line-height:1.3;margin-top:2px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-timer-buttons{justify-content:center}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon{margin:0 0 16px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-sum{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin-bottom:8px;font-size:13px;color:var(--sg-muted)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-total b{font-size:20px;font-weight:700;color:var(--sg-text)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-key{display:inline-flex;align-items:center;gap:6px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-key b{color:var(--sg-text)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-key i{display:inline-block;width:20px;height:9px;border-radius:3px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-key.is-active i,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-seg.is-active{background:var(--sg-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-key.is-wait i,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-seg.is-wait{background:repeating-linear-gradient(135deg,var(--sg-wait-soft) 0 5px,var(--sg-wait) 5px 7px)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-hint{margin-left:auto;font-size:12px;color:var(--sg-faint)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-rows{background:var(--sg-surface);border:1px solid var(--sg-line);border-radius:12px;padding:8px 12px 4px}.sb-block.sg-block .sg-row{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;width:100%;height:24px;padding:0;border:0;border-radius:6px;background:none;color:inherit;text-align:left}.sb-block.sg-block .sg-row:hover{background:var(--sg-paper)}.sb-block.sg-block .sg-row.is-current{background:var(--sg-accent-soft)}.sb-block.sg-block .sg-row:focus-visible{outline-offset:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row-label{padding-left:4px;font-size:12.5px;color:var(--sg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row-label em{font-style:normal;font-weight:700;margin-right:6px;color:var(--sg-faint)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row.is-current .sg-row-label{color:var(--sg-text);font-weight:650}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row.is-current .sg-row-label em{color:var(--sg-accent)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-track{position:relative;display:block;height:100%}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-grid{position:absolute;top:0;bottom:0;border-left:1px dashed var(--sg-line)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-seg{position:absolute;top:6px;height:12px;min-width:3px;border-radius:4px;opacity:.6;transition:opacity .2s}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row:hover .sg-seg,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row.is-current .sg-seg{opacity:1}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-row.is-done .sg-seg{opacity:.35}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-live{position:absolute;inset:-3px;border-radius:6px;border:2px solid var(--sg-good);animation:sg-pulse 1.2s ease-in-out infinite}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-axis{display:grid;grid-template-columns:118px minmax(0,1fr);height:20px;font-size:11px;color:var(--sg-faint)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-axis .sg-track span{position:absolute;top:3px;transform:translate(-50%);white-space:nowrap}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-axis .sg-track span:first-child{transform:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tray{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.sb-block.sg-block .sg-tray button{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 11px;border:1px solid transparent;border-radius:999px;background:var(--sg-good-soft);color:var(--sg-text);font-size:12.5px}.sb-block.sg-block .sg-tray button.is-done{background:var(--sg-warn-soft);border-color:var(--sg-warn)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tray-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12em}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:22px;padding:18px 20px;border:1px solid var(--sg-line);border-radius:16px;background:var(--sg-paper);animation:sg-in .25s ease}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card:not(:has(.sg-card-side)){grid-template-columns:minmax(0,1fr)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-main{min-width:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-bottom:4px}.sb-block.sg-block .sg-num.is-large{width:46px;height:46px;font-size:22px;font-weight:700}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-num.is-large svg{width:22px;height:22px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-titles{flex:1;min-width:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-titles small{font-size:12px;color:var(--sg-muted);letter-spacing:.04em}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-titles .sg-title{font-size:20px;line-height:1.3}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-head>.sg-badge{margin-left:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card .sg-body{font-size:15.5px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-foot{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin-top:14px}.sb-block.sg-block .sg-nav{padding:6px 16px;border:1px solid var(--sg-line);border-radius:999px;background:var(--sg-paper);color:var(--sg-text);font-size:14px;font-weight:600}.sb-block.sg-block .sg-nav.is-next{margin-left:auto;background:var(--sg-accent);border-color:var(--sg-accent);color:var(--sg-on-accent)}.sb-block.sg-block .sg-nav:disabled{opacity:.4;cursor:default}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-dots{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.sb-block.sg-block .sg-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:var(--sg-line)}.sb-block.sg-block .sg-dots button.is-done{background:color-mix(in srgb,var(--sg-accent) 45%,var(--sg-line))}.sb-block.sg-block .sg-dots button.is-current{width:22px;border-radius:6px;background:var(--sg-accent)}@keyframes sg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes sg-pulse{0%,to{opacity:.3}50%{opacity:1}}@keyframes sg-ding{0%,to{transform:none}25%{transform:rotate(-1.5deg)}75%{transform:rotate(1.5deg)}}@container (max-width: 640px){:is(.sb-block.sg-block,.sb-block.cr-block) .sg-step{grid-template-columns:26px minmax(0,1fr);gap:0 12px}.sb-block.sg-block .sg-num{width:26px;height:26px;font-size:12px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-content{padding:1px 0 24px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tip,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-hint{display:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-bar{max-width:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre{padding:12px 13px;font-size:12px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-codebar{flex-wrap:wrap}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-codebar>:first-child{flex:1;min-width:0}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy-hint{order:3;flex-basis:100%;text-align:left;white-space:normal}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy-hint:empty{display:none}.sb-block.sg-block .sg-row,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-axis{grid-template-columns:76px minmax(0,1fr)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card{grid-template-columns:minmax(0,1fr);padding:14px 12px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ring{width:104px;height:104px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-clock{width:92px;height:104px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-large .sg-clock b{font-size:20px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card-titles .sg-title{font-size:18px}.sb-block.sg-block .sg-nav{padding:6px 12px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-dots{order:3;flex-basis:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.sb-block.sg-block *,.sb-block.sg-block *:after{transition:none!important}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-live,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer.is-done{animation:none}}@media print{:is(.sb-block.sg-block,.sb-block.cr-block) .sg-progress,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-tray,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-ribbon-hint,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-copy-hint,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-card,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-foot,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-screen,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-timer-buttons{display:none}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print,:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print-only{display:block}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print{margin:0;padding-left:1.6em}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-print>li{break-inside:avoid;margin-bottom:16px}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre{overflow:visible}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code pre[hidden]{display:block;border-top:1px solid var(--sg-code-line)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code pre[data-label]:before{content:attr(data-label);display:block;margin-bottom:4px;font-family:var(--font-sans, sans-serif);font-size:11.5px;font-weight:650;color:var(--muted, #6a6a6a)}:is(.sb-block.sg-block,.sb-block.cr-block) .sg-code .sg-pre code{white-space:pre-wrap}}
|
|
2
|
+
`);var K=X("stepGuide",{"zh-CN":{title:"\u64CD\u4F5C\u6B65\u9AA4",progress:"\u5DF2\u5B8C\u6210 {done} / {total} \u6B65",allDone:"\u5168\u90E8\u5B8C\u6210",resetProgress:"\u91CD\u7F6E",resetProgressLabel:"\u6E05\u9664\u5168\u90E8\u5B8C\u6210\u6807\u8BB0",tickHint:"\u70B9\u51FB\u5E8F\u53F7\u6807\u8BB0\u5B8C\u6210",markDone:"\u5C06\u7B2C {number} \u6B65\u6807\u8BB0\u4E3A\u5DF2\u5B8C\u6210",markUndone:"\u7B2C {number} \u6B65\u5DF2\u5B8C\u6210\uFF0C\u70B9\u51FB\u53D6\u6D88",note:"\u63D0\u793A",result:"\u5B8C\u6210\u540E",cue:"\u770B\u5230\u8FD9\u6837\u5C31\u5BF9\u4E86",wait:"\u7B49\u5F85\u65F6","code.label":"\u4EE3\u7801","code.variants":"\u9009\u62E9\u73AF\u5883","code.copy":"\u590D\u5236","code.copied":"\u5DF2\u590D\u5236","code.copyLabel":"\u590D\u5236{label}","code.selected":"\u5DF2\u9009\u4E2D\uFF0C\u6309 \u2318C / Ctrl+C \u590D\u5236","code.stepLabel":"\u7B2C {number} \u6B65\u7684\u4EE3\u7801","timer.label":"\u8BA1\u65F6\u5668","timer.start":"\u5F00\u59CB\u8BA1\u65F6","timer.pause":"\u6682\u505C","timer.resume":"\u7EE7\u7EED","timer.reset":"\u91CD\u7F6E","timer.timeUp":"\u65F6\u95F4\u5230","timer.timeUpStep":"\u7B2C {number} \u6B65\u65F6\u95F4\u5230","timer.tray":"\u6B63\u5728\u8BA1\u65F6","timer.trayItem":"\u7B2C {number} \u6B65 {label}\uFF1A{time}\uFF0C\u70B9\u51FB\u67E5\u770B","timer.of":"{label} \xB7 {minutes}","duration.minutes":"{minutes} \u5206\u949F","duration.hours":"{hours} \u5C0F\u65F6","duration.hoursMinutes":"{hours} \u5C0F\u65F6 {minutes} \u5206\u949F","ribbon.label":"\u65F6\u95F4\u7EBF","ribbon.total":"\u603B\u8BA1","ribbon.active":"\u52A8\u624B","ribbon.wait":"\u7B49\u5F85","ribbon.hint":"\u70B9\u51FB\u4E00\u884C\u8DF3\u5230\u8BE5\u6B65\u9AA4","ribbon.row":"\u7B2C {number} \u6B65 {label}","focus.position":"\u6B65\u9AA4 {number} / {total}","focus.prev":"\u4E0A\u4E00\u6B65","focus.next":"\u4E0B\u4E00\u6B65","focus.nav":"\u6B65\u9AA4\u5BFC\u822A","focus.goTo":"\u8DF3\u5230\u7B2C {number} \u6B65\uFF1A{title}"},en:{title:"Steps",progress:"{done} of {total} steps done",allDone:"All steps done",resetProgress:"Reset",resetProgressLabel:"Clear every done mark",tickHint:"Click a number to mark it done",markDone:"Mark step {number} as done",markUndone:"Step {number} is done; click to undo",note:"Note",result:"Result",cue:"You are there when",wait:"While you wait","code.label":"Code","code.variants":"Choose an environment","code.copy":"Copy","code.copied":"Copied","code.copyLabel":"Copy {label}","code.selected":"Selected. Press \u2318C / Ctrl+C to copy","code.stepLabel":"code for step {number}","timer.label":"Timer","timer.start":"Start timer","timer.pause":"Pause","timer.resume":"Resume","timer.reset":"Reset","timer.timeUp":"Time's up","timer.timeUpStep":"Step {number}: time's up","timer.tray":"Running timers","timer.trayItem":"Step {number} {label}: {time}; click to view","timer.of":"{label} \xB7 {minutes}","duration.minutes":"{minutes} min","duration.hours":"{hours} h","duration.hoursMinutes":"{hours} h {minutes} min","ribbon.label":"Timeline","ribbon.total":"total","ribbon.active":"Hands-on","ribbon.wait":"Waiting","ribbon.hint":"Click a row to jump to that step","ribbon.row":"Step {number} {label}","focus.position":"Step {number} of {total}","focus.prev":"Previous","focus.next":"Next","focus.nav":"Step navigation","focus.goTo":"Go to step {number}: {title}"}});var s=B(F(),1);function bs({source:l,className:c}){return(0,s.jsx)(s.Fragment,{children:l.split(/\n+/).filter(t=>t.trim()).map((t,r)=>(0,s.jsx)("p",{className:c,children:(0,s.jsx)(v,{source:t})},r))})}function as(l,c){let t=document.activeElement,r=document.createElement("textarea");r.value=l,r.setAttribute("readonly",""),r.style.cssText="position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none",document.body.appendChild(r),r.select();let n=document.execCommand("copy");if(r.remove(),t?.focus?.({preventScroll:!0}),!n&&c){let g=document.createRange();g.selectNodeContents(c);let i=window.getSelection();i?.removeAllRanges(),i?.addRange(g)}return n}var is=(l,c)=>{let t=l.trimStart();return t.startsWith("//")?!0:t.startsWith("#")&&!t.startsWith("#!")&&!/^(md|markdown)$/i.test(c??"")};function ns({variants:l,name:c,fallbackLang:t}){let r=j(K),n=(0,d.useId)(),[g,i]=(0,d.useState)(0),[k,y]=(0,d.useState)("idle"),N=(0,d.useRef)(null),S=(0,d.useRef)(null),z=(0,d.useRef)(void 0);(0,d.useEffect)(()=>()=>window.clearTimeout(z.current),[]);let a=l.length>1,x=l[Math.min(g,l.length-1)],D=x.code.replace(/\n+$/,""),h=x.lang??t,L=()=>{let u=as(D,N.current);y(u?"copied":"selected"),window.clearTimeout(z.current),z.current=window.setTimeout(()=>y("idle"),u?1500:4e3)},R=u=>{i(u),y("idle")},E=u=>{let p={ArrowRight:g+1,ArrowLeft:g-1,Home:0,End:l.length-1};if(!(u.key in p))return;u.preventDefault();let T=(p[u.key]+l.length)%l.length;R(T),S.current?.children[T]?.focus()};return(0,s.jsxs)("div",{className:"sg-code",children:[(0,s.jsxs)("div",{className:"sg-codebar",children:[a?(0,s.jsx)("div",{className:"sg-tabs",role:"tablist","aria-label":r("code.variants"),ref:S,onKeyDown:E,children:l.map((u,p)=>(0,s.jsx)("button",{type:"button",role:"tab",id:`${n}-tab${p}`,"aria-selected":p===g,"aria-controls":`${n}-panel${p}`,tabIndex:p===g?0:-1,onClick:()=>R(p),children:u.label},p))}):(0,s.jsx)("span",{className:"sg-lang",children:x.label||h||r("code.label")}),(0,s.jsx)("span",{className:"sg-copy-hint","aria-live":"polite",children:k==="selected"?r("code.selected"):""}),(0,s.jsxs)("button",{type:"button",className:`sg-copy${k==="copied"?" is-ok":""}`,onClick:L,"aria-label":k==="copied"?r("code.copied"):r("code.copyLabel",{label:c}),children:[k==="copied"?(0,s.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:(0,s.jsx)("path",{d:"M3.5 8.5l3 3 6-7"})}):(0,s.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,s.jsx)("rect",{x:"5.5",y:"5.5",width:"8",height:"8",rx:"1.5"}),(0,s.jsx)("path",{d:"M10.5 3.5v-.5a1 1 0 0 0-1-1h-6a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h.5"})]}),(0,s.jsx)("span",{children:r(k==="copied"?"code.copied":"code.copy")})]})]}),l.map((u,p)=>(0,s.jsx)("pre",{className:"sg-pre",id:`${n}-panel${p}`,role:a?"tabpanel":void 0,"aria-labelledby":a?`${n}-tab${p}`:void 0,"aria-label":a?void 0:c,"data-label":a?u.label:void 0,hidden:p!==g,tabIndex:0,children:(0,s.jsx)("code",{ref:p===g?N:void 0,children:u.code.replace(/\n+$/,"").split(`
|
|
3
|
+
`).map((T,C)=>(0,s.jsxs)("span",{className:is(T,u.lang??t)?"sg-comment":void 0,children:[T,`
|
|
4
|
+
`]},C))})},p))]})}function H(l,c){let t=Math.floor(l/60),r=Math.round(l%60);return t?r?c("duration.hoursMinutes",{hours:t,minutes:r}):c("duration.hours",{hours:t}):c("duration.minutes",{minutes:r})}function ss(l){let c=Math.max(0,Math.ceil(l/1e3)),t=Math.floor(c/3600),r=Math.floor(c%3600/60),n=String(c%60).padStart(2,"0");return t?`${t}:${String(r).padStart(2,"0")}:${n}`:`${r}:${n}`}var gs=l=>l===0?"0":`${Math.floor(l/60)}:${String(l%60).padStart(2,"0")}`,ks=()=>typeof matchMedia=="function"&&matchMedia("(prefers-reduced-motion: reduce)").matches;function ds({step:l,number:c,timer:t,left:r,large:n,onToggle:g,onReset:i,t:k}){let y=l.timer.minutes*6e4,N=y?r/y:0,S=54,z=2*Math.PI*S,a=l.timer.label,x=t?.done?" is-done":t?.endAt?" is-run":"";return(0,s.jsxs)("div",{className:`sg-timer${n?" is-large":""}${x}`,role:"group","aria-label":a?`${k("timer.label")} \xB7 ${a}`:k("timer.label"),children:[n&&(0,s.jsxs)("svg",{viewBox:"0 0 132 132",className:"sg-ring","aria-hidden":"true",children:[(0,s.jsx)("circle",{cx:"66",cy:"66",r:S,className:"sg-ring-bg"}),(0,s.jsx)("circle",{cx:"66",cy:"66",r:S,className:"sg-ring-fg",strokeDasharray:z,strokeDashoffset:z*(1-N),transform:"rotate(-90 66 66)"})]}),(0,s.jsxs)("div",{className:"sg-clock",children:[(0,s.jsx)("b",{role:"timer",children:t?.done?k("timer.timeUp"):ss(r)}),a&&(0,s.jsx)("span",{children:a})]}),!n&&(0,s.jsx)("span",{className:"sg-meter","aria-hidden":"true",children:(0,s.jsx)("i",{style:{width:`${(1-N)*100}%`}})}),(0,s.jsxs)("div",{className:"sg-timer-buttons",children:[!t?.done&&(0,s.jsxs)("button",{type:"button",className:"sg-go",onClick:g,"aria-label":`${t?.endAt?k("timer.pause"):k(t?"timer.resume":"timer.start")} \xB7 ${c}`,children:[(0,s.jsx)("span",{"aria-hidden":"true",children:t?.endAt?"\u275A\u275A":"\u25B6"}),t?.endAt?k("timer.pause"):k(t?"timer.resume":"timer.start")]}),t&&(0,s.jsxs)("button",{type:"button",className:"sg-reset",onClick:i,children:[(0,s.jsx)("span",{"aria-hidden":"true",children:"\u21BA"}),k("timer.reset")]})]})]})}function G({step:l,number:c,t,timer:r}){let n=l.variants?.length?l.variants:l.code?[{label:"",code:l.code,lang:l.lang}]:null;return(0,s.jsxs)(s.Fragment,{children:[l.body&&(0,s.jsx)(bs,{source:l.body,className:"sg-body"}),n&&(0,s.jsx)(ns,{variants:n,name:t("code.stepLabel",{number:c}),fallbackLang:l.lang}),l.cue&&(0,s.jsxs)("p",{className:"sg-hint is-cue",children:[(0,s.jsx)("b",{children:t("cue")}),(0,s.jsx)("span",{children:(0,s.jsx)(v,{source:l.cue})})]}),l.wait&&(0,s.jsxs)("p",{className:"sg-hint is-wait",children:[(0,s.jsx)("b",{children:t("wait")}),(0,s.jsx)("span",{children:(0,s.jsx)(v,{source:l.wait})})]}),l.note&&(0,s.jsxs)("p",{className:"sg-note",children:[(0,s.jsxs)("svg",{viewBox:"0 0 16 16",role:"img","aria-label":t("note"),children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"6.2"}),(0,s.jsx)("path",{d:"M8 7.2v3.6M8 5.1v.1"})]}),(0,s.jsx)("span",{children:(0,s.jsx)(v,{source:l.note})})]}),l.result&&(0,s.jsxs)("p",{className:"sg-result",children:[(0,s.jsxs)("svg",{viewBox:"0 0 16 16",role:"img","aria-label":t("result"),children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"7"}),(0,s.jsx)("path",{d:"M4.9 8.2l2.1 2.1 4.1-4.5"})]}),(0,s.jsx)("span",{children:(0,s.jsx)(v,{source:l.result})})]}),r]})}function _({step:l,t:c}){if(!l.timer)return null;let t=H(l.timer.minutes,c);return(0,s.jsxs)("p",{className:"sg-timer-static",children:[(0,s.jsx)("span",{"aria-hidden":"true",children:"\u23F1 "}),l.timer.label?c("timer.of",{label:l.timer.label,minutes:t}):t]})}var ps=()=>(0,s.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:(0,s.jsx)("path",{d:"M3.8 8.4l2.8 2.8 5.6-6.4"})});function Ss({data:l}){let c=j(K),t=l,r=t.steps,n=t.layout==="focus",g=t.start??1,i=(o,e)=>o.id??`#${e}`,k=o=>o.short??U(o.title),y=(0,d.useId)(),N=o=>`${y}-step${o}`,[S,z]=(0,d.useState)(()=>Math.min(Math.max(t.initialStep??0,0),r.length-1)),a=Math.min(S,r.length-1),[x,D]=(0,d.useState)(()=>new Set),[h,L]=(0,d.useState)({}),[R,E]=(0,d.useState)(()=>Date.now()),[u,p]=(0,d.useState)(""),T=(0,d.useRef)(null);(0,d.useEffect)(()=>{if(!Object.values(h).some(e=>e.endAt))return;let o=window.setInterval(()=>{let e=Date.now();E(e);let b=Object.entries(h).filter(([,f])=>f.endAt!==null&&f.endAt<=e);if(!b.length)return;L(f=>{let $={...f};for(let[ls]of b)$[ls]={left:0,endAt:null,done:!0};return $});let m=r.findIndex((f,$)=>i(f,$)===b[0][0]);p(c("timer.timeUpStep",{number:g+m}))},250);return()=>window.clearInterval(o)},[h,r,g,c]);let C=r.filter((o,e)=>x.has(i(o,e))).length,os=o=>D(e=>{let b=new Set(e);return b.has(o)?b.delete(o):b.add(o),b}),P=(o,e)=>{let b=h[i(o,e)];return b?b.endAt?Math.max(0,b.endAt-R):b.left:(o.timer?.minutes??0)*6e4},es=(o,e)=>{let b=i(o,e),m=h[b];if(m?.done)return;let f=P(o,e),$=Date.now();E($),L({...h,[b]:m?.endAt?{left:f,endAt:null,done:!1}:{left:f,endAt:$+f,done:!1}})},cs=(o,e)=>{let b={...h};delete b[i(o,e)],L(b)},M=o=>{let e=Math.min(r.length-1,Math.max(0,o));if(z(e),n)return;let b=T.current?.querySelector(`[id="${N(e)}"]`);b?.scrollIntoView({block:"nearest",behavior:ks()?"auto":"smooth"}),b?.querySelector(".sg-num")?.focus({preventScroll:!0})},ts=o=>{if(!(!n||o.defaultPrevented||o.target.closest("[role=tablist], pre, input, textarea"))){if(o.key==="ArrowRight")M(a+1);else if(o.key==="ArrowLeft")M(a-1);else return;o.preventDefault()}},O=(o,e,b)=>o.timer?(0,s.jsx)(ds,{step:o,number:g+e,timer:h[i(o,e)],left:P(o,e),large:b,onToggle:()=>es(o,e),onReset:()=>cs(o,e),t:c}):null,W=(o,e,b="sg-num")=>{let m=g+e,f=x.has(i(o,e));return(0,s.jsx)("button",{type:"button",className:b,"aria-pressed":f,"aria-label":f?c("markUndone",{number:m}):c("markDone",{number:m}),onClick:()=>os(i(o,e)),children:f?(0,s.jsx)(ps,{}):m})},V=r.map((o,e)=>({step:o,i:e,timer:h[i(o,e)]})).filter(({i:o,timer:e})=>e&&(e.endAt||e.done)&&!(n&&o===a)),A=J(r),Y=Q(A.total),I=o=>`${o/A.total*100}%`,w=r[a];return(0,s.jsxs)("section",{ref:T,className:`sb-block sg-block ${n?"is-focus":"is-list"}`,"aria-label":Z(t.title,c("title")),onKeyDown:ts,children:[(t.title||t.description)&&(0,s.jsxs)("div",{className:"sg-head",children:[t.title&&(0,s.jsx)("h3",{className:"sg-heading",children:t.title}),t.description&&(0,s.jsx)("p",{className:"sg-sub",children:(0,s.jsx)(v,{source:t.description})})]}),r.length>1&&(0,s.jsxs)("div",{className:"sg-progress",children:[(0,s.jsx)("span",{className:"sg-count","aria-live":"polite",children:C===r.length?c("allDone"):c("progress",{done:C,total:r.length})}),(0,s.jsx)("span",{className:"sg-bar","aria-hidden":"true",children:(0,s.jsx)("i",{style:{width:`${C/r.length*100}%`}})}),C>0?(0,s.jsx)("button",{type:"button",className:"sg-clear","aria-label":c("resetProgressLabel"),onClick:()=>D(new Set),children:c("resetProgress")}):!n&&(0,s.jsx)("span",{className:"sg-tip",children:c("tickHint")})]}),A.total>0&&(0,s.jsxs)("div",{className:"sg-ribbon",role:"group","aria-label":c("ribbon.label"),children:[(0,s.jsxs)("div",{className:"sg-ribbon-sum",children:[(0,s.jsxs)("span",{className:"sg-ribbon-total",children:[(0,s.jsx)("b",{children:H(A.total,c)})," ",c("ribbon.total")]}),(0,s.jsxs)("span",{className:"sg-key is-active",children:[(0,s.jsx)("i",{"aria-hidden":"true"})," ",c("ribbon.active")," ",(0,s.jsx)("b",{children:H(A.active,c)})]}),(0,s.jsxs)("span",{className:"sg-key is-wait",children:[(0,s.jsx)("i",{"aria-hidden":"true"})," ",c("ribbon.wait")," ",(0,s.jsx)("b",{children:H(A.wait,c)})]}),(0,s.jsx)("span",{className:"sg-ribbon-hint",children:c("ribbon.hint")})]}),(0,s.jsxs)("div",{className:"sg-ribbon-rows",children:[r.map((o,e)=>o.segments?.length?(0,s.jsxs)("button",{type:"button",className:`sg-row${n&&e===a?" is-current":""}${x.has(i(o,e))?" is-done":""}`,"aria-current":n&&e===a?"step":void 0,"aria-label":c("ribbon.row",{number:g+e,label:k(o)}),onClick:()=>M(e),children:[(0,s.jsxs)("span",{className:"sg-row-label","aria-hidden":"true",children:[(0,s.jsx)("em",{children:g+e}),k(o)]}),(0,s.jsxs)("span",{className:"sg-track","aria-hidden":"true",children:[Y.map(b=>(0,s.jsx)("span",{className:"sg-grid",style:{left:I(b)}},b)),o.segments.map((b,m)=>(0,s.jsx)("span",{className:`sg-seg is-${b.kind}`,style:{left:I(b.start),width:I(b.minutes)},children:h[i(o,e)]?.endAt&&m===o.segments.length-1&&(0,s.jsx)("span",{className:"sg-live"})},m))]})]},i(o,e)):null),(0,s.jsxs)("div",{className:"sg-axis","aria-hidden":"true",children:[(0,s.jsx)("span",{}),(0,s.jsx)("span",{className:"sg-track",children:Y.map(o=>(0,s.jsx)("span",{style:{left:I(o)},children:gs(o)},o))})]})]})]}),V.length>0&&(0,s.jsx)("div",{className:"sg-tray",role:"group","aria-label":c("timer.tray"),children:V.map(({step:o,i:e,timer:b})=>{let m=b.done?c("timer.timeUp"):ss(P(o,e));return(0,s.jsxs)("button",{type:"button",className:b.done?"is-done":void 0,"aria-label":c("timer.trayItem",{number:g+e,label:k(o),time:m}),onClick:()=>M(e),children:[(0,s.jsx)("span",{"aria-hidden":"true",children:b.done?"\u23F0":"\u23F1"}),(0,s.jsx)("span",{className:"sg-tray-label",children:k(o)}),(0,s.jsx)("b",{children:m})]},i(o,e))})}),n?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"sg-card",children:[(0,s.jsxs)("div",{className:"sg-card-main",children:[(0,s.jsxs)("div",{className:`sg-card-head${x.has(i(w,a))?" is-done":""}`,children:[W(w,a,"sg-num is-large"),(0,s.jsxs)("div",{className:"sg-card-titles",children:[(0,s.jsx)("small",{children:c("focus.position",{number:a+1,total:r.length})}),(0,s.jsx)("h4",{className:"sg-title","aria-live":"polite",children:(0,s.jsx)(v,{source:w.title})})]}),w.badge&&(0,s.jsx)("span",{className:"sg-badge",children:w.badge})]}),(0,s.jsx)(G,{step:w,number:g+a,t:c})]}),w.timer&&(0,s.jsx)("div",{className:"sg-card-side",children:O(w,a,!0)})]},i(w,a)),(0,s.jsxs)("nav",{className:"sg-foot","aria-label":c("focus.nav"),children:[(0,s.jsxs)("button",{type:"button",className:"sg-nav",onClick:()=>M(a-1),disabled:a===0,children:[(0,s.jsx)("span",{"aria-hidden":"true",children:"\u2190 "}),c("focus.prev")]}),(0,s.jsx)("div",{className:"sg-dots",children:r.map((o,e)=>(0,s.jsx)("button",{type:"button","aria-label":c("focus.goTo",{number:g+e,title:U(o.title)}),"aria-current":e===a?"step":void 0,className:`${e===a?"is-current":""}${x.has(i(o,e))?" is-done":""}`,onClick:()=>M(e)},i(o,e)))}),(0,s.jsxs)("button",{type:"button",className:"sg-nav is-next",onClick:()=>M(a+1),disabled:a===r.length-1,children:[c("focus.next"),(0,s.jsx)("span",{"aria-hidden":"true",children:" \u2192"})]})]}),(0,s.jsx)("ol",{className:"sg-print",start:g,children:r.map((o,e)=>(0,s.jsxs)("li",{children:[(0,s.jsxs)("h4",{className:"sg-title",children:[(0,s.jsx)(v,{source:o.title}),o.badge&&(0,s.jsx)("span",{className:"sg-badge",children:o.badge})]}),(0,s.jsx)(G,{step:o,number:g+e,t:c,timer:(0,s.jsx)(_,{step:o,t:c})})]},i(o,e)))})]}):(0,s.jsx)("ol",{className:"sg-list",children:r.map((o,e)=>{let b=x.has(i(o,e));return(0,s.jsxs)("li",{id:N(e),className:`sg-step${b?" is-done":""}`,children:[(0,s.jsxs)("div",{className:"sg-rail",children:[W(o,e),e<r.length-1&&(0,s.jsx)("span",{className:"sg-line","aria-hidden":"true"})]}),(0,s.jsxs)("div",{className:"sg-content",children:[(0,s.jsxs)("h4",{className:"sg-title",children:[(0,s.jsx)(v,{source:o.title}),o.badge&&(0,s.jsx)("span",{className:"sg-badge",children:o.badge})]}),(0,s.jsx)(G,{step:o,number:g+e,t:c,timer:o.timer&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"sg-screen",children:O(o,e,!1)}),(0,s.jsx)("div",{className:"sg-print-only",children:(0,s.jsx)(_,{step:o,t:c})})]})})]})]},i(o,e))})}),(0,s.jsx)("p",{className:"sg-announce","aria-live":"assertive",children:u})]})}export{ns as a,Ss as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var b=new Set(["request","skill","decision","reference","query","result"]),E=new Set(["__proto__","prototype","constructor"]),y=["ok","warn","bad","idle","active"],p=new Set(y);function s(e,n,o=!1,t=1e4){if(!(e===void 0&&!o)&&(typeof e!="string"||e.length>t||o&&!e.trim()))throw new Error(`${n} must be ${o?"non-empty ":""}text.`)}function l(e,n,o){if(!Array.isArray(e)||e.length>o)throw new Error(`${n} must contain at most ${o} items.`);let t=new Set;for(let r of e){if(!r||typeof r!="object"||Array.isArray(r))throw new Error(`${n} requires objects.`);if(s(r.id,`${n}.id`,!0,200),E.has(r.id)||t.has(r.id))throw new Error(`${n} requires unique, non-reserved IDs.`);t.add(r.id)}return t}function A(e){if(s(e.title,"flowchart.title"),s(e.description,"flowchart.description"),e.height!==void 0&&(!Number.isFinite(e.height)||e.height<360||e.height>1200))throw new Error("Flowchart height must be between 360 and 1200.");l(e.flows,"flowchart.flows",20);for(let n of e.flows){if(s(n.label,"flow.label",!0,200),s(n.description,"flow.description"),n.direction!==void 0&&!["TB","LR"].includes(n.direction))throw new Error("Flow direction must be TB or LR.");let o=l(n.nodes,"flow.nodes",200);l(n.edges,"flow.edges",400);for(let t of n.nodes){s(t.label,"node.label",!0,200),s(t.subtitle,"node.subtitle",!1,300),s(t.detail,"node.detail");for(let r of["sourceSide","targetSide"])if(t[r]!==void 0&&!["top","bottom","left","right"].includes(t[r]))throw new Error(`${r} must be a valid connection side.`);if(t.kind!==void 0&&!b.has(t.kind))throw new Error("Unsupported flow node kind.");for(let r of["commands","references"])if(t[r]!==void 0){if(!Array.isArray(t[r])||t[r].length>30)throw new Error(`${r} must have at most 30 entries.`);t[r].forEach(d=>s(d,r,!0,3e3))}if(t.position&&(!Number.isFinite(t.position.x)||!Number.isFinite(t.position.y)))throw new Error("Node positions must be finite.")}for(let t of n.edges){if(!o.has(t.source)||!o.has(t.target))throw new Error(`Flow edge ${t.id} references a missing node.`);s(t.label,"edge.label",!1,300)}S(n,`flowchart.flows[${e.flows.indexOf(n)}]`)}return e}function $(e,n){if(!e||typeof e!="object"||Array.isArray(e))throw new Error(`${n} must be an object.`)}function S(e,n){let o=new Set(e.nodes.map(r=>r.id)),t=new Map(e.edges.map(r=>[r.id,r]));if(e.journeys!==void 0){let r=l(e.journeys,`${n}.journeys`,12);if(e.journeys.forEach((d,a)=>{let f=`${n}.journeys[${a}]`;if(s(d.label,`${f}.label`,!0,200),s(d.summary,`${f}.summary`,!1,1e3),!Array.isArray(d.steps)||!d.steps.length||d.steps.length>60)throw new Error(`${f}.steps must contain 1 to 60 steps.`);d.steps.forEach((i,h)=>{let c=`${f}.steps[${h}]`;if($(i,c),!o.has(i.node))throw new Error(`${c}.node references a missing node.`);if(s(i.title,`${c}.title`,!0,200),s(i.text,`${c}.text`,!0,3e3),i.edge===void 0)return;let u=t.get(i.edge);if(!u)throw new Error(`${c}.edge references a missing edge.`);if(u.source!==i.node&&u.target!==i.node)throw new Error(`${c}.edge must connect to node ${i.node}.`)})}),e.initialJourney!==void 0&&!r.has(e.initialJourney))throw new Error(`${n}.initialJourney references a missing journey.`)}else if(e.initialJourney!==void 0)throw new Error(`${n}.initialJourney requires journeys.`);if(e.stages!==void 0){let r=l(e.stages,`${n}.stages`,30);if(e.stages.forEach((d,a)=>{let f=`${n}.stages[${a}]`;s(d.label,`${f}.label`,!0,200),s(d.summary,`${f}.summary`,!1,3e3);for(let[i,h,c]of[["nodes",o,"note"],["edges",t,"label"]]){if(d[i]===void 0)continue;$(d[i],`${f}.${i}`);let u=Object.entries(d[i]);if(u.length>(i==="nodes"?200:400))throw new Error(`${f}.${i} has too many entries.`);for(let[m,g]of u){let w=`${f}.${i}.${m}`;if(!h.has(m))throw new Error(`${w} references a missing ${i==="nodes"?"node":"edge"}.`);if($(g,w),!p.has(g.state))throw new Error(`${w}.state must be one of ${y.join(", ")}.`);s(g[c],`${w}.${c}`,!1,300)}}}),e.initialStage!==void 0&&!r.has(e.initialStage))throw new Error(`${n}.initialStage references a missing stage.`)}else if(e.initialStage!==void 0)throw new Error(`${n}.initialStage requires stages.`)}function j(e,n){return n.steps.map((o,t)=>{if(o.edge!==void 0)return o.edge;let r=n.steps[t-1]?.node;return r===void 0||r===o.node?void 0:(e.edges.find(a=>a.source===r&&a.target===o.node)??e.edges.find(a=>a.source===o.node&&a.target===r))?.id})}export{A as a,j as b};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as g,c as C,jb as x,kb as H,mb as w}from"./chunk-PVMEUQFU.js";import{c as l,d as v}from"./chunk-DUIGVKKG.js";g(`.editor-tool{display:inline-flex;align-items:center;justify-content:center;width:28px;height:29px;padding:0;flex-shrink:0;color:var(--muted);border:0;border-radius:4px;background:transparent}.editor-tool svg{stroke-width:1.65}.editor-tool:hover,.editor-tool.is-active{color:var(--accent);background:var(--editor-soft)}.editor-tool:disabled{opacity:.32}.editor-bubble{--editor-line: var(--line, #e8ece5);--editor-soft: var(--accent-soft, #edf2e9);position:fixed;z-index:80;display:flex;align-items:center;gap:2px;padding:5px;border:1px solid var(--line, #e8ece5);border-radius:6px;background:var(--paper, #fff);color:var(--text, #343a35);font-family:var(--font-ui, system-ui, sans-serif);font-size:12px;font-weight:400;line-height:1.2;letter-spacing:normal;box-shadow:0 5px 20px #2434291c;animation:editor-menu-appear .13s ease;max-width:calc(100vw - 16px);overflow-x:auto}@keyframes editor-menu-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.editor-bubble{animation:none!important;transition:none!important}}@media print{.editor-bubble{display:none!important}}
|
|
2
|
+
`);var i=l(C(),1),h=l(H(),1);var y=v("editor",{"zh-CN":{selectionToolbar:"\u9009\u4E2D\u6587\u5B57\u683C\u5F0F"},en:{selectionToolbar:"Selected text formatting"}});var k=l(x(),1);function O({id:M,anchor:n,anchorElement:t,children:L,onEscape:E,label:T,keyboardScope:z,viewportTop:d=8,className:b}){let R=w(y),u=(0,i.useRef)(null),[D,S]=(0,i.useState)(n);return(0,i.useLayoutEffect)(()=>{let e=u.current,r=()=>{let{width:o,height:c}=e.getBoundingClientRect(),a=t?.isConnected?t.getBoundingClientRect():null,s=a?{left:(a.left+a.right)/2,top:a.top,bottom:a.bottom}:n,m={left:Math.max(8,Math.min(s.left-o/2,window.innerWidth-o-8)),top:Math.max(d,Math.min(s.top-c-8>=d?s.top-c-8:(s.bottom??s.top)+8,window.innerHeight-c-8))};S(f=>f.left===m.left&&f.top===m.top?f:m)};r();let p=new ResizeObserver(r);if(p.observe(e),t)for(let o=t;o;o=o.parentElement)p.observe(o);return window.addEventListener("resize",r),t&&window.addEventListener("scroll",r,!0),()=>{p.disconnect(),window.removeEventListener("resize",r),t&&window.removeEventListener("scroll",r,!0)}},[n.left,n.top,n.bottom,t,d]),(0,h.createPortal)((0,k.jsx)("div",{ref:u,id:M,className:`editor-bubble${b?` ${b}`:""}`,"data-editor-menu-trigger":"selection","data-editor-keyboard-scope":z,role:"toolbar","aria-label":T??R("selectionToolbar"),style:D,onMouseDown:e=>{e.target.closest("input,select,textarea")||e.preventDefault()},onKeyDown:e=>{e.key==="Escape"&&(e.preventDefault(),E())},children:L}),document.body)}export{O as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o=e=>{throw new Error(e)},E=e=>!!e&&typeof e=="object"&&!Array.isArray(e);function c(e,n){(typeof e!="string"||!e.trim())&&o(`${n} must be non-empty text.`)}function d(e,n){e!==void 0&&c(e,n)}function b(e,n){(typeof e!="number"||!Number.isFinite(e))&&o(`${n} must be a finite number.`)}function $(e,n,i,u=0){return(!Array.isArray(e)||e.length<u||e.length>i)&&o(`${n} must be an array of ${u} to ${i} items.`),e.forEach((r,a)=>{E(r)||o(`${n}[${a}] must be an object.`)}),e}function g(e,n){e!==void 0&&!/^#[0-9a-fA-F]{6}$/.test(e)&&o(`${n} must be a six-digit hex color.`)}function N(e,n){e!==void 0&&typeof e!="boolean"&&o(`${n} must be true or false.`)}function h(e,n){e!==void 0&&!T.includes(e)&&o(`${n} must be one of ${T.join(", ")}.`)}var T=["neutral","info","good","warn","bad","accent"],k=["number","clock","date"],x={points:500,series:3,phases:12,kinds:8,events:80,summary:6},v=/^([01]\d|2[0-3]):[0-5]\d$/,D=/^\d{4}-\d{2}-\d{2}$/,S=864e5;function A(e){let[n,i,u]=e.split("-").map(Number),r=Date.UTC(n,i-1,u),a=new Date(r);return a.getUTCFullYear()===n&&a.getUTCMonth()===i-1&&a.getUTCDate()===u?r:NaN}function y(e,n,i){(!Number.isInteger(e)||e<0||e>=i)&&o(`${n} must be a point index from 0 to ${i-1}.`)}function C(e){if(E(e)||o("axis must be an object."),k.includes(e.type)||o(`axis.type must be one of ${k.join(", ")}.`),d(e.label,"axis.label"),e.step!==void 0&&(b(e.step,"axis.step"),e.step<=0&&o("axis.step must be greater than 0."),e.type!=="number"&&!Number.isInteger(e.step)&&o(`axis.step must be a whole number of ${e.type==="clock"?"minutes":"days"}.`)),e.type==="number"){e.start!==void 0&&b(e.start,"axis.start");for(let n of["prefix","unit"])e[n]!==void 0&&(typeof e[n]!="string"||!e[n].trim())&&o(`axis.${n} must be non-empty text.`)}else e.type==="clock"?(typeof e.start!="string"||!v.test(e.start))&&o("axis.start must be a 24-hour time like 13:50 for a clock axis."):(typeof e.start!="string"||!D.test(e.start)||Number.isNaN(A(e.start)))&&o("axis.start must be a date like 2026-10-18 for a date axis.");if(e.count!==void 0){let{points:n}=x;(!Number.isInteger(e.count)||e.count<2||e.count>n)&&o(`axis.count must be a whole number from 2 to ${n}.`)}}function I(e){return e.axis.count??e.series?.[0]?.values.length??0}function _(e){E(e)||o("Component data must be an object."),d(e.title,"title"),d(e.description,"description"),d(e.note,"note"),C(e.axis);let n=x,i=$(e.series??[],"series",n.series),u=new Set;i.forEach((t,f)=>{let s=`series[${f}]`;c(t.id,`${s}.id`),u.has(t.id)&&o(`series contains duplicate id ${t.id}.`),u.add(t.id),c(t.label,`${s}.label`),d(t.unit,`${s}.unit`),h(t.tone,`${s}.tone`),g(t.color,`${s}.color`),N(t.area,`${s}.area`),N(t.dashed,`${s}.dashed`),t.axis!==void 0&&!["left","right"].includes(t.axis)&&o(`${s}.axis must be left or right.`),t.min!==void 0&&b(t.min,`${s}.min`),t.max!==void 0&&b(t.max,`${s}.max`),t.min!==void 0&&t.max!==void 0&&t.min>=t.max&&o(`${s}.min must be below ${s}.max.`),Array.isArray(t.values)||o(`${s}.values must be an array of numbers.`),t.values.forEach((l,w)=>{l!==null&&b(l,`${s}.values[${w}]`)}),t.values.some(l=>l!==null)||o(`${s}.values needs at least one number.`)}),e.axis.count===void 0&&i.length===0&&o("axis.count is required when there are no series.");let r=I(e);(r<2||r>n.points)&&o(`The axis must have 2 to ${n.points} points.`),i.forEach((t,f)=>{t.values.length!==r&&o(`series[${f}].values must have ${r} values, one per axis point.`)}),$(e.phases??[],"phases",n.phases).forEach((t,f)=>{let s=`phases[${f}]`;c(t.label,`${s}.label`),h(t.tone,`${s}.tone`),y(t.from,`${s}.from`,r),y(t.to,`${s}.to`,r),t.to<=t.from&&o(`${s}.to must be after ${s}.from.`);let l=e.phases[f-1];l&&t.from<l.to&&o(`${s} overlaps the previous phase; phases must be in order.`)});let a=$(e.kinds??[],"kinds",n.kinds),m=new Set;a.forEach((t,f)=>{c(t.id,`kinds[${f}].id`),m.has(t.id)&&o(`kinds contains duplicate id ${t.id}.`),m.add(t.id),c(t.label,`kinds[${f}].label`),h(t.tone,`kinds[${f}].tone`),g(t.color,`kinds[${f}].color`)});let p=$(e.events,"events",n.events);return p.forEach((t,f)=>{let s=`events[${f}]`;y(t.at,`${s}.at`,r),f>0&&t.at<p[f-1].at&&o(`${s}.at is before the previous event; list events in time order.`),c(t.title,`${s}.title`),d(t.detail,`${s}.detail`),t.kind!==void 0&&!m.has(t.kind)&&o(`${s}.kind ${t.kind} is not a defined kind.`)}),$(e.summary??[],"summary",n.summary).forEach((t,f)=>{c(t.label,`summary[${f}].label`),c(t.value,`summary[${f}].value`),h(t.tone,`summary[${f}].tone`)}),e.initialAt!==void 0&&y(e.initialAt,"initialAt",r),e}function j(e,n){let i=-1;return e.forEach((u,r)=>{u.at<=n&&(i=r)}),i}function F(e,n){let i=-1;return(e??[]).forEach((u,r)=>{u.from<=n&&n<=u.to&&(i=r)}),i}function L(e){return e.initialAt??e.events[0]?.at??I(e)-1}function M(e,n,i="en"){let u=e.step??1;if(e.type==="clock"){let[m,p]=e.start.split(":").map(Number),t=((m*60+p+n*u)%1440+1440)%1440;return`${String(Math.floor(t/60)).padStart(2,"0")}:${String(t%60).padStart(2,"0")}`}if(e.type==="date")return new Intl.DateTimeFormat(i,{month:"numeric",day:"numeric",timeZone:"UTC"}).format(new Date(A(e.start)+n*u*S));let r=(e.start??0)+n*u,a=new Intl.NumberFormat(i,{maximumFractionDigits:3}).format(r);return`${e.prefix??""}${a}${e.unit??""}`}export{I as a,_ as b,j as c,F as d,L as e,M as f};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as h}from"./chunk-WDYURK6F.js";import{a as y,c as $,
|
|
1
|
+
import{a as h}from"./chunk-WDYURK6F.js";import{a as y,c as $,jb as E,mb as K,na as x,oa as L}from"./chunk-PVMEUQFU.js";import{c as f,i as S}from"./chunk-DUIGVKKG.js";var i=f($(),1);y(`.viewport-lock-button{position:absolute;top:8px;right:8px;z-index:30;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--sb-line, var(--line, #e9ece5));border-radius:6px;background:var(--sb-surface, var(--paper, #fff));color:var(--sb-muted, var(--muted, #92968f));cursor:pointer}.viewport-lock-button[aria-pressed=false]{color:var(--accent, #120a8f)}.viewport-lock-button:hover{background:var(--sb-hover, var(--hover, #f0f2ed))}.viewport-lock-button:focus-visible{outline:2px solid var(--accent, #120a8f);outline-offset:2px}.viewport-lock-error{display:none;position:absolute;top:100%;right:0;width:220px;padding:8px;background:var(--paper, #fff);color:var(--text, #343a35);font-size:11px}.viewport-lock-button:hover .viewport-lock-error,.viewport-lock-button:focus-visible .viewport-lock-error{display:block}[data-viewport-locked=true]>.surface-scroll{touch-action:pan-y;overscroll-behavior:auto}.sf-block[data-viewport-locked=true] .react-flow__pane,.sf-block[data-viewport-locked=true] .react-flow__node{touch-action:pan-y;cursor:auto}.sb-header:has(~.viewport-lock-button){right:42px}.sb-header.has-caption:has(~.viewport-lock-button){right:auto;padding-right:42px}.sb-header.has-caption:has(~.viewport-lock-button)>.sb-actions{right:42px}.sb-g2-chart:has(>.viewport-lock-button)>.sb-g2-toolbar{padding-right:42px}@media print{.viewport-lock-button{display:none!important}}
|
|
2
2
|
`);var l=f(E(),1),M=S(h);function z(e,n){let r=e.closest("[data-block-id], [data-surface-id]");return`showai.viewport-lock.v1:${r?.getAttribute("data-block-id")||r?.getAttribute("data-surface-id")||location.pathname}:${n}`}function V(e){return localStorage.getItem(e)!=="unlocked"}function _(e,n){localStorage.setItem(e,n?"locked":"unlocked")}function O(e,n){let r=(0,i.useRef)(null),c=(0,i.useRef)(""),p=(0,i.useRef)(null),[s,d]=(0,i.useState)(!0),[D,g]=(0,i.useState)("");return(0,i.useLayoutEffect)(()=>{let o=r.current,T=[...(o.closest("[data-block-id], [data-surface-id]")||o.ownerDocument.body).querySelectorAll(`[data-viewport-lock-scope="${e}"]`)],w=`${e}:${T.indexOf(o)}`;c.current=n||z(o,w);let b=o.ownerDocument.getElementById("showai-component-data"),u=b?JSON.parse(b.textContent||"{}").channel:void 0;if(u&&window.parent!==window){p.current={channel:u,scope:w};let k=t=>{t.source!==parent||t.data?.channel!==u||t.data?.type!=="showai:viewport-lock-state"||t.data.scope!==w||(typeof t.data.locked=="boolean"&&d(t.data.locked),g(t.data.error||""))},m=t=>{if(o.dataset.viewportLocked==="true"){for(let a=t.target instanceof Element?t.target:null;a&&a!==o;a=a.parentElement){let Y=getComputedStyle(a);if(/auto|scroll/.test(Y.overflowY)&&(t.deltaY>0&&a.scrollTop+a.clientHeight<a.scrollHeight-1||t.deltaY<0&&a.scrollTop>0))return}t.preventDefault(),t.stopPropagation(),parent.postMessage({channel:u,type:"showai:reading-wheel",deltaX:t.deltaX,deltaY:t.deltaY,deltaMode:t.deltaMode,ctrlKey:t.ctrlKey,metaKey:t.metaKey,shiftKey:t.shiftKey},"*")}};return window.addEventListener("message",k),o.addEventListener("wheel",m,{capture:!0,passive:!1}),parent.postMessage({channel:u,type:"showai:viewport-lock-get",scope:w},"*"),()=>{window.removeEventListener("message",k),o.removeEventListener("wheel",m,!0)}}try{d(V(c.current))}catch(k){g(M("viewportLock.readFailed",{error:String(k)}))}},[e,n]),{ref:r,locked:s,toggle:()=>{let o=!s;if(p.current){parent.postMessage({...p.current,type:"showai:viewport-lock-set",locked:o},"*");return}try{_(c.current,o),g("")}catch(v){g(M("viewportLock.saveFailed",{error:String(v)}))}d(o)},error:D}}function X({locked:e,toggle:n,error:r="",label:c,unlockDescription:p}){let s=K(h),d=s(e?"viewportLock.unlock":"viewportLock.lock",{target:c});return(0,l.jsxs)("button",{type:"button",className:"viewport-lock-button","data-surface-ui":!0,"aria-label":d,"aria-pressed":e,title:r||(e?s("viewportLock.unlockTitle",{target:c,description:p??s("viewportLock.unlockDescription")}):s("viewportLock.lockTitle",{target:c})),onClick:n,children:[e?(0,l.jsx)(L,{size:16}):(0,l.jsx)(x,{size:16}),r&&(0,l.jsx)("span",{className:"viewport-lock-error",role:"alert",children:r})]})}export{z as a,V as b,_ as c,O as d,X as e};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as b,c as y,e as x}from"./chunk-D74K2NKW.js";var s=e=>{throw new Error(e)},E=e=>!!e&&typeof e=="object"&&!Array.isArray(e);function u(e,n,o){(typeof e!="string"||!e.trim())&&s(`${n} must be non-empty text.`),e.length>o&&s(`${n} must be at most ${o} characters.`)}function f(e,n,o){e!==void 0&&u(e,n,o)}function j(e,n,o,i=1){return(!Array.isArray(e)||e.length<i||e.length>o)&&s(`${n} must be an array of ${i} to ${o} items.`),e.forEach((l,a)=>{E(l)||s(`${n}[${a}] must be an object.`)}),e}function A(e,n,o){for(let i of Object.keys(e))n.includes(i)||s(`${o}.${i} is not a supported field.`)}function d(e,n){if(e===void 0)return;let[o]=x(e);o!==void 0&&s(`${n} links to ${o}; only http(s), mailto, # anchors and relative paths are allowed.`)}var w=["dir","file","object","array","field"],I=["name","kind","type","badge","summary","detail","example","exampleLang","children","open"],p={siblings:60,nodes:400,depth:8},g=e=>e.replace(/\/+$/,"")||e,T=e=>e.split("/").filter(Boolean).join("/"),C=e=>e.kind??(e.children?.length?"dir":"file");function U(e){let n=new Map,o=[],i=(l,a,m,h)=>{for(let t of l??[]){let c=(a?`${a}/`:"")+g(t.name),r={node:t,path:c,depth:m,parent:a,kind:C(t),children:[]};n.set(c,r),h.push(c),i(t.children,c,m+1,r.children)}};return i(e,null,0,o),{items:n,roots:o}}function L(e){f(e.caption,"caption",600),d(e.caption,"caption");let n=0,o=new Set,i=(l,a,m,h)=>{h>p.depth&&s(`${a} is nested deeper than ${p.depth} levels.`),j(l,a,p.siblings),l.forEach((t,c)=>{let r=`${a}[${c}]`;n+=1,n>p.nodes&&s(`The structure has more than ${p.nodes} nodes.`),A(t,I,r),u(t.name,`${r}.name`,80),g(t.name).includes("/")&&s(`${r}.name may only end with "/"; it is one path segment.`);let $=(m?`${m}/`:"")+g(t.name);o.has($)&&s(`${r}.name repeats the path ${$}; sibling names must be unique.`),o.add($),t.kind!==void 0&&!w.includes(t.kind)&&s(`${r}.kind must be one of ${w.join(", ")}.`),f(t.type,`${r}.type`,80),f(t.badge,`${r}.badge`,16),f(t.summary,`${r}.summary`,300),f(t.detail,`${r}.detail`,3e3),f(t.example,`${r}.example`,6e3),f(t.exampleLang,`${r}.exampleLang`,24),d(t.summary,`${r}.summary`),d(t.detail,`${r}.detail`),t.exampleLang!==void 0&&t.example===void 0&&s(`${r}.exampleLang needs ${r}.example.`),t.open!==void 0&&typeof t.open!="boolean"&&s(`${r}.open must be true or false.`),t.children!==void 0&&i(t.children,`${r}.children`,$,h+1)})};if(i(e.nodes,"nodes",null,1),e.initial!==void 0){u(e.initial,"initial",400);let l=T(e.initial);o.has(l)||s(`initial ${e.initial} does not match a node path.`)}}var k=["brand","teal","warm","violet","rose","slate"],S=["tile","row"],R=["icon","title","body","href","tag","tone"];function K(e){if(e.columns)return e.columns;let n=e.cards.length;return e.variant==="row"?n>3?2:1:n===4?2:Math.max(1,Math.min(3,n))}function D(e){e.variant!==void 0&&!S.includes(e.variant)&&s(`variant must be one of ${S.join(", ")}.`),e.columns!==void 0&&(!Number.isInteger(e.columns)||e.columns<1||e.columns>4)&&s("columns must be an integer from 1 to 4."),j(e.cards,"cards",24).forEach((n,o)=>{let i=`cards[${o}]`;A(n,R,i),u(n.title,`${i}.title`,80),u(n.body,`${i}.body`,400),f(n.icon,`${i}.icon`,8),f(n.tag,`${i}.tag`,16),n.tone!==void 0&&!k.includes(n.tone)&&s(`${i}.tone must be one of ${k.join(", ")}.`),n.href!==void 0?(u(n.href,`${i}.href`,2e3),b(n.href)||s(`${i}.href must be an http(s), mailto, # anchor or relative link.`),y(n.body).some(l=>l.type==="link")&&s(`${i}.body cannot contain links when the card has an href.`)):d(n.body,`${i}.body`)})}function M(e,n){return E(n)||s("Component data must be an object."),f(n.title,"title",120),e==="structure-browser"?L(n):e==="card-grid"?D(n):s(`Unknown document browsing component ${e}.`),n}export{g as a,T as b,U as c,k as d,K as e,M as f};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as p}from"./chunk-
|
|
2
|
-
/*! For license information please see chunk-
|
|
1
|
+
import{c as p}from"./chunk-PVMEUQFU.js";import{a as d}from"./chunk-DUIGVKKG.js";var w=d(V=>{"use strict";var f=p();function q(e,u){return e===u&&(e!==0||1/e===1/u)||e!==e&&u!==u}var z=typeof Object.is=="function"?Object.is:q,I=f.useState,M=f.useEffect,_=f.useLayoutEffect,g=f.useDebugValue;function G(e,u){var t=u(),s=I({inst:{value:t,getSnapshot:u}}),r=s[0].inst,n=s[1];return _(function(){r.value=t,r.getSnapshot=u,E(r)&&n({inst:r})},[e,t,u]),M(function(){return E(r)&&n({inst:r}),e(function(){E(r)&&n({inst:r})})},[e]),g(t),t}function E(e){var u=e.getSnapshot;e=e.value;try{var t=u();return!z(e,t)}catch{return!0}}function L(e,u){return u()}var $=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?L:G;V.useSyncExternalStore=f.useSyncExternalStore!==void 0?f.useSyncExternalStore:$});var D=d((P,h)=>{"use strict";h.exports=w()});var R=d(O=>{"use strict";var m=p(),k=D();function C(e,u){return e===u&&(e!==0||1/e===1/u)||e!==e&&u!==u}var U=typeof Object.is=="function"?Object.is:C,W=k.useSyncExternalStore,A=m.useRef,B=m.useEffect,F=m.useMemo,H=m.useDebugValue;O.useSyncExternalStoreWithSelector=function(e,u,t,s,r){var n=A(null);if(n.current===null){var i={hasValue:!1,value:null};n.current=i}else i=n.current;n=F(function(){function y(o){if(!j){if(j=!0,l=o,o=s(o),r!==void 0&&i.hasValue){var c=i.value;if(r(c,o))return v=c}return v=o}if(c=v,U(l,o))return c;var b=s(o);return r!==void 0&&r(c,b)?(l=o,c):(l=o,v=b)}var j=!1,l,v,S=t===void 0?null:t;return[function(){return y(u())},S===null?void 0:function(){return y(S())}]},[u,t,s,r]);var a=W(e,n[0],n[1]);return B(function(){i.hasValue=!0,i.value=a},[a]),H(a),a}});var J=d((T,N)=>{"use strict";N.exports=R()});export{D as a,J as b};
|
|
2
|
+
/*! For license information please see chunk-NWCMWKOF.js.LEGAL.txt */
|