@mjhls/mjh-framework 1.0.436 → 1.0.438

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.436
2
+ # mjh-framework v. 1.0.438
3
3
 
4
4
  > Foundation Framework
5
5
 
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
+
5
+ var React = require('react');
6
+ var React__default = _interopDefault(React);
7
+ require('react-bootstrap/Card');
8
+ var AdSlot = require('./AdSlot-4d22aad4.js');
9
+
10
+ var ADlgInfeed = function ADlgInfeed(props) {
11
+ var className = props.className,
12
+ slotId = props.slotId,
13
+ adUnit = props.adUnit,
14
+ _props$targeting = props.targeting,
15
+ targeting = _props$targeting === undefined ? {} : _props$targeting,
16
+ networkID = props.networkID,
17
+ sizes = props.sizes,
18
+ index = props.index;
19
+
20
+ var collapseAd = function collapseAd() {
21
+ var parent = document.getElementById('lg-infeed-wrapper-' + (index + 1));
22
+ parent.style.height = '0%';
23
+ parent.style.width = '0%';
24
+ parent.style.display = 'none';
25
+ };
26
+
27
+ var checkIsAdFound = function checkIsAdFound(isFound) {
28
+ if (isFound) {
29
+ var parent = document.getElementById('lg-infeed-wrapper-' + (index + 1));
30
+ parent.style.display = 'flex';
31
+ } else {
32
+ collapseAd();
33
+ }
34
+ };
35
+
36
+ return React__default.createElement(
37
+ 'div',
38
+ { id: 'lg-infeed-wrapper-' + (index + 1), className: 'lg-infeed-wrapper', style: { display: 'none', flex: '1 0 auto' } },
39
+ React__default.createElement(AdSlot.DFPAdSlot, { className: className, networkID: networkID, adUnit: adUnit, slotId: slotId, targeting: targeting, sizes: sizes, checkIsAdFound: checkIsAdFound, refreshFlag: false }),
40
+ React__default.createElement(
41
+ 'style',
42
+ { jsx: 'true' },
43
+ '\n .lg-infeed-wrapper {\n flex-direction: row;\n margin-bottom: 1.25rem;\n padding-bottom: 1.25rem;\n border-bottom: 1px solid rgb(221, 221, 221);\n }\n '
44
+ )
45
+ );
46
+ };
47
+
48
+ exports.ADlgInfeed = ADlgInfeed;
@@ -22,6 +22,8 @@ var index$1 = require('./index-fa0fb52c.js');
22
22
  var main = require('./main-bc4db521.js');
23
23
  var entities = require('./entities-310b46ee.js');
24
24
  var ADInfeed = require('./ADInfeed-494f5e6b.js');
25
+ var lodash = require('./lodash-fc2922d0.js');
26
+ var ADlgInfeed = require('./ADlgInfeed-be0e0bde.js');
25
27
  var get$1 = require('./get-5aa7468c.js');
26
28
  var AuthorComponent = require('./AuthorComponent-4706f297.js');
27
29
 
