Merge remote-tracking branch 'origin/docs' into ebooks
This commit is contained in:
commit
204a878ebf
|
@ -0,0 +1,614 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:java="http://www.yworks.com/xml/yfiles-common/1.0/java" xmlns:sys="http://www.yworks.com/xml/yfiles-common/markup/primitives/2.0" xmlns:x="http://www.yworks.com/xml/yfiles-common/markup/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
|
||||||
|
<!--Created by yEd 3.16.2.1-->
|
||||||
|
<key attr.name="Description" attr.type="string" for="graph" id="d0"/>
|
||||||
|
<key for="port" id="d1" yfiles.type="portgraphics"/>
|
||||||
|
<key for="port" id="d2" yfiles.type="portgeometry"/>
|
||||||
|
<key for="port" id="d3" yfiles.type="portuserdata"/>
|
||||||
|
<key attr.name="url" attr.type="string" for="node" id="d4"/>
|
||||||
|
<key attr.name="description" attr.type="string" for="node" id="d5"/>
|
||||||
|
<key for="node" id="d6" yfiles.type="nodegraphics"/>
|
||||||
|
<key for="graphml" id="d7" yfiles.type="resources"/>
|
||||||
|
<key attr.name="url" attr.type="string" for="edge" id="d8"/>
|
||||||
|
<key attr.name="description" attr.type="string" for="edge" id="d9"/>
|
||||||
|
<key for="edge" id="d10" yfiles.type="edgegraphics"/>
|
||||||
|
<graph edgedefault="directed" id="G">
|
||||||
|
<data key="d0"/>
|
||||||
|
<node id="n0">
|
||||||
|
<data key="d6">
|
||||||
|
<y:ShapeNode>
|
||||||
|
<y:Geometry height="100.75" width="245.0" x="55.75" y="32.0"/>
|
||||||
|
<y:Fill color="#FFCC00" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" raised="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="sides" modelPosition="n" textColor="#000000" verticalTextPosition="bottom" visible="true" width="42.501953125" x="101.2490234375" y="-21.96875">Config</y:NodeLabel>
|
||||||
|
<y:Shape type="roundrectangle"/>
|
||||||
|
</y:ShapeNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n1">
|
||||||
|
<data key="d4"/>
|
||||||
|
<data key="d6">
|
||||||
|
<y:ShapeNode>
|
||||||
|
<y:Geometry height="178.75" width="308.75" x="344.875" y="-46.0"/>
|
||||||
|
<y:Fill color="#FFCC00" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" raised="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="sides" modelPosition="n" textColor="#000000" verticalTextPosition="bottom" visible="true" width="85.404296875" x="111.6728515625" y="-21.96875">Book Content</y:NodeLabel>
|
||||||
|
<y:Shape type="roundrectangle"/>
|
||||||
|
</y:ShapeNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n2">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="73.0" x="75.75" y="62.0"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="53.4296875" x="9.78515625" y="17.515625">CLI Args<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n3">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="73.0" x="207.75" y="62.5"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="64.134765625" x="4.4326171875" y="17.515625">book.toml<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n4">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="115.0" x="366.0" y="62.5"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="88.10546875" x="13.447265625" y="17.515625">SUMMARY.md<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n5">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="90.0" x="540.0" y="62.5"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.3046875" x="11.34765625" y="10.53125">markdown
|
||||||
|
chapters<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n6">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="128.0" x="528.0" y="577.7202141900937"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="100.181640625" x="13.9091796875" y="17.515625">template assets<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n7">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="119.0" width="128.0" x="89.0" y="257.0"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="72.3671875" x="27.81640625" y="4.0">BookConfig</y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="73.84375" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="91.451171875" x="2.0" y="29.96875">lang
|
||||||
|
project_root
|
||||||
|
book_dest
|
||||||
|
book_src
|
||||||
|
template_path<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n8">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="90.0" width="80.0" x="357.375" y="414.2175368139224"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="33.865234375" x="23.0673828125" y="4.0">Book</y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="62.16015625" x="2.0" y="29.96875">config
|
||||||
|
metadata
|
||||||
|
toc<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n9">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="64.0" width="134.39999999999998" x="275.0" y="572.2202141900937"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="59.576171875" x="37.41191406249999" y="4.0">Renderer</y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="82.46875" x="2.0" y="29.96875">render(book)<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n10">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="90.0" width="91.0" x="2.594879150390625" y="443.7175368139224"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="53.458984375" x="18.7705078125" y="4.0">MDBook</y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="76.234375" x="2.0" y="29.96875">project_root
|
||||||
|
books
|
||||||
|
renderer<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n11">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="90.0" x="540.0" y="-20.5"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="47.62890625" x="21.185546875" y="17.515625">images<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n12">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="90.0" width="105.0" x="344.875" y="257.5"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="90.689453125" x="7.1552734375" y="4.0">BookMetadata</y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="45.90625" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="59.681640625" x="2.0" y="29.96875">title
|
||||||
|
author
|
||||||
|
publisher<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n13">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="90.0" width="115.0" x="697.8658798197348" y="369.75"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="94.275390625" x="10.3623046875" y="4.0">Vec<Chapter></y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="27.4609375" x="2.0" y="29.96875">title
|
||||||
|
file<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n14">
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="ShinyPlateNode">
|
||||||
|
<y:Geometry height="53.0" width="115.0" x="395.0" y="-20.5"/>
|
||||||
|
<y:Fill color="#FF9900" transparent="false"/>
|
||||||
|
<y:BorderStyle hasColor="false" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="88.919921875" x="13.0400390625" y="10.53125">YAML headers
|
||||||
|
(optional)<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n15">
|
||||||
|
<data key="d4"/>
|
||||||
|
<data key="d5"/>
|
||||||
|
<data key="d6">
|
||||||
|
<y:ShapeNode>
|
||||||
|
<y:Geometry height="50.0" width="110.0" x="520.0" y="257.5"/>
|
||||||
|
<y:Fill color="#FFCC00" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="13" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="34.265625" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="65.34375" x="22.328125" y="7.8671875">summary
|
||||||
|
parser<y:LabelModel>
|
||||||
|
<y:SmartNodeLabelModel distance="4.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:Shape type="ellipse"/>
|
||||||
|
</y:ShapeNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<node id="n16">
|
||||||
|
<data key="d5"/>
|
||||||
|
<data key="d6">
|
||||||
|
<y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
|
||||||
|
<y:Geometry height="90.0" width="115.0" x="515.0" y="369.75"/>
|
||||||
|
<y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
|
||||||
|
<y:BorderStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="94.884765625" x="10.0576171875" y="4.0">Vec<TocItem></y:NodeLabel>
|
||||||
|
<y:NodeLabel alignment="left" autoSizePolicy="content" configuration="com.yworks.entityRelationship.label.attributes" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="top" visible="true" width="64.837890625" x="2.0" y="29.96875">content
|
||||||
|
sub_items<y:LabelModel>
|
||||||
|
<y:ErdAttributesNodeLabelModel/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:ErdAttributesNodeLabelModelParameter/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
</y:NodeLabel>
|
||||||
|
<y:StyleProperties>
|
||||||
|
<y:Property class="java.lang.Boolean" name="y.view.ShadowNodePainter.SHADOW_PAINTING" value="true"/>
|
||||||
|
</y:StyleProperties>
|
||||||
|
</y:GenericNode>
|
||||||
|
</data>
|
||||||
|
</node>
|
||||||
|
<edge id="e0" source="n4" target="n4">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="423.5" y="89.0"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e1" source="n2" target="n7">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="-0.9141357421875003" ty="-42.31111111111111">
|
||||||
|
<y:Point x="132.33807373046875" y="181.30795288085938"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="right" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="left" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="125.921875" x="-112.17275522838912" y="92.57967131345038">behaviour control,
|
||||||
|
paths, target format<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" placement="anywhere" side="left" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:Arc height="0.17399874329566956" ratio="0.003664793446660042" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e2" source="n3" target="n7">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="22.170099099683064" ty="-59.48682694471443">
|
||||||
|
<y:Point x="197.2362518310547" y="167.87789916992188"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="left" configuration="AutoFlippingLabel" distance="1.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="right" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="37.533203125" x="-38.136329861917886" y="103.87263713435809">paths<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" placement="anywhere" side="right" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:Arc height="-13.487004280090332" ratio="-0.29697197675704956" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e3" source="n3" target="n12">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="338.1900329589844" y="183.28660583496094"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="62.16015625" x="5.276900303809384" y="76.05124071206538">metadata<y:LabelModel>
|
||||||
|
<y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
|
||||||
|
</y:LabelModel>
|
||||||
|
<y:ModelParameter>
|
||||||
|
<y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.9422441392716253" segment="0"/>
|
||||||
|
</y:ModelParameter>
|
||||||
|
<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" frozen="true" placement="anywhere" side="anywhere" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:Arc height="21.38491439819336" ratio="0.32557427883148193" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e4" source="n4" target="n15">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="511.2044982910156" y="176.3902587890625"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="71.634765625" x="-8.507094384363711" y="70.80742538314036">chapter list<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" frozen="true" placement="anywhere" side="anywhere" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:Arc height="15.182718276977539" ratio="0.2471216768026352" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e5" source="n5" target="n15">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="600.8458251953125" y="186.82730102539062"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="left" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="112.603515625" x="13.477508337639165" y="56.54677946569382">chapter attributes
|
||||||
|
chapter content<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" frozen="true" placement="anywhere" side="anywhere" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:Arc height="20.87361717224121" ratio="0.43092089891433716" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e6" source="n12" target="n8">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="397.375" y="380.8587646484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="0.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e7" source="n12" target="n12">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="397.375" y="302.5"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e8" source="n9" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="342.20001220703125" y="604.22021484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e9" source="n9" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="342.20001220703125" y="604.22021484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e10" source="n9" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="342.20001220703125" y="604.22021484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e11" source="n8" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="-32.033203125">
|
||||||
|
<y:Point x="374.1595764160156" y="517.837646484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="4.865667343139648" ratio="0.15480542182922363" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e12" source="n3" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="10.75" sy="1.0" tx="-41.46361445783125" ty="3.7797858099063433">
|
||||||
|
<y:Point x="255.0" y="608.0"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="right" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="31.9375" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="105.326171875" x="-119.66308593750006" y="446.5169677734375">renderer specific
|
||||||
|
data<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" frozen="true" placement="anywhere" side="anywhere" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e13" source="n6" target="n9">
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="17.96875" horizontalTextPosition="center" iconTextGap="4" modelName="free" modelPosition="anywhere" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="89.265625" x="-95.627685546875" y="-24.204589843749886">template path<y:PreferredPlacementDescriptor angle="0.0" angleOffsetOnRightSide="0" angleReference="absolute" angleRotationOnRightSide="co" distance="-1.0" frozen="true" placement="anywhere" side="anywhere" sideReference="relative_to_edge_flow"/>
|
||||||
|
</y:EdgeLabel>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e14" source="n14" target="n5">
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="none"/>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e15" source="n11" target="n5">
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="none"/>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e16" source="n7" target="n8">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="-24.1875" ty="0.3449631860776208">
|
||||||
|
<y:Point x="254.77264404296875" y="400.8382873535156"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="-15.272879600524902" ratio="-0.23265674710273743" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e17" source="n13" target="n13">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="755.3659057617188" y="414.75"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e18" source="n16" target="n8">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="3.9375" ty="28.46996318607762">
|
||||||
|
<y:Point x="495.9642333984375" y="472.478271484375"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="23.108753204345703" ratio="0.496753990650177" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e19" source="n13" target="n13">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:ArcEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
|
||||||
|
<y:Point x="755.3659057617188" y="414.75"/>
|
||||||
|
</y:Path>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:Arc height="0.0" ratio="1.0" type="fixedRatio"/>
|
||||||
|
</y:ArcEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e20" source="n13" target="n16">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="none"/>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
<edge id="e21" source="n15" target="n16">
|
||||||
|
<data key="d9"/>
|
||||||
|
<data key="d10">
|
||||||
|
<y:PolyLineEdge>
|
||||||
|
<y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
|
||||||
|
<y:LineStyle color="#000000" type="line" width="1.0"/>
|
||||||
|
<y:Arrows source="none" target="standard"/>
|
||||||
|
<y:BendStyle smoothed="false"/>
|
||||||
|
</y:PolyLineEdge>
|
||||||
|
</data>
|
||||||
|
</edge>
|
||||||
|
</graph>
|
||||||
|
<data key="d7">
|
||||||
|
<y:Resources/>
|
||||||
|
</data>
|
||||||
|
</graphml>
|
Binary file not shown.
After Width: | Height: | Size: 73 KiB |
Binary file not shown.
After Width: | Height: | Size: 58 KiB |
|
@ -0,0 +1,129 @@
|
||||||
|
@startuml
|
||||||
|
|
||||||
|
class book::MDBook {
|
||||||
|
project_root : PathBuf
|
||||||
|
|
||||||
|
books : HashMap<&'a str, Book>
|
||||||
|
|
||||||
|
renderer : Box<Renderer>
|
||||||
|
livereload : Option<String>
|
||||||
|
indent_spaces: i32
|
||||||
|
multilingual: bool
|
||||||
|
|
||||||
|
new(root)
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::book.Book {
|
||||||
|
config : BookConfig
|
||||||
|
metadata : BookMetadata
|
||||||
|
|
||||||
|
chapters: Vec<Chapter>
|
||||||
|
|
||||||
|
new(title)
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::bookconfig.BookConfig {
|
||||||
|
lang : Language
|
||||||
|
|
||||||
|
project_root : PathBuf
|
||||||
|
book_dest : PathBuf
|
||||||
|
book_src : PathBuf
|
||||||
|
template_path : PathBuf
|
||||||
|
|
||||||
|
new(root)
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::chapter.Chapter {
|
||||||
|
title
|
||||||
|
file
|
||||||
|
author
|
||||||
|
description
|
||||||
|
css_class
|
||||||
|
index : Vec<i32>
|
||||||
|
|
||||||
|
new(title, file)
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace book::toc {
|
||||||
|
|
||||||
|
class TocItem {
|
||||||
|
content : TocContent
|
||||||
|
sub_items: Vec<TocItem>
|
||||||
|
new(content)
|
||||||
|
}
|
||||||
|
|
||||||
|
enum TocContent {
|
||||||
|
Frontmatter "Chapter"
|
||||||
|
Mainmatter "Chapter"
|
||||||
|
Backmatter "Chapter"
|
||||||
|
Insert "Chapter"
|
||||||
|
Spacer
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace book::metadata {
|
||||||
|
|
||||||
|
class BookMetadata {
|
||||||
|
title
|
||||||
|
subtitle
|
||||||
|
description
|
||||||
|
publisher
|
||||||
|
language
|
||||||
|
authors
|
||||||
|
translators
|
||||||
|
number_format
|
||||||
|
section_names
|
||||||
|
new(title)
|
||||||
|
}
|
||||||
|
|
||||||
|
class Author {
|
||||||
|
name
|
||||||
|
email
|
||||||
|
new(name)
|
||||||
|
}
|
||||||
|
|
||||||
|
class Language {
|
||||||
|
name
|
||||||
|
code
|
||||||
|
}
|
||||||
|
|
||||||
|
class Publisher {
|
||||||
|
name
|
||||||
|
url
|
||||||
|
logo_src
|
||||||
|
}
|
||||||
|
|
||||||
|
enum NumberFormat {
|
||||||
|
Arabic
|
||||||
|
Roman
|
||||||
|
Word
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class renderer::html_handlebars::HtmlHandlebars {
|
||||||
|
new()
|
||||||
|
render(book: MDBook)
|
||||||
|
}
|
||||||
|
|
||||||
|
class theme::Theme {
|
||||||
|
index
|
||||||
|
css
|
||||||
|
favicon
|
||||||
|
js
|
||||||
|
highlight_css
|
||||||
|
tomorrow_night_css
|
||||||
|
highlight_js
|
||||||
|
jquery
|
||||||
|
new(src)
|
||||||
|
}
|
||||||
|
|
||||||
|
book::book-[hidden]->book::bookconfig
|
||||||
|
book::book-[hidden]->book::chapter
|
||||||
|
book::book-[hidden]->book::toc
|
||||||
|
book::book-[hidden]->book::metadata
|
||||||
|
|
||||||
|
renderer::html_handlebars::HtmlHandlebars-[hidden]->theme::Theme
|
||||||
|
|
||||||
|
@enduml
|
Binary file not shown.
After Width: | Height: | Size: 58 KiB |
|
@ -0,0 +1,142 @@
|
||||||
|
@startuml
|
||||||
|
|
||||||
|
class book::MDBook {
|
||||||
|
root
|
||||||
|
dest
|
||||||
|
src
|
||||||
|
theme_path
|
||||||
|
title
|
||||||
|
author
|
||||||
|
description
|
||||||
|
content : Vec<BookItem>
|
||||||
|
books : HashMap<&'a str, Book>
|
||||||
|
renderer
|
||||||
|
livereload
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::book.Book {
|
||||||
|
metadata
|
||||||
|
frontmatter
|
||||||
|
mainmatter
|
||||||
|
backmatter
|
||||||
|
|
||||||
|
new(title)
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::bookconfig.BookConfig {
|
||||||
|
root
|
||||||
|
dest
|
||||||
|
src
|
||||||
|
theme_path
|
||||||
|
title
|
||||||
|
author
|
||||||
|
description
|
||||||
|
indent_spaces
|
||||||
|
multilingual
|
||||||
|
|
||||||
|
new(root)
|
||||||
|
}
|
||||||
|
|
||||||
|
class book::chapter.Chapter {
|
||||||
|
title
|
||||||
|
file
|
||||||
|
author
|
||||||
|
description
|
||||||
|
index
|
||||||
|
class
|
||||||
|
sub_chapters
|
||||||
|
|
||||||
|
new(title, file)
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace book::bookitem {
|
||||||
|
|
||||||
|
enum BookItem {
|
||||||
|
Chapter "String, Chapter"
|
||||||
|
Affix "Chapter"
|
||||||
|
Spacer
|
||||||
|
}
|
||||||
|
|
||||||
|
class BookItems {
|
||||||
|
items : &'a [BookItem]
|
||||||
|
current_index
|
||||||
|
stack : Vec<"&'a [BookItem], usize">
|
||||||
|
}
|
||||||
|
|
||||||
|
class Chapter {
|
||||||
|
name
|
||||||
|
path
|
||||||
|
sub_items
|
||||||
|
|
||||||
|
new(name, path)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace book::metadata {
|
||||||
|
|
||||||
|
class BookMetadata {
|
||||||
|
title
|
||||||
|
subtitle
|
||||||
|
description
|
||||||
|
publisher
|
||||||
|
language
|
||||||
|
authors
|
||||||
|
translators
|
||||||
|
number_format
|
||||||
|
section_names
|
||||||
|
new(title)
|
||||||
|
}
|
||||||
|
|
||||||
|
class Author {
|
||||||
|
name
|
||||||
|
email
|
||||||
|
new(name)
|
||||||
|
}
|
||||||
|
|
||||||
|
class Language {
|
||||||
|
name
|
||||||
|
code
|
||||||
|
}
|
||||||
|
|
||||||
|
class Publisher {
|
||||||
|
name
|
||||||
|
url
|
||||||
|
logo_src
|
||||||
|
}
|
||||||
|
|
||||||
|
enum NumberFormat {
|
||||||
|
Arabic
|
||||||
|
Roman
|
||||||
|
Word
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class renderer::html_handlebars::HtmlHandlebars {
|
||||||
|
new()
|
||||||
|
render(book: MDBook)
|
||||||
|
}
|
||||||
|
|
||||||
|
class theme::Theme {
|
||||||
|
index
|
||||||
|
css
|
||||||
|
favicon
|
||||||
|
js
|
||||||
|
highlight_css
|
||||||
|
tomorrow_night_css
|
||||||
|
highlight_js
|
||||||
|
jquery
|
||||||
|
new(src)
|
||||||
|
}
|
||||||
|
|
||||||
|
book::book-[hidden]->book::bookconfig
|
||||||
|
book::book-[hidden]->book::chapter
|
||||||
|
book::book-[hidden]->book::bookitem
|
||||||
|
book::book-[hidden]->book::metadata
|
||||||
|
|
||||||
|
book::bookitem.BookItems-[hidden]->book::bookitem.BookItem
|
||||||
|
|
||||||
|
renderer::html_handlebars::HtmlHandlebars-[hidden]->theme::Theme
|
||||||
|
|
||||||
|
@enduml
|
|
@ -0,0 +1,94 @@
|
||||||
|
# Doc
|
||||||
|
|
||||||
|
Diagrams are with [yEd](http://www.yworks.com/products/yed)
|
||||||
|
and [plantuml](http://plantuml.com).
|
||||||
|
|
||||||
|
## Data
|
||||||
|
|
||||||
|
`MDBook::new(root)` parses CLI args and `book.toml` to create:
|
||||||
|
|
||||||
|
- app config settings
|
||||||
|
- `Book` for each language
|
||||||
|
|
||||||
|
Each `Book` is given their config setting with their source- and destination
|
||||||
|
paths.
|
||||||
|
|
||||||
|
The renderer can then render each book.
|
||||||
|
|
||||||
|
To render the TOC, renderer gets a Vec<TocItem> from summary parser.
|
||||||
|
|
||||||
|
The renderer walks through the Vec. It can match content kinds in an enum and
|
||||||
|
this way knows whether to render:
|
||||||
|
|
||||||
|
- front- back- or mainmatter
|
||||||
|
- spacer elements (vertical space in TOC but no chapter output)
|
||||||
|
- insert chapters (no TOC link, but the chapter is part of the reading sequence)
|
||||||
|
|
||||||
|
![book data](assets/bookdata.png)
|
||||||
|
|
||||||
|
### Renderer
|
||||||
|
|
||||||
|
Takes a book, which knows:
|
||||||
|
|
||||||
|
- metadata
|
||||||
|
- toc with chapters
|
||||||
|
- config for paths
|
||||||
|
- template assets (`template_path`)
|
||||||
|
|
||||||
|
For generating pages:
|
||||||
|
|
||||||
|
Book metadata, `BookMetadata` (title, author, publisher, etc.). Just recognize
|
||||||
|
those properties which can be easily anticipated.
|
||||||
|
|
||||||
|
If Renderer needs more specific data, it can be supplied in `book.toml`. It's
|
||||||
|
the Renderer's job to open that and parse it out.
|
||||||
|
|
||||||
|
Chapters are represented in a `Vec<TocItem>`, each item has the chapter content
|
||||||
|
as payload.
|
||||||
|
|
||||||
|
If the user wants to store attributes that are not anticipated with structs,
|
||||||
|
they can go in a hashmap with string keys, let them be accessible from the
|
||||||
|
templates with helpers.
|
||||||
|
|
||||||
|
For generating output:
|
||||||
|
|
||||||
|
- template assets, `template-path`, renderer does whatever it wants with it
|
||||||
|
- config (root, dest, etc. folders)
|
||||||
|
|
||||||
|
Renderer is seleceted by CLI or default (html). Each book is passed to this
|
||||||
|
renderer.
|
||||||
|
|
||||||
|
### Config
|
||||||
|
|
||||||
|
Takes data from:
|
||||||
|
|
||||||
|
- CLI args
|
||||||
|
- book.toml
|
||||||
|
|
||||||
|
## Structs
|
||||||
|
|
||||||
|
### Reorganized
|
||||||
|
|
||||||
|
![structs reorganized](assets/structs-reorganized.png)
|
||||||
|
|
||||||
|
### Currently
|
||||||
|
|
||||||
|
![structs](assets/structs.png)
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
Take config paths for as many things as possible. Let the user organize their
|
||||||
|
project folder differently, or allow `mdbook` to function in existing projects
|
||||||
|
with already established folders.
|
||||||
|
|
||||||
|
Add config path for `SUMMARY.md`. Default is good to be in `src/`, it allows
|
||||||
|
chapter links to work when reading the file on Github.
|
||||||
|
|
||||||
|
The init command should copy the assets folder by default, it is better to make
|
||||||
|
this choice for new users.
|
||||||
|
|
||||||
|
The specific assets (CSS, templates, etc.) are closely coupled with the book
|
||||||
|
content when the user is writing it. If the templates change when mdbook
|
||||||
|
develops, this changes the output in a way the user doesn't expect, maybe even
|
||||||
|
breaking their book.
|
||||||
|
|
Loading…
Reference in New Issue