@opendesign-plus-test/components 0.0.1-rc.41 → 0.0.1-rc.43
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 +111 -111
- package/dist/components/OHeaderSearch.vue.d.ts +6 -10
- package/dist/components/OSourceCode.vue.d.ts +4 -6
- package/dist/components/activity/OActivityApproval.vue.d.ts +6 -10
- package/dist/components/activity/OActivityForm.vue.d.ts +3 -5
- package/dist/components/activity/OMyActivityCalendar.vue.d.ts +18 -26
- package/dist/components/activity/index.d.ts +15 -23
- package/dist/components/activity/types.d.ts +8 -1
- package/dist/components/events/config.d.ts +5 -18
- package/dist/components/events/types.d.ts +4 -1
- package/dist/components/header/OHeaderMobile.vue.d.ts +18 -11
- package/dist/components/header/components/HeaderNavMobile.vue.d.ts +4 -1
- package/dist/components/header/index.d.ts +12 -5
- package/dist/components/header/types.d.ts +4 -0
- package/dist/components/meeting/OMeetingCalendar.vue.d.ts +10 -14
- package/dist/components/meeting/OMeetingForm.vue.d.ts +3 -5
- package/dist/components/meeting/OMeetingPlayback.vue.d.ts +45 -0
- package/dist/components/meeting/OMyMeetingCalendar.vue.d.ts +18 -26
- package/dist/components/meeting/components/OMeetingCalendarList.vue.d.ts +1 -1
- package/dist/components/meeting/components/OMeetingDetail.vue.d.ts +2 -1
- package/dist/components/meeting/index.d.ts +786 -0
- package/dist/components/meeting/types.d.ts +83 -18
- package/dist/components/meeting/utils.d.ts +1 -1
- package/dist/components.cjs.js +38 -38
- package/dist/components.css +1 -1
- package/dist/components.es.js +12466 -12392
- package/package.json +3 -3
- package/src/components/OSourceCode.vue +8 -10
- package/src/components/activity/OActivityApproval.vue +35 -34
- package/src/components/activity/OActivityForm.vue +4 -4
- package/src/components/activity/OMyActivityCalendar.vue +44 -27
- package/src/components/activity/types.ts +8 -1
- package/src/components/common/MoreText.vue +1 -1
- package/src/components/common/ThFilter.vue +7 -7
- package/src/components/element-plus/OElCookieNotice.vue +1 -1
- package/src/components/events/OEventsList.vue +45 -10
- package/src/components/events/config.ts +1 -1
- package/src/components/events/types.ts +4 -1
- package/src/components/header/OHeaderMobile.vue +8 -1
- package/src/components/header/components/HeaderContent.vue +7 -3
- package/src/components/header/components/HeaderNavMobile.vue +5 -2
- package/src/components/header/types.ts +4 -0
- package/src/components/meeting/OMeetingCalendar.vue +42 -48
- package/src/components/meeting/OMeetingForm.vue +75 -37
- package/src/components/meeting/OMeetingPlayback.vue +4 -4
- package/src/components/meeting/OMyMeetingCalendar.vue +33 -27
- package/src/components/meeting/OSigMeetingCalendar.vue +29 -26
- package/src/components/meeting/components/OMeetingCalendarList.vue +107 -88
- package/src/components/meeting/components/OMeetingCalendarSelector.vue +10 -6
- package/src/components/meeting/components/OMeetingDetail.vue +32 -16
- package/src/components/meeting/components/OMeetingPlaybackVideo.vue +7 -7
- package/src/components/meeting/components/OSigMeetingAside.vue +2 -3
- package/src/components/meeting/config.ts +1 -12
- package/src/components/meeting/types.ts +89 -18
- package/vite.config.ts +3 -2
|
@@ -26,7 +26,7 @@ const closeSpeakerMenu = () => {
|
|
|
26
26
|
speakerMenuVisible.value = false;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
-
const handleCue = (textTrack, init = false) => {
|
|
29
|
+
const handleCue = (textTrack: any, init = false) => {
|
|
30
30
|
const player = props.instance;
|
|
31
31
|
if (!player) return;
|
|
32
32
|
// 修改字幕
|
|
@@ -133,7 +133,7 @@ const videoInit = async () => {
|
|
|
133
133
|
FullscreenToggle: true,
|
|
134
134
|
},
|
|
135
135
|
},
|
|
136
|
-
});
|
|
136
|
+
}) as unknown as any;
|
|
137
137
|
emits('getInstance', player);
|
|
138
138
|
// 加载视频
|
|
139
139
|
player.src(props.src);
|
|
@@ -150,10 +150,10 @@ const videoInit = async () => {
|
|
|
150
150
|
|
|
151
151
|
// 添加自定义控制字幕的按钮
|
|
152
152
|
class CustomSubsCapsButton extends videojs.getComponent('Button') {
|
|
153
|
-
constructor(player, options) {
|
|
153
|
+
constructor(player: any, options: object) {
|
|
154
154
|
super(player, options);
|
|
155
155
|
this.addClass('vjs-subtitle-toggle-button', 'vjs-subtitle-hidden');
|
|
156
|
-
this.controlText('Toggle Subtitles');
|
|
156
|
+
(this as any).controlText('Toggle Subtitles');
|
|
157
157
|
}
|
|
158
158
|
|
|
159
159
|
buildCSSClass() {
|
|
@@ -161,7 +161,7 @@ const videoInit = async () => {
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
handleClick() {
|
|
164
|
-
const tracks = this.player().textTracks();
|
|
164
|
+
const tracks = this.player().textTracks() as unknown as any[];
|
|
165
165
|
for (let i = 0; i < tracks.length; i++) {
|
|
166
166
|
if (tracks[i].kind === 'subtitles') {
|
|
167
167
|
handleCue(tracks[i], true);
|
|
@@ -181,14 +181,14 @@ const videoInit = async () => {
|
|
|
181
181
|
|
|
182
182
|
if (props.vtt) {
|
|
183
183
|
videojs.registerComponent('SubtitleToggleButton', CustomSubsCapsButton);
|
|
184
|
-
if (!player.controlBar.children_.some((v) => v.name_ === 'SubtitleToggleButton')) {
|
|
184
|
+
if (!player.controlBar.children_.some((v: any) => v.name_ === 'SubtitleToggleButton')) {
|
|
185
185
|
player.controlBar.addChild('SubtitleToggleButton', {}, 8);
|
|
186
186
|
}
|
|
187
187
|
}
|
|
188
188
|
|
|
189
189
|
// 动态修改字幕
|
|
190
190
|
const textTracks = player?.textTracks().tracks_;
|
|
191
|
-
textTracks.forEach((textTrack) => {
|
|
191
|
+
textTracks.forEach((textTrack: any) => {
|
|
192
192
|
textTrack?.addEventListener('cuechange', () => {
|
|
193
193
|
handleCue(textTrack);
|
|
194
194
|
});
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { OIcon, OIconArrowLeft, OIconArrowRight } from '@opensig/opendesign';
|
|
3
|
-
import IconMeetinging from '~icons/meeting/icon-meet.svg';
|
|
4
3
|
import { useMeetingConfig } from '@/components/meeting/composables/useMeetingConfig';
|
|
5
4
|
import { CalendarDataType } from '@/components/meeting';
|
|
6
5
|
|
|
@@ -18,11 +17,11 @@ const props = defineProps<{
|
|
|
18
17
|
const STEP = 1;
|
|
19
18
|
|
|
20
19
|
const emits = defineEmits(['click-date', 'change-month']);
|
|
21
|
-
const clickDate = (date) => {
|
|
20
|
+
const clickDate = (date: string) => {
|
|
22
21
|
emits('click-date', date);
|
|
23
22
|
};
|
|
24
23
|
|
|
25
|
-
const changeMonth = (step) => {
|
|
24
|
+
const changeMonth = (step: number) => {
|
|
26
25
|
if (props.current + step >= props.total || props.current + step < 0) return;
|
|
27
26
|
emits('change-month', step);
|
|
28
27
|
};
|
|
@@ -4,21 +4,10 @@ import IconEvent from '~icons/meeting/icon-event.svg';
|
|
|
4
4
|
import IconMeeting from '~icons/meeting/icon-meet.svg';
|
|
5
5
|
import IconSummit from '~icons/meeting/icon-summit.svg';
|
|
6
6
|
|
|
7
|
-
const getMeetingColor = () => {
|
|
8
|
-
if (typeof document !== 'undefined') {
|
|
9
|
-
const deepBlue = getComputedStyle(document.documentElement)
|
|
10
|
-
.getPropertyValue('--o-deep-blue-6')?.trim();
|
|
11
|
-
if (deepBlue) {
|
|
12
|
-
return 'rgba(var(--o-deep-blue-6))';
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
return 'var(--o-color-primary1)';
|
|
16
|
-
};
|
|
17
|
-
|
|
18
7
|
export const TYPE_COLOR_MAP = {
|
|
19
8
|
summit: 'rgba(var(--o-orange-6))',
|
|
20
9
|
events: 'rgba(var(--o-cyan-6))',
|
|
21
|
-
meeting:
|
|
10
|
+
meeting: 'rgba(var(--o-deep-blue-6))',
|
|
22
11
|
};
|
|
23
12
|
|
|
24
13
|
export const INTERVAL_DAY = 0;
|
|
@@ -13,7 +13,6 @@ export enum CalendarDataType {
|
|
|
13
13
|
MEETING = 'meeting',
|
|
14
14
|
EVENTS = 'events',
|
|
15
15
|
SUMMIT = 'summit',
|
|
16
|
-
ACTIVITY = 'activity',
|
|
17
16
|
APPROVAL = 'approval'
|
|
18
17
|
}
|
|
19
18
|
|
|
@@ -33,10 +32,12 @@ export interface CalendarOtherDataT {
|
|
|
33
32
|
export interface OptionItemT {
|
|
34
33
|
label: string;
|
|
35
34
|
value: string | number;
|
|
35
|
+
|
|
36
|
+
[key: string]: any;
|
|
36
37
|
}
|
|
37
38
|
|
|
38
39
|
|
|
39
|
-
export type PlatformT = 'welink' | 'tencent';
|
|
40
|
+
export type PlatformT = 'welink' | 'tencent' | 'zoom' | 'WELINK' | 'TENCENT' | 'ZOOM';
|
|
40
41
|
|
|
41
42
|
export enum MeetingGroupType {
|
|
42
43
|
SIG = 'sig',
|
|
@@ -55,11 +56,12 @@ export interface MeetingCalendarPropsT {
|
|
|
55
56
|
groupType: MeetingGroupType;
|
|
56
57
|
groups: string[];
|
|
57
58
|
}
|
|
59
|
+
|
|
58
60
|
// 会议新增、修改
|
|
59
61
|
export interface MeetingPostT {
|
|
60
62
|
id?: number; // 会议id
|
|
61
63
|
topic: string; // 会议主题 128
|
|
62
|
-
sponsor
|
|
64
|
+
sponsor?: string; // 会议发起人 20
|
|
63
65
|
group_name: string; // 所属SIG 64
|
|
64
66
|
platform: PlatformT; // 会议平台
|
|
65
67
|
date: string; // 会议日期
|
|
@@ -72,14 +74,16 @@ export interface MeetingPostT {
|
|
|
72
74
|
email_list: string; // 通知邮件列表 1020
|
|
73
75
|
is_record: boolean; // 会议录制
|
|
74
76
|
is_cycle: boolean; // 是否重复
|
|
75
|
-
cycle_start_date
|
|
76
|
-
cycle_end_date
|
|
77
|
-
cycle_start
|
|
78
|
-
cycle_end
|
|
77
|
+
cycle_start_date?: string;
|
|
78
|
+
cycle_end_date?: string;
|
|
79
|
+
cycle_start?: string;
|
|
80
|
+
cycle_end?: string;
|
|
79
81
|
cycle_interval: number; // 重复周期, 当intervalType为month时固定为1
|
|
80
82
|
cycle_type: typeof INTERVAL_DAY | typeof INTERVAL_WEEK | typeof INTERVAL_MONTH; // 重复类型,默认为INTERVAL_DAY
|
|
81
83
|
cycle_point: number[]; // 重复节点,当intervalType为week|month时存在值
|
|
82
84
|
is_notify?: boolean;
|
|
85
|
+
mid?: string;
|
|
86
|
+
sub_id?: string;
|
|
83
87
|
}
|
|
84
88
|
|
|
85
89
|
export interface MeetingFormPropsT {
|
|
@@ -97,6 +101,29 @@ export interface MeetingFormPropsT {
|
|
|
97
101
|
bookText?: string
|
|
98
102
|
}
|
|
99
103
|
|
|
104
|
+
export interface ObsDataItemT {
|
|
105
|
+
id: number;
|
|
106
|
+
mid: string;
|
|
107
|
+
sub_id: string;
|
|
108
|
+
status: number;
|
|
109
|
+
text_vtt_url: string;
|
|
110
|
+
text_json_url: string;
|
|
111
|
+
text_video_url: string;
|
|
112
|
+
text_picture_url: string;
|
|
113
|
+
topic_url: string;
|
|
114
|
+
meeting_id: number;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export interface CycleSubItemT {
|
|
118
|
+
id: number;
|
|
119
|
+
mid: string;
|
|
120
|
+
sub_id: string;
|
|
121
|
+
date: string;
|
|
122
|
+
start: string;
|
|
123
|
+
end: string;
|
|
124
|
+
meeting_id: number;
|
|
125
|
+
}
|
|
126
|
+
|
|
100
127
|
// 会议详情
|
|
101
128
|
export interface MeetingItemT extends MeetingPostT {
|
|
102
129
|
id: number;
|
|
@@ -109,8 +136,55 @@ export interface MeetingItemT extends MeetingPostT {
|
|
|
109
136
|
is_delete: boolean; // 是否取消
|
|
110
137
|
update_time: string;
|
|
111
138
|
time: string; // 处理一下时间范围
|
|
112
|
-
cycle_sub:
|
|
139
|
+
cycle_sub: CycleSubItemT[];
|
|
113
140
|
live_url?: string;
|
|
141
|
+
type: CalendarDataType;
|
|
142
|
+
obs_data?: ObsDataItemT[]; // 回放数据
|
|
143
|
+
isExpired?: boolean; // 处理数据,是否过期
|
|
144
|
+
sub_id: string; // 处理数据,周期会议平铺之后的id
|
|
145
|
+
dateRange?: string; // 计算属性
|
|
146
|
+
hasObsData?: boolean; // 计算属性
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
export interface MeetingEventsItemT {
|
|
150
|
+
id: number;
|
|
151
|
+
title: string;
|
|
152
|
+
start_date: string;
|
|
153
|
+
end_date: string;
|
|
154
|
+
activity_type: number;
|
|
155
|
+
synopsis: string;
|
|
156
|
+
create_time: string;
|
|
157
|
+
address: string;
|
|
158
|
+
status: number;
|
|
159
|
+
sponsor: string;
|
|
160
|
+
is_delete: number;
|
|
161
|
+
start: string;
|
|
162
|
+
end: string;
|
|
163
|
+
register_url: string;
|
|
164
|
+
content_url: string;
|
|
165
|
+
live_url: null;
|
|
166
|
+
register_end_date: string;
|
|
167
|
+
update_activity_id: null;
|
|
168
|
+
approver: string;
|
|
169
|
+
organizer: string;
|
|
170
|
+
email_list: string;
|
|
171
|
+
dates?: string[]; // 处理数据,如果时跨天活动,有多个元素
|
|
172
|
+
type: CalendarDataType;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export interface SummitItemT {
|
|
176
|
+
id: string;
|
|
177
|
+
name: string;
|
|
178
|
+
url: string;
|
|
179
|
+
dates: string[];
|
|
180
|
+
location: string;
|
|
181
|
+
address: string;
|
|
182
|
+
start_date: string;
|
|
183
|
+
end_date: string;
|
|
184
|
+
start: string;
|
|
185
|
+
end: string;
|
|
186
|
+
activity_type: number;
|
|
187
|
+
type: CalendarDataType;
|
|
114
188
|
}
|
|
115
189
|
|
|
116
190
|
export interface PageParamsT {
|
|
@@ -118,14 +192,9 @@ export interface PageParamsT {
|
|
|
118
192
|
size: number;
|
|
119
193
|
}
|
|
120
194
|
|
|
121
|
-
export interface OptionItemT {
|
|
122
|
-
label: string;
|
|
123
|
-
value: string | number;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
195
|
export interface meetingTabT {
|
|
127
196
|
label: string;
|
|
128
|
-
value:
|
|
197
|
+
value: CalendarDataType;
|
|
129
198
|
icon: any;
|
|
130
199
|
color?: string;
|
|
131
200
|
zIndex?: number;
|
|
@@ -133,7 +202,7 @@ export interface meetingTabT {
|
|
|
133
202
|
|
|
134
203
|
|
|
135
204
|
// -------------------- 会议回放 --------------------
|
|
136
|
-
interface MeetingPlaybackPropsDetailT {
|
|
205
|
+
export interface MeetingPlaybackPropsDetailT {
|
|
137
206
|
topic: string; // 会议主题
|
|
138
207
|
date: string; // 会议日期
|
|
139
208
|
start: string; // 会议开始时间
|
|
@@ -143,7 +212,7 @@ interface MeetingPlaybackPropsDetailT {
|
|
|
143
212
|
groupName: string; // 会议所属sig组
|
|
144
213
|
}
|
|
145
214
|
|
|
146
|
-
interface MeetingPlaybackPropsDataT {
|
|
215
|
+
export interface MeetingPlaybackPropsDataT {
|
|
147
216
|
mid: string; // 会议ID
|
|
148
217
|
subId?: string; //子会议ID
|
|
149
218
|
textJson: string; // 字幕json文件
|
|
@@ -161,8 +230,10 @@ export interface MeetingPlaybackPropsT {
|
|
|
161
230
|
|
|
162
231
|
export interface SubjectItemT {
|
|
163
232
|
title: string; // 议题
|
|
164
|
-
startTime: string
|
|
165
|
-
endTime: string
|
|
233
|
+
startTime: string; // 议题开始时间 【时:分:秒】格式
|
|
234
|
+
endTime: string; // 议题结束时间 【时:分:秒】格式
|
|
235
|
+
startTimeNumber: number;
|
|
236
|
+
endTimeNumber: number;
|
|
166
237
|
}
|
|
167
238
|
|
|
168
239
|
|
package/vite.config.ts
CHANGED
|
@@ -67,6 +67,7 @@ export default defineConfig(({ mode }) => {
|
|
|
67
67
|
alias: {
|
|
68
68
|
vue: 'vue/dist/vue.esm-bundler.js',
|
|
69
69
|
'@': path.resolve(__dirname, 'src'),
|
|
70
|
+
'@opendesign-plus/styles': path.resolve(__dirname, '../styles/src'),
|
|
70
71
|
},
|
|
71
72
|
},
|
|
72
73
|
css: {
|
|
@@ -78,7 +79,7 @@ export default defineConfig(({ mode }) => {
|
|
|
78
79
|
@use "@opendesign-plus/styles/mixin/font.scss" as *;
|
|
79
80
|
@use "@opendesign-plus/styles/mixin/common.scss" as *;
|
|
80
81
|
@use "@opendesign-plus/styles/mixin/gap.scss" as *;
|
|
81
|
-
@use "@opendesign-plus/styles/element-plus.
|
|
82
|
+
@use "@opendesign-plus/styles/element-plus.scss" as *;
|
|
82
83
|
`,
|
|
83
84
|
},
|
|
84
85
|
},
|
|
@@ -94,7 +95,7 @@ export default defineConfig(({ mode }) => {
|
|
|
94
95
|
},
|
|
95
96
|
}) as any,
|
|
96
97
|
dts({
|
|
97
|
-
include: ['./src/components/**/*', './src/index.ts'],
|
|
98
|
+
include: ['./src/components/**/*', './src/index.ts', './src/*.d.ts'],
|
|
98
99
|
exclude: ['./src/components/common/**/*']
|
|
99
100
|
}),
|
|
100
101
|
Icons({
|