@mjhls/mjh-framework 1.0.885 → 1.0.886

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 (32) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/ContentCardPaginated.js +414 -0
  3. package/dist/cjs/DeckQueuePaginated.js +345 -0
  4. package/dist/cjs/GridContent.js +44 -157
  5. package/dist/cjs/GridContentPaginated.js +704 -0
  6. package/dist/cjs/ImageSlider-b96720eb.js +2813 -0
  7. package/dist/cjs/MasterDeckPaginated.js +446 -0
  8. package/dist/cjs/MediaSeriesCard-8b4efd28.js +9505 -0
  9. package/dist/cjs/MediaSeriesLanding.js +20 -9502
  10. package/dist/cjs/MediaSeriesLandingPaginated.js +524 -0
  11. package/dist/cjs/Pagination-8f2038bf.js +53 -0
  12. package/dist/cjs/PartnerDetailListing.js +12 -2807
  13. package/dist/cjs/PartnerDetailListingPaginated.js +314 -0
  14. package/dist/cjs/PublicationFeature-5ccf9b13.js +130 -0
  15. package/dist/cjs/QueueDeckExpandedPaginated.js +1378 -0
  16. package/dist/cjs/index.js +2 -0
  17. package/dist/esm/ContentCardPaginated.js +403 -0
  18. package/dist/esm/DeckQueuePaginated.js +334 -0
  19. package/dist/esm/GridContent.js +2 -114
  20. package/dist/esm/GridContentPaginated.js +693 -0
  21. package/dist/esm/ImageSlider-de7846ea.js +2804 -0
  22. package/dist/esm/MasterDeckPaginated.js +438 -0
  23. package/dist/esm/MediaSeriesCard-51ebf1c0.js +9495 -0
  24. package/dist/esm/MediaSeriesLanding.js +16 -9496
  25. package/dist/esm/MediaSeriesLandingPaginated.js +517 -0
  26. package/dist/esm/Pagination-c0db7ca1.js +46 -0
  27. package/dist/esm/PartnerDetailListing.js +13 -2807
  28. package/dist/esm/PartnerDetailListingPaginated.js +308 -0
  29. package/dist/esm/PublicationFeature-d88e76b9.js +121 -0
  30. package/dist/esm/QueueDeckExpandedPaginated.js +1372 -0
  31. package/dist/esm/index.js +2 -0
  32. package/package.json +2 -1
