@opendesign-plus-test/components 0.0.1-rc.26 → 0.0.1-rc.27

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 (51) hide show
  1. package/dist/chunk-OElCookieNotice.cjs.js +1 -1
  2. package/dist/chunk-OElCookieNotice.es.js +262 -194
  3. package/dist/components/OCookieNotice.vue.d.ts +3 -2
  4. package/dist/components/OFooter.vue.d.ts +22 -1
  5. package/dist/components/OHeaderUser.vue.d.ts +0 -2
  6. package/dist/components/activity/OMyActivityCalendar.vue.d.ts +6 -6
  7. package/dist/components/activity/index.d.ts +3 -3
  8. package/dist/components/element-plus/OElCookieNotice.vue.d.ts +6 -3
  9. package/dist/components/{OHeader.vue.d.ts → header/OHeader.vue.d.ts} +2 -1
  10. package/dist/components/{OHeaderMoblie.vue.d.ts → header/OHeaderMoblie.vue.d.ts} +2 -2
  11. package/dist/components/header/components/HeaderContent.vue.d.ts +6 -0
  12. package/dist/components/header/components/HeaderNav.vue.d.ts +7 -0
  13. package/dist/components/header/components/HeaderNavMoblie.vue.d.ts +17 -0
  14. package/dist/components/header/components/HeaderUbmcNav.vue.d.ts +2 -0
  15. package/dist/components/header/index.d.ts +22 -0
  16. package/dist/components/meeting/OMeetingForm.vue.d.ts +3 -15
  17. package/dist/components/meeting/OMyMeetingCalendar.vue.d.ts +6 -6
  18. package/dist/components/meeting/types.d.ts +11 -4
  19. package/dist/components.cjs.js +47 -47
  20. package/dist/components.css +1 -1
  21. package/dist/components.es.js +17957 -17829
  22. package/dist/index.d.ts +2 -3
  23. package/package.json +1 -1
  24. package/src/assets/svg-icons/icon-chevron-down.svg +1 -1
  25. package/src/components/OCookieNotice.vue +270 -118
  26. package/src/components/OFooter.vue +11 -1
  27. package/src/components/OHeaderUser.vue +14 -81
  28. package/src/components/OSourceCode.vue +1 -1
  29. package/src/components/activity/OMyActivityCalendar.vue +14 -13
  30. package/src/components/common/MoreText.vue +3 -2
  31. package/src/components/element-plus/OElCookieNotice.vue +306 -115
  32. package/src/components/events/OEventsApply.vue +16 -0
  33. package/src/components/events/OEventsList.vue +3 -0
  34. package/src/components/header/OHeader.vue +175 -0
  35. package/src/components/{OHeaderMoblie.vue → header/OHeaderMoblie.vue} +6 -3
  36. package/src/components/{common/HeaderEulerNav.vue → header/components/HeaderContent.vue} +375 -551
  37. package/src/components/header/components/HeaderNav.vue +280 -0
  38. package/src/components/{common → header/components}/HeaderNavMoblie.vue +20 -18
  39. package/src/components/{common → header/components}/HeaderUbmcNav.vue +6 -63
  40. package/src/components/header/index.ts +16 -0
  41. package/src/components/meeting/OMeetingCalendar.vue +16 -2
  42. package/src/components/meeting/OMeetingForm.vue +17 -24
  43. package/src/components/meeting/OMeetingPlayback.vue +1 -1
  44. package/src/components/meeting/OMyMeetingCalendar.vue +5 -6
  45. package/src/components/meeting/components/OMeetingCalendarList.vue +1 -1
  46. package/src/components/meeting/types.ts +11 -5
  47. package/src/index.ts +2 -5
  48. package/dist/components/activity/data.d.ts +0 -51
  49. package/src/components/OHeader.vue +0 -97
  50. package/src/components/activity/data.ts +0 -365
  51. package/src/components/meeting/components/OMyCalendarWrapper.vue +0 -160
