@icvdeveloper/common-module 0.0.68 → 0.0.70

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 (72) hide show
  1. package/README.md +6 -6
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/@types/components.d.ts +1 -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 +17 -17
  34. package/dist/runtime/components/agenda/AgendaList.vue +104 -104
  35. package/dist/runtime/components/agenda/AgendaTabbed.vue +300 -300
  36. package/dist/runtime/components/agenda/components/AgendaListAccordion.vue +26 -26
  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 +52 -52
  45. package/dist/runtime/components/core/Accordion.vue +97 -97
  46. package/dist/runtime/components/core/CountdownTimer.vue +308 -308
  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 +507 -482
  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/presenters/PresenterListing.vue +164 -164
  64. package/dist/runtime/components/presenters/PresenterModal.vue +223 -223
  65. package/dist/runtime/components/profile/Profile.vue +149 -149
  66. package/dist/runtime/components/profile/components/Sidebar.vue +27 -27
  67. package/dist/runtime/components/profile/components/SidebarNavItem.vue +39 -39
  68. package/dist/runtime/components/profile/tabs/Favorites.vue +21 -21
  69. package/dist/runtime/components/profile/tabs/GeneralInformation.vue +122 -122
  70. package/dist/runtime/components/profile/tabs/ProfileImage.vue +75 -75
  71. package/dist/runtime/components/support/FAQAccordion.vue +137 -137
  72. package/package.json +59 -59