@@ -0,0 +1,308 @@
1
+ import { a as _asyncToGenerator, r as regenerator, _ as _Promise } from './asyncToGenerator-5ef104a7.js';
2
+ import { _ as _slicedToArray } from './slicedToArray-6ebcbfea.js';
3
+ import { _ as _extends } from './extends-6d8e3924.js';
4
+ import React__default from 'react';
5
+ import { TwitterTimelineEmbed } from 'react-twitter-embed';
6
+ import { I as ImageSlider, F as Facebook, P as Page } from './ImageSlider-de7846ea.js';
7
+ import './defineProperty-23a8f8cd.js';
8
+ import { r as reactSocialIcons_1 } from './react-social-icons-9be47857.js';
9
+ import './moment-bc12cb97.js';
10
+ import QueueDeckExpanded from './QueueDeckExpandedPaginated.js';
11
+ import Breadcrumbs from './Breadcrumbs.js';
12
+ import Feature from './Feature.js';
13
+ import urlFor from './urlFor.js';
14
+ import { g as getSerializers } from './index-ca0c9ff5.js';
15
+ import { B as BlockContent } from './BlockContent-1e73bd2c.js';
16
+ import './_commonjsHelpers-0c4b6f40.js';
17
+ import './core.get-iterator-method-ea258bb1.js';
18
+ import './web.dom.iterable-ab4dea5c.js';
19
+ import './_library-528f1934.js';
20
+ import './_iter-detect-98db3b07.js';
21
+ import './_object-pie-133f504a.js';
22
+ import 'prop-types';
23
+ import './smoothscroll-fa4e3f8c.js';
24
+ import './toConsumableArray-f7074d7c.js';
25
+ import 'react-bootstrap';
26
+ import './index-f0fc23eb.js';
27
+ import './events-6c3a7a63.js';
28
+ import 'next/router';
29
+ import './index-755f2cc2.js';
30
+ import 'react-dom';
31
+ import './lodash-f97fd99a.js';
32
+ import './main-1894c974.js';
33
+ import './entities-6d9154b4.js';
34
+ import './ADInfeed-0a55cd2d.js';
35
+ import 'react-bootstrap/Card';
36
+ import './AdSlot.js';
37
+ import './debounce-533d9748.js';
38
+ import './isSymbol-a7e9aafe.js';
39
+ import './toNumber-5aeba6e7.js';
40
+ import './Beam.js';
41
+ import './stringify-2b084bee.js';
42
+ import './Segment.js';
43
+ import './AuthorComponent-11adff02.js';
44
+ import './ADlgInfeed-013e1f4a.js';
45
+ import './getContentCategory-15dcc413.js';
46
+ import './timeDifferenceCalc.js';
47
+ import './Pagination-c0db7ca1.js';
48
+ import 'react-paginate';
49
+ import './index-3f5c03b2.js';
50
+ import 'react-bootstrap/Breadcrumb';
51
+ import 'react-bootstrap/Carousel';
52
+ import './index-c7e2ac95.js';
53
+ import './util-8ed16d48.js';
54
+ import './typeof-e9fc0c5d.js';
55
+ import './_is-array-8d21b9e3.js';
56
+ import './brightcove-react-player-loader.es-57a70a56.js';
57
+ import './GroupDeck.js';
58
+ import './SocialShare.js';
59
+ import 'next/head';
60
+ import 'react-share';
61
+ import './_object-to-array-2300e51b.js';
62
+ import 'react-bootstrap/Pagination';
63
+ import 'react-bootstrap/Button';
64
+ import 'react-bootstrap/Row';
65
+ import 'react-bootstrap/Col';
66
+ import './inherits-a6ba2ec4.js';
67
+ import './_object-sap-7cee6f84.js';
68
+ import './define-property-5f1bda73.js';
69
+ import './index.esm-f6156a57.js';
70
+ import './iconBase-ccc56b97.js';
71
+ import 'react-bootstrap/Figure';
72
+ import 'react-bootstrap/OverlayTrigger';
73
+ import 'react-bootstrap/Tooltip';
74
+ import 'react-bootstrap/Popover';
75
+
76
+ var _this = undefined;
77
+
78
+ var checkIsFacebookGroup = function checkIsFacebookGroup(url) {
79
+ return (/www\.facebook\.com\/groups/.test(url)
80
+ );
81
+ };
82
+
83
+ var PartnerDetails = function PartnerDetails(_ref) {
84
+ var posts = _ref.posts,
85
+ totalPostsCount = _ref.totalPostsCount,
86
+ query = _ref.query,
87
+ params = _ref.params,
88
+ features = _ref.features,
89
+ currentPage = _ref.currentPage,
90
+ partnerDetails = _ref.partnerDetails,
91
+ client = _ref.client,
92
+ Settings = _ref.Settings,
93
+ pageview = _ref.pageview,
94
+ page = _ref.page;
95
+
96
+ return React__default.createElement(
97
+ React__default.Fragment,
98
+ null,
99
+ React__default.createElement(Breadcrumbs, null),
100
+ React__default.createElement(
101
+ 'div',
102
+ { className: 'partners-page' },
103
+ React__default.createElement(
104
+ 'div',
105
+ { className: 'my-5 partner-logo-wrap', style: { display: 'flex', justifyContent: 'space-between', alignItems: 'center' } },
106
+ partnerDetails.thumbnail && partnerDetails.thumbnail.link ? React__default.createElement(
107
+ 'a',
108
+ { className: 'partners-logo', style: { width: '25%', minWidth: '25%' }, href: partnerDetails.thumbnail.link, target: partnerDetails.thumbnail.blank ? '_blank' : '' },
109
+ React__default.createElement(
110
+ 'figure',
111
+ { style: { width: '100%', textAlign: 'center' } },
112
+ React__default.createElement('img', {
113
+ alt: partnerDetails.thumbnail && partnerDetails.thumbnail.alt ? partnerDetails.thumbnail.alt : partnerDetails.name,
114
+ style: { maxWidth: '100%' },
115
+ src: partnerDetails.thumbnail ? urlFor({ client: client, source: partnerDetails.thumbnail.asset }) : ''
116
+ }),
117
+ partnerDetails.thumbnail && partnerDetails.thumbnail.caption && React__default.createElement(
118
+ 'figcaption',
119
+ null,
120
+ partnerDetails.thumbnail.caption
121
+ )
122
+ )
123
+ ) : React__default.createElement(
124
+ 'figure',
125
+ { className: 'partners-logo', style: { width: '25%', minWidth: '25%', textAlign: 'center' } },
126
+ React__default.createElement('img', {
127
+ alt: partnerDetails.thumbnail && partnerDetails.thumbnail.alt ? partnerDetails.thumbnail.alt : partnerDetails.name,
128
+ style: { maxWidth: '100%' },
129
+ src: partnerDetails.thumbnail ? urlFor({ client: client, source: partnerDetails.thumbnail.asset }) : ''
130
+ }),
131
+ partnerDetails.thumbnail && partnerDetails.thumbnail.caption && React__default.createElement(
132
+ 'figcaption',
133
+ null,
134
+ partnerDetails.thumbnail.caption
135
+ )
136
+ ),
137
+ React__default.createElement(
138
+ 'style',
139
+ { jsx: 'true' },
140
+ '\n @media screen and (max-width: 768px) {\n .partners-logo {\n width: 100%;\n min-width: 100%;\n }\n .partner-logo-wrap {\n flex-wrap: wrap;\n }\n .block-content-partners {\n padding-left: 0 !important;\n }\n }\n '
141
+ ),
142
+ (partnerDetails.description || partnerDetails.linkedin || partnerDetails.twitter && partnerDetails.facebook || !partnerDetails.twitter && partnerDetails.facebook && checkIsFacebookGroup(partnerDetails.facebook)) && React__default.createElement(
143
+ 'div',
144
+ { className: 'block-content-partners my-4', style: { maxWidth: '100%', paddingLeft: '2rem', flex: '1 1 auto' } },
145
+ partnerDetails.description && React__default.createElement(BlockContent, _extends({ serializers: getSerializers(client), blocks: partnerDetails.description, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config())),
146
+ (partnerDetails.linkedin || partnerDetails.twitter && partnerDetails.facebook || !partnerDetails.twitter && partnerDetails.facebook && checkIsFacebookGroup(partnerDetails.facebook)) && React__default.createElement(
147
+ 'div',
148
+ null,
149
+ React__default.createElement(
150
+ 'p',
151
+ { className: 'd-inline-block font-weight-bold' },
152
+ 'Connect with us:'
153
+ ),
154
+ ' ',
155
+ partnerDetails.linkedin && React__default.createElement(reactSocialIcons_1, {
156
+ url: '' + partnerDetails.linkedin + (partnerDetails.linkedin.slice(-1) === '/' ? '' : '/') + 'posts/?feedView=all',
157
+ target: '_blank',
158
+ rel: 'noopener noreferrer',
159
+ style: { height: 30, width: 30 }
160
+ }),
161
+ (partnerDetails.twitter && partnerDetails.facebook || !partnerDetails.twitter && partnerDetails.facebook && checkIsFacebookGroup(partnerDetails.facebook)) && React__default.createElement(reactSocialIcons_1, { url: partnerDetails.facebook, target: '_blank', rel: 'noopener noreferrer', style: { height: 30, width: 30, marginLeft: '0.25rem' } })
162
+ )
163
+ )
164
+ ),
165
+ partnerDetails.affiliates && partnerDetails.affiliates[0] && partnerDetails.affiliates[0].slides && React__default.createElement(
166
+ 'div',
167
+ { className: 'mb-4', style: { padding: '0 15px' } },
168
+ partnerDetails.affiliates[0].title && React__default.createElement(
169
+ 'h2',
170
+ { className: 'bb-gold' },
171
+ partnerDetails.affiliates[0].title
172
+ ),
173
+ React__default.createElement(ImageSlider, { client: client, data: partnerDetails.affiliates[0] })
174
+ ),
175
+ features.length > 0 && React__default.createElement(
176
+ 'div',
177
+ { className: ' mb-5' },
178
+ React__default.createElement(Feature, { dataset: features, client: client })
179
+ ),
180
+ (partnerDetails.twitter || partnerDetails.facebook && !checkIsFacebookGroup(partnerDetails.facebook)) && React__default.createElement(
181
+ 'div',
182
+ { className: 'mb-5', style: { width: '100%', maxWidth: '100%', textAlign: 'center', padding: '15px', border: '2px solid #aaa', borderRadius: '15px' } },
183
+ partnerDetails.twitter ? React__default.createElement(TwitterTimelineEmbed, { sourceType: 'url', url: partnerDetails.twitter, options: { height: 400 } }) : partnerDetails.facebook && React__default.createElement(
184
+ Facebook,
185
+ { appId: ' ' },
186
+ React__default.createElement(Page, { href: partnerDetails.facebook, tabs: 'timeline', width: '500', height: '500' })
187
+ )
188
+ ),
189
+ React__default.createElement(
190
+ 'div',
191
+ null,
192
+ posts && posts.length > 0 && React__default.createElement(
193
+ React__default.Fragment,
194
+ null,
195
+ React__default.createElement(
196
+ 'h2',
197
+ { className: 'bb-gold mb-2' },
198
+ 'Latest from ',
199
+ partnerDetails.name
200
+ ),
201
+ React__default.createElement('hr', null)
202
+ ),
203
+ React__default.createElement(QueueDeckExpanded, {
204
+ client: client,
205
+ mapping: Settings.mapping,
206
+ dataRecord: posts,
207
+ totalDataCount: totalPostsCount,
208
+ query: query,
209
+ params: params,
210
+ currentPage: currentPage,
211
+ seoPaginate: true,
212
+ columns: 'rotate',
213
+ variant: 'top',
214
+ page: page,
215
+ autoScroll: true,
216
+ defaultImage: Settings.logo,
217
+ showPublished: true,
218
+ showCategory: true,
219
+ pageview: pageview
220
+ })
221
+ )
222
+ )
223
+ );
224
+ };
225
+
226
+ PartnerDetails.returnGetInitialProps = function () {
227
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(identifier, partnerPageUrl, partnerDocumentGroupID, params, currentPage, client) {
228
+ var category = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : false;
229
+
230
+ var featureQuery, partnerQuery, taxonomyQuery, _ref3, _ref4, features, partnerDetails, taxonomyDetails, articlesQueryFilters, articlesQuerySorts, articlesQueryProjection, articlesQuery, totalArticlesCountQuery, _ref5, _ref6, articles, totalArticlesCount;
231
+
232
+ return regenerator.wrap(function _callee$(_context) {
233
+ while (1) {
234
+ switch (_context.prev = _context.next) {
235
+ case 0:
236
+ featureQuery = '*[_type == \'feature\' && is_active == true && feature_url == \'/' + partnerPageUrl + '/' + (category ? category + '/' : null) + identifier + '\'] | order(_updatedAt asc)[0..5]{\n ...,\n \'feature_img\' : feature_img.asset->url\n }';
237
+ partnerQuery = '*[_type == \'documentGroup\' \n && !(_id in path("drafts.**"))\n && references(\'' + partnerDocumentGroupID + '\')\n && identifier.current == \'' + identifier + '\'] | order(name asc) [0] {\n description,\n name,\n identifier,\n thumbnail,\n twitter,\n facebook,\n linkedin,\n "affiliates": description[_type==\'slideshows\']{\n ...,\n slides->{...}\n }\n }';
238
+
239
+
240
+ if (category) {
241
+ // if partners page has a sub category such as onclive
242
+ // e.g. /sap-partner/[category]/[partner]
243
+
244
+ partnerQuery = '*[_type == \'documentGroup\' && !(_id in path("drafts.**")) && identifier.current == \'' + category + '\' && references(\'' + partnerDocumentGroupID + '\')] [0] {\n ...,\n \'partner\': *[_type == \'documentGroup\' && identifier.current == \'' + identifier + '\' && references(^._id)] [0] {\n description,\n name,\n identifier,\n thumbnail,\n twitter,\n facebook,\n linkedin,\n "affiliates": description[_type==\'slideshows\']{\n ...,\n slides->{...}\n }\n \n }\n }';
245
+ }
246
+
247
+ taxonomyQuery = '*[_type == \'documentGroup\' \n && !(_id in path("drafts.**"))\n && references(\'' + partnerDocumentGroupID + '\')\n && isShow != false\n && identifier.current == \'' + identifier + '\'] [0] {\n \'id\': _id,\n \'title\': name\n }';
248
+
249
+ if (category) {
250
+ taxonomyQuery = '*[_type == \'documentGroup\' \n && !(_id in path("drafts.**"))\n && isShow != false\n && identifier.current == \'' + identifier + '\' && references(*[_type == \'documentGroup\' && identifier.current == \'' + category + '\' && references(\'' + partnerDocumentGroupID + '\')]._id)] [0] {\n \'id\': _id,\n \'title\': name\n }';
251
+ }
252
+ _context.next = 7;
253
+ return _Promise.all([client.fetch(featureQuery), client.fetch(partnerQuery), client.fetch(taxonomyQuery)]);
254
+
255
+ case 7:
256
+ _ref3 = _context.sent;
257
+ _ref4 = _slicedToArray(_ref3, 3);
258
+ features = _ref4[0];
259
+ partnerDetails = _ref4[1];
260
+ taxonomyDetails = _ref4[2];
261
+ articlesQueryFilters = '[\n _type == \'article\' \n && !(_id in path("drafts.**")) \n && defined(title) \n && is_visible == true \n && defined(url) \n && published <= now()\n && passwordLocked != true \n && references(\'' + taxonomyDetails.id + '\')\n ]';
262
+ articlesQuerySorts = 'order(published desc)[$from...$to]';
263
+ articlesQueryProjection = '{\n title,\n summary,\n thumbnail,\n url,\n published,\n contentCategory->\n }';
264
+ articlesQuery = ['*'].concat(articlesQueryFilters).concat(articlesQuerySorts).concat(articlesQueryProjection).join('|');
265
+ totalArticlesCountQuery = 'count(' + ['*'].concat(articlesQueryFilters).join('|') + ')';
266
+ _context.next = 19;
267
+ return _Promise.all([client.fetch(articlesQuery, params), client.fetch(totalArticlesCountQuery)]);
268
+
269
+ case 19:
270
+ _ref5 = _context.sent;
271
+ _ref6 = _slicedToArray(_ref5, 2);
272
+ articles = _ref6[0];
273
+ totalArticlesCount = _ref6[1];
274
+
275
+
276
+ // need to exclude slideshows from body due to the affiliate slider
277
+ if (partnerDetails && partnerDetails.description) {
278
+ partnerDetails.description = partnerDetails.description.filter(function (block) {
279
+ return block._type !== 'slideshows';
280
+ });
281
+ }
282
+
283
+ return _context.abrupt('return', {
284
+ articles: articles,
285
+ totalArticlesCount: totalArticlesCount,
286
+ taxonomyDetails: taxonomyDetails,
287
+ partnerDetails: category ? partnerDetails.partner : partnerDetails,
288
+ features: features,
289
+ featureQuery: featureQuery,
290
+ partnerQuery: partnerQuery,
291
+ taxonomyQuery: taxonomyQuery,
292
+ articlesQuery: articlesQuery
293
+ });
294
+
295
+ case 25:
296
+ case 'end':
297
+ return _context.stop();
298
+ }
299
+ }
300
+ }, _callee, _this);
301
+ }));
302
+
303
+ return function (_x, _x2, _x3, _x4, _x5, _x6) {
304
+ return _ref2.apply(this, arguments);
305
+ };
306
+ }();
307
+
308
+ export default PartnerDetails;
@@ -0,0 +1,121 @@
1
+ import React__default from 'react';
2
+ import Row from 'react-bootstrap/Row';
3
+ import Col from 'react-bootstrap/Col';
4
+ import Button from 'react-bootstrap/Button';
5
+ import { L as LazyLoad } from './index-755f2cc2.js';
6
+ import urlFor from './urlFor.js';
7
+
8
+ var PublicationFeature = function PublicationFeature(_ref) {
9
+ var data = _ref.data,
10
+ _ref$issueMapping = _ref.issueMapping,
11
+ issueMapping = _ref$issueMapping === undefined ? '/publications' : _ref$issueMapping,
12
+ defaultImage = _ref.defaultImage,
13
+ client = _ref.client;
14
+
15
+ var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
16
+ var _data$parent = data.parent;
17
+ _data$parent = _data$parent === undefined ? {} : _data$parent;
18
+ var _data$parent$identifi = _data$parent.identifier;
19
+ _data$parent$identifi = _data$parent$identifi === undefined ? {} : _data$parent$identifi;
20
+ var parentSlug = _data$parent$identifi.current,
21
+ _data$identifier = data.identifier;
22
+ _data$identifier = _data$identifier === undefined ? {} : _data$identifier;
23
+ var childSlug = _data$identifier.current,
24
+ name = data.name,
25
+ articles = data.articles,
26
+ month = data.month,
27
+ year = data.year,
28
+ thumbnail = data.thumbnail;
29
+
30
+ if (name && articles && articles.length > 0) {
31
+ return React__default.createElement(
32
+ 'div',
33
+ { className: 'publication-feature-container border rounded p-2' },
34
+ React__default.createElement(
35
+ Row,
36
+ null,
37
+ React__default.createElement(
38
+ Col,
39
+ { xs: 12 },
40
+ React__default.createElement(
41
+ 'h4',
42
+ null,
43
+ name,
44
+ month && year && React__default.createElement(
45
+ 'span',
46
+ null,
47
+ ' ',
48
+ '| ',
49
+ months[parseInt(month, 10)],
50
+ ' ',
51
+ year
52
+ )
53
+ )
54
+ ),
55
+ React__default.createElement(
56
+ Col,
57
+ { xs: 12, sm: 4 },
58
+ React__default.createElement(
59
+ LazyLoad,
60
+ { once: true },
61
+ React__default.createElement('img', { className: 'w-100 mb-2', src: thumbnail && thumbnail.asset && client ? urlFor({ client: client, source: thumbnail.asset }) : defaultImage, alt: name || '' })
62
+ )
63
+ ),
64
+ React__default.createElement(
65
+ Col,
66
+ { xs: 12, sm: 8 },
67
+ React__default.createElement(
68
+ Row,
69
+ null,
70
+ articles.map(function (article) {
71
+ return React__default.createElement(
72
+ Col,
73
+ { key: article._id, xs: 12, sm: 6 },
74
+ article.issueSection && article.issueSection.name && React__default.createElement(
75
+ 'h6',
76
+ { className: 'text-primary m-0 p-0 text-uppercase font-weight-bold' },
77
+ article.issueSection.name
78
+ ),
79
+ article.title && React__default.createElement(
80
+ React__default.Fragment,
81
+ null,
82
+ article.url && article.url.current ? React__default.createElement(
83
+ 'a',
84
+ { href: '/view/' + article.url.current },
85
+ React__default.createElement(
86
+ 'h6',
87
+ { className: 'text-break' },
88
+ article.title
89
+ )
90
+ ) : React__default.createElement(
91
+ 'h6',
92
+ { className: 'text-break' },
93
+ article.title
94
+ )
95
+ )
96
+ );
97
+ })
98
+ )
99
+ ),
100
+ issueMapping && parentSlug && childSlug && React__default.createElement(
101
+ Col,
102
+ { xs: 12 },
103
+ React__default.createElement(
104
+ Button,
105
+ { href: issueMapping + '/' + parentSlug + '/' + childSlug, className: 'float-right', variant: 'outline-primary' },
106
+ 'More Articles ',
107
+ '>>'
108
+ )
109
+ )
110
+ ),
111
+ React__default.createElement(
112
+ 'style',
113
+ { jsx: 'true' },
114
+ '\n .row {\n margin-top: -15px;\n margin-left: -15px;\n margin-right: 0;\n }\n .row > * {\n padding-top: 15px;\n padding-left: 15px;\n padding-right: 0;\n }\n '
115
+ )
116
+ );
117
+ }
118
+ return null;
119
+ };
120
+
121
+ export { PublicationFeature as P };