@@ -0,0 +1,175 @@
1
+ <script setup lang="ts">
2
+ import { ref } from 'vue';
3
+
4
+ import ContentWrapper from '../common/ContentWrapper.vue';
5
+ import HeaderNav from './components/HeaderNav.vue';
6
+ import HeaderContent from './components/HeaderContent.vue';
7
+ import HeaderUbmcNav from './components/HeaderUbmcNav.vue';
8
+
9
+ import { useTheme } from '@opendesign-plus/composables';
10
+
11
+ const { isDark } = useTheme();
12
+
13
+ export interface OHeaderT {
14
+ (e: 'go-home'): void;
15
+ (e: 'handle-click', val: any): void;
16
+ }
17
+
18
+ const emit = defineEmits<OHeaderT>();
19
+
20
+ const props = defineProps({
21
+ logo: undefined,
22
+ lang: undefined,
23
+ community: undefined,
24
+ navData: undefined,
25
+ bgLeft: undefined,
26
+ bgRight: undefined,
27
+ tagMap: undefined,
28
+ activeIndex: undefined,
29
+ });
30
+
31
+ const hoverIndex = ref();
32
+ const hoverId = ref();
33
+ const itemData = ref();
34
+ const itemVisible = ref(false);
35
+
36
+ const goHome = () => {
37
+ emit('go-home');
38
+ };
39
+ const handleMouseenter = (val: any) => {
40
+ itemData.value = val;
41
+ hoverIndex.value = val.id;
42
+ if (val?.children?.length) {
43
+ itemVisible.value = true;
44
+ }
45
+ };
46
+ const handleMouseleave = (val: any) => {
47
+ itemVisible.value = false;
48
+ };
49
+ const handleClick = (val: any) => {
50
+ emit('handle-click', val);
51
+ };
52
+
53
+ const handleMouseenterSub = (val: string) => {
54
+ hoverId.value = val;
55
+ };
56
+ const handleMouseleaveSub = (val: string) => {
57
+ hoverId.value = val;
58
+ };
59
+ </script>
60
+
61
+ <template>
62
+ <div class="header">
63
+ <div class="header-wrap" :class="{ 'header-wrap-dark': isDark }">
64
+ <ContentWrapper class="header-content">
65
+ <!-- logo -->
66
+ <div class="header-logo" @click="goHome">
67
+ <slot name="logo">
68
+ <img v-if="props.logo" class="logo" alt="logo" :src="props.logo" />
69
+ </slot>
70
+ </div>
71
+ <!-- nav -->
72
+ <div v-if="props.community !== 'openUBMC'" class="header-nav">
73
+ <slot name="nav">
74
+ <HeaderNav
75
+ v-if="props.navData"
76
+ :nav-data="props.navData"
77
+ :hoverId="hoverId"
78
+ :active-index="props.activeIndex"
79
+ @handle-mouseenter="handleMouseenter"
80
+ @handle-mouseleave="handleMouseleave"
81
+ @handle-click="handleClick"
82
+ ></HeaderNav>
83
+ </slot>
84
+ </div>
85
+ <!-- openUBMC nav -->
86
+ <div v-if="props.community === 'openUBMC'" class="header-nav-openubmc">
87
+ <slot name="nav">
88
+ <HeaderUbmcNav v-if="props.navData" :nav-data="props.navData" :has-perm="true" :tag-map="props.tagMap" />
89
+ </slot>
90
+ </div>
91
+ <!-- toolbar -->
92
+ <div v-if="$slots.toolbar" class="header-toolbar">
93
+ <slot name="toolbar"></slot>
94
+ </div>
95
+ </ContentWrapper>
96
+ </div>
97
+ <div v-if="props.community !== 'openUBMC'" class="header-nav-content">
98
+ <HeaderContent
99
+ :itemData="itemData"
100
+ :item-visible="itemVisible"
101
+ :bg-left="props.bgLeft"
102
+ :bg-right="props.bgRight"
103
+ :community="props.community"
104
+ :hover-index="hoverIndex"
105
+ @handle-mouseenter-sub="handleMouseenterSub"
106
+ @handle-mouseleave-sub="handleMouseleaveSub"
107
+ ></HeaderContent>
108
+ </div>
109
+ </div>
110
+ </template>
111
+
112
+ <style lang="scss" scoped>
113
+ .header {
114
+ --o-header-height: 72px;
115
+ }
116
+ .header-wrap {
117
+ background-color: var(--o-color-fill2);
118
+ position: fixed;
119
+ left: 0;
120
+ right: 0;
121
+ top: 0;
122
+ z-index: 999;
123
+ box-shadow: 0 3px 9px 0 rgba(0, 18, 85, 0.08);
124
+ backdrop-filter: blur(5px);
125
+ height: var(--o-header-height);
126
+ }
127
+ .header-content {
128
+ display: flex;
129
+ align-items: center;
130
+ height: 100%;
131
+ }
132
+ .header-logo {
133
+ height: 100%;
134
+ display: flex;
135
+ align-items: center;
136
+ cursor: pointer;
137
+ margin-right: 24px;
138
+ flex-shrink: 0;
139
+ }
140
+ .logo {
141
+ height: 32px;
142
+ }
143
+ .header-nav {
144
+ flex: 1;
145
+ height: 100%;
146
+ min-width: 0;
147
+ overflow: hidden;
148
+ position: relative;
149
+ }
150
+ .header-nav-openubmc {
151
+ flex: 1;
152
+ height: 100%;
153
+ min-width: 0;
154
+ }
155
+ .header-toolbar {
156
+ height: 100%;
157
+ }
158
+ .header-nav-content {
159
+ position: fixed;
160
+ top: var(--o-header-height);
161
+ left: 0;
162
+ right: 0;
163
+ background: var(--o-color-fill2);
164
+ z-index: 998;
165
+ box-shadow: 0 3px 9px 0 rgba(0, 18, 85, 0.08);
166
+ overflow: hidden;
167
+ }
168
+
169
+ .header-wrap-dark {
170
+ box-shadow: 0 3px 9px 0 rgba(var(--o-mixedgray-4), 0.08);
171
+ .header-nav-content {
172
+ box-shadow: 0 3px 9px 0 rgba(var(--o-mixedgray-4), 0.08);
173
+ }
174
+ }
175
+ </style>
@@ -2,8 +2,8 @@
2
2
  import { ref } from 'vue';
3
3
  import { OIcon, OIconArrowLeft } from '@opensig/opendesign';
4
4
 
5
- import ContentWrapper from './common/ContentWrapper.vue';
6
- import HeaderNavMoblie from './common/HeaderNavMoblie.vue';
5
+ import ContentWrapper from '../common/ContentWrapper.vue';
6
+ import HeaderNavMoblie from './components/HeaderNavMoblie.vue';
7
7
 
8
8
  import IconClose from '~icons/components/icon-close.svg';
9
9
  import IconMenu from '~icons/components/icon-header-menu.svg';
@@ -90,7 +90,10 @@ const mobileClick = () => {
90
90
  <style lang="scss" scoped>
91
91
  .header {
92
92
  background-color: var(--o-color-fill2);
93
- position: relative;
93
+ position: fixed;
94
+ left: 0;
95
+ right: 0;
96
+ top: 0;
94
97
  z-index: 999;
95
98
  box-shadow: 0 3px 9px 0 rgba(0, 18, 85, 0.08);
96
99
  backdrop-filter: blur(5px);