@opendesign-plus-test/components 0.0.1-rc.62 → 0.0.1-rc.63

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 (46) hide show
  1. package/dist/components/activity/OActivityMyCalendar.vue.d.ts +6 -2
  2. package/dist/components/activity/index.d.ts +3 -1
  3. package/dist/components/header/index.d.ts +1 -804
  4. package/dist/components/{header → header-language-switcher}/OHeaderLanguageSwitcher.vue.d.ts +1 -1
  5. package/dist/components/header-language-switcher/index.d.ts +90 -0
  6. package/dist/components/{header → header-search}/OHeaderSearch.vue.d.ts +24 -4
  7. package/dist/components/header-search/index.d.ts +607 -0
  8. package/dist/components/header-source-code/index.d.ts +23 -0
  9. package/dist/components/header-theme/index.d.ts +50 -0
  10. package/dist/components/header-user/index.d.ts +53 -0
  11. package/dist/components/meeting/OMeetingMyCalendar.vue.d.ts +6 -2
  12. package/dist/components/meeting/index.d.ts +3 -1
  13. package/dist/components/meeting/types.d.ts +3 -1
  14. package/dist/components/meeting/utils.d.ts +2 -1
  15. package/dist/components/search/OSearchInput.vue.d.ts +24 -4
  16. package/dist/components/search/index.d.ts +12 -2
  17. package/dist/components/search/internal/SearchImageInput.vue.d.ts +24 -4
  18. package/dist/components.cjs.js +31 -31
  19. package/dist/components.css +1 -1
  20. package/dist/components.es.js +4990 -4856
  21. package/dist/index.d.ts +5 -0
  22. package/package.json +7 -7
  23. package/src/assets/styles/element-plus.scss +2 -0
  24. package/src/components/header/index.ts +1 -36
  25. package/src/components/header-language-switcher/index.ts +10 -0
  26. package/src/components/header-search/index.ts +10 -0
  27. package/src/components/header-source-code/index.ts +10 -0
  28. package/src/components/header-theme/index.ts +10 -0
  29. package/src/components/header-user/index.ts +10 -0
  30. package/src/components/meeting/OMeetingCalendar.vue +7 -5
  31. package/src/components/meeting/OMeetingForm.vue +14 -12
  32. package/src/components/meeting/OMeetingMyCalendar.vue +0 -3
  33. package/src/components/meeting/components/OMeetingCalendarList.vue +2 -2
  34. package/src/components/meeting/components/OMeetingDetail.vue +2 -2
  35. package/src/components/meeting/types.ts +3 -1
  36. package/src/components/meeting/utils.ts +4 -4
  37. package/src/index.ts +5 -0
  38. package/dist/components/meeting/components/OMeetingCalendarSelector.vue.d.ts +0 -664
  39. /package/dist/components/{header → header-source-code}/OHeaderSourceCode.vue.d.ts +0 -0
  40. /package/dist/components/{header → header-theme}/OHeaderTheme.vue.d.ts +0 -0
  41. /package/dist/components/{header → header-user}/OHeaderUser.vue.d.ts +0 -0
  42. /package/src/components/{header → header-language-switcher}/OHeaderLanguageSwitcher.vue +0 -0
  43. /package/src/components/{header → header-search}/OHeaderSearch.vue +0 -0
  44. /package/src/components/{header → header-source-code}/OHeaderSourceCode.vue +0 -0
  45. /package/src/components/{header → header-theme}/OHeaderTheme.vue +0 -0
  46. /package/src/components/{header → header-user}/OHeaderUser.vue +0 -0
package/dist/index.d.ts CHANGED
@@ -6,6 +6,11 @@ export * from './components/element-plus';
6
6
  export * from './components/events';
7
7
  export * from './components/footer';
8
8
  export * from './components/header';