@@ -71,7 +73,9 @@ var GridContent = function (_React$Component) {
71
73
  total_pages: null,
72
74
  scrolling: true,
73
75
  query: _this.query,
74
- currentPage: _this.props.currentPage || 1
76
+ currentPage: _this.props.currentPage || 1,
77
+ lgInfeedAd: _this.props.lgInfeedAd ? _this.props.lgInfeedAd : false,
78
+ desktopView: false
75
79
  }, _this.loadMore = debounce.debounce_1(function () {
76
80
  _this.setState(function (state) {
77
81
  var page = state.page,
@@ -86,6 +90,13 @@ var GridContent = function (_React$Component) {
86
90
  };
87
91
  }, _this.loadData);
88
92
  }, 0), _this.componentDidMount = function () {
93
+ if (_this.state.lgInfeedAd && window && window.innerWidth >= 1200) {
94
+ _this.setState(function (state) {
95
+ return _extends$2._extends({}, state, {
96
+ desktopView: true
97
+ });
98
+ });
99
+ }
89
100
  document.addEventListener('scroll', _this.trackScrolling);
90
101
  }, _this.componentWillUnmount = function () {
91
102
  document.removeEventListener('scroll', _this.trackScrolling);
@@ -246,7 +257,7 @@ var GridContent = function (_React$Component) {
246
257
 
247
258
  inherits$2._createClass(GridContent, [{
248
259
  key: 'cardLoader',
249
- value: function cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight) {
260
+ value: function cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight, desktopView) {
250
261
  var _this2 = this;
251
262
 
252
263
  var lgVar = Math.floor(12 / columns);
@@ -336,32 +347,74 @@ var GridContent = function (_React$Component) {
336
347
  return [].concat(toConsumableArray._toConsumableArray(arr.slice(0, index)), [newElement], toConsumableArray._toConsumableArray(arr.slice(index)));
337
348
  };
338
349
  var posts = [];
339
- if (showBI) {
340
- var data = this.state.data;
341
- posts = data;
342
- var pos = 3;
343
- for (var i = 1; pos < posts.length; i++) {
344
- var inFeedAd = {
350
+ if (brandInsight && (desktopView || showBI)) {
351
+ var firstThree = this.state.data.slice(0, 3);
352
+ var data = this.state.data.slice(3);
353
+
354
+ if (desktopView) {
355
+ var lgInFeedAd = {
356
+ _type: 'lg-infeed',
345
357
  adUnit: brandInsight.adUnit,
346
- className: brandInsight.className,
358
+ className: 'lg-infeed',
347
359
  networkID: brandInsight.networkID,
348
- sizes: brandInsight.sizes,
349
- slotId: brandInsight.slotId + '_' + i,
360
+ sizes: [728, 90],
350
361
  targeting: {
351
- pos: 'article' + i,
352
362
  content_placement: brandInsight.targeting.content_placement,
353
363
  document_url: brandInsight.targeting.document_url
354
- },
355
- _type: 'BrandInsight'
364
+ }
356
365
  };
366
+ var chunks = lodash.lodash.chunk(data, 6).map(function (chunk) {
367
+ var set = lodash.lodash.chunk(chunk, 2);
368
+ for (var i = 0; i < set.length; i++) {
369
+ if (i !== set.length - 1) {
370
+ set[i].push(lgInFeedAd);
371
+ }
372
+ }
373
+ return lodash.lodash.flattenDeep(set);
374
+ });
357
375
 
358
- posts = insert(posts, pos, inFeedAd);
359
- pos += brandInsight.interval + 1;
376
+ posts = lodash.lodash.flatten(chunks);
360
377
  }
378
+
379
+ if (showBI) {
380
+ if (desktopView) {
381
+ brandInsight.interval = 8;
382
+ } else {
383
+ brandInsight.interval = 5;
384
+ posts = data;
385
+ }
386
+
387
+ var pos = 0;
388
+ for (var i = 1; pos < posts.length; i++) {
389
+ var inFeedAd = {
390
+ adUnit: brandInsight.adUnit,
391
+ className: brandInsight.className,
392
+ networkID: brandInsight.networkID,
393
+ sizes: brandInsight.sizes,
394
+ slotId: brandInsight.slotId + '_' + i,
395
+ targeting: {
396
+ pos: 'article' + i,
397
+ content_placement: brandInsight.targeting.content_placement,
398
+ document_url: brandInsight.targeting.document_url
399
+ },
400
+ _type: 'BrandInsight'
401
+ };
402
+
403
+ posts = insert(posts, pos, inFeedAd);
404
+ pos += brandInsight.interval + 1;
405
+ }
406
+ }
407
+ posts = firstThree.concat(posts);
408
+ posts = posts.map(function (ele, i) {
409
+ if (ele._type === 'lg-infeed') {
410
+ return _extends$2._extends({}, ele, { slotId: 'lg-infeed_' + i, targeting: _extends$2._extends({}, ele.targeting, { pos: 'lg-infeed_' + i }) });
411
+ } else {
412
+ return ele;
413
+ }
414
+ });
361
415
  } else {
362
416
  posts = this.state.data;
363
417
  }
364
-
365
418
  var itemsPerPage = this.props.params && this.props.params.itemsPerPage ? this.props.params.itemsPerPage : 10;
366
419
  var heroContent = this.props.heroContent ? this.props.heroContent : 0;
367
420
  var featureCount = 0;
@@ -503,10 +556,12 @@ var GridContent = function (_React$Component) {
503
556
  main.main_39 && _this2.props.rightItems && (index + 1) % numberOfItemsBeforeAd === 0 && _this2.renderMobileAd(index, numberOfItemsBeforeAd)
504
557
  );
505
558
  }
559
+ } else if (row._type === 'lg-infeed' && row.adUnit) {
560
+ return React__default.createElement(ADlgInfeed.ADlgInfeed, _extends$2._extends({ index: index }, row));
506
561
  } else if (row._type === 'BrandInsight' && row.adUnit) {
507
562
  return React__default.createElement(ADInfeed.ADInfeed, { index: index, infeedAd: row });
508
563
  }
509
- if (index + 1 > heroContent + featureCount) {
564
+ if (index + 1 > heroContent + featureCount && row._type && !['lg-infeed', 'brandInsightAd'].includes(row._type)) {
510
565
  return React__default.createElement(
511
566
  React__default.Fragment,
512
567
  { key: itemCounter },
@@ -610,7 +665,7 @@ var GridContent = function (_React$Component) {
610
665
  React__default.createElement(
611
666
  Container,
612
667
  null,
613
- this.cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight)
668
+ this.cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight, this.state.desktopView)
614
669
  )
615
670
  ) : React__default.createElement(
616
671
  React__default.Fragment,
@@ -618,7 +673,7 @@ var GridContent = function (_React$Component) {
618
673
  React__default.createElement(
619
674
  Container,
620
675
  null,
621
- this.cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight)
676
+ this.cardLoader(page, columns, variant, showVideo, VideoPlayer, showBI, brandInsight, this.state.desktopView)
622
677
  ),
623
678
  React__default.createElement(
624
679
  'div',
@@ -30,8 +30,10 @@ require('./slicedToArray-419d467a.js');
30
30
  require('./AdSlot-4d22aad4.js');
31
31
  require('./promise-0a493c7a.js');
32
32
  require('./ADInfeed-494f5e6b.js');
33
+ require('./lodash-fc2922d0.js');
34
+ require('./ADlgInfeed-be0e0bde.js');
33
35
  require('./get-5aa7468c.js');
34
- var GridContent = require('./GridContent-f401c40f.js');
36
+ var GridContent = require('./GridContent-068c0b1c.js');
35
37
  require('./AuthorComponent-4706f297.js');
36
38
 
37
39
 
@@ -2087,7 +2087,6 @@ var AD728x90 = function AD728x90(_ref) {
2087
2087
  _ref$fixedPos = _ref.fixedPos,
2088
2088
  fixedPos = _ref$fixedPos === undefined ? '60px' : _ref$fixedPos;
2089
2089
 
2090
-
2091
2090
  var mobileView = false;
2092
2091
  if (main.main_39) {
2093
2092
  pos = 'top-mobile';