@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.
Files changed (56) hide show
  1. package/dist/chunk-OElCookieNotice.cjs.js +1 -1
  2. package/dist/chunk-OElCookieNotice.es.js +111 -111
  3. package/dist/components/OHeaderSearch.vue.d.ts +6 -10
  4. package/dist/components/OSourceCode.vue.d.ts +4 -6
  5. package/dist/components/activity/OActivityApproval.vue.d.ts +6 -10
  6. package/dist/components/activity/OActivityForm.vue.d.ts +3 -5
  7. package/dist/components/activity/OMyActivityCalendar.vue.d.ts +18 -26
  8. package/dist/components/activity/index.d.ts +15 -23
  9. package/dist/components/activity/types.d.ts +8 -1
  10. package/dist/components/events/config.d.ts +5 -18
  11. package/dist/components/events/types.d.ts +4 -1
  12. package/dist/components/header/OHeaderMobile.vue.d.ts +18 -11
  13. package/dist/components/header/components/HeaderNavMobile.vue.d.ts +4 -1
  14. package/dist/components/header/index.d.ts +12 -5
  15. package/dist/components/header/types.d.ts +4 -0
  16. package/dist/components/meeting/OMeetingCalendar.vue.d.ts +10 -14
  17. package/dist/components/meeting/OMeetingForm.vue.d.ts +3 -5
  18. package/dist/components/meeting/OMeetingPlayback.vue.d.ts +45 -0
  19. package/dist/components/meeting/OMyMeetingCalendar.vue.d.ts +18 -26
  20. package/dist/components/meeting/components/OMeetingCalendarList.vue.d.ts +1 -1
  21. package/dist/components/meeting/components/OMeetingDetail.vue.d.ts +2 -1
  22. package/dist/components/meeting/index.d.ts +786 -0
  23. package/dist/components/meeting/types.d.ts +83 -18
  24. package/dist/components/meeting/utils.d.ts +1 -1
  25. package/dist/components.cjs.js +38 -38
  26. package/dist/components.css +1 -1
  27. package/dist/components.es.js +12466 -12392
  28. package/package.json +3 -3
  29. package/src/components/OSourceCode.vue +8 -10
  30. package/src/components/activity/OActivityApproval.vue +35 -34
  31. package/src/components/activity/OActivityForm.vue +4 -4
  32. package/src/components/activity/OMyActivityCalendar.vue +44 -27
  33. package/src/components/activity/types.ts +8 -1
  34. package/src/components/common/MoreText.vue +1 -1
  35. package/src/components/common/ThFilter.vue +7 -7
  36. package/src/components/element-plus/OElCookieNotice.vue +1 -1
  37. package/src/components/events/OEventsList.vue +45 -10
  38. package/src/components/events/config.ts +1 -1
  39. package/src/components/events/types.ts +4 -1
  40. package/src/components/header/OHeaderMobile.vue +8 -1
  41. package/src/components/header/components/HeaderContent.vue +7 -3
  42. package/src/components/header/components/HeaderNavMobile.vue +5 -2
  43. package/src/components/header/types.ts +4 -0
  44. package/src/components/meeting/OMeetingCalendar.vue +42 -48
  45. package/src/components/meeting/OMeetingForm.vue +75 -37
  46. package/src/components/meeting/OMeetingPlayback.vue +4 -4
  47. package/src/components/meeting/OMyMeetingCalendar.vue +33 -27
  48. package/src/components/meeting/OSigMeetingCalendar.vue +29 -26
  49. package/src/components/meeting/components/OMeetingCalendarList.vue +107 -88
  50. package/src/components/meeting/components/OMeetingCalendarSelector.vue +10 -6
  51. package/src/components/meeting/components/OMeetingDetail.vue +32 -16
  52. package/src/components/meeting/components/OMeetingPlaybackVideo.vue +7 -7
  53. package/src/components/meeting/components/OSigMeetingAside.vue +2 -3
  54. package/src/components/meeting/config.ts +1 -12
  55. package/src/components/meeting/types.ts +89 -18
  56. 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: getMeetingColor(),
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: string; // 会议发起人 20
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: string;
76
- cycle_end_date: string;
77
- cycle_start: string;
78
- cycle_end: string;
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: any[];
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: string;
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 | number; // 议题开始时间 时:分:秒格式
165
- endTime: string | number; // 议题结束时间 时:分:秒格式
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.css" as *;
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({