9
+ export * from './components/header-language-switcher';
10
+ export * from './components/header-search';
11
+ export * from './components/header-source-code';
12
+ export * from './components/header-theme';
13
+ export * from './components/header-user';
9
14
  export * from './components/meeting';
10
15
  export * from './components/search';
11
16
  export * from './components/section';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendesign-plus-test/components",
3
- "version": "0.0.1-rc.62",
3
+ "version": "0.0.1-rc.63",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -25,26 +25,26 @@
25
25
  "require": "./dist/components.css"
26
26
  }
27
27
  },
28
- "dependencies": {
29
- "@opensig/opendesign": "1.2.3-sp1",
30
- "@vueuse/core": "10.11.1",
28
+ "peerDependencies": {
29
+ "@opensig/opendesign": "1.2.4",
30
+ "@vueuse/core": "^14.0.0",
31
31
  "aos": "^2.3.4",
32
32
  "dayjs": "^1.11.13",
33
33
  "video.js": "^8.23.7",
34
34
  "vue-dompurify-html": "^3.1.2",
35
+ "vue": "^3.5.13",
36
+ "element-plus": "2.13.1",
35
37
  "@opendesign-plus/composables": "0.0.1-rc.8",
36
38
  "@opendesign-plus/styles": "0.0.1-rc.2"
37
39
  },
38
40
  "devDependencies": {
39
- "@vitejs/plugin-vue": "^5.1.0",
40
- "element-plus": "^2.13.1",
41
+ "@vitejs/plugin-vue": "^5.2.1",
41
42
  "sass": "^1.71.1",
42
43
  "typescript": "~5.8.2",
43
44
  "unplugin-element-plus": "^0.11.2",
44
45
  "unplugin-icons": "^0.14.1",
45
46
  "vite": "^6.2.3",
46
47
  "vite-plugin-dts": "^4.5.3",
47
- "vue": "^3.4.0",
48
48
  "vue-tsc": "2.2.8"
49
49
  },
50
50
  "scripts": {
@@ -169,6 +169,8 @@
169
169
 
170
170
  .el-input__wrapper {
171
171
  background: var(--o-color-fill2);
172
+ box-shadow: none;
173
+ border: 1px solid var(--el-input-border-color);
172
174
  }
173
175
 
174
176
  .el-select__wrapper {
@@ -1,10 +1,5 @@
1
1
  import _OHeader from './OHeader.vue';
2
2
  import _OHeaderMobile from './OHeaderMobile.vue';
3
- import _OHeaderUser from './OHeaderUser.vue';
4
- import _OHeaderSearch from './OHeaderSearch.vue';
5
- import _OHeaderTheme from './OHeaderTheme.vue';
6
- import _OHeaderSourceCode from './OHeaderSourceCode.vue';
7
- import _OHeaderLanguageSwitcher from './OHeaderLanguageSwitcher.vue';
8
3
  import type { App } from 'vue';
9
4
 
10
5
  const OHeader = Object.assign(_OHeader, {
@@ -19,35 +14,5 @@ const OHeaderMobile = Object.assign(_OHeaderMobile, {
19
14
  },
20
15
  });
21
16
 
22
- const OHeaderUser = Object.assign(_OHeaderUser, {
23
- install(app: App) {
24
- app.component('OHeaderUser', _OHeaderUser);
25
- },
26
- });
27
-
28
- const OHeaderSearch = Object.assign(_OHeaderSearch, {
29
- install(app: App) {
30
- app.component('OHeaderSearch', _OHeaderSearch);
31
- },
32
- });
33
-
34
- const OHeaderTheme = Object.assign(_OHeaderTheme, {
35
- install(app: App) {
36
- app.component('OHeaderTheme', _OHeaderTheme);
37
- },
38
- });
39
-
40
- const OHeaderSourceCode = Object.assign(_OHeaderSourceCode, {
41
- install(app: App) {
42
- app.component('OHeaderSourceCode', _OHeaderSourceCode);
43
- },
44
- });
45
-
46
- const OHeaderLanguageSwitcher = Object.assign(_OHeaderLanguageSwitcher, {
47
- install(app: App) {
48
- app.component('OHeaderLanguageSwitcher', _OHeaderLanguageSwitcher);
49
- },
50
- });
51
-
52
17
  export * from './types';
53
- export { OHeader, OHeaderMobile, OHeaderUser, OHeaderSearch, OHeaderTheme, OHeaderSourceCode, OHeaderLanguageSwitcher };
18
+ export { OHeader, OHeaderMobile };
@@ -0,0 +1,10 @@
1
+ import _OHeaderLanguageSwitcher from './OHeaderLanguageSwitcher.vue';
2
+ import type { App } from 'vue';
3
+
4
+ const OHeaderLanguageSwitcher = Object.assign(_OHeaderLanguageSwitcher, {
5
+ install(app: App) {
6
+ app.component('OHeaderLanguageSwitcher', _OHeaderLanguageSwitcher);
7
+ },
8
+ });
9
+
10
+ export { OHeaderLanguageSwitcher };
@@ -0,0 +1,10 @@
1
+ import _OHeaderSearch from './OHeaderSearch.vue';
2
+ import type { App } from 'vue';
3
+
4
+ const OHeaderSearch = Object.assign(_OHeaderSearch, {
5
+ install(app: App) {
6
+ app.component('OHeaderSearch', _OHeaderSearch);
7
+ },
8
+ });
9
+
10
+ export { OHeaderSearch };
@@ -0,0 +1,10 @@
1
+ import _OHeaderSourceCode from './OHeaderSourceCode.vue';
2
+ import type { App } from 'vue';
3
+
4
+ const OHeaderSourceCode = Object.assign(_OHeaderSourceCode, {
5
+ install(app: App) {
6
+ app.component('OHeaderSourceCode', _OHeaderSourceCode);
7
+ },
8
+ });
9
+
10
+ export { OHeaderSourceCode };
@@ -0,0 +1,10 @@
1
+ import _OHeaderTheme from './OHeaderTheme.vue';
2
+ import type { App } from 'vue';
3
+
4
+ const OHeaderTheme = Object.assign(_OHeaderTheme, {
5
+ install(app: App) {
6
+ app.component('OHeaderTheme', _OHeaderTheme);
7
+ },
8
+ });
9
+
10
+ export { OHeaderTheme };
@@ -0,0 +1,10 @@
1
+ import _OHeaderUser from './OHeaderUser.vue';
2
+ import type { App } from 'vue';
3
+
4
+ const OHeaderUser = Object.assign(_OHeaderUser, {
5
+ install(app: App) {
6
+ app.component('OHeaderUser', _OHeaderUser);
7
+ },
8
+ });
9
+
10
+ export { OHeaderUser };
@@ -326,6 +326,7 @@ defineExpose({
326
326
  </OIcon>
327
327
  </div>
328
328
  <OSelect
329
+ v-if="groupType !== MeetingGroupType.NONE"
329
330
  v-model="group"
330
331
  :placeholder="t(groupType === MeetingGroupType.GROUP ? 'meeting.allGroups' : 'meeting.allSigs')"
331
332
  clearable
@@ -337,7 +338,7 @@ defineExpose({
337
338
 
338
339
  <div class="right-title">
339
340
  {{ t('meeting.latestMeeting') }}&nbsp;
340
- <span>{{ dayjs(latestDay).format('YYYY/MM/DD') }}</span>
341
+ <span>{{ formatDate(dayjs(latestDay)) }}</span>
341
342
  </div>
342
343
  </template>
343
344
  <template #date-cell="{ data }">
@@ -383,7 +384,7 @@ defineExpose({
383
384
  <div class="detail-list">
384
385
  <div class="current-day">
385
386
  {{ t('meeting.latestMeeting') }}&nbsp;
386
- <span>{{ dayjs(currentDay).format('YYYY/MM/DD') }}</span>
387
+ <span>{{ formatDate(dayjs(currentDay)) }}</span>
387
388
  </div>
388
389
  <div class="right-title">
389
390
  <div class="title-list">
@@ -864,9 +865,10 @@ defineExpose({
864
865
  justify-content: center;
865
866
  align-items: flex-end;
866
867
  height: 60px;
867
- }
868
-
869
- .o-tab {
868
+
869
+ @include respond-to('pad_v') {
870
+ --tab-nav-justify: flex-end;
871
+ }
870
872
  .o-icon {
871
873
  svg path {
872
874
  fill: currentColor;
@@ -29,7 +29,7 @@ import {
29
29
  PlatformT,
30
30
  } from './types';
31
31
  import dayjs from 'dayjs';
32
- import { findLabelFromOptions, formatDateNumber, getDateNumber } from './utils';
32
+ import { findLabelFromOptions, formatDate, formatDateNumber, getDateNumber } from './utils';
33
33
  import { EMAIL_REGEX, INTERVAL_DAY, INTERVAL_MONTH, INTERVAL_WEEK } from './config';
34
34
  import OMeetingCalendarSelector from './components/OMeetingCalendarSelector.vue';
35
35
  import { useScreen } from '@opendesign-plus/composables';
@@ -514,7 +514,7 @@ defineExpose({
514
514
  <template>
515
515
  <div class="o-meeting-form">
516
516
  <OForm :model="form" ref="formRef" has-required :layout="lePadV ? 'v' : 'h'" class="form-wrapper">
517
- <OFormItem :rules="rules.topic" :label="t('meeting.meetingName')" field="topic">
517
+ <OFormItem :rules="rules.topic" :label="labelMap?.topic ?? t('meeting.meetingName')" field="topic">
518
518
  <OInput
519
519
  :disabled="isSub"
520
520
  size="large"
@@ -524,7 +524,7 @@ defineExpose({
524
524
  </OFormItem>
525
525
  <OFormItem
526
526
  :rules="rules.group_name"
527
- :label="groupType === MeetingGroupType.GROUP ? t('meeting.meetingGroup'):t('meeting.meetingSig')"
527
+ :label="labelMap?.group_name ?? (groupType === MeetingGroupType.GROUP ? t('meeting.meetingGroup') : t('meeting.meetingSig'))"
528
528
  field="group_name">
529
529
  <OSelect
530
530
  :disabled="isEdit"
@@ -539,7 +539,8 @@ defineExpose({
539
539
  </OFormItem>
540
540
  <OFormItem :rules="rules.etherpad" label="Etherpad" field="etherpad" v-if="form.group_name">
541
541
  <template #label>
542
- <div class="label-wrapper">
542
+ <template v-if="labelMap?.etherpad">{{ labelMap.etherpad }}</template>
543
+ <div v-else class="label-wrapper">
543
544
  <span>{{ t('meeting.etherpad') }}&nbsp;</span>
544
545
  <OPopover>
545
546
  <div class="o-meeting-form-popover-content etherpad">{{ t('meeting.etherpadDesc') }}</div>
@@ -560,7 +561,7 @@ defineExpose({
560
561
  />
561
562
  </OFormItem>
562
563
 
563
- <OFormItem :label="t('meeting.meetingTime')" field="time" :rules="rules.time" class="repeat-row" required>
564
+ <OFormItem :label="labelMap?.time ?? t('meeting.meetingTime')" field="time" :rules="rules.time" class="repeat-row" required>
564
565
  <div class="repeat-config-wrapper">
565
566
  <OFormItem field="repeat" class="repeat-item" v-if="!isSub">
566
567
  <ORadioGroup v-model="form.is_cycle" @change="changeIsCycle" :disabled="isEdit">
@@ -589,7 +590,7 @@ defineExpose({
589
590
  </div>
590
591
  </OFormItem>
591
592
  <OFormItem
592
- :label="t('meeting.in')"
593
+ :label="labelMap?.cycle_point ?? t('meeting.in')"
593
594
  field="cycle_point"
594
595
  class="point-item"
595
596
  v-if="form.cycle_type !== INTERVAL_DAY"
@@ -606,7 +607,7 @@ defineExpose({
606
607
  </OSelect>
607
608
  <OMeetingCalendarSelector v-if="form.cycle_type === INTERVAL_MONTH" v-model="form.cycle_point" />
608
609
  </OFormItem>
609
- <OFormItem :label="t('meeting.meetingDuration')" field="date_range">
610
+ <OFormItem :label="labelMap?.date_range ?? t('meeting.meetingDuration')" field="date_range">
610
611
  <ElDatePicker
611
612
  size="large"
612
613
  v-model="form.date_range"
@@ -622,7 +623,7 @@ defineExpose({
622
623
  </OFormItem>
623
624
  </template>
624
625
  <template v-else>
625
- <OFormItem :label="t('meeting.meetingDate')" field="date">
626
+ <OFormItem :label="labelMap?.date ?? t('meeting.meetingDate')" field="date">
626
627
  <ElDatePicker
627
628
  popper-class="o-meeting-form-date-picker-popper"
628
629
  size="large"
@@ -671,14 +672,14 @@ defineExpose({
671
672
  </div>
672
673
  </div>
673
674
  </OFormItem>
674
- <OFormItem :label="t('meeting.meetingPlatform')" field="platform" :rules="rules.platform" class="platform-item">
675
+ <OFormItem :label="labelMap?.platform ?? t('meeting.meetingPlatform')" field="platform" :rules="rules.platform" class="platform-item">
675
676
  <ORadioGroup v-model="form.platform" v-if="!data" :disabled="form.is_cycle">
676
677
  <ORadio v-for="item in typeOptions" :key="item.value" :value="item.value">{{ getPlatformLabel(item.label) }}
677
678
  </ORadio>
678
679
  </ORadioGroup>
679
680
  <span v-else>{{ getPlatformLabel(form.platform) }}</span>
680
681
  </OFormItem>
681
- <OFormItem field="agenda" :label="t('meeting.meetingAgenda')" :rules="rules.genda">
682
+ <OFormItem field="agenda" :label="labelMap?.agenda ?? t('meeting.meetingAgenda')" :rules="rules.genda">
682
683
  <OTextarea
683
684
  :disabled="isSub"
684
685
  size="large"
@@ -686,7 +687,7 @@ defineExpose({
686
687
  style="width: 100%"
687
688
  :rows="4" v-model="form.agenda" />
688
689
  </OFormItem>
689
- <OFormItem :label="t('meeting.meetingRecord')" field="is_record" class="record-item full-width-item">
690
+ <OFormItem :label="labelMap?.is_record ?? t('meeting.meetingRecord')" field="is_record" class="record-item full-width-item">
690
691
  <template v-if="lePadV">
691
692
  <OSwitch v-model="form.is_record" :disabled="isSub" />
692
693
  </template>
@@ -723,7 +724,8 @@ defineExpose({
723
724
  </template>
724
725
  <OFormItem field="email_list" :rules="rules.email_list">
725
726
  <template #label>
726
- <div class="label-wrapper">
727
+ <template v-if="labelMap?.email_list">{{ labelMap.email_list }}</template>
728
+ <div v-else class="label-wrapper">
727
729
  <span>{{ t('meeting.meetingEmail') }}&nbsp;</span>
728
730
  <OPopover>
729
731
  <div class="o-meeting-form-popover-content">
@@ -467,14 +467,11 @@ onMounted(() => {
467
467
  window.addEventListener('scroll', handleScroll);
468
468
  // 添加resize监听器
469
469
  window.addEventListener('resize', handleScroll);
470
- getHeaderHeight();
471
- window.addEventListener('resize', getHeaderHeight);
472
470
  });
473
471
 
474
472
  onUnmounted(() => {
475
473
  window.removeEventListener('scroll', handleScroll);
476
474
  window.removeEventListener('resize', handleScroll);
477
- window.removeEventListener('resize', getHeaderHeight);
478
475
  const scrollerContainerEl = scrollerRef.value?.getContainerEl();
479
476
  scrollerContainerEl?.removeEventListener('scroll', scrollerScroll);
480
477
  });
@@ -91,9 +91,9 @@ const computedList = computed<any[]>(() => {
91
91
  }
92
92
  } else {
93
93
  if (v.start_date === v.end_date) {
94
- dateRange = formatDate(v.start_date, 'YYYY/MM/DD');
94
+ dateRange = formatDate(v.start_date);
95
95
  } else {
96
- dateRange = `${ formatDate(v.start_date, 'YYYY/MM/DD') }-${ formatDate(v.end_date, 'YYYY/MM/DD') }`;
96
+ dateRange = `${ formatDate(v.start_date) }-${ formatDate(v.end_date) }`;
97
97
  }
98
98
  }
99
99
 
@@ -161,11 +161,11 @@ defineExpose({ copyInfo });
161
161
  display: flex;
162
162
  align-items: flex-start;
163
163
  font-size: 14px;
164
- gap: var(--o-gap-5);
164
+ gap: var(--o-gap-2);
165
165
 
166
166
  @include respond('<=pad_v') {
167
167
  font-size: 12px;
168
- gap: var(--o-gap-2);
168
+ gap: var(--o-gap-1);
169
169
  }
170
170
 
171
171
  &:not(.is-empty) {
@@ -42,6 +42,7 @@ export type PlatformT = 'welink' | 'tencent' | 'zoom' | 'WELINK' | 'TENCENT' | '
42
42
  export enum MeetingGroupType {
43
43
  SIG = 'sig',
44
44
  GROUP = 'group',
45
+ NONE = 'none',
45
46
  }
46
47
 
47
48
  export interface MeetingCalendarPropsT {
@@ -96,7 +97,8 @@ export interface MeetingFormPropsT {
96
97
  getGroupsRequest: any;
97
98
  showBtns?: boolean;
98
99
  groupType: MeetingGroupType;
99
- confirmText?: string
100
+ confirmText?: string;
101
+ labelMap?: Record<string, string>;
100
102
  }
101
103
 
102
104
  export interface ObsDataItemT {
@@ -1,10 +1,10 @@
1
- import dayjs from 'dayjs';
1
+ import dayjs, { Dayjs } from 'dayjs';
2
2
  import { OptionItemT } from './types';
3
3
 
4
- export const formatDate = (date: string | Date = new Date(), format: string = 'YYYY-MM-DD'): string => {
5
- let dateStr = date;
4
+ export const formatDate = (date: undefined | string | Date | Dayjs = new Date(), format: string = 'YYYY/MM/DD'): string => {
5
+ let dateStr: any = date;
6
6
  if (!dateStr) {
7
- dateStr = new Date();
7
+ dateStr = undefined;
8
8
  }
9
9
  if (!dayjs(new Date(dateStr)).isValid()) {
10
10
  return dateStr as string;
package/src/index.ts CHANGED
@@ -8,6 +8,11 @@ export * from './components/element-plus';
8
8
  export * from './components/events';
9
9
  export * from './components/footer';
10
10
  export * from './components/header';
11
+ export * from './components/header-language-switcher';
12
+ export * from './components/header-search';
13
+ export * from './components/header-source-code';
14
+ export * from './components/header-theme';
15
+ export * from './components/header-user';
11
16
  export * from './components/meeting';
12
17
  export * from './components/search';
13
18
  export * from './components/section';