@zenpatient-org/healthspan-marketing-ui 0.1.169 → 0.1.171
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/components/Button/Button.cjs.js +1 -1
- package/dist/components/Button/Button.d.ts +3 -0
- package/dist/components/Button/Button.es.js +34 -28
- package/dist/components/Callback/Callback.d.ts +1 -0
- package/dist/components/Pricing/Pricing.cjs.js +1 -1
- package/dist/components/Pricing/Pricing.d.ts +1 -1
- package/dist/components/Pricing/Pricing.es.js +51 -37
- package/dist/components/Pricing/types.d.ts +2 -0
- package/dist/components/ProductGallery/ProductGallery.cjs.js +1 -1
- package/dist/components/ProductGallery/ProductGallery.es.js +4 -3
- package/dist/components/ProductGalleryCard/ProductGalleryCard.cjs.js +1 -1
- package/dist/components/ProductGalleryCard/ProductGalleryCard.d.ts +1 -1
- package/dist/components/ProductGalleryCard/ProductGalleryCard.es.js +51 -22
- package/dist/components/ProductGalleryCard/types.d.ts +1 -0
- package/dist/components/ProductListing/ProductListing.cjs.js +1 -1
- package/dist/components/ProductListing/ProductListing.d.ts +3 -1
- package/dist/components/ProductListing/ProductListing.es.js +48 -25
- package/dist/modules/CallToAction/CallToAction.cjs.js +1 -1
- package/dist/modules/CallToAction/CallToAction.es.js +86 -73
- package/dist/modules/Callback/Callback.cjs.js +1 -1
- package/dist/modules/Callback/Callback.d.ts +3 -1
- package/dist/modules/Callback/Callback.es.js +46 -24
- package/dist/modules/Compare/Compare.cjs.js +1 -1
- package/dist/modules/Compare/Compare.es.js +12 -12
- package/dist/modules/Compare/types.d.ts +2 -2
- package/dist/modules/FeaturedIn/FeaturedIn.cjs.js +1 -1
- package/dist/modules/FeaturedIn/FeaturedIn.es.js +23 -32
- package/dist/modules/FeaturedIn/components/CtaFeaturedIn.cjs.js +1 -0
- package/dist/modules/FeaturedIn/components/CtaFeaturedIn.d.ts +5 -0
- package/dist/modules/FeaturedIn/components/CtaFeaturedIn.es.js +22 -0
- package/dist/modules/HowItWorks/HowItWorks.cjs.js +1 -1
- package/dist/modules/HowItWorks/HowItWorks.es.js +61 -30
- package/dist/modules/IndividualProductCard/IndividualProductCard.cjs.js +1 -1
- package/dist/modules/IndividualProductCard/IndividualProductCard.d.ts +2 -1
- package/dist/modules/IndividualProductCard/IndividualProductCard.es.js +84 -64
- package/dist/modules/ProgramsDetailsHero/ProgramsDetailsHero.cjs.js +1 -1
- package/dist/modules/ProgramsDetailsHero/ProgramsDetailsHero.es.js +38 -26
- package/dist/modules/YourProtocol/YourProtocol.cjs.js +1 -1
- package/dist/modules/YourProtocol/YourProtocol.es.js +48 -35
- package/dist/pageComponents/HomepageHero/HomepageHero.cjs.js +1 -1
- package/dist/pageComponents/HomepageHero/HomepageHero.es.js +19 -28
- package/dist/pageComponents/LabsHero/LabsHero.cjs.js +1 -1
- package/dist/pageComponents/LabsHero/LabsHero.es.js +54 -43
- package/dist/pageComponents/PersonalizedProtocolHero/PersonalizedProtocolHero.cjs.js +1 -1
- package/dist/pageComponents/PersonalizedProtocolHero/PersonalizedProtocolHero.es.js +73 -60
- package/dist/types/analytics/analytics.cjs.js +1 -1
- package/dist/types/analytics/analytics.es.js +3 -3
- package/dist/types/analytics.d.ts +26 -3
- package/package.json +1 -1
|
@@ -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"),l=require("../../utils/cn/cn.cjs.js"),n=require("../../components/Typography/Typography.cjs.js"),c=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),r=require("../../components/Button/Button.cjs.js"),o=require("./assets/icon1.png.cjs.js"),d=require("./assets/icon2.png.cjs.js"),u=require("./assets/icon3.png.cjs.js"),m=require("./assets/img1.png.cjs.js"),g=require("./assets/img2.png.cjs.js"),p=require("./assets/img3.png.cjs.js"),f=require("./assets/svg1.svg.cjs.js"),y=require("./assets/svg2.svg.cjs.js"),h=require("./assets/svg3.svg.cjs.js"),a=require("./labsHero.module.css.cjs.js"),i=require("../../types/analytics/analytics.cjs.js"),j=({link:t})=>{const s={event:i.EAnalyticsEvent.ctaClicked,type:i.EAnalyticsEventType.interaction,component:"LabsHero",payload:{ctaLink:t}};return e.jsx("section",{className:a.default.root,"data-type":"hero",children:e.jsxs("div",{className:a.default.container,children:[e.jsxs("div",{className:a.default.headlineContainer,children:[e.jsx("div",{className:a.default.title,children:e.jsx(c.HighlightedTitle,{as:"p",colorScheme:"dark",defaultVariant:"displayMd",mobileVariant:"displayXs",title:e.jsxs(e.Fragment,{children:["To see results, you need to ",e.jsx("b",{children:"see your results"})]})})}),e.jsx(n.Typography,{as:"p",defaultVariant:"bodyMd",mobileVariant:"bodySm",className:a.default.description,children:"Healthspan's advanced lab panels provide precise data on 100+ biomarkers. Your dedicated clinical care team analyzes and explains the results in plain terms, helping you personalize and optimize your longevity protocol."}),e.jsx("div",{className:l.cn(a.default.buttonWrap,a.default.mobile),children:e.jsx(r.Button,{as:"a",href:t,variant:"secondary",size:"md",analyticsProps:s,children:"Get Started"})}),e.jsx("div",{className:l.cn(a.default.buttonWrap,a.default.desktop),children:e.jsx(r.Button,{as:"a",href:t,variant:"secondary",size:"lg",analyticsProps:s,children:"Get Started"})})]}),e.jsxs("div",{className:a.default.animationContainer,children:[e.jsx("img",{src:o.default,className:a.default.set1Icon,alt:"Image Icon"}),e.jsx("img",{src:m.default,className:a.default.set1Image,alt:"Product Image"}),e.jsx(f.default,{className:a.default.set1Svg}),e.jsx("img",{src:d.default,className:a.default.set2Icon,alt:"Image Icon"}),e.jsx("img",{src:g.default,className:a.default.set2Image,alt:"Product Image"}),e.jsx(y.default,{className:a.default.set2Svg}),e.jsx("img",{src:u.default,className:a.default.set3Icon,alt:"Image Icon"}),e.jsx("img",{src:p.default,className:a.default.set3Image,alt:"Product Image"}),e.jsx(h.default,{className:a.default.set3Svg})]})]})})};exports.LabsHero=j;
|
|
@@ -1,49 +1,60 @@
|
|
|
1
|
-
import { jsx as a, jsxs as
|
|
2
|
-
import { cn as
|
|
3
|
-
import { Typography as
|
|
4
|
-
import { HighlightedTitle as
|
|
1
|
+
import { jsx as a, jsxs as t, Fragment as m } from "react/jsx-runtime";
|
|
2
|
+
import { cn as o } from "../../utils/cn/cn.es.js";
|
|
3
|
+
import { Typography as c } from "../../components/Typography/Typography.es.js";
|
|
4
|
+
import { HighlightedTitle as n } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
|
|
5
5
|
import { Button as i } from "../../components/Button/Button.es.js";
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
6
|
+
import l from "./assets/icon1.png.es.js";
|
|
7
|
+
import d from "./assets/icon2.png.es.js";
|
|
8
|
+
import p from "./assets/icon3.png.es.js";
|
|
9
|
+
import g from "./assets/img1.png.es.js";
|
|
10
|
+
import v from "./assets/img2.png.es.js";
|
|
11
11
|
import h from "./assets/img3.png.es.js";
|
|
12
|
-
import
|
|
12
|
+
import y from "./assets/svg1.svg.es.js";
|
|
13
13
|
import f from "./assets/svg2.svg.es.js";
|
|
14
|
-
import
|
|
14
|
+
import u from "./assets/svg3.svg.es.js";
|
|
15
15
|
import e from "./labsHero.module.css.es.js";
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
16
|
+
import { EAnalyticsEventType as N, EAnalyticsEvent as I } from "../../types/analytics/analytics.es.js";
|
|
17
|
+
const W = ({ link: r }) => {
|
|
18
|
+
const s = {
|
|
19
|
+
event: I.ctaClicked,
|
|
20
|
+
type: N.interaction,
|
|
21
|
+
component: "LabsHero",
|
|
22
|
+
payload: {
|
|
23
|
+
ctaLink: r
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
return /* @__PURE__ */ a("section", { className: e.root, "data-type": "hero", children: /* @__PURE__ */ t("div", { className: e.container, children: [
|
|
27
|
+
/* @__PURE__ */ t("div", { className: e.headlineContainer, children: [
|
|
28
|
+
/* @__PURE__ */ a("div", { className: e.title, children: /* @__PURE__ */ a(
|
|
29
|
+
n,
|
|
30
|
+
{
|
|
31
|
+
as: "p",
|
|
32
|
+
colorScheme: "dark",
|
|
33
|
+
defaultVariant: "displayMd",
|
|
34
|
+
mobileVariant: "displayXs",
|
|
35
|
+
title: /* @__PURE__ */ t(m, { children: [
|
|
36
|
+
"To see results, you need to ",
|
|
37
|
+
/* @__PURE__ */ a("b", { children: "see your results" })
|
|
38
|
+
] })
|
|
39
|
+
}
|
|
40
|
+
) }),
|
|
41
|
+
/* @__PURE__ */ a(c, { as: "p", defaultVariant: "bodyMd", mobileVariant: "bodySm", className: e.description, children: "Healthspan's advanced lab panels provide precise data on 100+ biomarkers. Your dedicated clinical care team analyzes and explains the results in plain terms, helping you personalize and optimize your longevity protocol." }),
|
|
42
|
+
/* @__PURE__ */ a("div", { className: o(e.buttonWrap, e.mobile), children: /* @__PURE__ */ a(i, { as: "a", href: r, variant: "secondary", size: "md", analyticsProps: s, children: "Get Started" }) }),
|
|
43
|
+
/* @__PURE__ */ a("div", { className: o(e.buttonWrap, e.desktop), children: /* @__PURE__ */ a(i, { as: "a", href: r, variant: "secondary", size: "lg", analyticsProps: s, children: "Get Started" }) })
|
|
44
|
+
] }),
|
|
45
|
+
/* @__PURE__ */ t("div", { className: e.animationContainer, children: [
|
|
46
|
+
/* @__PURE__ */ a("img", { src: l, className: e.set1Icon, alt: "Image Icon" }),
|
|
47
|
+
/* @__PURE__ */ a("img", { src: g, className: e.set1Image, alt: "Product Image" }),
|
|
48
|
+
/* @__PURE__ */ a(y, { className: e.set1Svg }),
|
|
49
|
+
/* @__PURE__ */ a("img", { src: d, className: e.set2Icon, alt: "Image Icon" }),
|
|
50
|
+
/* @__PURE__ */ a("img", { src: v, className: e.set2Image, alt: "Product Image" }),
|
|
51
|
+
/* @__PURE__ */ a(f, { className: e.set2Svg }),
|
|
52
|
+
/* @__PURE__ */ a("img", { src: p, className: e.set3Icon, alt: "Image Icon" }),
|
|
53
|
+
/* @__PURE__ */ a("img", { src: h, className: e.set3Image, alt: "Product Image" }),
|
|
54
|
+
/* @__PURE__ */ a(u, { className: e.set3Svg })
|
|
55
|
+
] })
|
|
56
|
+
] }) });
|
|
57
|
+
};
|
|
47
58
|
export {
|
|
48
|
-
|
|
59
|
+
W as LabsHero
|
|
49
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),r=require("react"),
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),r=require("react"),y=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),l=require("../../components/Typography/Typography.cjs.js"),f=require("../../components/Button/Button.cjs.js"),t=require("../../utils/cn/cn.cjs.js"),v=require("./assets/prod1.png.cjs.js"),N=require("./assets/prod2.png.cjs.js"),j=require("./assets/prod3.png.cjs.js"),b=require("./assets/pill1.jpg.cjs.js"),T=require("./assets/pill2.jpg.cjs.js"),V=require("./assets/pill3.jpg.cjs.js"),I=require("./assets/graph1.svg.cjs.js"),q=require("./assets/graph2.svg.cjs.js"),C=require("./assets/graph3.svg.cjs.js"),e=require("./personalizedProtocolHero.module.css.cjs.js"),h=require("../../types/analytics/analytics.cjs.js"),i=[{pill:b.default,product:v.default,protocol:"ENERGY",dosage:{text:"Oxytocin Nasal Spray",value:"3MG"},goal:"REDUCE STRESS",svg:I.default},{pill:T.default,product:N.default,protocol:"METABOLISM",dosage:{text:"Metformin",value:"3MG"},goal:"AUTOPHAGY INDUCTION",svg:q.default},{pill:V.default,product:j.default,protocol:"SENESCENCE",dosage:{text:"Rapamycin",value:"3MG"},goal:"LONGEVITY",svg:C.default}],E=()=>{const[c,m]=r.useState(0),[g,x]=r.useState(0),[s,u]=r.useState(!1);r.useEffect(()=>{const d=setInterval(()=>{const n=(c+1)%i.length;m(n),setTimeout(()=>{u(!0),setTimeout(()=>{x(n),u(!1)},200)},200)},2500);return()=>clearInterval(d)},[c]);const o=i[g],p=()=>{var d;(d=window.eventBus)==null||d.emit("analytics",{event:h.EAnalyticsEvent.ctaClicked,type:h.EAnalyticsEventType.interaction,component:"PersonalizedProtocolHero",payload:{link:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948"}})};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(y.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(f.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"md",onClick:p,children:"Join Healthspan"})}),a.jsx("div",{className:t.cn(e.default.buttonWrap,e.default.desktop),children:a.jsx(f.Button,{as:"a",href:"https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",variant:"secondary",size:"lg",onClick:p,children:"Join Healthspan"})})]}),a.jsx("div",{className:e.default.pillContainer,children:i.map((d,n)=>a.jsx("img",{src:d.pill,className:t.cn(e.default.pillImage,n===c&&e.default.active,n===(c-1+i.length)%i.length&&e.default.exiting),alt:"Pill"},n))}),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:o.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:o.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:o.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:o.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:o.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(o.svg,{className:e.default.svg})})})]})]})})};exports.PersonalizedProtocolHero=E;
|
|
@@ -1,61 +1,72 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as e, jsxs as
|
|
3
|
-
import
|
|
2
|
+
import { jsx as e, jsxs as l, Fragment as N } from "react/jsx-runtime";
|
|
3
|
+
import b, { useState as m, useEffect as y } 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";
|
|
6
|
-
import { Button as
|
|
7
|
-
import { cn as
|
|
6
|
+
import { Button as u } from "../../components/Button/Button.es.js";
|
|
7
|
+
import { cn as t } from "../../utils/cn/cn.es.js";
|
|
8
8
|
import V from "./assets/prod1.png.es.js";
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
9
|
+
import I from "./assets/prod2.png.es.js";
|
|
10
|
+
import T from "./assets/prod3.png.es.js";
|
|
11
|
+
import C from "./assets/pill1.jpg.es.js";
|
|
12
|
+
import E from "./assets/pill2.jpg.es.js";
|
|
13
|
+
import S from "./assets/pill3.jpg.es.js";
|
|
14
|
+
import M from "./assets/graph1.svg.es.js";
|
|
15
|
+
import O from "./assets/graph2.svg.es.js";
|
|
16
|
+
import G from "./assets/graph3.svg.es.js";
|
|
17
17
|
import a from "./personalizedProtocolHero.module.css.es.js";
|
|
18
|
-
|
|
18
|
+
import { EAnalyticsEventType as P, EAnalyticsEvent as k } from "../../types/analytics/analytics.es.js";
|
|
19
|
+
const d = [
|
|
19
20
|
{
|
|
20
|
-
pill:
|
|
21
|
+
pill: C,
|
|
21
22
|
product: V,
|
|
22
23
|
protocol: "ENERGY",
|
|
23
24
|
dosage: { text: "Oxytocin Nasal Spray", value: "3MG" },
|
|
24
25
|
goal: "REDUCE STRESS",
|
|
25
|
-
svg:
|
|
26
|
+
svg: M
|
|
26
27
|
},
|
|
27
28
|
{
|
|
28
|
-
pill:
|
|
29
|
-
product:
|
|
29
|
+
pill: E,
|
|
30
|
+
product: I,
|
|
30
31
|
protocol: "METABOLISM",
|
|
31
32
|
dosage: { text: "Metformin", value: "3MG" },
|
|
32
33
|
goal: "AUTOPHAGY INDUCTION",
|
|
33
|
-
svg:
|
|
34
|
+
svg: O
|
|
34
35
|
},
|
|
35
36
|
{
|
|
36
|
-
pill:
|
|
37
|
-
product:
|
|
37
|
+
pill: S,
|
|
38
|
+
product: T,
|
|
38
39
|
protocol: "SENESCENCE",
|
|
39
40
|
dosage: { text: "Rapamycin", value: "3MG" },
|
|
40
41
|
goal: "LONGEVITY",
|
|
41
|
-
svg:
|
|
42
|
+
svg: G
|
|
42
43
|
}
|
|
43
|
-
],
|
|
44
|
-
const [
|
|
45
|
-
|
|
46
|
-
const
|
|
47
|
-
const
|
|
48
|
-
|
|
44
|
+
], K = () => {
|
|
45
|
+
const [c, g] = m(0), [f, v] = m(0), [r, p] = m(!1);
|
|
46
|
+
y(() => {
|
|
47
|
+
const s = setInterval(() => {
|
|
48
|
+
const n = (c + 1) % d.length;
|
|
49
|
+
g(n), setTimeout(() => {
|
|
49
50
|
p(!0), setTimeout(() => {
|
|
50
|
-
|
|
51
|
+
v(n), p(!1);
|
|
51
52
|
}, 200);
|
|
52
53
|
}, 200);
|
|
53
54
|
}, 2500);
|
|
54
|
-
return () => clearInterval(
|
|
55
|
-
}, [
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
return () => clearInterval(s);
|
|
56
|
+
}, [c]);
|
|
57
|
+
const i = d[f], h = () => {
|
|
58
|
+
var s;
|
|
59
|
+
(s = window.eventBus) == null || s.emit("analytics", {
|
|
60
|
+
event: k.ctaClicked,
|
|
61
|
+
type: P.interaction,
|
|
62
|
+
component: "PersonalizedProtocolHero",
|
|
63
|
+
payload: {
|
|
64
|
+
link: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948"
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
return /* @__PURE__ */ e("section", { className: a.root, "data-type": "hero", children: /* @__PURE__ */ l("div", { className: a.container, children: [
|
|
69
|
+
/* @__PURE__ */ l("div", { className: a.leftContent, children: [
|
|
59
70
|
/* @__PURE__ */ e("div", { className: a.title, children: /* @__PURE__ */ e(
|
|
60
71
|
x,
|
|
61
72
|
{
|
|
@@ -63,49 +74,51 @@ const n = [
|
|
|
63
74
|
colorScheme: "dark",
|
|
64
75
|
defaultVariant: "displayMd",
|
|
65
76
|
mobileVariant: "displayXs",
|
|
66
|
-
title: /* @__PURE__ */
|
|
77
|
+
title: /* @__PURE__ */ l(N, { children: [
|
|
67
78
|
"A longevity protocol that's ",
|
|
68
79
|
/* @__PURE__ */ e("b", { children: "all you" })
|
|
69
80
|
] })
|
|
70
81
|
}
|
|
71
82
|
) }),
|
|
72
83
|
/* @__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:
|
|
74
|
-
|
|
84
|
+
/* @__PURE__ */ e("div", { className: t(a.buttonWrap, a.mobile), children: /* @__PURE__ */ e(
|
|
85
|
+
u,
|
|
75
86
|
{
|
|
76
87
|
as: "a",
|
|
77
88
|
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
78
89
|
variant: "secondary",
|
|
79
90
|
size: "md",
|
|
91
|
+
onClick: h,
|
|
80
92
|
children: "Join Healthspan"
|
|
81
93
|
}
|
|
82
94
|
) }),
|
|
83
|
-
/* @__PURE__ */ e("div", { className:
|
|
84
|
-
|
|
95
|
+
/* @__PURE__ */ e("div", { className: t(a.buttonWrap, a.desktop), children: /* @__PURE__ */ e(
|
|
96
|
+
u,
|
|
85
97
|
{
|
|
86
98
|
as: "a",
|
|
87
99
|
href: "https://app.gethealthspan.com/#/product/signup/6896e50bc0af7d4d26738948",
|
|
88
100
|
variant: "secondary",
|
|
89
101
|
size: "lg",
|
|
102
|
+
onClick: h,
|
|
90
103
|
children: "Join Healthspan"
|
|
91
104
|
}
|
|
92
105
|
) })
|
|
93
106
|
] }),
|
|
94
|
-
/* @__PURE__ */ e("div", { className: a.pillContainer, children:
|
|
107
|
+
/* @__PURE__ */ e("div", { className: a.pillContainer, children: d.map((s, n) => /* @__PURE__ */ e(
|
|
95
108
|
"img",
|
|
96
109
|
{
|
|
97
|
-
src:
|
|
98
|
-
className:
|
|
110
|
+
src: s.pill,
|
|
111
|
+
className: t(
|
|
99
112
|
a.pillImage,
|
|
100
|
-
|
|
101
|
-
|
|
113
|
+
n === c && a.active,
|
|
114
|
+
n === (c - 1 + d.length) % d.length && a.exiting
|
|
102
115
|
),
|
|
103
116
|
alt: "Pill"
|
|
104
117
|
},
|
|
105
|
-
|
|
118
|
+
n
|
|
106
119
|
)) }),
|
|
107
|
-
/* @__PURE__ */
|
|
108
|
-
/* @__PURE__ */
|
|
120
|
+
/* @__PURE__ */ l("div", { className: a.textContainer, children: [
|
|
121
|
+
/* @__PURE__ */ l("div", { className: a.protocolContainer, children: [
|
|
109
122
|
/* @__PURE__ */ e(
|
|
110
123
|
o,
|
|
111
124
|
{
|
|
@@ -116,7 +129,7 @@ const n = [
|
|
|
116
129
|
children: "Protocol"
|
|
117
130
|
}
|
|
118
131
|
),
|
|
119
|
-
/* @__PURE__ */ e("div", { className:
|
|
132
|
+
/* @__PURE__ */ e("div", { className: t(a.protocolFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
120
133
|
o,
|
|
121
134
|
{
|
|
122
135
|
className: a.protocolValue,
|
|
@@ -124,24 +137,24 @@ const n = [
|
|
|
124
137
|
defaultVariant: "labelSm",
|
|
125
138
|
mobileVariant: "labelXs",
|
|
126
139
|
emphasis: !0,
|
|
127
|
-
children:
|
|
140
|
+
children: i.protocol
|
|
128
141
|
}
|
|
129
142
|
) })
|
|
130
143
|
] }),
|
|
131
|
-
/* @__PURE__ */
|
|
132
|
-
/* @__PURE__ */ e("div", { className:
|
|
133
|
-
/* @__PURE__ */
|
|
134
|
-
/* @__PURE__ */ e("div", { className:
|
|
144
|
+
/* @__PURE__ */ l("div", { className: a.dosageContainer, children: [
|
|
145
|
+
/* @__PURE__ */ e("div", { className: t(a.dosageImageFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e("img", { src: i.product, className: a.dosageItem, alt: "Product" }) }),
|
|
146
|
+
/* @__PURE__ */ l("div", { className: a.dosageTextBlock, children: [
|
|
147
|
+
/* @__PURE__ */ e("div", { className: t(a.dosageTextFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
135
148
|
o,
|
|
136
149
|
{
|
|
137
150
|
className: a.dosageText,
|
|
138
151
|
as: "p",
|
|
139
152
|
defaultVariant: "labelMd",
|
|
140
153
|
mobileVariant: "labelXs",
|
|
141
|
-
children:
|
|
154
|
+
children: i.dosage.text
|
|
142
155
|
}
|
|
143
156
|
) }),
|
|
144
|
-
/* @__PURE__ */ e("div", { className:
|
|
157
|
+
/* @__PURE__ */ e("div", { className: t(a.dosageValueFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
145
158
|
o,
|
|
146
159
|
{
|
|
147
160
|
className: a.dosageValue,
|
|
@@ -149,14 +162,14 @@ const n = [
|
|
|
149
162
|
defaultVariant: "labelSm",
|
|
150
163
|
mobileVariant: "labelXs",
|
|
151
164
|
emphasis: !0,
|
|
152
|
-
children:
|
|
165
|
+
children: i.dosage.value
|
|
153
166
|
}
|
|
154
167
|
) })
|
|
155
168
|
] })
|
|
156
169
|
] }),
|
|
157
|
-
/* @__PURE__ */
|
|
170
|
+
/* @__PURE__ */ l("div", { className: a.goalContainer, children: [
|
|
158
171
|
/* @__PURE__ */ e(o, { className: a.goalText, as: "p", defaultVariant: "labelMd", mobileVariant: "labelXs", children: "Goal" }),
|
|
159
|
-
/* @__PURE__ */ e("div", { className:
|
|
172
|
+
/* @__PURE__ */ e("div", { className: t(a.goalFade, r ? a.fadeOut : a.fadeIn), children: /* @__PURE__ */ e(
|
|
160
173
|
o,
|
|
161
174
|
{
|
|
162
175
|
className: a.goalValue,
|
|
@@ -164,16 +177,16 @@ const n = [
|
|
|
164
177
|
defaultVariant: "labelSm",
|
|
165
178
|
mobileVariant: "labelXs",
|
|
166
179
|
emphasis: !0,
|
|
167
|
-
children:
|
|
180
|
+
children: i.goal
|
|
168
181
|
}
|
|
169
182
|
) })
|
|
170
183
|
] }),
|
|
171
|
-
/* @__PURE__ */ e("div", { className: a.svgContainer, children: /* @__PURE__ */ e("div", { className:
|
|
184
|
+
/* @__PURE__ */ e("div", { className: a.svgContainer, children: /* @__PURE__ */ e("div", { className: t(a.svgFade, r ? a.fadeOut : a.fadeIn), children: b.createElement(i.svg, {
|
|
172
185
|
className: a.svg
|
|
173
186
|
}) }) })
|
|
174
187
|
] })
|
|
175
188
|
] }) });
|
|
176
189
|
};
|
|
177
190
|
export {
|
|
178
|
-
|
|
191
|
+
K as PersonalizedProtocolHero
|
|
179
192
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var c=(e=>(e.pageView="Page view",e.featuredArticleClicked="Featured article clicked",e.scienceCardClicked="Science card clicked",e.articleCategoryClicked="Article category clicked",e.userSelectedPlan="User selected plan",e.mailchimpSubmitClicked="Mailchimp submit clicked",e.articleScrolledBy="Article scrolled by",e))(c||{}),r=(e=>(e.view="view",e.appearance="appearance",e.interaction="interaction",e))(r||{});exports.EAnalyticsEvent=c;exports.EAnalyticsEventType=r;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var c=(e=>(e.pageView="Page view",e.featuredArticleClicked="Featured article clicked",e.scienceCardClicked="Science card clicked",e.articleCategoryClicked="Article category clicked",e.userSelectedPlan="User selected plan",e.mailchimpSubmitClicked="Mailchimp submit clicked",e.articleScrolledBy="Article scrolled by",e.ctaClicked="CTA clicked",e.productGalleryCardClicked="Product gallery card clicked",e))(c||{}),r=(e=>(e.view="view",e.appearance="appearance",e.interaction="interaction",e))(r||{});exports.EAnalyticsEvent=c;exports.EAnalyticsEventType=r;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var
|
|
1
|
+
var c = /* @__PURE__ */ ((e) => (e.pageView = "Page view", e.featuredArticleClicked = "Featured article clicked", e.scienceCardClicked = "Science card clicked", e.articleCategoryClicked = "Article category clicked", e.userSelectedPlan = "User selected plan", e.mailchimpSubmitClicked = "Mailchimp submit clicked", e.articleScrolledBy = "Article scrolled by", e.ctaClicked = "CTA clicked", e.productGalleryCardClicked = "Product gallery card clicked", e))(c || {}), r = /* @__PURE__ */ ((e) => (e.view = "view", e.appearance = "appearance", e.interaction = "interaction", e))(r || {});
|
|
2
2
|
export {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
c as EAnalyticsEvent,
|
|
4
|
+
r as EAnalyticsEventType
|
|
5
5
|
};
|
|
@@ -5,7 +5,9 @@ export declare enum EAnalyticsEvent {
|
|
|
5
5
|
articleCategoryClicked = "Article category clicked",
|
|
6
6
|
userSelectedPlan = "User selected plan",
|
|
7
7
|
mailchimpSubmitClicked = "Mailchimp submit clicked",
|
|
8
|
-
articleScrolledBy = "Article scrolled by"
|
|
8
|
+
articleScrolledBy = "Article scrolled by",
|
|
9
|
+
ctaClicked = "CTA clicked",
|
|
10
|
+
productGalleryCardClicked = "Product gallery card clicked"
|
|
9
11
|
}
|
|
10
12
|
export declare enum EAnalyticsEventType {
|
|
11
13
|
view = "view",
|
|
@@ -14,8 +16,10 @@ export declare enum EAnalyticsEventType {
|
|
|
14
16
|
}
|
|
15
17
|
export type TBasicAnalyticsEvent = {
|
|
16
18
|
event: EAnalyticsEvent;
|
|
17
|
-
location
|
|
19
|
+
location?: string;
|
|
18
20
|
type: EAnalyticsEventType;
|
|
21
|
+
component?: string;
|
|
22
|
+
element?: string;
|
|
19
23
|
};
|
|
20
24
|
export type TPageViewEvent = TBasicAnalyticsEvent & {
|
|
21
25
|
event: EAnalyticsEvent.pageView;
|
|
@@ -50,6 +54,7 @@ export type TArticleCategoryClickedEvent = TBasicAnalyticsEvent & {
|
|
|
50
54
|
export type TUserSelectedPlanEvent = TBasicAnalyticsEvent & {
|
|
51
55
|
event: EAnalyticsEvent.userSelectedPlan;
|
|
52
56
|
payload: {
|
|
57
|
+
productId: string;
|
|
53
58
|
planId: string;
|
|
54
59
|
planPrice?: number;
|
|
55
60
|
planDuration?: string;
|
|
@@ -71,6 +76,24 @@ export type TarticleScrolledByEvent = TBasicAnalyticsEvent & {
|
|
|
71
76
|
articleTitle: string;
|
|
72
77
|
};
|
|
73
78
|
};
|
|
79
|
+
export type TCTAClickedEvent = TBasicAnalyticsEvent & {
|
|
80
|
+
event: EAnalyticsEvent.ctaClicked;
|
|
81
|
+
payload: {
|
|
82
|
+
productId?: string;
|
|
83
|
+
productName?: string;
|
|
84
|
+
ctaLabel?: string;
|
|
85
|
+
ctaLink?: string;
|
|
86
|
+
selectedPlanId?: string;
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
export type TProductGalleryCardClickedEvent = TBasicAnalyticsEvent & {
|
|
90
|
+
event: EAnalyticsEvent.productGalleryCardClicked;
|
|
91
|
+
payload: {
|
|
92
|
+
zenpatientId: string;
|
|
93
|
+
link: string;
|
|
94
|
+
productName: string;
|
|
95
|
+
};
|
|
96
|
+
};
|
|
74
97
|
export interface IEventBus {
|
|
75
98
|
emitAsync<T>(event: string, ...args: T[]): Promise<void>;
|
|
76
99
|
emit<T>(event: string, ...args: T[]): boolean;
|
|
@@ -78,4 +101,4 @@ export interface IEventBus {
|
|
|
78
101
|
off<T>(event: string, listener: (...args: T[]) => void): IEventBus;
|
|
79
102
|
listeners<T>(event: string): Array<(...args: T[]) => void>;
|
|
80
103
|
}
|
|
81
|
-
export type TAnalyticsEvent = TPageViewEvent | TFeaturedArticleClickedEvent | TScienceCardClickedEvent | TArticleCategoryClickedEvent | TUserSelectedPlanEvent | TMailchimpSubmitClickedEvent | TarticleScrolledByEvent;
|
|
104
|
+
export type TAnalyticsEvent = TPageViewEvent | TFeaturedArticleClickedEvent | TScienceCardClickedEvent | TArticleCategoryClickedEvent | TUserSelectedPlanEvent | TMailchimpSubmitClickedEvent | TarticleScrolledByEvent | TCTAClickedEvent | TProductGalleryCardClickedEvent;
|