PageSourceSearch

https://www.pray.com/component---src-pages-family-index-js.40979dfe1533f032a53f.js

js pray.com collected 2026-09-24 09:58:55 UTC 15,221 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_pray_www=self.webpackChunk_pray_www||[]).push([[1870],{9023:function(e,t,a){a.d(t,{A:function(){return d}});var n=a(14041),r=a(39242),i=a(34804),o=a(78363),l=a(49208),s=a(23673),c=a(50592),u={container:"ExistingUserPage-module--container--33972",description:"ExistingUserPage-module--description--a1437"};function d(e){let{product:t={},message:a="",description:d="",backButtonText:m="Take me back",onBack:E=null,customStyles:h={}}=e;const y=Object.assign({},u,h);let p="";if(t.free_trial_interval_count){const e=t.free_trial_interval>1?"s":"";p=t.free_trial_interval_count+" "+t.free_trial_interval+e+" free"}return n.createElement(n.Fragment,null,n.createElement(s.A,{className:y.container},n.createElement(l.A,{variant:r.Il.h1},"Great! You already are a ",c.SJ," subscriber."),n.createElement(l.A,{color:r.Tj.text_secondary,className:y.description},d||"Unfortunately, we can’t offer "+p+" to existing subscriptions but thank you for being part of our community.",n.createElement("br",null),n.createElement("br",null),n.createElement("div",{dangerouslySetInnerHTML:{__html:a}}))),n.createElement(o.A,null,n.createElement(i.A,{variant:r.Uo.variant.tertiary,full:!0,onClick:E},m)))}},25736:function(e,t,a){var n=a(93203),r=a(9538),i=a(99723),o=a(52154),l=a(18105);t.A={getSubscriptionDetails:async function(){try{const e=o.A.getUser(),t=(await n.A.executeGetRequest("/web/users/"+e.id+"/subscription-details")).data.data;return e.is_subscribed!==t.is_subscribed&&(e.is_subscribed=t.is_subscribed,o.A.upsertToStorage(l.Wd.USER,e,!1)),t}catch(e){i.A.error("Failed to fetch user subscription details",e)}return null},updateUser:async function(e,t){var a;return null===(a=(await n.A.executePutRequest("/0.13/users/"+e,t)).data.data)||void 0===a?void 0:a[0]},updateUserIntents:async function(e){const t=o.A.getUser(),a=await n.A.executePostRequest("/0.12/users/"+t.id+"/intents",e);return r.A.trackEventSubmitForm(l.qY.PRAY_EVENTS.SUBMIT_FORM_EVENT_NAMES.INTENT,e),a.data.data},verifyEmail:async function(e){let{email:t,token:a}=e;await n.A.executePostRequest("/web/verify_email",{email:t,token:a})}}},39600:function(e,t,a){a.r(t),a.d(t,{default:function(){return ge}});var n=a(14041),r=a(88165),i=a(93609),o=a(39242),l=a(10544),s=a(66114),c=a(34804),u=a(83091),d=a(49208),m=a(46398),E=a(56011),h=a(48371),y=a(9538),p=a(99723),g=a(35714),f=a(52154),A=a(20827),v=a(48138),b="FamilyCheckoutPage-module--sectionWrap--75772";function _(e){let{product:t,isRenewTrial:a,discountCode:r,onBackClick:i,onCheckoutSuccess:o}=e;return n.createElement("div",{className:b},n.createElement(v.A,{product:t,discountCode:r,isRenewTrial:a,onBackButtonClick:i,onCheckoutSuccess:()=>null,handlePurchaseSuccess:o,isFamilyPlan:true,source:(0,A.X)("family-checkout")}))}var S=a(41192),w=a(42587),k=a(76669),C=a(26611),F=a(31403),N=a(18105),P="FamilyPageCongratulation-module--titleWrap--a7ddb",I="FamilyPageCongratulation-module--title--3ccdc",T="FamilyPageCongratulation-module--subtitleWrap--7aa2c",L="FamilyPageCongratulation-module--inputWrap--3c782",M="FamilyPageCongratulation-module--buttonsWrap--86d88",U="FamilyPageCongratulation-module--button--31630";var O=e=>{let{email:t,shareLink:a=""}=e;const{0:r,1:i}=(0,n.useState)(!1);return n.createElement("div",{"data-viewname":N.qY.PRAY_EVENTS.VIEW_EVENT_NAMES.FAMILY_PLAN_FLOW.REDEEM_LINK,"data-viewfbcontentcategory":N.qY.FACEBOOK_EVENTS.CONTENT_CATEGORIES.FAMILY_FLOW},n.createElement(F.A,{isLogoCentered:true}),n.createElement(C.A,{reverse:!0},n.createElement(n.Fragment,null,n.createElement("div",{className:P},n.createElement(d.A,{className:I},"Congratulations!")),n.createElement("div",{className:T},n.createElement(d.A,{variant:o.Il.headline_small,color:o.Tj.text_secondary},"Share the link below with up to 5 other family members:")),n.createElement("div",{className:L},n.createElement(S.A,{type:"text",name:"shareLink",disabled:true,value:a})),n.createElement("div",{className:M},n.createElement(c.A,{variant:o.Uo.variant.primary,size:o.Uo.size.large,onClick:()=>{const e="Good news!%0D%0A%0D%0AI just purchased a "+N.SJ+" Family Plan, and am inviting you to join me! With "+N.SJ+" you have unlimited access to amazing Bedtime Bible Stories, Biblical Meditations, Pray Radio, the Bible read by your favorite celebrities, and more!%0D%0A%0D%0AClick here to join our family plan and start listening: "+a;window.location.href="mailto:%20?subject=Pray.com Family Plan&body="+e},className:U},"share by email"),n.createElement(c.A,{variant:o.Uo.variant.primary,size:o.Uo.size.large,onClick:e=>{e.preventDefault(),(0,E.lW)(a,(()=>i(!0)))},className:U},"copy link",r&&n.createElement(w.A,{timeout:2e3,onTimeout:()=>i(!1)},"Link copied!"))),n.createElement("div",{className:M},n.createElement(c.A,{variant:o.Uo.variant.tertiary,size:o.Uo.size.large,onClick:()=>{y.A.trackEventView(N.qY.PRAY_EVENTS.VIEW_EVENT_NAMES.FAMILY_PLAN_FLOW.CONGRATULATIONS,N.qY.FACEBOOK_EVENTS.CONTENT_CATEGORIES.FAMILY_FLOW),(0,k.ZE)({email:t,isPurchased:!0})}},"take me back to pray.com")))))}
1,R=a(7797),x=a(62485),V=a(6669),B=a(2829),W=a(79223),Y=a(18255),q=a(417);function J(){const e=(0,q.A)(q.f.medium);return n.createElement(F.A,null,n.createElement(c.A,{to:"/",variant:o.Uo.variant.muted_tertiary,size:e?o.Uo.size.large:o.Uo.size.small},"visit pray.com"))}var j=a(50592),D=a(91010),z=a.p+"static/phone-4022086162ca5a258aacf2ee45590cb3.png",G="FamilyPageMainSection-module--titleWrap--53a4b",H="FamilyPageMainSection-module--loginWrap--30add",K="FamilyPageMainSection-module--title--0eb40",$="FamilyPageMainSection-module--phonesImage--4d1a9";function Q(e){let{email:t,subscriptionPrice:a,isLoading:r,isLoggedIn:i,handleEmailChange:l,handleEmailValidation:s,handleLogout:c,onAuthSuccess:u}=e;return n.createElement(C.A,{image:z,reverse:!0,customStyles:{phonesImage:$}},n.createElement("div",{className:G},n.createElement(d.A,{color:o.Tj.text_primary,className:K},"Get"," ",n.createElement(d.A,{color:o.Tj.text_featured,className:K},j.SJ)," ","for the whole family")),i&&t&&n.createElement("div",{className:H},n.createElement(d.A,{variant:o.Il.footnote,color:o.Tj.text_secondary},"You are logged in as ",t),n.createElement("a",{href:"/",onClick:c},n.createElement(d.A,{variant:o.Il.footnote_link,color:o.Tj.text_secondary},"Log out"))),n.createElement(D.A,{description:"Six "+j.SJ+" accounts for only "+a+". Enter your email to start today!",email:t,isLoading:r,isRenderInputField:!i,onEmailChange:l,onButtonClick:s,buttonColor:o.Tj.pray_secondary,onAuthSuccess:u}))}var Z=a(82265),X=a(10192),ee=a(87790),te=a(40094);const ae={firstWhiteText:"How it works",items:[{IconComponent:V.E,title:"Choose your family",subtitle:"Pick six of your friends or family members"},{IconComponent:W.K,title:"Enjoy cost savings",subtitle:"Save money and encourage loved ones to pray together"},{IconComponent:B.I,title:"Pray together",subtitle:"Share your faith and start a pray journey with your family"}]},ne={title:N.Z8+" pieces of remarkable content for you to experience the Bible like never before",items:Z.A},re={subtitle:"By giving "+N.SJ+", you're offering your loved ones inspiring Biblical audio that is sure to invigorate their faith and prayer practice.",items:[{question:"I already have a subscription to "+N.SJ+". How do I switch to a "+N.SJ+" Family plan?",answer:"Current Pray users can switch to "+N.SJ+" Family by cancelling their current subscription or letting it expire, without losing their saved favorites, downloads, or session history. Learn more at help.pray.com."},{question:"How does billing work? Can we split the cost of the membership between each individual?",answer:N.SJ+" Family is billed for a full year to the payment method provided at check-out and is set to renew annually. Until the Family plan has been canceled, it will be billed automatically each year to the person who originally purchased the "+N.SJ+" Family plan."},{question:"Who can join my Family Plan?",answer:N.SJ+" Family allows up to 6 friends and family members (who may or may not live with you!) to receive access to "+N.SJ+" for one yearly payment. Remember that "+N.SJ+" Family Members must be 16 years of age or older."},{question:"Do my Family Plan Members all share a single Pray account or do we each get our own account?",answer:"Each "+N.SJ+" Family Member has their own Pray account and logs into their account using a unique email address and password. Session history, stats, check-ins, and other personal information tied to a Pray account are not shared between "+N.SJ+" Family Members."}]};function ie(e){var t;let{email:a,product:r,isLoading:i,isLoggedIn:o,onEmailChange:l,onButtonClick:s,onLogoutClick:c,onAuthSuccess:u}=e;if(!r.is_data_fetched)return null;const d={};d["data-viewname"]=N.qY.PRAY_EVENTS.VIEW_EVENT_NAMES.FAMILY_PLAN_FLOW.EMAIL_AND_PROPS,d["data-viewfbcontentcategory"]=N.qY.FACEBOOK_EVENTS.CONTENT_CATEGORIES.FAMILY_FLOW,d["data-eventprops"]=(0,R.hz)(r);const m=(0,E.vv)((null===(t=r.discount)||void 0===t?void 0:t.price)||r.price);return n.createElement("div",d,n.createElement(J,null),n.createElement(Q,{email:a,subscriptionPrice:m,isLoading:i,isLoggedIn:o,handleEmailChange:l,handleEmailValidation:s,handleLogout:c,onAuthSuccess:u}),n.createElement(X.A,{data:ae}),n.createElement(ee.A,{data:ne,isShowListenNowButton:!0}),n.createElement(te.A,{data:re}),n.createElement(x.A,{hideMobileApps:!0}),n.createElement(Y.A,null))}var oe=a(68285),le=a(62086),se=a(9023);function ce(e){let{product:t,description:a,message:r,onClose:i,customStyles:o}=e;return n.createElement(le.A,{onClose:i,"data-viewname":N.qY.PRAY_EVENTS.VIEW_EVENT_NAMES.SIGNUP_MODAL,customStyles:o},n.createElement(se.A,{description:a,message:r,product:t,onBack:i,customStyles:{viewport:o.viewport}}))}var ue=a(876);const de="Unfortunately, we can’t create a Family "+N.SJ+" account under an existing subscription unless the active subscription is cancelled.",me=1,Ee=2,he=3;function ye(){const{0:e,1:t}
1=(0,n.useState)(me),{0:a,1:r}=(0,n.useState)(null),{0:i,1:A}=(0,n.useState)(!1),{0:v,1:b}=(0,n.useState)(null),{0:S,1:w}=(0,n.useState)("null"),{0:k,1:C}=(0,n.useState)(!1),{0:F,1:P}=(0,n.useState)(!1),I=(0,g.JO)(),T=!0===I.is_renew_trial||"true"===I.is_renew_trial,L=I.discount_code,M=(0,m.A)({product:N.xQ,shouldFetchActiveProduct:!1}),U=n.createElement(c.A,{onClick:()=>C(!1)},n.createElement(u.S,null)),R=n.createElement(c.A,{onClick:()=>P(!1)},n.createElement(u.S,null));return n.createElement(n.Fragment,null,n.createElement(l.A,{isSubscribeFlow:!0,handleSuccessfulLogin:()=>{const e=f.A.getUser(),t=e&&e.email;r(t),b(!0)}}),e===me&&n.createElement(ie,{email:a,product:M,isLoading:i,isLoggedIn:v,onEmailChange:e=>{const{value:t}=e.currentTarget;r(t)},onButtonClick:async()=>{if(v)return void t(Ee);const e=(0,E.uU)()?window.location.pathname+window.location.search:"",[n,r]=e.split("?");try{A(!0);const e=await(0,h.Fv)({email:a,customRoute:n,queryParams:r,isWebSubscribeFlow:!0,registerViewName:N.Fj.FAMILY_SUBSCRIBE_PAGE});e.isEmailAvailable?t(Ee):e.isUserSubscribed?P(!0):C(!0),b(!0),A(!1)}catch(o){p.A.debug("error",o),A(!1)}const i={email:a};y.A.trackEventSubmitForm(N.qY.PRAY_EVENTS.SUBMIT_FORM_EVENT_NAMES.EMAIL,i,!0)},onLogoutClick:async e=>{e.preventDefault(),await(0,h.ri)(),r(""),b(!1)},onAuthSuccess:()=>t(Ee)}),e===Ee&&n.createElement(_,{product:M,onBackClick:()=>t(me),onCheckoutSuccess:e=>{e&&e[0]&&w(e[0].resource.family_plan_share_link),t(he)},isRenewTrial:T,discountCode:L}),e===he&&n.createElement(O,{email:a,shareLink:S}),k&&n.createElement(n.Fragment,null,n.createElement(s.A,{fixed:!0,className:ue.A.isMobile,center:n.createElement(d.A,{variant:o.Il.h1},"Get started"),left:U}),n.createElement(oe.A,{email:a,onClose:()=>C(!1),customStyles:ue.A})),F&&n.createElement(n.Fragment,null,n.createElement(s.A,{fixed:!0,className:ue.A.isMobile,center:n.createElement(d.A,{variant:o.Il.h1},"Existing user"),left:R}),n.createElement(ce,{description:de,message:'For more information about this, please visit our <a href="https://help.pray.com/">Help Center</a>',product:M,onClose:()=>P(!1),customStyles:ue.A})))}const pe="/family/";var ge=()=>n.createElement("div",null,n.createElement(i.A,{canonicalPath:pe}),n.createElement(r.A,{canonicalPath:pe}),n.createElement(ye,null))},46398:function(e,t,a){a.d(t,{A:function(){return E}});var n=a(88930),r=a(14041),i=a(90180),o=a(25736),l=a(99723),s=a(35714),c=a(52154),u=a(18105),d=a(98183);const m={product:u.QI,type:i.W.SUBSCRIPTION,shouldFetchProductDetails:!0,shouldFetchActiveProduct:!0,shouldRedirectSubscribedUsers:!0};function E(e){var t;void 0===e&&(e={});const{product:a,type:u,shouldFetchProductDetails:E,shouldFetchActiveProduct:h,shouldRedirectSubscribedUsers:y}=Object.assign({},m,e),{0:p,1:g}=(0,r.useState)(a),f=(0,s.JO)(),A=f.product_bundle_token||null,v=(0,d.A)(A),b=v.isValid?null===(t=v.data)||void 0===t?void 0:t.product_id:null,_=async()=>{const e=c.A.getUser();if(e&&e.id){const e=await o.A.getSubscriptionDetails();return y&&null!=e&&e.is_subscribed?((0,n.navigate)("/discover/"),null):e}return null},S=async e=>{if(!E)return e;const t=f.product_id||b,n=f.discount_code;try{if(t||!h){const e=t||a.id;return await i.A.fetchProductById({id:e,discountCode:n})}return await i.A.fetchActiveProductByType({type:u,discountCode:n})}catch(d){var r,o,s,c;const e=(null===(r=d.response)||void 0===r||null===(o=r.data)||void 0===o||null===(s=o.data)||void 0===s||null===(c=s[0])||void 0===c?void 0:c.info)||"";return l.A.error("Error fetching product details:",e,d),null}};return(0,r.useEffect)((()=>{(async()=>{const[e,t]=await Promise.all([_(),S(a)]);e&&t&&g(Object.assign({},t,{is_eligible_for_free_trial:e.is_eligible_for_free_trial,is_data_fetched:!0}))})()}),[a,b]),p}},98183:function(e,t,a){a.d(t,{A:function(){return l}});class n extends Error{}function r(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw new Error("base64 string is not of the correct length")}try{return function(e){return decodeURIComponent(atob(e).replace(/(.)/g,((e,t)=>
1{let a=t.charCodeAt(0).toString(16).toUpperCase();return a.length<2&&(a="0"+a),"%"+a})))}(t)}catch(a){return atob(t)}}n.prototype.name="InvalidTokenError";var i=a(14041),o=a(99723);function l(e){const t=(0,i.useMemo)((()=>{if(!e)return{isValid:!1,data:null,error:null};try{const t=function(e,t){if("string"!=typeof e)throw new n("Invalid token specified: must be a string");t||(t={});const a=!0===t.header?0:1,i=e.split(".")[a];if("string"!=typeof i)throw new n(`Invalid token specified: missing part #${a+1}`);let o;try{o=r(i)}catch(l){throw new n(`Invalid token specified: invalid base64 for part #${a+1} (${l.message})`)}try{return JSON.parse(o)}catch(l){throw new n(`Invalid token specified: invalid json for part #${a+1} (${l.message})`)}}(e);if(!t.exp)return{isValid:!1,data:null,error:"Token is missing expiration"};const a=Math.floor(Date.now()/1e3);return t.exp<a?{isValid:!1,data:null,error:"Token has expired"}:t.product_id&&t.user_id?{isValid:!0,data:t,error:null}:{isValid:!1,data:null,error:"Token is missing required fields"}}catch(t){return o.A.error("Failed to decode product bundle token",t),{isValid:!1,data:null,error:"Invalid token format"}}}),[e]);return t}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.