@crisellevaldez/speculo-ui 0.7.45
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/README.md +134 -0
- package/dist/App.d.ts +2 -0
- package/dist/components/Accordion/Accordion.d.ts +20 -0
- package/dist/components/Alert/Alert.d.ts +8 -0
- package/dist/components/Badge/Badge.d.ts +7 -0
- package/dist/components/Button/Button.d.ts +8 -0
- package/dist/components/Calendar/Calendar.d.ts +15 -0
- package/dist/components/Checkbox/Checkbox.d.ts +15 -0
- package/dist/components/ComboBox/ComboBox.d.ts +21 -0
- package/dist/components/Container/Container.d.ts +8 -0
- package/dist/components/DatePicker/DatePicker.d.ts +16 -0
- package/dist/components/DateRangePicker/DateRangePicker.d.ts +23 -0
- package/dist/components/Drawer/Drawer.d.ts +35 -0
- package/dist/components/DualDateRangePicker/DualCalendar.d.ts +18 -0
- package/dist/components/DualDateRangePicker/DualDateRangePicker.d.ts +25 -0
- package/dist/components/DualDateRangePicker/useFloatingPosition.d.ts +10 -0
- package/dist/components/FirebaseTest/FirebaseTest.d.ts +1 -0
- package/dist/components/Form/Form.d.ts +29 -0
- package/dist/components/HoverCard/HoverCard.d.ts +11 -0
- package/dist/components/Input/Input.d.ts +13 -0
- package/dist/components/Loading/Loading.d.ts +5 -0
- package/dist/components/Modal/Modal.d.ts +45 -0
- package/dist/components/Pagination/Pagination.d.ts +12 -0
- package/dist/components/PhoneNumber/PhoneNumber.d.ts +12 -0
- package/dist/components/Progress/Progress.d.ts +11 -0
- package/dist/components/Radio/Radio.d.ts +17 -0
- package/dist/components/Select/Select.d.ts +24 -0
- package/dist/components/Sidebar/Sidebar.d.ts +16 -0
- package/dist/components/Switch/Switch.d.ts +7 -0
- package/dist/components/Table/Table.d.ts +33 -0
- package/dist/components/Tabs/Tabs.d.ts +32 -0
- package/dist/components/Textarea/Textarea.d.ts +11 -0
- package/dist/components/TimePicker/TimePicker.d.ts +16 -0
- package/dist/components/Toast/Toast.d.ts +22 -0
- package/dist/components/Typography/Typography.d.ts +9 -0
- package/dist/docs/components/ButtonDocs.d.ts +1 -0
- package/dist/docs/layout/Layout.d.ts +1 -0
- package/dist/docs/pages/examples/Playground.d.ts +2 -0
- package/dist/docs/pages/examples/components/BasicComponentsGroup.d.ts +1 -0
- package/dist/docs/pages/examples/components/DataComponentsGroup.d.ts +1 -0
- package/dist/docs/pages/examples/components/FormComponentsGroup.d.ts +1 -0
- package/dist/docs/pages/examples/components/LayoutComponentsGroup.d.ts +1 -0
- package/dist/docs/pages/examples/components/MiscComponentsGroup.d.ts +1 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.html +89 -0
- package/dist/lib/firebase.d.ts +3 -0
- package/dist/main.d.ts +1 -0
- package/dist/speculo-ui.cjs +148 -0
- package/dist/speculo-ui.cjs.map +1 -0
- package/dist/speculo-ui.mjs +12620 -0
- package/dist/speculo-ui.mjs.map +1 -0
- package/dist/speculo.ai-white.png +0 -0
- package/dist/styles.css +1 -0
- package/dist/utils/cn.d.ts +3 -0
- package/package.json +81 -0
- package/tailwind.preset.cjs +220 -0
package/README.md
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Speculo UI
|
|
2
|
+
|
|
3
|
+
A modern React component library built with TypeScript and Tailwind CSS.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
1. Create `.npmrc` in your project root:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
@crisellevaldez:registry=https://npm.pkg.github.com
|
|
11
|
+
//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
2. Install the package:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
npm install @crisellevaldez/speculo-ui
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
3. Add to your `tailwind.config.js`:
|
|
21
|
+
|
|
22
|
+
```js
|
|
23
|
+
/** @type {import('tailwindcss').Config} */
|
|
24
|
+
export default {
|
|
25
|
+
content: [
|
|
26
|
+
// ... your other content paths
|
|
27
|
+
"./node_modules/@crisellevaldez/speculo-ui/dist/**/*.{js,ts,jsx,tsx}",
|
|
28
|
+
],
|
|
29
|
+
theme: {
|
|
30
|
+
extend: {
|
|
31
|
+
colors: {
|
|
32
|
+
background: "hsl(var(--background))",
|
|
33
|
+
foreground: "hsl(var(--foreground))",
|
|
34
|
+
primary: {
|
|
35
|
+
DEFAULT: "hsl(var(--primary))",
|
|
36
|
+
foreground: "hsl(var(--primary-foreground))",
|
|
37
|
+
},
|
|
38
|
+
secondary: {
|
|
39
|
+
DEFAULT: "hsl(var(--secondary))",
|
|
40
|
+
foreground: "hsl(var(--secondary-foreground))",
|
|
41
|
+
},
|
|
42
|
+
destructive: {
|
|
43
|
+
DEFAULT: "hsl(var(--destructive))",
|
|
44
|
+
foreground: "hsl(var(--destructive-foreground))",
|
|
45
|
+
},
|
|
46
|
+
muted: {
|
|
47
|
+
DEFAULT: "hsl(var(--muted))",
|
|
48
|
+
foreground: "hsl(var(--muted-foreground))",
|
|
49
|
+
},
|
|
50
|
+
accent: {
|
|
51
|
+
DEFAULT: "hsl(var(--accent))",
|
|
52
|
+
foreground: "hsl(var(--accent-foreground))",
|
|
53
|
+
},
|
|
54
|
+
popover: {
|
|
55
|
+
DEFAULT: "hsl(var(--popover))",
|
|
56
|
+
foreground: "hsl(var(--popover-foreground))",
|
|
57
|
+
},
|
|
58
|
+
card: {
|
|
59
|
+
DEFAULT: "hsl(var(--card))",
|
|
60
|
+
foreground: "hsl(var(--card-foreground))",
|
|
61
|
+
},
|
|
62
|
+
border: "hsl(var(--border))",
|
|
63
|
+
input: "hsl(var(--input))",
|
|
64
|
+
ring: "hsl(var(--ring))",
|
|
65
|
+
},
|
|
66
|
+
borderRadius: {
|
|
67
|
+
lg: "var(--radius)",
|
|
68
|
+
md: "calc(var(--radius) - 2px)",
|
|
69
|
+
sm: "calc(var(--radius) - 4px)",
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
4. **Important**: Import the required styles in your main CSS file (e.g., app.css or globals.css):
|
|
77
|
+
|
|
78
|
+
```css
|
|
79
|
+
@import "@crisellevaldez/speculo-ui/styles.css";
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
This import provides:
|
|
83
|
+
|
|
84
|
+
- CSS variables for theming (colors, border radius)
|
|
85
|
+
- Dark mode support through CSS variables
|
|
86
|
+
- Base component styles
|
|
87
|
+
|
|
88
|
+
5. For Next.js projects, add to `next.config.js`:
|
|
89
|
+
|
|
90
|
+
```js
|
|
91
|
+
/** @type {import('next').NextConfig} */
|
|
92
|
+
const nextConfig = {
|
|
93
|
+
transpilePackages: ["@crisellevaldez/speculo-ui"],
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
module.exports = nextConfig;
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Usage
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
import { Button } from "@crisellevaldez/speculo-ui";
|
|
103
|
+
|
|
104
|
+
function App() {
|
|
105
|
+
return <Button>Click me</Button>;
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Theming
|
|
110
|
+
|
|
111
|
+
The library uses CSS variables for theming, providing:
|
|
112
|
+
|
|
113
|
+
- Consistent color palette across components
|
|
114
|
+
- Built-in dark mode support
|
|
115
|
+
- Easy customization through CSS variables
|
|
116
|
+
- HSL color format for flexible color manipulation
|
|
117
|
+
|
|
118
|
+
## Components
|
|
119
|
+
|
|
120
|
+
- Button
|
|
121
|
+
- Input
|
|
122
|
+
- Select
|
|
123
|
+
- Checkbox
|
|
124
|
+
- Radio
|
|
125
|
+
- Switch
|
|
126
|
+
- Modal
|
|
127
|
+
- Drawer
|
|
128
|
+
- Toast
|
|
129
|
+
- Typography
|
|
130
|
+
- And more...
|
|
131
|
+
|
|
132
|
+
## Documentation
|
|
133
|
+
|
|
134
|
+
View the full documentation and examples at [https://speculo-ui.web.app](https://speculo-ui.web.app)
|
package/dist/App.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface AccordionItemProps {
|
|
4
|
+
title: React.ReactNode;
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface AccordionProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue"> {
|
|
9
|
+
items: AccordionItemProps[];
|
|
10
|
+
type?: "single" | "multiple";
|
|
11
|
+
defaultValue?: string | string[];
|
|
12
|
+
value?: string | string[];
|
|
13
|
+
onChange?: (value: string | string[]) => void;
|
|
14
|
+
}
|
|
15
|
+
export declare const AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps & {
|
|
16
|
+
isOpen: boolean;
|
|
17
|
+
onToggle: () => void;
|
|
18
|
+
itemId: string;
|
|
19
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
20
|
+
export declare const Accordion: React.ForwardRefExoticComponent<AccordionProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface AlertProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
variant?: "default" | "destructive" | "warning" | "success" | "info";
|
|
5
|
+
}
|
|
6
|
+
export declare const Alert: React.ForwardRefExoticComponent<AlertProps & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export declare const AlertTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLParagraphElement>>;
|
|
8
|
+
export declare const AlertDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
variant?: "default" | "secondary" | "outline" | "destructive" | "success" | "warning" | "info";
|
|
5
|
+
size?: "sm" | "md" | "lg";
|
|
6
|
+
}
|
|
7
|
+
export declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
4
|
+
variant?: "primary" | "secondary" | "outline" | "ghost" | "destructive" | "success" | "link";
|
|
5
|
+
size?: "xs" | "sm" | "md" | "lg" | "icon";
|
|
6
|
+
isLoading?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface CalendarProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "onMouseEnter" | "onMouseLeave"> {
|
|
4
|
+
value?: Date;
|
|
5
|
+
onChange?: (date: Date) => void;
|
|
6
|
+
minDate?: Date;
|
|
7
|
+
maxDate?: Date;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
locale?: string;
|
|
10
|
+
disabledDates?: Date[];
|
|
11
|
+
highlightedDates?: Date[];
|
|
12
|
+
onMouseEnter?: (date: Date) => void;
|
|
13
|
+
onMouseLeave?: (date: Date) => void;
|
|
14
|
+
}
|
|
15
|
+
export declare const Calendar: React.ForwardRefExoticComponent<CalendarProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface CheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type"> {
|
|
4
|
+
label?: string;
|
|
5
|
+
error?: string;
|
|
6
|
+
indeterminate?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;
|
|
9
|
+
export interface CheckboxGroupProps {
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
label?: string;
|
|
12
|
+
error?: string;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const CheckboxGroup: React.FC<CheckboxGroupProps>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface ComboBoxOption {
|
|
4
|
+
value: string;
|
|
5
|
+
label: string;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface ComboBoxProps {
|
|
9
|
+
options: ComboBoxOption[];
|
|
10
|
+
value?: string | string[];
|
|
11
|
+
onChange?: (value: string | string[]) => void;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
loading?: boolean;
|
|
15
|
+
multiple?: boolean;
|
|
16
|
+
maxItems?: number;
|
|
17
|
+
className?: string;
|
|
18
|
+
onInputChange?: (value: string) => void;
|
|
19
|
+
renderOption?: (option: ComboBoxOption) => React.ReactNode;
|
|
20
|
+
}
|
|
21
|
+
export declare const ComboBox: React.ForwardRefExoticComponent<ComboBoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface ContainerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
padding?: boolean;
|
|
5
|
+
centered?: boolean;
|
|
6
|
+
as?: "div" | "section" | "article" | "main";
|
|
7
|
+
}
|
|
8
|
+
export declare const Container: React.ForwardRefExoticComponent<ContainerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DatePickerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
|
|
4
|
+
value: Date | null;
|
|
5
|
+
onChange: (date: Date | null) => void;
|
|
6
|
+
minDate?: Date;
|
|
7
|
+
maxDate?: Date;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
isLoading?: boolean;
|
|
10
|
+
locale?: string;
|
|
11
|
+
disabledDates?: Date[];
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
error?: string;
|
|
14
|
+
helperText?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DateRange {
|
|
4
|
+
from: Date | null;
|
|
5
|
+
to: Date | null;
|
|
6
|
+
}
|
|
7
|
+
export interface DateRangePickerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
|
|
8
|
+
value: DateRange;
|
|
9
|
+
onChange: (range: DateRange) => void;
|
|
10
|
+
minDate?: Date;
|
|
11
|
+
maxDate?: Date;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
isLoading?: boolean;
|
|
14
|
+
locale?: string;
|
|
15
|
+
disabledDates?: Date[];
|
|
16
|
+
placeholder?: {
|
|
17
|
+
from: string;
|
|
18
|
+
to: string;
|
|
19
|
+
};
|
|
20
|
+
error?: string;
|
|
21
|
+
helperText?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const DateRangePicker: React.ForwardRefExoticComponent<DateRangePickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DrawerHeaderProps {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
onClose?: () => void;
|
|
7
|
+
}
|
|
8
|
+
export interface DrawerBodyProps {
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface DrawerFooterProps {
|
|
13
|
+
children: React.ReactNode;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
declare const DrawerHeader: React.FC<DrawerHeaderProps>;
|
|
17
|
+
declare const DrawerBody: React.FC<DrawerBodyProps>;
|
|
18
|
+
declare const DrawerFooter: React.FC<DrawerFooterProps>;
|
|
19
|
+
export interface DrawerProps {
|
|
20
|
+
open: boolean;
|
|
21
|
+
onClose: () => void;
|
|
22
|
+
children: React.ReactNode;
|
|
23
|
+
side?: "left" | "right" | "top" | "bottom";
|
|
24
|
+
size?: "sm" | "md" | "lg" | "xl" | "full";
|
|
25
|
+
overlay?: boolean;
|
|
26
|
+
closeOnOverlayClick?: boolean;
|
|
27
|
+
closeOnEsc?: boolean;
|
|
28
|
+
}
|
|
29
|
+
declare const DrawerComponent: React.ForwardRefExoticComponent<DrawerProps & React.RefAttributes<HTMLDivElement>>;
|
|
30
|
+
export declare const Drawer: typeof DrawerComponent & {
|
|
31
|
+
Header: typeof DrawerHeader;
|
|
32
|
+
Body: typeof DrawerBody;
|
|
33
|
+
Footer: typeof DrawerFooter;
|
|
34
|
+
};
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DualCalendarProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "onMouseEnter" | "onMouseLeave"> {
|
|
4
|
+
value?: Date | null;
|
|
5
|
+
endValue?: Date | null;
|
|
6
|
+
onChange?: (date: Date) => void;
|
|
7
|
+
minDate?: Date;
|
|
8
|
+
maxDate?: Date;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
locale?: string;
|
|
11
|
+
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
12
|
+
disabledDates?: Date[];
|
|
13
|
+
highlightedDates?: Date[];
|
|
14
|
+
onMouseEnter?: (date: Date) => void;
|
|
15
|
+
onMouseLeave?: (date: Date) => void;
|
|
16
|
+
viewDate: Date;
|
|
17
|
+
}
|
|
18
|
+
export declare const DualCalendar: React.ForwardRefExoticComponent<DualCalendarProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface DateRange {
|
|
4
|
+
from: Date | null;
|
|
5
|
+
to: Date | null;
|
|
6
|
+
}
|
|
7
|
+
export interface DualDateRangePickerProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "showPresets"> {
|
|
8
|
+
value: DateRange;
|
|
9
|
+
onChange: (range: DateRange) => void;
|
|
10
|
+
minDate?: Date;
|
|
11
|
+
maxDate?: Date;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
isLoading?: boolean;
|
|
14
|
+
locale?: string;
|
|
15
|
+
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
16
|
+
disabledDates?: Date[];
|
|
17
|
+
placeholder?: {
|
|
18
|
+
from: string;
|
|
19
|
+
to: string;
|
|
20
|
+
};
|
|
21
|
+
error?: string;
|
|
22
|
+
helperText?: string;
|
|
23
|
+
showPresets?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export declare const DualDateRangePicker: React.ForwardRefExoticComponent<DualDateRangePickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
|
|
3
|
+
interface PositionConfig {
|
|
4
|
+
dropdownHeight: number;
|
|
5
|
+
dropdownWidth: number;
|
|
6
|
+
mobileBreakpoint: number;
|
|
7
|
+
padding: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const useFloatingPosition: (triggerRef: RefObject<HTMLElement>, dropdownRef: RefObject<HTMLElement>, isOpen: boolean, config: PositionConfig) => void;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function FirebaseTest(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface FormControlProps {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
error?: string;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare const FormControl: React.FC<FormControlProps>;
|
|
10
|
+
export interface FormLabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
|
|
11
|
+
required?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare const FormLabel: React.ForwardRefExoticComponent<FormLabelProps & React.RefAttributes<HTMLLabelElement>>;
|
|
14
|
+
export interface FormErrorMessageProps {
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
className?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const FormErrorMessage: React.FC<FormErrorMessageProps>;
|
|
19
|
+
export interface FormHelperTextProps {
|
|
20
|
+
children: React.ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const FormHelperText: React.FC<FormHelperTextProps>;
|
|
24
|
+
export declare const Form: {
|
|
25
|
+
Control: React.FC<FormControlProps>;
|
|
26
|
+
Label: React.ForwardRefExoticComponent<FormLabelProps & React.RefAttributes<HTMLLabelElement>>;
|
|
27
|
+
ErrorMessage: React.FC<FormErrorMessageProps>;
|
|
28
|
+
HelperText: React.FC<FormHelperTextProps>;
|
|
29
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface HoverCardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
trigger: React.ReactNode;
|
|
5
|
+
openDelay?: number;
|
|
6
|
+
closeDelay?: number;
|
|
7
|
+
side?: "top" | "right" | "bottom" | "left";
|
|
8
|
+
align?: "start" | "center" | "end";
|
|
9
|
+
arrow?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare const HoverCard: React.ForwardRefExoticComponent<HoverCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
|
|
4
|
+
error?: string;
|
|
5
|
+
helperText?: string;
|
|
6
|
+
startIcon?: React.ReactNode;
|
|
7
|
+
endIcon?: React.ReactNode;
|
|
8
|
+
isLoading?: boolean;
|
|
9
|
+
inputSize?: "sm" | "md" | "lg";
|
|
10
|
+
clearable?: boolean;
|
|
11
|
+
onClear?: () => void;
|
|
12
|
+
}
|
|
13
|
+
export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface ModalProps {
|
|
4
|
+
isOpen: boolean;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
size?: "xs" | "sm" | "base" | "lg" | "xl" | "2xl" | "full";
|
|
8
|
+
closeOnOverlayClick?: boolean;
|
|
9
|
+
closeOnEsc?: boolean;
|
|
10
|
+
initialFocus?: React.RefObject<HTMLElement>;
|
|
11
|
+
className?: string;
|
|
12
|
+
loading?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ModalHeaderProps {
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
className?: string;
|
|
17
|
+
onClose?: () => void;
|
|
18
|
+
}
|
|
19
|
+
export interface ModalBodyProps {
|
|
20
|
+
children: React.ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface ModalFooterProps {
|
|
24
|
+
children: React.ReactNode;
|
|
25
|
+
className?: string;
|
|
26
|
+
}
|
|
27
|
+
declare const ModalHeader: React.FC<ModalHeaderProps>;
|
|
28
|
+
declare const ModalBody: React.FC<ModalBodyProps>;
|
|
29
|
+
declare const ModalFooter: React.FC<ModalFooterProps>;
|
|
30
|
+
export declare const Modal: React.FC<ModalProps> & {
|
|
31
|
+
Header: typeof ModalHeader;
|
|
32
|
+
Body: typeof ModalBody;
|
|
33
|
+
Footer: typeof ModalFooter;
|
|
34
|
+
};
|
|
35
|
+
export interface ModalProviderProps {
|
|
36
|
+
children: React.ReactNode;
|
|
37
|
+
}
|
|
38
|
+
export interface ModalContextType {
|
|
39
|
+
openModal: (modal: React.ReactNode) => void;
|
|
40
|
+
closeModal: () => void;
|
|
41
|
+
}
|
|
42
|
+
export declare const ModalContext: React.Context<ModalContextType | null>;
|
|
43
|
+
export declare const ModalProvider: React.FC<ModalProviderProps>;
|
|
44
|
+
export declare const useModal: () => ModalContextType;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface PaginationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
currentPage: number;
|
|
5
|
+
totalPages: number;
|
|
6
|
+
onPageChange: (page: number) => void;
|
|
7
|
+
siblingCount?: number;
|
|
8
|
+
showFirstLast?: boolean;
|
|
9
|
+
size?: "sm" | "md" | "lg";
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { Country } from 'react-phone-number-input';
|
|
3
|
+
|
|
4
|
+
export interface PhoneNumberProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value"> {
|
|
5
|
+
value: string | undefined;
|
|
6
|
+
onChange: (value: string | undefined) => void;
|
|
7
|
+
error?: string;
|
|
8
|
+
isLoading?: boolean;
|
|
9
|
+
defaultCountry?: Country;
|
|
10
|
+
helperText?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const PhoneNumber: React.ForwardRefExoticComponent<PhoneNumberProps & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface ProgressProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
value?: number;
|
|
5
|
+
max?: number;
|
|
6
|
+
variant?: "default" | "circle" | "loading";
|
|
7
|
+
size?: "sm" | "md" | "lg";
|
|
8
|
+
showValue?: boolean;
|
|
9
|
+
indeterminate?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare const Progress: React.ForwardRefExoticComponent<ProgressProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type"> {
|
|
4
|
+
label?: string;
|
|
5
|
+
error?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const Radio: React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>>;
|
|
8
|
+
export interface RadioGroupProps {
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
label?: string;
|
|
11
|
+
error?: string;
|
|
12
|
+
className?: string;
|
|
13
|
+
name: string;
|
|
14
|
+
value?: string;
|
|
15
|
+
onChange?: (value: string) => void;
|
|
16
|
+
}
|
|
17
|
+
export declare const RadioGroup: React.FC<RadioGroupProps>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface SelectOption {
|
|
4
|
+
value: string;
|
|
5
|
+
label: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SelectProps {
|
|
8
|
+
options: SelectOption[];
|
|
9
|
+
value?: string | string[];
|
|
10
|
+
onChange?: (value: string | string[]) => void;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
error?: string;
|
|
13
|
+
helperText?: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
isLoading?: boolean;
|
|
16
|
+
multiple?: boolean;
|
|
17
|
+
searchable?: boolean;
|
|
18
|
+
className?: string;
|
|
19
|
+
renderOption?: (option: SelectOption) => React.ReactNode;
|
|
20
|
+
rows?: number;
|
|
21
|
+
variant?: "default" | "ghost";
|
|
22
|
+
menuWidth?: string | number;
|
|
23
|
+
}
|
|
24
|
+
export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface SidebarItemProps {
|
|
4
|
+
icon?: React.ReactNode;
|
|
5
|
+
label: React.ReactNode;
|
|
6
|
+
href?: string;
|
|
7
|
+
items?: Omit<SidebarItemProps, "items">[];
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface SidebarProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
11
|
+
items: SidebarItemProps[];
|
|
12
|
+
collapsed?: boolean;
|
|
13
|
+
onCollapse?: (collapsed: boolean) => void;
|
|
14
|
+
defaultCollapsed?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare const Sidebar: React.ForwardRefExoticComponent<SidebarProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface SwitchProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "size"> {
|
|
4
|
+
label?: string;
|
|
5
|
+
size?: "sm" | "md" | "lg";
|
|
6
|
+
}
|
|
7
|
+
export declare const Switch: React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface Column<T> {
|
|
4
|
+
key: keyof T | string;
|
|
5
|
+
header: React.ReactNode;
|
|
6
|
+
cell?: (item: T) => React.ReactNode;
|
|
7
|
+
sortable?: boolean;
|
|
8
|
+
minWidth?: string;
|
|
9
|
+
width?: string;
|
|
10
|
+
isPinned?: boolean;
|
|
11
|
+
pinPosition?: string;
|
|
12
|
+
resizable?: boolean;
|
|
13
|
+
isCentered?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface TableProps<T extends Record<string, unknown>> {
|
|
16
|
+
columns: Column<T>[];
|
|
17
|
+
data: T[];
|
|
18
|
+
keyExtractor: (item: T) => string | number;
|
|
19
|
+
selectable?: boolean;
|
|
20
|
+
selectedRows?: string[];
|
|
21
|
+
onSelectRows?: (rows: string[]) => void;
|
|
22
|
+
sortable?: boolean;
|
|
23
|
+
onSort?: (key: string, direction: "asc" | "desc") => void;
|
|
24
|
+
className?: string;
|
|
25
|
+
loading?: boolean;
|
|
26
|
+
rowSelectable?: boolean;
|
|
27
|
+
selectedRowId?: string;
|
|
28
|
+
onRowSelect?: (id: string | undefined) => void;
|
|
29
|
+
size?: "sm" | "md" | "lg" | "xl";
|
|
30
|
+
emptyStateText?: string;
|
|
31
|
+
onRowDoubleClick?: (item: T) => void;
|
|
32
|
+
}
|
|
33
|
+
export declare function Table<T extends Record<string, unknown>>({ columns: initialColumns, data, keyExtractor, selectable, selectedRows, onSelectRows, sortable, onSort, className, loading, rowSelectable, selectedRowId, onRowSelect, size, emptyStateText, onRowDoubleClick, }: TableProps<T>): import("react/jsx-runtime").JSX.Element;
|