@npm_leadtech/legal-contracts-ui 0.44.16 → 0.44.17

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.
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -19,13 +20,17 @@ export declare interface AboutUsTemplateProps {
19
20
  contactUs: ContactUsSectionProps;
20
21
  }
21
22
 
22
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
23
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
24
+ as?: C;
23
25
  children: ReactNode;
24
26
  size?: ButtonSize;
25
27
  variant?: ButtonVariant;
26
28
  iconPosition?: IconPosition;
29
+ disabled?: boolean;
27
30
  }
28
31
 
32
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
33
+
29
34
  export type ButtonSize = 'small' | 'default' | 'large';
30
35
 
31
36
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -16,13 +17,17 @@ export interface BaseSubtypeDocumentProps {
16
17
  wordDownload: ButtonProps;
17
18
  }
18
19
 
19
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
20
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
21
+ as?: C;
20
22
  children: ReactNode;
21
23
  size?: ButtonSize;
22
24
  variant?: ButtonVariant;
23
25
  iconPosition?: IconPosition;
26
+ disabled?: boolean;
24
27
  }
25
28
 
29
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
30
+
26
31
  export type ButtonSize = 'small' | 'default' | 'large';
27
32
 
28
33
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -15,13 +16,17 @@ export declare interface BlogSectionProps {
15
16
  cta: ButtonProps;
16
17
  }
17
18
 
18
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
19
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
20
+ as?: C;
19
21
  children: ReactNode;
20
22
  size?: ButtonSize;
21
23
  variant?: ButtonVariant;
22
24
  iconPosition?: IconPosition;
25
+ disabled?: boolean;
23
26
  }
24
27
 
28
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
29
+
25
30
  export type ButtonSize = 'small' | 'default' | 'large';
26
31
 
27
32
  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';
@@ -1,16 +1,21 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { JSX } from 'react/jsx-runtime';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export declare const Button: ({ children, type, size, variant, iconPosition, className, disabled, ref, ...props }: ButtonProps) => JSX.Element;
6
+ export declare const Button: <C extends ElementType = "button">({ as, children, size, variant, iconPosition, disabled, className, ...props }: ButtonProps<C>) => JSX.Element;
6
7
 
7
- export declare interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
8
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
9
+ as?: C;
8
10
  children: ReactNode;
9
11
  size?: ButtonSize;
10
12
  variant?: ButtonVariant;
11
13
  iconPosition?: IconPosition;
14
+ disabled?: boolean;
12
15
  }
13
16
 
17
+ export declare type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
18
+
14
19
  export declare type ButtonSize = 'small' | 'default' | 'large';
15
20
 
16
21
  export declare 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';
@@ -1,6 +1,6 @@
1
- import { jsx as g } from "react/jsx-runtime";
1
+ import { jsx as u } from "react/jsx-runtime";
2
2
  import "react";
