ylz 3 dni temu
rodzic
commit
8a363419e7
100 zmienionych plików z 277 dodań i 4 usunięć
  1. 1 1
      topo/assets/index.284cb160.js
  2. 0 0
      topo/assets/index.552301db.js
  3. 0 0
      topo/assets/index.7421c1ea.js
  4. 1 1
      topo/assets/index.9dd9d990.js
  5. 0 0
      topo/assets/index.a7049393.js
  6. 0 0
      topo/assets/index.a7558fd2.css
  7. 1 1
      topo/assets/index.ab1b445b.js
  8. 0 0
      topo/assets/lodash.d7993656.js
  9. 1 1
      topo/index.html
  10. 3 0
      topo/static/figures/安防弱电/云台摄像机.svg
  11. 3 0
      topo/static/figures/安防弱电/信息插座.svg
  12. 3 0
      topo/static/figures/安防弱电/出门按钮.svg
  13. 3 0
      topo/static/figures/安防弱电/半球摄像机.svg
  14. 3 0
      topo/static/figures/安防弱电/可视对讲分机.svg
  15. 3 0
      topo/static/figures/安防弱电/扬声器.svg
  16. 3 0
      topo/static/figures/安防弱电/操作键盘.svg
  17. 3 0
      topo/static/figures/安防弱电/无线AP.svg
  18. 3 0
      topo/static/figures/安防弱电/服务器.svg
  19. 3 0
      topo/static/figures/安防弱电/枪式摄像机.svg
  20. 3 0
      topo/static/figures/安防弱电/玻璃破碎探测器.svg
  21. 3 0
      topo/static/figures/安防弱电/球型摄像机.svg
  22. 3 0
      topo/static/figures/安防弱电/电视插座.svg
  23. 3 0
      topo/static/figures/安防弱电/监视器.svg
  24. 3 0
      topo/static/figures/安防弱电/磁力锁.svg
  25. 3 0
      topo/static/figures/安防弱电/紧急求助按钮.svg
  26. 3 0
      topo/static/figures/安防弱电/红外对射.svg
  27. 3 0
      topo/static/figures/安防弱电/红外探测器.svg
  28. 3 0
      topo/static/figures/安防弱电/网络交换机.svg
  29. 3 0
      topo/static/figures/安防弱电/读卡器.svg
  30. 3 0
      topo/static/figures/安防弱电/门磁开关.svg
  31. 3 0
      topo/static/figures/安防弱电/门禁控制器.svg
  32. 3 0
      topo/static/figures/安防弱电/防盗报警主机.svg
  33. 3 0
      topo/static/figures/暖通空调/冷却塔.svg
  34. 3 0
      topo/static/figures/暖通空调/冷水机组.svg
  35. 3 0
      topo/static/figures/暖通空调/加湿器.svg
  36. 3 0
      topo/static/figures/暖通空调/压力表.svg
  37. 3 0
      topo/static/figures/暖通空调/压差开关.svg
  38. 3 0
      topo/static/figures/暖通空调/变频水泵.svg
  39. 3 0
      topo/static/figures/暖通空调/换热器.svg
  40. 3 0
      topo/static/figures/暖通空调/散流器.svg
  41. 3 0
      topo/static/figures/暖通空调/新风机组.svg
  42. 3 0
      topo/static/figures/暖通空调/止回阀.svg
  43. 3 0
      topo/static/figures/暖通空调/水泵.svg
  44. 3 0
      topo/static/figures/暖通空调/水过滤器.svg
  45. 3 0
      topo/static/figures/暖通空调/流量计.svg
  46. 3 0
      topo/static/figures/暖通空调/温度传感器.svg
  47. 3 0
      topo/static/figures/暖通空调/湿度传感器.svg
  48. 3 0
      topo/static/figures/暖通空调/电动调节阀.svg
  49. 3 0
      topo/static/figures/暖通空调/电磁阀.svg
  50. 3 0
      topo/static/figures/暖通空调/百叶风口.svg
  51. 3 0
      topo/static/figures/暖通空调/离心风机.svg
  52. 3 0
      topo/static/figures/暖通空调/空调机组.svg
  53. 3 0
      topo/static/figures/暖通空调/膨胀水箱.svg
  54. 3 0
      topo/static/figures/暖通空调/蝶阀.svg
  55. 3 0
      topo/static/figures/暖通空调/轴流风机.svg
  56. 3 0
      topo/static/figures/暖通空调/闸阀.svg
  57. 3 0
      topo/static/figures/暖通空调/防火阀.svg
  58. 3 0
      topo/static/figures/暖通空调/风机盘管.svg
  59. 3 0
      topo/static/figures/暖通空调/风管.svg
  60. 3 0
      topo/static/figures/消防报警/信号蝶阀.svg
  61. 3 0
      topo/static/figures/消防报警/喷淋头.svg
  62. 3 0
      topo/static/figures/消防报警/声光报警器.svg
  63. 3 0
      topo/static/figures/消防报警/室内消火栓.svg
  64. 3 0
      topo/static/figures/消防报警/应急照明灯.svg
  65. 3 0
      topo/static/figures/消防报警/手动报警按钮.svg
  66. 3 0
      topo/static/figures/消防报警/排烟防火阀.svg
  67. 3 0
      topo/static/figures/消防报警/气体灭火钢瓶.svg
  68. 3 0
      topo/static/figures/消防报警/水流指示器.svg
  69. 3 0
      topo/static/figures/消防报警/消防应急广播.svg
  70. 3 0
      topo/static/figures/消防报警/消防接线端子箱.svg
  71. 3 0
      topo/static/figures/消防报警/消防水泵.svg
  72. 3 0
      topo/static/figures/消防报警/消防电话分机.svg
  73. 3 0
      topo/static/figures/消防报警/湿式报警阀.svg
  74. 3 0
      topo/static/figures/消防报警/火灾报警控制器.svg
  75. 3 0
      topo/static/figures/消防报警/灭火器.svg
  76. 3 0
      topo/static/figures/消防报警/点型感温探测器.svg
  77. 3 0
      topo/static/figures/消防报警/点型感烟探测器.svg
  78. 3 0
      topo/static/figures/消防报警/疏散指示灯.svg
  79. 3 0
      topo/static/figures/消防报警/防火卷帘.svg
  80. 3 0
      topo/static/figures/给排水/Y型过滤器.svg
  81. 3 0
      topo/static/figures/给排水/减压阀.svg
  82. 3 0
      topo/static/figures/给排水/化粪池.svg
  83. 3 0
      topo/static/figures/给排水/变频给水机组.svg
  84. 3 0
      topo/static/figures/给排水/地漏.svg
  85. 3 0
      topo/static/figures/给排水/存水弯.svg
  86. 3 0
      topo/static/figures/给排水/安全阀.svg
  87. 3 0
      topo/static/figures/给排水/截止阀.svg
  88. 3 0
      topo/static/figures/给排水/止回阀.svg
  89. 3 0
      topo/static/figures/给排水/水池.svg
  90. 3 0
      topo/static/figures/给排水/水流开关.svg
  91. 3 0
      topo/static/figures/给排水/水箱.svg
  92. 3 0
      topo/static/figures/给排水/水表.svg
  93. 3 0
      topo/static/figures/给排水/水龙头.svg
  94. 3 0
      topo/static/figures/给排水/浮球阀.svg
  95. 3 0
      topo/static/figures/给排水/液位计.svg
  96. 3 0
      topo/static/figures/给排水/潜水泵.svg
  97. 3 0
      topo/static/figures/给排水/球阀.svg
  98. 3 0
      topo/static/figures/给排水/电磁阀.svg
  99. 3 0
      topo/static/figures/给排水/离心水泵.svg
  100. 3 0
      topo/static/figures/给排水/蝶阀.svg

