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.
- package/README.md +25 -25
- package/dist/types/components/avatar/avatar-group.component.d.ts +20 -0
- package/dist/types/components/avatar/avatar-group.component.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar-label-group.component.d.ts +11 -0
- package/dist/types/components/avatar/avatar-label-group.component.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar-profile.component.d.ts +5 -0
- package/dist/types/components/avatar/avatar-profile.component.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar-user.component.d.ts +14 -0
- package/dist/types/components/avatar/avatar-user.component.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar.component.d.ts +20 -0
- package/dist/types/components/avatar/avatar.component.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar.constant.d.ts +35 -0
- package/dist/types/components/avatar/avatar.constant.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar.interface.d.ts +28 -0
- package/dist/types/components/avatar/avatar.interface.d.ts.map +1 -0
- package/dist/types/components/avatar/index.d.ts +8 -0
- package/dist/types/components/avatar/index.d.ts.map +1 -0
- package/dist/types/components/bread-crumbs/bread-crumbs.component.d.ts +21 -0
- package/dist/types/components/bread-crumbs/bread-crumbs.component.d.ts.map +1 -0
- package/dist/types/components/bread-crumbs/index.d.ts +3 -0
- package/dist/types/components/bread-crumbs/index.d.ts.map +1 -0
- package/dist/types/components/button/button.component.d.ts +37 -0
- package/dist/types/components/button/button.component.d.ts.map +1 -0
- package/dist/types/components/button/button.constants.d.ts +33 -0
- package/dist/types/components/button/button.constants.d.ts.map +1 -0
- package/dist/types/components/button/index.d.ts +3 -0
- package/dist/types/components/button/index.d.ts.map +1 -0
- package/dist/types/components/button-bar/button-bar.component.d.ts +15 -0
- package/dist/types/components/button-bar/button-bar.component.d.ts.map +1 -0
- package/dist/types/components/button-bar/index.d.ts +2 -0
- package/dist/types/components/button-bar/index.d.ts.map +1 -0
- package/dist/types/components/checkbox/checkbox-content.component.d.ts +19 -0
- package/dist/types/components/checkbox/checkbox-content.component.d.ts.map +1 -0
- package/dist/types/components/checkbox/checkbox.component.d.ts +23 -0
- package/dist/types/components/checkbox/checkbox.component.d.ts.map +1 -0
- package/dist/types/components/checkbox/checkbox.constant.d.ts +26 -0
- package/dist/types/components/checkbox/checkbox.constant.d.ts.map +1 -0
- package/dist/types/components/checkbox/index.d.ts +4 -0
- package/dist/types/components/checkbox/index.d.ts.map +1 -0
- package/dist/types/components/chip/chip.component.d.ts +16 -0
- package/dist/types/components/chip/chip.component.d.ts.map +1 -0
- package/dist/types/components/chip/chip.constant.d.ts +16 -0
- package/dist/types/components/chip/chip.constant.d.ts.map +1 -0
- package/dist/types/components/chip/index.d.ts +3 -0
- package/dist/types/components/chip/index.d.ts.map +1 -0
- package/dist/types/components/date-field/date-field.component.d.ts +23 -0
- package/dist/types/components/date-field/date-field.component.d.ts.map +1 -0
- package/dist/types/components/date-field/index.d.ts +2 -0
- package/dist/types/components/date-field/index.d.ts.map +1 -0
- package/dist/types/components/date-range-picker/date-range-picker.component.d.ts +25 -0
- package/dist/types/components/date-range-picker/date-range-picker.component.d.ts.map +1 -0
- package/dist/types/components/date-range-picker/index.d.ts +2 -0
- package/dist/types/components/date-range-picker/index.d.ts.map +1 -0
- package/dist/types/components/dropdown-field/dropdown-field.component.d.ts +28 -0
- package/dist/types/components/dropdown-field/dropdown-field.component.d.ts.map +1 -0
- package/dist/types/components/dropdown-field/index.d.ts +2 -0
- package/dist/types/components/dropdown-field/index.d.ts.map +1 -0
- package/dist/types/components/grid/grid.component.d.ts +11 -0
- package/dist/types/components/grid/grid.component.d.ts.map +1 -0
- package/dist/types/components/grid/index.d.ts +2 -0
- package/dist/types/components/grid/index.d.ts.map +1 -0
- package/dist/types/components/icon/icon.element.d.ts +12 -0
- package/dist/types/components/icon/icon.element.d.ts.map +1 -0
- package/dist/types/components/icon/index.d.ts +2 -0
- package/dist/types/components/icon/index.d.ts.map +1 -0
- package/dist/types/components/image/image.element.d.ts +13 -0
- package/dist/types/components/image/image.element.d.ts.map +1 -0
- package/dist/types/components/image/image.enum.d.ts +6 -0
- package/dist/types/components/image/image.enum.d.ts.map +1 -0
- package/dist/types/components/image/index.d.ts +3 -0
- package/dist/types/components/image/index.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +28 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/components/input-stepper/index.d.ts +4 -0
- package/dist/types/components/input-stepper/index.d.ts.map +1 -0
- package/dist/types/components/input-stepper/input-stepper-skeleton.d.ts +9 -0
- package/dist/types/components/input-stepper/input-stepper-skeleton.d.ts.map +1 -0
- package/dist/types/components/input-stepper/input-stepper.component.d.ts +38 -0
- package/dist/types/components/input-stepper/input-stepper.component.d.ts.map +1 -0
- package/dist/types/components/input-stepper/input-stepper.constant.d.ts +32 -0
- package/dist/types/components/input-stepper/input-stepper.constant.d.ts.map +1 -0
- package/dist/types/components/link/index.d.ts +3 -0
- package/dist/types/components/link/index.d.ts.map +1 -0
- package/dist/types/components/link/link-internal.element.d.ts +9 -0
- package/dist/types/components/link/link-internal.element.d.ts.map +1 -0
- package/dist/types/components/link/link.element.d.ts +8 -0
- package/dist/types/components/link/link.element.d.ts.map +1 -0
- package/dist/types/components/link-field/index.d.ts +2 -0
- package/dist/types/components/link-field/index.d.ts.map +1 -0
- package/dist/types/components/link-field/link-field.component.d.ts +23 -0
- package/dist/types/components/link-field/link-field.component.d.ts.map +1 -0
- package/dist/types/components/modal/index.d.ts +5 -0
- package/dist/types/components/modal/index.d.ts.map +1 -0
- package/dist/types/components/modal/modal-card.component.d.ts +15 -0
- package/dist/types/components/modal/modal-card.component.d.ts.map +1 -0
- package/dist/types/components/modal/modal-content.component.d.ts +16 -0
- package/dist/types/components/modal/modal-content.component.d.ts.map +1 -0
- package/dist/types/components/modal/modal.component.d.ts +11 -0
- package/dist/types/components/modal/modal.component.d.ts.map +1 -0
- package/dist/types/components/modal/modal.interface.d.ts +20 -0
- package/dist/types/components/modal/modal.interface.d.ts.map +1 -0
- package/dist/types/components/money-field/index.d.ts +2 -0
- package/dist/types/components/money-field/index.d.ts.map +1 -0
- package/dist/types/components/money-field/money-field.component.d.ts +24 -0
- package/dist/types/components/money-field/money-field.component.d.ts.map +1 -0
- package/dist/types/components/phone-number-field/index.d.ts +2 -0
- package/dist/types/components/phone-number-field/index.d.ts.map +1 -0
- package/dist/types/components/phone-number-field/phone-number-field.component.d.ts +28 -0
- package/dist/types/components/phone-number-field/phone-number-field.component.d.ts.map +1 -0
- package/dist/types/components/pin/index.d.ts +3 -0
- package/dist/types/components/pin/index.d.ts.map +1 -0
- package/dist/types/components/pin/pin.component.d.ts +23 -0
- package/dist/types/components/pin/pin.component.d.ts.map +1 -0
- package/dist/types/components/pin/pin.constant.d.ts +25 -0
- package/dist/types/components/pin/pin.constant.d.ts.map +1 -0
- package/dist/types/components/search-dropdown/index.d.ts +2 -0
- package/dist/types/components/search-dropdown/index.d.ts.map +1 -0
- package/dist/types/components/search-dropdown/search-dropdown.component.d.ts +30 -0
- package/dist/types/components/search-dropdown/search-dropdown.component.d.ts.map +1 -0
- package/dist/types/components/search-field/index.d.ts +2 -0
- package/dist/types/components/search-field/index.d.ts.map +1 -0
- package/dist/types/components/search-field/search-field.component.d.ts +14 -0
- package/dist/types/components/search-field/search-field.component.d.ts.map +1 -0
- package/dist/types/components/switch/index.d.ts +3 -0
- package/dist/types/components/switch/index.d.ts.map +1 -0
- package/dist/types/components/switch/switch-content.component.d.ts +14 -0
- package/dist/types/components/switch/switch-content.component.d.ts.map +1 -0
- package/dist/types/components/switch/switch.component.d.ts +12 -0
- package/dist/types/components/switch/switch.component.d.ts.map +1 -0
- package/dist/types/components/tab/index.d.ts +3 -0
- package/dist/types/components/tab/index.d.ts.map +1 -0
- package/dist/types/components/tab/tab.component.d.ts +23 -0
- package/dist/types/components/tab/tab.component.d.ts.map +1 -0
- package/dist/types/components/tab/tab.constant.d.ts +15 -0
- package/dist/types/components/tab/tab.constant.d.ts.map +1 -0
- package/dist/types/components/text-area/index.d.ts +2 -0
- package/dist/types/components/text-area/index.d.ts.map +1 -0
- package/dist/types/components/text-area/text-area.component.d.ts +22 -0
- package/dist/types/components/text-area/text-area.component.d.ts.map +1 -0
- package/dist/types/components/text-field/index.d.ts +2 -0
- package/dist/types/components/text-field/index.d.ts.map +1 -0
- package/dist/types/components/text-field/text-field.component.d.ts +21 -0
- package/dist/types/components/text-field/text-field.component.d.ts.map +1 -0
- package/dist/types/components/typography/index.d.ts +2 -0
- package/dist/types/components/typography/index.d.ts.map +1 -0
- package/dist/types/components/typography/typography-limit-one-line.component.d.ts +9 -0
- package/dist/types/components/typography/typography-limit-one-line.component.d.ts.map +1 -0
- package/dist/types/components/uploader/index.d.ts +3 -0
- package/dist/types/components/uploader/index.d.ts.map +1 -0
- package/dist/types/components/uploader/uploader-item.component.d.ts +18 -0
- package/dist/types/components/uploader/uploader-item.component.d.ts.map +1 -0
- package/dist/types/components/uploader/uploader-item.styles.d.ts +53 -0
- package/dist/types/components/uploader/uploader-item.styles.d.ts.map +1 -0
- package/dist/types/components/uploader/uploader.component.d.ts +48 -0
- package/dist/types/components/uploader/uploader.component.d.ts.map +1 -0
- package/dist/types/constants/apps.data.d.ts +7 -0
- package/dist/types/constants/apps.data.d.ts.map +1 -0
- package/dist/types/constants/color.constant.d.ts +105 -0
- package/dist/types/constants/color.constant.d.ts.map +1 -0
- package/dist/types/constants/index.d.ts +5 -0
- package/dist/types/constants/index.d.ts.map +1 -0
- package/dist/types/constants/style.constant.d.ts +58 -0
- package/dist/types/constants/style.constant.d.ts.map +1 -0
- package/dist/types/constants/typography.constant.d.ts +710 -0
- package/dist/types/constants/typography.constant.d.ts.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/styles/index.d.ts +2 -0
- package/dist/types/styles/index.d.ts.map +1 -0
- package/dist/types/styles/stack.style.d.ts +54 -0
- package/dist/types/styles/stack.style.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +2 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SevaTech Library
|
|
2
2
|
|
|
3
|
-
[](https://badge.fury.io/js/sevatech-library)
|
|
4
4
|
[](https://opensource.org/licenses/MIT)
|
|
5
5
|
[](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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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 '
|
|
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/
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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
|