gd-design-library 0.0.1

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 (206) hide show
  1. package/README.md +201 -0
  2. package/assets/icons/arrow-forward.d.ts +6 -0
  3. package/assets/icons/check.d.ts +6 -0
  4. package/assets/icons/chevron-right.d.ts +6 -0
  5. package/assets/icons/cross.d.ts +6 -0
  6. package/assets/icons/dot.d.ts +6 -0
  7. package/assets/icons/home.d.ts +6 -0
  8. package/assets/icons/slash.d.ts +6 -0
  9. package/assets/icons/star.d.ts +5 -0
  10. package/assets/icons/toast_error.d.ts +5 -0
  11. package/assets/icons/toast_info.d.ts +5 -0
  12. package/assets/icons/toast_success.d.ts +5 -0
  13. package/assets/icons/toast_warning.d.ts +5 -0
  14. package/assets/index.d.ts +83 -0
  15. package/components/core/Breadcrumbs/Breadcrumbs.d.ts +2 -0
  16. package/components/core/Breadcrumbs/Breadcrumbs.types.d.ts +14 -0
  17. package/components/core/Breadcrumbs/StyledBreadcrumbs.d.ts +6 -0
  18. package/components/core/Breadcrumbs/constants.d.ts +1 -0
  19. package/components/core/Breadcrumbs/index.d.ts +2 -0
  20. package/components/core/Button/Button.d.ts +5 -0
  21. package/components/core/Button/Button.types.d.ts +52 -0
  22. package/components/core/Button/StyledButton.d.ts +5 -0
  23. package/components/core/Button/constants.d.ts +1 -0
  24. package/components/core/Button/index.d.ts +2 -0
  25. package/components/core/Form/Form.d.ts +5 -0
  26. package/components/core/Form/Form.types.d.ts +24 -0
  27. package/components/core/Form/StyledForm.d.ts +2 -0
  28. package/components/core/Form/constants.d.ts +1 -0
  29. package/components/core/Form/index.d.ts +2 -0
  30. package/components/core/Form/utils.d.ts +3 -0
  31. package/components/core/Icon/Icon.d.ts +5 -0
  32. package/components/core/Icon/Icon.types.d.ts +8 -0
  33. package/components/core/Icon/constants.d.ts +1 -0
  34. package/components/core/Icon/index.d.ts +2 -0
  35. package/components/core/Input/Input.d.ts +3 -0
  36. package/components/core/Input/Input.types.d.ts +68 -0
  37. package/components/core/Input/StyledInput.d.ts +3 -0
  38. package/components/core/Input/constants.d.ts +1 -0
  39. package/components/core/Input/index.d.ts +2 -0
  40. package/components/core/Label/Label.d.ts +5 -0
  41. package/components/core/Label/Label.types.d.ts +23 -0
  42. package/components/core/Label/StyledLabel.d.ts +2 -0
  43. package/components/core/Label/constants.d.ts +1 -0
  44. package/components/core/Label/index.d.ts +2 -0
  45. package/components/core/Link/Link.d.ts +4 -0
  46. package/components/core/Link/Link.types.d.ts +35 -0
  47. package/components/core/Link/StyledLink.d.ts +2 -0
  48. package/components/core/Link/constants.d.ts +1 -0
  49. package/components/core/Link/index.d.ts +2 -0
  50. package/components/core/List/List.d.ts +3 -0
  51. package/components/core/List/List.types.d.ts +12 -0
  52. package/components/core/List/StyledList.d.ts +3 -0
  53. package/components/core/List/constants.d.ts +1 -0
  54. package/components/core/List/index.d.ts +2 -0
  55. package/components/core/Loader/Loader.d.ts +4 -0
  56. package/components/core/Loader/Loader.types.d.ts +13 -0
  57. package/components/core/Loader/StyledLoader.d.ts +2 -0
  58. package/components/core/Loader/constants.d.ts +2 -0
  59. package/components/core/Loader/index.d.ts +2 -0
  60. package/components/core/Modal/Modal.d.ts +2 -0
  61. package/components/core/Modal/Modal.types.d.ts +12 -0
  62. package/components/core/Modal/StyledModal.d.ts +7 -0
  63. package/components/core/Modal/constants.d.ts +1 -0
  64. package/components/core/Modal/index.d.ts +2 -0
  65. package/components/core/Portal/Portal.d.ts +4 -0
  66. package/components/core/Portal/Portal.types.d.ts +7 -0
  67. package/components/core/Portal/constants.d.ts +1 -0
  68. package/components/core/Portal/index.d.ts +2 -0
  69. package/components/core/Skeleton/Skeleton.d.ts +4 -0
  70. package/components/core/Skeleton/Skeleton.types.d.ts +19 -0
  71. package/components/core/Skeleton/StyledSkeleton.d.ts +2 -0
  72. package/components/core/Skeleton/constants.d.ts +2 -0
  73. package/components/core/Skeleton/index.d.ts +2 -0
  74. package/components/core/Snackbar/Snackbar.d.ts +2 -0
  75. package/components/core/Snackbar/Snackbar.types.d.ts +41 -0
  76. package/components/core/Snackbar/SnackbarManager.d.ts +3 -0
  77. package/components/core/Snackbar/StyledSnackbar.d.ts +13 -0
  78. package/components/core/Snackbar/constants.d.ts +8 -0
  79. package/components/core/Snackbar/index.d.ts +4 -0
  80. package/components/core/Switch/StyledSwitch.d.ts +2 -0
  81. package/components/core/Switch/Switch.d.ts +2 -0
  82. package/components/core/Switch/constants.d.ts +1 -0
  83. package/components/core/Switch/index.d.ts +2 -0
  84. package/components/core/Switch/types.d.ts +18 -0
  85. package/components/core/Textarea/StyledTextarea.d.ts +3 -0
  86. package/components/core/Textarea/Textarea.d.ts +3 -0
  87. package/components/core/Textarea/Textarea.types.d.ts +42 -0
  88. package/components/core/Textarea/TextareaWidget.d.ts +3 -0
  89. package/components/core/Textarea/constants.d.ts +1 -0
  90. package/components/core/Textarea/hooks/index.d.ts +2 -0
  91. package/components/core/Textarea/hooks/useDynamicHeightAdjustment.d.ts +2 -0
  92. package/components/core/Textarea/hooks/useResizeObserver.d.ts +2 -0
  93. package/components/core/Textarea/index.d.ts +3 -0
  94. package/components/core/Tooltip/StyledTooltip.d.ts +3 -0
  95. package/components/core/Tooltip/Tooltip.d.ts +3 -0
  96. package/components/core/Tooltip/Tooltip.types.d.ts +17 -0
  97. package/components/core/Tooltip/constants.d.ts +3 -0
  98. package/components/core/Tooltip/index.d.ts +1 -0
  99. package/components/core/Tooltip/utils.d.ts +22 -0
  100. package/components/core/Typography/StyledTypography.d.ts +2 -0
  101. package/components/core/Typography/Typography.d.ts +3 -0
  102. package/components/core/Typography/Typography.types.d.ts +58 -0
  103. package/components/core/Typography/constants.d.ts +3 -0
  104. package/components/core/Typography/index.d.ts +2 -0
  105. package/components/core/Typography/utils.d.ts +2 -0
  106. package/components/core/Wrapper/StyledWrapper.d.ts +2 -0
  107. package/components/core/Wrapper/Wrapper.d.ts +5 -0
  108. package/components/core/Wrapper/Wrapper.types.d.ts +8 -0
  109. package/components/core/Wrapper/constants.d.ts +1 -0
  110. package/components/core/Wrapper/index.d.ts +2 -0
  111. package/components/core/index.d.ts +19 -0
  112. package/components/core/types/common.types.d.ts +24 -0
  113. package/components/core/types/cursors.types.d.ts +14 -0
  114. package/components/core/types/index.types.d.ts +3 -0
  115. package/components/core/types/roles.types.d.ts +3 -0
  116. package/components/domainSpecific/Stepper/Stepper.d.ts +2 -0
  117. package/components/domainSpecific/Stepper/Stepper.types.d.ts +39 -0
  118. package/components/domainSpecific/Stepper/StyledStepper.d.ts +6 -0
  119. package/components/domainSpecific/Stepper/constants.d.ts +1 -0
  120. package/components/domainSpecific/Stepper/index.d.ts +2 -0
  121. package/components/domainSpecific/Stepper/utils.d.ts +2 -0
  122. package/components/domainSpecific/Tabs/StyledTabs.d.ts +7 -0
  123. package/components/domainSpecific/Tabs/Tabs.d.ts +2 -0
  124. package/components/domainSpecific/Tabs/Tabs.types.d.ts +19 -0
  125. package/components/domainSpecific/Tabs/constants.d.ts +6 -0
  126. package/components/domainSpecific/Tabs/index.d.ts +2 -0
  127. package/components/domainSpecific/index.d.ts +2 -0
  128. package/components/index.d.ts +4 -0
  129. package/components/index.types.d.ts +37 -0
  130. package/components/layout/Column/Column.d.ts +4 -0
  131. package/components/layout/Column/Column.types.d.ts +5 -0
  132. package/components/layout/Column/StyledColumn.d.ts +2 -0
  133. package/components/layout/Column/constants.d.ts +1 -0
  134. package/components/layout/Column/index.d.ts +1 -0
  135. package/components/layout/FlexContainer/FlexContainer.d.ts +5 -0
  136. package/components/layout/FlexContainer/FlexContainer.types.d.ts +9 -0
  137. package/components/layout/FlexContainer/StyledFlexContainer.d.ts +2 -0
  138. package/components/layout/FlexContainer/constants.d.ts +1 -0
  139. package/components/layout/FlexContainer/index.d.ts +2 -0
  140. package/components/layout/FlexContainer/utils.d.ts +2 -0
  141. package/components/layout/Row/Row.d.ts +5 -0
  142. package/components/layout/Row/Row.types.d.ts +5 -0
  143. package/components/layout/Row/StyledRow.d.ts +2 -0
  144. package/components/layout/Row/constants.d.ts +1 -0
  145. package/components/layout/Row/index.d.ts +1 -0
  146. package/components/layout/index.d.ts +4 -0
  147. package/components/layout/index.types.d.ts +1 -0
  148. package/components/layout/utils.d.ts +4 -0
  149. package/constants/index.d.ts +2 -0
  150. package/constants/keyboard.d.ts +3 -0
  151. package/constants/positioning.d.ts +6 -0
  152. package/constants/timers.d.ts +2 -0
  153. package/hooks/index.d.ts +1 -0
  154. package/hooks/useAutoFocus/index.d.ts +1 -0
  155. package/hooks/useAutoFocus/useAutoFocus.d.ts +2 -0
  156. package/hooks/useTheme/index.d.ts +3 -0
  157. package/hooks/useTheme/useTheme.d.ts +4 -0
  158. package/hooks/useTheme/useTheme.types.d.ts +14 -0
  159. package/index.d.ts +3 -0
  160. package/index.js +124 -0
  161. package/index.mjs +8627 -0
  162. package/package.json +14 -0
  163. package/style.css +1 -0
  164. package/tokens/animations.d.ts +41 -0
  165. package/tokens/borders.d.ts +8 -0
  166. package/tokens/breadcrumbs.d.ts +23 -0
  167. package/tokens/button.d.ts +109 -0
  168. package/tokens/colors.d.ts +150 -0
  169. package/tokens/column.d.ts +5 -0
  170. package/tokens/cursors.d.ts +16 -0
  171. package/tokens/defaultTheme.d.ts +1425 -0
  172. package/tokens/display.d.ts +15 -0
  173. package/tokens/flexContainer.d.ts +7 -0
  174. package/tokens/font.d.ts +47 -0
  175. package/tokens/form.d.ts +3 -0
  176. package/tokens/icon.d.ts +28 -0
  177. package/tokens/index.d.ts +1339 -0
  178. package/tokens/input.d.ts +66 -0
  179. package/tokens/label.d.ts +18 -0
  180. package/tokens/link.d.ts +64 -0
  181. package/tokens/list.d.ts +76 -0
  182. package/tokens/loader.d.ts +42 -0
  183. package/tokens/modal.d.ts +59 -0
  184. package/tokens/radius.d.ts +10 -0
  185. package/tokens/reset.d.ts +1 -0
  186. package/tokens/row.d.ts +5 -0
  187. package/tokens/shadow.d.ts +10 -0
  188. package/tokens/skeleton.d.ts +24 -0
  189. package/tokens/snackbar.d.ts +198 -0
  190. package/tokens/spacing.d.ts +9 -0
  191. package/tokens/stepper.d.ts +110 -0
  192. package/tokens/switch.d.ts +8 -0
  193. package/tokens/tabs.d.ts +76 -0
  194. package/tokens/textarea.d.ts +55 -0
  195. package/tokens/tooltip.d.ts +54 -0
  196. package/tokens/types/index.types.d.ts +8 -0
  197. package/tokens/typography.d.ts +116 -0
  198. package/tokens/utils.d.ts +17 -0
  199. package/tokens/values.d.ts +28 -0
  200. package/tokens/wrapper.d.ts +29 -0
  201. package/types/accesability.d.ts +5 -0
  202. package/types/index.d.ts +2 -0
  203. package/types/misc.d.ts +6 -0
  204. package/utils/getCharCount.d.ts +3 -0
  205. package/utils/index.d.ts +2 -0
  206. package/utils/uniqueKeys.d.ts +1 -0