3
- const p = {
3
+ const g = {
4
4
  "primary-green": {
5
5
  base: "bg-primary-700 text-white border border-transparent font-semibold",
6
6
  hover: "hover:bg-primary-500",
@@ -76,44 +76,54 @@ const p = {
76
76
  hover: "hover:bg-neutral-50",
77
77
  disabled: "disabled:text-neutral-400 disabled:border-neutral-400 disabled:bg-white disabled:cursor-not-allowed"
78
78
  }
79
- }, m = {
79
+ }, p = {
80
80
  small: "px-3 py-1.5 text-small",
81
81
  default: "px-4 py-2.5 text-medium",
82
82
  large: "px-6 py-3 text-big"
83
- }, x = ({
84
- children: a,
85
- type: d = "button",
86
- size: o = "default",
87
- variant: l = "primary-green",
88
- iconPosition: t = "left",
89
- className: b,
90
- disabled: e = !1,
91
- ref: s,
92
- ...n
93
- }) => {
94
- const r = p[l], i = () => t === "top" ? "flex-col" : t === "right" ? "flex-row-reverse" : "flex-row", u = [
83
+ };
84
+ function c({
85
+ variant: a = "primary-green",
86
+ size: d = "default",
87
+ iconPosition: r = "left",
88
+ disabled: o = !1,
89
+ className: l
90
+ }) {
91
+ const e = g[a], t = r === "top" ? "flex-col" : r === "right" ? "flex-row-reverse" : "flex-row";
92
+ return [
95
93
  "inline-flex items-center justify-center gap-2 rounded-sm font-medium transition-all duration-200",
96
94
  "focus:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 focus-visible:ring-offset-2",
97
- e ? "" : "cursor-pointer",
98
- r.base,
99
- r.hover,
100
- r.disabled,
101
- m[o],
102
- i()
103
- ].join(" ");
104
- return /* @__PURE__ */ g(
105
- "button",
95
+ o ? "" : "cursor-pointer",
96
+ e.base,
97
+ e.hover,
98
+ e.disabled,
99
+ p[d],
100
+ t,
101
+ l ?? ""
102
+ ].join(" ").trim();
103
+ }
104
+ const y = ({
105
+ as: a,
106
+ children: d,
107
+ size: r = "default",
108
+ variant: o = "primary-green",
109
+ iconPosition: l = "left",
110
+ disabled: e = !1,
111
+ className: b,
112
+ ...t
113
+ }) => {
114
+ const s = a ?? "button", n = s === "button", i = c({ variant: o, size: r, iconPosition: l, disabled: e, className: b });
115
+ return /* @__PURE__ */ u(
116
+ s,
106
117
  {
107
- ref: s,
108
- type: d,
109
- disabled: e,
118
+ ...t,
119
+ ...n ? { type: t.type ?? "button" } : {},
120
+ ...n ? { disabled: e } : { "aria-disabled": e },
110
121
  "aria-disabled": e,
111
- className: `${u} ${b ?? ""}`,
112
- ...n,
113
- children: a
122
+ className: i,
123
+ children: d
114
124
  }
115
125
  );
116
126
  };
117
127
  export {
118
- x as Button
128
+ y as Button
119
129
  };
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -21,13 +22,17 @@ export interface BreadcrumbProps {
21
22
  className?: string;
22
23
  }
23
24
 
24
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
25
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
26
+ as?: C;
25
27
  children: ReactNode;
26
28
  size?: ButtonSize;
27
29
  variant?: ButtonVariant;
28
30
  iconPosition?: IconPosition;
31
+ disabled?: boolean;
29
32
  }
30
33
 
34
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
35
+
31
36
  export type ButtonSize = 'small' | 'default' | 'large';
32
37
 
33
38
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -14,13 +15,17 @@ export interface BaseSubtypeDocumentProps {
14
15
  wordDownload: ButtonProps;
15
16
  }
16
17
 
17
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
18
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
19
+ as?: C;
18
20
  children: ReactNode;
19
21
  size?: ButtonSize;
20
22
  variant?: ButtonVariant;
21
23
  iconPosition?: IconPosition;
24
+ disabled?: boolean;
22
25
  }
23
26
 
27
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
28
+
24
29
  export type ButtonSize = 'small' | 'default' | 'large';
25
30
 
26
31
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -14,13 +15,17 @@ export declare interface BaseSubtypeDocumentProps {
14
15
  wordDownload: ButtonProps;
15
16
  }
16
17
 
17
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
18
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
19
+ as?: C;
18
20
  children: ReactNode;
19
21
  size?: ButtonSize;
20
22
  variant?: ButtonVariant;
21
23
  iconPosition?: IconPosition;
24
+ disabled?: boolean;
22
25
  }
23
26
 
27
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
28
+
24
29
  export type ButtonSize = 'small' | 'default' | 'large';
25
30
 
26
31
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -13,13 +14,17 @@ export interface BlogSectionProps {
13
14
  cta: ButtonProps;
14
15
  }
15
16
 
16
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
17
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
18
+ as?: C;
17
19
  children: ReactNode;
18
20
  size?: ButtonSize;
19
21
  variant?: ButtonVariant;
20
22
  iconPosition?: IconPosition;
23
+ disabled?: boolean;
21
24
  }
22
25
 
26
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
27
+
23
28
  export type ButtonSize = 'small' | 'default' | 'large';
24
29
 
25
30
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,15 +1,20 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import * as React_2 from 'react';
4
5
  import { ReactNode } from 'react';
5
6
 
6
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
7
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
8
+ as?: C;
7
9
  children: ReactNode;
8
10
  size?: ButtonSize;
9
11
  variant?: ButtonVariant;
10
12
  iconPosition?: IconPosition;
13
+ disabled?: boolean;
11
14
  }
12
15
 
16
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
17
+
13
18
  export type ButtonSize = 'small' | 'default' | 'large';
14
19
 
15
20
  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';
@@ -1,6 +1,25 @@
1
+ import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
1
3
  import { FC } from 'react';
2
4
  import { ReactNode } from 'react';
3
5
 
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
8
+ children: ReactNode;
9
+ size?: ButtonSize;
10
+ variant?: ButtonVariant;
11
+ iconPosition?: IconPosition;
12
+ disabled?: boolean;
13
+ }
14
+
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
17
+ export type ButtonSize = 'small' | 'default' | 'large';
18
+
19
+ 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';
20
+
21
+ export type IconPosition = 'left' | 'right' | 'top';
22
+
4
23
  export declare const Preform: FC<PreformProps>;
5
24
 
