@zenpatient-org/healthspan-marketing-ui 0.1.141 → 0.1.143

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.
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),W=require("../../node_modules/@gsap/react/src/index.cjs.js"),e=require("../../node_modules/gsap/index.cjs.js"),M=require("../../node_modules/gsap/ScrollTrigger.cjs.js"),o=require("react"),A=require("../../components/HighlightedTitle/HighlightedTitle.cjs.js"),U=require("../../components/Typography/Typography.cjs.js"),N=require("../../utils/cn/cn.cjs.js"),G=require("../../utils/debounce.cjs.js"),Y=require("../CallToAction/CallToAction.cjs.js"),a=require("./allInOne.module.css.cjs.js");e.gsap.registerPlugin(M.ScrollTrigger);const F=["health","energy","strength","smiles","balance","sleep","miles","love","fun","years"],{title1:J,title2:X,description:K,scrollLabels:q,images:L,subtitle:Q,titleTop:Z,scrollableLabels:ee,titleBottom:te,descriptionText:ie,hsaText:se,buttonText:ae,buttonLink:le,backgroundImage:oe}={subtitle:i.jsx("p",{children:"YOUR LONGEVITY JOURNEY"}),titleTop:i.jsx("p",{children:"Get more"}),scrollableLabels:F,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:"#",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[C,I]=o.useState(!1),T=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),R=o.useRef(!1),O=e.gsap.matchMedia();o.useEffect(()=>{R.current=C},[C]);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,r=h.current,u=m.current,v=p.current,S=u.querySelectorAll("p");if(S.length===0)return;S.forEach((n,t)=>{n.style.zIndex=String(S.length-t)});const x=s.querySelectorAll('[data-type="image"]'),k=x.length;x.forEach((n,t)=>{n.style.zIndex=String(k-t)});const y=l.scrollHeight/k,E=.8;k>0&&x.forEach((n,t)=>{const w=t*y,_=(t+1)*y-E*y;e.gsap.fromTo([n,S[t]],{opacity:1},{opacity:0,scrollTrigger:{trigger:l,start:()=>`top+=${w} top`,end:()=>`top+=${_} top`,scrub:!0}})});const j=s.getBoundingClientRect(),B=d.getBoundingClientRect(),P=l.getBoundingClientRect();e.gsap.set(u,{y:`${j.bottom-P.top+20}px`}),O.add({isMobile:`(max-width: ${T-1}px)`,isDesktop:`(min-width: ${T}px)`},n=>{const t=n.conditions,w=t==null?void 0:t.isMobile;(t==null?void 0:t.isDesktop)&&(e.gsap.set(d,{x:`${j.left-B.width-50}px`}),e.gsap.set(r,{x:`${j.right+25}px`})),w&&(e.gsap.set(d,{top:`${j.top-r.clientHeight-25}px`}),e.gsap.set(r,{top:`${j.top-25}px`}))});const D=window.getComputedStyle(s).borderRadius;e.gsap.to(s,{scale:1,scrollTrigger:{trigger:l,start:"top top",end:"100% bottom",scrub:!0,onUpdate:n=>{if(!c.current||!p.current||!d||!r)return;const t=s.getBoundingClientRect();O.add({isMobile:`(max-width: ${T-1}px)`,isDesktop:`(min-width: ${T}px)`},_=>{const g=_.conditions,$=g==null?void 0:g.isMobile;(g==null?void 0:g.isDesktop)&&(e.gsap.set(d,{x:`${t.left-B.width-50}px`}),e.gsap.set(r,{x:`${t.right+25}px`})),$&&(e.gsap.set(d,{top:`${t.top-r.clientHeight-25}px`}),e.gsap.set(r,{top:`${t.top-25}px`}))}),e.gsap.set(u,{y:`${t.bottom+20}px`});const w=p.current.getBoundingClientRect();if(t.bottom+60>=w.top?e.gsap.to(v,{opacity:0,duration:.3}):e.gsap.to(v,{opacity:1,duration:.3}),n.progress>=.9)e.gsap.to(s,{scale:1,borderRadius:0,duration:.3,ease:"power1.inOut"}),R.current||(R.current=!0,I(!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:D,duration:.3,ease:"power1.inOut"}),R.current){R.current=!1,I(!1),e.gsap.set(s,{borderRadius:D}),e.gsap.killTweensOf([x,u.querySelectorAll("p")]);const _=u.querySelectorAll("p");x.forEach((g,$)=>{const V=$*y,z=($+1)*y-E*y;e.gsap.fromTo([g,_[$]],{opacity:1},{opacity:0,scrollTrigger:{trigger:l,start:()=>`top+=${V} top`,end:()=>`top+=${z} top`,scrub:!0}})}),M.ScrollTrigger.refresh()}}}})},[c,f,h,m,p]);return W.useGSAP(()=>{if(!c.current||!b.current||!f.current||!h||!m.current||!p.current)return;const l=c.current,s=f.current,d=h.current,r=m.current,u=p.current;window.innerWidth<=T?e.gsap.set(l,{aspectRatio:`${window.innerWidth} / ${window.innerHeight}`,scale:.5}):e.gsap.set(l,{scale:.3,aspectRatio:`${window.innerWidth} / ${window.innerHeight}`}),H();const v=G.default(H,600);return window.addEventListener("resize",()=>{v()}),()=>{window.removeEventListener("resize",v),e.gsap.killTweensOf([l,r,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:N.cn("pillContainer",a.default.pillContainer),children:[L==null?void 0:L.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:C&&i.jsx(Y.CallToAction,{subtitle:Q,titleTop:Z,scrollableLabels:ee,titleBottom:te,description:ie,hsaText:se,buttonText:ae,buttonLink:le,backgroundImage:oe})})]}),i.jsx("div",{ref:f,className:a.default.fixedHeader,children:i.jsx(A.HighlightedTitle,{className:a.default.title1,as:"div",defaultVariant:"displayXs",title:J})}),i.jsx("div",{ref:h,className:a.default.fixedHeader,children:i.jsx(A.HighlightedTitle,{className:a.default.title2,as:"div",defaultVariant:"displayXs",title:X})}),i.jsx("div",{ref:m,className:N.cn("scrollableLabels",a.default.scrollableLabels),children:q==null?void 0:q.map((l,s)=>i.jsx(U.Typography,{as:"p",defaultVariant:"labelLg",mobileVariant:"labelSm",className:a.default.scrollLabel,children:l},s))}),i.jsx("div",{ref:p,className:N.cn("description",a.default.description),children:i.jsx(A.HighlightedTitle,{as:"p",defaultVariant:"preambleMd",mobileVariant:"preambleSm",title:K,className:a.default.descriptionText})})]})})})};exports.AllInOne=re;
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 U } from "../../node_modules/@gsap/react/src/index.es.js";
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 W } from "../../node_modules/gsap/ScrollTrigger.es.js";
6
- import { useState as G, useRef as g, useEffect as Y, useCallback as F } from "react";
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 J } from "../../components/Typography/Typography.es.js";
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 X from "../../utils/debounce.es.js";
11
- import { CallToAction as K } from "../CallToAction/CallToAction.es.js";
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(W);
14
- const Q = [
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: Z,
27
- title2: ee,
28
- description: te,
26
+ title1: ee,
27
+ title2: te,
28
+ description: ie,
29
29
  scrollLabels: I,
30
30
  images: j,
31
- subtitle: ie,
32
- titleTop: oe,
33
- scrollableLabels: re,
34
- titleBottom: se,
35
- descriptionText: ae,
31
+ subtitle: oe,
32
+ titleTop: re,
33
+ scrollableLabels: se,
34
+ titleBottom: ae,
35
+ descriptionText: ne,
36
36
  hsaText: le,
37
- buttonText: ne,
38
- buttonLink: ce,
39
- backgroundImage: pe
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: Q,
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
- }, Re = () => {
77
- const [k, B] = G(!1), _ = 1300, b = g(null), n = g(null), u = g(null), f = g(null), h = g(null), c = g(null), w = g(!1), D = e.matchMedia();
78
- Y(() => {
79
- w.current = k;
80
- }, [k]);
81
- const H = F(() => {
82
- if (!n.current || !b.current || !u.current || !f.current || !h.current || !c.current)
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 = n.current, p = u.current, a = f.current, d = h.current, R = c.current, $ = d.querySelectorAll("p");
85
- if ($.length === 0) return;
86
- $.forEach((l, t) => {
87
- l.style.zIndex = String($.length - t);
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((l, t) => {
91
- l.style.zIndex = String(A - t);
90
+ y.forEach((n, t) => {
91
+ n.style.zIndex = String(A - t);
92
92
  });
93
- const x = s.scrollHeight / A, O = 0.8;
94
- A > 0 && y.forEach((l, t) => {
95
- const C = t * x, v = (t + 1) * x - O * x;
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
- [l, $[t]],
99
+ [n, k[t]],
98
100
  { opacity: 1 },
99
101
  {
100
102
  opacity: 0,
101
103
  scrollTrigger: {
102
104
  trigger: s,
103
- start: () => `top+=${C} 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 T = o.getBoundingClientRect(), V = p.getBoundingClientRect(), q = s.getBoundingClientRect();
112
+ const C = o.getBoundingClientRect(), M = p.getBoundingClientRect(), W = s.getBoundingClientRect();
111
113
  e.set(d, {
112
- y: `${T.bottom - q.top + 20}px`
114
+ y: `${C.bottom - W.top + 20}px`
113
115
  }), D.add(
114
116
  {
115
- isMobile: `(max-width: ${_ - 1}px)`,
116
- isDesktop: `(min-width: ${_}px)`
117
+ isMobile: `(max-width: ${w - 1}px)`,
118
+ isDesktop: `(min-width: ${w}px)`
117
119
  },
118
- (l) => {
119
- const t = l.conditions, C = t == null ? void 0 : t.isMobile;
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: `${T.left - V.width - 50}px`
123
+ x: `${C.left - M.width - 50}px`
122
124
  }), e.set(a, {
123
- x: `${T.right + 25}px`
124
- })), C && (e.set(p, {
125
- top: `${T.top - a.clientHeight - 25}px`
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: `${T.top - 25}px`
129
+ top: `${C.top - 25}px`
128
130
  }));
129
131
  }
130
132
  );
131
- const M = window.getComputedStyle(o).borderRadius;
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: (l) => {
140
- if (!n.current || !c.current || !p || !a)
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: ${_ - 1}px)`,
146
- isDesktop: `(min-width: ${_}px)`
147
+ isMobile: `(max-width: ${w - 1}px)`,
148
+ isDesktop: `(min-width: ${w}px)`
147
149
  },
148
150
  (v) => {
149
- const m = v.conditions, S = m == null ? void 0 : m.isMobile;
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 - V.width - 50}px`
153
+ x: `${t.left - M.width - 50}px`
152
154
  }), e.set(a, {
153
155
  x: `${t.right + 25}px`
154
- })), S && (e.set(p, {
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 C = c.current.getBoundingClientRect();
164
- if (t.bottom + 60 >= C.top ? e.to(R, { opacity: 0, duration: 0.3 }) : e.to(R, { opacity: 1, duration: 0.3 }), l.progress >= 0.9)
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
- }), w.current || (w.current = !0, B(!0), e.to([y, d.querySelectorAll("p")], {
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: M,
180
+ borderRadius: P,
179
181
  duration: 0.3,
180
182
  ease: "power1.inOut"
181
- }), w.current) {
182
- w.current = !1, B(!1), e.set(o, { borderRadius: M }), e.killTweensOf([y, d.querySelectorAll("p")]);
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, S) => {
185
- const P = S * x, z = (S + 1) * x - O * x;
186
+ y.forEach((m, $) => {
187
+ const z = $ * x, U = ($ + 1) * x - V * x;
186
188
  e.fromTo(
187
- [m, v[S]],
189
+ [m, v[$]],
188
190
  { opacity: 1 },
189
191
  {
190
192
  opacity: 0,
191
193
  scrollTrigger: {
192
194
  trigger: s,
193
- start: () => `top+=${P} top`,
194
- end: () => `top+=${z} top`,
195
+ start: () => `top+=${z} top`,
196
+ end: () => `top+=${U} top`,
195
197
  scrub: !0
196
198
  }
197
199
  }
198
200
  );
199
- }), W.refresh();
201
+ }), q.refresh();
200
202
  }
201
203
  }
202
204
  }
203
205
  });
204
- }, [n, u, f, h, c]);
205
- return U(
206
+ }, [
207
+ l,
208
+ u,
209
+ f,
210
+ h,
211
+ c,
212
+ _
213
+ ]);
214
+ return G(
206
215
  () => {
207
- if (!n.current || !b.current || !u.current || !f || !h.current || !c.current)
216
+ if (!l.current || !b.current || !u.current || !f || !h.current || !c.current)
208
217
  return;
209
- const s = n.current, o = u.current, p = f.current, a = h.current, d = c.current;
210
- window.innerWidth <= _ ? e.set(s, {
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 R = X(H, 600);
226
+ const T = K(H, 600);
218
227
  return window.addEventListener("resize", () => {
219
- R();
228
+ T();
220
229
  }), () => {
221
- window.removeEventListener("resize", R), e.killTweensOf([s, a, o, p, d]);
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
- n,
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: n, className: L("pillContainer", r.pillContainer), children: [
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: k && /* @__PURE__ */ i(
247
- K,
255
+ /* @__PURE__ */ i("div", { className: r.callToActionContainer, children: _ && /* @__PURE__ */ i(
256
+ Q,
248
257
  {
249
- subtitle: ie,
250
- titleTop: oe,
251
- scrollableLabels: re,
252
- titleBottom: se,
253
- description: ae,
258
+ subtitle: oe,
259
+ titleTop: re,
260
+ scrollableLabels: se,
261
+ titleBottom: ae,
262
+ description: ne,
254
263
  hsaText: le,
255
- buttonText: ne,
256
- buttonLink: ce,
257
- backgroundImage: pe
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: Z
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: ee
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
- J,
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: te,
305
+ title: ie,
297
306
  className: r.descriptionText
298
307
  }
299
308
  ) })
300
309
  ] }) }) });
301
310
  };
302
311
  export {
303
- Re as AllInOne
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"),n=require("../../components/Button/Button.cjs.js"),s=require("../../components/FAQComponent/FAQComponent.cjs.js"),t=require("./faqModule.module.css.cjs.js"),a=({title:l,questions:i})=>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(n.Button,{variant:"muted",size:"lg",as:"a",href:"/faq",children:"VIEW ALL FAQ"})}),e.jsx("div",{className:t.default.buttonWrapperMobile,children:e.jsx(n.Button,{variant:"muted",size:"sm",as:"a",href:"/faq",children:"VIEW ALL FAQ"})})]}),e.jsx("div",{className:t.default.contentDesktop,children:e.jsx(s.FAQComponent,{items:i,mode:"multiple"})}),e.jsx("div",{className:t.default.contentMobile,children:e.jsx(s.FAQComponent,{items:i,mode:"multiple"})})]})});exports.FAQModule=a;
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 s } from "../../components/HighlightedTitle/HighlightedTitle.es.js";
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: o, questions: t }) => /* @__PURE__ */ e("section", { className: i.root, children: /* @__PURE__ */ a("div", { className: i.container, children: [
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(s, { title: o, defaultVariant: "displayMd", mobileVariant: "headingXl" }),
9
- /* @__PURE__ */ e("div", { className: i.buttonWrapperDesktop, children: /* @__PURE__ */ e(r, { variant: "muted", size: "lg", as: "a", href: "/faq", children: "VIEW ALL FAQ" }) }),
10
- /* @__PURE__ */ e("div", { className: i.buttonWrapperMobile, children: /* @__PURE__ */ e(r, { variant: "muted", size: "sm", as: "a", href: "/faq", children: "VIEW ALL FAQ" }) })
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 client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),t=require("react"),C=require("react-dom"),p=require("./scienceHero.module.css.cjs.js");function L({children:s,backgroundImage:w,cursorLink:v}){const[i,x]=t.useState({x:0,y:0}),[h,m]=t.useState(0),[$,c]=t.useState(!1),[g,l]=t.useState(!1),[o,b]=t.useState(null),[r,M]=t.useState(!1);t.useEffect(()=>{l(!0);const e=()=>M(window.innerWidth<=768);return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),l(!1)}},[]),t.useEffect(()=>{if(r)return;const e=f=>{x({x:f.clientX,y:f.clientY})},d=()=>{m(window.scrollY)};return window.addEventListener("mousemove",e),window.addEventListener("scroll",d),()=>{window.removeEventListener("mousemove",e),window.removeEventListener("scroll",d)}},[r]);const S=e=>{r||(b(e.currentTarget.getBoundingClientRect()),c(!0))},y=()=>{r||c(!1)},E=()=>{window.location.href=v};if(typeof window>"u")return s;if(r)return n.jsx(n.Fragment,{children:s});const u=`circle(270px at ${i.x}px ${i.y}px)`,a=$&&o&&n.jsx("div",{className:p.default.cursorContainer,style:{position:"fixed",top:`${o.top}px`,left:`${o.left}px`,width:`${o.width}px`,height:`${o.height}px`,overflow:"hidden",cursor:"pointer"},children:n.jsx("div",{className:p.default.normalBackground,style:{position:"absolute",top:`${-o.top}px`,left:`${-o.left}px`,backgroundImage:`url(${w})`,clipPath:u,WebkitClipPath:u,backgroundPosition:`center ${-h}px`}})});return n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-type":"hero",onMouseEnter:S,onMouseLeave:y,onClick:E,style:{cursor:"pointer"},children:s}),g&&a&&C.createPortal(a,document.body)]})}exports.ScienceHeroCursor=L;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),o=require("./components/ScienceClientCursor.cjs.js"),c=require("./components/ScienceServerCursor.cjs.js");function u({children:e,backgroundImage:n,cursorLink:i}){return typeof window>"u"?r.jsx(c.ScienceServerCursor,{children:e}):r.jsx(o.ScienceClientCursor,{backgroundImage:n,cursorLink:i,children:e})}exports.ScienceHeroCursor=u;
@@ -1,9 +1,8 @@
1
1
  import { default as React } from 'react';
2
2
 
3
- type ScienceHeroCursorProps = {
3
+ export type ScienceHeroCursorProps = {
4
4
  children: React.ReactNode;
5
5
  backgroundImage: string;
6
6
  cursorLink: string;
7
7
  };
8
- export declare function ScienceHeroCursor({ children, backgroundImage, cursorLink }: ScienceHeroCursorProps): string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
9
- export {};
8
+ export declare function ScienceHeroCursor({ children, backgroundImage, cursorLink }: ScienceHeroCursorProps): import("react/jsx-runtime").JSX.Element;
@@ -1,85 +1,9 @@
1
- "use client";
2
- import { jsx as r, Fragment as p, jsxs as P } from "react/jsx-runtime";
3
- import { useState as o, useEffect as w } from "react";
4
- import { createPortal as R } from "react-dom";
5
- import m from "./scienceHero.module.css.es.js";
6
- function z({ children: s, backgroundImage: h, cursorLink: v }) {
7
- const [i, x] = o({ x: 0, y: 0 }), [M, b] = o(0), [g, l] = o(!1), [y, c] = o(!1), [t, $] = o(null), [n, E] = o(!1);
8
- w(() => {
9
- c(!0);
10
- const e = () => E(window.innerWidth <= 768);
11
- return e(), window.addEventListener("resize", e), () => {
12
- window.removeEventListener("resize", e), c(!1);
13
- };
14
- }, []), w(() => {
15
- if (n) return;
16
- const e = (f) => {
17
- x({
18
- x: f.clientX,
19
- y: f.clientY
20
- });
21
- }, a = () => {
22
- b(window.scrollY);
23
- };
24
- return window.addEventListener("mousemove", e), window.addEventListener("scroll", a), () => {
25
- window.removeEventListener("mousemove", e), window.removeEventListener("scroll", a);
26
- };
27
- }, [n]);
28
- const C = (e) => {
29
- n || ($(e.currentTarget.getBoundingClientRect()), l(!0));
30
- }, L = () => {
31
- n || l(!1);
32
- }, k = () => {
33
- window.location.href = v;
34
- };
35
- if (typeof window > "u") return s;
36
- if (n)
37
- return /* @__PURE__ */ r(p, { children: s });
38
- const d = `circle(270px at ${i.x}px ${i.y}px)`, u = g && t && /* @__PURE__ */ r(
39
- "div",
40
- {
41
- className: m.cursorContainer,
42
- style: {
43
- position: "fixed",
44
- top: `${t.top}px`,
45
- left: `${t.left}px`,
46
- width: `${t.width}px`,
47
- height: `${t.height}px`,
48
- overflow: "hidden",
49
- cursor: "pointer"
50
- },
51
- children: /* @__PURE__ */ r(
52
- "div",
53
- {
54
- className: m.normalBackground,
55
- style: {
56
- position: "absolute",
57
- top: `${-t.top}px`,
58
- left: `${-t.left}px`,
59
- backgroundImage: `url(${h})`,
60
- clipPath: d,
61
- WebkitClipPath: d,
62
- backgroundPosition: `center ${-M}px`
63
- }
64
- }
65
- )
66
- }
67
- );
68
- return /* @__PURE__ */ P(p, { children: [
69
- /* @__PURE__ */ r(
70
- "div",
71
- {
72
- "data-type": "hero",
73
- onMouseEnter: C,
74
- onMouseLeave: L,
75
- onClick: k,
76
- style: { cursor: "pointer" },
77
- children: s
78
- }
79
- ),
80
- y && u && R(u, document.body)
81
- ] });
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { ScienceClientCursor as n } from "./components/ScienceClientCursor.es.js";
3
+ import { ScienceServerCursor as t } from "./components/ScienceServerCursor.es.js";
4
+ function m({ children: r, backgroundImage: o, cursorLink: i }) {
5
+ return typeof window > "u" ? /* @__PURE__ */ e(t, { children: r }) : /* @__PURE__ */ e(n, { backgroundImage: o, cursorLink: i, children: r });
82
6
  }
83
7
  export {
84
- z as ScienceHeroCursor
8
+ m as ScienceHeroCursor
85
9
  };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),t=require("react"),E=require("react-dom"),p=require("../scienceHero.module.css.cjs.js");function L({children:r,backgroundImage:w,cursorLink:h}){const[i,v]=t.useState({x:0,y:0}),[x,m]=t.useState(0),[$,c]=t.useState(!1),[g,l]=t.useState(!1),[o,b]=t.useState(null),[s,M]=t.useState(!1);t.useEffect(()=>{l(!0);const e=()=>M(window.innerWidth<=768);return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),l(!1)}},[]),t.useEffect(()=>{if(s)return;const e=f=>{v({x:f.clientX,y:f.clientY})},d=()=>{m(window.scrollY)};return window.addEventListener("mousemove",e),window.addEventListener("scroll",d),()=>{window.removeEventListener("mousemove",e),window.removeEventListener("scroll",d)}},[s]);const S=e=>{s||(b(e.currentTarget.getBoundingClientRect()),c(!0))},C=()=>{s||c(!1)},y=()=>{window.location.href=h};if(s)return n.jsx(n.Fragment,{children:r});const u=`circle(270px at ${i.x}px ${i.y}px)`,a=$&&o&&n.jsx("div",{className:p.default.cursorContainer,style:{position:"fixed",top:`${o.top}px`,left:`${o.left}px`,width:`${o.width}px`,height:`${o.height}px`,overflow:"hidden",cursor:"pointer"},children:n.jsx("div",{className:p.default.normalBackground,style:{position:"absolute",top:`${-o.top}px`,left:`${-o.left}px`,backgroundImage:`url(${w})`,clipPath:u,WebkitClipPath:u,backgroundPosition:`center ${-x}px`}})});return n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-type":"hero",onMouseEnter:S,onMouseLeave:C,onClick:y,style:{cursor:"pointer"},children:r}),g&&a&&E.createPortal(a,document.body)]})}exports.ScienceClientCursor=L;
@@ -0,0 +1,9 @@
1
+ import { default as React } from 'react';
2
+
3
+ type ScienceClientCursorProps = {
4
+ children: React.ReactNode;
5
+ backgroundImage: string;
6
+ cursorLink: string;
7
+ };
8
+ export declare function ScienceClientCursor({ children, backgroundImage, cursorLink }: ScienceClientCursorProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,84 @@
1
+ "use client";
2
+ import { jsx as r, Fragment as f, jsxs as P } from "react/jsx-runtime";
3
+ import { useState as o, useEffect as m } from "react";
4
+ import { createPortal as R } from "react-dom";
5
+ import w from "../scienceHero.module.css.es.js";
6
+ function z({ children: s, backgroundImage: h, cursorLink: v }) {
7
+ const [i, x] = o({ x: 0, y: 0 }), [M, b] = o(0), [g, l] = o(!1), [$, c] = o(!1), [t, y] = o(null), [n, C] = o(!1);
8
+ m(() => {
9
+ c(!0);
10
+ const e = () => C(window.innerWidth <= 768);
11
+ return e(), window.addEventListener("resize", e), () => {
12
+ window.removeEventListener("resize", e), c(!1);
13
+ };
14
+ }, []), m(() => {
15
+ if (n) return;
16
+ const e = (p) => {
17
+ x({
18
+ x: p.clientX,
19
+ y: p.clientY
20
+ });
21
+ }, u = () => {
22
+ b(window.scrollY);
23
+ };
24
+ return window.addEventListener("mousemove", e), window.addEventListener("scroll", u), () => {
25
+ window.removeEventListener("mousemove", e), window.removeEventListener("scroll", u);
26
+ };
27
+ }, [n]);
28
+ const E = (e) => {
29
+ n || (y(e.currentTarget.getBoundingClientRect()), l(!0));
30
+ }, L = () => {
31
+ n || l(!1);
32
+ }, k = () => {
33
+ window.location.href = v;
34
+ };
35
+ if (n)
36
+ return /* @__PURE__ */ r(f, { children: s });
37
+ const a = `circle(270px at ${i.x}px ${i.y}px)`, d = g && t && /* @__PURE__ */ r(
38
+ "div",
39
+ {
40
+ className: w.cursorContainer,
41
+ style: {
42
+ position: "fixed",
43
+ top: `${t.top}px`,
44
+ left: `${t.left}px`,
45
+ width: `${t.width}px`,
46
+ height: `${t.height}px`,
47
+ overflow: "hidden",
48
+ cursor: "pointer"
49
+ },
50
+ children: /* @__PURE__ */ r(
51
+ "div",
52
+ {
53
+ className: w.normalBackground,
54
+ style: {
55
+ position: "absolute",
56
+ top: `${-t.top}px`,
57
+ left: `${-t.left}px`,
58
+ backgroundImage: `url(${h})`,
59
+ clipPath: a,
60
+ WebkitClipPath: a,
61
+ backgroundPosition: `center ${-M}px`
62
+ }
63
+ }
64
+ )
65
+ }
66
+ );
67
+ return /* @__PURE__ */ P(f, { children: [
68
+ /* @__PURE__ */ r(
69
+ "div",
70
+ {
71
+ "data-type": "hero",
72
+ onMouseEnter: E,
73
+ onMouseLeave: L,
74
+ onClick: k,
75
+ style: { cursor: "pointer" },
76
+ children: s
77
+ }
78
+ ),
79
+ $ && d && R(d, document.body)
80
+ ] });
81
+ }
82
+ export {
83
+ z as ScienceClientCursor
84
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=({children:e})=>e;exports.ScienceServerCursor=r;
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+
3
+ export declare const ScienceServerCursor: ({ children }: {
4
+ children: React.ReactNode;
5
+ }) => React.ReactNode;
@@ -0,0 +1,4 @@
1
+ const e = ({ children: r }) => r;
2
+ export {
3
+ e as ScienceServerCursor
4
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zenpatient-org/healthspan-marketing-ui",
3
- "version": "0.1.141",
3
+ "version": "0.1.143",
4
4
  "description": "Design system",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.es.js",