@mjhls/mjh-framework 1.0.152 → 1.0.154

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,6 @@
1
1
 
2
- # mjh-framework v. 1.0.152
2
+ # mjh-framework v. 1.0.154
3
+
3
4
 
4
5
 
5
6
 
package/dist/index.es.js CHANGED
@@ -13,6 +13,7 @@ import Media from 'react-bootstrap/Media';
13
13
  import { Media as Media$1, Container as Container$1, Dropdown, Figure, Carousel, Table, Button as Button$1, ProgressBar, Card as Card$1 } from 'react-bootstrap';
14
14
  import Button from 'react-bootstrap/Button';
15
15
  import Badge from 'react-bootstrap/Badge';
16
+ import { SocialIcon } from 'react-social-icons';
16
17
  import ListGroup from 'react-bootstrap/ListGroup';
17
18
  import Head from 'next/head';
18
19
  import Accordion from 'react-bootstrap/Accordion';
@@ -20,7 +21,6 @@ import { useAccordionToggle } from 'react-bootstrap/AccordionToggle';
20
21
  import { FacebookShareButton, TwitterShareButton, PinterestShareButton, EmailShareButton, FacebookIcon, TwitterIcon, PinterestIcon, EmailIcon } from 'react-share';
21
22
  import Form from 'react-bootstrap/Form';
22
23
  import FormControl from 'react-bootstrap/FormControl';
23
- import { SocialIcon } from 'react-social-icons';
24
24
  import Nav from 'react-bootstrap/Nav';
25
25
  import Navbar from 'react-bootstrap/Navbar';
26
26
  import NavDropdown from 'react-bootstrap/NavDropdown';
@@ -8848,46 +8848,78 @@ var Column1 = function Column1(props) {
8848
8848
  };
8849
8849
 
