@npm_leadtech/legal-contracts-ui 0.124.4 → 0.124.6

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.
Files changed (42) hide show
  1. package/dist/components/AboutUsTemplate.d.ts +1 -0
  2. package/dist/components/AiLegalDocumentReviewerTemplate.d.ts +2 -0
  3. package/dist/components/Button.d.ts +2 -1
  4. package/dist/components/Button.js +23 -10
  5. package/dist/components/Checkbox.d.ts +1 -0
  6. package/dist/components/Checkbox.js +27 -15
  7. package/dist/components/ContactFormSection.d.ts +2 -0
  8. package/dist/components/ContactUsSection.d.ts +1 -0
  9. package/dist/components/ContactUsSection.js +6 -6
  10. package/dist/components/ContactUsTemplate.d.ts +2 -0
  11. package/dist/components/ConversionSection.d.ts +2 -0
  12. package/dist/components/ConversionSection.js +4 -4
  13. package/dist/components/CookiesBar.d.ts +1 -0
  14. package/dist/components/ElectronicSignatureTemplate.d.ts +1 -0
  15. package/dist/components/Footer.d.ts +1 -0
  16. package/dist/components/Footer.js +3 -3
  17. package/dist/components/Header.d.ts +1 -0
  18. package/dist/components/Hero2Section.d.ts +1 -0
  19. package/dist/components/HowItWorksLawGeniusSection.js +8 -8
  20. package/dist/components/HowItWorksTemplate.d.ts +1 -0
  21. package/dist/components/HowItWorksTemplate.js +33 -34
  22. package/dist/components/Input.d.ts +1 -0
  23. package/dist/components/Input.js +32 -30
  24. package/dist/components/IntroSection.js +1 -1
  25. package/dist/components/MobileMenu.d.ts +1 -0
  26. package/dist/components/MobileMenu.js +5 -4
  27. package/dist/components/PhoneButton.d.ts +2 -1
  28. package/dist/components/PhoneButton.js +5 -4
  29. package/dist/components/Preform.d.ts +1 -0
  30. package/dist/components/Preform.js +7 -6
  31. package/dist/components/PreformMobile.d.ts +1 -0
  32. package/dist/components/ProductTemplate.d.ts +1 -0
  33. package/dist/components/RatafiaSection.js +30 -31
  34. package/dist/components/Select.d.ts +1 -0
  35. package/dist/components/Select.js +22 -20
  36. package/dist/components/Textarea.d.ts +1 -0
  37. package/dist/components/Textarea.js +18 -16
  38. package/dist/components/UploadZone.d.ts +1 -0
  39. package/dist/components/UploadZone.js +21 -20
  40. package/dist/components/index.d.ts +12 -1
  41. package/dist/globals.css +1 -1
  42. package/package.json +1 -1
@@ -31,6 +31,7 @@ export interface ContactUsSectionProps {
31
31
  icon: ReactNode;
32
32
  helper?: string;
33
33
  url?: string;
34
+ dataQa?: string;
34
35
  }>;
35
36
  }
36
37
 
@@ -32,6 +32,7 @@ export interface ConversionSectionProps {
32
32
  icon: ReactNode;
33
33
  title: string;
34
34
  uploadZone: UploadZoneProps;
35
+ dataQa?: string;
35
36
  }
36
37
 
37
38
  export interface FaqItemProps {
@@ -136,5 +137,6 @@ export interface UploadZoneProps {
136
137
  containerClassName?: string;
137
138
  onAddDocument?: () => void;
138
139
  onDropDocument?: (e: React.DragEvent<HTMLDivElement>) => void;
140
+ dataQa?: string;
139
141
  }
140
142
 
@@ -2,13 +2,14 @@ import { ComponentPropsWithRef } from 'react';
2
2
  import { JSX } from 'react/jsx-runtime';
3
3
  import { ReactNode } from 'react';
4
4
 
5
- export declare const Button: ({ children, type, size, variant, iconPosition, className, disabled, ref, ...props }: ButtonProps) => JSX.Element;
5
+ export declare const Button: ({ children, type, size, variant, iconPosition, className, disabled, ref, dataQa, ...props }: ButtonProps) => JSX.Element;
6
6
 
7
7
  export declare interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
8
8
  children: ReactNode;
9
9
  size?: ButtonSize;
10
10
  variant?: ResponsiveButtonVariant;
11
11
  iconPosition?: IconPosition;
12
+ dataQa?: string;
12
13
  }
