@paygreen/pgui 2.0.0 → 2.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.
Files changed (35) hide show
  1. package/README.md +94 -0
  2. package/dist/cjs/index.js +3142 -0
  3. package/dist/cjs/index.js.map +1 -0
  4. package/dist/cjs/types/components/ActionsButton/index.d.ts +6 -0
  5. package/dist/cjs/types/components/DataList/index.d.ts +35 -0
  6. package/dist/cjs/types/components/FormGroup/index.d.ts +12 -0
  7. package/dist/cjs/types/components/Pagination/index.d.ts +43 -0
  8. package/dist/cjs/types/components/index.d.ts +4 -0
  9. package/dist/cjs/types/index.d.ts +1 -0
  10. package/dist/cjs/types/theme/components/Badge.d.ts +7 -0
  11. package/dist/cjs/types/theme/components/Button.d.ts +140 -0
  12. package/dist/cjs/types/theme/components/Input.d.ts +47 -0
  13. package/dist/cjs/types/theme/components/Tag.d.ts +8 -0
  14. package/dist/cjs/types/theme/foundations/colors.d.ts +65 -0
  15. package/dist/cjs/types/theme/foundations/shadows.d.ts +10 -0
  16. package/dist/cjs/types/theme/foundations/typography.d.ts +10 -0
  17. package/dist/cjs/types/theme/index.d.ts +1 -0
  18. package/dist/esm/index.js +3118 -0
  19. package/dist/esm/index.js.map +1 -0
  20. package/dist/esm/types/components/ActionsButton/index.d.ts +6 -0
  21. package/dist/esm/types/components/DataList/index.d.ts +35 -0
  22. package/dist/esm/types/components/FormGroup/index.d.ts +12 -0
  23. package/dist/esm/types/components/Pagination/index.d.ts +43 -0
  24. package/dist/esm/types/components/index.d.ts +4 -0
  25. package/dist/esm/types/index.d.ts +1 -0
  26. package/dist/esm/types/theme/components/Badge.d.ts +7 -0
  27. package/dist/esm/types/theme/components/Button.d.ts +140 -0
  28. package/dist/esm/types/theme/components/Input.d.ts +47 -0
  29. package/dist/esm/types/theme/components/Tag.d.ts +8 -0
  30. package/dist/esm/types/theme/foundations/colors.d.ts +65 -0
  31. package/dist/esm/types/theme/foundations/shadows.d.ts +10 -0
  32. package/dist/esm/types/theme/foundations/typography.d.ts +10 -0
  33. package/dist/esm/types/theme/index.d.ts +1 -0
  34. package/dist/index.d.ts +96 -0
  35. package/package.json +79 -5
