@opendesign-plus-test/components 0.0.1-rc.50 → 0.0.1-rc.52

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 (27) hide show
  1. package/dist/chunk-OElCookieNotice.cjs.js +1 -1
  2. package/dist/chunk-OElCookieNotice.es.js +1 -1
  3. package/dist/components/meeting/OMeetingCalendar.vue.d.ts +3 -1
  4. package/dist/components/meeting/OMeetingPlayback.vue.d.ts +50 -1
  5. package/dist/components/meeting/components/OMeetingPlaybackSubtitles.vue.d.ts +16 -1
  6. package/dist/components/meeting/composables/useMeetingConfig.d.ts +1 -1
  7. package/dist/components/meeting/index.d.ts +14 -4
  8. package/dist/components/meeting/types.d.ts +1 -1
  9. package/dist/components.cjs.js +37 -37
  10. package/dist/components.css +1 -1
  11. package/dist/components.es.js +7041 -6980
  12. package/package.json +2 -2
  13. package/src/assets/styles/element-plus.scss +16 -9
  14. package/src/components/activity/OActivityForm.vue +7 -3
  15. package/src/components/activity/OActivityMyCalendar.vue +16 -7
  16. package/src/components/meeting/OMeetingCalendar.vue +11 -6
  17. package/src/components/meeting/OMeetingForm.vue +49 -7
  18. package/src/components/meeting/OMeetingMyCalendar.vue +14 -8
  19. package/src/components/meeting/OMeetingPlayback.vue +10 -4
  20. package/src/components/meeting/OMeetingSigCalendar.vue +1 -1
  21. package/src/components/meeting/components/OMeetingCalendarList.vue +53 -21
  22. package/src/components/meeting/components/OMeetingCalendarSelector.vue +11 -8
  23. package/src/components/meeting/components/OMeetingDetail.vue +1 -1
  24. package/src/components/meeting/components/OMeetingPlaybackSubtitles.vue +7 -4
  25. package/src/components/meeting/composables/useMeetingConfig.ts +5 -5
  26. package/src/components/meeting/types.ts +1 -1
  27. package/src/i18n/zh.ts +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendesign-plus-test/components",
3
- "version": "0.0.1-rc.50",
3
+ "version": "0.0.1-rc.52",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -26,7 +26,7 @@
26
26
  }
27
27
  },
28
28
  "dependencies": {
29
- "@opensig/opendesign": "1.2.3",
29
+ "@opensig/opendesign": "1.2.3-sp1",
30
30
  "@vueuse/core": "10.11.1",
31
31
  "aos": "^2.3.4",
32
32
  "dayjs": "^1.11.13",
@@ -175,21 +175,28 @@
175
175
  background: var(--o-color-fill2);
176
176
  }
177
177
 
