@icvdeveloper/common-module 1.4.14 → 2.0.0

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 (109) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +10 -0
  4. package/dist/runtime/@types/components.d.ts +22 -0
  5. package/dist/runtime/@types/configVariables.d.ts +6 -0
  6. package/dist/runtime/analytics.d.ts +1 -1
  7. package/dist/runtime/assets/scss/index.css +0 -705
  8. package/dist/runtime/assets/svg/icon-minus.svg +6 -0
  9. package/dist/runtime/assets/svg/icon-video.svg +6 -0
  10. package/dist/runtime/components/affiliates/AffiliateModal.vue +66 -0
  11. package/dist/runtime/components/affiliates/AffiliatePage.vue +337 -132
  12. package/dist/runtime/components/agenda/AgendaTabbed.vue +43 -34
  13. package/dist/runtime/components/agenda/components/Calendar.vue +8 -3
  14. package/dist/runtime/components/agenda/components/Favorite.vue +44 -0
  15. package/dist/runtime/components/agenda/components/PlayIcon.vue +1 -1
  16. package/dist/runtime/components/agenda/components/PresentationLink.vue +26 -15
  17. package/dist/runtime/components/chat/ChatConversationList.vue +108 -0
  18. package/dist/runtime/components/chat/ChatCreateConversation.vue +205 -0
  19. package/dist/runtime/components/chat/ChatCreateGroupConversation.vue +159 -0
  20. package/dist/runtime/components/chat/ChatHeader.vue +98 -0
  21. package/dist/runtime/components/chat/ChatMessage.vue +40 -0
  22. package/dist/runtime/components/chat/ChatShowConversation.vue +77 -0
  23. package/dist/runtime/components/chat/ChatWidget.vue +65 -0
  24. package/dist/runtime/components/chat/ChatWindow.vue +211 -0
  25. package/dist/runtime/components/chat/ChatWindow.vue.d.ts +6 -0
  26. package/dist/runtime/components/chat/MessageInput.vue +30 -0
  27. package/dist/runtime/components/chat/SearchInput.vue +32 -0
  28. package/dist/runtime/components/core/Accordion.vue +1 -1
  29. package/dist/runtime/components/core/AttendeeList.vue +25 -16
  30. package/dist/runtime/components/core/CountdownTimer.vue +1 -1
  31. package/dist/runtime/components/core/Modal.vue +21 -13
  32. package/dist/runtime/components/core/ModalButton.vue +43 -0
  33. package/dist/runtime/components/core/Navbar.vue +3 -3
  34. package/dist/runtime/components/core/Navigation.vue +293 -0
  35. package/dist/runtime/components/core/SvgIcon.vue +31 -1
  36. package/dist/runtime/components/core/VButton.vue +41 -0
  37. package/dist/runtime/components/core/ZoomModal.vue +1 -1
  38. package/dist/runtime/components/events/ListEvents.vue +3 -4
  39. package/dist/runtime/components/forms/CheckboxGroup.vue +46 -0
  40. package/dist/runtime/components/forms/ErrorField.vue +11 -2
  41. package/dist/runtime/components/forms/RadioGroup.vue +50 -0
  42. package/dist/runtime/components/forms/SelectDropDown.vue +47 -0
  43. package/dist/runtime/components/forms/SupportForm.vue +6 -6
  44. package/dist/runtime/components/layouts/Accordion.vue +2 -2
  45. package/dist/runtime/components/media/ArchivePlayerAndContentContainer.vue +20 -4
  46. package/dist/runtime/components/media/ArchiveVideoPlayer.vue +14 -6
  47. package/dist/runtime/components/media/WebcastVideoPlayer.vue +1 -1
  48. package/dist/runtime/components/media/components/ArchiveMediaContainer.vue +8 -8
  49. package/dist/runtime/components/media/components/CeCreditNotification.vue +2 -2
  50. package/dist/runtime/components/media/components/ContentArea.vue +51 -14
  51. package/dist/runtime/components/media/components/ContentTabs.vue +2 -2
  52. package/dist/runtime/components/media/components/DocumentsPanel.vue +2 -2
  53. package/dist/runtime/components/media/components/MediaContainer.vue +3 -7
  54. package/dist/runtime/components/media/components/PresentersPanel.vue +69 -50
  55. package/dist/runtime/components/media/components/SessionReporting.vue +5 -4
  56. package/dist/runtime/components/media/components/SponsorsPanel.vue +3 -3
  57. package/dist/runtime/components/presenters/PresenterListing.vue +30 -20
  58. package/dist/runtime/components/presenters/PresenterModal.vue +26 -21
  59. package/dist/runtime/components/presenters/Presenters.vue +139 -0
  60. package/dist/runtime/components/profile/Profile.vue +10 -6
  61. package/dist/runtime/components/profile/components/Sidebar.vue +1 -1
  62. package/dist/runtime/components/profile/components/SidebarNavItem.vue +1 -1
  63. package/dist/runtime/components/profile/tabs/Favorites.vue +5 -4
  64. package/dist/runtime/components/profile/tabs/GeneralInformation.vue +26 -16
  65. package/dist/runtime/components/registration/AlreadyRegisteredModal.vue +99 -0
  66. package/dist/runtime/components/registration/PaymentForm.vue +136 -0
  67. package/dist/runtime/components/registration/RegistrationForm.vue +417 -0
  68. package/dist/runtime/components/registration/RegistrationGroupSelect.vue +142 -0
  69. package/dist/runtime/components/registration/StripePaymentForm.vue +141 -0
  70. package/dist/runtime/composables/useAgenda.d.ts +12 -0
  71. package/dist/runtime/composables/useAgenda.mjs +101 -10
  72. package/dist/runtime/composables/useAuth.mjs +1 -1
  73. package/dist/runtime/composables/useConferenceHelpers.d.ts +5 -1
  74. package/dist/runtime/composables/useConferenceHelpers.mjs +15 -1
  75. package/dist/runtime/composables/useEventHooks.d.ts +26 -0
  76. package/dist/runtime/composables/useEventHooks.mjs +21 -0
  77. package/dist/runtime/composables/useEvents.d.ts +17 -1
  78. package/dist/runtime/composables/useEvents.mjs +29 -1
  79. package/dist/runtime/composables/useLogin.mjs +7 -3
  80. package/dist/runtime/composables/usePresentation.mjs +1 -1
  81. package/dist/runtime/composables/usePusher.d.ts +4 -0
  82. package/dist/runtime/composables/usePusher.mjs +38 -26
  83. package/dist/runtime/composables/useStream.mjs +7 -1
  84. package/dist/runtime/enums/general.d.ts +4 -1
  85. package/dist/runtime/enums/general.mjs +4 -1
  86. package/dist/runtime/models/authUser.d.ts +1 -0
  87. package/dist/runtime/models/conference.d.ts +14 -0
  88. package/dist/runtime/models/conversation.d.ts +2 -4
  89. package/dist/runtime/models/globalConfig.d.ts +6 -2
  90. package/dist/runtime/models/group.d.ts +32 -2
  91. package/dist/runtime/models/icons.d.ts +7 -0
  92. package/dist/runtime/models/templateConfig.d.ts +6 -0
  93. package/dist/runtime/models/user.d.ts +1 -0
  94. package/dist/runtime/models/virtualPagesConfig.d.ts +335 -0
  95. package/dist/runtime/models/virtualPagesConfig.mjs +0 -0
  96. package/dist/runtime/plugin.mjs +6 -0
  97. package/dist/runtime/store/affiliates.d.ts +3 -0
  98. package/dist/runtime/store/affiliates.mjs +38 -0
  99. package/dist/runtime/store/auth.mjs +6 -0
  100. package/dist/runtime/store/conferences.d.ts +3 -1
  101. package/dist/runtime/store/conferences.mjs +7 -2
  102. package/dist/runtime/store/conversations.d.ts +4040 -10
  103. package/dist/runtime/store/conversations.mjs +255 -22
  104. package/dist/runtime/store/modalPlayerConfig.d.ts +498 -0
  105. package/dist/runtime/store/modalPlayerConfig.mjs +58 -0
  106. package/dist/runtime/store/templateConfigs.d.ts +3 -2
  107. package/dist/runtime/store/templateConfigs.mjs +2 -1
  108. package/package.json +5 -2
  109. package/dist/runtime/components/media/components/PresentersPanel.vue.d.ts +0 -32