@@ -0,0 +1,6 @@
1
+ import React, { FC } from 'react';
2
+ import { IconButtonProps } from '@chakra-ui/react';
3
+ export declare type ActionsButtonProps = Omit<IconButtonProps, 'aria-label'> & {
4
+ label: string;
5
+ };
6
+ export declare const ActionsButton: FC<React.PropsWithChildren<ActionsButtonProps>>;
@@ -0,0 +1,35 @@
1
+ import React, { FC } from 'react';
2
+ import { AccordionProps, FlexProps } from '@chakra-ui/react';
3
+ export declare const DataListContext: React.Context<any>;
4
+ export declare const DataListHeaderContext: React.Context<boolean>;
5
+ export declare type DataListCellProps = FlexProps & {
6
+ colName?: string;
7
+ colWidth?: string | number | Record<string, string | number>;
8
+ isVisible?: boolean | boolean[] | Record<string, boolean>;
9
+ };
10
+ export declare const DataListCell: ({ children, colName, colWidth, isVisible, ...rest }: DataListCellProps) => JSX.Element | null;
11
+ export declare const DataListAccordion: ({ ...rest }: {
12
+ [x: string]: any;
13
+ }) => JSX.Element;
14
+ export declare const DataListAccordionButton: ({ ...rest }: {
15
+ [x: string]: any;
16
+ }) => JSX.Element;
17
+ export declare const DataListAccordionIcon: ({ ...rest }: {
18
+ [x: string]: any;
19
+ }) => JSX.Element;
20
+ export declare const DataListAccordionPanel: ({ ...rest }: {
21
+ [x: string]: any;
22
+ }) => JSX.Element;
23
+ export declare type DataListRowProps = FlexProps & {
24
+ isVisible?: boolean | boolean[] | Record<string, boolean>;
25
+ isDisabled?: boolean;
26
+ };
27
+ export declare const DataListRow: FC<React.PropsWithChildren<DataListRowProps>>;
28
+ export declare type DataListHeaderProps = DataListRowProps;
29
+ export declare const DataListHeader: FC<React.PropsWithChildren<DataListHeaderProps>>;
30
+ export declare type DataListFooterProps = DataListRowProps;
31
+ export declare const DataListFooter: FC<React.PropsWithChildren<DataListFooterProps>>;
32
+ export declare type DataListProps = AccordionProps & {
33
+ isHover?: boolean;
34
+ };
35
+ export declare const DataList: FC<React.PropsWithChildren<DataListProps>>;
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from 'react';
2
+ import { FormControlProps } from '@chakra-ui/react';
3
+ export declare type FormGroupProps = Omit<FormControlProps, 'onChange' | 'defaultValue' | 'label'> & {
4
+ children?: ReactNode;
5
+ errorMessage?: ReactNode;
6
+ helper?: ReactNode;
7
+ id?: string;
8
+ isRequired?: boolean;
9
+ label?: ReactNode;
10
+ showError?: boolean;
11
+ };
12
+ export declare const FormGroup: ({ children, errorMessage, helper, id, isRequired, label, showError, ...props }: FormGroupProps) => JSX.Element;
@@ -0,0 +1,43 @@
1
+ import React, { FC } from 'react';
2
+ import { IconButtonProps, StackProps } from '@chakra-ui/react';
3
+ export declare const getPaginationInfo: ({ page, pageSize, totalItems, }: {
4
+ page?: number | undefined;
5
+ pageSize?: number | undefined;
6
+ totalItems?: number | undefined;
7
+ }) => {
8
+ firstPage: number;
9
+ lastPage: number;
10
+ firstItemOnPage: number;
11
+ lastItemOnPage: number;
12
+ isFirstPage: boolean;
13
+ isLastPage: boolean;
14
+ };
15
+ export declare type PaginationContextValue<PageType = number> = {
16
+ page: PageType;
17
+ setPage: (page: PageType) => void;
18
+ firstPage: PageType;
19
+ isFirstPage: boolean;
20
+ lastPage: PageType;
21
+ isLastPage: boolean;
22
+ totalItems: number;
23
+ isLoadingPage: boolean;
24
+ pageSize: number;
25
+ firstItemOnPage: number;
26
+ lastItemOnPage: number;
27
+ };
28
+ export declare const PaginationContext: React.Context<PaginationContextValue<number>>;
29
+ export declare const PaginationButtonFirstPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
30
+ export declare const PaginationButtonPrevPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
31
+ export declare const PaginationButtonLastPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
32
+ export declare const PaginationButtonNextPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
33
+ export declare const PaginationInfo: ({ ...rest }: {
34
+ [x: string]: any;
35
+ }) => JSX.Element;
36
+ export declare type PaginationProps = StackProps & {
37
+ setPage: (page: number) => void;
38
+ page?: number;
39
+ pageSize?: number;
40
+ totalItems?: number;
41
+ isLoadingPage?: boolean;
42
+ };
43
+ export declare const Pagination: ({ setPage, page, pageSize, totalItems, isLoadingPage, ...rest }: PaginationProps) => JSX.Element;
@@ -0,0 +1,4 @@
1
+ export * from './ActionsButton';
2
+ export * from './DataList';
3
+ export * from './FormGroup';
4
+ export * from './Pagination';
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -0,0 +1,7 @@
1
+ export declare const Badge: {
2
+ baseStyle: {
3
+ borderRadius: string;
4
+ fontWeight: string;
5
+ paddingX: number;
6
+ };
7
+ };
@@ -0,0 +1,140 @@
1
+ export declare const Button: {
2
+ baseStyle: {
3
+ borderRadius: string;
4
+ fontWeight: string;
5
+ };
6
+ variants: {
7
+ '@primary': (props: any) => {
8
+ bg: string;
9
+ color: string;
10
+ _focus: {
11
+ boxShadow: string;
12
+ };
13
+ _hover: {
14
+ bg: string;
15
+ color: string;
16
+ _disabled: {
17
+ bg: string;
18
+ };
19
+ };
20
+ _active: {
21
+ bg: string;
22
+ };
23
+ };
24
+ '@secondary': (props: any) => {
25
+ bg: string;
26
+ color: string;
27
+ _focus: {
28
+ boxShadow: string;
29
+ };
30
+ _hover: {
31
+ bg: string;
32
+ color: string;
33
+ _disabled: {
34
+ bg: string;
35
+ };
36
+ };
37
+ _active: {
38
+ bg: string;
39
+ };
40
+ };
41
+ '@danger': (props: any) => {
42
+ bg: string;
43
+ color: string;
44
+ _focus: {
45
+ boxShadow: string;
46
+ };
47
+ _hover: {
48
+ bg: string;
49
+ color: string;
50
+ _disabled: {
51
+ bg: string;
52
+ };
53
+ };
54
+ _active: {
55
+ bg: string;
56
+ };
57
+ };
58
+ '@link': (props: any) => {
59
+ height: string;
60
+ margin: number;
61
+ padding: number;
62
+ _hover: {
63
+ textDecoration: string;
64
+ color: string;
65
+ };
66
+ _active: {
67
+ textDecoration: string;
68
+ color: string;
69
+ };
70
+ bg: string;
71
+ color: string;
72
+ _focus: {
73
+ boxShadow: string;
74
+ };
75
+ };
76
+ '@linkNeutral': (props: any) => {
77
+ height: string;
78
+ margin: number;
79
+ padding: number;
80
+ _hover: {
81
+ textDecoration: string;
82
+ color: string;
83
+ };
84
+ bg: string;
85
+ color: string;
86
+ _focus: {
87
+ boxShadow: string;
88
+ };
89
+ _active: {
90
+ bg: string;
91
+ };
92
+ };
93
+ '@white': (props: any) => {
94
+ borderWidth: string;
95
+ borderStyle: string;
96
+ borderColor: string;
97
+ bg: string;
98
+ color: string;
99
+ _focus: {
100
+ boxShadow: string;
101
+ };
102
+ _hover: {
103
+ bg: string;
104
+ color: string;
105
+ _disabled: {
106
+ bg: string;
107
+ };
108
+ };
109
+ _active: {
110
+ bg: string;
111
+ };
112
+ };
113
+ '@whiteNeutral': (props: any) => {
114
+ borderWidth: string;
115
+ borderStyle: string;
116
+ borderColor: string;
117
+ bg: string;
118
+ color: string;
119
+ _focus: {
120
+ boxShadow: string;
121
+ };
122
+ _hover: {
123
+ bg: string;
124
+ color: string;
125
+ _disabled: {
126
+ bg: string;
127
+ };
128
+ };
129
+ _active: {
130
+ bg: string;
131
+ };
132
+ };
133
+ ghost: (props: any) => {
134
+ bg: string;
135
+ _hover: {
136
+ bg: string;
137
+ };
138
+ };
139
+ };
140
+ };
@@ -0,0 +1,47 @@
1
+ export declare const Input: {
2
+ baseStyle: {
3
+ field: {
4
+ borderRadius: string;
5
+ };
6
+ };
7
+ variants: {
8
+ outline: (props: any) => {
9
+ field: {
10
+ bg: string;
11
+ borderColor: string;
12
+ borderRadius: string;
13
+ _focus: {
14
+ borderColor: string;
15
+ };
16
+ _focusVisible: {
17
+ boxShadow: string;
18
+ };
19
+ };
20
+ addon: {
21
+ borderRadius: string;
22
+ };
23
+ };
24
+ filled: (props: any) => {
25
+ field: {
26
+ bg: string;
27
+ borderWidth: string;
28
+ borderColor: string;
29
+ borderRadius: string;
30
+ _hover: {
31
+ bg: string;
32
+ borderColor: string;
33
+ };
34
+ _focus: {
35
+ bg: string;
36
+ borderColor: string;
37
+ };
38
+ _focusVisible: {
39
+ boxShadow: string;
40
+ };
41
+ };
42
+ addon: {
43
+ borderRadius: string;
44
+ };
45
+ };
46
+ };
47
+ };
@@ -0,0 +1,8 @@
1
+ export declare const Tag: {
2
+ baseStyle: {
3
+ container: {
4
+ borderRadius: string;
5
+ fontWeight: string;
6
+ };
7
+ };
8
+ };
@@ -0,0 +1,65 @@
1
+ export declare const colors: {
2
+ brand: {
3
+ 50: string;
4
+ 100: string;
5
+ 200: string;
6
+ 300: string;
7
+ 400: string;
8
+ 500: string;
9
+ 600: string;
10
+ 700: string;
11
+ 800: string;
12
+ 900: string;
13
+ };
14
+ gray: {
15
+ 50: string;
16
+ 100: string;
17
+ 200: string;
18
+ 300: string;
19
+ 400: string;
20
+ 500: string;
21
+ 600: string;
22
+ 700: string;
23
+ 800: string;
24
+ 900: string;
25
+ };
26
+ red: {
27
+ 50: string;
28
+ 100: string;
29
+ 200: string;
30
+ 300: string;
31
+ 400: string;
32
+ 500: string;
33
+ 600: string;
34
+ 700: string;
35
+ 800: string;
36
+ 900: string;
37
+ };
38
+ orange: {
39
+ 50: string;
40
+ 100: string;
41
+ 200: string;
42
+ 300: string;
43
+ 400: string;
44
+ 500: string;
45
+ 600: string;
46
+ 700: string;
47
+ 800: string;
48
+ 900: string;
49
+ };
50
+ green: {
51
+ 50: string;
52
+ 100: string;
53
+ 200: string;
54
+ 300: string;
55
+ 400: string;
56
+ 500: string;
57
+ 600: string;
58
+ 700: string;
59
+ 800: string;
60
+ 900: string;
61
+ };
62
+ gradients: {
63
+ primary: string;
64
+ };
65
+ };
@@ -0,0 +1,10 @@
1
+ export declare const shadows: {
2
+ xs: string;
3
+ sm: string;
4
+ base: string;
5
+ md: string;
6
+ lg: string;
7
+ xl: string;
8
+ '2xl': string;
9
+ layout: string;
10
+ };
@@ -0,0 +1,10 @@
1
+ export declare const typography: {
2
+ fonts: {
3
+ heading: string;
4
+ body: string;
5
+ mono: string;
6
+ };
7
+ fontSizes: {
8
+ '2xs': string;
9
+ };
10
+ };
@@ -0,0 +1 @@
1
+ export declare const theme: unknown;
@@ -0,0 +1,96 @@
1
+ import React, { FC, ReactNode } from 'react';
2
+ import { IconButtonProps, FlexProps, AccordionProps, FormControlProps, StackProps } from '@chakra-ui/react';
3
+
4
+ declare type ActionsButtonProps = Omit<IconButtonProps, 'aria-label'> & {
5
+ label: string;
6
+ };
7
+ declare const ActionsButton: FC<React.PropsWithChildren<ActionsButtonProps>>;
8
+
9
+ declare const DataListContext: React.Context<any>;
10
+ declare const DataListHeaderContext: React.Context<boolean>;
11
+ declare type DataListCellProps = FlexProps & {
12
+ colName?: string;
13
+ colWidth?: string | number | Record<string, string | number>;
14
+ isVisible?: boolean | boolean[] | Record<string, boolean>;
15
+ };
16
+ declare const DataListCell: ({ children, colName, colWidth, isVisible, ...rest }: DataListCellProps) => JSX.Element | null;
17
+ declare const DataListAccordion: ({ ...rest }: {
18
+ [x: string]: any;
19
+ }) => JSX.Element;
20
+ declare const DataListAccordionButton: ({ ...rest }: {
21
+ [x: string]: any;
22
+ }) => JSX.Element;
23
+ declare const DataListAccordionIcon: ({ ...rest }: {
24
+ [x: string]: any;
25
+ }) => JSX.Element;
26
+ declare const DataListAccordionPanel: ({ ...rest }: {
27
+ [x: string]: any;
28
+ }) => JSX.Element;
29
+ declare type DataListRowProps = FlexProps & {
30
+ isVisible?: boolean | boolean[] | Record<string, boolean>;
31
+ isDisabled?: boolean;
32
+ };
33
+ declare const DataListRow: FC<React.PropsWithChildren<DataListRowProps>>;
34
+ declare type DataListHeaderProps = DataListRowProps;
35
+ declare const DataListHeader: FC<React.PropsWithChildren<DataListHeaderProps>>;
36
+ declare type DataListFooterProps = DataListRowProps;
37
+ declare const DataListFooter: FC<React.PropsWithChildren<DataListFooterProps>>;
38
+ declare type DataListProps = AccordionProps & {
39
+ isHover?: boolean;
40
+ };
41
+ declare const DataList: FC<React.PropsWithChildren<DataListProps>>;
42
+
43
+ declare type FormGroupProps = Omit<FormControlProps, 'onChange' | 'defaultValue' | 'label'> & {
44
+ children?: ReactNode;
45
+ errorMessage?: ReactNode;
46
+ helper?: ReactNode;
47
+ id?: string;
48
+ isRequired?: boolean;
49
+ label?: ReactNode;
50
+ showError?: boolean;
51
+ };
52
+ declare const FormGroup: ({ children, errorMessage, helper, id, isRequired, label, showError, ...props }: FormGroupProps) => JSX.Element;
53
+
54
+ declare const getPaginationInfo: ({ page, pageSize, totalItems, }: {
55
+ page?: number | undefined;
56
+ pageSize?: number | undefined;
57
+ totalItems?: number | undefined;
58
+ }) => {
59
+ firstPage: number;
60
+ lastPage: number;
61
+ firstItemOnPage: number;
62
+ lastItemOnPage: number;
63
+ isFirstPage: boolean;
64
+ isLastPage: boolean;
65
+ };
66
+ declare type PaginationContextValue<PageType = number> = {
67
+ page: PageType;
68
+ setPage: (page: PageType) => void;
69
+ firstPage: PageType;
70
+ isFirstPage: boolean;
71
+ lastPage: PageType;
72
+ isLastPage: boolean;
73
+ totalItems: number;
74
+ isLoadingPage: boolean;
75
+ pageSize: number;
76
+ firstItemOnPage: number;
77
+ lastItemOnPage: number;
78
+ };
79
+ declare const PaginationContext: React.Context<PaginationContextValue<number>>;
80
+ declare const PaginationButtonFirstPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
81
+ declare const PaginationButtonPrevPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
82
+ declare const PaginationButtonLastPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
83
+ declare const PaginationButtonNextPage: FC<React.PropsWithChildren<Omit<IconButtonProps, 'aria-label'>>>;
84
+ declare const PaginationInfo: ({ ...rest }: {
85
+ [x: string]: any;
86
+ }) => JSX.Element;
87
+ declare type PaginationProps = StackProps & {
88
+ setPage: (page: number) => void;
89
+ page?: number;
90
+ pageSize?: number;
91
+ totalItems?: number;
92
+ isLoadingPage?: boolean;
93
+ };
94
+ declare const Pagination: ({ setPage, page, pageSize, totalItems, isLoadingPage, ...rest }: PaginationProps) => JSX.Element;
95
+
96
+ export { ActionsButton, ActionsButtonProps, DataList, DataListAccordion, DataListAccordionButton, DataListAccordionIcon, DataListAccordionPanel, DataListCell, DataListCellProps, DataListContext, DataListFooter, DataListFooterProps, DataListHeader, DataListHeaderContext, DataListHeaderProps, DataListProps, DataListRow, DataListRowProps, FormGroup, FormGroupProps, Pagination, PaginationButtonFirstPage, PaginationButtonLastPage, PaginationButtonNextPage, PaginationButtonPrevPage, PaginationContext, PaginationContextValue, PaginationInfo, PaginationProps, getPaginationInfo };
package/package.json CHANGED
@@ -1,11 +1,38 @@
1
1
  {
2
2
  "name": "@paygreen/pgui",
3
- "version": "2.0.0",
4
- "description": "",
5
- "main": "index.js",
3
+ "version": "2.1.0",
4
+ "description": "PGUI is the design system coming grom Paygreen.",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "files": [
8
+ "dist"
9
+ ],
10
+ "types": "dist/index.d.ts",
6
11
  "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
12
+ "build": "rollup -c rollup.config.js",
13
+ "lint": "eslint src/**/*.{js,jsx,ts,tsx,json} --max-warnings=0",
14
+ "lint:fix": "eslint --fix 'src/**/*.{js,jsx,ts,tsx,json}'",
15
+ "format": "prettier --write 'src/**/*.{js,jsx,ts,tsx,css,md,json}' --config ./.prettierrc.json",
16
+ "link-local-lib": "npm link /home/philippe.chevreul@paygreen.ad/Documents/paygreen/app.paygreen.fr/node_modules/@chakra-ui/react",
17
+ "storybook": "start-storybook -p 6006",
18
+ "build-storybook": "build-storybook",
19
+ "prepare": "husky install"
8
20
  },
