@opendesign-plus/components 0.0.1-rc.92 → 0.0.1-rc.94

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 (34) hide show
  1. package/dist/components/footer/components/FooterSimple.vue.d.ts +4 -0
  2. package/dist/components/summit/types.d.ts +18 -9
  3. package/dist/components/summit/utils.d.ts +11 -0
  4. package/dist/components.cjs.js +37 -37
  5. package/dist/components.css +1 -1
  6. package/dist/components.es.js +5289 -5241
  7. package/dist/treeshaking/_virtual/icon-email.mjs +9 -8
  8. package/dist/treeshaking/_virtual/icon-email2.mjs +8 -9
  9. package/dist/treeshaking/_virtual/icon-tips.mjs +2 -13
  10. package/dist/treeshaking/_virtual/icon-tips2.mjs +13 -2
  11. package/dist/treeshaking/components/events/OEventsList.vue.mjs +1 -1
  12. package/dist/treeshaking/components/footer/OFooter.css +20 -15
  13. package/dist/treeshaking/components/footer/OFooter.vue.mjs +1 -1
  14. package/dist/treeshaking/components/footer/components/FooterSimple.css +37 -36
  15. package/dist/treeshaking/components/footer/components/FooterSimple.vue.d.ts +4 -0
  16. package/dist/treeshaking/components/footer/components/FooterSimple.vue.mjs +1 -1
  17. package/dist/treeshaking/components/footer/components/FooterSimple.vue2.mjs +54 -37
  18. package/dist/treeshaking/components/meeting/OMeetingSigCalendar.vue.mjs +1 -1
  19. package/dist/treeshaking/components/org/OOrgMembers.vue2.mjs +1 -1
  20. package/dist/treeshaking/components/summit/OSummitLive.css +20 -20
  21. package/dist/treeshaking/components/summit/OSummitLive.vue.mjs +1 -1
  22. package/dist/treeshaking/components/summit/OSummitLive.vue2.mjs +12 -3
  23. package/dist/treeshaking/components/summit/OSummitSchedule.css +33 -33
  24. package/dist/treeshaking/components/summit/OSummitSchedule.vue.mjs +1 -1
  25. package/dist/treeshaking/components/summit/OSummitSchedule.vue2.mjs +13 -3
  26. package/dist/treeshaking/components/summit/components/OSummitTabs.css +30 -29
  27. package/dist/treeshaking/components/summit/components/OSummitTabs.vue.mjs +1 -1
  28. package/dist/treeshaking/components/summit/components/OSummitTabs.vue2.mjs +2 -0
  29. package/dist/treeshaking/components/summit/types.d.ts +18 -9
  30. package/dist/treeshaking/components/summit/utils.d.ts +11 -0
  31. package/dist/treeshaking/components/summit/utils.mjs +56 -0
  32. package/dist/treeshaking/components/user-center/OAccountSetting.vue2.mjs +1 -1
  33. package/dist/treeshaking/components/user-center/OUserInfo.vue2.mjs +1 -1
  34. package/package.json +4 -4
