@mjhls/mjh-framework 1.0.203 → 1.0.205

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.
Files changed (74) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AD-e2479b7c.js +31 -0
  3. package/dist/cjs/DeckContent.js +430 -0
  4. package/dist/cjs/DeckQueue.js +366 -0
  5. package/dist/cjs/Dfp-d94f7f73.js +97 -0
  6. package/dist/cjs/GridContent.js +613 -0
  7. package/dist/cjs/GroupDeck.js +156 -0
  8. package/dist/cjs/IssueContentDeck.js +81 -0
  9. package/dist/cjs/IssueDeck.js +144 -0
  10. package/dist/cjs/MasterDeck.js +340 -0
  11. package/dist/cjs/Normal-7dd8c339.js +2374 -0
  12. package/dist/cjs/PublicationDeck.js +81 -0
  13. package/dist/cjs/QueueDeckExpanded.js +559 -0
  14. package/dist/cjs/TaxonomyCard-7b5b4298.js +1045 -0
  15. package/dist/cjs/TaxonomyCard.js +18 -0
  16. package/dist/cjs/TemplateNormal.js +29 -0
  17. package/dist/cjs/ThumbnailCard.js +58 -0
  18. package/dist/cjs/Ustream-0d3dd953.js +122 -0
  19. package/dist/cjs/Ustream.js +10 -0
  20. package/dist/cjs/VideoSeriesListing.js +248 -0
  21. package/dist/cjs/YoutubeGroup-f7707ceb.js +228 -0
  22. package/dist/cjs/YoutubeGroup.js +13 -0
  23. package/dist/cjs/_babelHelpers-f321c258.js +119 -0
  24. package/dist/cjs/_commonjsHelpers-3fc1f64e.js +20 -0
  25. package/dist/cjs/debounce-286eb3fb.js +279 -0
  26. package/dist/cjs/entities-3e0b4a16.js +506 -0
  27. package/dist/cjs/get-06aac51b.js +992 -0
  28. package/dist/cjs/index-0d0efcfa.js +610 -0
  29. package/dist/cjs/index-a4c53ff4.js +551 -0
  30. package/dist/cjs/index.es-2289df51.js +5028 -0
  31. package/dist/cjs/index.esm-340d3792.js +113 -0
  32. package/dist/cjs/index.js +12044 -0
  33. package/dist/cjs/isSymbol-311eb805.js +209 -0
  34. package/dist/cjs/main-58839f4e.js +858 -0
  35. package/dist/cjs/visibility-sensor-5c5a7302.js +2251 -0
  36. package/dist/esm/AD-1b2a3dd3.js +26 -0
  37. package/dist/esm/DeckContent.js +424 -0
  38. package/dist/esm/DeckQueue.js +360 -0
  39. package/dist/esm/Dfp-ab7941d3.js +92 -0
  40. package/dist/esm/GridContent.js +607 -0
  41. package/dist/esm/GroupDeck.js +151 -0
  42. package/dist/esm/IssueContentDeck.js +76 -0
  43. package/dist/esm/IssueDeck.js +139 -0
  44. package/dist/esm/MasterDeck.js +334 -0
  45. package/dist/esm/Normal-403c5666.js +2354 -0
  46. package/dist/esm/PublicationDeck.js +76 -0
  47. package/dist/esm/QueueDeckExpanded.js +553 -0
  48. package/dist/esm/TaxonomyCard-f9c93953.js +1039 -0
  49. package/dist/esm/TaxonomyCard.js +12 -0
  50. package/dist/esm/TemplateNormal.js +23 -0
  51. package/dist/esm/ThumbnailCard.js +53 -0
  52. package/dist/esm/Ustream-6bb45fe7.js +116 -0
  53. package/dist/esm/Ustream.js +4 -0
  54. package/dist/esm/VideoSeriesListing.js +242 -0
  55. package/dist/esm/YoutubeGroup-06df4923.js +222 -0
  56. package/dist/esm/YoutubeGroup.js +7 -0
  57. package/dist/esm/_babelHelpers-67c05996.js +111 -0
  58. package/dist/esm/_commonjsHelpers-ae1b5db5.js +15 -0
  59. package/dist/esm/debounce-a0242b4a.js +277 -0
  60. package/dist/esm/entities-e85d3a4a.js +503 -0
  61. package/dist/esm/get-b684ff61.js +990 -0
  62. package/dist/esm/index-3c1ee9ab.js +605 -0
  63. package/dist/esm/index-ca4ff5cb.js +548 -0
  64. package/dist/esm/index.es-f369b3e8.js +5022 -0
  65. package/dist/esm/index.esm-536609db.js +103 -0
  66. package/dist/esm/index.js +11991 -0
  67. package/dist/esm/isSymbol-c2b7d05a.js +203 -0
  68. package/dist/esm/main-dea495b7.js +851 -0
  69. package/dist/esm/visibility-sensor-3cfe6713.js +2243 -0
  70. package/package.json +8 -7
  71. package/dist/index.es.js +0 -30213
  72. package/dist/index.es.js.map +0 -1
  73. package/dist/index.js +0 -30271
  74. package/dist/index.js.map +0 -1
