@icvdeveloper/common-module 0.0.90 → 0.0.92

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 (93) 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 -79
  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/PlayerAndContentContainer.vue +175 -175
  64. package/dist/runtime/components/media/WebcastVideoPlayer.vue +167 -167
  65. package/dist/runtime/components/media/components/AgendaPanel.vue +43 -43
  66. package/dist/runtime/components/media/components/CeCreditNotification.vue +95 -95
  67. package/dist/runtime/components/media/components/ContentAccordion.vue +63 -63
  68. package/dist/runtime/components/media/components/ContentAccordion.vue.d.ts +1 -3
  69. package/dist/runtime/components/media/components/ContentArea.vue +158 -158
  70. package/dist/runtime/components/media/components/ContentTabs.vue +231 -229
  71. package/dist/runtime/components/media/components/DocumentsPanel.vue +31 -31
  72. package/dist/runtime/components/media/components/JsonApi.vue +31 -31
  73. package/dist/runtime/components/media/components/MediaContainer.vue +63 -63
  74. package/dist/runtime/components/media/components/OverviewPanel.vue +52 -52
  75. package/dist/runtime/components/media/components/PresentersPanel.vue +52 -52
  76. package/dist/runtime/components/media/components/SessionReporting.vue +93 -93
  77. package/dist/runtime/components/media/components/SponsorsPanel.vue +71 -71
  78. package/dist/runtime/components/media/components/WindowContent.vue +92 -92
  79. package/dist/runtime/components/media/components/WindowSlide.vue +72 -72
  80. package/dist/runtime/components/presenters/PresenterListing.vue +164 -164
  81. package/dist/runtime/components/presenters/PresenterModal.vue +223 -223
  82. package/dist/runtime/components/profile/Profile.vue +149 -149
  83. package/dist/runtime/components/profile/components/Sidebar.vue +27 -27
  84. package/dist/runtime/components/profile/components/SidebarNavItem.vue +39 -39
  85. package/dist/runtime/components/profile/tabs/Favorites.vue +21 -21
  86. package/dist/runtime/components/profile/tabs/GeneralInformation.vue +122 -122
  87. package/dist/runtime/components/profile/tabs/ProfileImage.vue +75 -75
  88. package/dist/runtime/components/support/FAQAccordion.vue +140 -140
  89. package/dist/runtime/composables/useDateFormat.mjs +1 -1
  90. package/dist/runtime/composables/useUcc.d.ts +6 -2
  91. package/dist/runtime/composables/useUcc.mjs +37 -42
  92. package/dist/runtime/store/conferences.mjs +1 -1
  93. 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,175 +1,175 @@
