New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@planningcenter/cc-nav

Package Overview
Dependencies
Maintainers
27
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@planningcenter/cc-nav - npm Package Compare versions

Comparing version

to
4.3.3

2

dist/nav.js

@@ -1,2 +0,2 @@

var n=require("@planningcenter/cc-api-client"),e=require("prop-types"),t=require("react"),i=require("@planningcenter/icons/sprites/groups.svg"),a=require("@planningcenter/symbol"),r=require("@reach/menu-button"),o=require("@planningcenter/jolt-client");function l(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var s=/*#__PURE__*/l(t),c=/*#__PURE__*/l(i),d=/*#__PURE__*/l(o);function u(){return u=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i])}return n},u.apply(this,arguments)}function f(n,e){if(null==n)return{};var t,i,a={},r=Object.keys(n);for(i=0;i<r.length;i++)e.indexOf(t=r[i])>=0||(a[t]=n[t]);return a}var g=["key"],m=["key"],p=["key"],h=["as"];function v(n){var e,i,a,r,o=n.links,l=n.loginLink,c=n.myChurchCenterLink,d=n.notificationCount,f=n.notificationIconPathPrefix,g=void 0===f?"":f,m=n.notificationLink,p=n.organizationDisplayName,h=n.organizationImageUrl,v=n.organizationLink,_=n.personDisplayName,x=n.personIdentified,w=n.personImageUrl,E=(i=(e=s.default.useState(window.innerWidth))[0],r=s.default.useCallback(function(){return a(window.innerWidth)},[a=e[1]]),s.default.useEffect(function(){return window.addEventListener("resize",r),window.addEventListener("orientationchange",r),function(){window.removeEventListener("resize",r),window.removeEventListener("orientationchange",r)}},[r]),i>=720),I=t.useState(0),L=I[0],P=I[1],C=s.default.useCallback(function(){var n=window.pageYOffset;P(n)},[P]);return t.useEffect(function(){return window.addEventListener("scroll",C,{passive:!0}),function(){window.removeEventListener("scroll",C)}},[C]),/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(N,null),L>136&&/*#__PURE__*/s.default.createElement("div",{className:"condensed-header-placeholder"}),/*#__PURE__*/s.default.createElement("header",{className:"Header "+(L>136&&"condensed-header")},/*#__PURE__*/s.default.createElement("div",{className:"Header__layout"},/*#__PURE__*/s.default.createElement("div",{className:"Header__org-wrapper"},/*#__PURE__*/s.default.createElement(k,u({},v,{className:"Header__org-link"}),h?/*#__PURE__*/s.default.createElement("img",{src:h,alt:p,className:"Header__org-avatar"}):/*#__PURE__*/s.default.createElement("h1",{className:"Header__org-name"},p))),E?/*#__PURE__*/s.default.createElement(b,{links:o,loginLink:l,myChurchCenterLink:c,notificationCount:d,notificationIconPathPrefix:g,notificationLink:m,personDisplayName:_,personIdentified:x,personImageUrl:w}):/*#__PURE__*/s.default.createElement(y,{links:o,loginLink:l,myChurchCenterLink:c,notificationCount:d,notificationIconPathPrefix:g,notificationLink:m,personDisplayName:_,personIdentified:x,personImageUrl:w,scrollLimit:136,scrollPosition:L}))))}function b(n){var e,t,i=n.links,a=n.loginLink,o=n.myChurchCenterLink,l=n.notificationCount,c=n.notificationIconPathPrefix,d=void 0===c?"":c,p=n.notificationLink,h=n.personDisplayName,v=n.personIdentified,b=n.personImageUrl;return i.length>5?(e=i.slice(0,4),t=i.slice(4)):e=i,/*#__PURE__*/s.default.createElement("nav",{className:"Navigation d-n@iframe"},e.map(function(n){var e=n.key,t=f(n,g);/*#__PURE__*/return s.default.createElement(k,u({className:"Navigation__link",key:e},t))}),t&&/*#__PURE__*/s.default.createElement(r.Menu,null,function(n){/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(r.MenuButton,{className:"Navigation__more-button Navigation__link"},"More",/*#__PURE__*/s.default.createElement("span",{className:"Navigation__more-button-toggle"},/*#__PURE__*/s.default.createElement(E,{style:{transform:n.isOpen?"scaleY(-1)":"scaleY(1)",transition:"transform 0.2s"}}))),/*#__PURE__*/s.default.createElement(r.MenuList,{className:"Navigation-menu"},t.map(function(n){var e=n.key,t=f(n,m);/*#__PURE__*/return s.default.createElement(r.MenuLink,u({className:"Navigation-link",key:e},t))})))}),v?/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(x,{notificationCount:l,notificationIconPathPrefix:d,notificationLink:p}),/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},o),/*#__PURE__*/s.default.createElement(I,{displayName:h,imageUrl:b}))):/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},a)))}function y(n){var e=n.links,t=n.loginLink,i=n.myChurchCenterLink,a=n.notificationIconPathPrefix,o=n.personDisplayName,l=n.personIdentified,c=n.personImageUrl;/*#__PURE__*/return s.default.createElement("nav",{className:"AltNavigation d-n@iframe"},l&&/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(x,{notificationCount:n.notificationCount,notificationIconPathPrefix:void 0===a?"":a,notificationLink:n.notificationLink}),/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},i),/*#__PURE__*/s.default.createElement("img",{src:c,alt:o+"'s avatar",className:"AltNavigation__person-avatar"}))),/*#__PURE__*/s.default.createElement(r.Menu,null,function(){/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(_,null),/*#__PURE__*/s.default.createElement(r.MenuList,{className:"AltNavigation__layout"},/*#__PURE__*/s.default.createElement("div",{className:"AltNavigation__person-box "+(l&&"logged-in")},/*#__PURE__*/s.default.createElement("div",{className:"display-flex align-items-center justify-content-space-between"},/*#__PURE__*/s.default.createElement("div",{className:"AltNavigation__person"}),/*#__PURE__*/s.default.createElement(_,null))),e.map(function(n){var e=n.key,t=f(n,p);/*#__PURE__*/return s.default.createElement(r.MenuLink,u({className:"AltNavigation__link",key:e},t))}),!l&&/*#__PURE__*/s.default.createElement(r.MenuLink,u({className:"AltNavigation__link"},t))))}))}function _(){/*#__PURE__*/return s.default.createElement(r.MenuButton,{className:"AltNavigation__trigger"},/*#__PURE__*/s.default.createElement("div",{className:"icon"},/*#__PURE__*/s.default.createElement("span",{className:"line"}),/*#__PURE__*/s.default.createElement("span",{className:"line"}),/*#__PURE__*/s.default.createElement("span",{className:"line"})))}function N(){/*#__PURE__*/return s.default.createElement("style",null,'\n /* Header */\n .Header {\n background-color: var(--color-tint9);\n border-bottom: 1px solid var(--color-tint7);\n height: 136px;\n padding: 1.5rem 2rem 1.5rem 1.5rem;\n z-index: 1000; /* Thanks to Vimeo for setting their z-index to 999 😠*/\n }\n\n .iframed .Header { position: relative }\n\n @media (min-width: 720px) {\n .Header { padding: 1.5rem 2rem }\n }\n\n .Header__layout {\n align-items: center;\n display: flex;\n height: 100%;\n justify-content: space-between;\n margin: 0 auto;\n max-width: 900px;\n width: 100%;\n }\n .Header__org-wrapper {\n padding-right: 2rem;\n }\n .Header__org-link {\n display: block;\n }\n .Header__org-name {\n font-size: 18px;\n line-height: 1.2;\n margin: 0;\n max-width: 220px;\n }\n .Header__org-avatar {\n max-height: 80px;\n }\n [data-color-scheme="dark"][data-contrast="low"] .Header__org-avatar {\n background-color: var(--color-tint0);\n border-radius: 4px;\n padding: 2px;\n }\n\n /* Condensed Header */\n .condensed-header {\n border-bottom-color: var(--color-tint6);\n height: 68px;\n position: fixed;\n top: 0;\n width: 100%;\n animation: fade-in 0.25s;\n }\n\n .condensed-header-placeholder {\n height: 136px; /* this keeps the browser from jumping when scrolling to the bottom of a short page */\n }\n .condensed-header .Navigation-wrapper,\n .condensed-header .Navigation-button {\n height: 34px;\n }\n .condensed-header .Navigation-avatar {\n height: 24px;\n width: 24px;\n min-width: 24px;\n }\n\n .condensed-header .Navigation-displayName {\n font-size: 12px;\n }\n\n .condensed-header .Header__org-avatar {\n max-height: 48px;\n }\n\n .condensed-header .Navigation__link {\n font-size: 0.875rem;\n }\n\n .condensed-header .AltNavigation__trigger .icon .line {\n height: 3px;\n margin: 4px auto;\n width: 28px;\n transition: all 0.2s;\n }\n\n @keyframes fade-in {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n /* Navigation */\n .Navigation {\n align-items: center;\n display: flex;\n justify-content: flex-end;\n white-space: nowrap;\n }\n .Navigation__link {\n color: var(--color-tint2);\n margin-right: 1.5rem;\n }\n .Navigation__link[aria-current=true],\n .Navigation__link[aria-current=page] {\n color: var(--color-tint1);\n font-weight: 600;\n }\n .Navigation__more-button {\n background-color: transparent;\n border: 0;\n font-weight: 400;\n padding: 0;\n }\n .Navigation__more-button-toggle {\n font-size: 10px;\n padding-left: 2px;\n }\n\n /* AltNavigation */\n .AltNavigation {\n justify-content: center;\n align-items: center;\n display: flex;\n gap: 1.5rem;\n }\n .AltNavigation .NotificationBell {\n padding: 4px;\n }\n .AltNavigation .NotificationBell:after {\n right: 4px;\n top: 8px;\n }\n .AltNavigation__layout[data-reach-menu-list]{\n animation: slide-in 0.3s ease;\n background: var(--color-tint9);\n border: 0;\n border-left: 1px solid var(--color-tint5);\n bottom: 0;\n box-shadow: -2px 0 6px rgba(0,0,0,0.1);\n overflow: auto;\n padding: 0;\n position: fixed;\n right: 0;\n top: 0;\n width: 280px;\n z-index: 998;\n }\n .AltNavigation__layout [data-reach-menu-item] { outline: none }\n .AltNavigation__link {\n color: var(--color-tint1);\n display: block;\n border-bottom: 1px solid var(--color-tint6);\n padding: 1rem;\n }\n .AltNavigation__link[data-selected] {\n background: var(--color-tint7);\n color: var(--color-tint1);\n }\n .AltNavigation .Navigation__link {\n margin-right: 0;\n }\n .AltNavigation__trigger {\n background: transparent;\n border: 0;\n padding: 0;\n }\n .AltNavigation__person-box {\n border-bottom: 1px solid var(--color-tint5);\n display: flex;\n flex-direction: column;\n height: 136px;\n justify-content: center;\n padding: 0 1.5rem;\n }\n .AltNavigation__person-box.logged-in {\n justify-content: space-between;\n padding: 2rem 1.5rem 0 1.5rem;\n }\n .AltNavigation__person {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n }\n .AltNavigation__person-avatar {\n border-radius: 100%;\n width: 32px;\n display: block;\n max-width: unset;\n }\n .AltNavigation__person-name,\n .AltNavigation__person-name[data-selected] {\n background: transparent;\n color: var(--color-tint1);\n font-size: 1rem;\n font-weight: 500;\n padding-left: 1rem;\n }\n .AltNavigation__person-actions {\n font-size: 0.875rem;\n padding-top: 0.5rem;\n }\n .AltNavigation__trigger .icon .line {\n background-color: var(--color-tint3);\n border-radius: 4px;\n display: block;\n height: 4px;\n margin: 6px auto;\n -webkit-transition: all 0.3s ease-in-out;\n -o-transition: all 0.3s ease-in-out;\n transition: all 0.3s ease-in-out;\n width: 32px;\n }\n\n .AltNavigation__trigger .icon .line:first-child {\n margin-top: 0;\n }\n\n .AltNavigation__trigger .icon .line:nth-child(3){ margin-bottom: 0 }\n .AltNavigation__trigger .icon:hover { cursor: pointer }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(2) {\n opacity: 0;\n }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(1) {\n -webkit-transform: translateY(10px) rotate(45deg);\n -ms-transform: translateY(10px) rotate(45deg);\n -o-transform: translateY(10px) rotate(45deg);\n transform: translateY(10px) rotate(45deg);\n }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(3) {\n -webkit-transform: translateY(-10px) rotate(-45deg);\n -ms-transform: translateY(-10px) rotate(-45deg);\n -o-transform: translateY(-10px) rotate(-45deg);\n transform: translateY(-10px) rotate(-45deg);\n }\n @keyframes slide-in {\n 0% { transform: translateX(100%) }\n 100% { transform: translateX(0) }\n }\n\n /* LoggedInLinks */\n .LoggedInLinks {\n align-items: flex-start;\n display: flex;\n margin: 0 -1.5rem\n }\n .LoggedInLinks > * { flex: 1 }\n .LoggedInLinks > div:last-child { border-left: 1px solid var(--color-tint5) }\n .LoggedInLinks [data-reach-menu-item],\n .LoggedInLinks [data-selected] {\n background: var(--color-tint7);\n color: var(--color-tint1);\n display: block;\n flex: 1;\n font-size: 0.875rem;\n line-height: 1;\n padding: 0.75rem;\n text-align: center;\n }\n\n /* NotificationBell */\n .NotificationBell--has-notifications {\n position: relative;\n }\n\n .Navigation .notification-icon {\n width: 24px;\n height: 24px;\n }\n\n @media screen and (pointer: fine) {\n .Navigation .notification-icon {\n width: 20px;\n height: 20px;\n } \n }\n\n .condensed-header .Navigation .notification-icon {\n width: 20px;\n height: 20px;\n }\n\n .AltNavigation .notification-icon {\n width: 24px;\n height: 24px;\n }\n\n .NotificationBell--has-notifications:after {\n background-color: var(--color-ruby);\n border-radius: 100%;\n border: 1px solid var(--color-tint10);\n content: "";\n position: absolute;\n height: 7px;\n right: 0;\n top: 4px;\n width: 7px;\n }\n\n /* utility */\n .display-flex { display: flex }\n .align-items-center { align-items: center }\n .justify-content-space-between { justify-content: space-between }\n')}function k(n){var e=n.as,t=void 0===e?"a":e,i=f(n,h);/*#__PURE__*/return s.default.createElement(t,i)}function x(n){var e=n.notificationCount,t=n.notificationIconPathPrefix,i=void 0===t?"":t;/*#__PURE__*/return s.default.createElement(k,u({},n.notificationLink,{className:"Navigation__link NotificationBell "+(e>0&&"NotificationBell--has-notifications")}),/*#__PURE__*/s.default.createElement("span",null,/*#__PURE__*/s.default.createElement(w,{pathPrefix:i,notificationCount:e})))}function w(n){var e=n.pathPrefix;/*#__PURE__*/return s.default.createElement(a.Symbol,{symbol:""+(void 0===e?"":e)+c.default+"#notification",className:"p-r notification-icon","aria-label":n.notificationCount+" notifications"})}function E(n){var e=n.style;/*#__PURE__*/return s.default.createElement("svg",{className:"symbol",role:"img",title:"down-chevron icon",style:void 0===e?{}:e},/*#__PURE__*/s.default.createElement("symbol",{xmlns:"http://www.w3.org/2000/svg",id:"Navigation-svg-symbol-down-chevron",viewBox:"0 0 16 16"},/*#__PURE__*/s.default.createElement("title",null,"down-chevron"),/*#__PURE__*/s.default.createElement("polygon",{points:"8.003 14.068 0.005 6.07 1.782 4.293 8.003 10.514 14.223 4.293 16 6.07 8.003 14.068"})),/*#__PURE__*/s.default.createElement("use",{href:"#Navigation-svg-symbol-down-chevron"}))}function I(n){var e=n.displayName,t=n.imageUrl;/*#__PURE__*/return s.default.createElement("div",null,/*#__PURE__*/s.default.createElement("style",null,"\n .Navigation-avatar {\n border-radius: 100%;\n height: 32px;\n width: 32px;\n min-width: 32px;\n }\n\n @media screen and (pointer:fine) {\n .Navigation-avatar {\n height: 24px;\n width: 24px;\n min-width: 24px;\n }\n }\n "),/*#__PURE__*/s.default.createElement("img",{className:"Navigation-avatar d-b",width:32,height:32,alt:e+"'s avatar",src:t}))}function L(n,e){var t=s.default.useState(function(){try{var t=window.localStorage.getItem(n);return t?JSON.parse(t):e}catch(n){return e}}),i=t[0],a=t[1],r=s.default.useCallback(function(e){try{var t=e instanceof Function?e(i):e;a(t),window.localStorage.setItem(n,JSON.stringify(t))}catch(n){console.log(n)}},[a]);return[i,r]}v.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,organizationDisplayName:e.string.isRequired,organizationImageUrl:e.string,organizationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired},b.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired},y.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired,scrollLimit:e.number.isRequired,scrollPosition:e.number.isRequired},k.propTypes={as:e.any},x.propTypes={notificationCount:e.number.isRequired,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired},w.propTypes={notificationCount:e.number.isRequired,pathPrefix:e.string},I.propTypes={displayName:e.string,imageUrl:e.string.isRequired};var P=function(e,t){try{return Promise.resolve(n.sessionApiClient.post("/notifications/v2/me/jolt_subscribe",{data:{attributes:{channel:e,connection_id:t}}})).then(function(n){return n.data.id})}catch(n){return Promise.reject(n)}},C=function(){try{return Promise.resolve(n.sessionApiClient.post("/global/v2/jolt_connect")).then(function(n){return n.data.id})}catch(n){return Promise.reject(n)}},q=function(){try{var e={ChurchCenterWebMenu:["items"],Organization:["avatar_url","name"],Person:["avatar_url","first_name"],ThemeSettings:["primary_color","theme_enabled","version"],WebBoot:["current_organization","current_person","features","jolt_websocket_url","published_menu","published_theme_settings"]},t="/publishing/v2/web_boot?include="+["current_organization","current_person","published_menu","published_theme_settings"]+"&"+Object.keys(e).map(function(n){return"fields["+n+"]="+e[n]}).join("&");return Promise.resolve(n.sessionApiClient.get(t)).then(function(n){var e=function(e){var t,i,a,r,o=null==(t=n.data.relationships[e].data)||null==(i=t[0])?void 0:i.type,l=null==(a=n.data.relationships[e].data)||null==(r=a[0])?void 0:r.id;return n.included.find(function(n){return n.type===o&&n.id===l})},t=e("published_menu").attributes.items.map(function(n){return{children:n.label,href:n.uri}}),i=e("current_organization"),a=e("current_person"),r=i.attributes.name,o=i.attributes.avatar_url,l=a.attributes.first_name,s=a.attributes.avatar_url+"?g=120x120%23",c="anonymous"!==a.id,d=e("published_theme_settings");return{joltWebsocketUrl:n.data.attributes.jolt_websocket_url,links:t,organizationDisplayName:r,organizationImageUrl:o,personDisplayName:l,personId:c?a.id:null,personIdentified:c,personImageUrl:s,publishedThemeSettings:d}})}catch(n){return Promise.reject(n)}},j=["@churchcenter/nav:SelfHydratingNavitar","@churchcenter/nav@2.0.0:SelfHydratingHeader","@planningcenter/cc-nav@2.0.0:SelfHydratingHeader","@planningcenter/cc-nav@4.2.5:SelfHydratingHeader"],A=function(){return null},R=/*#__PURE__*/s.default.createRef();function z(n){var e=n.defaultLinks,i=n.mapLinkProps,a=void 0===i?U:i,r=L("@planningcenter/cc-nav@4.3.1:SelfHydratingHeader",{joltWebsocketUrl:null,links:void 0===e?[]:e,organizationDisplayName:n.defaultOrganizationDisplayName,organizationImageUrl:n.defaultOrganizationImageUrl,personDisplayName:n.defaultPersonDisplayName,personId:null,personIdentified:n.defaultPersonIdentified,personImageUrl:n.defaultPersonImageUrl,publishedThemeSettings:{attributes:{primary_color:null,theme_enabled:!1}}}),o=r[0],l=r[1],c=o.publishedThemeSettings,f=(c=void 0===c?{attributes:{primary_color:null,theme_enabled:!1}}:c).attributes,g=f.primary_color,m=f.theme_enabled;s.default.useEffect(function(){j.forEach(function(n){return window.localStorage.removeItem(n)})});var p=s.default.useState(500),h=p[0],b=p[1];s.default.useEffect(function(){var n,e=!0;return q().then(function(n){e&&l(n)}).catch(function(e){console.error("Refetching header props:",e),n=window.setTimeout(function(){return b(h+100)},h)}),function(){e=!1,n&&window.clearTimeout(n)}},[h,b]),t.useEffect(function(){g&&m?(document.body.style.setProperty("--color-brand-light",g),document.body.style.setProperty("--color-brand-dark",g),document.body.style.setProperty("--color-brand-gradient-start","var(--color-brand)"),document.body.style.setProperty("--color-brand-gradient-end","var(--color-brand)")):(document.body.style.setProperty("--color-brand-light","var(--color-turquoise)"),document.body.style.setProperty("--color-brand-dark","var(--color-turquoise)"),document.body.style.setProperty("--color-brand-gradient-start","var(--color-topaz)"),document.body.style.setProperty("--color-brand-gradient-end","var(--color-emerald)"))},[g,m]);var y=s.default.useCallback(function(){window.localStorage.removeItem("@planningcenter/cc-nav@4.3.1:SelfHydratingHeader"),window.localStorage.removeItem("@planningcenter/cc-nav:useNotificationCount")});R.current=y,s.default.useEffect(function(){return function(){return R.current=A}},[]);var _=function(n){"/logout"===new URL(n.target.href).pathname&&y()},N=["/profile","/logout","/login"],k=o.links.filter(function(n){return!N.includes(n.href)}).map(a).map(function(n){return u({},n,{onClick:_})}),x=a({children:"Log in",href:"/login",onClick:function(n){n.target.href="/login?return="+encodeURIComponent(window.location.href)}}),w=function(n){var e=n.joltWebsocketUrl,t=n.personId,i=s.default.useState(null),a=i[0],r=i[1],o=s.default.useState(null),l=o[0],c=o[1];return s.default.useEffect(function(){var n=e&&t?new d.default(e,{fetchAuthTokenFn:C}):null;return r(n),function(){return n&&n.disconnect()}},[e,t]),s.default.useEffect(function(){var n=null,e=t?"church_center.notifications.people."+t:null;return a&&e&&(n=a.subscribe(e,{fetchSubscribeTokenFn:P})),c(n),function(){n&&a.unsubscribe(e)}},[a,t]),l}({joltWebsocketUrl:o.joltWebsocketUrl,personId:o.personId}),E=S({notificationsChannel:w,personIdentified:o.personIdentified}),I=a({href:"/notifications"}),z=a({href:"/me"}),H="/"+window.location.pathname.split("/")[1];/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(v,{links:k,loginLink:x,myChurchCenterLink:z,notificationCount:E,notificationIconPathPrefix:H,notificationLink:I,organizationDisplayName:o.organizationDisplayName,organizationImageUrl:o.organizationImageUrl,organizationLink:a({href:"/home"}),personDisplayName:o.personDisplayName,personIdentified:o.personIdentified,personImageUrl:o.personImageUrl}))}function H(n,e){try{return n.split("/")[1]===e.split("/")[1]}catch(n){return!1}}R.current=A,z.propTypes={defaultLinks:e.arrayOf(e.shape({children:e.any.isRequired,href:e.string.isRequired})),defaultOrganizationDisplayName:e.string.isRequired,defaultOrganizationImageUrl:e.string,defaultPersonDisplayName:e.string.isRequired,defaultPersonIdentified:e.bool.isRequired,defaultPersonImageUrl:e.string.isRequired,mapLinkProps:e.func};var U=function(n){return u({},n,{"aria-current":H(window.location.pathname,n.href)?"true":null,key:n.href})};function S(e){var t=e.personIdentified,i=e.notificationsChannel,a=e.notificationDelay,r=void 0===a?1e3:a,o=s.default.useState(0),l=o[0],c=o[1],d=L("@planningcenter/cc-nav:useNotificationCount",0),u=d[0],f=d[1];s.default.useEffect(function(){if(t){var e=!0,i=window.setTimeout(function(){n.sessionApiClient.get("/notifications/v2/me/notifications?where[read_at]=&per_page=0").then(function(n){return e&&f(n.meta.total_count)}).catch(function(){return f(null)})},r);return function(){e=!1,window.clearTimeout(i)}}},[t,l,r]);var g=s.default.useCallback(function(){return c(function(n){return n+1})},[c]);return s.default.useEffect(function(){if(i&&t){var n=["notifications.v2.events.notification.updated","notifications.v2.events.notification.created","notifications.v2.events.notification.destroyed"].map(function(n){return i.bind(n,g)});return function(){return n.forEach(function(n){return n()})}}},[i,t]),u}exports.BringYourOwnPropsHeader=v,exports.SelfHydratingHeader=z,exports.fetchHeaderProps=q,exports.resetCache=function(){R.current()},exports.useNotificationCount=S;
var n=require("@planningcenter/cc-api-client"),e=require("prop-types"),t=require("react"),i=require("@planningcenter/icons/sprites/groups.svg"),a=require("@planningcenter/symbol"),r=require("@reach/menu-button"),o=require("@planningcenter/jolt-client");function l(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var s=/*#__PURE__*/l(t),c=/*#__PURE__*/l(i),d=/*#__PURE__*/l(o);function u(){return u=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i])}return n},u.apply(this,arguments)}function f(n,e){if(null==n)return{};var t,i,a={},r=Object.keys(n);for(i=0;i<r.length;i++)e.indexOf(t=r[i])>=0||(a[t]=n[t]);return a}var g=["key"],m=["key"],p=["key"],h=["as"];function v(n){var e,i,a,r,o=n.links,l=n.loginLink,c=n.myChurchCenterLink,d=n.notificationCount,f=n.notificationIconPathPrefix,g=void 0===f?"":f,m=n.notificationLink,p=n.organizationDisplayName,h=n.organizationImageUrl,v=n.organizationLink,_=n.personDisplayName,x=n.personIdentified,w=n.personImageUrl,E=(i=(e=s.default.useState(window.innerWidth))[0],r=s.default.useCallback(function(){return a(window.innerWidth)},[a=e[1]]),s.default.useEffect(function(){return window.addEventListener("resize",r),window.addEventListener("orientationchange",r),function(){window.removeEventListener("resize",r),window.removeEventListener("orientationchange",r)}},[r]),i>=720),I=t.useState(0),L=I[0],P=I[1],C=s.default.useCallback(function(){var n=window.pageYOffset;P(n)},[P]);return t.useEffect(function(){return window.addEventListener("scroll",C,{passive:!0}),function(){window.removeEventListener("scroll",C)}},[C]),/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(N,null),L>136&&/*#__PURE__*/s.default.createElement("div",{className:"condensed-header-placeholder"}),/*#__PURE__*/s.default.createElement("header",{className:"Header "+(L>136&&"condensed-header")},/*#__PURE__*/s.default.createElement("div",{className:"Header__layout"},/*#__PURE__*/s.default.createElement("div",{className:"Header__org-wrapper"},/*#__PURE__*/s.default.createElement(k,u({},v,{className:"Header__org-link"}),h?/*#__PURE__*/s.default.createElement("img",{src:h,alt:p,className:"Header__org-avatar"}):/*#__PURE__*/s.default.createElement("h1",{className:"Header__org-name"},p))),E?/*#__PURE__*/s.default.createElement(b,{links:o,loginLink:l,myChurchCenterLink:c,notificationCount:d,notificationIconPathPrefix:g,notificationLink:m,personDisplayName:_,personIdentified:x,personImageUrl:w}):/*#__PURE__*/s.default.createElement(y,{links:o,loginLink:l,myChurchCenterLink:c,notificationCount:d,notificationIconPathPrefix:g,notificationLink:m,personDisplayName:_,personIdentified:x,personImageUrl:w,scrollLimit:136,scrollPosition:L}))))}function b(n){var e,t,i=n.links,a=n.loginLink,o=n.myChurchCenterLink,l=n.notificationCount,c=n.notificationIconPathPrefix,d=void 0===c?"":c,p=n.notificationLink,h=n.personDisplayName,v=n.personIdentified,b=n.personImageUrl;return i.length>5?(e=i.slice(0,4),t=i.slice(4)):e=i,/*#__PURE__*/s.default.createElement("nav",{className:"Navigation d-n@iframe"},e.map(function(n){var e=n.key,t=f(n,g);/*#__PURE__*/return s.default.createElement(k,u({className:"Navigation__link",key:e},t))}),t&&/*#__PURE__*/s.default.createElement(r.Menu,null,function(n){/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(r.MenuButton,{className:"Navigation__more-button Navigation__link"},"More",/*#__PURE__*/s.default.createElement("span",{className:"Navigation__more-button-toggle"},/*#__PURE__*/s.default.createElement(E,{style:{transform:n.isOpen?"scaleY(-1)":"scaleY(1)",transition:"transform 0.2s"}}))),/*#__PURE__*/s.default.createElement(r.MenuList,{className:"Navigation-menu"},t.map(function(n){var e=n.key,t=f(n,m);/*#__PURE__*/return s.default.createElement(r.MenuLink,u({className:"Navigation-link",key:e},t))})))}),v?/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(x,{notificationCount:l,notificationIconPathPrefix:d,notificationLink:p}),/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},o),/*#__PURE__*/s.default.createElement(I,{displayName:h,imageUrl:b}))):/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},a)))}function y(n){var e=n.links,t=n.loginLink,i=n.myChurchCenterLink,a=n.notificationIconPathPrefix,o=n.personDisplayName,l=n.personIdentified,c=n.personImageUrl;/*#__PURE__*/return s.default.createElement("nav",{className:"AltNavigation d-n@iframe"},l&&/*#__PURE__*/s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(x,{notificationCount:n.notificationCount,notificationIconPathPrefix:void 0===a?"":a,notificationLink:n.notificationLink}),/*#__PURE__*/s.default.createElement(k,u({className:"Navigation__link"},i),/*#__PURE__*/s.default.createElement("img",{src:c,alt:o+"'s avatar",className:"AltNavigation__person-avatar"}))),/*#__PURE__*/s.default.createElement(r.Menu,null,function(){/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(_,null),/*#__PURE__*/s.default.createElement(r.MenuList,{className:"AltNavigation__layout"},/*#__PURE__*/s.default.createElement("div",{className:"AltNavigation__person-box "+(l&&"logged-in")},/*#__PURE__*/s.default.createElement("div",{className:"display-flex align-items-center justify-content-space-between"},/*#__PURE__*/s.default.createElement("div",{className:"AltNavigation__person"}),/*#__PURE__*/s.default.createElement(_,null))),e.map(function(n){var e=n.key,t=f(n,p);/*#__PURE__*/return s.default.createElement(r.MenuLink,u({className:"AltNavigation__link",key:e},t))}),!l&&/*#__PURE__*/s.default.createElement(r.MenuLink,u({className:"AltNavigation__link"},t))))}))}function _(){/*#__PURE__*/return s.default.createElement(r.MenuButton,{className:"AltNavigation__trigger"},/*#__PURE__*/s.default.createElement("div",{className:"icon"},/*#__PURE__*/s.default.createElement("span",{className:"line"}),/*#__PURE__*/s.default.createElement("span",{className:"line"}),/*#__PURE__*/s.default.createElement("span",{className:"line"})))}function N(){/*#__PURE__*/return s.default.createElement("style",null,'\n /* Header */\n .Header {\n background-color: var(--color-tint9);\n border-bottom: 1px solid var(--color-tint7);\n height: 136px;\n padding: 1.5rem 2rem 1.5rem 1.5rem;\n z-index: 1000; /* Thanks to Vimeo for setting their z-index to 999 😠*/\n }\n\n .iframed .Header { position: relative }\n\n @media (min-width: 720px) {\n .Header { padding: 1.5rem 2rem }\n }\n\n .Header__layout {\n align-items: center;\n display: flex;\n height: 100%;\n justify-content: space-between;\n margin: 0 auto;\n max-width: 900px;\n width: 100%;\n }\n .Header__org-wrapper {\n padding-right: 2rem;\n }\n .Header__org-link {\n display: block;\n }\n .Header__org-name {\n font-size: 18px;\n line-height: 1.2;\n margin: 0;\n max-width: 220px;\n }\n .Header__org-avatar {\n max-height: 80px;\n }\n [data-color-scheme="dark"][data-contrast="low"] .Header__org-avatar {\n background-color: var(--color-tint0);\n border-radius: 4px;\n padding: 2px;\n }\n\n /* Condensed Header */\n .condensed-header {\n border-bottom-color: var(--color-tint6);\n height: 68px;\n position: fixed;\n top: 0;\n width: 100%;\n animation: fade-in 0.25s;\n }\n\n .condensed-header-placeholder {\n height: 136px; /* this keeps the browser from jumping when scrolling to the bottom of a short page */\n }\n .condensed-header .Navigation-wrapper,\n .condensed-header .Navigation-button {\n height: 34px;\n }\n .condensed-header .Navigation-avatar {\n height: 24px;\n width: 24px;\n min-width: 24px;\n }\n\n .condensed-header .Navigation-displayName {\n font-size: 12px;\n }\n\n .condensed-header .Header__org-avatar {\n max-height: 48px;\n }\n\n .condensed-header .Navigation__link {\n font-size: 0.875rem;\n }\n\n .condensed-header .AltNavigation__trigger .icon .line {\n height: 3px;\n margin: 4px auto;\n width: 28px;\n transition: all 0.2s;\n }\n\n @keyframes fade-in {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n\n /* Navigation */\n .Navigation {\n align-items: center;\n display: flex;\n justify-content: flex-end;\n white-space: nowrap;\n }\n .Navigation__link {\n color: var(--color-tint2);\n margin-right: 1.5rem;\n }\n .Navigation__link[aria-current=true],\n .Navigation__link[aria-current=page] {\n color: var(--color-tint1);\n font-weight: 600;\n }\n .Navigation__more-button {\n background-color: transparent;\n border: 0;\n font-weight: 400;\n padding: 0;\n }\n .Navigation__more-button-toggle {\n font-size: 10px;\n padding-left: 6px;\n }\n\n /* AltNavigation */\n .AltNavigation {\n justify-content: center;\n align-items: center;\n display: flex;\n gap: 1.5rem;\n }\n .AltNavigation .NotificationBell {\n padding: 4px;\n }\n .AltNavigation .NotificationBell:after {\n right: 4px;\n top: 8px;\n }\n .AltNavigation__layout[data-reach-menu-list]{\n animation: slide-in 0.3s ease;\n background: var(--color-tint9);\n border: 0;\n border-left: 1px solid var(--color-tint5);\n bottom: 0;\n box-shadow: -2px 0 6px rgba(0,0,0,0.1);\n overflow: auto;\n padding: 0;\n position: fixed;\n right: 0;\n top: 0;\n width: 280px;\n z-index: 998;\n }\n .AltNavigation__layout [data-reach-menu-item] { outline: none }\n .AltNavigation__link {\n color: var(--color-tint1);\n display: block;\n border-bottom: 1px solid var(--color-tint6);\n padding: 1rem;\n }\n .AltNavigation__link[data-selected] {\n background: var(--color-tint7);\n color: var(--color-tint1);\n }\n .AltNavigation .Navigation__link {\n margin-right: 0;\n }\n .AltNavigation__trigger {\n background: transparent;\n border: 0;\n padding: 0;\n }\n .AltNavigation__person-box {\n border-bottom: 1px solid var(--color-tint5);\n display: flex;\n flex-direction: column;\n height: 136px;\n justify-content: center;\n padding: 0 1.5rem;\n }\n .AltNavigation__person-box.logged-in {\n justify-content: space-between;\n padding: 2rem 1.5rem 0 1.5rem;\n }\n .AltNavigation__person {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n }\n .AltNavigation__person-avatar {\n border-radius: 100%;\n width: 32px;\n display: block;\n max-width: unset;\n }\n .AltNavigation__person-name,\n .AltNavigation__person-name[data-selected] {\n background: transparent;\n color: var(--color-tint1);\n font-size: 1rem;\n font-weight: 500;\n padding-left: 1rem;\n }\n .AltNavigation__person-actions {\n font-size: 0.875rem;\n padding-top: 0.5rem;\n }\n .AltNavigation__trigger .icon .line {\n background-color: var(--color-tint3);\n border-radius: 4px;\n display: block;\n height: 4px;\n margin: 6px auto;\n -webkit-transition: all 0.3s ease-in-out;\n -o-transition: all 0.3s ease-in-out;\n transition: all 0.3s ease-in-out;\n width: 32px;\n }\n\n .AltNavigation__trigger .icon .line:first-child {\n margin-top: 0;\n }\n\n .AltNavigation__trigger .icon .line:nth-child(3){ margin-bottom: 0 }\n .AltNavigation__trigger .icon:hover { cursor: pointer }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(2) {\n opacity: 0;\n }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(1) {\n -webkit-transform: translateY(10px) rotate(45deg);\n -ms-transform: translateY(10px) rotate(45deg);\n -o-transform: translateY(10px) rotate(45deg);\n transform: translateY(10px) rotate(45deg);\n }\n .AltNavigation__trigger[aria-expanded=true] .icon .line:nth-child(3) {\n -webkit-transform: translateY(-10px) rotate(-45deg);\n -ms-transform: translateY(-10px) rotate(-45deg);\n -o-transform: translateY(-10px) rotate(-45deg);\n transform: translateY(-10px) rotate(-45deg);\n }\n @keyframes slide-in {\n 0% { transform: translateX(100%) }\n 100% { transform: translateX(0) }\n }\n\n /* LoggedInLinks */\n .LoggedInLinks {\n align-items: flex-start;\n display: flex;\n margin: 0 -1.5rem\n }\n .LoggedInLinks > * { flex: 1 }\n .LoggedInLinks > div:last-child { border-left: 1px solid var(--color-tint5) }\n .LoggedInLinks [data-reach-menu-item],\n .LoggedInLinks [data-selected] {\n background: var(--color-tint7);\n color: var(--color-tint1);\n display: block;\n flex: 1;\n font-size: 0.875rem;\n line-height: 1;\n padding: 0.75rem;\n text-align: center;\n }\n\n /* NotificationBell */\n .NotificationBell--has-notifications {\n position: relative;\n }\n\n .Navigation .notification-icon {\n width: 24px;\n height: 24px;\n }\n\n @media screen and (pointer: fine) {\n .Navigation .notification-icon {\n width: 20px;\n height: 20px;\n }\n }\n\n .condensed-header .Navigation .notification-icon {\n width: 20px;\n height: 20px;\n }\n\n .AltNavigation .notification-icon {\n width: 24px;\n height: 24px;\n }\n\n .NotificationBell--has-notifications:after {\n background-color: var(--color-ruby);\n border-radius: 100%;\n border: 1px solid var(--color-tint10);\n content: "";\n position: absolute;\n height: 7px;\n right: 0;\n top: 4px;\n width: 7px;\n }\n\n /* utility */\n .display-flex { display: flex }\n .align-items-center { align-items: center }\n .justify-content-space-between { justify-content: space-between }\n')}function k(n){var e=n.as,t=void 0===e?"a":e,i=f(n,h);/*#__PURE__*/return s.default.createElement(t,i)}function x(n){var e=n.notificationCount,t=n.notificationIconPathPrefix,i=void 0===t?"":t;/*#__PURE__*/return s.default.createElement(k,u({},n.notificationLink,{className:"Navigation__link NotificationBell "+(e>0&&"NotificationBell--has-notifications")}),/*#__PURE__*/s.default.createElement("span",null,/*#__PURE__*/s.default.createElement(w,{pathPrefix:i,notificationCount:e})))}function w(n){var e=n.pathPrefix;/*#__PURE__*/return s.default.createElement(a.Symbol,{symbol:""+(void 0===e?"":e)+c.default+"#notification",className:"p-r notification-icon","aria-label":n.notificationCount+" notifications"})}function E(n){var e=n.style;/*#__PURE__*/return s.default.createElement("svg",{className:"symbol",role:"img",title:"down-chevron icon",style:void 0===e?{}:e},/*#__PURE__*/s.default.createElement("symbol",{xmlns:"http://www.w3.org/2000/svg",id:"Navigation-svg-symbol-down-chevron",viewBox:"0 0 16 16"},/*#__PURE__*/s.default.createElement("title",null,"down-chevron"),/*#__PURE__*/s.default.createElement("polygon",{points:"8.003 14.068 0.005 6.07 1.782 4.293 8.003 10.514 14.223 4.293 16 6.07 8.003 14.068"})),/*#__PURE__*/s.default.createElement("use",{href:"#Navigation-svg-symbol-down-chevron"}))}function I(n){var e=n.displayName,t=n.imageUrl;/*#__PURE__*/return s.default.createElement("div",null,/*#__PURE__*/s.default.createElement("style",null,"\n .Navigation-avatar {\n border-radius: 100%;\n height: 32px;\n width: 32px;\n min-width: 32px;\n }\n\n @media screen and (pointer:fine) {\n .Navigation-avatar {\n height: 24px;\n width: 24px;\n min-width: 24px;\n }\n }\n "),/*#__PURE__*/s.default.createElement("img",{className:"Navigation-avatar d-b",width:32,height:32,alt:e+"'s avatar",src:t}))}function L(n,e){var t=s.default.useState(function(){try{var t=window.localStorage.getItem(n);return t?JSON.parse(t):e}catch(n){return e}}),i=t[0],a=t[1],r=s.default.useCallback(function(e){try{var t=e instanceof Function?e(i):e;a(t),window.localStorage.setItem(n,JSON.stringify(t))}catch(n){console.log(n)}},[a]);return[i,r]}v.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,organizationDisplayName:e.string.isRequired,organizationImageUrl:e.string,organizationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired},b.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired},y.propTypes={links:e.arrayOf(e.object).isRequired,loginLink:e.object.isRequired,myChurchCenterLink:e.object.isRequired,notificationCount:e.number,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired,personDisplayName:e.string.isRequired,personIdentified:e.bool.isRequired,personImageUrl:e.string.isRequired,scrollLimit:e.number.isRequired,scrollPosition:e.number.isRequired},k.propTypes={as:e.any},x.propTypes={notificationCount:e.number.isRequired,notificationIconPathPrefix:e.string,notificationLink:e.object.isRequired},w.propTypes={notificationCount:e.number.isRequired,pathPrefix:e.string},I.propTypes={displayName:e.string,imageUrl:e.string.isRequired};var P=function(e,t){try{return Promise.resolve(n.sessionApiClient.post("/notifications/v2/me/jolt_subscribe",{data:{attributes:{channel:e,connection_id:t}}})).then(function(n){return n.data.id})}catch(n){return Promise.reject(n)}},C=function(){try{return Promise.resolve(n.sessionApiClient.post("/global/v2/jolt_connect")).then(function(n){return n.data.id})}catch(n){return Promise.reject(n)}},q=function(){try{var e={ChurchCenterWebMenu:["items"],Organization:["avatar_url","name"],Person:["avatar_url","first_name"],ThemeSettings:["primary_color","theme_enabled","version"],WebBoot:["current_organization","current_person","features","jolt_websocket_url","published_menu","published_theme_settings"]},t="/publishing/v2/web_boot?include="+["current_organization","current_person","published_menu","published_theme_settings"]+"&"+Object.keys(e).map(function(n){return"fields["+n+"]="+e[n]}).join("&");return Promise.resolve(n.sessionApiClient.get(t)).then(function(n){var e=function(e){var t,i,a,r,o=null==(t=n.data.relationships[e].data)||null==(i=t[0])?void 0:i.type,l=null==(a=n.data.relationships[e].data)||null==(r=a[0])?void 0:r.id;return n.included.find(function(n){return n.type===o&&n.id===l})},t=e("published_menu").attributes.items.map(function(n){return{children:n.label,href:n.uri}}),i=e("current_organization"),a=e("current_person"),r=i.attributes.name,o=i.attributes.avatar_url,l=a.attributes.first_name,s=a.attributes.avatar_url+"?g=120x120%23",c="anonymous"!==a.id,d=e("published_theme_settings");return{joltWebsocketUrl:n.data.attributes.jolt_websocket_url,links:t,organizationDisplayName:r,organizationImageUrl:o,personDisplayName:l,personId:c?a.id:null,personIdentified:c,personImageUrl:s,publishedThemeSettings:d}})}catch(n){return Promise.reject(n)}},j=["@churchcenter/nav:SelfHydratingNavitar","@churchcenter/nav@2.0.0:SelfHydratingHeader","@planningcenter/cc-nav@2.0.0:SelfHydratingHeader","@planningcenter/cc-nav@4.2.5:SelfHydratingHeader"],A=function(){return null},R=/*#__PURE__*/s.default.createRef();function z(n){var e=n.defaultLinks,i=n.mapLinkProps,a=void 0===i?U:i,r=L("@planningcenter/cc-nav@4.3.1:SelfHydratingHeader",{joltWebsocketUrl:null,links:void 0===e?[]:e,organizationDisplayName:n.defaultOrganizationDisplayName,organizationImageUrl:n.defaultOrganizationImageUrl,personDisplayName:n.defaultPersonDisplayName,personId:null,personIdentified:n.defaultPersonIdentified,personImageUrl:n.defaultPersonImageUrl,publishedThemeSettings:{attributes:{primary_color:null,theme_enabled:!1}}}),o=r[0],l=r[1],c=o.publishedThemeSettings,f=(c=void 0===c?{attributes:{primary_color:null,theme_enabled:!1}}:c).attributes,g=f.primary_color,m=f.theme_enabled;s.default.useEffect(function(){j.forEach(function(n){return window.localStorage.removeItem(n)})});var p=s.default.useState(500),h=p[0],b=p[1];s.default.useEffect(function(){var n,e=!0;return q().then(function(n){e&&l(n)}).catch(function(e){console.error("Refetching header props:",e),n=window.setTimeout(function(){return b(h+100)},h)}),function(){e=!1,n&&window.clearTimeout(n)}},[h,b]),t.useEffect(function(){g&&m?(document.body.style.setProperty("--color-brand-light",g),document.body.style.setProperty("--color-brand-dark",g),document.body.style.setProperty("--color-brand-gradient-start","var(--color-brand)"),document.body.style.setProperty("--color-brand-gradient-end","var(--color-brand)")):(document.body.style.setProperty("--color-brand-light","var(--color-turquoise)"),document.body.style.setProperty("--color-brand-dark","var(--color-turquoise)"),document.body.style.setProperty("--color-brand-gradient-start","var(--color-topaz)"),document.body.style.setProperty("--color-brand-gradient-end","var(--color-emerald)"))},[g,m]);var y=s.default.useCallback(function(){window.localStorage.removeItem("@planningcenter/cc-nav@4.3.1:SelfHydratingHeader"),window.localStorage.removeItem("@planningcenter/cc-nav:useNotificationCount")});R.current=y,s.default.useEffect(function(){return function(){return R.current=A}},[]);var _=function(n){"/logout"===new URL(n.target.href).pathname&&y()},N=["/profile","/logout","/login"],k=o.links.filter(function(n){return!N.includes(n.href)}).map(a).map(function(n){return u({},n,{onClick:_})}),x=a({children:"Log in",href:"/login",onClick:function(n){n.target.href="/login?return="+encodeURIComponent(window.location.href)}}),w=function(n){var e=n.joltWebsocketUrl,t=n.personId,i=s.default.useState(null),a=i[0],r=i[1],o=s.default.useState(null),l=o[0],c=o[1];return s.default.useEffect(function(){var n=e&&t?new d.default(e,{fetchAuthTokenFn:C}):null;return r(n),function(){return n&&n.disconnect()}},[e,t]),s.default.useEffect(function(){var n=null,e=t?"church_center.notifications.people."+t:null;return a&&e&&(n=a.subscribe(e,{fetchSubscribeTokenFn:P})),c(n),function(){n&&a.unsubscribe(e)}},[a,t]),l}({joltWebsocketUrl:o.joltWebsocketUrl,personId:o.personId}),E=S({notificationsChannel:w,personIdentified:o.personIdentified}),I=a({href:"/notifications"}),z=a({href:"/me"}),H="/"+window.location.pathname.split("/")[1];/*#__PURE__*/return s.default.createElement(s.default.Fragment,null,/*#__PURE__*/s.default.createElement(v,{links:k,loginLink:x,myChurchCenterLink:z,notificationCount:E,notificationIconPathPrefix:H,notificationLink:I,organizationDisplayName:o.organizationDisplayName,organizationImageUrl:o.organizationImageUrl,organizationLink:a({href:"/home"}),personDisplayName:o.personDisplayName,personIdentified:o.personIdentified,personImageUrl:o.personImageUrl}))}function H(n,e){try{return n.split("/")[1]===e.split("/")[1]}catch(n){return!1}}R.current=A,z.propTypes={defaultLinks:e.arrayOf(e.shape({children:e.any.isRequired,href:e.string.isRequired})),defaultOrganizationDisplayName:e.string.isRequired,defaultOrganizationImageUrl:e.string,defaultPersonDisplayName:e.string.isRequired,defaultPersonIdentified:e.bool.isRequired,defaultPersonImageUrl:e.string.isRequired,mapLinkProps:e.func};var U=function(n){return u({},n,{"aria-current":H(window.location.pathname,n.href)?"true":null,key:n.href})};function S(e){var t=e.personIdentified,i=e.notificationsChannel,a=e.notificationDelay,r=void 0===a?1e3:a,o=s.default.useState(0),l=o[0],c=o[1],d=L("@planningcenter/cc-nav:useNotificationCount",0),u=d[0],f=d[1];s.default.useEffect(function(){if(t){var e=!0,i=window.setTimeout(function(){n.sessionApiClient.get("/notifications/v2/me/notifications?where[read_at]=&per_page=0").then(function(n){return e&&f(n.meta.total_count)}).catch(function(){return f(null)})},r);return function(){e=!1,window.clearTimeout(i)}}},[t,l,r]);var g=s.default.useCallback(function(){return c(function(n){return n+1})},[c]);return s.default.useEffect(function(){if(i&&t){var n=["notifications.v2.events.notification.updated","notifications.v2.events.notification.created","notifications.v2.events.notification.destroyed"].map(function(n){return i.bind(n,g)});return function(){return n.forEach(function(n){return n()})}}},[i,t]),u}exports.BringYourOwnPropsHeader=v,exports.SelfHydratingHeader=z,exports.fetchHeaderProps=q,exports.resetCache=function(){R.current()},exports.useNotificationCount=S;
//# sourceMappingURL=nav.js.map
{
"name": "@planningcenter/cc-nav",
"version": "4.3.2",
"version": "4.3.3",
"description": "Site-wide navigation on Church Center Web",

@@ -60,2 +60,2 @@ "source": "index.js",

}
}
}

Sorry, the diff of this file is not supported yet