@mjhls/mjh-framework 1.0.713 → 1.0.714
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 +1 -1
- package/dist/cjs/AdSlotsProvider.js +112 -7
- package/dist/esm/AdSlotsProvider.js +114 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# mjh-framework v. 1.0.
|
|
1
|
+
# mjh-framework v. 1.0.714
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/mjh-framework) [](https://standardjs.com)
|
|
4
4
|
|
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var asyncToGenerator = require('./asyncToGenerator-2edcb6ad.js');
|
|
4
|
+
var toConsumableArray = require('./toConsumableArray-cf0865fc.js');
|
|
3
5
|
var React = require('react');
|
|
4
6
|
var index = require('./index-5ad2b070.js');
|
|
5
7
|
var main = require('./main-dc082238.js');
|
|
6
8
|
require('./_commonjsHelpers-06173234.js');
|
|
9
|
+
require('./es6.string.iterator-20d42c53.js');
|
|
10
|
+
require('./_to-object-821a2927.js');
|
|
11
|
+
require('./web.dom.iterable-4480325a.js');
|
|
12
|
+
require('./_library-dd23b178.js');
|
|
13
|
+
require('./core.get-iterator-method-b4615fd3.js');
|
|
14
|
+
require('./_set-species-a8cfdb84.js');
|
|
15
|
+
require('./_iter-detect-2613ffa1.js');
|
|
7
16
|
require('prop-types');
|
|
8
17
|
|
|
9
18
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
19
|
|
|
11
20
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
12
21
|
|
|
22
|
+
var _this = undefined;
|
|
23
|
+
|
|
13
24
|
var AdSlotsProvider = function AdSlotsProvider(_ref) {
|
|
14
25
|
var children = _ref.children,
|
|
15
26
|
networkID = _ref.networkID,
|
|
@@ -18,18 +29,112 @@ var AdSlotsProvider = function AdSlotsProvider(_ref) {
|
|
|
18
29
|
_ref$singleRequest = _ref.singleRequest,
|
|
19
30
|
singleRequest = _ref$singleRequest === undefined ? true : _ref$singleRequest,
|
|
20
31
|
_ref$autoRefresh = _ref.autoRefresh,
|
|
21
|
-
autoRefresh = _ref$autoRefresh === undefined ? false : _ref$autoRefresh
|
|
32
|
+
autoRefresh = _ref$autoRefresh === undefined ? false : _ref$autoRefresh,
|
|
33
|
+
_ref$refreshADs = _ref.refreshADs,
|
|
34
|
+
refreshADs = _ref$refreshADs === undefined ? {} : _ref$refreshADs,
|
|
35
|
+
_ref$refreshInterval = _ref.refreshInterval,
|
|
36
|
+
refreshInterval = _ref$refreshInterval === undefined ? 60 : _ref$refreshInterval;
|
|
22
37
|
|
|
23
38
|
React.useEffect(function () {
|
|
24
|
-
// Refresh ADs after every one minute
|
|
39
|
+
// Refresh ADs after every one minute if user didn't scroll.
|
|
40
|
+
// refreshInterval accepts time in seconds and default is 60 seconds
|
|
41
|
+
var generateAdsToRefresh = function () {
|
|
42
|
+
var _ref2 = asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee(ads) {
|
|
43
|
+
var googletag, slots, domAds, adsToRefresh;
|
|
44
|
+
return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
|
|
45
|
+
while (1) {
|
|
46
|
+
switch (_context.prev = _context.next) {
|
|
47
|
+
case 0:
|
|
48
|
+
_context.next = 2;
|
|
49
|
+
return index.lib_3.getGoogletag();
|
|
50
|
+
|
|
51
|
+
case 2:
|
|
52
|
+
googletag = _context.sent;
|
|
53
|
+
|
|
54
|
+
if (!(googletag && googletag.pubadsReady)) {
|
|
55
|
+
_context.next = 8;
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
slots = googletag.pubads().getSlots();
|
|
60
|
+
domAds = slots.map(function (slot) {
|
|
61
|
+
return slot.getSlotId().getDomId();
|
|
62
|
+
});
|
|
63
|
+
adsToRefresh = domAds.reduce(function (acc, item) {
|
|
64
|
+
ads.forEach(function (ad) {
|
|
65
|
+
if (item.includes(ad)) {
|
|
66
|
+
acc = [].concat(toConsumableArray._toConsumableArray(acc), [item]);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
return acc;
|
|
70
|
+
}, []);
|
|
71
|
+
return _context.abrupt('return', adsToRefresh);
|
|
72
|
+
|
|
73
|
+
case 8:
|
|
74
|
+
return _context.abrupt('return', ads);
|
|
75
|
+
|
|
76
|
+
case 9:
|
|
77
|
+
case 'end':
|
|
78
|
+
return _context.stop();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}, _callee, _this);
|
|
82
|
+
}));
|
|
83
|
+
|
|
84
|
+
return function generateAdsToRefresh(_x) {
|
|
85
|
+
return _ref2.apply(this, arguments);
|
|
86
|
+
};
|
|
87
|
+
}();
|
|
25
88
|
var isScrolling = void 0;
|
|
26
89
|
var refreshADsAfterInterval = function refreshADsAfterInterval() {
|
|
27
|
-
isScrolling = setInterval(function () {
|
|
28
|
-
|
|
29
|
-
|
|
90
|
+
isScrolling = setInterval(asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee2() {
|
|
91
|
+
var _refreshADs$mobileAds, mobileAds, _refreshADs$desktopAd, desktopAds, ads;
|
|
92
|
+
|
|
93
|
+
return asyncToGenerator.regenerator.wrap(function _callee2$(_context2) {
|
|
94
|
+
while (1) {
|
|
95
|
+
switch (_context2.prev = _context2.next) {
|
|
96
|
+
case 0:
|
|
97
|
+
_refreshADs$mobileAds = refreshADs.mobileAds, mobileAds = _refreshADs$mobileAds === undefined ? ['leaderboard-ad'] : _refreshADs$mobileAds, _refreshADs$desktopAd = refreshADs.desktopAds, desktopAds = _refreshADs$desktopAd === undefined ? [] : _refreshADs$desktopAd;
|
|
98
|
+
ads = [];
|
|
99
|
+
|
|
100
|
+
if (!main.main_40) {
|
|
101
|
+
_context2.next = 8;
|
|
102
|
+
break;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
_context2.next = 5;
|
|
106
|
+
return generateAdsToRefresh(mobileAds);
|
|
107
|
+
|
|
108
|
+
case 5:
|
|
109
|
+
ads = _context2.sent;
|
|
110
|
+
_context2.next = 12;
|
|
111
|
+
break;
|
|
112
|
+
|
|
113
|
+
case 8:
|
|
114
|
+
if (!main.main_22) {
|
|
115
|
+
_context2.next = 12;
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
_context2.next = 11;
|
|
120
|
+
return generateAdsToRefresh(desktopAds);
|
|
121
|
+
|
|
122
|
+
case 11:
|
|
123
|
+
ads = _context2.sent;
|
|
124
|
+
|
|
125
|
+
case 12:
|
|
126
|
+
index.lib_3.refresh.apply(index.lib_3, toConsumableArray._toConsumableArray(ads));
|
|
127
|
+
|
|
128
|
+
case 13:
|
|
129
|
+
case 'end':
|
|
130
|
+
return _context2.stop();
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}, _callee2, _this);
|
|
134
|
+
})), parseInt(refreshInterval) * 1000);
|
|
30
135
|
};
|
|
31
|
-
autoRefresh &&
|
|
32
|
-
autoRefresh &&
|
|
136
|
+
autoRefresh && refreshADsAfterInterval();
|
|
137
|
+
autoRefresh && window.addEventListener('scroll', function () {
|
|
33
138
|
clearInterval(isScrolling);
|
|
34
139
|
refreshADsAfterInterval();
|
|
35
140
|
}, false);
|
|
@@ -1,9 +1,20 @@
|
|
|
1
|
+
import { a as _asyncToGenerator, r as regenerator } from './asyncToGenerator-acd1cc47.js';
|
|
2
|
+
import { _ as _toConsumableArray } from './toConsumableArray-5212fee7.js';
|
|
1
3
|
import React, { useEffect } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import { e as main_22 } from './main-1450d277.js';
|
|
4
|
+
import { l as lib_3, b as lib_1 } from './index-669ff425.js';
|
|
5
|
+
import { e as main_22, m as main_40 } from './main-1450d277.js';
|
|
4
6
|
import './_commonjsHelpers-0c4b6f40.js';
|
|
7
|
+
import './es6.string.iterator-b24a54f2.js';
|
|
8
|
+
import './_to-object-9bef3b62.js';
|
|
9
|
+
import './web.dom.iterable-ca37144a.js';
|
|
10
|
+
import './_library-528f1934.js';
|
|
11
|
+
import './core.get-iterator-method-1b116089.js';
|
|
12
|
+
import './_set-species-0b056cff.js';
|
|
13
|
+
import './_iter-detect-d4d262ee.js';
|
|
5
14
|
import 'prop-types';
|
|
6
15
|
|
|
16
|
+
var _this = undefined;
|
|
17
|
+
|
|
7
18
|
var AdSlotsProvider = function AdSlotsProvider(_ref) {
|
|
8
19
|
var children = _ref.children,
|
|
9
20
|
networkID = _ref.networkID,
|
|
@@ -12,18 +23,112 @@ var AdSlotsProvider = function AdSlotsProvider(_ref) {
|
|
|
12
23
|
_ref$singleRequest = _ref.singleRequest,
|
|
13
24
|
singleRequest = _ref$singleRequest === undefined ? true : _ref$singleRequest,
|
|
14
25
|
_ref$autoRefresh = _ref.autoRefresh,
|
|
15
|
-
autoRefresh = _ref$autoRefresh === undefined ? false : _ref$autoRefresh
|
|
26
|
+
autoRefresh = _ref$autoRefresh === undefined ? false : _ref$autoRefresh,
|
|
27
|
+
_ref$refreshADs = _ref.refreshADs,
|
|
28
|
+
refreshADs = _ref$refreshADs === undefined ? {} : _ref$refreshADs,
|
|
29
|
+
_ref$refreshInterval = _ref.refreshInterval,
|
|
30
|
+
refreshInterval = _ref$refreshInterval === undefined ? 60 : _ref$refreshInterval;
|
|
16
31
|
|
|
17
32
|
useEffect(function () {
|
|
18
|
-
// Refresh ADs after every one minute
|
|
33
|
+
// Refresh ADs after every one minute if user didn't scroll.
|
|
34
|
+
// refreshInterval accepts time in seconds and default is 60 seconds
|
|
35
|
+
var generateAdsToRefresh = function () {
|
|
36
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(ads) {
|
|
37
|
+
var googletag, slots, domAds, adsToRefresh;
|
|
38
|
+
return regenerator.wrap(function _callee$(_context) {
|
|
39
|
+
while (1) {
|
|
40
|
+
switch (_context.prev = _context.next) {
|
|
41
|
+
case 0:
|
|
42
|
+
_context.next = 2;
|
|
43
|
+
return lib_3.getGoogletag();
|
|
44
|
+
|
|
45
|
+
case 2:
|
|
46
|
+
googletag = _context.sent;
|
|
47
|
+
|
|
48
|
+
if (!(googletag && googletag.pubadsReady)) {
|
|
49
|
+
_context.next = 8;
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
slots = googletag.pubads().getSlots();
|
|
54
|
+
domAds = slots.map(function (slot) {
|
|
55
|
+
return slot.getSlotId().getDomId();
|
|
56
|
+
});
|
|
57
|
+
adsToRefresh = domAds.reduce(function (acc, item) {
|
|
58
|
+
ads.forEach(function (ad) {
|
|
59
|
+
if (item.includes(ad)) {
|
|
60
|
+
acc = [].concat(_toConsumableArray(acc), [item]);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
return acc;
|
|
64
|
+
}, []);
|
|
65
|
+
return _context.abrupt('return', adsToRefresh);
|
|
66
|
+
|
|
67
|
+
case 8:
|
|
68
|
+
return _context.abrupt('return', ads);
|
|
69
|
+
|
|
70
|
+
case 9:
|
|
71
|
+
case 'end':
|
|
72
|
+
return _context.stop();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}, _callee, _this);
|
|
76
|
+
}));
|
|
77
|
+
|
|
78
|
+
return function generateAdsToRefresh(_x) {
|
|
79
|
+
return _ref2.apply(this, arguments);
|
|
80
|
+
};
|
|
81
|
+
}();
|
|
19
82
|
var isScrolling = void 0;
|
|
20
83
|
var refreshADsAfterInterval = function refreshADsAfterInterval() {
|
|
21
|
-
isScrolling = setInterval(function () {
|
|
22
|
-
|
|
23
|
-
|
|
84
|
+
isScrolling = setInterval(_asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee2() {
|
|
85
|
+
var _refreshADs$mobileAds, mobileAds, _refreshADs$desktopAd, desktopAds, ads;
|
|
86
|
+
|
|
87
|
+
return regenerator.wrap(function _callee2$(_context2) {
|
|
88
|
+
while (1) {
|
|
89
|
+
switch (_context2.prev = _context2.next) {
|
|
90
|
+
case 0:
|
|
91
|
+
_refreshADs$mobileAds = refreshADs.mobileAds, mobileAds = _refreshADs$mobileAds === undefined ? ['leaderboard-ad'] : _refreshADs$mobileAds, _refreshADs$desktopAd = refreshADs.desktopAds, desktopAds = _refreshADs$desktopAd === undefined ? [] : _refreshADs$desktopAd;
|
|
92
|
+
ads = [];
|
|
93
|
+
|
|
94
|
+
if (!main_40) {
|
|
95
|
+
_context2.next = 8;
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
_context2.next = 5;
|
|
100
|
+
return generateAdsToRefresh(mobileAds);
|
|
101
|
+
|
|
102
|
+
case 5:
|
|
103
|
+
ads = _context2.sent;
|
|
104
|
+
_context2.next = 12;
|
|
105
|
+
break;
|
|
106
|
+
|
|
107
|
+
case 8:
|
|
108
|
+
if (!main_22) {
|
|
109
|
+
_context2.next = 12;
|
|
110
|
+
break;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
_context2.next = 11;
|
|
114
|
+
return generateAdsToRefresh(desktopAds);
|
|
115
|
+
|
|
116
|
+
case 11:
|
|
117
|
+
ads = _context2.sent;
|
|
118
|
+
|
|
119
|
+
case 12:
|
|
120
|
+
lib_3.refresh.apply(lib_3, _toConsumableArray(ads));
|
|
121
|
+
|
|
122
|
+
case 13:
|
|
123
|
+
case 'end':
|
|
124
|
+
return _context2.stop();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}, _callee2, _this);
|
|
128
|
+
})), parseInt(refreshInterval) * 1000);
|
|
24
129
|
};
|
|
25
|
-
autoRefresh &&
|
|
26
|
-
autoRefresh &&
|
|
130
|
+
autoRefresh && refreshADsAfterInterval();
|
|
131
|
+
autoRefresh && window.addEventListener('scroll', function () {
|
|
27
132
|
clearInterval(isScrolling);
|
|
28
133
|
refreshADsAfterInterval();
|
|
29
134
|
}, false);
|