@npm_leadtech/legal-contracts-ui 0.124.8 → 0.124.9

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.
@@ -96,6 +96,7 @@ export interface FaqSectionProps {
96
96
  export interface ImageWithPreviewProps {
97
97
  small: ReactNode;
98
98
  large: ReactNode;
99
+ onZoomClick?: () => void;
99
100
  }
100
101
 
101
102
  export interface JumboCardProps {
@@ -1,13 +1,13 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import l from "clsx";
3
- const b = ({ children: r, variant: e = "default" }) => {
1
+ import { jsx as l } from "react/jsx-runtime";
2
+ import o from "clsx";
3
+ const s = ({ children: r, variant: a = "default" }) => {
4
4
  const t = {
5
- default: "border-l-4 border-gray-300 pl-4 text-gray-700 ",
6
- "about-us": "text-gray-700 bg-neutral-25 pt-4 px-4 pb-0.5",
7
- unsubscribe: "border-l-4 border-neutral-300 pl-4 text-neutral-700 "
8
- }, a = t[e] ?? t.default;
9
- return /* @__PURE__ */ o("blockquote", { className: l("my-4 italic", a), children: r });
5
+ default: "my-4 border-l-4 border-gray-300 pl-4 text-gray-700 italic",
6
+ "about-us": "my-4 text-gray-700 italic bg-neutral-25 pt-4 px-4 pb-0.5",
7
+ unsubscribe: "my-4 border-l-4 border-neutral-300 pl-4 text-neutral-700 italic"
8
+ }, e = t[a] ?? t.default;
9
+ return /* @__PURE__ */ l("blockquote", { className: o("my-4 italic", e), children: r });
10
10
  };
11
11
  export {
12
- b as Blockquote
12
+ s as Blockquote
13
13
  };
@@ -38,6 +38,7 @@ export interface DefaultSubtypeDocumentProps extends BaseSubtypeDocumentProps {
38
38
  export interface ImageWithPreviewProps {
39
39
  small: ReactNode;
40
40
  large: ReactNode;
41
+ onZoomClick?: () => void;
41
42
  }
42
43
 
43
44
  export interface LinkedProductProps {
@@ -4,25 +4,25 @@ import { LawGeniusImageShell as p } from "./LawGeniusImageShell.js";
4
4
  import { Markdown as t } from "./Markdown.js";
5
5
  const v = ({
6
6
  sectionTitle: s,
7
- contentMarkdown: r,
7
+ contentMarkdown: m,
8
8
  descriptionMarkdown: a,
9
- steps: m,
9
+ steps: r,
10
10
  belowStepsMarkdown: i,
11
11
  cta: n,
12
12
  imageUrl: c,
13
13
  imageAlt: x
14
14
  }) => {
15
- const d = a.trim().length > 0, o = i.trim().length > 0;
16
- return /* @__PURE__ */ e("section", { className: "bg-neutral-25 lg:px-ds-10xl px-6 pt-16 pb-12 sm:px-10", children: /* @__PURE__ */ e("div", { className: "bg-ratafia mx-auto w-full max-w-6xl rounded-3xl px-8 pt-16 pb-8 text-white shadow-[0_25px_80px_rgba(3,42,56,0.35)] sm:px-10 sm:pt-16 sm:pb-10", children: /* @__PURE__ */ l("div", { className: "flex w-full flex-col gap-8 lg:gap-10", children: [
15
+ const o = a.trim().length > 0, d = i.trim().length > 0;
16
+ return /* @__PURE__ */ e("section", { className: "bg-neutral-25 lg:px-ds-10xl px-6 pt-16 pb-12 sm:px-10", children: /* @__PURE__ */ e("div", { className: "bg-law-genius-section mx-auto w-full max-w-6xl rounded-3xl px-8 pt-16 pb-8 text-white shadow-[0_25px_80px_rgba(3,42,56,0.35)] sm:px-10 sm:pt-16 sm:pb-10", children: /* @__PURE__ */ l("div", { className: "flex w-full flex-col gap-8 lg:gap-10", children: [
17
17
  /* @__PURE__ */ l("div", { className: "flex flex-col gap-4 text-center text-white", children: [
18
18
  /* @__PURE__ */ e("h2", { className: "lg:text-super-large text-3xl font-bold lg:leading-tight", children: s }),
19
- /* @__PURE__ */ e("div", { className: "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0", children: /* @__PURE__ */ e(t, { variant: "ratafia", content: r }) }),
20
- d && /* @__PURE__ */ e("div", { className: "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0", children: /* @__PURE__ */ e(t, { variant: "ratafia", content: a }) })
19
+ /* @__PURE__ */ e("div", { className: "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0", children: /* @__PURE__ */ e(t, { variant: "ratafia", content: m }) }),
20
+ o && /* @__PURE__ */ e("div", { className: "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0", children: /* @__PURE__ */ e(t, { variant: "ratafia", content: a }) })
21
21
  ] }),
22
22
  /* @__PURE__ */ l("div", { className: "flex w-full flex-col gap-8 lg:grid lg:grid-cols-[minmax(0,1fr)_minmax(0,1.05fr)] lg:items-stretch lg:gap-10", children: [
23
23
  /* @__PURE__ */ l("div", { className: "flex min-h-0 flex-col gap-6", children: [
24
- m,
25
- o && /* @__PURE__ */ e(
24
+ r,
25
+ d && /* @__PURE__ */ e(
26
26
  t,
27
27
  {
28
28
  variant: "ratafia",
@@ -32,6 +32,7 @@ export declare type HowItWorksProcessStep = {
32
32
  imageAlt: string;
33
33
  background: 'bg-white' | 'bg-neutral-25';
34
34
  reverse?: boolean;
35
+ imageFirstOnMobile?: boolean;
35
36
  };
36
37
 
37
38
  export declare const HowItWorksTemplate: FC<HowItWorksTemplateProps>;
@@ -12,26 +12,26 @@ import { Markdown as i } from "./Markdown.js";
12
12
  import { TwoColumnSection as c } from "./TwoColumnSection.js";
13
13
  import { LawGeniusImageShell as B } from "./LawGeniusImageShell.js";
14
14
  const U = (t) => {
15
- const m = /* @__PURE__ */ r("div", { className: "w-full min-w-0 space-y-4 text-neutral-800 md:shrink md:grow-0 md:basis-1/2 lg:basis-[47%]", children: [
15
+ const m = /* @__PURE__ */ r("div", { className: "min-w-0 space-y-4 text-neutral-800 lg:basis-[47%]", children: [
16
16
  /* @__PURE__ */ e("h2", { className: "font-lora text-[2.05rem] leading-[1.15] font-bold text-neutral-800", children: t.title }),
17
17
  /* @__PURE__ */ e("div", { className: "text-small space-y-3 text-neutral-700", children: /* @__PURE__ */ e(i, { variant: "legal", content: t.bodyMarkdown }) })
18
- ] }), a = /* @__PURE__ */ e("div", { className: "w-full min-w-0 md:shrink md:grow-0 md:basis-1/2 lg:w-1/2 lg:max-w-[50%] lg:basis-auto", children: /* @__PURE__ */ e(W, { src: t.imageUrl, alt: t.imageAlt }) });
19
- return { firstColumn: m, secondColumn: a };
20
- }, K = ({ hero: t, processSteps: m, lawGenius: a, resources: n }) => {
21
- const d = t.introMarkdown.trim().length > 0, p = t.closingMarkdown.trim().length > 0, x = n.supportBodyMarkdown.trim().length > 0, g = a.belowStepsMarkdown.trim().length > 0, { examples: s } = n, f = /* @__PURE__ */ e(
18
+ ] }), a = /* @__PURE__ */ e("div", { className: "w-full shrink-0 lg:w-1/2 lg:max-w-[50%]", children: /* @__PURE__ */ e(W, { src: t.imageUrl, alt: t.imageAlt }) });
19
+ return t.reverse ? { firstColumn: a, secondColumn: m } : { firstColumn: m, secondColumn: a };
20
+ }, J = ({ hero: t, processSteps: m, lawGenius: a, resources: s }) => {
21
+ const d = t.introMarkdown.trim().length > 0, p = t.closingMarkdown.trim().length > 0, x = s.supportBodyMarkdown.trim().length > 0, g = a.belowStepsMarkdown.trim().length > 0, { examples: n } = s, f = /* @__PURE__ */ e(
22
22
  o,
23
23
  {
24
- size: "small",
24
+ size: "large",
25
25
  variant: "primary-green",
26
- className: "text-small inline-flex w-fit justify-center !rounded-md font-bold",
26
+ className: "text-medium w-full justify-center !rounded-md font-bold lg:w-auto",
27
27
  children: /* @__PURE__ */ e("a", { href: a.cta.href, className: b, children: a.cta.label })
28
28
  }
29
29
  );
30
- return /* @__PURE__ */ r("main", { className: "flex w-full max-w-full min-w-0 flex-1 flex-col overflow-x-clip", children: [
30
+ return /* @__PURE__ */ r("main", { className: "flex w-full max-w-full min-w-0 flex-1 flex-col", children: [
31
31
  /* @__PURE__ */ e("section", { className: "bg-primary-50 lg:px-ds-10xl px-6 pt-4 pb-12 sm:px-10", children: /* @__PURE__ */ r("div", { className: "mx-auto flex max-w-6xl flex-col gap-12", children: [
32
32
  /* @__PURE__ */ r("div", { className: "text-center", children: [
33
- /* @__PURE__ */ r("div", { className: "mx-auto flex w-full max-w-full flex-col items-center gap-2", children: [
34
- /* @__PURE__ */ e("p", { className: "text-small text-center font-semibold tracking-[0.3em] text-neutral-600 uppercase", children: t.eyebrow }),
33
+ /* @__PURE__ */ r("div", { className: "mx-auto inline-flex max-w-full flex-col items-center gap-2", children: [
34
+ /* @__PURE__ */ e("p", { className: "text-small font-semibold tracking-[0.3em] whitespace-nowrap text-neutral-600 uppercase", children: t.eyebrow }),
35
35
  /* @__PURE__ */ e("span", { className: "h-px w-full max-w-[7.5rem] min-w-[5.5rem] shrink-0 bg-neutral-400", "aria-hidden": !0 })
36
36
  ] }),
37
37
  /* @__PURE__ */ e("h1", { className: "font-lora mx-auto mt-12 max-w-[48rem] text-4xl leading-tight font-bold tracking-tight text-neutral-800 sm:text-5xl sm:leading-tight", children: t.title })
@@ -40,7 +40,7 @@ const U = (t) => {
40
40
  A,
41
41
  {
42
42
  className: "bg-transparent",
43
- containerClassName: "w-full !max-w-none !flex-col gap-10 !px-0 !py-0 md:!flex-col lg:!flex-row lg:items-stretch",
43
+ containerClassName: "w-full !max-w-none flex-col gap-10 !px-0 !py-0 lg:flex-row lg:items-stretch",
44
44
  image: /* @__PURE__ */ e(S, { src: t.imageUrl, alt: t.imageAlt, priority: t.imagePriority }),
45
45
  cta: {
46
46
  size: "large",
@@ -73,8 +73,7 @@ const U = (t) => {
73
73
  className: `${l.background} lg:px-ds-10xl px-6 py-12 sm:px-10`,
74
74
  containerClassName: N(
75
75
  "!mx-auto !w-full !max-w-6xl !px-0 !py-0 !gap-8 md:!gap-10 lg:items-start",
76
- "!flex-col-reverse lg:!flex-row",
77
- l.reverse && "lg:!flex-row-reverse"
76
+ l.imageFirstOnMobile ? "!flex-col-reverse md:!flex-row" : "!flex-col md:!flex-row"
78
77
  ),
79
78
  firstColumn: u,
80
79
  secondColumn: h
@@ -115,24 +114,24 @@ const U = (t) => {
115
114
  c,
116
115
  {
117
116
  className: "bg-neutral-25 lg:px-ds-10xl px-6 py-12 sm:px-10",
118
- containerClassName: "!mx-auto !w-full !max-w-6xl !flex-col !items-start !gap-8 !px-0 !py-0 md:!gap-10 lg:!flex-row lg:!items-stretch",
119
- firstColumn: /* @__PURE__ */ e("div", { className: "w-full min-w-0 shrink-0 rounded-2xl border border-neutral-100 bg-white p-4 lg:basis-[48%] lg:p-5", children: /* @__PURE__ */ e(L, { src: n.imageUrl, alt: n.imageAlt }) }),
120
- secondColumn: /* @__PURE__ */ r("div", { className: "w-full min-w-0 space-y-4 lg:min-w-0 lg:basis-[52%]", children: [
121
- s.eyebrow && /* @__PURE__ */ e("p", { className: "text-xs font-semibold tracking-[0.2em] text-neutral-500 uppercase", children: s.eyebrow }),
122
- s.title && /* @__PURE__ */ e("h3", { className: "font-lora text-[2rem] leading-[1.2] font-bold text-neutral-800", children: s.title }),
123
- x && /* @__PURE__ */ e("div", { className: `text-small space-y-3 text-neutral-700 ${C}`, children: /* @__PURE__ */ e(i, { variant: "legal", content: n.supportBodyMarkdown }) }),
124
- s.rows.length > 0 && /* @__PURE__ */ e("dl", { className: "text-small space-y-2 text-neutral-700", children: s.rows.map((l) => /* @__PURE__ */ r("div", { className: "flex flex-wrap gap-x-2", children: [
117
+ containerClassName: "!mx-auto !w-full !max-w-6xl !items-start !gap-8 !px-0 !py-0 md:!gap-10 lg:!items-stretch",
118
+ firstColumn: /* @__PURE__ */ e("div", { className: "w-full min-w-0 shrink-0 rounded-2xl border border-neutral-100 bg-white p-4 lg:basis-[48%] lg:p-5", children: /* @__PURE__ */ e(L, { src: s.imageUrl, alt: s.imageAlt }) }),
119
+ secondColumn: /* @__PURE__ */ r("div", { className: "w-full space-y-4 lg:basis-[52%]", children: [
120
+ n.eyebrow && /* @__PURE__ */ e("p", { className: "text-xs font-semibold tracking-[0.2em] text-neutral-500 uppercase", children: n.eyebrow }),
121
+ n.title && /* @__PURE__ */ e("h3", { className: "font-lora text-[2rem] leading-[1.2] font-bold text-neutral-800", children: n.title }),
122
+ x && /* @__PURE__ */ e("div", { className: `text-small space-y-3 text-neutral-700 ${C}`, children: /* @__PURE__ */ e(i, { variant: "legal", content: s.supportBodyMarkdown }) }),
123
+ n.rows.length > 0 && /* @__PURE__ */ e("dl", { className: "text-small space-y-2 text-neutral-700", children: n.rows.map((l) => /* @__PURE__ */ r("div", { className: "flex flex-wrap gap-x-2", children: [
125
124
  /* @__PURE__ */ e("dt", { className: "font-semibold", children: l.label }),
126
125
  /* @__PURE__ */ e("dd", { children: l.value })
127
126
  ] }, `${l.label}-${l.value}`)) }),
128
- s.footer && /* @__PURE__ */ e("p", { className: "text-small text-neutral-600", children: s.footer }),
127
+ n.footer && /* @__PURE__ */ e("p", { className: "text-small text-neutral-600", children: n.footer }),
129
128
  /* @__PURE__ */ e(
130
129
  o,
131
130
  {
132
131
  size: "small",
133
132
  variant: "primary-green",
134
133
  className: "text-small inline-flex w-auto justify-center font-bold",
135
- children: /* @__PURE__ */ e("a", { href: n.cta.href, className: v, children: n.cta.label })
134
+ children: /* @__PURE__ */ e("a", { href: s.cta.href, className: v, children: s.cta.label })
136
135
  }
137
136
  )
138
137
  ] })
@@ -141,5 +140,5 @@ const U = (t) => {
141
140
  ] });
142
141
  };
143
142
  export {
144
- K as HowItWorksTemplate
143
+ J as HowItWorksTemplate
145
144
  };
@@ -6,5 +6,6 @@ export declare const ImageWithPreview: FC<ImageWithPreviewProps>;
6
6
  export declare interface ImageWithPreviewProps {
7
7
  small: ReactNode;
8
8
  large: ReactNode;
9
+ onZoomClick?: () => void;
9
10
  }
10
11
 
@@ -1,15 +1,17 @@
1
1
  "use client";
2
- import { jsxs as l, jsx as e } from "react/jsx-runtime";
3
- import { useState as s } from "react";
4
- import { ZoomIcon as a } from "./ZoomIcon.js";
2
+ import { jsxs as a, jsx as e } from "react/jsx-runtime";
3
+ import { useState as n } from "react";
4
+ import { ZoomIcon as c } from "./ZoomIcon.js";
5
5
  import { Modal as m } from "./Modal.js";
6
- const u = ({ small: r, large: i }) => {
7
- const [o, t] = s(!1);
8
- return /* @__PURE__ */ l("div", { className: "relative aspect-3/4 w-75 self-center overflow-hidden border border-neutral-200", children: [
9
- /* @__PURE__ */ e("div", { className: "h-full w-full [&_img]:h-full [&_img]:w-full [&_img]:object-cover", children: r }),
10
- /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e(m, { trigger: /* @__PURE__ */ e(a, { className: "bg-primary-700 size-8 rounded p-2 opacity-80 hover:opacity-100" }), isOpen: o, setIsOpen: t, children: i }) })
6
+ const b = ({ small: l, large: s, onZoomClick: r }) => {
7
+ const [t, o] = n(!1);
8
+ return /* @__PURE__ */ a("div", { className: "relative aspect-3/4 w-75 self-center overflow-hidden border border-neutral-200", children: [
9
+ /* @__PURE__ */ e("div", { className: "h-full w-full [&_img]:h-full [&_img]:w-full [&_img]:object-cover", children: l }),
10
+ /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e(m, { trigger: /* @__PURE__ */ e(c, { className: "bg-primary-700 size-8 rounded p-2 opacity-80 hover:opacity-100" }), isOpen: t, setIsOpen: (i) => {
11
+ o(i), i && r && r();
12
+ }, children: s }) })
11
13
  ] });
12
14
  };
13
15
  export {
14
- u as ImageWithPreview
16
+ b as ImageWithPreview
15
17
  };
@@ -1,19 +1,18 @@
1
- import { jsx as m, jsxs as o } from "react/jsx-runtime";
2
- import { clsx as s } from "clsx";
3
- import { TwoColumnSection as a } from "./TwoColumnSection.js";
4
- import { LinkWrapper as t } from "./LinkWrapper.js";
5
- const w = ({ image: l, children: i, cta: r, className: n, containerClassName: e }) => /* @__PURE__ */ m(
6
- a,
1
+ import { jsx as s, jsxs as n } from "react/jsx-runtime";
2
+ import { TwoColumnSection as e } from "./TwoColumnSection.js";
3
+ import { LinkWrapper as o } from "./LinkWrapper.js";
4
+ const c = ({ image: i, children: r, cta: m, className: a, containerClassName: l }) => /* @__PURE__ */ s(
5
+ e,
7
6
  {
8
- className: n ?? "",
9
- containerClassName: s("gap-6 lg:gap-10", e),
10
- firstColumn: /* @__PURE__ */ m("div", { className: "mb-4 min-h-0 w-full min-w-0 md:mb-0 lg:w-[39%] lg:shrink-0 xl:w-[36%]", children: l }),
11
- secondColumn: /* @__PURE__ */ o("div", { className: "mt-4 w-full min-w-0 md:mt-0 lg:min-w-0 lg:flex-1", children: [
12
- i,
13
- r && /* @__PURE__ */ m(t, { size: "large", variant: "primary-green", className: "mt-8", ...r })
7
+ className: a ?? "",
8
+ containerClassName: l,
9
+ firstColumn: /* @__PURE__ */ s("div", { className: "mb-4 min-h-0 w-full min-w-0 shrink-0 md:mr-6 md:mb-0 md:basis-42/100 lg:mr-10 lg:basis-39/100 xl:basis-36/100", children: i }),
10
+ secondColumn: /* @__PURE__ */ n("div", { className: "mt-4 basis-full md:mt-0 md:basis-56/100 lg:basis-59/100 xl:basis-60/100", children: [
11
+ r,
12
+ m && /* @__PURE__ */ s(o, { size: "large", variant: "primary-green", className: "mt-8", ...m })
14
13
  ] })
15
14
  }
16
15
  );
17
16
  export {
18
- w as IntroSection
17
+ c as IntroSection
19
18
  };
@@ -1,14 +1,14 @@
1
- import { jsx as l } from "react/jsx-runtime";
1
+ import { jsx as i } from "react/jsx-runtime";
2
2
  import a from "clsx";
3
- const u = ({ variant: e = "default", children: s }) => {
3
+ const m = ({ variant: e = "default", children: l }) => {
4
4
  const t = {
5
- default: "mb-4 list-inside space-y-2 text-gray-900",
6
- legal: "mb-4 list-outside space-y-4 pl-8 text-neutral-800",
7
- ratafia: "mb-3 list-outside space-y-2 pl-5 text-white/85 marker:text-white/60",
8
- unsubscribe: "mb-4 w-full list-outside space-y-2 pl-10 text-neutral-800"
9
- };
10
- return /* @__PURE__ */ l("ol", { className: a("list-decimal", t[e] ?? t.default), children: s });
5
+ default: "mb-4 list-inside list-decimal text-gray-900 space-y-2",
6
+ legal: "list-outside list-decimal pl-8 mb-4 text-neutral-800 space-y-4",
7
+ ratafia: "mb-3 list-outside list-decimal space-y-2 pl-5 text-white/85 marker:text-white/60",
8
+ unsubscribe: "mb-4 w-full list-outside list-decimal space-y-2 pl-10 text-neutral-800"
9
+ }, s = t[e] ?? t.default;
10
+ return /* @__PURE__ */ i("ol", { className: a("mb-4 list-decimal", s), children: l });
11
11
  };
12
12
  export {
13
- u as OrderedList
13
+ m as OrderedList
14
14
  };
@@ -4,6 +4,7 @@ import { ReactNode } from 'react';
4
4
  export interface ImageWithPreviewProps {
5
5
  small: ReactNode;
6
6
  large: ReactNode;
7
+ onZoomClick?: () => void;
7
8
  }
8
9
 
9
10
  export declare const PreviewDownload: FC<PreviewDownloadProps>;
@@ -15,5 +16,6 @@ export declare interface PreviewDownloadProps {
15
16
  footerText: string;
16
17
  pdfDownload: ReactNode;
17
18
  wordDownload: ReactNode;
19
+ onZoomClick?: () => void;
18
20
  }
19
21
 
@@ -1,38 +1,41 @@
1
1
  "use client";
2
2
  import { jsxs as l, jsx as e } from "react/jsx-runtime";
3
- import { useState as f } from "react";
4
- import { ZoomIcon as u } from "./ZoomIcon.js";
5
- import { Modal as p } from "./Modal.js";
6
- import { Markdown as x } from "./Markdown.js";
3
+ import { useState as h } from "react";
4
+ import { ZoomIcon as x } from "./ZoomIcon.js";
5
+ import { Modal as b } from "./Modal.js";
6
+ import { Markdown as w } from "./Markdown.js";
7
7
  import { LinkWrapper as r } from "./LinkWrapper.js";
8
- const y = ({
9
- title: t,
10
- footerText: s,
8
+ const k = ({
9
+ title: n,
10
+ footerText: i,
11
11
  preview: a,
12
- cta: n,
13
- pdfDownload: i,
14
- wordDownload: c
12
+ cta: c,
13
+ pdfDownload: m,
14
+ wordDownload: o,
15
+ onZoomClick: t
15
16
  }) => {
16
- const [o, m] = f(!1);
17
+ const [d, f] = h(!1), p = (s) => {
18
+ f(s), s && t && t();
19
+ };
17
20
  if (!a) return;
18
- const d = /* @__PURE__ */ e(u, { className: "bg-primary-700 size-8 rounded p-2 opacity-80 hover:opacity-100" });
21
+ const u = /* @__PURE__ */ e(x, { className: "bg-primary-700 size-8 rounded p-2 opacity-80 hover:opacity-100" });
19
22
  return /* @__PURE__ */ l("div", { className: "bg-neutral-25 relative mt-24 flex flex-col items-center gap-4 rounded border border-neutral-200 p-6 pt-44 lg:max-w-76 xl:max-w-96.5", children: [
20
23
  /* @__PURE__ */ l("div", { className: "absolute -top-24 border border-neutral-200 shadow", children: [
21
24
  /* @__PURE__ */ e("div", { className: "h-full max-h-64.5 w-full max-w-50 overflow-hidden", children: a.small }),
22
- /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e(p, { trigger: d, isOpen: o, setIsOpen: m, children: a.large }) })
25
+ /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ e(b, { trigger: u, isOpen: d, setIsOpen: p, children: a.large }) })
23
26
  ] }),
24
- /* @__PURE__ */ e(x, { className: "text-medium text-center text-neutral-800 [&_p:last-child]:mb-0", content: t }),
25
- /* @__PURE__ */ e(r, { className: "w-full", variant: "primary-green", children: n }),
27
+ /* @__PURE__ */ e(w, { className: "text-medium text-center text-neutral-800 [&_p:last-child]:mb-0", content: n }),
28
+ /* @__PURE__ */ e(r, { className: "w-full", variant: "primary-green", children: c }),
26
29
  /* @__PURE__ */ e("div", { className: "h-px w-full bg-neutral-200" }),
27
30
  /* @__PURE__ */ l("div", { className: "flex w-full flex-col items-center gap-6", children: [
28
- /* @__PURE__ */ e("p", { className: "text-small text-neutral-800", children: s }),
31
+ /* @__PURE__ */ e("p", { className: "text-small text-neutral-800", children: i }),
29
32
  /* @__PURE__ */ l("div", { className: "flex w-full gap-4", children: [
30
- /* @__PURE__ */ e(r, { className: "w-full", variant: "secondary-black", children: i }),
31
- /* @__PURE__ */ e(r, { className: "w-full", variant: "secondary-black", children: c })
33
+ /* @__PURE__ */ e(r, { className: "w-full", variant: "secondary-black", children: m }),
34
+ /* @__PURE__ */ e(r, { className: "w-full", variant: "secondary-black", children: o })
32
35
  ] })
33
36
  ] })
34
37
  ] });
35
38
  };
36
39
  export {
37
- y as PreviewDownload
40
+ k as PreviewDownload
38
41
  };
@@ -7,5 +7,6 @@ export declare interface PreviewSectionProps {
7
7
  title: string;
8
8
  documentPreview: string;
9
9
  cta: ReactNode;
10
+ onPreviewScroll?: () => void;
10
11
  }
11
12
 
@@ -1,13 +1,26 @@
1
- import { jsx as e, jsxs as o } from "react/jsx-runtime";
2
- import "react";
3
- import { SectionHeading as a } from "./SectionHeading.js";
4
- import { Markdown as n } from "./Markdown.js";
5
- import { LinkWrapper as s } from "./LinkWrapper.js";
6
- const d = ({ title: t, documentPreview: r, cta: l }) => /* @__PURE__ */ e("section", { className: "bg-secondary-50 px-4 py-10 text-neutral-900 md:px-8 xl:px-30", children: /* @__PURE__ */ o("div", { className: "mx-auto flex w-full max-w-300 flex-col items-center gap-8", children: [
7
- /* @__PURE__ */ e(a, { title: t, titleClass: "text-neutral-800 font-bold font-inter text-large" }),
8
- /* @__PURE__ */ e("div", { className: "flex max-h-89.75 w-full overflow-auto border border-neutral-200 bg-white px-8 py-8 md:py-16", children: /* @__PURE__ */ e(n, { useCustom: !1, className: "select-none", content: r }) }),
9
- /* @__PURE__ */ e(s, { className: "w-full md:w-auto", children: l })
10
- ] }) });
1
+ "use client";
2
+ import { jsx as e, jsxs as n } from "react/jsx-runtime";
3
+ import { useRef as s } from "react";
4
+ import { SectionHeading as c } from "./SectionHeading.js";
5
+ import { Markdown as m } from "./Markdown.js";
6
+ import { LinkWrapper as i } from "./LinkWrapper.js";
7
+ const w = ({ title: l, documentPreview: o, cta: a, onPreviewScroll: r }) => {
8
+ const t = s(!1);
9
+ return /* @__PURE__ */ e("section", { className: "bg-secondary-50 px-4 py-10 text-neutral-900 md:px-8 xl:px-30", children: /* @__PURE__ */ n("div", { className: "mx-auto flex w-full max-w-300 flex-col items-center gap-8", children: [
10
+ /* @__PURE__ */ e(c, { title: l, titleClass: "text-neutral-800 font-bold font-inter text-large" }),
11
+ /* @__PURE__ */ e(
12
+ "div",
13
+ {
14
+ className: "flex max-h-89.75 w-full overflow-auto border border-neutral-200 bg-white px-8 py-8 md:py-16",
15
+ onScroll: () => {
16
+ !t.current && r && (t.current = !0, r());
17
+ },
18
+ children: /* @__PURE__ */ e(m, { useCustom: !1, className: "select-none", content: o })
19
+ }
20
+ ),
21
+ /* @__PURE__ */ e(i, { className: "w-full md:w-auto", children: a })
22
+ ] }) });
23
+ };
11
24
  export {
12
- d as PreviewSection
25
+ w as PreviewSection
13
26
  };
@@ -77,6 +77,7 @@ export interface FreeDocumentModalProps {
77
77
  export interface ImageWithPreviewProps {
78
78
  small: ReactNode;
79
79
  large: ReactNode;
80
+ onZoomClick?: () => void;
80
81
  }
81
82
 
82
83
  export type InputFieldData = {
@@ -133,12 +134,14 @@ export interface PreviewDownloadProps {
133
134
  footerText: string;
134
135
  pdfDownload: ReactNode;
135
136
  wordDownload: ReactNode;
137
+ onZoomClick?: () => void;
136
138
  }
137
139
 
138
140
  export interface PreviewSectionProps {
139
141
  title: string;
140
142
  documentPreview: string;
141
143
  cta: ReactNode;
144
+ onPreviewScroll?: () => void;
142
145
  }
143
146
 
144
147
  export interface ProductInfoProps {
@@ -1,55 +1,45 @@
1
1
  import { jsx as l, jsxs as e } from "react/jsx-runtime";
2
2
  import "react";
3
- import { clsx as s } from "clsx";
4
- import { Markdown as t } from "./Markdown.js";
3
+ import { clsx as i } from "clsx";
4
+ import { Markdown as o } from "./Markdown.js";
5
5
  import { LinkWrapper as f } from "./LinkWrapper.js";
6
- const C = ({
7
- title: d,
6
+ const j = ({
7
+ title: m,
8
8
  content: r,
9
- benefits: m = [],
10
- stepsSlot: x,
9
+ benefits: t = [],
10
+ stepsSlot: d,
11
11
  belowStepsSlot: g,
12
- cta: i,
13
- image: c,
12
+ cta: s,
13
+ image: x,
14
14
  skipCtaWrapper: h = !1,
15
- sectionClassName: n,
16
- innerClassName: o
15
+ sectionClassName: c,
16
+ innerClassName: n
17
17
  }) => {
18
- const w = "bg-primary-50 px-6 py-10 lg:px-8 lg:py-12 xl:px-0", u = "from-primary-900 via-primary-700 to-primary-900 mx-auto flex flex-col justify-between gap-8 rounded-2xl bg-linear-to-bl p-6 text-white md:flex-row md:items-center md:gap-10 md:p-10 lg:gap-16 lg:p-16 xl:mx-auto xl:max-w-300";
19
- if (x != null) {
20
- const a = r.trim().length > 0, p = "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0", N = h ? /* @__PURE__ */ l("div", { className: "flex w-fit justify-start", children: i }) : /* @__PURE__ */ l(f, { className: "flex w-fit justify-start", children: i });
21
- return /* @__PURE__ */ l(
22
- "section",
23
- {
24
- className: s(
25
- "max-w-full overflow-x-hidden",
26
- n ?? "bg-neutral-25 lg:px-ds-10xl px-6 pt-16 pb-12 sm:px-10"
27
- ),
28
- children: /* @__PURE__ */ l("div", { className: s("bg-ratafia mx-auto w-full max-w-6xl rounded-3xl px-8 pb-8 pt-16 text-white shadow-[0_25px_80px_rgba(3,42,56,0.35)] sm:px-10 sm:pb-10 sm:pt-16", o), children: /* @__PURE__ */ e("div", { className: "flex w-full flex-col gap-8 lg:gap-10", children: [
29
- /* @__PURE__ */ e("div", { className: "flex flex-col gap-4 text-center text-white", children: [
30
- /* @__PURE__ */ l("h2", { className: "lg:text-super-large text-3xl font-bold lg:leading-tight", children: d }),
31
- a && /* @__PURE__ */ l("div", { className: "hidden lg:block", children: /* @__PURE__ */ l(t, { content: r, className: p }) })
32
- ] }),
33
- /* @__PURE__ */ e("div", { className: "flex w-full flex-col gap-8 lg:grid lg:grid-cols-[minmax(0,1fr)_minmax(0,1.05fr)] lg:items-stretch lg:gap-10", children: [
34
- /* @__PURE__ */ l("div", { className: "relative z-10 order-1 mx-auto flex min-h-0 w-full max-w-77 shrink-0 items-center justify-center overflow-hidden rounded-lg md:mx-0 md:max-w-none lg:order-2", children: c }),
35
- /* @__PURE__ */ e("div", { className: "order-2 flex min-h-0 flex-col gap-6 lg:order-1", children: [
36
- a && /* @__PURE__ */ l("div", { className: "text-left lg:hidden", children: /* @__PURE__ */ l(t, { content: r, className: p }) }),
37
- x,
38
- g,
39
- N
40
- ] })
41
- ] })
42
- ] }) })
43
- }
44
- );
18
+ const p = "bg-primary-50 px-6 pb-10 pt-16 lg:px-8 lg:pb-12 lg:pt-16 xl:px-0", w = "from-primary-900 via-primary-700 to-primary-900 mx-auto flex flex-col justify-between gap-8 rounded-2xl bg-linear-to-bl p-6 text-white md:flex-row md:items-center md:gap-10 md:p-10 lg:gap-16 lg:p-16 xl:mx-auto xl:max-w-300";
19
+ if (d != null) {
20
+ const a = h ? /* @__PURE__ */ l("div", { className: "w-full lg:w-fit", children: s }) : /* @__PURE__ */ l(f, { className: "w-full lg:w-fit", children: s });
21
+ return /* @__PURE__ */ l("section", { className: i("max-w-full overflow-x-hidden", c ?? p), children: /* @__PURE__ */ l("div", { className: i("bg-law-genius-section mx-auto w-full max-w-6xl rounded-3xl px-8 pb-8 pt-16 text-white shadow-[0_25px_80px_rgba(3,42,56,0.35)] sm:px-10 sm:pb-10 sm:pt-16", n), children: /* @__PURE__ */ e("div", { className: "flex w-full flex-col gap-8 lg:gap-10", children: [
22
+ /* @__PURE__ */ e("div", { className: "flex flex-col gap-4 text-center text-white", children: [
23
+ /* @__PURE__ */ l("h2", { className: "lg:text-super-large text-3xl font-bold lg:leading-tight", children: m }),
24
+ /* @__PURE__ */ l(o, { content: r, className: "[&_p]:text-medium [&_p]:text-white/80 [&_p:last-child]:mb-0" })
25
+ ] }),
26
+ /* @__PURE__ */ e("div", { className: "flex w-full flex-col gap-8 lg:grid lg:grid-cols-[minmax(0,1fr)_minmax(0,1.05fr)] lg:items-stretch lg:gap-10", children: [
27
+ /* @__PURE__ */ e("div", { className: "flex min-h-0 flex-col gap-6", children: [
28
+ d,
29
+ g,
30
+ a
31
+ ] }),
32
+ /* @__PURE__ */ l("div", { className: "relative z-10 mx-auto flex min-h-0 w-full max-w-77 shrink-0 items-center justify-center overflow-hidden rounded-lg md:mx-0 md:max-w-none", children: x })
33
+ ] })
34
+ ] }) }) });
45
35
  }
46
- return /* @__PURE__ */ l("section", { className: s("max-w-full overflow-x-hidden", n ?? w), children: /* @__PURE__ */ e("div", { className: s(u, o), children: [
36
+ return /* @__PURE__ */ l("section", { className: i("max-w-full overflow-x-hidden", c ?? p), children: /* @__PURE__ */ e("div", { className: i(w, n), children: [
47
37
  /* @__PURE__ */ e("div", { className: "flex flex-col gap-8", children: [
48
38
  /* @__PURE__ */ e("div", { className: "flex flex-col gap-4", children: [
49
- /* @__PURE__ */ l("h2", { className: "text-super-large leading-tight font-bold", children: d }),
50
- /* @__PURE__ */ l(t, { content: r, className: "[&_p:last-child]:mb-0" })
39
+ /* @__PURE__ */ l("h2", { className: "text-super-large leading-tight font-bold", children: m }),
40
+ /* @__PURE__ */ l(o, { content: r, className: "[&_p:last-child]:mb-0" })
51
41
  ] }),
52
- m.length > 0 && /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-3", children: m.map((a) => /* @__PURE__ */ e(
42
+ t.length > 0 && /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-3", children: t.map((a) => /* @__PURE__ */ e(
53
43
  "span",
54
44
  {
55
45
  className: "bg-primary-50 text-small text-primary-800 flex flex-nowrap gap-1 rounded-md p-1 font-semibold",
@@ -60,11 +50,11 @@ const C = ({
60
50
  },
61
51
  a.id
62
52
  )) }),
63
- /* @__PURE__ */ l(f, { className: "w-full md:w-fit", children: i })
53
+ /* @__PURE__ */ l(f, { className: "w-full md:w-fit", children: s })
64
54
  ] }),
65
- /* @__PURE__ */ l("div", { className: "mx-auto w-full max-w-77 md:mx-0 md:min-w-74", children: c })
55
+ /* @__PURE__ */ l("div", { className: "mx-auto w-full max-w-77 md:mx-0 md:min-w-74", children: x })
66
56
  ] }) });
67
57
  };
68
58
  export {
69
- C as RatafiaSection
59
+ j as RatafiaSection
70
60
  };
@@ -1,20 +1,20 @@
1
- import { jsx as r, jsxs as x } from "react/jsx-runtime";
1
+ import { jsx as n, jsxs as x } from "react/jsx-runtime";
2
2
  import { clsx as c } from "clsx";
3
3
  const t = ({
4
- firstColumn: o,
5
- secondColumn: e,
6
- className: l,
7
- containerClassName: m
8
- }) => /* @__PURE__ */ r("section", { className: l ?? "", children: /* @__PURE__ */ x(
4
+ firstColumn: e,
5
+ secondColumn: o,
6
+ className: m,
7
+ containerClassName: r
8
+ }) => /* @__PURE__ */ n("section", { className: m ?? "", children: /* @__PURE__ */ x(
9
9
  "div",
10
10
  {
11
11
  className: c(
12
- "mx-auto flex w-full max-w-300 min-w-0 flex-col justify-center overflow-x-clip px-4 py-10 md:flex-row md:px-8",
13
- m
12
+ "container mx-auto flex max-w-300 min-w-0 flex-col justify-center px-4 py-10 md:flex-row md:flex-nowrap md:px-8",
13
+ r
14
14
  ),
15
15
  children: [
16
- o,
17
- e
16
+ e,
17
+ o
18
18
  ]
19
19
  }
20
20
  ) });