提交 670709d1 authored 作者: 王鹏飞's avatar 王鹏飞

feat: 用户旅行-营销动作 新增AB分配

上级 0adba430
...@@ -12,7 +12,7 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -12,7 +12,7 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
12.自定义 13.定时触发 14.加入群组 15.更变属性 16.终止旅程 12.自定义 13.定时触发 14.加入群组 15.更变属性 16.终止旅程
17.移出群组 18.更变处理 19.内部通知 20.属性判断 21.标签判断 17.移出群组 18.更变处理 19.内部通知 20.属性判断 21.标签判断
22.群组判断 23.事件判断 24.时间判断 22.群组判断 23.事件判断 24.时间判断
99.紫荆表单 999.卷王 100.小程序 99.紫荆表单 999.卷王 100.小程序 101.A/B分配
-type: 形状 -type: 形状
* circle 圆形 * circle 圆形
...@@ -23,6 +23,23 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -23,6 +23,23 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
<template> <template>
<div> <div>
<svg
v-if="name === '101'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 48 48">
<g>
<path d="M13 22H29C33.4183 22 37 25.5817 37 30V44" stroke="#fff" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"></path>
<circle cx="13" cy="8.94365" r="5" transform="rotate(-90 13 8.94365)" fill="none" stroke="#fff" stroke-width="4"></circle>
<path d="M13 14V43" stroke="#fff" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
<path d="M18 39L13 44L8 39" stroke="#fff" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
<path d="M42 39L37 44L32 39" stroke="#fff" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" fill="none"></path>
</g>
</svg>
<svg v-if="name === '999'" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" version="1.1" class="icon" viewBox="0 0 512 512" :width="w" :height="h"> <svg v-if="name === '999'" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" version="1.1" class="icon" viewBox="0 0 512 512" :width="w" :height="h">
<g> <g>
<g> <g>
...@@ -33,14 +50,25 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -33,14 +50,25 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
:fill="multiColor ? '#2672ff' : color" /> :fill="multiColor ? '#2672ff' : color" />
<g transform="rotate(0.170250803232193 258.950958251905,258.4588623046846)"> <g transform="rotate(0.170250803232193 258.950958251905,258.4588623046846)">
<g> <g>
<path d="m382.250958,141.808841c0,0 -92.6,92.6 -140.4,172l-34.1,-21.7c-0.1,0.1 87.2,-129.2 174.5,-150.3z" :fill="multiColor ? '#189a75' : color" /> <path
<path d="m207.650958,292.208841l34.1,21.7c-13.3,22.2 -23.2,43.4 -26.5,61.2c0,0 -19.1,-70.7 -79.6,-123.6l72,40.7z" :fill="multiColor ? '#4cb35f' : color" /> d="m382.250958,141.808841c0,0 -92.6,92.6 -140.4,172l-34.1,-21.7c-0.1,0.1 87.2,-129.2 174.5,-150.3z"
:fill="multiColor ? '#189a75' : color" />
<path
d="m207.650958,292.208841l34.1,21.7c-13.3,22.2 -23.2,43.4 -26.5,61.2c0,0 -19.1,-70.7 -79.6,-123.6l72,40.7z"
:fill="multiColor ? '#4cb35f' : color" />
</g> </g>
</g> </g>
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '99'" version="1.0" xmlns="http://www.w3.org/2000/svg" :width="w" :height="h" viewBox="0 0 624.000000 703.000000" preserveAspectRatio="xMidYMid meet"> <svg
v-if="name === '99'"
version="1.0"
xmlns="http://www.w3.org/2000/svg"
:width="w"
:height="h"
viewBox="0 0 624.000000 703.000000"
preserveAspectRatio="xMidYMid meet">
<g transform="translate(0.000000,703.000000) scale(0.100000,-0.100000)" :fill="multiColor ? '#aa1941' : color" stroke="none"> <g transform="translate(0.000000,703.000000) scale(0.100000,-0.100000)" :fill="multiColor ? '#aa1941' : color" stroke="none">
<path <path
d="M3055 7007 c-1229 -586 -3025 -1454 -3037 -1469 -17 -19 -18 -130 d="M3055 7007 c-1229 -586 -3025 -1454 -3037 -1469 -17 -19 -18 -130
...@@ -75,13 +103,31 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -75,13 +103,31 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
d="M351 849 c-173 -34 -311 -177 -342 -357 -31 -172 73 -367 235 -443 128 -60 244 -60 372 0 162 76 266 271 235 443 -32 184 -169 323 -350 358 -61 11 -88 11 -150 -1z m256 -253 c31 -28 38 -41 38 -73 0 -50 -27 -91 -72 -110 -31 -12 -38 -12 -50 -1 -18 19 -9 39 28 60 39 23 38 65 -3 88 -25 13 -31 13 -55 0 -27 -15 -28 -18 -33 -131 -6 -131 -18 -161 -77 -186 -50 -20 -99 -9 -140 32 -27 27 -33 41 -33 75 0 34 6 48 34 76 37 37 82 46 93 17 4 -11 -5 -25 -30 -46 -41 -32 -46 -51 -20 -79 19 -22 62 -23 89 -4 16 12 20 31 24 133 3 65 9 124 14 131 17 27 72 52 114 52 34 0 49 -6 79 -34z" /> d="M351 849 c-173 -34 -311 -177 -342 -357 -31 -172 73 -367 235 -443 128 -60 244 -60 372 0 162 76 266 271 235 443 -32 184 -169 323 -350 358 -61 11 -88 11 -150 -1z m256 -253 c31 -28 38 -41 38 -73 0 -50 -27 -91 -72 -110 -31 -12 -38 -12 -50 -1 -18 19 -9 39 28 60 39 23 38 65 -3 88 -25 13 -31 13 -55 0 -27 -15 -28 -18 -33 -131 -6 -131 -18 -161 -77 -186 -50 -20 -99 -9 -140 32 -27 27 -33 41 -33 75 0 34 6 48 34 76 37 37 82 46 93 17 4 -11 -5 -25 -30 -46 -41 -32 -46 -51 -20 -79 19 -22 62 -23 89 -4 16 12 20 31 24 133 3 65 9 124 14 131 17 27 72 52 114 52 34 0 49 -6 79 -34z" />
</g> </g>
</svg> </svg>
<svg v-if="name === '1'" t="1675654500635" class="icon" viewBox="0 0 28 28" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10798" :width="w" :height="h"> <svg
v-if="name === '1'"
t="1675654500635"
class="icon"
viewBox="0 0 28 28"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="10798"
:width="w"
:height="h">
<path <path
d="M18.7121298828125,10.3173566015625C18.9936298828125,10.3173566015625,19.2704298828125,10.3387066015625,19.5488298828125,10.3692666015625C18.7992298828125,6.8785966015625,15.0684298828125,4.2857666015625,10.8081898828125,4.2857666015625C6.0462398828125,4.2857666015625,2.1456298828125,7.530166601562501,2.1456298828125,11.652666601562501C2.1456298828125,14.0313666015625,3.4427698828124997,15.9847666015625,5.6119198828125,17.5021666015625L4.7460798828125,20.1072666015625L7.7748298828125,18.5898666015625C8.8578598828125,18.8024666015625,9.7267298828125,19.022866601562498,10.8082198828125,19.022866601562498C11.0804798828125,19.022866601562498,11.3497398828125,19.010566601562502,11.6159198828125,18.9907666015625C11.4476398828125,18.4109666015625,11.3482598828125,17.805166601562497,11.3482598828125,17.1733666015625C11.3497098828125,13.3888666015625,14.5988298828125,10.3173566015625,18.7121298828125,10.3173566015625ZM14.0558298828125,7.969216601562501C14.7105298828125,7.969216601562501,15.1403298828125,8.399066601562499,15.1403298828125,9.0507366015625C15.1403298828125,9.6992566015625,14.7105298828125,10.1337766015625,14.0558298828125,10.1337766015625C13.4086298828125,10.1337766015625,12.7570298828125,9.6992866015625,12.7570298828125,9.0507366015625C12.7570298828125,8.3975466015625,13.4071298828125,7.969216601562501,14.0558298828125,7.969216601562501ZM7.9936098828125,10.1337466015625C7.3434698828125,10.1337466015625,6.6887098828125,9.6992566015625,6.6887098828125,9.050716601562499C6.6887098828125,8.3990366015625,7.3434398828125,7.9691866015625,7.9936098828125,7.9691866015625C8.6436398828125,7.9691866015625,9.0751298828125,8.3975266015625,9.0751298828125,9.050716601562499C9.0751598828125,9.6992566015625,8.6436598828125,10.1337466015625,7.9936098828125,10.1337466015625ZM26.6205298828125,17.0693666015625C26.6205298828125,13.6061066015625,23.1542298828125,10.783826601562499,19.2611298828125,10.783826601562499C15.1388298828125,10.783826601562499,11.8942498828125,13.6076466015625,11.8942498828125,17.0693666015625C11.8942498828125,20.5417666015625,15.1403298828125,23.3547666015625,19.2611298828125,23.3547666015625C20.1240298828125,23.3547666015625,20.9943298828125,23.1390666015625,21.8602298828125,22.9219666015625L24.2357298828125,24.2251666015625L23.5841298828125,22.0592666015625C25.3233298828125,20.7527666015625,26.6205298828125,19.022766601562502,26.6205298828125,17.0693666015625ZM16.8718298828125,15.9847666015625C16.4420298828125,15.9847666015625,16.0060298828125,15.5564666015625,16.0060298828125,15.1189666015625C16.0060298828125,14.6875666015625,16.4420298828125,14.2532566015625,16.8718298828125,14.2532566015625C17.5296298828125,14.2532566015625,17.9564298828125,14.6875666015625,17.9564298828125,15.1189666015625C17.9564298828125,15.5564666015625,17.5296298828125,15.9847666015625,16.8718298828125,15.9847666015625ZM21.6368298828125,15.9847666015625C21.2100298828125,15.9847666015625,20.7757298828125,15.5564666015625,20.7757298828125,15.1189666015625C20.7757298828125,14.6875666015625,21.2085298828125,14.2532566015625,21.6368298828125,14.2532566015625C22.2885298828125,14.2532566015625,22.7214298828125,14.6875666015625,22.7214298828125,15.1189666015625C22.7213298828125,15.5564666015625,22.2885298828125,15.9847666015625,21.6368298828125,15.9847666015625Z" d="M18.7121298828125,10.3173566015625C18.9936298828125,10.3173566015625,19.2704298828125,10.3387066015625,19.5488298828125,10.3692666015625C18.7992298828125,6.8785966015625,15.0684298828125,4.2857666015625,10.8081898828125,4.2857666015625C6.0462398828125,4.2857666015625,2.1456298828125,7.530166601562501,2.1456298828125,11.652666601562501C2.1456298828125,14.0313666015625,3.4427698828124997,15.9847666015625,5.6119198828125,17.5021666015625L4.7460798828125,20.1072666015625L7.7748298828125,18.5898666015625C8.8578598828125,18.8024666015625,9.7267298828125,19.022866601562498,10.8082198828125,19.022866601562498C11.0804798828125,19.022866601562498,11.3497398828125,19.010566601562502,11.6159198828125,18.9907666015625C11.4476398828125,18.4109666015625,11.3482598828125,17.805166601562497,11.3482598828125,17.1733666015625C11.3497098828125,13.3888666015625,14.5988298828125,10.3173566015625,18.7121298828125,10.3173566015625ZM14.0558298828125,7.969216601562501C14.7105298828125,7.969216601562501,15.1403298828125,8.399066601562499,15.1403298828125,9.0507366015625C15.1403298828125,9.6992566015625,14.7105298828125,10.1337766015625,14.0558298828125,10.1337766015625C13.4086298828125,10.1337766015625,12.7570298828125,9.6992866015625,12.7570298828125,9.0507366015625C12.7570298828125,8.3975466015625,13.4071298828125,7.969216601562501,14.0558298828125,7.969216601562501ZM7.9936098828125,10.1337466015625C7.3434698828125,10.1337466015625,6.6887098828125,9.6992566015625,6.6887098828125,9.050716601562499C6.6887098828125,8.3990366015625,7.3434398828125,7.9691866015625,7.9936098828125,7.9691866015625C8.6436398828125,7.9691866015625,9.0751298828125,8.3975266015625,9.0751298828125,9.050716601562499C9.0751598828125,9.6992566015625,8.6436598828125,10.1337466015625,7.9936098828125,10.1337466015625ZM26.6205298828125,17.0693666015625C26.6205298828125,13.6061066015625,23.1542298828125,10.783826601562499,19.2611298828125,10.783826601562499C15.1388298828125,10.783826601562499,11.8942498828125,13.6076466015625,11.8942498828125,17.0693666015625C11.8942498828125,20.5417666015625,15.1403298828125,23.3547666015625,19.2611298828125,23.3547666015625C20.1240298828125,23.3547666015625,20.9943298828125,23.1390666015625,21.8602298828125,22.9219666015625L24.2357298828125,24.2251666015625L23.5841298828125,22.0592666015625C25.3233298828125,20.7527666015625,26.6205298828125,19.022766601562502,26.6205298828125,17.0693666015625ZM16.8718298828125,15.9847666015625C16.4420298828125,15.9847666015625,16.0060298828125,15.5564666015625,16.0060298828125,15.1189666015625C16.0060298828125,14.6875666015625,16.4420298828125,14.2532566015625,16.8718298828125,14.2532566015625C17.5296298828125,14.2532566015625,17.9564298828125,14.6875666015625,17.9564298828125,15.1189666015625C17.9564298828125,15.5564666015625,17.5296298828125,15.9847666015625,16.8718298828125,15.9847666015625ZM21.6368298828125,15.9847666015625C21.2100298828125,15.9847666015625,20.7757298828125,15.5564666015625,20.7757298828125,15.1189666015625C20.7757298828125,14.6875666015625,21.2085298828125,14.2532566015625,21.6368298828125,14.2532566015625C22.2885298828125,14.2532566015625,22.7214298828125,14.6875666015625,22.7214298828125,15.1189666015625C22.7213298828125,15.5564666015625,22.2885298828125,15.9847666015625,21.6368298828125,15.9847666015625Z"
:fill="multiColor ? '#19AA20' : color" :fill="multiColor ? '#19AA20' : color"
p-id="10799"></path> p-id="10799"></path>
</svg> </svg>
<svg v-if="name === '2'" t="1675654004777" class="icon" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8908" :width="w" :height="h"> <svg
v-if="name === '2'"
t="1675654004777"
class="icon"
viewBox="0 0 24 24"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="8908"
:width="w"
:height="h">
<path <path
d="M21.17067373046875,8.97251822265625C21.10037373046875,9.22797822265625,21.00897373046875,9.47640822265625,20.89647373046875,9.71545822265625L20.89887373046875,9.71545822265625L20.88477373046875,9.74591822265625Q20.08557373046875,11.54117822265625,17.99737373046875,15.06597822265625L17.987973730468752,15.04257822265625L17.378673730468748,16.15817822265625L20.31757373046875,16.15817822265625L14.70227373046875,23.99997822265625L15.97717373046875,18.66587822265625L13.66167373046875,18.66587822265625L14.46547373046875,15.13867822265625C13.81397373046875,15.30267822265625,13.04761373046875,15.53007822265625,12.13593373046875,15.83707822265625Q10.905523730468751,16.59407822265625,8.587663730468751,14.37927822265625Q7.02444373046875,12.93557822265625,7.93144373046875,12.57237822265625C8.31579373046875,12.41997822265625,9.80166373046875,12.22547822265625,10.97114373046875,12.05677822265625Q12.54842373046875,11.83177822265625,13.52107373046875,11.71227822265625Q8.65328373046875,11.78957822265625,7.49786373046875,11.59737822265625C6.34244373046875,11.40757822265625,4.88001373046875,9.38265822265625,4.56596373046875,7.60382822265625Q4.08317373046875,6.62652822265625,5.601853730468751,7.08822822265625Q7.12288373046875,7.54992822265625,13.41557373046875,8.88814822265625Q5.23390373046875,6.25623822265625,4.69017373046875,5.61407822265625C4.14645273046875,4.97191822265625,3.08712473046875,2.10329822265625,3.22539973046875,0.34321922265625Q3.28633453046875,-0.09738597734375,3.71522173046875,0.01979632265625Q9.76651373046875,2.92591822265625,13.90307373046875,4.51256822265625C18.03957373046875,6.10389822265625,21.63477373046875,6.91479822265625,21.17067373046875,8.97251822265625Z" d="M21.17067373046875,8.97251822265625C21.10037373046875,9.22797822265625,21.00897373046875,9.47640822265625,20.89647373046875,9.71545822265625L20.89887373046875,9.71545822265625L20.88477373046875,9.74591822265625Q20.08557373046875,11.54117822265625,17.99737373046875,15.06597822265625L17.987973730468752,15.04257822265625L17.378673730468748,16.15817822265625L20.31757373046875,16.15817822265625L14.70227373046875,23.99997822265625L15.97717373046875,18.66587822265625L13.66167373046875,18.66587822265625L14.46547373046875,15.13867822265625C13.81397373046875,15.30267822265625,13.04761373046875,15.53007822265625,12.13593373046875,15.83707822265625Q10.905523730468751,16.59407822265625,8.587663730468751,14.37927822265625Q7.02444373046875,12.93557822265625,7.93144373046875,12.57237822265625C8.31579373046875,12.41997822265625,9.80166373046875,12.22547822265625,10.97114373046875,12.05677822265625Q12.54842373046875,11.83177822265625,13.52107373046875,11.71227822265625Q8.65328373046875,11.78957822265625,7.49786373046875,11.59737822265625C6.34244373046875,11.40757822265625,4.88001373046875,9.38265822265625,4.56596373046875,7.60382822265625Q4.08317373046875,6.62652822265625,5.601853730468751,7.08822822265625Q7.12288373046875,7.54992822265625,13.41557373046875,8.88814822265625Q5.23390373046875,6.25623822265625,4.69017373046875,5.61407822265625C4.14645273046875,4.97191822265625,3.08712473046875,2.10329822265625,3.22539973046875,0.34321922265625Q3.28633453046875,-0.09738597734375,3.71522173046875,0.01979632265625Q9.76651373046875,2.92591822265625,13.90307373046875,4.51256822265625C18.03957373046875,6.10389822265625,21.63477373046875,6.91479822265625,21.17067373046875,8.97251822265625Z"
:fill="multiColor ? '#2877D7' : color" :fill="multiColor ? '#2877D7' : color"
...@@ -146,7 +192,14 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -146,7 +192,14 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '5'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" :width="w" :height="h" viewBox="0 0 26 16.5845947265625"> <svg
v-if="name === '5'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
:width="w"
:height="h"
viewBox="0 0 26 16.5845947265625">
<g style="mix-blend-mode: passthrough"> <g style="mix-blend-mode: passthrough">
<g> <g>
<path <path
...@@ -213,7 +266,16 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -213,7 +266,16 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '7'" t="1675655112200" class="icon" viewBox="0 0 1138 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18176" :width="w" :height="h"> <svg
v-if="name === '7'"
t="1675655112200"
class="icon"
viewBox="0 0 1138 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="18176"
:width="w"
:height="h">
<path <path
d="M914.432 518.144q27.648 21.504 38.912 51.712t9.216 62.976-14.336 65.536-31.744 59.392q-34.816 48.128-78.848 81.92t-91.136 56.32-94.72 35.328-89.6 18.944-75.264 7.68-51.712 1.536-49.152-2.56-68.096-10.24-78.336-21.504-79.872-36.352-74.24-55.296-59.904-78.848q-16.384-29.696-22.016-63.488t-5.632-86.016q0-22.528 7.68-51.2t27.136-63.488 53.248-75.776 86.016-90.112q51.2-48.128 105.984-85.504t117.248-57.856q28.672-10.24 63.488-11.264t57.344 11.264q10.24 11.264 19.456 23.04t12.288 29.184q3.072 14.336 0.512 27.648t-5.632 26.624-5.12 25.6 2.048 22.528q17.408 2.048 33.792-1.536t31.744-9.216 31.232-11.776 33.28-9.216q27.648-5.12 54.784-4.608t49.152 7.68 36.352 22.016 17.408 38.4q2.048 14.336-2.048 26.624t-8.704 23.04-7.168 22.016 1.536 23.552q3.072 7.168 14.848 13.312t27.136 12.288 32.256 13.312 29.184 16.384zM656.384 836.608q26.624-16.384 53.76-45.056t44.032-64 18.944-75.776-20.48-81.408q-19.456-33.792-47.616-57.344t-62.976-37.376-74.24-19.968-80.384-6.144q-78.848 0-139.776 16.384t-105.472 43.008-72.192 60.416-38.912 68.608q-11.264 33.792-6.656 67.072t20.992 62.976 42.496 53.248 57.856 37.888q58.368 25.6 119.296 32.256t116.224 0.512 100.864-21.504 74.24-33.792zM522.24 513.024q20.48 8.192 38.912 18.432t32.768 27.648q10.24 12.288 17.92 30.72t10.752 39.424 1.536 42.496-9.728 38.912q-8.192 18.432-19.968 37.376t-28.672 35.328-40.448 29.184-57.344 18.944q-61.44 11.264-117.76-11.264t-88.064-74.752q-12.288-39.936-13.312-70.656t16.384-66.56q13.312-27.648 40.448-51.712t62.464-38.912 75.264-17.408 78.848 12.8zM359.424 764.928q37.888 3.072 57.856-18.432t21.504-48.128-15.36-47.616-52.736-16.896q-27.648 3.072-43.008 23.552t-17.408 43.52 9.728 42.496 39.424 21.504zM778.24 6.144q74.752 0 139.776 19.968t113.664 57.856 76.288 92.16 27.648 122.88q0 33.792-16.384 50.688t-35.328 17.408-35.328-14.336-16.384-45.568q0-40.96-22.528-77.824t-59.392-64.512-84.48-43.52-96.768-15.872q-31.744 0-47.104-15.36t-14.336-34.304 18.944-34.304 51.712-15.36zM778.24 169.984q95.232 0 144.384 48.64t49.152 146.944q0 30.72-10.24 43.52t-22.528 11.264-22.528-14.848-10.24-35.84q0-60.416-34.816-96.256t-93.184-35.84q-19.456 0-28.672-10.752t-9.216-23.04 9.728-23.04 28.16-10.752z" d="M914.432 518.144q27.648 21.504 38.912 51.712t9.216 62.976-14.336 65.536-31.744 59.392q-34.816 48.128-78.848 81.92t-91.136 56.32-94.72 35.328-89.6 18.944-75.264 7.68-51.712 1.536-49.152-2.56-68.096-10.24-78.336-21.504-79.872-36.352-74.24-55.296-59.904-78.848q-16.384-29.696-22.016-63.488t-5.632-86.016q0-22.528 7.68-51.2t27.136-63.488 53.248-75.776 86.016-90.112q51.2-48.128 105.984-85.504t117.248-57.856q28.672-10.24 63.488-11.264t57.344 11.264q10.24 11.264 19.456 23.04t12.288 29.184q3.072 14.336 0.512 27.648t-5.632 26.624-5.12 25.6 2.048 22.528q17.408 2.048 33.792-1.536t31.744-9.216 31.232-11.776 33.28-9.216q27.648-5.12 54.784-4.608t49.152 7.68 36.352 22.016 17.408 38.4q2.048 14.336-2.048 26.624t-8.704 23.04-7.168 22.016 1.536 23.552q3.072 7.168 14.848 13.312t27.136 12.288 32.256 13.312 29.184 16.384zM656.384 836.608q26.624-16.384 53.76-45.056t44.032-64 18.944-75.776-20.48-81.408q-19.456-33.792-47.616-57.344t-62.976-37.376-74.24-19.968-80.384-6.144q-78.848 0-139.776 16.384t-105.472 43.008-72.192 60.416-38.912 68.608q-11.264 33.792-6.656 67.072t20.992 62.976 42.496 53.248 57.856 37.888q58.368 25.6 119.296 32.256t116.224 0.512 100.864-21.504 74.24-33.792zM522.24 513.024q20.48 8.192 38.912 18.432t32.768 27.648q10.24 12.288 17.92 30.72t10.752 39.424 1.536 42.496-9.728 38.912q-8.192 18.432-19.968 37.376t-28.672 35.328-40.448 29.184-57.344 18.944q-61.44 11.264-117.76-11.264t-88.064-74.752q-12.288-39.936-13.312-70.656t16.384-66.56q13.312-27.648 40.448-51.712t62.464-38.912 75.264-17.408 78.848 12.8zM359.424 764.928q37.888 3.072 57.856-18.432t21.504-48.128-15.36-47.616-52.736-16.896q-27.648 3.072-43.008 23.552t-17.408 43.52 9.728 42.496 39.424 21.504zM778.24 6.144q74.752 0 139.776 19.968t113.664 57.856 76.288 92.16 27.648 122.88q0 33.792-16.384 50.688t-35.328 17.408-35.328-14.336-16.384-45.568q0-40.96-22.528-77.824t-59.392-64.512-84.48-43.52-96.768-15.872q-31.744 0-47.104-15.36t-14.336-34.304 18.944-34.304 51.712-15.36zM778.24 169.984q95.232 0 144.384 48.64t49.152 146.944q0 30.72-10.24 43.52t-22.528 11.264-22.528-14.848-10.24-35.84q0-60.416-34.816-96.256t-93.184-35.84q-19.456 0-28.672-10.752t-9.216-23.04 9.728-23.04 28.16-10.752z"
:fill="multiColor ? '#D31818' : color" :fill="multiColor ? '#D31818' : color"
...@@ -281,13 +343,30 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -281,13 +343,30 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '9'" t="1675655183921" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="19990" :width="w" :height="h"> <svg
v-if="name === '9'"
t="1675655183921"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="19990"
:width="w"
:height="h">
<path <path
d="M149.6 171.8h691.9c47.2 0 85.9 37.7 86.5 83.9L495.7 493 63.5 256c0.4-46.4 38.8-84.2 86.1-84.2z m-86.1 175l-0.4 419.6c0 46.7 38.9 84.9 86.5 84.9h691.9c47.6 0 86.5-38.2 86.5-84.9V346.6L505.9 572.8c-6.5 3.5-14.3 3.5-20.7 0l-421.7-226z" d="M149.6 171.8h691.9c47.2 0 85.9 37.7 86.5 83.9L495.7 493 63.5 256c0.4-46.4 38.8-84.2 86.1-84.2z m-86.1 175l-0.4 419.6c0 46.7 38.9 84.9 86.5 84.9h691.9c47.6 0 86.5-38.2 86.5-84.9V346.6L505.9 572.8c-6.5 3.5-14.3 3.5-20.7 0l-421.7-226z"
:fill="multiColor ? '#2877D7' : color" :fill="multiColor ? '#2877D7' : color"
p-id="19991"></path> p-id="19991"></path>
</svg> </svg>
<svg v-if="name === '10'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 20 20"> <svg
v-if="name === '10'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 20 20">
<g style="mix-blend-mode: passthrough"> <g style="mix-blend-mode: passthrough">
<g> <g>
<path <path
...@@ -297,13 +376,30 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -297,13 +376,30 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '11'" t="1675660021839" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="24527" :width="w" :height="h"> <svg
v-if="name === '11'"
t="1675660021839"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="24527"
:width="w"
:height="h">
<path <path
d="M512 0C229.2 0 0 229.2 0 512s229.2 512 512 512 512-229.2 512-512S794.8 0 512 0z m-32 769V353c0-17.7 14.3-32 32-32s32 14.3 32 32v416c0 8.8-3.6 16.8-9.4 22.6-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32z m64-543.5c0 8.8-3.6 16.8-9.4 22.6-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32v-1c0-17.7 14.3-32 32-32s32 14.3 32 32v1z" d="M512 0C229.2 0 0 229.2 0 512s229.2 512 512 512 512-229.2 512-512S794.8 0 512 0z m-32 769V353c0-17.7 14.3-32 32-32s32 14.3 32 32v416c0 8.8-3.6 16.8-9.4 22.6-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32z m64-543.5c0 8.8-3.6 16.8-9.4 22.6-5.8 5.8-13.8 9.4-22.6 9.4-17.7 0-32-14.3-32-32v-1c0-17.7 14.3-32 32-32s32 14.3 32 32v1z"
:fill="multiColor ? '#D31818' : color" :fill="multiColor ? '#D31818' : color"
p-id="24528"></path> p-id="24528"></path>
</svg> </svg>
<svg v-if="name === '12'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '12'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<g clip-path="url(#master_svg0_457_9611)"> <g clip-path="url(#master_svg0_457_9611)">
<g><rect x="0" y="0" width="24" height="24" rx="0" fill="#FFFFFF" fill-opacity="0.009999999776482582" /></g> <g><rect x="0" y="0" width="24" height="24" rx="0" fill="#FFFFFF" fill-opacity="0.009999999776482582" /></g>
<g> <g>
...@@ -318,14 +414,32 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -318,14 +414,32 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '13'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '13'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<g style="mix-blend-mode: passthrough"> <g style="mix-blend-mode: passthrough">
<g> <g>
<g><rect x="0" y="0" width="24" height="24" rx="0" fill="#FFFFFF" fill-opacity="0.009999999776482582" /></g> <g><rect x="0" y="0" width="24" height="24" rx="0" fill="#FFFFFF" fill-opacity="0.009999999776482582" /></g>
<g> <g>
<g> <g>
<ellipse cx="12" cy="13.5" rx="8.5" ry="8.5" fill="#FFFFFF" fill-opacity="1" /> <ellipse cx="12" cy="13.5" rx="8.5" ry="8.5" fill="#FFFFFF" fill-opacity="1" />
<ellipse cx="12" cy="13.5" rx="8.5" ry="8.5" fill-opacity="0" stroke-opacity="1" stroke="#FFFFFF" fill="none" stroke-width="1" stroke-linejoin="round" /> <ellipse
cx="12"
cy="13.5"
rx="8.5"
ry="8.5"
fill-opacity="0"
stroke-opacity="1"
stroke="#FFFFFF"
fill="none"
stroke-width="1"
stroke-linejoin="round" />
</g> </g>
<g> <g>
<path <path
...@@ -355,7 +469,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -355,7 +469,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '14'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '14'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02199"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02199"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -393,7 +515,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -393,7 +515,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '15'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '15'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02220"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02220"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -416,7 +546,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -416,7 +546,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '16'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '16'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02228"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02228"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -446,7 +584,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -446,7 +584,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '17'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '17'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02210"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02210"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -485,7 +631,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -485,7 +631,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '18'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '18'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<g> <g>
<g> <g>
<rect x="0" y="0" width="24" height="24" rx="0" :fill="multiColor ? '#FFFFFF' : color" fill-opacity="0.009999999776482582" /> <rect x="0" y="0" width="24" height="24" rx="0" :fill="multiColor ? '#FFFFFF' : color" fill-opacity="0.009999999776482582" />
...@@ -504,14 +658,20 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -504,14 +658,20 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
fill-opacity="1" /> fill-opacity="1" />
</g> </g>
<g transform="matrix(-1,1.2246468525851679e-16,-1.2246468525851679e-16,-1,37,44)"> <g transform="matrix(-1,1.2246468525851679e-16,-1.2246468525851679e-16,-1,37,44)">
<path d="M31.5,22C30.1667,28.66945,28,32.0028,25,32C22,31.99722,19.83333,28.663890000000002,18.5,22L31.5,22Z" :fill="multiColor ? '#FFFFFF' : color" fill-opacity="1" /> <path
d="M31.5,22C30.1667,28.66945,28,32.0028,25,32C22,31.99722,19.83333,28.663890000000002,18.5,22L31.5,22Z"
:fill="multiColor ? '#FFFFFF' : color"
fill-opacity="1" />
<path <path
d="M18.5,21.5L31.5,21.5Q31.5492,21.5,31.5975,21.509607Q31.6458,21.519215,31.6913,21.53806Q31.736800000000002,21.556906,31.7778,21.584265Q31.8187,21.611625,31.8536,21.646447Q31.8884,21.681269,31.9157,21.722215Q31.9431,21.763161,31.9619,21.808658Q31.980800000000002,21.854155,31.9904,21.9024549Q32,21.9507543,32,22Q32,22.0494895,31.990299999999998,22.0980188Q29.9099,32.504599999999996,24.99954,32.5Q20.09005,32.495400000000004,18.009717,22.0980974Q18.000055,22.0498088,18,22.000563133Q17.999944,21.9513175,18.009497,21.9030072Q18.01905,21.854697,18.037845,21.809179Q18.056639,21.76366,18.083952,21.722683Q18.111266,21.681706,18.146049,21.646845Q18.180831,21.611984,18.221747,21.584578Q18.262662,21.557173,18.308138,21.538276Q18.353614,21.519379,18.4019026,21.509718Q18.45047,21.5,18.5,21.5ZM18.5,22.5L18.5,22L18.990282,21.9019026Q20.90994,31.496209999999998,25.00046,31.5Q29.0901,31.503790000000002,31.009700000000002,21.9019812L31.5,22L31.5,22.5L18.5,22.5Z" d="M18.5,21.5L31.5,21.5Q31.5492,21.5,31.5975,21.509607Q31.6458,21.519215,31.6913,21.53806Q31.736800000000002,21.556906,31.7778,21.584265Q31.8187,21.611625,31.8536,21.646447Q31.8884,21.681269,31.9157,21.722215Q31.9431,21.763161,31.9619,21.808658Q31.980800000000002,21.854155,31.9904,21.9024549Q32,21.9507543,32,22Q32,22.0494895,31.990299999999998,22.0980188Q29.9099,32.504599999999996,24.99954,32.5Q20.09005,32.495400000000004,18.009717,22.0980974Q18.000055,22.0498088,18,22.000563133Q17.999944,21.9513175,18.009497,21.9030072Q18.01905,21.854697,18.037845,21.809179Q18.056639,21.76366,18.083952,21.722683Q18.111266,21.681706,18.146049,21.646845Q18.180831,21.611984,18.221747,21.584578Q18.262662,21.557173,18.308138,21.538276Q18.353614,21.519379,18.4019026,21.509718Q18.45047,21.5,18.5,21.5ZM18.5,22.5L18.5,22L18.990282,21.9019026Q20.90994,31.496209999999998,25.00046,31.5Q29.0901,31.503790000000002,31.009700000000002,21.9019812L31.5,22L31.5,22.5L18.5,22.5Z"
:fill="multiColor ? '#FFFFFF' : color" :fill="multiColor ? '#FFFFFF' : color"
fill-opacity="1" /> fill-opacity="1" />
</g> </g>
<g> <g>
<path d="M18.5,2C17.1667,8.669450000000001,15,12.0028,12,12C9,11.99722,6.83333,8.66389,5.5,2L18.5,2Z" :fill="multiColor ? '#FFFFFF' : color" fill-opacity="1" /> <path
d="M18.5,2C17.1667,8.669450000000001,15,12.0028,12,12C9,11.99722,6.83333,8.66389,5.5,2L18.5,2Z"
:fill="multiColor ? '#FFFFFF' : color"
fill-opacity="1" />
<path <path
d="M5.5,1.5L18.5,1.5Q18.5492,1.5,18.5975,1.509607Q18.6458,1.519215,18.6913,1.53806Q18.736800000000002,1.5569060000000001,18.7778,1.584265Q18.8187,1.611625,18.8536,1.646447Q18.8884,1.681269,18.9157,1.722215Q18.9431,1.763161,18.9619,1.8086579999999999Q18.980800000000002,1.854155,18.9904,1.9024549Q19,1.9507543,19,2Q19,2.0494895,18.990299999999998,2.0980188Q16.9099,12.5046,11.99954,12.5Q7.09005,12.4954,5.009717,2.0980974Q5.000055,2.0498088,5,2.000563133Q4.999944,1.9513175,5.009497,1.9030072Q5.01905,1.854697,5.037845,1.809179Q5.056639,1.76366,5.083952,1.722683Q5.111266,1.681706,5.146049,1.646845Q5.180831,1.611984,5.221747,1.584578Q5.262662,1.557173,5.308138,1.538276Q5.353614,1.519379,5.4019026,1.509718Q5.45047,1.5,5.5,1.5ZM5.5,2.5L5.5,2L5.990282,1.9019026Q7.909940000000001,11.49621,12.00046,11.5Q16.0901,11.50379,18.009700000000002,1.9019812L18.5,2L18.5,2.5L5.5,2.5Z" d="M5.5,1.5L18.5,1.5Q18.5492,1.5,18.5975,1.509607Q18.6458,1.519215,18.6913,1.53806Q18.736800000000002,1.5569060000000001,18.7778,1.584265Q18.8187,1.611625,18.8536,1.646447Q18.8884,1.681269,18.9157,1.722215Q18.9431,1.763161,18.9619,1.8086579999999999Q18.980800000000002,1.854155,18.9904,1.9024549Q19,1.9507543,19,2Q19,2.0494895,18.990299999999998,2.0980188Q16.9099,12.5046,11.99954,12.5Q7.09005,12.4954,5.009717,2.0980974Q5.000055,2.0498088,5,2.000563133Q4.999944,1.9513175,5.009497,1.9030072Q5.01905,1.854697,5.037845,1.809179Q5.056639,1.76366,5.083952,1.722683Q5.111266,1.681706,5.146049,1.646845Q5.180831,1.611984,5.221747,1.584578Q5.262662,1.557173,5.308138,1.538276Q5.353614,1.519379,5.4019026,1.509718Q5.45047,1.5,5.5,1.5ZM5.5,2.5L5.5,2L5.990282,1.9019026Q7.909940000000001,11.49621,12.00046,11.5Q16.0901,11.50379,18.009700000000002,1.9019812L18.5,2L18.5,2.5L5.5,2.5Z"
:fill="multiColor ? '#FFFFFF' : color" :fill="multiColor ? '#FFFFFF' : color"
...@@ -532,7 +692,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -532,7 +692,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '19'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '19'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02239"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02239"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -561,7 +729,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -561,7 +729,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '20'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '20'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02264"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02264"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -594,7 +770,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -594,7 +770,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '21'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '21'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02615"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02615"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -621,7 +805,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -621,7 +805,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '22'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '22'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02625"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02625"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -663,7 +855,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -663,7 +855,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '23'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '23'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02635"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02635"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -696,7 +896,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -696,7 +896,15 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === '24'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" :width="w" :height="h" viewBox="0 0 24 24"> <svg
v-if="name === '24'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
version="1.1"
:width="w"
:height="h"
viewBox="0 0 24 24">
<defs> <defs>
<clipPath id="master_svg0_394_02644"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath> <clipPath id="master_svg0_394_02644"><rect x="0" y="0" width="24" height="24" rx="0" /></clipPath>
</defs> </defs>
...@@ -722,12 +930,26 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w ...@@ -722,12 +930,26 @@ withDefaults(defineProps<{ multiColor?: boolean; name: string; color?: string; w
</g> </g>
</g> </g>
</svg> </svg>
<svg v-if="name === 'circle'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" :width="w" :height="h" viewBox="0 0 100 100"> <svg
v-if="name === 'circle'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
:width="w"
:height="h"
viewBox="0 0 100 100">
<g> <g>
<ellipse cx="50" cy="50" rx="50" ry="50" :fill="multiColor ? '#4C5AB3' : color" fill-opacity="1" /> <ellipse cx="50" cy="50" rx="50" ry="50" :fill="multiColor ? '#4C5AB3' : color" fill-opacity="1" />
</g> </g>
</svg> </svg>
<svg v-if="name === 'square'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" :width="w" :height="h" viewBox="0 0 100 100"> <svg
v-if="name === 'square'"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
fill="none"
:width="w"
:height="h"
viewBox="0 0 100 100">
<g> <g>
<rect width="100" height="100" rx="40" :fill="color" fill-opacity="1" /> <rect width="100" height="100" rx="40" :fill="color" fill-opacity="1" />
</g> </g>
......
...@@ -4,56 +4,35 @@ const props = defineProps<{ node: NodeProps }>() ...@@ -4,56 +4,35 @@ const props = defineProps<{ node: NodeProps }>()
const component = computed(() => { const component = computed(() => {
const allComponent: any = { const allComponent: any = {
TCRealTimeTrigger: markRaw( TCRealTimeTrigger: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/realTimeTrigger/Index.vue'))),
defineAsyncComponent(() => import('./components/triggeringConditions/realTimeTrigger/Index.vue'))
),
TCJoinGroup: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/joinGroup/Index.vue'))), TCJoinGroup: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/joinGroup/Index.vue'))),
TCChangeProps: markRaw( TCChangeProps: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/changeProps/Index.vue'))),
defineAsyncComponent(() => import('./components/triggeringConditions/changeProps/Index.vue')) TCOffiaccount: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/offiaccount/Index.vue'))),
),
TCOffiaccount: markRaw(
defineAsyncComponent(() => import('./components/triggeringConditions/offiaccount/Index.vue'))
),
TCDouyin: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/douyin/Index.vue'))), TCDouyin: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/douyin/Index.vue'))),
TCXiaohongshu: markRaw( TCXiaohongshu: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/xiaohongshu/Index.vue'))),
defineAsyncComponent(() => import('./components/triggeringConditions/xiaohongshu/Index.vue'))
),
TCWeibo: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/weibo/Index.vue'))), TCWeibo: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/weibo/Index.vue'))),
TCCustom: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/custom/Index.vue'))), TCCustom: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/custom/Index.vue'))),
TCXiaoetong: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/xiaoetong/Index.vue'))), TCXiaoetong: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/xiaoetong/Index.vue'))),
TCWenjuanxing: markRaw( TCWenjuanxing: markRaw(defineAsyncComponent(() => import('./components/triggeringConditions/wenjuanxing/Index.vue'))),
defineAsyncComponent(() => import('./components/triggeringConditions/wenjuanxing/Index.vue'))
),
MAEndTrip: markRaw(defineAsyncComponent(() => import('./components/marketingAction/endTrip/Index.vue'))), MAEndTrip: markRaw(defineAsyncComponent(() => import('./components/marketingAction/endTrip/Index.vue'))),
MAJoinGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/joinGroup/Index.vue'))), MAJoinGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/joinGroup/Index.vue'))),
MALeaveGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/leaveGroup/Index.vue'))), MALeaveGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/leaveGroup/Index.vue'))),
MAChangeProps: markRaw(defineAsyncComponent(() => import('./components/marketingAction/changeProps/Index.vue'))), MAChangeProps: markRaw(defineAsyncComponent(() => import('./components/marketingAction/changeProps/Index.vue'))),
MADelayProcess: markRaw(defineAsyncComponent(() => import('./components/marketingAction/delayProcess/Index.vue'))), MADelayProcess: markRaw(defineAsyncComponent(() => import('./components/marketingAction/delayProcess/Index.vue'))),
MAInternalNotice: markRaw( MAInternalNotice: markRaw(defineAsyncComponent(() => import('./components/marketingAction/internalNotice/Index.vue'))),
defineAsyncComponent(() => import('./components/marketingAction/internalNotice/Index.vue'))
),
MAOffiaccount: markRaw(defineAsyncComponent(() => import('./components/marketingAction/offiaccount/Index.vue'))), MAOffiaccount: markRaw(defineAsyncComponent(() => import('./components/marketingAction/offiaccount/Index.vue'))),
MAEmail: markRaw(defineAsyncComponent(() => import('./components/marketingAction/email/Index.vue'))), MAEmail: markRaw(defineAsyncComponent(() => import('./components/marketingAction/email/Index.vue'))),
MASMS: markRaw(defineAsyncComponent(() => import('./components/marketingAction/sms/Index.vue'))), MASMS: markRaw(defineAsyncComponent(() => import('./components/marketingAction/sms/Index.vue'))),
MADouyin: markRaw(defineAsyncComponent(() => import('./components/marketingAction/douyin/Index.vue'))), MADouyin: markRaw(defineAsyncComponent(() => import('./components/marketingAction/douyin/Index.vue'))),
MAWeibo: markRaw(defineAsyncComponent(() => import('./components/marketingAction/weibo/Index.vue'))), MAWeibo: markRaw(defineAsyncComponent(() => import('./components/marketingAction/weibo/Index.vue'))),
MADingTalk: markRaw(defineAsyncComponent(() => import('./components/marketingAction/dingtalk/Index.vue'))), MADingTalk: markRaw(defineAsyncComponent(() => import('./components/marketingAction/dingtalk/Index.vue'))),
CBAttributeJudgment: markRaw( MAAB: markRaw(defineAsyncComponent(() => import('./components/marketingAction/ab/Index.vue'))),
defineAsyncComponent(() => import('./components/conditionalBranch/attributeJudgment/Index.vue')) CBAttributeJudgment: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/attributeJudgment/Index.vue'))),
), CBGroupJudgment: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/groupJudgment/Index.vue'))),
CBGroupJudgment: markRaw( CBEventJudgment: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/eventJudgment/Index.vue'))),
defineAsyncComponent(() => import('./components/conditionalBranch/groupJudgment/Index.vue')) CBTimeJudgment: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/timeJudgment/Index.vue'))),
),
CBEventJudgment: markRaw(
defineAsyncComponent(() => import('./components/conditionalBranch/eventJudgment/Index.vue'))
),
CBTimeJudgment: markRaw(
defineAsyncComponent(() => import('./components/conditionalBranch/timeJudgment/Index.vue'))
),
CBOffiaccount: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/offiaccount/Index.vue'))), CBOffiaccount: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/offiaccount/Index.vue'))),
CBLabelJudgment: markRaw( CBLabelJudgment: markRaw(defineAsyncComponent(() => import('./components/conditionalBranch/labelJudgment/Index.vue')))
defineAsyncComponent(() => import('./components/conditionalBranch/labelJudgment/Index.vue'))
)
} }
return allComponent[props.node?.data.component_name || props.node?.data.componentName] return allComponent[props.node?.data.component_name || props.node?.data.componentName]
}) })
......
...@@ -51,7 +51,9 @@ onConnect(params => { ...@@ -51,7 +51,9 @@ onConnect(params => {
'handle-yes': { label: '是', style: { stroke: '#81b337' } }, 'handle-yes': { label: '是', style: { stroke: '#81b337' } },
'handle-no': { label: '否', style: { stroke: '#a16222' } }, 'handle-no': { label: '否', style: { stroke: '#a16222' } },
'handle-success': { label: '成功', style: { stroke: '#81b337' } }, 'handle-success': { label: '成功', style: { stroke: '#81b337' } },
'handle-failure': { label: '失败', style: { stroke: '#a16222' } } 'handle-failure': { label: '失败', style: { stroke: '#a16222' } },
'handle-a': { label: 'A', style: { stroke: '#81b337' } },
'handle-b': { label: 'B', style: { stroke: '#a16222' } }
} }
let customParams = {} let customParams = {}
if (params.sourceHandle) { if (params.sourceHandle) {
......
...@@ -216,6 +216,14 @@ const list = ref([ ...@@ -216,6 +216,14 @@ const list = ref([
component_type: 9, component_type: 9,
component_name: 'MADingTalk', component_name: 'MADingTalk',
connection_type: 2 connection_type: 2
},
{
name: 'A/B分配',
type: 2,
type_name: '营销动作',
icon: '101',
component_type: 12,
component_name: 'MAAB'
} }
] ]
}, },
...@@ -280,9 +288,7 @@ const currentList = computed(() => { ...@@ -280,9 +288,7 @@ const currentList = computed(() => {
return list.value.map(item => { return list.value.map(item => {
return { return {
...item, ...item,
children: item.children.filter(item => children: item.children.filter(item => (item.connection_type ? connections.value.find(connection => connection.type === item.connection_type) : true))
item.connection_type ? connections.value.find(connection => connection.type === item.connection_type) : true
)
} }
}) })
}) })
...@@ -301,18 +307,9 @@ const onDragStart = (event: DragEvent, data: any) => { ...@@ -301,18 +307,9 @@ const onDragStart = (event: DragEvent, data: any) => {
<dt :style="`background: ${parent.background?.color}`">{{ parent.name }}</dt> <dt :style="`background: ${parent.background?.color}`">{{ parent.name }}</dt>
<dd> <dd>
<ul> <ul>
<li <li v-for="(item, index) in parent.children" :key="index" :draggable="true" @dragstart="event => onDragStart(event, item)">
v-for="(item, index) in parent.children"
:key="index"
:draggable="true"
@dragstart="event => onDragStart(event, item)">
<div class="icon-box"> <div class="icon-box">
<Icon <Icon class="circle" :color="item.color || parent.background?.color" :name="parent.background?.icon || ''" w="60" h="60"></Icon>
class="circle"
:color="item.color || parent.background?.color"
:name="parent.background?.icon || ''"
w="60"
h="60"></Icon>
<Icon class="icon" color="#fff" :name="item.icon" w="24" h="24"></Icon> <Icon class="icon" color="#fff" :name="item.icon" w="24" h="24"></Icon>
</div> </div>
<p>{{ item.name }}</p> <p>{{ item.name }}</p>
......
...@@ -3,10 +3,10 @@ import type { NodeProps } from '@vue-flow/core' ...@@ -3,10 +3,10 @@ import type { NodeProps } from '@vue-flow/core'
import { useVueFlow, Handle, Position } from '@vue-flow/core' import { useVueFlow, Handle, Position } from '@vue-flow/core'
import { Setting, Delete } from '@element-plus/icons-vue' import { Setting, Delete } from '@element-plus/icons-vue'
const props = withDefaults( const props = withDefaults(defineProps<{ node: NodeProps; connectionType?: number; canSetting?: boolean; canConnect?: boolean }>(), {
defineProps<{ node: NodeProps; connectionType?: number; canSetting?: boolean; canConnect?: boolean }>(), canSetting: true,
{ canSetting: true, canConnect: true } canConnect: true
) })
const emit = defineEmits<{ (e: 'setting'): void }>() const emit = defineEmits<{ (e: 'setting'): void }>()
...@@ -42,6 +42,10 @@ function onRemove() { ...@@ -42,6 +42,10 @@ function onRemove() {
<Handle id="handle-failure" class="handle-link is-no" :position="Position.Left">失败</Handle> <Handle id="handle-failure" class="handle-link is-no" :position="Position.Left">失败</Handle>
<Handle id="handle-any" class="handle-link is-any" :position="Position.Left">继续</Handle> <Handle id="handle-any" class="handle-link is-any" :position="Position.Left">继续</Handle>
</template> </template>
<template v-else-if="connectionType === 3">
<Handle id="handle-a" class="handle-link is-yes" :position="Position.Left">A</Handle>
<Handle id="handle-b" class="handle-link is-no" :position="Position.Left">B</Handle>
</template>
<template v-else> <template v-else>
<Handle id="handle-any" class="handle-default" :position="Position.Left"> <Handle id="handle-any" class="handle-default" :position="Position.Left">
<svg <svg
......
<script setup lang="ts">
import ConfigTemplate from '../../ConfigTemplate.vue'
const props = defineProps<{ node: any }>()
const role = inject('role') as string
const form = reactive({
a: 60,
b: 40
})
watchEffect(() => {
Object.assign(form, props.node.data[role])
})
watchEffect(() => {
form.b = 100 - (form.a || 0)
})
</script>
<template>
<ConfigTemplate :model="form" :node="node">
<el-form-item label="A路径">
<el-input-number v-model="form.a" :max="100" :min="0" :controls="false" style="width: 100%" />
</el-form-item>
<el-form-item label="B路径">
<el-input-number v-model="form.b" :controls="false" disabled style="width: 100%" />
</el-form-item>
</ConfigTemplate>
</template>
<script setup lang="ts">
import ConfigViewTemplate from '../../ConfigViewTemplate.vue'
const role = inject('role') as string
defineProps<{ node: any }>()
</script>
<template>
<ConfigViewTemplate :node="node">
<el-form-item :label="role === 'student' ? '我的答案' : '学生答案'"> A路径:{{ node.data.student?.a }} B路径:{{ node.data.student?.b }} </el-form-item>
<el-form-item label="正确答案"> A路径:{{ node.data.teacher?.a }} B路径:{{ node.data.teacher?.b }} </el-form-item>
</ConfigViewTemplate>
</template>
<!-- 变更属性 -->
<script setup lang="ts">
import NodeTemplate from '../../NodeTemplate.vue'
import Icon from '@/components/ConnectionIcon.vue'
const Config = defineAsyncComponent(() => import('./Config.vue'))
const ConfigView = defineAsyncComponent(() => import('./ConfigView.vue'))
const Rule = defineAsyncComponent(() => import('./Rule.vue'))
const props = defineProps<{ node: any }>()
const action = inject('action') as string
const role = inject('role') as string
const templateType = inject('templateType') as string
// 是否置灰
const isGray = computed(() => {
return templateType === '2' && role === 'student' && action === 'edit' && !props.node.data[role]
})
// 设置
const settingVisible = ref(false)
</script>
<template>
<NodeTemplate :node="node" :connectionType="3" @setting="settingVisible = true">
<div class="node-item">
<Icon class="circle" name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="101" color="#fff" w="24" h="24"></Icon>
</div>
</NodeTemplate>
<!-- 配置 -->
<Config v-model="settingVisible" :node="node" v-if="settingVisible && action === 'edit'" />
<!-- 查看配置 -->
<ConfigView v-model="settingVisible" :node="node" v-if="settingVisible && action === 'view'" />
<!-- 数据生成规则 -->
<Rule v-model="settingVisible" :node="node" v-if="settingVisible && action === 'rule'" />
</template>
<script setup lang="ts">
import RuleTemplate from '../../RuleTemplate.vue'
import { useUserAttr } from '../../../composables/useAllData'
const props = defineProps<{ node: any }>()
const { getUserAttr } = useUserAttr()
const config = computed(() => {
return props.node.data.teacher || {}
})
function paramsParse(data: any) {
return data.rules
}
</script>
<template>
<RuleTemplate :node="node" step :paramsParse="paramsParse">
<template #header-answer>
<p v-for="(item, index) in config.rules" :key="index">
<span>{{ getUserAttr(item.attr_id)?.name }}</span>
<span class="is-operate">&nbsp;&nbsp;{{ item.operate }}&nbsp;&nbsp;</span>
<span class="is-answer">{{ item.value }}</span>
&nbsp;&nbsp;&nbsp;&nbsp;
</p>
</template>
</RuleTemplate>
</template>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论