@npm_leadtech/legal-contracts-ui 0.181.2 → 0.182.0

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.
@@ -4,7 +4,7 @@ import r from "clsx";
4
4
  //#region lib/components/atoms/Checkbox.tsx
5
5
  var i = ({ dataQa: i, id: a, name: o, required: s = !1, children: c, checked: l, error: u = !1, ...d }) => /* @__PURE__ */ n("label", {
6
6
  htmlFor: a,
7
- className: "text-medium flex cursor-pointer items-start gap-2 text-neutral-800 select-none",
7
+ className: "text-medium flex cursor-pointer items-center gap-2 text-neutral-800 select-none",
8
8
  children: [
9
9
  /* @__PURE__ */ t("input", {
10
10
  id: a,
@@ -16,11 +16,11 @@ var i = ({ dataQa: i, id: a, name: o, required: s = !1, children: c, checked: l,
16
16
  }),
17
17
  /* @__PURE__ */ t("div", {
18
18
  "data-qa": i,
19
- className: r("flex h-5.5 w-5.5 shrink-0 items-center justify-center rounded transition-colors", "peer-focus-visible:ring-primary-500 peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2", !u && !l && "hover:bg-primary-200 border border-neutral-800 bg-white", l && "border-primary-500 bg-primary-200 border-2", u && "border-error-500 bg-error-20 border"),
19
+ className: r("flex h-5.5 w-5.5 items-center justify-center rounded transition-colors", "peer-focus-visible:ring-primary-500 peer-focus-visible:ring-2 peer-focus-visible:ring-offset-2", !u && !l && "hover:bg-primary-200 border border-neutral-800 bg-white", l && "border-primary-500 bg-primary-200 border-2", u && "border-error-500 bg-error-20 border"),
20
20
  children: l && /* @__PURE__ */ t(e, {})
21
21
  }),
22
22
  /* @__PURE__ */ t("span", {
23
- className: "min-w-0 leading-tight text-neutral-800",
23
+ className: "leading-tight text-neutral-800",
24
24
  children: c
25
25
  })
26
26
  ]
@@ -29,5 +29,7 @@ export declare interface FooterProps {
29
29
  copyrightText?: string;
30
30
  trustPilot?: ReactNode;
31
31
  languageSelector?: ReactNode;
32
+ linksShow?: boolean;
33
+ cookiesShow?: boolean;
32
34
  }
33
35
 
@@ -3,9 +3,9 @@ import { FooterNav as t } from "./FooterNav.js";
3
3
  import "react";
4
4
  import { jsx as n, jsxs as r } from "react/jsx-runtime";
5
5
  //#region lib/components/organisms/Footer.tsx
6
- var i = ({ nav: i, contactInfo: a, logoGray: o, socialLinks: s, legalLinks: c, disclaimerText: l, copyrightText: u, trustPilot: d, languageSelector: f }) => /* @__PURE__ */ r("footer", {
6
+ var i = ({ nav: i, contactInfo: a, logoGray: o, socialLinks: s, legalLinks: c, disclaimerText: l, copyrightText: u, trustPilot: d, languageSelector: f, linksShow: p = !0, cookiesShow: m = !0 }) => /* @__PURE__ */ r("footer", {
7
7
  className: "text-neutral-25 max-w-full overflow-x-hidden",
8
- children: [/* @__PURE__ */ n("div", {
8
+ children: [p && /* @__PURE__ */ n("div", {
9
9
  className: "bg-primary-900",
10
10
  children: /* @__PURE__ */ r("div", {
11
11
  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",
@@ -46,7 +46,7 @@ var i = ({ nav: i, contactInfo: a, logoGray: o, socialLinks: s, legalLinks: c, d
46
46
  })]
47
47
  })]
48
48
  })
49
- }), /* @__PURE__ */ n("div", {
49
+ }), m && /* @__PURE__ */ n("div", {
50
50
  className: "bg-neutral-900 px-6 py-8 text-neutral-400",
51
51
  children: /* @__PURE__ */ r("div", {
52
52
  className: "mx-auto flex w-full max-w-300 flex-col gap-6",
@@ -4,15 +4,11 @@ import { ReactNode } from 'react';
4
4
  export declare const JumboDocs: FC<JumboDocsProps>;
5
5
 
6
6
  export declare interface JumboDocsProps {
7
- trustedBadge?: TrustedBadgeProps;
7
+ trustedBadge?: ReactNode;
8
8
  imagePreview: ReactNode | null;
9
9
  title: string;
10
10
  freeDocTexts: string[];
11
11
  pdfDownload: ReactNode;
12
12
  wordDownload: ReactNode;
13
13
  }
14
-
15
- export interface TrustedBadgeProps {
16
- children: ReactNode;
17
- }
18
14
 
@@ -1,80 +1,79 @@
1
1
  "use client";
2
2
  "use client";
3
3
  import { LinkWrapper as e } from "./LinkWrapper.js";
4
- import { TrustedBadge as t } from "./TrustedBadge.js";
5
- import { useEffect as n, useRef as r, useState as i } from "react";
6
- import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
4
+ import { useEffect as t, useRef as n, useState as r } from "react";
5
+ import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
7
6
  //#region lib/components/organisms/JumboDocs.tsx
8
- var c = ({ trustedBadge: c, imagePreview: l, freeDocTexts: u, title: d, pdfDownload: f, wordDownload: p }) => {
9
- let [m, h] = i(!1), g = r(null);
10
- return n(() => {
11
- let e = g.current;
7
+ var s = ({ trustedBadge: s, imagePreview: c, freeDocTexts: l, title: u, pdfDownload: d, wordDownload: f }) => {
8
+ let [p, m] = r(!1), h = n(null);
9
+ return t(() => {
10
+ let e = h.current;
12
11
  if (!e) return;
13
12
  let t = new IntersectionObserver(([e]) => {
14
- h(!e.isIntersecting);
13
+ m(!e.isIntersecting);
15
14
  }, { threshold: 0 });
16
15
  return t.observe(e), () => {
17
16
  t.disconnect();
18
17
  };
19
- }, []), /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("section", {
18
+ }, []), /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ a("section", {
20
19
  className: "bg-neutral-25 pt-8 text-neutral-800 sm:px-6 lg:px-8 xl:px-30",
21
- children: /* @__PURE__ */ s("div", {
22
- ref: g,
20
+ children: /* @__PURE__ */ o("div", {
21
+ ref: h,
23
22
  className: "relative mx-auto flex max-w-300 flex-col items-center justify-center gap-8 rounded bg-white px-6 py-8 shadow-md sm:px-4 md:flex-row lg:px-14",
24
23
  children: [
25
- c && /* @__PURE__ */ o(t, { ...c }),
26
- /* @__PURE__ */ o("div", {
24
+ s,
25
+ /* @__PURE__ */ a("div", {
27
26
  className: "border border-neutral-200 shadow",
28
- children: l
27
+ children: c
29
28
  }),
30
- /* @__PURE__ */ s("div", {
29
+ /* @__PURE__ */ o("div", {
31
30
  className: "flex flex-col gap-8 self-start",
32
- children: [/* @__PURE__ */ s("div", {
31
+ children: [/* @__PURE__ */ o("div", {
33
32
  className: "flex flex-col gap-4",
34
33
  children: [
35
- /* @__PURE__ */ o("p", {
34
+ /* @__PURE__ */ a("p", {
36
35
  className: "text-big md:text-large font-bold",
37
- children: d
36
+ children: u
38
37
  }),
39
- /* @__PURE__ */ o("span", { className: "h-px w-full bg-neutral-200" }),
40
- u.length > 0 && /* @__PURE__ */ o("ul", {
38
+ /* @__PURE__ */ a("span", { className: "h-px w-full bg-neutral-200" }),
39
+ l.length > 0 && /* @__PURE__ */ a("ul", {
41
40
  className: "flex flex-col gap-4 md:gap-8",
42
- children: u.map((e) => /* @__PURE__ */ s("li", {
41
+ children: l.map((e) => /* @__PURE__ */ o("li", {
43
42
  className: "text-small flex gap-2",
44
- children: [/* @__PURE__ */ o("span", {
43
+ children: [/* @__PURE__ */ a("span", {
45
44
  className: "text-primary-500",
46
45
  children: "•"
47
46
  }), e]
48
47
  }, e))
49
48
  })
50
49
  ]
51
- }), /* @__PURE__ */ s("div", {
50
+ }), /* @__PURE__ */ o("div", {
52
51
  className: "flex w-full gap-4",
53
- children: [/* @__PURE__ */ o(e, {
52
+ children: [/* @__PURE__ */ a(e, {
54
53
  className: "w-full md:w-26.25",
55
54
  variant: "secondary-black",
56
- children: f
57
- }), /* @__PURE__ */ o(e, {
55
+ children: d
56
+ }), /* @__PURE__ */ a(e, {
58
57
  className: "w-full md:w-26.25",
59
58
  variant: "secondary-black",
60
- children: p
59
+ children: f
61
60
  })]
62
61
  })]
63
62
  })
64
63
  ]
65
64
  })
66
- }), m && /* @__PURE__ */ s("div", {
65
+ }), p && /* @__PURE__ */ o("div", {
67
66
  className: "fixed bottom-0 left-0 z-50 flex w-full gap-4 bg-white px-6 py-4 shadow sm:hidden",
68
- children: [/* @__PURE__ */ o(e, {
67
+ children: [/* @__PURE__ */ a(e, {
69
68
  className: "w-full",
70
69
  variant: "secondary-black",
71
- children: f
72
- }), /* @__PURE__ */ o(e, {
70
+ children: d
71
+ }), /* @__PURE__ */ a(e, {
73
72
  className: "w-full",
74
73
  variant: "secondary-black",
75
- children: p
74
+ children: f
76
75
  })]
77
76
  })] });
78
77
  };
79
78
  //#endregion
80
- export { c as JumboDocs };
79
+ export { s as JumboDocs };
@@ -1,9 +1,7 @@
1
1
  import { JSX } from 'react';
2
2
  import { ReactNode } from 'react';
3
3
 
4
- export declare const Modal: ({ trigger, children, isOpen, setIsOpen, showClose, onTrigger, overlayVariant }: ModalProps) => JSX.Element;
5
-
6
- export declare type ModalOverlayVariant = 'primary' | 'grey';
4
+ export declare const Modal: ({ trigger, children, isOpen, setIsOpen, showClose, onTrigger }: ModalProps) => JSX.Element;
7
5
 
8
6
  export interface ModalProps {
9
7
  trigger?: ReactNode;
@@ -12,6 +10,5 @@ export interface ModalProps {
12
10
  setIsOpen: (open: boolean) => void;
13
11
  showClose?: boolean;
14
12
  onTrigger?: () => void;
15
- overlayVariant?: ModalOverlayVariant;
16
13
  }
17
14
 
@@ -3,55 +3,51 @@
3
3
  import { CloseIcon as e } from "./CloseIcon.js";
4
4
  import { useEffect as t } from "react";
5
5
  import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
6
- import a from "clsx";
7
- import { createPortal as o } from "react-dom";
6
+ import { createPortal as a } from "react-dom";
8
7
  //#region lib/components/atoms/Modal.tsx
9
- var s = {
10
- primary: "bg-primary-900/80",
11
- grey: "bg-backdrop-grey"
12
- }, c = ({ trigger: c, children: l, isOpen: u, setIsOpen: d, showClose: f, onTrigger: p, overlayVariant: m = "primary" }) => {
13
- let h = () => {
14
- p?.(), d(!0);
15
- }, g = () => {
16
- d(!1);
8
+ var o = ({ trigger: o, children: s, isOpen: c, setIsOpen: l, showClose: u, onTrigger: d }) => {
9
+ let f = () => {
10
+ d?.(), l(!0);
11
+ }, p = () => {
12
+ l(!1);
17
13
  };
18
14
  return t(() => {
19
- if (!u) return;
15
+ if (!c) return;
20
16
  let e = document.body.style.overflow;
21
17
  return document.body.style.overflow = "hidden", () => {
22
18
  document.body.style.overflow = e;
23
19
  };
24
- }, [u]), /* @__PURE__ */ i(n, { children: [!!c && /* @__PURE__ */ r("button", {
20
+ }, [c]), /* @__PURE__ */ i(n, { children: [!!o && /* @__PURE__ */ r("button", {
25
21
  type: "button",
26
22
  "aria-label": "zoom",
27
- onClick: h,
23
+ onClick: f,
28
24
  className: "flex w-full cursor-pointer justify-center",
29
- children: c
30
- }), u && o(/* @__PURE__ */ i("div", {
25
+ children: o
26
+ }), c && a(/* @__PURE__ */ i("div", {
31
27
  role: "dialog",
32
28
  "aria-modal": "true",
33
- className: a(s[m], "fixed inset-0 z-1001"),
29
+ className: "bg-primary-900/80 fixed inset-0 z-1001 flex items-center justify-center",
34
30
  children: [/* @__PURE__ */ r("button", {
35
31
  type: "button",
36
32
  tabIndex: -1,
37
33
  "data-testid": "modal-backdrop",
38
- className: "absolute inset-0 z-0 cursor-default border-none bg-transparent p-0",
39
- onClick: g,
34
+ className: "absolute inset-0 cursor-default border-none bg-transparent p-0",
35
+ onClick: p,
40
36
  "aria-label": "Close modal"
41
37
  }), /* @__PURE__ */ r("div", {
42
- className: "pointer-events-none relative z-10 flex min-h-full w-full items-center justify-center overflow-y-auto p-6",
38
+ className: "pointer-events-none relative flex max-h-screen w-full items-start justify-center overflow-y-auto px-6 py-24",
43
39
  children: /* @__PURE__ */ i("div", {
44
40
  className: "pointer-events-auto relative",
45
- children: [f && /* @__PURE__ */ r("button", {
41
+ children: [u && /* @__PURE__ */ r("button", {
46
42
  type: "button",
47
43
  className: "absolute top-4 right-4 z-10 cursor-pointer rounded-full p-2 transition-colors hover:bg-neutral-100 focus:outline-none",
48
- onClick: g,
44
+ onClick: p,
49
45
  "aria-label": "Close",
50
46
  children: /* @__PURE__ */ r(e, {})
51
- }), l]
47
+ }), s]
52
48
  })
53
49
  })]
54
50
  }), document.body)] });
55
51
  };
56
52
  //#endregion
57
- export { c as Modal };
53
+ export { o as Modal };
@@ -25,7 +25,7 @@ export interface PreformOptionProps {
25
25
  }
26
26
 
27
27
  export declare interface PreformProps {
28
- trustedBadge: TrustedBadgeProps;
28
+ trustedBadge: ReactNode;
29
29
  cta: ReactNode;
30
30
  radioFieldData?: RadioFieldData;
31
31
  inputFieldData?: InputFieldData;
@@ -46,8 +46,4 @@ export interface TooltipsProps {
46
46
  title: string;
47
47
  content: string;
48
48
  }
49
-
50
- export interface TrustedBadgeProps {
51
- children: ReactNode;
52
- }
53
49
 
@@ -3,59 +3,58 @@
3
3
  import { Input as e } from "./Input.js";
4
4
  import { LinkWrapper as t } from "./LinkWrapper.js";
5
5
  import { PreformOption as n } from "./PreformOption.js";
6
- import { TrustedBadge as r } from "./TrustedBadge.js";
7
- import { Tooltips as i } from "./Tooltips.js";
8
- import { PreformMobile as a } from "./PreformMobile.js";
6
+ import { Tooltips as r } from "./Tooltips.js";
7
+ import { PreformMobile as i } from "./PreformMobile.js";
9
8
  import "react";
10
- import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
9
+ import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
11
10
  //#region lib/components/organisms/Preform.tsx
12
- var l = ({ trustedBadge: l, cta: u, inputFieldData: d, radioFieldData: f, tooltips: p, hasMobileRadioField: m }) => /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s("section", {
11
+ var c = ({ trustedBadge: c, cta: l, inputFieldData: u, radioFieldData: d, tooltips: f, hasMobileRadioField: p }) => /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("section", {
13
12
  className: "bg-neutral-25 hidden pt-10 text-neutral-800 sm:block sm:px-6 lg:px-8 xl:px-30",
14
- children: /* @__PURE__ */ c("div", {
13
+ children: /* @__PURE__ */ s("div", {
15
14
  className: "relative mx-auto flex max-w-300 flex-col gap-6 rounded bg-white px-6 pt-8 pb-6 shadow-md sm:items-center sm:gap-8 lg:px-26 xl:px-10",
16
15
  children: [
17
- /* @__PURE__ */ s(r, { ...l }),
18
- f?.isVisible && /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s("p", {
16
+ c,
17
+ d?.isVisible && /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("p", {
19
18
  className: "text-large font-bold",
20
- children: f.label
21
- }), /* @__PURE__ */ c("div", {
19
+ children: d.label
20
+ }), /* @__PURE__ */ s("div", {
22
21
  className: "flex w-full max-w-272 flex-wrap justify-center gap-2 sm:gap-4",
23
- children: [f.options.map((e) => /* @__PURE__ */ s("div", {
22
+ children: [d.options.map((e) => /* @__PURE__ */ o("div", {
24
23
  className: "w-[calc(25%-12px)] lg:w-[calc(20%-13px)] xl:w-[calc(16.66%-14px)]",
25
- children: /* @__PURE__ */ s(n, {
24
+ children: /* @__PURE__ */ o(n, {
26
25
  ...e,
27
- selected: e.value === f.radioSelected,
28
- onClick: f.onClick
26
+ selected: e.value === d.radioSelected,
27
+ onClick: d.onClick
29
28
  })
30
- }, e.value)), d?.isVisible && /* @__PURE__ */ s("div", {
29
+ }, e.value)), u?.isVisible && /* @__PURE__ */ o("div", {
31
30
  className: "mt-4 flex basis-full justify-center md:mt-0",
32
- children: /* @__PURE__ */ s(e, {
33
- id: d.id,
34
- label: d.label,
35
- name: d.name,
36
- placeholder: d.placeholder,
37
- value: d.value,
38
- onInputChange: d.onChange,
39
- "data-qa": d.dataQa
31
+ children: /* @__PURE__ */ o(e, {
32
+ id: u.id,
33
+ label: u.label,
34
+ name: u.name,
35
+ placeholder: u.placeholder,
36
+ value: u.value,
37
+ onInputChange: u.onChange,
38
+ "data-qa": u.dataQa
40
39
  })
41
- }, d.name)]
40
+ }, u.name)]
42
41
  })] }),
43
- /* @__PURE__ */ s(t, {
42
+ /* @__PURE__ */ o(t, {
44
43
  variant: "primary-green",
45
- children: u
44
+ children: l
46
45
  }),
47
- p.length > 0 && /* @__PURE__ */ s("div", {
46
+ f.length > 0 && /* @__PURE__ */ o("div", {
48
47
  className: "flex flex-col gap-8",
49
- children: p.map((e) => /* @__PURE__ */ s(i, { ...e }, e.title))
48
+ children: f.map((e) => /* @__PURE__ */ o(r, { ...e }, e.title))
50
49
  })
51
50
  ]
52
51
  })
53
- }), /* @__PURE__ */ s(a, {
54
- cta: u,
55
- trustedBadge: l,
56
- inputFieldData: d,
57
- radioFieldData: f,
58
- hasMobileRadioField: m
52
+ }), /* @__PURE__ */ o(i, {
53
+ cta: l,
54
+ trustedBadge: c,
55
+ inputFieldData: u,
56
+ radioFieldData: d,
57
+ hasMobileRadioField: p
59
58
  })] });
60
59
  //#endregion
61
- export { l as Preform };
60
+ export { c as Preform };
@@ -15,7 +15,7 @@ export type InputFieldData = {
15
15
  export declare const PreformMobile: FC<PreformMobileProps>;
16
16
 
17
17
  export declare interface PreformMobileProps {
18
- trustedBadge: TrustedBadgeProps;
18
+ trustedBadge: ReactNode;
19
19
  radioFieldData?: RadioFieldData;
20
20
  inputFieldData?: InputFieldData;
21
21
  cta: ReactNode;
@@ -40,8 +40,4 @@ export type RadioFieldData = {
40
40
  radioSelected: string;
41
41
  onClick: (str: string) => void;
42
42
  };
43
-
44
- export interface TrustedBadgeProps {
45
- children: ReactNode;
46
- }
47
43
 
@@ -2,110 +2,109 @@ import { Input as e } from "./Input.js";
2
2
  import { Select as t } from "./Select.js";
3
3
  import { LinkWrapper as n } from "./LinkWrapper.js";
4
4
  import { PreformOption as r } from "./PreformOption.js";
5
- import { TrustedBadge as i } from "./TrustedBadge.js";
6
- import { useEffect as a, useRef as o, useState as s } from "react";
7
- import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
5
+ import { useEffect as i, useRef as a, useState as o } from "react";
6
+ import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
8
7
  //#region lib/components/organisms/PreformMobile.tsx
9
- var d = ({ radioFieldData: d, inputFieldData: f, cta: p, trustedBadge: m, hasMobileRadioField: h }) => {
10
- let [g, _] = s(!1), v = o(null);
11
- a(() => {
12
- let e = v.current;
8
+ var u = ({ radioFieldData: u, inputFieldData: d, cta: f, trustedBadge: p, hasMobileRadioField: m }) => {
9
+ let [h, g] = o(!1), _ = a(null);
10
+ i(() => {
11
+ let e = _.current;
13
12
  if (!e) return;
14
13
  let t = new IntersectionObserver(([e]) => {
15
- _(!e.isIntersecting);
14
+ g(!e.isIntersecting);
16
15
  }, { threshold: 0 });
17
16
  return t.observe(e), () => {
18
17
  t.disconnect();
19
18
  };
20
19
  }, []);
21
- let y = (e) => {
22
- if (!d?.isVisible) return null;
23
- let n = h && !e, i = `${d.name}-${e ? "sticky" : "mobile"}`;
24
- return n ? /* @__PURE__ */ l("div", {
20
+ let v = (e) => {
21
+ if (!u?.isVisible) return null;
22
+ let n = m && !e, i = `${u.name}-${e ? "sticky" : "mobile"}`;
23
+ return n ? /* @__PURE__ */ c("div", {
25
24
  className: "flex w-full flex-wrap justify-center gap-2",
26
- children: d.options.map((e) => /* @__PURE__ */ l("div", {
25
+ children: u.options.map((e) => /* @__PURE__ */ c("div", {
27
26
  className: "w-[calc(50%-4px)]",
28
- children: /* @__PURE__ */ l(r, {
27
+ children: /* @__PURE__ */ c(r, {
29
28
  ...e,
30
- selected: e.value === d.radioSelected,
31
- onClick: d.onClick
29
+ selected: e.value === u.radioSelected,
30
+ onClick: u.onClick
32
31
  })
33
32
  }, e.value))
34
- }) : /* @__PURE__ */ l(t, {
33
+ }) : /* @__PURE__ */ c(t, {
35
34
  id: i,
36
- name: d.name,
37
- value: d.radioSelected,
38
- options: d.options,
35
+ name: u.name,
36
+ value: u.radioSelected,
37
+ options: u.options,
39
38
  containerClassName: "w-full",
40
39
  onChange: (e) => {
41
- d.onClick(e.target.value);
40
+ u.onClick(e.target.value);
42
41
  }
43
42
  });
44
- }, b = (t) => /* @__PURE__ */ u("div", {
45
- className: `flex flex-col bg-white px-6 pb-4 ${t ? "border-t border-neutral-100 pt-4 shadow-md" : ""}`,
43
+ }, y = (t) => /* @__PURE__ */ l("div", {
44
+ className: `flex flex-col bg-white px-6 ${t ? "border-t border-neutral-100 pt-4 pb-4 shadow-md" : "pb-6"}`,
46
45
  children: [
47
- h && !t ? /* @__PURE__ */ l("p", {
48
- className: "text-small mb-4 font-bold text-neutral-800",
49
- children: d?.label
50
- }) : /* @__PURE__ */ l("label", {
51
- htmlFor: `${d?.name ?? ""}-${t ? "sticky" : "mobile"}`,
52
- className: "text-small mb-4 font-bold text-neutral-800",
53
- children: d?.label
46
+ m && !t ? /* @__PURE__ */ c("p", {
47
+ className: "text-small mb-6 font-bold text-neutral-800",
48
+ children: u?.label
49
+ }) : /* @__PURE__ */ c("label", {
50
+ htmlFor: `${u?.name ?? ""}-${t ? "sticky" : "mobile"}`,
51
+ className: `text-small font-bold text-neutral-800 ${t ? "mb-4" : "mb-6"}`,
52
+ children: u?.label
54
53
  }),
55
- /* @__PURE__ */ u("div", {
56
- className: `flex gap-4 ${t ? "flex-row items-center" : "flex-col"}`,
54
+ /* @__PURE__ */ l("div", {
55
+ className: `flex ${t ? "flex-row items-center gap-4" : "flex-col gap-6"}`,
57
56
  children: [
58
- y(t),
59
- f?.isVisible && !t && /* @__PURE__ */ l("div", {
57
+ v(t),
58
+ d?.isVisible && !t && /* @__PURE__ */ c("div", {
60
59
  className: "flex justify-center",
61
- children: /* @__PURE__ */ l(e, {
60
+ children: /* @__PURE__ */ c(e, {
62
61
  containerClassName: "w-full text-small",
63
- id: `${f.id}-mobile`,
64
- label: f.label,
65
- name: `${f.name}-mobile`,
66
- placeholder: f.placeholder,
67
- value: f.value,
68
- onInputChange: f.onChange
62
+ id: `${d.id}-mobile`,
63
+ label: d.label,
64
+ name: `${d.name}-mobile`,
65
+ placeholder: d.placeholder,
66
+ value: d.value,
67
+ onInputChange: d.onChange
69
68
  })
70
- }, f.name),
71
- /* @__PURE__ */ l(n, {
69
+ }, d.name),
70
+ /* @__PURE__ */ c(n, {
72
71
  variant: "primary-green",
73
72
  className: `text-small ${t ? "w-fit text-nowrap" : "w-full"}`,
74
- children: p
73
+ children: f
75
74
  })
76
75
  ]
77
76
  }),
78
- f?.isVisible && t && /* @__PURE__ */ l("div", {
77
+ d?.isVisible && t && /* @__PURE__ */ c("div", {
79
78
  className: "mt-4 flex w-full justify-center",
80
- children: /* @__PURE__ */ l(e, {
79
+ children: /* @__PURE__ */ c(e, {
81
80
  containerClassName: "w-full text-small",
82
- id: `${f.id}-mobile-sticky`,
83
- label: f.label,
84
- name: `${f.name}-mobile-sticky`,
85
- placeholder: f.placeholder,
86
- value: f.value,
87
- onInputChange: f.onChange
81
+ id: `${d.id}-mobile-sticky`,
82
+ label: d.label,
83
+ name: `${d.name}-mobile-sticky`,
84
+ placeholder: d.placeholder,
85
+ value: d.value,
86
+ onInputChange: d.onChange
88
87
  })
89
- }, f.name)
88
+ }, d.name)
90
89
  ]
91
90
  });
92
- return /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l("section", {
93
- className: "bg-neutral-25 pt-10 text-neutral-800 sm:hidden",
94
- children: /* @__PURE__ */ u("div", {
95
- ref: v,
91
+ return /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ c("section", {
92
+ className: "bg-neutral-25 pt-0 text-neutral-800 sm:hidden",
93
+ children: /* @__PURE__ */ l("div", {
94
+ ref: _,
96
95
  className: "relative flex flex-col rounded bg-white pt-8 shadow",
97
- children: [/* @__PURE__ */ l("div", {
96
+ children: [/* @__PURE__ */ c("div", {
98
97
  className: "px-6",
99
- children: /* @__PURE__ */ l(i, { ...m })
100
- }), /* @__PURE__ */ l("div", {
101
- className: g ? "hidden" : "block",
102
- children: b(!1)
98
+ children: p
99
+ }), /* @__PURE__ */ c("div", {
100
+ className: h ? "hidden" : "block",
101
+ children: y(!1)
103
102
  })]
104
103
  })
105
- }), g && /* @__PURE__ */ l("div", {
104
+ }), h && /* @__PURE__ */ c("div", {
106
105
  className: "fixed bottom-0 left-0 z-50 w-full sm:hidden",
107
- children: b(!0)
106
+ children: y(!0)
108
107
  })] });
109
108
  };
110
109
  //#endregion
111
- export { d as PreformMobile };
110
+ export { u as PreformMobile };
@@ -36,7 +36,7 @@ export interface PreformOptionProps {
36
36
  }
37
37
 
38
38
  export interface PreformProps {
39
- trustedBadge: TrustedBadgeProps;
39
+ trustedBadge: ReactNode;
40
40
  cta: ReactNode;
41
41
  radioFieldData?: RadioFieldData;
42
42
  inputFieldData?: InputFieldData;
@@ -65,8 +65,4 @@ export interface TooltipsProps {
65
65
  title: string;
66
66
  content: string;
67
67
  }
68
-
69
- export interface TrustedBadgeProps {
70
- children: ReactNode;
71
- }
72
68
 
@@ -94,7 +94,7 @@ export type InputFieldData = {
94
94
  };
95
95
 
96
96
  export interface JumboDocsProps {
97
- trustedBadge?: TrustedBadgeProps;
97
+ trustedBadge?: ReactNode;
98
98
  imagePreview: ReactNode | null;
99
99
  title: string;
100
100
  freeDocTexts: string[];
@@ -124,7 +124,7 @@ export interface PreformOptionProps {
124
124
  }
125
125
 
126
126
  export interface PreformProps {
127
- trustedBadge: TrustedBadgeProps;
127
+ trustedBadge: ReactNode;
128
128
  cta: ReactNode;
129
129
  radioFieldData?: RadioFieldData;
130
130
  inputFieldData?: InputFieldData;
@@ -201,10 +201,6 @@ export interface TooltipsProps {
201
201
  content: string;
202
202
  }
203
203
 
204
- export interface TrustedBadgeProps {
205
- children: ReactNode;
206
- }
207
-
208
204
  export interface TryNowSectionProps {
209
205
  title: string;
210
206
  benefits: string[];
@@ -504,6 +504,8 @@ export declare interface FooterProps {
504
504
  copyrightText?: string;
505
505
  trustPilot?: ReactNode;
506
506
  languageSelector?: ReactNode;
507
+ linksShow?: boolean;
508
+ cookiesShow?: boolean;
507
509
  }
508
510
 
509
511
  export declare interface FormattedLanguageItem {
@@ -711,7 +713,7 @@ export declare interface JumboCardProps {
711
713
  export declare const JumboDocs: FC<JumboDocsProps>;
712
714
 
713
715
  export declare interface JumboDocsProps {
714
- trustedBadge?: TrustedBadgeProps;
716
+ trustedBadge?: ReactNode;
715
717
  imagePreview: ReactNode | null;
716
718
  title: string;
717
719
  freeDocTexts: string[];
@@ -791,61 +793,6 @@ export declare interface LawGeniusStepCardProps {
791
793
  iconAlt?: string;
792
794
  }
793
795
 
794
- export declare const LeadGateErrorModal: FC<LeadGateErrorModalProps>;
795
-
796
- export declare interface LeadGateErrorModalProps {
797
- heading: string;
798
- description: string;
799
- ctaLabel: string;
800
- onRetry?: () => void;
801
- }
802
-
803
- export declare const LeadGateModal: FC<LeadGateModalProps>;
804
-
805
- export declare interface LeadGateModalErrors {
806
- email?: boolean;
807
- hasAcceptedTerms?: boolean;
808
- }
809
-
810
- export declare interface LeadGateModalPayload {
811
- email: string;
812
- hasAcceptedTerms: boolean;
813
- hasAcceptedMarketing: boolean;
814
- }
815
-
816
- export declare interface LeadGateModalProps {
817
- description: string;
818
- emailLabel: string;
819
- emailPlaceholder: string;
820
- emailErrorMessage: string;
821
- termsLabel: string;
822
- marketingLabel: string;
823
- ctaLabel: string;
824
- payload: LeadGateModalPayload;
825
- errors?: LeadGateModalErrors;
826
- onPayloadChange: (payload: LeadGateModalPayload) => void;
827
- onSubmit?: () => void;
828
- }
829
-
830
- export declare const LeadGateSuccessFeatureItem: FC<LeadGateSuccessFeatureItemProps>;
831
-
832
- export declare interface LeadGateSuccessFeatureItemProps {
833
- icon?: ReactNode;
834
- title: string;
835
- description: string;
836
- }
837
-
838
- export declare const LeadGateSuccessModal: FC<LeadGateSuccessModalProps>;
839
-
840
- export declare interface LeadGateSuccessModalProps {
841
- subtitle: string;
842
- featureItems: LeadGateSuccessFeatureItemProps[];
843
- ctaLabel: string;
844
- footer: string;
845
- illustration: ReactNode;
846
- onCtaClick?: () => void;
847
- }
848
-
849
796
  export declare const LinkedinIcon: React_2.FC<React_2.SVGProps<SVGSVGElement>>;
850
797
 
851
798
  export declare interface LinkedProductProps {
@@ -928,9 +875,7 @@ export declare interface MobileMenuSection {
928
875
  content?: ReactNode | null;
929
876
  }
930
877
 
931
- export declare const Modal: ({ trigger, children, isOpen, setIsOpen, showClose, onTrigger, overlayVariant }: ModalProps) => JSX.Element;
932
-
933
- export declare type ModalOverlayVariant = 'primary' | 'grey';
878
+ export declare const Modal: ({ trigger, children, isOpen, setIsOpen, showClose, onTrigger }: ModalProps) => JSX.Element;
934
879
 
935
880
  export interface ModalProps {
936
881
  trigger?: ReactNode;
@@ -939,7 +884,6 @@ export interface ModalProps {
939
884
  setIsOpen: (open: boolean) => void;
940
885
  showClose?: boolean;
941
886
  onTrigger?: () => void;
942
- overlayVariant?: ModalOverlayVariant;
943
887
  }
944
888
 
945
889
  export declare const MoreTemplatesSection: FC<PopularDocumentsProps>;
@@ -1029,7 +973,7 @@ export declare interface PreformOptionProps {
1029
973
  }
1030
974
 
1031
975
  export declare interface PreformProps {
1032
- trustedBadge: TrustedBadgeProps;
976
+ trustedBadge: ReactNode;
1033
977
  cta: ReactNode;
1034
978
  radioFieldData?: RadioFieldData;
1035
979
  inputFieldData?: InputFieldData;
package/dist/index.js CHANGED
@@ -98,56 +98,52 @@ import { Tooltips as Ve } from "./components/Tooltips.js";
98
98
  import { FreeDocumentModal as He } from "./components/FreeDocumentModal.js";
99
99
  import { Article as Ue } from "./components/Article.js";
100
100
  import { ContinueEditingBanner as We } from "./components/ContinueEditingBanner.js";
101
- import { LeadGateErrorModal as Ge } from "./components/LeadGateErrorModal.js";
102
- import { LeadGateModal as Ke } from "./components/LeadGateModal.js";
103
- import { LeadGateSuccessFeatureItem as qe } from "./components/LeadGateSuccessFeatureItem.js";
104
- import { LeadGateSuccessModal as Je } from "./components/LeadGateSuccessModal.js";
105
- import { BlogSection as Ye } from "./components/BlogSection.js";
106
- import { AsideNavMenu as Xe } from "./components/AsideNavMenu.js";
107
- import { BenefitsBar as Ze } from "./components/BenefitsBar.js";
108
- import { CategoriesSection as Qe } from "./components/CategoriesSection.js";
109
- import { ContactBanner as $e } from "./components/ContactBanner.js";
110
- import { FaqSection as et } from "./components/FaqSection.js";
111
- import { FaqTeaserSection as tt } from "./components/FaqTeaserSection.js";
112
- import { Footer as nt } from "./components/Footer.js";
113
- import { MobileMenu as rt } from "./components/MobileMenu.js";
114
- import { Header as it } from "./components/Header.js";
115
- import { HeroSection as at } from "./components/HeroSection.js";
116
- import { Hero2Section as ot } from "./components/Hero2Section.js";
117
- import { HowItWorksSection as st } from "./components/HowItWorksSection.js";
118
- import { Jumbotron as ct } from "./components/Jumbotron.js";
119
- import { Jumbotron2 as lt } from "./components/Jumbotron2.js";
120
- import { Jumbotron3 as ut } from "./components/Jumbotron3.js";
121
- import { MoreTemplatesSection as dt } from "./components/MoreTemplatesSection.js";
122
- import { PricingOfferingsSection as ft } from "./components/PricingOfferingsSection.js";
123
- import { PricingPlansSection as pt } from "./components/PricingPlansSection.js";
124
- import { PricingSupportTeaserSection as mt } from "./components/PricingSupportTeaserSection.js";
125
- import { Preform as ht } from "./components/Preform.js";
126
- import { PreviewSection as gt } from "./components/PreviewSection.js";
127
- import { ProcessSection as _t } from "./components/ProcessSection.js";
128
- import { ProductInfo as vt } from "./components/ProductInfo.js";
129
- import { RatafiaSection as yt } from "./components/RatafiaSection.js";
130
- import { TrustSection as bt } from "./components/TrustSection.js";
131
- import { TryNowSection as xt } from "./components/TryNowSection.js";
132
- import { IntroSection as St } from "./components/IntroSection.js";
133
- import { MissionSection as Ct } from "./components/MissionSection.js";
134
- import { ValuesSection as wt } from "./components/ValuesSection.js";
135
- import { Storyline as Tt } from "./components/Storyline.js";
136
- import { WeHelpSection as Et } from "./components/WeHelpSection.js";
137
- import { GuidelinesSection as Dt } from "./components/GuidelinesSection.js";
138
- import { ExpertsSection as Ot } from "./components/ExpertsSection.js";
139
- import { FastAndSimpleSection as kt } from "./components/FastAndSimpleSection.js";
140
- import { FeaturesSection as At } from "./components/FeaturesSection.js";
141
- import { BannerTagSection as jt } from "./components/BannerTagSection.js";
142
- import { PartnersSection as Mt } from "./components/PartnersSection.js";
143
- import { CtaFeatureTag as Nt, CtaSample as Pt, CtaSection as Ft } from "./components/CtaSection.js";
144
- import { ContactUsSection as It } from "./components/ContactUsSection.js";
145
- import { UnsubscribeSection as Lt } from "./components/UnsubscribeSection.js";
146
- import { JumboCard as Rt } from "./components/JumboCard.js";
147
- import { DocumentCategories as zt } from "./components/DocumentCategories.js";
148
- import { DocumentSection as Bt } from "./components/DocumentSection.js";
149
- import { ContactFormSection as Vt } from "./components/ContactFormSection.js";
150
- import { ContactMethodsSection as Ht } from "./components/ContactMethodsSection.js";
151
- import { JumboDocs as Ut } from "./components/JumboDocs.js";
152
- import { TrustPilotSection as Wt } from "./components/TrustPilotSection.js";
153
- export { i as AddIcon, Re as AlternativeSubtypeDocument, Ue as Article, Xe as AsideNavMenu, e as Badge, jt as BannerTagSection, Ze as BenefitsBar, Ye as BlogSection, Q as Breadcrumb, y as BusinessIcon, ee as Button, B as CaFlagIcon, Qe as CategoriesSection, X as CheckIcon, ce as Checkbox, c as ChevronDownIcon, l as ChevronRightIcon, J as ClearIcon, N as CloseIcon, D as CommunicationIcon, $e as ContactBanner, Vt as ContactFormSection, Le as ContactMethodCard, Ht as ContactMethodsSection, It as ContactUsSection, he as ContentItem, We as ContinueEditingBanner, ge as CookiesBar, Nt as CtaFeatureTag, Pt as CtaSample, Ft as CtaSection, H as DeFlagIcon, ze as DefaultSubtypeDocument, O as DocEditFillIcon, I as DocOutlineIcon, zt as DocumentCategories, Ie as DocumentItem, Be as DocumentReviewUploadCard, Bt as DocumentSection, T as DoneCircleIcon, q as DoneIcon, x as EmploymentIcon, _ as EstatePlanningIcon, Ot as ExpertsSection, t as FacebookIcon, b as FamilyIcon, ve as FaqItem, _e as FaqItemWrapper, et as FaqSection, tt as FaqTeaserSection, kt as FastAndSimpleSection, At as FeaturesSection, L as FillFormsIcon, h as FinanceIcon, nt as Footer, ye as FooterNav, He as FreeDocumentModal, V as GbFlagIcon, Dt as GuidelinesSection, M as HamburgerIcon, it as Header, E as HelpGuideIcon, ot as Hero2Section, be as HeroImageShell, at as HeroSection, te as HighlightedText, F as HistoryIcon, st as HowItWorksSection, pe as ImageWithPreview, u as InfoIcon, ae as Input, s as InstagramIcon, St as IntroSection, ne as Item, Rt as JumboCard, Ut as JumboDocs, ct as Jumbotron, lt as Jumbotron2, ut as Jumbotron3, xe as LanguageSelector, Se as LawGeniusImageShell, Ce as LawGeniusStepCard, Ge as LeadGateErrorModal, Ke as LeadGateModal, qe as LeadGateSuccessFeatureItem, Je as LeadGateSuccessModal, le as LinkWrapper, me as LinkedProducts, o as LinkedinIcon, P as LocationIcon, j as MailFillIcon, ie as Markdown, Ct as MissionSection, rt as MobileMenu, ue as Modal, dt as MoreTemplatesSection, we as NavMenu, re as NavMenuItem, Mt as PartnersSection, v as PersonalIcon, fe as PhoneButton, r as PhoneIcon, k as PhoneTalkIcon, A as PlusIcon, ht as Preform, Ee as PreformOption, De as PreviewDownload, gt as PreviewSection, ft as PricingOfferingsSection, Te as PricingPlanCard, pt as PricingPlansSection, mt as PricingSupportTeaserSection, R as PrintIcon, C as PrivateIcon, _t as ProcessSection, vt as ProductInfo, G as QuestionIcon, Y as QuestionOutlineIcon, yt as RatafiaSection, g as RealStateIcon, Oe as ResourcesImageShell, m as SaveIcon, U as ScalatorIcon, ke as SearchBar, d as SearchIcon, Ae as SectionHeading, Z as SecurityIcon, oe as Select, K as SinglePhoneIcon, W as SparkIcon, S as StarsIcon, je as StepImageShell, Tt as Storyline, Ne as TableOfContents, Me as TableOfContentsWrapper, se as Textarea, n as TikTokIcon, z as TimeIcon, de as Toast, Ve as Tooltips, Wt as TrustPilotSection, bt as TrustSection, Pe as TrustedBadge, p as TrustedIcon, xt as TryNowSection, Fe as TwoColumnSection, Lt as UnsubscribeSection, f as UsFlagIcon, wt as ValuesSection, w as VerifiedIcon, Et as WeHelpSection, a as ZoomIcon, $ as getButtonClasses };
101
+ import { BlogSection as Ge } from "./components/BlogSection.js";
102
+ import { AsideNavMenu as Ke } from "./components/AsideNavMenu.js";
103
+ import { BenefitsBar as qe } from "./components/BenefitsBar.js";
104
+ import { CategoriesSection as Je } from "./components/CategoriesSection.js";
105
+ import { ContactBanner as Ye } from "./components/ContactBanner.js";
106
+ import { FaqSection as Xe } from "./components/FaqSection.js";
107
+ import { FaqTeaserSection as Ze } from "./components/FaqTeaserSection.js";
108
+ import { Footer as Qe } from "./components/Footer.js";
109
+ import { MobileMenu as $e } from "./components/MobileMenu.js";
110
+ import { Header as et } from "./components/Header.js";
111
+ import { HeroSection as tt } from "./components/HeroSection.js";
112
+ import { Hero2Section as nt } from "./components/Hero2Section.js";
113
+ import { HowItWorksSection as rt } from "./components/HowItWorksSection.js";
114
+ import { Jumbotron as it } from "./components/Jumbotron.js";
115
+ import { Jumbotron2 as at } from "./components/Jumbotron2.js";
116
+ import { Jumbotron3 as ot } from "./components/Jumbotron3.js";
117
+ import { MoreTemplatesSection as st } from "./components/MoreTemplatesSection.js";
118
+ import { PricingOfferingsSection as ct } from "./components/PricingOfferingsSection.js";
119
+ import { PricingPlansSection as lt } from "./components/PricingPlansSection.js";
120
+ import { PricingSupportTeaserSection as ut } from "./components/PricingSupportTeaserSection.js";
121
+ import { Preform as dt } from "./components/Preform.js";
122
+ import { PreviewSection as ft } from "./components/PreviewSection.js";
123
+ import { ProcessSection as pt } from "./components/ProcessSection.js";
124
+ import { ProductInfo as mt } from "./components/ProductInfo.js";
125
+ import { RatafiaSection as ht } from "./components/RatafiaSection.js";
126
+ import { TrustSection as gt } from "./components/TrustSection.js";
127
+ import { TryNowSection as _t } from "./components/TryNowSection.js";
128
+ import { IntroSection as vt } from "./components/IntroSection.js";
129
+ import { MissionSection as yt } from "./components/MissionSection.js";
130
+ import { ValuesSection as bt } from "./components/ValuesSection.js";
131
+ import { Storyline as xt } from "./components/Storyline.js";
132
+ import { WeHelpSection as St } from "./components/WeHelpSection.js";
133
+ import { GuidelinesSection as Ct } from "./components/GuidelinesSection.js";
134
+ import { ExpertsSection as wt } from "./components/ExpertsSection.js";
135
+ import { FastAndSimpleSection as Tt } from "./components/FastAndSimpleSection.js";
136
+ import { FeaturesSection as Et } from "./components/FeaturesSection.js";
137
+ import { BannerTagSection as Dt } from "./components/BannerTagSection.js";
138
+ import { PartnersSection as Ot } from "./components/PartnersSection.js";
139
+ import { CtaFeatureTag as kt, CtaSample as At, CtaSection as jt } from "./components/CtaSection.js";
140
+ import { ContactUsSection as Mt } from "./components/ContactUsSection.js";
141
+ import { UnsubscribeSection as Nt } from "./components/UnsubscribeSection.js";
142
+ import { JumboCard as Pt } from "./components/JumboCard.js";
143
+ import { DocumentCategories as Ft } from "./components/DocumentCategories.js";
144
+ import { DocumentSection as It } from "./components/DocumentSection.js";
145
+ import { ContactFormSection as Lt } from "./components/ContactFormSection.js";
146
+ import { ContactMethodsSection as Rt } from "./components/ContactMethodsSection.js";
147
+ import { JumboDocs as zt } from "./components/JumboDocs.js";
148
+ import { TrustPilotSection as Bt } from "./components/TrustPilotSection.js";
149
+ export { i as AddIcon, Re as AlternativeSubtypeDocument, Ue as Article, Ke as AsideNavMenu, e as Badge, Dt as BannerTagSection, qe as BenefitsBar, Ge as BlogSection, Q as Breadcrumb, y as BusinessIcon, ee as Button, B as CaFlagIcon, Je as CategoriesSection, X as CheckIcon, ce as Checkbox, c as ChevronDownIcon, l as ChevronRightIcon, J as ClearIcon, N as CloseIcon, D as CommunicationIcon, Ye as ContactBanner, Lt as ContactFormSection, Le as ContactMethodCard, Rt as ContactMethodsSection, Mt as ContactUsSection, he as ContentItem, We as ContinueEditingBanner, ge as CookiesBar, kt as CtaFeatureTag, At as CtaSample, jt as CtaSection, H as DeFlagIcon, ze as DefaultSubtypeDocument, O as DocEditFillIcon, I as DocOutlineIcon, Ft as DocumentCategories, Ie as DocumentItem, Be as DocumentReviewUploadCard, It as DocumentSection, T as DoneCircleIcon, q as DoneIcon, x as EmploymentIcon, _ as EstatePlanningIcon, wt as ExpertsSection, t as FacebookIcon, b as FamilyIcon, ve as FaqItem, _e as FaqItemWrapper, Xe as FaqSection, Ze as FaqTeaserSection, Tt as FastAndSimpleSection, Et as FeaturesSection, L as FillFormsIcon, h as FinanceIcon, Qe as Footer, ye as FooterNav, He as FreeDocumentModal, V as GbFlagIcon, Ct as GuidelinesSection, M as HamburgerIcon, et as Header, E as HelpGuideIcon, nt as Hero2Section, be as HeroImageShell, tt as HeroSection, te as HighlightedText, F as HistoryIcon, rt as HowItWorksSection, pe as ImageWithPreview, u as InfoIcon, ae as Input, s as InstagramIcon, vt as IntroSection, ne as Item, Pt as JumboCard, zt as JumboDocs, it as Jumbotron, at as Jumbotron2, ot as Jumbotron3, xe as LanguageSelector, Se as LawGeniusImageShell, Ce as LawGeniusStepCard, le as LinkWrapper, me as LinkedProducts, o as LinkedinIcon, P as LocationIcon, j as MailFillIcon, ie as Markdown, yt as MissionSection, $e as MobileMenu, ue as Modal, st as MoreTemplatesSection, we as NavMenu, re as NavMenuItem, Ot as PartnersSection, v as PersonalIcon, fe as PhoneButton, r as PhoneIcon, k as PhoneTalkIcon, A as PlusIcon, dt as Preform, Ee as PreformOption, De as PreviewDownload, ft as PreviewSection, ct as PricingOfferingsSection, Te as PricingPlanCard, lt as PricingPlansSection, ut as PricingSupportTeaserSection, R as PrintIcon, C as PrivateIcon, pt as ProcessSection, mt as ProductInfo, G as QuestionIcon, Y as QuestionOutlineIcon, ht as RatafiaSection, g as RealStateIcon, Oe as ResourcesImageShell, m as SaveIcon, U as ScalatorIcon, ke as SearchBar, d as SearchIcon, Ae as SectionHeading, Z as SecurityIcon, oe as Select, K as SinglePhoneIcon, W as SparkIcon, S as StarsIcon, je as StepImageShell, xt as Storyline, Ne as TableOfContents, Me as TableOfContentsWrapper, se as Textarea, n as TikTokIcon, z as TimeIcon, de as Toast, Ve as Tooltips, Bt as TrustPilotSection, gt as TrustSection, Pe as TrustedBadge, p as TrustedIcon, _t as TryNowSection, Fe as TwoColumnSection, Nt as UnsubscribeSection, f as UsFlagIcon, bt as ValuesSection, w as VerifiedIcon, St as WeHelpSection, a as ZoomIcon, $ as getButtonClasses };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@npm_leadtech/legal-contracts-ui",
3
- "version": "0.181.2",
3
+ "version": "0.182.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -354,22 +354,6 @@
354
354
  "import": "./dist/components/LawGeniusStepCard.js",
355
355
  "types": "./dist/components/LawGeniusStepCard.d.ts"
356
356
  },
357
- "./components/LeadGateErrorModal": {
358
- "import": "./dist/components/LeadGateErrorModal.js",
359
- "types": "./dist/components/LeadGateErrorModal.d.ts"
360
- },
361
- "./components/LeadGateModal": {
362
- "import": "./dist/components/LeadGateModal.js",
363
- "types": "./dist/components/LeadGateModal.d.ts"
364
- },
365
- "./components/LeadGateSuccessFeatureItem": {
366
- "import": "./dist/components/LeadGateSuccessFeatureItem.js",
367
- "types": "./dist/components/LeadGateSuccessFeatureItem.d.ts"
368
- },
369
- "./components/LeadGateSuccessModal": {
370
- "import": "./dist/components/LeadGateSuccessModal.js",
371
- "types": "./dist/components/LeadGateSuccessModal.d.ts"
372
- },
373
357
  "./components/LinkedProducts": {
374
358
  "import": "./dist/components/LinkedProducts.js",
375
359
  "types": "./dist/components/LinkedProducts.d.ts"
@@ -717,6 +701,27 @@
717
701
  "bugs": {
718
702
  "url": "https://bitbucket.org/grupoblidoo/legal-contracts-ui/issues"
719
703
  },
704
+ "scripts": {
705
+ "dev": "vite",
706
+ "build": "tsc --project tsconfig.build.json && vite build && cp lib/globals-core.css dist/globals.css",
707
+ "sonar:scan": "bash scripts/sonar.sh",
708
+ "sonar": "pnpm test && pnpm sonar:scan",
709
+ "chromatic": "npx chromatic --project-token=chpt_f2cdc115a03f4c9",
710
+ "yalc-push": "pnpm build && yalc push",
711
+ "format": "prettier --write .",
712
+ "prettier": "prettier --check .",
713
+ "eslint": "eslint . --quiet",
714
+ "test": "vitest run --coverage --project unit",
715
+ "test:watch": "vitest --coverage --project unit",
716
+ "storybook": "storybook dev -p 6006",
717
+ "build-storybook": "storybook build",
718
+ "reinstall-force": "rm -Rf node_modules && pnpm install",
719
+ "prepare-upgrade": "pnpm reinstall-force && pnpm build && pnpm chromatic && git add . && git commit -m \"$MSG\" --allow-empty && npm config set tag-version-prefix ''",
720
+ "upgrade-patch": "pnpm prepare-upgrade && npm version patch -m \"Update patch version number\" && git push && git push --tags",
721
+ "upgrade-minor": "pnpm prepare-upgrade && npm version minor -m \"Update minor version number\" && git push && git push --tags",
722
+ "upgrade-major": "pnpm prepare-upgrade && npm version major -m \"Update major version number\" && git push && git push --tags",
723
+ "prepare": "husky"
724
+ },
720
725
  "dependencies": {
721
726
  "clsx": "^2.1.1",
722
727
  "react-markdown": "^10.1.0",
@@ -788,30 +793,16 @@
788
793
  "@ast-grep/napi-linux-x64-gnu": "^0.44.1",
789
794
  "@rollup/rollup-linux-x64-gnu": "^4.62.2"
790
795
  },
796
+ "pnpm": {
797
+ "onlyBuiltDependencies": [
798
+ "esbuild",
799
+ "unrs-resolver"
800
+ ]
801
+ },
791
802
  "lint-staged": {
792
803
  "**/*": [
793
804
  "eslint --fix",
794
805
  "prettier --write --ignore-unknown"
795
806
  ]
796
- },
797
- "scripts": {
798
- "dev": "vite",
799
- "build": "tsc --project tsconfig.build.json && vite build && cp lib/globals-core.css dist/globals.css",
800
- "sonar:scan": "bash scripts/sonar.sh",
801
- "sonar": "pnpm test && pnpm sonar:scan",
802
- "chromatic": "npx chromatic --project-token=chpt_f2cdc115a03f4c9",
803
- "yalc-push": "pnpm build && yalc push",
804
- "format": "prettier --write .",
805
- "prettier": "prettier --check .",
806
- "eslint": "eslint . --quiet",
807
- "test": "vitest run --coverage",
808
- "test:watch": "vitest --coverage",
809
- "storybook": "storybook dev -p 6006",
810
- "build-storybook": "storybook build",
811
- "reinstall-force": "rm -Rf node_modules && pnpm install",
812
- "prepare-upgrade": "pnpm reinstall-force && pnpm build && pnpm chromatic && git add . && git commit -m \"$MSG\" --allow-empty && npm config set tag-version-prefix ''",
813
- "upgrade-patch": "pnpm prepare-upgrade && npm version patch -m \"Update patch version number\" && git push && git push --tags",
814
- "upgrade-minor": "pnpm prepare-upgrade && npm version minor -m \"Update minor version number\" && git push && git push --tags",
815
- "upgrade-major": "pnpm prepare-upgrade && npm version major -m \"Update major version number\" && git push && git push --tags"
816
807
  }
817
- }
808
+ }
@@ -1,11 +0,0 @@
1
- import { FC } from 'react';
2
-
3
- export declare const LeadGateErrorModal: FC<LeadGateErrorModalProps>;
4
-
5
- export declare interface LeadGateErrorModalProps {
6
- heading: string;
7
- description: string;
8
- ctaLabel: string;
9
- onRetry?: () => void;
10
- }
11
-
@@ -1,41 +0,0 @@
1
- import { ClearIcon as e } from "./ClearIcon.js";
2
- import { Button as t } from "./Button.js";
3
- import { Markdown as n } from "./Markdown.js";
4
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
- //#region lib/components/molecules/LeadGateErrorModal.tsx
6
- var a = ({ heading: a, description: o, ctaLabel: s, onRetry: c }) => /* @__PURE__ */ i("div", {
7
- className: "mt-4 flex w-full flex-col",
8
- children: [/* @__PURE__ */ r("span", { className: "h-px w-full bg-neutral-200" }), /* @__PURE__ */ i("div", {
9
- className: "mt-10 flex w-full flex-col gap-10",
10
- children: [/* @__PURE__ */ i("div", {
11
- className: "mx-auto flex w-full max-w-80 flex-col items-center gap-4",
12
- children: [/* @__PURE__ */ r("div", {
13
- className: "bg-error-20 flex size-[74px] items-center justify-center rounded-full",
14
- children: /* @__PURE__ */ r(e, {
15
- width: 48,
16
- height: 48,
17
- fill: "var(--color-error-500)",
18
- "aria-hidden": "true"
19
- })
20
- }), /* @__PURE__ */ i("div", {
21
- className: "flex w-full flex-col gap-2 text-center",
22
- children: [/* @__PURE__ */ r("p", {
23
- className: "text-big font-bold text-neutral-800",
24
- children: a
25
- }), /* @__PURE__ */ r(n, {
26
- className: "text-medium w-auto! text-neutral-800 [&_p]:mb-0",
27
- content: o
28
- })]
29
- })]
30
- }), /* @__PURE__ */ r(t, {
31
- type: "button",
32
- variant: "primary-green",
33
- className: "w-full",
34
- dataQa: "lead_gate_retry",
35
- onClick: c,
36
- children: s
37
- })]
38
- })]
39
- });
40
- //#endregion
41
- export { a as LeadGateErrorModal };
@@ -1,29 +0,0 @@
1
- import { FC } from 'react';
2
-
3
- export declare const LeadGateModal: FC<LeadGateModalProps>;
4
-
5
- export declare interface LeadGateModalErrors {
6
- email?: boolean;
7
- hasAcceptedTerms?: boolean;
8
- }
9
-
10
- export declare interface LeadGateModalPayload {
11
- email: string;
12
- hasAcceptedTerms: boolean;
13
- hasAcceptedMarketing: boolean;
14
- }
15
-
16
- export declare interface LeadGateModalProps {
17
- description: string;
18
- emailLabel: string;
19
- emailPlaceholder: string;
20
- emailErrorMessage: string;
21
- termsLabel: string;
22
- marketingLabel: string;
23
- ctaLabel: string;
24
- payload: LeadGateModalPayload;
25
- errors?: LeadGateModalErrors;
26
- onPayloadChange: (payload: LeadGateModalPayload) => void;
27
- onSubmit?: () => void;
28
- }
29
-
@@ -1,90 +0,0 @@
1
- import { Button as e } from "./Button.js";
2
- import { Markdown as t } from "./Markdown.js";
3
- import { Input as n } from "./Input.js";
4
- import { Checkbox as r } from "./Checkbox.js";
5
- import { jsx as i, jsxs as a } from "react/jsx-runtime";
6
- //#region lib/components/molecules/LeadGateModal.tsx
7
- var o = (e) => {
8
- !(e.target instanceof HTMLElement) || !e.target.closest("a") || e.stopPropagation();
9
- }, s = ({ description: s, emailLabel: c, emailPlaceholder: l, emailErrorMessage: u, termsLabel: d, marketingLabel: f, ctaLabel: p, payload: m, errors: h = {}, onPayloadChange: g, onSubmit: _ }) => {
10
- let v = !!(h.email || h.hasAcceptedTerms);
11
- return /* @__PURE__ */ a("div", {
12
- className: "mt-4 flex w-full flex-col gap-4",
13
- children: [/* @__PURE__ */ i("span", { className: "h-px w-full bg-neutral-200" }), /* @__PURE__ */ a("form", {
14
- className: "flex w-full flex-col gap-4",
15
- noValidate: !0,
16
- onSubmit: (e) => {
17
- e.preventDefault(), _?.();
18
- },
19
- children: [
20
- /* @__PURE__ */ i(t, {
21
- className: "text-medium w-auto! text-center text-neutral-800 [&_p]:mb-0",
22
- content: s
23
- }),
24
- /* @__PURE__ */ i(n, {
25
- id: "lead-gate-email",
26
- name: "email",
27
- type: "email",
28
- label: c,
29
- placeholder: l,
30
- dataQa: "lead_gate_email",
31
- value: m.email,
32
- error: v,
33
- errorMessage: u,
34
- onInputChange: (e) => {
35
- g({
36
- ...m,
37
- email: e
38
- });
39
- }
40
- }),
41
- /* @__PURE__ */ a("div", {
42
- className: "flex flex-col gap-4",
43
- children: [/* @__PURE__ */ i(r, {
44
- id: "lead-gate-terms",
45
- name: "hasAcceptedTerms",
46
- dataQa: "lead_gate_terms",
47
- checked: m.hasAcceptedTerms,
48
- error: h.hasAcceptedTerms,
49
- onChange: (e) => {
50
- g({
51
- ...m,
52
- hasAcceptedTerms: e.currentTarget.checked
53
- });
54
- },
55
- children: /* @__PURE__ */ i("span", {
56
- className: "min-w-0",
57
- onClick: o,
58
- onKeyDown: o,
59
- children: /* @__PURE__ */ i(t, {
60
- className: "[&_p]:mb-0",
61
- content: d
62
- })
63
- })
64
- }), /* @__PURE__ */ i(r, {
65
- id: "lead-gate-marketing",
66
- name: "hasAcceptedMarketing",
67
- dataQa: "lead_gate_marketing",
68
- checked: m.hasAcceptedMarketing,
69
- onChange: (e) => {
70
- g({
71
- ...m,
72
- hasAcceptedMarketing: e.currentTarget.checked
73
- });
74
- },
75
- children: f
76
- })]
77
- }),
78
- /* @__PURE__ */ i(e, {
79
- type: "submit",
80
- variant: "primary-green",
81
- className: "w-full",
82
- dataQa: "lead_gate_download",
83
- children: p
84
- })
85
- ]
86
- })]
87
- });
88
- };
89
- //#endregion
90
- export { s as LeadGateModal };
@@ -1,11 +0,0 @@
1
- import { FC } from 'react';
2
- import { ReactNode } from 'react';
3
-
4
- export declare const LeadGateSuccessFeatureItem: FC<LeadGateSuccessFeatureItemProps>;
5
-
6
- export declare interface LeadGateSuccessFeatureItemProps {
7
- icon?: ReactNode;
8
- title: string;
9
- description: string;
10
- }
11
-
@@ -1,20 +0,0 @@
1
- import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
- //#region lib/components/molecules/LeadGateSuccessFeatureItem.tsx
3
- var n = ({ icon: n, title: r, description: i }) => /* @__PURE__ */ t("li", {
4
- className: "flex items-start gap-4",
5
- children: [n != null && /* @__PURE__ */ e("span", {
6
- className: "mt-0.5 shrink-0",
7
- children: n
8
- }), /* @__PURE__ */ t("div", {
9
- className: "flex min-w-0 flex-1 flex-col gap-2",
10
- children: [/* @__PURE__ */ e("p", {
11
- className: "text-medium font-bold text-neutral-800",
12
- children: r
13
- }), /* @__PURE__ */ e("p", {
14
- className: "text-small text-neutral-600",
15
- children: i
16
- })]
17
- })]
18
- });
19
- //#endregion
20
- export { n as LeadGateSuccessFeatureItem };
@@ -1,20 +0,0 @@
1
- import { FC } from 'react';
2
- import { ReactNode } from 'react';
3
-
4
- export interface LeadGateSuccessFeatureItemProps {
5
- icon?: ReactNode;
6
- title: string;
7
- description: string;
8
- }
9
-
10
- export declare const LeadGateSuccessModal: FC<LeadGateSuccessModalProps>;
11
-
12
- export declare interface LeadGateSuccessModalProps {
13
- subtitle: string;
14
- featureItems: LeadGateSuccessFeatureItemProps[];
15
- ctaLabel: string;
16
- footer: string;
17
- illustration: ReactNode;
18
- onCtaClick?: () => void;
19
- }
20
-
@@ -1,45 +0,0 @@
1
- import { DocOutlineIcon as e } from "./DocOutlineIcon.js";
2
- import { Button as t } from "./Button.js";
3
- import { Markdown as n } from "./Markdown.js";
4
- import { LeadGateSuccessFeatureItem as r } from "./LeadGateSuccessFeatureItem.js";
5
- import { jsx as i, jsxs as a } from "react/jsx-runtime";
6
- //#region lib/components/molecules/LeadGateSuccessModal.tsx
7
- var o = ({ subtitle: o, featureItems: s, ctaLabel: c, footer: l, illustration: u, onCtaClick: d }) => /* @__PURE__ */ a("div", {
8
- className: "mt-6 flex w-full flex-col gap-6",
9
- children: [
10
- /* @__PURE__ */ i("div", {
11
- className: "relative h-[227px] w-[302px] max-w-full overflow-hidden",
12
- children: u
13
- }),
14
- /* @__PURE__ */ i("p", {
15
- className: "text-medium text-primary-500 w-full text-center",
16
- children: o
17
- }),
18
- /* @__PURE__ */ i("span", { className: "h-px w-full bg-neutral-200" }),
19
- /* @__PURE__ */ i("ul", {
20
- className: "flex w-full flex-col gap-4",
21
- children: s.map((e) => /* @__PURE__ */ i(r, { ...e }, e.title))
22
- }),
23
- /* @__PURE__ */ a("div", {
24
- className: "flex w-full flex-col gap-4",
25
- children: [/* @__PURE__ */ a(t, {
26
- type: "button",
27
- variant: "primary-green",
28
- className: "w-full",
29
- dataQa: "lead_gate_success_cta",
30
- onClick: d,
31
- children: [/* @__PURE__ */ i(e, {
32
- width: 22,
33
- height: 22,
34
- fill: "currentColor",
35
- "aria-hidden": "true"
36
- }), c]
37
- }), /* @__PURE__ */ i(n, {
38
- className: "text-extra-small [&_strong]:text-primary-500 text-center text-neutral-600 [&_p]:mb-0",
39
- content: l
40
- })]
41
- })
42
- ]
43
- });
44
- //#endregion
45
- export { o as LeadGateSuccessModal };