@icvdeveloper/common-module 0.0.113 → 0.0.115

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.
package/dist/module.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "v3plus-common-module",
3
3
  "configKey": "v3plusCommonModule",
4
- "version": "0.0.113"
4
+ "version": "0.0.115"
5
5
  }
@@ -45,6 +45,7 @@ export type listEventsClassObj = {
45
45
  buttonItem?: string | null;
46
46
  liveButtonItem?: string | null;
47
47
  sponsorsContainer?: string | null;
48
+ sponsoredByText?: string | null;
48
49
  components?: listEventsCompObj;
49
50
  };
50
51
  export type presenterListingClassObj = {
@@ -211,5 +212,6 @@ export type PlayerAndContentClassObj = {
211
212
  withTabsContainer?: string | null;
212
213
  withTabsChild?: string | null;
213
214
  mediaTabsContainer?: string | null;
215
+ sponsoredByText?: string | null;
214
216
  components?: PlayerAndContentCompObj;
215
217
  };
@@ -110,7 +110,7 @@ const {
110
110
  goEventPage,
111
111
  setConferenceToLoginTo,
112
112
  buttonClass,
113
- orderAffiliates,
113
+ getSponsors,
114
114
  getBrand,
115
115
  isHomePage,
116
116
  } = useEvents();
@@ -230,10 +230,9 @@ const showLoginButton = computed((): boolean => {
230
230
  >
231
231
  <template v-if="showBrand && getBrand(conference.affiliates)">
232
232
  <a
233
- v-if="getBrand(conference.affiliates).website"
234
233
  :class="classBinding(classObject, 'eventBrandLink', '')"
235
234
  :href="getBrand(conference.affiliates).website"
236
- target="_blank"
235
+ :target="(getBrand(conference.affiliates).website) ? '_blank' : null"
237
236
  >
238
237
  <h3
239
238
  :class="
@@ -247,18 +246,6 @@ const showLoginButton = computed((): boolean => {
247
246
  {{ getBrand(conference.affiliates).name }}
248
247
  </h3>
249
248
  </a>
250
- <h3
251
- v-else
252
- :class="
253
- classBinding(
254
- classObject,
255
- 'eventBrand',
256
- 'text-base font-bold leading-tight tracking-wide mb-3'
257
- )
258
- "
259
- >
260
- {{ getBrand(conference.affiliates).name }}
261
- </h3>
262
249
  </template>
263
250
  <nuxt-link
264
251
  :to="
@@ -503,11 +490,19 @@ const showLoginButton = computed((): boolean => {
503
490
  >
504
491
  <!-- individual sponsor -->
505
492
  <template
506
- v-for="affiliate in orderAffiliates(conference.affiliates)"
493
+ v-for="(affiliate, index) in getSponsors(conference.affiliates)"
494
+ :key="index"
507
495
  >
496
+ <h3
497
+ v-if="index === 0"
498
+ :class="
499
+ classBinding(classObject, 'sponsoredByText', 'hidden')
500
+ "
501
+ >
502
+ Sponsored by:
503
+ </h3>
508
504
  <CommonSponsor
509
- v-if="affiliate.role == 'sponsor'"
510
- :key="affiliate.id"
505
+ v-if="affiliate.photo"
511
506
  :sponsor="affiliate"
512
507
  :class-object="classObject.components.sponsor"
513
508
  ></CommonSponsor>
@@ -521,10 +516,18 @@ const showLoginButton = computed((): boolean => {
521
516
  class="flex flex-col"
522
517
  >
523
518
  <!-- individual sponsor -->
524
- <template v-for="affiliate in orderAffiliates(conference.affiliates)">
519
+ <template
520
+ v-for="(affiliate, index) in getSponsors(conference.affiliates)"
521
+ :key="index"
522
+ >
523
+ <h3
524
+ v-if="index === 0"
525
+ :class="classBinding(classObject, 'sponsoredByText', 'hidden')"
526
+ >
527
+ Sponsored by:
528
+ </h3>
525
529
  <CommonSponsor
526
- v-if="affiliate.role == 'sponsor'"
527
- :key="affiliate.id"
530
+ v-if="affiliate.photo"
528
531
  :sponsor="affiliate"
529
532
  :class-object="classObject.components.sponsor"
530
533
  ></CommonSponsor>
@@ -1,6 +1,7 @@
1
1
  <script lang="ts" setup>
2
2
  import { ref, toRefs } from "vue";
3
3
  import { storeToRefs } from "pinia";
4
+ import { useEvents } from "../../composables/useEvents";
4
5
  import { useClassBinding } from "../../composables/useClassBinding";
5
6
  import { Conference, Presentation } from "../../models/conference";
6
7
  import { SelectedContent } from "../../enums/general";
@@ -46,6 +47,7 @@ const props = withDefaults(defineProps<Props>(), {
46
47
  const { conference, presentation } = toRefs(props);
47
48
 
48
49
  const { classBinding } = useClassBinding();
50
+ const { getSponsors } = useEvents();
49
51
 
50
52
  const { selectedContent } = storeToRefs(usePresentationsStore());
51
53
  </script>
@@ -105,7 +107,7 @@ const { selectedContent } = storeToRefs(usePresentationsStore());
105
107
  :class="
106
108
  classBinding(
107
109
  classObject,
108
- 'MediaTabsContainer',
110
+ 'mediaTabsContainer',
109
111
  'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
110
112
  )
111
113
  "
@@ -133,16 +135,17 @@ const { selectedContent } = storeToRefs(usePresentationsStore());
133
135
  <figure
134
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"
135
137
  >
136
- <h3
137
- v-if="conference.affiliates.length > 0"
138
- class="allsmallcaps text-sm pb-4 text-neutral-400 scala"
138
+ <template
139
+ v-for="(affiliate, index) in getSponsors(conference.affiliates)"
140
+ :key="index"
139
141
  >
140
- Sponsored by:
141
- </h3>
142
- <template v-for="affiliate in conference.affiliates">
142
+ <h3
143
+ v-if="index === 0"
144
+ :class="classBinding(classObject, 'sponsoredByText', 'hidden')"
145
+ >
146
+ Sponsored by:
147
+ </h3>
143
148
  <CommonComponentsSponsor
144
- v-if="affiliate.role == 'sponsor'"
145
- :key="affiliate.id"
146
149
  :sponsor="affiliate"
147
150
  :class-object="{
148
151
  labelImageContainer: 'block',
@@ -2,6 +2,7 @@
2
2
  import { ref, toRefs, computed } from "vue";
3
3
  import { storeToRefs } from "pinia";
4
4
  import { useRoute } from "vue-router";
5
+ import { useEvents } from "../../composables/useEvents";
5
6
  import { useClassBinding } from "../../composables/useClassBinding";
6
7
  import { Conference, Presentation } from "../../models/conference";
7
8
  import { SelectedContent } from "../../enums/general";
@@ -50,6 +51,7 @@ const { conference, presentation } = toRefs(props);
50
51
  const route = ref(useRoute());
51
52
 
52
53
  const { classBinding } = useClassBinding();
54
+ const { getSponsors } = useEvents();
53
55
 
54
56
  const { selectedContent } = storeToRefs(usePresentationsStore());
55
57
  const { isLoggedIn } = storeToRefs(useAuthStore());
@@ -123,7 +125,7 @@ const hasAccess = computed((): boolean => {
123
125
  :class="
124
126
  classBinding(
125
127
  classObject,
126
- 'MediaTabsContainer',
128
+ 'mediaTabsContainer',
127
129
  'col-span-7 row-span-1 md:col-span-4 lg:col-span-5 aspect-video'
128
130
  )
129
131
  "
@@ -151,16 +153,17 @@ const hasAccess = computed((): boolean => {
151
153
  <figure
152
154
  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
155
  >
154
- <h3
155
- v-if="conference.affiliates.length > 0"
156
- class="allsmallcaps text-sm pb-4 text-neutral-400 scala"
156
+ <template
157
+ v-for="(affiliate, index) in getSponsors(conference.affiliates)"
158
+ :key="index"
157
159
  >
158
- Sponsored by:
159
- </h3>
160
- <template v-for="affiliate in conference.affiliates">
160
+ <h3
161
+ v-if="index === 0"
162
+ :class="classBinding(classObject, 'sponsoredByText', 'hidden')"
163
+ >
164
+ Sponsored by:
165
+ </h3>
161
166
  <CommonComponentsSponsor
162
- v-if="affiliate.role == 'sponsor'"
163
- :key="affiliate.id"
164
167
  :sponsor="affiliate"
165
168
  :class-object="{
166
169
  labelImageContainer: 'block',
@@ -25,6 +25,10 @@ export type UseEventsMethods = {
25
25
  * sorts an event's affiliates by level, then by name
26
26
  */
27
27
  orderAffiliates: (_affiliates: Array<Sponsor>) => Array<Sponsor>;
28
+ /**
29
+ * sorts an event's affiliates by level, then by name
30
+ */
31
+ getSponsors: (_affiliates: Array<Sponsor> | undefined) => Array<Sponsor>;
28
32
  /**
29
33
  * returns the first affiliate set to role 'custom1'
30
34
  */
@@ -1,7 +1,7 @@
1
1
  import { ref, computed } from "vue";
2
2
  import { storeToRefs } from "pinia";
3
3
  import { useRouter, useRoute } from "vue-router";
4
- import { get, sortBy } from "lodash-es";
4
+ import { get, sortBy, filter } from "lodash-es";
5
5
  import { useAuthStore, useTemplateConfigsStore } from "../store/index.mjs";
6
6
  export const useEvents = () => {
7
7
  const route = useRoute();
@@ -26,6 +26,15 @@ export const useEvents = () => {
26
26
  tempSponsors = sortBy(_affiliates, ["level", "price"]);
27
27
  return tempSponsors;
28
28
  };
29
+ const getSponsors = (_affiliates) => {
30
+ if (_affiliates === void 0) {
31
+ return [];
32
+ }
33
+ let tempSponsors = [];
34
+ tempSponsors = filter(_affiliates, { "role": "sponsor" });
35
+ tempSponsors = sortBy(tempSponsors, ["level", "name"]);
36
+ return tempSponsors;
37
+ };
29
38
  const getBrand = (_affiliates) => {
30
39
  let i = 0;
31
40
  for (i; i < get(_affiliates, "length", 0); i++) {
@@ -48,6 +57,7 @@ export const useEvents = () => {
48
57
  goEventPage,
49
58
  setConferenceToLoginTo,
50
59
  orderAffiliates,
60
+ getSponsors,
51
61
  getBrand,
52
62
  buttonClass,
53
63
  isHomePage
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@icvdeveloper/common-module",
3
- "version": "0.0.113",
3
+ "version": "0.0.115",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "exports": {