13
14
 
14
15
  export type ButtonSize = 'small' | 'default' | 'large';
@@ -1,20 +1,33 @@
1
- import { jsx as l } from "react/jsx-runtime";
2
- import { getButtonClasses as p } from "./Button.utils.js";
1
+ import { jsx as p } from "react/jsx-runtime";
2
+ import { getButtonClasses as c } from "./Button.utils.js";
3
3
  import "react";
4
- const x = ({
4
+ const B = ({
5
5
  children: o,
6
6
  type: r = "button",
7
- size: s = "default",
8
- variant: e = "primary-green",
9
- iconPosition: a = "left",
7
+ size: a = "default",
8
+ variant: s = "primary-green",
9
+ iconPosition: e = "left",
10
10
  className: n,
11
11
  disabled: t = !1,
12
12
  ref: m,
13
- ...u
13
+ dataQa: u,
14
+ ...f
14
15
  }) => {
15
- const f = p(s, e, a, t, n);
16
- return /* @__PURE__ */ l("button", { ref: m, type: r, disabled: t, "aria-disabled": t, className: f, ...u, children: o });
16
+ const l = c(a, s, e, t, n);
17
+ return /* @__PURE__ */ p(
18
+ "button",
19
+ {
20
+ "data-qa": u,
21
+ ref: m,
22
+ type: r,
23
+ disabled: t,
24
+ "aria-disabled": t,
25
+ className: l,
26
+ ...f,
27
+ children: o
28
+ }
29
+ );
17
30
  };
18
31
  export {
19
- x as Button
32
+ B as Button
20
33
  };
@@ -4,6 +4,7 @@ import { ReactNode } from 'react';
4
4
  export declare const Checkbox: FC<CheckboxProps>;
5
5
 
6
6
  export declare interface CheckboxProps extends React.InputHTMLAttributes<HTMLInputElement> {
7
+ dataQa?: string;
7
8
  id: string;
8
9
  name: string;
9
10
  required?: boolean;
@@ -1,31 +1,43 @@
1
- import { jsxs as a, jsx as r } from "react/jsx-runtime";
2
- import m from "clsx";
3
- import { CheckIcon as c } from "./CheckIcon.js";
4
- const u = ({
5
- id: o,
6
- name: s,
7
- required: i = !1,
1
+ import { jsxs as m, jsx as r } from "react/jsx-runtime";
2
+ import c from "clsx";
3
+ import { CheckIcon as p } from "./CheckIcon.js";
4
+ const d = ({
5
+ dataQa: s,
6
+ id: t,
7
+ name: i,
8
+ required: a = !1,
8
9
  children: l,
9
10
  checked: e,
10
- error: t = !1,
11
+ error: o = !1,
11
12
  ...n
12
- }) => /* @__PURE__ */ a("label", { htmlFor: o, className: "text-medium flex cursor-pointer items-center gap-2 text-neutral-800 select-none", children: [
13
- /* @__PURE__ */ r("input", { id: o, name: s, type: "checkbox", required: i, className: "peer sr-only", ...n }),
13
+ }) => /* @__PURE__ */ m("label", { htmlFor: t, className: "text-medium flex cursor-pointer items-center gap-2 text-neutral-800 select-none", children: [
14
+ /* @__PURE__ */ r(
15
+ "input",
16
+ {
17
+ "data-qa": s,
18
+ id: t,
19
+ name: i,
20
+ type: "checkbox",
21
+ required: a,
22
+ className: "peer sr-only",
23
+ ...n
24
+ }
25
+ ),
14
26
  /* @__PURE__ */ r(
15
27
  "div",
16
28
  {
17
- className: m(
29
+ className: c(
18
30
  "flex h-5.5 w-5.5 items-center justify-center rounded transition-colors",
19
31
  "peer-focus-visible:ring-primary-500 peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2",
20
- !t && !e && "hover:bg-primary-200 border border-neutral-800 bg-white",
32
+ !o && !e && "hover:bg-primary-200 border border-neutral-800 bg-white",
21
33
  e && "border-primary-500 bg-primary-200 border-2",
22
- t && "border-error-500 bg-error-20 border"
34
+ o && "border-error-500 bg-error-20 border"
23
35
  ),
24
- children: e && /* @__PURE__ */ r(c, {})
36
+ children: e && /* @__PURE__ */ r(p, {})
25
37
  }
26
38
  ),
27
39
  /* @__PURE__ */ r("span", { className: "leading-tight text-neutral-800", children: l })
28
40
  ] });
29
41
  export {
30
- u as Checkbox
42
+ d as Checkbox
31
43
  };
@@ -9,6 +9,7 @@ export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'chil
9
9
  size?: ButtonSize;
10
10
  variant?: ResponsiveButtonVariant;
11
11
  iconPosition?: IconPosition;
12
+ dataQa?: string;
12
13
  }
13
14
 
14
15
  export type ButtonSize = 'small' | 'default' | 'large';
@@ -27,6 +28,7 @@ export interface ContactFormFeedbackProps {
27
28
  }
28
29
 
29
30
  export declare interface ContactFormFieldProps {
31
+ dataQa: string;
30
32
  label: string;
31
33
  id: string;
32
34
  name: string;
@@ -11,6 +11,7 @@ export declare interface ContactUsSectionProps {
11
11
  icon: ReactNode;
12
12
  helper?: string;
13
13
  url?: string;
14
+ dataQa?: string;
14
15
  }>;
15
16
  }
16
17
 
@@ -1,17 +1,17 @@
1
1
  import { jsx as l, jsxs as r } from "react/jsx-runtime";
2
- import a from "clsx";
2
+ import t from "clsx";
3
3
  import { SectionHeading as c } from "./SectionHeading.js";
4
- const d = ({ header: t, contactOptions: s }) => s.length === 0 ? null : /* @__PURE__ */ l("section", { className: "bg-neutral-25 px-4 pt-16 pb-20", children: /* @__PURE__ */ r("div", { className: "mx-auto max-w-6xl space-y-10", children: [
5
- /* @__PURE__ */ l(c, { ...t, className: "px-6" }),
6
- /* @__PURE__ */ l("div", { className: "flex flex-col items-center gap-6 sm:flex-row sm:items-start sm:justify-center", children: s.map((e) => /* @__PURE__ */ r(
4
+ const d = ({ header: s, contactOptions: a }) => a.length === 0 ? null : /* @__PURE__ */ l("section", { className: "bg-neutral-25 px-4 pt-16 pb-20", children: /* @__PURE__ */ r("div", { className: "mx-auto max-w-6xl space-y-10", children: [
5
+ /* @__PURE__ */ l(c, { ...s, className: "px-6" }),
6
+ /* @__PURE__ */ l("div", { className: "flex flex-col items-center gap-6 sm:flex-row sm:items-start sm:justify-center", children: a.map((e) => /* @__PURE__ */ r(
7
7
  "article",
8
8
  {
9
- className: a(
9
+ className: t(
10
10
  "relative flex h-36 w-52 flex-col items-center justify-center gap-4 rounded bg-white text-center shadow-sm",
11
11
  e.url && 'cursor-pointer [&_a]:before:absolute [&_a]:before:inset-0 [&_a]:before:content-[""]'
12
12
  ),
13
13
  children: [
14
- e.url && /* @__PURE__ */ l("a", { href: e.url, children: /* @__PURE__ */ l("span", { className: "sr-only", children: e.title }) }),
14
+ e.url && /* @__PURE__ */ l("a", { "data-qa": e.dataQa, href: e.url, children: /* @__PURE__ */ l("span", { className: "sr-only", children: e.title }) }),
15
15
  /* @__PURE__ */ l("div", { className: "bg-primary-50 rounded-full p-3", children: e.icon }),
16
16
  /* @__PURE__ */ r("div", { className: "flex flex-col items-center justify-center", children: [
17
17
  /* @__PURE__ */ l("p", { className: "text-neutral-800", children: e.title }),
@@ -9,6 +9,7 @@ export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'chil
9
9
  size?: ButtonSize;
10
10
  variant?: ResponsiveButtonVariant;
11
11
  iconPosition?: IconPosition;
12
+ dataQa?: string;
12
13
  }
13
14
 
14
15
  export type ButtonSize = 'small' | 'default' | 'large';
@@ -27,6 +28,7 @@ export interface ContactFormFeedbackProps {
27
28
  }
28
29
 
29
30
  export interface ContactFormFieldProps {
31
+ dataQa: string;
30
32
  label: string;
31
33
  id: string;
32
34
  name: string;
@@ -7,6 +7,7 @@ export declare interface ConversionSectionProps {
7
7
  icon: ReactNode;
8
8
  title: string;
9
9
  uploadZone: UploadZoneProps;
10
+ dataQa?: string;
10
11
  }
11
12
 
12
13
  export interface UploadZoneProps {
@@ -17,5 +18,6 @@ export interface UploadZoneProps {
17
18
  containerClassName?: string;
18
19
  onAddDocument?: () => void;
19
20
  onDropDocument?: (e: React.DragEvent<HTMLDivElement>) => void;
21
+ dataQa?: string;
20
22
  }
21
23
 
@@ -1,12 +1,12 @@
1
1
  import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
- import { UploadZone as s } from "./UploadZone.js";
3
- const n = ({ icon: a, title: t, uploadZone: r }) => /* @__PURE__ */ e("section", { className: "bg-white px-6 py-8 xl:px-0", children: /* @__PURE__ */ l("div", { className: "bg-ratafia mx-auto flex w-full max-w-300 shrink flex-col gap-6 rounded-2xl p-6 md:flex-row md:items-center md:gap-10 md:p-8 lg:pe-10 lg:pl-16 xl:items-start xl:gap-20", children: [
2
+ import { UploadZone as m } from "./UploadZone.js";
3
+ const x = ({ icon: a, title: t, uploadZone: r, dataQa: s }) => /* @__PURE__ */ e("section", { className: "bg-white px-6 py-8 xl:px-0", children: /* @__PURE__ */ l("div", { className: "bg-ratafia mx-auto flex w-full max-w-300 shrink flex-col gap-6 rounded-2xl p-6 md:flex-row md:items-center md:gap-10 md:p-8 lg:pe-10 lg:pl-16 xl:items-start xl:gap-20", children: [
4
4
  /* @__PURE__ */ l("div", { className: "flex flex-col gap-4", children: [
5
5
  /* @__PURE__ */ e("span", { className: "xl:pt-12", children: a }),
6
6
  /* @__PURE__ */ e("h4", { className: "text-super-large md:text-extra-large font-bold text-white", children: t })
7
7
  ] }),
8
- /* @__PURE__ */ e(s, { ...r, containerClassName: "md:min-w-77 lg:min-w-115" })
8
+ /* @__PURE__ */ e(m, { dataQa: s, ...r, containerClassName: "md:min-w-77 lg:min-w-115" })
9
9
  ] }) });
10
10
  export {
11
- n as ConversionSection
11
+ x as ConversionSection
12
12
  };
@@ -7,6 +7,7 @@ export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'chil
7
7
  size?: ButtonSize;
8
8
  variant?: ResponsiveButtonVariant;
9
9
  iconPosition?: IconPosition;
10
+ dataQa?: string;
10
11
  }
11
12
 
12
13
  export type ButtonSize = 'small' | 'default' | 'large';
@@ -129,5 +129,6 @@ export interface UploadZoneProps {
129
129
  containerClassName?: string;
130
130
  onAddDocument?: () => void;
131
131
  onDropDocument?: (e: React.DragEvent<HTMLDivElement>) => void;
132
+ dataQa?: string;
132
133
  }
133
134
 
@@ -20,6 +20,7 @@ export declare interface FooterProps {
20
20
  phoneNumber: string;
21
21
  contactHoursText: string;
22
22
  contactHours: string;
23
+ dataQa?: string;
23
24
  };
24
25
  logoGray?: ReactNode;
25
26
  socialLinks?: ReactNode[];
@@ -1,7 +1,7 @@
1
1
  import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
2
  import "react";
3
3
  import { PhoneButton as o } from "./PhoneButton.js";
4
- import { FooterNav as f } from "./FooterNav.js";
4
+ import { FooterNav as h } from "./FooterNav.js";
5
5
  const g = ({
6
6
  nav: r,
7
7
  contactInfo: t,
@@ -14,13 +14,13 @@ const g = ({
14
14
  languageSelector: s
15
15
  }) => /* @__PURE__ */ l("footer", { className: "text-neutral-25 max-w-full overflow-x-hidden", children: [
16
16
  /* @__PURE__ */ e("div", { className: "bg-primary-900", children: /* @__PURE__ */ l("div", { className: "mx-auto flex w-full max-w-300 flex-col items-start gap-8 px-6 py-10 md:grid md:grid-cols-3 lg:flex lg:flex-row lg:justify-between", children: [
17
- r.map((a) => /* @__PURE__ */ e(f, { ...a }, a.title)),
17
+ r.map((a) => /* @__PURE__ */ e(h, { ...a }, a.title)),
18
18
  /* @__PURE__ */ l("div", { className: "flex flex-col gap-6 max-sm:w-full md:contents lg:flex", children: [
19
19
  /* @__PURE__ */ l("div", { className: "", children: [
20
20
  /* @__PURE__ */ e("div", { className: "mb-8 xl:hidden", children: !!s && /* @__PURE__ */ e("div", { className: "language-selector-mobile-container", children: s }) }),
21
21
  /* @__PURE__ */ l("div", { children: [
22
22
  /* @__PURE__ */ e("p", { className: "text-small hidden font-bold text-white sm:block", children: t.phoneNumber }),
23
- /* @__PURE__ */ e("div", { className: "mb-2 w-full text-center sm:hidden", children: /* @__PURE__ */ e(o, { phoneNumber: t.phoneNumber }) }),
23
+ /* @__PURE__ */ e("div", { className: "mb-2 w-full text-center sm:hidden", children: /* @__PURE__ */ e(o, { dataQa: t.dataQa, phoneNumber: t.phoneNumber }) }),
24
24
  /* @__PURE__ */ l("p", { className: "text-neutral-25 text-medium md:text-small text-center md:text-left", children: [
25
25
  t.contactHoursText,
26
26
  " ",
@@ -34,6 +34,7 @@ export interface MobileContactInfo {
34
34
  phoneNumber: string;
35
35
  contactHoursLabel?: string;
36
36
  contactHours?: string;
37
+ dataQa?: string;
37
38
  }
38
39
 
39
40
  export interface MobileMenuProps {
@@ -27,5 +27,6 @@ export interface UploadZoneProps {
27
27
  containerClassName?: string;
28
28
  onAddDocument?: () => void;
29
29
  onDropDocument?: (e: React.DragEvent<HTMLDivElement>) => void;
30
+ dataQa?: string;
30
31
  }
31
32
 
@@ -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>;
@@ -11,46 +11,46 @@ import { IntroSection as A } from "./IntroSection.js";
11
11
  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
- const U = (a) => {
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: [
16
- /* @__PURE__ */ e("h2", { className: "font-lora text-[2.05rem] leading-[1.15] font-bold text-neutral-800", children: a.title }),
17
- /* @__PURE__ */ e("div", { className: "text-small space-y-3 text-neutral-700", children: /* @__PURE__ */ e(i, { variant: "legal", content: a.bodyMarkdown }) })
18
- ] }), t = /* @__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: a.imageUrl, alt: a.imageAlt }) });
19
- return { firstColumn: m, secondColumn: t };
20
- }, K = ({ hero: a, processSteps: m, lawGenius: t, resources: n }) => {
21
- const d = a.introMarkdown.trim().length > 0, p = a.closingMarkdown.trim().length > 0, x = n.supportBodyMarkdown.trim().length > 0, g = t.belowStepsMarkdown.trim().length > 0, { examples: s } = n, f = /* @__PURE__ */ e(
14
+ const U = (t) => {
15
+ const m = /* @__PURE__ */ r("div", { className: "min-w-0 space-y-4 text-neutral-800 lg:basis-[47%]", children: [
16
+ /* @__PURE__ */ e("h2", { className: "font-lora text-[2.05rem] leading-[1.15] font-bold text-neutral-800", children: t.title }),
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 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",
27
- children: /* @__PURE__ */ e("a", { href: t.cta.href, className: b, children: t.cta.label })
26
+ className: "text-medium w-full justify-center !rounded-md font-bold lg:w-auto",
27
+ children: /* @__PURE__ */ e("a", { href: a.cta.href, className: b, children: a.cta.label })
28
28
  }
29
29
  );
30
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
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: a.eyebrow }),
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
- /* @__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: a.title })
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 })
38
38
  ] }),
39
39
  /* @__PURE__ */ e(
40
40
  A,
41
41
  {
42
42
  className: "bg-transparent",
43
43
  containerClassName: "w-full !max-w-none flex-col gap-10 !px-0 !py-0 lg:flex-row lg:items-stretch",
44
- image: /* @__PURE__ */ e(S, { src: a.imageUrl, alt: a.imageAlt, priority: a.imagePriority }),
44
+ image: /* @__PURE__ */ e(S, { src: t.imageUrl, alt: t.imageAlt, priority: t.imagePriority }),
45
45
  cta: {
46
46
  size: "large",
47
47
  variant: "primary-green",
48
48
  className: "text-medium mt-8 w-full justify-center font-bold",
49
- children: /* @__PURE__ */ e("a", { href: a.cta.href, className: k, children: a.cta.label })
49
+ children: /* @__PURE__ */ e("a", { href: t.cta.href, className: k, children: t.cta.label })
50
50
  },
51
51
  children: /* @__PURE__ */ r("div", { className: "text-medium space-y-4 [&_ul]:my-8 [&_ul]:list-disc [&_ul]:pl-[1.2rem]", children: [
52
- d && /* @__PURE__ */ e(i, { variant: "legal", content: a.introMarkdown }),
53
- /* @__PURE__ */ e("ul", { className: "text-medium space-y-3", children: a.bullets.map((l) => /* @__PURE__ */ r("li", { className: "flex items-start gap-2", children: [
52
+ d && /* @__PURE__ */ e(i, { variant: "legal", content: t.introMarkdown }),
53
+ /* @__PURE__ */ e("ul", { className: "text-medium space-y-3", children: t.bullets.map((l) => /* @__PURE__ */ r("li", { className: "flex items-start gap-2", children: [
54
54
  /* @__PURE__ */ e("span", { className: "bg-primary-600 mt-1 h-2.5 w-2.5", "aria-hidden": !0 }),
55
55
  /* @__PURE__ */ r("span", { children: [
56
56
  /* @__PURE__ */ r("strong", { children: [
@@ -60,7 +60,7 @@ const U = (a) => {
60
60
  l.text
61
61
  ] })
62
62
  ] }, l.id)) }),
63
- p && /* @__PURE__ */ e(i, { variant: "legal", content: a.closingMarkdown })
63
+ p && /* @__PURE__ */ e(i, { variant: "legal", content: t.closingMarkdown })
64
64
  ] })
65
65
  }
66
66
  )
@@ -73,8 +73,7 @@ const U = (a) => {
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
@@ -85,9 +84,9 @@ const U = (a) => {
85
84
  /* @__PURE__ */ e(
86
85
  M,
87
86
  {
88
- title: t.title,
89
- content: t.contentMarkdown,
90
- stepsSlot: /* @__PURE__ */ e(w, { children: t.steps.map((l) => /* @__PURE__ */ e(
87
+ title: a.title,
88
+ content: a.contentMarkdown,
89
+ stepsSlot: /* @__PURE__ */ e(w, { children: a.steps.map((l) => /* @__PURE__ */ e(
91
90
  I,
92
91
  {
93
92
  title: l.title,
@@ -101,14 +100,14 @@ const U = (a) => {
101
100
  i,
102
101
  {
103
102
  variant: "ratafia",
104
- content: t.belowStepsMarkdown,
103
+ content: a.belowStepsMarkdown,
105
104
  className: y
106
105
  }
107
106
  ) : null,
108
107
  cta: f,
109
108
  skipCtaWrapper: !0,
110
- image: /* @__PURE__ */ e(B, { src: t.imageUrl, alt: t.imageAlt }),
111
- sectionClassName: t.sectionClassName ?? "bg-neutral-25 px-6 pt-16 pb-12 sm:px-10 lg:px-ds-10xl"
109
+ image: /* @__PURE__ */ e(B, { src: a.imageUrl, alt: a.imageAlt }),
110
+ sectionClassName: a.sectionClassName ?? "bg-neutral-25 px-6 pt-16 pb-12 sm:px-10 lg:px-ds-10xl"
112
111
  }
113
112
  ),
114
113
  /* @__PURE__ */ e(
@@ -116,23 +115,23 @@ const U = (a) => {
116
115
  {
117
116
  className: "bg-neutral-25 lg:px-ds-10xl px-6 py-12 sm:px-10",
118
117
  containerClassName: "!mx-auto !w-full !max-w-6xl !items-start !gap-8 !px-0 !py-0 md:!gap-10 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 }) }),
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 }) }),
120
119
  secondColumn: /* @__PURE__ */ r("div", { className: "w-full space-y-4 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: [
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 = (a) => {
141
140
  ] });
142
141
  };
143
142
  export {
144
- K as HowItWorksTemplate
143
+ J as HowItWorksTemplate
145
144
  };
@@ -4,6 +4,7 @@ import { HTMLInputTypeAttribute } from 'react';
4
4
  export declare const Input: FC<InputProps>;
5
5
 
6
6
  export declare interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
7
+ dataQa?: string;
7
8
  label: string;
8
9
  id: string;
9
10
  name: string;