@icvdeveloper/common-module 0.0.96 → 0.0.97

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 (92) hide show
  1. package/README.md +6 -6
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/assets/svg/answer.svg +14 -14
  4. package/dist/runtime/assets/svg/avatar.svg +1 -1
  5. package/dist/runtime/assets/svg/bell-icon.svg +3 -3
  6. package/dist/runtime/assets/svg/checkmark-icon.svg +1 -1
  7. package/dist/runtime/assets/svg/close-icon.svg +1 -1
  8. package/dist/runtime/assets/svg/icon-avatar.svg +1 -1
  9. package/dist/runtime/assets/svg/icon-chevron.svg +4 -4
  10. package/dist/runtime/assets/svg/icon-circle-plus.svg +1 -1
  11. package/dist/runtime/assets/svg/icon-close.svg +1 -1
  12. package/dist/runtime/assets/svg/icon-info.svg +2 -2
  13. package/dist/runtime/assets/svg/icon-new-window.svg +11 -11
  14. package/dist/runtime/assets/svg/icon-offline.svg +3 -3
  15. package/dist/runtime/assets/svg/icon-online.svg +3 -3
  16. package/dist/runtime/assets/svg/icon-person.svg +2 -2
  17. package/dist/runtime/assets/svg/icon-play.svg +2 -2
  18. package/dist/runtime/assets/svg/icon-star-filled.svg +29 -29
  19. package/dist/runtime/assets/svg/icon-star.svg +24 -24
  20. package/dist/runtime/assets/svg/icon-video-chat.svg +14 -14
  21. package/dist/runtime/assets/svg/icon-website.svg +2 -2
  22. package/dist/runtime/assets/svg/icon-zoom.svg +10 -10
  23. package/dist/runtime/assets/svg/notification-icon.svg +32 -32
  24. package/dist/runtime/assets/svg/offline-icon.svg +1 -1
  25. package/dist/runtime/assets/svg/online-icon.svg +3 -3
  26. package/dist/runtime/assets/svg/peer2peer.svg +3 -3
  27. package/dist/runtime/assets/svg/phone.svg +1 -1
  28. package/dist/runtime/assets/svg/plus-icon.svg +1 -1
  29. package/dist/runtime/assets/svg/red-icon.svg +3 -3
  30. package/dist/runtime/assets/svg/reject.svg +14 -14
  31. package/dist/runtime/assets/svg/search-icon.svg +3 -3
  32. package/dist/runtime/components/affiliates/AffiliatePage.vue +17 -17
  33. package/dist/runtime/components/agenda/AgendaList.vue +243 -243
  34. package/dist/runtime/components/agenda/AgendaTabbed.vue +309 -309
  35. package/dist/runtime/components/agenda/components/AgendaListAccordion.vue +53 -53
  36. package/dist/runtime/components/agenda/components/Calendar.vue +89 -89
  37. package/dist/runtime/components/agenda/components/InfoLink.vue +56 -56
  38. package/dist/runtime/components/agenda/components/PlayIcon.vue +49 -49
  39. package/dist/runtime/components/agenda/components/PresentationLink.vue +137 -137
  40. package/dist/runtime/components/agenda/components/Sponsor.vue +132 -132
  41. package/dist/runtime/components/auth/LoginFullWidth.vue +78 -78
  42. package/dist/runtime/components/auth/PasswordReset.vue +60 -60
  43. package/dist/runtime/components/auth/Registration.vue +27 -27
  44. package/dist/runtime/components/auth/Ucc.vue +81 -81
  45. package/dist/runtime/components/core/Accordion.vue +97 -97
  46. package/dist/runtime/components/core/CountdownTimer.vue +357 -357
  47. package/dist/runtime/components/core/DynamicHtml.vue +1 -1
  48. package/dist/runtime/components/core/Modal.vue +111 -111
  49. package/dist/runtime/components/core/Navbar.vue +154 -154
  50. package/dist/runtime/components/core/SvgIcon.vue +151 -151
  51. package/dist/runtime/components/core/ZoomModal.vue +37 -37
  52. package/dist/runtime/components/events/EventHeader.vue +133 -133
  53. package/dist/runtime/components/events/ListEvents.vue +531 -531
  54. package/dist/runtime/components/forms/AlertBox.vue +21 -21
  55. package/dist/runtime/components/forms/ErrorField.vue +17 -17
  56. package/dist/runtime/components/forms/Message.vue +27 -27
  57. package/dist/runtime/components/forms/SearchInput.vue +38 -38
  58. package/dist/runtime/components/forms/SupportForm.vue +112 -112
  59. package/dist/runtime/components/forms/SwitchInput.vue +42 -42
  60. package/dist/runtime/components/forms/TextArea.vue +26 -26
  61. package/dist/runtime/components/forms/TextInput.vue +28 -28
  62. package/dist/runtime/components/layouts/Accordion.vue +78 -78
  63. package/dist/runtime/components/media/ArchivePlayerAndContentContainer.vue +157 -157
  64. package/dist/runtime/components/media/ArchiveVideoPlayer.vue +186 -186
  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 -43
  68. package/dist/runtime/components/media/components/ArchiveMediaContainer.vue +91 -91
  69. package/dist/runtime/components/media/components/CeCreditNotification.vue +95 -95
  70. package/dist/runtime/components/media/components/ContentAccordion.vue +63 -63
  71. package/dist/runtime/components/media/components/ContentAccordion.vue.d.ts +1 -3
  72. package/dist/runtime/components/media/components/ContentArea.vue +158 -158
  73. package/dist/runtime/components/media/components/ContentTabs.vue +231 -231
  74. package/dist/runtime/components/media/components/DocumentsPanel.vue +31 -31
  75. package/dist/runtime/components/media/components/JsonApi.vue +31 -31
  76. package/dist/runtime/components/media/components/MediaContainer.vue +63 -63
  77. package/dist/runtime/components/media/components/OverviewPanel.vue +52 -52
  78. package/dist/runtime/components/media/components/PresentersPanel.vue +52 -52
  79. package/dist/runtime/components/media/components/SessionReporting.vue +93 -93
  80. package/dist/runtime/components/media/components/SponsorsPanel.vue +71 -71
  81. package/dist/runtime/components/media/components/WindowContent.vue +92 -92
  82. package/dist/runtime/components/media/components/WindowSlide.vue +72 -72
  83. package/dist/runtime/components/presenters/PresenterListing.vue +164 -164
  84. package/dist/runtime/components/presenters/PresenterModal.vue +223 -223
  85. package/dist/runtime/components/profile/Profile.vue +149 -149
  86. package/dist/runtime/components/profile/components/Sidebar.vue +27 -27
  87. package/dist/runtime/components/profile/components/SidebarNavItem.vue +39 -39
  88. package/dist/runtime/components/profile/tabs/Favorites.vue +21 -21
  89. package/dist/runtime/components/profile/tabs/GeneralInformation.vue +122 -122
  90. package/dist/runtime/components/profile/tabs/ProfileImage.vue +75 -75
  91. package/dist/runtime/components/support/FAQAccordion.vue +140 -140
  92. package/package.json +1 -1
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm3.445 17.827c-3.684 1.684-9.401-9.43-5.8-11.308l1.053-.519 1.746 3.409-1.042.513c-1.095.587 1.185 5.04 2.305 4.497l1.032-.505 1.76 3.397-1.054.516z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm3.445 17.827c-3.684 1.684-9.401-9.43-5.8-11.308l1.053-.519 1.746 3.409-1.042.513c-1.095.587 1.185 5.04 2.305 4.497l1.032-.505 1.76 3.397-1.054.516z"/></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" fill="#e3effa" width="15" height="15" viewBox="0 0 24 24"><path d="M24 10h-10v-10h-4v10h-10v4h10v10h4v-10h10z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="#e3effa" width="15" height="15" viewBox="0 0 24 24"><path d="M24 10h-10v-10h-4v10h-10v4h10v10h4v-10h10z"/></svg>
@@ -1,3 +1,3 @@
1
- <svg class="h-2 w-2 fill-current text-red mr-2" viewBox="0 0 20 20">
2
- <circle cx="10" cy="10" r="10"/>
3
- </svg>
1
+ <svg class="h-2 w-2 fill-current text-red mr-2" viewBox="0 0 20 20">
2
+ <circle cx="10" cy="10" r="10"/>
3
+ </svg>
@@ -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,245 +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
- 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
-
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
+
243
243
  <style>
244
244
  .accord {
245
245
  transition: height var(--vc-auto-duration) ease-out;
@@ -248,4 +248,4 @@ const presentersToComposables = (presenters: Presenter[]) => {
248
248
  .time-width {
249
249
  min-width: 10ch;
250
250
  }
251
- </style>
251
+ </style>