21
+ "lint-staged": {
22
+ "**/*.{ts,tsx,json,mdx}": [
23
+ "prettier --write --config ./.prettierrc.json",
24
+ "eslint --fix --max-warnings=0"
25
+ ]
26
+ },
27
+ "keywords": [
28
+ "design",
29
+ "system",
30
+ "chakra-ui",
31
+ "component",
32
+ "library",
33
+ "theme",
34
+ "react"
35
+ ],
9
36
  "repository": {
10
37
  "type": "git",
11
38
  "url": "git+https://gitlab.com/Paygreen-paygreen/v3/pgui.git"
@@ -15,5 +42,52 @@
15
42
  "bugs": {
16
43
  "url": "https://gitlab.com/Paygreen-paygreen/v3/pgui/issues"
17
44
  },
18
- "homepage": "https://gitlab.com/Paygreen-paygreen/v3/pgui#readme"
45
+ "homepage": "https://gitlab.com/Paygreen-paygreen/v3/pgui#readme",
46
+ "devDependencies": {
47
+ "@babel/core": "^7.18.9",
48
+ "@chakra-ui/react": "^2.2.3",
49
+ "@chakra-ui/theme-tools": "^2.0.5",
50
+ "@emotion/react": "^11.9.3",
51
+ "@emotion/styled": "^11.9.3",
52
+ "@rollup/plugin-commonjs": "^22.0.1",
53
+ "@rollup/plugin-node-resolve": "^13.3.0",
54
+ "@rollup/plugin-typescript": "^8.3.3",
55
+ "@storybook/addon-actions": "^6.5.9",
56
+ "@storybook/addon-essentials": "^6.5.9",
57
+ "@storybook/addon-interactions": "^6.5.9",
58
+ "@storybook/addon-links": "^6.5.9",
59
+ "@storybook/builder-webpack4": "^6.5.9",
60
+ "@storybook/manager-webpack4": "^6.5.9",
61
+ "@storybook/react": "^6.5.9",
62
+ "@storybook/testing-library": "^0.0.13",
63
+ "@trivago/prettier-plugin-sort-imports": "^3.3.0",
64
+ "@types/react": "^18.0.15",
65
+ "@typescript-eslint/eslint-plugin": "^5.30.6",
66
+ "@typescript-eslint/parser": "^5.30.6",
67
+ "babel-loader": "^8.2.5",
68
+ "eslint": "^8.20.0",
69
+ "eslint-config-prettier": "^8.5.0",
70
+ "eslint-import-resolver-typescript": "^3.2.7",
71
+ "eslint-plugin-import": "^2.26.0",
72
+ "eslint-plugin-jsx-a11y": "^6.6.0",
73
+ "eslint-plugin-prettier": "^4.2.1",
74
+ "eslint-plugin-react": "^7.30.1",
75
+ "eslint-plugin-react-hooks": "^4.6.0",
76
+ "eslint-plugin-storybook": "^0.6.1",
77
+ "framer-motion": "4.1.17",
78
+ "husky": "^8.0.1",
79
+ "lint-staged": "^13.0.3",
80
+ "prettier": "^2.7.1",
81
+ "react": "^18.2.0",
82
+ "react-dom": "^18.2.0",
83
+ "react-icons": "^4.4.0",
84
+ "rollup": "^2.77.0",
85
+ "rollup-plugin-dts": "^4.2.2",
86
+ "rollup-plugin-node-externals": "^4.1.1",
87
+ "rollup-plugin-peer-deps-external": "^2.2.4",
88
+ "rollup-plugin-terser": "^7.0.2",
89
+ "typescript": "^4.7.4",
90
+ "eslint-config-airbnb-base": "^15.0.0",
91
+ "eslint-config-airbnb-typescript": "^17.0.0"
92
+ }
19
93
  }