6
25
  export interface PreformOptionProps {
@@ -13,7 +32,7 @@ export declare interface PreformProps {
13
32
  trustedBadge: TrustedBadgeProps;
14
33
  title?: string;
15
34
  options: PreformOptionProps[];
16
- ctaLabel: string;
35
+ cta: ButtonProps<ElementType>;
17
36
  }
18
37
 
19
38
  export interface TrustedBadgeProps {
@@ -1,19 +1,19 @@
1
- import { jsx as e, jsxs as s } from "react/jsx-runtime";
2
- import { TrustedBadge as x } from "./TrustedBadge.js";
3
- import { PreformOption as c } from "./PreformOption.js";
4
- import { Button as p } from "./Button.js";
5
- const f = ({ trustedBadge: a, title: t, options: m, ctaLabel: r }) => /* @__PURE__ */ e("section", { className: "bg-neutral-25 pt-10 text-neutral-800 sm:px-6 lg:px-8 xl:px-30", children: /* @__PURE__ */ s("div", { 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", children: [
6
- /* @__PURE__ */ e(x, { ...a }),
7
- /* @__PURE__ */ e("h2", { className: "text-medium sm:text-large font-bold", children: t }),
8
- /* @__PURE__ */ e("div", { className: "flex w-full max-w-272 flex-wrap justify-center gap-2 sm:gap-4", children: m.map((l) => /* @__PURE__ */ e(
1
+ import { jsx as e, jsxs as x } from "react/jsx-runtime";
2
+ import { TrustedBadge as s } from "./TrustedBadge.js";
3
+ import { PreformOption as p } from "./PreformOption.js";
4
+ import { Button as c } from "./Button.js";
5
+ const f = ({ trustedBadge: a, title: m, options: r, cta: t }) => /* @__PURE__ */ e("section", { className: "bg-neutral-25 pt-10 text-neutral-800 sm:px-6 lg:px-8 xl:px-30", children: /* @__PURE__ */ x("div", { 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", children: [
6
+ /* @__PURE__ */ e(s, { ...a }),
7
+ /* @__PURE__ */ e("h2", { className: "text-medium sm:text-large font-bold", children: m }),
8
+ /* @__PURE__ */ e("div", { className: "flex w-full max-w-272 flex-wrap justify-center gap-2 sm:gap-4", children: r.map((l) => /* @__PURE__ */ e(
9
9
  "div",
10
10
  {
11
11
  className: "w-[calc(50%-4px)] sm:w-[calc(25%-12px)] lg:w-[calc(20%-13px)] xl:w-[calc(16.66%-14px)]",
12
- children: /* @__PURE__ */ e(c, { ...l })
12
+ children: /* @__PURE__ */ e(p, { ...l })
13
13
  },
14
14
  l.label
15
15
  )) }),
16
- /* @__PURE__ */ e(p, { className: "font-bold", size: "default", children: r })
16
+ /* @__PURE__ */ e(c, { ...t })
17
17
  ] }) });
18
18
  export {
19
19
  f as Preform
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,14 +1,19 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
5
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
6
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
7
+ as?: C;
6
8
  children: ReactNode;
7
9
  size?: ButtonSize;
8
10
  variant?: ButtonVariant;
9
11
  iconPosition?: IconPosition;
12
+ disabled?: boolean;
10
13
  }
11
14
 
15
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
16
+
12
17
  export type ButtonSize = 'small' | 'default' | 'large';
13
18
 
14
19
  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';
@@ -1,4 +1,5 @@
1
1
  import { ComponentPropsWithRef } from 'react';
2
+ import { ElementType } from 'react';
2
3
  import { FC } from 'react';
3
4
  import { ReactNode } from 'react';
4
5
 
@@ -29,13 +30,17 @@ export interface BreadcrumbProps {
29
30
  className?: string;
30
31
  }
31
32
 
32
- export interface ButtonProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {
33
+ export interface ButtonOwnProps<C extends ElementType = 'button'> {
34
+ as?: C;
33
35
  children: ReactNode;
34
36
  size?: ButtonSize;
35
37
  variant?: ButtonVariant;
36
38
  iconPosition?: IconPosition;
39
+ disabled?: boolean;
37
40
  }
38
41
 
42
+ export type ButtonProps<C extends ElementType = 'button'> = ButtonOwnProps<C> & Omit<ComponentPropsWithRef<C>, keyof ButtonOwnProps<C>>;
43
+
39
44
  export type ButtonSize = 'small' | 'default' | 'large';
40
45
 
41
46
  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';
@@ -102,7 +107,7 @@ export interface PreformProps {
102
107
  trustedBadge: TrustedBadgeProps;
103
108
  title?: string;
104
109
  options: PreformOptionProps[];
105
- ctaLabel: string;
110
+ cta: ButtonProps<ElementType>;
106
111
  }
107
112
 
108
113
  export interface PreviewDownloadProps {