@opendesign-plus-test/components 0.0.1-rc.51 → 0.0.1-rc.53

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 (73) hide show
  1. package/dist/chunk-OElCookieNotice.cjs.js +1 -1
  2. package/dist/chunk-OElCookieNotice.es.js +49 -69
  3. package/dist/components/OHeaderSearch.vue.d.ts +534 -814
  4. package/dist/components/OThemeSwitcher.vue.d.ts +2 -5
  5. package/dist/components/activity/index.d.ts +2 -2
  6. package/dist/components/meeting/OMeetingCalendar.vue.d.ts +3 -1
  7. package/dist/components/meeting/OMeetingPlayback.vue.d.ts +50 -1
  8. package/dist/components/meeting/components/OMeetingPlaybackSubtitles.vue.d.ts +16 -1
  9. package/dist/components/meeting/composables/useMeetingConfig.d.ts +1 -1
  10. package/dist/components/meeting/index.d.ts +17 -7
  11. package/dist/components/meeting/types.d.ts +1 -1
  12. package/dist/components.cjs.js +42 -42
  13. package/dist/components.css +1 -1
  14. package/dist/components.es.js +10590 -11551
  15. package/dist/index.d.ts +0 -1
  16. package/package.json +2 -4
  17. package/src/assets/styles/element-plus.scss +211 -0
  18. package/src/assets/svg-icons/icon-delete.svg +1 -5
  19. package/src/components/OHeaderSearch.vue +415 -437
  20. package/src/components/OThemeSwitcher.vue +51 -27
  21. package/src/components/activity/OActivityApproval.vue +10 -6
  22. package/src/components/activity/OActivityForm.vue +12 -6
  23. package/src/components/activity/{OMyActivityCalendar.vue → OActivityMyCalendar.vue} +59 -28
  24. package/src/components/activity/index.ts +4 -4
  25. package/src/components/events/OEventsApply.vue +2 -1
  26. package/src/components/events/OEventsCalendar.vue +7 -5
  27. package/src/components/events/OEventsList.vue +6 -4
  28. package/src/components/meeting/OMeetingCalendar.vue +26 -18
  29. package/src/components/meeting/OMeetingForm.vue +61 -17
  30. package/src/components/meeting/{OMyMeetingCalendar.vue → OMeetingMyCalendar.vue} +90 -52
  31. package/src/components/meeting/OMeetingPlayback.vue +42 -12
  32. package/src/components/meeting/{OSigMeetingCalendar.vue → OMeetingSigCalendar.vue} +7 -4
  33. package/src/components/meeting/components/OMeetingCalendarList.vue +60 -24
  34. package/src/components/meeting/components/OMeetingCalendarSelector.vue +12 -9
  35. package/src/components/meeting/components/OMeetingDetail.vue +1 -1
  36. package/src/components/meeting/components/OMeetingPlaybackSubtitles.vue +17 -13
  37. package/src/components/meeting/components/OMeetingPlaybackVideo.vue +6 -6
  38. package/src/components/meeting/components/{OSigMeetingAside.vue → OMeetingSigAside.vue} +1 -1
  39. package/src/components/meeting/composables/useMeetingConfig.ts +5 -5
  40. package/src/components/meeting/config.ts +1 -1
  41. package/src/components/meeting/index.ts +8 -8
  42. package/src/components/meeting/types.ts +1 -1
  43. package/src/i18n/en.ts +2 -12
  44. package/src/i18n/zh.ts +1 -11
  45. package/src/index.ts +0 -1
  46. package/vite.config.ts +1 -5
  47. package/dist/components/search/OSearchInput.vue.d.ts +0 -1003
  48. package/dist/components/search/composables/useImageSearch.d.ts +0 -48
  49. package/dist/components/search/composables/useKeywordHighlight.d.ts +0 -2
  50. package/dist/components/search/composables/useSearchHistory.d.ts +0 -14
  51. package/dist/components/search/index.d.ts +0 -590
  52. package/dist/components/search/internal/HighlightText.vue.d.ts +0 -9
  53. package/dist/components/search/internal/SearchImageInput.vue.d.ts +0 -716
  54. package/dist/components/search/internal/SearchPanel.vue.d.ts +0 -100
  55. package/dist/components/search/types.d.ts +0 -20
  56. package/src/assets/svg-icons/icon-delete-hover.svg +0 -4
  57. package/src/assets/svg-icons/icon-image-close.svg +0 -4
  58. package/src/assets/svg-icons/icon-image-upload.svg +0 -3
  59. package/src/assets/svg-icons/icon-image-zoomin.svg +0 -3
  60. package/src/assets/svg-icons/icon-refresh.svg +0 -3
  61. package/src/components/search/OSearchInput.vue +0 -463
  62. package/src/components/search/composables/useImageSearch.ts +0 -157
  63. package/src/components/search/composables/useKeywordHighlight.ts +0 -30
  64. package/src/components/search/composables/useSearchHistory.ts +0 -75
  65. package/src/components/search/index.ts +0 -23
  66. package/src/components/search/internal/HighlightText.vue +0 -37
  67. package/src/components/search/internal/SearchImageInput.vue +0 -488
  68. package/src/components/search/internal/SearchPanel.vue +0 -430
  69. package/src/components/search/types.ts +0 -25
  70. /package/dist/components/activity/{OMyActivityCalendar.vue.d.ts → OActivityMyCalendar.vue.d.ts} +0 -0
  71. /package/dist/components/meeting/{OMyMeetingCalendar.vue.d.ts → OMeetingMyCalendar.vue.d.ts} +0 -0
  72. /package/dist/components/meeting/{OSigMeetingCalendar.vue.d.ts → OMeetingSigCalendar.vue.d.ts} +0 -0
  73. /package/dist/components/meeting/components/{OSigMeetingAside.vue.d.ts → OMeetingSigAside.vue.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
1
  <script lang="ts" setup>
2
- import { Component, computed } from 'vue';
3
- import { OIcon, OSwitch } from '@opensig/opendesign';
2
+ import { computed } from 'vue';
3
+ import { OIcon, OSwitch, OIconSun, OIconMoon } from '@opensig/opendesign';
4
4
  import { useScreen } from '@opendesign-plus/composables';
5
5
 
6
6
  import IconSun from '~icons/components/icon-sun.svg';
@@ -11,8 +11,7 @@ export interface OThemeSwitcherPropsT {
11
11
  type?: 'auto' | 'common' | 'mobile';
12
12
  lightValue?: string;
13
13
  darkValue?: string;
14
- lightIcon?: Component;
15
- darkIcon?: Component;
14
+ disabled?: boolean;
16
15
  }
17
16
 
18
17
  export interface OThemeSwitcherEmitsT {
@@ -25,8 +24,7 @@ const props = withDefaults(defineProps<OThemeSwitcherPropsT>(), {
25
24
  type: 'auto',
26
25
  lightValue: 'light',
27
26
  darkValue: 'dark',
28
- lightIcon: IconSun,
29
- darkIcon: IconMoon,
27
+ disabled: false,
30
28
  });
31
29
 
32
30
  const emit = defineEmits<OThemeSwitcherEmitsT>();
@@ -37,7 +35,7 @@ const switchVal = computed({
37
35
  get() {
38
36
  return props.theme;
39
37
  },
40
- set(val) {
38
+ set(val: string) {
41
39
  emit('update:theme', val);
42
40
  emit('change', val);
43
41
  },
@@ -48,13 +46,17 @@ const isCommon = computed(() => {
48
46
  });
49
47
 
50
48
  const toggleTheme = () => {
49
+ if (props.disabled) {
50
+ return;
51
+ }
52
+
51
53
  switchVal.value = switchVal.value === props.lightValue ? props.darkValue : props.lightValue;
52
54
  };
53
55
  </script>
54
56
 
55
57
  <template>
56
58
  <div class="o-theme-switcher">
57
- <div v-if="isCommon" class="o-theme-switcher-common" @click="toggleTheme">
59
+ <div v-if="isCommon" class="o-theme-switcher-common" :class="{ disabled }" @click="toggleTheme">
58
60
  <OIcon class="o-theme-icon">
59
61
  <IconMoon v-if="switchVal === lightValue" />
60
62
  <IconSun v-else />
@@ -62,16 +64,18 @@ const toggleTheme = () => {
62
64
  </div>
63
65
 
64
66
  <div v-else class="o-theme-switcher-mobile">
65
- <OSwitch v-model="switchVal" class="o-theme-switch" :checked-value="darkValue" :unchecked-value="lightValue">
66
- <template #on>
67
- <OIcon class="o-theme-icon">
68
- <IconSun />
69
- </OIcon>
67
+ <OSwitch v-model="switchVal" class="o-theme-switch" :checked-value="lightValue" :unchecked-value="darkValue" :disabled="disabled">
68
+ <template #inactive>
69
+ <OIconMoon />
70
+ </template>
71
+ <template #active>
72
+ <OIconSun />
70
73
  </template>
71
74
  <template #off>
72
- <OIcon class="o-theme-icon">
73
- <IconMoon />
74
- </OIcon>
75
+ <OIconSun />
76
+ </template>
77
+ <template #on>
78
+ <OIconMoon />
75
79
  </template>
76
80
  </OSwitch>
77
81
  </div>
@@ -80,29 +84,49 @@ const toggleTheme = () => {
80
84
 
81
85
  <style lang="scss" scoped>
82
86
  .o-theme-switcher-common {
83
- cursor: pointer;
84
- width: 20px;
85
- height: 20px;
86
87
  display: flex;
87
88
  align-items: center;
89
+ width: var(--o-icon_size-m);
90
+ height: var(--o-icon_size-m);
91
+ font-size: var(--o-icon_size-m);
92
+
93
+ @include respond-to('pad_h') {
94
+ width: var(--o-icon_size-s);
95
+ height: var(--o-icon_size-s);
96
+ font-size: var(--o-icon_size-s);
97
+ }
98
+ }
99
+
100
+ .o-theme-switcher-common:not(.disabled) {
101
+ cursor: pointer;
88
102
 
89
103
  .o-theme-icon {
90
- font-size: 24px;
91
- color: var(--o-color-info1);
104
+ color: var(--o-color-info2);
92
105
 
93
106
  @include hover {
94
- color: var(--o-color-primary1);
107
+ color: var(--o-color-primary2);
108
+ background-color: var(--o-color-control2-light);
109
+ border-radius: var(--o-radius-xs);
110
+ }
111
+
112
+ &:active {
113
+ color: var(--o-color-primary3);
95
114
  }
96
115
  }
97
116
  }
98
117
 
118
+ .o-theme-switcher-common.disabled {
119
+ cursor: not-allowed;
120
+
121
+ .o-theme-icon {
122
+ color: var(--o-color-info4);
123
+ }
124
+ }
125
+
99
126
  .o-theme-switcher-mobile {
100
127
  .o-theme-switch {
101
- background-color: var(--o-color-control1-light);
102
-
103
- .o-theme-icon {
104
- color: var(--o-color-white);
105
- }
128
+ --switch-handler-color: var(--o-color-white);
129
+ --switch-color: var(--o-color-info4);
106
130
  }
107
131
  }
108
132
  </style>
@@ -569,6 +569,8 @@ const reviewActions = computed<DialogActionT[]>(() => {
569
569
 
570
570
  <style lang="scss">
571
571
  .o-activity-table {
572
+ --activity-card-radius: var(--o-radius-xs);
573
+ --activity-input-radius: var(--o-radius-xs);
572
574
  .table-wrapper {
573
575
  .el-table {
574
576
  border-top: none;
@@ -695,7 +697,7 @@ const reviewActions = computed<DialogActionT[]>(() => {
695
697
  @include text1;
696
698
 
697
699
  .el-table__header-wrapper {
698
- border-radius: 12px 12px 0 0;
700
+ border-radius: var(--activity-card-radius) var(--activity-card-radius) 0 0;
699
701
 
700
702
  .el-table__cell {
701
703
  padding: 12px 0 11px;
@@ -725,7 +727,7 @@ const reviewActions = computed<DialogActionT[]>(() => {
725
727
  }
726
728
 
727
729
  .o-textarea {
728
- --_box-radius: 16px;
730
+ --_box-radius: var(--activity-input-radius);
729
731
  }
730
732
 
731
733
  .dialog-footer {
@@ -756,7 +758,7 @@ const reviewActions = computed<DialogActionT[]>(() => {
756
758
 
757
759
  .o-collapse {
758
760
  padding: 0;
759
- border-radius: 12px;
761
+ border-radius: var(--activity-card-radius);
760
762
 
761
763
  .o-collapse-item {
762
764
  --collapse-item-header-padding: 8px 0 12px;
@@ -826,11 +828,12 @@ const reviewActions = computed<DialogActionT[]>(() => {
826
828
 
827
829
  <style lang="scss">
828
830
  .handle-dialog-approval {
831
+ --activity-card-radius: var(--o-radius-xs);
829
832
  --dlg-width: 450px;
830
- --dlg-radius: var(--o-radius-xs);
833
+ --dlg-radius: var(--activity-card-radius);
831
834
  @include respond('<=pad_v') {
832
835
  width: 100%;
833
- --dlg-radius: var(--o-radius-xs) var(--o-radius-xs) 0 0;
836
+ --dlg-radius: var(--activity-card-radius) var(--activity-card-radius) 0 0;
834
837
  }
835
838
  }
836
839
 
@@ -841,6 +844,7 @@ const reviewActions = computed<DialogActionT[]>(() => {
841
844
  }
842
845
  .review-dialog {
843
846
  --dlg-width: 690px;
847
+ --activity-input-radius: var(--o-radius-xs);
844
848
 
845
849
  .o-form {
846
850
  width: 450px;
@@ -852,7 +856,7 @@ const reviewActions = computed<DialogActionT[]>(() => {
852
856
 
853
857
  .o-textarea {
854
858
  width: 100%;
855
- --_box-radius: var(--o-radius-xs);
859
+ --_box-radius: var(--activity-input-radius);
856
860
  }
857
861
  }
858
862
 
@@ -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()]),
@@ -444,6 +448,8 @@ defineExpose({
444
448
 
445
449
  <style lang="scss">
446
450
  .o-activity-form {
451
+ --activity-card-radius: var(--o-radius-xs);
452
+ --activity-input-radius: var(--o-radius-xs);
447
453
  .form-wrapper {
448
454
  & > .o-form-item {
449
455
  max-width: 620px;
@@ -480,7 +486,7 @@ defineExpose({
480
486
  }
481
487
 
482
488
  .o-textarea {
483
- --_box-radius: var(--o-radius-xs);
489
+ --_box-radius: var(--activity-input-radius);
484
490
  width: 100%;
485
491
  }
486
492
 
@@ -489,7 +495,7 @@ defineExpose({
489
495
  }
490
496
 
491
497
  .el-input__wrapper {
492
- border-radius: var(--o-radius-xs);
498
+ border-radius: var(--activity-input-radius);
493
499
  }
494
500
 
495
501
  .time-config {
@@ -497,7 +503,7 @@ defineExpose({
497
503
  background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent);
498
504
  padding: var(--o-gap-5);
499
505
  padding-right: calc(var(--o-gap-4) + var(--o-gap-5));
500
- border-radius: var(--o-radius-xs);
506
+ border-radius: var(--activity-card-radius);
501
507
  @include respond('<=pad_v') {
502
508
  padding: var(--o-gap-4);
503
509
  }
@@ -21,7 +21,6 @@ import dayjs from 'dayjs';
21
21
  import { useDebounceFn } from '@vueuse/core';
22
22
 
23
23
  import IconCopy from '~icons/meeting/icon-copy.svg';
24
- import IconEvent from '~icons/meeting/icon-event.svg';
25
24
 
26
25
  import type { ActivityItemT, MyActivityCalendarPropsT, ParamsItemT } from './types';
27
26
  import { useScreen } from '@opendesign-plus/composables';
@@ -30,10 +29,12 @@ import { useActivityConfig } from './composables/useActivityConfig';
30
29
  import { CalendarDataType, MeetingItemT, PageParamsT } from '../meeting/types';
31
30
  import OMeetingDetail from '@/components/meeting/components/OMeetingDetail.vue';
32
31
  import { useI18n, Locales } from '@/i18n';
32
+ import { useMeetingConfig } from '@/components/meeting/composables/useMeetingConfig.ts';
33
33
 
34
34
  const { t, locale } = useI18n();
35
35
  const isZh = computed(() => locale.value === Locales.ZH);
36
36
  const { statusMap, activityTypeMap } = useActivityConfig();
37
+ const { getConfig } = useMeetingConfig();
37
38
 
38
39
  const formatMonthYear = (date: string | Date) => {
39
40
  const d = dayjs(date || new Date());
@@ -328,7 +329,10 @@ const confirm = () => {
328
329
  }
329
330
  dialogLoading.value = true;
330
331
  props.revokeActivityRequest(currentRow.value?.id)
331
- .then(() => {
332
+ .then((flag: any) => {
333
+ if (typeof flag === 'boolean' && !flag) {
334
+ return;
335
+ }
332
336
  message.success({
333
337
  content: t('meeting.revokeActivitySuccess', [currentRow.value?.title]),
334
338
  });
@@ -383,7 +387,10 @@ const handleSubmitReviewItem = (val: ActivityItemT) => {
383
387
  is_publish: 'true',
384
388
  } as ParamsItemT;
385
389
  props.editActivityRequest(val.id, params)
386
- .then(() => {
390
+ .then((flag: any) => {
391
+ if (typeof flag === 'boolean' && !flag) {
392
+ return;
393
+ }
387
394
  message.success({
388
395
  content: t('meeting.submitReviewSuccess', [val.title]),
389
396
  });
@@ -403,7 +410,10 @@ const confirmDelete = () => {
403
410
  }
404
411
  dialogLoading.value = true;
405
412
  props.deleteActivityRequest(currentRow.value?.id)
406
- .then(() => {
413
+ .then((flag) => {
414
+ if (typeof flag === 'boolean' && !flag) {
415
+ return;
416
+ }
407
417
  message.success({
408
418
  content: t('meeting.deleteActivitySuccess', [currentRow.value?.title]),
409
419
  });
@@ -545,6 +555,9 @@ const deleteActions = computed<DialogActionT[]>(() => {
545
555
  clickable: allDateList.includes(data.day),
546
556
  approved: calcIfApproved(data.day),
547
557
  }"
558
+ :style="{
559
+ '--dot-bg': `${getConfig(CalendarDataType.EVENTS, 'color')}`
560
+ }"
548
561
  >
549
562
  <div class="date-cell-text">
550
563
  {{ Number(data.day.split('-')[2]) }}
@@ -602,9 +615,14 @@ const deleteActions = computed<DialogActionT[]>(() => {
602
615
  >
603
616
  <template #title>
604
617
  <div class="item-header-left">
605
- <div class="act-icon">
618
+ <div
619
+ class="act-icon"
620
+ :style="{
621
+ backgroundColor: `${getConfig(CalendarDataType.EVENTS, 'color')}`
622
+ }"
623
+ >
606
624
  <OIcon>
607
- <IconEvent />
625
+ <component :is="getConfig(CalendarDataType.EVENTS, 'icon')" />
608
626
  </OIcon>
609
627
  </div>
610
628
  <div class="header-info">
@@ -634,7 +652,12 @@ const deleteActions = computed<DialogActionT[]>(() => {
634
652
  </div>
635
653
  <div class="item-header-right"
636
654
  v-if="row.content_url && !row.is_delete && [3,4,5,6].includes(row.status)">
637
- <OLink v-if="row.content_url" :href="row.content_url" target="_blank" rel="noopener noreferrer">
655
+ <OLink
656
+ :hover-underline="false"
657
+ v-if="row.content_url"
658
+ :href="row.content_url"
659
+ target="_blank"
660
+ rel="noopener noreferrer">
638
661
  {{ t('meeting.activityDetail') }}
639
662
  <template #suffix>
640
663
  <OIcon>
@@ -643,6 +666,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
643
666
  </template>
644
667
  </OLink>
645
668
  <OLink
669
+ :hover-underline="false"
646
670
  v-if="
647
671
  row.register_url && (
648
672
  row.status === 3 ||
@@ -735,6 +759,8 @@ const deleteActions = computed<DialogActionT[]>(() => {
735
759
  <style lang="scss">
736
760
 
737
761
  .o-my-activity-calendar {
762
+ --activity-card-radius: var(--o-radius-xs);
763
+ --activity-cell-radius: var(--o-radius-xs);
738
764
  height: 100%;
739
765
  display: flex;
740
766
  flex-direction: column;
@@ -853,9 +879,9 @@ const deleteActions = computed<DialogActionT[]>(() => {
853
879
 
854
880
  .el-calendar {
855
881
  min-height: 460px;
856
- height: calc(100% - 54px);
882
+ height: 100%;
857
883
  background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent);
858
- border-radius: var(--o-radius-xs);
884
+ border-radius: var(--activity-card-radius);
859
885
 
860
886
  .el-calendar__header {
861
887
  border-bottom: 1px solid var(--o-color-control4);
@@ -884,6 +910,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
884
910
 
885
911
  .el-calendar__body {
886
912
  .el-calendar-table {
913
+ display: table;
887
914
  width: 100%;
888
915
 
889
916
  th {
@@ -921,15 +948,14 @@ const deleteActions = computed<DialogActionT[]>(() => {
921
948
 
922
949
  .date-cell {
923
950
  height: 56px;
924
- width: 42px;
925
- padding: var(--o-gap-1);
951
+ width: 34px;
926
952
  position: relative;
927
953
  cursor: default !important;
928
954
 
929
955
  .date-cell-text {
930
956
  font-size: 14px;
931
- line-height: 36px;
932
- border-radius: var(--o-radius-xs);
957
+ line-height: 34px;
958
+ border-radius: var(--activity-cell-radius);
933
959
  background-color: var(--o-color-control2-light);
934
960
  border: 1px solid transparent;
935
961
  }
@@ -953,7 +979,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
953
979
  &::after {
954
980
  content: '';
955
981
  position: absolute;
956
- bottom: 2px;
982
+ bottom: 5px;
957
983
  left: 50%;
958
984
  transform: translateX(-50%);
959
985
  width: 8px;
@@ -981,7 +1007,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
981
1007
  }
982
1008
 
983
1009
  &.approved::after {
984
- background-color: rgba(var(--o-cyan-6));
1010
+ background-color: var(--dot-bg);
985
1011
  }
986
1012
 
987
1013
  &.expired::after {
@@ -1016,6 +1042,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1016
1042
  display: flex;
1017
1043
  align-items: center;
1018
1044
  justify-content: center;
1045
+ min-height: 600px;
1019
1046
  }
1020
1047
 
1021
1048
  .o-scroller {
@@ -1194,18 +1221,14 @@ const deleteActions = computed<DialogActionT[]>(() => {
1194
1221
  }
1195
1222
 
1196
1223
  .height-placeholder {
1197
- height: 0;
1198
- transition: margin var(--o-easing-standard) var(--o-duration-s);
1199
- }
1200
-
1201
- .o-collapse-item-expanded + .height-placeholder {
1202
1224
  height: var(--o-gap-4);
1203
1225
  }
1204
1226
 
1205
1227
  .o-collapse-item {
1206
1228
  padding: var(--o-gap-4) var(--o-gap-5);
1229
+ padding-bottom: calc(var(--o-gap-5) - var(--o-gap-4));
1207
1230
  border-top: none;
1208
- border-radius: var(--o-radius-xs);
1231
+ border-radius: var(--activity-card-radius);
1209
1232
  transition: margin var(--o-easing-standard) var(--o-duration-s);
1210
1233
  --copy-display: none;
1211
1234
  --icon-size: 24px;
@@ -1214,6 +1237,9 @@ const deleteActions = computed<DialogActionT[]>(() => {
1214
1237
  }
1215
1238
 
1216
1239
  &:hover {
1240
+ .title-text {
1241
+ color: var(--o-color-primary1);
1242
+ }
1217
1243
  @include respond('>pad_v') {
1218
1244
  --copy-display: inline-flex;
1219
1245
  }
@@ -1224,19 +1250,20 @@ const deleteActions = computed<DialogActionT[]>(() => {
1224
1250
  }
1225
1251
 
1226
1252
  &.o-collapse-item-expanded {
1253
+ border-bottom: none;
1254
+ background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent);
1227
1255
  @include respond('<=pad_v') {
1228
1256
  --copy-display: inline-flex;
1229
1257
  }
1230
- }
1231
-
1232
1258
 
1233
- &.o-collapse-item-expanded {
1234
- background-color: color-mix(in srgb, var(--o-color-control2-light) 40%, transparent);
1259
+ .o-collapse-item-header {
1260
+ border-bottom: 1px solid var(--o-color-control4);
1261
+ }
1235
1262
  }
1236
1263
  }
1237
1264
 
1238
1265
  .o-collapse-item-header {
1239
- border-bottom: 1px solid var(--o-color-control4);
1266
+ border-bottom: none;
1240
1267
  padding-top: 0;
1241
1268
  padding-bottom: var(--o-gap-4);
1242
1269
  display: flex;
@@ -1325,7 +1352,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1325
1352
 
1326
1353
  .o-tag {
1327
1354
  margin-left: 8px;
1328
- --tag-radius: 4px;
1355
+ --tag-radius: var(--activity-cell-radius);
1329
1356
  font-weight: 500;
1330
1357
  padding: 0 8px;
1331
1358
  height: 24px;
@@ -1368,6 +1395,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1368
1395
  color: var(--o-color-info3);
1369
1396
  display: flex;
1370
1397
  align-items: center;
1398
+ font-weight: 400;
1371
1399
  @include tip1;
1372
1400
 
1373
1401
  .date-range {
@@ -1386,6 +1414,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1386
1414
  gap: var(--o-gap-4);
1387
1415
  margin-top: var(--o-gap-2);
1388
1416
  width: 100%;
1417
+ font-weight: 400;
1389
1418
 
1390
1419
  .o-link {
1391
1420
  font-size: 14px;
@@ -1409,6 +1438,7 @@ const deleteActions = computed<DialogActionT[]>(() => {
1409
1438
  height: 18px;
1410
1439
  width: 18px;
1411
1440
  display: var(--copy-display);
1441
+ color: var(--o-color-info1);
1412
1442
  @include respond('phone') {
1413
1443
  bottom: var(--o-gap-2);
1414
1444
  transform: revert;
@@ -1483,8 +1513,9 @@ const deleteActions = computed<DialogActionT[]>(() => {
1483
1513
 
1484
1514
  <style lang="scss">
1485
1515
  .handle-dialog-active {
1516
+ --activity-card-radius: var(--o-radius-xs);
1486
1517
  width: 450px;
1487
- --dlg-radius: var(--o-radius-xs);
1518
+ --dlg-radius: var(--activity-card-radius);
1488
1519
 
1489
1520
  .o-dlg-header {
1490
1521
  margin-bottom: var(--o-gap-5);
@@ -1,6 +1,6 @@
1
1
  import _OActivityForm from './OActivityForm.vue';
2
2
  import _OActivityApproval from './OActivityApproval.vue';
3
- import _OMyActivityCalendar from './OMyActivityCalendar.vue';
3
+ import _OActivityMyCalendar from './OActivityMyCalendar.vue';
4
4
  import type { App } from 'vue';
5
5
 
6
6
 
@@ -14,11 +14,11 @@ const OActivityApproval = Object.assign(_OActivityApproval, {
14
14
  app.component('OActivityApproval', _OActivityApproval);
15
15
  },
16
16
  });
17
- const OMyActivityCalendar = Object.assign(_OMyActivityCalendar, {
17
+ const OActivityMyCalendar = Object.assign(_OActivityMyCalendar, {
18
18
  install(app: App) {
19
- app.component('OMyActivityCalendar', _OMyActivityCalendar);
19
+ app.component('OActivityMyCalendar', OActivityMyCalendar);
20
20
  },
21
21
  });
22
22
 
23
- export { OActivityForm, OActivityApproval, OMyActivityCalendar };
23
+ export { OActivityForm, OActivityApproval, OActivityMyCalendar };
24
24
  export * from './types';
@@ -67,6 +67,7 @@ defineProps<EventsApplyPropsT>();
67
67
 
68
68
  <style lang="scss">
69
69
  .o-events-apply {
70
+ --events-card-radius: var(--o-radius-xs);
70
71
  width: 100%;
71
72
  // 移动端时间线序号
72
73
  .timeline-number {
@@ -126,7 +127,7 @@ defineProps<EventsApplyPropsT>();
126
127
 
127
128
  .step-item {
128
129
  background: var(--o-color-fill2);
129
- border-radius: var(--o-radius-xs);
130
+ border-radius: var(--events-card-radius);
130
131
  display: flex;
131
132
  flex-direction: column; // 垂直排列子元素
132
133
  --idx-size: 20px;
@@ -236,9 +236,11 @@ const getIcon = (item: CalendarItemT) => {
236
236
 
237
237
  <style lang="scss">
238
238
  .o-events-calendar {
239
+ --events-card-radius: var(--o-radius-xs);
240
+ --events-name-radius: var(--o-radius-xs);
239
241
  .month-list {
240
242
  display: flex;
241
- border-radius: var(--o-radius_control-l) var(--o-radius_control-l) 0 0;
243
+ border-radius: var(--events-card-radius) var(--events-card-radius) 0 0;
242
244
  background-color: var(--o-color-control2-light);
243
245
  color: var(--o-color-info1);
244
246
 
@@ -259,12 +261,12 @@ const getIcon = (item: CalendarItemT) => {
259
261
 
260
262
  .o-collapse {
261
263
  --collapse-padding: 0;
262
- --collapse-radius: 0 0 var(--o-radius_control-l) var(--o-radius_control-l);
264
+ --collapse-radius: 0 0 var(--events-card-radius) var(--events-card-radius);
263
265
  @include respond('pad_v') {
264
- --collapse-radius: var(--o-radius_control-l);
266
+ --collapse-radius: var(--events-card-radius);
265
267
  }
266
268
  @include respond('phone') {
267
- --collapse-radius: var(--o-radius_control-l);
269
+ --collapse-radius: var(--events-card-radius);
268
270
  }
269
271
 
270
272
  .o-collapse-item {
@@ -493,7 +495,7 @@ const getIcon = (item: CalendarItemT) => {
493
495
  color: var(--o-color-info1);
494
496
  min-height: 32px;
495
497
  padding: 2px var(--o-gap-2);
496
- border-radius: 4px;
498
+ border-radius: var(--events-name-radius);
497
499
  word-break: normal;
498
500
  overflow-wrap: anywhere;
499
501
  background: linear-gradient(to right, rgba(var(--bg-color), 0.06) 0%, rgba(var(--bg-color), 0.2) 100%), var(--o-color-fill2); // 底层实色背景遮住分割线
@@ -186,13 +186,15 @@ const list = computed(() => {
186
186
 
187
187
  <style lang="scss">
188
188
  .o-events-list {
189
+ --events-card-radius: var(--o-radius-xs);
190
+ --events-tag-radius: var(--o-radius-xs);
189
191
  .filter-wrapper {
190
192
  display: flex;
191
193
  align-items: center;
192
194
  flex-wrap: wrap;
193
195
  justify-content: space-between;
194
196
  background-color: var(--o-color-fill2);
195
- border-radius: var(--o-radius-xs);
197
+ border-radius: var(--events-card-radius);
196
198
  padding: var(--o-gap-5) var(--o-gap-6);
197
199
  gap: var(--o-gap-3) var(--o-gap-2);
198
200
  @include text1;
@@ -221,7 +223,7 @@ const list = computed(() => {
221
223
  .o-toggle {
222
224
  --toggle-size: 32px;
223
225
  --toggle-padding: 3px 15px;
224
- --toggle-radius: 4px;
226
+ --toggle-radius: var(--events-tag-radius);
225
227
  max-height: 32px;
226
228
  --toggle-bg-color: var(--o-color-fill1);
227
229
  --toggle-bg-color-hover: var(--o-color-control2-light);
@@ -316,7 +318,7 @@ const list = computed(() => {
316
318
  position: absolute;
317
319
  top: var(--o-gap-3);
318
320
  right: var(--o-gap-3);
319
- border-radius: var(--o-radius-xs);
321
+ border-radius: var(--events-tag-radius);
320
322
  @include respond('<=pad_v') {
321
323
  --tag-padding: var(--o-gap-1);
322
324
  }
@@ -368,7 +370,7 @@ const list = computed(() => {
368
370
  }
369
371
 
370
372
  .event-card {
371
- border-radius: var(--o-radius-xs);
373
+ border-radius: var(--events-card-radius);
372
374
  color: rgb(var(--o-white));
373
375
  background-size: cover;
374
376
  background-repeat: no-repeat;