8850
8850
  var SideFooter = function SideFooter(props) {
8851
+ /*
8852
+ useage example: <SideFooter cache={props.cache} logo='/an_mjhls_brand_logo.png' />
8853
+ */
8854
+ var _props$cache$siteSett = props.cache.siteSettingCache,
8855
+ socialLinks = _props$cache$siteSett.socialLinks,
8856
+ footerLinks = _props$cache$siteSett.footerLinks,
8857
+ name = _props$cache$siteSett.name;
8858
+ var logo = props.logo;
8859
+
8851
8860
  var year = new Date().getFullYear();
8852
- var website = props.website;
8853
8861
 
8854
8862
  return React__default.createElement(
8855
8863
  'div',
8856
8864
  { className: 'side-footer' },
8857
- website && website.sideFooterContent && website.sideFooterContent.length && React__default.createElement(
8865
+ React__default.createElement(
8858
8866
  'ul',
8859
8867
  null,
8860
- website && website.sideFooterContent.map(function (content, index) {
8861
- return content.blank ? React__default.createElement(
8862
- 'li',
8863
- { key: index },
8864
- React__default.createElement(
8865
- 'a',
8866
- { target: '_blank', href: content.url },
8867
- content.title
8868
- )
8869
- ) : React__default.createElement(
8870
- 'li',
8871
- { key: index },
8872
- React__default.createElement(
8873
- Link,
8874
- { href: content.url },
8868
+ footerLinks && footerLinks.map(function (row, index) {
8869
+ if (row.blank) {
8870
+ return React__default.createElement(
8871
+ 'li',
8872
+ { key: index },
8875
8873
  React__default.createElement(
8876
8874
  'a',
8877
- null,
8878
- content.title
8875
+ { href: row.url, target: '_blank' },
8876
+ row.title
8879
8877
  )
8880
- )
8881
- );
8882
- })
8878
+ );
8879
+ } else {
8880
+ return React__default.createElement(
8881
+ 'li',
8882
+ { key: index },
8883
+ React__default.createElement(
8884
+ Link,
8885
+ { href: row.url },
8886
+ React__default.createElement(
8887
+ 'a',
8888
+ null,
8889
+ row.title
8890
+ )
8891
+ )
8892
+ );
8893
+ }
8894
+ }),
8895
+ React__default.createElement(
8896
+ 'li',
8897
+ { style: { marginTop: '10px' } },
8898
+ socialLinks && socialLinks.map(function (row, index) {
8899
+ return React__default.createElement(SocialIcon, { key: index, index: index, url: row.url, style: { width: 30, height: 30, marginRight: 5 } });
8900
+ })
8901
+ )
8883
8902
  ),
8884
- website && website.title && React__default.createElement(
8903
+ logo && React__default.createElement(
8904
+ 'ul',
8905
+ null,
8906
+ React__default.createElement(
8907
+ 'li',
8908
+ { className: 'pt-2' },
8909
+ React__default.createElement(
8910
+ 'a',
8911
+ { href: 'https://www.mjhlifesciences.com' },
8912
+ React__default.createElement('img', { style: { maxWidth: '100%' }, alt: 'MJHLS Brand Logo', src: logo })
8913
+ )
8914
+ )
8915
+ ),
8916
+ React__default.createElement(
8885
8917
  'p',
8886
8918
  null,
8887
8919
  '\xA9 ',
8888
8920
  year,
8889
- ' ',
8890
- website.title,
8921
+ ' MJH Life Sciences and ',
8922
+ name,
8891
8923
  '. All rights reserved.'
8892
8924
  )
8893
8925
  );
@@ -9802,80 +9834,159 @@ var NavMagazine = function NavMagazine(props) {
9802
9834
  };
9803
9835
 
9804
9836
  var NavNative = function NavNative(props) {
9837
+ /*
9838
+ Example Nav with acceptable props
9839
+ <MagazineNav
9840
+ showLogin
9841
+ logo={props.settings.logo}
9842
+ dataObject={props.cache.mainNavCache}
9843
+ website={website}
9844
+ subNav={props.cache.subNavCache}
9845
+ />
9846
+ */
9847
+
9805
9848
  var logo = props.logo,
9849
+ mobileLogo = props.mobileLogo,
9806
9850
  dataObject = props.dataObject,
9807
- _props$variant = props.variant,
9808
- variant = _props$variant === undefined ? 'dark' : _props$variant,
9809
9851
  subNav = props.subNav,
9810
- website = props.website;
9852
+ website = props.website,
9853
+ _props$showLogin = props.showLogin,
9854
+ _props$userData = props.userData,
9855
+ _props$socialFooterNa = props.socialFooterNav,
9856
+ socialFooterNav = _props$socialFooterNa === undefined ? false : _props$socialFooterNa;
9857
+
9858
+ var navRef = useRef(null);
9811
9859
 
9860
+ var _useState = useState(false),
9861
+ _useState2 = slicedToArray(_useState, 2),
9862
+ isSticky = _useState2[0],
9863
+ setIsSticky = _useState2[1];
9864
+
9865
+ var _useState3 = useState(0),
9866
+ _useState4 = slicedToArray(_useState3, 2),
9867
+ screenWidth = _useState4[0],
9868
+ setScreenWidth = _useState4[1];
9869
+
9870
+ useEffect(function () {
9871
+ document.addEventListener('scroll', trackScrolling);
9872
+ return function () {
9873
+ document.removeEventListener('scroll', trackScrolling);
9874
+ };
9875
+ // eslint-disable-next-line react-hooks/exhaustive-deps
9876
+ }, []);
9877
+
9878
+ useEffect(function () {
9879
+ setScreenWidth(parseInt(window.innerWidth));
9880
+ }, []);
9881
+
9882
+ var trackScrolling = function trackScrolling() {
9883
+ var offsetTop = navRef.current.getBoundingClientRect().top;
9884
+
9885
+ if (offsetTop === 0) {
9886
+ setIsSticky(true);
9887
+ } else {
9888
+ setIsSticky(false);
9889
+ }
9890
+ };
9812
9891
 
9813
9892
  return React__default.createElement(
9814
- 'section',
9893
+ React__default.Fragment,
9815
9894
  null,
9816
9895
  React__default.createElement(
9817
9896
  Navbar,
9818
- { variant: variant, expand: 'lg', bg: 'primary' },
9897
+ {
9898
+ className: main_37 ? 'bottom-nav ios-nav' : 'bottom-nav android-nav',
9899
+ variant: 'dark',
9900
+ expand: 'xl',
9901
+ bg: 'primary',
9902
+ sticky: 'top',
9903
+ ref: navRef,
9904
+ style: { minHeight: '61px' } },
9819
9905
  React__default.createElement(
9820
9906
  Container,
9821
- null,
9822
- React__default.createElement(Navbar.Toggle, { 'aria-controls': 'basic-navbar-nav' }),
9907
+ { className: 'mobile-nav' },
9823
9908
  React__default.createElement(
9824
9909
  Navbar.Brand,
9825
- { href: '/', style: { margin: '0 auto' } },
9826
- React__default.createElement('img', { src: logo, style: { height: '40px' } })
9910
+ { id: 'nav-mobile-sm', className: 'nav-mobile-logo' },
9911
+ React__default.createElement(
9912
+ Link,
9913
+ { href: '/' },
9914
+ React__default.createElement(
9915
+ 'a',
9916
+ null,
9917
+ mobileLogo && screenWidth < 1200 ? React__default.createElement('img', { src: mobileLogo }) : React__default.createElement('img', { src: logo, className: 'logo', style: { height: '50px' } })
9918
+ )
9919
+ )
9827
9920
  ),
9828
9921
  React__default.createElement(
9922
+ 'div',
9923
+ { className: 'nav-toggle' },
9924
+ React__default.createElement(Navbar.Toggle, { 'aria-controls': 'basic-navbar-nav' }),
9925
+ React__default.createElement(
9926
+ Navbar.Brand,
9927
+ { id: 'nav-mobile-md', className: 'nav-mobile-logo' },
9928
+ React__default.createElement(
9929
+ Link,
9930
+ { href: '/' },
9931
+ React__default.createElement(
9932
+ 'a',
9933
+ null,
9934
+ mobileLogo && screenWidth < 1200 ? React__default.createElement('img', { src: mobileLogo }) : React__default.createElement('img', { src: logo, className: 'logo', style: { height: '50px' } })
9935
+ )
9936
+ )
9937
+ ),
9938
+ React__default.createElement(Search, { device: 'mobile' })
9939
+ ),
9940
+ subNav && React__default.createElement(
9829
9941
  Navbar.Collapse,
9830
- { id: 'basic-navbar-nav' },
9942
+ { id: 'basic-navbar-sub' },
9831
9943
  React__default.createElement(
9832
9944
  Nav,
9833
9945
  { className: 'mr-auto' },
9834
- dataObject && dataObject.map(function (row, index) {
9835
- if (row.subQuery.length > 1) {
9836
- return React__default.createElement(
9946
+ subNav && subNav.map(function (row, index) {
9947
+ if (row.subQuery && row.subQuery.length > 0) {
9948
+ return row.name ? React__default.createElement(
9837
9949
  NavDropdown,
9838
9950
  { key: index, title: row.name, id: 'basic-nav-dropdown' },
9839
9951
  row.subQuery && row.subQuery.map(function (ddRow, subIndex) {
9840
9952
  if (ddRow.type === 'divider') {
9841
- return React__default.createElement(NavDropdown.Divider, null);
9953
+ return React__default.createElement(NavDropdown.Divider, { key: subIndex });
9842
9954
  } else {
9843
- return React__default.createElement(
9844
- Link,
9845
- { key: subIndex, href: ddRow.url || '#' },
9846
- React__default.createElement(
9847
- 'a',
9848
- { target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
9849
- ddRow.name
9850
- )
9851
- );
9955
+ if (ddRow.url && ddRow.name) {
9956
+ return ddRow.url && ddRow.name ? React__default.createElement(
9957
+ Link,
9958
+ { key: subIndex, href: ddRow.url },
9959
+ React__default.createElement(
9960
+ 'a',
9961
+ { target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
9962
+ ddRow.name
9963
+ )
9964
+ ) : null;
9965
+ } else return null;
9852
9966
  }
9853
9967
  })
9854
- );
9968
+ ) : null;
9855
9969
  } else {
9856
- // Link default
9857
- // return <Nav.Link href={row.url} key={index}>{row.name}</Nav.Link>
9858
- return React__default.createElement(
9970
+ return row.url && row.name ? React__default.createElement(
9859
9971
  Link,
9860
- { key: index, href: row.url || '#' },
9972
+ { key: index, href: row.url },
9861
9973
  React__default.createElement(
9862
9974
  'a',
9863
9975
  { target: row.blank ? '_blank' : '_self', className: 'nav-link' },
9864
9976
  row.name
9865
9977
  )
9866
- );
9978
+ ) : null;
9867
9979
  }
9868
9980
  })
9869
- ),
9870
- React__default.createElement(Search, null)
9981
+ )
9871
9982
  ),
9872
- subNav && React__default.createElement(
9983
+ React__default.createElement(
9873
9984
  Navbar.Collapse,
9874
- { id: 'basic-navbar-sub' },
9985
+ { id: 'basic-navbar-nav' },
9875
9986
  React__default.createElement(
9876
9987
  Nav,
9877
9988
  { className: 'mr-auto' },
9878
- subNav && subNav.map(function (row, index) {
9989
+ dataObject && dataObject.map(function (row, index) {
9879
9990
  if (row.subQuery && row.subQuery.length > 0) {
9880
9991
  return row.name ? React__default.createElement(
9881
9992
  NavDropdown,
@@ -9884,17 +9995,15 @@ var NavNative = function NavNative(props) {
9884
9995
  if (ddRow.type === 'divider') {
9885
9996
  return React__default.createElement(NavDropdown.Divider, { key: subIndex });
9886
9997
  } else {
9887
- if (ddRow.url && ddRow.name) {
9888
- return ddRow.url && ddRow.name ? React__default.createElement(
9889
- Link,
9890
- { key: subIndex, href: ddRow.url },
9891
- React__default.createElement(
9892
- 'a',
9893
- { target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
9894
- ddRow.name
9895
- )
9896
- ) : null;
9897
- } else return null;
9998
+ return ddRow.url && ddRow.name ? React__default.createElement(
9999
+ Link,
10000
+ { key: subIndex, href: ddRow.url },
10001
+ React__default.createElement(
10002
+ 'a',
10003
+ { target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
10004
+ ddRow.name
10005
+ )
10006
+ ) : null;
9898
10007
  }
9899
10008
  })
9900
10009
  ) : null;
@@ -9910,7 +10019,8 @@ var NavNative = function NavNative(props) {
9910
10019
  ) : null;
9911
10020
  }
9912
10021
  })
9913
- )
10022
+ ),
10023
+ React__default.createElement(Search, { device: 'mobile' })
9914
10024
  ),
9915
10025
  website && React__default.createElement(
9916
10026
  Navbar.Collapse,
@@ -9918,7 +10028,7 @@ var NavNative = function NavNative(props) {
9918
10028
  React__default.createElement(
9919
10029
  Nav,
9920
10030
  { className: 'mr-auto' },
9921
- React__default.createElement(NavFooter, { website: website })
10031
+ socialFooterNav ? React__default.createElement(SocialNavFooter, { website: website }) : React__default.createElement(NavFooter, { website: website })
9922
10032
  )
9923
10033
  )
9924
10034
  )
@@ -9926,7 +10036,7 @@ var NavNative = function NavNative(props) {
9926
10036
  React__default.createElement(
9927
10037
  'style',
9928
10038
  { jsx: 'true' },
9929
- '\n @media screen and (max-width: 991px) {\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: 20px;\n border-bottom: 0.5px solid white;\n margin-bottom: 15px;\n }\n .navbar .mobile-nav .navbar-collapse .form-inline {\n margin: 5px 0px;\n }\n .navbar .mobile-nav .navbar-collapse:last-child {\n border-bottom: none;\n margin-bottom: 0px;\n padding-bottom: 0px;\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 }\n @media screen and (min-width: 992px) {\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 }\n '
10039
+ '\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 \n #nav-mobile-sm{\n display: none;\n }\n \n\n @media screen and (max-width: 1399px) {\n .mobile-nav .nav-toggle {\n width: 100%;\n display: flex;\n justify-content: space-between;\n }\n .nav-mobile-logo {\n margin-left: 1.5rem;\n \n }\n #nav-mobile-md{\n margin-right: auto;\n }\n .nav-mobile-logo img {\n height: 48px!important;\n \n }\n .nav-mobile-logo img {\n height: 38px !important;\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 ul::-webkit-scrollbar, .dropdown-menu::-webkit-scrollbar {\n width: 10px;\n background: rgba(0,0,0,.35);\n }\n ul::-webkit-scrollbar-thumb, .dropdown-menu::-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 (max-width: 1199px) {\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: block;\n }\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\n @media screen and (min-width: 1399px) {\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\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 flex: 1 1 auto;\n margin-left: .25rem;\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 \n #nav-mobile-md{\n display: none;\n }\n #nav-mobile-sm{\n display: inline-block;\n margin: 0 auto .5rem;\n }\n .nav-toggle{\n margin:.5rem 0;\n }\n }\n \n '
9930
10040
  )
9931
10041
  );
9932
10042
  };
@@ -15685,5 +15795,5 @@ var Ustream = function Ustream(_ref) {
15685
15795
  );
15686
15796
  };
15687
15797
 
15688
- export { ContentCard as DeckContent, GridContent$1 as GridContent, Queue as DeckQueue, ThumbnailCard, TaxonomyCard, GroupDeck, YoutubeGroup, QueueDeckExpanded, VideoSeriesListing$1 as VideoSeriesListing, MasterDeck$1 as MasterDeck, PublicationDeck, IssueDeck, IssueContentDeck, Column1, Column2, Column3, Header, LeftNav, AccordionPanel, SocialShare, PageFilter, NavMagazine, NavNative, NavNormal, NavDvm, TemplateNormal, AD, AD300x250, AD300x250x600, AD728x90, ADFooter, getSerializers$1 as getSerializers, Search, Feature, Breadcrumbs, SetCookie, Hero, AlphabeticList, PdfDownload, RelatedTopicsDropdown, Ustream };
15798
+ export { ContentCard as DeckContent, GridContent$1 as GridContent, Queue as DeckQueue, ThumbnailCard, TaxonomyCard, GroupDeck, YoutubeGroup, QueueDeckExpanded, VideoSeriesListing$1 as VideoSeriesListing, MasterDeck$1 as MasterDeck, PublicationDeck, IssueDeck, IssueContentDeck, Column1, Column2, Column3, Header, LeftNav, AccordionPanel, SocialShare, PageFilter, NavMagazine, NavNative, NavNormal, NavDvm, TemplateNormal, AD, AD300x250, AD300x250x600, AD728x90, ADFooter, getSerializers$1 as getSerializers, Search, Feature, Breadcrumbs, SetCookie, Hero, AlphabeticList, PdfDownload, RelatedTopicsDropdown, Ustream, SideFooter };
15689
15799
  //# sourceMappingURL=index.es.js.map