1
- <script lang="ts" setup>
2
- import { ref, toRefs, computed } from "vue";
3
- import { storeToRefs } from "pinia";
4
- import { useRoute } from "vue-router";
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 { useAuthStore } from "../../store/auth";
10
- import {
11
- PlayerAndContentClassObj,
12
- PlayerAndContentCompObj,
13
- ContentTabsClassObj,
14
- ContentAreaClassObj,
15
- MediaContainerClassObj,
16
- } from "../../@types/components";
17
-
18
- type Props = {
19
- conference: Conference;
20
- presentation: Presentation;
21
- tabs?: Array<{ label: string; type: SelectedContent; content: string }>;
22
- classObject?: PlayerAndContentClassObj;
23
- };
24
-
25
- const props = withDefaults(defineProps<Props>(), {
26
- tabs: () => {
27
- return [
28
- { label: "Overview", type: SelectedContent.OVERVIEW, content: "string" },
29
- ];
30
- },
31
- classObject: () => {
32
- return {
33
- container: "",
34
- noTabsContainer: "",
35
- noTabsChild: "",
36
- withTabsContainer: "",
37
- withTabsChild: "",
38
- mediaTabsContainer: "",
39
- components: ref<PlayerAndContentCompObj>({
40
- contentTabs: ref<ContentTabsClassObj>({}),
41
- contentArea: ref<ContentAreaClassObj>({}),
42
- mediaContainer: ref<MediaContainerClassObj>({}),
43
- }),
44
- };
45
- },
46
- });
47
-
48
- const { conference, presentation } = toRefs(props);
49
-
50
- const route = ref(useRoute());
51
-
52
- const { classBinding } = useClassBinding();
53
-
54
- const { selectedContent } = storeToRefs(usePresentationsStore());
55
- const { isLoggedIn } = storeToRefs(useAuthStore());
56
-
57
- // computed
58
-
59
- const isStreamTest = computed((): boolean => {
60
- return (
61
- route.value.params.channelid === "stream-test" ||
62
- String(route.value.name) === "stream-test"
63
- );
64
- });
65
-
66
- const hasAccess = computed((): boolean => {
67
- return isLoggedIn.value && conference.value.access;
68
- });
69
- </script>
70
-
71
- <template>
72
- <div :class="classBinding(classObject, 'container', 'flex flex-col w-full')">
73
- <!-- NO TABS -->
74
- <div
75
- v-if="isStreamTest || (hasAccess && !tabs.length)"
76
- :class="
77
- classBinding(
78
- classObject,
79
- 'noTabsContainer',
80
- 'container mx-auto flex flex-col text-center pt-6'
81
- )
82
- "
83
- >
84
- <div :class="classBinding(classObject, 'noTabsChild', 'flex-1')">
85
- <CommonComponentsMediaContainer
86
- :class="
87
- classBinding(
88
- classObject,
89
- 'classObject.components.mediaContainer.container',
90
- 'flex-1 aspect-video'
91
- )
92
- "
93
- :webcast-conference="conference"
94
- :class-object="classObject.components.mediaContainer"
95
- />
96
- </div>
97
- </div>
98
-
99
- <!-- TABS -->
100
- <div v-else :class="classBinding(classObject, 'withTabsContainer', '')">
101
- <CommonComponentsContentTabs
102
- :class="
103
- classBinding(
104
- classObject,
105
- 'classObject.components.contentTabs.container',
106
- 'hidden md:block'
107
- )
108
- "
109
- :webcast-conference="conference"
110
- :items="tabs"
111
- :class-object="classObject.components.contentTabs"
112
- />
113
- <div
114
- :class="
115
- classBinding(
116
- classObject,
117
- 'withTabsChild',
118
- 'flex-1 grid grid-cols-7 grid-rows-2 gap-y-4'
119
- )
120
- "
121
- >
122
- <div
123
- :class="
124
- classBinding(
125
- classObject,
126
- 'MediaTabsContainer',
127
- 'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
128
- )
129
- "
130
- >
131
- <CommonComponentsMediaContainer
132
- class="w-full"
133
- :webcast-conference="conference"
134
- :class-object="classObject.components.mediaContainer"
135
- />
136
- <CommonComponentsContentTabs
137
- class="block md:hidden"
138
- :webcast-conference="conference"
139
- :items="tabs"
140
- :class-object="classObject.components.contentTabs"
141
- />
142
- </div>
143
- <CommonComponentsContentArea
144
- class="col-span-7 row-span-1 md:col-span-3 lg:col-span-2 border ml-0 md:ml-6"
145
- :selected-content="selectedContent"
146
- :webcast-conference="conference"
147
- :presentation="presentation"
148
- :class-object="classObject.components.contentArea"
149
- />
150
- <!-- sponsor -->
151
- <figure
152
- 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"
153
- >
154
- <h3
155
- v-if="conference.affiliates.length > 0"
156
- class="allsmallcaps text-sm pb-4 text-neutral-400 scala"
157
- >
158
- Sponsored by:
159
- </h3>
160
- <template v-for="affiliate in conference.affiliates">
161
- <CommonComponentsSponsor
162
- v-if="affiliate.role == 'sponsor'"
163
- :key="affiliate.id"
164
- :sponsor="affiliate"
165
- :class-object="{
166
- labelImageContainer: 'block',
167
- sponsorContainer: 'img-mx-auto',
168
- }"
169
- />
170
- </template>
171
- </figure>
172
- </div>
173
- </div>
174
- </div>
175
- </template>
1
+ <script lang="ts" setup>
2
+ import { ref, toRefs, computed } from "vue";
3
+ import { storeToRefs } from "pinia";
4
+ import { useRoute } from "vue-router";
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 { useAuthStore } from "../../store/auth";
10
+ import {
11
+ PlayerAndContentClassObj,
12
+ PlayerAndContentCompObj,
13
+ ContentTabsClassObj,
14
+ ContentAreaClassObj,
15
+ MediaContainerClassObj,
16
+ } from "../../@types/components";
17
+
18
+ type Props = {
19
+ conference: Conference;
20
+ presentation: Presentation;
21
+ tabs?: Array<{ label: string; type: SelectedContent; content: string }>;
22
+ classObject?: PlayerAndContentClassObj;
23
+ };
24
+
25
+ const props = withDefaults(defineProps<Props>(), {
26
+ tabs: () => {
27
+ return [
28
+ { label: "Overview", type: SelectedContent.OVERVIEW, content: "string" },
29
+ ];
30
+ },
31
+ classObject: () => {
32
+ return {
33
+ container: "",
34
+ noTabsContainer: "",
35
+ noTabsChild: "",
36
+ withTabsContainer: "",
37
+ withTabsChild: "",
38
+ mediaTabsContainer: "",
39
+ components: ref<PlayerAndContentCompObj>({
40
+ contentTabs: ref<ContentTabsClassObj>({}),
41
+ contentArea: ref<ContentAreaClassObj>({}),
42
+ mediaContainer: ref<MediaContainerClassObj>({}),
43
+ }),
44
+ };
45
+ },
46
+ });
47
+
48
+ const { conference, presentation } = toRefs(props);
49
+
50
+ const route = ref(useRoute());
51
+
52
+ const { classBinding } = useClassBinding();
53
+
54
+ const { selectedContent } = storeToRefs(usePresentationsStore());
55
+ const { isLoggedIn } = storeToRefs(useAuthStore());
56
+
57
+ // computed
58
+
59
+ const isStreamTest = computed((): boolean => {
60
+ return (
61
+ route.value.params.channelid === "stream-test" ||
62
+ String(route.value.name) === "stream-test"
63
+ );
64
+ });
65
+
66
+ const hasAccess = computed((): boolean => {
67
+ return isLoggedIn.value && conference.value.access;
68
+ });
69
+ </script>
70
+
71
+ <template>
72
+ <div :class="classBinding(classObject, 'container', 'flex flex-col w-full')">
73
+ <!-- NO TABS -->
74
+ <div
75
+ v-if="isStreamTest || (hasAccess && !tabs.length)"
76
+ :class="
77
+ classBinding(
78
+ classObject,
79
+ 'noTabsContainer',
80
+ 'container mx-auto flex flex-col text-center pt-6'
81
+ )
82
+ "
83
+ >
84
+ <div :class="classBinding(classObject, 'noTabsChild', 'flex-1')">
85
+ <CommonComponentsMediaContainer
86
+ :class="
87
+ classBinding(
88
+ classObject,
89
+ 'classObject.components.mediaContainer.container',
90
+ 'flex-1 aspect-video'
91
+ )
92
+ "
93
+ :webcast-conference="conference"
94
+ :class-object="classObject.components.mediaContainer"
95
+ />
96
+ </div>
97
+ </div>
98
+
99
+ <!-- TABS -->
100
+ <div v-else :class="classBinding(classObject, 'withTabsContainer', '')">
101
+ <CommonComponentsContentTabs
102
+ :class="
103
+ classBinding(
104
+ classObject,
105
+ 'classObject.components.contentTabs.container',
106
+ 'hidden md:block'
107
+ )
108
+ "
109
+ :webcast-conference="conference"
110
+ :items="tabs"
111
+ :class-object="classObject.components.contentTabs"
112
+ />
113
+ <div
114
+ :class="
115
+ classBinding(
116
+ classObject,
117
+ 'withTabsChild',
118
+ 'flex-1 grid grid-cols-7 grid-rows-2 gap-y-4'
119
+ )
120
+ "
121
+ >
122
+ <div
123
+ :class="
124
+ classBinding(
125
+ classObject,
126
+ 'MediaTabsContainer',
127
+ 'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
128
+ )
129
+ "
130
+ >
131
+ <CommonComponentsMediaContainer
132
+ class="w-full"
133
+ :webcast-conference="conference"
134
+ :class-object="classObject.components.mediaContainer"
135
+ />
136
+ <CommonComponentsContentTabs
137
+ class="block md:hidden"
138
+ :webcast-conference="conference"
139
+ :items="tabs"
140
+ :class-object="classObject.components.contentTabs"
141
+ />
142
+ </div>
143
+ <CommonComponentsContentArea
144
+ class="col-span-7 row-span-1 md:col-span-3 lg:col-span-2 border ml-0 md:ml-6"
145
+ :selected-content="selectedContent"
146
+ :webcast-conference="conference"
147
+ :presentation="presentation"
148
+ :class-object="classObject.components.contentArea"
149
+ />
150
+ <!-- sponsor -->
151
+ <figure
152
+ 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"
153
+ >
154
+ <h3
155
+ v-if="conference.affiliates.length > 0"
156
+ class="allsmallcaps text-sm pb-4 text-neutral-400 scala"
157
+ >
158
+ Sponsored by:
159
+ </h3>
160
+ <template v-for="affiliate in conference.affiliates">
161
+ <CommonComponentsSponsor
162
+ v-if="affiliate.role == 'sponsor'"
163
+ :key="affiliate.id"
164
+ :sponsor="affiliate"
165
+ :class-object="{
166
+ labelImageContainer: 'block',
167
+ sponsorContainer: 'img-mx-auto',
168
+ }"
169
+ />
170
+ </template>
171
+ </figure>
172
+ </div>
173
+ </div>
174
+ </div>
175
+ </template>