@icvdeveloper/common-module 0.0.89 → 0.0.91

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 (93) hide show
  1. package/README.md +6 -6
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/@types/components.d.ts +4 -1
  4. package/dist/runtime/assets/scss/index.css +0 -705
  5. package/dist/runtime/assets/svg/answer.svg +14 -14
  6. package/dist/runtime/assets/svg/avatar.svg +1 -1
  7. package/dist/runtime/assets/svg/bell-icon.svg +3 -3
  8. package/dist/runtime/assets/svg/checkmark-icon.svg +1 -1
  9. package/dist/runtime/assets/svg/close-icon.svg +1 -1
  10. package/dist/runtime/assets/svg/icon-avatar.svg +1 -1
  11. package/dist/runtime/assets/svg/icon-chevron.svg +4 -4
  12. package/dist/runtime/assets/svg/icon-circle-plus.svg +1 -1
  13. package/dist/runtime/assets/svg/icon-close.svg +1 -1
  14. package/dist/runtime/assets/svg/icon-info.svg +2 -2
  15. package/dist/runtime/assets/svg/icon-new-window.svg +11 -11
  16. package/dist/runtime/assets/svg/icon-offline.svg +3 -3
  17. package/dist/runtime/assets/svg/icon-online.svg +3 -3
  18. package/dist/runtime/assets/svg/icon-person.svg +2 -2
  19. package/dist/runtime/assets/svg/icon-play.svg +2 -2
  20. package/dist/runtime/assets/svg/icon-star-filled.svg +29 -29
  21. package/dist/runtime/assets/svg/icon-star.svg +24 -24
  22. package/dist/runtime/assets/svg/icon-video-chat.svg +14 -14
  23. package/dist/runtime/assets/svg/icon-website.svg +2 -2
  24. package/dist/runtime/assets/svg/icon-zoom.svg +10 -10
  25. package/dist/runtime/assets/svg/notification-icon.svg +32 -32
  26. package/dist/runtime/assets/svg/offline-icon.svg +1 -1
  27. package/dist/runtime/assets/svg/online-icon.svg +3 -3
  28. package/dist/runtime/assets/svg/peer2peer.svg +3 -3
  29. package/dist/runtime/assets/svg/phone.svg +1 -1
  30. package/dist/runtime/assets/svg/plus-icon.svg +1 -1
  31. package/dist/runtime/assets/svg/red-icon.svg +3 -3
  32. package/dist/runtime/assets/svg/reject.svg +14 -14
  33. package/dist/runtime/assets/svg/search-icon.svg +3 -3
  34. package/dist/runtime/components/affiliates/AffiliatePage.vue +17 -17
  35. package/dist/runtime/components/agenda/AgendaList.vue +243 -234
  36. package/dist/runtime/components/agenda/AgendaTabbed.vue +309 -309
  37. package/dist/runtime/components/agenda/components/AgendaListAccordion.vue +53 -53
  38. package/dist/runtime/components/agenda/components/Calendar.vue +89 -89
  39. package/dist/runtime/components/agenda/components/InfoLink.vue +56 -56
  40. package/dist/runtime/components/agenda/components/PlayIcon.vue +49 -49
  41. package/dist/runtime/components/agenda/components/PresentationLink.vue +137 -137
  42. package/dist/runtime/components/agenda/components/Sponsor.vue +132 -132
  43. package/dist/runtime/components/auth/LoginFullWidth.vue +78 -78
  44. package/dist/runtime/components/auth/PasswordReset.vue +60 -60
  45. package/dist/runtime/components/auth/Registration.vue +27 -27
  46. package/dist/runtime/components/auth/Ucc.vue +81 -79
  47. package/dist/runtime/components/core/Accordion.vue +97 -97
  48. package/dist/runtime/components/core/CountdownTimer.vue +357 -308
  49. package/dist/runtime/components/core/DynamicHtml.vue +1 -1
  50. package/dist/runtime/components/core/Modal.vue +111 -111
  51. package/dist/runtime/components/core/Navbar.vue +154 -154
  52. package/dist/runtime/components/core/SvgIcon.vue +151 -151
  53. package/dist/runtime/components/core/ZoomModal.vue +37 -37
  54. package/dist/runtime/components/events/EventHeader.vue +133 -133
  55. package/dist/runtime/components/events/ListEvents.vue +531 -521
  56. package/dist/runtime/components/forms/AlertBox.vue +21 -21
  57. package/dist/runtime/components/forms/ErrorField.vue +17 -17
  58. package/dist/runtime/components/forms/Message.vue +27 -27
  59. package/dist/runtime/components/forms/SearchInput.vue +38 -38
  60. package/dist/runtime/components/forms/SupportForm.vue +112 -112
  61. package/dist/runtime/components/forms/SwitchInput.vue +42 -42
  62. package/dist/runtime/components/forms/TextArea.vue +26 -26
  63. package/dist/runtime/components/forms/TextInput.vue +28 -28
  64. package/dist/runtime/components/layouts/Accordion.vue +78 -78
  65. package/dist/runtime/components/media/PlayerAndContentContainer.vue +175 -175
  66. package/dist/runtime/components/media/WebcastVideoPlayer.vue +167 -167
  67. package/dist/runtime/components/media/components/AgendaPanel.vue +43 -42
  68. package/dist/runtime/components/media/components/CeCreditNotification.vue +95 -95
  69. package/dist/runtime/components/media/components/ContentAccordion.vue +63 -63
  70. package/dist/runtime/components/media/components/ContentAccordion.vue.d.ts +3 -1
  71. package/dist/runtime/components/media/components/ContentArea.vue +158 -158
  72. package/dist/runtime/components/media/components/ContentTabs.vue +231 -229
  73. package/dist/runtime/components/media/components/DocumentsPanel.vue +31 -31
  74. package/dist/runtime/components/media/components/JsonApi.vue +31 -31
  75. package/dist/runtime/components/media/components/MediaContainer.vue +63 -63
  76. package/dist/runtime/components/media/components/OverviewPanel.vue +52 -52
  77. package/dist/runtime/components/media/components/PresentersPanel.vue +52 -52
  78. package/dist/runtime/components/media/components/SessionReporting.vue +93 -93
  79. package/dist/runtime/components/media/components/SponsorsPanel.vue +71 -71
  80. package/dist/runtime/components/media/components/WindowContent.vue +92 -92
  81. package/dist/runtime/components/media/components/WindowSlide.vue +72 -72
  82. package/dist/runtime/components/presenters/PresenterListing.vue +164 -164
  83. package/dist/runtime/components/presenters/PresenterModal.vue +223 -223
  84. package/dist/runtime/components/profile/Profile.vue +149 -149
  85. package/dist/runtime/components/profile/components/Sidebar.vue +27 -27
  86. package/dist/runtime/components/profile/components/SidebarNavItem.vue +39 -39
  87. package/dist/runtime/components/profile/tabs/Favorites.vue +21 -21
  88. package/dist/runtime/components/profile/tabs/GeneralInformation.vue +122 -122
  89. package/dist/runtime/components/profile/tabs/ProfileImage.vue +75 -75
  90. package/dist/runtime/components/support/FAQAccordion.vue +140 -140
  91. package/dist/runtime/composables/useConferenceHelpers.mjs +2 -2
  92. package/dist/runtime/composables/useDateFormat.mjs +1 -1
  93. package/package.json +1 -1
