@icvdeveloper/common-module 0.0.126 → 0.0.127

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 (100) hide show
  1. package/README.md +6 -6
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/@types/components.d.ts +12 -0
  4. package/dist/runtime/assets/svg/answer.svg +14 -14
  5. package/dist/runtime/assets/svg/avatar.svg +1 -1
  6. package/dist/runtime/assets/svg/bell-icon.svg +3 -3
  7. package/dist/runtime/assets/svg/checkmark-icon.svg +1 -1
  8. package/dist/runtime/assets/svg/close-icon.svg +1 -1
  9. package/dist/runtime/assets/svg/icon-avatar.svg +1 -1
  10. package/dist/runtime/assets/svg/icon-chevron.svg +4 -4
  11. package/dist/runtime/assets/svg/icon-circle-plus.svg +1 -1
  12. package/dist/runtime/assets/svg/icon-close.svg +1 -1
  13. package/dist/runtime/assets/svg/icon-info.svg +2 -2
  14. package/dist/runtime/assets/svg/icon-new-window.svg +11 -11
  15. package/dist/runtime/assets/svg/icon-offline.svg +3 -3
  16. package/dist/runtime/assets/svg/icon-online.svg +3 -3
  17. package/dist/runtime/assets/svg/icon-person.svg +2 -2
  18. package/dist/runtime/assets/svg/icon-play.svg +2 -2
  19. package/dist/runtime/assets/svg/icon-star-filled.svg +29 -29
  20. package/dist/runtime/assets/svg/icon-star.svg +24 -24
  21. package/dist/runtime/assets/svg/icon-video-chat.svg +14 -14
  22. package/dist/runtime/assets/svg/icon-website.svg +2 -2
  23. package/dist/runtime/assets/svg/icon-zoom.svg +10 -10
  24. package/dist/runtime/assets/svg/notification-icon.svg +32 -32
  25. package/dist/runtime/assets/svg/offline-icon.svg +1 -1
  26. package/dist/runtime/assets/svg/online-icon.svg +3 -3
  27. package/dist/runtime/assets/svg/peer2peer.svg +3 -3
  28. package/dist/runtime/assets/svg/phone.svg +1 -1
  29. package/dist/runtime/assets/svg/plus-icon.svg +1 -1
  30. package/dist/runtime/assets/svg/red-icon.svg +3 -3
  31. package/dist/runtime/assets/svg/reject.svg +14 -14
  32. package/dist/runtime/assets/svg/search-icon.svg +3 -3
  33. package/dist/runtime/components/affiliates/AffiliatePage.vue +329 -17
  34. package/dist/runtime/components/agenda/AgendaList.vue +259 -259
  35. package/dist/runtime/components/agenda/AgendaTabbed.vue +305 -305
  36. package/dist/runtime/components/agenda/components/AgendaListAccordion.vue +67 -67
  37. package/dist/runtime/components/agenda/components/Calendar.vue +67 -67
  38. package/dist/runtime/components/agenda/components/InfoLink.vue +56 -56
  39. package/dist/runtime/components/agenda/components/PlayIcon.vue +49 -49
  40. package/dist/runtime/components/agenda/components/PresentationLink.vue +137 -137
  41. package/dist/runtime/components/agenda/components/Sponsor.vue +132 -132
  42. package/dist/runtime/components/auth/LoginFullWidth.vue +78 -78
  43. package/dist/runtime/components/auth/PasswordReset.vue +60 -60
  44. package/dist/runtime/components/auth/Registration.vue +27 -27
  45. package/dist/runtime/components/auth/Ucc.vue +129 -129
  46. package/dist/runtime/components/core/Accordion.vue +97 -97
  47. package/dist/runtime/components/core/CountdownTimer.vue +336 -336
  48. package/dist/runtime/components/core/DynamicHtml.vue +1 -1
  49. package/dist/runtime/components/core/Modal.vue +111 -111
  50. package/dist/runtime/components/core/Navbar.vue +154 -154
  51. package/dist/runtime/components/core/SvgIcon.vue +157 -157
  52. package/dist/runtime/components/core/ZoomModal.vue +37 -37
  53. package/dist/runtime/components/events/EventHeader.vue +133 -133
  54. package/dist/runtime/components/events/ListEvents.vue +554 -554
  55. package/dist/runtime/components/forms/AlertBox.vue +21 -21
  56. package/dist/runtime/components/forms/ErrorField.vue +17 -17
  57. package/dist/runtime/components/forms/Message.vue +27 -27
  58. package/dist/runtime/components/forms/SearchInput.vue +38 -38
  59. package/dist/runtime/components/forms/SupportForm.vue +112 -112
  60. package/dist/runtime/components/forms/SwitchInput.vue +42 -42
  61. package/dist/runtime/components/forms/TextArea.vue +26 -26
  62. package/dist/runtime/components/forms/TextInput.vue +28 -28
  63. package/dist/runtime/components/layouts/Accordion.vue +78 -78
  64. package/dist/runtime/components/media/ArchivePlayerAndContentContainer.vue +160 -160
  65. package/dist/runtime/components/media/ArchiveVideoPlayer.vue +186 -186
  66. package/dist/runtime/components/media/PlayerAndContentContainer.vue +183 -183
  67. package/dist/runtime/components/media/WebcastVideoPlayer.vue +140 -140
  68. package/dist/runtime/components/media/components/AgendaPanel.vue +43 -43
  69. package/dist/runtime/components/media/components/ArchiveMediaContainer.vue +91 -91
  70. package/dist/runtime/components/media/components/CeCreditNotification.vue +95 -95
  71. package/dist/runtime/components/media/components/ContentAccordion.vue +63 -63
  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 +102 -102
  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/dist/runtime/models/conference.d.ts +24 -0
  93. package/dist/runtime/models/document.d.ts +7 -0
  94. package/dist/runtime/models/link.d.ts +6 -0
  95. package/dist/runtime/models/link.mjs +0 -0
  96. package/dist/runtime/models/video.d.ts +6 -0
  97. package/dist/runtime/models/video.mjs +0 -0
  98. package/package.json +1 -1
  99. package/dist/runtime/models/affiliate.d.ts +0 -1
  100. /package/dist/runtime/models/{affiliate.mjs → document.mjs} +0 -0
