@fgbg/mdocs 0.7.5 → 0.7.8
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/dist/server/access/access-control.js +28 -3
- package/dist/server/access/access-control.js.map +1 -1
- package/dist/server/config/index.js +2 -0
- package/dist/server/config/index.js.map +1 -1
- package/dist/server/db/repositories/commit.repo.js +32 -0
- package/dist/server/db/repositories/commit.repo.js.map +1 -0
- package/dist/server/db/repositories/document.repo.js +11 -5
- package/dist/server/db/repositories/document.repo.js.map +1 -1
- package/dist/server/db/schema.js +27 -0
- package/dist/server/db/schema.js.map +1 -1
- package/dist/server/documents/commit-graph.js +52 -0
- package/dist/server/documents/commit-graph.js.map +1 -0
- package/dist/server/documents/commit-graph.test.js +52 -0
- package/dist/server/documents/commit-graph.test.js.map +1 -0
- package/dist/server/documents/document-commit.integration.test.js +197 -0
- package/dist/server/documents/document-commit.integration.test.js.map +1 -0
- package/dist/server/documents/document.service.integration.test.js +8 -1
- package/dist/server/documents/document.service.integration.test.js.map +1 -1
- package/dist/server/documents/document.service.js +290 -21
- package/dist/server/documents/document.service.js.map +1 -1
- package/dist/server/documents/document.service.test.js +1 -0
- package/dist/server/documents/document.service.test.js.map +1 -1
- package/dist/server/middleware/document-auth.middleware.js +28 -1
- package/dist/server/middleware/document-auth.middleware.js.map +1 -1
- package/dist/server/routes/documents.routes.js +83 -16
- package/dist/server/routes/documents.routes.js.map +1 -1
- package/dist/server/search/search.service.js +1 -0
- package/dist/server/search/search.service.js.map +1 -1
- package/dist/server/storage/file-store.js +23 -1
- package/dist/server/storage/file-store.js.map +1 -1
- package/dist/server/storage/paths.js +26 -0
- package/dist/server/storage/paths.js.map +1 -1
- package/dist/web/assets/{_baseUniq-C2jfm5fe.js → _baseUniq-Bt5mr5Sg.js} +1 -1
- package/dist/web/assets/{arc-BwinfL10.js → arc-DngOgKkd.js} +1 -1
- package/dist/web/assets/{architectureDiagram-Q4EWVU46-BwMdSGCO.js → architectureDiagram-Q4EWVU46-IT7muYzK.js} +1 -1
- package/dist/web/assets/{blockDiagram-DXYQGD6D-D7q8kiZ4.js → blockDiagram-DXYQGD6D-Beo5sULj.js} +1 -1
- package/dist/web/assets/{c4Diagram-AHTNJAMY-Bh0HKhD5.js → c4Diagram-AHTNJAMY-BJ-7wJwT.js} +1 -1
- package/dist/web/assets/channel-epQ5ykWT.js +1 -0
- package/dist/web/assets/{chunk-4BX2VUAB-DHALOcxM.js → chunk-4BX2VUAB-CKozhjJC.js} +1 -1
- package/dist/web/assets/{chunk-4TB4RGXK-e1SqPiMG.js → chunk-4TB4RGXK-PQDNT7_Q.js} +1 -1
- package/dist/web/assets/{chunk-55IACEB6-qh_Qhz6Y.js → chunk-55IACEB6-YSSe9cKE.js} +1 -1
- package/dist/web/assets/{chunk-EDXVE4YY-B4i4xwgx.js → chunk-EDXVE4YY-BhqUHLMZ.js} +1 -1
- package/dist/web/assets/{chunk-FMBD7UC4-C_6xnyU_.js → chunk-FMBD7UC4-7IM24lYb.js} +1 -1
- package/dist/web/assets/{chunk-OYMX7WX6-Dk00pxBq.js → chunk-OYMX7WX6-DwRSKz5j.js} +1 -1
- package/dist/web/assets/{chunk-QZHKN3VN-C-sCwrvf.js → chunk-QZHKN3VN-DHYKFJMD.js} +1 -1
- package/dist/web/assets/{chunk-YZCP3GAM-CLuBvYA_.js → chunk-YZCP3GAM-DLg5pjoy.js} +1 -1
- package/dist/web/assets/classDiagram-6PBFFD2Q-CiHf1uhs.js +1 -0
- package/dist/web/assets/classDiagram-v2-HSJHXN6E-CiHf1uhs.js +1 -0
- package/dist/web/assets/clone-BgUoGhin.js +1 -0
- package/dist/web/assets/{cose-bilkent-S5V4N54A-MD0jUjTP.js → cose-bilkent-S5V4N54A-DueL5HgY.js} +1 -1
- package/dist/web/assets/{dagre-KV5264BT-DkVfPyYV.js → dagre-KV5264BT-CvTMrLUl.js} +1 -1
- package/dist/web/assets/{diagram-5BDNPKRD-D5fdqMN8.js → diagram-5BDNPKRD-q4NHEVUW.js} +1 -1
- package/dist/web/assets/{diagram-G4DWMVQ6-DQEkU3u8.js → diagram-G4DWMVQ6-a8nJl1e5.js} +1 -1
- package/dist/web/assets/{diagram-MMDJMWI5-DqbPYCMq.js → diagram-MMDJMWI5-TBImmTdz.js} +1 -1
- package/dist/web/assets/{diagram-TYMM5635-B15Kavxs.js → diagram-TYMM5635-BF1sUiOW.js} +1 -1
- package/dist/web/assets/{erDiagram-SMLLAGMA-f2K6Efmp.js → erDiagram-SMLLAGMA-Bv2B8Exy.js} +1 -1
- package/dist/web/assets/{flowDiagram-DWJPFMVM-CJERG3tk.js → flowDiagram-DWJPFMVM-C_vyRbo9.js} +1 -1
- package/dist/web/assets/{ganttDiagram-T4ZO3ILL-CdCUq215.js → ganttDiagram-T4ZO3ILL-CWdSaU12.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-UUTBAWPF-C5jiWh6-.js → gitGraphDiagram-UUTBAWPF-BevLTyQU.js} +1 -1
- package/dist/web/assets/{graph-BaZt4gzS.js → graph-CblvkuNX.js} +1 -1
- package/dist/web/assets/index-CLOOI7eJ.css +1 -0
- package/dist/web/assets/{index-iA6LYeoe.js → index-Cv3eJNuk.js} +1258 -1223
- package/dist/web/assets/{infoDiagram-42DDH7IO-DpV55Lj8.js → infoDiagram-42DDH7IO-BKac3Yhz.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-UXIWVN3A-IPPv9B6W.js → ishikawaDiagram-UXIWVN3A-DersdL4Q.js} +1 -1
- package/dist/web/assets/{journeyDiagram-VCZTEJTY-q07mrby7.js → journeyDiagram-VCZTEJTY-CQpBsOyx.js} +1 -1
- package/dist/web/assets/{kanban-definition-6JOO6SKY-D5pYkpSn.js → kanban-definition-6JOO6SKY-BejAWn9C.js} +1 -1
- package/dist/web/assets/{layout-DZownhDd.js → layout-D2aBaGbB.js} +1 -1
- package/dist/web/assets/{linear-3L3EqBEm.js → linear-BS6JsWa0.js} +1 -1
- package/dist/web/assets/{min-DxLSkn17.js → min-CL06Vx8J.js} +1 -1
- package/dist/web/assets/{mindmap-definition-QFDTVHPH-ClLku81g.js → mindmap-definition-QFDTVHPH-O6ljclCO.js} +1 -1
- package/dist/web/assets/{pieDiagram-DEJITSTG-Yg7OrlES.js → pieDiagram-DEJITSTG-DjZMjzvi.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-34T5L4WZ-Bqa3r1HO.js → quadrantDiagram-34T5L4WZ-z3A5Dnao.js} +1 -1
- package/dist/web/assets/{requirementDiagram-MS252O5E-B7gkcf6S.js → requirementDiagram-MS252O5E-DoM2kgbQ.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-XADWPNL6-C9FqdpXf.js → sankeyDiagram-XADWPNL6-fviGw2kn.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-FGHM5R23-CCOiiyNN.js → sequenceDiagram-FGHM5R23-CgtOcbDY.js} +1 -1
- package/dist/web/assets/{stateDiagram-FHFEXIEX-CjnJpaVf.js → stateDiagram-FHFEXIEX-UpnR040Y.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-QKLJ7IA2-gFGG7JgL.js +1 -0
- package/dist/web/assets/{timeline-definition-GMOUNBTQ-DumwwfMo.js → timeline-definition-GMOUNBTQ-CjtkZKIX.js} +1 -1
- package/dist/web/assets/{vennDiagram-DHZGUBPP-BxnFQE75.js → vennDiagram-DHZGUBPP-BSxx1uwH.js} +1 -1
- package/dist/web/assets/wardley-RL74JXVD-BABpJ4WY.js +162 -0
- package/dist/web/assets/{wardleyDiagram-NUSXRM2D-BAFaHgqO.js → wardleyDiagram-NUSXRM2D-DyT1ySrj.js} +1 -1
- package/dist/web/assets/{xychartDiagram-5P7HB3ND-8PJSqkfu.js → xychartDiagram-5P7HB3ND-TAmB0u0X.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +2 -1
- package/dist/web/assets/channel-BdMmstlT.js +0 -1
- package/dist/web/assets/classDiagram-6PBFFD2Q-5uU33OTB.js +0 -1
- package/dist/web/assets/classDiagram-v2-HSJHXN6E-5uU33OTB.js +0 -1
- package/dist/web/assets/clone-DcgTUazJ.js +0 -1
- package/dist/web/assets/index-aNZO1jG4.css +0 -1
- package/dist/web/assets/stateDiagram-v2-QKLJ7IA2-CNRijl6o.js +0 -1
- package/dist/web/assets/wardley-RL74JXVD-JxjUgJ12.js +0 -162
package/dist/web/assets/{wardleyDiagram-NUSXRM2D-BAFaHgqO.js → wardleyDiagram-NUSXRM2D-DyT1ySrj.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{s as Nt,g as zt,t as At,q as Xt,a as Ct,b as Et,_ as y,l as et,L as Tt,e as Yt,A as Bt,c as H,i as Rt}from"./index-
|
|
1
|
+
import{s as Nt,g as zt,t as At,q as Xt,a as Ct,b as Et,_ as y,l as et,L as Tt,e as Yt,A as Bt,c as H,i as Rt}from"./index-Cv3eJNuk.js";import{p as Ft}from"./chunk-4BX2VUAB-CKozhjJC.js";import{p as Ot}from"./wardley-RL74JXVD-BABpJ4WY.js";import"./min-CL06Vx8J.js";import"./_baseUniq-Bt5mr5Sg.js";var q=y((a,r)=>{const e=a<=1?a*100:a;if(e<0||e>100)throw new Error(`${r} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${a}`);return e},"toPercent"),Y=y((a,r,e)=>({x:q(r,`${e} evolution`),y:q(a,`${e} visibility`)}),"toCoordinates"),tt=y(a=>{if(a){if(a==="+<>")return"bidirectional";if(a==="+<")return"backward";if(a==="+>")return"forward"}},"getFlowFromPort"),It=y(a=>{if(!(a!=null&&a.startsWith("+")))return{};const r=/^\+'([^']*)'/.exec(a),e=r==null?void 0:r[1];return a.includes("<>")?{flow:"bidirectional",label:e}:a.includes("<")?{flow:"backward",label:e}:a.includes(">")?{flow:"forward",label:e}:{label:e}},"extractFlowFromArrow"),Wt=y((a,r)=>{if(Ft(a,r),a.size&&r.setSize(a.size.width,a.size.height),a.evolution){const e=a.evolution.stages.map(o=>o.secondName?`${o.name.trim()} / ${o.secondName.trim()}`:o.name.trim()),h=a.evolution.stages.filter(o=>o.boundary!==void 0).map(o=>o.boundary);r.updateAxes({stages:e,stageBoundaries:h})}if(a.anchors.forEach(e=>{const h=Y(e.visibility,e.evolution,`Anchor "${e.name}"`);r.addNode(e.name,e.name,h.x,h.y,"anchor")}),a.components.forEach(e=>{var v;const h=Y(e.visibility,e.evolution,`Component "${e.name}"`),o=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,d=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,m=(v=e.decorator)==null?void 0:v.strategy;r.addNode(e.name,e.name,h.x,h.y,"component",o,d,e.inertia,m)}),a.notes.forEach(e=>{const h=Y(e.visibility,e.evolution,`Note "${e.text}"`);r.addNote(e.text,h.x,h.y)}),a.pipelines.forEach(e=>{const h=r.getNode(e.parent);if(!h||typeof h.y!="number")throw new Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);const o=h.y;r.startPipeline(e.parent),e.components.forEach(d=>{const m=`${e.parent}_${d.name}`,v=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,g=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,X=q(d.evolution,`Pipeline component "${d.name}" evolution`);r.addNode(m,d.name,X,o,"pipeline-component",v,g),r.addPipelineComponent(e.parent,m)})}),a.links.forEach(e=>{const h=!!e.arrow&&(e.arrow.includes("-.->")||e.arrow.includes(".-."));let o=tt(e.fromPort)??tt(e.toPort);const{flow:d,label:m}=It(e.arrow);!o&&d&&(o=d);const v=e.linkLabel,g=m??v;r.addLink(e.from,e.to,h,g,o)}),a.evolves.forEach(e=>{const h=r.getNode(e.component);if((h==null?void 0:h.y)!==void 0){const o=q(e.target,`Evolve target for "${e.component}"`);r.addTrend(e.component,o,h.y)}}),a.annotations.length>0){const e=a.annotations[0],h=Y(e.x,e.y,"Annotations box");r.setAnnotationsBox(h.x,h.y)}a.annotation.forEach(e=>{const h=Y(e.x,e.y,`Annotation ${e.number}`);r.addAnnotation(e.number,[{x:h.x,y:h.y}],e.text)}),a.accelerators.forEach(e=>{const h=Y(e.x,e.y,`Accelerator "${e.name}"`);r.addAccelerator(e.name,h.x,h.y)}),a.deaccelerators.forEach(e=>{const h=Y(e.x,e.y,`Deaccelerator "${e.name}"`);r.addDeaccelerator(e.name,h.x,h.y)})},"populateDb"),at={parser:{yy:void 0},parse:y(async a=>{var h;const r=await Ot("wardley",a);et.debug(r);const e=(h=at.parser)==null?void 0:h.yy;if(!e||typeof e.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Wt(r,e)},"parse")},R,Dt=(R=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}addNode(r){const e=this.nodes.get(r.id)??{id:r.id,label:r.label},h={...e,...r,className:r.className??e.className,labelOffsetX:r.labelOffsetX??e.labelOffsetX,labelOffsetY:r.labelOffsetY??e.labelOffsetY};this.nodes.set(r.id,h)}addLink(r){this.links.push(r)}addTrend(r){this.trends.set(r.nodeId,r)}startPipeline(r){this.pipelines.set(r,{nodeId:r,componentIds:[]});const e=this.nodes.get(r);e&&(e.isPipelineParent=!0)}addPipelineComponent(r,e){const h=this.pipelines.get(r);h&&h.componentIds.push(e);const o=this.nodes.get(e);o&&(o.inPipeline=!0)}addAnnotation(r){this.annotations.push(r)}addNote(r){this.notes.push(r)}addAccelerator(r){this.accelerators.push(r)}addDeaccelerator(r){this.deaccelerators.push(r)}setAnnotationsBox(r,e){this.annotationsBox={x:r,y:e}}setAxes(r){this.axes={...this.axes,...r}}setSize(r,e){this.size={width:r,height:e}}getNode(r){return this.nodes.get(r)}build(){const r=[];for(const e of this.nodes.values()){if(typeof e.x!="number"||typeof e.y!="number")throw new Error(`Node "${e.label}" is missing coordinates`);r.push(e)}return{nodes:r,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},y(R,"WardleyBuilder"),R),P=new Dt;function L(a){const r=H();return Rt(a.trim(),r)}y(L,"textSanitizer");function rt(){return H()["wardley-beta"]}y(rt,"getConfig");function ot(a,r,e,h,o,d,m,v,g){P.addNode({id:a,label:L(r),x:e,y:h,className:o,labelOffsetX:d,labelOffsetY:m,inertia:v,sourceStrategy:g})}y(ot,"addNode");function st(a,r,e=!1,h,o){P.addLink({source:a,target:r,dashed:e,label:h,flow:o})}y(st,"addLink");function nt(a,r,e){P.addTrend({nodeId:a,targetX:r,targetY:e})}y(nt,"addTrend");function it(a,r,e){P.addAnnotation({number:a,coordinates:r,text:e?L(e):void 0})}y(it,"addAnnotation");function dt(a,r,e){P.addNote({text:L(a),x:r,y:e})}y(dt,"addNote");function lt(a,r,e){P.addAccelerator({name:L(a),x:r,y:e})}y(lt,"addAccelerator");function ct(a,r,e){P.addDeaccelerator({name:L(a),x:r,y:e})}y(ct,"addDeaccelerator");function pt(a,r){P.setAnnotationsBox(a,r)}y(pt,"setAnnotationsBox");function ht(a,r){P.setSize(a,r)}y(ht,"setSize");function xt(a){P.startPipeline(a)}y(xt,"startPipeline");function ft(a,r){P.addPipelineComponent(a,r)}y(ft,"addPipelineComponent");function gt(a){const r={};a.xLabel&&(r.xLabel=L(a.xLabel)),a.yLabel&&(r.yLabel=L(a.yLabel)),a.stages&&(r.stages=a.stages.map(e=>L(e))),a.stageBoundaries&&(r.stageBoundaries=a.stageBoundaries),P.setAxes(r)}y(gt,"updateAxes");function ut(a){return P.getNode(a)}y(ut,"getNode");function yt(){return P.build()}y(yt,"getWardleyData");function mt(){P.clear(),Bt()}y(mt,"clear");var Gt={getConfig:rt,addNode:ot,addLink:st,addTrend:nt,addAnnotation:it,addNote:dt,addAccelerator:lt,addDeaccelerator:ct,setAnnotationsBox:pt,setSize:ht,startPipeline:xt,addPipelineComponent:ft,updateAxes:gt,getNode:ut,getWardleyData:yt,clear:mt,setAccTitle:Et,getAccTitle:Ct,setDiagramTitle:Xt,getDiagramTitle:At,getAccDescription:zt,setAccDescription:Nt},qt=["Genesis","Custom Built","Product","Commodity"],Ht=y(()=>{var r,e,h,o,d,m,v,g,X,M,b,N;const{themeVariables:a}=H();return{backgroundColor:((r=a.wardley)==null?void 0:r.backgroundColor)??a.background??"#fff",axisColor:((e=a.wardley)==null?void 0:e.axisColor)??"#000",axisTextColor:((h=a.wardley)==null?void 0:h.axisTextColor)??a.primaryTextColor??"#222",gridColor:((o=a.wardley)==null?void 0:o.gridColor)??"rgba(100, 100, 100, 0.2)",componentFill:((d=a.wardley)==null?void 0:d.componentFill)??"#fff",componentStroke:((m=a.wardley)==null?void 0:m.componentStroke)??"#000",componentLabelColor:((v=a.wardley)==null?void 0:v.componentLabelColor)??a.primaryTextColor??"#222",linkStroke:((g=a.wardley)==null?void 0:g.linkStroke)??"#000",evolutionStroke:((X=a.wardley)==null?void 0:X.evolutionStroke)??"#dc3545",annotationStroke:((M=a.wardley)==null?void 0:M.annotationStroke)??"#000",annotationTextColor:((b=a.wardley)==null?void 0:b.annotationTextColor)??a.primaryTextColor??"#222",annotationFill:((N=a.wardley)==null?void 0:N.annotationFill)??a.background??"#fff"}},"getTheme"),jt=y(()=>{const a=H()["wardley-beta"];return{width:(a==null?void 0:a.width)??900,height:(a==null?void 0:a.height)??600,padding:(a==null?void 0:a.padding)??48,nodeRadius:(a==null?void 0:a.nodeRadius)??6,nodeLabelOffset:(a==null?void 0:a.nodeLabelOffset)??8,axisFontSize:(a==null?void 0:a.axisFontSize)??12,labelFontSize:(a==null?void 0:a.labelFontSize)??10,showGrid:(a==null?void 0:a.showGrid)??!1,useMaxWidth:(a==null?void 0:a.useMaxWidth)??!0}},"getConfigValues"),_t=y((a,r,e,h)=>{var K,Q;et.debug(`Rendering Wardley map
|
|
2
2
|
`+a);const o=jt(),d=Ht(),m=o.nodeRadius*1.6,v=h.db,g=v.getWardleyData(),X=v.getDiagramTitle(),M=((K=g.size)==null?void 0:K.width)??o.width,b=((Q=g.size)==null?void 0:Q.height)??o.height,N=Tt(r);N.selectAll("*").remove(),Yt(N,b,M,o.useMaxWidth),N.attr("viewBox",`0 0 ${M} ${b}`);const S=N.append("g").attr("class","wardley-map"),j=N.append("defs");j.append("marker").attr("id",`arrow-${r}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),j.append("marker").attr("id",`link-arrow-end-${r}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),j.append("marker").attr("id",`link-arrow-start-${r}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),S.append("rect").attr("class","wardley-background").attr("width",M).attr("height",b).attr("fill",d.backgroundColor);const F=M-o.padding*2,O=b-o.padding*2;X&&S.append("text").attr("class","wardley-title").attr("x",M/2).attr("y",o.padding/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(X);const C=y(t=>o.padding+t/100*F,"projectX"),E=y(t=>b-o.padding-t/100*O,"projectY"),W=S.append("g").attr("class","wardley-axes");W.append("line").attr("x1",o.padding).attr("x2",M-o.padding).attr("y1",b-o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1),W.append("line").attr("x1",o.padding).attr("x2",o.padding).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1);const wt=g.axes.xLabel??"Evolution",bt=g.axes.yLabel??"Visibility";W.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",o.padding+F/2).attr("y",b-o.padding/4).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(wt),W.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",o.padding/3).attr("y",o.padding+O/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${o.padding/3} ${o.padding+O/2})`).text(bt);const I=g.axes.stages&&g.axes.stages.length>0?g.axes.stages:qt;if(I.length>0){const t=S.append("g").attr("class","wardley-stages"),n=g.axes.stageBoundaries,s=[];if(n&&n.length===I.length){let i=0;n.forEach(p=>{s.push({start:i,end:p}),i=p})}else{const i=1/I.length;I.forEach((p,l)=>{s.push({start:l*i,end:(l+1)*i})})}I.forEach((i,p)=>{const l=s[p],x=o.padding+l.start*F,f=o.padding+l.end*F,u=(x+f)/2;p>0&&t.append("line").attr("x1",x).attr("x2",x).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",u).attr("y",b-o.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize-2).attr("text-anchor","middle").text(i)})}if(o.showGrid){const t=S.append("g").attr("class","wardley-grid");for(let n=1;n<4;n++){const s=n/4,i=o.padding+F*s;t.append("line").attr("x1",i).attr("x2",i).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",o.padding).attr("x2",M-o.padding).attr("y1",b-o.padding-O*s).attr("y2",b-o.padding-O*s).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}const c=new Map;if(g.nodes.forEach(t=>{c.set(t.id,{x:C(t.x),y:E(t.y),node:t})}),g.pipelines.length>0){const t=S.append("g").attr("class","wardley-pipelines"),n=S.append("g").attr("class","wardley-pipeline-links");g.pipelines.forEach(s=>{if(s.componentIds.length===0)return;const i=s.componentIds.map(f=>({id:f,pos:c.get(f),node:g.nodes.find(u=>u.id===f)})).filter(f=>f.pos&&f.node).sort((f,u)=>f.node.x-u.node.x);for(let f=0;f<i.length-1;f++){const u=i[f],w=i[f+1];n.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",u.pos.x).attr("y1",u.pos.y).attr("x2",w.pos.x).attr("y2",w.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let p=1/0,l=-1/0,x=0;if(s.componentIds.forEach(f=>{const u=c.get(f);u&&(p=Math.min(p,u.x),l=Math.max(l,u.x),x=u.y)}),p!==1/0&&l!==-1/0){const u=o.nodeRadius*4,w=x-u/2,$=c.get(s.nodeId);if($){const A=(p+l)/2;$.x=A,$.y=w-m/6}t.append("rect").attr("class","wardley-pipeline-box").attr("x",p-15).attr("y",w).attr("width",l-p+15*2).attr("height",u).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}const Z=S.append("g").attr("class","wardley-links"),U=new Map;g.pipelines.forEach(t=>{U.set(t.nodeId,new Set(t.componentIds))});const J=g.links.filter(t=>{if(!c.has(t.source)||!c.has(t.target))return!1;const n=U.get(t.target);return!(n!=null&&n.has(t.source))});Z.selectAll("line").data(J).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{const n=c.get(t.source),s=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x);return n.x+l/f*p}).attr("y1",t=>{const n=c.get(t.source),s=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x);return n.y+x/f*p}).attr("x2",t=>{const n=c.get(t.source),s=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=n.x-s.x,x=n.y-s.y,f=Math.sqrt(l*l+x*x);return s.x+l/f*p}).attr("y2",t=>{const n=c.get(t.source),s=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=n.x-s.x,x=n.y-s.y,f=Math.sqrt(l*l+x*x);return s.y+x/f*p}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>t.flow==="forward"||t.flow==="bidirectional"?`url(#link-arrow-end-${r})`:null).attr("marker-start",t=>t.flow==="backward"||t.flow==="bidirectional"?`url(#link-arrow-start-${r})`:null),Z.selectAll("text").data(J.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.x+s.x)/2,p=s.y-n.y,l=s.x-n.x,x=Math.sqrt(l*l+p*p),f=8,u=p/x;return i+u*f}).attr("y",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.y+s.y)/2,p=s.x-n.x,l=s.y-n.y,x=Math.sqrt(p*p+l*l),f=8,u=-p/x;return i+u*f}).attr("fill",d.axisTextColor).attr("font-size",o.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.x+s.x)/2,p=(n.y+s.y)/2,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x),u=8,w=x/f,$=-l/f,A=i+w*u,D=p+$*u;let B=Math.atan2(x,l)*180/Math.PI;return(B>90||B<-90)&&(B+=180),`rotate(${B} ${A} ${D})`}).text(t=>t.label);const kt=S.append("g").attr("class","wardley-trends"),Pt=g.trends.map(t=>{const n=c.get(t.nodeId);if(!n)return null;const s=C(t.targetX),i=E(t.targetY),p=s-n.x,l=i-n.y,x=Math.sqrt(p*p+l*l),f=o.nodeRadius+2,u=x>f?s-p/x*f:s,w=x>f?i-l/x*f:i;return{origin:n,targetX:s,targetY:i,adjustedX2:u,adjustedY2:w}}).filter(t=>t!==null);kt.selectAll("line").data(Pt).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${r})`);const z=S.append("g").attr("class","wardley-nodes").selectAll("g").data(g.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));z.filter(t=>t.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),z.filter(t=>t.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),z.filter(t=>t.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);const T=z.filter(t=>t.sourceStrategy==="market");T.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),z.filter(t=>!t.isPipelineParent&&t.sourceStrategy!=="market"&&t.className!=="anchor").append("circle").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);const _=o.nodeRadius*.7,k=o.nodeRadius*1.2;if(T.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x).attr("y1",t=>c.get(t.id).y-k).attr("x2",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),T.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),T.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x).attr("y2",t=>c.get(t.id).y-k).attr("stroke",d.componentStroke).attr("stroke-width",1),T.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y-k).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),T.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),T.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),z.filter(t=>t.isPipelineParent===!0).append("rect").attr("x",t=>c.get(t.id).x-m/2).attr("y",t=>c.get(t.id).y-m/2).attr("width",m).attr("height",m).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),z.filter(t=>t.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",t=>{const n=c.get(t.id);let s=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(s+=o.nodeRadius+10),n.x+s}).attr("y1",t=>{const n=c.get(t.id),s=t.isPipelineParent?m:o.nodeRadius*2;return n.y-s/2}).attr("x2",t=>{const n=c.get(t.id);let s=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(s+=o.nodeRadius+10),n.x+s}).attr("y2",t=>{const n=c.get(t.id),s=t.isPipelineParent?m:o.nodeRadius*2;return n.y+s/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),z.append("text").attr("x",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetX!==void 0?n.x+t.labelOffsetX:n.x;let s=o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetX===void 0&&(s+=10);const i=t.labelOffsetX??s;return n.x+i}).attr("y",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetY!==void 0?n.y+t.labelOffsetY:n.y-3;let s=-o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetY===void 0&&(s-=10);const i=t.labelOffsetY??s;return n.y+i}).attr("class","wardley-node-label").attr("fill",t=>t.className==="evolved"?d.evolutionStroke:t.className==="anchor"?"#000":d.componentLabelColor).attr("font-size",o.labelFontSize).attr("font-weight",t=>t.className==="anchor"?"bold":"normal").attr("text-anchor",t=>t.className==="anchor"?"middle":"start").attr("dominant-baseline",t=>t.className==="anchor"?"middle":"auto").text(t=>t.label),g.annotations.length>0){const t=S.append("g").attr("class","wardley-annotations");if(g.annotations.forEach(n=>{const s=n.coordinates.map(i=>({x:C(i.x),y:E(i.y)}));if(s.length>1)for(let i=0;i<s.length-1;i++)t.append("line").attr("class","wardley-annotation-line").attr("x1",s[i].x).attr("y1",s[i].y).attr("x2",s[i+1].x).attr("y2",s[i+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");s.forEach(i=>{const p=t.append("g").attr("class","wardley-annotation");p.append("circle").attr("cx",i.x).attr("cy",i.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),p.append("text").attr("x",i.x).attr("y",i.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.number)})}),g.annotationsBox){let n=C(g.annotationsBox.x),s=E(g.annotationsBox.y);const i=10,p=16,l=11,x=t.append("g").attr("class","wardley-annotations-box"),f=[...g.annotations].filter(w=>w.text).sort((w,$)=>w.number-$.number),u=[];if(f.forEach((w,$)=>{const A=x.append("text").attr("x",n+i).attr("y",s+i+($+1)*p).attr("font-size",l).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${w.number}. ${w.text}`);u.push(A)}),u.length>0){let w=0,$=0;u.forEach(V=>{const G=V.node(),Mt=G.getComputedTextLength();w=Math.max(w,Mt);const Lt=G.getBBox();$=Math.max($,Lt.height)});const A=w+i*2+105,D=f.length*p+i*2+$/2,B=o.padding,vt=M-o.padding-A,St=o.padding,$t=b-o.padding-D;n=Math.max(B,Math.min(n,vt)),s=Math.max(St,Math.min(s,$t)),u.forEach((V,G)=>{V.attr("x",n+i).attr("y",s+i+(G+1)*p)}),x.insert("rect","text").attr("x",n).attr("y",s).attr("width",A).attr("height",D).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(g.notes.length>0){const t=S.append("g").attr("class","wardley-notes");g.notes.forEach(n=>{const s=C(n.x),i=E(n.y);t.append("text").attr("x",s).attr("y",i).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.text)})}if(g.accelerators.length>0){const t=S.append("g").attr("class","wardley-accelerators");g.accelerators.forEach(n=>{const s=C(n.x),i=E(n.y),p=60,l=30,x=20,f=`
|
|
3
3
|
M ${s} ${i-l/2}
|
|
4
4
|
L ${s+p-x} ${i-l/2}
|
package/dist/web/assets/{xychartDiagram-5P7HB3ND-8PJSqkfu.js → xychartDiagram-5P7HB3ND-TAmB0u0X.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{aC as gi,aD as xi,s as di,g as fi,t as Xt,q as pi,a as mi,b as yi,_ as a,l as Yt,L as bi,e as Ai,A as wi,F as _t,i as Ci,H as Nt,I as Si,a1 as _i,aE as ki,a9 as Wt}from"./index-
|
|
1
|
+
import{aC as gi,aD as xi,s as di,g as fi,t as Xt,q as pi,a as mi,b as yi,_ as a,l as Yt,L as bi,e as Ai,A as wi,F as _t,i as Ci,H as Nt,I as Si,a1 as _i,aE as ki,a9 as Wt}from"./index-Cv3eJNuk.js";import{l as zt}from"./linear-BS6JsWa0.js";import"./defaultLocale-DX6XiGOO.js";function Ri(e,t,i){e=+e,t=+t,i=(n=arguments.length)<2?(t=e,e=0,1):n<3?1:+i;for(var s=-1,n=Math.max(0,Math.ceil((t-e)/i))|0,o=new Array(n);++s<n;)o[s]=e+s*i;return o}function bt(){var e=gi().unknown(void 0),t=e.domain,i=e.range,s=0,n=1,o,u,p=!1,f=0,T=0,P=.5;delete e.unknown;function _(){var y=t().length,E=n<s,v=E?n:s,L=E?s:n;o=(L-v)/Math.max(1,y-f+T*2),p&&(o=Math.floor(o)),v+=(L-v-o*(y-f))*P,u=o*(1-f),p&&(v=Math.round(v),u=Math.round(u));var I=Ri(y).map(function(m){return v+o*m});return i(E?I.reverse():I)}return e.domain=function(y){return arguments.length?(t(y),_()):t()},e.range=function(y){return arguments.length?([s,n]=y,s=+s,n=+n,_()):[s,n]},e.rangeRound=function(y){return[s,n]=y,s=+s,n=+n,p=!0,_()},e.bandwidth=function(){return u},e.step=function(){return o},e.round=function(y){return arguments.length?(p=!!y,_()):p},e.padding=function(y){return arguments.length?(f=Math.min(1,T=+y),_()):f},e.paddingInner=function(y){return arguments.length?(f=Math.min(1,y),_()):f},e.paddingOuter=function(y){return arguments.length?(T=+y,_()):T},e.align=function(y){return arguments.length?(P=Math.max(0,Math.min(1,y)),_()):P},e.copy=function(){return bt(t(),[s,n]).round(p).paddingInner(f).paddingOuter(T).align(P)},xi.apply(_(),arguments)}var At=function(){var e=a(function(F,h,c,g){for(c=c||{},g=F.length;g--;c[F[g]]=h);return c},"o"),t=[1,10,12,14,16,18,19,21,23],i=[2,6],s=[1,3],n=[1,5],o=[1,6],u=[1,7],p=[1,5,10,12,14,16,18,19,21,23,34,35,36],f=[1,25],T=[1,26],P=[1,28],_=[1,29],y=[1,30],E=[1,31],v=[1,32],L=[1,33],I=[1,34],m=[1,35],R=[1,36],l=[1,37],W=[1,43],O=[1,42],X=[1,47],Y=[1,50],S=[1,10,12,14,16,18,19,21,23,34,35,36],U=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],b=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],w=[1,64],V={trace:a(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:a(function(h,c,g,x,C,r,rt){var d=r.length-1;switch(C){case 5:x.setOrientation(r[d]);break;case 9:x.setDiagramTitle(r[d].text.trim());break;case 12:x.setLineData({text:"",type:"text"},r[d]);break;case 13:x.setLineData(r[d-1],r[d]);break;case 14:x.setBarData({text:"",type:"text"},r[d]);break;case 15:x.setBarData(r[d-1],r[d]);break;case 16:this.$=r[d].trim(),x.setAccTitle(this.$);break;case 17:case 18:this.$=r[d].trim(),x.setAccDescription(this.$);break;case 19:this.$=r[d-1];break;case 20:this.$=[Number(r[d-2]),...r[d]];break;case 21:this.$=[Number(r[d])];break;case 22:x.setXAxisTitle(r[d]);break;case 23:x.setXAxisTitle(r[d-1]);break;case 24:x.setXAxisTitle({type:"text",text:""});break;case 25:x.setXAxisBand(r[d]);break;case 26:x.setXAxisRangeData(Number(r[d-2]),Number(r[d]));break;case 27:this.$=r[d-1];break;case 28:this.$=[r[d-2],...r[d]];break;case 29:this.$=[r[d]];break;case 30:x.setYAxisTitle(r[d]);break;case 31:x.setYAxisTitle(r[d-1]);break;case 32:x.setYAxisTitle({type:"text",text:""});break;case 33:x.setYAxisRangeData(Number(r[d-2]),Number(r[d]));break;case 37:this.$={text:r[d],type:"text"};break;case 38:this.$={text:r[d],type:"text"};break;case 39:this.$={text:r[d],type:"markdown"};break;case 40:this.$=r[d];break;case 41:this.$=r[d-1]+""+r[d];break}},"anonymous"),table:[e(t,i,{3:1,4:2,7:4,5:s,34:n,35:o,36:u}),{1:[3]},e(t,i,{4:2,7:4,3:8,5:s,34:n,35:o,36:u}),e(t,i,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:n,35:o,36:u}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(p,[2,34]),e(p,[2,35]),e(p,[2,36]),{1:[2,1]},e(t,i,{4:2,7:4,3:21,5:s,34:n,35:o,36:u}),{1:[2,3]},e(p,[2,5]),e(t,[2,7],{4:22,34:n,35:o,36:u}),{11:23,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},{11:39,13:38,24:W,27:O,29:40,30:41,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},{11:45,15:44,27:X,33:46,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},{11:49,17:48,24:Y,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},{11:52,17:51,24:Y,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},{20:[1,53]},{22:[1,54]},e(S,[2,18]),{1:[2,2]},e(S,[2,8]),e(S,[2,9]),e(U,[2,37],{40:55,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l}),e(U,[2,38]),e(U,[2,39]),e(b,[2,40]),e(b,[2,42]),e(b,[2,43]),e(b,[2,44]),e(b,[2,45]),e(b,[2,46]),e(b,[2,47]),e(b,[2,48]),e(b,[2,49]),e(b,[2,50]),e(b,[2,51]),e(S,[2,10]),e(S,[2,22],{30:41,29:56,24:W,27:O}),e(S,[2,24]),e(S,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},e(S,[2,11]),e(S,[2,30],{33:60,27:X}),e(S,[2,32]),{31:[1,61]},e(S,[2,12]),{17:62,24:Y},{25:63,27:w},e(S,[2,14]),{17:65,24:Y},e(S,[2,16]),e(S,[2,17]),e(b,[2,41]),e(S,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(S,[2,31]),{27:[1,69]},e(S,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(S,[2,15]),e(S,[2,26]),e(S,[2,27]),{11:59,32:72,37:24,38:f,39:T,40:27,41:P,42:_,43:y,44:E,45:v,46:L,47:I,48:m,49:R,50:l},e(S,[2,33]),e(S,[2,19]),{25:73,27:w},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:a(function(h,c){if(c.recoverable)this.trace(h);else{var g=new Error(h);throw g.hash=c,g}},"parseError"),parse:a(function(h){var c=this,g=[0],x=[],C=[null],r=[],rt=this.table,d="",ct=0,It=0,hi=2,Mt=1,li=r.slice.call(arguments,1),D=Object.create(this.lexer),$={yy:{}};for(var ft in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ft)&&($.yy[ft]=this.yy[ft]);D.setInput(h,$.yy),$.yy.lexer=D,$.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var pt=D.yylloc;r.push(pt);var ci=D.options&&D.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ui(B){g.length=g.length-2*B,C.length=C.length-B,r.length=r.length-B}a(ui,"popStack");function Vt(){var B;return B=x.pop()||D.lex()||Mt,typeof B!="number"&&(B instanceof Array&&(x=B,B=x.pop()),B=c.symbols_[B]||B),B}a(Vt,"lex");for(var M,q,z,mt,G={},ut,N,Bt,gt;;){if(q=g[g.length-1],this.defaultActions[q]?z=this.defaultActions[q]:((M===null||typeof M>"u")&&(M=Vt()),z=rt[q]&&rt[q][M]),typeof z>"u"||!z.length||!z[0]){var yt="";gt=[];for(ut in rt[q])this.terminals_[ut]&&ut>hi&>.push("'"+this.terminals_[ut]+"'");D.showPosition?yt="Parse error on line "+(ct+1)+`:
|
|
2
2
|
`+D.showPosition()+`
|
|
3
3
|
Expecting `+gt.join(", ")+", got '"+(this.terminals_[M]||M)+"'":yt="Parse error on line "+(ct+1)+": Unexpected "+(M==Mt?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(yt,{text:D.match,token:this.terminals_[M]||M,line:D.yylineno,loc:pt,expected:gt})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+M);switch(z[0]){case 1:g.push(M),C.push(D.yytext),r.push(D.yylloc),g.push(z[1]),M=null,It=D.yyleng,d=D.yytext,ct=D.yylineno,pt=D.yylloc;break;case 2:if(N=this.productions_[z[1]][1],G.$=C[C.length-N],G._$={first_line:r[r.length-(N||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(N||1)].first_column,last_column:r[r.length-1].last_column},ci&&(G._$.range=[r[r.length-(N||1)].range[0],r[r.length-1].range[1]]),mt=this.performAction.apply(G,[d,It,ct,$.yy,z[1],C,r].concat(li)),typeof mt<"u")return mt;N&&(g=g.slice(0,-1*N*2),C=C.slice(0,-1*N),r=r.slice(0,-1*N)),g.push(this.productions_[z[1]][0]),C.push(G.$),r.push(G._$),Bt=rt[g[g.length-2]][g[g.length-1]],g.push(Bt);break;case 3:return!0}}return!0},"parse")},k=function(){var F={EOF:1,parseError:a(function(c,g){if(this.yy.parser)this.yy.parser.parseError(c,g);else throw new Error(c)},"parseError"),setInput:a(function(h,c){return this.yy=c||this.yy||{},this._input=h,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:a(function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var c=h.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),h},"input"),unput:a(function(h){var c=h.length,g=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var x=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var C=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===x.length?this.yylloc.first_column:0)+x[x.length-g.length].length-g[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[C[0],C[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:a(function(){return this._more=!0,this},"more"),reject:a(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:a(function(h){this.unput(this.match.slice(h))},"less"),pastInput:a(function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:a(function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:a(function(){var h=this.pastInput(),c=new Array(h.length+1).join("-");return h+this.upcomingInput()+`
|
package/dist/web/index.html
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/assets/mdocs-logo-Dsv_2t6v.svg" />
|
|
7
7
|
<title>mdocs</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-Cv3eJNuk.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CLOOI7eJ.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
12
12
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fgbg/mdocs",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.8",
|
|
4
4
|
"description": "A Markdown knowledge base for small teams",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"lucide-react": "^0.562.0",
|
|
45
45
|
"motion": "^12.0.0",
|
|
46
46
|
"multer": "^2.1.1",
|
|
47
|
+
"react-markdown": "10.1.0",
|
|
47
48
|
"react-router-dom": "^7.14.2",
|
|
48
49
|
"remark": "^15.0.1",
|
|
49
50
|
"remark-gfm": "^4.0.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{U as a,D as n}from"./index-iA6LYeoe.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-e1SqPiMG.js";import{_ as i}from"./index-iA6LYeoe.js";import"./chunk-FMBD7UC4-C_6xnyU_.js";import"./chunk-YZCP3GAM-CLuBvYA_.js";import"./chunk-55IACEB6-qh_Qhz6Y.js";import"./chunk-EDXVE4YY-B4i4xwgx.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-e1SqPiMG.js";import{_ as i}from"./index-iA6LYeoe.js";import"./chunk-FMBD7UC4-C_6xnyU_.js";import"./chunk-YZCP3GAM-CLuBvYA_.js";import"./chunk-55IACEB6-qh_Qhz6Y.js";import"./chunk-EDXVE4YY-B4i4xwgx.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as r}from"./graph-BaZt4gzS.js";var e=4;function a(o){return r(o,e)}export{a as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.mdocs-app-root{display:flex;flex-direction:column;height:100vh;min-height:0}.mdocs-shell{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:1fr;flex:1;min-height:0}.mdocs-loading{height:100%;display:flex;align-items:center;justify-content:center}.mdocs-layout{display:flex;flex:1;min-height:0;overflow:hidden;grid-column:1 / -1}.mdocs-sidebar{background:var(--mdocs-surface);border-right:1px solid var(--mdocs-border);display:flex;flex-direction:column;min-width:0;overflow:hidden;width:240px;flex-shrink:0;transition:width .2s ease-out}.mdocs-sidebar-collapsed{width:64px}.mdocs-sidebar-collapsed .mdocs-brand span,.mdocs-sidebar-collapsed .mdocs-sidebar-actions,.mdocs-sidebar-collapsed .mdocs-sidebar-list,.mdocs-sidebar-collapsed .mdocs-visitor-footer-name{opacity:0;pointer-events:none}.mdocs-sidebar-collapsed .mdocs-sidebar-actions{display:none}.mdocs-sidebar-header{padding:8px 16px;border-bottom:1px solid var(--mdocs-border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.mdocs-sidebar-collapsed .mdocs-sidebar-header{padding:8px 12px;justify-content:center}.mdocs-sidebar-collapsed .mdocs-brand-logo{margin-right:0}.mdocs-sidebar-collapsed .mdocs-brand span{display:none}.mdocs-brand{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:24px;letter-spacing:.2px}.mdocs-brand-logo{width:24px;height:24px;display:block;flex-shrink:0}.mdocs-visitor-line{margin-top:2px;font-size:12px}.mdocs-lang-switch{margin-top:6px;font-size:12px;display:flex;align-items:center;gap:4px}.mdocs-lang-switch button{background:none;border:none;padding:0;font-size:12px;color:var(--mdocs-text-muted);cursor:pointer}.mdocs-lang-switch button.active{color:var(--mdocs-text);font-weight:600}.mdocs-lang-switch span{color:var(--mdocs-border)}.mdocs-sidebar-actions{padding:4px 16px 4px 24px;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px;flex-shrink:0;border-bottom:1px solid var(--mdocs-border)}.mdocs-sidebar-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0;cursor:pointer;opacity:.7;transition:opacity .15s,color .15s;border-radius:0;padding:0}.mdocs-sidebar-icon:hover{opacity:1;color:var(--mdocs-accent)}.mdocs-sidebar-list{flex:1;overflow-y:auto;padding:4px 8px 16px;min-height:0}.mdocs-doc-item{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:var(--mdocs-radius);background:transparent;border:1px solid transparent;color:var(--mdocs-text);margin-bottom:2px}.mdocs-doc-item:hover{background:var(--mdocs-bg)}.mdocs-doc-item.active{background:var(--mdocs-accent-soft);border-color:var(--mdocs-accent-secondary);border-left:3px solid var(--mdocs-accent)}.mdocs-doc-item-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-doc-item-path{font-size:12px;color:var(--mdocs-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-tree-row{display:grid;grid-template-columns:12px 22px minmax(0,1fr);column-gap:6px;align-items:center;width:100%;text-align:left;padding:4px 10px;border-radius:6px;background:transparent;border:1px solid transparent;color:var(--mdocs-text);margin-bottom:1px;font-size:13px;box-sizing:border-box}.mdocs-tree-row:hover{background:var(--mdocs-bg)}.mdocs-tree-row.active{background:var(--mdocs-accent-soft);border-color:var(--mdocs-accent-secondary);border-left:3px solid var(--mdocs-accent)}.mdocs-tree-select-target{background:var(--mdocs-bg);border-color:var(--mdocs-border)}.mdocs-tree-caret{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--mdocs-text-muted);font-size:10px;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--mdocs-radius-sm);transition:background .15s ease}.mdocs-tree-caret:hover{background:var(--mdocs-bg)}.mdocs-tree-caret-spacer{width:12px}.mdocs-tree-icon{justify-self:center;font-size:10px;color:var(--mdocs-text-muted);width:18px;text-align:center;padding:1px 3px;border-radius:var(--mdocs-radius-sm);background:var(--mdocs-bg)}.mdocs-tree-icon-dir{background:transparent;padding:0;justify-self:center;display:flex;align-items:center;justify-content:center}.mdocs-tree-icon-dir svg{display:block}.mdocs-sidebar-footer{padding:10px 16px;border-top:1px solid var(--mdocs-border);flex-shrink:0;display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.mdocs-sidebar-footer:hover{background:var(--mdocs-bg)}.mdocs-settings-sidebar-footer{padding:10px 16px;border-top:1px solid var(--mdocs-border);flex-shrink:0;font-size:13px;color:var(--mdocs-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.mdocs-settings-sidebar-footer:hover{background:var(--mdocs-bg);color:var(--mdocs-text)}.mdocs-visitor-avatar{width:26px;height:26px;border-radius:50%;background:var(--mdocs-accent);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mdocs-visitor-footer-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:var(--mdocs-text)}.mdocs-config-tree{flex:1;padding:8px;overflow-y:auto}.mdocs-config-item{padding:8px 12px;border-radius:6px;font-size:13px;color:var(--mdocs-text);cursor:pointer;transition:background .12s ease}.mdocs-config-item:hover:not(.active){background:var(--mdocs-bg)}.mdocs-config-item.active{background:var(--mdocs-accent-soft);font-weight:500;cursor:default}.mdocs-settings{flex:1;min-height:0;overflow-y:auto;padding:32px 40px;background:#f9fafb;-webkit-overflow-scrolling:touch}.mdocs-settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.mdocs-settings-title{margin:0;font-size:20px;font-weight:600}.mdocs-settings-cards{display:flex;flex-direction:column;gap:16px}.mdocs-settings-card{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #00000014}.mdocs-settings-search{width:100%;padding:10px 14px;border:1px solid var(--mdocs-border);border-radius:8px;font-size:14px;color:var(--mdocs-text);background:#fff;margin-bottom:16px;outline:none;transition:border-color .15s}.mdocs-settings-search:focus{border-color:var(--mdocs-primary)}.mdocs-settings-search::placeholder{color:var(--mdocs-text-muted)}.mdocs-settings-table{width:100%;border-collapse:collapse;font-size:14px}.mdocs-settings-table thead th{text-align:left;padding:12px 8px;font-weight:600;color:var(--mdocs-text-muted);border-bottom:1px solid var(--mdocs-border);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.mdocs-settings-table thead th:last-child{text-align:right}.mdocs-settings-table tbody td{padding:12px 8px;border-bottom:1px solid var(--mdocs-border-light);color:var(--mdocs-text)}.mdocs-settings-table tbody tr:last-child td{border-bottom:none}.mdocs-settings-table tbody tr:hover td{background:var(--mdocs-bg-hover)}button.small{padding:6px 12px;font-size:12px}.mdocs-settings-card-title{font-weight:600;font-size:14px;color:var(--mdocs-text);display:inline-flex;align-items:center;gap:8px}.mdocs-settings-hero{background:#f0fdf4;border-left:4px solid #22c55e;box-shadow:none}.mdocs-settings-hero-icon{font-size:16px;flex-shrink:0}.mdocs-settings-badge{display:inline-block;font-size:11px;font-weight:500;color:#16a34a;background:#dcfce7;padding:1px 8px;border-radius:9999px;line-height:1.6}.mdocs-settings-item{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;cursor:pointer}.mdocs-settings-item-info{display:flex;flex-direction:column;gap:6px;min-width:0}.mdocs-settings-item-desc{font-size:13px;color:#6b7280;line-height:1.5}.mdocs-settings-lang{display:flex;align-items:center;gap:4px;font-size:13px}.mdocs-settings-lang button{background:none;border:1px solid var(--mdocs-border);padding:6px 16px;font-size:13px;color:var(--mdocs-text-muted);cursor:pointer;border-radius:6px}.mdocs-settings-lang button.active{color:var(--mdocs-text);font-weight:600;border-color:var(--mdocs-accent);background:var(--mdocs-accent-soft)}.mdocs-settings-lang span{color:var(--mdocs-border)}.mdocs-settings-draft-link{display:flex;align-items:center;justify-content:space-between;width:100%;border:none;cursor:pointer;text-align:left;font-size:14px;color:var(--mdocs-text);background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #00000014;transition:box-shadow .15s ease}.mdocs-settings-draft-link:hover{box-shadow:0 2px 8px #0000001f}.mdocs-settings-draft-link-text{font-weight:500}.mdocs-settings-draft-arrow{font-size:20px;color:var(--mdocs-text-muted);font-weight:300}.mdocs-settings-draft-empty{color:#9ca3af;font-size:13px;text-align:center;padding:16px 24px}.mdocs-tree-folder-row{box-sizing:border-box;cursor:pointer}.mdocs-tree-folder-select{min-width:0;margin:0;padding:0;text-align:left}.mdocs-tree-folder-row:hover .mdocs-tree-label{text-decoration:underline}.mdocs-tree-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.mdocs-context-menu{position:fixed;min-width:200px;padding:4px;z-index:50;display:flex;flex-direction:column}.mdocs-context-item{text-align:left;border:none;background:transparent;padding:6px 10px;border-radius:6px;font-size:13px;color:var(--mdocs-text)}.mdocs-context-item:hover{background:var(--mdocs-bg)}.mdocs-context-item.danger{color:var(--mdocs-error)}.mdocs-context-item.danger:hover{background:var(--mdocs-error-soft)}.mdocs-document-editor-root{box-sizing:border-box;padding-left:50px;padding-right:50px;padding-top:20px;height:auto!important;min-height:100%}.mdocs-outline-siderail>div>div:first-child{border-left:1px solid var(--mdocs-border)!important;margin-top:24px!important;margin-bottom:24px!important;padding-left:16px!important;padding-right:16px!important;padding-top:20px!important}.mdocs-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden;position:relative}.mdocs-empty{flex:1;display:flex;align-items:center;justify-content:center}.mdocs-editor{display:flex;flex-direction:column;flex:1;min-height:0}.mdocs-editor-toolbar{display:flex;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid var(--mdocs-border);background:var(--mdocs-surface);flex-shrink:0}.mdocs-editor-title-input{width:200px;max-width:32vw;flex:0 0 auto;min-width:0;box-sizing:border-box}.mdocs-editor-permission-select{max-width:160px;flex:0 1 auto;min-width:100px;height:35px;padding:0 8px;border:1px solid var(--mdocs-border);border-radius:6px;background:var(--mdocs-surface);font-size:13px;color:var(--mdocs-text)}.mdocs-editor-toolbar-spacer{flex:1;min-width:4px}.mdocs-editor-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.mdocs-editor-content-area :focus-visible{outline:none}.mdocs-editor-content-area{min-width:0!important}.mdocs-editor-content-area .editor_table_scrollable_wrapper{min-width:0!important;max-width:100%!important}.mdocs-editor-content-area img{max-width:100%!important}.mdocs-editor-scroll-host{box-sizing:border-box;flex:1;min-width:0;min-height:0;overflow:auto;padding:16px 16px 0}.mdocs-editor-scroll-host:after{content:"";display:block;height:80px}.mdocs-editor-body{flex:1;display:grid;grid-template-columns:1fr;min-height:0}.mdocs-editor h1{font-size:24px;font-weight:700;margin-top:0;margin-bottom:.5em}.mdocs-editor h2{font-size:20px;font-weight:600;margin-top:1.5em;margin-bottom:.5em}.mdocs-editor h3{font-size:18px;font-weight:500;margin-top:1.2em;margin-bottom:.5em}.mdocs-editor p,.mdocs-editor li,.mdocs-editor blockquote{line-height:1.6;margin-bottom:1em}.mdocs-editor ol,.mdocs-editor ul{padding-left:24px;margin-bottom:1em}.mdocs-editor li{margin-bottom:.5em}strong.label{color:var(--mdocs-accent);font-weight:600;margin-right:8px}.mdocs-save-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;transition:background .3s ease}.mdocs-save-dot.saved{background:var(--mdocs-success)}.mdocs-save-dot.unsaved{background:var(--mdocs-warning)}.mdocs-save-dot.saving{background:var(--mdocs-warning);animation:save-dot-pulse 1s infinite}@keyframes save-dot-pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.mdocs-save-indicator{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--mdocs-text-muted)}.mdocs-settings-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;cursor:pointer}.mdocs-toggle{width:40px;height:22px;border-radius:11px;background:var(--mdocs-border);border:none;padding:2px;cursor:pointer;transition:background .2s ease;flex-shrink:0;position:relative}.mdocs-toggle.active{background:var(--mdocs-accent)}.mdocs-toggle-knob{display:block;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s ease;box-shadow:var(--mdocs-shadow)}.mdocs-toggle.active .mdocs-toggle-knob{transform:translate(18px)}.mdocs-conflict-notice{position:fixed;bottom:20px;right:20px;max-width:360px;padding:12px 16px;background:var(--mdocs-warning-soft);border:1px solid var(--mdocs-warning);border-radius:var(--mdocs-radius-lg);box-shadow:var(--mdocs-shadow-md);z-index:30;font-size:13px;color:var(--mdocs-text)}.mdocs-conflict-notice-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.mdocs-conflict-notice p{margin:0;font-size:12px;color:var(--mdocs-text-muted);line-height:1.5}.mdocs-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:30;animation:backdrop-in .2s ease}.mdocs-drawer{position:fixed;top:0;right:0;bottom:0;width:440px;max-width:100vw;background:#fff;z-index:31;display:flex;flex-direction:column;box-shadow:-4px 0 16px #0000001a;animation:drawer-slide-in .25s ease}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.mdocs-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 16px;border-bottom:1px solid var(--mdocs-border);flex-shrink:0}.mdocs-drawer-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.mdocs-drawer-title{margin:0;font-size:18px;font-weight:600;display:inline-flex;align-items:center;gap:8px}.mdocs-drawer-count-badge{display:inline-block;font-size:11px;font-weight:500;color:#16a34a;background:#dcfce7;padding:1px 8px;border-radius:9999px;line-height:1.6}.mdocs-drawer-subtitle{font-size:13px;color:var(--mdocs-text-muted)}.mdocs-drawer-close-btn{border:none;background:transparent;font-size:22px;color:var(--mdocs-text-muted);cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0}.mdocs-drawer-close-btn:hover{color:var(--mdocs-text)}.mdocs-drawer-body{flex:1;overflow-y:auto;min-height:0}.mdocs-drawer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center}.mdocs-drawer-empty-icon{width:40px;height:40px;border-radius:50%;background:#dcfce7;color:#16a34a;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.mdocs-drawer-empty-text{margin:0;font-size:14px;color:var(--mdocs-text-muted)}.mdocs-drawer-items{display:flex;flex-direction:column}.mdocs-drawer-item{display:flex;align-items:center;gap:12px;padding:14px 24px;border-bottom:1px solid var(--mdocs-border)}.mdocs-drawer-item-icon{font-size:18px;flex-shrink:0;width:24px;text-align:center}.mdocs-drawer-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.mdocs-drawer-item-name{font-weight:500;font-size:14px;color:var(--mdocs-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-drawer-item-meta{font-size:12px;color:var(--mdocs-text-muted)}.mdocs-drawer-item-error{font-size:12px;color:var(--mdocs-danger)}.mdocs-drawer-item-failed{background:var(--mdocs-danger-bg, rgba(220, 38, 38, .04))}.mdocs-drawer-item-actions{display:flex;gap:6px;flex-shrink:0}.mdocs-btn-ghost{border:none;background:transparent;padding:4px 10px;font-size:13px;cursor:pointer;border-radius:6px;font-weight:500;transition:background .12s ease}.mdocs-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.mdocs-btn-ghost-primary{color:var(--mdocs-accent)}.mdocs-btn-ghost-primary:hover:not(:disabled){background:var(--mdocs-accent-soft)}.mdocs-btn-ghost-danger{color:var(--mdocs-error)}.mdocs-btn-ghost-danger:hover:not(:disabled){background:var(--mdocs-error-soft)}.mdocs-drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--mdocs-border);flex-shrink:0}.mdocs-drawer-toast{position:absolute;bottom:80px;left:24px;right:24px;padding:10px 16px;border-radius:var(--mdocs-radius);font-size:13px;z-index:1;animation:toast-in .3s ease}.mdocs-drawer-toast--success{background:var(--mdocs-success-soft);color:var(--mdocs-success-text)}.mdocs-drawer-toast--error{background:var(--mdocs-error-soft);color:var(--mdocs-error-text)}.mdocs-toast{position:absolute;right:20px;bottom:20px;padding:8px 14px;background:#212121e6;color:#fff;border-radius:var(--mdocs-radius);font-size:12px;z-index:20;animation:toast-in .3s ease}.mdocs-toast.success{background:var(--mdocs-success-soft);color:var(--mdocs-success-text)}.mdocs-toast.warning{background:var(--mdocs-warning-soft);color:var(--mdocs-warning-text)}.mdocs-toast.error{background:var(--mdocs-error-soft);color:var(--mdocs-error-text)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mdocs-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:24px;z-index:40;animation:backdrop-in .2s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.mdocs-dialog{width:min(420px,100%);padding:24px;animation:dialog-in .3s ease}@keyframes dialog-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.mdocs-dialog h1{margin:0 0 4px;font-size:18px;font-weight:600}.mdocs-dialog p{margin:0 0 16px;color:var(--mdocs-text-muted);font-size:13px}.mdocs-dialog form,.mdocs-dialog-form{display:flex;flex-direction:column;gap:12px}.mdocs-dialog-label{display:flex;flex-direction:column;gap:6px;font-size:13px}.mdocs-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.mdocs-dialog-error{color:var(--mdocs-error);font-size:12px}.mdocs-message-dialog{width:min(360px,92vw);padding:20px 24px 16px}.mdocs-message-dialog-title{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--mdocs-text)}.mdocs-message-dialog-body{margin:0 0 16px;color:var(--mdocs-text-muted);font-size:14px;line-height:1.5;word-break:break-word}.mdocs-message-dialog-actions{display:flex;justify-content:flex-end}.mdocs-notice{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:10;max-width:560px;padding:12px 16px;display:flex;align-items:center;gap:10px}.mdocs-notice code{background:var(--mdocs-bg);padding:2px 6px;border-radius:6px;font-size:12px}.mdocs-shell-single{grid-template-columns:1fr}.mdocs-welcome{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px}.mdocs-welcome h1{margin:0;font-size:28px;font-weight:600;letter-spacing:.2px}.mdocs-welcome-lead{max-width:360px;text-align:center;line-height:1.45}.mdocs-welcome-domain{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.mdocs-welcome-domain-label{font-size:13px}.mdocs-welcome-actions{display:flex;gap:10px;margin-top:8px}.mdocs-welcome-recent{margin-top:24px;display:flex;flex-direction:column;gap:4px;min-width:240px;align-items:stretch}.mdocs-toolbar{position:sticky;top:0;z-index:10;background:var(--mdocs-surface);border-bottom:1px solid var(--mdocs-border)}.mdocs-sidebar-bookmark,.mdocs-sidebar-logout{transition:color .15s ease,background .15s ease}.mdocs-sidebar-bookmark:hover,.mdocs-sidebar-logout:hover{color:var(--mdocs-text, #111827)!important;background:var(--mdocs-bg-hover, #f3f4f6)!important}.mdocs-bookmark-btn{transition:transform .15s ease,opacity .15s ease}.mdocs-bookmark-btn:hover:not(:disabled){transform:scale(1.1)}.mdocs-tooltip{position:relative}.mdocs-tooltip:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:6px 10px;border-radius:6px;background:#000000d9;color:#fff;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;z-index:1000;pointer-events:none}.mdocs-tooltip:after{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#000000d9;opacity:0;visibility:hidden;z-index:1000;pointer-events:none}.mdocs-tooltip:hover:before,.mdocs-tooltip:hover:after{opacity:1;visibility:visible}.mdocs-tooltip-bottom:before{top:calc(100% + 8px);bottom:auto}.mdocs-tooltip-bottom:after{top:calc(100% + 1px);bottom:auto;border-top-color:transparent;border-bottom-color:#000000d9}.mdocs-bookmark-filterbar{display:flex;gap:8px;margin-bottom:12px}.mdocs-bookmark-filterbar input{flex:1;min-width:0;padding:6px 10px;border:1px solid var(--mdocs-border, #e5e7eb);border-radius:6px;font-size:13px;background:var(--mdocs-bg, #f9fafb);color:var(--mdocs-text, #111827);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.mdocs-bookmark-filterbar input:focus{border-color:var(--mdocs-accent, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.mdocs-bookmark-filterbar select{padding:6px 10px;border:1px solid var(--mdocs-border, #e5e7eb);border-radius:6px;font-size:13px;background:var(--mdocs-bg, #f9fafb);color:var(--mdocs-text, #111827);outline:none;cursor:pointer;max-width:140px}.mdocs-bookmark-filterbar select:focus{border-color:var(--mdocs-accent, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.mdocs-mini-select-trigger{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid var(--mdocs-border, #e5e5e5);border-radius:6px;font-size:12px;background:var(--mdocs-surface, #fff);color:var(--mdocs-text, #111827);cursor:pointer;min-width:72px;white-space:nowrap}.mdocs-mini-select-trigger:hover{background:var(--mdocs-bg-hover, #f5f5f5)}.mdocs-mini-select-chevron{transition:transform .15s ease}.mdocs-mini-select-chevron.open{transform:rotate(180deg)}.mdocs-mini-select-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:1000;min-width:100%;padding:4px}.mdocs-mini-select-option{width:100%;text-align:left;padding:6px 10px;border:none;background:transparent;border-radius:4px;font-size:12px;cursor:pointer}.mdocs-mini-select-option:hover{background:var(--mdocs-hover-bg, #f5f5f5)}.mdocs-mini-select-option.active{background:var(--mdocs-accent-bg, #eff6ff);color:var(--mdocs-accent, #3b82f6)}.mdocs-bookmark-table{width:100%;border-collapse:separate;border-spacing:0 2px;table-layout:fixed}.mdocs-bookmark-table th{padding:6px 12px;font-size:.75rem;color:var(--mdocs-text-muted, #999);font-weight:600;text-align:left;border-bottom:1px solid var(--mdocs-border, #eee)}.mdocs-bookmark-table td{padding:10px 12px;font-size:.8125rem;color:var(--mdocs-text-muted, #999);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-bookmark-table .mdocs-bookmark-col-title{color:var(--mdocs-text, #111827);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mdocs-bookmark-table .mdocs-bookmark-col-action{width:72px;white-space:nowrap;overflow:visible}.mdocs-bookmark-table tbody tr{border-radius:6px;transition:background .15s ease}.mdocs-bookmark-table tbody tr:hover td{background:var(--mdocs-hover-bg, #f5f5f5)}.mdocs-bookmark-removing{opacity:0;transform:translate(20px);transition:opacity .25s ease,transform .25s ease}.mdocs-recovery-dialog{width:min(520px,92vw)}.mdocs-recovery-tree-label{display:block}.mdocs-recovery-tree{max-height:180px;overflow-y:auto;border:1px solid var(--mdocs-border);border-radius:6px;padding:4px 0;background:var(--mdocs-bg, #fff)}.mdocs-recovery-tree .mdocs-sidebar-list{padding:0}.mdocs-domain-lock{flex-shrink:0}.mdocs-domain-select-wrapper{position:relative;flex:0 1 auto;min-width:120px;max-width:200px}.mdocs-domain-select-trigger{width:100%;height:35px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border:1px solid var(--mdocs-border);border-radius:var(--mdocs-radius);background:var(--mdocs-surface);font-size:13px;color:var(--mdocs-text);cursor:pointer}.mdocs-domain-select-trigger:hover{border-color:var(--mdocs-border-hover)}.mdocs-domain-select-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-domain-select-chevron{flex-shrink:0;transition:transform .15s ease}.mdocs-domain-select-chevron.open{transform:rotate(180deg)}.mdocs-domain-select-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:160px;padding:4px;z-index:50;display:flex;flex-direction:column;gap:1px}.mdocs-domain-select-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border:none;border-radius:6px;background:transparent;font-size:13px;color:var(--mdocs-text);cursor:pointer;text-align:left}.mdocs-domain-select-option:hover{background:var(--mdocs-bg)}.mdocs-domain-select-option.active{background:var(--mdocs-accent-soft);font-weight:500}.mdocs-domain-create-form{display:flex;flex-direction:column;gap:12px}.mdocs-domain-create-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mdocs-domain-name-input{flex:1;min-width:140px;padding:8px 10px;border:1px solid var(--mdocs-border);border-radius:6px;font-size:13px;background:var(--mdocs-bg);color:var(--mdocs-text);outline:none}.mdocs-domain-name-input:focus{border-color:var(--mdocs-accent)}.mdocs-domain-permission-select{flex-shrink:0}.mdocs-domain-item{display:flex;flex-direction:column;gap:12px}.mdocs-domain-item-main{display:flex;flex-direction:column;gap:4px}.mdocs-domain-item-info{display:flex;align-items:center;gap:8px}.mdocs-domain-item-name{font-weight:600;font-size:14px;color:var(--mdocs-text)}.mdocs-domain-item-meta{display:flex;align-items:center;gap:12px;font-size:12px}.mdocs-domain-permission-badge{display:inline-block;font-size:11px;font-weight:500;padding:2px 8px;border-radius:9999px;line-height:1.5}.mdocs-domain-permission-badge[data-permission=public]{color:#16a34a;background:#dcfce7}.mdocs-domain-permission-badge[data-permission=restricted]{color:#ca8a04;background:#fef9c3}.mdocs-domain-permission-badge[data-permission=private]{color:#6b7280;background:#f3f4f6}.mdocs-domain-doc-count{color:var(--mdocs-text-muted)}.mdocs-domain-item-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mdocs-domain-item-actions .mdocs-domain-permission-select button{font-size:12px;padding:4px 10px}.mdocs-domain-rename-row{display:flex;align-items:center;gap:6px}.mdocs-domain-locked-hint{font-size:12px;opacity:.6}.mdocs-domain-locked-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:-20px -24px 16px;background:#fff8e1;border-bottom:1px solid #ffecb3;border-radius:12px 12px 0 0;font-size:13px;color:#ff8f00;line-height:1.4}.mdocs-domain-locked-icon{font-size:15px;flex-shrink:0}.mdocs-domain-badge-builtin{display:inline-block;font-size:11px;font-weight:500;padding:1px 8px;border-radius:9999px;background:#e3f2fd;color:#1565c0;line-height:1.6;margin-left:8px}.mdocs-domain-badge-shared{display:inline-block;font-size:11px;font-weight:500;padding:1px 8px;border-radius:9999px;background:#f3f4f6;color:#6b7280;line-height:1.6;margin-left:8px}.mdocs-domain-not-creator{padding-top:8px;border-top:1px solid var(--mdocs-border);margin-top:4px}.mdocs-domain-error{border-left:3px solid var(--mdocs-error)}.mdocs-domain-item-actions button:disabled{pointer-events:none}.mdocs-domain-mgmt-create .mdocs-domain-mgmt-create-form{display:flex;flex-direction:column;gap:16px;margin-top:10px}.mdocs-domain-mgmt-field{display:flex;flex-direction:column;gap:6px}.mdocs-domain-mgmt-label{font-size:12px;font-weight:600;color:var(--mdocs-muted, #666)}.mdocs-domain-mgmt-fieldset{border:none;margin:0;padding:0}.mdocs-domain-mgmt-type-radios{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:6px}.mdocs-domain-mgmt-radio{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:14px}.mdocs-domain-mgmt-radio input{accent-color:var(--mdocs-accent, #2563eb)}.mdocs-domain-mgmt-submit{align-self:flex-start}.mdocs-domain-mgmt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}.mdocs-domain-mgmt-search{flex:1;min-width:160px;max-width:320px;padding:8px 12px;border:1px solid var(--mdocs-border);border-radius:8px;font-size:14px;background:var(--mdocs-input-bg, var(--mdocs-surface));color:inherit}.mdocs-domain-mgmt-filters{display:flex;flex-wrap:wrap;gap:6px}.mdocs-domain-mgmt-filter{padding:6px 12px;border:1px solid var(--mdocs-border);border-radius:999px;background:var(--mdocs-surface);font-size:12px;cursor:pointer;color:inherit}.mdocs-domain-mgmt-filter:hover{border-color:var(--mdocs-muted)}.mdocs-domain-mgmt-filter.active{border-color:var(--mdocs-accent, #2563eb);background:color-mix(in srgb,var(--mdocs-accent, #2563eb) 12%,transparent)}.mdocs-domain-table-wrap{padding:0;overflow-x:auto}.mdocs-domain-table{width:100%;border-collapse:collapse;font-size:14px}.mdocs-domain-table th,.mdocs-domain-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--mdocs-border);vertical-align:middle}.mdocs-domain-table th{font-weight:600;font-size:12px;color:var(--mdocs-muted, #666);background:color-mix(in srgb,var(--mdocs-border) 35%,transparent)}.mdocs-domain-table-num{text-align:right;white-space:nowrap;width:6rem}.mdocs-domain-table-row-builtin{background:color-mix(in srgb,var(--mdocs-border) 25%,transparent)}.mdocs-domain-table-name-cell{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mdocs-domain-table-name{font-weight:500}.mdocs-domain-table-type{display:inline-flex;align-items:center;gap:6px}.mdocs-domain-type-lock{font-size:14px;opacity:.85}.mdocs-domain-table-rename{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mdocs-domain-table-actions{min-width:12rem}.mdocs-domain-action-buttons{display:flex;flex-wrap:wrap;gap:8px}.mdocs-domain-change-type-panel{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.mdocs-domain-change-type-panel .mdocs-domain-permission-select{flex-wrap:wrap}.mdocs-domain-not-modifiable{color:var(--mdocs-muted, #666)}.mdocs-domain-not-creator-inline{font-size:12px;color:var(--mdocs-muted, #666);line-height:1.4;max-width:14rem}.mdocs-domain-table .mdocs-domain-item-actions button:disabled,.mdocs-domain-action-buttons button:disabled{pointer-events:none;opacity:.5}.mdocs-member-template-name-input{display:block;width:100%;max-width:28rem;margin-top:4px;padding:6px 0;border:none;border-bottom:1px solid var(--mdocs-border);border-radius:0;font-size:15px;font-weight:500;background:transparent;color:var(--mdocs-text);outline:none}.mdocs-member-template-name-input:focus{border-bottom-color:var(--mdocs-accent)}.mdocs-member-template-name-input:disabled{opacity:.6}.mdocs-member-template-intro,.mdocs-domain-mgmt-restricted-hint{margin:0 0 1rem;max-width:52rem;font-size:14px;color:var(--mdocs-muted, #666);line-height:1.5}.mdocs-member-template-form .mdocs-member-template-ids{width:100%;max-width:40rem;margin-top:6px;padding:10px 12px;font-family:ui-monospace,monospace;font-size:13px;border:1px solid var(--mdocs-border);border-radius:6px;background:var(--mdocs-surface, #fff);resize:vertical}.mdocs-member-template-form-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.mdocs-member-template-list{list-style:none;margin:0;padding:0}.mdocs-member-template-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--mdocs-border) 50%,transparent)}.mdocs-member-template-row:last-child{border-bottom:none}.mdocs-member-template-row-head{display:flex;flex-direction:column;gap:4px}.mdocs-member-template-row-actions{display:flex;flex-wrap:wrap;gap:8px}.mdocs-domain-member-import-title{flex:1 1 100%;margin:0;font-size:12px;font-weight:600;color:var(--mdocs-text);letter-spacing:.02em}.mdocs-domain-member-import{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed color-mix(in srgb,var(--mdocs-border) 60%,transparent)}.mdocs-domain-member-import select{min-width:10rem;padding:6px 8px;border-radius:6px;border:1px solid var(--mdocs-border)}.mdocs-domain-import-hint{font-size:12px;color:var(--mdocs-muted, #666)}.mdocs-domain-import-flash{font-size:13px;color:var(--mdocs-success, #0a7);margin-top:6px}.mdocs-member-template-members-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}.mdocs-member-template-selected-count{font-size:14px;color:var(--mdocs-text)}.mdocs-wizard-card{display:flex;flex-direction:column}.mdocs-wizard-progress{margin-bottom:20px;padding:0 4px}.mdocs-wizard-progress-track{height:3px;background:color-mix(in srgb,var(--mdocs-border) 60%,transparent);border-radius:2px;margin-bottom:12px;position:relative}.mdocs-wizard-progress-fill{height:100%;background:var(--mdocs-accent, #2563eb);border-radius:2px;transition:width .3s ease}.mdocs-wizard-progress-steps{display:flex;justify-content:space-between;align-items:flex-start}.mdocs-wizard-step-indicator{display:flex;flex-direction:column;align-items:center;gap:6px}.mdocs-wizard-step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;line-height:1;border:2px solid var(--mdocs-border);color:var(--mdocs-muted, #999);background:var(--mdocs-surface);transition:all .2s ease}.mdocs-wizard-step-circle.current{border-color:var(--mdocs-accent, #2563eb);background:var(--mdocs-accent, #2563eb);color:#fff}.mdocs-wizard-step-circle.done{border-color:#16a34a;background:#16a34a;color:#fff}.mdocs-wizard-step-label{font-size:11px;color:var(--mdocs-muted, #999);white-space:nowrap;transition:color .2s ease}.mdocs-wizard-step-label.current{color:var(--mdocs-text);font-weight:600}.mdocs-wizard-step-label.done{color:#16a34a}.mdocs-wizard-step-content{min-height:320px;display:flex;flex-direction:column;gap:14px;padding:4px 0}.mdocs-wizard-name-input{width:100%;padding:12px 14px;border:1px solid var(--mdocs-border);border-radius:8px;font-size:16px;background:var(--mdocs-surface);color:var(--mdocs-text);outline:none;transition:border-color .15s ease}.mdocs-wizard-name-input:focus{border-color:var(--mdocs-accent, #2563eb)}.mdocs-wizard-name-input[aria-invalid=true]{border-color:var(--mdocs-danger);box-shadow:0 0 0 1px var(--mdocs-danger)}.mdocs-wizard-name-input:disabled{opacity:.6}.mdocs-wizard-hint{margin:4px 0 0;font-size:12px;color:var(--mdocs-muted, #999);line-height:1.4}.mdocs-wizard-hint.danger{color:var(--mdocs-danger)}.mdocs-wizard-preview-card{border:1px solid var(--mdocs-border);border-radius:8px;padding:16px;background:var(--mdocs-bg);display:flex;flex-direction:column;gap:12px}.mdocs-wizard-preview-row{display:flex;align-items:center;gap:12px}.mdocs-wizard-preview-label{font-size:12px;font-weight:600;color:var(--mdocs-muted, #999);min-width:60px;flex-shrink:0}.mdocs-wizard-preview-value{font-size:14px;color:var(--mdocs-text);font-weight:500}.mdocs-wizard-preview-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.mdocs-wizard-preview-tag{display:inline-block;padding:3px 10px;font-size:12px;font-family:ui-monospace,monospace;background:color-mix(in srgb,var(--mdocs-accent, #2563eb) 12%,transparent);color:var(--mdocs-accent, #2563eb);border-radius:4px;line-height:1.5}.mdocs-wizard-preview-tag-more{background:color-mix(in srgb,var(--mdocs-border) 50%,transparent);color:var(--mdocs-muted, #666)}.mdocs-wizard-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--mdocs-border) 50%,transparent)}.mdocs-member-template-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.mdocs-member-template-tags-scroll{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.mdocs-member-template-tag{display:inline-block;padding:2px 8px;font-size:11px;background:color-mix(in srgb,var(--mdocs-accent, #2563eb) 12%,transparent);color:var(--mdocs-accent, #2563eb);border-radius:4px;line-height:1.6;white-space:nowrap}.mdocs-member-template-confirm-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;width:100%;padding:4px 0}.mdocs-member-template-confirm-text{font-size:13px;color:var(--mdocs-danger);line-height:1.4}.mdocs-member-template-confirm-actions{display:flex;gap:8px}.mdocs-member-template-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.mdocs-visitor-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:color-mix(in srgb,#000 45%,transparent);display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.mdocs-visitor-picker-dialog{width:min(960px,100%);max-height:min(88vh,900px);display:flex;flex-direction:column;background:var(--mdocs-surface, #fff);color:var(--mdocs-text);border-radius:12px;box-shadow:0 12px 48px color-mix(in srgb,#000 35%,transparent);border:1px solid var(--mdocs-border)}.mdocs-visitor-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--mdocs-border)}.mdocs-visitor-picker-title{margin:0;font-size:1.125rem;font-weight:600}.mdocs-visitor-picker-close{border:none;background:transparent;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--mdocs-muted, #666);padding:4px 8px;border-radius:6px}.mdocs-visitor-picker-close:hover{background:color-mix(in srgb,var(--mdocs-border) 40%,transparent)}.mdocs-visitor-picker-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:12px 18px;border-bottom:1px solid color-mix(in srgb,var(--mdocs-border) 60%,transparent)}.mdocs-visitor-picker-search{flex:1 1 100%;min-width:0;padding:6px 12px;border:1px solid var(--mdocs-border);border-radius:8px;font-size:14px}.mdocs-visitor-picker-template-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mdocs-template-picker{position:relative}.mdocs-template-picker-trigger{display:inline-flex;align-items:center;gap:6px;min-width:11rem;padding:8px 10px;border-radius:8px;border:1px solid var(--mdocs-border);background:var(--mdocs-surface);font-size:13px;color:var(--mdocs-text);cursor:pointer}.mdocs-template-picker-trigger:hover{border-color:var(--mdocs-border-hover)}.mdocs-template-picker-trigger:disabled{opacity:.5;cursor:default}.mdocs-template-picker-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdocs-template-picker-chevron{flex-shrink:0;transition:transform .15s ease}.mdocs-template-picker-chevron.open{transform:rotate(180deg)}.mdocs-template-picker-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;padding:4px;z-index:60;display:flex;flex-direction:column;gap:1px}.mdocs-template-picker-option{display:flex;align-items:center;padding:6px 10px;border:none;border-radius:6px;background:transparent;font-size:13px;color:var(--mdocs-text);cursor:pointer;text-align:left;width:100%}.mdocs-template-picker-option:hover{background:var(--mdocs-bg)}.mdocs-template-picker-option.active{background:var(--mdocs-accent-soft);font-weight:500}.mdocs-visitor-picker-error,.mdocs-visitor-picker-loading{padding:8px 18px;font-size:14px}.mdocs-visitor-picker-error{color:var(--mdocs-danger);background:color-mix(in srgb,var(--mdocs-danger) 12%,transparent)}.mdocs-visitor-picker-columns{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:280px;max-height:50vh;overflow:hidden}@media (max-width: 720px){.mdocs-visitor-picker-columns{grid-template-columns:1fr;max-height:none}}.mdocs-visitor-picker-col{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--mdocs-border)}.mdocs-visitor-picker-col:last-child{border-right:none}.mdocs-visitor-picker-col-title{margin:0;padding:10px 14px;font-size:13px;font-weight:600;background:color-mix(in srgb,var(--mdocs-border) 22%,transparent);border-bottom:1px solid var(--mdocs-border)}.mdocs-visitor-picker-table-wrap{flex:1;overflow:auto}.mdocs-visitor-picker-table{width:100%;border-collapse:collapse;font-size:13px}.mdocs-visitor-picker-table th,.mdocs-visitor-picker-table td{padding:8px 12px;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--mdocs-border) 55%,transparent);vertical-align:middle}.mdocs-visitor-picker-table th{position:sticky;top:0;background:var(--mdocs-surface, #fff);z-index:1;font-weight:600}.mdocs-visitor-picker-check-col{width:3rem;text-align:center;white-space:nowrap}.mdocs-visitor-picker-id-short{font-family:ui-monospace,monospace;font-size:12px}.mdocs-visitor-picker-id-full{font-family:ui-monospace,monospace;font-size:11px;word-break:break-all}.mdocs-visitor-picker-empty-cell{padding:24px!important;text-align:center;color:var(--mdocs-muted, #666)}.mdocs-visitor-picker-remove{border:none;background:transparent;color:var(--mdocs-danger);cursor:pointer;font-size:1.25rem;line-height:1;padding:0 4px}.mdocs-visitor-picker-locked{color:var(--mdocs-muted, #999);font-size:12px}.mdocs-visitor-picker-name-muted{color:var(--mdocs-muted, #666);font-style:italic}.mdocs-visitor-picker-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--mdocs-border)}.mdocs-visitor-picker-self-marker{color:#16a34a;font-weight:500;margin-left:4px}.mdocs-editor-with-comments{display:flex;flex:1;min-width:0;min-height:0;overflow:hidden}.mdocs-editor-container{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}.mdocs-comments-panel{width:360px;flex-shrink:0;border-left:1px solid var(--mdocs-border, #eee);background:var(--mdocs-bg-secondary, #fafafa);display:flex;flex-direction:column;overflow:hidden}.mdocs-comments-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--mdocs-border, #eee);background:#fff;flex-shrink:0}.mdocs-comments-error{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;color:#d32f2f;background:#fff5f5;border-bottom:1px solid #ffe0e0}.mdocs-comments-error button{background:none;border:none;color:#d32f2f;cursor:pointer;padding:2px;display:flex;align-items:center}.mdocs-comments-close-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#666;display:flex;align-items:center;justify-content:center}.mdocs-comments-close-btn:hover{background:var(--mdocs-hover-bg, #f0f0f0)}.mdocs-comments-list{flex:1;overflow-y:auto;padding:16px}.mdocs-comments-empty{text-align:center;color:#999;padding:2rem 0}.mdocs-comment-root{margin-bottom:16px;padding:12px;background:#fff;border-radius:8px;border:1px solid var(--mdocs-border, #eee)}.mdocs-comment-replies{margin-top:12px;margin-left:24px;padding-left:12px;border-left:2px solid var(--mdocs-border-light, #e8e8e8)}.mdocs-comment-reply{margin-bottom:8px;padding:8px;background:#fafafa;border-radius:6px}.mdocs-comment-header{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:.875rem}.mdocs-comment-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.75rem;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mdocs-comment-avatar-small{width:20px;height:20px;font-size:.7rem}.mdocs-comment-author{font-weight:500;color:#333}.mdocs-comment-time{color:#999;font-size:.8rem}.mdocs-comment-reply-to{color:var(--mdocs-primary, #1976d2);font-size:.8rem;font-weight:500}.mdocs-comment-reply-to:before{content:"↳ ";margin-right:2px;color:var(--mdocs-primary, #1976d2)}.mdocs-comment-content{font-size:.9rem;line-height:1.5;color:#333;word-break:break-word}.mdocs-comment-reply-btn{background:none;border:none;color:#1976d2;cursor:pointer;font-size:.85rem;padding:0;margin-top:4px}.mdocs-comment-reply-btn:hover{text-decoration:underline}.mdocs-comment-delete{background:none;border:none;color:#999;cursor:pointer;padding:2px;margin-left:auto;border-radius:4px;display:flex;align-items:center;justify-content:center}.mdocs-comment-delete:hover{color:#d32f2f;background:#ffebee}.mdocs-comments-input-wrapper{padding:16px;border-top:1px solid var(--mdocs-border, #eee);background:#fff;flex-shrink:0}.mdocs-comment-reply-notice{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#666;margin-bottom:8px}.mdocs-comment-reply-notice button{background:none;border:none;cursor:pointer;color:#999;font-size:.8rem;display:flex;align-items:center;gap:2px}.mdocs-comment-reply-notice button:hover{color:#666}.mdocs-comment-reply-to-name{color:#1976d2;font-weight:500}.mdocs-comments-input{width:100%;min-height:60px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;resize:vertical;font-size:.9rem;margin-bottom:4px;font-family:inherit}.mdocs-comments-char-count{text-align:right;font-size:.8rem;color:#999;margin-bottom:8px}.mdocs-comments-char-count.mdocs-char-count--warn{color:#d32f2f}.mdocs-comments-input:focus{outline:none;border-color:#1976d2}.mdocs-comments-input-actions{display:flex;justify-content:flex-end}.mdocs-btn-primary{background:#1976d2;color:#fff;border:none;padding:6px 16px;border-radius:6px;cursor:pointer;font-size:.9rem}.mdocs-btn-primary:hover{background:#1565c0}.mdocs-btn-primary:disabled{background:#90caf9;cursor:not-allowed}:root{--mdocs-accent: #4CAF50;--mdocs-accent-dark: #388E3C;--mdocs-accent-secondary: #81C784;--mdocs-accent-soft: #E8F5E9;--mdocs-accent-ring: rgba(76, 175, 80, .25);--mdocs-success: #66BB6A;--mdocs-success-soft: #E8F5E9;--mdocs-success-text: #2E7D32;--mdocs-warning: #FFB74D;--mdocs-warning-soft: #FFF3E0;--mdocs-warning-text: #EF6C00;--mdocs-error: #EF5350;--mdocs-error-soft: #FFEBEE;--mdocs-error-text: #C62828;--mdocs-danger: #E53935;--mdocs-bg: #F5F5F5;--mdocs-surface: #ffffff;--mdocs-border: #E0E0E0;--mdocs-border-hover: #BDBDBD;--mdocs-text: #212121;--mdocs-text-muted: #616161;--mdocs-text-disabled: #BDBDBD;--mdocs-radius-sm: 4px;--mdocs-radius: 8px;--mdocs-radius-lg: 12px;--mdocs-radius-xl: 16px;--mdocs-shadow: 0 1px 3px rgba(0, 0, 0, .1);--mdocs-shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--mdocs-shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;min-height:0;margin:0}body{font-family:Inter,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--mdocs-bg);color:var(--mdocs-text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--mdocs-accent);outline-offset:2px}button{font-family:inherit;font-size:inherit;border-radius:var(--mdocs-radius);border:1px solid var(--mdocs-border);background:var(--mdocs-surface);color:var(--mdocs-text);padding:6px 14px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .1s ease}button:hover{border-color:var(--mdocs-border-hover)}button:active{transform:scale(.98)}button:disabled{background:var(--mdocs-bg);border-color:var(--mdocs-border);color:var(--mdocs-text-disabled);cursor:not-allowed;transform:none}button.primary{background:var(--mdocs-accent);border-color:var(--mdocs-accent);color:#fff}button.primary:hover{background:var(--mdocs-accent-dark);border-color:var(--mdocs-accent-dark)}button.primary:active{background:var(--mdocs-accent-dark);transform:scale(.98)}button.primary:focus-visible{box-shadow:0 0 0 3px var(--mdocs-accent-ring)}button.secondary{background:transparent;border-color:var(--mdocs-accent);color:var(--mdocs-accent)}button.secondary:hover{background:var(--mdocs-accent-soft)}button.secondary:focus-visible{box-shadow:0 0 0 3px var(--mdocs-accent-ring)}button.danger{background:var(--mdocs-error);border-color:var(--mdocs-error);color:#fff}button.danger:hover{background:#d32f2f;border-color:#d32f2f}button.danger:focus-visible{box-shadow:0 0 0 3px #ef53504d}button.ghost{background:transparent;border-color:transparent;color:var(--mdocs-text-muted)}button.ghost:hover{background:var(--mdocs-bg);color:var(--mdocs-text)}input,textarea{font-family:inherit;font-size:inherit;border-radius:var(--mdocs-radius);border:1px solid var(--mdocs-border);background:var(--mdocs-surface);color:var(--mdocs-text);padding:8px 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}input:focus,textarea:focus{border-color:var(--mdocs-accent);box-shadow:0 0 0 3px var(--mdocs-accent-ring)}input:disabled,textarea:disabled{background:var(--mdocs-bg);color:var(--mdocs-text-disabled);cursor:not-allowed}select{font-family:inherit;font-size:inherit;border-radius:var(--mdocs-radius);border:1px solid var(--mdocs-border);background:var(--mdocs-surface);color:var(--mdocs-text);padding:6px 12px;outline:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}select:focus{border-color:var(--mdocs-accent);box-shadow:0 0 0 3px var(--mdocs-accent-ring)}a{color:var(--mdocs-accent);text-decoration:none}a:hover{text-decoration:underline}.muted{color:var(--mdocs-text-muted)}.card{background:var(--mdocs-surface);border:1px solid var(--mdocs-border);border-radius:var(--mdocs-radius-lg);box-shadow:var(--mdocs-shadow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--mdocs-bg)}::-webkit-scrollbar-thumb{background:var(--mdocs-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--mdocs-border-hover)}.mdocs-playground-page{box-sizing:border-box;height:100%;min-height:0;overflow-y:auto;padding:16px;background:var(--mdocs-bg);-webkit-overflow-scrolling:touch}.mdocs-playground-header{margin-bottom:12px}.mdocs-playground-back{color:var(--mdocs-accent);text-decoration:none;font-size:13px}.mdocs-playground-back:hover{text-decoration:underline}.mdocs-playground-editor{padding:16px}.mdocs-demo-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 16px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:8px}.mdocs-demo-banner a{color:#ffffffe6;text-decoration:underline}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as t,b as r,a,S as s}from"./chunk-OYMX7WX6-Dk00pxBq.js";import{_ as i}from"./index-iA6LYeoe.js";import"./chunk-55IACEB6-qh_Qhz6Y.js";import"./chunk-EDXVE4YY-B4i4xwgx.js";var l={parser:a,get db(){return new s(2)},renderer:r,styles:t,init:i(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{l as diagram};
|