@npm_leadtech/legal-contracts-ui 0.99.8 → 0.101.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 +1 -2
- package/dist/components/AboutUsTemplate.js +24 -24
- package/dist/components/AllDocumentsTemplate.d.ts +0 -1
- package/dist/components/Button.d.ts +1 -2
- package/dist/components/Button.js +13 -14
- package/dist/components/CategoryProductTemplate.d.ts +0 -1
- package/dist/components/ContactFormSection.d.ts +57 -1
- package/dist/components/ContactFormSection.js +91 -69
- package/dist/components/ContactMethodCard.d.ts +4 -3
- package/dist/components/ContactMethodCard.js +32 -7
- package/dist/components/ContactMethodsSection.d.ts +3 -4
- package/dist/components/ContactMethodsSection.js +4 -5
- package/dist/components/ContactUsSection.d.ts +1 -1
- package/dist/components/ContactUsSection.js +12 -10
- package/dist/components/ContactUsTemplate.d.ts +64 -5
- package/dist/components/ContactUsTemplate.js +22 -10
- package/dist/components/CtaSection.d.ts +0 -1
- package/dist/components/DocumentItem.d.ts +0 -1
- package/dist/components/DocumentItem.js +11 -15
- package/dist/components/DocumentSection.d.ts +0 -1
- package/dist/components/GuidelinesSection.d.ts +0 -1
- package/dist/components/Header.d.ts +0 -2
- package/dist/components/HowItWorksTemplate.d.ts +0 -1
- package/dist/components/Input.js +5 -5
- package/dist/components/IntroSection.d.ts +0 -1
- package/dist/components/IntroSection.js +11 -11
- package/dist/components/Jumbotron2.js +4 -4
- package/dist/components/LocationIcon.js +4 -4
- package/dist/components/MailFillIcon.js +4 -4
- package/dist/components/MobileMenu.d.ts +0 -2
- package/dist/components/MobileMenu.js +6 -6
- package/dist/components/NotFoundTemplate.d.ts +71 -5
- package/dist/components/NotFoundTemplate.js +8 -20
- package/dist/components/SearchBar.d.ts +0 -2
- package/dist/components/SearchBar.js +30 -33
- package/dist/components/Select.js +1 -1
- package/dist/components/Textarea.js +1 -1
- package/dist/components/WeHelpSection.d.ts +0 -1
- package/dist/components/index.d.ts +39 -18
- package/dist/globals.css +1 -1
- package/package.json +1 -5
- package/dist/components/Card.d.ts +0 -10
- package/dist/components/Card.js +0 -8
|
@@ -24,7 +24,6 @@ export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'chil
|
|
|
24
24
|
size?: ButtonSize;
|
|
25
25
|
variant?: ResponsiveButtonVariant;
|
|
26
26
|
iconPosition?: IconPosition;
|
|
27
|
-
href?: string;
|
|
28
27
|
}
|
|
29
28
|
|
|
30
29
|
export type ButtonSize = 'small' | 'default' | 'large';
|
|
@@ -35,7 +34,7 @@ export interface ContactUsSectionProps {
|
|
|
35
34
|
header: SectionHeadingProps;
|
|
36
35
|
contactOptions: Array<{
|
|
37
36
|
title: string;
|
|
38
|
-
description
|
|
37
|
+
description?: string;
|
|
39
38
|
icon: ReactNode;
|
|
40
39
|
helper?: string;
|
|
41
40
|
}>;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsxs as S, jsx as o } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
2
|
+
import { MissionSection as u } from "./MissionSection.js";
|
|
3
|
+
import { ValuesSection as x } from "./ValuesSection.js";
|
|
4
|
+
import { Storyline as b } from "./Storyline.js";
|
|
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,
|
|
@@ -25,18 +25,18 @@ const v = ({
|
|
|
25
25
|
cta: l,
|
|
26
26
|
contactUs: a
|
|
27
27
|
}) => /* @__PURE__ */ S("main", { className: "mx-auto flex w-full flex-1 flex-col text-neutral-800", children: [
|
|
28
|
-
/* @__PURE__ */ o(
|
|
29
|
-
/* @__PURE__ */ o(
|
|
30
|
-
/* @__PURE__ */ o(
|
|
31
|
-
/* @__PURE__ */ o(
|
|
32
|
-
/* @__PURE__ */ o(
|
|
33
|
-
/* @__PURE__ */ o(
|
|
34
|
-
/* @__PURE__ */ o(
|
|
35
|
-
/* @__PURE__ */ o(
|
|
36
|
-
/* @__PURE__ */ o(
|
|
37
|
-
/* @__PURE__ */ o(
|
|
38
|
-
/* @__PURE__ */ o(
|
|
39
|
-
/* @__PURE__ */ o(
|
|
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
|
+
/* @__PURE__ */ o(b, { ...e }),
|
|
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
|
|
@@ -2,14 +2,13 @@ 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,
|
|
5
|
+
export declare const Button: ({ children, type, size, variant, iconPosition, className, disabled, ref, ...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
|
-
href?: string;
|
|
13
12
|
}
|
|
14
13
|
|
|
15
14
|
export type ButtonSize = 'small' | 'default' | 'large';
|
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as l } from "react/jsx-runtime";
|
|
2
|
+
import { getButtonClasses as p } from "./Button.utils.js";
|
|
2
3
|
import "react";
|
|
3
|
-
|
|
4
|
-
const N = ({
|
|
4
|
+
const x = ({
|
|
5
5
|
children: o,
|
|
6
|
-
type:
|
|
7
|
-
size:
|
|
8
|
-
variant:
|
|
9
|
-
iconPosition:
|
|
10
|
-
className:
|
|
6
|
+
type: r = "button",
|
|
7
|
+
size: s = "default",
|
|
8
|
+
variant: e = "primary-green",
|
|
9
|
+
iconPosition: a = "left",
|
|
10
|
+
className: n,
|
|
11
11
|
disabled: t = !1,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
...a
|
|
12
|
+
ref: m,
|
|
13
|
+
...u
|
|
15
14
|
}) => {
|
|
16
|
-
const
|
|
17
|
-
return
|
|
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 });
|
|
18
17
|
};
|
|
19
18
|
export {
|
|
20
|
-
|
|
19
|
+
x as Button
|
|
21
20
|
};
|
|
@@ -1,4 +1,60 @@
|
|
|
1
|
+
import { ComponentPropsWithRef } from 'react';
|
|
1
2
|
import { FC } from 'react';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
2
4
|
|
|
3
|
-
export
|
|
5
|
+
export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
size?: ButtonSize;
|
|
8
|
+
variant?: ResponsiveButtonVariant;
|
|
9
|
+
iconPosition?: IconPosition;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type ButtonSize = 'small' | 'default' | 'large';
|
|
13
|
+
|
|
14
|
+
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
|
+
|
|
16
|
+
export declare interface ContactFormFieldProps {
|
|
17
|
+
label: string;
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
placeholder?: string;
|
|
21
|
+
required?: boolean;
|
|
22
|
+
tooltip?: string;
|
|
23
|
+
errorMessage?: string;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export declare const ContactFormSection: FC<ContactFormSectionProps>;
|
|
27
|
+
|
|
28
|
+
export declare interface ContactFormSectionProps {
|
|
29
|
+
title: ReactNode;
|
|
30
|
+
subjectOptions: {
|
|
31
|
+
label: string;
|
|
32
|
+
value: string;
|
|
33
|
+
}[];
|
|
34
|
+
fullNameField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
35
|
+
emailField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
36
|
+
referenceNumberField: ContactFormFieldProps;
|
|
37
|
+
subjectField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
38
|
+
messageField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
39
|
+
requiredFieldsText: string;
|
|
40
|
+
privacyField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
41
|
+
securityHint: string;
|
|
42
|
+
feedback?: {
|
|
43
|
+
type: 'success' | 'error';
|
|
44
|
+
message: string;
|
|
45
|
+
title?: string;
|
|
46
|
+
cta?: ReactNode;
|
|
47
|
+
};
|
|
48
|
+
button: ButtonProps;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type IconPosition = 'left' | 'right' | 'top';
|
|
52
|
+
|
|
53
|
+
export type ResponsiveButtonVariant = ButtonVariant | {
|
|
54
|
+
initial?: ButtonVariant;
|
|
55
|
+
sm?: ButtonVariant;
|
|
56
|
+
md?: ButtonVariant;
|
|
57
|
+
lg?: ButtonVariant;
|
|
58
|
+
xl?: ButtonVariant;
|
|
59
|
+
};
|
|
4
60
|
|
|
@@ -1,82 +1,104 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { Textarea as
|
|
3
|
-
import { Checkbox as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { Item as
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
import { jsxs as s, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { Textarea as g } from "./Textarea.js";
|
|
3
|
+
import { Checkbox as y } from "./Checkbox.js";
|
|
4
|
+
import { Input as m } from "./Input.js";
|
|
5
|
+
import { Select as u } from "./Select.js";
|
|
6
|
+
import { Markdown as M } from "./Markdown.js";
|
|
7
|
+
import { Item as N } from "./Item.js";
|
|
8
|
+
import { InfoIcon as v } from "./InfoIcon.js";
|
|
9
|
+
import { Button as q } from "./Button.js";
|
|
10
|
+
const V = ({
|
|
11
|
+
title: n,
|
|
12
|
+
subjectOptions: p,
|
|
13
|
+
fullNameField: o,
|
|
14
|
+
emailField: l,
|
|
15
|
+
referenceNumberField: e,
|
|
16
|
+
subjectField: a,
|
|
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" })
|
|
18
27
|
] }),
|
|
19
|
-
/* @__PURE__ */
|
|
20
|
-
/* @__PURE__ */
|
|
21
|
-
|
|
22
|
-
/* @__PURE__ */ e(
|
|
23
|
-
a,
|
|
28
|
+
/* @__PURE__ */ s("form", { className: "mt-6 flex flex-col gap-6", noValidate: !0, children: [
|
|
29
|
+
i && /* @__PURE__ */ r(
|
|
30
|
+
"div",
|
|
24
31
|
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
placeholder: "e.g. 12345678",
|
|
30
|
-
tooltip: "Where to find your reference number"
|
|
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
|
|
31
36
|
}
|
|
32
37
|
),
|
|
33
|
-
/* @__PURE__ */
|
|
34
|
-
|
|
35
|
-
{
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
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,
|
|
51
64
|
{
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
65
|
+
label: a.label,
|
|
66
|
+
id: a.id,
|
|
67
|
+
name: a.name,
|
|
68
|
+
placeholder: a.placeholder,
|
|
69
|
+
options: p,
|
|
70
|
+
required: a.required
|
|
57
71
|
}
|
|
58
|
-
)
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
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,
|
|
62
92
|
{
|
|
63
|
-
id: "
|
|
64
|
-
image: /* @__PURE__ */
|
|
65
|
-
description:
|
|
66
|
-
className: "text-small flex items-start gap-
|
|
93
|
+
id: "security-hint",
|
|
94
|
+
image: /* @__PURE__ */ r(v, { width: 24, height: 24, "aria-hidden": "true" }),
|
|
95
|
+
description: h,
|
|
96
|
+
className: "text-small flex items-start gap-2 rounded bg-neutral-50 p-4 text-neutral-600"
|
|
67
97
|
}
|
|
68
98
|
),
|
|
69
|
-
/* @__PURE__ */
|
|
70
|
-
s,
|
|
71
|
-
{
|
|
72
|
-
type: "submit",
|
|
73
|
-
size: "large",
|
|
74
|
-
className: "bg-primary-500 hover:bg-primary-400 focus-visible:outline-primary-500 w-full justify-center text-white",
|
|
75
|
-
children: /* @__PURE__ */ e("span", { className: "text-medium font-bold text-white", children: "Send Message" })
|
|
76
|
-
}
|
|
77
|
-
)
|
|
99
|
+
/* @__PURE__ */ r(q, { ...x, variant: "primary-green", className: "w-fit self-center" })
|
|
78
100
|
] })
|
|
79
101
|
] });
|
|
80
102
|
export {
|
|
81
|
-
|
|
103
|
+
V as ContactFormSection
|
|
82
104
|
};
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
2
3
|
|
|
3
4
|
export declare interface ContactMethod {
|
|
4
|
-
|
|
5
|
-
label
|
|
5
|
+
id: string;
|
|
6
|
+
label?: ReactNode;
|
|
6
7
|
helper?: string;
|
|
7
|
-
|
|
8
|
+
variant: 'phone' | 'email' | 'location';
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
export declare const ContactMethodCard: FC<ContactMethod>;
|
|
@@ -1,11 +1,36 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { jsxs as i, Fragment as r, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { PhoneTalkIcon as n } from "./PhoneTalkIcon.js";
|
|
3
|
+
import { MailFillIcon as m } from "./MailFillIcon.js";
|
|
4
|
+
import { LocationIcon as c } from "./LocationIcon.js";
|
|
5
|
+
import { LinkWrapper as t } from "./LinkWrapper.js";
|
|
6
|
+
const y = ({ label: e, helper: l, variant: s }) => /* @__PURE__ */ i("article", { className: "bg-neutral-25 flex flex-wrap gap-2 rounded-sm p-4 md:flex-col", children: [
|
|
7
|
+
s === "phone" && /* @__PURE__ */ i(r, { children: [
|
|
8
|
+
/* @__PURE__ */ i(t, { variant: "primary-green", className: "w-full md:hidden", children: [
|
|
9
|
+
/* @__PURE__ */ a(n, { fill: "white" }),
|
|
10
|
+
" ",
|
|
11
|
+
e
|
|
12
|
+
] }),
|
|
13
|
+
/* @__PURE__ */ i("div", { className: "hidden gap-2 md:flex", children: [
|
|
14
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(n, { fill: "var(--primary-800)" }) }),
|
|
15
|
+
/* @__PURE__ */ i("div", { className: "flex flex-col gap-1", children: [
|
|
16
|
+
/* @__PURE__ */ a(t, { className: "justify-start! p-0! no-underline!", variant: "tertiary-link", children: /* @__PURE__ */ a("span", { className: "text-medium text-primary-800 font-bold", children: e }) }),
|
|
17
|
+
l && /* @__PURE__ */ a("p", { className: "text-small mx-auto text-neutral-600 md:mx-0", children: l })
|
|
18
|
+
] })
|
|
19
|
+
] }),
|
|
20
|
+
l && /* @__PURE__ */ a("p", { className: "text-small mx-auto text-neutral-600 md:mx-0 md:hidden", children: l })
|
|
21
|
+
] }),
|
|
22
|
+
s === "email" && /* @__PURE__ */ i("div", { className: "flex gap-2", children: [
|
|
23
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(m, { fill: "var(--primary-800)" }) }),
|
|
24
|
+
/* @__PURE__ */ i("div", { className: "flex flex-col gap-1", children: [
|
|
25
|
+
/* @__PURE__ */ a(t, { className: "justify-start! p-0!", variant: "tertiary-link", children: /* @__PURE__ */ a("span", { className: "text-medium text-primary-800 font-bold", children: e }) }),
|
|
26
|
+
l && /* @__PURE__ */ a("p", { className: "text-small text-neutral-600", children: l })
|
|
27
|
+
] })
|
|
28
|
+
] }),
|
|
29
|
+
s === "location" && /* @__PURE__ */ i("div", { className: "flex gap-2", children: [
|
|
30
|
+
/* @__PURE__ */ a("span", { className: "shrink-0", children: /* @__PURE__ */ a(c, { fill: "var(--primary-800)" }) }),
|
|
31
|
+
l && /* @__PURE__ */ a("p", { className: "text-small text-neutral-600", children: l })
|
|
7
32
|
] })
|
|
8
33
|
] });
|
|
9
34
|
export {
|
|
10
|
-
|
|
35
|
+
y as ContactMethodCard
|
|
11
36
|
};
|
|
@@ -2,16 +2,15 @@ import { FC } from 'react';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
|
|
4
4
|
export interface ContactMethod {
|
|
5
|
-
|
|
6
|
-
label
|
|
5
|
+
id: string;
|
|
6
|
+
label?: ReactNode;
|
|
7
7
|
helper?: string;
|
|
8
|
-
|
|
8
|
+
variant: 'phone' | 'email' | 'location';
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export declare const ContactMethodsSection: FC<ContactMethodsSectionProps>;
|
|
12
12
|
|
|
13
13
|
export declare interface ContactMethodsSectionProps {
|
|
14
14
|
items: ContactMethod[];
|
|
15
|
-
title?: ReactNode;
|
|
16
15
|
}
|
|
17
16
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
const n = ({ items: t, title: a }) => /* @__PURE__ */ o("section", { "aria-labelledby": "contact-methods-heading", children: /* @__PURE__ */ o(r, { title: a, children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-4", children: t.map((e) => /* @__PURE__ */ o(c, { ...e }, e.label)) }) }) });
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { ContactMethodCard as s } from "./ContactMethodCard.js";
|
|
3
|
+
const r = ({ items: e }) => /* @__PURE__ */ t("section", { className: "flex flex-col gap-4 rounded-sm bg-white p-6 shadow-sm", children: e.map((o) => /* @__PURE__ */ t(s, { ...o }, o.id)) });
|
|
5
4
|
export {
|
|
6
|
-
|
|
5
|
+
r as ContactMethodsSection
|
|
7
6
|
};
|
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
2
|
-
import { SectionHeading as
|
|
3
|
-
const
|
|
4
|
-
/* @__PURE__ */ e(
|
|
5
|
-
/* @__PURE__ */ e("div", { className: "
|
|
1
|
+
import { jsx as e, jsxs as t } from "react/jsx-runtime";
|
|
2
|
+
import { SectionHeading as c } from "./SectionHeading.js";
|
|
3
|
+
const n = ({ header: r, contactOptions: s }) => s.length === 0 ? null : /* @__PURE__ */ e("section", { className: "bg-neutral-25 px-4 pt-16 pb-20", children: /* @__PURE__ */ t("div", { className: "mx-auto max-w-6xl space-y-10", children: [
|
|
4
|
+
/* @__PURE__ */ e(c, { ...r, className: "px-6" }),
|
|
5
|
+
/* @__PURE__ */ e("div", { className: "flex flex-col items-center gap-6 sm:flex-row sm:items-start sm:justify-center", children: s.map((l) => /* @__PURE__ */ t(
|
|
6
6
|
"article",
|
|
7
7
|
{
|
|
8
|
-
className: "flex flex-col items-center gap-4 rounded
|
|
8
|
+
className: "flex h-36 w-52 flex-col items-center justify-center gap-4 rounded bg-white text-center shadow-sm",
|
|
9
9
|
children: [
|
|
10
10
|
/* @__PURE__ */ e("div", { className: "bg-primary-50 rounded-full p-3", children: l.icon }),
|
|
11
|
-
/* @__PURE__ */
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
/* @__PURE__ */ t("div", { className: "flex flex-col items-center justify-center", children: [
|
|
12
|
+
/* @__PURE__ */ e("p", { className: "text-neutral-800", children: l.title }),
|
|
13
|
+
/* @__PURE__ */ e("p", { className: "text-neutral-800", children: l.description }),
|
|
14
|
+
l.helper && /* @__PURE__ */ e("p", { className: "text-neutral-800", children: l.helper })
|
|
15
|
+
] })
|
|
14
16
|
]
|
|
15
17
|
},
|
|
16
18
|
l.title
|
|
17
19
|
)) })
|
|
18
20
|
] }) });
|
|
19
21
|
export {
|
|
20
|
-
|
|
22
|
+
n as ContactUsSection
|
|
21
23
|
};
|
|
@@ -1,16 +1,60 @@
|
|
|
1
|
+
import { ComponentPropsWithRef } from 'react';
|
|
1
2
|
import { FC } from 'react';
|
|
2
3
|
import { ReactNode } from 'react';
|
|
3
4
|
|
|
4
|
-
export interface
|
|
5
|
-
|
|
5
|
+
export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
size?: ButtonSize;
|
|
8
|
+
variant?: ResponsiveButtonVariant;
|
|
9
|
+
iconPosition?: IconPosition;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type ButtonSize = 'small' | 'default' | 'large';
|
|
13
|
+
|
|
14
|
+
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
|
+
|
|
16
|
+
export interface ContactFormFieldProps {
|
|
6
17
|
label: string;
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
placeholder?: string;
|
|
21
|
+
required?: boolean;
|
|
22
|
+
tooltip?: string;
|
|
23
|
+
errorMessage?: string;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface ContactFormSectionProps {
|
|
27
|
+
title: ReactNode;
|
|
28
|
+
subjectOptions: {
|
|
29
|
+
label: string;
|
|
30
|
+
value: string;
|
|
31
|
+
}[];
|
|
32
|
+
fullNameField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
33
|
+
emailField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
34
|
+
referenceNumberField: ContactFormFieldProps;
|
|
35
|
+
subjectField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
36
|
+
messageField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
37
|
+
requiredFieldsText: string;
|
|
38
|
+
privacyField: Omit<ContactFormFieldProps, 'tooltip'>;
|
|
39
|
+
securityHint: string;
|
|
40
|
+
feedback?: {
|
|
41
|
+
type: 'success' | 'error';
|
|
42
|
+
message: string;
|
|
43
|
+
title?: string;
|
|
44
|
+
cta?: ReactNode;
|
|
45
|
+
};
|
|
46
|
+
button: ButtonProps;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface ContactMethod {
|
|
50
|
+
id: string;
|
|
51
|
+
label?: ReactNode;
|
|
7
52
|
helper?: string;
|
|
8
|
-
|
|
53
|
+
variant: 'phone' | 'email' | 'location';
|
|
9
54
|
}
|
|
10
55
|
|
|
11
56
|
export interface ContactMethodsSectionProps {
|
|
12
57
|
items: ContactMethod[];
|
|
13
|
-
title?: ReactNode;
|
|
14
58
|
}
|
|
15
59
|
|
|
16
60
|
export declare const ContactUsTemplate: FC<ContactUsTemplateProps>;
|
|
@@ -18,13 +62,28 @@ export declare const ContactUsTemplate: FC<ContactUsTemplateProps>;
|
|
|
18
62
|
export declare interface ContactUsTemplateProps {
|
|
19
63
|
jumbotron: Jumbotron2Props;
|
|
20
64
|
contactMethods: ContactMethodsSectionProps;
|
|
21
|
-
|
|
65
|
+
contactForm: ContactFormSectionProps;
|
|
66
|
+
faqSection: {
|
|
67
|
+
faqTitle: string;
|
|
68
|
+
faqText: string;
|
|
69
|
+
faqCta: ReactNode;
|
|
70
|
+
};
|
|
22
71
|
}
|
|
23
72
|
|
|
73
|
+
export type IconPosition = 'left' | 'right' | 'top';
|
|
74
|
+
|
|
24
75
|
export interface Jumbotron2Props {
|
|
25
76
|
title: string;
|
|
26
77
|
subtitle?: string;
|
|
27
78
|
className?: string;
|
|
28
79
|
children?: React.ReactNode;
|
|
29
80
|
}
|
|
81
|
+
|
|
82
|
+
export type ResponsiveButtonVariant = ButtonVariant | {
|
|
83
|
+
initial?: ButtonVariant;
|
|
84
|
+
sm?: ButtonVariant;
|
|
85
|
+
md?: ButtonVariant;
|
|
86
|
+
lg?: ButtonVariant;
|
|
87
|
+
xl?: ButtonVariant;
|
|
88
|
+
};
|
|
30
89
|
|