@@ -1,261 +1,261 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs } from "vue";
3
- import type { Conference } from "../../models/conference";
4
- import { useAgenda } from "../../composables/useAgenda";
5
- import { usePresentation } from "../../composables/usePresentation";
6
- import { usePresenter } from "../../composables/usePresenter";
7
- import { useClassBinding } from "../../composables/useClassBinding";
8
- import { Presenter } from "../../models/conference";
9
- import {
10
- AgendaListClassObj,
11
- AgendaListCompObj,
12
- AgendaListAccordionClassObj,
13
- } from "../../@types/components";
14
- import AgendaAccordion from "./components/AgendaListAccordion.vue";
15
- import Calendar from "./components/Calendar.vue";
16
-
17
- type Props = {
18
- conference: Conference;
19
- useCalendar?: boolean;
20
- classObject?: AgendaListClassObj;
21
- };
22
-
23
- const props = withDefaults(defineProps<Props>(), {
24
- useCalendar: true,
25
- classObject: () => {
26
- return {
27
- container: "",
28
- accordionContainer: "",
29
- titleContainer: "",
30
- timeElement: "",
31
- iconTextElement: "",
32
- iconElement: "",
33
- iconWidth: "20px",
34
- dropdownContainer: "",
35
- marginElement: "",
36
- presentersContainer: "",
37
- presentersHeader: "",
38
- presenterListContainer: "",
39
- presenterElement: "",
40
- presenterName: "",
41
- presenterTitle: "",
42
- components: ref<AgendaListCompObj>({
43
- agendaListAccordion: ref<AgendaListAccordionClassObj>({}),
44
- }),
45
- };
46
- },
47
- });
48
-
49
- const { conference } = toRefs(props);
50
-
51
- const { days, getCombinedTrackList } = useAgenda(conference);
52
- const {
53
- getPresentationStartTime,
54
- getPresentationEndTime
55
- } = usePresentation(conference);
56
- const { classBinding } = useClassBinding();
57
-
58
- // data
59
- const expandedPres = ref<number>(0);
60
-
61
- // methods
62
- const presentersToComposables = (presenters: Presenter[]) => {
63
- const data = [];
64
-
65
- presenters.forEach((presenter) => {
66
- data.push({
67
- presenter,
68
- ...usePresenter(presenter),
69
- });
70
- });
71
-
72
- return data;
73
- };
74
-
75
- const setPres = (_expanded: number) => {
76
- expandedPres.value = _expanded;
77
- };
78
-
79
- const logPres = (_presId: number, _expanded: number) => {
80
- console.log(_presId, typeof _presId);
81
- };
82
-
83
- const isPres = (_presId: number): boolean => {
84
- return expandedPres.value === _presId;
85
- };
86
- </script>
87
-
88
- <template>
89
- <div
90
- :class="
91
- classBinding(
92
- classObject,
93
- 'container',
94
- 'flex flex-col space-y-5 text-neutral-700'
95
- )
96
- "
97
- >
98
- <template v-for="day in days">
99
- <template v-for="track in getCombinedTrackList(day)">
100
- <div
101
- v-for="presentation in track.presentations"
102
- :key="presentation.id"
103
- :class="classBinding(classObject, 'accordionContainer', '')"
104
- >
105
- <AgendaAccordion
106
- :item-id="presentation.id"
107
- :class-object="classObject.components.agendaListAccordion"
108
- @expanded="setPres"
109
- >
110
- <template #header="isExpanded">
111
- <div
112
- :class="
113
- classBinding(
114
- classObject,
115
- 'titleContainer',
116
- 'text-left text-xl flex-col md:flex-row flex'
117
- )
118
- "
119
- >
120
- <span
121
- :class="
122
- classBinding(classObject, 'timeElement', 'time-width')
123
- "
124
- >
125
- {{ getPresentationStartTime(presentation, "h:mm") }}
126
- -
127
- {{ getPresentationEndTime(presentation, "h:mm") }}
128
- </span>
129
- <span
130
- :class="
131
- classBinding(
132
- classObject,
133
- 'iconTextElement',
134
- 'flex flex-row md:ml-5'
135
- )
136
- "
137
- >
138
- <CommonSvgIcon
139
- v-if="!isPres(presentation.id)"
140
- :class-object="{ svgElement: 'fill-neutral-700' }"
141
- :class="
142
- classBinding(classObject, 'iconElement', 'mr-1 pt-1')
143
- "
144
- icon="circlePlus"
145
- :width="classObject.iconWidth"
146
- />
147
- <CommonSvgIcon
148
- v-else
149
- :class-object="{ svgElement: 'fill-neutral-700' }"
150
- :class="
151
- classBinding(classObject, 'iconElement', 'mr-1 pt-1')
152
- "
153
- icon="circleMinus"
154
- :width="classObject.iconWidth"
155
- />
156
- {{ presentation.name }}
157
- </span>
158
- </div>
159
- </template>
160
- <template #body>
161
- <div
162
- :class="
163
- classBinding(
164
- classObject,
165
- 'dropdownContainer',
166
- 'flex flex-row'
167
- )
168
- "
169
- >
170
- <!-- left margin element -->
171
- <span
172
- :class="
173
- classBinding(
174
- classObject,
175
- 'marginElement',
176
- 'text-lg hidden md:block md:flex-initial time-width md:mr-8'
177
- )
178
- "
179
- />
180
- <div
181
- :class="
182
- classBinding(
183
- classObject,
184
- 'presentersContainer',
185
- 'flex-1 my-3'
186
- )
187
- "
188
- >
189
- <!-- ADD TO CALENDAR -->
190
- <calendar
191
- v-if="useCalendar"
192
- :key="conference.id"
193
- class="mb-3"
194
- :presentation="presentation"
195
- :conference="conference"
196
- />
197
- <h3
198
- :class="
199
- classBinding(
200
- classObject,
201
- 'presentersHeader',
202
- 'font-bold text-lg'
203
- )
204
- "
205
- >
206
- Presenters
207
- </h3>
208
- <div
209
- :class="
210
- classBinding(
211
- classObject,
212
- 'presenterListContainer',
213
- 'flex flex-col space-y-3'
214
- )
215
- "
216
- >
217
- <div
218
- v-for="presenter in presentersToComposables(
219
- presentation.presenters
220
- )"
221
- :key="presenter.presenter.id"
222
- :class="classBinding(classObject, 'presenterElement', '')"
223
- >
224
- <p
225
- :class="
226
- classBinding(
227
- classObject,
228
- 'presenterName',
229
- 'text-lg pb-0 mb-0'
230
- )
231
- "
232
- >
233
- {{ presenter.fullName.value }}
234
- </p>
235
- <p
236
- v-if="presenter.titleCompany.value"
237
- :class="
238
- classBinding(
239
- classObject,
240
- 'presenterTitle',
241
- 'text-sm pt-0 mb-1'
242
- )
243
- "
244
- >
245
- {{ presenter.titleCompany.value }}
246
- </p>
247
- </div>
248
- </div>
249
- </div>
250
- </div>
251
- </template>
252
- </AgendaAccordion>
253
- </div>
254
- </template>
255
- </template>
256
- </div>
257
- </template>
258
-
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs } from "vue";
3
+ import type { Conference } from "../../models/conference";
4
+ import { useAgenda } from "../../composables/useAgenda";
5
+ import { usePresentation } from "../../composables/usePresentation";
6
+ import { usePresenter } from "../../composables/usePresenter";
7
+ import { useClassBinding } from "../../composables/useClassBinding";
8
+ import { Presenter } from "../../models/conference";
9
+ import {
10
+ AgendaListClassObj,
11
+ AgendaListCompObj,
12
+ AgendaListAccordionClassObj,
13
+ } from "../../@types/components";
14
+ import AgendaAccordion from "./components/AgendaListAccordion.vue";
15
+ import Calendar from "./components/Calendar.vue";
16
+
17
+ type Props = {
18
+ conference: Conference;
19
+ useCalendar?: boolean;
20
+ classObject?: AgendaListClassObj;
21
+ };
22
+
23
+ const props = withDefaults(defineProps<Props>(), {
24
+ useCalendar: true,
25
+ classObject: () => {
26
+ return {
27
+ container: "",
28
+ accordionContainer: "",
29
+ titleContainer: "",
30
+ timeElement: "",
31
+ iconTextElement: "",
32
+ iconElement: "",
33
+ iconWidth: "20px",
34
+ dropdownContainer: "",
35
+ marginElement: "",
36
+ presentersContainer: "",
37
+ presentersHeader: "",
38
+ presenterListContainer: "",
39
+ presenterElement: "",
40
+ presenterName: "",
41
+ presenterTitle: "",
42
+ components: ref<AgendaListCompObj>({
43
+ agendaListAccordion: ref<AgendaListAccordionClassObj>({}),
44
+ }),
45
+ };
46
+ },
47
+ });
48
+
49
+ const { conference } = toRefs(props);
50
+
51
+ const { days, getCombinedTrackList } = useAgenda(conference);
52
+ const {
53
+ getPresentationStartTime,
54
+ getPresentationEndTime
55
+ } = usePresentation(conference);
56
+ const { classBinding } = useClassBinding();
57
+
58
+ // data
59
+ const expandedPres = ref<number>(0);
60
+
61
+ // methods
62
+ const presentersToComposables = (presenters: Presenter[]) => {
63
+ const data = [];
64
+
65
+ presenters.forEach((presenter) => {
66
+ data.push({
67
+ presenter,
68
+ ...usePresenter(presenter),
69
+ });
70
+ });
71
+
72
+ return data;
73
+ };
74
+
75
+ const setPres = (_expanded: number) => {
76
+ expandedPres.value = _expanded;
77
+ };
78
+
79
+ const logPres = (_presId: number, _expanded: number) => {
80
+ console.log(_presId, typeof _presId);
81
+ };
82
+
83
+ const isPres = (_presId: number): boolean => {
84
+ return expandedPres.value === _presId;
85
+ };
86
+ </script>
87
+
88
+ <template>
89
+ <div
90
+ :class="
91
+ classBinding(
92
+ classObject,
93
+ 'container',
94
+ 'flex flex-col space-y-5 text-neutral-700'
95
+ )
96
+ "
97
+ >
98
+ <template v-for="day in days">
99
+ <template v-for="track in getCombinedTrackList(day)">
100
+ <div
101
+ v-for="presentation in track.presentations"
102
+ :key="presentation.id"
103
+ :class="classBinding(classObject, 'accordionContainer', '')"
104
+ >
105
+ <AgendaAccordion
106
+ :item-id="presentation.id"
107
+ :class-object="classObject.components.agendaListAccordion"
108
+ @expanded="setPres"
109
+ >
110
+ <template #header="isExpanded">
111
+ <div
112
+ :class="
113
+ classBinding(
114
+ classObject,
115
+ 'titleContainer',
116
+ 'text-left text-xl flex-col md:flex-row flex'
117
+ )
118
+ "
119
+ >
120
+ <span
121
+ :class="
122
+ classBinding(classObject, 'timeElement', 'time-width')
123
+ "
124
+ >
125
+ {{ getPresentationStartTime(presentation, "h:mm") }}
126
+ -
127
+ {{ getPresentationEndTime(presentation, "h:mm") }}
128
+ </span>
129
+ <span
130
+ :class="
131
+ classBinding(
132
+ classObject,
133
+ 'iconTextElement',
134
+ 'flex flex-row md:ml-5'
135
+ )
136
+ "
137
+ >
138
+ <CommonSvgIcon
139
+ v-if="!isPres(presentation.id)"
140
+ :class-object="{ svgElement: 'fill-neutral-700' }"
141
+ :class="
142
+ classBinding(classObject, 'iconElement', 'mr-1 pt-1')
143
+ "
144
+ icon="circlePlus"
145
+ :width="classObject.iconWidth"
146
+ />
147
+ <CommonSvgIcon
148
+ v-else
149
+ :class-object="{ svgElement: 'fill-neutral-700' }"
150
+ :class="
151
+ classBinding(classObject, 'iconElement', 'mr-1 pt-1')
152
+ "
153
+ icon="circleMinus"
154
+ :width="classObject.iconWidth"
155
+ />
156
+ {{ presentation.name }}
157
+ </span>
158
+ </div>
159
+ </template>
160
+ <template #body>
161
+ <div
162
+ :class="
163
+ classBinding(
164
+ classObject,
165
+ 'dropdownContainer',
166
+ 'flex flex-row'
167
+ )
168
+ "
169
+ >
170
+ <!-- left margin element -->
171
+ <span
172
+ :class="
173
+ classBinding(
174
+ classObject,
175
+ 'marginElement',
176
+ 'text-lg hidden md:block md:flex-initial time-width md:mr-8'
177
+ )
178
+ "
179
+ />
180
+ <div
181
+ :class="
182
+ classBinding(
183
+ classObject,
184
+ 'presentersContainer',
185
+ 'flex-1 my-3'
186
+ )
187
+ "
188
+ >
189
+ <!-- ADD TO CALENDAR -->
190
+ <calendar
191
+ v-if="useCalendar"
192
+ :key="conference.id"
193
+ class="mb-3"
194
+ :presentation="presentation"
195
+ :conference="conference"
196
+ />
197
+ <h3
198
+ :class="
199
+ classBinding(
200
+ classObject,
201
+ 'presentersHeader',
202
+ 'font-bold text-lg'
203
+ )
204
+ "
205
+ >
206
+ Presenters
207
+ </h3>
208
+ <div
209
+ :class="
210
+ classBinding(
211
+ classObject,
212
+ 'presenterListContainer',
213
+ 'flex flex-col space-y-3'
214
+ )
215
+ "
216
+ >
217
+ <div
218
+ v-for="presenter in presentersToComposables(
219
+ presentation.presenters
220
+ )"
221
+ :key="presenter.presenter.id"
222
+ :class="classBinding(classObject, 'presenterElement', '')"
223
+ >
224
+ <p
225
+ :class="
226
+ classBinding(
227
+ classObject,
228
+ 'presenterName',
229
+ 'text-lg pb-0 mb-0'
230
+ )
231
+ "
232
+ >
233
+ {{ presenter.fullName.value }}
234
+ </p>
235
+ <p
236
+ v-if="presenter.titleCompany.value"
237
+ :class="
238
+ classBinding(
239
+ classObject,
240
+ 'presenterTitle',
241
+ 'text-sm pt-0 mb-1'
242
+ )
243
+ "
244
+ >
245
+ {{ presenter.titleCompany.value }}
246
+ </p>
247
+ </div>
248
+ </div>
249
+ </div>
250
+ </div>
251
+ </template>
252
+ </AgendaAccordion>
253
+ </div>
254
+ </template>
255
+ </template>
256
+ </div>
257
+ </template>
258
+
259
259
  <style>
260
260
  .accord {
261
261
  transition: height var(--vc-auto-duration) ease-out;
@@ -264,4 +264,4 @@ const isPres = (_presId: number): boolean => {
264
264
  .time-width {
265
265
  min-width: 10ch;
266
266
  }
267
- </style>
267
+ </style>