@opendesign-plus/components 0.0.1-rc.21 → 0.0.1-rc.23
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 +3 -3
- package/dist/components/OHeaderSearch.vue.d.ts +58 -14
- package/dist/components/OThemeSwitcher.vue.d.ts +2 -5
- package/dist/components/activity/{OMyActivityCalendar.vue.d.ts → OActivityMyCalendar.vue.d.ts} +86 -24
- package/dist/components/activity/index.d.ts +45 -14
- package/dist/components/meeting/{OMyMeetingCalendar.vue.d.ts → OMeetingMyCalendar.vue.d.ts} +86 -24
- package/dist/components/meeting/index.d.ts +15 -301
- package/dist/components.cjs.js +36 -36
- package/dist/components.css +1 -1
- package/dist/components.es.js +7156 -7126
- package/package.json +3 -3
- package/src/assets/styles/element-plus.scss +204 -0
- package/src/components/OBanner.vue +18 -18
- package/src/components/OCookieNotice.vue +21 -21
- package/src/components/OFooter.vue +18 -17
- package/src/components/OHeaderSearch.vue +19 -19
- package/src/components/OHeaderUser.vue +3 -2
- package/src/components/OSection.vue +4 -4
- package/src/components/OThemeSwitcher.vue +51 -27
- package/src/components/activity/OActivityApproval.vue +14 -10
- package/src/components/activity/OActivityForm.vue +7 -5
- package/src/components/activity/{OMyActivityCalendar.vue → OActivityMyCalendar.vue} +69 -47
- package/src/components/activity/config.ts +1 -1
- package/src/components/activity/index.ts +4 -4
- package/src/components/common/ContentWrapper.vue +3 -3
- package/src/components/element-plus/OElCookieNotice.vue +26 -26
- package/src/components/events/OEventsApply.vue +46 -45
- package/src/components/events/OEventsCalendar.vue +21 -19
- package/src/components/events/OEventsList.vue +22 -20
- package/src/components/header/OHeader.vue +2 -2
- package/src/components/header/components/HeaderContent.vue +60 -60
- package/src/components/header/components/HeaderNav.vue +4 -4
- package/src/components/header/components/HeaderNavMobile.vue +3 -3
- package/src/components/meeting/OMeetingCalendar.vue +42 -39
- package/src/components/meeting/OMeetingForm.vue +32 -26
- package/src/components/meeting/{OMyMeetingCalendar.vue → OMeetingMyCalendar.vue} +97 -62
- package/src/components/meeting/OMeetingPlayback.vue +36 -12
- package/src/components/meeting/{OSigMeetingCalendar.vue → OMeetingSigCalendar.vue} +9 -6
- package/src/components/meeting/components/OMeetingCalendarList.vue +12 -12
- package/src/components/meeting/components/OMeetingCalendarSelector.vue +1 -1
- package/src/components/meeting/components/OMeetingDetail.vue +2 -2
- package/src/components/meeting/components/OMeetingPlaybackSubtitles.vue +11 -10
- package/src/components/meeting/components/OMeetingPlaybackVideo.vue +11 -11
- package/src/components/meeting/components/{OSigMeetingAside.vue → OMeetingSigAside.vue} +7 -7
- package/src/components/meeting/config.ts +1 -1
- package/src/components/meeting/index.ts +6 -6
- package/src/draft/Banner.vue +6 -6
- package/src/draft/ButtonCards.vue +1 -1
- package/src/draft/Feature.vue +6 -6
- package/src/draft/Footer.vue +29 -22
- package/src/draft/HorizontalAnchor.vue +4 -4
- package/src/draft/ItemSwiper.vue +2 -2
- package/src/draft/Logo.vue +3 -3
- package/src/draft/LogoCard.vue +2 -2
- package/src/draft/MultiCard.vue +1 -1
- package/src/draft/MultiIconCard.vue +1 -1
- package/src/draft/OInfoCard.vue +4 -4
- package/src/draft/Section.vue +4 -4
- package/src/draft/SingleTabCard.vue +1 -1
- package/src/draft/SliderCard.vue +4 -3
- package/src/i18n/en.ts +2 -2
- package/vite.config.ts +2 -2
- /package/dist/components/meeting/{OSigMeetingCalendar.vue.d.ts → OMeetingSigCalendar.vue.d.ts} +0 -0
- /package/dist/components/meeting/components/{OSigMeetingAside.vue.d.ts → OMeetingSigAside.vue.d.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import {
|
|
3
|
-
DialogActionT,
|
|
3
|
+
DialogActionT, OButton,
|
|
4
4
|
OCollapse,
|
|
5
5
|
OCollapseItem,
|
|
6
6
|
ODialog,
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import { ElCalendar } from 'element-plus';
|
|
21
21
|
import { computed, nextTick, onMounted, ref, onUnmounted, watch } from 'vue';
|
|
22
22
|
import OMeetingDetail from './components/OMeetingDetail.vue';
|
|
23
|
-
import { MeetingGroupType, MeetingItemT, PageParamsT } from './types.ts';
|
|
23
|
+
import { CalendarDataType, MeetingGroupType, MeetingItemT, PageParamsT } from './types.ts';
|
|
24
24
|
import dayjs from 'dayjs';
|
|
25
25
|
import IconMeeting from '~icons/meeting/icon-meet.svg';
|
|
26
26
|
import { INTERVAL_DAY, INTERVAL_MONTH, INTERVAL_WEEK } from './config.ts';
|
|
@@ -40,7 +40,7 @@ const list = ref<MeetingItemT[]>([]); // 列表数据
|
|
|
40
40
|
const originList = ref<MeetingItemT[]>([]); // 原始数据
|
|
41
41
|
const canLoadMore = computed(() => total.value === null || originList.value.length < total.value);
|
|
42
42
|
const reloadAll = ref(false); // 是否需要清空数据
|
|
43
|
-
const { t, locale, getPointStr, getWeekFromDate } = useMeetingConfig();
|
|
43
|
+
const { t, locale, getPointStr, getConfig, getWeekFromDate } = useMeetingConfig();
|
|
44
44
|
const isEn = computed(() => locale.value === Locales.EN);
|
|
45
45
|
|
|
46
46
|
const props = withDefaults(defineProps<{
|
|
@@ -578,6 +578,9 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
578
578
|
expired: dayjs(formatDate()).isAfter(dayjs(data.day)),
|
|
579
579
|
'all-deleted': calcIfAllDeleted(data.day),
|
|
580
580
|
}"
|
|
581
|
+
:style="{
|
|
582
|
+
'--dot-bg': `${getConfig(CalendarDataType.MEETING, 'color')}`
|
|
583
|
+
}"
|
|
581
584
|
>
|
|
582
585
|
<div class="date-cell-text">
|
|
583
586
|
{{ Number(data.day.split('-')[2]) }}
|
|
@@ -634,9 +637,14 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
634
637
|
>
|
|
635
638
|
<template #title>
|
|
636
639
|
<div class="item-header-left">
|
|
637
|
-
<div
|
|
640
|
+
<div
|
|
641
|
+
class="meeting-icon"
|
|
642
|
+
:style="{
|
|
643
|
+
backgroundColor: `${getConfig(CalendarDataType.MEETING, 'color')}`
|
|
644
|
+
}"
|
|
645
|
+
>
|
|
638
646
|
<OIcon>
|
|
639
|
-
<
|
|
647
|
+
<component :is="getConfig(CalendarDataType.MEETING, 'icon')" />
|
|
640
648
|
</OIcon>
|
|
641
649
|
</div>
|
|
642
650
|
<div class="header-info">
|
|
@@ -667,6 +675,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
667
675
|
</div>
|
|
668
676
|
<div class="item-header-right" v-if="!row.is_delete">
|
|
669
677
|
<OLink
|
|
678
|
+
:hover-underline="false"
|
|
670
679
|
v-if="!row.isExpired"
|
|
671
680
|
target="_blank"
|
|
672
681
|
:href="row.join_url"
|
|
@@ -680,7 +689,12 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
680
689
|
</template>
|
|
681
690
|
</OLink>
|
|
682
691
|
<template v-else>
|
|
683
|
-
<OLink
|
|
692
|
+
<OLink
|
|
693
|
+
:hover-underline="false"
|
|
694
|
+
target="_blank"
|
|
695
|
+
v-if="row.etherpad"
|
|
696
|
+
:href="row.etherpad"
|
|
697
|
+
>
|
|
684
698
|
{{ t('meeting.meetingSummary') }}
|
|
685
699
|
<template #suffix>
|
|
686
700
|
<OIcon>
|
|
@@ -689,6 +703,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
689
703
|
</template>
|
|
690
704
|
</OLink>
|
|
691
705
|
<OLink
|
|
706
|
+
:hover-underline="false"
|
|
692
707
|
target="_blank"
|
|
693
708
|
:href="`/${locale}/video/${row.group_name}/${row.mid}/${row.date}`"
|
|
694
709
|
v-if="row.hasObsData">
|
|
@@ -713,10 +728,12 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
713
728
|
from="my"
|
|
714
729
|
/>
|
|
715
730
|
<div class="meeting-btn" v-if="!row.isExpired && !row.is_delete">
|
|
716
|
-
<
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
731
|
+
<OButton color="normal" variant="text" @click="handleItem(row, 'edit')">
|
|
732
|
+
{{ t('meeting.editMeeting') }}
|
|
733
|
+
</OButton>
|
|
734
|
+
<OButton color="normal" variant="text" @click="handleItem(row, 'cancel')">
|
|
735
|
+
{{ t('meeting.cancelMeeting') }}
|
|
736
|
+
</OButton>
|
|
720
737
|
</div>
|
|
721
738
|
</div>
|
|
722
739
|
</OCollapseItem>
|
|
@@ -745,7 +762,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
745
762
|
>
|
|
746
763
|
<template #header>
|
|
747
764
|
{{
|
|
748
|
-
t('meeting.meetingHandleText', [handleDialogType === 'edit' ? t('meeting.edit') : t('meeting.
|
|
765
|
+
t('meeting.meetingHandleText', [handleDialogType === 'edit' ? t('meeting.edit') : t('meeting.cancel')])
|
|
749
766
|
}}
|
|
750
767
|
</template>
|
|
751
768
|
<ORadioGroup v-model="handleType">
|
|
@@ -762,6 +779,9 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
762
779
|
|
|
763
780
|
<style lang="scss">
|
|
764
781
|
.o-my-meeting-calendar {
|
|
782
|
+
--meeting-card-radius: var(--o-radius-xs);
|
|
783
|
+
--meeting-input-radius: var(--o-radius-xs);
|
|
784
|
+
--meeting-cell-radius: var(--o-radius-xs);
|
|
765
785
|
|
|
766
786
|
.header {
|
|
767
787
|
display: flex;
|
|
@@ -787,11 +807,11 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
787
807
|
gap: var(--o-gap-4);
|
|
788
808
|
height: 100%;
|
|
789
809
|
--phone-padding-top: 0;
|
|
790
|
-
@include respond
|
|
810
|
+
@include respond('pad_v') {
|
|
791
811
|
flex-direction: column;
|
|
792
812
|
gap: var(--o-gap-4);
|
|
793
813
|
}
|
|
794
|
-
@include respond
|
|
814
|
+
@include respond('phone') {
|
|
795
815
|
flex-direction: column;
|
|
796
816
|
gap: var(--o-gap-3);
|
|
797
817
|
--phone-padding-top: calc(var(--o-gap-5) + var(--o-gap-3) + var(--o-gap-3));
|
|
@@ -831,7 +851,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
831
851
|
}
|
|
832
852
|
}
|
|
833
853
|
|
|
834
|
-
@include respond
|
|
854
|
+
@include respond('phone') {
|
|
835
855
|
padding-top: var(--o-gap-7);
|
|
836
856
|
background-color: var(--o-color-fill1);
|
|
837
857
|
padding-bottom: var(--o-gap-4);
|
|
@@ -850,7 +870,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
850
870
|
width: 334px;
|
|
851
871
|
background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent);
|
|
852
872
|
|
|
853
|
-
@include respond
|
|
873
|
+
@include respond('pad_h') {
|
|
854
874
|
.el-calendar {
|
|
855
875
|
.el-calendar__body {
|
|
856
876
|
padding-left: 12px;
|
|
@@ -868,16 +888,16 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
868
888
|
}
|
|
869
889
|
}
|
|
870
890
|
}
|
|
871
|
-
@include respond
|
|
891
|
+
@include respond('pad_v') {
|
|
872
892
|
width: 100%;
|
|
873
893
|
}
|
|
874
|
-
@include respond
|
|
894
|
+
@include respond('phone') {
|
|
875
895
|
display: none;
|
|
876
896
|
}
|
|
877
897
|
.el-calendar {
|
|
878
898
|
min-height: 460px;
|
|
879
899
|
height: calc(100% - 54px);
|
|
880
|
-
border-radius: var(--
|
|
900
|
+
border-radius: var(--meeting-card-radius);
|
|
881
901
|
background-color: transparent;
|
|
882
902
|
|
|
883
903
|
.el-calendar__header {
|
|
@@ -911,6 +931,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
911
931
|
|
|
912
932
|
.el-calendar__body {
|
|
913
933
|
.el-calendar-table {
|
|
934
|
+
display: table;
|
|
914
935
|
|
|
915
936
|
th {
|
|
916
937
|
text-align: center;
|
|
@@ -955,8 +976,9 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
955
976
|
.date-cell-text {
|
|
956
977
|
font-size: 14px;
|
|
957
978
|
line-height: 36px;
|
|
958
|
-
border-radius: var(--
|
|
979
|
+
border-radius: var(--meeting-cell-radius);
|
|
959
980
|
background-color: var(--o-color-control2-light);
|
|
981
|
+
border: 1px solid transparent;
|
|
960
982
|
}
|
|
961
983
|
|
|
962
984
|
.date-cell-text {
|
|
@@ -995,22 +1017,22 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
995
1017
|
|
|
996
1018
|
&.is-selected {
|
|
997
1019
|
.date-cell-text {
|
|
998
|
-
color:
|
|
999
|
-
|
|
1020
|
+
background-color: var(--o-color-control3-light);
|
|
1021
|
+
border: 1px solid var(--o-color-primary1);
|
|
1000
1022
|
}
|
|
1001
1023
|
}
|
|
1002
1024
|
|
|
1003
1025
|
&.clickable {
|
|
1004
1026
|
&::after {
|
|
1005
|
-
background-color: var(--
|
|
1027
|
+
background-color: var(--dot-bg);
|
|
1006
1028
|
}
|
|
1007
1029
|
|
|
1008
1030
|
&.expired::after {
|
|
1009
|
-
background-color: rgb(var(--o-
|
|
1031
|
+
background-color: rgb(var(--o-grey-6));
|
|
1010
1032
|
}
|
|
1011
1033
|
|
|
1012
1034
|
&.all-deleted::after {
|
|
1013
|
-
background-color: rgb(var(--o-
|
|
1035
|
+
background-color: rgb(var(--o-grey-6));
|
|
1014
1036
|
}
|
|
1015
1037
|
}
|
|
1016
1038
|
}
|
|
@@ -1028,7 +1050,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1028
1050
|
flex-grow: 1;
|
|
1029
1051
|
background-color: var(--o-color-fill2);
|
|
1030
1052
|
|
|
1031
|
-
@include respond
|
|
1053
|
+
@include respond('phone') {
|
|
1032
1054
|
margin-top: calc(var(--phone-padding-top) - var(--o-gap-4));
|
|
1033
1055
|
}
|
|
1034
1056
|
&.is-empty {
|
|
@@ -1049,7 +1071,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1049
1071
|
height: 100%;
|
|
1050
1072
|
max-height: calc(var(--layout-left-height, 900px) - 4 * var(--o-gap-5) - var(--header-height) * 1px);
|
|
1051
1073
|
|
|
1052
|
-
@include respond
|
|
1074
|
+
@include respond('phone') {
|
|
1053
1075
|
max-height: fit-content;
|
|
1054
1076
|
}
|
|
1055
1077
|
|
|
@@ -1061,7 +1083,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1061
1083
|
flex-grow: 1;
|
|
1062
1084
|
}
|
|
1063
1085
|
|
|
1064
|
-
@include respond
|
|
1086
|
+
@include respond('phone') {
|
|
1065
1087
|
padding-left: var(--o-gap-2);
|
|
1066
1088
|
}
|
|
1067
1089
|
|
|
@@ -1090,13 +1112,13 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1090
1112
|
width: 16px;
|
|
1091
1113
|
height: 26px;
|
|
1092
1114
|
position: relative;
|
|
1093
|
-
@include respond
|
|
1115
|
+
@include respond('laptop') {
|
|
1094
1116
|
height: 24px;
|
|
1095
1117
|
}
|
|
1096
|
-
@include respond
|
|
1118
|
+
@include respond('pad_h') {
|
|
1097
1119
|
height: 22px;
|
|
1098
1120
|
}
|
|
1099
|
-
@include respond
|
|
1121
|
+
@include respond('<=pad_v') {
|
|
1100
1122
|
height: 22px;
|
|
1101
1123
|
}
|
|
1102
1124
|
|
|
@@ -1145,7 +1167,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1145
1167
|
margin-bottom: var(--o-gap-2);
|
|
1146
1168
|
color: var(--o-color-info1);
|
|
1147
1169
|
@include text2;
|
|
1148
|
-
@include respond
|
|
1170
|
+
@include respond('phone') {
|
|
1149
1171
|
padding-left: var(--o-gap-5);
|
|
1150
1172
|
}
|
|
1151
1173
|
|
|
@@ -1160,7 +1182,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1160
1182
|
.list-body {
|
|
1161
1183
|
height: 100%;
|
|
1162
1184
|
|
|
1163
|
-
@include respond
|
|
1185
|
+
@include respond('phone') {
|
|
1164
1186
|
height: fit-content;
|
|
1165
1187
|
padding: var(--o-gap-4) !important;
|
|
1166
1188
|
}
|
|
@@ -1176,7 +1198,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1176
1198
|
--btn-color: var(--o-color-primary2);
|
|
1177
1199
|
}
|
|
1178
1200
|
|
|
1179
|
-
@include respond
|
|
1201
|
+
@include respond('phone') {
|
|
1180
1202
|
display: none;
|
|
1181
1203
|
}
|
|
1182
1204
|
|
|
@@ -1207,62 +1229,63 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1207
1229
|
display: flex;
|
|
1208
1230
|
flex-direction: column;
|
|
1209
1231
|
|
|
1210
|
-
.o-collapse-item {
|
|
1211
|
-
&.last-item {
|
|
1212
|
-
.o-collapse-item-header {
|
|
1213
|
-
border-bottom: none;
|
|
1214
|
-
}
|
|
1215
|
-
}
|
|
1216
|
-
}
|
|
1217
|
-
|
|
1218
1232
|
.o-collapse-item-expanded + .o-collapse-item-expanded {
|
|
1219
1233
|
margin-top: var(--o-gap-4);
|
|
1220
1234
|
}
|
|
1221
1235
|
|
|
1222
1236
|
.height-placeholder {
|
|
1223
|
-
height: 0;
|
|
1224
|
-
transition: margin var(--o-easing-standard) var(--o-duration-s);
|
|
1225
|
-
}
|
|
1226
|
-
|
|
1227
|
-
.o-collapse-item-expanded + .height-placeholder {
|
|
1228
1237
|
height: var(--o-gap-4);
|
|
1229
1238
|
}
|
|
1230
1239
|
|
|
1240
|
+
|
|
1231
1241
|
.o-collapse-item {
|
|
1232
1242
|
padding: var(--o-gap-4) var(--o-gap-5);
|
|
1243
|
+
padding-bottom: calc(var(--o-gap-5) - var(--o-gap-4));
|
|
1233
1244
|
border-top: none;
|
|
1234
|
-
border-radius: var(--
|
|
1245
|
+
border-radius: var(--meeting-card-radius);
|
|
1235
1246
|
transition: margin var(--o-easing-standard) var(--o-duration-s);
|
|
1236
1247
|
--copy-display: none;
|
|
1237
1248
|
--icon-size: 24px;
|
|
1238
|
-
@include respond
|
|
1249
|
+
@include respond('<=pad_v') {
|
|
1239
1250
|
padding: var(--o-gap-3) var(--o-gap-4);
|
|
1240
1251
|
}
|
|
1241
1252
|
|
|
1253
|
+
@include respond('phone') {
|
|
1254
|
+
--icon-size: 20px;
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1242
1257
|
&:hover {
|
|
1243
|
-
|
|
1258
|
+
.title-text {
|
|
1259
|
+
color: var(--o-color-primary1);
|
|
1260
|
+
}
|
|
1261
|
+
@include respond('>pad_v') {
|
|
1244
1262
|
--copy-display: inline-flex;
|
|
1245
1263
|
}
|
|
1246
1264
|
}
|
|
1247
1265
|
|
|
1248
|
-
|
|
1249
|
-
|
|
1266
|
+
&.last-item {
|
|
1267
|
+
.o-collapse-item-header {
|
|
1268
|
+
border-bottom: none;
|
|
1269
|
+
}
|
|
1250
1270
|
}
|
|
1251
1271
|
&.o-collapse-item-expanded {
|
|
1252
|
-
|
|
1272
|
+
border-bottom: none;
|
|
1273
|
+
background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent) !important;
|
|
1274
|
+
|
|
1275
|
+
@include respond('<=pad_v') {
|
|
1253
1276
|
--copy-display: inline-flex;
|
|
1254
1277
|
}
|
|
1255
|
-
}
|
|
1256
1278
|
|
|
1257
|
-
|
|
1258
|
-
|
|
1279
|
+
.o-collapse-item-header {
|
|
1280
|
+
border-bottom: 1px solid var(--o-color-control4);
|
|
1281
|
+
}
|
|
1259
1282
|
}
|
|
1260
1283
|
}
|
|
1261
1284
|
|
|
1262
1285
|
.o-collapse-item-header {
|
|
1263
|
-
border-bottom:
|
|
1286
|
+
border-bottom: none;
|
|
1264
1287
|
padding-top: 0;
|
|
1265
|
-
padding-bottom: var(--o-gap-
|
|
1288
|
+
padding-bottom: var(--o-gap-4);
|
|
1266
1289
|
display: flex;
|
|
1267
1290
|
align-items: center;
|
|
1268
1291
|
gap: var(--o-gap-4);
|
|
@@ -1272,7 +1295,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1272
1295
|
position: relative;
|
|
1273
1296
|
top: 4px;
|
|
1274
1297
|
flex-shrink: 0;
|
|
1275
|
-
@include respond
|
|
1298
|
+
@include respond('phone') {
|
|
1276
1299
|
position: absolute;
|
|
1277
1300
|
right: 0;
|
|
1278
1301
|
width: 20px;
|
|
@@ -1297,7 +1320,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1297
1320
|
gap: var(--o-gap-3);
|
|
1298
1321
|
width: 100%;
|
|
1299
1322
|
margin-bottom: var(--o-gap-2);
|
|
1300
|
-
@include respond
|
|
1323
|
+
@include respond('phone') {
|
|
1301
1324
|
flex-grow: 1;
|
|
1302
1325
|
width: 100%;
|
|
1303
1326
|
align-self: stretch;
|
|
@@ -1334,7 +1357,11 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1334
1357
|
|
|
1335
1358
|
&.is-delete,
|
|
1336
1359
|
&.is-end {
|
|
1337
|
-
color: var(--o-color-
|
|
1360
|
+
color: var(--o-color-info4);
|
|
1361
|
+
|
|
1362
|
+
.title-text {
|
|
1363
|
+
color: var(--o-color-info4) !important;
|
|
1364
|
+
}
|
|
1338
1365
|
}
|
|
1339
1366
|
|
|
1340
1367
|
.tag-wrapper {
|
|
@@ -1380,10 +1407,12 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1380
1407
|
padding-left: calc(var(--o-gap-3) + var(--icon-size));
|
|
1381
1408
|
gap: var(--o-gap-4);
|
|
1382
1409
|
width: 100%;
|
|
1410
|
+
font-weight: 400;
|
|
1383
1411
|
|
|
1384
1412
|
.o-link {
|
|
1385
1413
|
font-size: 14px;
|
|
1386
1414
|
line-height: 21px;
|
|
1415
|
+
--link-color: var(--o-color-info2);
|
|
1387
1416
|
}
|
|
1388
1417
|
.o-icon {
|
|
1389
1418
|
font-size: 16px;
|
|
@@ -1399,7 +1428,8 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1399
1428
|
height: 18px;
|
|
1400
1429
|
width: 18px;
|
|
1401
1430
|
display: var(--copy-display);
|
|
1402
|
-
|
|
1431
|
+
color: var(--o-color-info1);
|
|
1432
|
+
@include respond('phone') {
|
|
1403
1433
|
bottom: var(--o-gap-2);
|
|
1404
1434
|
right: calc(20px + var(--o-gap-2))
|
|
1405
1435
|
}
|
|
@@ -1423,7 +1453,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1423
1453
|
.meeting-detail {
|
|
1424
1454
|
padding-left: calc(var(--o-gap-3) + var(--icon-size));
|
|
1425
1455
|
|
|
1426
|
-
@include respond
|
|
1456
|
+
@include respond('phone') {
|
|
1427
1457
|
padding-left: 0;
|
|
1428
1458
|
}
|
|
1429
1459
|
|
|
@@ -1431,10 +1461,15 @@ const cancelActions = computed<DialogActionT[]>(() => {
|
|
|
1431
1461
|
border-top: 1px solid var(--o-color-control4);
|
|
1432
1462
|
margin-top: var(--o-gap-5);
|
|
1433
1463
|
padding-top: var(--o-gap-4);
|
|
1464
|
+
padding-bottom: var(--o-gap-4);
|
|
1434
1465
|
display: flex;
|
|
1435
1466
|
align-items: center;
|
|
1436
1467
|
justify-content: flex-end;
|
|
1437
1468
|
gap: var(--o-gap-5);
|
|
1469
|
+
|
|
1470
|
+
.o-link {
|
|
1471
|
+
--link-color: inherit;
|
|
1472
|
+
}
|
|
1438
1473
|
}
|
|
1439
1474
|
}
|
|
1440
1475
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { computed, onMounted, onUnmounted, ref, watchEffect } from 'vue';
|
|
3
3
|
import { speakerNum, transformSeconds, transformTime } from './utils';
|
|
4
|
-
import { OOption, OSelect, OTab, OTabPane, type SelectValueT } from '@opensig/opendesign';
|
|
4
|
+
import { OOption, OScroller, OSelect, OTab, OTabPane, type SelectValueT } from '@opensig/opendesign';
|
|
5
5
|
import OMeetingPlaybackSubtitles from './components/OMeetingPlaybackSubtitles.vue';
|
|
6
6
|
import OMeetingPlaybackVideo from './components/OMeetingPlaybackVideo.vue';
|
|
7
7
|
import { useI18n } from '@/i18n';
|
|
@@ -203,7 +203,7 @@ onUnmounted(() => {
|
|
|
203
203
|
<OTab v-model="tab">
|
|
204
204
|
<OTabPane v-for="t in tabOptions" :key="t.value" :value="t.value" :label="t.label" />
|
|
205
205
|
</OTab>
|
|
206
|
-
<
|
|
206
|
+
<OScroller :class="['tab-content', `tab-content-${tab}`]" show-type="hover">
|
|
207
207
|
<div class="base-info" v-if="tab === tabOptions[0].value">
|
|
208
208
|
<div class="info-item">
|
|
209
209
|
<span>{{ t('meeting.item1') }}</span>
|
|
@@ -252,7 +252,7 @@ onUnmounted(() => {
|
|
|
252
252
|
</div>
|
|
253
253
|
</div>
|
|
254
254
|
</div>
|
|
255
|
-
</
|
|
255
|
+
</OScroller>
|
|
256
256
|
</div>
|
|
257
257
|
</div>
|
|
258
258
|
<div class="right-card card-wrapper" :style="{
|
|
@@ -271,20 +271,27 @@ onUnmounted(() => {
|
|
|
271
271
|
display: flex;
|
|
272
272
|
gap: var(--grid-column-gutter);
|
|
273
273
|
align-items: flex-start;
|
|
274
|
+
--meeting-card-radius: var(--o-radius-xs);
|
|
275
|
+
--meeting-input-radius: var(--o-radius-xs);
|
|
276
|
+
--meeting-cell-radius: var(--o-radius-xs);
|
|
274
277
|
|
|
275
|
-
@include respond
|
|
278
|
+
@include respond('<=pad_v') {
|
|
276
279
|
flex-wrap: wrap;
|
|
277
280
|
}
|
|
278
281
|
|
|
279
282
|
.card-wrapper {
|
|
280
|
-
border-radius: var(--
|
|
283
|
+
border-radius: var(--meeting-card-radius);
|
|
281
284
|
background-color: var(--o-color-fill2);
|
|
282
285
|
padding: var(--o-gap-5);
|
|
286
|
+
|
|
287
|
+
&.left-card {
|
|
288
|
+
padding-bottom: 0;
|
|
289
|
+
}
|
|
283
290
|
}
|
|
284
291
|
|
|
285
292
|
.left-card {
|
|
286
293
|
width: 60%;
|
|
287
|
-
@include respond
|
|
294
|
+
@include respond('<=pad_v') {
|
|
288
295
|
width: 100%;
|
|
289
296
|
}
|
|
290
297
|
|
|
@@ -311,13 +318,14 @@ onUnmounted(() => {
|
|
|
311
318
|
margin-top: var(--o-gap-5);
|
|
312
319
|
|
|
313
320
|
.o-tab {
|
|
321
|
+
--tab-nav-justify: flex-start;
|
|
314
322
|
.o-tab-navs {
|
|
315
323
|
justify-content: flex-start;
|
|
316
324
|
}
|
|
317
325
|
|
|
318
326
|
.o-tab-nav {
|
|
319
327
|
padding-bottom: var(--o-gap-4);
|
|
320
|
-
@include respond
|
|
328
|
+
@include respond('<=pad_v') {
|
|
321
329
|
padding-bottom: var(--o-gap-2);
|
|
322
330
|
}
|
|
323
331
|
}
|
|
@@ -325,9 +333,23 @@ onUnmounted(() => {
|
|
|
325
333
|
|
|
326
334
|
.tab-content {
|
|
327
335
|
padding-top: var(--o-gap-4);
|
|
336
|
+
height: 280px;
|
|
337
|
+
padding-bottom: 0;
|
|
338
|
+
position: relative;
|
|
339
|
+
|
|
340
|
+
&::after {
|
|
341
|
+
height: 24px;
|
|
342
|
+
content: '';
|
|
343
|
+
position: absolute;
|
|
344
|
+
bottom: 0;
|
|
345
|
+
left: 0;
|
|
346
|
+
right: 0;
|
|
347
|
+
background: linear-gradient(180deg, rgba(var(--o-grey-1), 0), rgba(var(--o-grey-1), 1) 100%);
|
|
348
|
+
}
|
|
328
349
|
|
|
329
350
|
.base-info {
|
|
330
|
-
|
|
351
|
+
padding-bottom: var(--o-gap-5);
|
|
352
|
+
@include text1;
|
|
331
353
|
|
|
332
354
|
.info-item {
|
|
333
355
|
display: flex;
|
|
@@ -340,6 +362,7 @@ onUnmounted(() => {
|
|
|
340
362
|
span:first-child {
|
|
341
363
|
width: 6em;
|
|
342
364
|
flex-shrink: 0;
|
|
365
|
+
color: var(--o-color-info3);
|
|
343
366
|
}
|
|
344
367
|
|
|
345
368
|
span:last-child {
|
|
@@ -355,6 +378,7 @@ onUnmounted(() => {
|
|
|
355
378
|
.subject-list {
|
|
356
379
|
counter-reset: itemIndex;
|
|
357
380
|
position: relative;
|
|
381
|
+
padding-bottom: var(--o-gap-5);
|
|
358
382
|
|
|
359
383
|
.mouse-current-time {
|
|
360
384
|
position: absolute;
|
|
@@ -362,7 +386,7 @@ onUnmounted(() => {
|
|
|
362
386
|
padding: var(--o-gap-1);
|
|
363
387
|
box-shadow: var(--o-shadow-1);
|
|
364
388
|
z-index: 10;
|
|
365
|
-
border-radius: var(--
|
|
389
|
+
border-radius: var(--meeting-cell-radius);
|
|
366
390
|
transform: translateY(calc(0px - 100% - 4px));
|
|
367
391
|
color: var(--o-color-info2);
|
|
368
392
|
@include tip1;
|
|
@@ -402,7 +426,7 @@ onUnmounted(() => {
|
|
|
402
426
|
right: 0;
|
|
403
427
|
height: 4px;
|
|
404
428
|
border-radius: 2px;
|
|
405
|
-
background-color: var(--o-color-
|
|
429
|
+
background-color: var(--o-color-fill3);
|
|
406
430
|
}
|
|
407
431
|
|
|
408
432
|
.subject-progress {
|
|
@@ -417,7 +441,7 @@ onUnmounted(() => {
|
|
|
417
441
|
position: absolute;
|
|
418
442
|
top: 0;
|
|
419
443
|
bottom: 0;
|
|
420
|
-
border-radius: var(--
|
|
444
|
+
border-radius: var(--meeting-cell-radius);
|
|
421
445
|
left: calc(var(--start) * 100%);
|
|
422
446
|
right: calc((1 - var(--end)) * 100%);
|
|
423
447
|
z-index: 9;
|
|
@@ -431,7 +455,7 @@ onUnmounted(() => {
|
|
|
431
455
|
|
|
432
456
|
.right-card {
|
|
433
457
|
width: 40%;
|
|
434
|
-
@include respond
|
|
458
|
+
@include respond('<=pad_v') {
|
|
435
459
|
width: 100%;
|
|
436
460
|
}
|
|
437
461
|
}
|
|
@@ -3,7 +3,7 @@ import { ref, onMounted, computed, nextTick, watch } from 'vue';
|
|
|
3
3
|
import { ODivider, OPopover, OIcon, OTabPane, OTab, OScroller } from '@opensig/opendesign';
|
|
4
4
|
import dayjs from 'dayjs';
|
|
5
5
|
import IconTips from '~icons/components/icon-tips.svg';
|
|
6
|
-
import
|
|
6
|
+
import OMeetingSigAside from './components/OMeetingSigAside.vue';
|
|
7
7
|
import { CalendarDataType, MeetingEventsItemT, MeetingItemT } from './types.ts';
|
|
8
8
|
import { useScreen } from '@opendesign-plus/composables';
|
|
9
9
|
import { useMeetingConfig } from './composables/useMeetingConfig';
|
|
@@ -281,7 +281,7 @@ onMounted(() => {
|
|
|
281
281
|
<ODivider class="meeting-divider" v-if="!lePadV || (lePadV && dateList.length)" />
|
|
282
282
|
<div class="meeting-card-content">
|
|
283
283
|
<template v-if="!lePadV && monthIdx !== -1">
|
|
284
|
-
<
|
|
284
|
+
<OMeetingSigAside
|
|
285
285
|
:data="dateMapList.slice(monthIdx, monthIdx + 1)"
|
|
286
286
|
:meetingDates="tabType !== CalendarDataType.EVENTS ? meetingDates :[] "
|
|
287
287
|
:eventsDates="tabType !== CalendarDataType.MEETING ? eventsDates : []"
|
|
@@ -308,11 +308,14 @@ onMounted(() => {
|
|
|
308
308
|
|
|
309
309
|
<style lang="scss">
|
|
310
310
|
.o-sig-meeting-calendar {
|
|
311
|
+
--meeting-card-radius: var(--o-radius-xs);
|
|
312
|
+
--meeting-input-radius: var(--o-radius-xs);
|
|
313
|
+
--meeting-cell-radius: var(--o-radius-xs);
|
|
311
314
|
width: 100%;
|
|
312
315
|
background-color: var(--o-color-fill2);
|
|
313
|
-
border-radius: var(--
|
|
316
|
+
border-radius: var(--meeting-card-radius);
|
|
314
317
|
margin-top: var(--o-gap-5);
|
|
315
|
-
@include respond
|
|
318
|
+
@include respond('phone') {
|
|
316
319
|
.meeting-card-header {
|
|
317
320
|
padding: 12px 16px 0;
|
|
318
321
|
|
|
@@ -339,7 +342,7 @@ onMounted(() => {
|
|
|
339
342
|
align-items: center;
|
|
340
343
|
padding: 12px 32px 0;
|
|
341
344
|
@include text1;
|
|
342
|
-
@include respond
|
|
345
|
+
@include respond('<=pad') {
|
|
343
346
|
padding: 12px 16px 0;
|
|
344
347
|
}
|
|
345
348
|
|
|
@@ -405,7 +408,7 @@ onMounted(() => {
|
|
|
405
408
|
.list-content {
|
|
406
409
|
flex-grow: 1;
|
|
407
410
|
height: 400px;
|
|
408
|
-
@include respond
|
|
411
|
+
@include respond('<=pad_v') {
|
|
409
412
|
height: auto;
|
|
410
413
|
}
|
|
411
414
|
}
|