@mjhls/mjh-framework 1.0.694 → 1.0.695

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.694
2
+ # mjh-framework v. 1.0.695
3
3
 
4
4
  > Foundation Framework
5
5
 
@@ -227,7 +227,7 @@ var ArticleSeriesListing = function (_React$Component) {
227
227
  { key: index, counter: itemCounter++ },
228
228
  React__default.createElement(
229
229
  'h4',
230
- { className: 'article-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid var(--gold)' } },
230
+ { className: 'article-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid #d4a64d' } },
231
231
  React__default.createElement(
232
232
  'a',
233
233
  { href: '/' + _this.props.page + '/' + docSeries.url.current },
@@ -48,7 +48,7 @@ require('./iconBase-68959171.js');
48
48
  require('./index.esm-90433435.js');
49
49
  var Button = _interopDefault(require('react-bootstrap/Button'));
50
50
  var index$3 = require('./index-5be2866f.js');
51
- var getSerializers = require('./index-bb6b1bfb.js');
51
+ var getSerializers = require('./index-c0bfab13.js');
52
52
  require('./util-f2c1b65b.js');
53
53
  require('./brightcove-react-player-loader.es-156bd4d6.js');
54
54
  require('react-bootstrap/Pagination');
@@ -57,7 +57,7 @@ var QueueDeckExpanded = require('./QueueDeckExpanded.js');
57
57
  require('./iconBase-68959171.js');
58
58
  require('./index.esm-90433435.js');
59
59
  require('react-bootstrap/Button');
60
- var getSerializers = require('./index-bb6b1bfb.js');
60
+ var getSerializers = require('./index-c0bfab13.js');
61
61
  require('./util-f2c1b65b.js');
62
62
  require('./brightcove-react-player-loader.es-156bd4d6.js');
63
63
  require('react-bootstrap/Pagination');
@@ -227,7 +227,7 @@ var VideoSeriesListing = function (_React$Component) {
227
227
  { key: index, counter: itemCounter++ },
228
228
  React__default.createElement(
229
229
  'h4',
230
- { className: 'video-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid var(--gold)' } },
230
+ { className: 'video-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid #d4a64d' } },
231
231
  React__default.createElement(
232
232
  'a',
233
233
  { href: '/' + _this.props.page + '/' + docSeries.url.current },
package/dist/cjs/View.js CHANGED
@@ -50,7 +50,7 @@ require('./index.esm-90433435.js');
50
50
  var Button = _interopDefault(require('react-bootstrap/Button'));
51
51
  var defineProperty$1 = require('./defineProperty-55548b25.js');
52
52
  var Form = _interopDefault(require('react-bootstrap/Form'));
53
- var getSerializers = require('./index-bb6b1bfb.js');
53
+ var getSerializers = require('./index-c0bfab13.js');
54
54
  require('./util-f2c1b65b.js');
55
55
  require('./brightcove-react-player-loader.es-156bd4d6.js');
56
56
  require('react-bootstrap/Pagination');
@@ -769,7 +769,7 @@ var Article = function Article(props) {
769
769
  );
770
770
  } else {
771
771
  return React__default.createElement(BlockContent.BlockContent, _extends._extends({
772
- serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, props.article.Ads, targeting),
772
+ serializers: getSerializers.getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, props.article.Ads, targeting, article),
773
773
  blocks: articleBody,
774
774
  imageOptions: { w: 320, h: 240, fit: 'max' }
775
775
  }, client.config()));
@@ -43,7 +43,7 @@ require('react-bootstrap');
43
43
  require('./iconBase-68959171.js');
44
44
  require('./index.esm-90433435.js');
45
45
  require('react-bootstrap/Button');
46
- var getSerializers = require('./index-bb6b1bfb.js');
46
+ var getSerializers = require('./index-c0bfab13.js');
47
47
  require('./util-f2c1b65b.js');
48
48
  require('./brightcove-react-player-loader.es-156bd4d6.js');
49
49
  require('react-bootstrap/Pagination');
@@ -7065,6 +7065,14 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7065
7065
  return null;
7066
7066
  }
7067
7067
 
7068
+ var today = moment.moment().utc().format();
7069
+
7070
+ var Videos = nodes.videos.filter(function (video) {
7071
+ if ((video.is_visible === true || !video.hasOwnProperty('is_visible')) && (today >= video.published || !video.hasOwnProperty('published'))) {
7072
+ return video;
7073
+ }
7074
+ });
7075
+
7068
7076
  var builder = index$1.imageUrlBuilder(client);
