@mjhls/mjh-framework 1.0.188 → 1.0.190

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/dist/index.js CHANGED
@@ -10230,6 +10230,10 @@ var html_map = {
10230
10230
  };
10231
10231
 
10232
10232
  var html_decode = function html_decode(string) {
10233
+ if (!string) {
10234
+ return string;
10235
+ }
10236
+
10233
10237
  var entityMap = html_map;
10234
10238
  for (var key in entityMap) {
10235
10239
  var entity = entityMap[key];
@@ -14201,20 +14205,6 @@ var MasterDeck = function (_React$Component) {
14201
14205
  };
14202
14206
  }
14203
14207
  });
14204
- }, _this.urlFor = function (source) {
14205
- var client = _this.props.client;
14206
-
14207
- var builder = imageUrlBuilder(client);
14208
- return builder.image(source).auto('format');
14209
- }, _this.renderCardImage = function (row, page) {
14210
- if (row.thumbnail && row.thumbnail.asset) {
14211
- var url = _this.urlFor(row.thumbnail);
14212
- if (_this.props.imageHeight) url = url.height(_this.props.imageHeight);
14213
- if (_this.props.imageWidth) url = url.width(_this.props.imageWidth);
14214
- return url.url();
14215
- } else {
14216
- return _this.defaultImage;
14217
- }
14218
14208
  }, _this.changePageNumber = function (pageNumber) {
14219
14209
  var _this$props2 = _this.props,
14220
14210
  seoPaginate = _this$props2.seoPaginate,
@@ -14285,50 +14275,6 @@ var MasterDeck = function (_React$Component) {
14285
14275
  });
14286
14276
  }
14287
14277
  }