@@ -1,12 +1,12 @@
1
- .hover-icon-rotate .o-icon[data-v-29562453] {
1
+ .hover-icon-rotate .o-icon[data-v-bbfd2537] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-29562453] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-bbfd2537] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
- .o-summit-live .o-summit-title[data-v-29562453] {
9
+ .o-summit-live .o-summit-title[data-v-bbfd2537] {
10
10
  margin-bottom: var(--o-r-gap-6);
11
11
  color: var(--o-color-info1);
12
12
  font-weight: 600;
@@ -14,39 +14,39 @@
14
14
  font-size: var(--o-r-font_size-display3);
15
15
  line-height: var(--o-r-line_height-display3);
16
16
  }
17
- .o-summit-live .o-summit-live-wrapper[data-v-29562453] {
17
+ .o-summit-live .o-summit-live-wrapper[data-v-bbfd2537] {
18
18
  margin-top: var(--o-r-gap-6);
19
19
  }
20
- .o-summit-live .o-summit-live-select[data-v-29562453] {
20
+ .o-summit-live .o-summit-live-select[data-v-bbfd2537] {
21
21
  display: none;
22
22
  }
23
- .o-summit-live .o-summit-live-select[data-v-29562453] .o-select {
23
+ .o-summit-live .o-summit-live-select[data-v-bbfd2537] .o-select {
24
24
  width: 100%;
25
25
  }
26
- .o-summit-live .o-summit-live-select[data-v-29562453] .o-select .o-input {
26
+ .o-summit-live .o-summit-live-select[data-v-bbfd2537] .o-select .o-input {
27
27
  height: 48px;
28
28
  }
29
29
  @media (max-width: 840px) {
30
- .o-summit-live .o-summit-live-select[data-v-29562453] {
30
+ .o-summit-live .o-summit-live-select[data-v-bbfd2537] {
31
31
  display: block;
32
32
  margin-bottom: var(--o-gap-2);
33
33
  }
34
34
  }
35
- .o-summit-live .o-summit-live-video[data-v-29562453] {
35
+ .o-summit-live .o-summit-live-video[data-v-bbfd2537] {
36
36
  margin-bottom: var(--o-r-gap-5);
37
37
  width: 100%;
38
38
  display: block;
39
39
  border: none;
40
40
  }
41
- .o-summit-live .o-summit-live-web[data-v-29562453] {
41
+ .o-summit-live .o-summit-live-web[data-v-bbfd2537] {
42
42
  display: block;
43
43
  }
44
44
  @media (max-width: 840px) {
45
- .o-summit-live .o-summit-live-web[data-v-29562453] {
45
+ .o-summit-live .o-summit-live-web[data-v-bbfd2537] {
46
46
  display: none;
47
47
  }
48
48
  }
49
- .o-summit-live .o-summit-live-itembox[data-v-29562453] {
49
+ .o-summit-live .o-summit-live-itembox[data-v-bbfd2537] {
50
50
  display: grid;
51
51
  grid-template-columns: repeat(4, 1fr);
52
52
  gap: var(--o-r-gap-6) var(--o-r-gap-5);
@@ -54,16 +54,16 @@
54
54
  --link-height: 96px;
55
55
  }
56
56
  @media (min-width: 1201px) and (max-width: 1680px) {
57
- .o-summit-live .o-summit-live-itembox[data-v-29562453] {
57
+ .o-summit-live .o-summit-live-itembox[data-v-bbfd2537] {
58
58
  --link-height: 92px;
59
59
  }
60
60
  }
61
61
  @media (min-width: 841px) and (max-width: 1200px) {
62
- .o-summit-live .o-summit-live-itembox[data-v-29562453] {
62
+ .o-summit-live .o-summit-live-itembox[data-v-bbfd2537] {
63
63
  --link-height: 68px;
64
64
  }
65
65
  }
66
- .o-summit-live .o-summit-live-link[data-v-29562453] {
66
+ .o-summit-live .o-summit-live-link[data-v-bbfd2537] {
67
67
  flex: 1;
68
68
  padding: var(--o-r-gap-6) var(--o-r-gap-5);
69
69
  cursor: pointer;
@@ -78,10 +78,10 @@
78
78
  justify-content: center;
79
79
  border-radius: var(--o-radius-xs);
80
80
  }
81
- .o-summit-live .o-summit-live-link [data-o-theme*=dark][data-v-29562453] {
81
+ .o-summit-live .o-summit-live-link [data-o-theme*=dark][data-v-bbfd2537] {
82
82
  background-image: var(--o-summit-live-bg-dark);
83
83
  }
84
- .o-summit-live .o-summit-live-link .o-summit-live-name[data-v-29562453] {
84
+ .o-summit-live .o-summit-live-link .o-summit-live-name[data-v-bbfd2537] {
85
85
  color: var(--o-color-info1);
86
86
  font-size: var(--o-r-font_size-h2);
87
87
  line-height: var(--o-r-line_height-h2);
@@ -92,12 +92,12 @@
92
92
  -webkit-box-orient: vertical;
93
93
  -webkit-line-clamp: 2;
94
94
  }
95
- .o-summit-live .o-summit-live-link[data-v-29562453]:hover {
95
+ .o-summit-live .o-summit-live-link[data-v-bbfd2537]:hover {
96
96
  box-shadow: var(--o-shadow-2);
97
97
  }
98
- .o-summit-live .o-summit-live-link.is-active .o-summit-live-name[data-v-29562453] {
98
+ .o-summit-live .o-summit-live-link.is-active .o-summit-live-name[data-v-bbfd2537] {
99
99
  color: #fff;
100
100
  }
101
- .o-summit-live .o-summit-live-link.is-main[data-v-29562453] {
101
+ .o-summit-live .o-summit-live-link.is-main[data-v-bbfd2537] {
102
102
  grid-column: 1/5;
103
103
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./OSummitLive.vue2.mjs";
2
2
  import './OSummitLive.css';
3
3
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const _OSummitLive = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-29562453"]]);
4
+ const _OSummitLive = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-bbfd2537"]]);
5
5
  export {
6
6
  _OSummitLive as default
7
7
  };
@@ -28,8 +28,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
28
28
  const roomId = ref(0);
29
29
  const dateIndex = ref(0);
30
30
  const currentRooms = computed(() => {
31
+ var _a2, _b;
32
+ return ((_b = (_a2 = props.section.dates) == null ? void 0 : _a2[dateIndex.value]) == null ? void 0 : _b.rooms) || [];
33
+ });
34
+ const dateLabels = computed(() => {
31
35
  var _a2;
32
- return ((_a2 = props.section.rooms) == null ? void 0 : _a2[dateIndex.value]) || [];
36
+ return ((_a2 = props.section.dates) == null ? void 0 : _a2.map((d) => d.label)) ?? [];
33
37
  });
34
38
  const liveRoom = ref((_a = currentRooms.value[0]) == null ? void 0 : _a.liveId);
35
39
  watch(currentRooms, (val) => {
@@ -43,7 +47,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
47
  emit("change", item.liveId);
44
48
  };
45
49
  const changeLive = (val) => {
46
- emit("change", Array.isArray(val) ? val[0] : val);
50
+ const liveId = Array.isArray(val) ? val[0] : val;
51
+ const idx = currentRooms.value.findIndex((item) => item.liveId === liveId);
52
+ if (idx > -1) {
53
+ roomId.value = idx;
54
+ }
55
+ emit("change", liveId);
47
56
  };
48
57
  function setHeight(data) {
49
58
  if (data.height === "auto") {
@@ -73,7 +82,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
73
82
  createVNode(OSummitTabs, {
74
83
  modelValue: dateIndex.value,
75
84
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => dateIndex.value = $event),
76
- items: props.section.dates || []
85
+ items: dateLabels.value
77
86
  }, null, 8, ["modelValue", "items"]),
78
87
  createElementVNode("div", _hoisted_3, [
79
88
  createElementVNode("div", _hoisted_4, [
@@ -1,17 +1,17 @@
1
- .hover-icon-rotate .o-icon[data-v-41c99a8e] {
1
+ .hover-icon-rotate .o-icon[data-v-9422de32] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-41c99a8e] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-9422de32] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
9
  @media (max-width: 1200px) {
10
- .o-summit-schedule[data-v-41c99a8e] {
10
+ .o-summit-schedule[data-v-9422de32] {
11
11
  position: relative;
12
12
  }
13
13
  }
14
- .o-summit-schedule .o-summit-title[data-v-41c99a8e] {
14
+ .o-summit-schedule .o-summit-title[data-v-9422de32] {
15
15
  margin-bottom: var(--o-r-gap-7);
16
16
  color: var(--o-color-info1);
17
17
  font-weight: 600;
@@ -19,30 +19,30 @@
19
19
  font-size: var(--o-r-font_size-display3);
20
20
  line-height: var(--o-r-line_height-display3);
21
21
  }
22
- .o-summit-schedule .o-summit-category-tabs[data-v-41c99a8e] {
22
+ .o-summit-schedule .o-summit-category-tabs[data-v-9422de32] {
23
23
  --tab-nav-text-size: var(--o-r-font_size-h4);
24
24
  --tab-nav-text-height: var(--o-r-line_height-h4);
25
25
  margin-bottom: var(--o-r-gap-5);
26
26
  }
27
- .o-summit-schedule .o-summit-forum-type-tabs[data-v-41c99a8e] {
27
+ .o-summit-schedule .o-summit-forum-type-tabs[data-v-9422de32] {
28
28
  margin-bottom: var(--o-r-gap-5);
29
29
  }
30
- .o-summit-schedule .o-summit-agenda-content-wrapper[data-v-41c99a8e] {
30
+ .o-summit-schedule .o-summit-agenda-content-wrapper[data-v-9422de32] {
31
31
  background-color: var(--o-color-fill2);
32
32
  border-radius: var(--o-radius-xs);
33
33
  padding: var(--o-r-gap-5) var(--o-r-gap-6);
34
34
  }
35
- .o-summit-schedule .o-summit-agenda-content[data-v-41c99a8e] {
35
+ .o-summit-schedule .o-summit-agenda-content[data-v-9422de32] {
36
36
  display: grid;
37
37
  grid-template-columns: max-content var(--o-r-gap-6) 1fr var(--o-r-gap-5) max-content var(--o-r-gap-4) 1fr;
38
38
  align-items: center;
39
39
  }
40
40
  @media (max-width: 840px) {
41
- .o-summit-schedule .o-summit-agenda-content[data-v-41c99a8e] {
41
+ .o-summit-schedule .o-summit-agenda-content[data-v-9422de32] {
42
42
  display: block;
43
43
  }
44
44
  }
45
- .o-summit-schedule .o-summit-schedule-item[data-v-41c99a8e] {
45
+ .o-summit-schedule .o-summit-schedule-item[data-v-9422de32] {
46
46
  display: grid;
47
47
  grid-template-columns: subgrid;
48
48
  grid-column: 1/-1;
@@ -54,26 +54,26 @@
54
54
  line-height: var(--o-r-line_height-text1);
55
55
  }
56
56
  @media (max-width: 1200px) {
57
- .o-summit-schedule .o-summit-schedule-item[data-v-41c99a8e] {
57
+ .o-summit-schedule .o-summit-schedule-item[data-v-9422de32] {
58
58
  padding: 6px 0;
59
59
  min-height: 36px;
60
60
  }
61
61
  }
62
62
  @media (max-width: 840px) {
63
- .o-summit-schedule .o-summit-schedule-item[data-v-41c99a8e] {
63
+ .o-summit-schedule .o-summit-schedule-item[data-v-9422de32] {
64
64
  display: flex;
65
65
  flex-direction: column;
66
66
  align-items: flex-start;
67
67
  gap: var(--o-gap-2);
68
68
  }
69
69
  }
70
- .o-summit-schedule .o-summit-schedule-item + .o-summit-schedule-item[data-v-41c99a8e] {
70
+ .o-summit-schedule .o-summit-schedule-item + .o-summit-schedule-item[data-v-9422de32] {
71
71
  border-top: 1px solid var(--o-color-control4);
72
72
  }
73
- .o-summit-schedule .o-summit-schedule-item[data-v-41c99a8e]:hover {
73
+ .o-summit-schedule .o-summit-schedule-item[data-v-9422de32]:hover {
74
74
  background-color: var(--o-color-control2-light);
75
75
  }
76
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time[data-v-41c99a8e] {
76
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time[data-v-9422de32] {
77
77
  grid-column: 1;
78
78
  color: var(--o-color-info2);
79
79
  display: flex;
@@ -81,7 +81,7 @@
81
81
  font-weight: 400;
82
82
  flex-wrap: nowrap;
83
83
  }
84
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-41c99a8e] {
84
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-9422de32] {
85
85
  --icon-size: 24px;
86
86
  height: var(--icon-size);
87
87
  width: var(--icon-size);
@@ -90,38 +90,38 @@
90
90
  margin-right: var(--o-gap-2);
91
91
  }
92
92
  @media (min-width: 1201px) and (max-width: 1680px) {
93
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-41c99a8e] {
93
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-9422de32] {
94
94
  --icon-size: 20px;
95
95
  }
96
96
  }
97
97
  @media (max-width: 840px) {
98
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-41c99a8e] {
98
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time svg[data-v-9422de32] {
99
99
  --icon-size: 16px;
100
100
  }
101
101
  }
102
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time span[data-v-41c99a8e] {
102
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-time span[data-v-9422de32] {
103
103
  white-space: nowrap;
104
104
  }
105
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topics[data-v-41c99a8e] {
105
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topics[data-v-9422de32] {
106
106
  display: grid;
107
107
  grid-template-columns: subgrid;
108
108
  grid-column: 3/-1;
109
109
  align-items: center;
110
110
  }
111
111
  @media (max-width: 840px) {
112
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topics[data-v-41c99a8e] {
112
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topics[data-v-9422de32] {
113
113
  display: block;
114
114
  width: 100%;
115
115
  }
116
116
  }
117
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic[data-v-41c99a8e] {
117
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic[data-v-9422de32] {
118
118
  display: grid;
119
119
  grid-template-columns: subgrid;
120
120
  grid-column: 1/-1;
121
121
  align-items: center;
122
122
  }
123
123
  @media (max-width: 840px) {
124
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic[data-v-41c99a8e] {
124
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic[data-v-9422de32] {
125
125
  display: flex;
126
126
  gap: var(--o-gap-2);
127
127
  flex-direction: column;
@@ -129,30 +129,30 @@
129
129
  }
130
130
  }
131
131
  @media (max-width: 840px) {
132
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic + .o-summit-schedule-topic[data-v-41c99a8e] {
132
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-topic + .o-summit-schedule-topic[data-v-9422de32] {
133
133
  margin-top: var(--o-gap-2);
134
134
  }
135
135
  }
136
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-cell[data-v-41c99a8e] {
136
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-cell[data-v-9422de32] {
137
137
  grid-column: 1;
138
138
  }
139
139
  @media (max-width: 840px) {
140
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-cell[data-v-41c99a8e] {
140
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-cell[data-v-9422de32] {
141
141
  width: 100%;
142
142
  flex-shrink: 0;
143
143
  flex-grow: 0;
144
144
  }
145
145
  }
146
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-list[data-v-41c99a8e] {
146
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc-list[data-v-9422de32] {
147
147
  display: block;
148
148
  }
149
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc[data-v-41c99a8e] {
149
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-desc[data-v-9422de32] {
150
150
  color: var(--o-color-info1);
151
151
  display: block;
152
152
  cursor: pointer;
153
153
  font-weight: 600;
154
154
  }
155
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers[data-v-41c99a8e] {
155
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers[data-v-9422de32] {
156
156
  display: grid;
157
157
  grid-template-columns: subgrid;
158
158
  grid-column: 3/6;
@@ -160,7 +160,7 @@
160
160
  align-items: center;
161
161
  }
162
162
  @media (max-width: 840px) {
163
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers[data-v-41c99a8e] {
163
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers[data-v-9422de32] {
164
164
  grid-column: auto;
165
165
  grid-template-columns: 4em 1fr;
166
166
  column-gap: var(--o-r-gap-4);
@@ -169,11 +169,11 @@
169
169
  flex-grow: 0;
170
170
  }
171
171
  }
172
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-name[data-v-41c99a8e] {
172
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-name[data-v-9422de32] {
173
173
  grid-column: 1;
174
174
  color: var(--o-color-info1);
175
175
  }
176
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-post[data-v-41c99a8e] {
176
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-post[data-v-9422de32] {
177
177
  grid-column: 3;
178
178
  display: flex;
179
179
  flex-wrap: wrap;
@@ -181,7 +181,7 @@
181
181
  color: var(--o-color-info3);
182
182
  }
183
183
  @media (max-width: 840px) {
184
- .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-post[data-v-41c99a8e] {
184
+ .o-summit-schedule .o-summit-schedule-item .o-summit-schedule-speakers .o-summit-schedule-post[data-v-9422de32] {
185
185
  grid-column: 2;
186
186
  }
187
187
  }
@@ -2,7 +2,7 @@ import _sfc_main from "./OSummitSchedule.vue2.mjs";
2
2
  import './OSummitSchedule.css';
3
3
  import './OSummitSchedule2.css';
4
4
  import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
5
- const _OSummitSchedule = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-41c99a8e"]]);
5
+ const _OSummitSchedule = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-9422de32"]]);
6
6
  export {
7
7
  _OSummitSchedule as default
8
8
  };
@@ -3,6 +3,7 @@ import { OTab, OTabPane, OPopover } from "@opensig/opendesign";
3
3
  import { useI18n } from "../../i18n/index.mjs";
4
4
  import IconTime from "../../_virtual/icon-time.mjs";
5
5
  import OSummitTabs from "./components/OSummitTabs.vue.mjs";
6
+ import { normalizeScheduleRows } from "./utils.mjs";
6
7
  const _hoisted_1 = { class: "o-summit-schedule" };
7
8
  const _hoisted_2 = {
8
9
  key: 0,
@@ -43,9 +44,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
44
  var _a;
44
45
  return (_a = props.schedule.days) == null ? void 0 : _a[dayIndex.value];
45
46
  });
47
+ const currentCategories = computed(
48
+ () => {
49
+ var _a;
50
+ return (((_a = currentDay.value) == null ? void 0 : _a.categories) ?? []).map((category) => ({
51
+ ...category,
52
+ sessions: normalizeScheduleRows(category.entries ?? [])
53
+ }));
54
+ }
55
+ );
46
56
  const currentCategory = computed(() => {
47
- var _a, _b;
48
- return (_b = (_a = currentDay.value) == null ? void 0 : _a.categories) == null ? void 0 : _b[categoryIndex.value];
57
+ var _a;
58
+ return (_a = currentCategories.value) == null ? void 0 : _a[categoryIndex.value];
49
59
  });
50
60
  const currentSessions = computed(() => {
51
61
  var _a;
@@ -114,7 +124,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
114
124
  createVNode(OSummitTabs, {
115
125
  modelValue: dayIndex.value,
116
126
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => dayIndex.value = $event),
117
- items: props.schedule.days.map((d) => d.dateLabel),
127
+ items: (props.schedule.days ?? []).map((d) => d.dateLabel),
118
128
  onChange: selectDay
119
129
  }, null, 8, ["modelValue", "items"]),
120
130
  hasCategories.value && currentDay.value ? (openBlock(), createBlock(unref(OTab), {
@@ -1,12 +1,12 @@
1
- .hover-icon-rotate .o-icon[data-v-0aa6f003] {
1
+ .hover-icon-rotate .o-icon[data-v-de6cb33f] {
2
2
  transition: all var(--o-duration-m1) var(--o-easing-standard-in);
3
3
  }
4
4
  @media (hover: hover) {
5
- .hover-icon-rotate:hover .o-icon[data-v-0aa6f003] {
5
+ .hover-icon-rotate:hover .o-icon[data-v-de6cb33f] {
6
6
  transform: rotate(-180deg);
7
7
  }
8
8
  }
9
- .o-summit-tabs[data-v-0aa6f003] {
9
+ .o-summit-tabs[data-v-de6cb33f] {
10
10
  display: flex;
11
11
  align-items: stretch;
12
12
  margin-bottom: var(--o-r-gap-5);
@@ -14,24 +14,24 @@
14
14
  --tab-height: 56px;
15
15
  }
16
16
  @media (min-width: 1201px) and (max-width: 1680px) {
17
- .o-summit-tabs[data-v-0aa6f003] {
17
+ .o-summit-tabs[data-v-de6cb33f] {
18
18
  --tab-width: 128px;
19
19
  --tab-height: 48px;
20
20
  }
21
21
  }
22
22
  @media (min-width: 841px) and (max-width: 1200px) {
23
- .o-summit-tabs[data-v-0aa6f003] {
23
+ .o-summit-tabs[data-v-de6cb33f] {
24
24
  --tab-width: 104px;
25
25
  --tab-height: 40px;
26
26
  }
27
27
  }
28
28
  @media (max-width: 840px) {
29
- .o-summit-tabs[data-v-0aa6f003] {
29
+ .o-summit-tabs[data-v-de6cb33f] {
30
30
  --tab-width: 96px;
31
31
  --tab-height: 32px;
32
32
  }
33
33
  }
34
- .o-summit-tabs .o-summit-tabs-scroller[data-v-0aa6f003] {
34
+ .o-summit-tabs .o-summit-tabs-scroller[data-v-de6cb33f] {
35
35
  display: flex;
36
36
  justify-content: center;
37
37
  flex: 1 1 auto;
@@ -40,30 +40,30 @@
40
40
  overflow-y: hidden;
41
41
  scrollbar-width: none;
42
42
  }
43
- .o-summit-tabs .o-summit-tabs-scroller[data-v-0aa6f003]::-webkit-scrollbar {
43
+ .o-summit-tabs .o-summit-tabs-scroller[data-v-de6cb33f]::-webkit-scrollbar {
44
44
  display: none;
45
45
  }
46
- .o-summit-tabs .o-summit-tabs-track[data-v-0aa6f003] {
46
+ .o-summit-tabs .o-summit-tabs-track[data-v-de6cb33f] {
47
47
  display: inline-flex;
48
48
  flex-wrap: nowrap;
49
49
  white-space: nowrap;
50
50
  }
51
- .o-summit-tabs.is-overflowing .o-summit-tabs-scroller[data-v-0aa6f003] {
51
+ .o-summit-tabs.is-overflowing .o-summit-tabs-scroller[data-v-de6cb33f] {
52
52
  justify-content: flex-start;
53
53
  }
54
- .o-summit-tabs.is-overflowing .o-summit-tab[data-v-0aa6f003]:first-child {
54
+ .o-summit-tabs.is-overflowing .o-summit-tab[data-v-de6cb33f]:first-child {
55
55
  border-radius: 0;
56
56
  }
57
- .o-summit-tabs.is-overflowing .o-summit-tab[data-v-0aa6f003]:last-child {
57
+ .o-summit-tabs.is-overflowing .o-summit-tab[data-v-de6cb33f]:last-child {
58
58
  border-radius: 0;
59
59
  }
60
- .o-summit-tabs.is-overflowing .o-summit-tabs-arrow.is-left[data-v-0aa6f003] {
60
+ .o-summit-tabs.is-overflowing .o-summit-tabs-arrow.is-left[data-v-de6cb33f] {
61
61
  border-radius: var(--o-radius-xs) 0 0 var(--o-radius-xs);
62
62
  }
63
- .o-summit-tabs.is-overflowing .o-summit-tabs-arrow.is-right[data-v-0aa6f003] {
63
+ .o-summit-tabs.is-overflowing .o-summit-tabs-arrow.is-right[data-v-de6cb33f] {
64
64
  border-radius: 0 var(--o-radius-xs) var(--o-radius-xs) 0;
65
65
  }
66
- .o-summit-tabs .o-summit-tab[data-v-0aa6f003] {
66
+ .o-summit-tabs .o-summit-tab[data-v-de6cb33f] {
67
67
  cursor: pointer;
68
68
  color: var(--o-color-info1);
69
69
  min-width: var(--tab-width);
@@ -75,27 +75,28 @@
75
75
  font-size: var(--o-r-font_size-h3);
76
76
  line-height: var(--tab-height);
77
77
  }
78
- .o-summit-tabs .o-summit-tab[data-v-0aa6f003]:first-child {
78
+ .o-summit-tabs .o-summit-tab[data-v-de6cb33f]:first-child {
79
79
  border-radius: var(--o-radius-xs) 0 0 var(--o-radius-xs);
80
80
  }
81
- .o-summit-tabs .o-summit-tab[data-v-0aa6f003]:last-child {
81
+ .o-summit-tabs .o-summit-tab[data-v-de6cb33f]:last-child {
82
82
  border-radius: 0 var(--o-radius-xs) var(--o-radius-xs) 0;
83
83
  }
84
- .o-summit-tabs .o-summit-tab[data-v-0aa6f003]:hover {
84
+ .o-summit-tabs .o-summit-tab[data-v-de6cb33f]:hover {
85
85
  color: var(--o-color-primary2);
86
86
  }
87
- .o-summit-tabs .o-summit-tab[data-v-0aa6f003]:focus {
87
+ .o-summit-tabs .o-summit-tab[data-v-de6cb33f]:focus {
88
88
  color: var(--o-color-primary3);
89
89
  }
90
- .o-summit-tabs .o-summit-tab.is-active[data-v-0aa6f003] {
90
+ .o-summit-tabs .o-summit-tab.is-active[data-v-de6cb33f] {
91
91
  color: #fff;
92
92
  background: var(--o-color-primary1);
93
93
  }
94
- .o-summit-tabs .o-summit-tab.is-disabled[data-v-0aa6f003] {
94
+ .o-summit-tabs .o-summit-tab.is-disabled[data-v-de6cb33f] {
95
95
  color: var(--o-color-info4);
96
96
  background: var(--o-color-fill3);
97
+ cursor: not-allowed;
97
98
  }
98
- .o-summit-tabs .o-summit-tabs-arrow[data-v-0aa6f003] {
99
+ .o-summit-tabs .o-summit-tabs-arrow[data-v-de6cb33f] {
99
100
  display: flex;
100
101
  align-items: center;
101
102
  justify-content: center;
@@ -107,28 +108,28 @@
107
108
  cursor: pointer;
108
109
  background-color: transparent;
109
110
  }
110
- .o-summit-tabs .o-summit-tabs-arrow .o-icon[data-v-0aa6f003] {
111
+ .o-summit-tabs .o-summit-tabs-arrow .o-icon[data-v-de6cb33f] {
111
112
  --icon-size: 24px;
112
113
  }
113
114
  @media (max-width: 840px) {
114
- .o-summit-tabs .o-summit-tabs-arrow .o-icon[data-v-0aa6f003] {
115
+ .o-summit-tabs .o-summit-tabs-arrow .o-icon[data-v-de6cb33f] {
115
116
  --icon-size: 20px;
116
117
  }
117
118
  }
118
- .o-summit-tabs .o-summit-tabs-arrow[data-v-0aa6f003]:hover {
119
+ .o-summit-tabs .o-summit-tabs-arrow[data-v-de6cb33f]:hover {
119
120
  color: var(--o-color-primary2);
120
121
  }
121
- .o-summit-tabs .o-summit-tabs-arrow[data-v-0aa6f003]:focus {
122
+ .o-summit-tabs .o-summit-tabs-arrow[data-v-de6cb33f]:focus {
122
123
  color: var(--o-color-primary3);
123
124
  }
124
- .o-summit-tabs .o-summit-tabs-arrow.is-disabled[data-v-0aa6f003] {
125
+ .o-summit-tabs .o-summit-tabs-arrow.is-disabled[data-v-de6cb33f] {
125
126
  color: var(--o-color-info4);
126
127
  cursor: not-allowed;
127
128
  }
128
- .o-summit-tabs .o-summit-tabs-arrow.is-disabled[data-v-0aa6f003]:hover {
129
+ .o-summit-tabs .o-summit-tabs-arrow.is-disabled[data-v-de6cb33f]:hover {
129
130
  color: var(--o-color-info4);
130
131
  }
131
- .o-summit-tabs-single[data-v-0aa6f003] {
132
+ .o-summit-tabs-single[data-v-de6cb33f] {
132
133
  margin-bottom: var(--o-r-gap-5);
133
134
  color: var(--o-color-info1);
134
135
  font-weight: 500;
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./OSummitTabs.vue2.mjs";
2
2
  import './OSummitTabs.css';
3
3
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
4
- const OSummitTabs = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0aa6f003"]]);
4
+ const OSummitTabs = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-de6cb33f"]]);
5
5
  export {
6
6
  OSummitTabs as default
7
7
  };
@@ -21,6 +21,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
21
21
  const props = __props;
22
22
  const emit = __emit;
23
23
  const select = (idx) => {
24
+ var _a;
25
+ if ((_a = props.disabled) == null ? void 0 : _a.includes(idx)) return;
24
26
  emit("update:modelValue", idx);
25
27
  emit("change", idx);
26
28
  };
@@ -29,10 +29,13 @@ export interface SummitScheduleEntryT {
29
29
  export interface SummitSchedulePropsT {
30
30
  schedule: SummitScheduleT;
31
31
  }
32
+ export interface SummitLiveDateT {
33
+ label: string;
34
+ rooms: SummitLiveRoomT[];
35
+ }
32
36
  export interface SummitLiveSectionT {
33
37
  title?: string;
34
- dates?: string[];
35
- rooms?: SummitLiveRoomT[][];
38
+ dates?: SummitLiveDateT[];
36
39
  }
37
40
  export interface SummitSubForumT {
38
41
  id: number | string;
@@ -40,17 +43,16 @@ export interface SummitSubForumT {
40
43
  detailMode?: 'popover';
41
44
  items: SummitScheduleEntryT[];
42
45
  }
43
- export interface SummitSessionT {
44
- id: string;
45
- label: string;
46
+ export interface SummitScheduleRowT extends SummitScheduleEntryT {
47
+ session?: string;
48
+ forum?: string;
46
49
  duration?: string;
47
- items?: SummitScheduleEntryT[];
48
- subForums?: SummitSubForumT[];
50
+ detailMode?: 'popover';
49
51
  }
50
52
  export interface SummitCategoryT {
51
53
  id: string;
52
54
  name: string;
53
- sessions: SummitSessionT[];
55
+ entries: SummitScheduleRowT[];
54
56
  }
55
57
  export interface SummitScheduleDayT {
56
58
  dateLabel: string;
@@ -58,7 +60,14 @@ export interface SummitScheduleDayT {
58
60
  }
59
61
  export interface SummitScheduleT {
60
62
  title?: string;
61
- days: SummitScheduleDayT[];
63
+ days?: SummitScheduleDayT[];
64
+ }
65
+ export interface SummitSessionT {
66
+ id: string;
67
+ label: string;
68
+ duration?: string;
69
+ items?: SummitScheduleEntryT[];
70
+ subForums?: SummitSubForumT[];
62
71
  }
63
72
  export interface SummitPropsT {
64
73
  descList?: string[];
@@ -0,0 +1,11 @@
1
+ import { SummitScheduleRowT, SummitSessionT } from './types';
2
+ /**
3
+ * 将分类下的平铺行归一化为 session/subForums 树(保持各维度首次出现顺序)。
4
+ *
5
+ * 规则:
6
+ * - session 维度分组,缺省归入单一匿名时段('')
7
+ * - session 内:带 forum 的行按 forum 分组为 subForums;不带 forum 的行归入 items
8
+ * - duration / detailMode 取组内首个非空值
9
+ * - 同一 session 内混用「带 forum」与「不带 forum」的行时,渲染层 items 优先,subForums 会被忽略
10
+ */
11
+ export declare function normalizeScheduleRows(rows: SummitScheduleRowT[]): SummitSessionT[];