summaryrefslogtreecommitdiff
path: root/requirements/architecture/arch-v1.drawio
diff options
context:
space:
mode:
Diffstat (limited to 'requirements/architecture/arch-v1.drawio')
-rw-r--r--requirements/architecture/arch-v1.drawio113
1 files changed, 58 insertions, 55 deletions
diff --git a/requirements/architecture/arch-v1.drawio b/requirements/architecture/arch-v1.drawio
index d6c1d3f..5e2d9b8 100644
--- a/requirements/architecture/arch-v1.drawio
+++ b/requirements/architecture/arch-v1.drawio
@@ -4,43 +4,46 @@
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
- <mxCell id="VnadkFMIBufCHQUFMUWp-2" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-70" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
+ <mxGeometry x="40" y="80" width="920" height="680" as="geometry" />
+ </mxCell>
+ <mxCell id="VnadkFMIBufCHQUFMUWp-2" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="100" y="160" width="420" height="320" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-4" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-4" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="100" y="560" width="290" height="160" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-5" target="VnadkFMIBufCHQUFMUWp-6">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-5" target="VnadkFMIBufCHQUFMUWp-6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-5" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-5" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="110" y="550" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-6" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-6" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="110" y="470" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-8" target="VnadkFMIBufCHQUFMUWp-5">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-8" target="VnadkFMIBufCHQUFMUWp-5" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-8" value="&lt;div&gt;Backups&lt;/div&gt;&lt;div&gt;store&lt;br&gt;&lt;/div&gt;" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-8" value="&lt;div&gt;Backups&lt;/div&gt;&lt;div&gt;store&lt;br&gt;&lt;/div&gt;" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" parent="1" vertex="1">
<mxGeometry x="192.5" y="595" width="105" height="90" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-11" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-11" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="600" y="160" width="320" height="160" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-12" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-12" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="600" y="360" width="320" height="160" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-13" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-13" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="600" y="560" width="320" height="160" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-37" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.25;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-15" target="VnadkFMIBufCHQUFMUWp-22">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-37" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.25;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-15" target="VnadkFMIBufCHQUFMUWp-22" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-15" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-15" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" parent="1" vertex="1">
<mxGeometry x="540" y="230" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-36" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.75;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-16" target="VnadkFMIBufCHQUFMUWp-22">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-36" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.75;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-16" target="VnadkFMIBufCHQUFMUWp-22" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="570" y="440" />
@@ -48,10 +51,10 @@
</Array>
</mxGeometry>
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-16" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-16" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" parent="1" vertex="1">
<mxGeometry x="540" y="430" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-17" target="VnadkFMIBufCHQUFMUWp-21">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-17" target="VnadkFMIBufCHQUFMUWp-21" edge="1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="550" y="640" />
@@ -59,124 +62,124 @@
</Array>
</mxGeometry>
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-17" value="SMS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-17" value="SMS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" parent="1" vertex="1">
<mxGeometry x="540" y="630" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-17">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-17" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-31" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-30">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-31" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-30" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-32" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-29">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-32" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-18" target="VnadkFMIBufCHQUFMUWp-29" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-18" value="Texting app" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-18" value="Texting app" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="630" y="580" width="110" height="120" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-21" value="SMS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-21" value="SMS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" parent="1" vertex="1">
<mxGeometry x="460" y="390" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-22" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-22" value="HTTPS" style="rounded=0;whiteSpace=wrap;html=1;rotation=90;" parent="1" vertex="1">
<mxGeometry x="460" y="230" width="120" height="20" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-33" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-26">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-33" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-26" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-34" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-27">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-34" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-27" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-35" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-16">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-35" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-25" target="VnadkFMIBufCHQUFMUWp-16" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-25" value="Web GUI" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-25" value="Web GUI" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="630" y="380" width="110" height="120" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-26" value="IndexedDB" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-26" value="IndexedDB" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="380" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-27" value="Local Storage" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-27" value="Local Storage" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="450" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-29" value="Phone storage" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-29" value="Phone storage" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="580" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-30" value="SIM storage" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-30" value="SIM storage" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="650" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-44" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-39" target="VnadkFMIBufCHQUFMUWp-15">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-44" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-39" target="VnadkFMIBufCHQUFMUWp-15" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-39" value="Desktop GUI" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-39" value="Desktop GUI" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="630" y="180" width="110" height="120" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-41" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-40" target="VnadkFMIBufCHQUFMUWp-39">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-41" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-40" target="VnadkFMIBufCHQUFMUWp-39" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-40" value="SQLite file" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-40" value="SQLite file" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="180" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-43" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.75;entryDx=0;entryDy=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-42" target="VnadkFMIBufCHQUFMUWp-39">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-43" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.75;entryDx=0;entryDy=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-42" target="VnadkFMIBufCHQUFMUWp-39" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-42" value="Config &amp;amp; cache files" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-42" value="Config &amp;amp; cache files" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="760" y="250" width="130" height="50" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-45" value="REST API" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-45" value="REST API" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="370" y="180" width="110" height="80" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-52" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-46" target="VnadkFMIBufCHQUFMUWp-22">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-52" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-46" target="VnadkFMIBufCHQUFMUWp-22" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-46" value="&lt;div&gt;Web app&lt;/div&gt;&lt;div&gt;server&lt;br&gt;&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-46" value="&lt;div&gt;Web app&lt;/div&gt;&lt;div&gt;server&lt;br&gt;&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="370" y="280" width="110" height="80" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-56" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-47" target="VnadkFMIBufCHQUFMUWp-21">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-56" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-47" target="VnadkFMIBufCHQUFMUWp-21" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-47" value="SMS API" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-47" value="SMS API" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="370" y="380" width="110" height="80" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-48" value="&lt;div&gt;CRDT&lt;/div&gt;&lt;div&gt;sync&lt;/div&gt;&lt;div&gt;server&lt;br&gt;&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-48" value="&lt;div&gt;CRDT&lt;/div&gt;&lt;div&gt;sync&lt;/div&gt;&lt;div&gt;server&lt;br&gt;&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="270" y="180" width="80" height="280" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-49" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1.004;entryY=0.143;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-45" target="VnadkFMIBufCHQUFMUWp-48">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-49" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1.004;entryY=0.143;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-45" target="VnadkFMIBufCHQUFMUWp-48" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-51" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1.004;entryY=0.86;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-47" target="VnadkFMIBufCHQUFMUWp-48">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-51" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1.004;entryY=0.86;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-47" target="VnadkFMIBufCHQUFMUWp-48" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-55" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.315;entryY=0.957;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-45" target="VnadkFMIBufCHQUFMUWp-22">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-55" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.315;entryY=0.957;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-45" target="VnadkFMIBufCHQUFMUWp-22" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-60" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-57" target="VnadkFMIBufCHQUFMUWp-58">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-60" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=none;startFill=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-57" target="VnadkFMIBufCHQUFMUWp-58" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-57" value="NoSQL DB" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-57" value="SQLite file" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="130" y="230" width="110" height="80" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-62" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-58" target="VnadkFMIBufCHQUFMUWp-6">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-62" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;startArrow=none;startFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-58" target="VnadkFMIBufCHQUFMUWp-6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-58" value="Backup service" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-58" value="Backup service" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="130" y="330" width="110" height="80" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-59" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.011;entryY=0.327;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" edge="1" parent="1" source="VnadkFMIBufCHQUFMUWp-57" target="VnadkFMIBufCHQUFMUWp-48">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-59" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.011;entryY=0.327;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=none;endFill=0;" parent="1" source="VnadkFMIBufCHQUFMUWp-57" target="VnadkFMIBufCHQUFMUWp-48" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-64" value="&lt;div align=&quot;right&quot;&gt;Server&lt;/div&gt;" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-64" value="&lt;div align=&quot;right&quot;&gt;Server&lt;/div&gt;" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="460" y="130" width="60" height="30" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-65" value="&lt;div align=&quot;right&quot;&gt;Bucket&lt;/div&gt;" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-65" value="&lt;div align=&quot;right&quot;&gt;Bucket&lt;/div&gt;" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="300" y="530" width="90" height="30" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-66" value="Desktop computer" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-66" value="Desktop computer" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="800" y="130" width="120" height="30" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-68" value="Web browser" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-68" value="Web browser" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="800" y="330" width="120" height="30" as="geometry" />
</mxCell>
- <mxCell id="VnadkFMIBufCHQUFMUWp-69" value="Mobile phone" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
+ <mxCell id="VnadkFMIBufCHQUFMUWp-69" value="Mobile phone" style="text;html=1;align=right;verticalAlign=middle;whiteSpace=wrap;rounded=0;" parent="1" vertex="1">
<mxGeometry x="800" y="530" width="120" height="30" as="geometry" />
</mxCell>
</root>