dsh-motion-ui 0.7.0 → 0.8.0
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/CHANGELOG.md +59 -0
- package/README.md +63 -3
- package/VERIFICATION.md +26 -0
- package/client.js +876 -272
- package/index.js +43 -20
- package/lib/assets/mermaid.js +382 -382
- package/lib/assets/standalone-runtime.js +1 -1
- package/lib/assets/visual.js +13 -13
- package/lib/author-expression.js +7 -7
- package/lib/authoring-guide.js +3 -17
- package/lib/build-info.js +1 -1
- package/lib/canvas-design.js +2 -2
- package/lib/canvas-export.js +3 -3
- package/lib/canvas-system.js +1 -1
- package/lib/catalog.js +1 -2
- package/lib/delivery.js +1 -1
- package/lib/export-runtime-bundle.js +1 -1
- package/lib/fence-feedback.js +8 -2
- package/lib/freeform.js +4 -10
- package/lib/inspection.js +19 -6
- package/lib/motion-craft.js +31 -0
- package/lib/motion-design-skill.js +23 -0
- package/lib/motion-library.js +5 -4
- package/lib/normalize-authoring.js +9 -0
- package/lib/project-archive.js +16 -0
- package/lib/prompt-contract.js +22 -0
- package/lib/protocol.js +3 -3
- package/lib/refinement.js +36 -3
- package/lib/sandbox.js +4 -1
- package/lib/scene-entry.js +41 -0
- package/lib/style-system.js +2 -2
- package/lib/text-guide.js +9 -13
- package/lib/third-party/taste-skill-NOTICE.md +10 -0
- package/lib/timeline.js +29 -0
- package/lib/tool-json.js +5 -0
- package/lib/tool-schema.js +7 -7
- package/lib/ui-intent.js +4 -15
- package/lib/ui-skill.js +19 -26
- package/lib/video-tools.js +21 -0
- package/lib/video.js +296 -0
- package/lib/visual-audit.js +15 -4
- package/lib/visual-styles.js +1 -1
- package/lib/voice.js +72 -0
- package/package.json +17 -9
- package/skills/intelligent-ui/SKILL.md +14 -107
- package/skills/motion-design/ADAPTER.md +35 -0
- package/skills/motion-design/LICENSE +201 -0
- package/skills/motion-design/NOTICE.md +9 -0
- package/skills/motion-design/SKILL.md +388 -0
- package/skills/motion-design/SOURCES.md +16 -0
- package/skills/motion-design/upstream.json +8 -0
|
@@ -266,7 +266,7 @@ l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
|
|
|
266
266
|
please report what input caused this bug`);return n=n.slice(1,-1),{type:"verb",mode:"text",body:n,star:a}}Object.prototype.hasOwnProperty.call(_h,r[0])&&!We[this.mode][r[0]]&&(this.settings.strict&&this.mode==="math"&&Wt({strict:this.settings.strict,errorCode:"unicodeTextInMathMode",errorMsg:'Accented Unicode text character "'+r[0]+'" used in math mode',report:!0,token:t}),r=_h[r[0]]+r.slice(1));var i=V6.exec(r);i&&(r=r.substring(0,i.index),r==="i"?r="\u0131":r==="j"&&(r="\u0237"));var s;if(We[this.mode][r]){this.settings.strict&&this.mode==="math"&&Jc.includes(r)&&Wt({strict:this.settings.strict,errorCode:"unicodeTextInMathMode",errorMsg:'Latin-1/Unicode text character "'+r[0]+'" used in math mode',report:!0,token:t});var o=We[this.mode][r].group,l=Vt.range(t),u;n6(o)?u={type:"atom",mode:this.mode,family:o,loc:l,text:r}:u={type:o,mode:this.mode,loc:l,text:r},s=u}else if(r.charCodeAt(0)>=128)this.settings.strict&&(jh(r.charCodeAt(0))?this.mode==="math"&&Wt({strict:this.settings.strict,errorCode:"unicodeTextInMathMode",errorMsg:'Unicode text character "'+r[0]+'" used in math mode',report:!0,token:t}):Wt({strict:this.settings.strict,errorCode:"unknownSymbol",errorMsg:'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),report:!0,token:t})),s={type:"textord",mode:"text",loc:Vt.range(t),text:r};else return null;if(this.consume(),i)for(var d=0;d<i[0].length;d++){var p=i[0][d];if(!Wc[p])throw new _("Unknown accent ' "+p+"'",t);var m=Wc[p][this.mode]||Wc[p].text;if(!m)throw new _("Accent "+p+" unsupported in "+this.mode+" mode",t);s={type:"accent",mode:this.mode,loc:Vt.range(t),label:m,isStretchy:!1,isShifty:!0,base:s}}return s}};Nl.endOfExpression=new Set(["}","\\endgroup","\\end","\\right","&"]);var Md=function(t,r){if(!(typeof t=="string"||t instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var n=new Nl(t,r);delete n.gullet.macros.current["\\df@tag"];var a=n.parse();if(delete n.gullet.macros.current["\\current@color"],delete n.gullet.macros.current["\\color"],n.gullet.macros.get("\\df@tag")){if(!r.displayMode)throw new _("\\tag works only in display equations");a=[{type:"tag",mode:"text",body:a,tag:n.subparse([new rr("\\df@tag")])}]}return a},$g=function(t,r,n){r.textContent="";var a=zd(t,n).toNode();r.appendChild(a)};typeof document<"u"&&document.compatMode!=="CSS1Compat"&&(typeof console<"u"&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),$g=function(){throw new _("KaTeX doesn't work in quirks mode.")});var Q6=function(t,r){var n=zd(t,r).toMarkup();return n},X6=function(t,r){var n=new hs(r);return Md(t,n)},Lg=function(t,r,n){if(n.throwOnError||!(t instanceof _))throw t;var a=B(["katex-error"],[new Ot(r)]);return a.setAttribute("title",t.toString()),a.setAttribute("style","color:"+n.errorColor),a},zd=function(t,r){var n=new hs(r);try{var a=Md(t,n);return W3(a,t,n)}catch(i){return Lg(i,t,n)}},J6=function(t,r){var n=new hs(r);try{var a=Md(t,n);return K3(a,n)}catch(i){return Lg(i,t,n)}},Z6="0.19.0",eb={Span:Kn,Anchor:si,SymbolNode:Ot,SvgNode:Cr,PathNode:jr,LineNode:vs},Ig={version:Z6,render:$g,renderToString:Q6,ParseError:_,SETTINGS_SCHEMA:Kc,__parse:X6,__renderToDomTree:zd,__renderToHTMLTree:J6,__setFontMetrics:M3,__defineSymbol:c,__defineFunction:J,__defineMacro:v,__domTree:eb};var y={block:"o",panel:"t",banner:"ia",col:"oa",row:"l",wrap:"Rr",card:"e",grid:"B",gridSpan:"ta",spacer:"Tr",divider:"Ur",chart:"la",lineChart:"na",donut:"da",hbars:"ga",cardTitle:"i",text:"s",h1:"Vr",h2:"Wr",h3:"Xr",body:"Zr",muted:"_r",caption:"ae",center:"re",button:"r",primary:"pa",danger:"ca",success:"fa",ghost:"ee",full:"se",small:"ie",field:"C",input:"D",select:"ba",checkbox:"k",link:"E",linkText:"oe",media:"te",mediaLabel:"va",mediaPlayer:"xa",videoPlayer:"le",mediaError:"ne",hero:"de",heroSuccess:"ge",heroWarning:"pe",heroDanger:"ce",heroLabel:"ma",heroTop:"fe",heroValue:"be",heroUnit:"ve",heroSpark:"xe",heroTitle:"ua",heroSubtitle:"wa",inlineCode:"g",inlineStrong:"me",inlineMark:"ue",inlineLink:"ha",inlineFileLink:"G",badge:"p",warn:"we",accent:"he",stat:"H",statHero:"c",statValue:"ya",statLabel:"I",statUnit:"ka",statDelta:"J",up:"ye",statSpark:"za",down:"ke",progress:"ze",progressRow:"ja",track:"Ya",fill:"Fa",list:"je",li:"f",liTitle:"Ma",liDesc:"Sa",tableWrap:"b",table:"a",thNum:"qa",tdNum:"Ye",tdDelta:"Fe",tdDeltaUp:"Me",tdDeltaDown:"Se",tdMultiline:"v",tdCode:"x",detailRow:"K",calloutBody:"Aa",kvValue:"Ba",tlDesc:"Ca",detailBody:"Da",accBody:"Ea",ringLabel:"Ga",ringSub:"Ha",calloutTitle:"n",stepTitle:"z",stepDesc:"Ia",kvKey:"Ja",tlTitle:"Ka",tlTime:"La",accTitle:"qe",fieldLabel:"Na",switchLabel:"Oa",radio:"j",tab:"m",badgeLabel:"Ae",gradeQ:"Pa",gradeAns:"Qa",gradeRight:"Ra",gradeExp:"Ta",quizQuestion:"Ua",quizFeedback:"Va",quizExplanation:"Wa",thSort:"u",thSortMark:"Be",chartBody:"Ce",chartYAxis:"De",chartYTick:"Ee",chartPlot:"Ge",baseline:"He",gridline:"Ie",chartLabels:"Xa",chartLegend:"Je",legendItem:"Ke",legendSwatch:"Le",lineArea:"Ne",chartTip:"Oe",chartTipRow:"Pe",chartTipValue:"Qe",stackValue:"Re",barCol:"Te",barValue:"Ue",stack:"Ve",stackSeg:"Za",barFill:"L",barLabel:"We",tabs:"Xe",tabBar:"Ze",tabActive:"_e",avatar:"as",callout:"rs",calloutInfo:"_a",calloutSuccess:"ar",calloutWarning:"rr",calloutError:"er",steps:"es",step:"sr",stepDone:"ir",stepActive:"or",stepMarker:"N",stepContent:"ss",keyvalue:"is",kvRow:"Y",jsonScalar:"os",linePath:"ts",lineDot:"tr",lineGrid:"ls",lineGridAxis:"ns",lineTick:"ds",lineLabel:"gs",lineLabels:"ps",groupedBars:"cs",groupedBar:"fs",groupValue:"bs",groupedFill:"lr",donutTrack:"vs",donutSeg:"nr",donutTotal:"xs",donutTotalLabel:"ms",donutLegend:"us",donutPct:"ws",ring:"hs",ringTrack:"ys",ringFill:"ks",ringValue:"zs",ringMeta:"js",targetMark:"Ys",filterRow:"Fs",filterHint:"Ms",tableTools:"Ss",tableTool:"O",detailCell:"dr",detailToggle:"F",detailContent:"qs",detailChevron:"gr",groupRow:"w",groupToggle:"P",groupLabel:"pr",groupChevron:"As",groupCount:"Bs",groupChild:"Q",cardInfo:"cr",cardSuccess:"fr",cardWarning:"br",cardDanger:"vr",hbarRow:"Cs",hbarLabel:"Ds",hbarTracks:"Es",hbarSeg:"Gs",hbarTrack:"Hs",hbarFill:"Is",hbarValue:"Js",cellBadge:"Ks",cellSpark:"Ls",cellRing:"Ns",cellRingText:"Os",cellIndex:"Ps",cellBar:"Qs",cellBarFill:"Rs",cellBarText:"Ts",fieldGroup:"Us",submitRow:"Vs",submit:"Ws",submitHint:"Xs",btnSent:"R",gradeWrap:"Zs",gradeScore:"_s",gradeScoreValue:"ai",gradeScoreLabel:"ri",gradeList:"ei",gradeItem:"si",gradeItemOk:"xr",gradeItemNo:"mr",gradeTag:"T",switchRow:"ur",switch:"U",switchOn:"wr",switchKnob:"V",sliderRow:"ii",sliderInput:"hr",sliderValue:"oi",textarea:"yr",accordion:"ti",accItem:"kr",accHead:"M",accChevron:"zr",copyChip:"S",copyChipDone:"li",mermaid:"d",mermaidFallback:"jr",mermaidErr:"ni",mermaidHint:"di",scene3dWrap:"gi",echartWrap:"pi",echartTitle:"ci",echartCanvas:"fi",echartHint:"bi",echartFallback:"vi",echartErr:"xi",scene3dTitle:"mi",scene3dCanvas:"Yr",scene3dHint:"ui",timeline:"wi",tlItem:"W",tlRail:"hi",tlDot:"Fr",tlLine:"yi",tlBody:"Mr",tlHead:"ki",fileTree:"h",ftChildren:"zi",ftRow:"Sr",ftGuide:"ji",ftChevron:"qr",ftGlyph:"Yi",ftGlyphDir:"Fi",ftName:"Mi",ftDir:"Si",ftNameBtn:"X",breadcrumb:"qi",bcItem:"Ai",bcText:"Z",bcCurrent:"Bi",bcSep:"Ci",skeleton:"Di",skeletonTitle:"_",skeletonBars:"q",skeletonBlock:"aa","dsl-skeleton":"Ar",genuiReveal:"Br",genuiPopIn:"Cr",reveal:"Dr",panelBody:"y",visuallyHidden:"Ei",quiz:"Gi",quizOptions:"Hi",quizOpt:"A",quizRetry:"ra",resetBtn:"Ii",playBtn:"Ji",quizOptCorrect:"Er",quizOptWrong:"Gr",quizOptReveal:"Ki",quizMarker:"ea",quizResult:"Li",quizCorrectMsg:"Ni",quizWrongMsg:"Oi",tool:"Pi",toolFallback:"Qi",toolFallbackTitle:"Ri",toolFallbackMeta:"Ti",panelHeader:"Hr",panelToggle:"Ir",panelClose:"sa",panelTpl:"Jr",panelTplActive:"Ui",panelOnboard:"Vi",panelOnboardText:"Wi",panelFlash:"Xi",panelHint:"Zi",achToasts:"_i",achToast:"ao",achToastBadge:"ro",achToastBody:"eo",achToastName:"so",achToastDesc:"io",panelBadge:"oo",panelTitle:"to",panelChevron:"lo",panelResizeHandle:"Kr",panelResizeHandleActive:"no",inlineMath:"Lr"};function rb(e,t){return typeof e=="string"&&t.includes(e)}function G(e,t){return typeof e=="string"?e.slice(0,t):void 0}var nb=/^(?:#[\da-fA-F]{3,8}|rgba?\([^)]{0,64}\)|hsla?\([^)]{0,64}\)|var\(--dsw-[\w-]+(?:,\s*#[0-9a-fA-F]{3,8})?\))$/;function Kr(e){if(typeof e!="string")return;let t=e.trim();return t.length<=64&&nb.test(t)?t:void 0}function Gg(e){if(typeof e!="string")return;let t=e.trim();if(!(t.length>2048))return/^https?:\/\//i.test(t)||/^mailto:[^@\s]+@[^@\s]+$/i.test(t)?t:void 0}function Ss(e){if(typeof e!="string")return;let t=e.trim();if(!(t===""||t.length>2048)){if(/^https?:\/\//i.test(t))return t;if(!(/^[a-z][a-z0-9+.-]*:/i.test(t)||/^[/\\]{2}/.test(t)))return t}}function Ee(e,t,r){return typeof e=="number"&&Number.isFinite(e)?Math.min(r,Math.max(t,e)):void 0}function Yr(e,t,r){return typeof e=="number"&&Number.isFinite(e)?Math.min(r,Math.max(t,Math.trunc(e))):void 0}function ut(e,t){return rb(e,t)?e:void 0}function me(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function M(e,t){return t===void 0?{}:{[e]:t}}function ab(e){if(e.length>2048)return;let t=e.indexOf("#"),r=t<0?e:e.slice(0,t);if(r.includes("?"))return;let n;try{n=decodeURIComponent(r)}catch{return}if(n===""||/[\u0000-\u001f\u007f]/.test(n)||/^[\\/]{2}/.test(n)||/^[a-z][a-z\d+.-]*:/i.test(n)&&!/^[a-z]:[\\/]/i.test(n))return;if(t<0)return{path:n};let a=/^L([1-9]\d*)(?:-L([1-9]\d*))?$/.exec(e.slice(t+1));if(a===null)return;let i=Number(a[1]),s=a[2]===void 0?i:Number(a[2]);if(!(!Number.isSafeInteger(i)||!Number.isSafeInteger(s)||s<i))return{path:n,line:i}}function ci(e){let t=Gg(e);if(t!==void 0)return{type:"external",href:t};if(typeof e!="string")return{type:"invalid"};let r=ab(e.trim());return r===void 0?{type:"invalid"}:{type:"file",file:r}}var vn=ie(_e(),1);var ib=(0,vn.createContext)(void 0);function Il({path:e,line:t,label:r,children:n}){let a=(0,vn.useContext)(ib);return a===void 0?(0,vn.createElement)("span",{title:e},n):(0,vn.createElement)("button",{type:"button",className:y.inlineFileLink,title:e,"aria-label":`${r} (${e})`,onClick:i=>{i.stopPropagation(),a(e,t)}},n)}function sb({source:e,display:t}){let r=(0,Mr.useRef)(null);return(0,Mr.useLayoutEffect)(()=>{r.current!==null&&Ig.render(e,r.current,{displayMode:t,throwOnError:!1,trust:!1,maxExpand:1e3,maxSize:20,output:"htmlAndMathml"})},[e,t]),(0,Mr.createElement)("span",{ref:r,className:y.inlineMath})}var ob=/(?<!`)`[^`\n]+`(?!`)|\\\\|\\\$|(?<![\\$])\$\$(?:\\.|[^\\])*?\$\$|\\\[(?:\\(?!\])[^]|[^\\])*?\\\]|\\\((?:\\(?!\))[^]|[^\\])*?\\\)|(?<![\\$])\$(?!\s|\$)(?:\\.|[^$\\\n])+(?<!\s)\$(?!\d|\$)|\*\*[\s\S]+?\*\*|==[\s\S]+?==|\[[^\]\n]+\]\([^)\s]+\)|\r?\n/g,Pg=/`{3,}|~{3,}/g;function lb(e){return typeof e=="string"&&/[`*=$\\\n\r]|\[/.test(e)}function q(e,t=!0,r=0){if(typeof e!="string"||e===""||!lb(e)||r>=8)return e;let n=[],a=0;for(let l of e.matchAll(Pg)){let u=l.index??0;if(u<a)continue;let d=l[0],p=u+d.length,m;for(let g of e.slice(p).matchAll(Pg))if(g[0][0]===d[0]&&g[0].length>=d.length){m=p+(g.index??0)+g[0].length;break}if(u>a&&n.push(q(e.slice(a,u),t,r)),a=m??e.length,n.push(e.slice(u,a)),m===void 0)break}if(n.length>0)return a<e.length&&n.push(q(e.slice(a),t,r)),n;let i=[],s=0,o=0;for(let l of e.matchAll(ob)){let u=l.index??0,d=l[0];if(u>s&&i.push(e.slice(s,u)),d===`
|
|
267
267
|
`||d===`\r
|
|
268
268
|
`)i.push(`
|
|
269
|
-
`);else if(d.startsWith("`"))i.push((0,Mr.createElement)("code",{key:o++,className:y.inlineCode},d.slice(1,-1)));else if(d==="\\$"||d==="\\\\")i.push(d.slice(1));else if(d.startsWith("$")||d.startsWith("\\(")||d.startsWith("\\[")){let p=d.startsWith("$$")||d.startsWith("\\["),m=d.startsWith("$")&&!p?1:2;i.push((0,Mr.createElement)(sb,{key:o++,source:d.slice(m,-m),display:p}))}else if(d.startsWith("**")||d.startsWith("==")){let p=d.startsWith("**");i.push((0,Mr.createElement)(p?"strong":"mark",{key:o++,className:p?y.inlineStrong:y.inlineMark},q(d.slice(2,-2),t,r+1)))}else{let p=/^\[([^\]\n]+)\]\(([^)\s]+)\)$/.exec(d);if(p===null)i.push(d);else{let m=ci(p[2]),g=q(p[1],!1,r+1);m.type==="external"&&t===!0?i.push((0,Mr.createElement)("a",{key:o++,className:y.inlineLink,href:m.href,target:"_blank",rel:"noreferrer noopener"},g)):m.type==="file"&&t!==!1?i.push((0,Mr.createElement)(Il,{key:o++,path:m.file.path,label:p[1],...m.file.line===void 0?{}:{line:m.file.line}},g)):i.push(g)}}s=u+d.length}return s<e.length&&i.push(e.slice(s)),i.length===0?e:i}var Re=ie(_e(),1);var Hl=ie(_e(),1);var As=ie(_e());var _g=ie(_e(),1);var Og={"artifact.export":"Export","artifact.exportHtml":"HTML","artifact.exportJson":"GenUI JSON","artifact.exportFailed":"Export failed. Try again.","artifact.unsupportedCustom":"Cannot export HTML because the standalone runtime cannot render custom components: {types}. Export GenUI JSON to preserve these nodes.","artifact.externalMediaNotice":"External media may not appear when this file is opened offline.","panel.badge":"Panel","panel.title.default":"GenUI panel","panel.title.explore":"GenUI explorer","panel.templates":"Templates","panel.templates.aria":"Template center","panel.templates.title":"Template center: preview and try GenUI examples","panel.achievements":"Trophies","panel.achievements.aria":"Exploration trophies","panel.achievements.title":"Exploration trophies: badges and progress","panel.close.aria":"Close panel","panel.resize.aria":"Resize panel height","panel.hint":"\u{1F4A1} This is the GenUI session panel \u2014 hit \u201CTemplates\u201D above to browse runnable examples","panel.boundary":"panel","panel.flash.inserted":"Instruction inserted into the composer \u2014 send it to generate","panel.cmd.hint":"Open the GenUI panel; /panel <instruction> to customize; /panel clear to empty","panel.cmd.description":"Open the GenUI panel (/panel clear empties it; /panel <instruction> tailors the content)","panel.default.heading":"GenUI generative interface","panel.default.subtitle":"The panel updates in place: say \u201Cupdate the panel\u201D in chat, or run /panel again to refresh.","panel.default.stat.components":"Components","panel.default.stat.single":"Primitives","panel.default.stat.composite":"Composites","panel.default.stat.advanced":"Advanced","panel.default.group.single":"Primitives \xD712","panel.default.group.composite":"Composites \xD78","panel.default.group.data":"Data \xD77","panel.default.group.interactive":"Interactive \xD75","panel.default.group.advanced":"Advanced \xD75","panel.default.group.teaching":"Teaching \xD71","panel.default.callout.title":"How to update","panel.default.callout.body":"Say \u201Cupdate the panel\u201D in chat \u2192 the model emits a panel:true fence; /panel clear empties it.","tpl.category.all":"All","tpl.category.dashboard":"Dashboard","tpl.category.data":"Data","tpl.category.flow":"Flow","tpl.category.chart":"Charts","tpl.category.interactive":"Interactive","tpl.category.quiz":"Quiz","tpl.category.advanced":"Advanced","tpl.categories.aria":"Template categories","tpl.try":"Try it: insert into composer","tpl.copy":"Copy instruction","tpl.copied":"\u2713 Copied","tpl.boundary.preview":"template preview","tpl.boundary.achievements":"trophy page","tpl.dashboard.name":"Project dashboard","tpl.dashboard.desc":"Core metrics on one card: numbers, deltas and a progress bar \u2014 the decision at a glance.","tpl.dashboard.instruction":"Use dsh-ui to build a dashboard for this project: 4 key-metric stat cards (with deltas), an overall progress bar, and a list of today\u2019s 3 todos. Title it \u201CProject dashboard\u201D.","tpl.dashboard.demo.title":"Project dashboard (example)","tpl.dashboard.demo.metrics":"This week\u2019s key metrics","tpl.dashboard.demo.done":"Completed","tpl.dashboard.demo.blocked":"Blocked","tpl.dashboard.demo.duration":"Avg. cycle time","tpl.dashboard.demo.coverage":"Coverage","tpl.dashboard.demo.progress":"Overall progress","tpl.dashboard.demo.milestone":"v1.0 milestone","tpl.dashboard.demo.todo":"Today\u2019s todos","tpl.dashboard.demo.todo1":"Review the M1 template-center PR","tpl.dashboard.demo.todo2":"Sync vendor to SSiD","tpl.dashboard.demo.todo3":"Wednesday standup deck","tpl.compare.name":"Option comparison","tpl.compare.desc":"Options scored dimension by dimension \u2014 the contested cells jump out.","tpl.compare.instruction":"Use dsh-ui to turn these options into a comparison table: options A/B/C \xD7 dimensions (cost / complexity / risk / payoff), marking the recommended column; add a callout at the top stating the conclusion.","tpl.compare.demo.title":"Option comparison (example)","tpl.compare.demo.conclusion":"Conclusion","tpl.compare.demo.body":"Option B wins overall: medium cost, low complexity, low risk.","tpl.compare.demo.dimension":"Dimension","tpl.compare.demo.optionA":"Option A","tpl.compare.demo.optionB":"Option B \u2605","tpl.compare.demo.optionC":"Option C","tpl.compare.demo.cost":"Cost","tpl.compare.demo.complexity":"Complexity","tpl.compare.demo.risk":"Risk","tpl.compare.demo.payoff":"Payoff","tpl.compare.demo.high":"High","tpl.compare.demo.medium":"Medium","tpl.compare.demo.low":"Low","tpl.compare.demo.large":"Large","tpl.compare.demo.small":"Small","tpl.steps.name":"Five-step walkthrough","tpl.steps.desc":"Key steps on a timeline, one line each \u2014 for tutorials, handovers and release runbooks.","tpl.steps.instruction":"Use dsh-ui to turn the procedure into a steps walkthrough: 5 steps following the real flow, each with a title and a line or two of detail, with a badge at the top showing the expected duration.","tpl.steps.demo.title":"Getting started (example)","tpl.steps.demo.badge":"About 5 minutes","tpl.steps.demo.s1":"Install the plugin","tpl.steps.demo.s1desc":"From the plugin center, or npm-install it into your profile","tpl.steps.demo.s2":"Send your first instruction","tpl.steps.demo.s2desc":"Ask the model to answer with a dsh-ui interface","tpl.steps.demo.s3":"Try the interaction","tpl.steps.demo.s3desc":"Click a button, grade a quiz, switch a tab \u2014 actions travel back to the model","tpl.steps.demo.s4":"Pin a panel","tpl.steps.demo.s4desc":"The model uses panel:true to pin results to the session panel","tpl.steps.demo.s5":"Advanced components","tpl.steps.demo.s5desc":"Charts, diagrams and 3D load lazily, on demand","tpl.quiz.name":"Pop quiz","tpl.quiz.desc":"Graded the moment you answer: right or wrong plus an explanation \u2014 good for training.","tpl.quiz.instruction":"Use dsh-ui to write 3 pop-quiz questions (quiz component: question + options, exactly one correct, each with an explanation), titled \u201CPop quiz\u201D, graded as soon as an option is picked.","tpl.quiz.demo.title":"Pop quiz (example)","tpl.quiz.demo.hint":"Picking an option grades it instantly and reveals the explanation.","tpl.quiz.demo.q1":"What is the smallest unit of a DSH plugin?","tpl.quiz.demo.q1a":"A service","tpl.quiz.demo.q1b":"A plugin (a cordis plugin)","tpl.quiz.demo.q1bfx":"\u2713 Everything is a plugin: services, tools and UI all register through one.","tpl.quiz.demo.q1c":"A tool","tpl.quiz.demo.q1exp":"DSH is built on cordis: every capability, services and tools included, registers as a plugin.","tpl.quiz.demo.q2":"Who emits a dsh-ui fence?","tpl.quiz.demo.q2a":"The user","tpl.quiz.demo.q2b":"The model","tpl.quiz.demo.q2bfx":"\u2713 The model writes the dsh-ui fence into its reply.","tpl.quiz.demo.q2c":"The host","tpl.quiz.demo.q2exp":"The model emits the fence; the renderer paints it into real components.","tpl.quiz.demo.q3":"Where does a panel:true fence render?","tpl.quiz.demo.q3a":"The message flow","tpl.quiz.demo.q3b":"The session panel dock","tpl.quiz.demo.q3bfx":"\u2713 Panel updates never spam the transcript.","tpl.quiz.demo.q3c":"The settings page","tpl.stats.name":"Key figures + progress","tpl.stats.desc":"Numbers, progress and milestones in one delivery \u2014 the standard weekly report.","tpl.stats.instruction":"Use dsh-ui to summarize this week: a keyvalue block with 3 key figures, two progress bars (planned vs actual), and a timeline with 3 milestones. Title it \u201CWeekly snapshot\u201D.","tpl.stats.demo.title":"Weekly snapshot (example)","tpl.stats.demo.done":"Completed","tpl.stats.demo.late":"Late","tpl.stats.demo.risk":"Risks","tpl.stats.demo.riskValue":"2 (both mitigated)","tpl.stats.demo.planned":"Planned progress","tpl.stats.demo.actual":"Actual progress","tpl.stats.demo.mon":"Monday","tpl.stats.demo.monDesc":"M1 development complete","tpl.stats.demo.wed":"Wednesday","tpl.stats.demo.wedDesc":"End-to-end verification passed","tpl.stats.demo.fri":"Friday","tpl.stats.demo.friDesc":"Shipped 0.9.4","tpl.chart.name":"Trend chart","tpl.chart.desc":"Data drawn straight into a chart \u2014 multiple series, trend visible at a glance.","tpl.chart.instruction":"Use dsh-ui to plot this data as a chart (bars, multi-series): completed vs planned over the last 6 weeks, with a one-line trend conclusion above the chart.","tpl.chart.demo.title":"Trend comparison (example)","tpl.chart.demo.conclusion":"Conclusion: completions rose 3 weeks running and overtook plan for the first time this week.","tpl.tabs.name":"Tabbed sections","tpl.tabs.desc":"A big block split into tabs: clear anchors, an uncluttered panel, no transcript spam.","tpl.tabs.instruction":"Use dsh-ui to split the content into three tabs: Overview / Details / FAQ, at most 3 points per tab. Title it \u201CFeature tour\u201D.","tpl.tabs.demo.title":"Feature tour (example)","tpl.tabs.demo.overview":"Overview","tpl.tabs.demo.overviewBody":"Three capabilities: live rendering, action round-trips, and a persistent panel.","tpl.tabs.demo.details":"Details","tpl.tabs.demo.d1":"Rendering: incremental fence parsing, painted as it streams","tpl.tabs.demo.d2":"Interaction: actions travel back and the model updates in place","tpl.tabs.demo.d3":"Panel: a session-level dock you can collapse and resize","tpl.tabs.demo.faqBody":"Q: What if the model never replies? A: Components still grade and expand locally.","tpl.checklist.name":"Release checklist","tpl.checklist.desc":"Tick every box before you ship: the list is the process, and gaps are visible.","tpl.checklist.instruction":"Use dsh-ui to build a release checklist: 6 tickable checkbox items (tests / docs / release / rollback / monitoring / announcement), with a badge at the top reading \u201CTick everything before merging\u201D.","tpl.checklist.demo.title":"Release checklist (example)","tpl.checklist.demo.badge":"Tick everything before merging","tpl.checklist.demo.c1":"Unit tests pass","tpl.checklist.demo.c2":"Docs updated","tpl.checklist.demo.c3":"Release bundle ready","tpl.checklist.demo.c4":"Rollback plan","tpl.accordion.name":"FAQ accordion","tpl.accordion.desc":"Questions and answers folded away: long documents get short and answers stop intimidating.","tpl.accordion.instruction":"Use dsh-ui to build an FAQ accordion: 5 common questions, the question as the header and the answer inside, with the first one expanded by default.","tpl.accordion.demo.title":"FAQ (example)","tpl.accordion.demo.q1":"Which chart types are supported?","tpl.accordion.demo.a1":"chart (bars/line/donut), plot for function graphs, and echart for the full chart library.","tpl.accordion.demo.q2":"Does the panel persist?","tpl.accordion.demo.a2":"The same content fingerprint restores its state across refresh and replay; new content resets.","tpl.accordion.demo.q3":"Do interactions disturb the model?","tpl.accordion.demo.a3":"Only components carrying an action send anything; pure display costs zero round-trips.","tpl.diagram.name":"System architecture","tpl.diagram.desc":"Architecture drawn as SVG: layered nodes, real edges, labelled zones \u2014 clearer than a screenshot.","tpl.diagram.instruction":"Use dsh-ui to draw an architecture diagram: 5 nodes of this system and their connections (kind: architecture or flowchart), including one security zone.","tpl.diagram.demo.title":"Architecture (example)","tpl.diagram.demo.caption":"DSH plugin path","tpl.diagram.demo.model":"Model","tpl.diagram.demo.plugin":"Plugin","tpl.diagram.demo.host":"Host","tpl.3d.name":"3D scene","tpl.3d.desc":"A rotatable 3D scene \u2014 for product demos and spatial explanations.","tpl.3d.instruction":"Use dsh-ui to render a 3D scene (scene3d): a cube and a sphere, titled \u201CExample scene\u201D, with a sentence on when to use it.","tpl.3d.demo.title":"3D scene (example)","tpl.3d.demo.note":"The first load downloads three.js (~700KB, lazily); afterwards it comes from cache.","tpl.3d.demo.scene":"Example scene","tpl.breadcrumb.name":"Path breadcrumb","tpl.breadcrumb.desc":"Long paths as breadcrumbs: file location and org hierarchy read instantly.","tpl.breadcrumb.instruction":"Use dsh-ui to show the current workspace layout: a breadcrumb for the file path (4 segments) and a file-tree of the project (3 directories, 2 children each).","tpl.breadcrumb.demo.title":"Directory layout (example)","tpl.breadcrumb.demo.workspace":"Workspace","ach.page.title":"GenUI exploration trophies","ach.stat.unlocked":"Unlocked","ach.stat.rendered":"Interfaces rendered","ach.stat.interactions":"Interactions","ach.progress":"Exploration progress","ach.rarity.common":"Common","ach.rarity.rare":"Rare","ach.rarity.legendary":"Legendary","ach.hidden.name":"?","ach.hidden.desc":"Keep exploring to reveal","ach.toast.unlocked":"Trophy unlocked: {name}","ach.first-fence.name":"First contact","ach.first-fence.desc":"Rendered your first GenUI interface.","ach.fence-5.name":"Getting the hang of it","ach.fence-5.desc":"Rendered 5 interfaces.","ach.fence-25.name":"Interface weaver","ach.fence-25.desc":"Rendered 25 interfaces.","ach.fence-50.name":"Soul of the blueprint","ach.fence-50.desc":"Rendered 50 interfaces \u2014 you and GenUI go way back.","ach.first-interaction.name":"The button works","ach.first-interaction.desc":"Triggered a component interaction for the first time.","ach.interaction-10.name":"Little puppeteer","ach.interaction-10.desc":"Triggered 10 component interactions.","ach.first-panel.name":"Pinned to the wall","ach.first-panel.desc":"Pinned content to the session panel for the first time.","ach.panel-5.name":"Panel keeper","ach.panel-5.desc":"Used the panel in 5 different sessions.","ach.first-chart.name":"Chart enthusiast","ach.first-chart.desc":"Rendered your first chart (chart/plot/echart).","ach.chart-10.name":"Data visualizer","ach.chart-10.desc":"Charts appeared in 10 interfaces.","ach.first-advanced.name":"Power user","ach.first-advanced.desc":"Used 3D, a chart engine, or an architecture diagram.","ach.template-1.name":"Template student","ach.template-1.desc":"Tried a template from the template center.","label.copy":"Copy","label.copied":"Copied","label.copiedDone":"Copied","label.copiedShort":"\u2713 Copied","label.copiedToClipboard":"Copied to clipboard","label.copyFailed":"Copy failed","label.code":"Code","label.wrap":"Wrap lines","label.unwrap":"Unwrap lines","label.collapse":"Collapse","label.collapseDiff.aria":"Collapse diff","label.expandDiff.aria":"Show the remaining {hidden} diff lines","label.expandDiff":"\u2026 {hidden} more lines","label.diffFiles":"{count} files","label.copyValue":"Copy value","label.copyJson":"Copy JSON","label.copyPath":"Copy property path","label.copyPrettyJson":"Copy formatted JSON","label.copyCompactJson":"Copy compact JSON","label.collapseNode":"Collapse JSON node","label.expandNode":"Expand JSON node","label.copyButtonTitle":"{action}; right-click for copy options","block.copyMarkdown":"Copy Markdown","block.copyCsv":"Copy CSV","block.table.expandDetails":"Expand details for {label}","block.table.collapseDetails":"Collapse details for {label}","block.table.expandGroup":"Expand group {label}","block.table.collapseGroup":"Collapse group {label}","block.total":"Total","block.filteredRows":"{visible} / {total} rows after filtering","block.filterMatch":"{shown} / {total} matched","block.triggered":"\u2713 Sent","block.triggeredPlain":"Sent","block.audio":"Audio","block.audioError":"Audio cannot be played","block.video":"Video","block.videoError":"Video cannot be played","block.image":"Image","block.imageError":"Image failed to load","block.svgLabel":"SVG diagram","block.svgPreview":"Preview","block.svgSource":"Source","block.svgError":"SVG could not be displayed \u2014 showing the source instead","block.mermaidError":"Diagram rendering failed \u2014 showing the source instead","block.mermaidLoading":"Rendering\u2026","block.scene3dLoading":"Loading 3D scene\u2026","block.scene3dError":"3D rendering failed","block.quizCorrect":"\u2713 Correct!","block.quizWrong":"\u2717 Try again","block.quizRetry":"Start over","block.selectPlaceholder":"Choose\u2026","block.score":"Score","block.scoreUngraded":" ({count} unanswered, not scored)","block.yourAnswer":"Your answer:","block.correctAnswer":" Correct answer:","block.selectedCount":"{answered}/{total} answered","block.target":"Target {value}%","block.chart.barsAria":"Horizontal bar chart, {count} groups","block.chart.barsSummary":"Bar chart, {count} groups, max {max}","block.chart.lineSeries":"Line chart, {count} series, range {min} to {max}","block.chart.linePoints":"Line chart, {count} points, range {min} to {max}","block.chart.donutSummary":"Donut chart, {count} slices, total {total}","block.chart.node":"Point","err.boundary.generic":"this interface","err.boundary.fence":"this interface","err.boundary.body":"\u26A0\uFE0F {label} failed to render (isolated \u2014 the rest of the reply is unaffected)","err.fieldValidation":"GenUI field validation failed: {errors}","err.chartValidation":"chart field validation failed: {errors}","err.fenceKeptAsCode":"\u26A0\uFE0F dsh-ui {diagnostic} \u2014 the fence stays a code block; fix it and resend.","err.fenceParse":"\u26A0\uFE0F dsh-ui fence JSON failed to parse{diagnostic} \u2014 the fence stays a code block; ask the model to fix the JSON and resend."};var Fg={"artifact.export":"\u5BFC\u51FA","artifact.exportHtml":"HTML","artifact.exportJson":"GenUI JSON","artifact.exportFailed":"\u5BFC\u51FA\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5\u3002","artifact.unsupportedCustom":"\u65E0\u6CD5\u5BFC\u51FA HTML\uFF1A\u72EC\u7ACB\u8FD0\u884C\u73AF\u5883\u65E0\u6CD5\u663E\u793A\u81EA\u5B9A\u4E49\u7EC4\u4EF6 {types}\u3002\u53EF\u5BFC\u51FA GenUI JSON \u4FDD\u5B58\u8FD9\u4E9B\u8282\u70B9\u3002","artifact.externalMediaNotice":"\u6B64\u9875\u9762\u542B\u6709\u5916\u90E8\u5A92\u4F53\uFF0C\u79BB\u7EBF\u6253\u5F00\u65F6\u90E8\u5206\u5185\u5BB9\u53EF\u80FD\u65E0\u6CD5\u663E\u793A\u3002","panel.badge":"\u9762\u677F","panel.title.default":"GenUI \u9762\u677F","panel.title.explore":"GenUI \u63A2\u7D22","panel.templates":"\u6A21\u677F","panel.templates.aria":"\u6A21\u677F\u4E2D\u5FC3","panel.templates.title":"\u6A21\u677F\u4E2D\u5FC3\uFF1A\u9884\u89C8\u5E76\u8BD5\u7528 GenUI \u793A\u4F8B","panel.achievements":"\u6210\u5C31","panel.achievements.aria":"\u63A2\u7D22\u6210\u5C31","panel.achievements.title":"\u63A2\u7D22\u6210\u5C31\uFF1A\u89E3\u9501\u5FBD\u7AE0\u4E0E\u8FDB\u5EA6","panel.close.aria":"\u5173\u95ED\u9762\u677F","panel.resize.aria":"\u8C03\u6574\u9762\u677F\u9AD8\u5EA6","panel.hint":"\u{1F4A1} \u8FD9\u662F GenUI \u4F1A\u8BDD\u9762\u677F\uFF1A\u70B9\u53F3\u4E0A\u89D2\u300C\u6A21\u677F\u300D\u53EF\u6D4F\u89C8\u5E76\u8BD5\u7528\u793A\u4F8B","panel.boundary":"\u9762\u677F","panel.flash.inserted":"\u6307\u4EE4\u5DF2\u63D2\u5165\u8F93\u5165\u6846\uFF0C\u53D1\u9001\u5373\u53EF\u8BA9\u6A21\u578B\u751F\u6210","panel.cmd.hint":"\u5F00\u542F GenUI \u9762\u677F\uFF1B/panel <\u6307\u4EE4> \u8BA9\u6A21\u578B\u5B9A\u5236\uFF1B/panel clear \u6E05\u7A7A","panel.cmd.description":"\u5F00\u542F GenUI \u9762\u677F\uFF08/panel clear \u6E05\u7A7A\uFF1B/panel <\u6307\u4EE4> \u5B9A\u5236\u5185\u5BB9\uFF09","panel.default.heading":"GenUI \u751F\u6210\u5F0F\u754C\u9762","panel.default.subtitle":"\u9762\u677F\u4F1A\u539F\u5730\u66F4\u65B0\uFF1A\u5BF9\u8BDD\u91CC\u8BF4\u300C\u66F4\u65B0\u9762\u677F\u300D\uFF0C\u6216\u518D\u6B21\u6267\u884C /panel \u5237\u65B0\u3002","panel.default.stat.components":"\u7EC4\u4EF6","panel.default.stat.single":"\u5355\u4E2A","panel.default.stat.composite":"\u7EC4\u5408","panel.default.stat.advanced":"\u9AD8\u7EA7","panel.default.group.single":"\u5355\u4E2A \xD712","panel.default.group.composite":"\u7EC4\u5408 \xD78","panel.default.group.data":"\u6570\u636E \xD77","panel.default.group.interactive":"\u4EA4\u4E92 \xD75","panel.default.group.advanced":"\u9AD8\u7EA7 \xD75","panel.default.group.teaching":"\u6559\u5B66 \xD71","panel.default.callout.title":"\u66F4\u65B0\u65B9\u5F0F","panel.default.callout.body":"\u5BF9\u8BDD\u8BF4\u300C\u66F4\u65B0\u9762\u677F\u300D\u2192 \u6A21\u578B\u8F93\u51FA panel:true \u56F4\u680F\uFF1B/panel clear \u6E05\u7A7A\u9762\u677F\u3002","tpl.category.all":"\u5168\u90E8","tpl.category.dashboard":"\u4EEA\u8868\u76D8","tpl.category.data":"\u6570\u636E","tpl.category.flow":"\u6D41\u7A0B","tpl.category.chart":"\u56FE\u8868","tpl.category.interactive":"\u4EA4\u4E92","tpl.category.quiz":"\u6D4B\u9A8C","tpl.category.advanced":"\u9AD8\u7EA7","tpl.categories.aria":"\u6A21\u677F\u5206\u7C7B","tpl.try":"\u8BD5\u7528\uFF1A\u63D2\u5165\u8F93\u5165\u6846","tpl.copy":"\u590D\u5236\u6307\u4EE4","tpl.copied":"\u2713 \u5DF2\u590D\u5236","tpl.boundary.preview":"\u6A21\u677F\u9884\u89C8","tpl.boundary.achievements":"\u6210\u5C31\u9875","tpl.dashboard.name":"\u9879\u76EE\u4EEA\u8868\u76D8","tpl.dashboard.desc":"\u4E00\u5F20\u5361\u7247\u6C47\u603B\u6838\u5FC3\u6307\u6807\uFF1A\u6570\u5B57 + \u73AF\u6BD4 + \u8FDB\u5EA6\u6761\uFF0C\u51B3\u7B56\u4E00\u773C\u53EF\u89C1\u3002","tpl.dashboard.instruction":"\u8BF7\u7528 dsh-ui \u7ED9\u5F53\u524D\u9879\u76EE\u505A\u4E00\u4E2A\u4EEA\u8868\u76D8\uFF1A4 \u4E2A\u5173\u952E\u6307\u6807\u7684 stat \u5361\u7247\uFF08\u5E26\u73AF\u6BD4 delta\uFF09\u3001\u6574\u4F53\u8FDB\u5EA6 progress \u6761\u3001\u4ECA\u5929\u7684 3 \u4EF6\u5F85\u529E list\u3002\u6807\u9898\u7528\u300C\u9879\u76EE\u4EEA\u8868\u76D8\u300D\u3002","tpl.dashboard.demo.title":"\u9879\u76EE\u4EEA\u8868\u76D8\uFF08\u793A\u4F8B\uFF09","tpl.dashboard.demo.metrics":"\u672C\u5468\u5173\u952E\u6307\u6807","tpl.dashboard.demo.done":"\u672C\u5468\u5B8C\u6210","tpl.dashboard.demo.blocked":"\u963B\u585E\u4E8B\u9879","tpl.dashboard.demo.duration":"\u5E73\u5747\u8017\u65F6","tpl.dashboard.demo.coverage":"\u8986\u76D6\u7387","tpl.dashboard.demo.progress":"\u6574\u4F53\u8FDB\u5EA6","tpl.dashboard.demo.milestone":"v1.0 \u91CC\u7A0B\u7891","tpl.dashboard.demo.todo":"\u4ECA\u65E5\u5F85\u529E","tpl.dashboard.demo.todo1":"\u8BC4\u5BA1 M1 \u6A21\u677F\u4E2D\u5FC3 PR","tpl.dashboard.demo.todo2":"\u540C\u6B65 vendor \u5230 SSiD","tpl.dashboard.demo.todo3":"\u5468\u4E09\u5468\u4F1A\u6750\u6599","tpl.compare.name":"\u65B9\u6848\u5BF9\u6BD4\u8868","tpl.compare.desc":"\u591A\u65B9\u6848\u9010\u7EF4\u5EA6\u5BF9\u7167\uFF0C\u8868\u683C\u76F4\u63A5\u53EF\u8BFB\uFF0C\u4E89\u8BAE\u70B9\u4E00\u76EE\u4E86\u7136\u3002","tpl.compare.instruction":"\u8BF7\u7528 dsh-ui \u628A\u4EE5\u4E0B\u65B9\u6848\u7684\u5BF9\u6BD4\u505A\u6210\u4E00\u5F20 table\uFF1A\u65B9\u6848 A/B/C \xD7 \u7EF4\u5EA6\uFF08\u6210\u672C/\u590D\u6742\u5EA6/\u98CE\u9669/\u6536\u76CA\uFF09\uFF0C\u5217\u9996\u9AD8\u4EAE\u63A8\u8350\u9879\uFF1B\u9876\u90E8\u52A0\u4E00\u884C callout \u8BF4\u660E\u7ED3\u8BBA\u3002","tpl.compare.demo.title":"\u65B9\u6848\u5BF9\u6BD4\uFF08\u793A\u4F8B\uFF09","tpl.compare.demo.conclusion":"\u7ED3\u8BBA","tpl.compare.demo.body":"\u65B9\u6848 B \u7EFC\u5408\u6700\u4F18\uFF1A\u6210\u672C\u4E2D\u3001\u590D\u6742\u5EA6\u4F4E\u3001\u98CE\u9669\u4F4E\u3002","tpl.compare.demo.dimension":"\u7EF4\u5EA6","tpl.compare.demo.optionA":"\u65B9\u6848 A","tpl.compare.demo.optionB":"\u65B9\u6848 B \u2605","tpl.compare.demo.optionC":"\u65B9\u6848 C","tpl.compare.demo.cost":"\u6210\u672C","tpl.compare.demo.complexity":"\u590D\u6742\u5EA6","tpl.compare.demo.risk":"\u98CE\u9669","tpl.compare.demo.payoff":"\u6536\u76CA","tpl.compare.demo.high":"\u9AD8","tpl.compare.demo.medium":"\u4E2D","tpl.compare.demo.low":"\u4F4E","tpl.compare.demo.large":"\u5927","tpl.compare.demo.small":"\u5C0F","tpl.steps.name":"\u4E94\u6B65\u4E0A\u624B\u6D41\u7A0B","tpl.steps.desc":"\u5173\u952E\u6B65\u9AA4\u6392\u6210\u65F6\u95F4\u7EBF\uFF0C\u6BCF\u6B65\u4E00\u53E5\u8981\u70B9\uFF0C\u9002\u5408\u6559\u7A0B/\u4EA4\u63A5/\u53D1\u5E03\u6D41\u7A0B\u3002","tpl.steps.instruction":"\u8BF7\u7528 dsh-ui \u628A\u64CD\u4F5C\u6B65\u9AA4\u505A\u6210 steps \u6559\u7A0B\uFF1A5 \u6B65\uFF08\u6309\u5B9E\u9645\u6D41\u7A0B\uFF09\uFF0C\u6BCF\u6B65\u6807\u9898 + \u4E00\u4E24\u53E5\u8981\u70B9\uFF0C\u9876\u90E8\u7528 badge \u6807\u51FA\u9884\u8BA1\u8017\u65F6\u3002","tpl.steps.demo.title":"\u4E0A\u624B\u6D41\u7A0B\uFF08\u793A\u4F8B\uFF09","tpl.steps.demo.badge":"\u7EA6 5 \u5206\u949F","tpl.steps.demo.s1":"\u5B89\u88C5\u63D2\u4EF6","tpl.steps.demo.s1desc":"\u4ECE\u63D2\u4EF6\u4E2D\u5FC3\u5B89\u88C5\uFF0C\u6216 npm \u5B89\u88C5\u5230 profile","tpl.steps.demo.s2":"\u53D1\u9001\u7B2C\u4E00\u6761\u6307\u4EE4","tpl.steps.demo.s2desc":"\u8BA9\u6A21\u578B\u7528 dsh-ui \u8F93\u51FA\u4E00\u4E2A\u754C\u9762","tpl.steps.demo.s3":"\u4F53\u9A8C\u4EA4\u4E92","tpl.steps.demo.s3desc":"\u70B9\u6309\u94AE/\u5224\u5377/\u5207 tab\uFF0C\u52A8\u4F5C\u4F1A\u56DE\u4F20\u6A21\u578B","tpl.steps.demo.s4":"\u5E38\u9A7B\u9762\u677F","tpl.steps.demo.s4desc":"\u6A21\u578B\u7528 panel:true \u628A\u7ED3\u679C\u9489\u5728\u4F1A\u8BDD\u9762\u677F","tpl.steps.demo.s5":"\u8FDB\u9636\u7EC4\u4EF6","tpl.steps.demo.s5desc":"\u56FE\u8868/\u6D41\u7A0B/3D \u6309\u9700\u61D2\u52A0\u8F7D","tpl.quiz.name":"\u968F\u5802\u6D4B\u9A8C","tpl.quiz.desc":"\u4E00\u9898\u4E00\u7B54\u5373\u65F6\u5224\u5377\uFF1A\u9009\u4E2D\u5373\u77E5\u5BF9\u9519\uFF0C\u9644\u8BB2\u89E3\uFF0C\u9002\u5408\u57F9\u8BAD\u95EE\u7B54\u3002","tpl.quiz.instruction":"\u8BF7\u7528 dsh-ui \u51FA 3 \u9053\u968F\u5802\u6D4B\u9A8C\uFF08quiz \u7EC4\u4EF6\uFF1Aquestion + options\uFF0C\u5176\u4E2D\u4E00\u9879 correct\uFF0C\u9644 explanation\uFF09\uFF0C\u6807\u9898\u300C\u968F\u5802\u6D4B\u9A8C\u300D\uFF0C\u6BCF\u9898\u5373\u9009\u5373\u8BC4\u3002","tpl.quiz.demo.title":"\u968F\u5802\u6D4B\u9A8C\uFF08\u793A\u4F8B\uFF09","tpl.quiz.demo.hint":"\u9009\u4E2D\u5373\u5224\u5377\u5E76\u663E\u793A\u8BB2\u89E3\u3002","tpl.quiz.demo.q1":"DSH \u63D2\u4EF6\u7684\u6700\u5C0F\u5355\u4F4D\u662F\uFF1F","tpl.quiz.demo.q1a":"\u670D\u52A1","tpl.quiz.demo.q1b":"\u63D2\u4EF6\uFF08cordis \u63D2\u4EF6\uFF09","tpl.quiz.demo.q1bfx":"\u2713 \u4E00\u5207\u7686\u63D2\u4EF6\uFF1A\u670D\u52A1\u3001\u5DE5\u5177\u3001UI \u90FD\u901A\u8FC7\u63D2\u4EF6\u6CE8\u518C\u3002","tpl.quiz.demo.q1c":"\u5DE5\u5177","tpl.quiz.demo.q1exp":"DSH \u57FA\u4E8E cordis\uFF0C\u4EFB\u4F55\u80FD\u529B\uFF08\u542B\u670D\u52A1\u4E0E\u5DE5\u5177\uFF09\u90FD\u4EE5\u63D2\u4EF6\u5F62\u5F0F\u6CE8\u518C\u3002","tpl.quiz.demo.q2":"dsh-ui \u56F4\u680F\u7531\u8C01\u8F93\u51FA\uFF1F","tpl.quiz.demo.q2a":"\u7528\u6237","tpl.quiz.demo.q2b":"\u6A21\u578B","tpl.quiz.demo.q2bfx":"\u2713 \u6A21\u578B\u5728\u56DE\u590D\u4E2D\u8F93\u51FA dsh-ui fence\u3002","tpl.quiz.demo.q2c":"\u5BBF\u4E3B","tpl.quiz.demo.q2exp":"\u6A21\u578B\u8F93\u51FA fence\uFF0C\u6E32\u67D3\u5668\u5C06\u5176\u753B\u6210\u771F\u5B9E\u7EC4\u4EF6\u3002","tpl.quiz.demo.q3":"panel:true \u7684\u56F4\u680F\u6E32\u67D3\u5230\u54EA\u91CC\uFF1F","tpl.quiz.demo.q3a":"\u6D88\u606F\u6D41","tpl.quiz.demo.q3b":"\u4F1A\u8BDD\u9762\u677F dock","tpl.quiz.demo.q3bfx":"\u2713 \u9762\u677F\u66F4\u65B0\u4E0D\u5237\u5C4F\u3002","tpl.quiz.demo.q3c":"\u8BBE\u7F6E\u9875","tpl.stats.name":"\u5173\u952E\u503C + \u8FDB\u5EA6","tpl.stats.desc":"\u4E00\u6B21\u4EA4\u4ED8\uFF1A\u6570\u503C\u3001\u8FDB\u5EA6\u3001\u91CC\u7A0B\u7891\u4E09\u4EF6\u5957\uFF0C\u5468\u62A5/\u590D\u76D8\u901A\u7528\u3002","tpl.stats.instruction":"\u8BF7\u7528 dsh-ui \u603B\u7ED3\u672C\u5468\u5173\u952E\u6570\u636E\uFF1Akeyvalue \u5217 3 \u7EC4\u5173\u952E\u503C\u3001\u4E24\u6839 progress \u8FDB\u5EA6\uFF08\u8BA1\u5212 vs \u5B9E\u9645\uFF09\u3001timeline \u653E 3 \u4E2A\u91CC\u7A0B\u7891\uFF0C\u6807\u9898\u300C\u5468\u62A5\u901F\u89C8\u300D\u3002","tpl.stats.demo.title":"\u5468\u62A5\u901F\u89C8\uFF08\u793A\u4F8B\uFF09","tpl.stats.demo.done":"\u5B8C\u6210\u9879","tpl.stats.demo.late":"\u5EF6\u671F","tpl.stats.demo.risk":"\u98CE\u9669","tpl.stats.demo.riskValue":"2\uFF08\u5747\u5DF2\u6709\u7F13\u89E3\uFF09","tpl.stats.demo.planned":"\u8BA1\u5212\u8FDB\u5EA6","tpl.stats.demo.actual":"\u5B9E\u9645\u8FDB\u5EA6","tpl.stats.demo.mon":"\u5468\u4E00","tpl.stats.demo.monDesc":"\u5B8C\u6210 M1 \u5F00\u53D1","tpl.stats.demo.wed":"\u5468\u4E09","tpl.stats.demo.wedDesc":"\u5168\u94FE\u8DEF\u9A8C\u8BC1\u901A\u8FC7","tpl.stats.demo.fri":"\u5468\u4E94","tpl.stats.demo.friDesc":"\u53D1\u5E03 0.9.4","tpl.chart.name":"\u8D8B\u52BF\u67F1\u72B6\u56FE","tpl.chart.desc":"\u6570\u636E\u76F4\u63A5\u753B\u6210\u67F1\u72B6\u56FE\uFF0C\u591A\u5E8F\u5217\u5BF9\u6BD4\uFF0C\u8D70\u52BF\u4E00\u773C\u770B\u6E05\u3002","tpl.chart.instruction":"\u8BF7\u7528 dsh-ui \u628A\u4E0B\u5217\u6570\u636E\u753B\u6210 chart\uFF08bars\uFF0C\u591A\u5E8F\u5217\uFF09\uFF1A\u8FD1 6 \u5468\u5B8C\u6210\u91CF vs \u8BA1\u5212\u91CF\uFF1B\u56FE\u8868\u4E0A\u65B9\u7ED9\u4E00\u53E5\u8D8B\u52BF\u7ED3\u8BBA\u3002","tpl.chart.demo.title":"\u8D8B\u52BF\u5BF9\u6BD4\uFF08\u793A\u4F8B\uFF09","tpl.chart.demo.conclusion":"\u7ED3\u8BBA\uFF1A\u8FD1 3 \u5468\u5B8C\u6210\u91CF\u8FDE\u7EED\u4E0A\u5347\uFF0C\u672C\u5468\u9996\u6B21\u53CD\u8D85\u8BA1\u5212\u3002","tpl.tabs.name":"\u5206\u6807\u7B7E\u9875","tpl.tabs.desc":"\u4E00\u5927\u5757\u5185\u5BB9\u62C6\u6210\u6807\u7B7E\u9875\uFF0C\u951A\u70B9\u6E05\u6670\uFF1B\u9762\u677F\u4E0D\u6324\u3001\u6D88\u606F\u4E0D\u5237\u5C4F\u3002","tpl.tabs.instruction":"\u8BF7\u7528 dsh-ui \u628A\u5185\u5BB9\u5206\u6210 tabs \u4E09\u4E2A\u6807\u7B7E\uFF1A\u6982\u89C8/\u660E\u7EC6/FAQ\uFF0C\u6BCF\u4E2A\u6807\u7B7E 3 \u6761\u4EE5\u5185\u8981\u70B9\uFF1B\u6807\u9898\u300C\u529F\u80FD\u901F\u89C8\u300D\u3002","tpl.tabs.demo.title":"\u529F\u80FD\u901F\u89C8\uFF08\u793A\u4F8B\uFF09","tpl.tabs.demo.overview":"\u6982\u89C8","tpl.tabs.demo.overviewBody":"\u4E09\u9879\u80FD\u529B\uFF1A\u5B9E\u65F6\u6E32\u67D3\u3001\u4EA4\u4E92\u56DE\u4F20\u3001\u5E38\u9A7B\u9762\u677F\u3002","tpl.tabs.demo.details":"\u660E\u7EC6","tpl.tabs.demo.d1":"\u6E32\u67D3\uFF1Afence \u589E\u91CF\u89E3\u6790\uFF0C\u8FB9\u6D41\u8FB9\u51FA","tpl.tabs.demo.d2":"\u4EA4\u4E92\uFF1A\u52A8\u4F5C\u56DE\u4F20\u6A21\u578B\u589E\u91CF\u66F4\u65B0","tpl.tabs.demo.d3":"\u9762\u677F\uFF1A\u4F1A\u8BDD\u7EA7 dock\uFF0C\u6298\u53E0/\u8C03\u9AD8","tpl.tabs.demo.faqBody":"\u95EE\uFF1A\u4E0D\u52A8\u6A21\u578B\u4F1A\u600E\u6837\uFF1F\u7B54\uFF1A\u7EC4\u4EF6\u4ECD\u53EF\u672C\u5730\u5224\u5377/\u5C55\u5F00\u3002","tpl.checklist.name":"\u4EA4\u4ED8\u68C0\u67E5\u6E05\u5355","tpl.checklist.desc":"\u63D0\u4EA4\u524D\u9010\u9879\u6253\u52FE\uFF1A\u6E05\u5355\u5373\u6D41\u7A0B\uFF0C\u6F0F\u9879\u770B\u5F97\u89C1\u3002","tpl.checklist.instruction":"\u8BF7\u7528 dsh-ui \u505A\u4E00\u5F20\u4EA4\u4ED8\u68C0\u67E5\u6E05\u5355\uFF1A6 \u9879\uFF08\u6D4B\u8BD5/\u6587\u6863/\u53D1\u5E03/\u56DE\u6EDA/\u76D1\u63A7/\u516C\u544A\uFF09\uFF0Ccheckbox \u53EF\u52FE\u9009\uFF0C\u9876\u90E8 badge \u63D0\u793A\u300C\u5168\u90E8\u52FE\u9009\u518D\u5408\u5E76\u300D\u3002","tpl.checklist.demo.title":"\u4EA4\u4ED8\u6E05\u5355\uFF08\u793A\u4F8B\uFF09","tpl.checklist.demo.badge":"\u5168\u90E8\u52FE\u9009\u518D\u5408\u5E76","tpl.checklist.demo.c1":"\u5355\u5143\u6D4B\u8BD5\u901A\u8FC7","tpl.checklist.demo.c2":"\u6587\u6863\u540C\u6B65","tpl.checklist.demo.c3":"\u53D1\u5E03\u5957\u9910\u5C31\u7EEA","tpl.checklist.demo.c4":"\u56DE\u6EDA\u9884\u6848","tpl.accordion.name":"FAQ \u624B\u98CE\u7434","tpl.accordion.desc":"\u4E00\u95EE\u4E00\u7B54\u6536\u5728\u6298\u53E0\u9762\u677F\u91CC\uFF0C\u957F\u6587\u6863\u53D8\u77ED\uFF0C\u56DE\u7B54\u4E0D\u5413\u4EBA\u3002","tpl.accordion.instruction":"\u8BF7\u7528 dsh-ui \u505A FAQ \u624B\u98CE\u7434\uFF08accordion\uFF09\uFF1A5 \u4E2A\u9AD8\u9891\u95EE\u9898\uFF0C\u6807\u9898\u680F\u5C31\u662F\u95EE\u9898\u3001\u5C55\u5F00\u4E00\u6761\u7ED9\u7B54\u6848\uFF1B\u7B2C\u4E00\u95EE\u9ED8\u8BA4\u5C55\u5F00\u3002","tpl.accordion.demo.title":"FAQ\uFF08\u793A\u4F8B\uFF09","tpl.accordion.demo.q1":"\u652F\u6301\u54EA\u4E9B\u56FE\u8868\uFF1F","tpl.accordion.demo.a1":"chart\uFF08bars/line/donut\uFF09\u3001plot \u51FD\u6570\u56FE\u3001echart \u5168\u529F\u80FD\u56FE\u8868\u3002","tpl.accordion.demo.q2":"\u9762\u677F\u80FD\u6301\u4E45\u5417\uFF1F","tpl.accordion.demo.a2":"\u540C\u4E00\u5185\u5BB9\u6307\u7EB9\u5237\u65B0/\u91CD\u653E\u6062\u590D\u72B6\u6001\uFF1B\u65B0\u5185\u5BB9\u91CD\u7F6E\u3002","tpl.accordion.demo.q3":"\u4EA4\u4E92\u4F1A\u6253\u6270\u6A21\u578B\u5417\uFF1F","tpl.accordion.demo.a3":"\u5E26 action \u7684\u7EC4\u4EF6\u624D\u56DE\u4F20\uFF1B\u7EAF\u5C55\u793A\u7EC4\u4EF6\u96F6\u5F80\u8FD4\u3002","tpl.diagram.name":"\u7CFB\u7EDF\u67B6\u6784\u56FE","tpl.diagram.desc":"\u6846\u67B6\u56FE\u753B\u6210 SVG\uFF1A\u8282\u70B9\u5206\u5C42\u3001\u8FDE\u63A5\u7EBF\u3001\u5206\u533A\u6807\u6CE8\uFF0C\u6BD4\u622A\u56FE\u6E05\u695A\u3002","tpl.diagram.instruction":"\u8BF7\u7528 dsh-ui \u753B\u4E00\u5E45\u67B6\u6784\u56FE\uFF08diagram\uFF09\uFF1A\u63CF\u8FF0\u5F53\u524D\u7CFB\u7EDF\u7684 5 \u4E2A\u8282\u70B9\u4E0E\u8FDE\u63A5\uFF08kind: architecture \u6216 flowchart\uFF09\uFF0C\u5305\u542B\u4E00\u4E2A\u5B89\u5168\u533A zone\u3002","tpl.diagram.demo.title":"\u67B6\u6784\u56FE\uFF08\u793A\u4F8B\uFF09","tpl.diagram.demo.caption":"DSH \u63D2\u4EF6\u94FE\u8DEF","tpl.diagram.demo.model":"\u6A21\u578B","tpl.diagram.demo.plugin":"\u63D2\u4EF6","tpl.diagram.demo.host":"\u5BBF\u4E3B","tpl.3d.name":"3D \u573A\u666F","tpl.3d.desc":"\u4E00\u4E2A\u53EF\u65CB\u8F6C\u7684 3D \u573A\u666F\uFF1A\u4EA7\u54C1\u6F14\u793A/\u7A7A\u95F4\u793A\u610F\u7528\u5F97\u4E0A\u3002","tpl.3d.instruction":"\u8BF7\u7528 dsh-ui \u6E32\u67D3\u4E00\u4E2A 3D \u573A\u666F\uFF08scene3d\uFF09\uFF1A\u4E00\u4E2A\u7ACB\u65B9\u4F53 + \u4E00\u4E2A\u7403\u4F53\uFF0C\u6807\u9898\u300C\u793A\u4F8B\u573A\u666F\u300D\uFF0C\u9644\u4E00\u53E5\u4F7F\u7528\u573A\u666F\u8BF4\u660E\u3002","tpl.3d.demo.title":"3D \u573A\u666F\uFF08\u793A\u4F8B\uFF09","tpl.3d.demo.note":"\u9996\u6B21\u52A0\u8F7D\u9700\u4E0B\u8F7D three.js\uFF08\u7EA6 700KB\uFF0C\u61D2\u52A0\u8F7D\uFF09\uFF0C\u4E4B\u540E\u8D70\u7F13\u5B58\u3002","tpl.3d.demo.scene":"\u793A\u4F8B\u573A\u666F","tpl.breadcrumb.name":"\u8DEF\u5F84\u9762\u5305\u5C51","tpl.breadcrumb.desc":"\u957F\u8DEF\u5F84\u62C6\u6210\u9762\u5305\u5C51\uFF1A\u6587\u4EF6\u4F4D\u7F6E\u3001\u7EC4\u7EC7\u5C42\u7EA7\u4E00\u8BFB\u5C31\u61C2\u3002","tpl.breadcrumb.instruction":"\u8BF7\u7528 dsh-ui \u5C55\u793A\u5F53\u524D\u5DE5\u4F5C\u533A\u7ED3\u6784\uFF1Abreadcrumb \u663E\u793A\u6587\u4EF6\u8DEF\u5F84\uFF084 \u6BB5\uFF09\u3001file-tree \u63CF\u8FF0\u9879\u76EE\u76EE\u5F55\uFF083 \u4E2A\u76EE\u5F55\u3001\u6BCF\u4E2A 2 \u4E2A\u5B50\u9879\uFF09\u3002","tpl.breadcrumb.demo.title":"\u76EE\u5F55\u7ED3\u6784\uFF08\u793A\u4F8B\uFF09","tpl.breadcrumb.demo.workspace":"\u5DE5\u4F5C\u533A","ach.page.title":"GenUI \u63A2\u7D22\u6210\u5C31","ach.stat.unlocked":"\u5DF2\u89E3\u9501","ach.stat.rendered":"\u6E32\u67D3\u754C\u9762","ach.stat.interactions":"\u7EC4\u4EF6\u4EA4\u4E92","ach.progress":"\u63A2\u7D22\u8FDB\u5EA6","ach.rarity.common":"\u666E\u901A","ach.rarity.rare":"\u7A00\u6709","ach.rarity.legendary":"\u4F20\u8BF4","ach.hidden.name":"\uFF1F","ach.hidden.desc":"\u7EE7\u7EED\u63A2\u7D22\u4EE5\u63ED\u793A","ach.toast.unlocked":"\u6210\u5C31\u89E3\u9501\uFF1A{name}","ach.first-fence.name":"\u521D\u6B21\u76F8\u89C1","ach.first-fence.desc":"\u6E32\u67D3\u4E86\u7B2C\u4E00\u5757 GenUI \u754C\u9762\u3002","ach.fence-5.name":"\u6E10\u5165\u4F73\u5883","ach.fence-5.desc":"\u7D2F\u8BA1\u6E32\u67D3 5 \u4E2A\u754C\u9762\u3002","ach.fence-25.name":"\u754C\u9762\u7F16\u7EC7\u8005","ach.fence-25.desc":"\u7D2F\u8BA1\u6E32\u67D3 25 \u4E2A\u754C\u9762\u3002","ach.fence-50.name":"\u84DD\u56FE\u4E4B\u9B42","ach.fence-50.desc":"\u7D2F\u8BA1\u6E32\u67D3 50 \u4E2A\u754C\u9762\u2014\u2014\u4F60\u662F GenUI \u7684\u8001\u670B\u53CB\u4E86\u3002","ach.first-interaction.name":"\u6309\u94AE\u6309\u5F97\u52A8","ach.first-interaction.desc":"\u89E6\u53D1\u4E86\u4E00\u6B21\u7EC4\u4EF6\u4EA4\u4E92\uFF08\u52A8\u4F5C\u56DE\u4F20\uFF09\u3002","ach.interaction-10.name":"\u5C0F\u5C0F\u64CD\u7EB5\u8005","ach.interaction-10.desc":"\u7D2F\u8BA1\u89E6\u53D1 10 \u6B21\u7EC4\u4EF6\u4EA4\u4E92\u3002","ach.first-panel.name":"\u9489\u5728\u5899\u4E0A","ach.first-panel.desc":"\u7B2C\u4E00\u6B21\u628A\u5185\u5BB9\u9489\u8FDB\u4E86\u4F1A\u8BDD\u9762\u677F\u3002","ach.panel-5.name":"\u9762\u677F\u7BA1\u5BB6","ach.panel-5.desc":"5 \u4E2A\u4F1A\u8BDD\u90FD\u7528\u8FC7\u9762\u677F\u3002","ach.first-chart.name":"\u56FE\u8868\u7231\u597D\u8005","ach.first-chart.desc":"\u6E32\u67D3\u4E86\u7B2C\u4E00\u5F20\u56FE\u8868\uFF08chart/plot/echart\uFF09\u3002","ach.chart-10.name":"\u6570\u636E\u53EF\u89C6\u5316\u4EBA","ach.chart-10.desc":"10 \u4E2A\u754C\u9762\u91CC\u51FA\u73B0\u8FC7\u56FE\u8868\u3002","ach.first-advanced.name":"\u9AD8\u7EA7\u73A9\u5BB6","ach.first-advanced.desc":"\u7528\u4E0A\u4E86 3D/\u56FE\u8868\u5F15\u64CE/\u67B6\u6784\u56FE\u4E4B\u4E00\u3002","ach.template-1.name":"\u6A21\u677F\u5B66\u5458","ach.template-1.desc":"\u4ECE\u6A21\u677F\u4E2D\u5FC3\u8BD5\u7528\u4E86\u4E00\u4E2A\u6A21\u677F\u3002","label.copy":"\u590D\u5236","label.copied":"\u590D\u5236\u6210\u529F","label.copiedDone":"\u5DF2\u590D\u5236","label.copiedShort":"\u2713 \u5DF2\u590D\u5236","label.copiedToClipboard":"\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F","label.copyFailed":"\u590D\u5236\u5931\u8D25","label.code":"\u4EE3\u7801","label.wrap":"\u81EA\u52A8\u6362\u884C","label.unwrap":"\u53D6\u6D88\u81EA\u52A8\u6362\u884C","label.collapse":"\u6536\u8D77","label.collapseDiff.aria":"\u6536\u8D77\u5DEE\u5F02","label.expandDiff.aria":"\u5C55\u5F00\u5176\u4F59 {hidden} \u884C\u5DEE\u5F02","label.expandDiff":"\u2026 \u5176\u4F59 {hidden} \u884C","label.diffFiles":"{count} \u4E2A\u6587\u4EF6","label.copyValue":"\u590D\u5236\u503C","label.copyJson":"\u590D\u5236 JSON","label.copyPath":"\u590D\u5236\u5C5E\u6027\u8DEF\u5F84","label.copyPrettyJson":"\u590D\u5236\u683C\u5F0F\u5316 JSON","label.copyCompactJson":"\u590D\u5236\u7D27\u51D1 JSON","label.collapseNode":"\u6536\u8D77 JSON \u8282\u70B9","label.expandNode":"\u5C55\u5F00 JSON \u8282\u70B9","label.copyButtonTitle":"{action}\uFF1B\u53F3\u952E\u67E5\u770B\u590D\u5236\u9009\u9879","block.copyMarkdown":"\u590D\u5236 Markdown","block.copyCsv":"\u590D\u5236 CSV","block.table.expandDetails":"\u5C55\u5F00 {label} \u7684\u660E\u7EC6","block.table.collapseDetails":"\u6536\u8D77 {label} \u7684\u660E\u7EC6","block.table.expandGroup":"\u5C55\u5F00\u5206\u7EC4 {label}","block.table.collapseGroup":"\u6536\u8D77\u5206\u7EC4 {label}","block.total":"\u5408\u8BA1","block.filteredRows":"\u7B5B\u9009\u540E {visible} / {total} \u884C","block.filterMatch":"\u5339\u914D {shown} / {total} \u9879","block.triggered":"\u2713 \u5DF2\u89E6\u53D1","block.triggeredPlain":"\u5DF2\u89E6\u53D1","block.audio":"\u97F3\u9891","block.audioError":"\u97F3\u9891\u65E0\u6CD5\u64AD\u653E","block.video":"\u89C6\u9891","block.videoError":"\u89C6\u9891\u65E0\u6CD5\u64AD\u653E","block.image":"\u56FE\u7247","block.imageError":"\u56FE\u7247\u65E0\u6CD5\u52A0\u8F7D","block.svgLabel":"SVG \u56FE\u5F62","block.svgPreview":"\u9884\u89C8","block.svgSource":"\u6E90\u7801","block.svgError":"SVG \u65E0\u6CD5\u663E\u793A\uFF0C\u5DF2\u964D\u7EA7\u663E\u793A\u6E90\u7801","block.mermaidError":"\u56FE\u8868\u6E32\u67D3\u5931\u8D25\uFF0C\u5DF2\u663E\u793A\u6E90\u7801","block.mermaidLoading":"\u6E32\u67D3\u4E2D\u2026","block.scene3dLoading":"\u52A0\u8F7D 3D \u573A\u666F\u2026","block.scene3dError":"3D \u6E32\u67D3\u5931\u8D25","block.quizCorrect":"\u2713 \u56DE\u7B54\u6B63\u786E\uFF01","block.quizWrong":"\u2717 \u518D\u60F3\u60F3\u770B","block.quizRetry":"\u91CD\u65B0\u4F5C\u7B54","block.selectPlaceholder":"\u8BF7\u9009\u62E9\u2026","block.score":"\u5F97\u5206","block.scoreUngraded":"\uFF08{count} \u9898\u65E0\u7B54\u6848\u672A\u8BA1\u5206\uFF09","block.yourAnswer":"\u4F60\u7684\u7B54\u6848\uFF1A","block.correctAnswer":" \u6B63\u786E\u7B54\u6848\uFF1A","block.selectedCount":"\u5DF2\u9009 {answered}/{total}","block.target":"\u76EE\u6807 {value}%","block.chart.barsAria":"\u6A2A\u5411\u67F1\u72B6\u56FE\uFF0C{count} \u7EC4","block.chart.barsSummary":"\u67F1\u72B6\u56FE\uFF0C{count} \u7EC4\uFF0C\u6700\u5927 {max}","block.chart.lineSeries":"\u6298\u7EBF\u56FE\uFF0C{count} \u6761\u5E8F\u5217\uFF0C\u8303\u56F4 {min} \u5230 {max}","block.chart.linePoints":"\u6298\u7EBF\u56FE\uFF0C{count} \u4E2A\u70B9\uFF0C\u8303\u56F4 {min} \u5230 {max}","block.chart.donutSummary":"\u73AF\u5F62\u56FE\uFF0C{count} \u9879\uFF0C\u5408\u8BA1 {total}","block.chart.node":"\u8282\u70B9","err.boundary.generic":"\u6B64\u754C\u9762","err.boundary.fence":"\u8BE5\u754C\u9762","err.boundary.body":"\u26A0\uFE0F {label}\u6E32\u67D3\u5931\u8D25\uFF08\u5DF2\u9694\u79BB\uFF0C\u4E0D\u5F71\u54CD\u5176\u4ED6\u5185\u5BB9\uFF09","err.fieldValidation":"GenUI \u5B57\u6BB5\u9A8C\u8BC1\u5931\u8D25\uFF1A{errors}","err.chartValidation":"chart \u5B57\u6BB5\u9A8C\u8BC1\u5931\u8D25\uFF1A{errors}","err.fenceKeptAsCode":"\u26A0\uFE0F dsh-ui {diagnostic} \u2014\u2014 \u56F4\u680F\u4FDD\u6301\u4E3A\u4EE3\u7801\u5757\uFF1B\u8BF7\u4FEE\u6B63\u540E\u91CD\u53D1\u3002","err.fenceParse":"\u26A0\uFE0F dsh-ui fence JSON \u89E3\u6790\u5931\u8D25{diagnostic} \u2014\u2014 \u56F4\u680F\u4FDD\u6301\u4E3A\u4EE3\u7801\u5757\uFF1B\u8BF7\u8BA9\u6A21\u578B\u68C0\u67E5\u5E76\u4FEE\u590D JSON \u540E\u91CD\u53D1\u3002"};var Gl="en",Rd=["en","zh"],Bg={en:Og,zh:Fg};function Dd(e){if(typeof e!="string"||e==="")return;let t=e.toLowerCase().split(/[-_]/)[0];return Rd.find(r=>r===t)}function qg(){if(typeof navigator>"u")return Gl;let e=navigator,t=Array.isArray(e.languages)&&e.languages.length>0?e.languages:[e.language];for(let r of t){let n=Dd(r);if(n!==void 0)return n}return Gl}var Pl=qg(),Hg=0,Ed=new Set;function $d(){return Pl}function Ol(){return Hg}function Ld(e){return Ed.add(e),()=>{Ed.delete(e)}}function Fl(e){let t=Dd(e);if(!(t===void 0||t===Pl)){Pl=t,Hg+=1;for(let r of[...Ed])r()}}function ub(e,t){return t===void 0?e:e.replace(/\{(\w+)\}/g,(r,n)=>{let a=t[n];return a===void 0?r:String(a)})}function re(e,t){let r=Bg[Pl][e]??Bg[Gl][e]??e;return ub(r,t)}function tt(){return(0,_g.useSyncExternalStore)(Ld,Ol,Ol),re}function jg(){return $d()}var Jn=ie(_e(),1);var Wg=ie(_e(),1),Ug=Wg.default.createElement,Vg={copy:["M9 8h11v13H9z","M15 8V3H4v13h5"],external:["M14 4h6v6M20 4l-9 9","M10 4H4v16h16v-6"],file:["M14 3H5v18h14V8l-5-5Z","M14 3v5h5M8 13h8M8 17h5"],globe:["M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z","M3 12h18M12 3c-5 5-5 13 0 18 5-5 5-13 0-18Z"],sparkles:["m12 3 2.4 6.6L21 12l-6.6 2.4L12 21l-2.4-6.6L3 12l6.6-2.4L12 3Z","M20 2v4M18 4h4"],sliders:["M4 7h6m4 0h6M4 17h10m4 0h2","M10 4v6m4 4v6"],layers:["m12 3 9 5-9 5-9-5 9-5Z","m3 12 9 5 9-5M3 16l9 5 9-5"],chart:["M4 3v17h17M8 15v-4m5 4V7m5 8v-6"],gauge:["M5 18a9 9 0 1 1 14 0","m12 13 4-5M8 18h8"],cpu:["M8 3v3m4-3v3m4-3v3M8 18v3m4-3v3m4-3v3M3 8h3m-3 4h3m-3 4h3m12-8h3m-3 4h3m-3 4h3","M6 6h12v12H6zM9 9h6v6H9z"],database:["M4 6c0-4 16-4 16 0s-16 4-16 0Z","M4 6v12c0 4 16 4 16 0V6M4 12c0 4 16 4 16 0"],info:["M12 11v6M12 7h.01","M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"],check:["m5 12 4 4L19 6"],warning:["m12 3 10 18H2L12 3Z","M12 9v5m0 3h.01"],arrow:["M4 12h16m-6-6 6 6-6 6"],target:["M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z","M17 12a5 5 0 1 1-10 0 5 5 0 0 1 10 0ZM12 11v2"]};function Kg({name:e="info",className:t=""}){return Ug("svg",{className:`dgui-icon ${t}`,width:18,height:18,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.65,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0,focusable:!1},(Vg[e]??Vg.info).map((r,n)=>Ug("path",{key:n,d:r})))}var zr=Jn.default.createElement;async function db(e){try{if(typeof navigator.clipboard?.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}let t=document.activeElement,r=window.getSelection(),n=r?Array.from({length:r.rangeCount},(i,s)=>r.getRangeAt(s).cloneRange()):[],a=document.createElement("textarea");a.value=e,a.readOnly=!0,a.style.cssText="position:fixed;left:-10000px;top:0;opacity:0",document.body.append(a);try{return a.select(),document.execCommand("copy")===!0}catch{return!1}finally{if(a.remove(),t?.focus?.({preventScroll:!0}),r){r.removeAllRanges();for(let i of n)try{r.addRange(i)}catch{}}}}var pb=`
|
|
269
|
+
`);else if(d.startsWith("`"))i.push((0,Mr.createElement)("code",{key:o++,className:y.inlineCode},d.slice(1,-1)));else if(d==="\\$"||d==="\\\\")i.push(d.slice(1));else if(d.startsWith("$")||d.startsWith("\\(")||d.startsWith("\\[")){let p=d.startsWith("$$")||d.startsWith("\\["),m=d.startsWith("$")&&!p?1:2;i.push((0,Mr.createElement)(sb,{key:o++,source:d.slice(m,-m),display:p}))}else if(d.startsWith("**")||d.startsWith("==")){let p=d.startsWith("**");i.push((0,Mr.createElement)(p?"strong":"mark",{key:o++,className:p?y.inlineStrong:y.inlineMark},q(d.slice(2,-2),t,r+1)))}else{let p=/^\[([^\]\n]+)\]\(([^)\s]+)\)$/.exec(d);if(p===null)i.push(d);else{let m=ci(p[2]),g=q(p[1],!1,r+1);m.type==="external"&&t===!0?i.push((0,Mr.createElement)("a",{key:o++,className:y.inlineLink,href:m.href,target:"_blank",rel:"noreferrer noopener"},g)):m.type==="file"&&t!==!1?i.push((0,Mr.createElement)(Il,{key:o++,path:m.file.path,label:p[1],...m.file.line===void 0?{}:{line:m.file.line}},g)):i.push(g)}}s=u+d.length}return s<e.length&&i.push(e.slice(s)),i.length===0?e:i}var Re=ie(_e(),1);var Hl=ie(_e(),1);var As=ie(_e());var _g=ie(_e(),1);var Og={"artifact.export":"Export","artifact.exportHtml":"HTML","artifact.exportJson":"GenUI JSON","artifact.exportFailed":"Export failed. Try again.","artifact.unsupportedCustom":"Cannot export HTML because the standalone runtime cannot render custom components: {types}. Export GenUI JSON to preserve these nodes.","artifact.externalMediaNotice":"External media may not appear when this file is opened offline.","panel.badge":"Panel","panel.title.default":"GenUI panel","panel.title.explore":"GenUI explorer","panel.templates":"Templates","panel.templates.aria":"Template center","panel.templates.title":"Template center: preview and try GenUI examples","panel.achievements":"Trophies","panel.achievements.aria":"Exploration trophies","panel.achievements.title":"Exploration trophies: badges and progress","panel.close.aria":"Close panel","panel.resize.aria":"Resize panel height","panel.hint":"\u{1F4A1} This is the GenUI session panel \u2014 hit \u201CTemplates\u201D above to browse runnable examples","panel.boundary":"panel","panel.flash.inserted":"Instruction inserted into the composer \u2014 send it to generate","panel.cmd.hint":"Open the GenUI panel; /panel <instruction> to customize; /panel clear to empty","panel.cmd.description":"Open the GenUI panel (/panel clear empties it; /panel <instruction> tailors the content)","panel.default.heading":"GenUI generative interface","panel.default.subtitle":"The panel updates in place: say \u201Cupdate the panel\u201D in chat, or run /panel again to refresh.","panel.default.stat.components":"Components","panel.default.stat.single":"Primitives","panel.default.stat.composite":"Composites","panel.default.stat.advanced":"Advanced","panel.default.group.single":"Primitives \xD712","panel.default.group.composite":"Composites \xD78","panel.default.group.data":"Data \xD77","panel.default.group.interactive":"Interactive \xD75","panel.default.group.advanced":"Advanced \xD75","panel.default.group.teaching":"Teaching \xD71","panel.default.callout.title":"How to update","panel.default.callout.body":"Say \u201Cupdate the panel\u201D in chat \u2192 the model emits a panel:true fence; /panel clear empties it.","tpl.category.all":"All","tpl.category.dashboard":"Dashboard","tpl.category.data":"Data","tpl.category.flow":"Flow","tpl.category.chart":"Charts","tpl.category.interactive":"Interactive","tpl.category.quiz":"Quiz","tpl.category.advanced":"Advanced","tpl.categories.aria":"Template categories","tpl.try":"Try it: insert into composer","tpl.copy":"Copy instruction","tpl.copied":"\u2713 Copied","tpl.boundary.preview":"template preview","tpl.boundary.achievements":"trophy page","tpl.dashboard.name":"Project dashboard","tpl.dashboard.desc":"Core metrics on one card: numbers, deltas and a progress bar \u2014 the decision at a glance.","tpl.dashboard.instruction":"Use dsh-ui to build a dashboard for this project: 4 key-metric stat cards (with deltas), an overall progress bar, and a list of today\u2019s 3 todos. Title it \u201CProject dashboard\u201D.","tpl.dashboard.demo.title":"Project dashboard (example)","tpl.dashboard.demo.metrics":"This week\u2019s key metrics","tpl.dashboard.demo.done":"Completed","tpl.dashboard.demo.blocked":"Blocked","tpl.dashboard.demo.duration":"Avg. cycle time","tpl.dashboard.demo.coverage":"Coverage","tpl.dashboard.demo.progress":"Overall progress","tpl.dashboard.demo.milestone":"v1.0 milestone","tpl.dashboard.demo.todo":"Today\u2019s todos","tpl.dashboard.demo.todo1":"Review the M1 template-center PR","tpl.dashboard.demo.todo2":"Sync vendor to SSiD","tpl.dashboard.demo.todo3":"Wednesday standup deck","tpl.compare.name":"Option comparison","tpl.compare.desc":"Options scored dimension by dimension \u2014 the contested cells jump out.","tpl.compare.instruction":"Use dsh-ui to turn these options into a comparison table: options A/B/C \xD7 dimensions (cost / complexity / risk / payoff), marking the recommended column; add a callout at the top stating the conclusion.","tpl.compare.demo.title":"Option comparison (example)","tpl.compare.demo.conclusion":"Conclusion","tpl.compare.demo.body":"Option B wins overall: medium cost, low complexity, low risk.","tpl.compare.demo.dimension":"Dimension","tpl.compare.demo.optionA":"Option A","tpl.compare.demo.optionB":"Option B \u2605","tpl.compare.demo.optionC":"Option C","tpl.compare.demo.cost":"Cost","tpl.compare.demo.complexity":"Complexity","tpl.compare.demo.risk":"Risk","tpl.compare.demo.payoff":"Payoff","tpl.compare.demo.high":"High","tpl.compare.demo.medium":"Medium","tpl.compare.demo.low":"Low","tpl.compare.demo.large":"Large","tpl.compare.demo.small":"Small","tpl.steps.name":"Five-step walkthrough","tpl.steps.desc":"Key steps on a timeline, one line each \u2014 for tutorials, handovers and release runbooks.","tpl.steps.instruction":"Use dsh-ui to turn the procedure into a steps walkthrough: 5 steps following the real flow, each with a title and a line or two of detail, with a badge at the top showing the expected duration.","tpl.steps.demo.title":"Getting started (example)","tpl.steps.demo.badge":"About 5 minutes","tpl.steps.demo.s1":"Install the plugin","tpl.steps.demo.s1desc":"From the plugin center, or npm-install it into your profile","tpl.steps.demo.s2":"Send your first instruction","tpl.steps.demo.s2desc":"Ask the model to answer with a dsh-ui interface","tpl.steps.demo.s3":"Try the interaction","tpl.steps.demo.s3desc":"Click a button, grade a quiz, switch a tab \u2014 actions travel back to the model","tpl.steps.demo.s4":"Pin a panel","tpl.steps.demo.s4desc":"The model uses panel:true to pin results to the session panel","tpl.steps.demo.s5":"Advanced components","tpl.steps.demo.s5desc":"Charts, diagrams and 3D load lazily, on demand","tpl.quiz.name":"Pop quiz","tpl.quiz.desc":"Graded the moment you answer: right or wrong plus an explanation \u2014 good for training.","tpl.quiz.instruction":"Use dsh-ui to write 3 pop-quiz questions (quiz component: question + options, exactly one correct, each with an explanation), titled \u201CPop quiz\u201D, graded as soon as an option is picked.","tpl.quiz.demo.title":"Pop quiz (example)","tpl.quiz.demo.hint":"Picking an option grades it instantly and reveals the explanation.","tpl.quiz.demo.q1":"What is the smallest unit of a DSH plugin?","tpl.quiz.demo.q1a":"A service","tpl.quiz.demo.q1b":"A plugin (a cordis plugin)","tpl.quiz.demo.q1bfx":"\u2713 Everything is a plugin: services, tools and UI all register through one.","tpl.quiz.demo.q1c":"A tool","tpl.quiz.demo.q1exp":"DSH is built on cordis: every capability, services and tools included, registers as a plugin.","tpl.quiz.demo.q2":"Who emits a dsh-ui fence?","tpl.quiz.demo.q2a":"The user","tpl.quiz.demo.q2b":"The model","tpl.quiz.demo.q2bfx":"\u2713 The model writes the dsh-ui fence into its reply.","tpl.quiz.demo.q2c":"The host","tpl.quiz.demo.q2exp":"The model emits the fence; the renderer paints it into real components.","tpl.quiz.demo.q3":"Where does a panel:true fence render?","tpl.quiz.demo.q3a":"The message flow","tpl.quiz.demo.q3b":"The session panel dock","tpl.quiz.demo.q3bfx":"\u2713 Panel updates never spam the transcript.","tpl.quiz.demo.q3c":"The settings page","tpl.stats.name":"Key figures + progress","tpl.stats.desc":"Numbers, progress and milestones in one delivery \u2014 the standard weekly report.","tpl.stats.instruction":"Use dsh-ui to summarize this week: a keyvalue block with 3 key figures, two progress bars (planned vs actual), and a timeline with 3 milestones. Title it \u201CWeekly snapshot\u201D.","tpl.stats.demo.title":"Weekly snapshot (example)","tpl.stats.demo.done":"Completed","tpl.stats.demo.late":"Late","tpl.stats.demo.risk":"Risks","tpl.stats.demo.riskValue":"2 (both mitigated)","tpl.stats.demo.planned":"Planned progress","tpl.stats.demo.actual":"Actual progress","tpl.stats.demo.mon":"Monday","tpl.stats.demo.monDesc":"M1 development complete","tpl.stats.demo.wed":"Wednesday","tpl.stats.demo.wedDesc":"End-to-end verification passed","tpl.stats.demo.fri":"Friday","tpl.stats.demo.friDesc":"Shipped 0.9.4","tpl.chart.name":"Trend chart","tpl.chart.desc":"Data drawn straight into a chart \u2014 multiple series, trend visible at a glance.","tpl.chart.instruction":"Use dsh-ui to plot this data as a chart (bars, multi-series): completed vs planned over the last 6 weeks, with a one-line trend conclusion above the chart.","tpl.chart.demo.title":"Trend comparison (example)","tpl.chart.demo.conclusion":"Conclusion: completions rose 3 weeks running and overtook plan for the first time this week.","tpl.tabs.name":"Tabbed sections","tpl.tabs.desc":"A big block split into tabs: clear anchors, an uncluttered panel, no transcript spam.","tpl.tabs.instruction":"Use dsh-ui to split the content into three tabs: Overview / Details / FAQ, at most 3 points per tab. Title it \u201CFeature tour\u201D.","tpl.tabs.demo.title":"Feature tour (example)","tpl.tabs.demo.overview":"Overview","tpl.tabs.demo.overviewBody":"Three capabilities: live rendering, action round-trips, and a persistent panel.","tpl.tabs.demo.details":"Details","tpl.tabs.demo.d1":"Rendering: incremental fence parsing, painted as it streams","tpl.tabs.demo.d2":"Interaction: actions travel back and the model updates in place","tpl.tabs.demo.d3":"Panel: a session-level dock you can collapse and resize","tpl.tabs.demo.faqBody":"Q: What if the model never replies? A: Components still grade and expand locally.","tpl.checklist.name":"Release checklist","tpl.checklist.desc":"Tick every box before you ship: the list is the process, and gaps are visible.","tpl.checklist.instruction":"Use dsh-ui to build a release checklist: 6 tickable checkbox items (tests / docs / release / rollback / monitoring / announcement), with a badge at the top reading \u201CTick everything before merging\u201D.","tpl.checklist.demo.title":"Release checklist (example)","tpl.checklist.demo.badge":"Tick everything before merging","tpl.checklist.demo.c1":"Unit tests pass","tpl.checklist.demo.c2":"Docs updated","tpl.checklist.demo.c3":"Release bundle ready","tpl.checklist.demo.c4":"Rollback plan","tpl.accordion.name":"FAQ accordion","tpl.accordion.desc":"Questions and answers folded away: long documents get short and answers stop intimidating.","tpl.accordion.instruction":"Use dsh-ui to build an FAQ accordion: 5 common questions, the question as the header and the answer inside, with the first one expanded by default.","tpl.accordion.demo.title":"FAQ (example)","tpl.accordion.demo.q1":"Which chart types are supported?","tpl.accordion.demo.a1":"chart (bars/line/donut), plot for function graphs, and echart for the full chart library.","tpl.accordion.demo.q2":"Does the panel persist?","tpl.accordion.demo.a2":"The same content fingerprint restores its state across refresh and replay; new content resets.","tpl.accordion.demo.q3":"Do interactions disturb the model?","tpl.accordion.demo.a3":"Only components carrying an action send anything; pure display costs zero round-trips.","tpl.diagram.name":"System architecture","tpl.diagram.desc":"Architecture drawn as SVG: layered nodes, real edges, labelled zones \u2014 clearer than a screenshot.","tpl.diagram.instruction":"Use dsh-ui to draw an architecture diagram: 5 nodes of this system and their connections (kind: architecture or flowchart), including one security zone.","tpl.diagram.demo.title":"Architecture (example)","tpl.diagram.demo.caption":"DSH plugin path","tpl.diagram.demo.model":"Model","tpl.diagram.demo.plugin":"Plugin","tpl.diagram.demo.host":"Host","tpl.3d.name":"3D scene","tpl.3d.desc":"A rotatable 3D scene \u2014 for product demos and spatial explanations.","tpl.3d.instruction":"Use dsh-ui to render a 3D scene (scene3d): a cube and a sphere, titled \u201CExample scene\u201D, with a sentence on when to use it.","tpl.3d.demo.title":"3D scene (example)","tpl.3d.demo.note":"The first load downloads three.js (~700KB, lazily); afterwards it comes from cache.","tpl.3d.demo.scene":"Example scene","tpl.breadcrumb.name":"Path breadcrumb","tpl.breadcrumb.desc":"Long paths as breadcrumbs: file location and org hierarchy read instantly.","tpl.breadcrumb.instruction":"Use dsh-ui to show the current workspace layout: a breadcrumb for the file path (4 segments) and a file-tree of the project (3 directories, 2 children each).","tpl.breadcrumb.demo.title":"Directory layout (example)","tpl.breadcrumb.demo.workspace":"Workspace","ach.page.title":"GenUI exploration trophies","ach.stat.unlocked":"Unlocked","ach.stat.rendered":"Interfaces rendered","ach.stat.interactions":"Interactions","ach.progress":"Exploration progress","ach.rarity.common":"Common","ach.rarity.rare":"Rare","ach.rarity.legendary":"Legendary","ach.hidden.name":"?","ach.hidden.desc":"Keep exploring to reveal","ach.toast.unlocked":"Trophy unlocked: {name}","ach.first-fence.name":"First contact","ach.first-fence.desc":"Rendered your first GenUI interface.","ach.fence-5.name":"Getting the hang of it","ach.fence-5.desc":"Rendered 5 interfaces.","ach.fence-25.name":"Interface weaver","ach.fence-25.desc":"Rendered 25 interfaces.","ach.fence-50.name":"Soul of the blueprint","ach.fence-50.desc":"Rendered 50 interfaces \u2014 you and GenUI go way back.","ach.first-interaction.name":"The button works","ach.first-interaction.desc":"Triggered a component interaction for the first time.","ach.interaction-10.name":"Little puppeteer","ach.interaction-10.desc":"Triggered 10 component interactions.","ach.first-panel.name":"Pinned to the wall","ach.first-panel.desc":"Pinned content to the session panel for the first time.","ach.panel-5.name":"Panel keeper","ach.panel-5.desc":"Used the panel in 5 different sessions.","ach.first-chart.name":"Chart enthusiast","ach.first-chart.desc":"Rendered your first chart (chart/plot/echart).","ach.chart-10.name":"Data visualizer","ach.chart-10.desc":"Charts appeared in 10 interfaces.","ach.first-advanced.name":"Power user","ach.first-advanced.desc":"Used 3D, a chart engine, or an architecture diagram.","ach.template-1.name":"Template student","ach.template-1.desc":"Tried a template from the template center.","label.copy":"Copy","label.copied":"Copied","label.copiedDone":"Copied","label.copiedShort":"\u2713 Copied","label.copiedToClipboard":"Copied to clipboard","label.copyFailed":"Copy failed","label.code":"Code","label.wrap":"Wrap lines","label.unwrap":"Unwrap lines","label.collapse":"Collapse","label.collapseDiff.aria":"Collapse diff","label.expandDiff.aria":"Show the remaining {hidden} diff lines","label.expandDiff":"\u2026 {hidden} more lines","label.diffFiles":"{count} files","label.copyValue":"Copy value","label.copyJson":"Copy JSON","label.copyPath":"Copy property path","label.copyPrettyJson":"Copy formatted JSON","label.copyCompactJson":"Copy compact JSON","label.collapseNode":"Collapse JSON node","label.expandNode":"Expand JSON node","label.copyButtonTitle":"{action}; right-click for copy options","block.copyMarkdown":"Copy Markdown","block.copyCsv":"Copy CSV","block.table.expandDetails":"Expand details for {label}","block.table.collapseDetails":"Collapse details for {label}","block.table.expandGroup":"Expand group {label}","block.table.collapseGroup":"Collapse group {label}","block.total":"Total","block.filteredRows":"{visible} / {total} rows after filtering","block.filterMatch":"{shown} / {total} matched","block.triggered":"\u2713 Sent","block.triggeredPlain":"Sent","block.audio":"Audio","block.audioError":"Audio cannot be played","block.video":"Video","block.videoError":"Video cannot be played","block.image":"Image","block.imageError":"Image failed to load","block.svgLabel":"SVG diagram","block.svgPreview":"Preview","block.svgSource":"Source","block.svgError":"SVG could not be displayed \u2014 showing the source instead","block.mermaidError":"Diagram rendering failed \u2014 showing the source instead","block.mermaidLoading":"Rendering\u2026","block.scene3dLoading":"Loading 3D scene\u2026","block.scene3dError":"3D rendering failed","block.quizCorrect":"\u2713 Correct!","block.quizWrong":"\u2717 Try again","block.quizRetry":"Start over","block.selectPlaceholder":"Choose\u2026","block.score":"Score","block.scoreUngraded":" ({count} unanswered, not scored)","block.yourAnswer":"Your answer:","block.correctAnswer":" Correct answer:","block.selectedCount":"{answered}/{total} answered","block.target":"Target {value}%","block.chart.barsAria":"Horizontal bar chart, {count} groups","block.chart.barsSummary":"Bar chart, {count} groups, max {max}","block.chart.lineSeries":"Line chart, {count} series, range {min} to {max}","block.chart.linePoints":"Line chart, {count} points, range {min} to {max}","block.chart.donutSummary":"Donut chart, {count} slices, total {total}","block.chart.node":"Point","err.boundary.generic":"this interface","err.boundary.fence":"this interface","err.boundary.body":"\u26A0\uFE0F {label} failed to render (isolated \u2014 the rest of the reply is unaffected)","err.fieldValidation":"GenUI field validation failed: {errors}","err.chartValidation":"chart field validation failed: {errors}","err.fenceKeptAsCode":"\u26A0\uFE0F dsh-ui {diagnostic} \u2014 the fence stays a code block; fix it and resend.","err.fenceParse":"\u26A0\uFE0F dsh-ui fence JSON failed to parse{diagnostic} \u2014 the fence stays a code block; ask the model to fix the JSON and resend."};var Fg={"artifact.export":"\u5BFC\u51FA","artifact.exportHtml":"HTML","artifact.exportJson":"GenUI JSON","artifact.exportFailed":"\u5BFC\u51FA\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5\u3002","artifact.unsupportedCustom":"\u65E0\u6CD5\u5BFC\u51FA HTML\uFF1A\u72EC\u7ACB\u8FD0\u884C\u73AF\u5883\u65E0\u6CD5\u663E\u793A\u81EA\u5B9A\u4E49\u7EC4\u4EF6 {types}\u3002\u53EF\u5BFC\u51FA GenUI JSON \u4FDD\u5B58\u8FD9\u4E9B\u8282\u70B9\u3002","artifact.externalMediaNotice":"\u6B64\u9875\u9762\u542B\u6709\u5916\u90E8\u5A92\u4F53\uFF0C\u79BB\u7EBF\u6253\u5F00\u65F6\u90E8\u5206\u5185\u5BB9\u53EF\u80FD\u65E0\u6CD5\u663E\u793A\u3002","panel.badge":"\u9762\u677F","panel.title.default":"GenUI \u9762\u677F","panel.title.explore":"GenUI \u63A2\u7D22","panel.templates":"\u6A21\u677F","panel.templates.aria":"\u6A21\u677F\u4E2D\u5FC3","panel.templates.title":"\u6A21\u677F\u4E2D\u5FC3\uFF1A\u9884\u89C8\u5E76\u8BD5\u7528 GenUI \u793A\u4F8B","panel.achievements":"\u6210\u5C31","panel.achievements.aria":"\u63A2\u7D22\u6210\u5C31","panel.achievements.title":"\u63A2\u7D22\u6210\u5C31\uFF1A\u89E3\u9501\u5FBD\u7AE0\u4E0E\u8FDB\u5EA6","panel.close.aria":"\u5173\u95ED\u9762\u677F","panel.resize.aria":"\u8C03\u6574\u9762\u677F\u9AD8\u5EA6","panel.hint":"\u{1F4A1} \u8FD9\u662F GenUI \u4F1A\u8BDD\u9762\u677F\uFF1A\u70B9\u53F3\u4E0A\u89D2\u300C\u6A21\u677F\u300D\u53EF\u6D4F\u89C8\u5E76\u8BD5\u7528\u793A\u4F8B","panel.boundary":"\u9762\u677F","panel.flash.inserted":"\u6307\u4EE4\u5DF2\u63D2\u5165\u8F93\u5165\u6846\uFF0C\u53D1\u9001\u5373\u53EF\u8BA9\u6A21\u578B\u751F\u6210","panel.cmd.hint":"\u5F00\u542F GenUI \u9762\u677F\uFF1B/panel <\u6307\u4EE4> \u8BA9\u6A21\u578B\u5B9A\u5236\uFF1B/panel clear \u6E05\u7A7A","panel.cmd.description":"\u5F00\u542F GenUI \u9762\u677F\uFF08/panel clear \u6E05\u7A7A\uFF1B/panel <\u6307\u4EE4> \u5B9A\u5236\u5185\u5BB9\uFF09","panel.default.heading":"GenUI \u751F\u6210\u5F0F\u754C\u9762","panel.default.subtitle":"\u9762\u677F\u4F1A\u539F\u5730\u66F4\u65B0\uFF1A\u5BF9\u8BDD\u91CC\u8BF4\u300C\u66F4\u65B0\u9762\u677F\u300D\uFF0C\u6216\u518D\u6B21\u6267\u884C /panel \u5237\u65B0\u3002","panel.default.stat.components":"\u7EC4\u4EF6","panel.default.stat.single":"\u5355\u4E2A","panel.default.stat.composite":"\u7EC4\u5408","panel.default.stat.advanced":"\u9AD8\u7EA7","panel.default.group.single":"\u5355\u4E2A \xD712","panel.default.group.composite":"\u7EC4\u5408 \xD78","panel.default.group.data":"\u6570\u636E \xD77","panel.default.group.interactive":"\u4EA4\u4E92 \xD75","panel.default.group.advanced":"\u9AD8\u7EA7 \xD75","panel.default.group.teaching":"\u6559\u5B66 \xD71","panel.default.callout.title":"\u66F4\u65B0\u65B9\u5F0F","panel.default.callout.body":"\u5BF9\u8BDD\u8BF4\u300C\u66F4\u65B0\u9762\u677F\u300D\u2192 \u6A21\u578B\u8F93\u51FA panel:true \u56F4\u680F\uFF1B/panel clear \u6E05\u7A7A\u9762\u677F\u3002","tpl.category.all":"\u5168\u90E8","tpl.category.dashboard":"\u4EEA\u8868\u76D8","tpl.category.data":"\u6570\u636E","tpl.category.flow":"\u6D41\u7A0B","tpl.category.chart":"\u56FE\u8868","tpl.category.interactive":"\u4EA4\u4E92","tpl.category.quiz":"\u6D4B\u9A8C","tpl.category.advanced":"\u9AD8\u7EA7","tpl.categories.aria":"\u6A21\u677F\u5206\u7C7B","tpl.try":"\u8BD5\u7528\uFF1A\u63D2\u5165\u8F93\u5165\u6846","tpl.copy":"\u590D\u5236\u6307\u4EE4","tpl.copied":"\u2713 \u5DF2\u590D\u5236","tpl.boundary.preview":"\u6A21\u677F\u9884\u89C8","tpl.boundary.achievements":"\u6210\u5C31\u9875","tpl.dashboard.name":"\u9879\u76EE\u4EEA\u8868\u76D8","tpl.dashboard.desc":"\u4E00\u5F20\u5361\u7247\u6C47\u603B\u6838\u5FC3\u6307\u6807\uFF1A\u6570\u5B57 + \u73AF\u6BD4 + \u8FDB\u5EA6\u6761\uFF0C\u51B3\u7B56\u4E00\u773C\u53EF\u89C1\u3002","tpl.dashboard.instruction":"\u8BF7\u7528 dsh-ui \u7ED9\u5F53\u524D\u9879\u76EE\u505A\u4E00\u4E2A\u4EEA\u8868\u76D8\uFF1A4 \u4E2A\u5173\u952E\u6307\u6807\u7684 stat \u5361\u7247\uFF08\u5E26\u73AF\u6BD4 delta\uFF09\u3001\u6574\u4F53\u8FDB\u5EA6 progress \u6761\u3001\u4ECA\u5929\u7684 3 \u4EF6\u5F85\u529E list\u3002\u6807\u9898\u7528\u300C\u9879\u76EE\u4EEA\u8868\u76D8\u300D\u3002","tpl.dashboard.demo.title":"\u9879\u76EE\u4EEA\u8868\u76D8\uFF08\u793A\u4F8B\uFF09","tpl.dashboard.demo.metrics":"\u672C\u5468\u5173\u952E\u6307\u6807","tpl.dashboard.demo.done":"\u672C\u5468\u5B8C\u6210","tpl.dashboard.demo.blocked":"\u963B\u585E\u4E8B\u9879","tpl.dashboard.demo.duration":"\u5E73\u5747\u8017\u65F6","tpl.dashboard.demo.coverage":"\u8986\u76D6\u7387","tpl.dashboard.demo.progress":"\u6574\u4F53\u8FDB\u5EA6","tpl.dashboard.demo.milestone":"v1.0 \u91CC\u7A0B\u7891","tpl.dashboard.demo.todo":"\u4ECA\u65E5\u5F85\u529E","tpl.dashboard.demo.todo1":"\u8BC4\u5BA1 M1 \u6A21\u677F\u4E2D\u5FC3 PR","tpl.dashboard.demo.todo2":"\u540C\u6B65 vendor \u5230 SSiD","tpl.dashboard.demo.todo3":"\u5468\u4E09\u5468\u4F1A\u6750\u6599","tpl.compare.name":"\u65B9\u6848\u5BF9\u6BD4\u8868","tpl.compare.desc":"\u591A\u65B9\u6848\u9010\u7EF4\u5EA6\u5BF9\u7167\uFF0C\u8868\u683C\u76F4\u63A5\u53EF\u8BFB\uFF0C\u4E89\u8BAE\u70B9\u4E00\u76EE\u4E86\u7136\u3002","tpl.compare.instruction":"\u8BF7\u7528 dsh-ui \u628A\u4EE5\u4E0B\u65B9\u6848\u7684\u5BF9\u6BD4\u505A\u6210\u4E00\u5F20 table\uFF1A\u65B9\u6848 A/B/C \xD7 \u7EF4\u5EA6\uFF08\u6210\u672C/\u590D\u6742\u5EA6/\u98CE\u9669/\u6536\u76CA\uFF09\uFF0C\u5217\u9996\u9AD8\u4EAE\u63A8\u8350\u9879\uFF1B\u9876\u90E8\u52A0\u4E00\u884C callout \u8BF4\u660E\u7ED3\u8BBA\u3002","tpl.compare.demo.title":"\u65B9\u6848\u5BF9\u6BD4\uFF08\u793A\u4F8B\uFF09","tpl.compare.demo.conclusion":"\u7ED3\u8BBA","tpl.compare.demo.body":"\u65B9\u6848 B \u7EFC\u5408\u6700\u4F18\uFF1A\u6210\u672C\u4E2D\u3001\u590D\u6742\u5EA6\u4F4E\u3001\u98CE\u9669\u4F4E\u3002","tpl.compare.demo.dimension":"\u7EF4\u5EA6","tpl.compare.demo.optionA":"\u65B9\u6848 A","tpl.compare.demo.optionB":"\u65B9\u6848 B \u2605","tpl.compare.demo.optionC":"\u65B9\u6848 C","tpl.compare.demo.cost":"\u6210\u672C","tpl.compare.demo.complexity":"\u590D\u6742\u5EA6","tpl.compare.demo.risk":"\u98CE\u9669","tpl.compare.demo.payoff":"\u6536\u76CA","tpl.compare.demo.high":"\u9AD8","tpl.compare.demo.medium":"\u4E2D","tpl.compare.demo.low":"\u4F4E","tpl.compare.demo.large":"\u5927","tpl.compare.demo.small":"\u5C0F","tpl.steps.name":"\u4E94\u6B65\u4E0A\u624B\u6D41\u7A0B","tpl.steps.desc":"\u5173\u952E\u6B65\u9AA4\u6392\u6210\u65F6\u95F4\u7EBF\uFF0C\u6BCF\u6B65\u4E00\u53E5\u8981\u70B9\uFF0C\u9002\u5408\u6559\u7A0B/\u4EA4\u63A5/\u53D1\u5E03\u6D41\u7A0B\u3002","tpl.steps.instruction":"\u8BF7\u7528 dsh-ui \u628A\u64CD\u4F5C\u6B65\u9AA4\u505A\u6210 steps \u6559\u7A0B\uFF1A5 \u6B65\uFF08\u6309\u5B9E\u9645\u6D41\u7A0B\uFF09\uFF0C\u6BCF\u6B65\u6807\u9898 + \u4E00\u4E24\u53E5\u8981\u70B9\uFF0C\u9876\u90E8\u7528 badge \u6807\u51FA\u9884\u8BA1\u8017\u65F6\u3002","tpl.steps.demo.title":"\u4E0A\u624B\u6D41\u7A0B\uFF08\u793A\u4F8B\uFF09","tpl.steps.demo.badge":"\u7EA6 5 \u5206\u949F","tpl.steps.demo.s1":"\u5B89\u88C5\u63D2\u4EF6","tpl.steps.demo.s1desc":"\u4ECE\u63D2\u4EF6\u4E2D\u5FC3\u5B89\u88C5\uFF0C\u6216 npm \u5B89\u88C5\u5230 profile","tpl.steps.demo.s2":"\u53D1\u9001\u7B2C\u4E00\u6761\u6307\u4EE4","tpl.steps.demo.s2desc":"\u8BA9\u6A21\u578B\u7528 dsh-ui \u8F93\u51FA\u4E00\u4E2A\u754C\u9762","tpl.steps.demo.s3":"\u4F53\u9A8C\u4EA4\u4E92","tpl.steps.demo.s3desc":"\u70B9\u6309\u94AE/\u5224\u5377/\u5207 tab\uFF0C\u52A8\u4F5C\u4F1A\u56DE\u4F20\u6A21\u578B","tpl.steps.demo.s4":"\u5E38\u9A7B\u9762\u677F","tpl.steps.demo.s4desc":"\u6A21\u578B\u7528 panel:true \u628A\u7ED3\u679C\u9489\u5728\u4F1A\u8BDD\u9762\u677F","tpl.steps.demo.s5":"\u8FDB\u9636\u7EC4\u4EF6","tpl.steps.demo.s5desc":"\u56FE\u8868/\u6D41\u7A0B/3D \u6309\u9700\u61D2\u52A0\u8F7D","tpl.quiz.name":"\u968F\u5802\u6D4B\u9A8C","tpl.quiz.desc":"\u4E00\u9898\u4E00\u7B54\u5373\u65F6\u5224\u5377\uFF1A\u9009\u4E2D\u5373\u77E5\u5BF9\u9519\uFF0C\u9644\u8BB2\u89E3\uFF0C\u9002\u5408\u57F9\u8BAD\u95EE\u7B54\u3002","tpl.quiz.instruction":"\u8BF7\u7528 dsh-ui \u51FA 3 \u9053\u968F\u5802\u6D4B\u9A8C\uFF08quiz \u7EC4\u4EF6\uFF1Aquestion + options\uFF0C\u5176\u4E2D\u4E00\u9879 correct\uFF0C\u9644 explanation\uFF09\uFF0C\u6807\u9898\u300C\u968F\u5802\u6D4B\u9A8C\u300D\uFF0C\u6BCF\u9898\u5373\u9009\u5373\u8BC4\u3002","tpl.quiz.demo.title":"\u968F\u5802\u6D4B\u9A8C\uFF08\u793A\u4F8B\uFF09","tpl.quiz.demo.hint":"\u9009\u4E2D\u5373\u5224\u5377\u5E76\u663E\u793A\u8BB2\u89E3\u3002","tpl.quiz.demo.q1":"DSH \u63D2\u4EF6\u7684\u6700\u5C0F\u5355\u4F4D\u662F\uFF1F","tpl.quiz.demo.q1a":"\u670D\u52A1","tpl.quiz.demo.q1b":"\u63D2\u4EF6\uFF08cordis \u63D2\u4EF6\uFF09","tpl.quiz.demo.q1bfx":"\u2713 \u4E00\u5207\u7686\u63D2\u4EF6\uFF1A\u670D\u52A1\u3001\u5DE5\u5177\u3001UI \u90FD\u901A\u8FC7\u63D2\u4EF6\u6CE8\u518C\u3002","tpl.quiz.demo.q1c":"\u5DE5\u5177","tpl.quiz.demo.q1exp":"DSH \u57FA\u4E8E cordis\uFF0C\u4EFB\u4F55\u80FD\u529B\uFF08\u542B\u670D\u52A1\u4E0E\u5DE5\u5177\uFF09\u90FD\u4EE5\u63D2\u4EF6\u5F62\u5F0F\u6CE8\u518C\u3002","tpl.quiz.demo.q2":"dsh-ui \u56F4\u680F\u7531\u8C01\u8F93\u51FA\uFF1F","tpl.quiz.demo.q2a":"\u7528\u6237","tpl.quiz.demo.q2b":"\u6A21\u578B","tpl.quiz.demo.q2bfx":"\u2713 \u6A21\u578B\u5728\u56DE\u590D\u4E2D\u8F93\u51FA dsh-ui fence\u3002","tpl.quiz.demo.q2c":"\u5BBF\u4E3B","tpl.quiz.demo.q2exp":"\u6A21\u578B\u8F93\u51FA fence\uFF0C\u6E32\u67D3\u5668\u5C06\u5176\u753B\u6210\u771F\u5B9E\u7EC4\u4EF6\u3002","tpl.quiz.demo.q3":"panel:true \u7684\u56F4\u680F\u6E32\u67D3\u5230\u54EA\u91CC\uFF1F","tpl.quiz.demo.q3a":"\u6D88\u606F\u6D41","tpl.quiz.demo.q3b":"\u4F1A\u8BDD\u9762\u677F dock","tpl.quiz.demo.q3bfx":"\u2713 \u9762\u677F\u66F4\u65B0\u4E0D\u5237\u5C4F\u3002","tpl.quiz.demo.q3c":"\u8BBE\u7F6E\u9875","tpl.stats.name":"\u5173\u952E\u503C + \u8FDB\u5EA6","tpl.stats.desc":"\u4E00\u6B21\u4EA4\u4ED8\uFF1A\u6570\u503C\u3001\u8FDB\u5EA6\u3001\u91CC\u7A0B\u7891\u4E09\u4EF6\u5957\uFF0C\u5468\u62A5/\u590D\u76D8\u901A\u7528\u3002","tpl.stats.instruction":"\u8BF7\u7528 dsh-ui \u603B\u7ED3\u672C\u5468\u5173\u952E\u6570\u636E\uFF1Akeyvalue \u5217 3 \u7EC4\u5173\u952E\u503C\u3001\u4E24\u6839 progress \u8FDB\u5EA6\uFF08\u8BA1\u5212 vs \u5B9E\u9645\uFF09\u3001timeline \u653E 3 \u4E2A\u91CC\u7A0B\u7891\uFF0C\u6807\u9898\u300C\u5468\u62A5\u901F\u89C8\u300D\u3002","tpl.stats.demo.title":"\u5468\u62A5\u901F\u89C8\uFF08\u793A\u4F8B\uFF09","tpl.stats.demo.done":"\u5B8C\u6210\u9879","tpl.stats.demo.late":"\u5EF6\u671F","tpl.stats.demo.risk":"\u98CE\u9669","tpl.stats.demo.riskValue":"2\uFF08\u5747\u5DF2\u6709\u7F13\u89E3\uFF09","tpl.stats.demo.planned":"\u8BA1\u5212\u8FDB\u5EA6","tpl.stats.demo.actual":"\u5B9E\u9645\u8FDB\u5EA6","tpl.stats.demo.mon":"\u5468\u4E00","tpl.stats.demo.monDesc":"\u5B8C\u6210 M1 \u5F00\u53D1","tpl.stats.demo.wed":"\u5468\u4E09","tpl.stats.demo.wedDesc":"\u5168\u94FE\u8DEF\u9A8C\u8BC1\u901A\u8FC7","tpl.stats.demo.fri":"\u5468\u4E94","tpl.stats.demo.friDesc":"\u53D1\u5E03 0.9.4","tpl.chart.name":"\u8D8B\u52BF\u67F1\u72B6\u56FE","tpl.chart.desc":"\u6570\u636E\u76F4\u63A5\u753B\u6210\u67F1\u72B6\u56FE\uFF0C\u591A\u5E8F\u5217\u5BF9\u6BD4\uFF0C\u8D70\u52BF\u4E00\u773C\u770B\u6E05\u3002","tpl.chart.instruction":"\u8BF7\u7528 dsh-ui \u628A\u4E0B\u5217\u6570\u636E\u753B\u6210 chart\uFF08bars\uFF0C\u591A\u5E8F\u5217\uFF09\uFF1A\u8FD1 6 \u5468\u5B8C\u6210\u91CF vs \u8BA1\u5212\u91CF\uFF1B\u56FE\u8868\u4E0A\u65B9\u7ED9\u4E00\u53E5\u8D8B\u52BF\u7ED3\u8BBA\u3002","tpl.chart.demo.title":"\u8D8B\u52BF\u5BF9\u6BD4\uFF08\u793A\u4F8B\uFF09","tpl.chart.demo.conclusion":"\u7ED3\u8BBA\uFF1A\u8FD1 3 \u5468\u5B8C\u6210\u91CF\u8FDE\u7EED\u4E0A\u5347\uFF0C\u672C\u5468\u9996\u6B21\u53CD\u8D85\u8BA1\u5212\u3002","tpl.tabs.name":"\u5206\u6807\u7B7E\u9875","tpl.tabs.desc":"\u4E00\u5927\u5757\u5185\u5BB9\u62C6\u6210\u6807\u7B7E\u9875\uFF0C\u951A\u70B9\u6E05\u6670\uFF1B\u9762\u677F\u4E0D\u6324\u3001\u6D88\u606F\u4E0D\u5237\u5C4F\u3002","tpl.tabs.instruction":"\u8BF7\u7528 dsh-ui \u628A\u5185\u5BB9\u5206\u6210 tabs \u4E09\u4E2A\u6807\u7B7E\uFF1A\u6982\u89C8/\u660E\u7EC6/FAQ\uFF0C\u6BCF\u4E2A\u6807\u7B7E 3 \u6761\u4EE5\u5185\u8981\u70B9\uFF1B\u6807\u9898\u300C\u529F\u80FD\u901F\u89C8\u300D\u3002","tpl.tabs.demo.title":"\u529F\u80FD\u901F\u89C8\uFF08\u793A\u4F8B\uFF09","tpl.tabs.demo.overview":"\u6982\u89C8","tpl.tabs.demo.overviewBody":"\u4E09\u9879\u80FD\u529B\uFF1A\u5B9E\u65F6\u6E32\u67D3\u3001\u4EA4\u4E92\u56DE\u4F20\u3001\u5E38\u9A7B\u9762\u677F\u3002","tpl.tabs.demo.details":"\u660E\u7EC6","tpl.tabs.demo.d1":"\u6E32\u67D3\uFF1Afence \u589E\u91CF\u89E3\u6790\uFF0C\u8FB9\u6D41\u8FB9\u51FA","tpl.tabs.demo.d2":"\u4EA4\u4E92\uFF1A\u52A8\u4F5C\u56DE\u4F20\u6A21\u578B\u589E\u91CF\u66F4\u65B0","tpl.tabs.demo.d3":"\u9762\u677F\uFF1A\u4F1A\u8BDD\u7EA7 dock\uFF0C\u6298\u53E0/\u8C03\u9AD8","tpl.tabs.demo.faqBody":"\u95EE\uFF1A\u4E0D\u52A8\u6A21\u578B\u4F1A\u600E\u6837\uFF1F\u7B54\uFF1A\u7EC4\u4EF6\u4ECD\u53EF\u672C\u5730\u5224\u5377/\u5C55\u5F00\u3002","tpl.checklist.name":"\u4EA4\u4ED8\u68C0\u67E5\u6E05\u5355","tpl.checklist.desc":"\u63D0\u4EA4\u524D\u9010\u9879\u6253\u52FE\uFF1A\u6E05\u5355\u5373\u6D41\u7A0B\uFF0C\u6F0F\u9879\u770B\u5F97\u89C1\u3002","tpl.checklist.instruction":"\u8BF7\u7528 dsh-ui \u505A\u4E00\u5F20\u4EA4\u4ED8\u68C0\u67E5\u6E05\u5355\uFF1A6 \u9879\uFF08\u6D4B\u8BD5/\u6587\u6863/\u53D1\u5E03/\u56DE\u6EDA/\u76D1\u63A7/\u516C\u544A\uFF09\uFF0Ccheckbox \u53EF\u52FE\u9009\uFF0C\u9876\u90E8 badge \u63D0\u793A\u300C\u5168\u90E8\u52FE\u9009\u518D\u5408\u5E76\u300D\u3002","tpl.checklist.demo.title":"\u4EA4\u4ED8\u6E05\u5355\uFF08\u793A\u4F8B\uFF09","tpl.checklist.demo.badge":"\u5168\u90E8\u52FE\u9009\u518D\u5408\u5E76","tpl.checklist.demo.c1":"\u5355\u5143\u6D4B\u8BD5\u901A\u8FC7","tpl.checklist.demo.c2":"\u6587\u6863\u540C\u6B65","tpl.checklist.demo.c3":"\u53D1\u5E03\u5957\u9910\u5C31\u7EEA","tpl.checklist.demo.c4":"\u56DE\u6EDA\u9884\u6848","tpl.accordion.name":"FAQ \u624B\u98CE\u7434","tpl.accordion.desc":"\u4E00\u95EE\u4E00\u7B54\u6536\u5728\u6298\u53E0\u9762\u677F\u91CC\uFF0C\u957F\u6587\u6863\u53D8\u77ED\uFF0C\u56DE\u7B54\u4E0D\u5413\u4EBA\u3002","tpl.accordion.instruction":"\u8BF7\u7528 dsh-ui \u505A FAQ \u624B\u98CE\u7434\uFF08accordion\uFF09\uFF1A5 \u4E2A\u9AD8\u9891\u95EE\u9898\uFF0C\u6807\u9898\u680F\u5C31\u662F\u95EE\u9898\u3001\u5C55\u5F00\u4E00\u6761\u7ED9\u7B54\u6848\uFF1B\u7B2C\u4E00\u95EE\u9ED8\u8BA4\u5C55\u5F00\u3002","tpl.accordion.demo.title":"FAQ\uFF08\u793A\u4F8B\uFF09","tpl.accordion.demo.q1":"\u652F\u6301\u54EA\u4E9B\u56FE\u8868\uFF1F","tpl.accordion.demo.a1":"chart\uFF08bars/line/donut\uFF09\u3001plot \u51FD\u6570\u56FE\u3001echart \u5168\u529F\u80FD\u56FE\u8868\u3002","tpl.accordion.demo.q2":"\u9762\u677F\u80FD\u6301\u4E45\u5417\uFF1F","tpl.accordion.demo.a2":"\u540C\u4E00\u5185\u5BB9\u6307\u7EB9\u5237\u65B0/\u91CD\u653E\u6062\u590D\u72B6\u6001\uFF1B\u65B0\u5185\u5BB9\u91CD\u7F6E\u3002","tpl.accordion.demo.q3":"\u4EA4\u4E92\u4F1A\u6253\u6270\u6A21\u578B\u5417\uFF1F","tpl.accordion.demo.a3":"\u5E26 action \u7684\u7EC4\u4EF6\u624D\u56DE\u4F20\uFF1B\u7EAF\u5C55\u793A\u7EC4\u4EF6\u96F6\u5F80\u8FD4\u3002","tpl.diagram.name":"\u7CFB\u7EDF\u67B6\u6784\u56FE","tpl.diagram.desc":"\u6846\u67B6\u56FE\u753B\u6210 SVG\uFF1A\u8282\u70B9\u5206\u5C42\u3001\u8FDE\u63A5\u7EBF\u3001\u5206\u533A\u6807\u6CE8\uFF0C\u6BD4\u622A\u56FE\u6E05\u695A\u3002","tpl.diagram.instruction":"\u8BF7\u7528 dsh-ui \u753B\u4E00\u5E45\u67B6\u6784\u56FE\uFF08diagram\uFF09\uFF1A\u63CF\u8FF0\u5F53\u524D\u7CFB\u7EDF\u7684 5 \u4E2A\u8282\u70B9\u4E0E\u8FDE\u63A5\uFF08kind: architecture \u6216 flowchart\uFF09\uFF0C\u5305\u542B\u4E00\u4E2A\u5B89\u5168\u533A zone\u3002","tpl.diagram.demo.title":"\u67B6\u6784\u56FE\uFF08\u793A\u4F8B\uFF09","tpl.diagram.demo.caption":"DSH \u63D2\u4EF6\u94FE\u8DEF","tpl.diagram.demo.model":"\u6A21\u578B","tpl.diagram.demo.plugin":"\u63D2\u4EF6","tpl.diagram.demo.host":"\u5BBF\u4E3B","tpl.3d.name":"3D \u573A\u666F","tpl.3d.desc":"\u4E00\u4E2A\u53EF\u65CB\u8F6C\u7684 3D \u573A\u666F\uFF1A\u4EA7\u54C1\u6F14\u793A/\u7A7A\u95F4\u793A\u610F\u7528\u5F97\u4E0A\u3002","tpl.3d.instruction":"\u8BF7\u7528 dsh-ui \u6E32\u67D3\u4E00\u4E2A 3D \u573A\u666F\uFF08scene3d\uFF09\uFF1A\u4E00\u4E2A\u7ACB\u65B9\u4F53 + \u4E00\u4E2A\u7403\u4F53\uFF0C\u6807\u9898\u300C\u793A\u4F8B\u573A\u666F\u300D\uFF0C\u9644\u4E00\u53E5\u4F7F\u7528\u573A\u666F\u8BF4\u660E\u3002","tpl.3d.demo.title":"3D \u573A\u666F\uFF08\u793A\u4F8B\uFF09","tpl.3d.demo.note":"\u9996\u6B21\u52A0\u8F7D\u9700\u4E0B\u8F7D three.js\uFF08\u7EA6 700KB\uFF0C\u61D2\u52A0\u8F7D\uFF09\uFF0C\u4E4B\u540E\u8D70\u7F13\u5B58\u3002","tpl.3d.demo.scene":"\u793A\u4F8B\u573A\u666F","tpl.breadcrumb.name":"\u8DEF\u5F84\u9762\u5305\u5C51","tpl.breadcrumb.desc":"\u957F\u8DEF\u5F84\u62C6\u6210\u9762\u5305\u5C51\uFF1A\u6587\u4EF6\u4F4D\u7F6E\u3001\u7EC4\u7EC7\u5C42\u7EA7\u4E00\u8BFB\u5C31\u61C2\u3002","tpl.breadcrumb.instruction":"\u8BF7\u7528 dsh-ui \u5C55\u793A\u5F53\u524D\u5DE5\u4F5C\u533A\u7ED3\u6784\uFF1Abreadcrumb \u663E\u793A\u6587\u4EF6\u8DEF\u5F84\uFF084 \u6BB5\uFF09\u3001file-tree \u63CF\u8FF0\u9879\u76EE\u76EE\u5F55\uFF083 \u4E2A\u76EE\u5F55\u3001\u6BCF\u4E2A 2 \u4E2A\u5B50\u9879\uFF09\u3002","tpl.breadcrumb.demo.title":"\u76EE\u5F55\u7ED3\u6784\uFF08\u793A\u4F8B\uFF09","tpl.breadcrumb.demo.workspace":"\u5DE5\u4F5C\u533A","ach.page.title":"GenUI \u63A2\u7D22\u6210\u5C31","ach.stat.unlocked":"\u5DF2\u89E3\u9501","ach.stat.rendered":"\u6E32\u67D3\u754C\u9762","ach.stat.interactions":"\u7EC4\u4EF6\u4EA4\u4E92","ach.progress":"\u63A2\u7D22\u8FDB\u5EA6","ach.rarity.common":"\u666E\u901A","ach.rarity.rare":"\u7A00\u6709","ach.rarity.legendary":"\u4F20\u8BF4","ach.hidden.name":"\uFF1F","ach.hidden.desc":"\u7EE7\u7EED\u63A2\u7D22\u4EE5\u63ED\u793A","ach.toast.unlocked":"\u6210\u5C31\u89E3\u9501\uFF1A{name}","ach.first-fence.name":"\u521D\u6B21\u76F8\u89C1","ach.first-fence.desc":"\u6E32\u67D3\u4E86\u7B2C\u4E00\u5757 GenUI \u754C\u9762\u3002","ach.fence-5.name":"\u6E10\u5165\u4F73\u5883","ach.fence-5.desc":"\u7D2F\u8BA1\u6E32\u67D3 5 \u4E2A\u754C\u9762\u3002","ach.fence-25.name":"\u754C\u9762\u7F16\u7EC7\u8005","ach.fence-25.desc":"\u7D2F\u8BA1\u6E32\u67D3 25 \u4E2A\u754C\u9762\u3002","ach.fence-50.name":"\u84DD\u56FE\u4E4B\u9B42","ach.fence-50.desc":"\u7D2F\u8BA1\u6E32\u67D3 50 \u4E2A\u754C\u9762\u2014\u2014\u4F60\u662F GenUI \u7684\u8001\u670B\u53CB\u4E86\u3002","ach.first-interaction.name":"\u6309\u94AE\u6309\u5F97\u52A8","ach.first-interaction.desc":"\u89E6\u53D1\u4E86\u4E00\u6B21\u7EC4\u4EF6\u4EA4\u4E92\uFF08\u52A8\u4F5C\u56DE\u4F20\uFF09\u3002","ach.interaction-10.name":"\u5C0F\u5C0F\u64CD\u7EB5\u8005","ach.interaction-10.desc":"\u7D2F\u8BA1\u89E6\u53D1 10 \u6B21\u7EC4\u4EF6\u4EA4\u4E92\u3002","ach.first-panel.name":"\u9489\u5728\u5899\u4E0A","ach.first-panel.desc":"\u7B2C\u4E00\u6B21\u628A\u5185\u5BB9\u9489\u8FDB\u4E86\u4F1A\u8BDD\u9762\u677F\u3002","ach.panel-5.name":"\u9762\u677F\u7BA1\u5BB6","ach.panel-5.desc":"5 \u4E2A\u4F1A\u8BDD\u90FD\u7528\u8FC7\u9762\u677F\u3002","ach.first-chart.name":"\u56FE\u8868\u7231\u597D\u8005","ach.first-chart.desc":"\u6E32\u67D3\u4E86\u7B2C\u4E00\u5F20\u56FE\u8868\uFF08chart/plot/echart\uFF09\u3002","ach.chart-10.name":"\u6570\u636E\u53EF\u89C6\u5316\u4EBA","ach.chart-10.desc":"10 \u4E2A\u754C\u9762\u91CC\u51FA\u73B0\u8FC7\u56FE\u8868\u3002","ach.first-advanced.name":"\u9AD8\u7EA7\u73A9\u5BB6","ach.first-advanced.desc":"\u7528\u4E0A\u4E86 3D/\u56FE\u8868\u5F15\u64CE/\u67B6\u6784\u56FE\u4E4B\u4E00\u3002","ach.template-1.name":"\u6A21\u677F\u5B66\u5458","ach.template-1.desc":"\u4ECE\u6A21\u677F\u4E2D\u5FC3\u8BD5\u7528\u4E86\u4E00\u4E2A\u6A21\u677F\u3002","label.copy":"\u590D\u5236","label.copied":"\u590D\u5236\u6210\u529F","label.copiedDone":"\u5DF2\u590D\u5236","label.copiedShort":"\u2713 \u5DF2\u590D\u5236","label.copiedToClipboard":"\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F","label.copyFailed":"\u590D\u5236\u5931\u8D25","label.code":"\u4EE3\u7801","label.wrap":"\u81EA\u52A8\u6362\u884C","label.unwrap":"\u53D6\u6D88\u81EA\u52A8\u6362\u884C","label.collapse":"\u6536\u8D77","label.collapseDiff.aria":"\u6536\u8D77\u5DEE\u5F02","label.expandDiff.aria":"\u5C55\u5F00\u5176\u4F59 {hidden} \u884C\u5DEE\u5F02","label.expandDiff":"\u2026 \u5176\u4F59 {hidden} \u884C","label.diffFiles":"{count} \u4E2A\u6587\u4EF6","label.copyValue":"\u590D\u5236\u503C","label.copyJson":"\u590D\u5236 JSON","label.copyPath":"\u590D\u5236\u5C5E\u6027\u8DEF\u5F84","label.copyPrettyJson":"\u590D\u5236\u683C\u5F0F\u5316 JSON","label.copyCompactJson":"\u590D\u5236\u7D27\u51D1 JSON","label.collapseNode":"\u6536\u8D77 JSON \u8282\u70B9","label.expandNode":"\u5C55\u5F00 JSON \u8282\u70B9","label.copyButtonTitle":"{action}\uFF1B\u53F3\u952E\u67E5\u770B\u590D\u5236\u9009\u9879","block.copyMarkdown":"\u590D\u5236 Markdown","block.copyCsv":"\u590D\u5236 CSV","block.table.expandDetails":"\u5C55\u5F00 {label} \u7684\u660E\u7EC6","block.table.collapseDetails":"\u6536\u8D77 {label} \u7684\u660E\u7EC6","block.table.expandGroup":"\u5C55\u5F00\u5206\u7EC4 {label}","block.table.collapseGroup":"\u6536\u8D77\u5206\u7EC4 {label}","block.total":"\u5408\u8BA1","block.filteredRows":"\u7B5B\u9009\u540E {visible} / {total} \u884C","block.filterMatch":"\u5339\u914D {shown} / {total} \u9879","block.triggered":"\u2713 \u5DF2\u89E6\u53D1","block.triggeredPlain":"\u5DF2\u89E6\u53D1","block.audio":"\u97F3\u9891","block.audioError":"\u97F3\u9891\u65E0\u6CD5\u64AD\u653E","block.video":"\u89C6\u9891","block.videoError":"\u89C6\u9891\u65E0\u6CD5\u64AD\u653E","block.image":"\u56FE\u7247","block.imageError":"\u56FE\u7247\u65E0\u6CD5\u52A0\u8F7D","block.svgLabel":"SVG \u56FE\u5F62","block.svgPreview":"\u9884\u89C8","block.svgSource":"\u6E90\u7801","block.svgError":"SVG \u65E0\u6CD5\u663E\u793A\uFF0C\u5DF2\u964D\u7EA7\u663E\u793A\u6E90\u7801","block.mermaidError":"\u56FE\u8868\u6E32\u67D3\u5931\u8D25\uFF0C\u5DF2\u663E\u793A\u6E90\u7801","block.mermaidLoading":"\u6E32\u67D3\u4E2D\u2026","block.scene3dLoading":"\u52A0\u8F7D 3D \u573A\u666F\u2026","block.scene3dError":"3D \u6E32\u67D3\u5931\u8D25","block.quizCorrect":"\u2713 \u56DE\u7B54\u6B63\u786E\uFF01","block.quizWrong":"\u2717 \u518D\u60F3\u60F3\u770B","block.quizRetry":"\u91CD\u65B0\u4F5C\u7B54","block.selectPlaceholder":"\u8BF7\u9009\u62E9\u2026","block.score":"\u5F97\u5206","block.scoreUngraded":"\uFF08{count} \u9898\u65E0\u7B54\u6848\u672A\u8BA1\u5206\uFF09","block.yourAnswer":"\u4F60\u7684\u7B54\u6848\uFF1A","block.correctAnswer":" \u6B63\u786E\u7B54\u6848\uFF1A","block.selectedCount":"\u5DF2\u9009 {answered}/{total}","block.target":"\u76EE\u6807 {value}%","block.chart.barsAria":"\u6A2A\u5411\u67F1\u72B6\u56FE\uFF0C{count} \u7EC4","block.chart.barsSummary":"\u67F1\u72B6\u56FE\uFF0C{count} \u7EC4\uFF0C\u6700\u5927 {max}","block.chart.lineSeries":"\u6298\u7EBF\u56FE\uFF0C{count} \u6761\u5E8F\u5217\uFF0C\u8303\u56F4 {min} \u5230 {max}","block.chart.linePoints":"\u6298\u7EBF\u56FE\uFF0C{count} \u4E2A\u70B9\uFF0C\u8303\u56F4 {min} \u5230 {max}","block.chart.donutSummary":"\u73AF\u5F62\u56FE\uFF0C{count} \u9879\uFF0C\u5408\u8BA1 {total}","block.chart.node":"\u8282\u70B9","err.boundary.generic":"\u6B64\u754C\u9762","err.boundary.fence":"\u8BE5\u754C\u9762","err.boundary.body":"\u26A0\uFE0F {label}\u6E32\u67D3\u5931\u8D25\uFF08\u5DF2\u9694\u79BB\uFF0C\u4E0D\u5F71\u54CD\u5176\u4ED6\u5185\u5BB9\uFF09","err.fieldValidation":"GenUI \u5B57\u6BB5\u9A8C\u8BC1\u5931\u8D25\uFF1A{errors}","err.chartValidation":"chart \u5B57\u6BB5\u9A8C\u8BC1\u5931\u8D25\uFF1A{errors}","err.fenceKeptAsCode":"\u26A0\uFE0F dsh-ui {diagnostic} \u2014\u2014 \u56F4\u680F\u4FDD\u6301\u4E3A\u4EE3\u7801\u5757\uFF1B\u8BF7\u4FEE\u6B63\u540E\u91CD\u53D1\u3002","err.fenceParse":"\u26A0\uFE0F dsh-ui fence JSON \u89E3\u6790\u5931\u8D25{diagnostic} \u2014\u2014 \u56F4\u680F\u4FDD\u6301\u4E3A\u4EE3\u7801\u5757\uFF1B\u8BF7\u8BA9\u6A21\u578B\u68C0\u67E5\u5E76\u4FEE\u590D JSON \u540E\u91CD\u53D1\u3002"};var Gl="en",Rd=["en","zh"],Bg={en:Og,zh:Fg};function Dd(e){if(typeof e!="string"||e==="")return;let t=e.toLowerCase().split(/[-_]/)[0];return Rd.find(r=>r===t)}function qg(){if(typeof navigator>"u")return Gl;let e=navigator,t=Array.isArray(e.languages)&&e.languages.length>0?e.languages:[e.language];for(let r of t){let n=Dd(r);if(n!==void 0)return n}return Gl}var Pl=qg(),Hg=0,Ed=new Set;function $d(){return Pl}function Ol(){return Hg}function Ld(e){return Ed.add(e),()=>{Ed.delete(e)}}function Fl(e){let t=Dd(e);if(!(t===void 0||t===Pl)){Pl=t,Hg+=1;for(let r of[...Ed])r()}}function ub(e,t){return t===void 0?e:e.replace(/\{(\w+)\}/g,(r,n)=>{let a=t[n];return a===void 0?r:String(a)})}function re(e,t){let r=Bg[Pl][e]??Bg[Gl][e]??e;return ub(r,t)}function tt(){return(0,_g.useSyncExternalStore)(Ld,Ol,Ol),re}function jg(){return $d()}var Jn=ie(_e(),1);var Wg=ie(_e(),1),Ug=Wg.default.createElement,Vg={play:["m8 4 12 8-12 8V4Z"],pause:["M7 4h3v16H7zM14 4h3v16h-3z"],volume:["M11 4 5 9H2v6h3l6 5V4Z","M15 8a6 6 0 0 1 0 8M18 4a11 11 0 0 1 0 16"],volumeOff:["M11 4 5 9H2v6h3l6 5V4Z","m16 9 6 6m0-6-6 6"],fullscreen:["M8 3H3v5m13-5h5v5M3 16v5h5m13-5v5h-5"],minimize:["M3 8h5V3m8 0v5h5M8 21v-5H3m13 5v-5h5"],download:["M12 3v12m-5-5 5 5 5-5M4 17v4h16v-4"],copy:["M9 8h11v13H9z","M15 8V3H4v13h5"],external:["M14 4h6v6M20 4l-9 9","M10 4H4v16h16v-6"],file:["M14 3H5v18h14V8l-5-5Z","M14 3v5h5M8 13h8M8 17h5"],globe:["M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z","M3 12h18M12 3c-5 5-5 13 0 18 5-5 5-13 0-18Z"],sparkles:["m12 3 2.4 6.6L21 12l-6.6 2.4L12 21l-2.4-6.6L3 12l6.6-2.4L12 3Z","M20 2v4M18 4h4"],sliders:["M4 7h6m4 0h6M4 17h10m4 0h2","M10 4v6m4 4v6"],layers:["m12 3 9 5-9 5-9-5 9-5Z","m3 12 9 5 9-5M3 16l9 5 9-5"],chart:["M4 3v17h17M8 15v-4m5 4V7m5 8v-6"],gauge:["M5 18a9 9 0 1 1 14 0","m12 13 4-5M8 18h8"],cpu:["M8 3v3m4-3v3m4-3v3M8 18v3m4-3v3m4-3v3M3 8h3m-3 4h3m-3 4h3m12-8h3m-3 4h3m-3 4h3","M6 6h12v12H6zM9 9h6v6H9z"],database:["M4 6c0-4 16-4 16 0s-16 4-16 0Z","M4 6v12c0 4 16 4 16 0V6M4 12c0 4 16 4 16 0"],info:["M12 11v6M12 7h.01","M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"],check:["m5 12 4 4L19 6"],warning:["m12 3 10 18H2L12 3Z","M12 9v5m0 3h.01"],arrow:["M4 12h16m-6-6 6 6-6 6"],target:["M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z","M17 12a5 5 0 1 1-10 0 5 5 0 0 1 10 0ZM12 11v2"]};function Kg({name:e="info",className:t=""}){return Ug("svg",{className:`dgui-icon ${t}`,width:18,height:18,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.65,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0,focusable:!1},(Vg[e]??Vg.info).map((r,n)=>Ug("path",{key:n,d:r})))}var zr=Jn.default.createElement;async function db(e){try{if(typeof navigator.clipboard?.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}let t=document.activeElement,r=window.getSelection(),n=r?Array.from({length:r.rangeCount},(i,s)=>r.getRangeAt(s).cloneRange()):[],a=document.createElement("textarea");a.value=e,a.readOnly=!0,a.style.cssText="position:fixed;left:-10000px;top:0;opacity:0",document.body.append(a);try{return a.select(),document.execCommand("copy")===!0}catch{return!1}finally{if(a.remove(),t?.focus?.({preventScroll:!0}),r){r.removeAllRanges();for(let i of n)try{r.addRange(i)}catch{}}}}var pb=`
|
|
270
270
|
.motion-copy-block{position:relative;min-width:0;border:1px solid var(--du-line,var(--dsw-alias-border-default,#ddd));border-radius:24px;padding:18px 22px;color:var(--du-ink,var(--dsw-alias-label-primary,inherit));background:var(--du-bg,var(--dsw-alias-bg-layer-1,transparent));overflow:hidden;margin:8px 0}
|
|
271
271
|
.motion-copy-block[data-code]{background:var(--du-soft,var(--dsw-alias-bg-layer-2,#8881))}
|
|
272
272
|
.motion-copy-bar{display:flex;align-items:center;gap:10px;min-height:30px;margin-bottom:12px;color:var(--du-muted,var(--dsw-alias-label-secondary,#888));font-size:14px;line-height:1.4}
|