178
- .el-calendar-table {
179
- th {
180
- color: var(--o-color-info3);
181
- font-weight: 400;
182
- }
178
+ .el-calendar {
179
+ .el-calendar-table {
180
+ width: 100%;
181
+
182
+ th {
183
+ color: var(--o-color-info3);
184
+ font-weight: 400;
185
+ padding: 4px 0 16px 0;
186
+ text-align: center;
187
+ }
183
188
 
184
- td {
185
- &.prev, &.next {
186
- .date-calender {
187
- color: var(--o-color-info4);
189
+ td {
190
+ &.prev, &.next {
191
+ .date-calender {
192
+ color: var(--o-color-info4);
193
+ }
188
194
  }
189
195
  }
190
196
  }
191
197
  }
192
198
 
199
+
193
200
  .el-select {
194
201
 
195
202
  .el-select__placeholder {
@@ -297,13 +297,17 @@ const confirm = async (val: boolean) => {
297
297
  }
298
298
  loading.value = true;
299
299
  form.value.is_publish = `${ val }`;
300
+ let flag = undefined;
300
301
  if (isEdit.value && props.data?.status === 3) {
301
302
  form.value.update_activity_id = props.data?.id;
302
- await props.creatActivity?.(form.value);
303
+ flag = await props.creatActivity?.(form.value);
303
304
  } else if (isEdit.value) {
304
- await props.editActivity?.(props.data?.id, form.value);
305
+ flag = await props.editActivity?.(props.data?.id, form.value);
305
306
  } else {
306
- await props.creatActivity?.(form.value);
307
+ flag = await props.creatActivity?.(form.value);
308
+ }
309
+ if (typeof flag === 'boolean' && !flag) {
310
+ return;
307
311
  }
308
312
  message.success({
309
313
  content: t('meeting.activityActionSuccess', [form.value.title, type.toLowerCase()]),
@@ -329,7 +329,10 @@ const confirm = () => {
329
329
  }
330
330
  dialogLoading.value = true;
331
331
  props.revokeActivityRequest(currentRow.value?.id)
332
- .then(() => {
332
+ .then((flag: any) => {
333
+ if (typeof flag === 'boolean' && !flag) {
334
+ return;
335
+ }
333
336
  message.success({
334
337
  content: t('meeting.revokeActivitySuccess', [currentRow.value?.title]),
335
338
  });
@@ -384,7 +387,10 @@ const handleSubmitReviewItem = (val: ActivityItemT) => {
384
387
  is_publish: 'true',
385
388
  } as ParamsItemT;
386
389
  props.editActivityRequest(val.id, params)
387
- .then(() => {
390
+ .then((flag: any) => {
391
+ if (typeof flag === 'boolean' && !flag) {
392
+ return;
393
+ }
388
394
  message.success({
389
395
  content: t('meeting.submitReviewSuccess', [val.title]),
390
396
  });
@@ -404,7 +410,10 @@ const confirmDelete = () => {
404
410
  }
405
411
  dialogLoading.value = true;
406
412
  props.deleteActivityRequest(currentRow.value?.id)
407
- .then(() => {
413
+ .then((flag) => {
414
+ if (typeof flag === 'boolean' && !flag) {
415
+ return;
416
+ }
408
417
  message.success({
409
418
  content: t('meeting.deleteActivitySuccess', [currentRow.value?.title]),
410
419
  });
@@ -939,14 +948,13 @@ const deleteActions = computed<DialogActionT[]>(() => {
939
948
 
940
949
  .date-cell {
941
950
  height: 56px;
942
- width: 42px;
943
- padding: var(--o-gap-1);
951
+ width: 34px;
944
952
  position: relative;
945
953
  cursor: default !important;
946
954
 
947
955
  .date-cell-text {
948
956
  font-size: 14px;
949
- line-height: 36px;
957
+ line-height: 34px;
950
958
  border-radius: var(--activity-cell-radius);
951
959
  background-color: var(--o-color-control2-light);
952
960
  border: 1px solid transparent;
@@ -971,7 +979,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
971
979
  &::after {
972
980
  content: '';
973
981
  position: absolute;
974
- bottom: 2px;
982
+ bottom: 5px;
975
983
  left: 50%;
976
984
  transform: translateX(-50%);
977
985
  width: 8px;
@@ -1034,6 +1042,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1034
1042
  display: flex;
1035
1043
  align-items: center;
1036
1044
  justify-content: center;
1045
+ min-height: 600px;
1037
1046
  }
1038
1047
 
1039
1048
  .o-scroller {
@@ -286,6 +286,10 @@ const checkSelectedDay = (type: CalendarDataType, date: string) => {
286
286
  }
287
287
  return false;
288
288
  };
289
+
290
+ defineExpose({
291
+ refresh: getDateData,
292
+ });
289
293
  </script>
290
294
  <template>
291
295
  <div class="o-meeting-calendar">
@@ -372,7 +376,7 @@ const checkSelectedDay = (type: CalendarDataType, date: string) => {
372
376
  >
373
377
  <OOption v-for="t in groups" :value="t" :key="t">{{ t }}</OOption>
374
378
  </OSelect>
375
- <OTab v-model="tabType" :line="false">
379
+ <OTab v-model="tabType" :line="false" :max-show="9999">
376
380
  <OTabPane v-for="item in tabs" :key="item.value" :value="item.value">
377
381
  <template #nav>
378
382
  <OIcon>
@@ -822,6 +826,7 @@ const checkSelectedDay = (type: CalendarDataType, date: string) => {
822
826
 
823
827
  .o-select {
824
828
  display: none;
829
+ margin-bottom: var(--o-gap-2);
825
830
  @include respond('<=pad_v') {
826
831
  display: inline-flex;
827
832
  }
@@ -829,6 +834,7 @@ const checkSelectedDay = (type: CalendarDataType, date: string) => {
829
834
  display: flex;
830
835
  width: 100%;
831
836
  max-width: 100%;
837
+ margin-bottom: 0;
832
838
  }
833
839
  }
834
840
 
@@ -857,17 +863,16 @@ const checkSelectedDay = (type: CalendarDataType, date: string) => {
857
863
  .o-icon {
858
864
  display: none;
859
865
  }
860
- .o-tab-navs-wrap {
861
- height: 40px;
866
+ .o-tab-navs-container {
862
867
 
863
868
  .o-tab-nav {
864
- line-height: 2;
869
+ line-height: 32px;
865
870
  }
866
871
  }
867
872
  }
868
873
  @include respond('phone') {
869
- .o-tab-navs-wrap {
870
- height: auto;
874
+ .o-tab-nav {
875
+ line-height: 2;
871
876
  }
872
877
  }
873
878
 
@@ -45,7 +45,7 @@ const intervalTypeMax = computed(() => {
45
45
  return findLabelFromOptions(form.value.cycle_type, cycleTypeOptions.value, 'max');
46
46
  });
47
47
  const initForm: MeetingPostT = {
48
- is_record: false,
48
+ is_record: true,
49
49
  agenda: '',
50
50
  email_list: '',
51
51
  platform: 'WELINK',
@@ -265,15 +265,51 @@ const getPlatformOptions = async () => {
265
265
  };
266
266
 
267
267
  const emits = defineEmits(['confirm', 'cancel']);
268
+
269
+ const getPropData = () => {
270
+ if (!props.data) {
271
+ return {};
272
+ }
273
+ const {
274
+ start,
275
+ end,
276
+ is_cycle,
277
+ cycle_start_date,
278
+ cycle_end_date,
279
+ cycle_point,
280
+ cycle_interval,
281
+ cycle_start,
282
+ cycle_end,
283
+ } = props.data;
284
+ return {
285
+ ...props.data,
286
+ time: `${ start }-${ end }`,
287
+ ...(is_cycle
288
+ ? {
289
+ date_range: [cycle_start_date, cycle_end_date],
290
+ cycle_point: cycle_point?.map((v) => parseInt(v)) || [],
291
+ cycle_interval: cycle_interval || 1,
292
+ time: `${ cycle_start }-${ cycle_end }`,
293
+ start: cycle_start,
294
+ end: cycle_end,
295
+ }
296
+ : {}),
297
+ };
298
+ };
299
+
268
300
  watch(
269
301
  () => props.data,
270
302
  (data) => {
271
303
  if (data) {
272
- const sub = data?.cycle_sub?.find((v) => v.sub_id === props.subId) || {} as unknown as CycleSubItemT;
304
+ const propData = getPropData() as unknown as CycleSubItemT;
305
+ console.log(1, propData);
306
+ console.log(props.subId, propData.sub_id);
307
+ const sub = propData?.cycle_sub?.find((v) => v.sub_id === props.subId || propData.sub_id) || {} as unknown as CycleSubItemT;
308
+ console.log(2, sub);
273
309
  const { mid, date, start, end, sub_id } = sub;
274
310
  Object.assign(
275
311
  form.value,
276
- data,
312
+ propData,
277
313
  props.isSub
278
314
  ? {
279
315
  is_cycle: false,
@@ -285,6 +321,7 @@ watch(
285
321
  }
286
322
  : {},
287
323
  );
324
+ console.log(form.value);
288
325
  } else {
289
326
  const today = dayjs().format('YYYY-MM-DD');
290
327
  const now = dayjs().format('HH:mm');
@@ -373,6 +410,7 @@ const confirm = async () => {
373
410
  platform,
374
411
  is_cycle,
375
412
  } as MeetingPostT as unknown as any;
413
+ let flag = undefined;
376
414
  if (is_cycle) {
377
415
  params = {
378
416
  ...params,
@@ -401,7 +439,7 @@ const confirm = async () => {
401
439
  if (props.isSub) {
402
440
  const { mid, sub_id } = form.value;
403
441
  const { date, start, end } = params;
404
- await props?.editSubMeetingRequest(sub_id, {
442
+ flag = await props?.editSubMeetingRequest(sub_id, {
405
443
  mid,
406
444
  date,
407
445
  start,
@@ -416,17 +454,21 @@ const confirm = async () => {
416
454
  etherpad: _etherpad,
417
455
  ...data
418
456
  } = params;
419
- await props?.editMeetingRequest(props.data?.id as unknown as number, {
457
+ flag = await props?.editMeetingRequest(props.data?.id as unknown as number, {
420
458
  ...data,
421
459
  is_notify: true,
422
460
  });
423
461
  }
424
462
  } else {
425
- await props?.createMeetingRequest({
463
+ flag = await props?.createMeetingRequest({
426
464
  ...params,
427
465
  email_list: form.value.email_list.replaceAll(' ', ''),
428
466
  });
429
467
  }
468
+ // 如果返回的是boolean,只有true表示回调成功
469
+ if (typeof flag === 'boolean' && !flag) {
470
+ return;
471
+ }
430
472
  const msg = t('meeting.meetingHandleSuccess', [form.value.topic, type]);
431
473
  message.success({
432
474
  content: msg,
@@ -695,7 +737,7 @@ defineExpose({
695
737
  </OForm>
696
738
  <div class="form-btns" v-if="showBtns">
697
739
  <OButton color="primary" variant="solid" size="large" @click="confirm" :loading="loading">
698
- {{ isEdit ? t('common.save') : (bookText || t('meeting.book')) }}
740
+ {{ isEdit ? t('common.save') : (confirmText || t('meeting.book')) }}
699
741
  </OButton>
700
742
  <OButton color="primary" variant="outline" size="large" @click="cancel">{{ t('common.cancel') }}</OButton>
701
743
  </div>
@@ -22,7 +22,6 @@ import { computed, nextTick, onMounted, ref, onUnmounted, watch } from 'vue';
22
22
  import OMeetingDetail from './components/OMeetingDetail.vue';
23
23
  import { CalendarDataType, MeetingGroupType, MeetingItemT, PageParamsT } from './types.ts';
24
24
  import dayjs from 'dayjs';
25
- import IconMeeting from '~icons/meeting/icon-meet.svg';
26
25
  import { INTERVAL_DAY, INTERVAL_MONTH, INTERVAL_WEEK } from './config.ts';
27
26
  import { formatDate, getDateNumber } from './utils.ts';
28
27
  import { useMeetingConfig } from './composables/useMeetingConfig';
@@ -279,7 +278,10 @@ const confirmCancel = async () => {
279
278
  }
280
279
  try {
281
280
  dialogLoading.value = true;
282
- await props.deleteMeetingRequest(currentRow.value.id);
281
+ const flag = await props.deleteMeetingRequest(currentRow.value.id);
282
+ if (typeof flag === 'boolean' && !flag) {
283
+ return;
284
+ }
283
285
  cancelVisible.value = false;
284
286
  message.success({
285
287
  content: `${ t('meeting.meetingCancel', [currentRow.value.topic]) }`,
@@ -331,12 +333,13 @@ const confirmHandleItem = async () => {
331
333
  }
332
334
  if (handleDialogType.value === 'cancel') {
333
335
  try {
336
+ let flag = undefined;
334
337
  dialogLoading.value = true;
335
338
  if (handleType.value === 'single' && row.is_cycle) {
336
339
  if (!props.cancelSubMeetingRequest) {
337
340
  return;
338
341
  }
339
- await props.cancelSubMeetingRequest(row.sub_id);
342
+ flag = await props.cancelSubMeetingRequest(row.sub_id);
340
343
  message.success({
341
344
  content: `${ t('meeting.meetingCancel', [row.topic]) }`,
342
345
  });
@@ -344,11 +347,14 @@ const confirmHandleItem = async () => {
344
347
  if (!props.deleteMeetingRequest) {
345
348
  return;
346
349
  }
347
- await props.deleteMeetingRequest(row.id);
350
+ flag = await props.deleteMeetingRequest(row.id);
348
351
  message.success({
349
352
  content: `${ t('meeting.meetingCancel', [row.topic]) }`,
350
353
  });
351
354
  }
355
+ if (typeof flag === 'boolean' && !flag) {
356
+ return;
357
+ }
352
358
  cancelHandleItem();
353
359
  reloadAll.value = true;
354
360
  getList();
@@ -968,14 +974,13 @@ const cancelActions = computed<DialogActionT[]>(() => {
968
974
 
969
975
  .date-cell {
970
976
  height: 56px;
971
- width: 42px;
972
- padding: var(--o-gap-1);
977
+ width: 34px;
973
978
  position: relative;
974
979
  cursor: default !important;
975
980
 
976
981
  .date-cell-text {
977
982
  font-size: 14px;
978
- line-height: 36px;
983
+ line-height: 34px;
979
984
  border-radius: var(--meeting-cell-radius);
980
985
  background-color: var(--o-color-control2-light);
981
986
  border: 1px solid transparent;
@@ -1000,7 +1005,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
1000
1005
  &::after {
1001
1006
  content: '';
1002
1007
  position: absolute;
1003
- bottom: 2px;
1008
+ bottom: 5px;
1004
1009
  left: 50%;
1005
1010
  transform: translateX(-50%);
1006
1011
  width: 8px;
@@ -1057,6 +1062,7 @@ const cancelActions = computed<DialogActionT[]>(() => {
1057
1062
  display: flex;
1058
1063
  align-items: center;
1059
1064
  justify-content: center;
1065
+ min-height: 600px;
1060
1066
  }
1061
1067
 
1062
1068
 
@@ -200,7 +200,7 @@ onUnmounted(() => {
200
200
  />
201
201
  </div>
202
202
  <div class="info-wrapper">
203
- <OTab v-model="tab">
203
+ <OTab v-model="tab" :max-show="9999">
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">
@@ -261,7 +261,12 @@ onUnmounted(() => {
261
261
  <OMeetingPlaybackSubtitles
262
262
  :captions="captionsList"
263
263
  :trackIdx="trackIdx"
264
- :instance="playbackInstance" />
264
+ :instance="playbackInstance"
265
+ >
266
+ <template #empty>
267
+ <slot name="empty"></slot>
268
+ </template>
269
+ </OMeetingPlaybackSubtitles>
265
270
  </div>
266
271
  </div>
267
272
  </template>
@@ -319,8 +324,9 @@ onUnmounted(() => {
319
324
 
320
325
  .o-tab {
321
326
  --tab-nav-justify: flex-start;
322
- .o-tab-navs {
323
- justify-content: flex-start;
327
+
328
+ .o-tab-nav-list {
329
+ width: 100%;
324
330
  }
325
331
 
326
332
  .o-tab-nav {
@@ -254,7 +254,7 @@ onMounted(() => {
254
254
  </div>
255
255
  </OPopover>
256
256
  </div>
257
- <OTab v-model="tabType" @change="selectTab" :line="false">
257
+ <OTab v-model="tabType" @change="selectTab" :line="false" :max-show="9999">
258
258
  <OTabPane v-for="item in meetingTabs.slice(0, -1)" :key="item.value" :value="item.value">
259
259
  <template #nav>
260
260
  <OIcon>
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { OCollapse, OCollapseItem, ODivider, OIcon, OLink, OTag, useMessage } from '@opensig/opendesign';
2
+ import { isClient, OCollapse, OCollapseItem, ODivider, OIcon, OLink, OTag, useMessage } from '@opensig/opendesign';
3
3
  import OMeetingDetail from './OMeetingDetail.vue';
4
4
  import { computed, nextTick, ref, watch } from 'vue';
5
5
  import IconCopy from '~icons/meeting/icon-copy.svg';
@@ -44,29 +44,32 @@ const i18n = computed(() => {
44
44
 
45
45
  // -------------------- 监听尺寸变化 --------------------
46
46
  const meetInfoRef = ref<HTMLDivElement[]>();
47
- const resizeObserver = new ResizeObserver((entries) => {
48
- for (let entry of entries) {
49
- const { height } = entry.contentRect;
50
- entry.target.classList.remove('hidden-divider');
51
- if (height >= 30) {
52
- entry.target.classList.add('hidden-divider');
53
- }
54
- }
55
- });
47
+
56
48
 
57
49
  watch(
58
- () => props.list,
50
+ [() => props.list, () => isClient],
59
51
  () => {
60
52
  if (props.list.length === 1) {
61
53
  collapseNames.value = [props.list[0].id];
62
54
  } else {
63
55
  collapseNames.value = [];
64
56
  }
65
- nextTick(() => {
66
- meetInfoRef.value?.forEach((targetDiv) => {
67
- resizeObserver.observe(targetDiv);
57
+ if (isClient) {
58
+ nextTick(() => {
59
+ const resizeObserver = new ResizeObserver((entries) => {
60
+ for (let entry of entries) {
61
+ const { height } = entry.contentRect;
62
+ entry.target.classList.remove('hidden-divider');
63
+ if (height >= 30) {
64
+ entry.target.classList.add('hidden-divider');
65
+ }
66
+ }
67
+ });
68
+ meetInfoRef.value?.forEach((targetDiv) => {
69
+ resizeObserver!.observe(targetDiv);
70
+ });
68
71
  });
69
- });
72
+ }
70
73
  },
71
74
  );
72
75
 
@@ -187,7 +190,13 @@ const computedList = computed<any[]>(() => {
187
190
  <template v-if="item.activity_type">{{ item.activity_type }}</template>
188
191
  </div>
189
192
  </div>
190
- <OLink v-if="item.url" :href="item.url" target="_blank" class="jump-detail-link">
193
+ <OLink
194
+ :hover-underline="false"
195
+ v-if="item.url"
196
+ :href="item.url"
197
+ target="_blank"
198
+ class="jump-detail-link"
199
+ >
191
200
  <span>{{ i18n.LEARN_MORE }}</span>
192
201
  <template #suffix>
193
202
  <OIcon>
@@ -195,7 +204,13 @@ const computedList = computed<any[]>(() => {
195
204
  </OIcon>
196
205
  </template>
197
206
  </OLink>
198
- <OLink v-if="item.join_url" :href="item.join_url" target="_blank" class="jump-detail-link">
207
+ <OLink
208
+ :hover-underline="false"
209
+ v-if="item.join_url"
210
+ :href="item.join_url"
211
+ target="_blank"
212
+ class="jump-detail-link"
213
+ >
199
214
  <span>{{ i18n.JOIN_MEETING }}</span>
200
215
  <template #suffix>
201
216
  <OIcon>
@@ -203,7 +218,13 @@ const computedList = computed<any[]>(() => {
203
218
  </OIcon>
204
219
  </template>
205
220
  </OLink>
206
- <OLink v-if="item.content_url" :href="item.content_url" target="_blank" class="jump-detail-link">
221
+ <OLink
222
+ :hover-underline="false"
223
+ v-if="item.content_url"
224
+ :href="item.content_url"
225
+ target="_blank"
226
+ class="jump-detail-link"
227
+ >
207
228
  <span>{{ i18n.DETAILS }}</span>
208
229
  <template #suffix>
209
230
  <OIcon>
@@ -211,7 +232,13 @@ const computedList = computed<any[]>(() => {
211
232
  </OIcon>
212
233
  </template>
213
234
  </OLink>
214
- <OLink v-if="item.register_url" :href="item.register_url" target="_blank" class="jump-detail-link">
235
+ <OLink
236
+ :hover-underline="false"
237
+ v-if="item.register_url"
238
+ :href="item.register_url"
239
+ target="_blank"
240
+ class="jump-detail-link"
241
+ >
215
242
  <span>{{ i18n.SIGN }}</span>
216
243
  <template #suffix>
217
244
  <OIcon>
@@ -226,7 +253,8 @@ const computedList = computed<any[]>(() => {
226
253
  </template>
227
254
  <div class="calendar-info">
228
255
  <OMeetingDetail
229
- :show="collapseNames.includes(item.id)" :data="item"
256
+ :show="collapseNames.includes(item.id)"
257
+ :data="item"
230
258
  :ref="(insRef) => (detailRefs[index] = insRef)"
231
259
  from="home"
232
260
  />
@@ -241,6 +269,7 @@ const computedList = computed<any[]>(() => {
241
269
 
242
270
 
243
271
  &.is-empty {
272
+ min-height: 400px;
244
273
  height: 100%;
245
274
  display: flex;
246
275
  align-items: center;
@@ -264,6 +293,7 @@ const computedList = computed<any[]>(() => {
264
293
  .o-collapse-item {
265
294
  position: relative;
266
295
  border-top: none;
296
+ border-bottom: none;
267
297
 
268
298
  &::after {
269
299
  position: absolute;
@@ -353,6 +383,7 @@ const computedList = computed<any[]>(() => {
353
383
  display: inline-flex;
354
384
  opacity: 0;
355
385
  visibility: hidden;
386
+ color: var(--o-color-info1);
356
387
 
357
388
  &:hover {
358
389
  color: var(--o-color-primary1);
@@ -420,6 +451,7 @@ const computedList = computed<any[]>(() => {
420
451
  padding-left: calc(var(--icon-right) + var(--icon-size2));
421
452
  margin-top: var(--o-gap-2);
422
453
  color: var(--o-color-info2);
454
+ font-weight: 400;
423
455
  @include tip1;
424
456
 
425
457
  &:hover {
@@ -442,7 +474,7 @@ const computedList = computed<any[]>(() => {
442
474
  .meet-title {
443
475
  display: flex;
444
476
  align-items: center;
445
- width: calc(100% - 48px);
477
+ width: 100%;
446
478
  color: var(--o-color-info2);
447
479
  @include text2;
448
480
 
@@ -79,10 +79,10 @@ const removeTag = (val: number) => {
79
79
  </script>
80
80
 
81
81
  <template>
82
- <div class="calendar-selector" :class="!multiple && 'is-single'">
82
+ <div class="o-meeting-calendar-selector" :class="!multiple && 'is-single'">
83
83
  <ElSelect
84
84
  ref="selectorRef"
85
- popper-class="calendar-selector-popper"
85
+ popper-class="o-meeting-calendar-selector-popper"
86
86
  :placeholder="t('meeting.selectRepeatDate')"
87
87
  size="large"
88
88
  multiple
@@ -106,11 +106,11 @@ const removeTag = (val: number) => {
106
106
  </div>
107
107
  </template>
108
108
 
109
- <style scoped lang="scss">
110
- .calendar-selector {
109
+ <style lang="scss">
110
+ .o-meeting-calendar-selector {
111
111
  width: 100%;
112
112
 
113
- :deep(.el-select) {
113
+ .el-select {
114
114
  .el-select__placeholder {
115
115
  @include text1;
116
116
  }
@@ -134,7 +134,7 @@ const removeTag = (val: number) => {
134
134
  }
135
135
 
136
136
  &.is-single {
137
- :deep(.el-select) {
137
+ .el-select {
138
138
  .el-select__selection {
139
139
  margin-left: 0;
140
140
  }
@@ -154,8 +154,11 @@ const removeTag = (val: number) => {
154
154
  }
155
155
  </style>
156
156
  <style lang="scss">
157
- .calendar-selector-popper {
158
- padding: 0 24px;
157
+ .o-meeting-calendar-selector-popper {
158
+ --meeting-card-radius: var(--o-radius-xs);
159
+ --meeting-input-radius: var(--o-radius-xs);
160
+ --meeting-cell-radius: var(--o-radius-xs);
161
+ padding: 0 var(--o-gap-5);
159
162
 
160
163
  .el-select-dropdown__list {
161
164
  padding: 16px 0;
@@ -146,7 +146,7 @@ defineExpose({ copyInfo });
146
146
 
147
147
  </template>
148
148
 
149
- <style scoped lang="scss">
149
+ <style lang="scss">
150
150
  .o-meeting-detail {
151
151
  position: relative;
152
152
  .label-item {