@hzab/form-render 0.4.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +1 -1
- package/package.json +1 -1
- package/src/components/LocationPicker/Map/AMap/common/loader.ts +1 -1
- package/src/components/LocationPicker/Map/AMap/common/utils.ts +13 -4
- package/src/components/LocationPicker/Map/AMap/index.jsx +3 -2
- package/src/components/LocationPicker/README.md +29 -21
- package/src/components/LocationPicker/assets/svg-icon.js +84 -0
- package/src/components/LocationPicker/common/utils.ts +2 -8
- package/src/components/LocationPicker/components/MapSearch/index.less +1 -1
- package/src/components/LocationPicker/components/ModalContent/index.less +12 -4
- package/src/components/LocationPicker/components/ModalContent/index.tsx +99 -49
- package/src/components/LocationPicker/components/ResInfo/index.less +8 -2
- package/src/components/LocationPicker/components/ResInfo/index.tsx +14 -20
- package/src/components/LocationPicker/index.tsx +54 -67
- package/src/components/Text/index.tsx +0 -2
- package/lib/static/imgs/marker-icon_ab8bbcc8cb.svg +0 -4
- package/lib/static/imgs/picker-icon_24d725ef02.svg +0 -5
- package/lib/static/imgs/position-icon_5bcb8a742e.svg +0 -6
- package/lib/static/imgs/reset-icon_9edad62306.svg +0 -5
- package/src/components/LocationPicker/assets/marker-icon.svg +0 -4
- package/src/components/LocationPicker/assets/picker-icon.svg +0 -5
- package/src/components/LocationPicker/assets/position-icon.svg +0 -6
- package/src/components/LocationPicker/assets/reset-icon.svg +0 -5
- package/src/components/LocationPicker/marker-icon.png +0 -0
@@ -1,6 +1,6 @@
|
|
1
|
-
import { useEffect,
|
1
|
+
import { useEffect, useRef, useState } from "react";
|
2
2
|
import { Modal } from "antd";
|
3
|
-
import {
|
3
|
+
import { observer } from "@formily/react";
|
4
4
|
|
5
5
|
import ResInfo from "./components/ResInfo";
|
6
6
|
import ModalContent from "./components/ModalContent";
|
@@ -8,28 +8,11 @@ import ModalContent from "./components/ModalContent";
|
|
8
8
|
import { MapUtils } from "./Map/AMap/common/utils";
|
9
9
|
import { getCurrentPosition } from "../../common/location-utils";
|
10
10
|
|
11
|
-
import {
|
11
|
+
import { getPropsValue } from "./common/utils";
|
12
12
|
|
13
13
|
import "./index.less";
|
14
14
|
|
15
|
-
const
|
16
|
-
lon: 120.168893,
|
17
|
-
lat: 30.225404,
|
18
|
-
addr: "浙江省杭州市上城区南星街道杭州西湖风景名胜区",
|
19
|
-
};
|
20
|
-
|
21
|
-
// 获取当前经纬度
|
22
|
-
getCurrentPosition()
|
23
|
-
.then((res) => {
|
24
|
-
const { coords = {} } = res;
|
25
|
-
defaultLocation.lon = coords.longitude;
|
26
|
-
defaultLocation.lat = coords.latitude;
|
27
|
-
})
|
28
|
-
.catch((e) => {
|
29
|
-
console.warn("Error getCurrentPosition e: ", e);
|
30
|
-
});
|
31
|
-
|
32
|
-
export function LocationPicker(props) {
|
15
|
+
export const LocationPicker = observer(function (props: any) {
|
33
16
|
const {
|
34
17
|
/**
|
35
18
|
* 地图显示类型:
|
@@ -45,13 +28,6 @@ export function LocationPicker(props) {
|
|
45
28
|
layout = "ver",
|
46
29
|
// 是否允许搜索
|
47
30
|
hasSearch = true,
|
48
|
-
/**
|
49
|
-
*
|
50
|
-
isObjectRes
|
51
|
-
true: 把所有数据存放在一个对象中(该对象和其他表单项平级),对象 key 为当前项的 name
|
52
|
-
false: 所有数据打平放到当前的 data 中,和其他表单项平级
|
53
|
-
*/
|
54
|
-
isObjectRes = true,
|
55
31
|
/**
|
56
32
|
* 打开地图时是否根据经纬度自动修正已填的地址
|
57
33
|
*/
|
@@ -69,23 +45,58 @@ export function LocationPicker(props) {
|
|
69
45
|
// 搜索框是否自动搜索
|
70
46
|
isAutoSearch = true,
|
71
47
|
modalConf = {},
|
48
|
+
getCurPositionConf,
|
72
49
|
} = props;
|
73
|
-
const field: any = useField() || {};
|
74
|
-
const fieldSchema: any = useFieldSchema() || {};
|
75
50
|
|
76
|
-
const
|
51
|
+
const [loading, setLoading] = useState(false);
|
52
|
+
const [defaultLocation, setDefaultLocation] = useState({
|
53
|
+
lon: 120.168893,
|
54
|
+
lat: 30.225404,
|
55
|
+
addr: "浙江省杭州市上城区南星街道杭州西湖风景名胜区",
|
56
|
+
});
|
57
|
+
const [visible, setVisible] = useState(mode === "show");
|
58
|
+
// 解决 弹窗关闭之后 visible 无法传入 ModalContent 的问题
|
59
|
+
const [visibleKey, setVisibleKey] = useState(0);
|
77
60
|
const pickInfoRef = useRef(defaultLocation);
|
78
61
|
|
79
|
-
|
62
|
+
useEffect(() => {
|
63
|
+
const propsVal = getPropsValue(value, {
|
64
|
+
lonKey,
|
65
|
+
latKey,
|
66
|
+
addrKey,
|
67
|
+
});
|
68
|
+
if (!propsVal.lon || !propsVal.lat) {
|
69
|
+
setLoading(true);
|
70
|
+
// 如果没有传入的经纬度,获取当前实际的经纬度数据
|
71
|
+
// 获取当前经纬度
|
72
|
+
getCurrentPosition(getCurPositionConf)
|
73
|
+
.then((res) => {
|
74
|
+
const { coords = {} } = res;
|
75
|
+
pickInfoRef.current = {
|
76
|
+
lon: coords.longitude,
|
77
|
+
lat: coords.latitude,
|
78
|
+
addr: "",
|
79
|
+
};
|
80
|
+
setDefaultLocation(pickInfoRef.current);
|
81
|
+
setLoading(false);
|
82
|
+
})
|
83
|
+
.catch((e) => {
|
84
|
+
console.warn("Error LocationPicker getCurrentPosition e: ", e);
|
85
|
+
setLoading(false);
|
86
|
+
});
|
87
|
+
} else {
|
88
|
+
setLoading(false);
|
89
|
+
}
|
90
|
+
}, []);
|
80
91
|
|
81
92
|
function onShow() {
|
82
|
-
// 等待地图加载完毕
|
83
|
-
!mapUtilsRef.current && setVisible(true);
|
84
93
|
setVisible(true);
|
94
|
+
setVisibleKey(Date.now());
|
85
95
|
}
|
86
96
|
|
87
97
|
function onClose() {
|
88
98
|
setVisible(false);
|
99
|
+
setVisibleKey(Date.now());
|
89
100
|
}
|
90
101
|
|
91
102
|
function onChange(res = pickInfoRef.current) {
|
@@ -96,18 +107,6 @@ export function LocationPicker(props) {
|
|
96
107
|
[addrKey]: info.addr,
|
97
108
|
};
|
98
109
|
props.onChange && props.onChange(_res);
|
99
|
-
if (isObjectRes === false) {
|
100
|
-
// 只有一层的情况
|
101
|
-
if (!field.parent) {
|
102
|
-
field.form.setValues(_res);
|
103
|
-
} else if (field.parent && fieldSchema.parent) {
|
104
|
-
// 嵌套在 ArrayBase: ArrayTable ArrayCard 等 里面的情况
|
105
|
-
const parentVal = getParentValue(field);
|
106
|
-
Object.keys(_res).forEach((key) => {
|
107
|
-
parentVal[key] = _res[key];
|
108
|
-
});
|
109
|
-
}
|
110
|
-
}
|
111
110
|
}
|
112
111
|
|
113
112
|
function onOk() {
|
@@ -126,8 +125,7 @@ export function LocationPicker(props) {
|
|
126
125
|
|
127
126
|
const isHor = layout === "hor" || layout === "hor-reverse";
|
128
127
|
const _props = {
|
129
|
-
|
130
|
-
readOnly: props.readOnly,
|
128
|
+
...props,
|
131
129
|
/**
|
132
130
|
* 地图显示类型:
|
133
131
|
* 弹窗 dialog
|
@@ -135,19 +133,8 @@ export function LocationPicker(props) {
|
|
135
133
|
*/
|
136
134
|
mode: mode ?? "dialog",
|
137
135
|
layout: layout ?? "ver",
|
138
|
-
/**
|
139
|
-
* 是否是水平布局
|
140
|
-
*/
|
141
|
-
isHor,
|
142
136
|
// 是否允许搜索
|
143
137
|
hasSearch: hasSearch ?? true,
|
144
|
-
/**
|
145
|
-
*
|
146
|
-
isObjectRes
|
147
|
-
true: 把所有数据存放在一个对象中(该对象和其他表单项平级),对象 key 为当前项的 name
|
148
|
-
false: 所有数据打平放到当前的 data 中,和其他表单项平级
|
149
|
-
*/
|
150
|
-
isObjectRes: isObjectRes ?? true,
|
151
138
|
/**
|
152
139
|
* 打开地图时是否根据经纬度自动修正已填的地址
|
153
140
|
*/
|
@@ -161,20 +148,19 @@ export function LocationPicker(props) {
|
|
161
148
|
lonKey: lonKey ?? "longitude",
|
162
149
|
latKey: latKey ?? "latitude",
|
163
150
|
addrKey: addrKey ?? "address",
|
164
|
-
value,
|
165
151
|
// 搜索框是否自动搜索
|
166
152
|
isAutoSearch: isAutoSearch ?? true,
|
153
|
+
visible,
|
154
|
+
visibleKey,
|
167
155
|
defaultLocation,
|
168
|
-
|
169
|
-
|
170
|
-
// 地图选点按钮的 icon img 的地址
|
171
|
-
pickerIconUrl: props.pickerIconUrl,
|
156
|
+
loading,
|
157
|
+
setLoading,
|
172
158
|
};
|
173
159
|
|
174
160
|
return (
|
175
161
|
<div className="location-picker">
|
176
162
|
{mode === "show" ? (
|
177
|
-
<ModalContent {..._props}
|
163
|
+
<ModalContent {..._props} setPickInfo={setResInfo} />
|
178
164
|
) : (
|
179
165
|
<>
|
180
166
|
{/* 弹窗 */}
|
@@ -186,14 +172,15 @@ export function LocationPicker(props) {
|
|
186
172
|
onCancel={onClose}
|
187
173
|
onOk={onOk}
|
188
174
|
visible={visible}
|
175
|
+
confirmLoading={loading}
|
189
176
|
width={modalConf?.width || isHor ? "1024px" : "720px"}
|
190
177
|
>
|
191
|
-
<ModalContent {..._props}
|
178
|
+
<ModalContent {..._props} setPickInfo={setPickInfo} />
|
192
179
|
</Modal>
|
193
180
|
</>
|
194
181
|
)}
|
195
182
|
</div>
|
196
183
|
);
|
197
|
-
}
|
184
|
+
});
|
198
185
|
|
199
186
|
export default LocationPicker;
|
@@ -1,4 +0,0 @@
|
|
1
|
-
<svg t="1708497164654" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="8489" width="200" height="200">
|
3
|
-
<path d="M512 1024c-205.76-241.472-326.272-411.712-361.664-510.72a384 384 0 1 1 723.072 0.832C837.76 612.928 717.312 782.848 512 1024.064z m0-512a128 128 0 1 0 0-256 128 128 0 0 0 0 256z" fill="#1677ff" p-id="8490"></path>
|
4
|
-
</svg>
|
@@ -1,5 +0,0 @@
|
|
1
|
-
<svg t="1708305242338" class="icon" viewBox="0 0 1088 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="1494" width="200" height="200">
|
3
|
-
<path d="M812.224 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576 193.472-184.448 288-338.432 288-456.576z m-288 544c-234.688-213.312-352-394.688-352-544a352 352 0 1 1 704 0c0 149.312-117.312 330.688-352 544z" fill="#1677ff" p-id="1495"></path>
|
4
|
-
<path d="M524.224 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128z m0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z m345.6 192l102.4 256h-288v-64h-320v64h-288l102.4-256h691.2z m-68.928 0H247.552l-76.8 192h706.944l-76.8-192z" fill="#1677ff" p-id="1496"></path>
|
5
|
-
</svg>
|
@@ -1,6 +0,0 @@
|
|
1
|
-
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
2
|
-
<svg t="1708478996666" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
3
|
-
xmlns="http://www.w3.org/2000/svg" p-id="6897"
|
4
|
-
xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
|
5
|
-
<path d="M895.044488 550.176484l-42.200124 0C834.62235 708.540282 709.048353 834.001715 550.718325 852.244194l0 42.258453c0 21.946848-17.790178 39.730886-39.729863 39.730886s-39.729863-17.784038-39.729863-39.730886l0-42.258453C312.926524 834.001715 187.354574 708.540282 169.131537 550.176484l-42.199101 0c-21.940708 0-39.730886-17.786085-39.730886-39.729863 0-21.940708 17.789155-39.726793 39.730886-39.726793l42.257429 0c18.24248-158.335145 143.711076-283.907095 302.068733-302.126039l0-42.200124c0-21.940708 17.789155-39.730886 39.729863-39.730886s39.729863 17.789155 39.729863 39.730886l0 42.258453c158.331052 18.241456 283.904025 143.706983 302.126039 302.06771l42.200124 0c21.940708 0 39.729863 17.786085 39.729863 39.726793C934.774351 532.390399 916.986219 550.176484 895.044488 550.176484zM696.395172 470.719828l76.16161 0c-17.251919-114.39847-107.492176-204.651007-221.838458-221.913159l0 76.236312c0 21.939685-17.790178 39.726793-39.729863 39.726793s-39.729863-17.787108-39.729863-39.726793l0-76.165704c-114.39233 17.256012-204.644867 107.495246-221.910089 221.842551l76.233242 0c21.946848 0 39.729863 17.786085 39.729863 39.726793 0 21.943778-17.781992 39.729863-39.729863 39.729863l-76.162634 0c17.251919 114.39847 107.498316 204.649983 221.839481 221.910089l0-76.234265c0-21.943778 17.789155-39.72577 39.729863-39.72577s39.729863 17.781992 39.729863 39.72577l0 76.234265c114.346281-17.260106 204.586538-107.511619 221.838458-221.910089l-76.16161 0c-21.941732 0-39.729863-17.786085-39.729863-39.729863C656.665309 488.505913 674.453441 470.719828 696.395172 470.719828zM510.988462 550.176484c-21.939685 0-39.729863-17.786085-39.729863-39.729863 0-21.940708 17.789155-39.726793 39.729863-39.726793s39.729863 17.786085 39.729863 39.726793C550.718325 532.390399 532.928147 550.176484 510.988462 550.176484z" fill="#000000" p-id="6898"></path>
|
6
|
-
</svg>
|
@@ -1,5 +0,0 @@
|
|
1
|
-
<svg t="1708485324277" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="7503" width="200" height="200">
|
3
|
-
<path d="M512 682.666667c71.296 0 128-56.789333 128-128s-56.704-128-128-128-128 56.789333-128 128 56.704 128 128 128z" p-id="7504"></path>
|
4
|
-
<path d="M888.192 477.269333a381.44 381.44 0 0 0-57.813333-137.344 386.261333 386.261333 0 0 0-103.68-103.68 381.866667 381.866667 0 0 0-137.344-57.813333 385.194667 385.194667 0 0 0-78.421334-7.68V85.333333L341.333333 213.333333l169.6 128V256.085333c20.650667-0.085333 41.301333 1.877333 61.226667 5.973334a297.002667 297.002667 0 0 1 106.752 44.928 298.88 298.88 0 0 1 80.725333 80.725333A297.258667 297.258667 0 0 1 810.666667 554.666667a300.032 300.032 0 0 1-23.466667 116.266666 303.36 303.36 0 0 1-27.477333 50.688 307.2 307.2 0 0 1-36.608 44.330667 299.861333 299.861333 0 0 1-150.869334 81.365333 304.213333 304.213333 0 0 1-120.405333 0 297.002667 297.002667 0 0 1-106.794667-44.970666 298.752 298.752 0 0 1-80.64-80.64A298.496 298.496 0 0 1 213.333333 554.666667H128a384.853333 384.853333 0 0 0 65.664 214.784 388.096 388.096 0 0 0 103.594667 103.594666A381.866667 381.866667 0 0 0 512 938.666667a387.84 387.84 0 0 0 77.397333-7.808 384.597333 384.597333 0 0 0 137.301334-57.813334 379.136 379.136 0 0 0 56.789333-46.890666 393.728 393.728 0 0 0 46.933333-56.832A381.952 381.952 0 0 0 896 554.666667a387.84 387.84 0 0 0-7.808-77.397334z" p-id="7505"></path>
|
5
|
-
</svg>
|
@@ -1,4 +0,0 @@
|
|
1
|
-
<svg t="1708497164654" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="8489" width="200" height="200">
|
3
|
-
<path d="M512 1024c-205.76-241.472-326.272-411.712-361.664-510.72a384 384 0 1 1 723.072 0.832C837.76 612.928 717.312 782.848 512 1024.064z m0-512a128 128 0 1 0 0-256 128 128 0 0 0 0 256z" fill="#1677ff" p-id="8490"></path>
|
4
|
-
</svg>
|
@@ -1,5 +0,0 @@
|
|
1
|
-
<svg t="1708305242338" class="icon" viewBox="0 0 1088 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="1494" width="200" height="200">
|
3
|
-
<path d="M812.224 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576 193.472-184.448 288-338.432 288-456.576z m-288 544c-234.688-213.312-352-394.688-352-544a352 352 0 1 1 704 0c0 149.312-117.312 330.688-352 544z" fill="#1677ff" p-id="1495"></path>
|
4
|
-
<path d="M524.224 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128z m0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z m345.6 192l102.4 256h-288v-64h-320v64h-288l102.4-256h691.2z m-68.928 0H247.552l-76.8 192h706.944l-76.8-192z" fill="#1677ff" p-id="1496"></path>
|
5
|
-
</svg>
|
@@ -1,6 +0,0 @@
|
|
1
|
-
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
2
|
-
<svg t="1708478996666" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
3
|
-
xmlns="http://www.w3.org/2000/svg" p-id="6897"
|
4
|
-
xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
|
5
|
-
<path d="M895.044488 550.176484l-42.200124 0C834.62235 708.540282 709.048353 834.001715 550.718325 852.244194l0 42.258453c0 21.946848-17.790178 39.730886-39.729863 39.730886s-39.729863-17.784038-39.729863-39.730886l0-42.258453C312.926524 834.001715 187.354574 708.540282 169.131537 550.176484l-42.199101 0c-21.940708 0-39.730886-17.786085-39.730886-39.729863 0-21.940708 17.789155-39.726793 39.730886-39.726793l42.257429 0c18.24248-158.335145 143.711076-283.907095 302.068733-302.126039l0-42.200124c0-21.940708 17.789155-39.730886 39.729863-39.730886s39.729863 17.789155 39.729863 39.730886l0 42.258453c158.331052 18.241456 283.904025 143.706983 302.126039 302.06771l42.200124 0c21.940708 0 39.729863 17.786085 39.729863 39.726793C934.774351 532.390399 916.986219 550.176484 895.044488 550.176484zM696.395172 470.719828l76.16161 0c-17.251919-114.39847-107.492176-204.651007-221.838458-221.913159l0 76.236312c0 21.939685-17.790178 39.726793-39.729863 39.726793s-39.729863-17.787108-39.729863-39.726793l0-76.165704c-114.39233 17.256012-204.644867 107.495246-221.910089 221.842551l76.233242 0c21.946848 0 39.729863 17.786085 39.729863 39.726793 0 21.943778-17.781992 39.729863-39.729863 39.729863l-76.162634 0c17.251919 114.39847 107.498316 204.649983 221.839481 221.910089l0-76.234265c0-21.943778 17.789155-39.72577 39.729863-39.72577s39.729863 17.781992 39.729863 39.72577l0 76.234265c114.346281-17.260106 204.586538-107.511619 221.838458-221.910089l-76.16161 0c-21.941732 0-39.729863-17.786085-39.729863-39.729863C656.665309 488.505913 674.453441 470.719828 696.395172 470.719828zM510.988462 550.176484c-21.939685 0-39.729863-17.786085-39.729863-39.729863 0-21.940708 17.789155-39.726793 39.729863-39.726793s39.729863 17.786085 39.729863 39.726793C550.718325 532.390399 532.928147 550.176484 510.988462 550.176484z" fill="#000000" p-id="6898"></path>
|
6
|
-
</svg>
|
@@ -1,5 +0,0 @@
|
|
1
|
-
<svg t="1708485324277" class="icon" viewBox="0 0 1024 1024" version="1.1"
|
2
|
-
xmlns="http://www.w3.org/2000/svg" p-id="7503" width="200" height="200">
|
3
|
-
<path d="M512 682.666667c71.296 0 128-56.789333 128-128s-56.704-128-128-128-128 56.789333-128 128 56.704 128 128 128z" p-id="7504"></path>
|
4
|
-
<path d="M888.192 477.269333a381.44 381.44 0 0 0-57.813333-137.344 386.261333 386.261333 0 0 0-103.68-103.68 381.866667 381.866667 0 0 0-137.344-57.813333 385.194667 385.194667 0 0 0-78.421334-7.68V85.333333L341.333333 213.333333l169.6 128V256.085333c20.650667-0.085333 41.301333 1.877333 61.226667 5.973334a297.002667 297.002667 0 0 1 106.752 44.928 298.88 298.88 0 0 1 80.725333 80.725333A297.258667 297.258667 0 0 1 810.666667 554.666667a300.032 300.032 0 0 1-23.466667 116.266666 303.36 303.36 0 0 1-27.477333 50.688 307.2 307.2 0 0 1-36.608 44.330667 299.861333 299.861333 0 0 1-150.869334 81.365333 304.213333 304.213333 0 0 1-120.405333 0 297.002667 297.002667 0 0 1-106.794667-44.970666 298.752 298.752 0 0 1-80.64-80.64A298.496 298.496 0 0 1 213.333333 554.666667H128a384.853333 384.853333 0 0 0 65.664 214.784 388.096 388.096 0 0 0 103.594667 103.594666A381.866667 381.866667 0 0 0 512 938.666667a387.84 387.84 0 0 0 77.397333-7.808 384.597333 384.597333 0 0 0 137.301334-57.813334 379.136 379.136 0 0 0 56.789333-46.890666 393.728 393.728 0 0 0 46.933333-56.832A381.952 381.952 0 0 0 896 554.666667a387.84 387.84 0 0 0-7.808-77.397334z" p-id="7505"></path>
|
5
|
-
</svg>
|
Binary file
|