+ 1 - 1
topo/assets/index.400e04f6.js → topo/assets/index.284cb160.js

@@ -1,4 +1,4 @@
-import{M as QL,f as tI,a as eI,b as rI,c as aI,d as nI,s as iI,e as oI,g as sI,h as lI,i as uI,j as fI,k as hI,r as vI,_ as cI,t as dI,q as pI,p as gI}from"./lodash.8e7fa4e4.js";import{_ as Ml}from"./plugin-vue_export-helper.f63bf49c.js";import{g as Jt,L as zb,e as vg,o as Yt,c as Ae,y as yI,H as cg,R as mI,k as Mr,i as Fb,r as fe,s as va,j as Gt,a as pe,b as $t,n as Ur,F as Za,q as Js,m as _I,A as js,E as Ge,I as SI,d as dg,Q as Gb,C as co,J as Hb,D as Wb,t as Ya,l as $b,S as xI,T as wI,U as bI}from"./index.0f1108f6.js";const TI="/plugin/topo/assets/center.7df16192.svg",CI="/plugin/topo/assets/center_offline.29451ee7.svg",AI="/plugin/topo/assets/plus.a08ac05b.svg",DI="/plugin/topo/assets/minus.ea8cf3af.svg";/*! *****************************************************************************
+import{M as QL,f as tI,a as eI,b as rI,c as aI,d as nI,s as iI,e as oI,g as sI,h as lI,i as uI,j as fI,k as hI,r as vI,_ as cI,t as dI,y as pI,u as gI}from"./lodash.d7993656.js";import{_ as Ml}from"./plugin-vue_export-helper.f63bf49c.js";import{g as Jt,L as zb,e as vg,o as Yt,c as Ae,y as yI,H as cg,R as mI,k as Mr,i as Fb,r as fe,s as va,j as Gt,a as pe,b as $t,n as Ur,F as Za,q as Js,m as _I,A as js,E as Ge,I as SI,d as dg,Q as Gb,C as co,J as Hb,D as Wb,t as Ya,l as $b,S as xI,T as wI,U as bI}from"./index.7421c1ea.js";const TI="/plugin/topo/assets/center.7df16192.svg",CI="/plugin/topo/assets/center_offline.29451ee7.svg",AI="/plugin/topo/assets/plus.a08ac05b.svg",DI="/plugin/topo/assets/minus.ea8cf3af.svg";/*! *****************************************************************************
 Copyright (c) Microsoft Corporation.
 
 Permission to use, copy, modify, and/or distribute this software for any

Plik diff jest za duży
+ 0 - 0
topo/assets/index.552301db.js


Plik diff jest za duży
+ 0 - 0
topo/assets/index.7421c1ea.js


+ 1 - 1
topo/assets/index.67845729.js → topo/assets/index.9dd9d990.js

@@ -1 +1 @@
-import{c as e,o as t}from"./index.0f1108f6.js";const o={class:"page-wrapper full text-center text-8xl mt-10 font-bold"},s={__name:"index",setup(c){return(r,a)=>(t(),e("div",o,"404 "))}};export{s as default};
+import{c as e,o as t}from"./index.7421c1ea.js";const o={class:"page-wrapper full text-center text-8xl mt-10 font-bold"},s={__name:"index",setup(c){return(r,a)=>(t(),e("div",o,"404 "))}};export{s as default};

Plik diff jest za duży
+ 0 - 0
topo/assets/index.a7049393.js


Plik diff jest za duży
+ 0 - 0
topo/assets/index.a7558fd2.css


+ 1 - 1
topo/assets/index.5c46528c.js → topo/assets/index.ab1b445b.js

@@ -1 +1 @@
-import{_ as o}from"./plugin-vue_export-helper.f63bf49c.js";import{c as t,a as s,b as _,r as c,o as n}from"./index.0f1108f6.js";const a={},r={class:"layout"},d={class:"main-content"};function i(l,p){const e=c("router-view");return n(),t("div",r,[s("div",d,[_(e)])])}const v=o(a,[["render",i],["__scopeId","data-v-4ae819da"]]);export{v as default};
+import{_ as o}from"./plugin-vue_export-helper.f63bf49c.js";import{c as t,a as s,b as _,r as c,o as n}from"./index.7421c1ea.js";const a={},r={class:"layout"},d={class:"main-content"};function i(l,p){const e=c("router-view");return n(),t("div",r,[s("div",d,[_(e)])])}const v=o(a,[["render",i],["__scopeId","data-v-4ae819da"]]);export{v as default};

Plik diff jest za duży
+ 0 - 0
topo/assets/lodash.d7993656.js


+ 1 - 1
topo/index.html

@@ -14,7 +14,7 @@
     <link rel="stylesheet" href="//at.alicdn.com/t/font_3218912_366sz3716ll.css" />
     <script src="/plugin/topo/config.js"></script>
     <script src="../../config.js"></script>
-    <script type="module" crossorigin src="/plugin/topo/assets/index.0f1108f6.js"></script>
+    <script type="module" crossorigin src="/plugin/topo/assets/index.7421c1ea.js"></script>
     <link rel="stylesheet" href="/plugin/topo/assets/index.8c0d20ab.css">
   </head>
 

+ 3 - 0
topo/static/figures/安防弱电/云台摄像机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="26" width="44" height="22" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="74" cy="37" r="7" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="74" cy="37" r="3" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="46" y1="48" x2="46" y2="60" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="34" y1="60" x2="58" y2="60" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="46" y1="60" x2="46" y2="76" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="32" y1="76" x2="60" y2="76" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/信息插座.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="28" width="44" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="56" font-size="15" text-anchor="middle" fill="currentColor" font-family="sans-serif">TD</text>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/出门按钮.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="32" y="28" width="36" height="44" rx="6" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="10" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/半球摄像机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="24" y1="38" x2="76" y2="38" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 30 38 a 20 20 0 0 0 40 0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="54" r="6" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="50" y1="18" x2="50" y2="38" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/可视对讲分机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="30" y="20" width="40" height="60" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><rect x="36" y="28" width="28" height="20" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="50" cy="62" r="6" fill="none" stroke="currentColor" stroke-width="2.5"/><circle cx="50" cy="62" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/扬声器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 28 42 l 16 -12 l 0 40 l -16 -12 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="22" y="42" width="6" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 54 38 a 13 13 0 0 1 0 24 M 62 30 a 23 23 0 0 1 0 40" fill="none" stroke="currentColor" stroke-width="2.5"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/操作键盘.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 16 36 l 68 0 l -6 28 l -56 0 Z" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="30" cy="46" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="40" cy="46" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="46" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="60" cy="46" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="70" cy="46" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="35" cy="55" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="45" cy="55" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="55" cy="55" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="65" cy="55" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/无线AP.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="50" cy="72" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/><path d="M 36 58 a 20 20 0 0 1 28 0 M 28 46 a 32 32 0 0 1 44 0 M 20 34 a 44 44 0 0 1 60 0" fill="none" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/服务器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="30" y="16" width="40" height="68" rx="3" fill="none" stroke="currentColor" stroke-width="3"/><line x1="36" y1="28" x2="64" y2="28" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="36" y1="40" x2="64" y2="40" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="36" y1="52" x2="64" y2="52" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="36" y1="64" x2="64" y2="64" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="36" y1="76" x2="64" y2="76" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="60" cy="22" r="1.8" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="60" cy="34" r="1.8" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="60" cy="46" r="1.8" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/枪式摄像机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="20" y="38" width="48" height="24" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="74" cy="50" r="9" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="74" cy="50" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="40" y1="62" x2="40" y2="76" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="28" y1="76" x2="52" y2="76" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/玻璃破碎探测器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="30" y="30" width="40" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 38 36 l 10 12 l -6 4 l 12 10 M 62 36 l -8 10" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/球型摄像机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="36" y="14" width="28" height="14" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><circle cx="50" cy="52" r="24" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="58" r="7" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="50" y1="76" x2="50" y2="90" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/电视插座.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="28" width="44" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="56" font-size="15" text-anchor="middle" fill="currentColor" font-family="sans-serif">TV</text>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/监视器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="22" y="24" width="56" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><rect x="28" y="30" width="44" height="24" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><line x1="50" y1="60" x2="50" y2="70" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="36" y1="72" x2="64" y2="72" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/磁力锁.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="26" width="52" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><rect x="38" y="52" width="24" height="14" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 44 42 l 0 10 M 56 42 l 0 10" stroke="currentColor" stroke-width="2"/><line x1="76" y1="34" x2="88" y2="34" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="88" y1="34" x2="88" y2="60" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/紧急求助按钮.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="30" y="26" width="40" height="48" rx="6" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="48" font-size="13" text-anchor="middle" fill="currentColor" font-family="sans-serif">SOS</text><circle cx="50" cy="62" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/红外对射.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="22" y="30" width="8" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><rect x="70" y="30" width="8" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 30 40 l 40 0 M 30 50 l 40 0 M 30 60 l 40 0" stroke="currentColor" stroke-width="2" stroke-dasharray="4 3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/红外探测器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 32 42 a 18 18 0 0 1 36 0 l 0 8 l -36 0 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 30 62 l 40 0 M 36 72 l 28 0" stroke="currentColor" stroke-width="2"/><path d="M 40 30 l -4 -8 M 50 28 l 0 -10 M 60 30 l 4 -8" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/网络交换机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="16" y="36" width="68" height="26" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 26 44 l 8 0 m -3 -3 l 3 3 l -3 3 M 42 54 l 8 0 m -3 -3 l 3 3 l -3 3 M 58 44 l 8 0 m -3 -3 l 3 3 l -3 3" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="74" cy="54" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/读卡器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="34" y="24" width="32" height="52" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><rect x="40" y="32" width="20" height="10" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><line x1="42" y1="52" x2="58" y2="52" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="42" y1="60" x2="58" y2="60" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="50" cy="69" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/门磁开关.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="34" width="16" height="32" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><rect x="56" y="34" width="16" height="32" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="44" y1="50" x2="56" y2="50" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-dasharray="3 3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/门禁控制器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="26" y="22" width="48" height="56" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><rect x="34" y="30" width="32" height="14" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="38" cy="56" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="56" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="62" cy="56" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="38" cy="66" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="66" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="62" cy="66" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/安防弱电/防盗报警主机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="26" width="52" height="44" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><rect x="32" y="34" width="24" height="12" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="66" cy="40" r="4" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="38" cy="58" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="48" cy="58" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="58" cy="58" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="70" y1="26" x2="78" y2="12" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="78" cy="11" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/冷却塔.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 24 88 l 8 -36 l 36 0 l 8 36 Z" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="42" r="12" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 32 l 0 20 M 40 42 l 20 0" stroke="currentColor" stroke-width="2"/><path d="M 34 66 q 8 6 16 0 q 8 -6 16 0" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/冷水机组.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="14" y="32" width="72" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="34" cy="52" r="11" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="66" cy="52" r="11" fill="none" stroke="currentColor" stroke-width="3"/><text x="34" y="57" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">C</text><text x="66" y="57" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">E</text><line x1="50" y1="8" x2="50" y2="32" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="72" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/加湿器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="34" width="44" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 38 30 q -4 -6 0 -12 M 50 30 q -4 -6 0 -12 M 62 30 q -4 -6 0 -12" fill="none" stroke="currentColor" stroke-width="2"/><text x="50" y="58" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">加湿</text><line x1="50" y1="70" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/压力表.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><circle cx="50" cy="50" r="16" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 50 L 58 40" stroke="currentColor" stroke-width="2.5"/><circle cx="50" cy="50" r="2.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/压差开关.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="32" y="32" width="36" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="55" font-size="13" text-anchor="middle" fill="currentColor" font-family="sans-serif">ΔP</text><line x1="50" y1="68" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="8" x2="50" y2="32" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/变频水泵.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="38" cy="46" r="16" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 38 35 L 29 55 L 47 55 Z" fill="currentColor"/><rect x="58" y="30" width="26" height="20" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><text x="71" y="45" font-size="11" text-anchor="middle" fill="currentColor" font-family="sans-serif">VFD</text><line x1="30" y1="72" x2="54" y2="72" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="38" y1="62" x2="38" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/换热器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="30" width="52" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 32 40 l 8 8 l -8 8 l 8 8 m 12 -24 l 8 8 l -8 8 l 8 8" fill="none" stroke="currentColor" stroke-width="2.5"/><line x1="50" y1="8" x2="50" y2="30" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="70" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/散流器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="22" y="22" width="56" height="56" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="22" y1="22" x2="78" y2="78" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="78" y1="22" x2="22" y2="78" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><rect x="36" y="36" width="28" height="28" rx="0" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/新风机组.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="14" y="32" width="72" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="38" cy="50" r="11" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 38 41 l 0 18 M 29 50 l 18 0" stroke="currentColor" stroke-width="2"/><path d="M 56 40 l 10 0 l 0 8 l 14 0 M 56 60 l 10 0 l 0 -8 l 14 0" fill="none" stroke="currentColor" stroke-width="2.5"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/止回阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 26 40 L 50 52 L 26 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 60 40 l 0 24" stroke="currentColor" stroke-width="3" fill="none"/><circle cx="55" cy="52" r="3.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/水泵.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="46" cy="46" r="20" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 46 32 L 34 56 L 58 56 Z" fill="currentColor"/><line x1="36" y1="72" x2="56" y2="72" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="66" x2="46" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="8" x2="46" y2="26" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/水过滤器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><rect x="30" y="38" width="40" height="24" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="30" y1="62" x2="50" y2="38" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="40" y1="62" x2="60" y2="38" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="50" y1="62" x2="70" y2="38" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/流量计.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><circle cx="50" cy="50" r="16" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="56" font-size="15" text-anchor="middle" fill="currentColor" font-family="sans-serif">F</text>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/温度传感器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="34" y="30" width="32" height="40" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="54" font-size="16" text-anchor="middle" fill="currentColor" font-family="sans-serif">T</text><line x1="50" y1="70" x2="50" y2="92" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="50" y1="12" x2="50" y2="30" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/湿度传感器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="34" y="30" width="32" height="40" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="54" font-size="16" text-anchor="middle" fill="currentColor" font-family="sans-serif">H</text><line x1="50" y1="70" x2="50" y2="92" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="50" y1="12" x2="50" y2="30" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/电动调节阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 26 42 L 50 54 L 26 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 74 42 L 50 54 L 74 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="40" y="20" width="20" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><text x="50" y="32" font-size="11" text-anchor="middle" fill="currentColor" font-family="sans-serif">M</text>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/电磁阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 26 42 L 50 54 L 26 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 74 42 L 50 54 L 74 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="40" y="20" width="20" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 43 32 l 4 -8 l 4 8 l 4 -8" fill="none" stroke="currentColor" stroke-width="1.5"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/百叶风口.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="18" y="28" width="64" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="18" y1="39" x2="82" y2="39" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="18" y1="50" x2="82" y2="50" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="18" y1="61" x2="82" y2="61" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/离心风机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 50 24 a 26 26 0 1 0 26 26 l 0 -12 l 18 0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="7" fill="currentColor" stroke="currentColor" stroke-width="3"/><path d="M 50 43 l 0 14 M 43 50 l 14 0" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/空调机组.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="10" y="32" width="80" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="28" y1="32" x2="28" y2="68" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><path d="M 14 38 l 12 6 l -12 6 l 12 6 l -12 6" fill="none" stroke="currentColor" stroke-width="2"/><circle cx="60" cy="50" r="12" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 60 40 l 0 20 M 50 50 l 20 0" stroke="currentColor" stroke-width="2"/><line x1="72" y1="32" x2="72" y2="68" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/膨胀水箱.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="26" width="52" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 28 50 q 8 -6 16 0 q 8 6 16 0 q 8 -6 12 0" fill="none" stroke="currentColor" stroke-width="2"/><line x1="50" y1="70" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="12" x2="50" y2="26" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/蝶阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 50 38 L 26 26 L 26 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 38 L 74 26 L 74 62 Z" fill="none" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/轴流风机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="50" cy="50" r="26" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 26 L 50 74 M 26 50 L 74 50" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="6" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/闸阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 38 L 50 50 L 24 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 38 L 50 50 L 76 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="50" y1="50" x2="50" y2="30" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="42" y1="30" x2="58" y2="30" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/防火阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><rect x="26" y="36" width="48" height="28" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="26" y1="50" x2="74" y2="50" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><circle cx="50" cy="50" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/><line x1="50" y1="36" x2="50" y2="26" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><path d="M 46 22 q 4 -6 8 0" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/风机盘管.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="12" y="32" width="60" height="36" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="30" cy="50" r="11" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 30 41 l 0 18 M 22 50 l 16 0" stroke="currentColor" stroke-width="2"/><line x1="80" y1="40" x2="92" y2="40" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="80" y1="60" x2="92" y2="60" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="72" y1="40" x2="80" y2="40" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="72" y1="60" x2="80" y2="60" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/暖通空调/风管.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="8" y1="38" x2="92" y2="38" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="8" y1="62" x2="92" y2="62" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="30" y1="38" x2="30" y2="62" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="58" y1="38" x2="58" y2="62" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/信号蝶阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 50 40 L 26 28 L 26 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 40 L 74 28 L 74 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="64" y="12" width="20" height="14" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><line x1="74" y1="26" x2="70" y2="34" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/喷淋头.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="12" x2="50" y2="40" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="34" y1="44" x2="66" y2="44" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="40" x2="50" y2="44" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><path d="M 38 52 l 0 8 M 50 54 l 0 10 M 62 52 l 0 8" stroke="currentColor" stroke-width="2"/><path d="M 44 70 q 0 4 -3 6 M 56 72 q 0 4 -3 6" fill="none" stroke="currentColor" stroke-width="1.5"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/声光报警器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 34 44 l 16 -12 l 0 36 l -16 -12 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 60 38 a 12 12 0 0 1 0 24 M 68 32 a 20 20 0 0 1 0 36" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 40 12 l 3 6 M 52 10 l 1 7 M 62 14 l -2 6" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/室内消火栓.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="24" y="20" width="52" height="64" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="44" r="12" fill="none" stroke="currentColor" stroke-width="3"/><line x1="50" y1="56" x2="50" y2="76" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="38" y1="44" x2="50" y2="44" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><text x="50" y="32" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">栓</text>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/应急照明灯.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="34" y1="42" x2="66" y2="42" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><circle cx="36" cy="30" r="10" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="64" cy="30" r="10" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 32 24 l 8 12 M 60 24 l 8 12" stroke="currentColor" stroke-width="1.5"/><line x1="50" y1="42" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/手动报警按钮.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="30" y="28" width="40" height="44" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="44" r="7" fill="none" stroke="currentColor" stroke-width="2.5"/><line x1="50" y1="58" x2="50" y2="66" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="42" y1="62" x2="58" y2="62" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="50" y1="8" x2="50" y2="28" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/排烟防火阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><rect x="24" y="36" width="52" height="30" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="24" y1="51" x2="76" y2="51" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="50" y1="36" x2="50" y2="24" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><rect x="44" y="16" width="12" height="8" rx="0" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/气体灭火钢瓶.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 40 32 l 0 52 a 10 10 0 0 0 20 0 l 0 -52 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="44" y1="32" x2="44" y2="24" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="56" y1="32" x2="56" y2="24" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="44" y1="24" x2="56" y2="24" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="50" y1="24" x2="50" y2="14" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><text x="50" y="64" font-size="11" text-anchor="middle" fill="currentColor" font-family="sans-serif">FM</text>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/水流指示器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="50" x2="72" y2="32" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><path d="M 72 32 l -3 10 l -7 -6 Z" fill="currentColor"/><circle cx="50" cy="50" r="3.5" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="80" cy="60" r="8" fill="none" stroke="currentColor" stroke-width="2.5"/><line x1="80" y1="60" x2="80" y2="53" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/消防应急广播.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 26 42 l 18 -14 l 0 44 l -18 -14 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="20" y="42" width="6" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 56 36 a 14 14 0 0 1 0 28 M 64 28 a 24 24 0 0 1 0 44" fill="none" stroke="currentColor" stroke-width="2.5"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/消防接线端子箱.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="26" y="28" width="48" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="34" y1="40" x2="66" y2="40" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="34" y1="50" x2="66" y2="50" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="34" y1="60" x2="66" y2="60" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="40" cy="40" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="52" cy="50" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="60" cy="60" r="2" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/消防水泵.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="46" cy="46" r="20" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 46 32 L 34 56 L 58 56 Z" fill="currentColor"/><text x="46" y="26" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">F</text><line x1="36" y1="72" x2="56" y2="72" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="66" x2="46" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="8" x2="46" y2="14" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/消防电话分机.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="22" width="44" height="56" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 38 32 q 12 -6 24 0 l -4 10 q -8 -4 -16 0 Z" fill="currentColor"/><circle cx="50" cy="58" r="10" fill="none" stroke="currentColor" stroke-width="2.5"/><line x1="50" y1="78" x2="50" y2="92" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/湿式报警阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 42 L 50 54 L 24 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 42 L 50 54 L 76 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="76" cy="74" r="7" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 76 70 l 0 8" stroke="currentColor" stroke-width="1.5"/><line x1="64" y1="54" x2="72" y2="68" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/火灾报警控制器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="20" y="24" width="60" height="52" rx="4" fill="none" stroke="currentColor" stroke-width="3"/><rect x="28" y="32" width="44" height="18" rx="0" fill="none" stroke="currentColor" stroke-width="2"/><line x1="32" y1="38" x2="64" y2="38" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" /><line x1="32" y1="44" x2="56" y2="44" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" /><circle cx="34" cy="60" r="3" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="46" cy="60" r="3" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="58" cy="60" r="3" fill="currentColor" stroke="currentColor" stroke-width="3"/><circle cx="70" cy="60" r="3" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/灭火器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 42 36 l 0 48 a 10 10 0 0 0 20 0 l 0 -48 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="52" y1="28" x2="52" y2="36" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="44" y1="22" x2="60" y2="22" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="58" y1="22" x2="74" y2="32" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="74" y1="32" x2="70" y2="38" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><text x="52" y="62" font-size="12" text-anchor="middle" fill="currentColor" font-family="sans-serif">火</text>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/点型感温探测器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="50" cy="50" r="24" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="56" font-size="16" text-anchor="middle" fill="currentColor" font-family="sans-serif">T</text><line x1="50" y1="26" x2="50" y2="14" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/点型感烟探测器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="50" cy="50" r="24" fill="none" stroke="currentColor" stroke-width="3"/><text x="50" y="56" font-size="16" text-anchor="middle" fill="currentColor" font-family="sans-serif">S</text><line x1="50" y1="26" x2="50" y2="14" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/消防报警/疏散指示灯.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="16" y="30" width="68" height="40" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 30 50 l 14 0 m -6 -7 l 7 7 l -7 7" fill="none" stroke="currentColor" stroke-width="2.5"/><circle cx="62" cy="40" r="4" fill="currentColor"/><path d="M 62 44 l 0 12 m 0 -10 l -6 5 m 6 -4 l 7 4 m -7 7 l -5 8 m 5 -8 l 6 8" stroke="currentColor" stroke-width="2" fill="none"/>
+</svg>

+ 3 - 0
topo/static/figures/消防报警/防火卷帘.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="20" y="22" width="60" height="58" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="20" y1="34" x2="80" y2="34" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="20" y1="46" x2="80" y2="46" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="20" y1="58" x2="80" y2="58" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="20" y1="70" x2="80" y2="70" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="14" y1="22" x2="86" y2="22" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="20" y1="80" x2="20" y2="90" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="80" y1="80" x2="80" y2="90" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/Y型过滤器.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="40" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="72" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 50 40 l 22 18 l 0 16 l -12 0 l 0 -10 l -10 -8" fill="none" stroke="currentColor" stroke-width="3"/><line x1="50" y1="40" x2="50" y2="58" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/减压阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 40 L 50 52 L 24 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 40 L 50 52 L 76 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 46 l 0 -16 m -6 2 l 6 -6 l 6 6 l -6 6 l 6 -6" fill="none" stroke="currentColor" stroke-width="2"/><line x1="44" y1="14" x2="56" y2="14" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/化粪池.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="16" y="32" width="68" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="38" y1="32" x2="38" y2="76" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="60" y1="32" x2="60" y2="76" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><path d="M 20 58 q 6 -5 12 0 q 6 5 6 0" fill="none" stroke="currentColor" stroke-width="1.5"/><line x1="8" y1="50" x2="16" y2="50" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="84" y1="50" x2="92" y2="50" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/变频给水机组.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="28" cy="50" r="12" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="52" cy="50" r="12" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="76" cy="50" r="12" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 28 43 L 23 56 L 33 56 Z" fill="currentColor"/><path d="M 52 43 L 47 56 L 57 56 Z" fill="currentColor"/><path d="M 76 43 L 71 56 L 81 56 Z" fill="currentColor"/><line x1="14" y1="70" x2="90" y2="70" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="52" y1="62" x2="52" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="52" y1="8" x2="52" y2="38" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/地漏.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="28" y="28" width="44" height="44" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="12" fill="none" stroke="currentColor" stroke-width="2"/><line x1="50" y1="38" x2="50" y2="62" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" /><line x1="38" y1="50" x2="62" y2="50" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/存水弯.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 24 20 l 0 30 a 14 14 0 0 0 28 0 l 0 -8 a 12 12 0 0 1 24 0 l 0 38" fill="none" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/安全阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="30" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 48 L 50 60 L 24 72 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 48 L 50 60 L 76 72 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 54 l 0 -22 m -5 4 l 5 -5 l 5 5" fill="none" stroke="currentColor" stroke-width="2"/><path d="M 44 12 q 6 -4 12 0" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/截止阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 38 L 50 50 L 24 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 38 L 50 50 L 76 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="50" y1="44" x2="50" y2="26" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><circle cx="50" cy="22" r="4" fill="none" stroke="currentColor" stroke-width="2.5"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/止回阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 26 40 L 50 52 L 26 64 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="60" y1="40" x2="60" y2="64" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><circle cx="55" cy="52" r="3.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/水池.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<path d="M 20 34 l 0 46 l 60 0 l 0 -46" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 24 52 q 8 -7 15 0 q 8 7 15 0 q 8 -7 15 0 q 5 4 9 2" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/水流开关.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="50" x2="74" y2="34" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><path d="M 74 34 l -2 10 l -8 -6 Z" fill="currentColor"/><circle cx="50" cy="50" r="3.5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/水箱.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="20" y="30" width="60" height="50" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 24 52 q 8 -7 15 0 q 8 7 15 0 q 8 -7 15 0 q 5 4 9 2" fill="none" stroke="currentColor" stroke-width="2"/><line x1="50" y1="12" x2="50" y2="30" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="50" y1="80" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/水表.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><circle cx="50" cy="50" r="17" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="10" fill="none" stroke="currentColor" stroke-width="2"/><path d="M 50 50 L 57 43" stroke="currentColor" stroke-width="2"/><circle cx="62" cy="36" r="3" fill="none" stroke="currentColor" stroke-width="1.5"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/水龙头.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="28" y1="30" x2="28" y2="60" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="28" y1="60" x2="66" y2="60" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 66 52 l 0 8 l -10 0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="20" y1="24" x2="36" y2="24" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><line x1="28" y1="18" x2="28" y2="30" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" /><path d="M 58 74 q 0 6 -4 8 M 58 74 q 0 6 4 8" fill="none" stroke="currentColor" stroke-width="2"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/浮球阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="30" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 28 46 L 50 56 L 28 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 70 46 L 50 56 L 70 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><line x1="50" y1="52" x2="30" y2="24" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="24" cy="20" r="7" fill="none" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/液位计.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<rect x="38" y="14" width="24" height="72" rx="0" fill="none" stroke="currentColor" stroke-width="3"/><line x1="38" y1="32" x2="62" y2="32" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="38" y1="50" x2="62" y2="50" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><line x1="38" y1="68" x2="62" y2="68" stroke="currentColor" stroke-width="2" stroke-linecap="round" /><circle cx="50" cy="42" r="4" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/潜水泵.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="50" cy="40" r="16" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 30 L 41 48 L 59 48 Z" fill="currentColor"/><path d="M 26 70 q 8 -7 16 0 q 8 7 16 0 q 8 -7 16 0 M 26 82 q 8 -7 16 0 q 8 7 16 0 q 8 -7 16 0" fill="none" stroke="currentColor" stroke-width="2.5"/><line x1="50" y1="8" x2="50" y2="24" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/球阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 24 38 L 50 50 L 24 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 76 38 L 50 50 L 76 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><circle cx="50" cy="50" r="5" fill="currentColor" stroke="currentColor" stroke-width="3"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/电磁阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 26 42 L 50 54 L 26 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 74 42 L 50 54 L 74 66 Z" fill="none" stroke="currentColor" stroke-width="3"/><rect x="40" y="20" width="20" height="16" rx="0" fill="none" stroke="currentColor" stroke-width="2.5"/><path d="M 43 32 l 4 -8 l 4 8 l 4 -8" fill="none" stroke="currentColor" stroke-width="1.5"/>
+</svg>

+ 3 - 0
topo/static/figures/给排水/离心水泵.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<circle cx="46" cy="46" r="20" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 46 32 L 34 56 L 58 56 Z" fill="currentColor"/><line x1="36" y1="72" x2="56" y2="72" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="66" x2="46" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><line x1="46" y1="8" x2="46" y2="26" stroke="currentColor" stroke-width="3" stroke-linecap="round" />
+</svg>

+ 3 - 0
topo/static/figures/给排水/蝶阀.svg

@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" width="100" height="100">
+<line x1="50" y1="8" x2="50" y2="92" stroke="currentColor" stroke-width="3" stroke-linecap="round" /><path d="M 50 38 L 26 26 L 26 62 Z" fill="none" stroke="currentColor" stroke-width="3"/><path d="M 50 38 L 74 26 L 74 62 Z" fill="none" stroke="currentColor" stroke-width="3"/>
+</svg>

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików