@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,56 +1,56 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs, computed } from "vue";
3
- import { Presentation } from "../../../models/conference";
4
-
5
- type Props = {
6
- linkText: string;
7
- presentation: Presentation;
8
- useIcon?: boolean;
9
- newLine?: boolean;
10
- };
11
-
12
- const props = withDefaults(defineProps<Props>(), {
13
- useIcon: true,
14
- newLine: false,
15
- });
16
-
17
- // data
18
- const { useIcon, newLine, linkText, presentation } = toRefs(props);
19
- const showDescModal = ref<boolean>(false);
20
-
21
- // computed
22
- const getLinkText = computed(() => {
23
- return linkText.value.length > 0 ? linkText.value : "Session Details";
24
- });
25
- </script>
26
-
27
- <template>
28
- <span>
29
- <a class="cursor-pointer" @click="showDescModal = true">
30
- <CommonSvgIcon
31
- v-if="useIcon"
32
- icon="info"
33
- class="align-middle"
34
- style="display: inline-block; margin-bottom: 2px"
35
- :icon-width="'16px'"
36
- ></CommonSvgIcon>
37
- <span v-else class="text-xs" :class="{ 'new-line': newLine }">{{
38
- getLinkText
39
- }}</span>
40
- </a>
41
-
42
- <CommonModal :visible="showDescModal" @trigger="showDescModal = false">
43
- <template #modal-title>
44
- <div class="text-lg font-bold text-left mb-4 pb-4 border-b">
45
- {{ presentation.name }}
46
- </div>
47
- </template>
48
- <template #modal-body>
49
- <div
50
- class="text-base font-normal text-left"
51
- v-html="presentation.description"
52
- ></div>
53
- </template>
54
- </CommonModal>
55
- </span>
56
- </template>
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs, computed } from "vue";
3
+ import { Presentation } from "../../../models/conference";
4
+
5
+ type Props = {
6
+ linkText: string;
7
+ presentation: Presentation;
8
+ useIcon?: boolean;
9
+ newLine?: boolean;
10
+ };
11
+
12
+ const props = withDefaults(defineProps<Props>(), {
13
+ useIcon: true,
14
+ newLine: false,
15
+ });
16
+
17
+ // data
18
+ const { useIcon, newLine, linkText, presentation } = toRefs(props);
19
+ const showDescModal = ref<boolean>(false);
20
+
21
+ // computed
22
+ const getLinkText = computed(() => {
23
+ return linkText.value.length > 0 ? linkText.value : "Session Details";
24
+ });
25
+ </script>
26
+
27
+ <template>
28
+ <span>
29
+ <a class="cursor-pointer" @click="showDescModal = true">
30
+ <CommonSvgIcon
31
+ v-if="useIcon"
32
+ icon="info"
33
+ class="align-middle"
34
+ style="display: inline-block; margin-bottom: 2px"
35
+ :icon-width="'16px'"
36
+ ></CommonSvgIcon>
37
+ <span v-else class="text-xs" :class="{ 'new-line': newLine }">{{
38
+ getLinkText
39
+ }}</span>
40
+ </a>
41
+
42
+ <CommonModal :visible="showDescModal" @trigger="showDescModal = false">
43
+ <template #modal-title>
44
+ <div class="text-lg font-bold text-left mb-4 pb-4 border-b">
45
+ {{ presentation.name }}
46
+ </div>
47
+ </template>
48
+ <template #modal-body>
49
+ <div
50
+ class="text-base font-normal text-left"
51
+ v-html="presentation.description"
52
+ ></div>
53
+ </template>
54
+ </CommonModal>
55
+ </span>
56
+ </template>
@@ -1,49 +1,49 @@
1
- <script lang="ts" setup>
2
- import { toRefs } from "vue";
3
- import { usePresentation } from "../../../composables/usePresentation";
4
- import { Conference, Presentation } from "../../../models/conference";
5
- import { Icons } from "../../../models/icons";
6
-
7
- type Props = {
8
- icon?: keyof Icons;
9
- conference: Conference;
10
- presentation: Presentation;
11
- };
12
-
13
- const props = withDefaults(defineProps<Props>(), {
14
- icon: "playarrow",
15
- });
16
-
17
- const { icon, conference, presentation } = toRefs(props);
18
-
19
- const {
20
- showPresentationPlayIcon,
21
- getPresentationCustomPlayIcon,
22
- getPresentationStreamingText,
23
- } = usePresentation(conference);
24
- </script>
25
-
26
- <template>
27
- <span class="flex-initial flex flex-row items-center py-2 lg:py-1">
28
- <span v-if="showPresentationPlayIcon(presentation)">
29
- <img
30
- v-if="getPresentationCustomPlayIcon(presentation)"
31
- style="max-width: 15px"
32
- :src="(getPresentationCustomPlayIcon(presentation) as unknown as string)"
33
- alt=""
34
- />
35
- <CommonSvgIcon
36
- v-else
37
- :icon="icon"
38
- class="align-middle mr-1"
39
- style="display: inline-block; margin-bottom: 2px"
40
- :icon-width="'20px'"
41
- >
42
- </CommonSvgIcon
43
- >&nbsp;
44
- </span>
45
- <small class="flex-initial uppercase text-base text-red-darker">{{
46
- getPresentationStreamingText(presentation)
47
- }}</small>
48
- </span>
49
- </template>
1
+ <script lang="ts" setup>
2
+ import { toRefs } from "vue";
3
+ import { usePresentation } from "../../../composables/usePresentation";
4
+ import { Conference, Presentation } from "../../../models/conference";
5
+ import { Icons } from "../../../models/icons";
6
+
7
+ type Props = {
8
+ icon?: keyof Icons;
9
+ conference: Conference;
10
+ presentation: Presentation;
11
+ };
12
+
13
+ const props = withDefaults(defineProps<Props>(), {
14
+ icon: "playarrow",
15
+ });
16
+
17
+ const { icon, conference, presentation } = toRefs(props);
18
+
19
+ const {
20
+ showPresentationPlayIcon,
21
+ getPresentationCustomPlayIcon,
22
+ getPresentationStreamingText,
23
+ } = usePresentation(conference);
24
+ </script>
25
+
26
+ <template>
27
+ <span class="flex-initial flex flex-row items-center py-2 lg:py-1">
28
+ <span v-if="showPresentationPlayIcon(presentation)">
29
+ <img
30
+ v-if="getPresentationCustomPlayIcon(presentation)"
31
+ style="max-width: 15px"
32
+ :src="(getPresentationCustomPlayIcon(presentation) as unknown as string)"
33
+ alt=""
34
+ />
35
+ <CommonSvgIcon
36
+ v-else
37
+ :icon="icon"
38
+ class="align-middle mr-1"
39
+ style="display: inline-block; margin-bottom: 2px"
40
+ :icon-width="'20px'"
41
+ >
42
+ </CommonSvgIcon
43
+ >&nbsp;
44
+ </span>
45
+ <small class="flex-initial uppercase text-base text-red-darker">{{
46
+ getPresentationStreamingText(presentation)
47
+ }}</small>
48
+ </span>
49
+ </template>
@@ -1,137 +1,137 @@
1
- <script lang="ts" setup>
2
- import { toRefs, computed } from "vue";
3
- import { useAgenda } from "../../../composables/useAgenda";
4
- import { useConferenceHelpers } from "../../../composables/useConferenceHelpers";
5
- import { usePresentation } from "../../../composables/usePresentation";
6
- import {
7
- Conference,
8
- Presentation,
9
- Track,
10
- TrackGroup,
11
- } from "../../../models/conference";
12
- import InfoLink from "./InfoLink.vue";
13
- import PlayIcon from "./PlayIcon.vue";
14
-
15
- type Props = {
16
- conference: Conference;
17
- presentation: Presentation;
18
- track: Track | TrackGroup;
19
- showInfoLink?: boolean;
20
- simpleLayout?: boolean;
21
- };
22
-
23
- const props = withDefaults(defineProps<Props>(), {
24
- showInfoLink: true,
25
- simpleLayout: false,
26
- });
27
-
28
- const { conference, track, presentation } = toRefs(props);
29
-
30
- // Methods
31
- const { conferenceIsLiveOrMixed, conferenceIsArchived } =
32
- useConferenceHelpers(conference);
33
- const { isSmallGroupedTrack } = useAgenda(conference);
34
- const {
35
- getPresentationLinkTarget,
36
- getLivePresentationLinkDestination,
37
- showPresentationLinkIcon,
38
- getPresentationLinkText,
39
- presentationIsLiveOrMixed,
40
- getArchivePresentationLinkDestination,
41
- } = usePresentation(conference);
42
-
43
- // Computed
44
- const presentationNameClass = computed(() => {
45
- return isSmallGroupedTrack(track.value) ? "text-base" : "text-lg";
46
- });
47
- </script>
48
-
49
- <template>
50
- <div>
51
- <div v-if="!simpleLayout">
52
- <!-- LIVE AGENDA GO TO WEBCAST PAGE -->
53
- <div>
54
- <h2 class="flex flex-initial flex-row" :class="presentationNameClass">
55
- <!-- zoom text & icon link -->
56
- <CommonZoomModal
57
- v-if="
58
- isAgenda &&
59
- conferenceIsLiveOrMixed(conference) &&
60
- presentation.type == 'zoom'
61
- "
62
- :presentation-id="presentation.id"
63
- modal-size="full"
64
- >
65
- <template #modal-link>
66
- <span class="font-semibold no-underline heading-link"
67
- >{{ presentation.name }}
68
- <PlayIcon
69
- :presentation="presentation"
70
- :conference="conference"
71
- :class="'justify-center md:justify-start'"
72
- icon="zoom"
73
- ></PlayIcon>
74
- </span>
75
- </template>
76
- </CommonZoomModal>
77
-
78
- <!-- live/archive stream text & icon link -->
79
- <a
80
- v-else-if="
81
- (isAgenda && conferenceIsLiveOrMixed(conference)) ||
82
- (conferenceIsArchived(conference) && presentation.type != 'zoom')
83
- "
84
- class="font-semibold no-underline heading-link"
85
- :href="getLivePresentationLinkDestination(presentation, track)"
86
- :target="getPresentationLinkTarget(presentation)"
87
- @click="playPresentation(track, presentation, conference)"
88
- >
89
- {{ presentation.name
90
- }}<transition name="fade">
91
- <PlayIcon
92
- v-if="presentationIsLiveOrMixed(presentation)"
93
- :presentation="presentation"
94
- :conference="conference"
95
- :class="'justify-center md:justify-start'"
96
- icon="playarrow"
97
- ></PlayIcon>
98
- </transition>
99
- </a>
100
-
101
- <!-- text only catchall -->
102
- <span v-else class="font-semibold" :class="presentationNameClass"
103
- >{{ presentation.name }}</span
104
- >
105
-
106
- <!-- session details -->
107
- <InfoLink
108
- v-if="showInfoLink && presentation.description"
109
- :presentation="presentation"
110
- :use-icon="useIcon"
111
- :link-text="infoLinkText"
112
- :new-line="isSmallGroupedTrack"
113
- class="ml-2"
114
- />
115
-
116
- <!-- favorites -->
117
- <favorite
118
- v-if="allowFavorites && currentUser.token"
119
- class="ml-1"
120
- :presentation="presentation"
121
- @click="handleFavoriteClick"
122
- />
123
- </h2>
124
- </div>
125
- </div>
126
-
127
- <!-- SIMPLE LAYOUT -->
128
- <div v-else>
129
- <a
130
- class="underline cursor-pointer"
131
- @click="playPresentation(track, presentation, conference)"
132
- >
133
- {{ presentation.name }}
134
- </a>
135
- </div>
136
- </div>
137
- </template>
1
+ <script lang="ts" setup>
2
+ import { toRefs, computed } from "vue";
3
+ import { useAgenda } from "../../../composables/useAgenda";
4
+ import { useConferenceHelpers } from "../../../composables/useConferenceHelpers";
5
+ import { usePresentation } from "../../../composables/usePresentation";
6
+ import {
7
+ Conference,
8
+ Presentation,
9
+ Track,
10
+ TrackGroup,
11
+ } from "../../../models/conference";
12
+ import InfoLink from "./InfoLink.vue";
13
+ import PlayIcon from "./PlayIcon.vue";
14
+
15
+ type Props = {
16
+ conference: Conference;
17
+ presentation: Presentation;
18
+ track: Track | TrackGroup;
19
+ showInfoLink?: boolean;
20
+ simpleLayout?: boolean;
21
+ };
22
+
23
+ const props = withDefaults(defineProps<Props>(), {
24
+ showInfoLink: true,
25
+ simpleLayout: false,
26
+ });
27
+
28
+ const { conference, track, presentation } = toRefs(props);
29
+
30
+ // Methods
31
+ const { conferenceIsLiveOrMixed, conferenceIsArchived } =
32
+ useConferenceHelpers(conference);
33
+ const { isSmallGroupedTrack } = useAgenda(conference);
34
+ const {
35
+ getPresentationLinkTarget,
36
+ getLivePresentationLinkDestination,
37
+ showPresentationLinkIcon,
38
+ getPresentationLinkText,
39
+ presentationIsLiveOrMixed,
40
+ getArchivePresentationLinkDestination,
41
+ } = usePresentation(conference);
42
+
43
+ // Computed
44
+ const presentationNameClass = computed(() => {
45
+ return isSmallGroupedTrack(track.value) ? "text-base" : "text-lg";
46
+ });
47
+ </script>
48
+
49
+ <template>
50
+ <div>
51
+ <div v-if="!simpleLayout">
52
+ <!-- LIVE AGENDA GO TO WEBCAST PAGE -->
53
+ <div>
54
+ <h2 class="flex flex-initial flex-row" :class="presentationNameClass">
55
+ <!-- zoom text & icon link -->
56
+ <CommonZoomModal
57
+ v-if="
58
+ isAgenda &&
59
+ conferenceIsLiveOrMixed(conference) &&
60
+ presentation.type == 'zoom'
61
+ "
62
+ :presentation-id="presentation.id"
63
+ modal-size="full"
64
+ >
65
+ <template #modal-link>
66
+ <span class="font-semibold no-underline heading-link"
67
+ >{{ presentation.name }}
68
+ <PlayIcon
69
+ :presentation="presentation"
70
+ :conference="conference"
71
+ :class="'justify-center md:justify-start'"
72
+ icon="zoom"
73
+ ></PlayIcon>
74
+ </span>
75
+ </template>
76
+ </CommonZoomModal>
77
+
78
+ <!-- live/archive stream text & icon link -->
79
+ <a
80
+ v-else-if="
81
+ (isAgenda && conferenceIsLiveOrMixed(conference)) ||
82
+ (conferenceIsArchived(conference) && presentation.type != 'zoom')
83
+ "
84
+ class="font-semibold no-underline heading-link"
85
+ :href="getLivePresentationLinkDestination(presentation, track)"
86
+ :target="getPresentationLinkTarget(presentation)"
87
+ @click="playPresentation(track, presentation, conference)"
88
+ >
89
+ {{ presentation.name
90
+ }}<transition name="fade">
91
+ <PlayIcon
92
+ v-if="presentationIsLiveOrMixed(presentation)"
93
+ :presentation="presentation"
94
+ :conference="conference"
95
+ :class="'justify-center md:justify-start'"
96
+ icon="playarrow"
97
+ ></PlayIcon>
98
+ </transition>
99
+ </a>
100
+
101
+ <!-- text only catchall -->
102
+ <span v-else class="font-semibold" :class="presentationNameClass"
103
+ >{{ presentation.name }}</span
104
+ >
105
+
106
+ <!-- session details -->
107
+ <InfoLink
108
+ v-if="showInfoLink && presentation.description"
109
+ :presentation="presentation"
110
+ :use-icon="useIcon"
111
+ :link-text="infoLinkText"
112
+ :new-line="isSmallGroupedTrack"
113
+ class="ml-2"
114
+ />
115
+
116
+ <!-- favorites -->
117
+ <favorite
118
+ v-if="allowFavorites && currentUser.token"
119
+ class="ml-1"
120
+ :presentation="presentation"
121
+ @click="handleFavoriteClick"
122
+ />
123
+ </h2>
124
+ </div>
125
+ </div>
126
+
127
+ <!-- SIMPLE LAYOUT -->
128
+ <div v-else>
129
+ <a
130
+ class="underline cursor-pointer"
131
+ @click="playPresentation(track, presentation, conference)"
132
+ >
133
+ {{ presentation.name }}
134
+ </a>
135
+ </div>
136
+ </div>
137
+ </template>