sevatech-library 1.0.3 → 1.0.5

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 (176) hide show
  1. package/README.md +25 -25
  2. package/dist/types/components/avatar/avatar-group.component.d.ts +20 -0
  3. package/dist/types/components/avatar/avatar-group.component.d.ts.map +1 -0
  4. package/dist/types/components/avatar/avatar-label-group.component.d.ts +11 -0
  5. package/dist/types/components/avatar/avatar-label-group.component.d.ts.map +1 -0
  6. package/dist/types/components/avatar/avatar-profile.component.d.ts +5 -0
  7. package/dist/types/components/avatar/avatar-profile.component.d.ts.map +1 -0
  8. package/dist/types/components/avatar/avatar-user.component.d.ts +14 -0
  9. package/dist/types/components/avatar/avatar-user.component.d.ts.map +1 -0
  10. package/dist/types/components/avatar/avatar.component.d.ts +20 -0
  11. package/dist/types/components/avatar/avatar.component.d.ts.map +1 -0
  12. package/dist/types/components/avatar/avatar.constant.d.ts +35 -0
  13. package/dist/types/components/avatar/avatar.constant.d.ts.map +1 -0
  14. package/dist/types/components/avatar/avatar.interface.d.ts +28 -0
  15. package/dist/types/components/avatar/avatar.interface.d.ts.map +1 -0
  16. package/dist/types/components/avatar/index.d.ts +8 -0
  17. package/dist/types/components/avatar/index.d.ts.map +1 -0
  18. package/dist/types/components/bread-crumbs/bread-crumbs.component.d.ts +21 -0
  19. package/dist/types/components/bread-crumbs/bread-crumbs.component.d.ts.map +1 -0
  20. package/dist/types/components/bread-crumbs/index.d.ts +3 -0
  21. package/dist/types/components/bread-crumbs/index.d.ts.map +1 -0
  22. package/dist/types/components/button/button.component.d.ts +37 -0
  23. package/dist/types/components/button/button.component.d.ts.map +1 -0
  24. package/dist/types/components/button/button.constants.d.ts +33 -0
  25. package/dist/types/components/button/button.constants.d.ts.map +1 -0
  26. package/dist/types/components/button/index.d.ts +3 -0
  27. package/dist/types/components/button/index.d.ts.map +1 -0
  28. package/dist/types/components/button-bar/button-bar.component.d.ts +15 -0
  29. package/dist/types/components/button-bar/button-bar.component.d.ts.map +1 -0
  30. package/dist/types/components/button-bar/index.d.ts +2 -0
  31. package/dist/types/components/button-bar/index.d.ts.map +1 -0
  32. package/dist/types/components/checkbox/checkbox-content.component.d.ts +19 -0
  33. package/dist/types/components/checkbox/checkbox-content.component.d.ts.map +1 -0
  34. package/dist/types/components/checkbox/checkbox.component.d.ts +23 -0
  35. package/dist/types/components/checkbox/checkbox.component.d.ts.map +1 -0
  36. package/dist/types/components/checkbox/checkbox.constant.d.ts +26 -0
  37. package/dist/types/components/checkbox/checkbox.constant.d.ts.map +1 -0
  38. package/dist/types/components/checkbox/index.d.ts +4 -0
  39. package/dist/types/components/checkbox/index.d.ts.map +1 -0
  40. package/dist/types/components/chip/chip.component.d.ts +16 -0
  41. package/dist/types/components/chip/chip.component.d.ts.map +1 -0
  42. package/dist/types/components/chip/chip.constant.d.ts +16 -0
  43. package/dist/types/components/chip/chip.constant.d.ts.map +1 -0
  44. package/dist/types/components/chip/index.d.ts +3 -0
  45. package/dist/types/components/chip/index.d.ts.map +1 -0
  46. package/dist/types/components/date-field/date-field.component.d.ts +23 -0
  47. package/dist/types/components/date-field/date-field.component.d.ts.map +1 -0
  48. package/dist/types/components/date-field/index.d.ts +2 -0
  49. package/dist/types/components/date-field/index.d.ts.map +1 -0
  50. package/dist/types/components/date-range-picker/date-range-picker.component.d.ts +25 -0
  51. package/dist/types/components/date-range-picker/date-range-picker.component.d.ts.map +1 -0
  52. package/dist/types/components/date-range-picker/index.d.ts +2 -0
  53. package/dist/types/components/date-range-picker/index.d.ts.map +1 -0
  54. package/dist/types/components/dropdown-field/dropdown-field.component.d.ts +28 -0
  55. package/dist/types/components/dropdown-field/dropdown-field.component.d.ts.map +1 -0
  56. package/dist/types/components/dropdown-field/index.d.ts +2 -0
  57. package/dist/types/components/dropdown-field/index.d.ts.map +1 -0
  58. package/dist/types/components/grid/grid.component.d.ts +11 -0
  59. package/dist/types/components/grid/grid.component.d.ts.map +1 -0
  60. package/dist/types/components/grid/index.d.ts +2 -0
  61. package/dist/types/components/grid/index.d.ts.map +1 -0
  62. package/dist/types/components/icon/icon.element.d.ts +12 -0
  63. package/dist/types/components/icon/icon.element.d.ts.map +1 -0
  64. package/dist/types/components/icon/index.d.ts +2 -0
  65. package/dist/types/components/icon/index.d.ts.map +1 -0
  66. package/dist/types/components/image/image.element.d.ts +13 -0
  67. package/dist/types/components/image/image.element.d.ts.map +1 -0
  68. package/dist/types/components/image/image.enum.d.ts +6 -0
  69. package/dist/types/components/image/image.enum.d.ts.map +1 -0
  70. package/dist/types/components/image/index.d.ts +3 -0
  71. package/dist/types/components/image/index.d.ts.map +1 -0
  72. package/dist/types/components/index.d.ts +28 -0
  73. package/dist/types/components/index.d.ts.map +1 -0
  74. package/dist/types/components/input-stepper/index.d.ts +4 -0
  75. package/dist/types/components/input-stepper/index.d.ts.map +1 -0
  76. package/dist/types/components/input-stepper/input-stepper-skeleton.d.ts +9 -0
  77. package/dist/types/components/input-stepper/input-stepper-skeleton.d.ts.map +1 -0
  78. package/dist/types/components/input-stepper/input-stepper.component.d.ts +38 -0
  79. package/dist/types/components/input-stepper/input-stepper.component.d.ts.map +1 -0
  80. package/dist/types/components/input-stepper/input-stepper.constant.d.ts +32 -0
  81. package/dist/types/components/input-stepper/input-stepper.constant.d.ts.map +1 -0
  82. package/dist/types/components/link/index.d.ts +3 -0
  83. package/dist/types/components/link/index.d.ts.map +1 -0
  84. package/dist/types/components/link/link-internal.element.d.ts +9 -0
  85. package/dist/types/components/link/link-internal.element.d.ts.map +1 -0
  86. package/dist/types/components/link/link.element.d.ts +8 -0
  87. package/dist/types/components/link/link.element.d.ts.map +1 -0
  88. package/dist/types/components/link-field/index.d.ts +2 -0
  89. package/dist/types/components/link-field/index.d.ts.map +1 -0
  90. package/dist/types/components/link-field/link-field.component.d.ts +23 -0
  91. package/dist/types/components/link-field/link-field.component.d.ts.map +1 -0
  92. package/dist/types/components/modal/index.d.ts +5 -0
  93. package/dist/types/components/modal/index.d.ts.map +1 -0
  94. package/dist/types/components/modal/modal-card.component.d.ts +15 -0
  95. package/dist/types/components/modal/modal-card.component.d.ts.map +1 -0
  96. package/dist/types/components/modal/modal-content.component.d.ts +16 -0
  97. package/dist/types/components/modal/modal-content.component.d.ts.map +1 -0
  98. package/dist/types/components/modal/modal.component.d.ts +11 -0
  99. package/dist/types/components/modal/modal.component.d.ts.map +1 -0
  100. package/dist/types/components/modal/modal.interface.d.ts +20 -0
  101. package/dist/types/components/modal/modal.interface.d.ts.map +1 -0
  102. package/dist/types/components/money-field/index.d.ts +2 -0
  103. package/dist/types/components/money-field/index.d.ts.map +1 -0
  104. package/dist/types/components/money-field/money-field.component.d.ts +24 -0
  105. package/dist/types/components/money-field/money-field.component.d.ts.map +1 -0
  106. package/dist/types/components/phone-number-field/index.d.ts +2 -0
  107. package/dist/types/components/phone-number-field/index.d.ts.map +1 -0
  108. package/dist/types/components/phone-number-field/phone-number-field.component.d.ts +28 -0
  109. package/dist/types/components/phone-number-field/phone-number-field.component.d.ts.map +1 -0
  110. package/dist/types/components/pin/index.d.ts +3 -0
  111. package/dist/types/components/pin/index.d.ts.map +1 -0
  112. package/dist/types/components/pin/pin.component.d.ts +23 -0
  113. package/dist/types/components/pin/pin.component.d.ts.map +1 -0
  114. package/dist/types/components/pin/pin.constant.d.ts +25 -0
  115. package/dist/types/components/pin/pin.constant.d.ts.map +1 -0
  116. package/dist/types/components/search-dropdown/index.d.ts +2 -0
  117. package/dist/types/components/search-dropdown/index.d.ts.map +1 -0
  118. package/dist/types/components/search-dropdown/search-dropdown.component.d.ts +30 -0
  119. package/dist/types/components/search-dropdown/search-dropdown.component.d.ts.map +1 -0
  120. package/dist/types/components/search-field/index.d.ts +2 -0
  121. package/dist/types/components/search-field/index.d.ts.map +1 -0
  122. package/dist/types/components/search-field/search-field.component.d.ts +14 -0
  123. package/dist/types/components/search-field/search-field.component.d.ts.map +1 -0
  124. package/dist/types/components/switch/index.d.ts +3 -0
  125. package/dist/types/components/switch/index.d.ts.map +1 -0
  126. package/dist/types/components/switch/switch-content.component.d.ts +14 -0
  127. package/dist/types/components/switch/switch-content.component.d.ts.map +1 -0
  128. package/dist/types/components/switch/switch.component.d.ts +12 -0
  129. package/dist/types/components/switch/switch.component.d.ts.map +1 -0
  130. package/dist/types/components/tab/index.d.ts +3 -0
  131. package/dist/types/components/tab/index.d.ts.map +1 -0
  132. package/dist/types/components/tab/tab.component.d.ts +23 -0
  133. package/dist/types/components/tab/tab.component.d.ts.map +1 -0
  134. package/dist/types/components/tab/tab.constant.d.ts +15 -0
  135. package/dist/types/components/tab/tab.constant.d.ts.map +1 -0
  136. package/dist/types/components/text-area/index.d.ts +2 -0
  137. package/dist/types/components/text-area/index.d.ts.map +1 -0
  138. package/dist/types/components/text-area/text-area.component.d.ts +22 -0
  139. package/dist/types/components/text-area/text-area.component.d.ts.map +1 -0
  140. package/dist/types/components/text-field/index.d.ts +2 -0
  141. package/dist/types/components/text-field/index.d.ts.map +1 -0
  142. package/dist/types/components/text-field/text-field.component.d.ts +21 -0
  143. package/dist/types/components/text-field/text-field.component.d.ts.map +1 -0
  144. package/dist/types/components/typography/index.d.ts +2 -0
  145. package/dist/types/components/typography/index.d.ts.map +1 -0
  146. package/dist/types/components/typography/typography-limit-one-line.component.d.ts +9 -0
  147. package/dist/types/components/typography/typography-limit-one-line.component.d.ts.map +1 -0
  148. package/dist/types/components/uploader/index.d.ts +3 -0
  149. package/dist/types/components/uploader/index.d.ts.map +1 -0
  150. package/dist/types/components/uploader/uploader-item.component.d.ts +18 -0
  151. package/dist/types/components/uploader/uploader-item.component.d.ts.map +1 -0
  152. package/dist/types/components/uploader/uploader-item.styles.d.ts +53 -0
  153. package/dist/types/components/uploader/uploader-item.styles.d.ts.map +1 -0
  154. package/dist/types/components/uploader/uploader.component.d.ts +48 -0
  155. package/dist/types/components/uploader/uploader.component.d.ts.map +1 -0
  156. package/dist/types/constants/apps.data.d.ts +7 -0
  157. package/dist/types/constants/apps.data.d.ts.map +1 -0
  158. package/dist/types/constants/color.constant.d.ts +105 -0
  159. package/dist/types/constants/color.constant.d.ts.map +1 -0
  160. package/dist/types/constants/index.d.ts +5 -0
  161. package/dist/types/constants/index.d.ts.map +1 -0
  162. package/dist/types/constants/style.constant.d.ts +58 -0
  163. package/dist/types/constants/style.constant.d.ts.map +1 -0
  164. package/dist/types/constants/typography.constant.d.ts +710 -0
  165. package/dist/types/constants/typography.constant.d.ts.map +1 -0
  166. package/dist/types/index.d.ts +5 -0
  167. package/dist/types/index.d.ts.map +1 -0
  168. package/dist/types/styles/index.d.ts +2 -0
  169. package/dist/types/styles/index.d.ts.map +1 -0
  170. package/dist/types/styles/stack.style.d.ts +54 -0
  171. package/dist/types/styles/stack.style.d.ts.map +1 -0
  172. package/dist/types/types/index.d.ts +1 -0
  173. package/dist/types/types/index.d.ts.map +1 -0
  174. package/dist/types/utils/index.d.ts +2 -0
  175. package/dist/types/utils/index.d.ts.map +1 -0
  176. package/package.json +6 -3
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SevaTech Library
2
2
 
