@zenpatient-org/healthspan-marketing-ui 0.1.142 → 0.1.144
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/modules/AllInOne/AllInOne.cjs.js +1 -1
- package/dist/modules/AllInOne/AllInOne.es.js +104 -95
- package/dist/modules/FAQModule/FAQModule.cjs.js +1 -1
- package/dist/modules/FAQModule/FAQModule.es.js +5 -5
- package/dist/modules/FeaturedIn/FeaturedIn.cjs.js +1 -1
- package/dist/modules/FeaturedIn/FeaturedIn.es.js +12 -5
- package/dist/pageComponents/HomepageHero/HomepageHero.cjs.js +1 -1
- package/dist/pageComponents/HomepageHero/HomepageHero.es.js +31 -13
- package/dist/pageComponents/PersonalizedProtocolHero/PersonalizedProtocolHero.cjs.js +1 -1
- package/dist/pageComponents/PersonalizedProtocolHero/PersonalizedProtocolHero.es.js +34 -34
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),U=require("../../node_modules/@gsap/react/src/index.cjs.js"),e=require("../../node_modules/gsap/index.cjs.js"),P=require("../../node_modules/gsap/ScrollTrigger.cjs.js"),o=require("react"),k=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),G=require("../../components/Typography/Typography.cjs.js"),q=require("../../utils/cn/cn.cjs.js"),Y=require("../../utils/debounce.cjs.js"),F=require("../CallToAction/CallToAction.cjs.js"),a=require("./allInOne.module.css.cjs.js");e.gsap.registerPlugin(P.ScrollTrigger);const J=["health","energy","strength","smiles","balance","sleep","miles","love","fun","years"],{title1:X,title2:K,description:Q,scrollLabels:N,images:I,subtitle:Z,titleTop:ee,scrollableLabels:te,titleBottom:ie,descriptionText:se,hsaText:ae,buttonText:le,buttonLink:oe,backgroundImage:ne}={subtitle:i.jsx("p",{children:"YOUR LONGEVITY JOURNEY"}),titleTop:i.jsx("p",{children:"Get more"}),scrollableLabels:J,titleBottom:i.jsx("p",{children:"out of life"}),description:"It's time to shift our thinking from healthcare and lifespan to something deeper. Healthspan.",hsaText:"Healthspan is HSA/FSA Eligible",buttonText:"JOIN NOW",buttonLink:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",backgroundImage:"https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_9_1_6d46345746.jpg",title1:i.jsx("p",{children:"Unlimited access to"}),title2:i.jsxs("p",{children:["our ",i.jsx("b",{children:"team and tools"})]}),descriptionText:"Healthspan is the only digital clinic that offers all your longevity needs in a single subscription.",scrollLabels:["Advanced labwork analysis","Research analysis","Dedicated physicians","Advanced biomarker profiling","Personalized health tracking","In house bioavailability testing","Advanced longevity protocols"],images:["https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_1_729dd70cbe.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_2_3adf3d2087.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_3_62002f2bdc.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_4_e623019155.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_5_bd81db569b.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_6_e9d432735b.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_7_3c396d9385.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_8_ee8608b390.jpg","https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_9_1_6d46345746.jpg"]},re=()=>{const[T,L]=o.useState(!1),R=1300,b=o.useRef(null),c=o.useRef(null),f=o.useRef(null),h=o.useRef(null),m=o.useRef(null),p=o.useRef(null),v=o.useRef(!1),O=e.gsap.matchMedia();o.useEffect(()=>{v.current=T},[T]);const H=o.useCallback(()=>{if(!c.current||!b.current||!f.current||!h.current||!m.current||!p.current)return;const l=b.current,s=c.current,d=f.current,n=h.current,u=m.current,j=p.current,$=u.querySelectorAll("p");if($.length===0)return;$.forEach((r,t)=>{r.style.zIndex=String($.length-t)});const x=s.querySelectorAll('[data-type="image"]'),A=x.length;x.forEach((r,t)=>{r.style.zIndex=String(A-t)});const E=s.querySelector('[class*="callToActionContainer"]');T?E.style.zIndex=String(A+1):E.style.zIndex="1";const y=l.scrollHeight/A,B=.8;A>0&&x.forEach((r,t)=>{const S=t*y,_=(t+1)*y-B*y;e.gsap.fromTo([r,$[t]],{opacity:1},{opacity:0,scrollTrigger:{trigger:l,start:()=>`top+=${S} top`,end:()=>`top+=${_} top`,scrub:!0}})});const w=s.getBoundingClientRect(),D=d.getBoundingClientRect(),z=l.getBoundingClientRect();e.gsap.set(u,{y:`${w.bottom-z.top+20}px`}),O.add({isMobile:`(max-width: ${R-1}px)`,isDesktop:`(min-width: ${R}px)`},r=>{const t=r.conditions,S=t==null?void 0:t.isMobile;(t==null?void 0:t.isDesktop)&&(e.gsap.set(d,{x:`${w.left-D.width-50}px`}),e.gsap.set(n,{x:`${w.right+25}px`})),S&&(e.gsap.set(d,{top:`${w.top-n.clientHeight-25}px`}),e.gsap.set(n,{top:`${w.top-25}px`}))});const V=window.getComputedStyle(s).borderRadius;e.gsap.to(s,{scale:1,scrollTrigger:{trigger:l,start:"top top",end:"100% bottom",scrub:!0,onUpdate:r=>{if(!c.current||!p.current||!d||!n)return;const t=s.getBoundingClientRect();O.add({isMobile:`(max-width: ${R-1}px)`,isDesktop:`(min-width: ${R}px)`},_=>{const g=_.conditions,C=g==null?void 0:g.isMobile;(g==null?void 0:g.isDesktop)&&(e.gsap.set(d,{x:`${t.left-D.width-50}px`}),e.gsap.set(n,{x:`${t.right+25}px`})),C&&(e.gsap.set(d,{top:`${t.top-n.clientHeight-25}px`}),e.gsap.set(n,{top:`${t.top-25}px`}))}),e.gsap.set(u,{y:`${t.bottom+20}px`});const S=p.current.getBoundingClientRect();if(t.bottom+60>=S.top?e.gsap.to(j,{opacity:0,duration:.3}):e.gsap.to(j,{opacity:1,duration:.3}),r.progress>=.9)e.gsap.to(s,{scale:1,borderRadius:0,duration:.3,ease:"power1.inOut"}),v.current||(v.current=!0,L(!0),e.gsap.to([x,u.querySelectorAll("p")],{opacity:0,duration:.8,delay:.2,ease:"power2.out",overwrite:!0}));else if(e.gsap.to(s,{borderRadius:V,duration:.3,ease:"power1.inOut"}),v.current){v.current=!1,L(!1),e.gsap.set(s,{borderRadius:V}),e.gsap.killTweensOf([x,u.querySelectorAll("p")]);const _=u.querySelectorAll("p");x.forEach((g,C)=>{const M=C*y,W=(C+1)*y-B*y;e.gsap.fromTo([g,_[C]],{opacity:1},{opacity:0,scrollTrigger:{trigger:l,start:()=>`top+=${M} top`,end:()=>`top+=${W} top`,scrub:!0}})}),P.ScrollTrigger.refresh()}}}})},[c,f,h,m,p,T]);return U.useGSAP(()=>{if(!c.current||!b.current||!f.current||!h||!m.current||!p.current)return;const l=c.current,s=f.current,d=h.current,n=m.current,u=p.current;window.innerWidth<=R?e.gsap.set(l,{aspectRatio:`${window.innerWidth} / ${window.innerHeight}`,scale:.5}):e.gsap.set(l,{scale:.3,aspectRatio:`${window.innerWidth} / ${window.innerHeight}`}),H();const j=Y.default(H,600);return window.addEventListener("resize",()=>{j()}),()=>{window.removeEventListener("resize",j),e.gsap.killTweensOf([l,n,s,d,u])}},{scope:b,dependencies:[b,c,f,h,m,H]}),i.jsx("div",{className:a.default.root,children:i.jsx("div",{ref:b,className:a.default.container,children:i.jsxs("div",{className:a.default.pillContainerWrapper,children:[i.jsxs("div",{ref:c,className:q.cn("pillContainer",a.default.pillContainer),children:[I==null?void 0:I.map((l,s)=>i.jsx("div",{className:a.default.imageBlock,"data-type":"image",style:{backgroundImage:`url(${l})`}},s)),i.jsx("div",{className:a.default.callToActionContainer,children:T&&i.jsx(F.CallToAction,{subtitle:Z,titleTop:ee,scrollableLabels:te,titleBottom:ie,description:se,hsaText:ae,buttonText:le,buttonLink:oe,backgroundImage:ne})})]}),i.jsx("div",{ref:f,className:a.default.fixedHeader,children:i.jsx(k.HighlightedTitle,{className:a.default.title1,as:"div",defaultVariant:"displayXs",title:X})}),i.jsx("div",{ref:h,className:a.default.fixedHeader,children:i.jsx(k.HighlightedTitle,{className:a.default.title2,as:"div",defaultVariant:"displayXs",title:K})}),i.jsx("div",{ref:m,className:q.cn("scrollableLabels",a.default.scrollableLabels),children:N==null?void 0:N.map((l,s)=>i.jsx(G.Typography,{as:"p",defaultVariant:"labelLg",mobileVariant:"labelSm",className:a.default.scrollLabel,children:l},s))}),i.jsx("div",{ref:p,className:q.cn("description",a.default.description),children:i.jsx(k.HighlightedTitle,{as:"p",defaultVariant:"preambleMd",mobileVariant:"preambleSm",title:Q,className:a.default.descriptionText})})]})})})};exports.AllInOne=re;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as i, jsxs as E } from "react/jsx-runtime";
|
|
3
|
-
import { useGSAP as
|
|
3
|
+
import { useGSAP as G } from "../../node_modules/@gsap/react/src/index.es.js";
|
|
4
4
|
import { gsap as e } from "../../node_modules/gsap/index.es.js";
|
|
5
|
-
import { ScrollTrigger as
|
|
6
|
-
import { useState as
|
|
5
|
+
import { ScrollTrigger as q } from "../../node_modules/gsap/ScrollTrigger.es.js";
|
|
6
|
+
import { useState as Y, useRef as g, useEffect as F, useCallback as J } from "react";
|
|
7
7
|
import { HighlightedTitle as N } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
|
|
8
|
-
import { Typography as
|
|
8
|
+
import { Typography as X } from "../../components/Typography/Typography.es.js";
|
|
9
9
|
import { cn as L } from "../../utils/cn/cn.es.js";
|
|
10
|
-
import
|
|
11
|
-
import { CallToAction as
|
|
10
|
+
import K from "../../utils/debounce.es.js";
|
|
11
|
+
import { CallToAction as Q } from "../CallToAction/CallToAction.es.js";
|
|
12
12
|
import r from "./allInOne.module.css.es.js";
|
|
13
|
-
e.registerPlugin(
|
|
14
|
-
const
|
|
13
|
+
e.registerPlugin(q);
|
|
14
|
+
const Z = [
|
|
15
15
|
"health",
|
|
16
16
|
"energy",
|
|
17
17
|
"strength",
|
|
@@ -23,29 +23,29 @@ const Q = [
|
|
|
23
23
|
"fun",
|
|
24
24
|
"years"
|
|
25
25
|
], {
|
|
26
|
-
title1:
|
|
27
|
-
title2:
|
|
28
|
-
description:
|
|
26
|
+
title1: ee,
|
|
27
|
+
title2: te,
|
|
28
|
+
description: ie,
|
|
29
29
|
scrollLabels: I,
|
|
30
30
|
images: j,
|
|
31
|
-
subtitle:
|
|
32
|
-
titleTop:
|
|
33
|
-
scrollableLabels:
|
|
34
|
-
titleBottom:
|
|
35
|
-
descriptionText:
|
|
31
|
+
subtitle: oe,
|
|
32
|
+
titleTop: re,
|
|
33
|
+
scrollableLabels: se,
|
|
34
|
+
titleBottom: ae,
|
|
35
|
+
descriptionText: ne,
|
|
36
36
|
hsaText: le,
|
|
37
|
-
buttonText:
|
|
38
|
-
buttonLink:
|
|
39
|
-
backgroundImage:
|
|
37
|
+
buttonText: ce,
|
|
38
|
+
buttonLink: pe,
|
|
39
|
+
backgroundImage: de
|
|
40
40
|
} = {
|
|
41
41
|
subtitle: /* @__PURE__ */ i("p", { children: "YOUR LONGEVITY JOURNEY" }),
|
|
42
42
|
titleTop: /* @__PURE__ */ i("p", { children: "Get more" }),
|
|
43
|
-
scrollableLabels:
|
|
43
|
+
scrollableLabels: Z,
|
|
44
44
|
titleBottom: /* @__PURE__ */ i("p", { children: "out of life" }),
|
|
45
45
|
description: "It's time to shift our thinking from healthcare and lifespan to something deeper. Healthspan.",
|
|
46
46
|
hsaText: "Healthspan is HSA/FSA Eligible",
|
|
47
47
|
buttonText: "JOIN NOW",
|
|
48
|
-
buttonLink: "
|
|
48
|
+
buttonLink: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
49
49
|
backgroundImage: "https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_9_1_6d46345746.jpg",
|
|
50
50
|
title1: /* @__PURE__ */ i("p", { children: "Unlimited access to" }),
|
|
51
51
|
title2: /* @__PURE__ */ E("p", { children: [
|
|
@@ -73,62 +73,64 @@ const Q = [
|
|
|
73
73
|
"https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_8_ee8608b390.jpg",
|
|
74
74
|
"https://methodical-vitality-96814f361f.media.strapiapp.com/aio_step_9_1_6d46345746.jpg"
|
|
75
75
|
]
|
|
76
|
-
},
|
|
77
|
-
const [
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}, [
|
|
81
|
-
const H =
|
|
82
|
-
if (!
|
|
76
|
+
}, Te = () => {
|
|
77
|
+
const [_, B] = Y(!1), w = 1300, b = g(null), l = g(null), u = g(null), f = g(null), h = g(null), c = g(null), R = g(!1), D = e.matchMedia();
|
|
78
|
+
F(() => {
|
|
79
|
+
R.current = _;
|
|
80
|
+
}, [_]);
|
|
81
|
+
const H = J(() => {
|
|
82
|
+
if (!l.current || !b.current || !u.current || !f.current || !h.current || !c.current)
|
|
83
83
|
return;
|
|
84
|
-
const s = b.current, o =
|
|
85
|
-
if (
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
const s = b.current, o = l.current, p = u.current, a = f.current, d = h.current, T = c.current, k = d.querySelectorAll("p");
|
|
85
|
+
if (k.length === 0) return;
|
|
86
|
+
k.forEach((n, t) => {
|
|
87
|
+
n.style.zIndex = String(k.length - t);
|
|
88
88
|
});
|
|
89
89
|
const y = o.querySelectorAll('[data-type="image"]'), A = y.length;
|
|
90
|
-
y.forEach((
|
|
91
|
-
|
|
90
|
+
y.forEach((n, t) => {
|
|
91
|
+
n.style.zIndex = String(A - t);
|
|
92
92
|
});
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
93
|
+
const O = o.querySelector('[class*="callToActionContainer"]');
|
|
94
|
+
_ ? O.style.zIndex = String(A + 1) : O.style.zIndex = "1";
|
|
95
|
+
const x = s.scrollHeight / A, V = 0.8;
|
|
96
|
+
A > 0 && y.forEach((n, t) => {
|
|
97
|
+
const S = t * x, v = (t + 1) * x - V * x;
|
|
96
98
|
e.fromTo(
|
|
97
|
-
[
|
|
99
|
+
[n, k[t]],
|
|
98
100
|
{ opacity: 1 },
|
|
99
101
|
{
|
|
100
102
|
opacity: 0,
|
|
101
103
|
scrollTrigger: {
|
|
102
104
|
trigger: s,
|
|
103
|
-
start: () => `top+=${
|
|
105
|
+
start: () => `top+=${S} top`,
|
|
104
106
|
end: () => `top+=${v} top`,
|
|
105
107
|
scrub: !0
|
|
106
108
|
}
|
|
107
109
|
}
|
|
108
110
|
);
|
|
109
111
|
});
|
|
110
|
-
const
|
|
112
|
+
const C = o.getBoundingClientRect(), M = p.getBoundingClientRect(), W = s.getBoundingClientRect();
|
|
111
113
|
e.set(d, {
|
|
112
|
-
y: `${
|
|
114
|
+
y: `${C.bottom - W.top + 20}px`
|
|
113
115
|
}), D.add(
|
|
114
116
|
{
|
|
115
|
-
isMobile: `(max-width: ${
|
|
116
|
-
isDesktop: `(min-width: ${
|
|
117
|
+
isMobile: `(max-width: ${w - 1}px)`,
|
|
118
|
+
isDesktop: `(min-width: ${w}px)`
|
|
117
119
|
},
|
|
118
|
-
(
|
|
119
|
-
const t =
|
|
120
|
+
(n) => {
|
|
121
|
+
const t = n.conditions, S = t == null ? void 0 : t.isMobile;
|
|
120
122
|
(t == null ? void 0 : t.isDesktop) && (e.set(p, {
|
|
121
|
-
x: `${
|
|
123
|
+
x: `${C.left - M.width - 50}px`
|
|
122
124
|
}), e.set(a, {
|
|
123
|
-
x: `${
|
|
124
|
-
})),
|
|
125
|
-
top: `${
|
|
125
|
+
x: `${C.right + 25}px`
|
|
126
|
+
})), S && (e.set(p, {
|
|
127
|
+
top: `${C.top - a.clientHeight - 25}px`
|
|
126
128
|
}), e.set(a, {
|
|
127
|
-
top: `${
|
|
129
|
+
top: `${C.top - 25}px`
|
|
128
130
|
}));
|
|
129
131
|
}
|
|
130
132
|
);
|
|
131
|
-
const
|
|
133
|
+
const P = window.getComputedStyle(o).borderRadius;
|
|
132
134
|
e.to(o, {
|
|
133
135
|
scale: 1,
|
|
134
136
|
scrollTrigger: {
|
|
@@ -136,22 +138,22 @@ const Q = [
|
|
|
136
138
|
start: "top top",
|
|
137
139
|
end: "100% bottom",
|
|
138
140
|
scrub: !0,
|
|
139
|
-
onUpdate: (
|
|
140
|
-
if (!
|
|
141
|
+
onUpdate: (n) => {
|
|
142
|
+
if (!l.current || !c.current || !p || !a)
|
|
141
143
|
return;
|
|
142
144
|
const t = o.getBoundingClientRect();
|
|
143
145
|
D.add(
|
|
144
146
|
{
|
|
145
|
-
isMobile: `(max-width: ${
|
|
146
|
-
isDesktop: `(min-width: ${
|
|
147
|
+
isMobile: `(max-width: ${w - 1}px)`,
|
|
148
|
+
isDesktop: `(min-width: ${w}px)`
|
|
147
149
|
},
|
|
148
150
|
(v) => {
|
|
149
|
-
const m = v.conditions,
|
|
151
|
+
const m = v.conditions, $ = m == null ? void 0 : m.isMobile;
|
|
150
152
|
(m == null ? void 0 : m.isDesktop) && (e.set(p, {
|
|
151
|
-
x: `${t.left -
|
|
153
|
+
x: `${t.left - M.width - 50}px`
|
|
152
154
|
}), e.set(a, {
|
|
153
155
|
x: `${t.right + 25}px`
|
|
154
|
-
})),
|
|
156
|
+
})), $ && (e.set(p, {
|
|
155
157
|
top: `${t.top - a.clientHeight - 25}px`
|
|
156
158
|
}), e.set(a, {
|
|
157
159
|
top: `${t.top - 25}px`
|
|
@@ -160,14 +162,14 @@ const Q = [
|
|
|
160
162
|
), e.set(d, {
|
|
161
163
|
y: `${t.bottom + 20}px`
|
|
162
164
|
});
|
|
163
|
-
const
|
|
164
|
-
if (t.bottom + 60 >=
|
|
165
|
+
const S = c.current.getBoundingClientRect();
|
|
166
|
+
if (t.bottom + 60 >= S.top ? e.to(T, { opacity: 0, duration: 0.3 }) : e.to(T, { opacity: 1, duration: 0.3 }), n.progress >= 0.9)
|
|
165
167
|
e.to(o, {
|
|
166
168
|
scale: 1,
|
|
167
169
|
borderRadius: 0,
|
|
168
170
|
duration: 0.3,
|
|
169
171
|
ease: "power1.inOut"
|
|
170
|
-
}),
|
|
172
|
+
}), R.current || (R.current = !0, B(!0), e.to([y, d.querySelectorAll("p")], {
|
|
171
173
|
opacity: 0,
|
|
172
174
|
duration: 0.8,
|
|
173
175
|
delay: 0.2,
|
|
@@ -175,57 +177,64 @@ const Q = [
|
|
|
175
177
|
overwrite: !0
|
|
176
178
|
}));
|
|
177
179
|
else if (e.to(o, {
|
|
178
|
-
borderRadius:
|
|
180
|
+
borderRadius: P,
|
|
179
181
|
duration: 0.3,
|
|
180
182
|
ease: "power1.inOut"
|
|
181
|
-
}),
|
|
182
|
-
|
|
183
|
+
}), R.current) {
|
|
184
|
+
R.current = !1, B(!1), e.set(o, { borderRadius: P }), e.killTweensOf([y, d.querySelectorAll("p")]);
|
|
183
185
|
const v = d.querySelectorAll("p");
|
|
184
|
-
y.forEach((m,
|
|
185
|
-
const
|
|
186
|
+
y.forEach((m, $) => {
|
|
187
|
+
const z = $ * x, U = ($ + 1) * x - V * x;
|
|
186
188
|
e.fromTo(
|
|
187
|
-
[m, v[
|
|
189
|
+
[m, v[$]],
|
|
188
190
|
{ opacity: 1 },
|
|
189
191
|
{
|
|
190
192
|
opacity: 0,
|
|
191
193
|
scrollTrigger: {
|
|
192
194
|
trigger: s,
|
|
193
|
-
start: () => `top+=${
|
|
194
|
-
end: () => `top+=${
|
|
195
|
+
start: () => `top+=${z} top`,
|
|
196
|
+
end: () => `top+=${U} top`,
|
|
195
197
|
scrub: !0
|
|
196
198
|
}
|
|
197
199
|
}
|
|
198
200
|
);
|
|
199
|
-
}),
|
|
201
|
+
}), q.refresh();
|
|
200
202
|
}
|
|
201
203
|
}
|
|
202
204
|
}
|
|
203
205
|
});
|
|
204
|
-
}, [
|
|
205
|
-
|
|
206
|
+
}, [
|
|
207
|
+
l,
|
|
208
|
+
u,
|
|
209
|
+
f,
|
|
210
|
+
h,
|
|
211
|
+
c,
|
|
212
|
+
_
|
|
213
|
+
]);
|
|
214
|
+
return G(
|
|
206
215
|
() => {
|
|
207
|
-
if (!
|
|
216
|
+
if (!l.current || !b.current || !u.current || !f || !h.current || !c.current)
|
|
208
217
|
return;
|
|
209
|
-
const s =
|
|
210
|
-
window.innerWidth <=
|
|
218
|
+
const s = l.current, o = u.current, p = f.current, a = h.current, d = c.current;
|
|
219
|
+
window.innerWidth <= w ? e.set(s, {
|
|
211
220
|
aspectRatio: `${window.innerWidth} / ${window.innerHeight}`,
|
|
212
221
|
scale: 0.5
|
|
213
222
|
}) : e.set(s, {
|
|
214
223
|
scale: 0.3,
|
|
215
224
|
aspectRatio: `${window.innerWidth} / ${window.innerHeight}`
|
|
216
225
|
}), H();
|
|
217
|
-
const
|
|
226
|
+
const T = K(H, 600);
|
|
218
227
|
return window.addEventListener("resize", () => {
|
|
219
|
-
|
|
228
|
+
T();
|
|
220
229
|
}), () => {
|
|
221
|
-
window.removeEventListener("resize",
|
|
230
|
+
window.removeEventListener("resize", T), e.killTweensOf([s, a, o, p, d]);
|
|
222
231
|
};
|
|
223
232
|
},
|
|
224
233
|
{
|
|
225
234
|
scope: b,
|
|
226
235
|
dependencies: [
|
|
227
236
|
b,
|
|
228
|
-
|
|
237
|
+
l,
|
|
229
238
|
u,
|
|
230
239
|
f,
|
|
231
240
|
h,
|
|
@@ -233,7 +242,7 @@ const Q = [
|
|
|
233
242
|
]
|
|
234
243
|
}
|
|
235
244
|
), /* @__PURE__ */ i("div", { className: r.root, children: /* @__PURE__ */ i("div", { ref: b, className: r.container, children: /* @__PURE__ */ E("div", { className: r.pillContainerWrapper, children: [
|
|
236
|
-
/* @__PURE__ */ E("div", { ref:
|
|
245
|
+
/* @__PURE__ */ E("div", { ref: l, className: L("pillContainer", r.pillContainer), children: [
|
|
237
246
|
j == null ? void 0 : j.map((s, o) => /* @__PURE__ */ i(
|
|
238
247
|
"div",
|
|
239
248
|
{
|
|
@@ -243,18 +252,18 @@ const Q = [
|
|
|
243
252
|
},
|
|
244
253
|
o
|
|
245
254
|
)),
|
|
246
|
-
/* @__PURE__ */ i("div", { className: r.callToActionContainer, children:
|
|
247
|
-
|
|
255
|
+
/* @__PURE__ */ i("div", { className: r.callToActionContainer, children: _ && /* @__PURE__ */ i(
|
|
256
|
+
Q,
|
|
248
257
|
{
|
|
249
|
-
subtitle:
|
|
250
|
-
titleTop:
|
|
251
|
-
scrollableLabels:
|
|
252
|
-
titleBottom:
|
|
253
|
-
description:
|
|
258
|
+
subtitle: oe,
|
|
259
|
+
titleTop: re,
|
|
260
|
+
scrollableLabels: se,
|
|
261
|
+
titleBottom: ae,
|
|
262
|
+
description: ne,
|
|
254
263
|
hsaText: le,
|
|
255
|
-
buttonText:
|
|
256
|
-
buttonLink:
|
|
257
|
-
backgroundImage:
|
|
264
|
+
buttonText: ce,
|
|
265
|
+
buttonLink: pe,
|
|
266
|
+
backgroundImage: de
|
|
258
267
|
}
|
|
259
268
|
) })
|
|
260
269
|
] }),
|
|
@@ -264,7 +273,7 @@ const Q = [
|
|
|
264
273
|
className: r.title1,
|
|
265
274
|
as: "div",
|
|
266
275
|
defaultVariant: "displayXs",
|
|
267
|
-
title:
|
|
276
|
+
title: ee
|
|
268
277
|
}
|
|
269
278
|
) }),
|
|
270
279
|
/* @__PURE__ */ i("div", { ref: f, className: r.fixedHeader, children: /* @__PURE__ */ i(
|
|
@@ -273,11 +282,11 @@ const Q = [
|
|
|
273
282
|
className: r.title2,
|
|
274
283
|
as: "div",
|
|
275
284
|
defaultVariant: "displayXs",
|
|
276
|
-
title:
|
|
285
|
+
title: te
|
|
277
286
|
}
|
|
278
287
|
) }),
|
|
279
288
|
/* @__PURE__ */ i("div", { ref: h, className: L("scrollableLabels", r.scrollableLabels), children: I == null ? void 0 : I.map((s, o) => /* @__PURE__ */ i(
|
|
280
|
-
|
|
289
|
+
X,
|
|
281
290
|
{
|
|
282
291
|
as: "p",
|
|
283
292
|
defaultVariant: "labelLg",
|
|
@@ -293,12 +302,12 @@ const Q = [
|
|
|
293
302
|
as: "p",
|
|
294
303
|
defaultVariant: "preambleMd",
|
|
295
304
|
mobileVariant: "preambleSm",
|
|
296
|
-
title:
|
|
305
|
+
title: ie,
|
|
297
306
|
className: r.descriptionText
|
|
298
307
|
}
|
|
299
308
|
) })
|
|
300
309
|
] }) }) });
|
|
301
310
|
};
|
|
302
311
|
export {
|
|
303
|
-
|
|
312
|
+
Te as AllInOne
|
|
304
313
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),i=require("../../components/Button/Button.cjs.js"),n=require("../../components/FAQComponent/FAQComponent.cjs.js"),t=require("./faqModule.module.css.cjs.js"),a=({title:l,questions:s})=>e.jsx("section",{className:t.default.root,children:e.jsxs("div",{className:t.default.container,children:[e.jsxs("div",{className:t.default.header,children:[e.jsx(o.HighlightedTitle,{title:l,defaultVariant:"displayMd",mobileVariant:"headingXl"}),e.jsx("div",{className:t.default.buttonWrapperDesktop,children:e.jsx(i.Button,{variant:"muted",size:"lg",as:"a",href:"/faqs",children:"VIEW ALL FAQ"})}),e.jsx("div",{className:t.default.buttonWrapperMobile,children:e.jsx(i.Button,{variant:"muted",size:"sm",as:"a",href:"/faqs",children:"VIEW ALL FAQ"})})]}),e.jsx("div",{className:t.default.contentDesktop,children:e.jsx(n.FAQComponent,{items:s,mode:"multiple"})}),e.jsx("div",{className:t.default.contentMobile,children:e.jsx(n.FAQComponent,{items:s,mode:"multiple"})})]})});exports.FAQModule=a;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsx as e, jsxs as a } from "react/jsx-runtime";
|
|
2
|
-
import { HighlightedTitle as
|
|
2
|
+
import { HighlightedTitle as o } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
|
|
3
3
|
import { Button as r } from "../../components/Button/Button.es.js";
|
|
4
4
|
import { FAQComponent as l } from "../../components/FAQComponent/FAQComponent.es.js";
|
|
5
5
|
import i from "./faqModule.module.css.es.js";
|
|
6
|
-
const h = ({ title:
|
|
6
|
+
const h = ({ title: s, questions: t }) => /* @__PURE__ */ e("section", { className: i.root, children: /* @__PURE__ */ a("div", { className: i.container, children: [
|
|
7
7
|
/* @__PURE__ */ a("div", { className: i.header, children: [
|
|
8
|
-
/* @__PURE__ */ e(
|
|
9
|
-
/* @__PURE__ */ e("div", { className: i.buttonWrapperDesktop, children: /* @__PURE__ */ e(r, { variant: "muted", size: "lg", as: "a", href: "/
|
|
10
|
-
/* @__PURE__ */ e("div", { className: i.buttonWrapperMobile, children: /* @__PURE__ */ e(r, { variant: "muted", size: "sm", as: "a", href: "/
|
|
8
|
+
/* @__PURE__ */ e(o, { title: s, defaultVariant: "displayMd", mobileVariant: "headingXl" }),
|
|
9
|
+
/* @__PURE__ */ e("div", { className: i.buttonWrapperDesktop, children: /* @__PURE__ */ e(r, { variant: "muted", size: "lg", as: "a", href: "/faqs", children: "VIEW ALL FAQ" }) }),
|
|
10
|
+
/* @__PURE__ */ e("div", { className: i.buttonWrapperMobile, children: /* @__PURE__ */ e(r, { variant: "muted", size: "sm", as: "a", href: "/faqs", children: "VIEW ALL FAQ" }) })
|
|
11
11
|
] }),
|
|
12
12
|
/* @__PURE__ */ e("div", { className: i.contentDesktop, children: /* @__PURE__ */ e(l, { items: t, mode: "multiple" }) }),
|
|
13
13
|
/* @__PURE__ */ e("div", { className: i.contentMobile, children: /* @__PURE__ */ e(l, { items: t, mode: "multiple" }) })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("react"),o=require("../../components/InfiniteScroll/InfiniteScroll.cjs.js"),l=require("../../components/Typography/Typography.cjs.js"),s=require("../../utils/cn/cn.cjs.js"),a=require("./featuredIn.module.css.cjs.js");function i({media:n}){return e.jsx("div",{className:a.default.mediaFeaturedInBlock,children:n.filter(r=>!!r.logo).map(({logo:r,url:t},d)=>{const u=t?"a":"div";return e.jsx(u,{href:t,target:"_blank",rel:"noopener noreferrer",className:a.default.mediaFeaturedInImageContainer,children:e.jsx("div",{className:a.default.mediaFeaturedInImage,style:{backgroundImage:`url(${r})`}})},`${t}_${d}`)})})}function
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("react"),o=require("../../components/InfiniteScroll/InfiniteScroll.cjs.js"),l=require("../../components/Typography/Typography.cjs.js"),s=require("../../utils/cn/cn.cjs.js"),a=require("./featuredIn.module.css.cjs.js");function i({media:n}){return e.jsx("div",{className:a.default.mediaFeaturedInBlock,children:n.filter(r=>!!r.logo).map(({logo:r,url:t},d)=>{const u=t?"a":"div";return e.jsx(u,{href:t,target:"_blank",rel:"noopener noreferrer",className:a.default.mediaFeaturedInImageContainer,children:e.jsx("div",{className:a.default.mediaFeaturedInImage,style:{backgroundImage:`url(${r})`}})},`${t}_${d}`)})})}function f({quote:n}){return e.jsx("div",{className:a.default.quoteFeaturedInBlock,children:e.jsxs(l.Typography,{as:"p",defaultVariant:"headingSm",mobileVariant:"headingXxs",className:a.default.quoteFeaturedInText,children:["“",n,"”"]})})}function m({button_label:n}){return e.jsx("a",{href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",className:a.default.ctaFeaturedIn,children:e.jsx("p",{className:a.default.ctaFeaturedInText,children:n})})}function p({label:n,content:r}){return e.jsxs("section",{className:a.default.container,children:[e.jsx("p",{className:s.cn(a.default.title,a.default.customTitle),children:"(Featured In)"}),e.jsx(l.Typography,{as:"p",defaultVariant:"displayMd",className:s.cn(a.default.title,a.default.defaultTitle),children:"(Featured In)"}),e.jsx(l.Typography,{as:"p",defaultVariant:"labelMd",mobileVariant:"labelSm",className:a.default.label,children:n}),e.jsx(o.InfiniteScroll,{items:r,contentClassName:a.default.content,itemClassName:a.default.item,rootClassName:a.default.scrollRoot,renderItem:t=>e.jsxs(c.Fragment,{children:[t.type==="media"&&e.jsx(i,{media:t.media}),t.type==="quote"&&e.jsx(f,{quote:t.quote}),t.type==="cta"&&e.jsx(m,{button_label:t.button_label}),e.jsx("div",{className:a.default.spacer})]},t.type)})]})}exports.FeaturedIn=p;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsxs as l, jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import { Fragment as
|
|
2
|
+
import { Fragment as s } from "react";
|
|
3
3
|
import { InfiniteScroll as c } from "../../components/InfiniteScroll/InfiniteScroll.es.js";
|
|
4
4
|
import { Typography as o } from "../../components/Typography/Typography.es.js";
|
|
5
5
|
import { cn as i } from "../../utils/cn/cn.es.js";
|
|
6
6
|
import e from "./featuredIn.module.css.es.js";
|
|
7
7
|
function m({ media: r }) {
|
|
8
|
-
return /* @__PURE__ */ a("div", { className: e.mediaFeaturedInBlock, children: r.filter((n) => !!n.logo).map(({ logo: n, url: t },
|
|
8
|
+
return /* @__PURE__ */ a("div", { className: e.mediaFeaturedInBlock, children: r.filter((n) => !!n.logo).map(({ logo: n, url: t }, d) => /* @__PURE__ */ a(
|
|
9
9
|
t ? "a" : "div",
|
|
10
10
|
{
|
|
11
11
|
href: t,
|
|
@@ -14,7 +14,7 @@ function m({ media: r }) {
|
|
|
14
14
|
className: e.mediaFeaturedInImageContainer,
|
|
15
15
|
children: /* @__PURE__ */ a("div", { className: e.mediaFeaturedInImage, style: { backgroundImage: `url(${n})` } })
|
|
16
16
|
},
|
|
17
|
-
`${t}_${
|
|
17
|
+
`${t}_${d}`
|
|
18
18
|
)) });
|
|
19
19
|
}
|
|
20
20
|
function u({ quote: r }) {
|
|
@@ -34,7 +34,14 @@ function u({ quote: r }) {
|
|
|
34
34
|
) });
|
|
35
35
|
}
|
|
36
36
|
function p({ button_label: r }) {
|
|
37
|
-
return /* @__PURE__ */ a(
|
|
37
|
+
return /* @__PURE__ */ a(
|
|
38
|
+
"a",
|
|
39
|
+
{
|
|
40
|
+
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
41
|
+
className: e.ctaFeaturedIn,
|
|
42
|
+
children: /* @__PURE__ */ a("p", { className: e.ctaFeaturedInText, children: r })
|
|
43
|
+
}
|
|
44
|
+
);
|
|
38
45
|
}
|
|
39
46
|
function y({ label: r, content: n }) {
|
|
40
47
|
return /* @__PURE__ */ l("section", { className: e.container, children: [
|
|
@@ -48,7 +55,7 @@ function y({ label: r, content: n }) {
|
|
|
48
55
|
contentClassName: e.content,
|
|
49
56
|
itemClassName: e.item,
|
|
50
57
|
rootClassName: e.scrollRoot,
|
|
51
|
-
renderItem: (t) => /* @__PURE__ */ l(
|
|
58
|
+
renderItem: (t) => /* @__PURE__ */ l(s, { children: [
|
|
52
59
|
t.type === "media" && /* @__PURE__ */ a(m, { media: t.media }),
|
|
53
60
|
t.type === "quote" && /* @__PURE__ */ a(u, { quote: t.quote }),
|
|
54
61
|
t.type === "cta" && /* @__PURE__ */ a(p, { button_label: t.button_label }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),t=require("../../components/Typography/Typography.cjs.js"),i=require("../../components/Button/Button.cjs.js"),n=require("./components/MiddleCarousel/MiddleCarousel.cjs.js"),o=require("../../utils/cn/cn.cjs.js"),a=require("./homepageHero.module.css.cjs.js");function s(){return e.jsxs("section",{className:a.default.root,"data-type":"hero",children:[e.jsx("div",{className:a.default.carouselArea,children:e.jsx(n.MiddleCarousel,{})}),e.jsxs("div",{className:a.default.contentContainer,children:[e.jsx("div",{className:a.default.headline,children:e.jsx(r.HighlightedTitle,{colorScheme:"dark",title:e.jsx(t.Typography,{as:"div",defaultVariant:"displayXs",mobileVariant:"headingLg",children:e.jsxs("p",{children:[e.jsx("b",{children:"Transform your quality of living"})," through the science of aging."]})})})}),e.jsxs("div",{className:a.default.callAction,children:[e.jsx(t.Typography,{as:"p",defaultVariant:"bodyLg",mobileVariant:"bodySm",className:a.default.text,children:"Defy your age with advanced longevity protocols tailored to you by clinical experts and optimized over time through ongoing labs, performance coaching, and results tracking."}),e.jsx("div",{className:o.cn(a.default.buttonWrapper,a.default.desktop),children:e.jsx(i.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"lg",children:"Join Healthspan"})}),e.jsx("div",{className:o.cn(a.default.buttonWrapper,a.default.mobile),children:e.jsx(i.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"md",children:"Join Healthspan"})})]})]})]})}exports.HomepageHero=s;
|
|
@@ -1,32 +1,50 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as i, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import { HighlightedTitle as n } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
|
|
3
|
-
import { Typography as
|
|
4
|
-
import { Button as
|
|
3
|
+
import { Typography as r } from "../../components/Typography/Typography.es.js";
|
|
4
|
+
import { Button as o } from "../../components/Button/Button.es.js";
|
|
5
5
|
import { MiddleCarousel as l } from "./components/MiddleCarousel/MiddleCarousel.es.js";
|
|
6
|
-
import { cn as
|
|
6
|
+
import { cn as t } from "../../utils/cn/cn.es.js";
|
|
7
7
|
import a from "./homepageHero.module.css.es.js";
|
|
8
|
-
function
|
|
9
|
-
return /* @__PURE__ */
|
|
8
|
+
function u() {
|
|
9
|
+
return /* @__PURE__ */ i("section", { className: a.root, "data-type": "hero", children: [
|
|
10
10
|
/* @__PURE__ */ e("div", { className: a.carouselArea, children: /* @__PURE__ */ e(l, {}) }),
|
|
11
|
-
/* @__PURE__ */
|
|
11
|
+
/* @__PURE__ */ i("div", { className: a.contentContainer, children: [
|
|
12
12
|
/* @__PURE__ */ e("div", { className: a.headline, children: /* @__PURE__ */ e(
|
|
13
13
|
n,
|
|
14
14
|
{
|
|
15
15
|
colorScheme: "dark",
|
|
16
|
-
title: /* @__PURE__ */ e(
|
|
16
|
+
title: /* @__PURE__ */ e(r, { as: "div", defaultVariant: "displayXs", mobileVariant: "headingLg", children: /* @__PURE__ */ i("p", { children: [
|
|
17
17
|
/* @__PURE__ */ e("b", { children: "Transform your quality of living" }),
|
|
18
18
|
" through the science of aging."
|
|
19
19
|
] }) })
|
|
20
20
|
}
|
|
21
21
|
) }),
|
|
22
|
-
/* @__PURE__ */
|
|
23
|
-
/* @__PURE__ */ e(
|
|
24
|
-
/* @__PURE__ */ e("div", { className:
|
|
25
|
-
|
|
22
|
+
/* @__PURE__ */ i("div", { className: a.callAction, children: [
|
|
23
|
+
/* @__PURE__ */ e(r, { as: "p", defaultVariant: "bodyLg", mobileVariant: "bodySm", className: a.text, children: "Defy your age with advanced longevity protocols tailored to you by clinical experts and optimized over time through ongoing labs, performance coaching, and results tracking." }),
|
|
24
|
+
/* @__PURE__ */ e("div", { className: t(a.buttonWrapper, a.desktop), children: /* @__PURE__ */ e(
|
|
25
|
+
o,
|
|
26
|
+
{
|
|
27
|
+
as: "a",
|
|
28
|
+
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
29
|
+
variant: "secondary",
|
|
30
|
+
size: "lg",
|
|
31
|
+
children: "Join Healthspan"
|
|
32
|
+
}
|
|
33
|
+
) }),
|
|
34
|
+
/* @__PURE__ */ e("div", { className: t(a.buttonWrapper, a.mobile), children: /* @__PURE__ */ e(
|
|
35
|
+
o,
|
|
36
|
+
{
|
|
37
|
+
as: "a",
|
|
38
|
+
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
39
|
+
variant: "secondary",
|
|
40
|
+
size: "md",
|
|
41
|
+
children: "Join Healthspan"
|
|
42
|
+
}
|
|
43
|
+
) })
|
|
26
44
|
] })
|
|
27
45
|
] })
|
|
28
46
|
] });
|
|
29
47
|
}
|
|
30
48
|
export {
|
|
31
|
-
|
|
49
|
+
u as HomepageHero
|
|
32
50
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),r=require("react"),m=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),l=require("../../components/Typography/Typography.cjs.js"),p=require("../../components/Button/Button.cjs.js"),t=require("../../utils/cn/cn.cjs.js"),x=require("./assets/prod1.png.cjs.js"),v=require("./assets/prod2.png.cjs.js"),y=require("./assets/prod3.png.cjs.js"),N=require("./assets/pill1.jpg.cjs.js"),j=require("./assets/pill2.jpg.cjs.js"),b=require("./assets/pill3.jpg.cjs.js"),T=require("./assets/graph1.svg.cjs.js"),V=require("./assets/graph2.svg.cjs.js"),I=require("./assets/graph3.svg.cjs.js"),e=require("./personalizedProtocolHero.module.css.cjs.js"),n=[{pill:N.default,product:x.default,protocol:"ENERGY",dosage:{text:"Oxytocin Nasal Spray",value:"3MG"},goal:"REDUCE STRESS",svg:T.default},{pill:j.default,product:v.default,protocol:"METABOLISM",dosage:{text:"Metformin",value:"3MG"},goal:"AUTOPHAGY INDUCTION",svg:V.default},{pill:b.default,product:y.default,protocol:"SENESCENCE",dosage:{text:"Rapamycin",value:"3MG"},goal:"LONGEVITY",svg:I.default}],q=()=>{const[i,f]=r.useState(0),[h,g]=r.useState(0),[s,u]=r.useState(!1);r.useEffect(()=>{const c=setInterval(()=>{const o=(i+1)%n.length;f(o),setTimeout(()=>{u(!0),setTimeout(()=>{g(o),u(!1)},200)},200)},2500);return()=>clearInterval(c)},[i]);const d=n[h];return a.jsx("section",{className:e.default.root,"data-type":"hero",children:a.jsxs("div",{className:e.default.container,children:[a.jsxs("div",{className:e.default.leftContent,children:[a.jsx("div",{className:e.default.title,children:a.jsx(m.HighlightedTitle,{as:"p",colorScheme:"dark",defaultVariant:"displayMd",mobileVariant:"displayXs",title:a.jsxs(a.Fragment,{children:["A longevity protocol that's ",a.jsx("b",{children:"all you"})]})})}),a.jsx(l.Typography,{className:e.default.description,as:"p",defaultVariant:"bodyMd",mobileVariant:"bodySm",children:"There's nothing more personal than your health, which is why your Healthspan care team works closely with you — using lab testing, data, and coaching — to design and optimize a protocol to fit your unique goals."}),a.jsx("div",{className:t.cn(e.default.buttonWrap,e.default.mobile),children:a.jsx(p.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),r=require("react"),m=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),l=require("../../components/Typography/Typography.cjs.js"),p=require("../../components/Button/Button.cjs.js"),t=require("../../utils/cn/cn.cjs.js"),x=require("./assets/prod1.png.cjs.js"),v=require("./assets/prod2.png.cjs.js"),y=require("./assets/prod3.png.cjs.js"),N=require("./assets/pill1.jpg.cjs.js"),j=require("./assets/pill2.jpg.cjs.js"),b=require("./assets/pill3.jpg.cjs.js"),T=require("./assets/graph1.svg.cjs.js"),V=require("./assets/graph2.svg.cjs.js"),I=require("./assets/graph3.svg.cjs.js"),e=require("./personalizedProtocolHero.module.css.cjs.js"),n=[{pill:N.default,product:x.default,protocol:"ENERGY",dosage:{text:"Oxytocin Nasal Spray",value:"3MG"},goal:"REDUCE STRESS",svg:T.default},{pill:j.default,product:v.default,protocol:"METABOLISM",dosage:{text:"Metformin",value:"3MG"},goal:"AUTOPHAGY INDUCTION",svg:V.default},{pill:b.default,product:y.default,protocol:"SENESCENCE",dosage:{text:"Rapamycin",value:"3MG"},goal:"LONGEVITY",svg:I.default}],q=()=>{const[i,f]=r.useState(0),[h,g]=r.useState(0),[s,u]=r.useState(!1);r.useEffect(()=>{const c=setInterval(()=>{const o=(i+1)%n.length;f(o),setTimeout(()=>{u(!0),setTimeout(()=>{g(o),u(!1)},200)},200)},2500);return()=>clearInterval(c)},[i]);const d=n[h];return a.jsx("section",{className:e.default.root,"data-type":"hero",children:a.jsxs("div",{className:e.default.container,children:[a.jsxs("div",{className:e.default.leftContent,children:[a.jsx("div",{className:e.default.title,children:a.jsx(m.HighlightedTitle,{as:"p",colorScheme:"dark",defaultVariant:"displayMd",mobileVariant:"displayXs",title:a.jsxs(a.Fragment,{children:["A longevity protocol that's ",a.jsx("b",{children:"all you"})]})})}),a.jsx(l.Typography,{className:e.default.description,as:"p",defaultVariant:"bodyMd",mobileVariant:"bodySm",children:"There's nothing more personal than your health, which is why your Healthspan care team works closely with you — using lab testing, data, and coaching — to design and optimize a protocol to fit your unique goals."}),a.jsx("div",{className:t.cn(e.default.buttonWrap,e.default.mobile),children:a.jsx(p.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"md",children:"Join Healthspan"})}),a.jsx("div",{className:t.cn(e.default.buttonWrap,e.default.desktop),children:a.jsx(p.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"lg",children:"Join Healthspan"})})]}),a.jsx("div",{className:e.default.pillContainer,children:n.map((c,o)=>a.jsx("img",{src:c.pill,className:t.cn(e.default.pillImage,o===i&&e.default.active,o===(i-1+n.length)%n.length&&e.default.exiting),alt:"Pill"},o))}),a.jsxs("div",{className:e.default.textContainer,children:[a.jsxs("div",{className:e.default.protocolContainer,children:[a.jsx(l.Typography,{className:e.default.protocolText,as:"p",defaultVariant:"labelMd",mobileVariant:"labelXs",children:"Protocol"}),a.jsx("div",{className:t.cn(e.default.protocolFade,s?e.default.fadeOut:e.default.fadeIn),children:a.jsx(l.Typography,{className:e.default.protocolValue,as:"p",defaultVariant:"labelSm",mobileVariant:"labelXs",emphasis:!0,children:d.protocol})})]}),a.jsxs("div",{className:e.default.dosageContainer,children:[a.jsx("div",{className:t.cn(e.default.dosageImageFade,s?e.default.fadeOut:e.default.fadeIn),children:a.jsx("img",{src:d.product,className:e.default.dosageItem,alt:"Product"})}),a.jsxs("div",{className:e.default.dosageTextBlock,children:[a.jsx("div",{className:t.cn(e.default.dosageTextFade,s?e.default.fadeOut:e.default.fadeIn),children:a.jsx(l.Typography,{className:e.default.dosageText,as:"p",defaultVariant:"labelMd",mobileVariant:"labelXs",children:d.dosage.text})}),a.jsx("div",{className:t.cn(e.default.dosageValueFade,s?e.default.fadeOut:e.default.fadeIn),children:a.jsx(l.Typography,{className:e.default.dosageValue,as:"p",defaultVariant:"labelSm",mobileVariant:"labelXs",emphasis:!0,children:d.dosage.value})})]})]}),a.jsxs("div",{className:e.default.goalContainer,children:[a.jsx(l.Typography,{className:e.default.goalText,as:"p",defaultVariant:"labelMd",mobileVariant:"labelXs",children:"Goal"}),a.jsx("div",{className:t.cn(e.default.goalFade,s?e.default.fadeOut:e.default.fadeIn),children:a.jsx(l.Typography,{className:e.default.goalValue,as:"p",defaultVariant:"labelSm",mobileVariant:"labelXs",emphasis:!0,children:d.goal})})]}),a.jsx("div",{className:e.default.svgContainer,children:a.jsx("div",{className:t.cn(e.default.svgFade,s?e.default.fadeOut:e.default.fadeIn),children:r.createElement(d.svg,{className:e.default.svg})})})]})]})})};exports.PersonalizedProtocolHero=q;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as
|
|
2
|
+
import { jsx as e, jsxs as t, Fragment as v } from "react/jsx-runtime";
|
|
3
3
|
import N, { useState as m, useEffect as b } from "react";
|
|
4
4
|
import { HighlightedTitle as x } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
|
|
5
5
|
import { Typography as o } from "../../components/Typography/Typography.es.js";
|
|
@@ -14,7 +14,7 @@ import C from "./assets/pill3.jpg.es.js";
|
|
|
14
14
|
import E from "./assets/graph1.svg.es.js";
|
|
15
15
|
import M from "./assets/graph2.svg.es.js";
|
|
16
16
|
import O from "./assets/graph3.svg.es.js";
|
|
17
|
-
import
|
|
17
|
+
import a from "./personalizedProtocolHero.module.css.es.js";
|
|
18
18
|
const n = [
|
|
19
19
|
{
|
|
20
20
|
pill: T,
|
|
@@ -54,9 +54,9 @@ const n = [
|
|
|
54
54
|
return () => clearInterval(c);
|
|
55
55
|
}, [d]);
|
|
56
56
|
const s = n[g];
|
|
57
|
-
return /* @__PURE__ */
|
|
58
|
-
/* @__PURE__ */ t("div", { className:
|
|
59
|
-
/* @__PURE__ */
|
|
57
|
+
return /* @__PURE__ */ e("section", { className: a.root, "data-type": "hero", children: /* @__PURE__ */ t("div", { className: a.container, children: [
|
|
58
|
+
/* @__PURE__ */ t("div", { className: a.leftContent, children: [
|
|
59
|
+
/* @__PURE__ */ e("div", { className: a.title, children: /* @__PURE__ */ e(
|
|
60
60
|
x,
|
|
61
61
|
{
|
|
62
62
|
as: "p",
|
|
@@ -65,61 +65,61 @@ const n = [
|
|
|
65
65
|
mobileVariant: "displayXs",
|
|
66
66
|
title: /* @__PURE__ */ t(v, { children: [
|
|
67
67
|
"A longevity protocol that's ",
|
|
68
|
-
/* @__PURE__ */
|
|
68
|
+
/* @__PURE__ */ e("b", { children: "all you" })
|
|
69
69
|
] })
|
|
70
70
|
}
|
|
71
71
|
) }),
|
|
72
|
-
/* @__PURE__ */
|
|
73
|
-
/* @__PURE__ */
|
|
72
|
+
/* @__PURE__ */ e(o, { className: a.description, as: "p", defaultVariant: "bodyMd", mobileVariant: "bodySm", children: "There's nothing more personal than your health, which is why your Healthspan care team works closely with you — using lab testing, data, and coaching — to design and optimize a protocol to fit your unique goals." }),
|
|
73
|
+
/* @__PURE__ */ e("div", { className: l(a.buttonWrap, a.mobile), children: /* @__PURE__ */ e(
|
|
74
74
|
h,
|
|
75
75
|
{
|
|
76
76
|
as: "a",
|
|
77
|
-
href: "https://app.gethealthspan.com/#/product/signup/
|
|
77
|
+
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
78
78
|
variant: "secondary",
|
|
79
79
|
size: "md",
|
|
80
80
|
children: "Join Healthspan"
|
|
81
81
|
}
|
|
82
82
|
) }),
|
|
83
|
-
/* @__PURE__ */
|
|
83
|
+
/* @__PURE__ */ e("div", { className: l(a.buttonWrap, a.desktop), children: /* @__PURE__ */ e(
|
|
84
84
|
h,
|
|
85
85
|
{
|
|
86
86
|
as: "a",
|
|
87
|
-
href: "https://app.gethealthspan.com/#/product/signup/
|
|
87
|
+
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
88
88
|
variant: "secondary",
|
|
89
89
|
size: "lg",
|
|
90
90
|
children: "Join Healthspan"
|
|
91
91
|
}
|
|
92
92
|
) })
|
|
93
93
|
] }),
|
|
94
|
-
/* @__PURE__ */
|
|
94
|
+
/* @__PURE__ */ e("div", { className: a.pillContainer, children: n.map((c, i) => /* @__PURE__ */ e(
|
|
95
95
|
"img",
|
|
96
96
|
{
|
|
97
97
|
src: c.pill,
|
|
98
98
|
className: l(
|
|
99
|
-
|
|
100
|
-
i === d &&
|
|
101
|
-
i === (d - 1 + n.length) % n.length &&
|
|
99
|
+
a.pillImage,
|
|
100
|
+
i === d && a.active,
|
|
101
|
+
i === (d - 1 + n.length) % n.length && a.exiting
|
|
102
102
|
),
|
|
103
103
|
alt: "Pill"
|
|
104
104
|
},
|
|
105
105
|
i
|
|
106
106
|
)) }),
|
|
107
|
-
/* @__PURE__ */ t("div", { className:
|
|
108
|
-
/* @__PURE__ */ t("div", { className:
|
|
109
|
-
/* @__PURE__ */
|
|
107
|
+
/* @__PURE__ */ t("div", { className: a.textContainer, children: [
|
|
108
|
+
/* @__PURE__ */ t("div", { className: a.protocolContainer, children: [
|
|
109
|
+
/* @__PURE__ */ e(
|
|
110
110
|
o,
|
|
111
111
|
{
|
|
112
|
-
className:
|
|
112
|
+
className: a.protocolText,
|
|
113
113
|
as: "p",
|
|
114
114
|
defaultVariant: "labelMd",
|
|
115
115
|
mobileVariant: "labelXs",
|
|
116
116
|
children: "Protocol"
|
|
117
117
|
}
|
|
118
118
|
),
|
|
119
|
-
/* @__PURE__ */
|
|
119
|
+
/* @__PURE__ */ e("div", { className: l(a.protocolFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
120
120
|
o,
|
|
121
121
|
{
|
|
122
|
-
className:
|
|
122
|
+
className: a.protocolValue,
|
|
123
123
|
as: "p",
|
|
124
124
|
defaultVariant: "labelSm",
|
|
125
125
|
mobileVariant: "labelXs",
|
|
@@ -128,23 +128,23 @@ const n = [
|
|
|
128
128
|
}
|
|
129
129
|
) })
|
|
130
130
|
] }),
|
|
131
|
-
/* @__PURE__ */ t("div", { className:
|
|
132
|
-
/* @__PURE__ */
|
|
133
|
-
/* @__PURE__ */ t("div", { className:
|
|
134
|
-
/* @__PURE__ */
|
|
131
|
+
/* @__PURE__ */ t("div", { className: a.dosageContainer, children: [
|
|
132
|
+
/* @__PURE__ */ e("div", { className: l(a.dosageImageFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e("img", { src: s.product, className: a.dosageItem, alt: "Product" }) }),
|
|
133
|
+
/* @__PURE__ */ t("div", { className: a.dosageTextBlock, children: [
|
|
134
|
+
/* @__PURE__ */ e("div", { className: l(a.dosageTextFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
135
135
|
o,
|
|
136
136
|
{
|
|
137
|
-
className:
|
|
137
|
+
className: a.dosageText,
|
|
138
138
|
as: "p",
|
|
139
139
|
defaultVariant: "labelMd",
|
|
140
140
|
mobileVariant: "labelXs",
|
|
141
141
|
children: s.dosage.text
|
|
142
142
|
}
|
|
143
143
|
) }),
|
|
144
|
-
/* @__PURE__ */
|
|
144
|
+
/* @__PURE__ */ e("div", { className: l(a.dosageValueFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
145
145
|
o,
|
|
146
146
|
{
|
|
147
|
-
className:
|
|
147
|
+
className: a.dosageValue,
|
|
148
148
|
as: "p",
|
|
149
149
|
defaultVariant: "labelSm",
|
|
150
150
|
mobileVariant: "labelXs",
|
|
@@ -154,12 +154,12 @@ const n = [
|
|
|
154
154
|
) })
|
|
155
155
|
] })
|
|
156
156
|
] }),
|
|
157
|
-
/* @__PURE__ */ t("div", { className:
|
|
158
|
-
/* @__PURE__ */
|
|
159
|
-
/* @__PURE__ */
|
|
157
|
+
/* @__PURE__ */ t("div", { className: a.goalContainer, children: [
|
|
158
|
+
/* @__PURE__ */ e(o, { className: a.goalText, as: "p", defaultVariant: "labelMd", mobileVariant: "labelXs", children: "Goal" }),
|
|
159
|
+
/* @__PURE__ */ e("div", { className: l(a.goalFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
160
160
|
o,
|
|
161
161
|
{
|
|
162
|
-
className:
|
|
162
|
+
className: a.goalValue,
|
|
163
163
|
as: "p",
|
|
164
164
|
defaultVariant: "labelSm",
|
|
165
165
|
mobileVariant: "labelXs",
|
|
@@ -168,8 +168,8 @@ const n = [
|
|
|
168
168
|
}
|
|
169
169
|
) })
|
|
170
170
|
] }),
|
|
171
|
-
/* @__PURE__ */
|
|
172
|
-
className:
|
|
171
|
+
/* @__PURE__ */ e("div", { className: a.svgContainer, children: /* @__PURE__ */ e("div", { className: l(a.svgFade, r ? a.fadeOut : a.fadeIn), children: N.createElement(s.svg, {
|
|
172
|
+
className: a.svg
|
|
173
173
|
}) }) })
|
|
174
174
|
] })
|
|
175
175
|
] }) });
|