@@ -0,0 +1,360 @@
1
+ import React__default from 'react';
2
+ import './_commonjsHelpers-ae1b5db5.js';
3
+ import { V as VisibilitySensor, l as lib_3 } from './visibility-sensor-3cfe6713.js';
4
+ import 'prop-types';
5
+ import Container from 'react-bootstrap/Container';
6
+ import Row from 'react-bootstrap/Row';
7
+ import Col from 'react-bootstrap/Col';
8
+ import Card from 'react-bootstrap/Card';
9
+ import { m as moment, I as InfiniteScroll } from './index.es-f369b3e8.js';
10
+ import 'next/link';
11
+ import { withRouter } from 'next/router';
12
+ import './isSymbol-c2b7d05a.js';
13
+ import { d as debounce_1 } from './debounce-a0242b4a.js';
14
+ import 'react-dom';
15
+ import { i as imageUrlBuilder } from './index-ca4ff5cb.js';
16
+ import { L as LazyLoad } from './index-3c1ee9ab.js';
17
+ import { a as main_36 } from './main-dea495b7.js';
18
+ import { c as clean_html_1 } from './entities-e85d3a4a.js';
19
+ import { i as inherits, c as createClass, a as classCallCheck, p as possibleConstructorReturn, _ as _extends, t as toConsumableArray } from './_babelHelpers-67c05996.js';
20
+ import { g as get_1 } from './get-b684ff61.js';
21
+
22
+ var DeckQueue = function (_React$Component) {
23
+ inherits(DeckQueue, _React$Component);
24
+
25
+ function DeckQueue() {
26
+ var _ref;
27
+
28
+ var _temp, _this, _ret;
29
+
30
+ classCallCheck(this, DeckQueue);
31
+
32
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
33
+ args[_key] = arguments[_key];
34
+ }
35
+
36
+ return _ret = (_temp = (_this = possibleConstructorReturn(this, (_ref = DeckQueue.__proto__ || Object.getPrototypeOf(DeckQueue)).call.apply(_ref, [this].concat(args))), _this), _this.page = _this.props.page, _this.data = _this.props.dataRecord, _this.query = _this.props.query, _this.params = _this.props.params, _this.pointer = _this.props.pointer ? _this.props.pointer : false, _this.pointerArray = _this.props.pointerArray ? _this.props.pointerArray : false, _this.defaultImage = _this.props.defaultImage ? _this.props.defaultImage : '/placeholder.jpg', _this.state = {
37
+ data: _this.data,
38
+ per: _this.params ? _this.params.to : 2,
39
+ page: _this.props.currentPage || 1,
40
+ from: _this.params ? _this.params.from : 0,
41
+ to: _this.params ? _this.params.to : 2,
42
+ total_pages: null,
43
+ scrolling: true,
44
+ query: _this.query,
45
+ currentPage: _this.props.currentPage || 1
46
+ }, _this.loadMore = debounce_1(function () {
47
+ _this.setState(function (state) {
48
+ var page = state.page,
49
+ from = state.from,
50
+ per = state.per,
51
+ to = state.to;
52
+
53
+ return {
54
+ page: page + 1,
55
+ from: from + per,
56
+ to: to + per
57
+ };
58
+ }, _this.loadData);
59
+ }, 0), _this.loadData = function () {
60
+ var _this$state = _this.state,
61
+ from = _this$state.from,
62
+ to = _this$state.to,
63
+ data = _this$state.data,
64
+ query = _this$state.query,
65
+ page = _this$state.page;
66
+ var client = _this.props.client;
67
+
68
+
69
+ var params = _extends({}, _this.params, { from: from, to: to
70
+ // const queryUpdated = query.replace('$from', params.from).replace('$to', params.to)
71
+ });client.fetch(query, params).then(function (dataArr) {
72
+ if (_this.pointer && _this.pointerArray) {
73
+ var pointer = _this.pointer;
74
+ dataArr = dataArr[_this.pointerArray][pointer];
75
+ }
76
+ dataArr = dataArr.map(function (item) {
77
+ return _extends({}, item, {
78
+ pageNumber: page
79
+ });
80
+ });
81
+
82
+ _this.setState(function () {
83
+ if (dataArr.length > 0) {
84
+ return {
85
+ data: [].concat(toConsumableArray(data), toConsumableArray(dataArr)),
86
+ scrolling: true
87
+ };
88
+ } else {
89
+ return {
90
+ scrolling: false
91
+ };
92
+ }
93
+ });
94
+ });
95
+ }, _this.urlFor = function (source) {
96
+ var client = _this.props.client;
97
+
98
+ var builder = imageUrlBuilder(client);
99
+ return builder.image(source).auto('format');
100
+ }, _this.renderCardImage = function (row) {
101
+ if (row.thumbnail && row.thumbnail.asset) {
102
+ var url = _this.urlFor(row.thumbnail);
103
+ if (_this.props.imageHeight) url = url.height(_this.props.imageHeight);
104
+ if (_this.props.imageWidth) url = url.width(_this.props.imageWidth);
105
+ return url.url();
106
+ } else {
107
+ return _this.defaultImage;
108
+ }
109
+ }, _this.changePageNumber = function (pageNumber) {
110
+ var _this$props = _this.props,
111
+ seoPaginate = _this$props.seoPaginate,
112
+ pageview = _this$props.pageview,
113
+ router = _this$props.router;
114
+ var currentPage = _this.state.currentPage;
115
+
116
+ if (seoPaginate) {
117
+ var path = router.asPath;
118
+ var qrIndex = path.indexOf('?');
119
+ var pathname = router.pathname;
120
+ var queryString = '';
121
+
122
+ if (qrIndex > 0) {
123
+ path = path.substring(1, qrIndex);
124
+
125
+ var partialQS = router.asPath.substring(qrIndex + 1);
126
+ var partialQSArr = partialQS.split('&');
127
+
128
+ // exclude page=xxx from query string
129
+ partialQSArr.map(function (item) {
130
+ var itemArr = item.split('=');
131
+ var key = itemArr[0];
132
+ var val = itemArr[1];
133
+
134
+ if (key !== 'page') {
135
+ queryString += (queryString.length === 0 ? '' : '&') + key + '=' + val;
136
+ }
137
+ });
138
+ }
139
+
140
+ if (queryString.length > 0) {
141
+ path += '?' + queryString;
142
+ }
143
+
144
+ pageNumber = parseInt(pageNumber);
145
+
146
+ if (currentPage !== pageNumber) {
147
+ lib_3.refresh();
148
+
149
+ _this.setState({
150
+ currentPage: pageNumber
151
+ }, function () {
152
+ if (path[0] !== '/') {
153
+ path = '/' + path;
154
+ }
155
+
156
+ var newPath = pageNumber === 1 ? '' + path : path + '?page=' + pageNumber;
157
+
158
+ if (pageview) {
159
+ pageview(newPath);
160
+ }
161
+
162
+ router.push(pathname, newPath, {
163
+ shallow: true
164
+ });
165
+ });
166
+ }
167
+ }
168
+ }, _this.renderMobileAd = function (index, numberOfItemsBeforeAd) {
169
+ var rightItems = _this.props.rightItems;
170
+
171
+ var i = ((index + 1) / numberOfItemsBeforeAd - 1) % rightItems.length;
172
+ return React__default.createElement(
173
+ 'div',
174
+ { style: { display: 'flex', flex: '1 0 auto' } },
175
+ rightItems[i].component
176
+ );
177
+ }, _this.renderManualPagination = function () {
178
+ var currentPage = _this.state.currentPage;
179
+
180
+ return React__default.createElement(
181
+ 'div',
182
+ { className: 'd-flex justify-content-between' },
183
+ currentPage && currentPage > 1 && React__default.createElement(
184
+ 'a',
185
+ { href: '?page=' + (currentPage - 1) },
186
+ '<< Previous'
187
+ ),
188
+ React__default.createElement(
189
+ 'a',
190
+ { href: '?page=' + (currentPage + 1) },
191
+ 'Next >>'
192
+ )
193
+ );
194
+ }, _temp), possibleConstructorReturn(_this, _ret);
195
+ }
196
+
197
+ createClass(DeckQueue, [{
198
+ key: 'cardLoader',
199
+ value: function cardLoader(page, columns, variant) {
200
+ var _this2 = this;
201
+
202
+ var mode = variant && variant === 'right' ? 'row-reverse' : 'row';
203
+ var lgVar = Math.floor(12 / columns);
204
+ var numberOfItemsBeforeAd = 6;
205
+
206
+ return React__default.createElement(
207
+ Row,
208
+ null,
209
+ this.state.data && this.state.data.map(function (row, index) {
210
+ var pageNumber = row.pageNumber || _this2.state.page;
211
+ // const thumbnailURL = get(row, 'thumbnail.asset.url', this.props.defaultImage)
212
+
213
+ return React__default.createElement(
214
+ React__default.Fragment,
215
+ { key: index },
216
+ React__default.createElement(
217
+ VisibilitySensor,
218
+ {
219
+ onChange: function onChange(isVisible) {
220
+ isVisible && _this2.changePageNumber(pageNumber);
221
+ } },
222
+ React__default.createElement(
223
+ Col,
224
+ { md: 12, lg: lgVar, style: { display: 'flex', flex: '1 0 auto' } },
225
+ React__default.createElement(
226
+ Card,
227
+ { className: 'queue-card', style: { borderTop: '1px solid #EEE' } },
228
+ React__default.createElement(
229
+ Row,
230
+ { style: { flexDirection: mode } },
231
+ (row.thumbnail && row.thumbnail.asset || _this2.props.defaultImage) && React__default.createElement(
232
+ Col,
233
+ { md: 12, lg: 4 },
234
+ React__default.createElement(
235
+ 'a',
236
+ { href: _this2.page + '/' + get_1(row, 'url.current') },
237
+ React__default.createElement(
238
+ LazyLoad,
239
+ { height: _this2.props.imageHeight },
240
+ React__default.createElement(Card.Img, { variant: 'top', src: _this2.renderCardImage(row), alt: row.thumbnail && row.thumbnail.asset ? row.thumbnail.asset.originalFilename : '' })
241
+ )
242
+ )
243
+ ),
244
+ React__default.createElement(
245
+ Col,
246
+ null,
247
+ React__default.createElement(
248
+ Card.Body,
249
+ { style: { padding: '20px' } },
250
+ row.title && React__default.createElement(
251
+ Card.Title,
252
+ null,
253
+ React__default.createElement(
254
+ 'a',
255
+ { href: _this2.page + '/' + get_1(row, 'url.current') },
256
+ row.title
257
+ )
258
+ ),
259
+ _this2.props.showPublished && row.published && React__default.createElement(
260
+ Card.Subtitle,
261
+ null,
262
+ moment(row.published).format('MMMM DD, YYYY')
263
+ ),
264
+ _this2.props.showRecent && row.recent && row.recent.title && React__default.createElement(
265
+ Card.Subtitle,
266
+ null,
267
+ 'Recent : ',
268
+ React__default.createElement(
269
+ 'a',
270
+ { href: 'view/' + row.recent.url.current },
271
+ row.recent.title
272
+ )
273
+ ),
274
+ row.summary && React__default.createElement(
275
+ Card.Text,
276
+ null,
277
+ React__default.createElement(
278
+ 'a',
279
+ { href: _this2.page + '/' + get_1(row, 'url.current') },
280
+ clean_html_1(row.summary)
281
+ )
282
+ )
283
+ )
284
+ )
285
+ )
286
+ )
287
+ )
288
+ ),
289
+ main_36 && _this2.props.rightItems && (index + 1) % numberOfItemsBeforeAd === 0 && _this2.renderMobileAd(index, numberOfItemsBeforeAd)
290
+ );
291
+ })
292
+ );
293
+ }
294
+ }, {
295
+ key: 'render',
296
+ value: function render() {
297
+ var _this3 = this;
298
+
299
+ var _props = this.props,
300
+ columns = _props.columns,
301
+ variant = _props.variant,
302
+ autoScroll = _props.autoScroll,
303
+ page = _props.page;
304
+
305
+
306
+ return React__default.createElement(
307
+ 'div',
308
+ { className: 'contentDeck' },
309
+ autoScroll ? React__default.createElement(
310
+ InfiniteScroll,
311
+ { dataLength: this.state.data.length, next: this.loadMore, hasMore: this.state.scrolling },
312
+ React__default.createElement(
313
+ Container,
314
+ null,
315
+ this.cardLoader(page, columns, variant)
316
+ )
317
+ ) : React__default.createElement(
318
+ React__default.Fragment,
319
+ null,
320
+ React__default.createElement(
321
+ Container,
322
+ null,
323
+ this.cardLoader(page, columns, variant)
324
+ ),
325
+ React__default.createElement(
326
+ 'div',
327
+ { style: { padding: '0px 10px' } },
328
+ this.state.scrolling ? React__default.createElement(
329
+ 'button',
330
+ {
331
+ style: { margin: 'auto', width: '100%' },
332
+ onClick: function onClick(e) {
333
+ _this3.loadMore();
334
+ } },
335
+ 'Load More'
336
+ ) : React__default.createElement(
337
+ 'p',
338
+ { style: { textAlign: 'center' } },
339
+ React__default.createElement(
340
+ 'b',
341
+ null,
342
+ 'End of data'
343
+ )
344
+ )
345
+ ),
346
+ React__default.createElement(
347
+ 'noscript',
348
+ null,
349
+ this.renderManualPagination()
350
+ )
351
+ )
352
+ );
353
+ }
354
+ }]);
355
+ return DeckQueue;
356
+ }(React__default.Component);
357
+
358
+ var Queue = withRouter(DeckQueue);
359
+
360
+ export default Queue;
@@ -0,0 +1,92 @@
1
+ import React__default, { useState } from 'react';
2
+ import './_commonjsHelpers-ae1b5db5.js';
3
+ import { a as lib_1, b as lib_2, V as VisibilitySensor } from './visibility-sensor-3cfe6713.js';
4
+ import PropTypes from 'prop-types';
5
+ import './isSymbol-c2b7d05a.js';
6
+ import { d as debounce_1 } from './debounce-a0242b4a.js';
7
+ import 'react-dom';
8
+ import { s as slicedToArray } from './_babelHelpers-67c05996.js';
9
+
10
+ var AD = function AD(_ref) {
11
+ var networkID = _ref.networkID,
12
+ adUnit = _ref.adUnit,
13
+ sizeMapping = _ref.sizeMapping,
14
+ className = _ref.className,
15
+ slotId = _ref.slotId,
16
+ sizes = _ref.sizes,
17
+ minInViewPercent = _ref.minInViewPercent,
18
+ _ref$targeting = _ref.targeting,
19
+ targeting = _ref$targeting === undefined ? {} : _ref$targeting;
20
+
21
+ var _useState = useState(false),
22
+ _useState2 = slicedToArray(_useState, 2),
23
+ adRendered = _useState2[0],
24
+ setAdRendered = _useState2[1];
25
+
26
+ var _useState3 = useState(false),
27
+ _useState4 = slicedToArray(_useState3, 2),
28
+ showPlaceholder = _useState4[0],
29
+ setShowPlaceholder = _useState4[1];
30
+
31
+ var handleVisibilityChange = debounce_1(function (_ref2) {
32
+ var event = _ref2.event;
33
+
34
+ if (event.inViewPercentage <= 0) {
35
+ setShowPlaceholder(true);
36
+ }
37
+ }, 500);
38
+
39
+ return React__default.createElement(
40
+ React__default.Fragment,
41
+ null,
42
+ !showPlaceholder && React__default.createElement(
43
+ lib_1,
44
+ {
45
+ dfpNetworkId: networkID,
46
+ targetingArguments: targeting,
47
+ sizeMapping: sizeMapping,
48
+ lazyLoad: { fetchMarginPercent: 500, renderMarginPercent: 200, mobileScaling: 2.0 } },
49
+ React__default.createElement(
50
+ 'div',
51
+ { className: className },
52
+ React__default.createElement(lib_2, {
53
+ slotId: slotId,
54
+ sizes: sizes,
55
+ adUnit: adUnit,
56
+ sizeMapping: sizeMapping,
57
+ onSlotRender: function onSlotRender(eventData) {
58
+ setAdRendered(true);
59
+ },
60
+ onSlotVisibilityChanged: handleVisibilityChange
61
+ })
62
+ )
63
+ ),
64
+ adRendered && showPlaceholder && React__default.createElement(
65
+ VisibilitySensor,
66
+ {
67
+ partialVisibility: true,
68
+ onChange: function onChange(isVisible) {
69
+ if (isVisible) {
70
+ setShowPlaceholder(false);
71
+ }
72
+ } },
73
+ React__default.createElement(
74
+ 'div',
75
+ { style: { height: 'auto' } },
76
+ '\xA0'
77
+ )
78
+ )
79
+ );
80
+ };
81
+
82
+ AD.propTypes = {
83
+ networkID: PropTypes.string.isRequired,
84
+ adUnit: PropTypes.string.isRequired,
85
+ slotId: PropTypes.string,
86
+ className: PropTypes.string,
87
+ sizeMapping: PropTypes.array,
88
+ sizes: PropTypes.array,
89
+ minInViewPercent: PropTypes.number
90
+ };
91
+
92
+ export default AD;