@@ -1,14 +1,14 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg width="50px" height="50px" viewBox="0 0 525 525" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
- <!-- Generator: Sketch 52.6 (67491) - http://www.bohemiancoding.com/sketch -->
4
- <title>reject</title>
5
- <desc>Created with Sketch.</desc>
6
- <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
7
- <g id="Video-Call-yes-no-(1)" transform="translate(-622.000000, -134.000000)">
8
- <g id="reject" transform="translate(622.000000, 134.000000)">
9
- <circle id="Oval" fill="#9F2214" cx="262.32" cy="262.62" r="262.12"></circle>
10
- <path d="M431.13,324.68 C439.848013,309.180629 442.302617,290.932119 437.99,273.68 C416.99,187.68 263.99,190.13 263.99,190.13 C263.99,190.13 111,182.69 87.24,267.92 C82.3719639,285.020231 84.2288246,303.334817 92.43,319.11 L92.5,319.26 C96.787592,327.204682 105.735171,331.447697 114.6,329.74 L185.18,316.46 C185.18,316.46 208.36,310.18 206.24,290.15 C205.764001,286.286139 204.631018,282.532076 202.89,279.05 C199.05,267.58 192.23,250.83 184.23,247.22 C194.73,243.76 220.14,237.37 263.05,238.07 C305.96,238.77 331.14,246 341.52,249.8 C333.41,253.15 326.05,269.66 321.82,281.01 C319.970001,284.440405 318.715528,288.159869 318.11,292.01 C315.33,311.95 338.29,319.01 338.29,319.01 L408.61,334.65 C417.413254,336.643207 426.492273,332.696687 431.04,324.9 L431.13,324.68 Z" id="Path" fill="#FFFFFF"></path>
11
- </g>
12
- </g>
13
- </g>
14
- </svg>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="50px" height="50px" viewBox="0 0 525 525" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <!-- Generator: Sketch 52.6 (67491) - http://www.bohemiancoding.com/sketch -->
4
+ <title>reject</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
7
+ <g id="Video-Call-yes-no-(1)" transform="translate(-622.000000, -134.000000)">
8
+ <g id="reject" transform="translate(622.000000, 134.000000)">
9
+ <circle id="Oval" fill="#9F2214" cx="262.32" cy="262.62" r="262.12"></circle>
10
+ <path d="M431.13,324.68 C439.848013,309.180629 442.302617,290.932119 437.99,273.68 C416.99,187.68 263.99,190.13 263.99,190.13 C263.99,190.13 111,182.69 87.24,267.92 C82.3719639,285.020231 84.2288246,303.334817 92.43,319.11 L92.5,319.26 C96.787592,327.204682 105.735171,331.447697 114.6,329.74 L185.18,316.46 C185.18,316.46 208.36,310.18 206.24,290.15 C205.764001,286.286139 204.631018,282.532076 202.89,279.05 C199.05,267.58 192.23,250.83 184.23,247.22 C194.73,243.76 220.14,237.37 263.05,238.07 C305.96,238.77 331.14,246 341.52,249.8 C333.41,253.15 326.05,269.66 321.82,281.01 C319.970001,284.440405 318.715528,288.159869 318.11,292.01 C315.33,311.95 338.29,319.01 338.29,319.01 L408.61,334.65 C417.413254,336.643207 426.492273,332.696687 431.04,324.9 L431.13,324.68 Z" id="Path" fill="#FFFFFF"></path>
11
+ </g>
12
+ </g>
13
+ </g>
14
+ </svg>
@@ -1,3 +1,3 @@
1
- <svg class="fill-current text-grey h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
2
- <path d="M12.9 14.32a8 8 0 1 1 1.41-1.41l5.35 5.33-1.42 1.42-5.33-5.34zM8 14A6 6 0 1 0 8 2a6 6 0 0 0 0 12z" />
3
- </svg>
1
+ <svg class="fill-current text-grey h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
2
+ <path d="M12.9 14.32a8 8 0 1 1 1.41-1.41l5.35 5.33-1.42 1.42-5.33-5.34zM8 14A6 6 0 1 0 8 2a6 6 0 0 0 0 12z" />
3
+ </svg>
@@ -1,17 +1,17 @@
1
- <script lang="ts" setup>
2
- import { toRefs } from "vue";
3
- import { Affiliate } from "../../models/affiliate";
4
- import { Sponsor } from "../../models/conference";
5
-
6
- type Props = {
7
- affiliate: Affiliate | Sponsor;
8
- };
9
-
10
- const props = defineProps<Props>();
11
-
12
- const { affiliate } = toRefs(props);
13
- </script>
14
-
15
- <template>
16
- <div class="flex w-full flex-col"></div>
17
- </template>
1
+ <script lang="ts" setup>
2
+ import { toRefs } from "vue";
3
+ import { Affiliate } from "../../models/affiliate";
4
+ import { Sponsor } from "../../models/conference";
5
+
6
+ type Props = {
7
+ affiliate: Affiliate | Sponsor;
8
+ };
9
+
10
+ const props = defineProps<Props>();
11
+
12
+ const { affiliate } = toRefs(props);
13
+ </script>
14
+
15
+ <template>
16
+ <div class="flex w-full flex-col"></div>
17
+ </template>
@@ -1,236 +1,245 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs } from "vue";
3
- import { add } from "date-fns";
4
- import type { Conference } from "../../models/conference";
5
- import { useAgenda } from "../../composables/useAgenda";
6
- import { useDateFormat } from "../../composables/useDateFormat";
7
- import { usePresenter } from "../../composables/usePresenter";
8
- import { useClassBinding } from "../../composables/useClassBinding";
9
- import { Presenter } from "../../models/conference";
10
- import {
11
- AgendaListClassObj,
12
- AgendaListCompObj,
13
- AgendaListAccordionClassObj,
14
- } from "../../@types/components";
15
- import AgendaAccordion from "./components/AgendaListAccordion.vue";
16
- import Calendar from "./components/Calendar.vue";
17
-
18
- type Props = {
19
- conference: Conference;
20
- classObject?: AgendaListClassObj;
21
- };
22
-
23
- const props = withDefaults(defineProps<Props>(), {
24
- classObject: () => {
25
- return {
26
- container: "",
27
- accordionContainer: "",
28
- titleContainer: "",
29
- timeElement: "",
30
- iconContainer: "",
31
- dropdownContainer: "",
32
- marginElement: "",
33
- presentersContainer: "",
34
- presentersHeader: "",
35
- presenterListContainer: "",
36
- presenterElement: "",
37
- presenterName: "",
38
- components: ref<AgendaListCompObj>({
39
- agendaListAccordion: ref<AgendaListAccordionClassObj>({}),
40
- }),
41
- };
42
- },
43
- });
44
-
45
- const { conference } = toRefs(props);
46
-
47
- const { days, getCombinedTrackList } = useAgenda(conference);
48
- const { formatTimezoneToLocal } = useDateFormat();
49
- const { classBinding } = useClassBinding();
50
-
51
- const presentersToComposables = (presenters: Presenter[]) => {
52
- const data = [];
53
-
54
- presenters.forEach((presenter) => {
55
- data.push({
56
- presenter,
57
- ...usePresenter(presenter),
58
- });
59
- });
60
-
61
- return data;
62
- };
63
- </script>
64
-
65
- <template>
66
- <div
67
- :class="
68
- classBinding(
69
- classObject,
70
- 'container',
71
- 'flex flex-col space-y-5 text-neutral-700'
72
- )
73
- "
74
- >
75
- <template v-for="day in days">
76
- <template v-for="track in getCombinedTrackList(day)">
77
- <div
78
- v-for="presentation in track.presentations"
79
- :key="presentation.id"
80
- :class="classBinding(classObject, 'accordionContainer', '')"
81
- >
82
- <AgendaAccordion
83
- :class-object="classObject.components.agendaListAccordion"
84
- >
85
- <template #header="isExpanded">
86
- <div
87
- :class="
88
- classBinding(
89
- classObject,
90
- 'titleContainer',
91
- 'text-left text-xl flex-col md:flex-row flex'
92
- )
93
- "
94
- >
95
- <span
96
- :class="
97
- classBinding(classObject, 'timeElement', 'time-width')
98
- "
99
- >
100
- {{
101
- formatTimezoneToLocal(
102
- presentation.date,
103
- "h:mm",
104
- conference.timezone
105
- )
106
- }}
107
- -
108
- {{
109
- formatTimezoneToLocal(
110
- add(new Date(presentation.date), {
111
- seconds: presentation.duration,
112
- }),
113
- "h:mm",
114
- conference.timezone
115
- )
116
- }}
117
- </span>
118
- <span
119
- :class="
120
- classBinding(
121
- classObject,
122
- 'iconContainer',
123
- 'flex flex-row md:ml-5'
124
- )
125
- "
126
- >
127
- <CommonSvgIcon
128
- :class-object="{ svgElement: 'fill-neutral-700' }"
129
- class="mr-1 pt-1"
130
- icon="circlePlus"
131
- />
132
- {{ presentation.name }}
133
- </span>
134
- </div>
135
- </template>
136
- <template #body>
137
- <div
138
- :class="
139
- classBinding(
140
- classObject,
141
- 'dropdownContainer',
142
- 'flex flex-row'
143
- )
144
- "
145
- >
146
- <!-- left margin element -->
147
- <span
148
- :class="
149
- classBinding(
150
- classObject,
151
- 'marginElement',
152
- 'text-lg hidden md:block md:flex-initial time-width md:mr-8'
153
- )
154
- "
155
- />
156
- <div
157
- :class="
158
- classBinding(
159
- classObject,
160
- 'presentersContainer',
161
- 'flex-1 my-3'
162
- )
163
- "
164
- >
165
- <!-- ADD TO CALENDAR -->
166
- <calendar
167
- :key="conference.id"
168
- class="mb-3"
169
- :presentation="presentation"
170
- :conference="conference"
171
- />
172
- <h3
173
- :class="
174
- classBinding(
175
- classObject,
176
- 'presentersHeader',
177
- 'font-bold text-lg'
178
- )
179
- "
180
- >
181
- Presenters
182
- </h3>
183
- <div
184
- :class="
185
- classBinding(
186
- classObject,
187
- 'presenterListContainer',
188
- 'flex flex-col space-y-3'
189
- )
190
- "
191
- >
192
- <div
193
- v-for="presenter in presentersToComposables(
194
- presentation.presenters
195
- )"
196
- :key="presenter.presenter.id"
197
- :class="classBinding(classObject, 'presenterElement', '')"
198
- >
199
- <p
200
- :class="
201
- classBinding(
202
- classObject,
203
- 'presenterName',
204
- 'text-lg pb-0 mb-0'
205
- )
206
- "
207
- >
208
- {{ presenter.fullName.value }}
209
- </p>
210
- <p
211
- v-if="presenter.titleCompany.value"
212
- :class="
213
- classBinding(
214
- classObject,
215
- 'presenterName',
216
- 'text-sm pt-0 mb-1'
217
- )
218
- "
219
- >
220
- {{ presenter.titleCompany.value }}
221
- </p>
222
- </div>
223
- </div>
224
- </div>
225
- </div>
226
- </template>
227
- </AgendaAccordion>
228
- </div>
229
- </template>
230
- </template>
231
- </div>
232
- </template>
233
-
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs } from "vue";
3
+ import { add } from "date-fns";
4
+ import type { Conference } from "../../models/conference";
5
+ import { useAgenda } from "../../composables/useAgenda";
6
+ import { useDateFormat } from "../../composables/useDateFormat";
7
+ import { usePresenter } from "../../composables/usePresenter";
8
+ import { useClassBinding } from "../../composables/useClassBinding";
9
+ import { Presenter } from "../../models/conference";
10
+ import {
11
+ AgendaListClassObj,
12
+ AgendaListCompObj,
13
+ AgendaListAccordionClassObj,
14
+ } from "../../@types/components";
15
+ import AgendaAccordion from "./components/AgendaListAccordion.vue";
16
+ import Calendar from "./components/Calendar.vue";
17
+
18
+ type Props = {
19
+ conference: Conference;
20
+ useCalendar?: boolean;
21
+ classObject?: AgendaListClassObj;
22
+ };
23
+
24
+ const props = withDefaults(defineProps<Props>(), {
25
+ useCalendar: true,
26
+ classObject: () => {
27
+ return {
28
+ container: "",
29
+ accordionContainer: "",
30
+ titleContainer: "",
31
+ timeElement: "",
32
+ iconTextElement: "",
33
+ iconElement: "",
34
+ iconWidth: "20px",
35
+ dropdownContainer: "",
36
+ marginElement: "",
37
+ presentersContainer: "",
38
+ presentersHeader: "",
39
+ presenterListContainer: "",
40
+ presenterElement: "",
41
+ presenterName: "",
42
+ presenterTitle: "",
43
+ components: ref<AgendaListCompObj>({
44
+ agendaListAccordion: ref<AgendaListAccordionClassObj>({}),
45
+ }),
46
+ };
47
+ },
48
+ });
49
+
50
+ const { conference } = toRefs(props);
51
+
52
+ const { days, getCombinedTrackList } = useAgenda(conference);
53
+ const { formatTimezoneToLocal } = useDateFormat();
54
+ const { classBinding } = useClassBinding();
55
+
56
+ const presentersToComposables = (presenters: Presenter[]) => {
57
+ const data = [];
58
+
59
+ presenters.forEach((presenter) => {
60
+ data.push({
61
+ presenter,
62
+ ...usePresenter(presenter),
63
+ });
64
+ });
65
+
66
+ return data;
67
+ };
68
+ </script>
69
+
70
+ <template>
71
+ <div
72
+ :class="
73
+ classBinding(
74
+ classObject,
75
+ 'container',
76
+ 'flex flex-col space-y-5 text-neutral-700'
77
+ )
78
+ "
79
+ >
80
+ <template v-for="day in days">
81
+ <template v-for="track in getCombinedTrackList(day)">
82
+ <div
83
+ v-for="presentation in track.presentations"
84
+ :key="presentation.id"
85
+ :class="classBinding(classObject, 'accordionContainer', '')"
86
+ >
87
+ <AgendaAccordion
88
+ :class-object="classObject.components.agendaListAccordion"
89
+ >
90
+ <template #header="isExpanded">
91
+ <div
92
+ :class="
93
+ classBinding(
94
+ classObject,
95
+ 'titleContainer',
96
+ 'text-left text-xl flex-col md:flex-row flex'
97
+ )
98
+ "
99
+ >
100
+ <span
101
+ :class="
102
+ classBinding(classObject, 'timeElement', 'time-width')
103
+ "
104
+ >
105
+ {{
106
+ formatTimezoneToLocal(
107
+ presentation.date,
108
+ "h:mm",
109
+ conference.timezone
110
+ )
111
+ }}
112
+ -
113
+ {{
114
+ formatTimezoneToLocal(
115
+ add(new Date(presentation.date), {
116
+ seconds: presentation.duration,
117
+ }),
118
+ "h:mm",
119
+ conference.timezone
120
+ )
121
+ }}
122
+ </span>
123
+ <span
124
+ :class="
125
+ classBinding(
126
+ classObject,
127
+ 'iconTextElement',
128
+ 'flex flex-row md:ml-5'
129
+ )
130
+ "
131
+ >
132
+ <CommonSvgIcon
133
+ :class-object="{ svgElement: 'fill-neutral-700' }"
134
+ :class="
135
+ classBinding(classObject, 'iconElement', 'mr-1 pt-1')
136
+ "
137
+ icon="circlePlus"
138
+ :width="classObject.iconWidth"
139
+ />
140
+ {{ presentation.name }}
141
+ </span>
142
+ </div>
143
+ </template>
144
+ <template #body>
145
+ <div
146
+ :class="
147
+ classBinding(
148
+ classObject,
149
+ 'dropdownContainer',
150
+ 'flex flex-row'
151
+ )
152
+ "
153
+ >
154
+ <!-- left margin element -->
155
+ <span
156
+ :class="
157
+ classBinding(
158
+ classObject,
159
+ 'marginElement',
160
+ 'text-lg hidden md:block md:flex-initial time-width md:mr-8'
161
+ )
162
+ "
163
+ />
164
+ <div
165
+ :class="
166
+ classBinding(
167
+ classObject,
168
+ 'presentersContainer',
169
+ 'flex-1 my-3'
170
+ )
171
+ "
172
+ >
173
+ <!-- ADD TO CALENDAR -->
174
+ <calendar
175
+ v-if="useCalendar"
176
+ :key="conference.id"
177
+ class="mb-3"
178
+ :presentation="presentation"
179
+ :conference="conference"
180
+ />
181
+ <h3
182
+ :class="
183
+ classBinding(
184
+ classObject,
185
+ 'presentersHeader',
186
+ 'font-bold text-lg'
187
+ )
188
+ "
189
+ >
190
+ Presenters
191
+ </h3>
192
+ <div
193
+ :class="
194
+ classBinding(
195
+ classObject,
196
+ 'presenterListContainer',
197
+ 'flex flex-col space-y-3'
198
+ )
199
+ "
200
+ >
201
+ <div
202
+ v-for="presenter in presentersToComposables(
203
+ presentation.presenters
204
+ )"
205
+ :key="presenter.presenter.id"
206
+ :class="classBinding(classObject, 'presenterElement', '')"
207
+ >
208
+ <p
209
+ :class="
210
+ classBinding(
211
+ classObject,
212
+ 'presenterName',
213
+ 'text-lg pb-0 mb-0'
214
+ )
215
+ "
216
+ >
217
+ {{ presenter.fullName.value }}
218
+ </p>
219
+ <p
220
+ v-if="presenter.titleCompany.value"
221
+ :class="
222
+ classBinding(
223
+ classObject,
224
+ 'presenterTitle',
225
+ 'text-sm pt-0 mb-1'
226
+ )
227
+ "
228
+ >
229
+ {{ presenter.titleCompany.value }}
230
+ </p>
231
+ </div>
232
+ </div>
233
+ </div>
234
+ </div>
235
+ </template>
236
+ </AgendaAccordion>
237
+ </div>
238
+ </template>
239
+ </template>
240
+ </div>
241
+ </template>
242
+
234
243
  <style>
235
244
  .accord {
236
245
  transition: height var(--vc-auto-duration) ease-out;
@@ -239,4 +248,4 @@ const presentersToComposables = (presenters: Presenter[]) => {
239
248
  .time-width {
240
249
  min-width: 10ch;
241
250
  }
242
- </style>
251
+ </style>