chiperos-ai-components-library 0.0.1 → 0.1.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/README.md +31 -17
- package/dist/chiperos-ai-components-library.cjs +46 -0
- package/dist/chiperos-ai-components-library.cjs.map +1 -0
- package/dist/chiperos-ai-components-library.js +10865 -0
- package/dist/chiperos-ai-components-library.js.map +1 -0
- package/dist/components/Input/Input.stories.d.ts +66 -0
- package/dist/components/Input/Input.test.d.ts +1 -0
- package/dist/components/Input/index.d.ts +94 -0
- package/dist/components/Select/Select.stories.d.ts +50 -0
- package/dist/components/Select/Select.test.d.ts +1 -0
- package/dist/components/Select/index.d.ts +36 -0
- package/dist/components/Table/Table.stories.d.ts +35 -0
- package/dist/components/Table/Table.test.d.ts +1 -0
- package/dist/components/Table/index.d.ts +64 -0
- package/dist/components/TableHeader/TableHeader.stories.d.ts +48 -0
- package/dist/components/TableHeader/TableHeader.test.d.ts +1 -0
- package/dist/components/TableHeader/index.d.ts +125 -0
- package/dist/components/index.d.ts +4 -0
- package/package.json +42 -13
- package/dist/chiper-components-library.cjs +0 -15
- package/dist/chiper-components-library.cjs.map +0 -1
- package/dist/chiper-components-library.js +0 -4836
- package/dist/chiper-components-library.js.map +0 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { StoryObj } from '@storybook/react';
|
|
2
|
+
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: import('react').ForwardRefExoticComponent<import('./index').InputProps & import('react').RefAttributes<HTMLInputElement>>;
|
|
6
|
+
parameters: {
|
|
7
|
+
layout: string;
|
|
8
|
+
};
|
|
9
|
+
tags: string[];
|
|
10
|
+
argTypes: {
|
|
11
|
+
value: {
|
|
12
|
+
control: "text";
|
|
13
|
+
description: string;
|
|
14
|
+
};
|
|
15
|
+
placeholder: {
|
|
16
|
+
control: "text";
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
type: {
|
|
20
|
+
control: "select";
|
|
21
|
+
options: string[];
|
|
22
|
+
description: string;
|
|
23
|
+
};
|
|
24
|
+
disabled: {
|
|
25
|
+
control: "boolean";
|
|
26
|
+
description: string;
|
|
27
|
+
};
|
|
28
|
+
error: {
|
|
29
|
+
control: "text";
|
|
30
|
+
description: string;
|
|
31
|
+
};
|
|
32
|
+
showPasswordToggle: {
|
|
33
|
+
control: "boolean";
|
|
34
|
+
description: string;
|
|
35
|
+
};
|
|
36
|
+
onChange: {
|
|
37
|
+
action: string;
|
|
38
|
+
description: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
export default meta;
|
|
43
|
+
type Story = StoryObj<typeof meta>;
|
|
44
|
+
export declare const Default: Story;
|
|
45
|
+
export declare const WithValue: Story;
|
|
46
|
+
export declare const Disabled: Story;
|
|
47
|
+
export declare const WithError: Story;
|
|
48
|
+
export declare const WithErrorMessage: Story;
|
|
49
|
+
export declare const PasswordInput: Story;
|
|
50
|
+
export declare const EmailInput: Story;
|
|
51
|
+
export declare const NumberInput: Story;
|
|
52
|
+
export declare const Required: Story;
|
|
53
|
+
export declare const WithAutoComplete: Story;
|
|
54
|
+
export declare const LongValue: Story;
|
|
55
|
+
export declare const AllStates: Story;
|
|
56
|
+
export declare const ResponsiveWidth: Story;
|
|
57
|
+
export declare const ValidationEmail: Story;
|
|
58
|
+
export declare const ValidationNumber: Story;
|
|
59
|
+
export declare const ValidationPhone: Story;
|
|
60
|
+
export declare const ValidationMinLength: Story;
|
|
61
|
+
export declare const ValidationMaxLength: Story;
|
|
62
|
+
export declare const ValidationRequired: Story;
|
|
63
|
+
export declare const ValidationCustomRegex: Story;
|
|
64
|
+
export declare const ValidationMultiple: Story;
|
|
65
|
+
export declare const AllValidations: Story;
|
|
66
|
+
export declare const FormExample: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { default as React, InputHTMLAttributes } from 'react';
|
|
2
|
+
import { CountryCode } from 'libphonenumber-js';
|
|
3
|
+
|
|
4
|
+
export interface InputValidation {
|
|
5
|
+
/**
|
|
6
|
+
* Validate as email
|
|
7
|
+
*/
|
|
8
|
+
email?: boolean | string;
|
|
9
|
+
/**
|
|
10
|
+
* Validate as number
|
|
11
|
+
*/
|
|
12
|
+
number?: boolean | string;
|
|
13
|
+
/**
|
|
14
|
+
* Validate as phone number for specific country
|
|
15
|
+
*/
|
|
16
|
+
phone?: {
|
|
17
|
+
country?: CountryCode;
|
|
18
|
+
message?: string;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Minimum length validation
|
|
22
|
+
*/
|
|
23
|
+
minLength?: {
|
|
24
|
+
value: number;
|
|
25
|
+
message?: string;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Maximum length validation
|
|
29
|
+
*/
|
|
30
|
+
maxLength?: {
|
|
31
|
+
value: number;
|
|
32
|
+
message?: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Custom regex validation
|
|
36
|
+
*/
|
|
37
|
+
regex?: {
|
|
38
|
+
pattern: RegExp;
|
|
39
|
+
message?: string;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Required field validation
|
|
43
|
+
*/
|
|
44
|
+
required?: boolean | string;
|
|
45
|
+
}
|
|
46
|
+
export interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'onChange'> {
|
|
47
|
+
/**
|
|
48
|
+
* The current value of the input
|
|
49
|
+
*/
|
|
50
|
+
value?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Callback fired when the value changes
|
|
53
|
+
*/
|
|
54
|
+
onChange?: (text: string) => void;
|
|
55
|
+
/**
|
|
56
|
+
* Whether the input is disabled
|
|
57
|
+
*/
|
|
58
|
+
disabled?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Error message or state - shows error styling when truthy
|
|
61
|
+
* External error (overrides validation errors)
|
|
62
|
+
*/
|
|
63
|
+
error?: string | boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Placeholder text
|
|
66
|
+
*/
|
|
67
|
+
placeholder?: string;
|
|
68
|
+
/**
|
|
69
|
+
* Input type (text, password, email, etc.)
|
|
70
|
+
*/
|
|
71
|
+
type?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Additional CSS classes
|
|
74
|
+
*/
|
|
75
|
+
className?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Show password toggle for password inputs
|
|
78
|
+
*/
|
|
79
|
+
showPasswordToggle?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Validation rules
|
|
82
|
+
*/
|
|
83
|
+
validation?: InputValidation;
|
|
84
|
+
/**
|
|
85
|
+
* Validate on change (default: true)
|
|
86
|
+
*/
|
|
87
|
+
validateOnChange?: boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Validate on blur (default: true)
|
|
90
|
+
*/
|
|
91
|
+
validateOnBlur?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
94
|
+
export default Input;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { StoryObj } from '@storybook/react';
|
|
2
|
+
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: import('react').ForwardRefExoticComponent<import('./index').SelectProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
6
|
+
parameters: {
|
|
7
|
+
layout: string;
|
|
8
|
+
};
|
|
9
|
+
tags: string[];
|
|
10
|
+
argTypes: {
|
|
11
|
+
value: {
|
|
12
|
+
control: "text";
|
|
13
|
+
description: string;
|
|
14
|
+
};
|
|
15
|
+
placeholder: {
|
|
16
|
+
control: "text";
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
label: {
|
|
20
|
+
control: "text";
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
disabled: {
|
|
24
|
+
control: "boolean";
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
options: {
|
|
28
|
+
control: "object";
|
|
29
|
+
description: string;
|
|
30
|
+
};
|
|
31
|
+
onChange: {
|
|
32
|
+
action: string;
|
|
33
|
+
description: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export default meta;
|
|
38
|
+
type Story = StoryObj<typeof meta>;
|
|
39
|
+
export declare const Default: Story;
|
|
40
|
+
export declare const WithLabel: Story;
|
|
41
|
+
export declare const WithValue: Story;
|
|
42
|
+
export declare const Disabled: Story;
|
|
43
|
+
export declare const DisabledWithValue: Story;
|
|
44
|
+
export declare const ManyOptions: Story;
|
|
45
|
+
export declare const CountrySelector: Story;
|
|
46
|
+
export declare const LongTextOptions: Story;
|
|
47
|
+
export declare const CustomWidth: Story;
|
|
48
|
+
export declare const AllStates: Story;
|
|
49
|
+
export declare const FormExample: Story;
|
|
50
|
+
export declare const Interactive: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface SelectOption {
|
|
2
|
+
id: string;
|
|
3
|
+
text: string;
|
|
4
|
+
}
|
|
5
|
+
export interface SelectProps {
|
|
6
|
+
/**
|
|
7
|
+
* The currently selected value (id)
|
|
8
|
+
*/
|
|
9
|
+
value?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Callback fired when selection changes
|
|
12
|
+
*/
|
|
13
|
+
onChange?: (text: string) => void;
|
|
14
|
+
/**
|
|
15
|
+
* Whether the select is disabled
|
|
16
|
+
*/
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Array of options to display
|
|
20
|
+
*/
|
|
21
|
+
options: SelectOption[];
|
|
22
|
+
/**
|
|
23
|
+
* Placeholder text when no option is selected
|
|
24
|
+
*/
|
|
25
|
+
placeholder?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Label text shown above the selected value
|
|
28
|
+
*/
|
|
29
|
+
label?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Additional CSS classes
|
|
32
|
+
*/
|
|
33
|
+
className?: string;
|
|
34
|
+
}
|
|
35
|
+
export declare const Select: import('react').ForwardRefExoticComponent<SelectProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
36
|
+
export default Select;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { TableProps } from './index';
|
|
3
|
+
|
|
4
|
+
interface User {
|
|
5
|
+
id: number;
|
|
6
|
+
name: string;
|
|
7
|
+
email: string;
|
|
8
|
+
role: string;
|
|
9
|
+
status: string;
|
|
10
|
+
}
|
|
11
|
+
declare const meta: Meta<TableProps<User>>;
|
|
12
|
+
export default meta;
|
|
13
|
+
type Story = StoryObj<TableProps<User>>;
|
|
14
|
+
export declare const Default: Story;
|
|
15
|
+
export declare const WithPagination: Story;
|
|
16
|
+
export declare const CustomRowsPerPage: Story;
|
|
17
|
+
export declare const Loading: Story;
|
|
18
|
+
export declare const Empty: Story;
|
|
19
|
+
export declare const CustomEmptyMessage: Story;
|
|
20
|
+
export declare const WithCustomRender: Story;
|
|
21
|
+
export declare const WithTwoLineCell: Story;
|
|
22
|
+
interface ExtendedUser {
|
|
23
|
+
id: number;
|
|
24
|
+
firstName: string;
|
|
25
|
+
lastName: string;
|
|
26
|
+
email: string;
|
|
27
|
+
phone: string;
|
|
28
|
+
department: string;
|
|
29
|
+
role: string;
|
|
30
|
+
}
|
|
31
|
+
export declare const ManyColumns: StoryObj<TableProps<ExtendedUser>>;
|
|
32
|
+
export declare const RowHighlighting: Story;
|
|
33
|
+
export declare const Interactive: Story;
|
|
34
|
+
export declare const ClickableRows: Story;
|
|
35
|
+
export declare const SortableExample: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface TableColumn<T = any> {
|
|
4
|
+
/**
|
|
5
|
+
* Unique key for the column
|
|
6
|
+
*/
|
|
7
|
+
key: string;
|
|
8
|
+
/**
|
|
9
|
+
* Header label for the column
|
|
10
|
+
*/
|
|
11
|
+
label: string;
|
|
12
|
+
/**
|
|
13
|
+
* Custom render function for cell content
|
|
14
|
+
*/
|
|
15
|
+
render?: (row: T, rowIndex: number) => React.ReactNode;
|
|
16
|
+
/**
|
|
17
|
+
* Additional CSS classes for the column
|
|
18
|
+
*/
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface TableProps<T = any> {
|
|
22
|
+
/**
|
|
23
|
+
* Array of column definitions
|
|
24
|
+
*/
|
|
25
|
+
columns: TableColumn<T>[];
|
|
26
|
+
/**
|
|
27
|
+
* Array of data rows
|
|
28
|
+
*/
|
|
29
|
+
data: T[];
|
|
30
|
+
/**
|
|
31
|
+
* Number of rows per page
|
|
32
|
+
*/
|
|
33
|
+
rowsPerPage?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Show pagination (default: true)
|
|
36
|
+
*/
|
|
37
|
+
showPagination?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Custom className for the table container
|
|
40
|
+
*/
|
|
41
|
+
className?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Custom className for table rows
|
|
44
|
+
*/
|
|
45
|
+
rowClassName?: string | ((row: T, rowIndex: number) => string);
|
|
46
|
+
/**
|
|
47
|
+
* Callback when page changes
|
|
48
|
+
*/
|
|
49
|
+
onPageChange?: (page: number) => void;
|
|
50
|
+
/**
|
|
51
|
+
* Current page (for controlled component)
|
|
52
|
+
*/
|
|
53
|
+
currentPage?: number;
|
|
54
|
+
/**
|
|
55
|
+
* Loading state
|
|
56
|
+
*/
|
|
57
|
+
loading?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Empty state message
|
|
60
|
+
*/
|
|
61
|
+
emptyMessage?: string;
|
|
62
|
+
}
|
|
63
|
+
export declare function Table<T = any>({ columns, data, rowsPerPage, showPagination, className, rowClassName, onPageChange, currentPage: controlledPage, loading, emptyMessage, }: TableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
64
|
+
export default Table;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { StoryObj } from '@storybook/react';
|
|
2
|
+
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: import('react').FC<import('./index').TableHeaderProps>;
|
|
6
|
+
parameters: {
|
|
7
|
+
layout: string;
|
|
8
|
+
};
|
|
9
|
+
tags: string[];
|
|
10
|
+
argTypes: {
|
|
11
|
+
title: {
|
|
12
|
+
control: "text";
|
|
13
|
+
description: string;
|
|
14
|
+
};
|
|
15
|
+
showTitle: {
|
|
16
|
+
control: "boolean";
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
searchPlaceholder: {
|
|
20
|
+
control: "text";
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
showFilters: {
|
|
24
|
+
control: "boolean";
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
showButtons: {
|
|
28
|
+
control: "boolean";
|
|
29
|
+
description: string;
|
|
30
|
+
};
|
|
31
|
+
showCards: {
|
|
32
|
+
control: "boolean";
|
|
33
|
+
description: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export default meta;
|
|
38
|
+
type Story = StoryObj<typeof meta>;
|
|
39
|
+
export declare const Default: Story;
|
|
40
|
+
export declare const WithTitle: Story;
|
|
41
|
+
export declare const WithFilters: Story;
|
|
42
|
+
export declare const WithButtons: Story;
|
|
43
|
+
export declare const WithCards: Story;
|
|
44
|
+
export declare const Complete: Story;
|
|
45
|
+
export declare const OnlySearch: Story;
|
|
46
|
+
export declare const SearchAndButtons: Story;
|
|
47
|
+
export declare const ManyFilters: Story;
|
|
48
|
+
export declare const CustomCards: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { SelectOption } from '../Select';
|
|
3
|
+
|
|
4
|
+
export interface TableHeaderFilter {
|
|
5
|
+
/**
|
|
6
|
+
* Unique key for the filter
|
|
7
|
+
*/
|
|
8
|
+
key: string;
|
|
9
|
+
/**
|
|
10
|
+
* Label for the filter (used as placeholder if placeholder not provided)
|
|
11
|
+
*/
|
|
12
|
+
label: string;
|
|
13
|
+
/**
|
|
14
|
+
* Placeholder text shown when no option is selected
|
|
15
|
+
*/
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Options for dropdown filter
|
|
19
|
+
*/
|
|
20
|
+
options?: SelectOption[];
|
|
21
|
+
/**
|
|
22
|
+
* Selected value
|
|
23
|
+
*/
|
|
24
|
+
value?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Callback when filter changes
|
|
27
|
+
*/
|
|
28
|
+
onChange?: (value: string) => void;
|
|
29
|
+
}
|
|
30
|
+
export interface TableHeaderButton {
|
|
31
|
+
/**
|
|
32
|
+
* Button label
|
|
33
|
+
*/
|
|
34
|
+
label: string;
|
|
35
|
+
/**
|
|
36
|
+
* Button variant (primary = green, outline = white with border)
|
|
37
|
+
*/
|
|
38
|
+
variant?: 'primary' | 'outline';
|
|
39
|
+
/**
|
|
40
|
+
* Is this a dropdown button?
|
|
41
|
+
*/
|
|
42
|
+
isDropdown?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Dropdown options (if isDropdown is true)
|
|
45
|
+
*/
|
|
46
|
+
dropdownOptions?: SelectOption[];
|
|
47
|
+
/**
|
|
48
|
+
* Selected dropdown value
|
|
49
|
+
*/
|
|
50
|
+
dropdownValue?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Click handler for regular button
|
|
53
|
+
*/
|
|
54
|
+
onClick?: () => void;
|
|
55
|
+
/**
|
|
56
|
+
* Change handler for dropdown button
|
|
57
|
+
*/
|
|
58
|
+
onDropdownChange?: (value: string) => void;
|
|
59
|
+
}
|
|
60
|
+
export interface TableHeaderCard {
|
|
61
|
+
/**
|
|
62
|
+
* Card label
|
|
63
|
+
*/
|
|
64
|
+
label: string;
|
|
65
|
+
/**
|
|
66
|
+
* Card value
|
|
67
|
+
*/
|
|
68
|
+
value: string | number;
|
|
69
|
+
/**
|
|
70
|
+
* Icon element
|
|
71
|
+
*/
|
|
72
|
+
icon?: React.ReactNode;
|
|
73
|
+
}
|
|
74
|
+
export interface TableHeaderProps {
|
|
75
|
+
/**
|
|
76
|
+
* Title shown at the top (optional)
|
|
77
|
+
*/
|
|
78
|
+
title?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Show title
|
|
81
|
+
*/
|
|
82
|
+
showTitle?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Search placeholder
|
|
85
|
+
*/
|
|
86
|
+
searchPlaceholder?: string;
|
|
87
|
+
/**
|
|
88
|
+
* Search value
|
|
89
|
+
*/
|
|
90
|
+
searchValue?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Search callback
|
|
93
|
+
*/
|
|
94
|
+
onSearchChange?: (value: string) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Array of filters
|
|
97
|
+
*/
|
|
98
|
+
filters?: TableHeaderFilter[];
|
|
99
|
+
/**
|
|
100
|
+
* Show filters row
|
|
101
|
+
*/
|
|
102
|
+
showFilters?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Array of buttons
|
|
105
|
+
*/
|
|
106
|
+
buttons?: TableHeaderButton[];
|
|
107
|
+
/**
|
|
108
|
+
* Show buttons
|
|
109
|
+
*/
|
|
110
|
+
showButtons?: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* Array of KPI cards to show
|
|
113
|
+
*/
|
|
114
|
+
cards?: TableHeaderCard[];
|
|
115
|
+
/**
|
|
116
|
+
* Show cards
|
|
117
|
+
*/
|
|
118
|
+
showCards?: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Additional CSS classes
|
|
121
|
+
*/
|
|
122
|
+
className?: string;
|
|
123
|
+
}
|
|
124
|
+
export declare const TableHeader: React.FC<TableHeaderProps>;
|
|
125
|
+
export default TableHeader;
|
|
@@ -4,11 +4,15 @@ export * from './ButtonRadix';
|
|
|
4
4
|
export * from './BrandIcons';
|
|
5
5
|
export * from './CardsGrid';
|
|
6
6
|
export * from './FeatureCard';
|
|
7
|
+
export * from './Input';
|
|
7
8
|
export * from './KPIComparison';
|
|
8
9
|
export * from './KPICard';
|
|
9
10
|
export * from './Loader';
|
|
10
11
|
export * from './OptionCard';
|
|
11
12
|
export * from './OrderCard';
|
|
12
13
|
export * from './PaginationLib';
|
|
14
|
+
export * from './Select';
|
|
13
15
|
export * from './Switcher';
|
|
16
|
+
export * from './Table';
|
|
17
|
+
export * from './TableHeader';
|
|
14
18
|
export * from './Toasts';
|
package/package.json
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chiperos-ai-components-library",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.0
|
|
5
|
-
"description": "
|
|
4
|
+
"version": "0.1.0",
|
|
5
|
+
"description": "Chiperos AI Components Library - A modern React component library built with Vite, TypeScript and Tailwind CSS.",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"main": "./dist/
|
|
8
|
-
"module": "./dist/
|
|
7
|
+
"main": "./dist/chiperos-ai-components-library.cjs",
|
|
8
|
+
"module": "./dist/chiperos-ai-components-library.js",
|
|
9
9
|
"types": "./dist/index.d.ts",
|
|
10
10
|
"exports": {
|
|
11
11
|
".": {
|
|
12
|
-
"
|
|
13
|
-
"
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/chiperos-ai-components-library.js",
|
|
14
|
+
"require": "./dist/chiperos-ai-components-library.cjs"
|
|
14
15
|
}
|
|
15
16
|
},
|
|
16
17
|
"files": [
|
|
@@ -25,19 +26,47 @@
|
|
|
25
26
|
"build-storybook": "storybook build"
|
|
26
27
|
},
|
|
27
28
|
"dependencies": {
|
|
29
|
+
"class-variance-authority": "^0.7.1",
|
|
30
|
+
"libphonenumber-js": "^1.12.31",
|
|
31
|
+
"zod": "^4.1.13"
|
|
32
|
+
},
|
|
33
|
+
"peerDependencies": {
|
|
34
|
+
"react": "^18.2.0",
|
|
35
|
+
"react-dom": "^18.2.0",
|
|
28
36
|
"@radix-ui/react-radio-group": "^1.3.8",
|
|
29
37
|
"@radix-ui/react-slot": "^1.2.4",
|
|
30
38
|
"@radix-ui/react-switch": "^1.2.6",
|
|
31
|
-
"class-variance-authority": "^0.7.1",
|
|
32
39
|
"lucide-react": "^0.534.0",
|
|
33
40
|
"next-intl": "^4.3.4",
|
|
34
41
|
"radix-ui": "^1.4.3"
|
|
35
42
|
},
|
|
36
|
-
"
|
|
37
|
-
"react":
|
|
38
|
-
|
|
43
|
+
"peerDependenciesMeta": {
|
|
44
|
+
"@radix-ui/react-radio-group": {
|
|
45
|
+
"optional": true
|
|
46
|
+
},
|
|
47
|
+
"@radix-ui/react-slot": {
|
|
48
|
+
"optional": true
|
|
49
|
+
},
|
|
50
|
+
"@radix-ui/react-switch": {
|
|
51
|
+
"optional": true
|
|
52
|
+
},
|
|
53
|
+
"lucide-react": {
|
|
54
|
+
"optional": true
|
|
55
|
+
},
|
|
56
|
+
"next-intl": {
|
|
57
|
+
"optional": true
|
|
58
|
+
},
|
|
59
|
+
"radix-ui": {
|
|
60
|
+
"optional": true
|
|
61
|
+
}
|
|
39
62
|
},
|
|
40
63
|
"devDependencies": {
|
|
64
|
+
"@radix-ui/react-radio-group": "^1.3.8",
|
|
65
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
66
|
+
"@radix-ui/react-switch": "^1.2.6",
|
|
67
|
+
"lucide-react": "^0.534.0",
|
|
68
|
+
"next-intl": "^4.3.4",
|
|
69
|
+
"radix-ui": "^1.4.3",
|
|
41
70
|
"@chromatic-com/storybook": "^1.5.0",
|
|
42
71
|
"@storybook/addon-essentials": "^8.1.10",
|
|
43
72
|
"@storybook/addon-interactions": "^8.1.10",
|
|
@@ -87,10 +116,10 @@
|
|
|
87
116
|
"license": "MIT",
|
|
88
117
|
"repository": {
|
|
89
118
|
"type": "git",
|
|
90
|
-
"url": "https://github.com/
|
|
119
|
+
"url": "https://github.com/chiperos-ai/chiperos-ai-components-library.git"
|
|
91
120
|
},
|
|
92
|
-
"homepage": "https://github.com/
|
|
121
|
+
"homepage": "https://github.com/chiperos-ai/chiperos-ai-components-library#readme",
|
|
93
122
|
"bugs": {
|
|
94
|
-
"url": "https://github.com/
|
|
123
|
+
"url": "https://github.com/chiperos-ai/chiperos-ai-components-library/issues"
|
|
95
124
|
}
|
|
96
125
|
}
|