@opendesign-plus-test/components 0.0.1-rc.70 → 0.0.1-rc.71

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendesign-plus-test/components",
3
- "version": "0.0.1-rc.70",
3
+ "version": "0.0.1-rc.71",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -1,7 +1,8 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, nextTick, onMounted, ref, watch } from 'vue';
3
3
  import {
4
- isClient, OFigure,
4
+ isClient,
5
+ OFigure,
5
6
  OIcon,
6
7
  OIconChevronLeft,
7
8
  OIconChevronRight,
@@ -17,7 +18,7 @@ import OMeetingCalendarList from './components/OMeetingCalendarList.vue';
17
18
  import IconEvent from '~icons/meeting/icon-event.svg';
18
19
  import IconSummit from '~icons/meeting/icon-summit.svg';
19
20
  import IconMeeting from '~icons/meeting/icon-meet.svg';
20
- import emptyImg from '@/assets/meeting/empty.png';
21
+ import emptyDefaultImg from '@/assets/meeting/empty.png';
21
22
  import { Locales } from '@/i18n';
22
23
  import { useMeetingConfig } from './composables/useMeetingConfig';
23
24
  import {
@@ -42,13 +43,11 @@ const props = withDefaults(defineProps<MeetingCalendarPropsT>(), {
42
43
  const { t, locale, meetingTabs, getConfig } = useMeetingConfig();
43
44
  const isEn = computed(() => locale.value === Locales.EN);
44
45
 
45
- const latestDay = ref<string>('');
46
46
  const dateList = ref<string[]>([]);
47
47
  const summitData = ref<SummitItemT[]>([]);
48
48
  const summitDates = ref<string[]>([]);
49
49
  const eventsData = ref<MeetingEventsItemT[]>([]);
50
50
  const eventsDates = ref<string[]>([]);
51
- const allDates = ref<string[]>([]);
52
51
  const meetingData = ref<MeetingItemT[]>([]);
53
52
  const limitTime = '2021-01-01';
54
53
  const tabType = ref<CalendarDataType>(CalendarDataType.ALL);
@@ -168,25 +167,28 @@ const getDateData = async (day?: string) => {
168
167
  getActivityData(date);
169
168
  getDateList(date);
170
169
 
171
- allDates.value = [...new Set([...dateList.value, ...summitDates.value, ...eventsDates.value])]
172
- .flat()
173
- .sort((a: string, b: string) => dayjs(a).isAfter(dayjs(b)) ? 1 : -1);
174
- if (!day) {
175
- if (!allDates.value.length) {
176
- latestDay.value = formatDate(new Date());
177
- } else {
178
- let find = [...allDates.value].reverse().find((v) => dayjs().isAfter(dayjs(v)));
179
- if (!find) {
180
- find = allDates.value.find((v) => dayjs(v).isAfter(dayjs()));
181
- }
182
- latestDay.value = formatDate(find);
183
- }
184
- }
185
170
  paramGetDaysData({
186
171
  date: date,
187
172
  type: tabType.value,
188
173
  });
189
174
  };
175
+ const allDates = computed<string[]>(() => {
176
+ return [...new Set([...dateList.value, ...summitDates.value, ...eventsDates.value])]
177
+ .flat()
178
+ .sort((a: string, b: string) => dayjs(a).isAfter(dayjs(b)) ? 1 : -1);
179
+ });
180
+
181
+ const latestDay = computed(() => {
182
+ if (!allDates.value.length) {
183
+ return formatDate(new Date());
184
+ } else {
185
+ let find = allDates.value.find((v) => dayjs(v).isAfter(dayjs()));
186
+ if (!find) {
187
+ find = [...allDates.value].reverse().find((v) => dayjs().isAfter(dayjs(v)));
188
+ }
189
+ return formatDate(find);
190
+ }
191
+ });
190
192
 
191
193
  const changeMeetingDay = useDebounceFn((day: string, event?: Event) => {
192
194
  if (isAutoClick.value) {
@@ -403,9 +405,9 @@ defineExpose({
403
405
  <slot name="empty">
404
406
  <OResult class="empty-result">
405
407
  <template #image>
406
- <OFigure class="img" :src="emptyImg" />
408
+ <OFigure class="img" :src="emptyImg ?? emptyDefaultImg" />
407
409
  </template>
408
- <template #description>{{ t('meeting.meetingEmptyText') }}</template>
410
+ <template #description>{{ emptyText ?? t('meeting.meetingEmptyText') }}</template>
409
411
  </OResult>
410
412
  </slot>
411
413
  </template>
@@ -459,7 +461,7 @@ defineExpose({
459
461
  display: flex;
460
462
  align-items: center;
461
463
  justify-content: space-between;
462
- height: 60px;
464
+ height: 58px;
463
465
  padding: 0 var(--o-gap-6);
464
466
  gap: var(--o-gap-6);
465
467
  border-bottom: 1px solid var(--o-color-control4);
@@ -809,24 +811,22 @@ defineExpose({
809
811
  }
810
812
 
811
813
  .title-list {
812
- display: flex;
813
- align-items: center;
814
- justify-content: center;
815
- padding: 14px 24px;
814
+ padding: 16px 0;
816
815
  position: relative;
817
- height: 60px;
816
+ height: 58px;
818
817
 
819
818
  @include respond('<=pad_v') {
820
819
  justify-content: space-between;
821
820
  padding: 0 16px;
822
- gap: 24px;
821
+ gap: var(--o-gap-4);
823
822
  height: auto;
824
823
  align-items: flex-start;
824
+ display: flex;
825
825
  }
826
826
  @include respond('phone') {
827
827
  flex-direction: column;
828
828
  align-items: center;
829
- gap: 8px;
829
+ gap: var(--o-gap-2);
830
830
  }
831
831
 
832
832
  &::after {
@@ -859,38 +859,30 @@ defineExpose({
859
859
  }
860
860
 
861
861
  .o-tab {
862
- display: flex;
863
- justify-content: center;
864
- align-items: flex-end;
865
- height: 60px;
862
+ --tab-nav-padding: 0 0 16px;
863
+ @include respond('laptop') {
864
+ --tab-nav-padding: 0 0 18px;
865
+ }
866
866
  @include respond('pad_h') {
867
867
  --tab-nav-gap: 24px;
868
- }
869
-
870
- @include respond-to('pad_v') {
871
- --tab-nav-justify: flex-end;
868
+ --tab-nav-padding: 0 0 18px;
872
869
  }
873
870
 
874
- @include respond('pad_v-laptop') {
875
- --tab-nav-padding: 0 0 14px;
876
- }
877
871
  @include respond('<=pad_v') {
878
872
  border-bottom: none;
879
873
  height: auto;
880
874
  .o-icon {
881
875
  display: none;
882
876
  }
883
- .o-tab-navs-container {
884
-
885
- .o-tab-nav {
886
- line-height: 32px;
887
- }
888
- }
889
877
  }
878
+ @include respond-to('pad_v') {
879
+ --tab-nav-justify: flex-end;
880
+ width: 50%;
881
+ --tab-nav-padding: 0 0 14px;
882
+ }
883
+
890
884
  @include respond('phone') {
891
- .o-tab-nav {
892
- line-height: 2;
893
- }
885
+ --tab-nav-padding: 0 0 4px;
894
886
  }
895
887
 
896
888
  .o-icon {
@@ -20,7 +20,7 @@ import { useScreen } from '@opendesign-plus/composables';
20
20
  import { useMeetingConfig } from './composables/useMeetingConfig';
21
21
  import OMeetingCalendarList from '@/components/meeting/components/OMeetingCalendarList.vue';
22
22
  import { formatDate } from '@/components/meeting/utils.ts';
23
- import emptyImg from '@/assets/meeting/empty.png';
23
+ import emptyDefaultImg from '@/assets/meeting/empty.png';
24
24
 
25
25
  const props = defineProps<{
26
26
  sigName: String;
@@ -28,6 +28,8 @@ const props = defineProps<{
28
28
  getDateListRequest: any;
29
29
  getEventsListRequest: any;
30
30
  dates: String[];
31
+ emptyImg?: any;
32
+ emptyText?: string;
31
33
  }>();
32
34
  const { t, meetingTabs } = useMeetingConfig();
33
35
  const { lePadV } = useScreen();
@@ -331,9 +333,9 @@ const list = computed(() => {
331
333
  <slot name="empty">
332
334
  <OResult class="empty-result">
333
335
  <template #image>
334
- <OFigure class="img" :src="emptyImg" />
336
+ <OFigure class="img" :src="emptyImg ?? emptyDefaultImg" />
335
337
  </template>
336
- <template #description>{{ t('meeting.meetingEmptyText') }}</template>
338
+ <template #description>{{ emptyText ?? t('meeting.meetingEmptyText') }}</template>
337
339
  </OResult>
338
340
  </slot>
339
341
  </template>
@@ -56,6 +56,8 @@ export interface MeetingCalendarPropsT {
56
56
  groupType: MeetingGroupType;
57
57
  groups: string[];
58
58
  disableFormat?: boolean; //是否禁用日期格式化
59
+ emptyImg?: any;
60
+ emptyText?: string;
59
61
  }
60
62
 
61
63
  // 会议新增、修改
package/src/i18n/en.ts CHANGED
@@ -78,7 +78,7 @@ export default {
78
78
  'meeting.meetingGroup': 'Group',
79
79
  'meeting.selectSig': 'Select a SIG.',
80
80
  'meeting.selectGroup': 'Select a Group.',
81
- 'meeting.enterEtherpad': 'Enter Etherpad.',
81
+ 'meeting.enterEtherpad': 'Enter Meeting Minutes.',
82
82
  'meeting.etherpadDesc': 'A meeting assistant for recording meeting minutes and conversations.',
83
83
  'meeting.selectDate': 'Select a date.',
84
84
  'meeting.finishMeetingConfig': 'Complete the meeting settings.',
@@ -150,12 +150,12 @@ export default {
150
150
  'meeting.eventsTitle': 'Name',
151
151
  'meeting.summitTitle': 'Name',
152
152
  'meeting.meetingDetail': 'Details',
153
- 'meeting.meetingEtherpad': 'Etherpad',
153
+ 'meeting.meetingEtherpad': 'Meeting Minutes',
154
154
  'meeting.meetingReplay': 'Playback',
155
155
  'meeting.searchSubtitlePlaceholder': 'Enter',
156
156
  'meeting.detailHalfYearMeetings': '默认显示近半年的会议。',
157
157
  'meeting.tencent': 'Tencent',
158
- 'meeting.etherpad': 'Etherpad',
158
+ 'meeting.etherpad': 'Meeting Minutes',
159
159
  'common.confirm': 'Confirm',
160
160
  'common.cancel': 'Cancel',
161
161
  'common.copySuccess': 'Copied Successfully',