@mjhls/mjh-framework 1.0.334 → 1.0.336

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/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- # mjh-framework v. 1.0.334
2
+ # mjh-framework v. 1.0.336
3
3
 
4
4
  > Foundation Framework
5
5
 
@@ -44,7 +44,6 @@ var GroupDeck = function GroupDeck(props) {
44
44
  }, []);
45
45
 
46
46
  var setThumbSize = function setThumbSize() {
47
-
48
47
  var thumbSize = void 0;
49
48
  if (window.innerWidth > 1399) {
50
49
  thumbSize = Math.floor(viewableWindow.current.clientWidth / 2 - 48);
@@ -109,8 +108,8 @@ var GroupDeck = function GroupDeck(props) {
109
108
  });
110
109
  }
111
110
 
112
- function handleClick(url, vidIndex) {
113
- props.setState(url, vidIndex);
111
+ function handleClick(url, thumbnail, vidIndex) {
112
+ props.setState(url, thumbnail, vidIndex);
114
113
  }
115
114
 
116
115
  var _props$current = props.current,
@@ -144,7 +143,7 @@ var GroupDeck = function GroupDeck(props) {
144
143
  // If there is a current prop, means this will overlay a currently playing video
145
144
  if (current !== '') {
146
145
  var url = video.url;
147
- var thumbnail = 'https://img.youtube.com/vi/' + smoothscroll.getYoutubeId(video.url) + '/hqdefault.jpg';
146
+ var thumbnail = video.thumbnail || 'https://img.youtube.com/vi/' + smoothscroll.getYoutubeId(video.url) + '/hqdefault.jpg';
148
147
 
149
148
  return React__default.createElement(
150
149
  'div',
@@ -157,7 +156,7 @@ var GroupDeck = function GroupDeck(props) {
157
156
  React__default.createElement(
158
157
  'a',
159
158
  { onClick: function onClick() {
160
- return handleClick(url, index + 1);
159
+ return handleClick(url, thumbnail, index + 1);
161
160
  } },
162
161
  React__default.createElement(
163
162
  'div',
@@ -191,7 +190,7 @@ var GroupDeck = function GroupDeck(props) {
191
190
  } else {
192
191
  // slider by itself
193
192
  var _url = '' + video.link;
194
- var _thumbnail = 'https://img.youtube.com/vi/' + smoothscroll.getYoutubeId(video.url) + '/hqdefault.jpg';
193
+ var _thumbnail = video.thumbnail || 'https://img.youtube.com/vi/' + smoothscroll.getYoutubeId(video.url) + '/hqdefault.jpg';
195
194
  return React__default.createElement(
196
195
  'div',
197
196
  { ref: tile, key: index, className: 'tile', style: { width: tileSize + 'px' } },
@@ -246,7 +245,7 @@ var GroupDeck = function GroupDeck(props) {
246
245
  React__default.createElement(
247
246
  'style',
248
247
  { jsx: 'true' },
249
- '\n #vid-slider * {\n box-sizing: border-box;\n -ms-overflow-style: none;\n }\n #vid-slider::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider {\n position: relative;\n -ms-overflow-style: none;\n padding: 0 1.5rem;\n margin-bottom: 2rem;\n }\n #vid-slider .now-playing {\n position: absolute;\n top: 0.5rem;\n left: 1rem;\n color: white;\n background: rgba(0, 0, 0, 0.75);\n }\n #vid-slider h1,\n #vid-slider p {\n text-align: center;\n width: 100%;\n max-width: 500px;\n margin: auto;\n }\n #vid-slider,\n #vidHolder {\n max-width: 805px;\n }\n #vid-slider a:link,\n #vid-slider a:hover,\n #vid-slider a:active,\n #vid-slider a:visited {\n transition: color 150ms;\n color: #95a5a6;\n text-decoration: none;\n }\n #vid-slider a:hover {\n color: #7f8c8d;\n text-decoration: underline;\n }\n #vid-slider .contain {\n width: 100%;\n }\n #vid-slider .row {\n overflow-x: scroll;\n width: 100%;\n -ms-overflow-style: none;\n overflow-y: hidden !important;\n }\n #vid-slider .tile__info {\n white-space: normal !important;\n position: absolute;\n text-align: center;\n color: ' + (props.dark ? 'white' : '#383838') + ';\n opacity: 1;\n font-size: 0.9rem;\n font-weight: bold;\n transition: opacity 0.25s;\n }\n #vid-slider .row__inner {\n transition: 450ms -webkit-transform;\n transition: 450ms transform;\n transition: 450ms transform, 450ms -webkit-transform;\n font-size: 0;\n white-space: nowrap;\n margin: 25px 0 55px !important;\n padding-bottom: 10px;\n padding-left: 0;\n }\n #vid-slider .tile {\n position: relative;\n display: inline-block;\n height: 135px;\n \n margin: 0 12px;\n font-size: 20px;\n cursor: pointer;\n transition: 450ms all;\n -webkit-transform-origin: center left;\n transform-origin: center left;\n }\n #vid-slider .tile:first-child {\n margin-left: 15px;\n }\n #vid-slider .tile__img {\n height: 135px;\n \n -o-object-fit: cover;\n object-fit: cover;\n object-position: center;\n }\n #vid-slider .tile__details {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n font-size: 10px;\n opacity: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);\n transition: 450ms opacity;\n }\n #vid-slider .tile__details:after,\n #vid-slider .tile__details:before {\n content: \'\';\n\n position: absolute;\n top: 50%;\n left: 50%;\n display: #000;\n }\n #vid-slider .tile__details:after {\n margin-top: -25px;\n margin-left: -25px;\n width: 50px;\n height: 50px;\n border: 3px solid #ecf0f1;\n line-height: 50px;\n text-align: center;\n border-radius: 100%;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1;\n }\n #vid-slider .tile__details:before {\n content: \'\';\n background: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 64 64\' width=\'64\' height=\'64\' fill=\'white\'><path d=\'M26 46 L46 32 L26 18 Z\'/></svg>")\n no-repeat center center;\n left: 0;\n width: 100%;\n height: 3rem;\n font-size: 30px;\n margin-right: 12px;\n margin-top: -24px;\n text-align: center;\n z-index: 2;\n color: white;\n }\n\n #vid-slider .tile__title {\n position: absolute;\n bottom: 0;\n padding: 10px;\n max-width: 250px;\n }\n #vid-slider .tile__title_text {\n position: relative;\n left: 0;\n white-space: normal;\n }\n\n #vid-slider .tile__slider-prev,\n #vid-slider .tile__slider-next {\n width: 30px;\n background: transparent;\n border: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 99;\n cursor: pointer;\n color: ' + (props.dark ? 'white' : 'black') + ';\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n }\n #vid-slider .tile__slider-prev {\n left: -0.5rem;\n padding: 1rem;\n }\n #vid-slider .tile__slider-next {\n right: -0.5rem;\n padding: 1rem;\n }\n #vid-slider,\n #vid-slider .row {\n margin: 0;\n padding-right: 0 1.2rem;\n }\n\n #vid-slider .row::-webkit-scrollbar-thumb {\n background-color: transparent !important;\n }\n #vid-slider i {\n border: solid ' + (props.dark ? 'white' : 'black') + ';\n border-width: 0 4px 4px 0;\n display: inline-block;\n padding: 4px;\n pointer-events: none;\n }\n #vid-slider .right {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n #vid-slider .left {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n @media screen and (max-width: 1399px) {\n #vid-slider,\n #vidHolder {\n max-width: 620px;\n }\n }\n @media screen and (max-width: 1200px) {\n #vid-slider,\n #vidHolder {\n max-width: 580px;\n }\n }\n @media screen and (max-width: 967px) {\n #vid-slider {\n max-width: 100%;\n }\n \n\n #vid-slider .tile__img {\n height: 85px;\n object-fit: cover;\n }\n }\n\n @media screen and (max-width: 768px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 110px;\n object-fit: cover;\n }\n #vid-slider .row__inner{\n margin: 30px 0 60px;\n }\n }\n @media screen and (max-width: 568px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 180px;\n object-fit: cover;\n }\n #vid-slider .row__inner{\n margin: 30px 0 60px;\n }\n }\n '
248
+ '\n #vid-slider * {\n box-sizing: border-box;\n -ms-overflow-style: none;\n }\n #vid-slider::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider {\n position: relative;\n -ms-overflow-style: none;\n padding: 0 1.5rem;\n margin-bottom: 2rem;\n }\n #vid-slider .now-playing {\n position: absolute;\n top: 0.5rem;\n left: 1rem;\n color: white;\n background: rgba(0, 0, 0, 0.75);\n }\n #vid-slider h1,\n #vid-slider p {\n text-align: center;\n width: 100%;\n max-width: 500px;\n margin: auto;\n }\n #vid-slider,\n #vidHolder {\n max-width: 805px;\n }\n #vid-slider a:link,\n #vid-slider a:hover,\n #vid-slider a:active,\n #vid-slider a:visited {\n transition: color 150ms;\n color: #95a5a6;\n text-decoration: none;\n }\n #vid-slider a:hover {\n color: #7f8c8d;\n text-decoration: underline;\n }\n #vid-slider .contain {\n width: 100%;\n }\n #vid-slider .row {\n overflow-x: scroll;\n width: 100%;\n -ms-overflow-style: none;\n overflow-y: hidden !important;\n }\n #vid-slider .tile__info {\n white-space: normal !important;\n position: absolute;\n text-align: center;\n color: ' + (props.dark ? 'white' : '#383838') + ';\n opacity: 1;\n font-size: 0.9rem;\n font-weight: bold;\n transition: opacity 0.25s;\n }\n #vid-slider .row__inner {\n transition: 450ms -webkit-transform;\n transition: 450ms transform;\n transition: 450ms transform, 450ms -webkit-transform;\n font-size: 0;\n white-space: nowrap;\n margin: 25px 0 55px !important;\n padding-bottom: 10px;\n padding-left: 0;\n }\n #vid-slider .tile {\n position: relative;\n display: inline-block;\n height: 135px;\n\n margin: 0 12px;\n font-size: 20px;\n cursor: pointer;\n transition: 450ms all;\n -webkit-transform-origin: center left;\n transform-origin: center left;\n }\n #vid-slider .tile:first-child {\n margin-left: 15px;\n }\n #vid-slider .tile__img {\n height: 135px;\n\n -o-object-fit: cover;\n object-fit: cover;\n object-position: center;\n }\n #vid-slider .tile__details {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n font-size: 10px;\n opacity: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);\n transition: 450ms opacity;\n }\n #vid-slider .tile__details:after,\n #vid-slider .tile__details:before {\n content: \'\';\n\n position: absolute;\n top: 50%;\n left: 50%;\n display: #000;\n }\n #vid-slider .tile__details:after {\n margin-top: -25px;\n margin-left: -25px;\n width: 50px;\n height: 50px;\n border: 3px solid #ecf0f1;\n line-height: 50px;\n text-align: center;\n border-radius: 100%;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1;\n }\n #vid-slider .tile__details:before {\n content: \'\';\n background: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 64 64\' width=\'64\' height=\'64\' fill=\'white\'><path d=\'M26 46 L46 32 L26 18 Z\'/></svg>")\n no-repeat center center;\n left: 0;\n width: 100%;\n height: 3rem;\n font-size: 30px;\n margin-right: 12px;\n margin-top: -24px;\n text-align: center;\n z-index: 2;\n color: white;\n }\n\n #vid-slider .tile__title {\n position: absolute;\n bottom: 0;\n padding: 10px;\n max-width: 250px;\n }\n #vid-slider .tile__title_text {\n position: relative;\n left: 0;\n white-space: normal;\n }\n\n #vid-slider .tile__slider-prev,\n #vid-slider .tile__slider-next {\n width: 30px;\n background: transparent;\n border: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 99;\n cursor: pointer;\n color: ' + (props.dark ? 'white' : 'black') + ';\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n }\n #vid-slider .tile__slider-prev {\n left: -0.5rem;\n padding: 1rem;\n }\n #vid-slider .tile__slider-next {\n right: -0.5rem;\n padding: 1rem;\n }\n #vid-slider,\n #vid-slider .row {\n margin: 0;\n padding-right: 0 1.2rem;\n }\n\n #vid-slider .row::-webkit-scrollbar-thumb {\n background-color: transparent !important;\n }\n #vid-slider i {\n border: solid ' + (props.dark ? 'white' : 'black') + ';\n border-width: 0 4px 4px 0;\n display: inline-block;\n padding: 4px;\n pointer-events: none;\n }\n #vid-slider .right {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n #vid-slider .left {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n @media screen and (max-width: 1399px) {\n #vid-slider,\n #vidHolder {\n max-width: 620px;\n }\n }\n @media screen and (max-width: 1200px) {\n #vid-slider,\n #vidHolder {\n max-width: 580px;\n }\n }\n @media screen and (max-width: 967px) {\n #vid-slider {\n max-width: 100%;\n }\n\n #vid-slider .tile__img {\n height: 85px;\n object-fit: cover;\n }\n }\n\n @media screen and (max-width: 768px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 110px;\n object-fit: cover;\n }\n #vid-slider .row__inner {\n margin: 30px 0 60px;\n }\n }\n @media screen and (max-width: 568px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 180px;\n object-fit: cover;\n }\n #vid-slider .row__inner {\n margin: 30px 0 60px;\n }\n }\n '
250
249
  )
251
250
  );
252
251
  };
@@ -434,14 +434,14 @@ var Header = function Header(props) {
434
434
  return React__default.createElement(
435
435
  Head,
436
436
  null,
437
- React__default.createElement(
437
+ title && React__default.createElement(
438
438
  'title',
439
439
  null,
440
440
  title
441
441
  ),
442
- !isLiveSite && React__default.createElement('meta', { name: 'robots', content: 'noindex, nofollow' }),
443
- React__default.createElement('meta', { name: 'keywords', content: keyword }),
444
- React__default.createElement('meta', { name: 'description', content: description })
442
+ keyword && React__default.createElement('meta', { name: 'keywords', content: keyword }),
443
+ description && React__default.createElement('meta', { name: 'description', content: description }),
444
+ !isLiveSite && React__default.createElement('meta', { name: 'robots', content: 'noindex, nofollow' })
445
445
  );
446
446
  };
447
447
 
@@ -116,7 +116,7 @@ var changePageNumber = function changePageNumber(pageNumber, seoPaginate, pagevi
116
116
  if (path[0] !== '/') {
117
117
  path = '/' + path;
118
118
  }
119
- var newPath = pageNumber === 1 ? '' + path : path + '?page=' + pageNumber;
119
+ var newPath = pageNumber === 1 ? '' + path : '' + path + (queryString.length > 0 ? '&' : '?') + 'page=' + pageNumber;
120
120
 
121
121
  if (pageview) {
122
122
  pageview(newPath);
@@ -261,6 +261,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
261
261
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
262
262
  return renderAuthor(authorDetail, index, article.authorMapping.length);
263
263
  }),
264
+ article.publicationSource && React__default.createElement(
265
+ 'p',
266
+ { className: 'p-0 mb-1' },
267
+ article.publicationSource
268
+ ),
264
269
  showCategory && article.contentCategory && React__default.createElement(
265
270
  'p',
266
271
  {
@@ -336,6 +341,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
336
341
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
337
342
  return renderAuthor(authorDetail, index, article.authorMapping.length);
338
343
  }),
344
+ article.publicationSource && React__default.createElement(
345
+ 'p',
346
+ { className: 'p-0 mb-1' },
347
+ article.publicationSource
348
+ ),
339
349
  showCategory && article.contentCategory && React__default.createElement(
340
350
  'p',
341
351
  {
@@ -412,6 +422,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
412
422
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
413
423
  return renderAuthor(authorDetail, index, article.authorMapping.length);
414
424
  }),
425
+ article.publicationSource && React__default.createElement(
426
+ 'p',
427
+ { className: 'p-0 mb-1' },
428
+ article.publicationSource
429
+ ),
415
430
  showCategory && article.contentCategory && React__default.createElement(
416
431
  'p',
417
432
  {
@@ -19,7 +19,7 @@ require('./react-social-icons-cd0d9d3b.js');
19
19
  require('react-bootstrap');
20
20
  require('./index.esm-340d3792.js');
21
21
  require('react-bootstrap/Button');
22
- var TemplateNormal = require('./Normal-c85aee96.js');
22
+ var TemplateNormal = require('./Normal-b3782788.js');
23
23
  require('react-bootstrap/ListGroup');
24
24
  require('next/head');
25
25
  require('react-bootstrap/Nav');
package/dist/cjs/index.js CHANGED
@@ -53,7 +53,7 @@ var IssueDeck = require('./IssueDeck.js');
53
53
  require('react-bootstrap/Badge');
54
54
  var IssueContentDeck = require('./IssueContentDeck.js');
55
55
  var Spinner = _interopDefault(require('react-bootstrap/Spinner'));
56
- var TemplateNormal = require('./Normal-c85aee96.js');
56
+ var TemplateNormal = require('./Normal-b3782788.js');
57
57
  require('react-bootstrap/ListGroup');
58
58
  var Head = _interopDefault(require('next/head'));
59
59
  var Accordion = _interopDefault(require('react-bootstrap/Accordion'));
@@ -12884,6 +12884,7 @@ var Audio = function Audio(_ref) {
12884
12884
 
12885
12885
  var VideoMp4 = function VideoMp4(_ref) {
12886
12886
  var url = _ref.url,
12887
+ thumbnail = _ref.thumbnail,
12887
12888
  vidLoaded = _ref.vidLoaded;
12888
12889
 
12889
12890
  var _useState = React.useState(false),
@@ -12971,6 +12972,7 @@ var VideoMp4 = function VideoMp4(_ref) {
12971
12972
  vidLoaded && React__default.createElement(
12972
12973
  'video',
12973
12974
  {
12975
+ poster: thumbnail || '',
12974
12976
  style: { width: '100%' },
12975
12977
  controls: true,
12976
12978
  onCanPlay: function onCanPlay(e) {
@@ -13027,25 +13029,30 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13027
13029
  vidUrl = _useState8[0],
13028
13030
  setVidUrl = _useState8[1];
13029
13031
 
13030
- var _useState9 = React.useState(false),
13032
+ var _useState9 = React.useState(''),
13031
13033
  _useState10 = slicedToArray._slicedToArray(_useState9, 2),
13032
- vidLoaded = _useState10[0],
13033
- setVidLoaded = _useState10[1];
13034
+ vidThumbnail = _useState10[0],
13035
+ setVidThumbnail = _useState10[1];
13034
13036
 
13035
- var _useState11 = React.useState('youtube'),
13037
+ var _useState11 = React.useState(false),
13036
13038
  _useState12 = slicedToArray._slicedToArray(_useState11, 2),
13037
- vidType = _useState12[0],
13038
- setVidType = _useState12[1];
13039
+ vidLoaded = _useState12[0],
13040
+ setVidLoaded = _useState12[1];
13039
13041
 
13040
- var _useState13 = React.useState(''),
13042
+ var _useState13 = React.useState('youtube'),
13041
13043
  _useState14 = slicedToArray._slicedToArray(_useState13, 2),
13042
- series = _useState14[0],
13043
- setSeries = _useState14[1];
13044
+ vidType = _useState14[0],
13045
+ setVidType = _useState14[1];
13044
13046
 
13045
- var _useState15 = React.useState([]),
13047
+ var _useState15 = React.useState(''),
13046
13048
  _useState16 = slicedToArray._slicedToArray(_useState15, 2),
13047
- seriesData = _useState16[0],
13048
- setData = _useState16[1];
13049
+ series = _useState16[0],
13050
+ setSeries = _useState16[1];
13051
+
13052
+ var _useState17 = React.useState([]),
13053
+ _useState18 = slicedToArray._slicedToArray(_useState17, 2),
13054
+ seriesData = _useState18[0],
13055
+ setData = _useState18[1];
13049
13056
  //variables
13050
13057
 
13051
13058
 
@@ -13059,10 +13066,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13059
13066
 
13060
13067
  nodes.videos.forEach(function (vid) {
13061
13068
  if (vid.type == 'mp4') {
13062
- data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset), url: vid.url });
13069
+ data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
13063
13070
  } else {
13064
13071
  if (vid.thumbnail && vid.thumbnail.asset) {
13065
- data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset), url: vid.url });
13072
+ data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
13066
13073
  } else {
13067
13074
  data.push({ title: vid.title, thumbnail: 'https://img.youtube.com/vi/' + smoothscroll.getYoutubeId(vid.url) + '/hqdefault.jpg', url: vid.url });
13068
13075
  }
@@ -13073,6 +13080,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13073
13080
  if (data.length < seriesVid) {
13074
13081
  setSeries(1);
13075
13082
  setVidUrl(nodes.videos[0].url);
13083
+ setVidThumbnail(nodes.videos[0].thumbnail && nodes.videos[0].thumbnail.asset ? urlFor(nodes.videos[0].thumbnail.asset).url() : '');
13076
13084
  if (nodes.videos[0].type) {
13077
13085
  setVidType(nodes.videos[0].type);
13078
13086
  }
@@ -13083,7 +13091,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13083
13091
  } else {
13084
13092
  setSeries(seriesVid);
13085
13093
  setVidUrl(nodes.videos[seriesVid - 1].url);
13086
-
13094
+ setVidThumbnail(nodes.videos[seriesVid - 1].thumbnail && nodes.videos[seriesVid - 1].thumbnail.asset ? urlFor(nodes.videos[seriesVid - 1].thumbnail.asset).url() : '');
13087
13095
  if (nodes.videos[0].type) {
13088
13096
  setVidType(nodes.videos[seriesVid - 1].type);
13089
13097
  }
@@ -13109,10 +13117,11 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13109
13117
  }
13110
13118
 
13111
13119
  // This function is passed to the GroupDeck to change the youtube iframe src
13112
- function setState(url, vidIndex) {
13120
+ function setState(url, thumbnail, vidIndex) {
13113
13121
  setVidLoaded(false);
13114
13122
  setTimeout(function () {
13115
13123
  setVidUrl(url);
13124
+ setVidThumbnail(thumbnail);
13116
13125
  toggleSeries();
13117
13126
  debounce.lib_3.refresh();
13118
13127
  var newPath = '/' + get2 + '/' + get3 + ('?seriesVid=' + vidIndex);
@@ -13233,7 +13242,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13233
13242
  { className: 'video-block', style: { position: 'relative', overflow: 'hidden' } },
13234
13243
  vidUrl && vidType == 'youtube' ? React__default.createElement(YouTube, { videoId: smoothscroll.getYoutubeId(vidUrl), opts: opts, onReady: handleOnReady, onPlay: handleOnPlay, onPause: handleOnPause, onEnd: function onEnd(e) {
13235
13244
  return handleOnEnd(e);
13236
- } }) : React__default.createElement(VideoMp4, { url: vidUrl, vidLoaded: vidLoaded }),
13245
+ } }) : React__default.createElement(VideoMp4, { url: vidUrl, thumbnail: vidThumbnail, vidLoaded: vidLoaded }),
13237
13246
  React__default.createElement(
13238
13247
  'div',
13239
13248
  {
@@ -16834,7 +16843,7 @@ var ArticleQueue = function ArticleQueue(props) {
16834
16843
 
16835
16844
  return React__default.createElement(
16836
16845
  visibilitySensor.InfiniteScroll,
16837
- { dataLength: queueData.length, next: loadmore, scrollThreshold: 0.8, hasMore: true },
16846
+ { dataLength: queueData.length, next: loadmore, scrollThreshold: '60%', hasMore: true },
16838
16847
  queueData.map(function (article, index) {
16839
16848
  if (!checkSponseredArticle(article) && Ads.getNativeContextualAD) {
16840
16849
  article.contextualAD = Ads.getNativeContextualAD(getTargeting(article));
@@ -39,7 +39,6 @@ var GroupDeck = function GroupDeck(props) {
39
39
  }, []);
40
40
 
41
41
  var setThumbSize = function setThumbSize() {
42
-
43
42
  var thumbSize = void 0;
44
43
  if (window.innerWidth > 1399) {
45
44
  thumbSize = Math.floor(viewableWindow.current.clientWidth / 2 - 48);
@@ -104,8 +103,8 @@ var GroupDeck = function GroupDeck(props) {
104
103
  });
105
104
  }
106
105
 
107
- function handleClick(url, vidIndex) {
108
- props.setState(url, vidIndex);
106
+ function handleClick(url, thumbnail, vidIndex) {
107
+ props.setState(url, thumbnail, vidIndex);
109
108
  }
110
109
 
111
110
  var _props$current = props.current,
@@ -139,7 +138,7 @@ var GroupDeck = function GroupDeck(props) {
139
138
  // If there is a current prop, means this will overlay a currently playing video
140
139
  if (current !== '') {
141
140
  var url = video.url;
142
- var thumbnail = 'https://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
141
+ var thumbnail = video.thumbnail || 'https://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
143
142
 
144
143
  return React__default.createElement(
145
144
  'div',
@@ -152,7 +151,7 @@ var GroupDeck = function GroupDeck(props) {
152
151
  React__default.createElement(
153
152
  'a',
154
153
  { onClick: function onClick() {
155
- return handleClick(url, index + 1);
154
+ return handleClick(url, thumbnail, index + 1);
156
155
  } },
157
156
  React__default.createElement(
158
157
  'div',
@@ -186,7 +185,7 @@ var GroupDeck = function GroupDeck(props) {
186
185
  } else {
187
186
  // slider by itself
188
187
  var _url = '' + video.link;
189
- var _thumbnail = 'https://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
188
+ var _thumbnail = video.thumbnail || 'https://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
190
189
  return React__default.createElement(
191
190
  'div',
192
191
  { ref: tile, key: index, className: 'tile', style: { width: tileSize + 'px' } },
@@ -241,7 +240,7 @@ var GroupDeck = function GroupDeck(props) {
241
240
  React__default.createElement(
242
241
  'style',
243
242
  { jsx: 'true' },
244
- '\n #vid-slider * {\n box-sizing: border-box;\n -ms-overflow-style: none;\n }\n #vid-slider::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider {\n position: relative;\n -ms-overflow-style: none;\n padding: 0 1.5rem;\n margin-bottom: 2rem;\n }\n #vid-slider .now-playing {\n position: absolute;\n top: 0.5rem;\n left: 1rem;\n color: white;\n background: rgba(0, 0, 0, 0.75);\n }\n #vid-slider h1,\n #vid-slider p {\n text-align: center;\n width: 100%;\n max-width: 500px;\n margin: auto;\n }\n #vid-slider,\n #vidHolder {\n max-width: 805px;\n }\n #vid-slider a:link,\n #vid-slider a:hover,\n #vid-slider a:active,\n #vid-slider a:visited {\n transition: color 150ms;\n color: #95a5a6;\n text-decoration: none;\n }\n #vid-slider a:hover {\n color: #7f8c8d;\n text-decoration: underline;\n }\n #vid-slider .contain {\n width: 100%;\n }\n #vid-slider .row {\n overflow-x: scroll;\n width: 100%;\n -ms-overflow-style: none;\n overflow-y: hidden !important;\n }\n #vid-slider .tile__info {\n white-space: normal !important;\n position: absolute;\n text-align: center;\n color: ' + (props.dark ? 'white' : '#383838') + ';\n opacity: 1;\n font-size: 0.9rem;\n font-weight: bold;\n transition: opacity 0.25s;\n }\n #vid-slider .row__inner {\n transition: 450ms -webkit-transform;\n transition: 450ms transform;\n transition: 450ms transform, 450ms -webkit-transform;\n font-size: 0;\n white-space: nowrap;\n margin: 25px 0 55px !important;\n padding-bottom: 10px;\n padding-left: 0;\n }\n #vid-slider .tile {\n position: relative;\n display: inline-block;\n height: 135px;\n \n margin: 0 12px;\n font-size: 20px;\n cursor: pointer;\n transition: 450ms all;\n -webkit-transform-origin: center left;\n transform-origin: center left;\n }\n #vid-slider .tile:first-child {\n margin-left: 15px;\n }\n #vid-slider .tile__img {\n height: 135px;\n \n -o-object-fit: cover;\n object-fit: cover;\n object-position: center;\n }\n #vid-slider .tile__details {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n font-size: 10px;\n opacity: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);\n transition: 450ms opacity;\n }\n #vid-slider .tile__details:after,\n #vid-slider .tile__details:before {\n content: \'\';\n\n position: absolute;\n top: 50%;\n left: 50%;\n display: #000;\n }\n #vid-slider .tile__details:after {\n margin-top: -25px;\n margin-left: -25px;\n width: 50px;\n height: 50px;\n border: 3px solid #ecf0f1;\n line-height: 50px;\n text-align: center;\n border-radius: 100%;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1;\n }\n #vid-slider .tile__details:before {\n content: \'\';\n background: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 64 64\' width=\'64\' height=\'64\' fill=\'white\'><path d=\'M26 46 L46 32 L26 18 Z\'/></svg>")\n no-repeat center center;\n left: 0;\n width: 100%;\n height: 3rem;\n font-size: 30px;\n margin-right: 12px;\n margin-top: -24px;\n text-align: center;\n z-index: 2;\n color: white;\n }\n\n #vid-slider .tile__title {\n position: absolute;\n bottom: 0;\n padding: 10px;\n max-width: 250px;\n }\n #vid-slider .tile__title_text {\n position: relative;\n left: 0;\n white-space: normal;\n }\n\n #vid-slider .tile__slider-prev,\n #vid-slider .tile__slider-next {\n width: 30px;\n background: transparent;\n border: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 99;\n cursor: pointer;\n color: ' + (props.dark ? 'white' : 'black') + ';\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n }\n #vid-slider .tile__slider-prev {\n left: -0.5rem;\n padding: 1rem;\n }\n #vid-slider .tile__slider-next {\n right: -0.5rem;\n padding: 1rem;\n }\n #vid-slider,\n #vid-slider .row {\n margin: 0;\n padding-right: 0 1.2rem;\n }\n\n #vid-slider .row::-webkit-scrollbar-thumb {\n background-color: transparent !important;\n }\n #vid-slider i {\n border: solid ' + (props.dark ? 'white' : 'black') + ';\n border-width: 0 4px 4px 0;\n display: inline-block;\n padding: 4px;\n pointer-events: none;\n }\n #vid-slider .right {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n #vid-slider .left {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n @media screen and (max-width: 1399px) {\n #vid-slider,\n #vidHolder {\n max-width: 620px;\n }\n }\n @media screen and (max-width: 1200px) {\n #vid-slider,\n #vidHolder {\n max-width: 580px;\n }\n }\n @media screen and (max-width: 967px) {\n #vid-slider {\n max-width: 100%;\n }\n \n\n #vid-slider .tile__img {\n height: 85px;\n object-fit: cover;\n }\n }\n\n @media screen and (max-width: 768px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 110px;\n object-fit: cover;\n }\n #vid-slider .row__inner{\n margin: 30px 0 60px;\n }\n }\n @media screen and (max-width: 568px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 180px;\n object-fit: cover;\n }\n #vid-slider .row__inner{\n margin: 30px 0 60px;\n }\n }\n '
243
+ '\n #vid-slider * {\n box-sizing: border-box;\n -ms-overflow-style: none;\n }\n #vid-slider::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar {\n display: none;\n }\n #vid-slider .row::-webkit-scrollbar-thumb {\n display: none;\n }\n #vid-slider {\n position: relative;\n -ms-overflow-style: none;\n padding: 0 1.5rem;\n margin-bottom: 2rem;\n }\n #vid-slider .now-playing {\n position: absolute;\n top: 0.5rem;\n left: 1rem;\n color: white;\n background: rgba(0, 0, 0, 0.75);\n }\n #vid-slider h1,\n #vid-slider p {\n text-align: center;\n width: 100%;\n max-width: 500px;\n margin: auto;\n }\n #vid-slider,\n #vidHolder {\n max-width: 805px;\n }\n #vid-slider a:link,\n #vid-slider a:hover,\n #vid-slider a:active,\n #vid-slider a:visited {\n transition: color 150ms;\n color: #95a5a6;\n text-decoration: none;\n }\n #vid-slider a:hover {\n color: #7f8c8d;\n text-decoration: underline;\n }\n #vid-slider .contain {\n width: 100%;\n }\n #vid-slider .row {\n overflow-x: scroll;\n width: 100%;\n -ms-overflow-style: none;\n overflow-y: hidden !important;\n }\n #vid-slider .tile__info {\n white-space: normal !important;\n position: absolute;\n text-align: center;\n color: ' + (props.dark ? 'white' : '#383838') + ';\n opacity: 1;\n font-size: 0.9rem;\n font-weight: bold;\n transition: opacity 0.25s;\n }\n #vid-slider .row__inner {\n transition: 450ms -webkit-transform;\n transition: 450ms transform;\n transition: 450ms transform, 450ms -webkit-transform;\n font-size: 0;\n white-space: nowrap;\n margin: 25px 0 55px !important;\n padding-bottom: 10px;\n padding-left: 0;\n }\n #vid-slider .tile {\n position: relative;\n display: inline-block;\n height: 135px;\n\n margin: 0 12px;\n font-size: 20px;\n cursor: pointer;\n transition: 450ms all;\n -webkit-transform-origin: center left;\n transform-origin: center left;\n }\n #vid-slider .tile:first-child {\n margin-left: 15px;\n }\n #vid-slider .tile__img {\n height: 135px;\n\n -o-object-fit: cover;\n object-fit: cover;\n object-position: center;\n }\n #vid-slider .tile__details {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n font-size: 10px;\n opacity: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);\n transition: 450ms opacity;\n }\n #vid-slider .tile__details:after,\n #vid-slider .tile__details:before {\n content: \'\';\n\n position: absolute;\n top: 50%;\n left: 50%;\n display: #000;\n }\n #vid-slider .tile__details:after {\n margin-top: -25px;\n margin-left: -25px;\n width: 50px;\n height: 50px;\n border: 3px solid #ecf0f1;\n line-height: 50px;\n text-align: center;\n border-radius: 100%;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1;\n }\n #vid-slider .tile__details:before {\n content: \'\';\n background: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 64 64\' width=\'64\' height=\'64\' fill=\'white\'><path d=\'M26 46 L46 32 L26 18 Z\'/></svg>")\n no-repeat center center;\n left: 0;\n width: 100%;\n height: 3rem;\n font-size: 30px;\n margin-right: 12px;\n margin-top: -24px;\n text-align: center;\n z-index: 2;\n color: white;\n }\n\n #vid-slider .tile__title {\n position: absolute;\n bottom: 0;\n padding: 10px;\n max-width: 250px;\n }\n #vid-slider .tile__title_text {\n position: relative;\n left: 0;\n white-space: normal;\n }\n\n #vid-slider .tile__slider-prev,\n #vid-slider .tile__slider-next {\n width: 30px;\n background: transparent;\n border: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 99;\n cursor: pointer;\n color: ' + (props.dark ? 'white' : 'black') + ';\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n }\n #vid-slider .tile__slider-prev {\n left: -0.5rem;\n padding: 1rem;\n }\n #vid-slider .tile__slider-next {\n right: -0.5rem;\n padding: 1rem;\n }\n #vid-slider,\n #vid-slider .row {\n margin: 0;\n padding-right: 0 1.2rem;\n }\n\n #vid-slider .row::-webkit-scrollbar-thumb {\n background-color: transparent !important;\n }\n #vid-slider i {\n border: solid ' + (props.dark ? 'white' : 'black') + ';\n border-width: 0 4px 4px 0;\n display: inline-block;\n padding: 4px;\n pointer-events: none;\n }\n #vid-slider .right {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n #vid-slider .left {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n @media screen and (max-width: 1399px) {\n #vid-slider,\n #vidHolder {\n max-width: 620px;\n }\n }\n @media screen and (max-width: 1200px) {\n #vid-slider,\n #vidHolder {\n max-width: 580px;\n }\n }\n @media screen and (max-width: 967px) {\n #vid-slider {\n max-width: 100%;\n }\n\n #vid-slider .tile__img {\n height: 85px;\n object-fit: cover;\n }\n }\n\n @media screen and (max-width: 768px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 110px;\n object-fit: cover;\n }\n #vid-slider .row__inner {\n margin: 30px 0 60px;\n }\n }\n @media screen and (max-width: 568px) {\n #vidHolder {\n position: unset;\n width: 100%;\n }\n #vid-slider .tile {\n height: 180px;\n }\n\n #vid-slider .tile__img {\n height: 180px;\n object-fit: cover;\n }\n #vid-slider .row__inner {\n margin: 30px 0 60px;\n }\n }\n '
245
244
  )
246
245
  );
247
246
  };
@@ -429,14 +429,14 @@ var Header = function Header(props) {
429
429
  return React__default.createElement(
430
430
  Head,
431
431
  null,
432
- React__default.createElement(
432
+ title && React__default.createElement(
433
433
  'title',
434
434
  null,
435
435
  title
436
436
  ),
437
- !isLiveSite && React__default.createElement('meta', { name: 'robots', content: 'noindex, nofollow' }),
438
- React__default.createElement('meta', { name: 'keywords', content: keyword }),
439
- React__default.createElement('meta', { name: 'description', content: description })
437
+ keyword && React__default.createElement('meta', { name: 'keywords', content: keyword }),
438
+ description && React__default.createElement('meta', { name: 'description', content: description }),
439
+ !isLiveSite && React__default.createElement('meta', { name: 'robots', content: 'noindex, nofollow' })
440
440
  );
441
441
  };
442
442
 
@@ -110,7 +110,7 @@ var changePageNumber = function changePageNumber(pageNumber, seoPaginate, pagevi
110
110
  if (path[0] !== '/') {
111
111
  path = '/' + path;
112
112
  }
113
- var newPath = pageNumber === 1 ? '' + path : path + '?page=' + pageNumber;
113
+ var newPath = pageNumber === 1 ? '' + path : '' + path + (queryString.length > 0 ? '&' : '?') + 'page=' + pageNumber;
114
114
 
115
115
  if (pageview) {
116
116
  pageview(newPath);
@@ -255,6 +255,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
255
255
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
256
256
  return renderAuthor(authorDetail, index, article.authorMapping.length);
257
257
  }),
258
+ article.publicationSource && React__default.createElement(
259
+ 'p',
260
+ { className: 'p-0 mb-1' },
261
+ article.publicationSource
262
+ ),
258
263
  showCategory && article.contentCategory && React__default.createElement(
259
264
  'p',
260
265
  {
@@ -330,6 +335,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
330
335
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
331
336
  return renderAuthor(authorDetail, index, article.authorMapping.length);
332
337
  }),
338
+ article.publicationSource && React__default.createElement(
339
+ 'p',
340
+ { className: 'p-0 mb-1' },
341
+ article.publicationSource
342
+ ),
333
343
  showCategory && article.contentCategory && React__default.createElement(
334
344
  'p',
335
345
  {
@@ -406,6 +416,11 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
406
416
  showAuthor && article.authorMapping && article.authorMapping.length > 0 && article.authorMapping.map(function (authorDetail, index) {
407
417
  return renderAuthor(authorDetail, index, article.authorMapping.length);
408
418
  }),
419
+ article.publicationSource && React__default.createElement(
420
+ 'p',
421
+ { className: 'p-0 mb-1' },
422
+ article.publicationSource
423
+ ),
409
424
  showCategory && article.contentCategory && React__default.createElement(
410
425
  'p',
411
426
  {
@@ -17,7 +17,7 @@ import './react-social-icons-a7d5c5c7.js';
17
17
  import 'react-bootstrap';
18
18
  import './index.esm-536609db.js';
19
19
  import 'react-bootstrap/Button';
20
- export { T as default } from './Normal-cbddc3c0.js';
20
+ export { T as default } from './Normal-e07e4324.js';
21
21
  import 'react-bootstrap/ListGroup';
22
22
  import 'next/head';
23
23
  import 'react-bootstrap/Nav';
package/dist/esm/index.js CHANGED
@@ -48,8 +48,8 @@ export { default as IssueDeck } from './IssueDeck.js';
48
48
  import 'react-bootstrap/Badge';
49
49
  export { default as IssueContentDeck } from './IssueContentDeck.js';
50
50
  import Spinner from 'react-bootstrap/Spinner';
51
- import { M as MdPictureAsPdf } from './Normal-cbddc3c0.js';
52
- export { A as AD728x90, C as Column1, a as Column2, b as Column3, f as HamMagazine, H as Header, L as LeftNav, e as NavDvm, c as NavMagazine, N as NavNative, d as NavNormal, P as PageFilter, S as Search, g as SideFooter, T as TemplateNormal } from './Normal-cbddc3c0.js';
51
+ import { M as MdPictureAsPdf } from './Normal-e07e4324.js';
52
+ export { A as AD728x90, C as Column1, a as Column2, b as Column3, f as HamMagazine, H as Header, L as LeftNav, e as NavDvm, c as NavMagazine, N as NavNative, d as NavNormal, P as PageFilter, S as Search, g as SideFooter, T as TemplateNormal } from './Normal-e07e4324.js';
53
53
  import 'react-bootstrap/ListGroup';
54
54
  import Head from 'next/head';
55
55
  import Accordion from 'react-bootstrap/Accordion';
@@ -12881,6 +12881,7 @@ var Audio = function Audio(_ref) {
12881
12881
 
12882
12882
  var VideoMp4 = function VideoMp4(_ref) {
12883
12883
  var url = _ref.url,
12884
+ thumbnail = _ref.thumbnail,
12884
12885
  vidLoaded = _ref.vidLoaded;
12885
12886
 
12886
12887
  var _useState = useState(false),
@@ -12968,6 +12969,7 @@ var VideoMp4 = function VideoMp4(_ref) {
12968
12969
  vidLoaded && React__default.createElement(
12969
12970
  'video',
12970
12971
  {
12972
+ poster: thumbnail || '',
12971
12973
  style: { width: '100%' },
12972
12974
  controls: true,
12973
12975
  onCanPlay: function onCanPlay(e) {
@@ -13024,25 +13026,30 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13024
13026
  vidUrl = _useState8[0],
13025
13027
  setVidUrl = _useState8[1];
13026
13028
 
13027
- var _useState9 = useState(false),
13029
+ var _useState9 = useState(''),
13028
13030
  _useState10 = _slicedToArray(_useState9, 2),
13029
- vidLoaded = _useState10[0],
13030
- setVidLoaded = _useState10[1];
13031
+ vidThumbnail = _useState10[0],
13032
+ setVidThumbnail = _useState10[1];
13031
13033
 
13032
- var _useState11 = useState('youtube'),
13034
+ var _useState11 = useState(false),
13033
13035
  _useState12 = _slicedToArray(_useState11, 2),
13034
- vidType = _useState12[0],
13035
- setVidType = _useState12[1];
13036
+ vidLoaded = _useState12[0],
13037
+ setVidLoaded = _useState12[1];
13036
13038
 
13037
- var _useState13 = useState(''),
13039
+ var _useState13 = useState('youtube'),
13038
13040
  _useState14 = _slicedToArray(_useState13, 2),
13039
- series = _useState14[0],
13040
- setSeries = _useState14[1];
13041
+ vidType = _useState14[0],
13042
+ setVidType = _useState14[1];
13041
13043
 
13042
- var _useState15 = useState([]),
13044
+ var _useState15 = useState(''),
13043
13045
  _useState16 = _slicedToArray(_useState15, 2),
13044
- seriesData = _useState16[0],
13045
- setData = _useState16[1];
13046
+ series = _useState16[0],
13047
+ setSeries = _useState16[1];
13048
+
13049
+ var _useState17 = useState([]),
13050
+ _useState18 = _slicedToArray(_useState17, 2),
13051
+ seriesData = _useState18[0],
13052
+ setData = _useState18[1];
13046
13053
  //variables
13047
13054
 
13048
13055
 
@@ -13056,10 +13063,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13056
13063
 
13057
13064
  nodes.videos.forEach(function (vid) {
13058
13065
  if (vid.type == 'mp4') {
13059
- data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset), url: vid.url });
13066
+ data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
13060
13067
  } else {
13061
13068
  if (vid.thumbnail && vid.thumbnail.asset) {
13062
- data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset), url: vid.url });
13069
+ data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
13063
13070
  } else {
13064
13071
  data.push({ title: vid.title, thumbnail: 'https://img.youtube.com/vi/' + getYoutubeId(vid.url) + '/hqdefault.jpg', url: vid.url });
13065
13072
  }
@@ -13070,6 +13077,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13070
13077
  if (data.length < seriesVid) {
13071
13078
  setSeries(1);
13072
13079
  setVidUrl(nodes.videos[0].url);
13080
+ setVidThumbnail(nodes.videos[0].thumbnail && nodes.videos[0].thumbnail.asset ? urlFor(nodes.videos[0].thumbnail.asset).url() : '');
13073
13081
  if (nodes.videos[0].type) {
13074
13082
  setVidType(nodes.videos[0].type);
13075
13083
  }
@@ -13080,7 +13088,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13080
13088
  } else {
13081
13089
  setSeries(seriesVid);
13082
13090
  setVidUrl(nodes.videos[seriesVid - 1].url);
13083
-
13091
+ setVidThumbnail(nodes.videos[seriesVid - 1].thumbnail && nodes.videos[seriesVid - 1].thumbnail.asset ? urlFor(nodes.videos[seriesVid - 1].thumbnail.asset).url() : '');
13084
13092
  if (nodes.videos[0].type) {
13085
13093
  setVidType(nodes.videos[seriesVid - 1].type);
13086
13094
  }
@@ -13106,10 +13114,11 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13106
13114
  }
13107
13115
 
13108
13116
  // This function is passed to the GroupDeck to change the youtube iframe src
13109
- function setState(url, vidIndex) {
13117
+ function setState(url, thumbnail, vidIndex) {
13110
13118
  setVidLoaded(false);
13111
13119
  setTimeout(function () {
13112
13120
  setVidUrl(url);
13121
+ setVidThumbnail(thumbnail);
13113
13122
  toggleSeries();
13114
13123
  lib_3.refresh();
13115
13124
  var newPath = '/' + get2 + '/' + get3 + ('?seriesVid=' + vidIndex);
@@ -13230,7 +13239,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
13230
13239
  { className: 'video-block', style: { position: 'relative', overflow: 'hidden' } },
13231
13240
  vidUrl && vidType == 'youtube' ? React__default.createElement(YouTube, { videoId: getYoutubeId(vidUrl), opts: opts, onReady: handleOnReady, onPlay: handleOnPlay, onPause: handleOnPause, onEnd: function onEnd(e) {
13232
13241
  return handleOnEnd(e);
13233
- } }) : React__default.createElement(VideoMp4, { url: vidUrl, vidLoaded: vidLoaded }),
13242
+ } }) : React__default.createElement(VideoMp4, { url: vidUrl, thumbnail: vidThumbnail, vidLoaded: vidLoaded }),
13234
13243
  React__default.createElement(
13235
13244
  'div',
13236
13245
  {
@@ -16831,7 +16840,7 @@ var ArticleQueue = function ArticleQueue(props) {
16831
16840
 
16832
16841
  return React__default.createElement(
16833
16842
  InfiniteScroll,
16834
- { dataLength: queueData.length, next: loadmore, scrollThreshold: 0.8, hasMore: true },
16843
+ { dataLength: queueData.length, next: loadmore, scrollThreshold: '60%', hasMore: true },
16835
16844
  queueData.map(function (article, index) {
16836
16845
  if (!checkSponseredArticle(article) && Ads.getNativeContextualAD) {
16837
16846
  article.contextualAD = Ads.getNativeContextualAD(getTargeting(article));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mjhls/mjh-framework",
3
- "version": "1.0.334",
3
+ "version": "1.0.336",
4
4
  "description": "Foundation Framework",
5
5
  "author": "mjh-framework",
6
6
  "license": "MIT",