package/README.md ADDED
@@ -0,0 +1,201 @@
1
+ # GD Design System
2
+
3
+ Welcome to the GD Design System project!
4
+ This design system is built using React and Vite, and it aims to provide a comprehensive set of reusable components and styles for Grid Dynamics.
5
+
6
+ ## Project Structure
7
+
8
+ The project structure is as follows:
9
+ gd-design-system/
10
+
11
+ ```
12
+ ├── dist
13
+ ├── [src](src)
14
+ │ ├── App.css
15
+ │ ├── App.tsx
16
+ │ ├── assets
17
+ │ │ └── index.ts
18
+ │ ├── [components](src/components)
19
+ │ │ ├── [core](src/components/core)
20
+ │ │ │ ├── [types](src/components/core/types)
21
+ │ │ │ │ ├── common.ts
22
+ │ │ │ │ ├── cursors.ts
23
+ │ │ │ │ └── index.ts
24
+ │ │ │ ├── [Button](src/components/core/Button)
25
+ │ │ │ │ ├── index.ts
26
+ │ │ │ │ ├── constants.ts
27
+ │ │ │ │ ├── Button.stories.tsx
28
+ │ │ │ │ ├── Button.test.tsx
29
+ │ │ │ │ ├── Button.types.ts
30
+ │ │ │ │ ├── Button.tsx
31
+ │ │ │ │ └── StyledButton.ts
32
+ │ │ │ ├── [Input](src/components/core/Input)
33
+ │ │ │ │ ├── index.ts
34
+ │ │ │ │ ├── constants.ts
35
+ │ │ │ │ ├── Input.stories.tsx
36
+ │ │ │ │ ├── Input.test.tsx
37
+ │ │ │ │ ├── Input.types.ts
38
+ │ │ │ │ ├── input.tsx
39
+ │ │ │ │ └── StyledInput.ts
40
+ │ │ │ ├── [Label](src/components/core/Label)
41
+ │ │ │ │ ├── index.ts
42
+ │ │ │ │ ├── constants.ts
43
+ │ │ │ │ ├── Label.stories.tsx
44
+ │ │ │ │ ├── Label.test.tsx
45
+ │ │ │ │ ├── Label.types.ts
46
+ │ │ │ │ ├── Label.tsx
47
+ │ │ │ │ └── StyledLabel.ts
48
+ │ │ │ ├── [Form](src/components/core/Form)
49
+ │ │ │ │ ├── index.ts
50
+ │ │ │ │ ├── constants.ts
51
+ │ │ │ │ ├── utils.ts
52
+ │ │ │ │ ├── Form.stories.tsx
53
+ │ │ │ │ ├── Form.test.tsx
54
+ │ │ │ │ ├── Form.types.ts
55
+ │ │ │ │ ├── Form.tsx
56
+ │ │ │ │ └── StyledForm.ts
57
+ │ │ │ ├── [Typography](src/components/core/Typography)
58
+ │ │ │ │ ├── index.ts
59
+ │ │ │ │ ├── constants.ts
60
+ │ │ │ │ ├── Typography.stories.tsx
61
+ │ │ │ │ ├── Typography.test.tsx
62
+ │ │ │ │ ├── Typography.types.ts
63
+ │ │ │ │ ├── Typography.tsx
64
+ │ │ │ │ └── StyledTypography.ts
65
+ │ │ │ └── index.ts
66
+ │ │ ├── [domainSpecific](src/components/domainSpecific)
67
+ │ │ │ └── index.ts
68
+ │ │ └── index.ts
69
+ │ ├── [hooks](src/hooks)
70
+ │ │ └── [useTheme](src/hooks/useTheme)
71
+ │ │ ├── index.ts
72
+ │ │ ├── types.ts
73
+ │ │ └── useTheme.ts
74
+ │ ├── index.css
75
+ │ ├── main.tsx
76
+ │ ├── [tokens](src/tokens)
77
+ │ │ ├── borders.ts
78
+ │ │ ├── button.ts
79
+ │ │ ├── colors.ts
80
+ │ │ ├── defaultTheme.ts
81
+ │ │ ├── index.ts
82
+ │ │ ├── utils.ts
83
+ │ │ ├── spacing.ts
84
+ │ │ ├── typography.ts
85
+ │ │ └── values.ts
86
+ │ ├── [utils](src/utils)
87
+ │ │ └── index.ts
88
+ │ └── vite-env.d.ts
89
+ ├── tsconfig.app.json
90
+ ├── tsconfig.json
91
+ ├── tsconfig.node.json
92
+ |── vite.config.ts
93
+ ├── eslint.config.js
94
+ ├── index.html
95
+ ├── package-lock.json
96
+ ├── package.json
97
+ └── README.md
98
+ ```
99
+
100
+ ## Getting Started
101
+
102
+ ### Prerequisites
103
+
104
+ Make sure you have the following installed:
105
+
106
+ - Node.js (version 18 or higher)
107
+ - npm (version 6 or higher) or yarn
108
+
109
+ ### Installation
110
+
111
+ Clone the repository and install the dependencies:
112
+
113
+ ```sh
114
+ git clone https://github.com/griddynamics/cto-rnd-system-design.git
115
+ cd gd-design-system
116
+ npm install
117
+ ```
118
+
119
+ ### Development
120
+
121
+ To start the development server, run:
122
+
123
+ ```sh
124
+ npm run dev
125
+ ```
126
+
127
+ This will start the Vite development server and open the project in your default web browser.
128
+
129
+ ### Building
130
+
131
+ To build the project for production, run:
132
+
133
+ ```sh
134
+ npm run build
135
+ ```
136
+
137
+ The output will be generated in the dist directory.
138
+
139
+ ### Linting & Prettier
140
+
141
+ To lint the project, run:
142
+
143
+ ```sh
144
+ npm run lint
145
+ ```
146
+
147
+ ### Code Formatting with Prettier
148
+
149
+ To lint the project, run:
150
+
151
+ ```sh
152
+ yarn format
153
+ ```
154
+
155
+ Check for formatting issues:
156
+
157
+ ```sh
158
+ yarn format:check
159
+ ```
160
+
161
+ ## Expanding the ESLint configuration
162
+
163
+ If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
164
+
165
+ - Configure the top-level `parserOptions` property like this:
166
+
167
+ ```js
168
+ export default tseslint.config({
169
+ languageOptions: {
170
+ // other options...
171
+ parserOptions: {
172
+ project: ['./tsconfig.node.json', './tsconfig.app.json'],
173
+ tsconfigRootDir: import.meta.dirname,
174
+ },
175
+ },
176
+ });
177
+ ```
178
+
179
+ - Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`
180
+ - Optionally add `...tseslint.configs.stylisticTypeChecked`
181
+ - Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:
182
+
183
+ ```js
184
+ // eslint.config.js
185
+ import react from 'eslint-plugin-react';
186
+
187
+ export default tseslint.config({
188
+ // Set the react version
189
+ settings: { react: { version: '18.3' } },
190
+ plugins: {
191
+ // Add the react plugin
192
+ react,
193
+ },
194
+ rules: {
195
+ // other rules...
196
+ // Enable its recommended rules
197
+ ...react.configs.recommended.rules,
198
+ ...react.configs['jsx-runtime'].rules,
199
+ },
200
+ });
201
+ ```
@@ -0,0 +1,6 @@
1
+ export declare const ArrowForwardIcon: ({ width, height, fillSvg, fill, }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const CheckIcon: ({ width, height, fillSvg, fill, }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const ChevronRightIcon: ({ width, height, fillSvg, fill, }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const CrossIcon: ({ width, height, fillSvg, fill, }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const DotIcon: ({ width, height, fillSvg, fill }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const HomeIcon: ({ width, height, fillSvg, fill }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export declare const SlashIcon: ({ width, height, fillSvg, fill, }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fillSvg?: string | undefined;
5
+ fill?: string | undefined;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const StarIcon: ({ width, height, fill }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ fill?: string | undefined;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const ToastErrorIcon: ({ width, height, color }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ color?: string | undefined;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const ToastInfoIcon: ({ width, height, color }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ color?: string | undefined;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const ToastSuccessIcon: ({ width, height, color }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ color?: string | undefined;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export declare const ToastWarningIcon: ({ width, height, color }: {
2
+ width?: number | undefined;
3
+ height?: number | undefined;
4
+ color?: string | undefined;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,83 @@
1
+ import { StarIcon } from './icons/star';
2
+ import { CrossIcon } from './icons/cross';
3
+ import { ToastSuccessIcon } from './icons/toast_success';
4
+ import { ToastWarningIcon } from './icons/toast_warning';
5
+ import { ToastErrorIcon } from './icons/toast_error';
6
+ import { ToastInfoIcon } from './icons/toast_info';
7
+ import { DotIcon } from './icons/dot';
8
+ import { CheckIcon } from './icons/check';
9
+ import { HomeIcon } from './icons/home';
10
+ import { ChevronRightIcon } from './icons/chevron-right';
11
+ import { SlashIcon } from './icons/slash';
12
+ import { ArrowForwardIcon } from './icons/arrow-forward';
13
+ export { StarIcon, CrossIcon, ToastSuccessIcon, ToastWarningIcon, ToastErrorIcon, ToastInfoIcon, DotIcon, CheckIcon, HomeIcon, ChevronRightIcon, SlashIcon, ArrowForwardIcon, };
14
+ declare const _default: {
15
+ cross: ({ width, height, fillSvg, fill, }: {
16
+ width?: number | undefined;
17
+ height?: number | undefined;
18
+ fillSvg?: string | undefined;
19
+ fill?: string | undefined;
20
+ }) => import("react/jsx-runtime").JSX.Element;
21
+ success: ({ width, height, color }: {
22
+ width?: number | undefined;
23
+ height?: number | undefined;
24
+ color?: string | undefined;
25
+ }) => import("react/jsx-runtime").JSX.Element;
26
+ star: ({ width, height, fill }: {
27
+ width?: number | undefined;
28
+ height?: number | undefined;
29
+ fill?: string | undefined;
30
+ }) => import("react/jsx-runtime").JSX.Element;
31
+ error: ({ width, height, color }: {
32
+ width?: number | undefined;
33
+ height?: number | undefined;
34
+ color?: string | undefined;
35
+ }) => import("react/jsx-runtime").JSX.Element;
36
+ warning: ({ width, height, color }: {
37
+ width?: number | undefined;
38
+ height?: number | undefined;
39
+ color?: string | undefined;
40
+ }) => import("react/jsx-runtime").JSX.Element;
41
+ info: ({ width, height, color }: {
42
+ width?: number | undefined;
43
+ height?: number | undefined;
44
+ color?: string | undefined;
45
+ }) => import("react/jsx-runtime").JSX.Element;
46
+ dot: ({ width, height, fillSvg, fill }: {
47
+ width?: number | undefined;
48
+ height?: number | undefined;
49
+ fillSvg?: string | undefined;
50
+ fill?: string | undefined;
51
+ }) => import("react/jsx-runtime").JSX.Element;
52
+ check: ({ width, height, fillSvg, fill, }: {
53
+ width?: number | undefined;
54
+ height?: number | undefined;
55
+ fillSvg?: string | undefined;
56
+ fill?: string | undefined;
57
+ }) => import("react/jsx-runtime").JSX.Element;
58
+ home: ({ width, height, fillSvg, fill }: {
59
+ width?: number | undefined;
60
+ height?: number | undefined;
61
+ fillSvg?: string | undefined;
62
+ fill?: string | undefined;
63
+ }) => import("react/jsx-runtime").JSX.Element;
64
+ chevronRight: ({ width, height, fillSvg, fill, }: {
65
+ width?: number | undefined;
66
+ height?: number | undefined;
67
+ fillSvg?: string | undefined;
68
+ fill?: string | undefined;
69
+ }) => import("react/jsx-runtime").JSX.Element;
70
+ slash: ({ width, height, fillSvg, fill, }: {
71
+ width?: number | undefined;
72
+ height?: number | undefined;
73
+ fillSvg?: string | undefined;
74
+ fill?: string | undefined;
75
+ }) => import("react/jsx-runtime").JSX.Element;
76
+ arrowForward: ({ width, height, fillSvg, fill, }: {
77
+ width?: number | undefined;
78
+ height?: number | undefined;
79
+ fillSvg?: string | undefined;
80
+ fill?: string | undefined;
81
+ }) => import("react/jsx-runtime").JSX.Element;
82
+ };
83
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import { BreadcrumbsProps } from './Breadcrumbs.types';
2
+ export declare const Breadcrumbs: import('react').ForwardRefExoticComponent<BreadcrumbsProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ import { CommonCoreComponentProps, CommonStyledComponentProps } from '../..';
3
+ export interface BreadcrumbsProps extends Exclude<CommonCoreComponentProps, 'variant' | 'color'> {
4
+ separator?: ReactNode;
5
+ itemStart?: ReactNode;
6
+ itemEnd?: ReactNode;
7
+ separatorAfterLastItem?: boolean;
8
+ bordered?: boolean;
9
+ items?: (never | ReactNode)[];
10
+ ariaLabel?: string;
11
+ }
12
+ export interface StyledBreadcrumbsProps extends CommonStyledComponentProps {
13
+ $bordered?: boolean;
14
+ }
@@ -0,0 +1,6 @@
1
+ import { StyledBreadcrumbsProps } from './Breadcrumbs.types';
2
+ export declare const StyledBreadcrumbs: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledBreadcrumbsProps>> & string;
3
+ export declare const StyledBreadcrumbItem: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledBreadcrumbsProps>> & string;
4
+ export declare const StyledSeparator: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledBreadcrumbsProps>> & string;
5
+ export declare const StyledItemStart: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledBreadcrumbsProps>> & string;
6
+ export declare const StyledItemEnd: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledBreadcrumbsProps>> & string;
@@ -0,0 +1 @@
1
+ export declare const COMPONENT_NAME = "Breadcrumbs";
@@ -0,0 +1,2 @@
1
+ export * from './Breadcrumbs';
2
+ export * from './Breadcrumbs.types';
@@ -0,0 +1,5 @@
1
+ import { ButtonProps } from './Button.types';
2
+ declare const Button: import('react').ForwardRefExoticComponent<ButtonProps & {
3
+ children?: import('react').ReactNode | undefined;
4
+ } & import('react').RefAttributes<HTMLButtonElement>>;
5
+ export default Button;
@@ -0,0 +1,52 @@
1
+ import { MouseEvent, ReactNode } from 'react';
2
+ import { CommonCoreComponentProps, CommonCoreStyledComponentProps } from '../..';
3
+ import { TabIndex } from '../../../types';
4
+ export declare enum ButtonVariant {
5
+ Contained = "contained",
6
+ Outlined = "outlined",
7
+ Text = "text",
8
+ Inherit = "inherit"
9
+ }
10
+ export declare enum ButtonColorVariant {
11
+ Primary = "primary",
12
+ Secondary = "secondary"
13
+ }
14
+ export declare enum IconPosition {
15
+ Left = "left",
16
+ Right = "right"
17
+ }
18
+ export declare enum ButtonTypes {
19
+ Button = "button",
20
+ Submit = "submit",
21
+ Reset = "reset"
22
+ }
23
+ export declare enum ButtonAriaLabel {
24
+ Button = "Button",
25
+ Submit = "Submit",
26
+ Cancel = "Cancel",
27
+ Close = "Close"
28
+ }
29
+ export declare enum ButtonRole {
30
+ Button = "button",
31
+ Link = "link",
32
+ Checkbox = "checkbox",
33
+ Switch = "switch",
34
+ Tab = "tab"
35
+ }
36
+ export interface ButtonProps extends CommonCoreComponentProps<ButtonVariant, ButtonColorVariant> {
37
+ iconStart?: ReactNode;
38
+ iconEnd?: ReactNode;
39
+ iconPosition?: IconPosition;
40
+ onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
41
+ type?: ButtonTypes | `${ButtonTypes}`;
42
+ disabled?: boolean;
43
+ isIcon?: boolean;
44
+ ariaLabel?: ButtonAriaLabel | `${ButtonAriaLabel}`;
45
+ ariaPressed?: boolean;
46
+ role?: ButtonRole | `${ButtonRole}`;
47
+ tabIndex?: TabIndex;
48
+ children: ReactNode;
49
+ }
50
+ export interface StyledButtonProps extends CommonCoreStyledComponentProps<ButtonVariant, ButtonColorVariant> {
51
+ $isIcon?: boolean;
52
+ }
@@ -0,0 +1,5 @@
1
+ import { StyledButtonProps } from './Button.types';
2
+ export declare const StyledButton: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, StyledButtonProps>> & string;
3
+ export declare const StyledContent: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, StyledButtonProps>> & string;
4
+ export declare const StyledStartIcon: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, StyledButtonProps>> & string;
5
+ export declare const StyledEndIcon: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, StyledButtonProps>> & string;
@@ -0,0 +1 @@
1
+ export declare const COMPONENT_NAME = "Button";
@@ -0,0 +1,2 @@
1
+ export { default as Button } from './Button';
2
+ export * from './Button.types';
@@ -0,0 +1,5 @@
1
+ import { FormProps } from '.';
2
+ declare const Form: import('react').ForwardRefExoticComponent<FormProps & {
3
+ children?: import('react').ReactNode | undefined;
4
+ } & import('react').RefAttributes<HTMLFormElement>>;
5
+ export default Form;
@@ -0,0 +1,24 @@
1
+ import { FormEvent } from 'react';
2
+ import { CommonCoreComponentProps } from '../..';
3
+ export type FormFieldValue = string | number | boolean;
4
+ export type FormFieldsData = Record<string, {
5
+ value: FormFieldValue;
6
+ isChecked?: boolean;
7
+ }>;
8
+ export type FormOnChangeEventData = {
9
+ event: FormEvent<Element>;
10
+ changedControlNames: string[];
11
+ controlValues: FormFieldsData;
12
+ formData: FormFieldsData;
13
+ };
14
+ export type FormOnSubmitEventData = {
15
+ event: FormEvent<Element>;
16
+ formData: FormFieldsData;
17
+ };
18
+ export interface FormProps extends CommonCoreComponentProps {
19
+ onSubmit?: (formOnSubmitEventData: FormOnSubmitEventData) => void;
20
+ onChange?: (formOnChangeEventData: FormOnChangeEventData) => void;
21
+ ariaLabelBy?: string;
22
+ describedBy?: string;
23
+ role?: string;
24
+ }
@@ -0,0 +1,2 @@
1
+ import { CommonCoreStyledComponentProps } from '../..';
2
+ export declare const StyledForm: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>, CommonCoreStyledComponentProps<never, never>>> & string;
@@ -0,0 +1 @@
1
+ export declare const COMPONENT_NAME = "Form";
@@ -0,0 +1,2 @@
1
+ export { default as Form } from './Form';
2
+ export * from './Form.types';
@@ -0,0 +1,3 @@
1
+ import { FormFieldsData } from './';
2
+ export declare const transformFormDataToObjectWithValues: (targetForm?: HTMLFormElement) => FormFieldsData;
3
+ export declare const transformFormElementDataToObjectWithValues: (targetElement: EventTarget, output?: FormFieldsData) => FormFieldsData;
@@ -0,0 +1,5 @@
1
+ import { IconProps } from './Icon.types';
2
+ export declare const Icon: {
3
+ (props: IconProps): import("react/jsx-runtime").JSX.Element | null;
4
+ displayName: string;
5
+ };
@@ -0,0 +1,8 @@
1
+ import { default as IconsList } from '../../../assets';
2
+ export interface IconProps {
3
+ name: keyof typeof IconsList;
4
+ width?: number;
5
+ height?: number;
6
+ fill?: string;
7
+ fillSvg?: string;
8
+ }
@@ -0,0 +1 @@
1
+ export declare const COMPONENT_NAME = "CustomIcon";
@@ -0,0 +1,2 @@
1
+ export * from './Icon';
2
+ export * from './Icon.types';
@@ -0,0 +1,3 @@
1
+ import { InputFieldProps } from './';
2
+ declare const Input: import('react').ForwardRefExoticComponent<InputFieldProps & import('react').RefAttributes<HTMLInputElement>>;
3
+ export default Input;
@@ -0,0 +1,68 @@
1
+ import { ChangeEvent, FocusEvent, MouseEvent } from 'react';
2
+ import { CommonCoreComponentProps, CommonCoreStyledComponentProps } from '../..';
3
+ import { EnumOrPrimitive } from '../../../types';
4
+ export declare enum InputVariantType {
5
+ Text = "text",
6
+ Password = "password",
7
+ Email = "email",
8
+ Search = "search",
9
+ Url = "url",
10
+ Tel = "tel",
11
+ Date = "date",
12
+ Time = "time",
13
+ Month = "month",
14
+ Week = "week",
15
+ Color = "color",
16
+ Range = "range",
17
+ Number = "number",
18
+ Radio = "radio",
19
+ Checkbox = "checkbox"
20
+ }
21
+ export declare enum InputColorVariant {
22
+ Default = "default",
23
+ Primary = "primary",
24
+ Secondary = "secondary",
25
+ Error = "error",
26
+ Info = "info",
27
+ Success = "success",
28
+ Warning = "warning"
29
+ }
30
+ export declare enum InputRole {
31
+ Textbox = "textbox",
32
+ Checkbox = "checkbox",
33
+ Radio = "radio"
34
+ }
35
+ export interface BaseInputFieldProps extends CommonCoreComponentProps<InputVariantType, InputColorVariant> {
36
+ readOnly?: boolean;
37
+ id?: string;
38
+ name?: string;
39
+ type?: EnumOrPrimitive<InputVariantType>;
40
+ label?: string;
41
+ placeholder?: string;
42
+ value?: string | number;
43
+ defaultValue?: string | number;
44
+ onClick?: (event: MouseEvent<HTMLInputElement>) => void;
45
+ onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
46
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
47
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
48
+ disabled?: boolean;
49
+ required?: boolean;
50
+ ariaRequired?: boolean;
51
+ ariaDescribedBy?: string;
52
+ role?: EnumOrPrimitive<InputRole>;
53
+ tabIndex?: number;
54
+ debounceCallbackTime?: number;
55
+ }
56
+ export interface RadioButtonProps extends Omit<BaseInputFieldProps, 'type'> {
57
+ type: InputVariantType.Radio;
58
+ checked?: boolean;
59
+ defaultChecked?: boolean;
60
+ value: string | number;
61
+ }
62
+ export interface CheckboxFieldProps extends Omit<BaseInputFieldProps, 'type' | 'value'> {
63
+ type: InputVariantType;
64
+ checked?: boolean;
65
+ defaultChecked?: boolean;
66
+ }
67
+ export type InputFieldProps = BaseInputFieldProps | RadioButtonProps | CheckboxFieldProps;
68
+ export type StyledInputProps = CommonCoreStyledComponentProps<InputVariantType, InputColorVariant>;
@@ -0,0 +1,3 @@
1
+ import { StyledInputProps } from '.';
2
+ declare const StyledInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, StyledInputProps>> & string;
3
+ export default StyledInput;
@@ -0,0 +1 @@
1
+ export declare const COMPONENT_NAME = "Input";
@@ -0,0 +1,2 @@
1
+ export { default as Input } from './Input';
2
+ export * from './Input.types';
@@ -0,0 +1,5 @@
1
+ import { LabelProps } from './';
2
+ declare const Label: import('react').ForwardRefExoticComponent<LabelProps & {
3
+ children?: import('react').ReactNode | undefined;
4
+ } & import('react').RefAttributes<HTMLLabelElement>>;
5
+ export default Label;