@icvdeveloper/common-module 0.0.112 → 0.0.114

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 (95) hide show
  1. package/README.md +6 -6
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/@types/components.d.ts +2 -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 +271 -271
  35. package/dist/runtime/components/agenda/AgendaTabbed.vue +309 -309
  36. package/dist/runtime/components/agenda/components/AgendaListAccordion.vue +67 -67
  37. package/dist/runtime/components/agenda/components/Calendar.vue +81 -81
  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 +132 -132
  46. package/dist/runtime/components/core/Accordion.vue +97 -97
  47. package/dist/runtime/components/core/CountdownTimer.vue +357 -357
  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 +567 -551
  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 -157
  65. package/dist/runtime/components/media/ArchiveVideoPlayer.vue +186 -186
  66. package/dist/runtime/components/media/PlayerAndContentContainer.vue +178 -175
  67. package/dist/runtime/components/media/WebcastVideoPlayer.vue +167 -167
  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 +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/dist/runtime/composables/useConferenceHelpers.mjs +1 -1
  93. package/dist/runtime/composables/useEvents.d.ts +4 -0
  94. package/dist/runtime/composables/useEvents.mjs +11 -1
  95. package/package.json +1 -1
@@ -1,78 +1,78 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs, computed } from "vue";
3
-
4
- type Props = {
5
- title?: string;
6
- tabContent?: {
7
- content?: string;
8
- label?: string;
9
- type?: string;
10
- };
11
- contentObject?: object;
12
- };
13
-
14
- const props = withDefaults(defineProps<Props>(), {
15
- title: "",
16
- tabContent: () => ({}),
17
- contentObject: () => ({}),
18
- });
19
-
20
- // data
21
- const { title, tabContent, contentObject } = toRefs(props);
22
- const active = ref<boolean>(false);
23
-
24
- // computed
25
- const tabTitleValues = computed(() => {
26
- if (title.value) {
27
- return {
28
- title: title.value,
29
- classes: "",
30
- };
31
- } else {
32
- return {
33
- title: tabContent.value.label,
34
- classes: "pl-4",
35
- };
36
- }
37
- });
38
- </script>
39
-
40
- <template>
41
- <div>
42
- <a
43
- v-if="tabContent.type === 'url'"
44
- :href="tabContent.content"
45
- target="_blank"
46
- class="py-3 block no-underline w-full font-hairline inline-flex items-center text-md my-1"
47
- :class="tabTitleValues.classes"
48
- >
49
- <span class="flex-initial">
50
- {{ tabTitleValues.title }}
51
- </span>
52
- </a>
53
- <a
54
- v-else
55
- href="#"
56
- class="py-3 block no-underline w-full font-hairline inline-flex items-center text-md my-1"
57
- :class="tabTitleValues.classes"
58
- @click.prevent="active = !active"
59
- >
60
- <span class="flex-initial"> {{ tabTitleValues.title }}&nbsp;&nbsp; </span>
61
- <span
62
- v-show="!active"
63
- class="font-black flex-initial"
64
- style="width: 0.75rem"
65
- >
66
- <CommonSvgIcon icon="downarrow"></CommonSvgIcon>
67
- </span>
68
- <span
69
- v-show="active"
70
- class="font-black flex-initial"
71
- style="width: 0.75rem"
72
- >
73
- <CommonSvgIcon class="invert" icon="downarrow"></CommonSvgIcon>
74
- </span>
75
- </a>
76
- <div v-show="active"><slot /></div>
77
- </div>
78
- </template>
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs, computed } from "vue";
3
+
4
+ type Props = {
5
+ title?: string;
6
+ tabContent?: {
7
+ content?: string;
8
+ label?: string;
9
+ type?: string;
10
+ };
11
+ contentObject?: object;
12
+ };
13
+
14
+ const props = withDefaults(defineProps<Props>(), {
15
+ title: "",
16
+ tabContent: () => ({}),
17
+ contentObject: () => ({}),
18
+ });
19
+
20
+ // data
21
+ const { title, tabContent, contentObject } = toRefs(props);
22
+ const active = ref<boolean>(false);
23
+
24
+ // computed
25
+ const tabTitleValues = computed(() => {
26
+ if (title.value) {
27
+ return {
28
+ title: title.value,
29
+ classes: "",
30
+ };
31
+ } else {
32
+ return {
33
+ title: tabContent.value.label,
34
+ classes: "pl-4",
35
+ };
36
+ }
37
+ });
38
+ </script>
39
+
40
+ <template>
41
+ <div>
42
+ <a
43
+ v-if="tabContent.type === 'url'"
44
+ :href="tabContent.content"
45
+ target="_blank"
46
+ class="py-3 block no-underline w-full font-hairline inline-flex items-center text-md my-1"
47
+ :class="tabTitleValues.classes"
48
+ >
49
+ <span class="flex-initial">
50
+ {{ tabTitleValues.title }}
51
+ </span>
52
+ </a>
53
+ <a
54
+ v-else
55
+ href="#"
56
+ class="py-3 block no-underline w-full font-hairline inline-flex items-center text-md my-1"
57
+ :class="tabTitleValues.classes"
58
+ @click.prevent="active = !active"
59
+ >
60
+ <span class="flex-initial"> {{ tabTitleValues.title }}&nbsp;&nbsp; </span>
61
+ <span
62
+ v-show="!active"
63
+ class="font-black flex-initial"
64
+ style="width: 0.75rem"
65
+ >
66
+ <CommonSvgIcon icon="downarrow"></CommonSvgIcon>
67
+ </span>
68
+ <span
69
+ v-show="active"
70
+ class="font-black flex-initial"
71
+ style="width: 0.75rem"
72
+ >
73
+ <CommonSvgIcon class="invert" icon="downarrow"></CommonSvgIcon>
74
+ </span>
75
+ </a>
76
+ <div v-show="active"><slot /></div>
77
+ </div>
78
+ </template>
@@ -1,157 +1,160 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs } from "vue";
3
- import { storeToRefs } from "pinia";
4
- import { useClassBinding } from "../../composables/useClassBinding";
5
- import { Conference, Presentation } from "../../models/conference";
6
- import { SelectedContent } from "../../enums/general";
7
- import { usePresentationsStore } from "../../store/presentations";
8
- import {
9
- PlayerAndContentClassObj,
10
- PlayerAndContentCompObj,
11
- ContentTabsClassObj,
12
- ContentAreaClassObj,
13
- MediaContainerClassObj,
14
- } from "../../@types/components";
15
-
16
- type Props = {
17
- conference: Conference;
18
- presentation: Presentation;
19
- tabs?: Array<{ label: string; type: SelectedContent; content: string }>;
20
- classObject?: PlayerAndContentClassObj;
21
- };
22
-
23
- const props = withDefaults(defineProps<Props>(), {
24
- tabs: () => {
25
- return [
26
- { label: "Overview", type: SelectedContent.OVERVIEW, content: "string" },
27
- ];
28
- },
29
- classObject: () => {
30
- return {
31
- container: "",
32
- noTabsContainer: "",
33
- noTabsChild: "",
34
- withTabsContainer: "",
35
- withTabsChild: "",
36
- mediaTabsContainer: "",
37
- components: ref<PlayerAndContentCompObj>({
38
- contentTabs: ref<ContentTabsClassObj>({}),
39
- contentArea: ref<ContentAreaClassObj>({}),
40
- mediaContainer: ref<MediaContainerClassObj>({}),
41
- }),
42
- };
43
- },
44
- });
45
-
46
- const { conference, presentation } = toRefs(props);
47
-
48
- const { classBinding } = useClassBinding();
49
-
50
- const { selectedContent } = storeToRefs(usePresentationsStore());
51
- </script>
52
-
53
- <template>
54
- <div :class="classBinding(classObject, 'container', 'flex flex-col w-full')">
55
- <!-- NO TABS -->
56
- <div
57
- v-if="!tabs.length"
58
- :class="
59
- classBinding(
60
- classObject,
61
- 'noTabsContainer',
62
- 'container mx-auto flex flex-col text-center pt-6'
63
- )
64
- "
65
- >
66
- <div :class="classBinding(classObject, 'noTabsChild', 'flex-1')">
67
- <CommonComponentsArchiveMediaContainer
68
- :class="
69
- classBinding(
70
- classObject,
71
- 'classObject.components.mediaContainer.container',
72
- 'flex-1 aspect-video'
73
- )
74
- "
75
- :presentation="presentation"
76
- :class-object="classObject.components.mediaContainer"
77
- />
78
- </div>
79
- </div>
80
-
81
- <!-- TABS -->
82
- <div v-else :class="classBinding(classObject, 'withTabsContainer', '')">
83
- <CommonComponentsContentTabs
84
- :class="
85
- classBinding(
86
- classObject,
87
- 'classObject.components.contentTabs.container',
88
- 'hidden md:block'
89
- )
90
- "
91
- :webcast-conference="conference"
92
- :items="tabs"
93
- :class-object="classObject.components.contentTabs"
94
- />
95
- <div
96
- :class="
97
- classBinding(
98
- classObject,
99
- 'withTabsChild',
100
- 'flex-1 grid grid-cols-7 grid-rows-2 gap-y-4'
101
- )
102
- "
103
- >
104
- <div
105
- :class="
106
- classBinding(
107
- classObject,
108
- 'MediaTabsContainer',
109
- 'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
110
- )
111
- "
112
- >
113
- <CommonComponentsArchiveMediaContainer
114
- class="w-full"
115
- :presentation="presentation"
116
- :class-object="classObject.components.mediaContainer"
117
- />
118
- <CommonComponentsContentTabs
119
- class="block md:hidden"
120
- :webcast-conference="conference"
121
- :items="tabs"
122
- :class-object="classObject.components.contentTabs"
123
- />
124
- </div>
125
- <CommonComponentsContentArea
126
- class="col-span-7 row-span-1 md:col-span-3 lg:col-span-2 border ml-0 md:ml-6"
127
- :selected-content="selectedContent"
128
- :webcast-conference="conference"
129
- :presentation="presentation"
130
- :class-object="classObject.components.contentArea"
131
- />
132
- <!-- sponsor -->
133
- <figure
134
- class="col-span-7 md:col-start-5 md:col-span-3 lg:col-start-6 lg:col-span-6 row-span-1 flex flex-col p-6 text-center"
135
- >
136
- <h3
137
- v-if="conference.affiliates.length > 0"
138
- class="allsmallcaps text-sm pb-4 text-neutral-400 scala"
139
- >
140
- Sponsored by:
141
- </h3>
142
- <template v-for="affiliate in conference.affiliates">
143
- <CommonComponentsSponsor
144
- v-if="affiliate.role == 'sponsor'"
145
- :key="affiliate.id"
146
- :sponsor="affiliate"
147
- :class-object="{
148
- labelImageContainer: 'block',
149
- sponsorContainer: 'img-mx-auto',
150
- }"
151
- />
152
- </template>
153
- </figure>
154
- </div>
155
- </div>
156
- </div>
157
- </template>
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs } from "vue";
3
+ import { storeToRefs } from "pinia";
4
+ import { useEvents } from "../../composables/useEvents";
5
+ import { useClassBinding } from "../../composables/useClassBinding";
6
+ import { Conference, Presentation } from "../../models/conference";
7
+ import { SelectedContent } from "../../enums/general";
8
+ import { usePresentationsStore } from "../../store/presentations";
9
+ import {
10
+ PlayerAndContentClassObj,
11
+ PlayerAndContentCompObj,
12
+ ContentTabsClassObj,
13
+ ContentAreaClassObj,
14
+ MediaContainerClassObj,
15
+ } from "../../@types/components";
16
+
17
+ type Props = {
18
+ conference: Conference;
19
+ presentation: Presentation;
20
+ tabs?: Array<{ label: string; type: SelectedContent; content: string }>;
21
+ classObject?: PlayerAndContentClassObj;
22
+ };
23
+
24
+ const props = withDefaults(defineProps<Props>(), {
25
+ tabs: () => {
26
+ return [
27
+ { label: "Overview", type: SelectedContent.OVERVIEW, content: "string" },
28
+ ];
29
+ },
30
+ classObject: () => {
31
+ return {
32
+ container: "",
33
+ noTabsContainer: "",
34
+ noTabsChild: "",
35
+ withTabsContainer: "",
36
+ withTabsChild: "",
37
+ mediaTabsContainer: "",
38
+ components: ref<PlayerAndContentCompObj>({
39
+ contentTabs: ref<ContentTabsClassObj>({}),
40
+ contentArea: ref<ContentAreaClassObj>({}),
41
+ mediaContainer: ref<MediaContainerClassObj>({}),
42
+ }),
43
+ };
44
+ },
45
+ });
46
+
47
+ const { conference, presentation } = toRefs(props);
48
+
49
+ const { classBinding } = useClassBinding();
50
+ const { getSponsors } = useEvents();
51
+
52
+ const { selectedContent } = storeToRefs(usePresentationsStore());
53
+ </script>
54
+
55
+ <template>
56
+ <div :class="classBinding(classObject, 'container', 'flex flex-col w-full')">
57
+ <!-- NO TABS -->
58
+ <div
59
+ v-if="!tabs.length"
60
+ :class="
61
+ classBinding(
62
+ classObject,
63
+ 'noTabsContainer',
64
+ 'container mx-auto flex flex-col text-center pt-6'
65
+ )
66
+ "
67
+ >
68
+ <div :class="classBinding(classObject, 'noTabsChild', 'flex-1')">
69
+ <CommonComponentsArchiveMediaContainer
70
+ :class="
71
+ classBinding(
72
+ classObject,
73
+ 'classObject.components.mediaContainer.container',
74
+ 'flex-1 aspect-video'
75
+ )
76
+ "
77
+ :presentation="presentation"
78
+ :class-object="classObject.components.mediaContainer"
79
+ />
80
+ </div>
81
+ </div>
82
+
83
+ <!-- TABS -->
84
+ <div v-else :class="classBinding(classObject, 'withTabsContainer', '')">
85
+ <CommonComponentsContentTabs
86
+ :class="
87
+ classBinding(
88
+ classObject,
89
+ 'classObject.components.contentTabs.container',
90
+ 'hidden md:block'
91
+ )
92
+ "
93
+ :webcast-conference="conference"
94
+ :items="tabs"
95
+ :class-object="classObject.components.contentTabs"
96
+ />
97
+ <div
98
+ :class="
99
+ classBinding(
100
+ classObject,
101
+ 'withTabsChild',
102
+ 'flex-1 grid grid-cols-7 grid-rows-2 gap-y-4'
103
+ )
104
+ "
105
+ >
106
+ <div
107
+ :class="
108
+ classBinding(
109
+ classObject,
110
+ 'mediaTabsContainer',
111
+ 'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
112
+ )
113
+ "
114
+ >
115
+ <CommonComponentsArchiveMediaContainer
116
+ class="w-full"
117
+ :presentation="presentation"
118
+ :class-object="classObject.components.mediaContainer"
119
+ />
120
+ <CommonComponentsContentTabs
121
+ class="block md:hidden"
122
+ :webcast-conference="conference"
123
+ :items="tabs"
124
+ :class-object="classObject.components.contentTabs"
125
+ />
126
+ </div>
127
+ <CommonComponentsContentArea
128
+ class="col-span-7 row-span-1 md:col-span-3 lg:col-span-2 border ml-0 md:ml-6"
129
+ :selected-content="selectedContent"
130
+ :webcast-conference="conference"
131
+ :presentation="presentation"
132
+ :class-object="classObject.components.contentArea"
133
+ />
134
+ <!-- sponsor -->
135
+ <figure
136
+ class="col-span-7 md:col-start-5 md:col-span-3 lg:col-start-6 lg:col-span-6 row-span-1 flex flex-col p-6 text-center"
137
+ >
138
+ <template
139
+ v-for="(affiliate, index) in getSponsors(conference.affiliates)"
140
+ :key="index"
141
+ >
142
+ <h3
143
+ v-if="index === 0"
144
+ :class="classBinding(classObject, 'sponsoredByText', 'hidden')"
145
+ >
146
+ Sponsored by:
147
+ </h3>
148
+ <CommonComponentsSponsor
149
+ :sponsor="affiliate"
150
+ :class-object="{
151
+ labelImageContainer: 'block',
152
+ sponsorContainer: 'img-mx-auto',
153
+ }"
154
+ />
155
+ </template>
156
+ </figure>
157
+ </div>
158
+ </div>
159
+ </div>
160
+ </template>