@npm_leadtech/legal-contracts-ui 0.101.18 → 0.102.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.
- package/dist/components/AboutUsTemplate.d.ts +6 -6
- package/dist/components/AboutUsTemplate.js +28 -28
- package/dist/components/BlogSection.d.ts +0 -1
- package/dist/components/CategoriesSection.d.ts +0 -1
- package/dist/components/CategoryProductTemplate.d.ts +0 -1
- package/dist/components/CheckIcon.d.ts +4 -0
- package/dist/components/CheckIcon.js +12 -0
- package/dist/components/Checkbox.d.ts +2 -0
- package/dist/components/Checkbox.js +25 -12
- package/dist/components/ClearIcon.d.ts +4 -0
- package/dist/components/ClearIcon.js +12 -0
- package/dist/components/ContactFormSection.d.ts +39 -12
- package/dist/components/ContactFormSection.js +64 -94
- package/dist/components/ContactMethodCard.js +25 -24
- package/dist/components/ContactUsSection.d.ts +0 -1
- package/dist/components/ContactUsTemplate.d.ts +41 -12
- package/dist/components/ContactUsTemplate.js +32 -22
- package/dist/components/DoneIcon.d.ts +4 -0
- package/dist/components/DoneIcon.js +12 -0
- package/dist/components/ExpertsSection.d.ts +0 -1
- package/dist/components/ExpertsSection.js +6 -6
- package/dist/components/FaqTeaserSection.d.ts +0 -1
- package/dist/components/FaqsTemplate.d.ts +1 -0
- package/dist/components/GuidelinesSection.d.ts +2 -3
- package/dist/components/GuidelinesSection.js +9 -10
- package/dist/components/HomeTemplate.d.ts +0 -1
- package/dist/components/Input.d.ts +2 -0
- package/dist/components/Input.js +110 -43
- package/dist/components/Jumbotron2.d.ts +1 -0
- package/dist/components/Jumbotron2.js +24 -10
- package/dist/components/MissionSection.d.ts +1 -1
- package/dist/components/MissionSection.js +9 -10
- package/dist/components/MoreTemplatesSection.d.ts +0 -1
- package/dist/components/PartnersSection.d.ts +1 -2
- package/dist/components/PartnersSection.js +7 -8
- package/dist/components/ProcessSection.d.ts +0 -1
- package/dist/components/QuestionOutlineIcon.d.ts +4 -0
- package/dist/components/QuestionOutlineIcon.js +15 -0
- package/dist/components/SectionHeading.d.ts +0 -1
- package/dist/components/SectionHeading.js +16 -20
- package/dist/components/Select.d.ts +2 -0
- package/dist/components/Select.js +51 -35
- package/dist/components/SinglePhoneIcon.js +4 -4
- package/dist/components/Storyline.js +16 -17
- package/dist/components/Textarea.d.ts +2 -0
- package/dist/components/Textarea.js +30 -11
- package/dist/components/Toast.js +1 -1
- package/dist/components/TrustPilotSection.js +7 -9
- package/dist/components/TrustSection.d.ts +0 -1
- package/dist/components/ValuesSection.d.ts +1 -1
- package/dist/components/ValuesSection.js +9 -10
- package/dist/components/index.d.ts +1257 -0
- package/dist/globals.css +1 -1
- package/package.json +17 -1
|
@@ -64,12 +64,12 @@ export interface GuidelinesSectionProps {
|
|
|
64
64
|
guidelineCards: Array<{
|
|
65
65
|
title: string;
|
|
66
66
|
image: ReactNode;
|
|
67
|
-
content:
|
|
67
|
+
content: ReactNode;
|
|
68
68
|
}>;
|
|
69
69
|
footerCard: {
|
|
70
70
|
title: string;
|
|
71
71
|
image: ReactNode;
|
|
72
|
-
content:
|
|
72
|
+
content: ReactNode;
|
|
73
73
|
cta: ButtonProps;
|
|
74
74
|
};
|
|
75
75
|
}
|
|
@@ -89,17 +89,18 @@ export interface Jumbotron2Props {
|
|
|
89
89
|
subtitle?: string;
|
|
90
90
|
className?: string;
|
|
91
91
|
children?: React.ReactNode;
|
|
92
|
+
variant?: 'default' | 'contact';
|
|
92
93
|
}
|
|
93
94
|
|
|
94
95
|
export interface MissionSectionProps {
|
|
95
96
|
title: string;
|
|
96
|
-
|
|
97
|
+
children: ReactNode;
|
|
97
98
|
image: ReactNode;
|
|
98
99
|
}
|
|
99
100
|
|
|
100
101
|
export interface PartnersSectionProps {
|
|
101
102
|
header: SectionHeadingProps;
|
|
102
|
-
|
|
103
|
+
children: ReactNode;
|
|
103
104
|
partners: Array<{
|
|
104
105
|
name: string;
|
|
105
106
|
logo: ReactNode;
|
|
@@ -120,7 +121,6 @@ export interface SectionHeadingProps {
|
|
|
120
121
|
align?: 'start' | 'center';
|
|
121
122
|
titleClass?: string;
|
|
122
123
|
className?: string;
|
|
123
|
-
hasMaxWidth?: boolean;
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
export interface StorylineProps {
|
|
@@ -141,7 +141,7 @@ export interface TrustPilotSectionProps {
|
|
|
141
141
|
|
|
142
142
|
export interface ValuesSectionProps {
|
|
143
143
|
title: string;
|
|
144
|
-
|
|
144
|
+
children: ReactNode;
|
|
145
145
|
image: ReactNode;
|
|
146
146
|
}
|
|
147
147
|
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { MissionSection as
|
|
3
|
-
import { ValuesSection as
|
|
1
|
+
import { jsxs as S, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { MissionSection as u } from "./MissionSection.js";
|
|
3
|
+
import { ValuesSection as x } from "./ValuesSection.js";
|
|
4
4
|
import { Storyline as b } from "./Storyline.js";
|
|
5
|
-
import { WeHelpSection as
|
|
6
|
-
import { GuidelinesSection as
|
|
7
|
-
import { ExpertsSection as
|
|
8
|
-
import { TrustPilotSection as
|
|
9
|
-
import { PartnersSection as
|
|
10
|
-
import { CtaSection as
|
|
11
|
-
import { ContactUsSection as
|
|
12
|
-
import { Jumbotron2 as
|
|
13
|
-
import { IntroSection as
|
|
5
|
+
import { WeHelpSection as d } from "./WeHelpSection.js";
|
|
6
|
+
import { GuidelinesSection as j } from "./GuidelinesSection.js";
|
|
7
|
+
import { ExpertsSection as y } from "./ExpertsSection.js";
|
|
8
|
+
import { TrustPilotSection as C } from "./TrustPilotSection.js";
|
|
9
|
+
import { PartnersSection as N } from "./PartnersSection.js";
|
|
10
|
+
import { CtaSection as P } from "./CtaSection.js";
|
|
11
|
+
import { ContactUsSection as T } from "./ContactUsSection.js";
|
|
12
|
+
import { Jumbotron2 as U } from "./Jumbotron2.js";
|
|
13
|
+
import { IntroSection as g } from "./IntroSection.js";
|
|
14
14
|
const v = ({
|
|
15
15
|
jumbotron: t,
|
|
16
16
|
intro: r,
|
|
@@ -18,25 +18,25 @@ const v = ({
|
|
|
18
18
|
coreValues: i,
|
|
19
19
|
storyline: e,
|
|
20
20
|
howWeHelp: n,
|
|
21
|
-
guidelines:
|
|
22
|
-
experts:
|
|
21
|
+
guidelines: p,
|
|
22
|
+
experts: f,
|
|
23
23
|
trustPilot: s,
|
|
24
|
-
partners:
|
|
25
|
-
cta:
|
|
24
|
+
partners: c,
|
|
25
|
+
cta: l,
|
|
26
26
|
contactUs: a
|
|
27
|
-
}) => /* @__PURE__ */
|
|
28
|
-
/* @__PURE__ */ o(
|
|
29
|
-
/* @__PURE__ */ o(
|
|
30
|
-
/* @__PURE__ */ o(
|
|
31
|
-
/* @__PURE__ */ o(
|
|
27
|
+
}) => /* @__PURE__ */ S("main", { className: "mx-auto flex w-full flex-1 flex-col text-neutral-800", children: [
|
|
28
|
+
/* @__PURE__ */ o(U, { ...t }),
|
|
29
|
+
/* @__PURE__ */ o(g, { ...r, className: "bg-primary-50" }),
|
|
30
|
+
/* @__PURE__ */ o(u, { ...m }),
|
|
31
|
+
/* @__PURE__ */ o(x, { ...i }),
|
|
32
32
|
/* @__PURE__ */ o(b, { ...e }),
|
|
33
|
-
/* @__PURE__ */ o(
|
|
34
|
-
/* @__PURE__ */ o(
|
|
35
|
-
/* @__PURE__ */ o(
|
|
36
|
-
/* @__PURE__ */ o(
|
|
37
|
-
/* @__PURE__ */ o(
|
|
38
|
-
/* @__PURE__ */ o(
|
|
39
|
-
/* @__PURE__ */ o(
|
|
33
|
+
/* @__PURE__ */ o(d, { ...n }),
|
|
34
|
+
/* @__PURE__ */ o(j, { ...p }),
|
|
35
|
+
/* @__PURE__ */ o(y, { ...f }),
|
|
36
|
+
/* @__PURE__ */ o(C, { ...s }),
|
|
37
|
+
/* @__PURE__ */ o(N, { ...c }),
|
|
38
|
+
/* @__PURE__ */ o(P, { ...l }),
|
|
39
|
+
/* @__PURE__ */ o(T, { ...a })
|
|
40
40
|
] });
|
|
41
41
|
export {
|
|
42
42
|
v as AboutUsTemplate
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
const l = (i) => /* @__PURE__ */ o("svg", { width: "16", height: "16", viewBox: "0 0 16 16", xmlns: "http://www.w3.org/2000/svg", ...i, children: /* @__PURE__ */ o(
|
|
4
|
+
"path",
|
|
5
|
+
{
|
|
6
|
+
fill: i.fill ?? "var(--color-primary-800)",
|
|
7
|
+
d: "M5.867 10.6 3.533 8.267A.66.66 0 1 0 2.6 9.2l3.089 3.089a.25.25 0 0 0 .355 0L13.4 4.933A.66.66 0 0 0 12.467 4z"
|
|
8
|
+
}
|
|
9
|
+
) });
|
|
10
|
+
export {
|
|
11
|
+
l as CheckIcon
|
|
12
|
+
};
|
|
@@ -1,18 +1,31 @@
|
|
|
1
|
-
import { jsxs as a, jsx as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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,
|
|
8
|
+
children: l,
|
|
9
|
+
checked: e,
|
|
10
|
+
error: t = !1,
|
|
11
|
+
...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 }),
|
|
14
|
+
/* @__PURE__ */ r(
|
|
15
|
+
"div",
|
|
5
16
|
{
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
17
|
+
className: m(
|
|
18
|
+
"flex h-5.5 w-5.5 items-center justify-center rounded transition-colors",
|
|
19
|
+
"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",
|
|
21
|
+
e && "border-primary-500 bg-primary-200 border-2",
|
|
22
|
+
t && "border-error-500 bg-error-20 border"
|
|
23
|
+
),
|
|
24
|
+
children: e && /* @__PURE__ */ r(c, {})
|
|
12
25
|
}
|
|
13
26
|
),
|
|
14
|
-
/* @__PURE__ */
|
|
27
|
+
/* @__PURE__ */ r("span", { className: "leading-tight text-neutral-800", children: l })
|
|
15
28
|
] });
|
|
16
29
|
export {
|
|
17
|
-
|
|
30
|
+
u as Checkbox
|
|
18
31
|
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
const t = (r) => /* @__PURE__ */ i("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...r, children: /* @__PURE__ */ i(
|
|
4
|
+
"path",
|
|
5
|
+
{
|
|
6
|
+
d: "M18.295 7.115C18.6844 6.72564 18.6844 6.09436 18.295 5.705C17.9056 5.31564 17.2744 5.31564 16.885 5.705L12 10.59L7.115 5.705C6.72564 5.31564 6.09436 5.31564 5.705 5.705C5.31564 6.09436 5.31564 6.72564 5.705 7.115L10.59 12L5.705 16.885C5.31564 17.2744 5.31564 17.9056 5.705 18.295C6.09436 18.6844 6.72564 18.6844 7.115 18.295L12 13.41L16.885 18.295C17.2744 18.6844 17.9056 18.6844 18.295 18.295C18.6844 17.9056 18.6844 17.2744 18.295 16.885L13.41 12L18.295 7.115Z",
|
|
7
|
+
fill: r.fill ?? "var(--color-primary-800)"
|
|
8
|
+
}
|
|
9
|
+
) });
|
|
10
|
+
export {
|
|
11
|
+
t as ClearIcon
|
|
12
|
+
};
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { ChangeEventHandler } from 'react';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
1
3
|
import { ComponentPropsWithRef } from 'react';
|
|
2
4
|
import { FC } from 'react';
|
|
3
5
|
import { ReactNode } from 'react';
|
|
@@ -13,6 +15,17 @@ export type ButtonSize = 'small' | 'default' | 'large';
|
|
|
13
15
|
|
|
14
16
|
export type ButtonVariant = 'primary-green' | 'primary-darkgreen' | 'primary-yellow' | 'primary-white' | 'secondary-green' | 'secondary-yellow' | 'secondary-red' | 'secondary-black' | 'tertiary-bold' | 'tertiary-thin' | 'tertiary-icon' | 'tertiary-link' | 'icon-black' | 'icon-grey' | 'icon-mobile';
|
|
15
17
|
|
|
18
|
+
export interface ContactFormCheckboxFieldProps extends Omit<ContactFormFieldProps, 'placeholder' | 'tooltip'> {
|
|
19
|
+
checked: boolean;
|
|
20
|
+
onChange: ChangeEventHandler<HTMLInputElement>;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface ContactFormFeedbackProps {
|
|
24
|
+
message: string;
|
|
25
|
+
title?: string;
|
|
26
|
+
cta: ReactNode | ButtonProps;
|
|
27
|
+
}
|
|
28
|
+
|
|
16
29
|
export declare interface ContactFormFieldProps {
|
|
17
30
|
label: string;
|
|
18
31
|
id: string;
|
|
@@ -20,6 +33,7 @@ export declare interface ContactFormFieldProps {
|
|
|
20
33
|
placeholder?: string;
|
|
21
34
|
required?: boolean;
|
|
22
35
|
tooltip?: string;
|
|
36
|
+
error?: boolean;
|
|
23
37
|
errorMessage?: string;
|
|
24
38
|
}
|
|
25
39
|
|
|
@@ -31,23 +45,36 @@ export declare interface ContactFormSectionProps {
|
|
|
31
45
|
label: string;
|
|
32
46
|
value: string;
|
|
33
47
|
}[];
|
|
34
|
-
fullNameField: Omit<
|
|
35
|
-
emailField: Omit<
|
|
36
|
-
referenceNumberField:
|
|
37
|
-
subjectField:
|
|
38
|
-
messageField:
|
|
48
|
+
fullNameField: Omit<ContactFormTextFieldProps, 'tooltip'>;
|
|
49
|
+
emailField: Omit<ContactFormTextFieldProps, 'tooltip'>;
|
|
50
|
+
referenceNumberField: ContactFormTextFieldProps;
|
|
51
|
+
subjectField: ContactFormSelectFieldProps;
|
|
52
|
+
messageField: ContactFormTextareaFieldProps;
|
|
39
53
|
requiredFieldsText: string;
|
|
40
|
-
privacyField:
|
|
54
|
+
privacyField: ContactFormCheckboxFieldProps;
|
|
41
55
|
securityHint: string;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
cta?: ReactNode;
|
|
47
|
-
};
|
|
56
|
+
status?: 'default' | 'loading' | 'success' | 'error';
|
|
57
|
+
successFeedback: ContactFormFeedbackProps;
|
|
58
|
+
errorFeedback: ContactFormFeedbackProps;
|
|
59
|
+
onSubmit?: ComponentProps<'form'>['onSubmit'];
|
|
48
60
|
button: ButtonProps;
|
|
49
61
|
}
|
|
50
62
|
|
|
63
|
+
export interface ContactFormSelectFieldProps extends Omit<ContactFormFieldProps, 'tooltip'> {
|
|
64
|
+
value: string;
|
|
65
|
+
onChange: ChangeEventHandler<HTMLSelectElement>;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface ContactFormTextareaFieldProps extends Omit<ContactFormFieldProps, 'tooltip'> {
|
|
69
|
+
value: string;
|
|
70
|
+
onChange: ChangeEventHandler<HTMLTextAreaElement>;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export interface ContactFormTextFieldProps extends ContactFormFieldProps {
|
|
74
|
+
value: string;
|
|
75
|
+
onChange: ChangeEventHandler<HTMLInputElement>;
|
|
76
|
+
}
|
|
77
|
+
|
|
51
78
|
export type IconPosition = 'left' | 'right' | 'top';
|
|
52
79
|
|
|
53
80
|
export type ResponsiveButtonVariant = ButtonVariant | {
|
|
@@ -1,104 +1,74 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { Textarea as
|
|
3
|
-
import { Checkbox as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
messageField: t,
|
|
18
|
-
privacyField: d,
|
|
19
|
-
requiredFieldsText: c,
|
|
20
|
-
securityHint: h,
|
|
21
|
-
feedback: i,
|
|
22
|
-
button: x
|
|
23
|
-
}) => /* @__PURE__ */ s("section", { className: "rounded-sm bg-white p-8 shadow-sm", children: [
|
|
24
|
-
/* @__PURE__ */ s("div", { className: "space-y-4", children: [
|
|
25
|
-
/* @__PURE__ */ r("p", { className: "text-big font-bold text-neutral-600", children: n }),
|
|
26
|
-
/* @__PURE__ */ r("div", { className: "h-px w-full bg-neutral-200", "aria-hidden": "true" })
|
|
1
|
+
import { jsxs as t, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { Textarea as b } from "./Textarea.js";
|
|
3
|
+
import { Checkbox as v } from "./Checkbox.js";
|
|
4
|
+
import { ClearIcon as y } from "./ClearIcon.js";
|
|
5
|
+
import { DoneIcon as w } from "./DoneIcon.js";
|
|
6
|
+
import { Input as n } from "./Input.js";
|
|
7
|
+
import { Select as j } from "./Select.js";
|
|
8
|
+
import { Markdown as I } from "./Markdown.js";
|
|
9
|
+
import { InfoIcon as S } from "./InfoIcon.js";
|
|
10
|
+
import { Button as o } from "./Button.js";
|
|
11
|
+
import { LinkWrapper as k } from "./LinkWrapper.js";
|
|
12
|
+
const C = () => /* @__PURE__ */ e("div", { role: "status", "aria-live": "polite", className: "mt-6 flex items-center justify-center rounded py-6", children: /* @__PURE__ */ e("div", { className: "border-primary-500 h-[25px] w-[25px] animate-spin rounded-full border-3 border-t-transparent" }) }), L = ({ title: r, message: l, cta: i }) => /* @__PURE__ */ t("div", { role: "status", "aria-live": "polite", className: "flex flex-col items-center justify-center gap-8 px-4 py-3", children: [
|
|
13
|
+
/* @__PURE__ */ t("div", { className: "flex flex-col items-center gap-2", children: [
|
|
14
|
+
/* @__PURE__ */ e("div", { className: "bg-error-20 w-fit rounded-full p-3", children: /* @__PURE__ */ e(y, { width: 48, height: 48, fill: "var(--error-500)" }) }),
|
|
15
|
+
/* @__PURE__ */ e("p", { className: "text-big font-bold text-neutral-800", children: r }),
|
|
16
|
+
/* @__PURE__ */ e("p", { className: "text-medium text-neutral-800", children: l })
|
|
27
17
|
] }),
|
|
28
|
-
/* @__PURE__ */
|
|
29
|
-
|
|
18
|
+
/* @__PURE__ */ e(o, { ...i, variant: "primary-green" })
|
|
19
|
+
] }), B = ({ title: r, message: l, cta: i }) => /* @__PURE__ */ t("div", { role: "status", "aria-live": "polite", className: "flex flex-col items-center justify-center gap-8 px-4 py-3", children: [
|
|
20
|
+
/* @__PURE__ */ t("div", { className: "flex flex-col items-center gap-2", children: [
|
|
21
|
+
/* @__PURE__ */ e("div", { className: "bg-primary-100 w-fit rounded-full p-3", children: /* @__PURE__ */ e(w, { width: 48, height: 48, fill: "var(--primary-500)" }) }),
|
|
22
|
+
/* @__PURE__ */ e("p", { className: "text-big font-bold text-neutral-800", children: r }),
|
|
23
|
+
/* @__PURE__ */ e("p", { className: "text-medium text-neutral-800", children: l })
|
|
24
|
+
] }),
|
|
25
|
+
/* @__PURE__ */ e(k, { className: "w-fit", children: i })
|
|
26
|
+
] }), G = ({
|
|
27
|
+
title: r,
|
|
28
|
+
subjectOptions: l,
|
|
29
|
+
fullNameField: i,
|
|
30
|
+
emailField: m,
|
|
31
|
+
referenceNumberField: d,
|
|
32
|
+
subjectField: p,
|
|
33
|
+
messageField: f,
|
|
34
|
+
privacyField: s,
|
|
35
|
+
requiredFieldsText: h,
|
|
36
|
+
securityHint: x,
|
|
37
|
+
status: a = "default",
|
|
38
|
+
successFeedback: u,
|
|
39
|
+
errorFeedback: N,
|
|
40
|
+
onSubmit: g,
|
|
41
|
+
button: c
|
|
42
|
+
}) => /* @__PURE__ */ t("section", { className: "rounded-sm bg-white p-8 shadow-sm", children: [
|
|
43
|
+
/* @__PURE__ */ t("div", { className: "space-y-4", children: [
|
|
44
|
+
/* @__PURE__ */ e("p", { className: "text-big font-bold text-neutral-600", children: r }),
|
|
45
|
+
/* @__PURE__ */ e("div", { className: "h-px w-full bg-neutral-200", "aria-hidden": "true" })
|
|
46
|
+
] }),
|
|
47
|
+
a === "loading" && /* @__PURE__ */ e(C, {}),
|
|
48
|
+
a === "error" && /* @__PURE__ */ e(L, { ...N }),
|
|
49
|
+
a === "success" && /* @__PURE__ */ e(B, { ...u }),
|
|
50
|
+
a === "default" && /* @__PURE__ */ t("form", { className: "mt-6 flex flex-col gap-6", noValidate: !0, onSubmit: g, children: [
|
|
51
|
+
/* @__PURE__ */ e(n, { ...i, type: "text" }),
|
|
52
|
+
/* @__PURE__ */ e(n, { ...m, type: "email" }),
|
|
53
|
+
/* @__PURE__ */ e(n, { ...d }),
|
|
54
|
+
/* @__PURE__ */ e(j, { ...p, options: l }),
|
|
55
|
+
/* @__PURE__ */ e(b, { ...f }),
|
|
56
|
+
/* @__PURE__ */ e("p", { className: "text-medium text-neutral-600", children: h }),
|
|
57
|
+
/* @__PURE__ */ e(v, { ...s, children: /* @__PURE__ */ e(I, { className: "text-medium [&_p:last-child]:mb-0", content: s.label }) }),
|
|
58
|
+
/* @__PURE__ */ t(
|
|
30
59
|
"div",
|
|
31
|
-
{
|
|
32
|
-
role: "status",
|
|
33
|
-
"aria-live": "polite",
|
|
34
|
-
className: i.type === "success" ? "rounded border border-green-300 bg-green-50 px-4 py-3 text-green-900" : "rounded border border-red-300 bg-red-50 px-4 py-3 text-red-800",
|
|
35
|
-
children: i.message
|
|
36
|
-
}
|
|
37
|
-
),
|
|
38
|
-
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
39
|
-
/* @__PURE__ */ r(m, { ...o, type: "text" }),
|
|
40
|
-
o.errorMessage && /* @__PURE__ */ r("p", { id: `${o.id}-error-message`, className: "text-small text-red-700", children: o.errorMessage })
|
|
41
|
-
] }),
|
|
42
|
-
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
43
|
-
/* @__PURE__ */ r(m, { ...l, type: "email" }),
|
|
44
|
-
l.errorMessage && /* @__PURE__ */ r("p", { id: `${l.id}-error-message`, className: "text-small text-red-700", children: l.errorMessage })
|
|
45
|
-
] }),
|
|
46
|
-
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
47
|
-
/* @__PURE__ */ r(
|
|
48
|
-
m,
|
|
49
|
-
{
|
|
50
|
-
label: e.label,
|
|
51
|
-
id: e.id,
|
|
52
|
-
name: e.name,
|
|
53
|
-
type: "text",
|
|
54
|
-
placeholder: e.placeholder,
|
|
55
|
-
tooltip: e.tooltip,
|
|
56
|
-
required: e.required
|
|
57
|
-
}
|
|
58
|
-
),
|
|
59
|
-
e.errorMessage && /* @__PURE__ */ r("p", { id: `${e.id}-error-message`, className: "text-small text-red-700", children: e.errorMessage })
|
|
60
|
-
] }),
|
|
61
|
-
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
62
|
-
/* @__PURE__ */ r(
|
|
63
|
-
u,
|
|
64
|
-
{
|
|
65
|
-
label: a.label,
|
|
66
|
-
id: a.id,
|
|
67
|
-
name: a.name,
|
|
68
|
-
placeholder: a.placeholder,
|
|
69
|
-
options: p,
|
|
70
|
-
required: a.required
|
|
71
|
-
}
|
|
72
|
-
),
|
|
73
|
-
a.errorMessage && /* @__PURE__ */ r("p", { id: `${a.id}-error-message`, className: "text-small text-red-700", children: a.errorMessage })
|
|
74
|
-
] }),
|
|
75
|
-
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
76
|
-
/* @__PURE__ */ r(
|
|
77
|
-
g,
|
|
78
|
-
{
|
|
79
|
-
label: t.label,
|
|
80
|
-
id: t.id,
|
|
81
|
-
name: t.name,
|
|
82
|
-
placeholder: t.placeholder,
|
|
83
|
-
required: t.required
|
|
84
|
-
}
|
|
85
|
-
),
|
|
86
|
-
t.errorMessage && /* @__PURE__ */ r("p", { id: `${t.id}-error-message`, className: "text-small text-red-700", children: t.errorMessage })
|
|
87
|
-
] }),
|
|
88
|
-
/* @__PURE__ */ r("p", { className: "text-medium text-neutral-600", children: c }),
|
|
89
|
-
/* @__PURE__ */ r("div", { className: "", children: /* @__PURE__ */ r(y, { id: d.id, name: d.name, required: !0, children: /* @__PURE__ */ r(M, { className: "text-medium [&_p:last-child]:mb-0", content: d.label }) }) }),
|
|
90
|
-
/* @__PURE__ */ r(
|
|
91
|
-
N,
|
|
92
60
|
{
|
|
93
61
|
id: "security-hint",
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
62
|
+
className: "text-small flex items-start gap-2 rounded bg-neutral-50 p-4 text-neutral-600",
|
|
63
|
+
children: [
|
|
64
|
+
/* @__PURE__ */ e(S, { width: 24, height: 24, "aria-hidden": "true" }),
|
|
65
|
+
/* @__PURE__ */ e("p", { children: x })
|
|
66
|
+
]
|
|
97
67
|
}
|
|
98
68
|
),
|
|
99
|
-
/* @__PURE__ */
|
|
69
|
+
/* @__PURE__ */ e(o, { ...c, className: "w-fit self-center", type: "submit", children: c.children })
|
|
100
70
|
] })
|
|
101
71
|
] });
|
|
102
72
|
export {
|
|
103
|
-
|
|
73
|
+
G as ContactFormSection
|
|
104
74
|
};
|
|
@@ -1,36 +1,37 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { jsxs as l, Fragment as r, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { SinglePhoneIcon as s } from "./SinglePhoneIcon.js";
|
|
3
|
+
import { PhoneTalkIcon as m } from "./PhoneTalkIcon.js";
|
|
4
|
+
import { MailFillIcon as c } from "./MailFillIcon.js";
|
|
5
|
+
import { LocationIcon as o } from "./LocationIcon.js";
|
|
6
|
+
import { LinkWrapper as n } from "./LinkWrapper.js";
|
|
7
|
+
const v = ({ label: e, helper: i, variant: t }) => /* @__PURE__ */ l("article", { className: "bg-neutral-25 flex flex-wrap gap-2 rounded-sm p-4 md:flex-col", children: [
|
|
8
|
+
t === "phone" && /* @__PURE__ */ l(r, { children: [
|
|
9
|
+
/* @__PURE__ */ l(n, { variant: "primary-green", className: "w-full md:hidden", children: [
|
|
10
|
+
/* @__PURE__ */ a(s, { width: 22, height: 22, fill: "white" }),
|
|
10
11
|
" ",
|
|
11
12
|
e
|
|
12
13
|
] }),
|
|
13
|
-
/* @__PURE__ */
|
|
14
|
-
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(
|
|
15
|
-
/* @__PURE__ */
|
|
16
|
-
/* @__PURE__ */ a(
|
|
17
|
-
|
|
14
|
+
/* @__PURE__ */ l("div", { className: "hidden gap-2 md:flex", children: [
|
|
15
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(m, { fill: "var(--primary-800)" }) }),
|
|
16
|
+
/* @__PURE__ */ l("div", { className: "flex flex-col gap-1", children: [
|
|
17
|
+
/* @__PURE__ */ a(n, { className: "justify-start! p-0! no-underline!", variant: "tertiary-link", children: /* @__PURE__ */ a("span", { className: "text-medium text-primary-800 font-bold", children: e }) }),
|
|
18
|
+
i && /* @__PURE__ */ a("p", { className: "text-small mx-auto text-neutral-600 md:mx-0", children: i })
|
|
18
19
|
] })
|
|
19
20
|
] }),
|
|
20
|
-
|
|
21
|
+
i && /* @__PURE__ */ a("p", { className: "text-small mx-auto text-neutral-600 md:mx-0 md:hidden", children: i })
|
|
21
22
|
] }),
|
|
22
|
-
|
|
23
|
-
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(
|
|
24
|
-
/* @__PURE__ */
|
|
25
|
-
/* @__PURE__ */ a(
|
|
26
|
-
|
|
23
|
+
t === "email" && /* @__PURE__ */ l("div", { className: "flex gap-2", children: [
|
|
24
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(c, { fill: "var(--primary-800)" }) }),
|
|
25
|
+
/* @__PURE__ */ l("div", { className: "flex flex-col gap-1", children: [
|
|
26
|
+
/* @__PURE__ */ a(n, { className: "justify-start! p-0!", variant: "tertiary-link", children: /* @__PURE__ */ a("span", { className: "text-medium text-primary-800 font-bold", children: e }) }),
|
|
27
|
+
i && /* @__PURE__ */ a("p", { className: "text-small text-neutral-600", children: i })
|
|
27
28
|
] })
|
|
28
29
|
] }),
|
|
29
|
-
|
|
30
|
-
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(
|
|
31
|
-
|
|
30
|
+
t === "location" && /* @__PURE__ */ l("div", { className: "flex gap-2", children: [
|
|
31
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(o, { fill: "var(--primary-800)" }) }),
|
|
32
|
+
i && /* @__PURE__ */ a("p", { className: "text-small text-neutral-600", children: i })
|
|
32
33
|
] })
|
|
33
34
|
] });
|
|
34
35
|
export {
|
|
35
|
-
|
|
36
|
+
v as ContactMethodCard
|
|
36
37
|
};
|