@@ -1,310 +1,310 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs, computed, onMounted } from "vue";
3
- import { storeToRefs } from "pinia";
4
- import {
5
- isBefore,
6
- differenceInDays,
7
- differenceInHours,
8
- differenceInMinutes,
9
- differenceInSeconds,
10
- addDays,
11
- addHours,
12
- addMinutes,
13
- } from "date-fns";
14
- import { useTemplateConfigsStore } from "../../store";
15
- import { countdownTimerClassObj } from "../../@types/components";
16
- import { useClassBinding } from "../../composables/useClassBinding";
17
-
18
- interface Props {
19
- date: string;
20
- isCompact?: boolean;
21
- showDays?: boolean;
22
- showHours?: boolean;
23
- showMinutes?: boolean;
24
- showSeconds?: boolean;
25
- classObject?: countdownTimerClassObj;
26
- }
27
-
28
- const props = withDefaults(defineProps<Props>(), {
29
- isCompact: false,
30
- showDays: true,
31
- showHours: true,
32
- showMinutes: true,
33
- showSeconds: true,
34
- classObject: () => {
35
- return {
36
- container: "",
37
- countdownContainer: "",
38
- beginText: "",
39
- unitsContainer: "",
40
- itemContainer: "",
41
- unitLabel: "",
42
- unitContainer: "",
43
- unit: "",
44
- };
45
- },
46
- });
47
-
48
- const {
49
- isCompact,
50
- showDays,
51
- showHours,
52
- showMinutes,
53
- showSeconds,
54
- classObject,
55
- } = toRefs(props);
56
-
57
- const { classBinding } = useClassBinding();
58
-
59
- // reactive data
60
- const isCounting = ref<boolean>(true);
61
- const days = ref<number>(0);
62
- const hours = ref<number>(0);
63
- const minutes = ref<number>(0);
64
- const seconds = ref<number>(0);
65
- const loopTimer = ref<NodeJS.Timer | null>(null);
66
- const { pagesConfigValue } = storeToRefs(useTemplateConfigsStore());
67
-
68
- // emits
69
- const emit = defineEmits(["complete"]);
70
-
71
- // computed
72
- const eventHasBegunText = computed(() => {
73
- return (
74
- pagesConfigValue.value("main.countdown_event_has_begun_text") ||
75
- "The Event Has Begun"
76
- );
77
- });
78
-
79
- const clockStyle = computed(() => {
80
- return pagesConfigValue.value("main.countdown_timer_style", "windows");
81
- });
82
-
83
- const fontClass = computed(() => {
84
- const fontBase = "font-bold";
85
- return props.isCompact === true
86
- ? fontBase + " text-xl lg:text-2xl"
87
- : fontBase + " text-2xl lg:text-4xl";
88
- });
89
-
90
- // methods
91
- const updateCountdown = () => {
92
- if (!isBefore(new Date(), new Date(props.date))) {
93
- isCounting.value = false;
94
- emit("complete");
95
- clearInterval(loopTimer.value);
96
- return;
97
- }
98
-
99
- days.value = differenceInDays(new Date(props.date), new Date());
100
- hours.value = differenceInHours(
101
- new Date(props.date),
102
- addDays(new Date(), days.value)
103
- );
104
-
105
- minutes.value = differenceInMinutes(
106
- new Date(props.date),
107
- addDays(addHours(new Date(), hours.value), days.value)
108
- );
109
- seconds.value = differenceInSeconds(
110
- new Date(props.date),
111
- addDays(
112
- addHours(addMinutes(new Date(), minutes.value), hours.value),
113
- days.value
114
- )
115
- );
116
- };
117
-
118
- const startCountdown = () => {
119
- updateCountdown();
120
- loopTimer.value = setInterval(() => {
121
- updateCountdown();
122
- }, 1000);
123
- };
124
-
125
- // on mount
126
- onMounted(() => {
127
- startCountdown();
128
- });
129
- </script>
130
-
131
- <template>
132
- <div
133
- :class="[
134
- { compact: isCompact, fullsize: !isCompact },
135
- classBinding(classObject, 'container', 'countdown-timer'),
136
- ]"
137
- >
138
- <div
139
- :class="
140
- classBinding(
141
- classObject,
142
- 'countdownContainer',
143
- 'countdown-container flex flex-col pt-8 mx-4 text-center justify-center items-center content-center'
144
- )
145
- "
146
- >
147
- <div class="flex-initial">
148
- <h1
149
- :class="
150
- classBinding(
151
- classObject,
152
- 'beginText',
153
- 'm-0 p-0 uppercase heading-color-3'
154
- )
155
- "
156
- >
157
- {{ isCounting ? "event begins" : eventHasBegunText }}
158
- </h1>
159
- </div>
160
-
161
- <div
162
- v-if="isCounting"
163
- :class="
164
- classBinding(
165
- classObject,
166
- 'unitsContainer',
167
- 'units-container flex text-center p-6 pt-4 mt-4 items-center border border-color-accent-1 accent-color-3'
168
- )
169
- "
170
- >
171
- <!-- Days -->
172
- <div
173
- v-if="showDays"
174
- :class="[
175
- { dropshade: clockStyle == 'dials' },
176
- classBinding(classObject, 'itemContainer', 'item-container'),
177
- ]"
178
- >
179
- <div
180
- :class="[
181
- clockStyle,
182
- classBinding(classObject, 'unitLabel', 'unit-label-container'),
183
- ]"
184
- >
185
- days
186
- </div>
187
- <div
188
- :class="[
189
- clockStyle,
190
- classBinding(
191
- classObject,
192
- 'unitContainer',
193
- 'unit-container contrast-border'
194
- ),
195
- ]"
196
- >
197
- <div
198
- v-if="clockStyle == 'windows'"
199
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
200
- >
201
- {{ days }}
202
- </div>
203
- <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
204
- <div
205
- :key="days"
206
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
207
- >
208
- {{ days }}
209
- </div>
210
- </transition>
211
- </div>
212
- </div>
213
-
214
- <!-- Minutes -->
215
- <div
216
- v-if="showMinutes"
217
- :class="[
218
- { dropshade: clockStyle == 'dials' },
219
- classBinding(classObject, 'itemContainer', 'item-container'),
220
- ]"
221
- >
222
- <div
223
- :class="[
224
- clockStyle,
225
- classBinding(classObject, 'unitLabel', 'unit-label-container'),
226
- ]"
227
- >
228
- min
229
- </div>
230
- <div
231
- :class="[
232
- clockStyle,
233
- classBinding(
234
- classObject,
235
- 'unitContainer',
236
- 'unit-container contrast-border'
237
- ),
238
- ]"
239
- >
240
- <div
241
- v-if="clockStyle == 'windows'"
242
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
243
- >
244
- {{ minutes }}
245
- </div>
246
- <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
247
- <div
248
- :key="minutes"
249
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
250
- >
251
- {{ minutes }}
252
- </div>
253
- </transition>
254
- </div>
255
- </div>
256
-
257
- <!-- Seconds -->
258
- <div
259
- v-if="showSeconds"
260
- :class="[
261
- { dropshade: clockStyle == 'dials' },
262
- classBinding(classObject, 'itemContainer', 'item-container last'),
263
- ]"
264
- >
265
- <div
266
- :class="[
267
- clockStyle,
268
- classBinding(
269
- classObject,
270
- 'unitLabel',
271
- 'unit-label-container last'
272
- ),
273
- ]"
274
- >
275
- sec
276
- </div>
277
- <div
278
- :class="[
279
- clockStyle,
280
- classBinding(
281
- classObject,
282
- 'unitContainer',
283
- 'unit-container contrast-border'
284
- ),
285
- ]"
286
- >
287
- <div
288
- v-if="clockStyle == 'windows'"
289
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
290
- >
291
- {{ seconds }}
292
- </div>
293
- <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
294
- <div
295
- :key="seconds"
296
- :class="[fontClass, classBinding(classObject, 'unit', '')]"
297
- >
298
- {{ seconds }}
299
- </div>
300
- </transition>
301
- </div>
302
- </div>
303
- </div>
304
- </div>
305
- </div>
306
- </template>
307
-
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs, computed, onMounted } from "vue";
3
+ import { storeToRefs } from "pinia";
4
+ import {
5
+ isBefore,
6
+ differenceInDays,
7
+ differenceInHours,
8
+ differenceInMinutes,
9
+ differenceInSeconds,
10
+ addDays,
11
+ addHours,
12
+ addMinutes,
13
+ } from "date-fns";
14
+ import { useTemplateConfigsStore } from "../../store";
15
+ import { countdownTimerClassObj } from "../../@types/components";
16
+ import { useClassBinding } from "../../composables/useClassBinding";
17
+
18
+ interface Props {
19
+ date: string;
20
+ isCompact?: boolean;
21
+ showDays?: boolean;
22
+ showHours?: boolean;
23
+ showMinutes?: boolean;
24
+ showSeconds?: boolean;
25
+ classObject?: countdownTimerClassObj;
26
+ }
27
+
28
+ const props = withDefaults(defineProps<Props>(), {
29
+ isCompact: false,
30
+ showDays: true,
31
+ showHours: true,
32
+ showMinutes: true,
33
+ showSeconds: true,
34
+ classObject: () => {
35
+ return {
36
+ container: "",
37
+ countdownContainer: "",
38
+ beginText: "",
39
+ unitsContainer: "",
40
+ itemContainer: "",
41
+ unitLabel: "",
42
+ unitContainer: "",
43
+ unit: "",
44
+ };
45
+ },
46
+ });
47
+
48
+ const {
49
+ isCompact,
50
+ showDays,
51
+ showHours,
52
+ showMinutes,
53
+ showSeconds,
54
+ classObject,
55
+ } = toRefs(props);
56
+
57
+ const { classBinding } = useClassBinding();
58
+
59
+ // reactive data
60
+ const isCounting = ref<boolean>(true);
61
+ const days = ref<number>(0);
62
+ const hours = ref<number>(0);
63
+ const minutes = ref<number>(0);
64
+ const seconds = ref<number>(0);
65
+ const loopTimer = ref<NodeJS.Timer | null>(null);
66
+ const { pagesConfigValue } = storeToRefs(useTemplateConfigsStore());
67
+
68
+ // emits
69
+ const emit = defineEmits(["complete"]);
70
+
71
+ // computed
72
+ const eventHasBegunText = computed(() => {
73
+ return (
74
+ pagesConfigValue.value("main.countdown_event_has_begun_text") ||
75
+ "The Event Has Begun"
76
+ );
77
+ });
78
+
79
+ const clockStyle = computed(() => {
80
+ return pagesConfigValue.value("main.countdown_timer_style", "windows");
81
+ });
82
+
83
+ const fontClass = computed(() => {
84
+ const fontBase = "font-bold";
85
+ return props.isCompact === true
86
+ ? fontBase + " text-xl lg:text-2xl"
87
+ : fontBase + " text-2xl lg:text-4xl";
88
+ });
89
+
90
+ // methods
91
+ const updateCountdown = () => {
92
+ if (!isBefore(new Date(), new Date(props.date))) {
93
+ isCounting.value = false;
94
+ emit("complete");
95
+ clearInterval(loopTimer.value);
96
+ return;
97
+ }
98
+
99
+ days.value = differenceInDays(new Date(props.date), new Date());
100
+ hours.value = differenceInHours(
101
+ new Date(props.date),
102
+ addDays(new Date(), days.value)
103
+ );
104
+
105
+ minutes.value = differenceInMinutes(
106
+ new Date(props.date),
107
+ addDays(addHours(new Date(), hours.value), days.value)
108
+ );
109
+ seconds.value = differenceInSeconds(
110
+ new Date(props.date),
111
+ addDays(
112
+ addHours(addMinutes(new Date(), minutes.value), hours.value),
113
+ days.value
114
+ )
115
+ );
116
+ };
117
+
118
+ const startCountdown = () => {
119
+ updateCountdown();
120
+ loopTimer.value = setInterval(() => {
121
+ updateCountdown();
122
+ }, 1000);
123
+ };
124
+
125
+ // on mount
126
+ onMounted(() => {
127
+ startCountdown();
128
+ });
129
+ </script>
130
+
131
+ <template>
132
+ <div
133
+ :class="[
134
+ { compact: isCompact, fullsize: !isCompact },
135
+ classBinding(classObject, 'container', 'countdown-timer'),
136
+ ]"
137
+ >
138
+ <div
139
+ :class="
140
+ classBinding(
141
+ classObject,
142
+ 'countdownContainer',
143
+ 'countdown-container flex flex-col pt-8 mx-4 text-center justify-center items-center content-center'
144
+ )
145
+ "
146
+ >
147
+ <div class="flex-initial">
148
+ <h1
149
+ :class="
150
+ classBinding(
151
+ classObject,
152
+ 'beginText',
153
+ 'm-0 p-0 uppercase heading-color-3'
154
+ )
155
+ "
156
+ >
157
+ {{ isCounting ? "event begins" : eventHasBegunText }}
158
+ </h1>
159
+ </div>
160
+
161
+ <div
162
+ v-if="isCounting"
163
+ :class="
164
+ classBinding(
165
+ classObject,
166
+ 'unitsContainer',
167
+ 'units-container flex text-center p-6 pt-4 mt-4 items-center border border-color-accent-1 accent-color-3'
168
+ )
169
+ "
170
+ >
171
+ <!-- Days -->
172
+ <div
173
+ v-if="showDays"
174
+ :class="[
175
+ { dropshade: clockStyle == 'dials' },
176
+ classBinding(classObject, 'itemContainer', 'item-container'),
177
+ ]"
178
+ >
179
+ <div
180
+ :class="[
181
+ clockStyle,
182
+ classBinding(classObject, 'unitLabel', 'unit-label-container'),
183
+ ]"
184
+ >
185
+ days
186
+ </div>
187
+ <div
188
+ :class="[
189
+ clockStyle,
190
+ classBinding(
191
+ classObject,
192
+ 'unitContainer',
193
+ 'unit-container contrast-border'
194
+ ),
195
+ ]"
196
+ >
197
+ <div
198
+ v-if="clockStyle == 'windows'"
199
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
200
+ >
201
+ {{ days }}
202
+ </div>
203
+ <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
204
+ <div
205
+ :key="days"
206
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
207
+ >
208
+ {{ days }}
209
+ </div>
210
+ </transition>
211
+ </div>
212
+ </div>
213
+
214
+ <!-- Minutes -->
215
+ <div
216
+ v-if="showMinutes"
217
+ :class="[
218
+ { dropshade: clockStyle == 'dials' },
219
+ classBinding(classObject, 'itemContainer', 'item-container'),
220
+ ]"
221
+ >
222
+ <div
223
+ :class="[
224
+ clockStyle,
225
+ classBinding(classObject, 'unitLabel', 'unit-label-container'),
226
+ ]"
227
+ >
228
+ min
229
+ </div>
230
+ <div
231
+ :class="[
232
+ clockStyle,
233
+ classBinding(
234
+ classObject,
235
+ 'unitContainer',
236
+ 'unit-container contrast-border'
237
+ ),
238
+ ]"
239
+ >
240
+ <div
241
+ v-if="clockStyle == 'windows'"
242
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
243
+ >
244
+ {{ minutes }}
245
+ </div>
246
+ <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
247
+ <div
248
+ :key="minutes"
249
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
250
+ >
251
+ {{ minutes }}
252
+ </div>
253
+ </transition>
254
+ </div>
255
+ </div>
256
+
257
+ <!-- Seconds -->
258
+ <div
259
+ v-if="showSeconds"
260
+ :class="[
261
+ { dropshade: clockStyle == 'dials' },
262
+ classBinding(classObject, 'itemContainer', 'item-container last'),
263
+ ]"
264
+ >
265
+ <div
266
+ :class="[
267
+ clockStyle,
268
+ classBinding(
269
+ classObject,
270
+ 'unitLabel',
271
+ 'unit-label-container last'
272
+ ),
273
+ ]"
274
+ >
275
+ sec
276
+ </div>
277
+ <div
278
+ :class="[
279
+ clockStyle,
280
+ classBinding(
281
+ classObject,
282
+ 'unitContainer',
283
+ 'unit-container contrast-border'
284
+ ),
285
+ ]"
286
+ >
287
+ <div
288
+ v-if="clockStyle == 'windows'"
289
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
290
+ >
291
+ {{ seconds }}
292
+ </div>
293
+ <transition v-if="clockStyle == 'dials'" name="slide" mode="out-in">
294
+ <div
295
+ :key="seconds"
296
+ :class="[fontClass, classBinding(classObject, 'unit', '')]"
297
+ >
298
+ {{ seconds }}
299
+ </div>
300
+ </transition>
301
+ </div>
302
+ </div>
303
+ </div>
304
+ </div>
305
+ </div>
306
+ </template>
307
+
308
308
  <style scoped>
309
309
  .countdown-timer.compact .countdown-container {
310
310
  @apply pt-0 mx-0;
@@ -436,4 +436,4 @@ onMounted(() => {
436
436
  .slide-leave-active {
437
437
  transform: translate(0, 100%);
438
438
  }
439
- </style>
439
+ </style>
@@ -13,4 +13,4 @@ export default defineComponent({
13
13
  });
14
14
  }
15
15
  });
16
- </script>
16
+ </script>