greenole-design-system 1.1.44 → 1.1.46
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 +147 -124
- package/dist/base-components/Dropdown/Dropdown.stories.d.ts +2 -0
- package/dist/base-components/Dropdown/Dropdown.types.d.ts +2 -0
- package/dist/base-components/DropdownMenu/DropdownMenu.d.ts +4 -0
- package/dist/base-components/DropdownMenu/DropdownMenu.stories.d.ts +6 -0
- package/dist/base-components/DropdownMenu/DropdownMenu.styles.d.ts +13 -0
- package/dist/base-components/DropdownMenu/DropdownMenu.types.d.ts +10 -0
- package/dist/base-components/DropdownMenu/index.d.ts +1 -0
- package/dist/base-components/Pills/Pills.stories.d.ts +1 -0
- package/dist/base-components/Pills/Pills.styles.d.ts +2 -0
- package/dist/base-components/Pills/Pills.types.d.ts +3 -1
- package/dist/base-components/Skeleton/Skeleton.d.ts +4 -0
- package/dist/base-components/Skeleton/Skeleton.stories.d.ts +6 -0
- package/dist/base-components/Skeleton/Skeleton.styles.d.ts +2 -0
- package/dist/base-components/Skeleton/Skeleton.types.d.ts +5 -0
- package/dist/base-components/Skeleton/index.d.ts +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.d.ts +4 -0
- package/dist/components/Breadcrumb/Breadcrumb.stories.d.ts +12 -0
- package/dist/components/Breadcrumb/Breadcrumb.styles.d.ts +13 -0
- package/dist/components/Breadcrumb/Breadcrumb.types.d.ts +16 -0
- package/dist/components/Breadcrumb/index.d.ts +2 -0
- package/dist/components/Calendar/Calendar.d.ts +8 -1
- package/dist/components/Calendar/Calendar.stories.d.ts +7 -4
- package/dist/components/Calendar/Calendar.styles.d.ts +5 -2
- package/dist/components/Calendar/Calendar.types.d.ts +10 -2
- package/dist/components/Calendar/Calendar.utils.d.ts +5 -1
- package/dist/components/Calendar/DateRangePicker.d.ts +9 -2
- package/dist/components/Calendar/Presets.d.ts +2 -0
- package/dist/components/Icons/ArrowLeft.d.ts +9 -0
- package/dist/components/Icons/Checkbox.d.ts +4 -1
- package/dist/components/Icons/ChevronRight.d.ts +9 -0
- package/dist/components/Icons/Icons.d.ts +2 -0
- package/dist/components/PageHeader/PageHeader.d.ts +4 -0
- package/dist/components/PageHeader/PageHeader.stories.d.ts +14 -0
- package/dist/components/PageHeader/PageHeader.styles.d.ts +15 -0
- package/dist/components/PageHeader/PageHeader.types.d.ts +35 -0
- package/dist/components/PageHeader/index.d.ts +2 -0
- package/dist/components/Table/Table.d.ts +4 -0
- package/dist/components/Table/Table.stories.d.ts +10 -0
- package/dist/components/Table/Table.styles.d.ts +23 -0
- package/dist/components/Table/Table.types.d.ts +35 -0
- package/dist/components/Table/index.d.ts +1 -0
- package/dist/components/Toolbar/Toolbar.d.ts +4 -0
- package/dist/components/Toolbar/Toolbar.stories.d.ts +6 -0
- package/dist/components/Toolbar/Toolbar.styles.d.ts +18 -0
- package/dist/components/Toolbar/Toolbar.types.d.ts +14 -0
- package/dist/components/Toolbar/index.d.ts +1 -0
- package/dist/components/Typography/Typography.d.ts +1 -1
- package/dist/components/Typography/Typography.styles.d.ts +1 -0
- package/dist/greenole-design-system.cjs.js +1189 -822
- package/dist/greenole-design-system.es.js +4739 -3717
- package/dist/greenole.css +62 -32
- package/dist/index.css +1 -1
- package/dist/index.d.ts +9 -5
- package/dist/mocks/user.d.ts +6 -0
- package/dist/mocks/userService.d.ts +13 -0
- package/package.json +90 -89
- package/dist/components/Table/DataTable.d.ts +0 -18
- package/dist/components/Table/DataTable.stories.d.ts +0 -8
- package/dist/components/Table/DataTable.styles.d.ts +0 -26
- package/dist/components/Table/Pagination.d.ts +0 -10
- package/dist/components/Table/types.d.ts +0 -10
package/README.md
CHANGED
|
@@ -1,124 +1,147 @@
|
|
|
1
|
-
# Greenole Design System
|
|
2
|
-
|
|
3
|
-
[](https://www.figma.com/design/Zwkbh8XGfVt2At4ln7p1WE/DS-Greenole?node-id=1017-15&p=f&t=Mjdfp67Q8ADWcm9v-0)
|
|
4
|
-
|
|
5
|
-
The **Greenole Design System** is a React component library designed to create consistent and scalable user interfaces.
|
|
6
|
-
The library is constantly evolving, with new components and improvements being added over time.
|
|
7
|
-
|
|
8
|
-
## Table of Contents
|
|
9
|
-
|
|
10
|
-
- [Introduction](#introduction)
|
|
11
|
-
- [Installation](#installation)
|
|
12
|
-
- [Usage](#usage)
|
|
13
|
-
- [Development](#development)
|
|
14
|
-
- [Build & Publication](#build--publication)
|
|
15
|
-
- [Contributing](#contributing)
|
|
16
|
-
- [License](#license)
|
|
17
|
-
|
|
18
|
-
## Introduction
|
|
19
|
-
|
|
20
|
-
**Greenole Design System** gathers reusable components that follow a consistent visual identity.
|
|
21
|
-
It helps teams maintain design and usability standards across their React projects.
|
|
22
|
-
|
|
23
|
-
> **Note:**
|
|
24
|
-
> This library is in constant evolution. Existing components may be updated and new ones added over time.
|
|
25
|
-
|
|
26
|
-
## Installation
|
|
27
|
-
|
|
28
|
-
To install the library in your React project, run:
|
|
29
|
-
|
|
30
|
-
```bash
|
|
31
|
-
npm install greenole-design-system
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
> **Note:**
|
|
35
|
-
> The library declares `react` and `react-dom` as peer dependencies, so ensure your project already has these installed.
|
|
36
|
-
|
|
37
|
-
## Usage
|
|
38
|
-
|
|
39
|
-
After installation, you need to import both the CSS styles and the components:
|
|
40
|
-
|
|
41
|
-
### 1. Import the CSS styles
|
|
42
|
-
|
|
43
|
-
First, import the CSS file in your main application file (usually `main.jsx`, `App.jsx`, or `index.js`):
|
|
44
|
-
|
|
45
|
-
```jsx
|
|
46
|
-
import 'greenole-design-system/dist/greenole.css';
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### 2. Import and use components
|
|
50
|
-
|
|
51
|
-
Then you can import and use the library's components:
|
|
52
|
-
|
|
53
|
-
```jsx
|
|
54
|
-
import React from 'react';
|
|
55
|
-
import { Typography } from 'greenole-design-system';
|
|
56
|
-
|
|
57
|
-
function App() {
|
|
58
|
-
return (
|
|
59
|
-
<div>
|
|
60
|
-
<Typography variant="h1">
|
|
61
|
-
The quick brown fox jumps over the lazy dog.
|
|
62
|
-
</Typography>
|
|
63
|
-
{/* Additional components will be added in the future */}
|
|
64
|
-
</div>
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export default App;
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## Development
|
|
72
|
-
|
|
73
|
-
To contribute to or test the library locally:
|
|
74
|
-
|
|
75
|
-
1. Clone the repository:
|
|
76
|
-
```bash
|
|
77
|
-
git clone https://github.com/your-username/greenole-design-system.git
|
|
78
|
-
cd greenole-design-system
|
|
79
|
-
```
|
|
80
|
-
2. Install dependencies:
|
|
81
|
-
```bash
|
|
82
|
-
npm install
|
|
83
|
-
```
|
|
84
|
-
3. Start the development environment using Vite:
|
|
85
|
-
```bash
|
|
86
|
-
npm run dev
|
|
87
|
-
```
|
|
88
|
-
4. To view the documentation and components, we use **Storybook**:
|
|
89
|
-
```bash
|
|
90
|
-
npm run storybook
|
|
91
|
-
```
|
|
92
|
-
Storybook serves as the documentation and demo environment for the library's components.
|
|
93
|
-
|
|
94
|
-
## Build & Publication
|
|
95
|
-
|
|
96
|
-
To generate the library bundle:
|
|
97
|
-
|
|
98
|
-
1. Run the build command:
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
cd
|
|
109
|
-
npm link
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
1
|
+
# Greenole Design System
|
|
2
|
+
|
|
3
|
+
[](https://www.figma.com/design/Zwkbh8XGfVt2At4ln7p1WE/DS-Greenole?node-id=1017-15&p=f&t=Mjdfp67Q8ADWcm9v-0)
|
|
4
|
+
|
|
5
|
+
The **Greenole Design System** is a React component library designed to create consistent and scalable user interfaces.
|
|
6
|
+
The library is constantly evolving, with new components and improvements being added over time.
|
|
7
|
+
|
|
8
|
+
## Table of Contents
|
|
9
|
+
|
|
10
|
+
- [Introduction](#introduction)
|
|
11
|
+
- [Installation](#installation)
|
|
12
|
+
- [Usage](#usage)
|
|
13
|
+
- [Development](#development)
|
|
14
|
+
- [Build & Publication](#build--publication)
|
|
15
|
+
- [Contributing](#contributing)
|
|
16
|
+
- [License](#license)
|
|
17
|
+
|
|
18
|
+
## Introduction
|
|
19
|
+
|
|
20
|
+
**Greenole Design System** gathers reusable components that follow a consistent visual identity.
|
|
21
|
+
It helps teams maintain design and usability standards across their React projects.
|
|
22
|
+
|
|
23
|
+
> **Note:**
|
|
24
|
+
> This library is in constant evolution. Existing components may be updated and new ones added over time.
|
|
25
|
+
|
|
26
|
+
## Installation
|
|
27
|
+
|
|
28
|
+
To install the library in your React project, run:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npm install greenole-design-system
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
> **Note:**
|
|
35
|
+
> The library declares `react` and `react-dom` as peer dependencies, so ensure your project already has these installed.
|
|
36
|
+
|
|
37
|
+
## Usage
|
|
38
|
+
|
|
39
|
+
After installation, you need to import both the CSS styles and the components:
|
|
40
|
+
|
|
41
|
+
### 1. Import the CSS styles
|
|
42
|
+
|
|
43
|
+
First, import the CSS file in your main application file (usually `main.jsx`, `App.jsx`, or `index.js`):
|
|
44
|
+
|
|
45
|
+
```jsx
|
|
46
|
+
import 'greenole-design-system/dist/greenole.css';
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 2. Import and use components
|
|
50
|
+
|
|
51
|
+
Then you can import and use the library's components:
|
|
52
|
+
|
|
53
|
+
```jsx
|
|
54
|
+
import React from 'react';
|
|
55
|
+
import { Typography } from 'greenole-design-system';
|
|
56
|
+
|
|
57
|
+
function App() {
|
|
58
|
+
return (
|
|
59
|
+
<div>
|
|
60
|
+
<Typography variant="h1">
|
|
61
|
+
The quick brown fox jumps over the lazy dog.
|
|
62
|
+
</Typography>
|
|
63
|
+
{/* Additional components will be added in the future */}
|
|
64
|
+
</div>
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export default App;
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Development
|
|
72
|
+
|
|
73
|
+
To contribute to or test the library locally:
|
|
74
|
+
|
|
75
|
+
1. Clone the repository:
|
|
76
|
+
```bash
|
|
77
|
+
git clone https://github.com/your-username/greenole-design-system.git
|
|
78
|
+
cd greenole-design-system
|
|
79
|
+
```
|
|
80
|
+
2. Install dependencies:
|
|
81
|
+
```bash
|
|
82
|
+
npm install
|
|
83
|
+
```
|
|
84
|
+
3. Start the development environment using Vite:
|
|
85
|
+
```bash
|
|
86
|
+
npm run dev
|
|
87
|
+
```
|
|
88
|
+
4. To view the documentation and components, we use **Storybook**:
|
|
89
|
+
```bash
|
|
90
|
+
npm run storybook
|
|
91
|
+
```
|
|
92
|
+
Storybook serves as the documentation and demo environment for the library's components.
|
|
93
|
+
|
|
94
|
+
## Build & Publication
|
|
95
|
+
|
|
96
|
+
To generate the library bundle:
|
|
97
|
+
|
|
98
|
+
1. Run the build command:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
npm run build
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
This will create the `dist` folder with both CommonJS and ESModule files, as well as type declarations (if configured).
|
|
105
|
+
|
|
106
|
+
2. To test locally in another project, use `npm link`:
|
|
107
|
+
```bash
|
|
108
|
+
cd greenole-design-system
|
|
109
|
+
npm link
|
|
110
|
+
cd ../your-consumer-project
|
|
111
|
+
npm link greenole-design-system
|
|
112
|
+
```
|
|
113
|
+
3. When ready to publish:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
npm login
|
|
117
|
+
npm publish --access public
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Publishing Storybook to GitHub Pages
|
|
121
|
+
|
|
122
|
+
1. Build the Storybook:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
npm run build-storybook
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
This generates the static files for your Storybook.
|
|
129
|
+
|
|
130
|
+
2. Deploy to GitHub Pages:
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
npm run deploy-storybook
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
This will automatically push the built files to the configured branch (`gh-pages`).
|
|
137
|
+
|
|
138
|
+
After that, you can access the updated Storybook at: [Design System](https://greenole-iot.github.io/greenole-design-system)
|
|
139
|
+
|
|
140
|
+
## Contributing
|
|
141
|
+
|
|
142
|
+
Contributions are welcome! If you would like to help evolve the **Greenole Design System**, follow these steps:
|
|
143
|
+
|
|
144
|
+
1. Fork the repository.
|
|
145
|
+
2. Create a branch for your feature (`git checkout -b my-feature`).
|
|
146
|
+
3. Commit your changes.
|
|
147
|
+
4. Open a pull request for review.
|
|
@@ -25,6 +25,8 @@ export interface DropdownTypes {
|
|
|
25
25
|
className?: string;
|
|
26
26
|
displayValue?: string;
|
|
27
27
|
isRequired?: boolean;
|
|
28
|
+
showClearButton?: boolean;
|
|
29
|
+
container?: HTMLElement;
|
|
28
30
|
t?: THookTypes;
|
|
29
31
|
onChange: (value: string | string[]) => void;
|
|
30
32
|
onSearch?: (searchTerm: string) => void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { DropdownMenuPositionProps } from './DropdownMenu.types';
|
|
2
|
+
export declare const DropdownMenuWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
3
|
+
export declare const DropdownMenuTriggerButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
|
|
4
|
+
export declare const DropdownMenuContent: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
5
|
+
$position: DropdownMenuPositionProps;
|
|
6
|
+
$limit?: boolean;
|
|
7
|
+
$animate: boolean;
|
|
8
|
+
}>> & string;
|
|
9
|
+
export declare const DropdownMenuArrow: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
10
|
+
$position: DropdownMenuPositionProps;
|
|
11
|
+
$limit?: boolean;
|
|
12
|
+
}>> & string;
|
|
13
|
+
export declare const DropdownMenuContentWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface DropdownMenuProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
content: ReactNode;
|
|
5
|
+
position?: DropdownMenuPositionProps;
|
|
6
|
+
limit?: boolean;
|
|
7
|
+
showArrow?: boolean;
|
|
8
|
+
onOpenChange?: (isOpen: boolean) => void;
|
|
9
|
+
}
|
|
10
|
+
export type DropdownMenuPositionProps = 'top' | 'bottom' | 'left' | 'right';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as DropdownMenu } from './DropdownMenu';
|
|
@@ -2,5 +2,7 @@ import { PillsVariant } from './Pills.types';
|
|
|
2
2
|
export declare const PillsWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
3
3
|
$variant: PillsVariant;
|
|
4
4
|
$padding?: string;
|
|
5
|
+
$background?: string;
|
|
6
|
+
$color?: string;
|
|
5
7
|
}>> & string;
|
|
6
8
|
export declare const IconWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TypographyVariant } from '../../components/Typography/Typography';
|
|
2
|
-
export type PillsVariant =
|
|
2
|
+
export type PillsVariant = "neutral" | "success" | "danger" | "warning" | "info" | "primary";
|
|
3
3
|
export interface PillsProps {
|
|
4
4
|
label: string;
|
|
5
5
|
variant?: PillsVariant;
|
|
@@ -8,4 +8,6 @@ export interface PillsProps {
|
|
|
8
8
|
iconLeft?: React.ReactNode;
|
|
9
9
|
iconRight?: React.ReactNode;
|
|
10
10
|
className?: string;
|
|
11
|
+
background?: string;
|
|
12
|
+
color?: string;
|
|
11
13
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { SkeletonProps } from './Skeleton.types';
|
|
2
|
+
export declare const SkeletonWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, SkeletonProps>> & string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as Skeleton } from './Skeleton';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { Breadcrumb } from './Breadcrumb';
|
|
3
|
+
declare const meta: Meta<typeof Breadcrumb>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof Breadcrumb>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const WithIcons: Story;
|
|
8
|
+
export declare const WithHomeIcon: Story;
|
|
9
|
+
export declare const WithClickHandlers: Story;
|
|
10
|
+
export declare const WithMaxItems: Story;
|
|
11
|
+
export declare const CustomSeparator: Story;
|
|
12
|
+
export declare const LongPath: Story;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const BreadcrumbContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLElement>, HTMLElement>, never>> & string;
|
|
2
|
+
export declare const BreadcrumbItem: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
3
|
+
$isActive: boolean;
|
|
4
|
+
$isClickable: boolean;
|
|
5
|
+
}>> & string;
|
|
6
|
+
export declare const BreadcrumbLink: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, {
|
|
7
|
+
$isActive: boolean;
|
|
8
|
+
}>> & string;
|
|
9
|
+
export declare const BreadcrumbButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
|
|
10
|
+
$isActive: boolean;
|
|
11
|
+
}>> & string;
|
|
12
|
+
export declare const BreadcrumbSeparator: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
13
|
+
export declare const IconContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface BreadcrumbItem {
|
|
3
|
+
label: string;
|
|
4
|
+
href?: string;
|
|
5
|
+
onClick?: () => void;
|
|
6
|
+
icon?: ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export interface BreadcrumbProps {
|
|
9
|
+
items: BreadcrumbItem[];
|
|
10
|
+
separator?: ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
maxItems?: number;
|
|
13
|
+
showHomeIcon?: boolean;
|
|
14
|
+
homeIcon?: ReactNode;
|
|
15
|
+
onHomeClick?: () => void;
|
|
16
|
+
}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
+
import { InputProps } from '../../base-components/Input/Input.types';
|
|
3
|
+
import { THookTypes } from '../../utils/i18n/types';
|
|
2
4
|
import { CalendarProps } from './Calendar.types';
|
|
3
|
-
|
|
5
|
+
interface ExtendedCalendarProps extends CalendarProps {
|
|
6
|
+
inputProps?: InputProps;
|
|
7
|
+
autoClose?: boolean;
|
|
8
|
+
t?: THookTypes;
|
|
9
|
+
}
|
|
10
|
+
export declare const Calendar: React.FC<ExtendedCalendarProps>;
|
|
4
11
|
export default Calendar;
|
|
@@ -3,7 +3,10 @@ import { Calendar } from './Calendar';
|
|
|
3
3
|
declare const meta: Meta<typeof Calendar>;
|
|
4
4
|
export default meta;
|
|
5
5
|
type Story = StoryObj<typeof Calendar>;
|
|
6
|
-
export declare const
|
|
7
|
-
export declare const
|
|
8
|
-
export declare const
|
|
9
|
-
export declare const
|
|
6
|
+
export declare const InlineSingle: Story;
|
|
7
|
+
export declare const InlineRange: Story;
|
|
8
|
+
export declare const AsInputSingle: Story;
|
|
9
|
+
export declare const AsInputRange: Story;
|
|
10
|
+
export declare const AsInputRangeNoAutoClose: Story;
|
|
11
|
+
export declare const AsInputWithMinMax: Story;
|
|
12
|
+
export declare const AsInputSingleWithDisabledWeekends: Story;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const CalendarContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
2
2
|
export declare const PresetsContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
3
3
|
export declare const PresetButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
|
|
4
|
-
$isActive
|
|
4
|
+
$isActive?: boolean;
|
|
5
5
|
}>> & string;
|
|
6
6
|
export declare const DateRangeContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
7
7
|
export declare const MonthContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
@@ -11,5 +11,8 @@ export declare const NavButton: import('styled-components/dist/types').IStyledCo
|
|
|
11
11
|
export declare const DaysOfWeekContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
12
12
|
export declare const DaysGrid: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
13
13
|
export declare const DayButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, {
|
|
14
|
-
$
|
|
14
|
+
$isSelected?: boolean;
|
|
15
|
+
$inRange?: boolean;
|
|
16
|
+
$isStart?: boolean;
|
|
17
|
+
$isEnd?: boolean;
|
|
15
18
|
}>> & string;
|
|
@@ -4,6 +4,14 @@ export type DateRange = {
|
|
|
4
4
|
end: Dayjs | null;
|
|
5
5
|
};
|
|
6
6
|
export interface CalendarProps {
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
mode?: "single" | "range";
|
|
8
|
+
selectedDate?: Dayjs | null;
|
|
9
|
+
selectedRange?: DateRange;
|
|
10
|
+
onChange: (date: Dayjs | null, range?: DateRange) => void;
|
|
11
|
+
minDate?: Dayjs;
|
|
12
|
+
maxDate?: Dayjs;
|
|
13
|
+
locale?: string;
|
|
14
|
+
inline?: boolean;
|
|
15
|
+
disabledDates?: Dayjs[];
|
|
16
|
+
showPresets?: boolean;
|
|
9
17
|
}
|
|
@@ -6,5 +6,9 @@ export declare const isSameRange: (a: {
|
|
|
6
6
|
start: Dayjs | null;
|
|
7
7
|
end: Dayjs | null;
|
|
8
8
|
}) => boolean | undefined;
|
|
9
|
-
export declare const formatDate: (date: Dayjs | null) => string;
|
|
9
|
+
export declare const formatDate: (date: Dayjs | null, locale?: string) => string;
|
|
10
|
+
export declare const formatRange: (range: {
|
|
11
|
+
start: Dayjs | null;
|
|
12
|
+
end: Dayjs | null;
|
|
13
|
+
}, locale?: string) => string;
|
|
10
14
|
export declare const getDaysOfWeek: (locale?: string) => string[];
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import { Dayjs } from 'dayjs';
|
|
1
2
|
import { default as React } from 'react';
|
|
2
3
|
import { DateRange } from './Calendar.types';
|
|
3
4
|
interface Props {
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
mode: "single" | "range";
|
|
6
|
+
selectedDate?: Dayjs | null;
|
|
7
|
+
selectedRange?: DateRange;
|
|
8
|
+
onChange: (date: Dayjs | null, range?: DateRange) => void;
|
|
9
|
+
minDate?: Dayjs;
|
|
10
|
+
maxDate?: Dayjs;
|
|
11
|
+
locale: string;
|
|
12
|
+
disabledDates: Dayjs[];
|
|
6
13
|
}
|
|
7
14
|
export declare const DateRangePicker: React.FC<Props>;
|
|
8
15
|
export {};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
+
import { THookTypes } from '../../utils/i18n/types';
|
|
2
3
|
import { DateRange } from './Calendar.types';
|
|
3
4
|
interface PresetsProps {
|
|
4
5
|
currentRange: DateRange;
|
|
5
6
|
onSelect: (range: DateRange) => void;
|
|
7
|
+
t?: THookTypes;
|
|
6
8
|
}
|
|
7
9
|
export declare const Presets: React.FC<PresetsProps>;
|
|
8
10
|
export {};
|
|
@@ -2,6 +2,9 @@ import { default as React } from 'react';
|
|
|
2
2
|
interface CheckboxProps {
|
|
3
3
|
checked?: boolean;
|
|
4
4
|
className?: string;
|
|
5
|
+
variant?: 'default' | 'outline';
|
|
6
|
+
width?: number;
|
|
7
|
+
height?: number;
|
|
5
8
|
}
|
|
6
|
-
export default function Checkbox({ checked, className }: CheckboxProps): React.JSX.Element;
|
|
9
|
+
export default function Checkbox({ checked, className, variant, width, height }: CheckboxProps): React.JSX.Element;
|
|
7
10
|
export {};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export { default as ArrowBack } from './ArrowBack';
|
|
2
2
|
export { default as ArrowForward } from './ArrowForward';
|
|
3
|
+
export { default as ArrowLeft } from './ArrowLeft';
|
|
3
4
|
export { default as ChevronDown } from './ChevronDown';
|
|
5
|
+
export { default as ChevronRight } from './ChevronRight';
|
|
4
6
|
export { default as Home } from './Home';
|
|
5
7
|
export { default as Checkbox } from './Checkbox';
|
|
6
8
|
export { default as DashEdit } from './DashEdit';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { PageHeader } from './PageHeader';
|
|
3
|
+
declare const meta: Meta<typeof PageHeader>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof PageHeader>;
|
|
6
|
+
export declare const Default: Story;
|
|
7
|
+
export declare const WithBreadcrumb: Story;
|
|
8
|
+
export declare const WithBackButton: Story;
|
|
9
|
+
export declare const WithSearch: Story;
|
|
10
|
+
export declare const WithButtons: Story;
|
|
11
|
+
export declare const WithTabs: Story;
|
|
12
|
+
export declare const Complete: Story;
|
|
13
|
+
export declare const WithCustomIcons: Story;
|
|
14
|
+
export declare const Responsive: Story;
|