14288
- }, _this.renderAuthor = function (authorDetail, index$$1, length) {
14289
- if (authorDetail) {
14290
- var _id = authorDetail._id,
14291
- displayName = authorDetail.displayName,
14292
- url = authorDetail.url;
14293
-
14294
- if (displayName && url && url.current) {
14295
- return React__default.createElement(
14296
- 'div',
14297
- { key: _id },
14298
- index$$1 === 0 && React__default.createElement(
14299
- 'span',
14300
- { className: 'pr-1' },
14301
- 'By'
14302
- ),
14303
- React__default.createElement(
14304
- Link,
14305
- { href: '/authors/[url]', as: '/authors/' + url.current },
14306
- React__default.createElement(
14307
- 'a',
14308
- { className: 'text-muted' },
14309
- displayName,
14310
- length !== index$$1 + 1 && React__default.createElement('br', null)
14311
- )
14312
- )
14313
- );
14314
- } else if (displayName) {
14315
- return React__default.createElement(
14316
- 'div',
14317
- { key: _id },
14318
- index$$1 === 0 && React__default.createElement(
14319
- 'span',
14320
- { className: 'pr-1' },
14321
- 'By'
14322
- ),
14323
- React__default.createElement(
14324
- 'span',
14325
- { className: 'text-muted' },
14326
- displayName,
14327
- length !== index$$1 + 1 && React__default.createElement('br', null)
14328
- )
14329
- );
14330
- }
14331
- } else return null;
14332
14278
  }, _this.cardLoader = function (page, columns, variant) {
14333
14279
  var numberOfItemsBeforeAd = 6;
14334
14280
  return React__default.createElement(
@@ -14336,7 +14282,6 @@ var MasterDeck = function (_React$Component) {
14336
14282
  null,
14337
14283
  _this.state.data && _this.state.data.map(function (row, index$$1) {
14338
14284
  var pageNumber = row.pageNumber || _this.state.page;
14339
- var contentCategoryName = row.contentCategory && row.contentCategory.name && _this.mapping[row.contentCategory.name] ? row.contentCategory.name : 'Articles';
14340
14285
 
14341
14286
  return React__default.createElement(
14342
14287
  React__default.Fragment,
@@ -14347,7 +14292,7 @@ var MasterDeck = function (_React$Component) {
14347
14292
  onChange: function onChange(isVisible) {
14348
14293
  isVisible && _this.changePageNumber(pageNumber);
14349
14294
  } },
14350
- React__default.createElement(_this2.Deck, { data: row, variant: variant, index: index$$1 })
14295
+ React__default.createElement(_this2.Deck, { data: row, variant: variant, index: index$$1, client: _this.props.client })
14351
14296
  ),
14352
14297
  main_36 && _this.rightItems && (index$$1 + 1) % numberOfItemsBeforeAd === 0 && React__default.createElement(
14353
14298
  'div',
@@ -15636,7 +15581,7 @@ var Column3 = function Column3(props) {
15636
15581
  Col,
15637
15582
  { md: true, className: 'leftCol', style: { width: '200px' } },
15638
15583
  React__default.createElement(LeftNav, { leftItems: leftItems }),
15639
- website && website.sideFooterContent && website.sideFooterContent.length && website.showFooterOnLeftSide && React__default.createElement(SideFooter, { website: website, logo: logo })
15584
+ website && website.sideFooterContent && website.sideFooterContent.length && website.showFooterOnLeftSide && React__default.createElement(SideFooter, { website: website, cache: website.cache, logo: logo })
15640
15585
  ),
15641
15586
  React__default.createElement(
15642
15587
  Col,
@@ -15680,7 +15625,7 @@ var Column3 = function Column3(props) {
15680
15625
  row.component
15681
15626
  );
15682
15627
  }),
15683
- website && website.sideFooterContent && website.sideFooterContent.length && !website.showFooterOnLeftSide && React__default.createElement(SideFooter, { website: website, logo: logo })
15628
+ website && website.sideFooterContent && website.sideFooterContent.length && !website.showFooterOnLeftSide && React__default.createElement(SideFooter, { website: website, cache: website.cache, logo: logo })
15684
15629
  )
15685
15630
  )
15686
15631
  )
@@ -17018,7 +16963,7 @@ var HamMagazine = function HamMagazine(props) {
17018
16963
  ),
17019
16964
  React__default.createElement(
17020
16965
  Navbar,
17021
- { variant: 'dark', expand: 'lg', bg: 'primary', ref: navRef, style: { width: '100%' } },
16966
+ { variant: 'dark', expand: 'xl', bg: 'primary', ref: navRef, style: { width: '100%' } },
17022
16967
  React__default.createElement(
17023
16968
  Container,
17024
16969
  { className: 'mobile-nav' },
@@ -17145,7 +17090,7 @@ var HamMagazine = function HamMagazine(props) {
17145
17090
  React__default.createElement(
17146
17091
  'style',
17147
17092
  { jsx: 'true' },
17148
- '\n .sticky-home {\n position: relative;\n top: -3px;\n left: -6px;\n cursor: pointer;\n }\n .nav-item svg {\n margin-bottom: 2px;\n }\n #nav-login,\n #nav-logout,\n #nav-register {\n padding: 0.5rem;\n cursor: pointer;\n }\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: none;\n }\n #nav-mobile-logout,\n #nav-mobile-login {\n position: absolute;\n right: 1rem;\n }\n #nav-mobile-register {\n position: absolute;\n left: 1rem;\n }\n @media screen and (max-width: 376px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n width: 60%;\n }\n .mobile-nav .nav-toggle .form-inline {\n width: 70%;\n }\n }\n @media screen and (max-width: 328px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n margin-right: 5px;\n }\n }\n @media screen and (max-width: 767px) {\n .logo {\n width: 100%;\n padding-left: 10px;\n padding-right: 10px;\n }\n }\n @media screen and (max-width: 991px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n .nav-open {\n position: relative;\n }\n\n .mobile-nav .nav-toggle {\n width: 100%;\n }\n\n .android-nav {\n max-height: 80vh;\n }\n\n .ios-nav {\n max-height: none;\n }\n\n .navbar.bg-primary {\n overflow: auto;\n }\n\n .mobile-nav .nav-toggle .navbar-toggler {\n float: left;\n height: 45px;\n }\n .mobile-nav .nav-toggle .form-inline {\n float: right;\n margin: 4px 0px 0px 0px;\n }\n .mobile-nav .form-inline .mobile-search {\n width: auto;\n }\n .sticky-home {\n display: none;\n }\n .dropdown-menu {\n max-height: 315px;\n overflow: auto;\n }\n ::-webkit-scrollbar {\n width: 10px;\n }\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(214, 214, 214, 0.8);\n box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n }\n .navbar-expand-lg .show#basic-navbar-sub {\n display: block;\n }\n .navbar .mobile-nav .navbar-collapse.show {\n padding-bottom: 10px;\n border-bottom: 0.5px solid white;\n }\n .navbar .mobile-nav .navbar-collapse .form-inline {\n display: none;\n }\n .navbar .mobile-nav .navbar-collapse {\n margin-top: 15px;\n }\n .navbar .mobile-nav .navbar-collapse:last-child {\n border-bottom: none;\n margin-bottom: 0px;\n padding-bottom: 0px;\n margin-top: 0px;\n padding-top: 10px;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer ul {\n list-style-type: none;\n padding: inherit;\n margin-bottom: 0rem;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer .nav-link {\n text-transform: capitalize !important;\n font-weight: 300;\n }\n .navbar .mobile-nav .dropdown-item:focus {\n background-color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: white;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: inherit;\n border: none;\n }\n .navbar .mobile-nav .dropdown-menu.show {\n max-height: 100px;\n }\n }\n @media screen and (min-width: 992px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n #basic-navbar-sub {\n display: none !important;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: white;\n border: 1 px solid #708090;\n }\n .mobile-nav .nav-toggle .form-inline {\n display: none;\n }\n }\n @media screen and (max-width: 1199px) {\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: block;\n }\n .navbar-top {\n flex-direction: row;\n justify-content: space-around !important;\n align-items: center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n width: 100%;\n }\n }\n '
17093
+ '\n .sticky-home {\n position: relative;\n top: -3px;\n left: -6px;\n cursor: pointer;\n }\n .nav-item svg {\n margin-bottom: 2px;\n }\n #nav-login,\n #nav-logout,\n #nav-register {\n padding: 0.5rem;\n cursor: pointer;\n }\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: none;\n }\n #nav-mobile-logout,\n #nav-mobile-login {\n position: absolute;\n right: 1rem;\n }\n #nav-mobile-register {\n position: absolute;\n left: 1rem;\n }\n @media screen and (max-width: 376px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n width: 60%;\n }\n .mobile-nav .nav-toggle .form-inline {\n width: 70%;\n }\n }\n @media screen and (max-width: 328px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n margin-right: 5px;\n }\n }\n @media screen and (max-width: 767px) {\n .logo {\n width: 100%;\n padding-left: 10px;\n padding-right: 10px;\n }\n }\n @media screen and (max-width: 1199px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n .nav-open {\n position: relative;\n }\n\n .mobile-nav .nav-toggle {\n width: 100%;\n }\n\n .android-nav {\n max-height: 80vh;\n }\n\n .ios-nav {\n max-height: none;\n }\n\n .navbar.bg-primary {\n overflow: auto;\n }\n\n .mobile-nav .nav-toggle .navbar-toggler {\n float: left;\n height: 45px;\n }\n .mobile-nav .nav-toggle .form-inline {\n float: right;\n margin: 4px 0px 0px 0px;\n }\n .mobile-nav .form-inline .mobile-search {\n width: auto;\n }\n .sticky-home {\n display: none;\n }\n .dropdown-menu {\n max-height: 315px;\n overflow: auto;\n }\n ::-webkit-scrollbar {\n width: 10px;\n }\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(214, 214, 214, 0.8);\n box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n }\n .navbar-expand-xl .show#basic-navbar-sub {\n display: block;\n }\n .navbar .mobile-nav .navbar-collapse.show {\n padding-bottom: 10px;\n border-bottom: 0.5px solid white;\n }\n .navbar .mobile-nav .navbar-collapse .form-inline {\n display: none;\n }\n .navbar .mobile-nav .navbar-collapse {\n margin-top: 15px;\n }\n .navbar .mobile-nav .navbar-collapse:last-child {\n border-bottom: none;\n margin-bottom: 0px;\n padding-bottom: 0px;\n margin-top: 0px;\n padding-top: 10px;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer ul {\n list-style-type: none;\n padding: inherit;\n margin-bottom: 0rem;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer .nav-link {\n text-transform: capitalize !important;\n font-weight: 300;\n }\n .navbar .mobile-nav .dropdown-item:focus {\n background-color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: white;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: inherit;\n border: none;\n }\n .navbar .mobile-nav .dropdown-menu.show {\n max-height: 100px;\n }\n }\n @media screen and (min-width: 1200px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n #basic-navbar-sub {\n display: none !important;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: white;\n border: 1 px solid #708090;\n }\n .mobile-nav .nav-toggle .form-inline {\n display: none;\n }\n }\n @media screen and (max-width: 1199px) {\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: block;\n }\n .navbar-top {\n flex-direction: row;\n justify-content: space-around !important;\n align-items: center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n width: 100%;\n }\n }\n '
17149
17094
  )
17150
17095
  );
17151
17096
  };
@@ -17558,7 +17503,7 @@ var urlFor$2 = function urlFor(source, builder) {
17558
17503
 
17559
17504
  var onChangeSlide = function onChangeSlide(selectedIndex, router) {
17560
17505
  var pageNumber = selectedIndex + 1;
17561
- var href = '/view/' + router.query.url + '/?page=' + pageNumber;
17506
+ var href = '/view/' + router.query.url + '?page=' + pageNumber;
17562
17507
  Router__default.push(router.pathname, pageNumber > 1 ? href : '/view/' + router.query.url, { shallow: true });
17563
17508
  };
17564
17509
 
@@ -30259,6 +30204,89 @@ var RelatedContent = function RelatedContent(props) {
30259
30204
  );
30260
30205
  };
30261
30206
 
30207
+ /*
30208
+ Example usage - targetedonc.com/latest-conference
30209
+ const query = `*[!(_id in path("drafts.**")) && _type == "article" && defined(title) && is_visible == true && published <= '${today}' && references('b49d36b8-aa56-4183-a2bc-1568c229fb72') ] | order(published desc) [$from...$to] {
30210
+ ...,
30211
+ title,
30212
+ summary,
30213
+ thumbnail,
30214
+ url,
30215
+ published,
30216
+ documentGroup->,
30217
+ contentCategory->,
30218
+ 'pageNumber': ${currentPage}
30219
+ }`
30220
+
30221
+ const posts = await client.fetch(query, params)
30222
+ */
30223
+
30224
+ var ConferenceArticleCard = function ConferenceArticleCard(props) {
30225
+ var data = props.data,
30226
+ variant = props.variant,
30227
+ index = props.index,
30228
+ client = props.client;
30229
+
30230
+
30231
+ var builder = imageUrlBuilder(client);
30232
+
30233
+ function urlFor(source) {
30234
+ return builder.image(source);
30235
+ }
30236
+
30237
+ //title, thumbnail, summary, published, documentGroup.identifier.current, documentGroup.identifier.name
30238
+ return React__default.createElement(
30239
+ 'div',
30240
+ { className: 'conference-media' },
30241
+ React__default.createElement(
30242
+ 'a',
30243
+ { className: 'img-wrapper', href: '/view/study-depicts-complexity-of-met-exon-14-mutation-testing' },
30244
+ React__default.createElement('img', {
30245
+ className: 'mr-3 img-fluid',
30246
+ src: data.thumbnail && urlFor(data.thumbnail.asset).width(350).url(),
30247
+ alt: data.title
30248
+ })
30249
+ ),
30250
+ React__default.createElement(
30251
+ 'div',
30252
+ { className: 'media-body' },
30253
+ React__default.createElement(
30254
+ 'a',
30255
+ { href: '/view/study-depicts-complexity-of-met-exon-14-mutation-testing' },
30256
+ React__default.createElement(
30257
+ 'h4',
30258
+ { className: 'conf-media__card-title' },
30259
+ data.title
30260
+ )
30261
+ ),
30262
+ React__default.createElement(
30263
+ 'p',
30264
+ { className: 'conf-media__card-text' },
30265
+ moment(data.published).format('MMMM Do YYYY, h:mma')
30266
+ ),
30267
+ React__default.createElement(
30268
+ 'p',
30269
+ { className: 'mb-1 conference-group' },
30270
+ React__default.createElement(
30271
+ Link,
30272
+ { href: '/conference/[url]', as: '/conference/' + data.documentGroup.identifier.current },
30273
+ React__default.createElement(
30274
+ 'a',
30275
+ { alt: data.thumbnail.alt || data.title },
30276
+ data.documentGroup.name
30277
+ )
30278
+ )
30279
+ ),
30280
+ React__default.createElement('p', { className: 'pt-2 card-text', dangerouslySetInnerHTML: { __html: data.summary } })
30281
+ ),
30282
+ React__default.createElement(
30283
+ 'style',
30284
+ { jsx: 'true' },
30285
+ '\n .conference-media {\n display: flex;\n flex-direction: row;\n margin-bottom: 1.25rem;\n padding-bottom: 1.25rem;\n border-bottom: 1px solid #ddd;\n }\n .conf-media__card-title {\n font-weight: bold;\n color: #252525;\n margin-bottom: 0.5rem;\n font-size: 1.5rem;\n }\n .conf-media__card-text {\n color: var(--dark);\n margin-bottom: 0.25rem;\n }\n .conference-media a img {\n width: 175px;\n min-width: 175px;\n height: auto;\n object-fit: contain;\n }\n .conference-media .conference-group {\n background: #003767;\n color: white;\n border-radius: 5px;\n display: inline-block;\n padding: 0 0.25rem;\n }\n .conference-media .conference-group a {\n color: white;\n font-size: 0.8rem;\n }\n @media screen and (max-width: 1064px) {\n .conf-media__card-title {\n font-size: 1.1rem;\n }\n }\n @media screen and (max-width: 768px) {\n .conference-media {\n flex-direction: column;\n }\n .conference-media a img {\n width: 100%;\n height: auto;\n max-height: 175px;\n object-fit: contain;\n margin-bottom: 1rem;\n }\n }\n '
30286
+ )
30287
+ );
30288
+ };
30289
+
30262
30290
  exports.DeckContent = ContentCard;
30263
30291
  exports.GridContent = GridContent$1;
30264
30292
  exports.DeckQueue = Queue;
@@ -30309,4 +30337,5 @@ exports.OncliveLargeHero = OncliveLargeHero;
30309
30337
  exports.VerticalHero = VerticalHero;
30310
30338
  exports.YahooHero = YahooHero;
30311
30339
  exports.RelatedContent = RelatedContent;
30340
+ exports.ConferenceArticleCard = ConferenceArticleCard;
30312
30341
  //# sourceMappingURL=index.js.map