@opendesign-plus-test/components 0.0.1-rc.24 → 0.0.1-rc.26
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/components/activity/types.d.ts +6 -1
- package/dist/components.cjs.js +35 -35
- package/dist/components.css +1 -1
- package/dist/components.es.js +6876 -6850
- package/package.json +1 -1
- package/src/components/activity/OActivityApproval.vue +297 -247
- package/src/components/activity/OActivityForm.vue +18 -7
- package/src/components/activity/OMyActivityCalendar.vue +247 -116
- package/src/components/activity/config.ts +2 -2
- package/src/components/activity/types.ts +6 -1
- package/src/components/common/MoreText.vue +4 -0
- package/src/components/meeting/OMeetingForm.vue +5 -1
- package/src/components/meeting/OMyMeetingCalendar.vue +7 -8
- package/src/components/meeting/components/OMeetingDetail.vue +15 -2
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
OIconArrowRight,
|
|
15
15
|
OIconChevronLeft,
|
|
16
16
|
OIconChevronRight,
|
|
17
|
+
DialogActionT, OLink,
|
|
17
18
|
} from '@opensig/opendesign';
|
|
18
19
|
import { ElCalendar } from 'element-plus';
|
|
19
20
|
import dayjs from 'dayjs';
|
|
@@ -450,6 +451,56 @@ onUnmounted(() => {
|
|
|
450
451
|
const scrollerContainerEl = scrollerRef.value?.getContainerEl();
|
|
451
452
|
scrollerContainerEl?.removeEventListener('scroll', scrollerScroll);
|
|
452
453
|
});
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
const revokeActions = computed<DialogActionT[]>(() => {
|
|
457
|
+
return [{
|
|
458
|
+
id: 'confirm',
|
|
459
|
+
loading: dialogLoading.value,
|
|
460
|
+
color: 'primary',
|
|
461
|
+
variant: 'outline',
|
|
462
|
+
round: 'pill',
|
|
463
|
+
size: 'large',
|
|
464
|
+
label: '确定',
|
|
465
|
+
onClick: () => {
|
|
466
|
+
confirm();
|
|
467
|
+
},
|
|
468
|
+
}, {
|
|
469
|
+
id: 'cancel',
|
|
470
|
+
color: 'primary',
|
|
471
|
+
variant: 'solid',
|
|
472
|
+
round: 'pill',
|
|
473
|
+
size: 'large',
|
|
474
|
+
label: '取消',
|
|
475
|
+
onClick: () => {
|
|
476
|
+
cancel();
|
|
477
|
+
},
|
|
478
|
+
}];
|
|
479
|
+
});
|
|
480
|
+
const deleteActions = computed<DialogActionT[]>(() => {
|
|
481
|
+
return [{
|
|
482
|
+
id: 'confirm',
|
|
483
|
+
loading: dialogLoading.value,
|
|
484
|
+
color: 'primary',
|
|
485
|
+
variant: 'outline',
|
|
486
|
+
round: 'pill',
|
|
487
|
+
size: 'large',
|
|
488
|
+
label: '确定',
|
|
489
|
+
onClick: () => {
|
|
490
|
+
confirmDelete();
|
|
491
|
+
},
|
|
492
|
+
}, {
|
|
493
|
+
id: 'cancel',
|
|
494
|
+
color: 'primary',
|
|
495
|
+
variant: 'solid',
|
|
496
|
+
round: 'pill',
|
|
497
|
+
size: 'large',
|
|
498
|
+
label: '取消',
|
|
499
|
+
onClick: () => {
|
|
500
|
+
cancelDelete();
|
|
501
|
+
},
|
|
502
|
+
}];
|
|
503
|
+
});
|
|
453
504
|
</script>
|
|
454
505
|
|
|
455
506
|
<template>
|
|
@@ -458,8 +509,8 @@ onUnmounted(() => {
|
|
|
458
509
|
<div v-if="isPhone" class="list-calendar-mb">
|
|
459
510
|
<span>{{ (selectedDate ? dayjs(new Date(selectedDate)) : dayjs()).format('YYYY MM月') }}</span>
|
|
460
511
|
<span>
|
|
461
|
-
<OIcon @click="changeMonth('prev-month')"><
|
|
462
|
-
<OIcon @click="changeMonth('next-month')"><
|
|
512
|
+
<OIcon @click="changeMonth('prev-month')"><OIconChevronLeft /></OIcon>
|
|
513
|
+
<OIcon @click="changeMonth('next-month')"><OIconChevronRight /></OIcon>
|
|
463
514
|
</span>
|
|
464
515
|
</div>
|
|
465
516
|
<div class="left-calendar">
|
|
@@ -468,10 +519,10 @@ onUnmounted(() => {
|
|
|
468
519
|
<span>{{ (selectedDate ? dayjs(new Date(selectedDate)) : dayjs()).format('YYYY MM月') }}</span>
|
|
469
520
|
<div>
|
|
470
521
|
<OIcon @click="changeMonth('prev-month')">
|
|
471
|
-
<
|
|
522
|
+
<OIconChevronLeft />
|
|
472
523
|
</OIcon>
|
|
473
524
|
<OIcon @click="changeMonth('next-month')">
|
|
474
|
-
<
|
|
525
|
+
<OIconChevronRight />
|
|
475
526
|
</OIcon>
|
|
476
527
|
</div>
|
|
477
528
|
</template>
|
|
@@ -507,7 +558,7 @@ onUnmounted(() => {
|
|
|
507
558
|
<template v-for="(act, idx) in activityList" :key="act.start_date">
|
|
508
559
|
<div class="list-month-change prev-month" v-if="idx === 0" @click="changeMonth('prev-month')">
|
|
509
560
|
<OIcon>
|
|
510
|
-
<
|
|
561
|
+
<OIconArrowLeft />
|
|
511
562
|
</OIcon>
|
|
512
563
|
<span>上个月</span>
|
|
513
564
|
</div>
|
|
@@ -542,8 +593,7 @@ onUnmounted(() => {
|
|
|
542
593
|
>
|
|
543
594
|
<template #title>
|
|
544
595
|
<div class="item-header-left">
|
|
545
|
-
<div class="act-icon"
|
|
546
|
-
:class="[`act-icon-${row.is_delete ? 'delete' : statusMap.get(row.status)?.id}`]">
|
|
596
|
+
<div class="act-icon">
|
|
547
597
|
<OIcon>
|
|
548
598
|
<IconEvent />
|
|
549
599
|
</OIcon>
|
|
@@ -574,19 +624,31 @@ onUnmounted(() => {
|
|
|
574
624
|
</div>
|
|
575
625
|
</div>
|
|
576
626
|
<div class="item-header-right" v-if="!row.is_delete">
|
|
577
|
-
<
|
|
627
|
+
<OLink v-if="row.content_url" :href="row.content_url" target="_blank" rel="noopener noreferrer">
|
|
628
|
+
活动详情
|
|
629
|
+
<template #suffix>
|
|
630
|
+
<OIcon>
|
|
631
|
+
<OIconChevronRight></OIconChevronRight>
|
|
632
|
+
</OIcon>
|
|
633
|
+
</template>
|
|
634
|
+
</OLink>
|
|
635
|
+
<OLink
|
|
578
636
|
v-if="
|
|
579
637
|
row.status === 3 ||
|
|
580
638
|
row.status === 4 ||
|
|
581
639
|
(row.status === 2 && row.update_activity_id && new Date(row.register_end_date).getTime() > new Date().getTime())
|
|
582
640
|
"
|
|
583
|
-
color="primary"
|
|
584
641
|
:href="row.register_url"
|
|
585
642
|
target="_blank"
|
|
586
643
|
rel="noopener noreferrer"
|
|
587
|
-
>我要报名
|
|
588
|
-
</OButton
|
|
589
644
|
>
|
|
645
|
+
我要报名
|
|
646
|
+
<template #suffix>
|
|
647
|
+
<OIcon>
|
|
648
|
+
<OIconChevronRight></OIconChevronRight>
|
|
649
|
+
</OIcon>
|
|
650
|
+
</template>
|
|
651
|
+
</OLink>
|
|
590
652
|
</div>
|
|
591
653
|
</template>
|
|
592
654
|
<div class="activity-detail">
|
|
@@ -596,18 +658,30 @@ onUnmounted(() => {
|
|
|
596
658
|
:ref="(insRef) => getDetailRefs(insRef, row.id)"
|
|
597
659
|
/>
|
|
598
660
|
<div class="activity-btn" v-if="!row.isExpired && !row.is_delete">
|
|
599
|
-
<OButton
|
|
661
|
+
<OButton
|
|
662
|
+
v-if="row.status === 2"
|
|
663
|
+
variant="text"
|
|
664
|
+
@click="handleRevokeItem(row)"
|
|
665
|
+
>
|
|
666
|
+
撤销审核
|
|
600
667
|
</OButton>
|
|
601
|
-
<OButton
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
668
|
+
<OButton
|
|
669
|
+
v-if="row.status === 1 || row.status === 3 || row.status === 4 || row.status === 7"
|
|
670
|
+
variant="text" @click="handleEditItem(row)"
|
|
671
|
+
>
|
|
672
|
+
修改活动
|
|
673
|
+
</OButton>
|
|
674
|
+
<OButton
|
|
675
|
+
v-if="row.status === 1 || row.status === 7" variant="text"
|
|
676
|
+
@click="handleDeleteItem(row)"
|
|
605
677
|
>
|
|
606
|
-
|
|
607
|
-
@click="handleDeleteItem(row)">删除活动
|
|
678
|
+
删除活动
|
|
608
679
|
</OButton>
|
|
609
|
-
<OButton
|
|
610
|
-
|
|
680
|
+
<OButton
|
|
681
|
+
v-if="row.status === 1 || row.status === 7" variant="text"
|
|
682
|
+
@click="handleSubmitReviewItem(row)"
|
|
683
|
+
>
|
|
684
|
+
提交审核
|
|
611
685
|
</OButton>
|
|
612
686
|
</div>
|
|
613
687
|
</div>
|
|
@@ -618,7 +692,7 @@ onUnmounted(() => {
|
|
|
618
692
|
<div class="load-text" v-if="bottomReached">加载中···</div>
|
|
619
693
|
<div class="list-month-change next-month" @click="changeMonth('next-month')">
|
|
620
694
|
<OIcon>
|
|
621
|
-
<
|
|
695
|
+
<OIconArrowRight />
|
|
622
696
|
</OIcon>
|
|
623
697
|
<span>下个月</span>
|
|
624
698
|
</div>
|
|
@@ -633,30 +707,14 @@ onUnmounted(() => {
|
|
|
633
707
|
</div>
|
|
634
708
|
</div>
|
|
635
709
|
<!-- 撤销审核弹窗 -->
|
|
636
|
-
<ODialog v-model:visible="revokeVisible" main-class="handle-dialog-active">
|
|
710
|
+
<ODialog v-model:visible="revokeVisible" main-class="handle-dialog-active" :actions="revokeActions">
|
|
637
711
|
<template #header>撤销审核</template>
|
|
638
712
|
<div class="dialog-content">是否确认要撤销“{{ currentRow.title }}”活动?撤销审核后活动将变成草稿状态。</div>
|
|
639
|
-
<template #footer>
|
|
640
|
-
<div class="dialog-footer">
|
|
641
|
-
<OButton color="primary" variant="outline" size="large" round="pill" @click="confirm" :loading="dialogLoading">
|
|
642
|
-
确定
|
|
643
|
-
</OButton>
|
|
644
|
-
<OButton color="primary" variant="solid" size="large" round="pill" @click="cancel">取消</OButton>
|
|
645
|
-
</div>
|
|
646
|
-
</template>
|
|
647
713
|
</ODialog>
|
|
648
714
|
<!-- 删除活动弹窗 -->
|
|
649
|
-
<ODialog v-model:visible="deleteVisible" main-class="handle-dialog-active">
|
|
715
|
+
<ODialog v-model:visible="deleteVisible" main-class="handle-dialog-active" :actions="deleteActions">
|
|
650
716
|
<template #header>删除活动</template>
|
|
651
717
|
<div class="dialog-content">是否确认删除“{{ currentRow.title }}”活动?删除后记录将不再我的个人中心呈现。</div>
|
|
652
|
-
<template #footer>
|
|
653
|
-
<div class="dialog-footer">
|
|
654
|
-
<OButton color="primary" variant="outline" size="large" round="pill" @click="confirmDelete"
|
|
655
|
-
:loading="dialogLoading">确定
|
|
656
|
-
</OButton>
|
|
657
|
-
<OButton color="primary" variant="solid" size="large" round="pill" @click="cancelDelete">取消</OButton>
|
|
658
|
-
</div>
|
|
659
|
-
</template>
|
|
660
718
|
</ODialog>
|
|
661
719
|
</template>
|
|
662
720
|
|
|
@@ -688,14 +746,18 @@ onUnmounted(() => {
|
|
|
688
746
|
.activity-list {
|
|
689
747
|
display: flex;
|
|
690
748
|
flex-wrap: nowrap;
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
--
|
|
694
|
-
|
|
695
|
-
@include respond-to('<=pad_v') {
|
|
749
|
+
gap: var(--o-gap-4);
|
|
750
|
+
height: 100%;
|
|
751
|
+
--phone-padding-top: 0;
|
|
752
|
+
@include respond-to('pad_v') {
|
|
696
753
|
flex-direction: column;
|
|
754
|
+
gap: var(--o-gap-4);
|
|
755
|
+
}
|
|
756
|
+
@include respond-to('phone') {
|
|
757
|
+
flex-direction: column;
|
|
758
|
+
gap: var(--o-gap-3);
|
|
759
|
+
--phone-padding-top: calc(var(--o-gap-5) + var(--o-gap-3) + var(--o-gap-3));
|
|
697
760
|
}
|
|
698
|
-
|
|
699
761
|
.o-loading {
|
|
700
762
|
.o-layer-mask {
|
|
701
763
|
background-color: transparent;
|
|
@@ -749,10 +811,11 @@ onUnmounted(() => {
|
|
|
749
811
|
.left-calendar {
|
|
750
812
|
width: 336px;
|
|
751
813
|
flex-shrink: 0;
|
|
814
|
+
--table-bg: var(--o-color-control2-light);
|
|
752
815
|
|
|
753
816
|
.el-calendar {
|
|
754
817
|
min-height: 460px;
|
|
755
|
-
height: 100
|
|
818
|
+
height: calc(100% - 54px);
|
|
756
819
|
background-color: var(--table-bg);
|
|
757
820
|
border-radius: var(--o-radius-xs);
|
|
758
821
|
|
|
@@ -783,15 +846,22 @@ onUnmounted(() => {
|
|
|
783
846
|
|
|
784
847
|
.el-calendar__body {
|
|
785
848
|
.el-calendar-table {
|
|
849
|
+
tr {
|
|
850
|
+
background: var(--table-bg) !important;
|
|
851
|
+
}
|
|
852
|
+
|
|
786
853
|
th {
|
|
787
854
|
text-align: center;
|
|
855
|
+
background: var(--table-bg) !important;
|
|
856
|
+
border: none;
|
|
788
857
|
}
|
|
789
858
|
|
|
790
859
|
td {
|
|
791
|
-
background
|
|
860
|
+
background: var(--table-bg) !important;
|
|
792
861
|
border: none;
|
|
793
862
|
text-align: center;
|
|
794
863
|
transition: none;
|
|
864
|
+
padding: 0;
|
|
795
865
|
|
|
796
866
|
.el-calendar-day {
|
|
797
867
|
padding: 0;
|
|
@@ -834,7 +904,7 @@ onUnmounted(() => {
|
|
|
834
904
|
|
|
835
905
|
&:not(.is-selected) {
|
|
836
906
|
.date-cell-text:hover {
|
|
837
|
-
background-color: var(--
|
|
907
|
+
background-color: var(--o-color-control3-light);
|
|
838
908
|
}
|
|
839
909
|
}
|
|
840
910
|
}
|
|
@@ -853,7 +923,7 @@ onUnmounted(() => {
|
|
|
853
923
|
&.is-today {
|
|
854
924
|
.date-cell-text {
|
|
855
925
|
color: #000;
|
|
856
|
-
background-color: var(--
|
|
926
|
+
background-color: var(--o-color-control3-light);
|
|
857
927
|
}
|
|
858
928
|
}
|
|
859
929
|
|
|
@@ -870,7 +940,15 @@ onUnmounted(() => {
|
|
|
870
940
|
}
|
|
871
941
|
|
|
872
942
|
&.approved::after {
|
|
873
|
-
background-color: rgba(
|
|
943
|
+
background-color: rgba(var(--o-cyan-6));
|
|
944
|
+
}
|
|
945
|
+
|
|
946
|
+
&.expired::after {
|
|
947
|
+
background-color: rgb(var(--o-mixedgray-6));
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
&.all-deleted::after {
|
|
951
|
+
background-color: rgb(var(--o-mixedgray-6));
|
|
874
952
|
}
|
|
875
953
|
}
|
|
876
954
|
}
|
|
@@ -912,10 +990,15 @@ onUnmounted(() => {
|
|
|
912
990
|
.right-meeting {
|
|
913
991
|
flex-grow: 1;
|
|
914
992
|
background-color: var(--o-color-fill2);
|
|
915
|
-
|
|
993
|
+
|
|
916
994
|
@include respond-to('phone') {
|
|
917
|
-
margin-top: calc(
|
|
918
|
-
|
|
995
|
+
margin-top: calc(var(--phone-padding-top) - var(--o-gap-4));
|
|
996
|
+
}
|
|
997
|
+
|
|
998
|
+
&.is-empty {
|
|
999
|
+
display: flex;
|
|
1000
|
+
align-items: center;
|
|
1001
|
+
justify-content: center;
|
|
919
1002
|
}
|
|
920
1003
|
|
|
921
1004
|
.o-scroller {
|
|
@@ -932,7 +1015,7 @@ onUnmounted(() => {
|
|
|
932
1015
|
}
|
|
933
1016
|
|
|
934
1017
|
.act-item {
|
|
935
|
-
padding-left:
|
|
1018
|
+
padding-left: 24px;
|
|
936
1019
|
position: relative;
|
|
937
1020
|
|
|
938
1021
|
&.last-item {
|
|
@@ -951,7 +1034,7 @@ onUnmounted(() => {
|
|
|
951
1034
|
bottom: 0;
|
|
952
1035
|
overflow: hidden;
|
|
953
1036
|
|
|
954
|
-
--active-color:
|
|
1037
|
+
--active-color: var(--o-color-primary1);
|
|
955
1038
|
|
|
956
1039
|
&::before {
|
|
957
1040
|
content: '';
|
|
@@ -1019,7 +1102,7 @@ onUnmounted(() => {
|
|
|
1019
1102
|
}
|
|
1020
1103
|
|
|
1021
1104
|
.approved {
|
|
1022
|
-
--active-color:
|
|
1105
|
+
--active-color: var(--o-color-primary1);
|
|
1023
1106
|
}
|
|
1024
1107
|
|
|
1025
1108
|
.group-title {
|
|
@@ -1028,7 +1111,7 @@ onUnmounted(() => {
|
|
|
1028
1111
|
color: var(--o-color-info1);
|
|
1029
1112
|
@include text2;
|
|
1030
1113
|
@include respond-to('phone') {
|
|
1031
|
-
padding-left: var(--o-gap-
|
|
1114
|
+
padding-left: var(--o-gap-5);
|
|
1032
1115
|
}
|
|
1033
1116
|
|
|
1034
1117
|
&.is-end {
|
|
@@ -1088,6 +1171,14 @@ onUnmounted(() => {
|
|
|
1088
1171
|
display: flex;
|
|
1089
1172
|
flex-direction: column;
|
|
1090
1173
|
|
|
1174
|
+
.o-collapse-item {
|
|
1175
|
+
&.last-item {
|
|
1176
|
+
.o-collapse-item-header {
|
|
1177
|
+
border-bottom: none;
|
|
1178
|
+
}
|
|
1179
|
+
}
|
|
1180
|
+
}
|
|
1181
|
+
|
|
1091
1182
|
.o-collapse-item-expanded + .o-collapse-item-expanded {
|
|
1092
1183
|
margin-top: var(--o-gap-4);
|
|
1093
1184
|
}
|
|
@@ -1106,13 +1197,31 @@ onUnmounted(() => {
|
|
|
1106
1197
|
border-top: none;
|
|
1107
1198
|
border-radius: var(--o-radius-xs);
|
|
1108
1199
|
transition: margin var(--o-easing-standard) var(--o-duration-s);
|
|
1200
|
+
--copy-display: none;
|
|
1201
|
+
--icon-size: 24px;
|
|
1202
|
+
@include respond-to('<=pad_v') {
|
|
1203
|
+
padding: var(--o-gap-3) var(--o-gap-4);
|
|
1204
|
+
}
|
|
1205
|
+
|
|
1206
|
+
&:hover {
|
|
1207
|
+
@include respond-to('>pad_v') {
|
|
1208
|
+
--copy-display: inline-flex;
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1211
|
+
|
|
1212
|
+
@include respond-to('phone') {
|
|
1213
|
+
--icon-size: 20px;
|
|
1214
|
+
}
|
|
1109
1215
|
|
|
1110
1216
|
&.o-collapse-item-expanded {
|
|
1111
|
-
|
|
1217
|
+
@include respond-to('<=pad_v') {
|
|
1218
|
+
--copy-display: inline-flex;
|
|
1219
|
+
}
|
|
1112
1220
|
}
|
|
1113
1221
|
|
|
1114
|
-
|
|
1115
|
-
|
|
1222
|
+
|
|
1223
|
+
&.o-collapse-item-expanded {
|
|
1224
|
+
background-color: var(--o-color-control2-light);
|
|
1116
1225
|
}
|
|
1117
1226
|
}
|
|
1118
1227
|
|
|
@@ -1125,60 +1234,67 @@ onUnmounted(() => {
|
|
|
1125
1234
|
gap: var(--o-gap-4);
|
|
1126
1235
|
|
|
1127
1236
|
.o-collapse-item-icon {
|
|
1237
|
+
position: relative;
|
|
1238
|
+
top: 4px;
|
|
1128
1239
|
flex-shrink: 0;
|
|
1240
|
+
@include respond-to('phone') {
|
|
1241
|
+
position: absolute;
|
|
1242
|
+
right: 0;
|
|
1243
|
+
width: 20px;
|
|
1244
|
+
height: 20px;
|
|
1245
|
+
font-size: 20px;
|
|
1246
|
+
bottom: var(--o-gap-2);
|
|
1247
|
+
top: revert;
|
|
1248
|
+
}
|
|
1129
1249
|
}
|
|
1130
1250
|
|
|
1251
|
+
|
|
1131
1252
|
.o-collapse-item-title {
|
|
1132
1253
|
flex: 1;
|
|
1133
1254
|
width: 0;
|
|
1134
1255
|
display: flex;
|
|
1135
|
-
|
|
1256
|
+
flex-direction: column;
|
|
1257
|
+
align-items: flex-start;
|
|
1136
1258
|
justify-content: space-between;
|
|
1137
|
-
flex-wrap: nowrap;
|
|
1138
|
-
|
|
1139
1259
|
.item-header-left {
|
|
1140
1260
|
display: flex;
|
|
1141
1261
|
align-items: flex-start;
|
|
1142
1262
|
gap: var(--o-gap-3);
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1263
|
+
width: 100%;
|
|
1264
|
+
margin-bottom: var(--o-gap-2);
|
|
1265
|
+
@include respond-to('phone') {
|
|
1266
|
+
flex-grow: 1;
|
|
1267
|
+
width: 100%;
|
|
1268
|
+
align-self: stretch;
|
|
1269
|
+
flex-shrink: 0;
|
|
1270
|
+
}
|
|
1146
1271
|
.act-icon {
|
|
1147
|
-
width:
|
|
1148
|
-
height:
|
|
1272
|
+
width: var(--icon-size);
|
|
1273
|
+
height: var(--icon-size);
|
|
1149
1274
|
border-radius: 50%;
|
|
1150
|
-
background-color:
|
|
1275
|
+
background-color: var(--o-color-primary1);
|
|
1151
1276
|
color: #fff;
|
|
1152
1277
|
display: flex;
|
|
1153
1278
|
align-items: center;
|
|
1154
1279
|
justify-content: center;
|
|
1155
1280
|
flex-shrink: 0;
|
|
1156
|
-
@include respond-to('phone') {
|
|
1157
|
-
width: 20px;
|
|
1158
|
-
height: 20px;
|
|
1159
|
-
}
|
|
1160
1281
|
|
|
1161
|
-
|
|
1162
|
-
|
|
1282
|
+
.o-icon {
|
|
1283
|
+
svg path {
|
|
1284
|
+
fill: currentColor;
|
|
1285
|
+
}
|
|
1163
1286
|
}
|
|
1164
|
-
}
|
|
1165
|
-
|
|
1166
|
-
.act-icon-registration,
|
|
1167
|
-
.act-icon-in-progress {
|
|
1168
|
-
background-color: rgba(255, 165, 0, 1);
|
|
1169
|
-
}
|
|
1170
1287
|
|
|
1171
|
-
.act-icon-delete {
|
|
1172
|
-
background-color: rgba(222, 222, 227, 1);
|
|
1173
1288
|
}
|
|
1174
1289
|
|
|
1175
1290
|
.header-info {
|
|
1176
|
-
width: calc(100% - var(--o-gap-3) -
|
|
1291
|
+
width: calc(100% - var(--o-gap-3) - var(--icon-size));
|
|
1177
1292
|
|
|
1178
1293
|
.act-title {
|
|
1179
1294
|
font-weight: 500;
|
|
1180
1295
|
display: flex;
|
|
1181
1296
|
align-items: center;
|
|
1297
|
+
margin-bottom: var(--o-gap-2);
|
|
1182
1298
|
@include text2;
|
|
1183
1299
|
|
|
1184
1300
|
&.is-delete,
|
|
@@ -1237,36 +1353,53 @@ onUnmounted(() => {
|
|
|
1237
1353
|
}
|
|
1238
1354
|
|
|
1239
1355
|
.item-header-right {
|
|
1240
|
-
flex-shrink: 0;
|
|
1241
1356
|
display: flex;
|
|
1242
1357
|
align-items: center;
|
|
1243
|
-
padding-left: var(--o-gap-
|
|
1244
|
-
|
|
1245
|
-
|
|
1358
|
+
padding-left: calc(var(--o-gap-3) + var(--icon-size));
|
|
1359
|
+
gap: var(--o-gap-5);
|
|
1360
|
+
width: 100%;
|
|
1246
1361
|
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1362
|
+
.o-link {
|
|
1363
|
+
font-size: 14px;
|
|
1364
|
+
line-height: 21px;
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
.o-link + .o-link {
|
|
1368
|
+
margin-left: var(--o-gap-section-6);
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
.o-icon {
|
|
1372
|
+
font-size: 16px;
|
|
1373
|
+
}
|
|
1252
1374
|
}
|
|
1253
|
-
.o-collapse-item-title {
|
|
1254
|
-
flex-direction: column;
|
|
1255
|
-
align-items: flex-start;
|
|
1256
1375
|
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1376
|
+
.copy-icon {
|
|
1377
|
+
position: absolute;
|
|
1378
|
+
top: 50%;
|
|
1379
|
+
transform: translateY(-50%);
|
|
1380
|
+
right: calc(var(--collapse-item-icon-size) + var(--o-gap-4));
|
|
1381
|
+
font-size: 18px;
|
|
1382
|
+
height: 18px;
|
|
1383
|
+
width: 18px;
|
|
1384
|
+
display: var(--copy-display);
|
|
1385
|
+
@include respond-to('phone') {
|
|
1386
|
+
bottom: var(--o-gap-2);
|
|
1387
|
+
transform: revert;
|
|
1388
|
+
top: revert;
|
|
1389
|
+
right: calc(20px + var(--o-gap-2))
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1392
|
+
&:hover {
|
|
1393
|
+
color: var(--o-color-primary1);
|
|
1262
1394
|
}
|
|
1263
1395
|
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1396
|
+
|
|
1397
|
+
svg path {
|
|
1398
|
+
fill: currentColor;
|
|
1267
1399
|
}
|
|
1268
1400
|
}
|
|
1269
1401
|
}
|
|
1402
|
+
|
|
1270
1403
|
}
|
|
1271
1404
|
|
|
1272
1405
|
.o-collapse-item-body {
|
|
@@ -1274,7 +1407,7 @@ onUnmounted(() => {
|
|
|
1274
1407
|
padding: var(--o-gap-4) 0 0;
|
|
1275
1408
|
|
|
1276
1409
|
.activity-detail {
|
|
1277
|
-
padding-left: calc(var(--o-gap-
|
|
1410
|
+
padding-left: calc(var(--o-gap-3) + var(--icon-size));
|
|
1278
1411
|
@include respond-to('phone') {
|
|
1279
1412
|
padding-left: 0;
|
|
1280
1413
|
}
|
|
@@ -1286,14 +1419,16 @@ onUnmounted(() => {
|
|
|
1286
1419
|
display: flex;
|
|
1287
1420
|
align-items: center;
|
|
1288
1421
|
justify-content: flex-end;
|
|
1289
|
-
|
|
1290
|
-
.o-btn + .o-btn {
|
|
1291
|
-
margin-left: 16px;
|
|
1292
|
-
}
|
|
1422
|
+
gap: var(--o-gap-5);
|
|
1293
1423
|
}
|
|
1294
1424
|
}
|
|
1295
1425
|
}
|
|
1296
1426
|
|
|
1427
|
+
.o-btn.o-btn-text {
|
|
1428
|
+
padding-left: 0 !important;
|
|
1429
|
+
padding-right: 0 !important;
|
|
1430
|
+
min-width: auto;
|
|
1431
|
+
}
|
|
1297
1432
|
.o-btn-text {
|
|
1298
1433
|
@include hover {
|
|
1299
1434
|
background-color: transparent;
|
|
@@ -1321,8 +1456,7 @@ onUnmounted(() => {
|
|
|
1321
1456
|
<style lang="scss">
|
|
1322
1457
|
.handle-dialog-active {
|
|
1323
1458
|
width: 450px;
|
|
1324
|
-
--dlg-radius:
|
|
1325
|
-
|
|
1459
|
+
--dlg-radius: var(--o-radius-xs);
|
|
1326
1460
|
.o-dlg-header {
|
|
1327
1461
|
margin-bottom: var(--o-gap-5);
|
|
1328
1462
|
}
|
|
@@ -1332,11 +1466,8 @@ onUnmounted(() => {
|
|
|
1332
1466
|
justify-content: center;
|
|
1333
1467
|
}
|
|
1334
1468
|
|
|
1335
|
-
.dialog-
|
|
1336
|
-
|
|
1337
|
-
justify-content: center;
|
|
1338
|
-
margin-top: var(--o-gap-4);
|
|
1339
|
-
column-gap: var(--o-gap-4);
|
|
1469
|
+
.dialog-content {
|
|
1470
|
+
margin-bottom: var(--o-gap-2);
|
|
1340
1471
|
}
|
|
1341
1472
|
}
|
|
1342
1473
|
</style>
|
|
@@ -15,6 +15,8 @@ export interface ParamsItemT {
|
|
|
15
15
|
schedules?: string;
|
|
16
16
|
is_publish: string; // 是否发布 true-发布审核 false-发布为草稿
|
|
17
17
|
update_activity_id?: string;
|
|
18
|
+
email_list?: string; // 邮件列表
|
|
19
|
+
organizer?: string; // 主办方
|
|
18
20
|
approver: string; // 审批人
|
|
19
21
|
}
|
|
20
22
|
|
|
@@ -23,7 +25,10 @@ export interface ActivityFormPropsT {
|
|
|
23
25
|
creatActivity: any;
|
|
24
26
|
editActivity: any;
|
|
25
27
|
admins: string[];
|
|
26
|
-
|
|
28
|
+
organizers: {
|
|
29
|
+
id: number;
|
|
30
|
+
name: string;
|
|
31
|
+
}[];
|
|
27
32
|
}
|
|
28
33
|
|
|
29
34
|
export interface TypeOptionT {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { OIcon, OIconChevronDown, OIconChevronUp } from '@opensig/opendesign';
|
|
3
3
|
import { nextTick, onMounted, ref, watch } from 'vue';
|
|
4
|
+
import { useI18n } from '@/i18n';
|
|
4
5
|
|
|
5
6
|
const props = withDefaults(
|
|
6
7
|
defineProps<{
|
|
@@ -16,6 +17,9 @@ const props = withDefaults(
|
|
|
16
17
|
show: false,
|
|
17
18
|
},
|
|
18
19
|
);
|
|
20
|
+
|
|
21
|
+
const { t } = useI18n();
|
|
22
|
+
|
|
19
23
|
const expanded = ref(false); // 是否展开
|
|
20
24
|
const showBtn = ref(false); // 受否显示展开按钮
|
|
21
25
|
const offsetHeight = ref(0); // 内容高度
|