@opendesign-plus-test/components 0.0.1-rc.68 → 0.0.1-rc.69
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/dist/chunk-OElCookieNotice.cjs.js +1 -1
- package/dist/chunk-OElCookieNotice.es.js +4 -0
- package/dist/components/config-provider/OPlusConfigProvider.vue.d.ts +3 -2
- package/dist/components/config-provider/index.d.ts +3 -0
- package/dist/components/footer/OFooter.vue.d.ts +1 -1
- package/dist/components/footer/index.d.ts +3 -3
- package/dist/components/meeting/OMeetingPlayback.vue.d.ts +4 -4
- package/dist/components/meeting/components/OMeetingPlaybackVideo.vue.d.ts +1 -1
- package/dist/components/meeting/index.d.ts +2 -2
- package/dist/components.cjs.js +37 -37
- package/dist/components.css +1 -1
- package/dist/components.es.js +6522 -6472
- package/package.json +1 -1
- package/src/assets/meeting/svg-icons/icon-copy.svg +4 -3
- package/src/assets/meeting/svg-icons/icon-empty.svg +65 -31
- package/src/components/config-provider/OPlusConfigProvider.vue +3 -3
- package/src/components/events/OEventsApply.vue +8 -2
- package/src/components/events/OEventsList.vue +1 -3
- package/src/components/meeting/OMeetingCalendar.vue +21 -4
- package/src/components/meeting/OMeetingMyCalendar.vue +102 -86
- package/src/components/meeting/OMeetingSigCalendar.vue +89 -30
- package/src/components/meeting/components/OMeetingCalendarList.vue +33 -13
- package/src/components/meeting/components/OMeetingDetail.vue +22 -4
- package/src/components/meeting/components/OMeetingSigAside.vue +6 -5
- package/src/i18n/en.ts +2 -0
- package/src/i18n/zh.ts +2 -0
- package/src/assets/meeting/svg-icons/icon-empty_dark.svg +0 -49
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { ref, onMounted, computed, nextTick, watch } from 'vue';
|
|
3
|
-
import {
|
|
4
|
-
|
|
3
|
+
import {
|
|
4
|
+
ODivider,
|
|
5
|
+
OPopover,
|
|
6
|
+
OIcon,
|
|
7
|
+
OTabPane,
|
|
8
|
+
OTab,
|
|
9
|
+
OScroller,
|
|
10
|
+
OSelect,
|
|
11
|
+
OOption,
|
|
12
|
+
OFigure,
|
|
13
|
+
OResult,
|
|
14
|
+
} from '@opensig/opendesign';
|
|
5
15
|
import dayjs from 'dayjs';
|
|
6
16
|
import IconTips from '~icons/components/icon-tips.svg';
|
|
7
17
|
import OMeetingSigAside from './components/OMeetingSigAside.vue';
|
|
@@ -10,6 +20,7 @@ import { useScreen } from '@opendesign-plus/composables';
|
|
|
10
20
|
import { useMeetingConfig } from './composables/useMeetingConfig';
|
|
11
21
|
import OMeetingCalendarList from '@/components/meeting/components/OMeetingCalendarList.vue';
|
|
12
22
|
import { formatDate } from '@/components/meeting/utils.ts';
|
|
23
|
+
import emptyImg from '@/assets/meeting/svg-icons/icon-empty.svg';
|
|
13
24
|
|
|
14
25
|
const props = defineProps<{
|
|
15
26
|
sigName: String;
|
|
@@ -34,7 +45,7 @@ const monthIdx = ref(-1);
|
|
|
34
45
|
const clickDateCell2 = (date: string) => {
|
|
35
46
|
clickDateCell(date);
|
|
36
47
|
};
|
|
37
|
-
const changeSelect = (v:
|
|
48
|
+
const changeSelect = (v: any) => {
|
|
38
49
|
clickDateCell(v);
|
|
39
50
|
};
|
|
40
51
|
// 获取所选日期的会议列表
|
|
@@ -79,15 +90,6 @@ const selectTab = () => {
|
|
|
79
90
|
getDates();
|
|
80
91
|
};
|
|
81
92
|
|
|
82
|
-
watch(
|
|
83
|
-
() => lePadV.value,
|
|
84
|
-
() => {
|
|
85
|
-
if (lePadV.value) {
|
|
86
|
-
tabType.value = CalendarDataType.ALL;
|
|
87
|
-
selectTab();
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
|
-
);
|
|
91
93
|
// -------------------- 获取有会议的日期 --------------------
|
|
92
94
|
|
|
93
95
|
const getMonthAndDay = (date: string) => {
|
|
@@ -284,16 +286,26 @@ const list = computed(() => {
|
|
|
284
286
|
</OTab>
|
|
285
287
|
</div>
|
|
286
288
|
<template v-if="lePadV && dateList.length">
|
|
287
|
-
<div class="
|
|
288
|
-
<
|
|
289
|
-
<
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
289
|
+
<div class="phone-filter-wrapper">
|
|
290
|
+
<div class="date-select">
|
|
291
|
+
<OSelect v-model="selectDate" @change="changeSelect">
|
|
292
|
+
<OOption
|
|
293
|
+
v-for="date in dateList"
|
|
294
|
+
:key="date"
|
|
295
|
+
:value="date"
|
|
296
|
+
:label="formatDate(date)"
|
|
297
|
+
/>
|
|
298
|
+
</OSelect>
|
|
299
|
+
</div>
|
|
300
|
+
<div>
|
|
301
|
+
<OTab v-model="tabType" @change="selectTab" :line="false" :max-show="9999">
|
|
302
|
+
<OTabPane v-for="item in meetingTabs.slice(0, -1)" :key="item.value" :value="item.value">
|
|
303
|
+
<template #nav>
|
|
304
|
+
{{ item.label }}
|
|
305
|
+
</template>
|
|
306
|
+
</OTabPane>
|
|
307
|
+
</OTab>
|
|
308
|
+
</div>
|
|
297
309
|
</div>
|
|
298
310
|
</template>
|
|
299
311
|
<ODivider class="meeting-divider" v-if="!lePadV || (lePadV && dateList.length)" />
|
|
@@ -316,7 +328,14 @@ const list = computed(() => {
|
|
|
316
328
|
:rows="calendarRows"
|
|
317
329
|
>
|
|
318
330
|
<template #empty>
|
|
319
|
-
<slot name="empty"
|
|
331
|
+
<slot name="empty">
|
|
332
|
+
<OResult class="empty-result">
|
|
333
|
+
<template #image>
|
|
334
|
+
<OFigure class="img" :src="emptyImg" />
|
|
335
|
+
</template>
|
|
336
|
+
<template #description>{{ t('meeting.meetingEmptyText') }}</template>
|
|
337
|
+
</OResult>
|
|
338
|
+
</slot>
|
|
320
339
|
</template>
|
|
321
340
|
</OMeetingCalendarList>
|
|
322
341
|
</OScroller>
|
|
@@ -335,8 +354,6 @@ const list = computed(() => {
|
|
|
335
354
|
margin-top: var(--o-gap-5);
|
|
336
355
|
@include respond('phone') {
|
|
337
356
|
.meeting-card-header {
|
|
338
|
-
padding: var(--o-gap-3) var(--o-gap-4) 0;
|
|
339
|
-
|
|
340
357
|
.el-input {
|
|
341
358
|
flex-grow: 1;
|
|
342
359
|
}
|
|
@@ -346,11 +363,44 @@ const list = computed(() => {
|
|
|
346
363
|
}
|
|
347
364
|
}
|
|
348
365
|
|
|
349
|
-
.
|
|
350
|
-
|
|
366
|
+
.phone-filter-wrapper {
|
|
367
|
+
display: flex;
|
|
368
|
+
align-items: center;
|
|
369
|
+
justify-content: space-between;
|
|
370
|
+
gap: var(--o-gap-4);
|
|
371
|
+
padding: var(--o-gap-4) var(--o-gap-3) 0 var(--o-gap-3);
|
|
372
|
+
flex-wrap: nowrap;
|
|
373
|
+
@include respond('phone') {
|
|
374
|
+
flex-wrap: wrap;
|
|
375
|
+
flex-direction: column;
|
|
376
|
+
align-items: center;
|
|
377
|
+
gap: var(--o-gap-2);
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
.date-select {
|
|
381
|
+
padding-bottom: var(--o-gap-2);
|
|
382
|
+
max-width: 240px;
|
|
383
|
+
@include respond('phone') {
|
|
384
|
+
max-width: 100%;
|
|
385
|
+
width: 100%;
|
|
386
|
+
padding-bottom: 0;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
.o-select {
|
|
390
|
+
width: 100%;
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
.o-tab {
|
|
395
|
+
flex-shrink: 0;
|
|
396
|
+
--tab-text-height: calc(var(--tab-nav-text-height) + var(--o-gap-2) + 2px);
|
|
397
|
+
@include respond('phone') {
|
|
398
|
+
--tab-text-height: var(--tab-nav-text-height);
|
|
399
|
+
}
|
|
351
400
|
|
|
352
|
-
|
|
353
|
-
|
|
401
|
+
.o-tab-head {
|
|
402
|
+
line-height: var(--tab-text-height);
|
|
403
|
+
}
|
|
354
404
|
}
|
|
355
405
|
}
|
|
356
406
|
|
|
@@ -358,7 +408,7 @@ const list = computed(() => {
|
|
|
358
408
|
font-weight: 500;
|
|
359
409
|
display: flex;
|
|
360
410
|
align-items: center;
|
|
361
|
-
padding: var(--o-gap-3) var(--o-gap-
|
|
411
|
+
padding: var(--o-gap-3) var(--o-gap-5) 0;
|
|
362
412
|
@include text1;
|
|
363
413
|
@include respond('<=pad') {
|
|
364
414
|
padding: var(--o-gap-3) var(--o-gap-4) 0;
|
|
@@ -435,5 +485,14 @@ const list = computed(() => {
|
|
|
435
485
|
height: auto;
|
|
436
486
|
}
|
|
437
487
|
}
|
|
488
|
+
|
|
489
|
+
.empty-result {
|
|
490
|
+
--result-image-width: 200px;
|
|
491
|
+
--result-image-height: 175px;
|
|
492
|
+
|
|
493
|
+
.o-result-description {
|
|
494
|
+
@include tip1;
|
|
495
|
+
}
|
|
496
|
+
}
|
|
438
497
|
}
|
|
439
498
|
</style>
|
|
@@ -95,19 +95,26 @@ const computedList = computed<any[]>(() => {
|
|
|
95
95
|
let end_date_time = '';
|
|
96
96
|
if (type !== CalendarDataType.MEETING) {
|
|
97
97
|
let activity_type = activityTypeMap.value.get(v.activity_type)?.label;
|
|
98
|
+
const isSameDay = v.start_date && (v.start_date === v.end_date || !v.end_date);
|
|
98
99
|
if (v.start_date) {
|
|
99
100
|
dateRange = props.disableFormat ? v.start_date : formatDate(v.start_date);
|
|
100
101
|
}
|
|
101
|
-
if (
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
dateRange += `${ dateRange ? ' ' : '' }${ props.disableFormat ? v.end_date : formatDate(v.end_date) }`;
|
|
102
|
+
if (isSameDay) {
|
|
103
|
+
if (v.start) {
|
|
104
|
+
dateRange += `${ dateRange ? ' ' : '' }${ v.start }`;
|
|
105
|
+
if (v.end) {
|
|
106
|
+
dateRange += `${ dateRange ? ' - ' : '' }${ v.end }`;
|
|
107
|
+
}
|
|
108
108
|
}
|
|
109
|
-
|
|
110
|
-
|
|
109
|
+
} else {
|
|
110
|
+
if (v.start) {
|
|
111
|
+
dateRange += `${ dateRange ? ' ' : '' }${ v.start }`;
|
|
112
|
+
}
|
|
113
|
+
if (v.end_date) {
|
|
114
|
+
dateRange += `${ dateRange ? ' - ' : '' }${ props.disableFormat ? v.end_date : formatDate(v.end_date) }`;
|
|
115
|
+
if (v.end) {
|
|
116
|
+
dateRange += `${ dateRange ? ' ' : '' }${ v.end }`;
|
|
117
|
+
}
|
|
111
118
|
}
|
|
112
119
|
}
|
|
113
120
|
if (v.start_date) {
|
|
@@ -120,7 +127,7 @@ const computedList = computed<any[]>(() => {
|
|
|
120
127
|
end_date_time = props.disableFormat ? v.end_date : formatDate(v.end_date);
|
|
121
128
|
}
|
|
122
129
|
if (v.end) {
|
|
123
|
-
end_date_time += `${
|
|
130
|
+
end_date_time += `${ end_date_time ? ' ' : '' }${ v.end }`;
|
|
124
131
|
}
|
|
125
132
|
|
|
126
133
|
return {
|
|
@@ -146,9 +153,9 @@ const computedList = computed<any[]>(() => {
|
|
|
146
153
|
} = v;
|
|
147
154
|
dateRange = props.disableFormat ? date : formatDate(date);
|
|
148
155
|
if (start && end) {
|
|
149
|
-
dateRange += `${ dateRange ? ' ' : '' }
|
|
156
|
+
dateRange += `${ dateRange ? ' ' : '' }${ start } - ${ end }`;
|
|
150
157
|
} else if (start || end) {
|
|
151
|
-
dateRange += `${ dateRange ? ' ' : '' }
|
|
158
|
+
dateRange += `${ dateRange ? ' ' : '' }${ start || end }`;
|
|
152
159
|
}
|
|
153
160
|
if (is_cycle) {
|
|
154
161
|
dateRange = `${ props.disableFormat ? cycle_start_date : formatDate(cycle_start_date) } - ${ props.disableFormat ? cycle_end_date : formatDate(cycle_end_date) }`;
|
|
@@ -423,7 +430,13 @@ const computedList = computed<any[]>(() => {
|
|
|
423
430
|
align-items: center;
|
|
424
431
|
justify-content: center;
|
|
425
432
|
gap: var(--o-gap-4);
|
|
426
|
-
padding-right: var(--o-gap-
|
|
433
|
+
padding-right: var(--o-gap-4);
|
|
434
|
+
@include respond('laptop') {
|
|
435
|
+
padding-right: var(--o-gap-3);
|
|
436
|
+
}
|
|
437
|
+
@include respond('<=pad') {
|
|
438
|
+
padding-right: var(--o-gap-2);
|
|
439
|
+
}
|
|
427
440
|
|
|
428
441
|
.meet-title-left {
|
|
429
442
|
flex-grow: 1;
|
|
@@ -431,11 +444,18 @@ const computedList = computed<any[]>(() => {
|
|
|
431
444
|
}
|
|
432
445
|
|
|
433
446
|
.copy-icon {
|
|
447
|
+
font-size: 24px;
|
|
434
448
|
flex-shrink: 0;
|
|
435
449
|
display: inline-flex;
|
|
436
450
|
opacity: 0;
|
|
437
451
|
visibility: hidden;
|
|
438
452
|
color: var(--o-color-info1);
|
|
453
|
+
@include respond('<=laptop') {
|
|
454
|
+
font-size: 20px;
|
|
455
|
+
}
|
|
456
|
+
@include respond('<=pad_v') {
|
|
457
|
+
font-size: 24px;
|
|
458
|
+
}
|
|
439
459
|
|
|
440
460
|
&:hover {
|
|
441
461
|
color: var(--o-color-primary1);
|
|
@@ -15,7 +15,7 @@ const props = defineProps<{
|
|
|
15
15
|
}>();
|
|
16
16
|
const { t, getPlatformLabel } = useMeetingConfig();
|
|
17
17
|
const { locale } = useI18n();
|
|
18
|
-
const
|
|
18
|
+
const isEn = computed(() => locale.value === 'en');
|
|
19
19
|
// 会议详情配置
|
|
20
20
|
const infoList = computed(() =>
|
|
21
21
|
[
|
|
@@ -92,13 +92,24 @@ const columns = computed<ColumnItemT[]>(() => {
|
|
|
92
92
|
|
|
93
93
|
const domRef = ref([]);
|
|
94
94
|
const SPLIT_MARK = '|';
|
|
95
|
+
|
|
96
|
+
const titleMap = ref<Record<CalendarDataType, string>>({
|
|
97
|
+
[CalendarDataType.ALL]: t('meeting.meetingTopic'),
|
|
98
|
+
[CalendarDataType.MEETING]: t('meeting.meetingTopic'),
|
|
99
|
+
[CalendarDataType.EVENTS]: t('meeting.eventsTitle'),
|
|
100
|
+
[CalendarDataType.APPROVAL]: t('meeting.eventsTitle'),
|
|
101
|
+
[CalendarDataType.SUMMIT]: t('meeting.summitTitle'),
|
|
102
|
+
});
|
|
95
103
|
// 复制会议内容
|
|
96
104
|
const copyInfo = () => {
|
|
97
105
|
try {
|
|
98
|
-
const colon =
|
|
99
|
-
let text = `${ t('meeting.meetingTopic') }${ colon }${ props.data.topic || props.data.name || props.data.title }\n`;
|
|
106
|
+
const colon = !isEn.value ? ':' : ': ';
|
|
107
|
+
let text = `${ titleMap.value[props.data.type] ?? t('meeting.meetingTopic') }${ colon }${ props.data.topic || props.data.name || props.data.title }\n`;
|
|
100
108
|
text += [...domRef.value].reduce((pre, cur: HTMLDivElement) => {
|
|
101
|
-
|
|
109
|
+
if (cur.textContent) {
|
|
110
|
+
return `${ pre }${ cur.textContent ? cur.textContent.replace(SPLIT_MARK, colon) : '' }\n`;
|
|
111
|
+
}
|
|
112
|
+
return pre;
|
|
102
113
|
}, '');
|
|
103
114
|
navigator.clipboard.writeText(text);
|
|
104
115
|
return Promise.resolve();
|
|
@@ -122,6 +133,7 @@ defineExpose({ copyInfo });
|
|
|
122
133
|
'is-empty':!getField(info.key)?.length,
|
|
123
134
|
[`label-item_${data.id}`]: true,
|
|
124
135
|
[`type_${data.type}`]: true,
|
|
136
|
+
'is-en': isEn,
|
|
125
137
|
}"
|
|
126
138
|
>
|
|
127
139
|
<template v-if="getField(info.key) && !info.isRecord">
|
|
@@ -190,6 +202,12 @@ defineExpose({ copyInfo });
|
|
|
190
202
|
}
|
|
191
203
|
}
|
|
192
204
|
|
|
205
|
+
&.is-en {
|
|
206
|
+
.label {
|
|
207
|
+
width: 6em;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
193
211
|
.label {
|
|
194
212
|
width: 4em;
|
|
195
213
|
flex-shrink: 0;
|
|
@@ -80,7 +80,7 @@ const changeMonth = (step: number) => {
|
|
|
80
80
|
.o-sig-meeting-aside {
|
|
81
81
|
width: 35%;
|
|
82
82
|
flex-shrink: 0;
|
|
83
|
-
padding: var(--o-gap-4);
|
|
83
|
+
padding: var(--o-gap-4) var(--o-gap-5);
|
|
84
84
|
display: flex;
|
|
85
85
|
flex-direction: column;
|
|
86
86
|
border-right: 1px solid var(--o-color-control4);
|
|
@@ -91,7 +91,7 @@ const changeMonth = (step: number) => {
|
|
|
91
91
|
border-right: none;
|
|
92
92
|
}
|
|
93
93
|
@include respond('phone') {
|
|
94
|
-
padding:
|
|
94
|
+
padding: var(--o-gap-4);
|
|
95
95
|
.title {
|
|
96
96
|
margin-bottom: var(--o-gap-2);
|
|
97
97
|
}
|
|
@@ -139,6 +139,7 @@ const changeMonth = (step: number) => {
|
|
|
139
139
|
font-weight: 500;
|
|
140
140
|
margin-bottom: var(--o-gap-1);
|
|
141
141
|
color: var(--o-color-info1);
|
|
142
|
+
@include tip1;
|
|
142
143
|
}
|
|
143
144
|
|
|
144
145
|
.day-c {
|
|
@@ -147,9 +148,9 @@ const changeMonth = (step: number) => {
|
|
|
147
148
|
flex-wrap: nowrap;
|
|
148
149
|
|
|
149
150
|
.o-icon {
|
|
150
|
-
width:
|
|
151
|
-
height:
|
|
152
|
-
font-size:
|
|
151
|
+
width: 16px;
|
|
152
|
+
height: 16px;
|
|
153
|
+
font-size: 14px;
|
|
153
154
|
padding: 1px;
|
|
154
155
|
line-height: 1em;
|
|
155
156
|
position: relative;
|
package/src/i18n/en.ts
CHANGED
|
@@ -147,6 +147,8 @@ export default {
|
|
|
147
147
|
'meeting.activityAddress': 'Address',
|
|
148
148
|
'meeting.livePlatform': 'Live Platform',
|
|
149
149
|
'meeting.meetingTopic': 'Topics',
|
|
150
|
+
'meeting.eventsTitle': 'Name',
|
|
151
|
+
'meeting.summitTitle': 'Name',
|
|
150
152
|
'meeting.meetingDetail': 'Details',
|
|
151
153
|
'meeting.meetingEtherpad': 'Etherpad',
|
|
152
154
|
'meeting.meetingReplay': 'Playback',
|
package/src/i18n/zh.ts
CHANGED
|
@@ -146,6 +146,8 @@ export default {
|
|
|
146
146
|
'meeting.activityAddress': '活动地点',
|
|
147
147
|
'meeting.livePlatform': '直播平台',
|
|
148
148
|
'meeting.meetingTopic': '会议主题',
|
|
149
|
+
'meeting.eventsTitle': '活动名称',
|
|
150
|
+
'meeting.summitTitle': '峰会名称',
|
|
149
151
|
'meeting.meetingDetail': '会议详情',
|
|
150
152
|
'meeting.meetingEtherpad': '会议纪要',
|
|
151
153
|
'meeting.meetingReplay': '智能回放',
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
<svg width="320.000000" height="280.000000" viewBox="0 0 320 280" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
2
|
-
<defs>
|
|
3
|
-
<clipPath id="clip832_47109">
|
|
4
|
-
<rect id="空内容" width="320.000000" height="280.000000" fill="white" fill-opacity="0"/>
|
|
5
|
-
</clipPath>
|
|
6
|
-
<linearGradient x1="160.000000" y1="203.999634" x2="160.000000" y2="250.525574" id="paint_linear_832_47113_0" gradientUnits="userSpaceOnUse">
|
|
7
|
-
<stop stop-color="#418CFF" stop-opacity="0.200000"/>
|
|
8
|
-
<stop offset="1.000000" stop-color="#418CFF" stop-opacity="0.000000"/>
|
|
9
|
-
</linearGradient>
|
|
10
|
-
</defs>
|
|
11
|
-
<g clip-path="url(#clip832_47109)">
|
|
12
|
-
<mask id="mask832_47110" mask-type="alpha" maskUnits="userSpaceOnUse" x="0.000000" y="0.000000" width="320.000000" height="280.000000">
|
|
13
|
-
<rect id="蒙版" width="320.000000" height="280.000000" fill="#D8D8D8" fill-opacity="1.000000"/>
|
|
14
|
-
<rect id="蒙版" x="0.500000" y="0.500000" width="319.000000" height="279.000000" stroke="#979797" stroke-opacity="0" stroke-width="1.000000"/>
|
|
15
|
-
</mask>
|
|
16
|
-
<g mask="url(#mask832_47110)">
|
|
17
|
-
<path id="形状结合" d="M82.5635 204C16.7947 217.145 -29 246.52 -29 280.648L349 280.648C349 246.52 303.205 217.145 237.437 204C235.692 207.917 231.765 210.648 227.2 210.648L92.8 210.648C88.2349 210.648 84.3079 207.917 82.5635 204Z" clip-rule="evenodd" fill="url(#paint_linear_832_47113_0)" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
18
|
-
</g>
|
|
19
|
-
<g mask="url(#mask832_47110)">
|
|
20
|
-
<g opacity="0.800000">
|
|
21
|
-
<g opacity="0.400000">
|
|
22
|
-
<path id="形状结合备份 2" d="M238.41 123.892L81.6099 123.892L81.6099 199.492C81.6099 205.678 86.6243 210.692 92.8098 210.692L227.21 210.692C233.396 210.692 238.41 205.678 238.41 199.492L238.41 123.892ZM185.2 147.692L134.8 147.692C131.707 147.692 129.2 150.2 129.2 153.292C129.2 156.385 131.707 158.892 134.8 158.892L185.2 158.892C188.293 158.892 190.8 156.385 190.8 153.292C190.8 150.2 188.293 147.692 185.2 147.692Z" clip-rule="evenodd" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
23
|
-
</g>
|
|
24
|
-
<g opacity="0.500000">
|
|
25
|
-
<path id="形状结合备份 3" d="M101.21 79.0912L218.81 79.0912L238.41 123.891L218.8 123.891L218.8 79.0925L101.209 79.0925L101.21 79.0912ZM101.2 79.1135L81.6099 123.891L101.2 123.891L101.2 101.492L101.2 79.1135Z" clip-rule="evenodd" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
26
|
-
</g>
|
|
27
|
-
<g opacity="0.600000">
|
|
28
|
-
<rect id="矩形备份 2" x="101.209961" y="79.092285" width="117.599998" height="44.799999" fill="#418CFF" fill-opacity="1.000000"/>
|
|
29
|
-
</g>
|
|
30
|
-
<g opacity="0.500000">
|
|
31
|
-
<path id="路径 8备份" d="M141.41 53.84L150.21 49.68L118.01 30.09L121.36 61.06L130.58 57.2L137.3 65.09L137.3 55.39L123.04 36.7L141.41 53.84Z" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
32
|
-
</g>
|
|
33
|
-
<g opacity="0.500000">
|
|
34
|
-
<path id="路径 9备份" d="M137.1 69.36L137.08 69.34C137.05 69.05 137.25 68.79 137.55 68.76C137.84 68.73 138.1 68.93 138.13 69.23L138.12 69.25L137.62 69.31L164.2 97.36C162.45 98.04 160.51 98.43 158.38 98.43C141.01 98.43 137.7 70.16 137.61 69.31L137.1 69.36ZM167.76 95.4C166.68 96.19 165.49 96.85 164.2 97.36L195.59 130.5C195.49 130.6 195.43 130.74 195.43 130.89C195.43 131.19 195.67 131.42 195.97 131.42L195.99 131.4L195.98 130.89C207.36 130.74 224.93 106.21 188.78 102.28C179.4 101.26 172.54 98.67 167.76 95.4ZM167.76 95.4C154.13 86.07 157.47 71.22 167.51 71.42C178.24 71.63 177.32 88.38 167.76 95.4Z" fill="#D8D8D8" fill-opacity="0" fill-rule="evenodd"/>
|
|
35
|
-
<path id="路径 9备份" d="M137.61 69.29C137.61 69.29 140.74 98.43 158.38 98.43C176.02 98.43 181.08 71.68 167.51 71.42C153.94 71.15 152.62 98.34 188.78 102.28C224.95 106.21 207.34 130.76 195.96 130.89" stroke="#418CFF" stroke-opacity="0.800000" stroke-width="1.062340" stroke-linejoin="round" stroke-linecap="round" stroke-dasharray="4.24936 4.24936"/>
|
|
36
|
-
</g>
|
|
37
|
-
<g opacity="0.300000">
|
|
38
|
-
<path id="路径-14备份" d="M263.56 176.16C262.39 178.17 261.51 179.39 260.94 179.81C259.29 181.01 257.77 181.34 256.73 181.4C254.34 181.52 259.23 180.69 260.87 178.65C261.97 177.29 263.25 175.25 264.7 172.53L263.38 172.6L262.01 174.52C261.52 173.96 260.91 173.7 260.19 173.74C259.1 173.8 256.31 174.42 255.39 177.56C254.78 179.65 253.4 181.53 251.24 183.21C254.56 184.69 257.7 184.52 260.66 182.72C263.62 180.91 264.58 178.72 263.56 176.16Z" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
39
|
-
</g>
|
|
40
|
-
<g opacity="0.300000">
|
|
41
|
-
<path id="路径-14备份" d="M70.75 101.63C68.76 105.14 67.27 107.27 66.29 108.01C63.5 110.11 60.91 110.69 59.14 110.78C55.08 110.99 63.39 109.54 66.18 105.98C68.04 103.6 70.21 100.03 72.68 95.28L70.42 95.4L68.1 98.75C67.27 97.77 66.23 97.32 65 97.38C63.15 97.48 58.41 98.57 56.86 104.05C55.82 107.71 53.48 111 49.82 113.93C55.46 116.53 60.8 116.25 65.82 113.1C70.85 109.94 72.49 106.12 70.75 101.63Z" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
42
|
-
</g>
|
|
43
|
-
<g opacity="0.300000">
|
|
44
|
-
<path id="路径" d="M281.54 142.79C281.93 142.77 282.25 143.07 282.27 143.45C282.74 153.32 277.51 160.9 266.71 166.14C266.36 166.31 265.94 166.16 265.78 165.81C265.61 165.47 265.75 165.05 266.1 164.88C276.43 159.87 281.31 152.78 280.87 143.52C280.85 143.13 281.15 142.81 281.54 142.79Z" fill="#418CFF" fill-opacity="1.000000" fill-rule="evenodd"/>
|
|
45
|
-
</g>
|
|
46
|
-
</g>
|
|
47
|
-
</g>
|
|
48
|
-
</g>
|
|
49
|
-
</svg>
|