7069
7077
  function urlFor(source) {
7070
7078
  return builder.image(source);
@@ -7133,7 +7141,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7133
7141
  var seriesVid = params.get('seriesVid') || 1;
7134
7142
  var data = [];
7135
7143
 
7136
- nodes.videos.forEach(function (vid) {
7144
+ Videos.forEach(function (vid) {
7137
7145
  if (vid.type == 'mp4') {
7138
7146
  data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
7139
7147
  } else {
@@ -7148,10 +7156,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7148
7156
 
7149
7157
  if (data.length < seriesVid) {
7150
7158
  setSeries(1);
7151
- setVidUrl(nodes.videos[0].url);
7152
- setVidThumbnail(nodes.videos[0].thumbnail && nodes.videos[0].thumbnail.asset ? urlFor(nodes.videos[0].thumbnail.asset).url() : '');
7153
- if (nodes.videos[0].type) {
7154
- setVidType(nodes.videos[0].type);
7159
+ setVidUrl(Videos[0].url);
7160
+ setVidThumbnail(Videos[0].thumbnail && Videos[0].thumbnail.asset ? urlFor(Videos[0].thumbnail.asset).url() : '');
7161
+ if (Videos[0].type) {
7162
+ setVidType(Videos[0].type);
7155
7163
  }
7156
7164
 
7157
7165
  var newPath = '/' + get2 + '/' + get3 + '?seriesVid=1';
@@ -7159,10 +7167,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7159
7167
  window.history.pushState(vidState, '', newPath);
7160
7168
  } else {
7161
7169
  setSeries(seriesVid);
7162
- setVidUrl(nodes.videos[seriesVid - 1].url);
7163
- setVidThumbnail(nodes.videos[seriesVid - 1].thumbnail && nodes.videos[seriesVid - 1].thumbnail.asset ? urlFor(nodes.videos[seriesVid - 1].thumbnail.asset).url() : '');
7164
- if (nodes.videos[0].type) {
7165
- setVidType(nodes.videos[seriesVid - 1].type);
7170
+ setVidUrl(Videos[seriesVid - 1].url);
7171
+ setVidThumbnail(Videos[seriesVid - 1].thumbnail && Videos[seriesVid - 1].thumbnail.asset ? urlFor(Videos[seriesVid - 1].thumbnail.asset).url() : '');
7172
+ if (Videos[0].type) {
7173
+ setVidType(Videos[seriesVid - 1].type);
7166
7174
  }
7167
7175
  setVidLoaded(true);
7168
7176
  }
@@ -7173,7 +7181,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7173
7181
  if (vidLoaded == true) {
7174
7182
  var params = new URL(document.location).searchParams;
7175
7183
  var seriesVid = params.get('seriesVid');
7176
- var vidTitle = nodes.videos[series - 1].title;
7184
+ var vidTitle = Videos[series - 1].title;
7177
7185
  var originalTitle = document.title;
7178
7186
  if (seriesVid) {
7179
7187
  document.title = vidTitle + ' | ' + originalTitle;
@@ -7235,7 +7243,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7235
7243
  nextVid = currentVid + 1;
7236
7244
  }
7237
7245
  // set the new Video URL
7238
- setState(nodes.videos[nextVid].url, '', nextVid + 1);
7246
+ setState(Videos[nextVid].url, '', nextVid + 1);
7239
7247
  }
7240
7248
 
7241
7249
  var autoplayNextVideo = function autoplayNextVideo(e) {
@@ -7256,7 +7264,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7256
7264
  nextVid = currentVid + 1;
7257
7265
  }
7258
7266
  // set the new Video URL
7259
- setState(nodes.videos[nextVid].url, '', nextVid + 1);
7267
+ setState(Videos[nextVid].url, '', nextVid + 1);
7260
7268
  };
7261
7269
 
7262
7270
  var handlePlayPercent = function handlePlayPercent(player) {
@@ -7364,26 +7372,26 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7364
7372
  'Episode ',
7365
7373
  series
7366
7374
  ),
7367
- nodes.videos[series - 1] && React__default.createElement(
7375
+ Videos[series - 1] && React__default.createElement(
7368
7376
  'h2',
7369
7377
  { className: 'mb-3' },
7370
- nodes.videos[series - 1].title
7378
+ Videos[series - 1].title
7371
7379
  ),
7372
- nodes.videos[series - 1] && nodes.videos[series - 1].intro && React__default.createElement(
7380
+ Videos[series - 1] && Videos[series - 1].intro && React__default.createElement(
7373
7381
  'p',
7374
7382
  { className: 'mb-3' },
7375
7383
  React__default.createElement(
7376
7384
  'em',
7377
7385
  null,
7378
- nodes.videos[series - 1].intro
7386
+ Videos[series - 1].intro
7379
7387
  )
7380
7388
  ),
7381
- nodes.videos[series - 1] && nodes.videos[series - 1].text && React__default.createElement(BlockContent.BlockContent, _extends._extends({ serializers: getSerializers, blocks: nodes.videos[series - 1].text, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config()))
7389
+ Videos[series - 1] && Videos[series - 1].text && React__default.createElement(BlockContent.BlockContent, _extends._extends({ serializers: getSerializers, blocks: Videos[series - 1].text, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config()))
7382
7390
  ),
7383
7391
  React__default.createElement(
7384
7392
  'style',
7385
7393
  { jsx: 'true' },
7386
- '\n \n #fluid-video-container > div {\n position: relative;\n padding-bottom: 56.25%; /* 16:9 */\n height: 0;\n }\n #fluid-video-container .fluid-iframe {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n }\n\n span.btn {\n margin: 0 1rem;\n }\n \n \n '
7394
+ '\n #fluid-video-container > div {\n position: relative;\n padding-bottom: 56.25%; /* 16:9 */\n height: 0;\n }\n #fluid-video-container .fluid-iframe {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n }\n\n span.btn {\n margin: 0 1rem;\n }\n '
7387
7395
  )
7388
7396
  );
7389
7397
  };
@@ -8019,9 +8027,11 @@ var InscreenSensor = function (_React$Component) {
8019
8027
  var ArticleSeries = function ArticleSeries(_ref) {
8020
8028
  var nodes = _ref.nodes,
8021
8029
  client = _ref.client,
8030
+ pageview = _ref.pageview,
8022
8031
  getSerializers = _ref.getSerializers,
8023
8032
  accountIDs = _ref.accountIDs,
8024
- Ads = _ref.Ads;
8033
+ Ads = _ref.Ads,
8034
+ rootArticle = _ref.rootArticle;
8025
8035
 
8026
8036
  if (!nodes || !nodes.articles) {
8027
8037
  return null;
@@ -8182,7 +8192,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8182
8192
  // Change URL and do other changes
8183
8193
  var doChanges = function doChanges() {
8184
8194
  if (firstLoad) {
8185
- refreshAD();
8195
+ refreshAD(newPath);
8186
8196
  }
8187
8197
  window.history.pushState({ page: path }, '', newPath);
8188
8198
  document.title = title;
@@ -8262,6 +8272,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8262
8272
  var refreshAD = function refreshAD(path) {
8263
8273
  //const activeArticle = path
8264
8274
  //let targeting = getTargeting({ article: activeArticle, cpModificationRequired, position: props.position, prevUrl })
8275
+ if (pageview) pageview(path);
8265
8276
 
8266
8277
  if (!main.main_39) {
8267
8278
  index.lib_3.getGoogletag().then(function (googletag) {
@@ -8282,12 +8293,25 @@ var ArticleSeries = function ArticleSeries(_ref) {
8282
8293
  };
8283
8294
 
8284
8295
  var handleArrowClick = function handleArrowClick() {
8296
+ var newPath = router.asPath.split('?')[0];
8297
+ var title = nodes.seriesTitle;
8285
8298
  isScrollDown = true;
8286
8299
  upArrowClicked = true;
8287
8300
  arrowRef.current.style.visibility = 'hidden';
8288
8301
  window.scrollTo({ top: 0, behavior: 'smooth' });
8289
- window.history.pushState({}, '', router.asPath.split('?')[0]);
8290
- document.title = nodes.seriesTitle;
8302
+ window.history.pushState({}, '', newPath);
8303
+ document.title = title;
8304
+
8305
+ setCurrentURL(newPath);
8306
+ setCurrentTitle(title);
8307
+ if (rootArticle) {
8308
+ setCurrentSummary(rootArticle.summary ? rootArticle.summary : '');
8309
+ setCurrentThumbnail(urlFor(rootArticle.thumbnail.asset).url());
8310
+ } else {
8311
+ setCurrentSummary('');
8312
+ setCurrentThumbnail('');
8313
+ }
8314
+ refreshAD(newPath);
8291
8315
  };
8292
8316
 
8293
8317
  return React__default.createElement(
@@ -8295,10 +8319,10 @@ var ArticleSeries = function ArticleSeries(_ref) {
8295
8319
  null,
8296
8320
  React__default.createElement(
8297
8321
  'div',
8298
- { ref: arrowRef, className: 'scrollToTopArrow', onClick: function onClick() {
8322
+ { ref: arrowRef, className: 'scrollToTopArrow' },
8323
+ React__default.createElement(index_esm.IoIosArrowDropupCircle, { style: { cursor: 'pointer' }, onClick: function onClick() {
8299
8324
  return handleArrowClick();
8300
- } },
8301
- React__default.createElement(index_esm.IoIosArrowDropupCircle, null)
8325
+ } })
8302
8326
  ),
8303
8327
  React__default.createElement('hr', { className: 'article-seperater my-4' }),
8304
8328
  React__default.createElement(
@@ -8468,7 +8492,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8468
8492
  React__default.createElement(
8469
8493
  'style',
8470
8494
  { jsx: 'true' },
8471
- '\n .scrollToTopArrow {\n position: fixed;\n top: 150px;\n display: flex;\n justify-content: center;\n width: ' + contentWidth + 'px;\n opacity: 1;\n z-index: 99999999999;\n cursor: pointer;\n visibility: hidden;\n }\n .scrollToTopArrow > svg {\n min-height: 50px;\n min-width: 50px;\n max-height: 50px;\n max-width: 50px;\n }\n .block-content > div p {\n padding: 0;\n }\n\n h2.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.prevNext-title {\n padding: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .article-wrapper {\n border: 1px solid #252525;\n border-radius: 5px;\n padding: 1rem 1rem 0 1rem;\n margin-bottom: 1rem;\n }\n .prevNext-reading {\n margin-top: -10px;\n width: 75%;\n text-align: center;\n background: white;\n border: 1px solid #252525;\n align-self: center;\n display: none;\n }\n .showReading {\n display: block;\n }\n .author-details-wrapper a {\n color: #252525;\n }\n .objective-prevNext-Wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n .objective-title {\n padding: 0 !important;\n }\n .prevNext-thumbnail {\n display: flex;\n flex-direction: column;\n min-width: 225px;\n max-width: 225px;\n overflow: hidden;\n align-items: center;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-thumbnail img {\n height: 125px;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-summary {\n text-align: center;\n }\n .prevNext-publishDate {\n font-size: 0.75rem;\n margin-top: 0.5rem;\n }\n .prevNext-title {\n padding: 0 !important;\n line-height: 1 !important;\n font-weight: 500;\n }\n .prevNextWrapper {\n display: flex;\n flex-direction: row;\n justify-content: space-evenly;\n flex-wrap: wrap;\n }\n .prevNextWrapper a {\n display: flex;\n flex-direction: column;\n color: #252525;\n align-items: center;\n }\n .prevNextCards {\n max-width: 250px;\n margin-bottom: 1rem;\n }\n @media only screen and (max-width: 568px) {\n .prevNextWrapper {\n flex-direction: column;\n align-items: center;\n }\n .prevNextCards {\n margin-bottom: 2rem;\n }\n }\n @media only screen and (max-width: 568px) {\n }\n '
8495
+ '\n .scrollToTopArrow {\n position: fixed;\n top: 150px;\n display: flex;\n justify-content: center;\n width: ' + contentWidth + 'px;\n opacity: 1;\n z-index: 99999999999;\n visibility: hidden;\n }\n .scrollToTopArrow > svg {\n min-height: 50px;\n min-width: 50px;\n max-height: 50px;\n max-width: 50px;\n }\n .block-content > div p {\n padding: 0;\n }\n\n h2.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.prevNext-title {\n padding: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .article-wrapper {\n border: 1px solid #252525;\n border-radius: 5px;\n padding: 1rem 1rem 0 1rem;\n margin-bottom: 1rem;\n }\n .prevNext-reading {\n margin-top: -10px;\n width: 75%;\n text-align: center;\n background: white;\n border: 1px solid #252525;\n align-self: center;\n display: none;\n }\n .showReading {\n display: block;\n }\n .author-details-wrapper a {\n color: #252525;\n }\n .objective-prevNext-Wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n .objective-title {\n padding: 0 !important;\n }\n .prevNext-thumbnail {\n display: flex;\n flex-direction: column;\n min-width: 225px;\n max-width: 225px;\n overflow: hidden;\n align-items: center;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-thumbnail img {\n height: 125px;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-summary {\n text-align: center;\n }\n .prevNext-publishDate {\n font-size: 0.75rem;\n margin-top: 0.5rem;\n }\n .prevNext-title {\n padding: 0 !important;\n line-height: 1 !important;\n font-weight: 500;\n }\n .prevNextWrapper {\n display: flex;\n flex-direction: row;\n justify-content: space-evenly;\n flex-wrap: wrap;\n }\n .prevNextWrapper a {\n display: flex;\n flex-direction: column;\n color: #252525;\n align-items: center;\n }\n .prevNextCards {\n max-width: 250px;\n margin-bottom: 1rem;\n }\n @media only screen and (max-width: 568px) {\n .prevNextWrapper {\n flex-direction: column;\n align-items: center;\n }\n .prevNextCards {\n margin-bottom: 2rem;\n }\n }\n @media only screen and (max-width: 568px) {\n }\n '
8472
8496
  )
8473
8497
  )
8474
8498
  );
@@ -8822,7 +8846,8 @@ var getSerializers = function getSerializers() {
8822
8846
  contextualADFlag = _props$2 === undefined ? false : _props$2,
8823
8847
  articleId = props[9],
8824
8848
  Ads = props[10],
8825
- targeting = props[11];
8849
+ targeting = props[11],
8850
+ article = props[12];
8826
8851
 
8827
8852
  return {
8828
8853
  types: {
@@ -8844,7 +8869,7 @@ var getSerializers = function getSerializers() {
8844
8869
  articleSeries: function articleSeries(_ref3) {
8845
8870
  var node = _ref3.node;
8846
8871
 
8847
- return React__default.createElement(ArticleSeries, { nodes: node, accountIDs: videoAccountIDs || {}, client: client, getSerializers: getSerializers.apply(undefined, props), Ads: Ads || null });
8872
+ return React__default.createElement(ArticleSeries, { nodes: node, accountIDs: videoAccountIDs || {}, pageview: pageview, client: client, getSerializers: getSerializers.apply(undefined, props), Ads: Ads || null, rootArticle: article || null });
8848
8873
  },
8849
8874
  figure: function figure(_ref4) {
8850
8875
  var node = _ref4.node;
package/dist/cjs/index.js CHANGED
@@ -83,7 +83,7 @@ require('react-bootstrap/Form');
83
83
  require('./index-5be2866f.js');
84
84
  require('./js.cookie-a511c430.js');
85
85
  var CMEDeck = require('./CMEDeck.js');
86
- var getSerializers = require('./index-bb6b1bfb.js');
86
+ var getSerializers = require('./index-c0bfab13.js');
87
87
  require('./util-f2c1b65b.js');
88
88
  require('./brightcove-react-player-loader.es-156bd4d6.js');
89
89
  require('react-bootstrap/Pagination');
@@ -221,7 +221,7 @@ var ArticleSeriesListing = function (_React$Component) {
221
221
  { key: index, counter: itemCounter++ },
222
222
  React__default.createElement(
223
223
  'h4',
224
- { className: 'article-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid var(--gold)' } },
224
+ { className: 'article-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid #d4a64d' } },
225
225
  React__default.createElement(
226
226
  'a',
227
227
  { href: '/' + _this.props.page + '/' + docSeries.url.current },
@@ -42,7 +42,7 @@ import './iconBase-602d52fe.js';
42
42
  import './index.esm-29e48d38.js';
43
43
  import Button from 'react-bootstrap/Button';
44
44
  import { m as momentTimezone } from './index-d2f90501.js';
45
- import { g as getSerializers } from './index-74d46cc5.js';
45
+ import { g as getSerializers } from './index-754010eb.js';
46
46
  import './util-7700fc59.js';
47
47
  import './brightcove-react-player-loader.es-83f53e4e.js';
48
48
  import 'react-bootstrap/Pagination';
@@ -51,7 +51,7 @@ import QueueDeckExpanded from './QueueDeckExpanded.js';
51
51
  import './iconBase-602d52fe.js';
52
52
  import './index.esm-29e48d38.js';
53
53
  import 'react-bootstrap/Button';
54
- import { g as getSerializers } from './index-74d46cc5.js';
54
+ import { g as getSerializers } from './index-754010eb.js';
55
55
  import './util-7700fc59.js';
56
56
  import './brightcove-react-player-loader.es-83f53e4e.js';
57
57
  import 'react-bootstrap/Pagination';
@@ -221,7 +221,7 @@ var VideoSeriesListing = function (_React$Component) {
221
221
  { key: index, counter: itemCounter++ },
222
222
  React__default.createElement(
223
223
  'h4',
224
- { className: 'video-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid var(--gold)' } },
224
+ { className: 'video-title-banner', style: { fontWeight: 'bold', color: 'var(--primary)', padding: '.25rem 0', borderBottom: '2px solid #d4a64d' } },
225
225
  React__default.createElement(
226
226
  'a',
227
227
  { href: '/' + _this.props.page + '/' + docSeries.url.current },
package/dist/esm/View.js CHANGED
@@ -44,7 +44,7 @@ import './index.esm-29e48d38.js';
44
44
  import Button from 'react-bootstrap/Button';
45
45
  import { _ as _defineProperty } from './defineProperty-b798470d.js';
46
46
  import Form from 'react-bootstrap/Form';
47
- import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-74d46cc5.js';
47
+ import { I as InscreenSensor, r as renderAuthor, g as getSerializers } from './index-754010eb.js';
48
48
  import './util-7700fc59.js';
49
49
  import './brightcove-react-player-loader.es-83f53e4e.js';
50
50
  import 'react-bootstrap/Pagination';
@@ -763,7 +763,7 @@ var Article = function Article(props) {
763
763
  );
764
764
  } else {
765
765
  return React__default.createElement(BlockContent, _extends({
766
- serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, props.article.Ads, targeting),
766
+ serializers: getSerializers(client, pageview, videoAccountIDs, onVote, true, drupalLeadSettings, currentPage, false, false, null, props.article.Ads, targeting, article),
767
767
  blocks: articleBody,
768
768
  imageOptions: { w: 320, h: 240, fit: 'max' }
769
769
  }, client.config()));
@@ -41,7 +41,7 @@ import 'react-bootstrap';
41
41
  import './iconBase-602d52fe.js';
42
42
  import './index.esm-29e48d38.js';
43
43
  import 'react-bootstrap/Button';
44
- export { g as default } from './index-74d46cc5.js';
44
+ export { g as default } from './index-754010eb.js';
45
45
  import './util-7700fc59.js';
46
46
  import './brightcove-react-player-loader.es-83f53e4e.js';
47
47
  import 'react-bootstrap/Pagination';
@@ -7058,6 +7058,14 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7058
7058
  return null;
7059
7059
  }
7060
7060
 
7061
+ var today = moment().utc().format();
7062
+
7063
+ var Videos = nodes.videos.filter(function (video) {
7064
+ if ((video.is_visible === true || !video.hasOwnProperty('is_visible')) && (today >= video.published || !video.hasOwnProperty('published'))) {
7065
+ return video;
7066
+ }
7067
+ });
7068
+
7061
7069
  var builder = imageUrlBuilder(client);
7062
7070
  function urlFor(source) {
7063
7071
  return builder.image(source);
@@ -7126,7 +7134,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7126
7134
  var seriesVid = params.get('seriesVid') || 1;
7127
7135
  var data = [];
7128
7136
 
7129
- nodes.videos.forEach(function (vid) {
7137
+ Videos.forEach(function (vid) {
7130
7138
  if (vid.type == 'mp4') {
7131
7139
  data.push({ title: vid.title, thumbnail: urlFor(vid.thumbnail.asset).url(), url: vid.url });
7132
7140
  } else {
@@ -7141,10 +7149,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7141
7149
 
7142
7150
  if (data.length < seriesVid) {
7143
7151
  setSeries(1);
7144
- setVidUrl(nodes.videos[0].url);
7145
- setVidThumbnail(nodes.videos[0].thumbnail && nodes.videos[0].thumbnail.asset ? urlFor(nodes.videos[0].thumbnail.asset).url() : '');
7146
- if (nodes.videos[0].type) {
7147
- setVidType(nodes.videos[0].type);
7152
+ setVidUrl(Videos[0].url);
7153
+ setVidThumbnail(Videos[0].thumbnail && Videos[0].thumbnail.asset ? urlFor(Videos[0].thumbnail.asset).url() : '');
7154
+ if (Videos[0].type) {
7155
+ setVidType(Videos[0].type);
7148
7156
  }
7149
7157
 
7150
7158
  var newPath = '/' + get2 + '/' + get3 + '?seriesVid=1';
@@ -7152,10 +7160,10 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7152
7160
  window.history.pushState(vidState, '', newPath);
7153
7161
  } else {
7154
7162
  setSeries(seriesVid);
7155
- setVidUrl(nodes.videos[seriesVid - 1].url);
7156
- setVidThumbnail(nodes.videos[seriesVid - 1].thumbnail && nodes.videos[seriesVid - 1].thumbnail.asset ? urlFor(nodes.videos[seriesVid - 1].thumbnail.asset).url() : '');
7157
- if (nodes.videos[0].type) {
7158
- setVidType(nodes.videos[seriesVid - 1].type);
7163
+ setVidUrl(Videos[seriesVid - 1].url);
7164
+ setVidThumbnail(Videos[seriesVid - 1].thumbnail && Videos[seriesVid - 1].thumbnail.asset ? urlFor(Videos[seriesVid - 1].thumbnail.asset).url() : '');
7165
+ if (Videos[0].type) {
7166
+ setVidType(Videos[seriesVid - 1].type);
7159
7167
  }
7160
7168
  setVidLoaded(true);
7161
7169
  }
@@ -7166,7 +7174,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7166
7174
  if (vidLoaded == true) {
7167
7175
  var params = new URL(document.location).searchParams;
7168
7176
  var seriesVid = params.get('seriesVid');
7169
- var vidTitle = nodes.videos[series - 1].title;
7177
+ var vidTitle = Videos[series - 1].title;
7170
7178
  var originalTitle = document.title;
7171
7179
  if (seriesVid) {
7172
7180
  document.title = vidTitle + ' | ' + originalTitle;
@@ -7228,7 +7236,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7228
7236
  nextVid = currentVid + 1;
7229
7237
  }
7230
7238
  // set the new Video URL
7231
- setState(nodes.videos[nextVid].url, '', nextVid + 1);
7239
+ setState(Videos[nextVid].url, '', nextVid + 1);
7232
7240
  }
7233
7241
 
7234
7242
  var autoplayNextVideo = function autoplayNextVideo(e) {
@@ -7249,7 +7257,7 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7249
7257
  nextVid = currentVid + 1;
7250
7258
  }
7251
7259
  // set the new Video URL
7252
- setState(nodes.videos[nextVid].url, '', nextVid + 1);
7260
+ setState(Videos[nextVid].url, '', nextVid + 1);
7253
7261
  };
7254
7262
 
7255
7263
  var handlePlayPercent = function handlePlayPercent(player) {
@@ -7357,26 +7365,26 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
7357
7365
  'Episode ',
7358
7366
  series
7359
7367
  ),
7360
- nodes.videos[series - 1] && React__default.createElement(
7368
+ Videos[series - 1] && React__default.createElement(
7361
7369
  'h2',
7362
7370
  { className: 'mb-3' },
7363
- nodes.videos[series - 1].title
7371
+ Videos[series - 1].title
7364
7372
  ),
7365
- nodes.videos[series - 1] && nodes.videos[series - 1].intro && React__default.createElement(
7373
+ Videos[series - 1] && Videos[series - 1].intro && React__default.createElement(
7366
7374
  'p',
7367
7375
  { className: 'mb-3' },
7368
7376
  React__default.createElement(
7369
7377
  'em',
7370
7378
  null,
7371
- nodes.videos[series - 1].intro
7379
+ Videos[series - 1].intro
7372
7380
  )
7373
7381
  ),
7374
- nodes.videos[series - 1] && nodes.videos[series - 1].text && React__default.createElement(BlockContent, _extends({ serializers: getSerializers, blocks: nodes.videos[series - 1].text, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config()))
7382
+ Videos[series - 1] && Videos[series - 1].text && React__default.createElement(BlockContent, _extends({ serializers: getSerializers, blocks: Videos[series - 1].text, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config()))
7375
7383
  ),
7376
7384
  React__default.createElement(
7377
7385
  'style',
7378
7386
  { jsx: 'true' },
7379
- '\n \n #fluid-video-container > div {\n position: relative;\n padding-bottom: 56.25%; /* 16:9 */\n height: 0;\n }\n #fluid-video-container .fluid-iframe {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n }\n\n span.btn {\n margin: 0 1rem;\n }\n \n \n '
7387
+ '\n #fluid-video-container > div {\n position: relative;\n padding-bottom: 56.25%; /* 16:9 */\n height: 0;\n }\n #fluid-video-container .fluid-iframe {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100% !important;\n }\n\n span.btn {\n margin: 0 1rem;\n }\n '
7380
7388
  )
7381
7389
  );
7382
7390
  };
@@ -8012,9 +8020,11 @@ var InscreenSensor = function (_React$Component) {
8012
8020
  var ArticleSeries = function ArticleSeries(_ref) {
8013
8021
  var nodes = _ref.nodes,
8014
8022
  client = _ref.client,
8023
+ pageview = _ref.pageview,
8015
8024
  getSerializers = _ref.getSerializers,
8016
8025
  accountIDs = _ref.accountIDs,
8017
- Ads = _ref.Ads;
8026
+ Ads = _ref.Ads,
8027
+ rootArticle = _ref.rootArticle;
8018
8028
 
8019
8029
  if (!nodes || !nodes.articles) {
8020
8030
  return null;
@@ -8175,7 +8185,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8175
8185
  // Change URL and do other changes
8176
8186
  var doChanges = function doChanges() {
8177
8187
  if (firstLoad) {
8178
- refreshAD();
8188
+ refreshAD(newPath);
8179
8189
  }
8180
8190
  window.history.pushState({ page: path }, '', newPath);
8181
8191
  document.title = title;
@@ -8255,6 +8265,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8255
8265
  var refreshAD = function refreshAD(path) {
8256
8266
  //const activeArticle = path
8257
8267
  //let targeting = getTargeting({ article: activeArticle, cpModificationRequired, position: props.position, prevUrl })
8268
+ if (pageview) pageview(path);
8258
8269
 
8259
8270
  if (!main_39) {
8260
8271
  lib_3.getGoogletag().then(function (googletag) {
@@ -8275,12 +8286,25 @@ var ArticleSeries = function ArticleSeries(_ref) {
8275
8286
  };
8276
8287
 
8277
8288
  var handleArrowClick = function handleArrowClick() {
8289
+ var newPath = router.asPath.split('?')[0];
8290
+ var title = nodes.seriesTitle;
8278
8291
  isScrollDown = true;
8279
8292
  upArrowClicked = true;
8280
8293
  arrowRef.current.style.visibility = 'hidden';
8281
8294
  window.scrollTo({ top: 0, behavior: 'smooth' });
8282
- window.history.pushState({}, '', router.asPath.split('?')[0]);
8283
- document.title = nodes.seriesTitle;
8295
+ window.history.pushState({}, '', newPath);
8296
+ document.title = title;
8297
+
8298
+ setCurrentURL(newPath);
8299
+ setCurrentTitle(title);
8300
+ if (rootArticle) {
8301
+ setCurrentSummary(rootArticle.summary ? rootArticle.summary : '');
8302
+ setCurrentThumbnail(urlFor(rootArticle.thumbnail.asset).url());
8303
+ } else {
8304
+ setCurrentSummary('');
8305
+ setCurrentThumbnail('');
8306
+ }
8307
+ refreshAD(newPath);
8284
8308
  };
8285
8309
 
8286
8310
  return React__default.createElement(
@@ -8288,10 +8312,10 @@ var ArticleSeries = function ArticleSeries(_ref) {
8288
8312
  null,
8289
8313
  React__default.createElement(
8290
8314
  'div',
8291
- { ref: arrowRef, className: 'scrollToTopArrow', onClick: function onClick() {
8315
+ { ref: arrowRef, className: 'scrollToTopArrow' },
8316
+ React__default.createElement(IoIosArrowDropupCircle, { style: { cursor: 'pointer' }, onClick: function onClick() {
8292
8317
  return handleArrowClick();
8293
- } },
8294
- React__default.createElement(IoIosArrowDropupCircle, null)
8318
+ } })
8295
8319
  ),
8296
8320
  React__default.createElement('hr', { className: 'article-seperater my-4' }),
8297
8321
  React__default.createElement(
@@ -8461,7 +8485,7 @@ var ArticleSeries = function ArticleSeries(_ref) {
8461
8485
  React__default.createElement(
8462
8486
  'style',
8463
8487
  { jsx: 'true' },
8464
- '\n .scrollToTopArrow {\n position: fixed;\n top: 150px;\n display: flex;\n justify-content: center;\n width: ' + contentWidth + 'px;\n opacity: 1;\n z-index: 99999999999;\n cursor: pointer;\n visibility: hidden;\n }\n .scrollToTopArrow > svg {\n min-height: 50px;\n min-width: 50px;\n max-height: 50px;\n max-width: 50px;\n }\n .block-content > div p {\n padding: 0;\n }\n\n h2.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.prevNext-title {\n padding: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .article-wrapper {\n border: 1px solid #252525;\n border-radius: 5px;\n padding: 1rem 1rem 0 1rem;\n margin-bottom: 1rem;\n }\n .prevNext-reading {\n margin-top: -10px;\n width: 75%;\n text-align: center;\n background: white;\n border: 1px solid #252525;\n align-self: center;\n display: none;\n }\n .showReading {\n display: block;\n }\n .author-details-wrapper a {\n color: #252525;\n }\n .objective-prevNext-Wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n .objective-title {\n padding: 0 !important;\n }\n .prevNext-thumbnail {\n display: flex;\n flex-direction: column;\n min-width: 225px;\n max-width: 225px;\n overflow: hidden;\n align-items: center;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-thumbnail img {\n height: 125px;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-summary {\n text-align: center;\n }\n .prevNext-publishDate {\n font-size: 0.75rem;\n margin-top: 0.5rem;\n }\n .prevNext-title {\n padding: 0 !important;\n line-height: 1 !important;\n font-weight: 500;\n }\n .prevNextWrapper {\n display: flex;\n flex-direction: row;\n justify-content: space-evenly;\n flex-wrap: wrap;\n }\n .prevNextWrapper a {\n display: flex;\n flex-direction: column;\n color: #252525;\n align-items: center;\n }\n .prevNextCards {\n max-width: 250px;\n margin-bottom: 1rem;\n }\n @media only screen and (max-width: 568px) {\n .prevNextWrapper {\n flex-direction: column;\n align-items: center;\n }\n .prevNextCards {\n margin-bottom: 2rem;\n }\n }\n @media only screen and (max-width: 568px) {\n }\n '
8488
+ '\n .scrollToTopArrow {\n position: fixed;\n top: 150px;\n display: flex;\n justify-content: center;\n width: ' + contentWidth + 'px;\n opacity: 1;\n z-index: 99999999999;\n visibility: hidden;\n }\n .scrollToTopArrow > svg {\n min-height: 50px;\n min-width: 50px;\n max-height: 50px;\n max-width: 50px;\n }\n .block-content > div p {\n padding: 0;\n }\n\n h2.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.article-title {\n padding: 0;\n font-weight: 500;\n }\n h4.prevNext-title {\n padding: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .article-wrapper {\n border: 1px solid #252525;\n border-radius: 5px;\n padding: 1rem 1rem 0 1rem;\n margin-bottom: 1rem;\n }\n .prevNext-reading {\n margin-top: -10px;\n width: 75%;\n text-align: center;\n background: white;\n border: 1px solid #252525;\n align-self: center;\n display: none;\n }\n .showReading {\n display: block;\n }\n .author-details-wrapper a {\n color: #252525;\n }\n .objective-prevNext-Wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n }\n .objective-title {\n padding: 0 !important;\n }\n .prevNext-thumbnail {\n display: flex;\n flex-direction: column;\n min-width: 225px;\n max-width: 225px;\n overflow: hidden;\n align-items: center;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-thumbnail img {\n height: 125px;\n object-fit: contain;\n border-radius: 15px;\n }\n .prevNext-summary {\n text-align: center;\n }\n .prevNext-publishDate {\n font-size: 0.75rem;\n margin-top: 0.5rem;\n }\n .prevNext-title {\n padding: 0 !important;\n line-height: 1 !important;\n font-weight: 500;\n }\n .prevNextWrapper {\n display: flex;\n flex-direction: row;\n justify-content: space-evenly;\n flex-wrap: wrap;\n }\n .prevNextWrapper a {\n display: flex;\n flex-direction: column;\n color: #252525;\n align-items: center;\n }\n .prevNextCards {\n max-width: 250px;\n margin-bottom: 1rem;\n }\n @media only screen and (max-width: 568px) {\n .prevNextWrapper {\n flex-direction: column;\n align-items: center;\n }\n .prevNextCards {\n margin-bottom: 2rem;\n }\n }\n @media only screen and (max-width: 568px) {\n }\n '
8465
8489
  )
8466
8490
  )
8467
8491
  );
@@ -8815,7 +8839,8 @@ var getSerializers = function getSerializers() {
8815
8839
  contextualADFlag = _props$2 === undefined ? false : _props$2,
8816
8840
  articleId = props[9],
8817
8841
  Ads = props[10],
8818
- targeting = props[11];
8842
+ targeting = props[11],
8843
+ article = props[12];
8819
8844
 
8820
8845
  return {
8821
8846
  types: {
@@ -8837,7 +8862,7 @@ var getSerializers = function getSerializers() {
8837
8862
  articleSeries: function articleSeries(_ref3) {
8838
8863
  var node = _ref3.node;
8839
8864
 
8840
- return React__default.createElement(ArticleSeries, { nodes: node, accountIDs: videoAccountIDs || {}, client: client, getSerializers: getSerializers.apply(undefined, props), Ads: Ads || null });
8865
+ return React__default.createElement(ArticleSeries, { nodes: node, accountIDs: videoAccountIDs || {}, pageview: pageview, client: client, getSerializers: getSerializers.apply(undefined, props), Ads: Ads || null, rootArticle: article || null });
8841
8866
  },
8842
8867
  figure: function figure(_ref4) {
8843
8868
  var node = _ref4.node;
package/dist/esm/index.js CHANGED
@@ -79,7 +79,7 @@ import 'react-bootstrap/Form';
79
79
  import './index-d2f90501.js';
80
80
  import './js.cookie-6874175c.js';
81
81
  export { default as CMEDeck } from './CMEDeck.js';
82
- export { g as getSerializers } from './index-74d46cc5.js';
82
+ export { g as getSerializers } from './index-754010eb.js';
83
83
  import './util-7700fc59.js';
84
84
  import './brightcove-react-player-loader.es-83f53e4e.js';
85
85
  import 'react-bootstrap/Pagination';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mjhls/mjh-framework",
3
- "version": "1.0.694",
3
+ "version": "1.0.695",
4
4
  "description": "Foundation Framework",
5
5
  "author": "mjh-framework",
6
6
  "license": "MIT",