3
- [![npm version](https://badge.fury.io/js/SevaTech-library.svg)](https://badge.fury.io/js/SevaTech-library)
3
+ [![npm version](https://badge.fury.io/js/sevatech-library.svg)](https://badge.fury.io/js/sevatech-library)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-blue.svg)](https://www.typescriptlang.org/)
6
6
 
@@ -46,7 +46,7 @@ Ensure you have the following peer dependencies installed:
46
46
 
47
47
  ```tsx
48
48
  import React, { useState } from 'react';
49
- import { ButtonComponent, TextFieldComponent, ModalComponent } from 'SevaTech-library';
49
+ import { ButtonComponent, TextFieldComponent, ModalComponent } from 'sevatech-library';
50
50
 
51
51
  function App() {
52
52
  const [email, setEmail] = useState('');
@@ -98,7 +98,7 @@ export default App;
98
98
  A versatile button component supporting multiple variants, colors, sizes, and icon integration.
99
99
 
100
100
  ```tsx
101
- import { ButtonComponent } from 'SevaTech-library';
101
+ import { ButtonComponent } from 'sevatech-library';
102
102
 
103
103
  // Basic usage
104
104
  <ButtonComponent variant="solid" color="brand" onClick={handleClick}>
@@ -125,7 +125,7 @@ import { ButtonComponent } from 'SevaTech-library';
125
125
  Advanced input field with validation states, icons, and accessibility features.
126
126
 
127
127
  ```tsx
128
- import { TextFieldComponent } from 'SevaTech-library';
128
+ import { TextFieldComponent } from 'sevatech-library';
129
129
 
130
130
  const [value, setValue] = useState('');
131
131
 
@@ -159,7 +159,7 @@ const [value, setValue] = useState('');
159
159
  Multi-line text input with customizable rows and validation.
160
160
 
161
161
  ```tsx
162
- import { TextAreaComponent } from 'SevaTech-library';
162
+ import { TextAreaComponent } from 'sevatech-library';
163
163
 
164
164
  const [description, setDescription] = useState('');
165
165
 
@@ -178,7 +178,7 @@ const [description, setDescription] = useState('');
178
178
  Custom-styled checkbox with label support.
179
179
 
180
180
  ```tsx
181
- import { CheckboxComponent } from 'SevaTech-library';
181
+ import { CheckboxComponent } from 'sevatech-library';
182
182
 
183
183
  const [agreed, setAgreed] = useState(false);
184
184
 
@@ -194,7 +194,7 @@ const [agreed, setAgreed] = useState(false);
194
194
  Toggle switch with smooth animations.
195
195
 
196
196
  ```tsx
197
- import { SwitchComponent } from 'SevaTech-library';
197
+ import { SwitchComponent } from 'sevatech-library';
198
198
 
199
199
  const [notifications, setNotifications] = useState(true);
200
200
 
@@ -210,7 +210,7 @@ const [notifications, setNotifications] = useState(true);
210
210
  Select dropdown with search and multi-select capabilities.
211
211
 
212
212
  ```tsx
213
- import { DropdownFieldComponent } from 'SevaTech-library';
213
+ import { DropdownFieldComponent } from 'sevatech-library';
214
214
 
215
215
  const options = [
216
216
  { label: 'Option 1', value: '1' },
@@ -232,7 +232,7 @@ const options = [
232
232
  Debounced search input with clear functionality.
233
233
 
234
234
  ```tsx
235
- import { SearchFieldComponent } from 'SevaTech-library';
235
+ import { SearchFieldComponent } from 'sevatech-library';
236
236
 
237
237
  const [searchTerm, setSearchTerm] = useState('');
238
238
 
@@ -250,7 +250,7 @@ const [searchTerm, setSearchTerm] = useState('');
250
250
  Date picker with customizable format and locale support.
251
251
 
252
252
  ```tsx
253
- import { DateFieldComponent } from 'SevaTech-library';
253
+ import { DateFieldComponent } from 'sevatech-library';
254
254
  import dayjs from 'dayjs';
255
255
 
256
256
  const [selectedDate, setSelectedDate] = useState(dayjs());
@@ -268,7 +268,7 @@ const [selectedDate, setSelectedDate] = useState(dayjs());
268
268
  Currency input with automatic formatting.
269
269
 
270
270
  ```tsx
271
- import { MoneyFieldComponent } from 'SevaTech-library';
271
+ import { MoneyFieldComponent } from 'sevatech-library';
272
272
 
273
273
  const [price, setPrice] = useState('');
274
274
 
@@ -288,7 +288,7 @@ const [price, setPrice] = useState('');
288
288
  Flexible modal dialog with customizable actions and content.
289
289
 
290
290
  ```tsx
291
- import { ModalComponent } from 'SevaTech-library';
291
+ import { ModalComponent } from 'sevatech-library';
292
292
 
293
293
  <ModalComponent
294
294
  open={isOpen}
@@ -310,7 +310,7 @@ import { ModalComponent } from 'SevaTech-library';
310
310
  Animated tabbed interface with icon support.
311
311
 
312
312
  ```tsx
313
- import { TabsComponent } from 'SevaTech-library';
313
+ import { TabsComponent } from 'sevatech-library';
314
314
 
315
315
  const tabs = [
316
316
  { id: 'tab1', name: 'Home', icon: 'home' },
@@ -330,7 +330,7 @@ const tabs = [
330
330
  Responsive grid system based on Material-UI's Grid.
331
331
 
332
332
  ```tsx
333
- import { Grid } from 'SevaTech-library';
333
+ import { Grid } from 'sevatech-library';
334
334
 
335
335
  <Grid container spacing={2}>
336
336
  <Grid item xs={12} sm={6} md={4}>
@@ -352,7 +352,7 @@ import { Grid } from 'SevaTech-library';
352
352
  User avatar with image and fallback support.
353
353
 
354
354
  ```tsx
355
- import { AvatarComponent } from 'SevaTech-library';
355
+ import { AvatarComponent } from 'sevatech-library';
356
356
 
357
357
  <AvatarComponent
358
358
  url="https://example.com/avatar.jpg"
@@ -372,7 +372,7 @@ import { AvatarComponent } from 'SevaTech-library';
372
372
  Grouped avatars with overflow indicators.
373
373
 
374
374
  ```tsx
375
- import { AvatarGroupComponent } from 'SevaTech-library';
375
+ import { AvatarGroupComponent } from 'sevatech-library';
376
376
 
377
377
  const avatars = [
378
378
  { id: '1', url: 'avatar1.jpg', name: 'User 1' },
@@ -391,7 +391,7 @@ const avatars = [
391
391
  Compact information display with optional delete action.
392
392
 
393
393
  ```tsx
394
- import { ChipComponent } from 'SevaTech-library';
394
+ import { ChipComponent } from 'sevatech-library';
395
395
 
396
396
  <ChipComponent label="New" color="success" />
397
397
  <ChipComponent label="Important" color="error" variant="outlined" />
@@ -406,7 +406,7 @@ import { ChipComponent } from 'SevaTech-library';
406
406
  Text styling with semantic variants.
407
407
 
408
408
  ```tsx
409
- import { TypographyComponent } from 'SevaTech-library';
409
+ import { TypographyComponent } from 'sevatech-library';
410
410
 
411
411
  <TypographyComponent variant="h1">Main Heading</TypographyComponent>
412
412
  <TypographyComponent variant="body1">
@@ -424,7 +424,7 @@ import { TypographyComponent } from 'SevaTech-library';
424
424
  Breadcrumb navigation with customizable separators.
425
425
 
426
426
  ```tsx
427
- import { BreadCumbsComponent } from 'SevaTech-library';
427
+ import { BreadCumbsComponent } from 'sevatech-library';
428
428
 
429
429
  const breadcrumbs = [
430
430
  { label: 'Home', href: '/' },
@@ -440,7 +440,7 @@ const breadcrumbs = [
440
440
  Styled navigation link with external link support.
441
441
 
442
442
  ```tsx
443
- import { LinkElement } from 'SevaTech-library';
443
+ import { LinkElement } from 'sevatech-library';
444
444
 
445
445
  <LinkElement href="/dashboard">Go to Dashboard</LinkElement>
446
446
  <LinkElement href="https://example.com" external>
@@ -455,7 +455,7 @@ import { LinkElement } from 'SevaTech-library';
455
455
  Material Icons integration with size and color options.
456
456
 
457
457
  ```tsx
458
- import { IconElement } from 'SevaTech-library';
458
+ import { IconElement } from 'sevatech-library';
459
459
 
460
460
  <IconElement icon="home" />
461
461
  <IconElement icon="search" size="large" />
@@ -467,7 +467,7 @@ import { IconElement } from 'SevaTech-library';
467
467
  Optimized image component with lazy loading and fallbacks.
468
468
 
469
469
  ```tsx
470
- import { ImageElement } from 'SevaTech-library';
470
+ import { ImageElement } from 'sevatech-library';
471
471
 
472
472
  <ImageElement
473
473
  url="https://example.com/image.jpg"
@@ -481,7 +481,7 @@ import { ImageElement } from 'SevaTech-library';
481
481
  File upload with drag-and-drop and progress tracking.
482
482
 
483
483
  ```tsx
484
- import { UploaderComponent } from 'SevaTech-library';
484
+ import { UploaderComponent } from 'sevatech-library';
485
485
 
486
486
  <UploaderComponent
487
487
  onFilesSelected={(files) => {
@@ -548,7 +548,7 @@ SevaTech Library uses Material-UI's powerful theming system. Customize the theme
548
548
  ```tsx
549
549
  import React from 'react';
550
550
  import { ThemeProvider, createTheme } from '@mui/material';
551
- import { ButtonComponent } from 'SevaTech-library';
551
+ import { ButtonComponent } from 'sevatech-library';
552
552
 
553
553
  const theme = createTheme({
554
554
  palette: {
@@ -647,7 +647,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
647
647
  ## 📞 Support
648
648
 
649
649
  - 📧 Email:
650
- - 🐛 Issues: [GitHub Issues](https://github.com/your-username/SevaTech-library/issues)
650
+ - 🐛 Issues: [GitHub Issues](https://github.com/your-username/sevatech-library/issues)
651
651
  - 📚 Documentation: [Full Documentation](https://github.com/golden-lotus-core-web/sevatech-library)
652
652
 
653
653
  ---
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ import { AvatarSize } from './avatar.constant';
4
+ import { AvatarData } from './avatar.interface';
5
+ interface AvatarGroupProps {
6
+ avatars: AvatarData[];
7
+ maxDisplay?: number;
8
+ size?: AvatarSize;
9
+ border?: boolean;
10
+ borderColor?: string;
11
+ borderWidth?: number;
12
+ onAddClick?: () => void;
13
+ overlap?: number;
14
+ icon?: string;
15
+ sxAvatar?: SxProps<Theme>;
16
+ sx?: SxProps<Theme>;
17
+ }
18
+ declare const AvatarGroupComponent: React.FC<AvatarGroupProps>;
19
+ export { AvatarGroupComponent };
20
+ //# sourceMappingURL=avatar-group.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar-group.component.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar-group.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAO,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAgB,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKhD,UAAU,gBAAgB;IACxB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1B,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CACrB;AAED,QAAA,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAwFpD,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ import { AvatarComponentProps } from './avatar.interface';
4
+ interface AvatarLabelGroupProps extends AvatarComponentProps {
5
+ title?: string;
6
+ description?: string;
7
+ sxAvatar?: SxProps<Theme>;
8
+ }
9
+ declare const AvatarLabelGroupComponent: React.FC<AvatarLabelGroupProps>;
10
+ export { AvatarLabelGroupComponent };
11
+ //# sourceMappingURL=avatar-label-group.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar-label-group.component.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar-label-group.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAqB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG1D,UAAU,qBAAsB,SAAQ,oBAAoB;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CAC3B;AAED,QAAA,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAgD9D,CAAC;AAEF,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { AvatarComponentProps } from './avatar.interface';
3
+ declare const AvatarProfileComponent: React.FC<AvatarComponentProps>;
4
+ export { AvatarProfileComponent };
5
+ //# sourceMappingURL=avatar-profile.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar-profile.component.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar-profile.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG1D,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAqC1D,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import { AvatarProps } from '@mui/material';
3
+ interface AvatarUserProps extends Omit<AvatarProps, 'children'> {
4
+ title?: string;
5
+ description?: string;
6
+ descriptionHref?: string;
7
+ onDescriptionClick?: () => void;
8
+ titleColor?: string;
9
+ descriptionColor?: string;
10
+ url?: string;
11
+ }
12
+ declare const AvatarUserComponent: React.FC<AvatarUserProps>;
13
+ export { AvatarUserComponent };
14
+ //# sourceMappingURL=avatar-user.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar-user.component.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar-user.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAe,WAAW,EAAE,MAAM,eAAe,CAAC;AAMzD,UAAU,eAAgB,SAAQ,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgDlD,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { AvatarSize } from './avatar.constant';
3
+ import { AvatarComponentProps } from './avatar.interface';
4
+ export declare const BadgeLive: ({ text, size }: {
5
+ text?: string;
6
+ size?: AvatarSize;
7
+ }) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const BadgeNumber: ({ number, size }: {
9
+ number: number;
10
+ size?: AvatarSize;
11
+ }) => import("react/jsx-runtime").JSX.Element;
12
+ export declare const BadgeOnline: ({ size }: {
13
+ size?: AvatarSize;
14
+ }) => import("react/jsx-runtime").JSX.Element;
15
+ export declare const BadgeImage: ({ url, size }: {
16
+ url: string;
17
+ size?: AvatarSize;
18
+ }) => import("react/jsx-runtime").JSX.Element;
19
+ export declare const AvatarComponent: React.FC<AvatarComponentProps>;
20
+ //# sourceMappingURL=avatar.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.component.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar.component.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAGL,UAAU,EAIX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG1D,eAAO,MAAM,SAAS,GAAI,gBAAgC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,4CAgB7F,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,kBAAyB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,4CAoBzF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,UAAiB;IAAE,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,4CAUjE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,eAAsB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,4CAelF,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAkD1D,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { BadgePositionStyles } from './avatar.interface';
2
+ export declare const AVATAR_SIZES: {
3
+ xs: number;
4
+ sm: number;
5
+ md: number;
6
+ lg: number;
7
+ xl: number;
8
+ '2xl': number;
9
+ };
10
+ export declare const BADGE_SIZES: {
11
+ xs: number;
12
+ sm: number;
13
+ md: number;
14
+ lg: number;
15
+ xl: number;
16
+ '2xl': number;
17
+ };
18
+ export declare const BADGE_FONT_SIZES: {
19
+ xs: number;
20
+ sm: number;
21
+ md: number;
22
+ lg: number;
23
+ xl: number;
24
+ '2xl': number;
25
+ };
26
+ export type AvatarSize = keyof typeof AVATAR_SIZES;
27
+ export type BadgePosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
28
+ export declare const getBadgePosition: (position: BadgePosition) => BadgePositionStyles;
29
+ export declare enum AvatarColor {
30
+ BACKGROUND_COLOR_BADGE = "#000000",
31
+ COLOR_BADGE = "#FFFFFF",
32
+ COLOR_TITLE = "#414651",
33
+ COLOR_DESCRIPTION = "#535862"
34
+ }
35
+ //# sourceMappingURL=avatar.constant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.constant.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar.constant.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,YAAY;;;;;;;CAOxB,CAAC;AACF,eAAO,MAAM,WAAW;;;;;;;CAOvB,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;CAO5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,YAAY,CAAC;AAEnD,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC;AAEvH,eAAO,MAAM,gBAAgB,GAAI,UAAU,aAAa,KAAG,mBAU1D,CAAC;AACF,oBAAY,WAAW;IACrB,sBAAsB,YAAY;IAClC,WAAW,YAAY;IACvB,WAAW,YAAY;IACvB,iBAAiB,YAAY;CAC9B"}
@@ -0,0 +1,28 @@
1
+ import { AvatarProps, SxProps, Theme } from '@mui/material';
2
+ import { AvatarSize, BadgePosition } from './avatar.constant';
3
+ import { ImageSizeType } from '../image';
4
+ export interface AvatarData {
5
+ url?: string;
6
+ name?: string;
7
+ id?: string;
8
+ }
9
+ export interface AvatarComponentProps extends Omit<AvatarProps, 'children'> {
10
+ url?: string;
11
+ size?: AvatarSize;
12
+ border?: boolean;
13
+ borderColor?: string;
14
+ borderWidth?: number;
15
+ badge?: React.ReactNode;
16
+ badgePosition?: BadgePosition;
17
+ children?: React.ReactNode;
18
+ sizeType?: ImageSizeType;
19
+ sxProfile?: SxProps<Theme>;
20
+ }
21
+ export interface BadgePositionStyles {
22
+ top?: string | number;
23
+ bottom?: string | number;
24
+ left?: string | number;
25
+ right?: string | number;
26
+ transform?: string;
27
+ }
28
+ //# sourceMappingURL=avatar.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.interface.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/avatar.interface.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,8 @@
1
+ export { AvatarComponent, BadgeLive, BadgeNumber, BadgeOnline, BadgeImage } from './avatar.component';
2
+ export { AvatarGroupComponent } from './avatar-group.component';
3
+ export { AvatarLabelGroupComponent } from './avatar-label-group.component';
4
+ export { AvatarProfileComponent } from './avatar-profile.component';
5
+ export { AvatarUserComponent } from './avatar-user.component';
6
+ export * from './avatar.constant';
7
+ export * from './avatar.interface';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/avatar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAC,MAAM,oBAAoB,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ interface BreadcrumbItem {
4
+ id: string;
5
+ icon?: string;
6
+ label: string;
7
+ href?: string;
8
+ onClick?: () => void;
9
+ }
10
+ interface BreadcrumbsComponentProps {
11
+ items: BreadcrumbItem[];
12
+ separator?: '>' | '/';
13
+ maxItems?: number;
14
+ idSelect?: string;
15
+ sx?: SxProps<Theme>;
16
+ sxItem?: SxProps<Theme>;
17
+ onChange?: (id: string) => void;
18
+ }
19
+ declare const BreadcrumbsComponent: React.FC<BreadcrumbsComponentProps>;
20
+ export { BreadcrumbsComponent };
21
+ //# sourceMappingURL=bread-crumbs.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bread-crumbs.component.d.ts","sourceRoot":"","sources":["../../../../src/components/bread-crumbs/bread-crumbs.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAY/C,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,UAAU,yBAAyB;IACjC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAED,QAAA,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA8G7D,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { BreadcrumbsComponent } from './bread-crumbs.component';
2
+ export * from './bread-crumbs.component';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/bread-crumbs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,37 @@
1
+ import React, { ReactNode, CSSProperties } from 'react';
2
+ import { ButtonProps as MuiButtonProps } from '@mui/material';
3
+ import { Variant, Color, Size } from './button.constants';
4
+ export interface ButtonProps extends Omit<MuiButtonProps, 'variant' | 'color' | 'size' | 'prefix' | 'suffix'> {
5
+ /** Kiểu hiển thị: solid (đầy), outline (viền), ghost (nền nhạt), text (chỉ chữ) */
6
+ variant?: Variant;
7
+ /** Màu sắc: brand, neutral, error, warning, success, accent, info */
8
+ color?: Color;
9
+ /** Shade của màu: light (100), main (500), dark (700) hoặc number (50-950) */
10
+ shade?: 'light' | 'main' | 'dark' | number;
11
+ /** Kích cỡ: xs, sm, md, lg, xl */
12
+ size?: Size;
13
+ /** Icon hoặc element hiển thị trước nội dung (ReactNode) */
14
+ prefix?: ReactNode;
15
+ /** Icon hoặc element hiển thị sau nội dung (ReactNode) */
16
+ suffix?: ReactNode;
17
+ /** Tên icon Material hiển thị trước (string) - ưu tiên hơn prefix */
18
+ prefixIcon?: string;
19
+ /** Tên icon Material hiển thị sau (string) - ưu tiên hơn suffix */
20
+ suffixIcon?: string;
21
+ /** Style CSS cho icon (áp dụng cho prefixIcon/suffixIcon) */
22
+ iconStyle?: CSSProperties;
23
+ /** Trạng thái loading - hiển thị spinner */
24
+ loading?: boolean;
25
+ /** Nội dung button */
26
+ children?: ReactNode;
27
+ /** Button chiếm full width container */
28
+ fullWidth?: boolean;
29
+ /** Vô hiệu hóa button */
30
+ disabled?: boolean;
31
+ /** Hiển thị dot nhỏ trước text để đánh dấu trạng thái active */
32
+ active?: boolean;
33
+ /** Màu của dot khi active (mặc định: #10b981 - xanh lá) */
34
+ activeDotColor?: string;
35
+ }
36
+ export declare const ButtonComponent: React.FC<ButtonProps>;
37
+ //# sourceMappingURL=button.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.component.d.ts","sourceRoot":"","sources":["../../../../src/components/button/button.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EAAuB,WAAW,IAAI,cAAc,EAAoB,MAAM,eAAe,CAAC;AACrG,OAAO,EACL,OAAO,EACP,KAAK,EAEL,IAAI,EAML,MAAM,oBAAoB,CAAC;AAwE5B,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3G,mFAAmF;IACnF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qEAAqE;IACrE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,8EAA8E;IAC9E,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,kCAAkC;IAClC,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,4DAA4D;IAC5D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2DAA2D;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AACD,eAAQ,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAmFlD,CAAC"}
@@ -0,0 +1,33 @@
1
+ /** Button component type definitions */
2
+ export type Variant = 'solid' | 'outline' | 'ghost' | 'text';
3
+ export type Color = 'brand' | 'neutral' | 'error' | 'warning' | 'success' | 'accent' | 'info';
4
+ export type Size = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
5
+ export type ShadeType = 'light' | 'main' | 'dark';
6
+ /** Shade values mapping */
7
+ export declare const SHADE_VALUES: Record<ShadeType, number>;
8
+ /** Button size configuration */
9
+ export declare const SIZES: Record<Size, {
10
+ padding: string;
11
+ fontSize: string;
12
+ height: string;
13
+ width?: string;
14
+ }>;
15
+ /** Color palette mapping */
16
+ export declare const COLORS: Record<Color, Record<number, string>>;
17
+ /** Button UI constants */
18
+ export declare const BUTTON_CONSTANTS: {
19
+ readonly ACTIVE_DOT_SIZE: 8;
20
+ readonly ACTIVE_DOT_MARGIN_RIGHT: 8;
21
+ readonly SPINNER_SIZE: 16;
22
+ readonly GAP: 12;
23
+ readonly BORDER_RADIUS: 8;
24
+ readonly TRANSITION_DURATION: "0.3s";
25
+ };
26
+ /** Accessibility constants */
27
+ export declare const ACCESSIBILITY: {
28
+ readonly HOVER_TRANSLATE_Y: "-2px";
29
+ readonly ACTIVE_TRANSLATE_Y: "0";
30
+ readonly BOX_SHADOW: "0 4px 12px rgba(0, 0, 0, 0.15)";
31
+ readonly FOCUS_OFFSET: "2px";
32
+ };
33
+ //# sourceMappingURL=button.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.constants.d.ts","sourceRoot":"","sources":["../../../../src/components/button/button.constants.ts"],"names":[],"mappings":"AAGA,wCAAwC;AACxC,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAC7D,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC9F,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACpD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD,2BAA2B;AAC3B,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAIzC,CAAC;AAEX,gCAAgC;AAChC,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAM5F,CAAC;AAEX,4BAA4B;AAC5B,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxD,CAAC;AAEF,0BAA0B;AAC1B,eAAO,MAAM,gBAAgB;;;;;;;CAOnB,CAAC;AAEX,8BAA8B;AAC9B,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { ButtonComponent } from './button.component';
2
+ export * from './button.constants';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React, { ReactNode, CSSProperties } from 'react';
2
+ type Layout = 'horizontal' | 'vertical';
3
+ interface ButtonBarProps {
4
+ /** Layout: 'horizontal' (ngang) hoặc 'vertical' (dọc) */
5
+ layout: Layout;
6
+ /** Các button bên trong */
7
+ children: ReactNode;
8
+ /** Gap giữa các button (px) */
9
+ gap?: number;
10
+ /** Custom style cho container */
11
+ style?: CSSProperties;
12
+ }
13
+ declare const ButtonBarComponent: React.FC<ButtonBarProps>;
14
+ export { ButtonBarComponent };
15
+ //# sourceMappingURL=button-bar.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-bar.component.d.ts","sourceRoot":"","sources":["../../../../src/components/button-bar/button-bar.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAExD,KAAK,MAAM,GAAG,YAAY,GAAG,UAAU,CAAC;AAExC,UAAU,cAAc;IACtB,yDAAyD;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,QAAQ,EAAE,SAAS,CAAC;IACpB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAUhD,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { ButtonBarComponent } from './button-bar.component';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/button-bar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { SxProps, Theme } from '@mui/material';
2
+ import React from 'react';
3
+ import { CheckboxIconType, CheckboxShape, CheckboxSize, CheckboxVariant } from './checkbox.component';
4
+ export interface CheckboxContentProps {
5
+ checked?: boolean;
6
+ disabled?: boolean;
7
+ title: string;
8
+ content?: string;
9
+ size?: CheckboxSize;
10
+ variant?: CheckboxVariant;
11
+ shape?: CheckboxShape;
12
+ iconType?: CheckboxIconType;
13
+ onChange?: (checked: boolean) => void;
14
+ sxCheckbox?: SxProps<Theme>;
15
+ sxLabel?: SxProps<Theme>;
16
+ sx?: SxProps<Theme>;
17
+ }
18
+ export declare const CheckboxContentComponent: React.FC<CheckboxContentProps>;
19
+ //# sourceMappingURL=checkbox-content.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-content.component.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox/checkbox-content.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,OAAO,EAAE,KAAK,EAAc,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAEtC,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzB,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CACrB;AAyBD,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgFnE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ export type CheckboxShape = 'square' | 'circle';
4
+ export type CheckboxSize = 'small' | 'medium';
5
+ export type CheckboxVariant = 'filled' | 'outlined';
6
+ export type CheckboxIconType = 'check' | 'minus' | 'dot' | 'custom';
7
+ interface CheckboxProps {
8
+ checked?: boolean;
9
+ disabled?: boolean;
10
+ shape?: CheckboxShape;
11
+ size?: CheckboxSize;
12
+ variant?: CheckboxVariant;
13
+ iconType?: CheckboxIconType;
14
+ title?: string;
15
+ children?: React.ReactNode;
16
+ onChange?: (checked: boolean) => void;
17
+ sxCheckbox?: SxProps<Theme>;
18
+ sxLabel?: SxProps<Theme>;
19
+ sx?: SxProps<Theme>;
20
+ }
21
+ declare const CheckboxComponent: React.FC<CheckboxProps>;
22
+ export { CheckboxComponent };
23
+ //# sourceMappingURL=checkbox.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.component.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox/checkbox.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAmB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOhE,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAChD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,CAAC;AACpD,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEpE,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAEtC,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzB,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CACrB;AAED,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiJ9C,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { CheckboxSize } from './checkbox.component';
2
+ export declare const CHECKBOX_COLORS: {
3
+ readonly default: {
4
+ readonly border: "#D0D5DD";
5
+ readonly background: "#FFFFFF";
6
+ readonly hoverBg: "#F0FDF9";
7
+ };
8
+ readonly checked: {
9
+ readonly border: "#07554B";
10
+ readonly filledBg: "#07554B";
11
+ readonly outlinedBg: "#FFFFFF";
12
+ readonly icon: "#FFFFFF";
13
+ };
14
+ readonly disabled: {
15
+ readonly border: "#E4E7EC";
16
+ readonly background: "#F2F4F7";
17
+ readonly icon: "#98A2B3";
18
+ };
19
+ };
20
+ export declare const CHECKBOX_SIZE: Record<CheckboxSize, {
21
+ boxSize: number;
22
+ iconSize: number;
23
+ titleFontSize: number;
24
+ titleFontWeight: number;
25
+ }>;
26
+ //# sourceMappingURL=checkbox.constant.d.ts.map