@zenpatient-org/healthspan-marketing-ui 0.1.22 → 0.1.23
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/README.md +11 -1
- package/dist/components/Button/Button.es.js +24 -6
- package/dist/components/ComplexTooltip/components/ComplexTooltipContent/ComplexTooltipContent.cjs.js +1 -1
- package/dist/components/ComplexTooltip/components/ComplexTooltipContent/ComplexTooltipContent.es.js +17 -15
- package/dist/components/FilterMenu/FilterMenu.d.ts +1 -1
- package/dist/components/FilterMenu/FilterMenu.es.js +17 -2
- package/dist/components/InfiniteScroll/InfiniteScroll.es.js +9 -1
- package/dist/components/Label/Label.es.js +9 -1
- package/dist/components/Pricing/Pricing.cjs.js +1 -0
- package/dist/components/Pricing/Pricing.d.ts +3 -0
- package/dist/components/Pricing/Pricing.es.js +41 -0
- package/dist/components/Pricing/components/BenefitItem/BenefitItem.cjs.js +1 -0
- package/dist/components/Pricing/components/BenefitItem/BenefitItem.d.ts +8 -0
- package/dist/components/Pricing/components/BenefitItem/BenefitItem.es.js +10 -0
- package/dist/components/Pricing/components/BenefitItem/benefitItem.module.css.cjs.js +1 -0
- package/dist/components/Pricing/components/BenefitItem/benefitItem.module.css.es.js +7 -0
- package/dist/components/Pricing/components/BenefitItem/index.d.ts +1 -0
- package/dist/components/Pricing/components/index.d.ts +1 -0
- package/dist/components/Pricing/index.d.ts +2 -0
- package/dist/components/Pricing/pricing.module.css.cjs.js +1 -0
- package/dist/components/Pricing/pricing.module.css.es.js +25 -0
- package/dist/components/Pricing/types.d.ts +17 -0
- package/dist/components/ProductGalleryCard/ProductGalleryCard.d.ts +1 -1
- package/dist/components/ProductGalleryCard/ProductGalleryCard.es.js +24 -3
- package/dist/components/ProgressButton/ProgressButton.es.js +9 -1
- package/dist/components/StepsCarousel/StepsCarousel.es.js +47 -13
- package/dist/components/StudyGridCard/StudyGridCard.es.js +36 -6
- package/dist/components/Tabs/TabsWithFade.es.js +10 -1
- package/dist/components/Typography/Typography.es.js +8 -1
- package/dist/healthspan-marketing-ui.css +1 -1
- package/dist/modules/Benefits/Benefits.es.js +3 -26
- package/dist/modules/Benefits/components/BenefitItem/BenefitItem.es.js +3 -27
- package/dist/modules/Benefits/components/BenefitTag/BenefitTag.es.js +1 -10
- package/dist/modules/Compare/Compare.d.ts +3 -0
- package/dist/modules/Compare/index.d.ts +1 -0
- package/dist/modules/Compare/types.d.ts +9 -0
- package/dist/modules/Comparison/Comparison.es.js +20 -5
- package/dist/modules/FeaturedIn/FeaturedIn.es.js +14 -5
- package/dist/modules/FeaturesGallery/FeaturesGallery.es.js +9 -1
- package/dist/modules/FeaturesGallery/components/FeatureGrid/FeatureGrid.es.js +32 -17
- package/dist/modules/FollowTheScience/FollowTheScience.es.js +21 -2
- package/dist/modules/OptimalHealth/OptimalHealth.cjs.js +1 -1
- package/dist/modules/OptimalHealth/OptimalHealth.es.js +6 -6
- package/dist/modules/OptimalHealth/components/ClockImages/ClockImages.cjs.js +1 -1
- package/dist/modules/OptimalHealth/components/ClockImages/ClockImages.es.js +53 -31
- package/dist/modules/OptimalHealth/components/ClockImages/clockImages.module.css.cjs.js +1 -1
- package/dist/modules/OptimalHealth/components/ClockImages/clockImages.module.css.es.js +25 -5
- package/dist/modules/OptimalHealth/optimalHealth.module.css.cjs.js +1 -1
- package/dist/modules/OptimalHealth/optimalHealth.module.css.es.js +17 -15
- package/dist/modules/OurProcess/OurProcess.cjs.js +1 -1
- package/dist/modules/OurProcess/OurProcess.d.ts +3 -2
- package/dist/modules/OurProcess/OurProcess.es.js +17 -8
- package/dist/modules/PairedProducts/PairedProducts.cjs.js +1 -1
- package/dist/modules/PairedProducts/PairedProducts.d.ts +2 -2
- package/dist/modules/PairedProducts/PairedProducts.es.js +1 -1
- package/dist/modules/TypesOfTests/TypesOfTests.cjs.js +1 -1
- package/dist/modules/TypesOfTests/TypesOfTests.es.js +86 -47
- package/dist/modules/TypesOfTests/types.d.ts +4 -0
- package/dist/modules/TypesOfTests/typesOfTests.module.css.cjs.js +1 -1
- package/dist/modules/TypesOfTests/typesOfTests.module.css.es.js +14 -12
- package/dist/modules/YourProtocol/YourProtocol.es.js +19 -2
- package/dist/modules/YourProtocol/components/ProtocolTags/ProtocolTags.es.js +18 -5
- package/dist/node_modules/gsap/CSSPlugin.cjs.js +8 -0
- package/dist/node_modules/gsap/CSSPlugin.es.js +423 -0
- package/dist/node_modules/gsap/Observer.cjs.js +8 -0
- package/dist/node_modules/gsap/Observer.es.js +242 -0
- package/dist/node_modules/gsap/ScrollTrigger.cjs.js +8 -0
- package/dist/node_modules/gsap/ScrollTrigger.es.js +859 -0
- package/dist/node_modules/gsap/gsap-core.cjs.js +8 -0
- package/dist/node_modules/gsap/gsap-core.es.js +1651 -0
- package/dist/node_modules/gsap/index.cjs.js +1 -0
- package/dist/node_modules/gsap/index.es.js +13 -0
- package/dist/pageComponents/StillHaveQuestions/StillHaveQuestions.d.ts +1 -0
- package/dist/pageComponents/StillHaveQuestions/index.d.ts +1 -0
- package/package.json +39 -4
- package/dist/modules/OptimalHealth/components/ClockImages/hooks.cjs.js +0 -1
- package/dist/modules/OptimalHealth/components/ClockImages/hooks.es.js +0 -13
package/README.md
CHANGED
|
@@ -9,6 +9,7 @@ npm install @zenpatient-org/healthspan-marketing-ui
|
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## Development
|
|
12
|
+
|
|
12
13
|
Start the storybook:
|
|
13
14
|
|
|
14
15
|
```bash
|
|
@@ -21,7 +22,16 @@ When you create a new public component, you need to add it to the `components` s
|
|
|
21
22
|
|
|
22
23
|
Avoid using barrel exports. Instead, import the components directly from the `src` directory.
|
|
23
24
|
|
|
25
|
+
We use eslint and prettier, please ensure you have these lines in your IDE settings:
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
"eslint.useFlatConfig": true,
|
|
29
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
30
|
+
"editor.formatOnSave": true,
|
|
31
|
+
```
|
|
32
|
+
|
|
24
33
|
## Importing the components and modules
|
|
34
|
+
|
|
25
35
|
```tsx
|
|
26
36
|
import { Button } from '@zenpatient-org/healthspan-marketing-ui/Button';
|
|
27
37
|
import { CallbackModule } from '@zenpatient-org/healthspan-marketing-ui/CallbackModule';
|
|
@@ -46,5 +56,5 @@ npm publish
|
|
|
46
56
|
Design tokens (colors, spacing, etc.) are injected via CSS variables globally. Just import the global styles once:
|
|
47
57
|
|
|
48
58
|
```tsx
|
|
49
|
-
import
|
|
59
|
+
import '@zenpatient-org/healthspan-marketing-ui/dist/healthspan-marketing-ui.css';
|
|
50
60
|
```
|
|
@@ -4,13 +4,31 @@ import { cn as u } from "../../utils/cn/cn.es.js";
|
|
|
4
4
|
import { Icon as n } from "../Icon/Icon.es.js";
|
|
5
5
|
import s from "./button.module.css.es.js";
|
|
6
6
|
const b = h(
|
|
7
|
-
({
|
|
7
|
+
({
|
|
8
|
+
variant: m = "primary",
|
|
9
|
+
size: e = "md",
|
|
10
|
+
as: i = "button",
|
|
11
|
+
disabled: r = !1,
|
|
12
|
+
children: c,
|
|
13
|
+
prefixIcon: t,
|
|
14
|
+
suffixIcon: o,
|
|
15
|
+
...l
|
|
16
|
+
}, d) => {
|
|
8
17
|
const p = s[m] || "", f = s[e] || "", v = r ? s.disabled : "";
|
|
9
|
-
return /* @__PURE__ */ a(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
18
|
+
return /* @__PURE__ */ a(
|
|
19
|
+
i,
|
|
20
|
+
{
|
|
21
|
+
ref: d,
|
|
22
|
+
...l,
|
|
23
|
+
className: u(s.button, p, f, v),
|
|
24
|
+
disabled: r,
|
|
25
|
+
children: /* @__PURE__ */ N("div", { className: s.content, children: [
|
|
26
|
+
t && /* @__PURE__ */ a("div", { className: s.iconWrap, children: /* @__PURE__ */ a(n, { name: t }) }),
|
|
27
|
+
/* @__PURE__ */ a("div", { children: c }),
|
|
28
|
+
o && /* @__PURE__ */ a("div", { className: s.iconWrap, children: /* @__PURE__ */ a(n, { name: o }) })
|
|
29
|
+
] })
|
|
30
|
+
}
|
|
31
|
+
);
|
|
14
32
|
}
|
|
15
33
|
);
|
|
16
34
|
b.displayName = "Button";
|
package/dist/components/ComplexTooltip/components/ComplexTooltipContent/ComplexTooltipContent.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("../../../Icon/Icon.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("../../../Icon/Icon.cjs.js"),a=require("../../../Icon/constants.cjs.js"),h=require("../../../TextButton/TextButton.cjs.js"),s=require("../../../Typography/Typography.cjs.js"),x=require("../../../../utils/cn/cn.cjs.js"),t=require("./complexTooltipContent.module.css.cjs.js"),_=({style:n,title:l,description:u,link:o,isBlurred:r,className:i,onMouseEnter:d,onMouseLeave:p,onClose:c})=>e.jsxs("div",{className:x.cn(t.default.content,r&&t.default.blurred,i),"data-style":n,onMouseEnter:d,onMouseLeave:p,children:[e.jsxs("div",{className:t.default.contentHeader,children:[e.jsx(s.Typography,{as:"h4",defaultVariant:"headingSm",children:l}),c&&e.jsxs("button",{className:t.default.closeButton,onClick:c,children:["(",e.jsx(m.Icon,{name:a.EIconName.CLOSE,className:t.default.closeIcon}),")"]})]}),e.jsx(s.Typography,{as:"p",defaultVariant:"bodySm",children:u}),o&&e.jsx(h.TextButton,{suffixIcon:a.EIconName.ARROW_FORWARD,as:"a",href:o.url,target:"_blank",rel:"noopener noreferrer",inverted:n==="dark"&&!r||n==="light"&&r,children:o.label})]});exports.ComplexTooltipContent=_;
|
package/dist/components/ComplexTooltip/components/ComplexTooltipContent/ComplexTooltipContent.es.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { jsxs as n, jsx as
|
|
1
|
+
import { jsxs as n, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import { Icon as h } from "../../../Icon/Icon.es.js";
|
|
3
3
|
import { EIconName as c } from "../../../Icon/constants.es.js";
|
|
4
4
|
import { TextButton as u } from "../../../TextButton/TextButton.es.js";
|
|
5
5
|
import { Typography as i } from "../../../Typography/Typography.es.js";
|
|
6
6
|
import { cn as x } from "../../../../utils/cn/cn.es.js";
|
|
7
|
-
import
|
|
7
|
+
import r from "./complexTooltipContent.module.css.es.js";
|
|
8
8
|
const C = ({
|
|
9
|
-
style:
|
|
9
|
+
style: o,
|
|
10
10
|
title: l,
|
|
11
11
|
description: s,
|
|
12
|
-
link:
|
|
12
|
+
link: t,
|
|
13
13
|
isBlurred: a,
|
|
14
14
|
className: d,
|
|
15
15
|
onMouseEnter: p,
|
|
@@ -18,28 +18,30 @@ const C = ({
|
|
|
18
18
|
}) => /* @__PURE__ */ n(
|
|
19
19
|
"div",
|
|
20
20
|
{
|
|
21
|
-
className: x(
|
|
22
|
-
"data-style":
|
|
21
|
+
className: x(r.content, a && r.blurred, d),
|
|
22
|
+
"data-style": o,
|
|
23
23
|
onMouseEnter: p,
|
|
24
24
|
onMouseLeave: f,
|
|
25
25
|
children: [
|
|
26
|
-
/* @__PURE__ */ n("div", { className:
|
|
27
|
-
/* @__PURE__ */
|
|
28
|
-
m && /* @__PURE__ */ n("button", { className:
|
|
26
|
+
/* @__PURE__ */ n("div", { className: r.contentHeader, children: [
|
|
27
|
+
/* @__PURE__ */ e(i, { as: "h4", defaultVariant: "headingSm", children: l }),
|
|
28
|
+
m && /* @__PURE__ */ n("button", { className: r.closeButton, onClick: m, children: [
|
|
29
29
|
"(",
|
|
30
|
-
/* @__PURE__ */
|
|
30
|
+
/* @__PURE__ */ e(h, { name: c.CLOSE, className: r.closeIcon }),
|
|
31
31
|
")"
|
|
32
32
|
] })
|
|
33
33
|
] }),
|
|
34
|
-
/* @__PURE__ */
|
|
35
|
-
|
|
34
|
+
/* @__PURE__ */ e(i, { as: "p", defaultVariant: "bodySm", children: s }),
|
|
35
|
+
t && /* @__PURE__ */ e(
|
|
36
36
|
u,
|
|
37
37
|
{
|
|
38
38
|
suffixIcon: c.ARROW_FORWARD,
|
|
39
39
|
as: "a",
|
|
40
|
-
href:
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
href: t.url,
|
|
41
|
+
target: "_blank",
|
|
42
|
+
rel: "noopener noreferrer",
|
|
43
|
+
inverted: o === "dark" && !a || o === "light" && a,
|
|
44
|
+
children: t.label
|
|
43
45
|
}
|
|
44
46
|
)
|
|
45
47
|
]
|
|
@@ -13,5 +13,5 @@ type FilterMenuProps<T extends string | number> = {
|
|
|
13
13
|
options: ReadonlyArray<TOptionGroup<T>>;
|
|
14
14
|
onSelect: (value: T, optionGroup: TOptionGroup<T>) => void;
|
|
15
15
|
};
|
|
16
|
-
export declare function FilterMenu<T extends string | number>({ label, open, options, selectedValue, onSelect }: FilterMenuProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function FilterMenu<T extends string | number>({ label, open, options, selectedValue, onSelect, }: FilterMenuProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
17
17
|
export {};
|
|
@@ -6,7 +6,13 @@ import { Icon as v } from "../Icon/Icon.es.js";
|
|
|
6
6
|
import { EIconName as m } from "../Icon/constants.es.js";
|
|
7
7
|
import { Typography as o } from "../Typography/Typography.es.js";
|
|
8
8
|
import e from "./filterMenu.module.css.es.js";
|
|
9
|
-
function j({
|
|
9
|
+
function j({
|
|
10
|
+
label: c,
|
|
11
|
+
open: d = !1,
|
|
12
|
+
options: p,
|
|
13
|
+
selectedValue: u,
|
|
14
|
+
onSelect: h
|
|
15
|
+
}) {
|
|
10
16
|
const [t, f] = g(d), b = () => f((l) => !l);
|
|
11
17
|
return /* @__PURE__ */ r("div", { className: e.root, children: [
|
|
12
18
|
/* @__PURE__ */ r("button", { className: e.toggleButton, onClick: b, children: [
|
|
@@ -14,7 +20,16 @@ function j({ label: c, open: d = !1, options: p, selectedValue: u, onSelect: h }
|
|
|
14
20
|
/* @__PURE__ */ a(v, { name: t ? m.REMOVE : m.PLUS, className: e.toggleIcon })
|
|
15
21
|
] }),
|
|
16
22
|
/* @__PURE__ */ a("div", { className: n(e.menu, t && e.isOpen), role: "menu", children: p.map((l, s) => /* @__PURE__ */ r("ul", { className: e.subOptions, children: [
|
|
17
|
-
l.label && /* @__PURE__ */ a("li", { className: n(e.divider, s !== 0 && e.dividerLine), children: /* @__PURE__ */ a(
|
|
23
|
+
l.label && /* @__PURE__ */ a("li", { className: n(e.divider, s !== 0 && e.dividerLine), children: /* @__PURE__ */ a(
|
|
24
|
+
o,
|
|
25
|
+
{
|
|
26
|
+
as: "div",
|
|
27
|
+
defaultVariant: "bodyMd",
|
|
28
|
+
weight: "medium",
|
|
29
|
+
className: e.dividerLabel,
|
|
30
|
+
children: l.label
|
|
31
|
+
}
|
|
32
|
+
) }, s),
|
|
18
33
|
l.values.map(({ value: i, label: N }) => /* @__PURE__ */ a("li", { className: e.option, onClick: () => h(i, l), children: /* @__PURE__ */ a(
|
|
19
34
|
o,
|
|
20
35
|
{
|
|
@@ -51,7 +51,15 @@ function P({ items: c, speed: y = 50, contentClassName: W, itemClassName: q, roo
|
|
|
51
51
|
const t = s + 200, e = Math.min(t, 0);
|
|
52
52
|
R(e);
|
|
53
53
|
}
|
|
54
|
-
})), /* @__PURE__ */ M("div", { className: w(x.root, F), onMouseEnter: N, onMouseLeave: X, children: /* @__PURE__ */ M(
|
|
54
|
+
})), /* @__PURE__ */ M("div", { className: w(x.root, F), onMouseEnter: N, onMouseLeave: X, children: /* @__PURE__ */ M(
|
|
55
|
+
"div",
|
|
56
|
+
{
|
|
57
|
+
className: w(x.content, W),
|
|
58
|
+
style: { transform: `translate3D(${s}px, 0, 0)` },
|
|
59
|
+
ref: l,
|
|
60
|
+
children: Array.from({ length: c.length * I }, (t, e) => /* @__PURE__ */ M("div", { className: w(x.item, q), children: S(c[e % c.length], e) }, e))
|
|
61
|
+
}
|
|
62
|
+
) });
|
|
55
63
|
}
|
|
56
64
|
const G = D(P);
|
|
57
65
|
export {
|
|
@@ -5,7 +5,15 @@ import e from "./label.module.css.es.js";
|
|
|
5
5
|
const p = {
|
|
6
6
|
sm: o.labelXs,
|
|
7
7
|
lg: o.labelSm
|
|
8
|
-
}, f = ({ children: m, color: t, size: r = "sm", className: a }) => /* @__PURE__ */ s(
|
|
8
|
+
}, f = ({ children: m, color: t, size: r = "sm", className: a }) => /* @__PURE__ */ s(
|
|
9
|
+
"div",
|
|
10
|
+
{
|
|
11
|
+
className: l(e.root, o.labelEmphasis, p[r], a),
|
|
12
|
+
"data-size": r,
|
|
13
|
+
"data-color": t,
|
|
14
|
+
children: m
|
|
15
|
+
}
|
|
16
|
+
);
|
|
9
17
|
export {
|
|
10
18
|
f as Label
|
|
11
19
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("../../utils/cn/cn.cjs.js"),t=require("../Button/Button.cjs.js"),c=require("../Label/Label.cjs.js"),o=require("../Typography/Typography.cjs.js"),m=require("./components/BenefitItem/BenefitItem.cjs.js"),a=require("./pricing.module.css.cjs.js"),g=({label:i,price:d,items:u,link:r,button:s})=>e.jsxs("div",{className:a.default.root,children:[e.jsx(c.Label,{size:"lg",color:i.color,className:n.cn(a.default.pricingLabel,a.default.pricingLabelDesktop),children:i.label}),e.jsx(c.Label,{size:"sm",color:i.color,className:n.cn(a.default.pricingLabel,a.default.pricingLabelMobile),children:i.label}),e.jsxs("p",{className:a.default.pricing,children:[e.jsx(o.Typography,{as:"span",defaultVariant:"displayMd",mobileVariant:"displaySm",className:a.default.pricingTextPrimary,children:`$${d}`}),e.jsx(o.Typography,{as:"span",defaultVariant:"headingSm",mobileVariant:"headingXs",className:a.default.pricingTextSecondary,children:"/ mo"})]}),e.jsx("div",{className:a.default.benefits,children:u.map((l,p)=>e.jsx(m.BenefitItem,{badge:l.badge,label:l.label},p))}),e.jsx("div",{className:a.default.pricingButtonContainerDesktop,children:e.jsx(t.Button,{...s,size:"lg",as:"a",href:r,children:"GET STARTED"})}),e.jsx("div",{className:a.default.pricingButtonContainerMobile,children:e.jsx(t.Button,{...s,size:"md",as:"a",href:r,children:"GET STARTED"})}),e.jsx("div",{className:a.default.leftBorder}),e.jsx("div",{className:a.default.rightBorder})]});exports.Pricing=g;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { jsxs as o, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { cn as n } from "../../utils/cn/cn.es.js";
|
|
3
|
+
import { Button as c } from "../Button/Button.es.js";
|
|
4
|
+
import { Label as m } from "../Label/Label.es.js";
|
|
5
|
+
import { Typography as t } from "../Typography/Typography.es.js";
|
|
6
|
+
import { BenefitItem as h } from "./components/BenefitItem/BenefitItem.es.js";
|
|
7
|
+
import i from "./pricing.module.css.es.js";
|
|
8
|
+
const u = ({ label: r, price: d, items: p, link: a, button: s }) => /* @__PURE__ */ o("div", { className: i.root, children: [
|
|
9
|
+
/* @__PURE__ */ e(m, { size: "lg", color: r.color, className: n(i.pricingLabel, i.pricingLabelDesktop), children: r.label }),
|
|
10
|
+
/* @__PURE__ */ e(m, { size: "sm", color: r.color, className: n(i.pricingLabel, i.pricingLabelMobile), children: r.label }),
|
|
11
|
+
/* @__PURE__ */ o("p", { className: i.pricing, children: [
|
|
12
|
+
/* @__PURE__ */ e(
|
|
13
|
+
t,
|
|
14
|
+
{
|
|
15
|
+
as: "span",
|
|
16
|
+
defaultVariant: "displayMd",
|
|
17
|
+
mobileVariant: "displaySm",
|
|
18
|
+
className: i.pricingTextPrimary,
|
|
19
|
+
children: `$${d}`
|
|
20
|
+
}
|
|
21
|
+
),
|
|
22
|
+
/* @__PURE__ */ e(
|
|
23
|
+
t,
|
|
24
|
+
{
|
|
25
|
+
as: "span",
|
|
26
|
+
defaultVariant: "headingSm",
|
|
27
|
+
mobileVariant: "headingXs",
|
|
28
|
+
className: i.pricingTextSecondary,
|
|
29
|
+
children: "/ mo"
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
] }),
|
|
33
|
+
/* @__PURE__ */ e("div", { className: i.benefits, children: p.map((l, g) => /* @__PURE__ */ e(h, { badge: l.badge, label: l.label }, g)) }),
|
|
34
|
+
/* @__PURE__ */ e("div", { className: i.pricingButtonContainerDesktop, children: /* @__PURE__ */ e(c, { ...s, size: "lg", as: "a", href: a, children: "GET STARTED" }) }),
|
|
35
|
+
/* @__PURE__ */ e("div", { className: i.pricingButtonContainerMobile, children: /* @__PURE__ */ e(c, { ...s, size: "md", as: "a", href: a, children: "GET STARTED" }) }),
|
|
36
|
+
/* @__PURE__ */ e("div", { className: i.leftBorder }),
|
|
37
|
+
/* @__PURE__ */ e("div", { className: i.rightBorder })
|
|
38
|
+
] });
|
|
39
|
+
export {
|
|
40
|
+
u as Pricing
|
|
41
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("../../../TypeBadge/TypeBadge.cjs.js"),t=require("./benefitItem.module.css.cjs.js"),i=({badge:r,label:n})=>e.jsxs("div",{className:t.default.root,children:[e.jsx(s.TypeBadge,{type:r}),e.jsx("p",{className:t.default.benefitLabel,children:n})]});exports.BenefitItem=i;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsxs as s, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { TypeBadge as m } from "../../../TypeBadge/TypeBadge.es.js";
|
|
3
|
+
import r from "./benefitItem.module.css.es.js";
|
|
4
|
+
const l = ({ badge: t, label: o }) => /* @__PURE__ */ s("div", { className: r.root, children: [
|
|
5
|
+
/* @__PURE__ */ e(m, { type: t }),
|
|
6
|
+
/* @__PURE__ */ e("p", { className: r.benefitLabel, children: o })
|
|
7
|
+
] });
|
|
8
|
+
export {
|
|
9
|
+
l as BenefitItem
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="benefitItem-module__root___2QX95",t={root:e};exports.default=t;exports.root=e;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { BenefitItem } from './BenefitItem';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { BenefitItem } from './BenefitItem';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i="pricing-module__root___alGxI",e="pricing-module__pricingLabel___BrDUJ",n="pricing-module__pricingLabelDesktop___7H4iO",o="pricing-module__pricingLabelMobile___dpLsD",r="pricing-module__pricing___h1pM-",t="pricing-module__benefits___X-1Oc",_="pricing-module__pricingButtonContainerDesktop___kW7G4",c="pricing-module__pricingButtonContainerMobile___I-OGE",p="pricing-module__leftBorder___84NLl",l="pricing-module__rightBorder___50VVT",g={root:i,pricingLabel:e,pricingLabelDesktop:n,pricingLabelMobile:o,pricing:r,benefits:t,pricingButtonContainerDesktop:_,pricingButtonContainerMobile:c,leftBorder:p,rightBorder:l};exports.benefits=t;exports.default=g;exports.leftBorder=p;exports.pricing=r;exports.pricingButtonContainerDesktop=_;exports.pricingButtonContainerMobile=c;exports.pricingLabel=e;exports.pricingLabelDesktop=n;exports.pricingLabelMobile=o;exports.rightBorder=l;exports.root=i;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const i = "pricing-module__root___alGxI", n = "pricing-module__pricingLabel___BrDUJ", o = "pricing-module__pricingLabelDesktop___7H4iO", e = "pricing-module__pricingLabelMobile___dpLsD", r = "pricing-module__pricing___h1pM-", t = "pricing-module__benefits___X-1Oc", _ = "pricing-module__pricingButtonContainerDesktop___kW7G4", c = "pricing-module__pricingButtonContainerMobile___I-OGE", p = "pricing-module__leftBorder___84NLl", l = "pricing-module__rightBorder___50VVT", g = {
|
|
2
|
+
root: i,
|
|
3
|
+
pricingLabel: n,
|
|
4
|
+
pricingLabelDesktop: o,
|
|
5
|
+
pricingLabelMobile: e,
|
|
6
|
+
pricing: r,
|
|
7
|
+
benefits: t,
|
|
8
|
+
pricingButtonContainerDesktop: _,
|
|
9
|
+
pricingButtonContainerMobile: c,
|
|
10
|
+
leftBorder: p,
|
|
11
|
+
rightBorder: l
|
|
12
|
+
};
|
|
13
|
+
export {
|
|
14
|
+
t as benefits,
|
|
15
|
+
g as default,
|
|
16
|
+
p as leftBorder,
|
|
17
|
+
r as pricing,
|
|
18
|
+
_ as pricingButtonContainerDesktop,
|
|
19
|
+
c as pricingButtonContainerMobile,
|
|
20
|
+
n as pricingLabel,
|
|
21
|
+
o as pricingLabelDesktop,
|
|
22
|
+
e as pricingLabelMobile,
|
|
23
|
+
l as rightBorder,
|
|
24
|
+
i as root
|
|
25
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ButtonProps } from '../Button';
|
|
2
|
+
import { LabelColor } from '../Label';
|
|
3
|
+
import { ETypeBadge } from '../TypeBadge';
|
|
4
|
+
|
|
5
|
+
export type PricingElementView = {
|
|
6
|
+
label: {
|
|
7
|
+
label: string;
|
|
8
|
+
color: LabelColor;
|
|
9
|
+
};
|
|
10
|
+
items: Array<{
|
|
11
|
+
badge: ETypeBadge;
|
|
12
|
+
label: string;
|
|
13
|
+
}>;
|
|
14
|
+
price: number;
|
|
15
|
+
button: ButtonProps;
|
|
16
|
+
link: string;
|
|
17
|
+
};
|
|
@@ -3,5 +3,5 @@ import { TProductGalleryCardView } from './types';
|
|
|
3
3
|
type ProductGalleryCardProps = {
|
|
4
4
|
isHoverable?: boolean;
|
|
5
5
|
} & TProductGalleryCardView;
|
|
6
|
-
export declare const ProductGalleryCard: ({ name, price, image, link, buttons, isHoverable }: ProductGalleryCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare const ProductGalleryCard: ({ name, price, image, link, buttons, isHoverable, }: ProductGalleryCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export {};
|
|
@@ -3,7 +3,14 @@ import { Button as s } from "../Button/Button.es.js";
|
|
|
3
3
|
import { Typography as c } from "../Typography/Typography.es.js";
|
|
4
4
|
import { cn as m } from "../../utils/cn/cn.es.js";
|
|
5
5
|
import e from "./productGalleryCard.module.css.es.js";
|
|
6
|
-
const k = ({
|
|
6
|
+
const k = ({
|
|
7
|
+
name: d,
|
|
8
|
+
price: p,
|
|
9
|
+
image: h,
|
|
10
|
+
link: u,
|
|
11
|
+
buttons: t,
|
|
12
|
+
isHoverable: o = !0
|
|
13
|
+
}) => {
|
|
7
14
|
const i = (r) => {
|
|
8
15
|
r.preventDefault(), r.stopPropagation();
|
|
9
16
|
};
|
|
@@ -13,8 +20,22 @@ const k = ({ name: d, price: p, image: h, link: u, buttons: t, isHoverable: o =
|
|
|
13
20
|
/* @__PURE__ */ a(c, { defaultVariant: "labelXl", mobileVariant: "labelLg", className: e.price, children: p })
|
|
14
21
|
] }),
|
|
15
22
|
/* @__PURE__ */ a("img", { src: h, alt: "product image", className: e.productImage }),
|
|
16
|
-
/* @__PURE__ */ a(
|
|
17
|
-
|
|
23
|
+
/* @__PURE__ */ a(
|
|
24
|
+
"div",
|
|
25
|
+
{
|
|
26
|
+
onClick: i,
|
|
27
|
+
className: m(e.buttonContainerDesktop, o && e.hoverableButtons),
|
|
28
|
+
children: t.map((r, l) => /* @__PURE__ */ a(s, { size: "sm", ...r, children: r.label }, l))
|
|
29
|
+
}
|
|
30
|
+
),
|
|
31
|
+
/* @__PURE__ */ a(
|
|
32
|
+
"div",
|
|
33
|
+
{
|
|
34
|
+
onClick: i,
|
|
35
|
+
className: m(e.buttonContainerMobile, o && e.hoverableButtons),
|
|
36
|
+
children: t.map((r, l) => /* @__PURE__ */ a(s, { size: "xs", ...r, children: r.label }, l))
|
|
37
|
+
}
|
|
38
|
+
)
|
|
18
39
|
] });
|
|
19
40
|
};
|
|
20
41
|
export {
|
|
@@ -23,7 +23,15 @@ const c = ({ orientation: i, icon: e, disabled: n = !1, onClick: a }) => /* @__P
|
|
|
23
23
|
children: [
|
|
24
24
|
/* @__PURE__ */ t(c, { orientation: "left", icon: s.ARROW_BACK, disabled: e.disabled, onClick: e.onClick }),
|
|
25
25
|
/* @__PURE__ */ t("div", { className: r(o.divider, { [o.inverted]: i }) }),
|
|
26
|
-
/* @__PURE__ */ t(
|
|
26
|
+
/* @__PURE__ */ t(
|
|
27
|
+
c,
|
|
28
|
+
{
|
|
29
|
+
orientation: "right",
|
|
30
|
+
icon: s.ARROW_FORWARD,
|
|
31
|
+
disabled: n.disabled,
|
|
32
|
+
onClick: n.onClick
|
|
33
|
+
}
|
|
34
|
+
)
|
|
27
35
|
]
|
|
28
36
|
}
|
|
29
37
|
);
|
|
@@ -48,21 +48,55 @@ const B = ({ steps: s, colorScheme: i }) => {
|
|
|
48
48
|
children: [
|
|
49
49
|
/* @__PURE__ */ n("div", { className: f(t.imageWrapper, a && t.imageWrapperActive), children: /* @__PURE__ */ n("img", { src: e.image, alt: e.title, className: t.image }) }),
|
|
50
50
|
/* @__PURE__ */ n("div", { className: t.stepLabel, children: a ? /* @__PURE__ */ l(T, { children: [
|
|
51
|
-
/* @__PURE__ */ l(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
51
|
+
/* @__PURE__ */ l(
|
|
52
|
+
N,
|
|
53
|
+
{
|
|
54
|
+
size: "lg",
|
|
55
|
+
className: t.desktop,
|
|
56
|
+
color: i === "dark" ? "white" : "black",
|
|
57
|
+
children: [
|
|
58
|
+
"Step ",
|
|
59
|
+
r + 1
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ l(
|
|
64
|
+
N,
|
|
65
|
+
{
|
|
66
|
+
size: "sm",
|
|
67
|
+
className: t.mobile,
|
|
68
|
+
color: i === "dark" ? "white" : "black",
|
|
69
|
+
children: [
|
|
70
|
+
"Step ",
|
|
71
|
+
r + 1
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
] }) : /* @__PURE__ */ l(
|
|
76
|
+
p,
|
|
77
|
+
{
|
|
78
|
+
defaultVariant: "labelSm",
|
|
79
|
+
mobileVariant: "labelXs",
|
|
80
|
+
emphasis: !0,
|
|
81
|
+
className: t.labelText,
|
|
82
|
+
children: [
|
|
83
|
+
"Step ",
|
|
84
|
+
r + 1
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
) }),
|
|
63
88
|
/* @__PURE__ */ l("div", { className: t.textContainer, children: [
|
|
64
89
|
/* @__PURE__ */ n(p, { as: "h3", defaultVariant: "headingXs", mobileVariant: "headingXxs", children: e.title }),
|
|
65
|
-
e.description && /* @__PURE__ */ n(
|
|
90
|
+
e.description && /* @__PURE__ */ n(
|
|
91
|
+
p,
|
|
92
|
+
{
|
|
93
|
+
as: "p",
|
|
94
|
+
defaultVariant: "bodyMd",
|
|
95
|
+
mobileVariant: "bodySm",
|
|
96
|
+
className: t.cardDescription,
|
|
97
|
+
children: e.description
|
|
98
|
+
}
|
|
99
|
+
)
|
|
66
100
|
] })
|
|
67
101
|
]
|
|
68
102
|
},
|
|
@@ -17,13 +17,43 @@ function S({ title: i, link: l, inverted: o, image: c, date: u, label: n, readTi
|
|
|
17
17
|
/* @__PURE__ */ a("div", { className: e.imagePart, style: { backgroundImage: `url(${c})` }, children: n && /* @__PURE__ */ a(f, { ...n }) }),
|
|
18
18
|
/* @__PURE__ */ t("div", { className: e.dataPart, children: [
|
|
19
19
|
/* @__PURE__ */ t("div", { className: e.info, children: [
|
|
20
|
-
/* @__PURE__ */ a(
|
|
20
|
+
/* @__PURE__ */ a(
|
|
21
|
+
r,
|
|
22
|
+
{
|
|
23
|
+
defaultVariant: "labelSm",
|
|
24
|
+
mobileVariant: "labelXs",
|
|
25
|
+
emphasis: !0,
|
|
26
|
+
weight: "medium",
|
|
27
|
+
color: "color-neutral-500",
|
|
28
|
+
children: b(u)
|
|
29
|
+
}
|
|
30
|
+
),
|
|
21
31
|
!!m && /* @__PURE__ */ t(h, { children: [
|
|
22
|
-
/* @__PURE__ */ a(
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
32
|
+
/* @__PURE__ */ a(
|
|
33
|
+
r,
|
|
34
|
+
{
|
|
35
|
+
defaultVariant: "labelSm",
|
|
36
|
+
mobileVariant: "labelXs",
|
|
37
|
+
emphasis: !0,
|
|
38
|
+
weight: "medium",
|
|
39
|
+
color: "color-neutral-500",
|
|
40
|
+
children: "•"
|
|
41
|
+
}
|
|
42
|
+
),
|
|
43
|
+
/* @__PURE__ */ t(
|
|
44
|
+
r,
|
|
45
|
+
{
|
|
46
|
+
defaultVariant: "labelSm",
|
|
47
|
+
mobileVariant: "labelXs",
|
|
48
|
+
emphasis: !0,
|
|
49
|
+
weight: "medium",
|
|
50
|
+
color: "color-neutral-500",
|
|
51
|
+
children: [
|
|
52
|
+
m,
|
|
53
|
+
" MIN READ"
|
|
54
|
+
]
|
|
55
|
+
}
|
|
56
|
+
)
|
|
27
57
|
] })
|
|
28
58
|
] }),
|
|
29
59
|
/* @__PURE__ */ a(r, { className: e.title, defaultVariant: "headingSm", mobileVariant: "bodySm", as: "h6", children: i }),
|
|
@@ -22,7 +22,16 @@ function g({ tabs: n, activeTab: l, onTabChange: c }) {
|
|
|
22
22
|
[r.showFadeLeft]: a,
|
|
23
23
|
[r.showFadeRight]: d
|
|
24
24
|
}),
|
|
25
|
-
children: /* @__PURE__ */ o("div", { ref: s, className: r.tabsTape, children: /* @__PURE__ */ o(
|
|
25
|
+
children: /* @__PURE__ */ o("div", { ref: s, className: r.tabsTape, children: /* @__PURE__ */ o(
|
|
26
|
+
L,
|
|
27
|
+
{
|
|
28
|
+
activeTab: l,
|
|
29
|
+
tabs: n,
|
|
30
|
+
size: "lg",
|
|
31
|
+
activeLinePosition: "bottom",
|
|
32
|
+
onTabClick: c
|
|
33
|
+
}
|
|
34
|
+
) })
|
|
26
35
|
}
|
|
27
36
|
);
|
|
28
37
|
}
|
|
@@ -16,7 +16,14 @@ const _ = ({
|
|
|
16
16
|
let s = e;
|
|
17
17
|
l && !e && (s = "medium");
|
|
18
18
|
const n = s ? o[`weight${s.charAt(0).toUpperCase()}${s.slice(1)}`] : "", h = t.startsWith("label") && l ? o.labelEmphasis : "", f = r ? o[`mobile__${r}`] : "";
|
|
19
|
-
return /* @__PURE__ */ y(
|
|
19
|
+
return /* @__PURE__ */ y(
|
|
20
|
+
i,
|
|
21
|
+
{
|
|
22
|
+
style: g(p),
|
|
23
|
+
className: C(c, n, h, f, m),
|
|
24
|
+
children: a
|
|
25
|
+
}
|
|
26
|
+
);
|
|
20
27
|
};
|
|
21
28
|
export {
|
|
22
29
|
_ as Typography
|