@@ -137,6 +137,12 @@ export default defineNuxtPlugin((nuxtApp) => {
137
137
  {
138
138
  children: customCss
139
139
  }
140
+ ],
141
+ script: [
142
+ {
143
+ src: "https://cdn.jsdelivr.net/npm/add-to-calendar-button@2",
144
+ async: true
145
+ }
140
146
  ]
141
147
  });
142
148
  } else {
@@ -8,6 +8,9 @@ export declare const useAffiliatesStore: import("pinia").StoreDefinition<"affili
8
8
  getConferenceAffiliates: (state: AffiliatesState) => (conferenceId: number) => Sponsor[];
9
9
  }, {
10
10
  getAffiliates(conferenceId: number): Promise<unknown>;
11
+ getSponsors(conferenceId: number): Promise<unknown>;
12
+ getExhibitors(conferenceId: number): Promise<unknown>;
13
+ getAllAffiliates(conferenceId: number): Promise<unknown>;
11
14
  /**
12
15
  * no longer in use by nejm-template
13
16
  * replaced with conference.value.hasOwnProperty('affiliates')
@@ -28,6 +28,44 @@ export const useAffiliatesStore = defineStore("affiliates", {
28
28
  });
29
29
  });
30
30
  },
31
+ getSponsors(conferenceId) {
32
+ return new Promise((resolve, reject) => {
33
+ const request = useApi();
34
+ request(
35
+ `/conferences/${conferenceId}/affiliates?filter[role]=sponsor&orderBy=name&orderDir=asc`
36
+ ).then((response) => {
37
+ return response.data;
38
+ }).catch((error) => {
39
+ reject(error);
40
+ });
41
+ });
42
+ },
43
+ // TODO - correctly assign return type
44
+ getExhibitors(conferenceId) {
45
+ return new Promise((resolve, reject) => {
46
+ const request = useApi();
47
+ request(
48
+ `/conferences/${conferenceId}/affiliates?filter[role]=exhibitor&orderBy=name&orderDir=asc`
49
+ ).then((response) => {
50
+ return response.data;
51
+ }).catch((error) => {
52
+ reject(error);
53
+ });
54
+ });
55
+ },
56
+ // TODO - correctly assign return type
57
+ getAllAffiliates(conferenceId) {
58
+ return new Promise((resolve, reject) => {
59
+ const request = useApi();
60
+ request(
61
+ `/conferences/${conferenceId}/affiliates?orderBy=name&orderDir=asc`
62
+ ).then((response) => {
63
+ return response.data;
64
+ }).catch((error) => {
65
+ reject(error);
66
+ });
67
+ });
68
+ },
31
69
  /**
32
70
  * no longer in use by nejm-template
33
71
  * replaced with conference.value.hasOwnProperty('affiliates')
@@ -3,6 +3,9 @@ import { merge } from "lodash-es";
3
3
  import { DateTime } from "luxon";
4
4
  import { useApi } from "../composables/useApi.mjs";
5
5
  import { useConferencesStore } from "./conferences.mjs";
6
+ import {
7
+ loginEventHook
8
+ } from "../composables/useEventHooks.mjs";
6
9
  export const useAuthStore = defineStore("auth", {
7
10
  persist: {
8
11
  afterRestore(context) {
@@ -39,6 +42,7 @@ export const useAuthStore = defineStore("auth", {
39
42
  this.user = mergedUser;
40
43
  const { updateConferencesAccess } = useConferencesStore();
41
44
  updateConferencesAccess(this.user.conferences);
45
+ loginEventHook.trigger(true);
42
46
  resolve(response);
43
47
  }).catch((error) => {
44
48
  reject(error);
@@ -60,6 +64,7 @@ export const useAuthStore = defineStore("auth", {
60
64
  conferencesStore.getConferences().then(() => {
61
65
  conferencesStore.getCurrentConference(true);
62
66
  });
67
+ loginEventHook.trigger(false);
63
68
  resolve(response);
64
69
  }).catch((error) => {
65
70
  reject(error);
@@ -73,6 +78,7 @@ export const useAuthStore = defineStore("auth", {
73
78
  conferencesStore.getConferences().then(() => {
74
79
  conferencesStore.getCurrentConference(true);
75
80
  });
81
+ loginEventHook.trigger(false);
76
82
  resolve();
77
83
  });
78
84
  },
@@ -3,6 +3,7 @@ export interface ConferencesState {
3
3
  conferenceList: Conference[];
4
4
  currentConference: null | Conference;
5
5
  selectedConference: null | Conference;
6
+ featuredConference: null | Conference;
6
7
  }
7
8
  export declare const useConferencesStore: import("pinia").StoreDefinition<"conferences", ConferencesState, {
8
9
  upcomingEvents: (state: ConferencesState) => Conference[];
@@ -11,5 +12,6 @@ export declare const useConferencesStore: import("pinia").StoreDefinition<"confe
11
12
  getConferences(): Promise<Conference[]>;
12
13
  getSelectedConference(id: number, skipDetails?: boolean): Promise<Conference>;
13
14
  getCurrentConference(skipDetails?: boolean): Promise<Conference>;
14
- updateConferencesAccess(userConferences: any): void;
15
+ getRegisteredConferences(): Conference[];
16
+ updateConferencesAccess(userConferences: Conference[]): void;
15
17
  }>;
@@ -10,7 +10,8 @@ export const useConferencesStore = defineStore("conferences", {
10
10
  state: () => ({
11
11
  conferenceList: [],
12
12
  currentConference: null,
13
- selectedConference: null
13
+ selectedConference: null,
14
+ featuredConference: null
14
15
  }),
15
16
  getters: {
16
17
  upcomingEvents: (state) => {
@@ -60,7 +61,7 @@ export const useConferencesStore = defineStore("conferences", {
60
61
  getCurrentConference(skipDetails) {
61
62
  return new Promise((resolve, reject) => {
62
63
  const request = useApi();
63
- let conference = null;
64
+ let conference = {};
64
65
  const liveConference = this.conferenceList.find(
65
66
  (conf) => conf.state === ConferenceState.LIVE || conf.state === ConferenceState.MIXED
66
67
  );
@@ -98,11 +99,15 @@ export const useConferencesStore = defineStore("conferences", {
98
99
  );
99
100
  }
100
101
  this.currentConference = data;
102
+ this.featuredConference = data;
101
103
  resolve(this.currentConference);
102
104
  });
103
105
  }
104
106
  });
105
107
  },
108
+ getRegisteredConferences() {
109
+ return this.conferenceList.filter((item) => item.access == true);
110
+ },
106
111
  updateConferencesAccess(userConferences) {
107
112
  userConferences.forEach((userConf) => {
108
113
  const conf = find(this.conferenceList, { id: userConf.id });