tcce-design-system 0.3.21 → 0.3.23
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--color-main-blue-primary: #22205f;--color-main-orange-primary: #f66a24;--color-main-grey: #605f60;--color-main-alternative: #bf5f60;--color-main-alternative-secondary: #f2f2f2;--color-main-positive-state: #01d42f;--color-main-warning-state: #ea3a3d;--color-main-yellow-primary: #faca4a;--color-main-white: #ffffff;--color-main-black: #000000;--color-main-light-borders: #f1f5f7;--color-main-input-borders: rgba(96, 95, 96, .7);--color-dark-100: #e8e8e8;--color-dark-200: #d1d1d1;--color-dark-300: #a2a3a3;--color-dark-400: #747476;--color-dark-500: #454648;--color-dark-600: #17181a;--color-dark-700: #121315;--color-dark-800: #0e0e10;--color-dark-900: #090a0a;--color-light-100: #ffffff;--color-light-200: #f1f5f7;--color-light-300: #d9e1e7;--color-light-400: #b3c5d4;--color-light-500: #99b2c6;--color-light-600: #809fb8;--color-light-700: #667f93;--color-light-800: #4d5f6e;--color-light-900: #33404a;--color-light-1000: #1a2025;--color-blue-100: #c0b6fe;--color-blue-200: #816dfd;--color-blue-300: #4324fc;--color-blue-400: #2003d3;--color-blue-500: #15028a;--color-blue-600: #0a0141;--color-blue-700: #09013a;--color-blue-800: #080134;--color-blue-900: #07012d;--color-blue-1000: #060127;--color-red-100: #f8bdbe;--color-red-200: #f59c9e;--color-red-300: #f17c7e;--color-red-400: #ed5b5d;--color-red-500: #ea3a3d;--color-red-600: #bc1417;--color-red-700: #bc1417;--color-red-800: #971012;--color-red-900: #710c0e;--color-red-1000: #4b0809;--color-orange-100: #fee6db;--color-orange-200: #fccdb6;--color-orange-300: #fab592;--color-orange-400: #f99c6d;--color-orange-500: #f88349;--color-orange-700: #d94e09;--color-orange-800: #a33b07;--color-orange-900: #6c2704;--color-orange-1000: #361402;--color-yellow-100: #fffaed;--color-yellow-200: #fef4db;--color-yellow-300: #fdeab7;--color-yellow-400: #fcdf92;--color-yellow-500: #fbd56e;--color-yellow-600: #faca4a;--color-yellow-700: #c8a23b;--color-yellow-800: #96792c;--color-yellow-900: #64511e;--color-yellow-1000: #32280f;--color-green-100: #ceffd8;--color-green-200: #9cffb2;--color-green-300: #6bfe8b;--color-green-400: #3afe65;--color-green-500: #09fe3e;--color-green-600: #01d42f;--color-green-700: #01aa26;--color-green-800: #017f1c;--color-green-900: #005513;--color-green-1000: #002a09;--color-purple-100: #e0ddf1;--color-purple-200: #c0bae4;--color-purple-300: #a198d6;--color-purple-400: #8276c9;--color-purple-500: #6353bb;--color-purple-600: #4d3fa0;--color-purple-700: #3d327d;--color-purple-800: #2c245b;--color-purple-900: #231d49;--color-purple-1000: #1a1637;--border-radius-button: 1.875rem;--border-radius-secondary-button: .625rem;--border-radius-card: 1.25rem;--border-radius-article: .875rem;--border-radius-outline: .5rem;--shadow-black-card: 0 1.25rem 2.5rem 0 rgba(0, 0, 0, .15);--shadow-hover-black-card: 0 1.875rem 3.75rem 0 rgba(0, 0, 0, .35);--shadow-black-button: 0 .625rem 1.25rem 0 rgba(0, 0, 0, .15);--shadow-hover-black-button: 0 .9375rem 1.875rem 0 rgba(0, 0, 0, .25);--shadow-hover-orange-button: 0 .9375rem 1.875rem 0 #fab592;--border-input: 1px solid rgba(96, 95, 96, .7);--border-input-disabled: 1px solid #d1d1d1;--border-input-error: 1px solid #ea3a3d;--border-input-focus: 1px solid #22205f}@font-face{font-family:Dax;src:url(./assets/fonts/dax-regular/dax-regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dax;src:url(./assets/fonts/Dax-Bold/Dax-Bold.otf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLight.otf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLightItalic.otf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThin.otf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThinItalic.otf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLight.otf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLightItalic.otf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueRoman.otf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueItalic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMedium.otf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMediumItalic.otf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBold.otf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBoldItalic.otf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavy.otf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavyItalic.otf) format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlack.otf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlackItalic.otf) format("truetype");font-weight:900;font-style:italic;font-display:swap}*{scrollbar-width:thin;scrollbar-color:var(--color-main-orange-primary) #f1f1f1}*::-webkit-scrollbar{width:.5rem}*::-webkit-scrollbar-track{background:#f1f1f1;border-radius:.625rem}*::-webkit-scrollbar-thumb{background:var(--color-main-orange-primary);border-radius:.625rem}*::-webkit-scrollbar-thumb:hover{background:var(--color-main-orange-primary)}.my-toast{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:176.782%;border:none!important;box-shadow:var(--shadow-black-card);border-radius:var(--border-radius-article)!important}[data-sonner-toast][data-type=success]{background:linear-gradient(135deg,var(--color-main-positive-state) 0%,var(--color-green-200) 100%)!important;color:var(--color-main-white)!important}[data-sonner-toast][data-type=error]{background:linear-gradient(135deg,var(--color-main-warning-state) 0%,var(--color-red-300) 100%)!important;color:var(--color-main-white)!important}[data-sonner-toaster]{bottom:6rem!important}[data-sonner-toaster][data-position=bottom-center]{transform:translateY(-3rem)!important}
|
|
1
|
+
:root{--color-main-blue-primary: #22205f;--color-main-orange-primary: #f66a24;--color-main-grey: #605f60;--color-main-alternative: #bf5f60;--color-main-alternative-secondary: #f2f2f2;--color-main-positive-state: #01d42f;--color-main-warning-state: #ea3a3d;--color-main-yellow-primary: #faca4a;--color-main-white: #ffffff;--color-main-black: #000000;--color-main-light-borders: #f1f5f7;--color-main-input-borders: rgba(96, 95, 96, .7);--color-main-light-background: #f1f5f7;--color-dark-100: #e8e8e8;--color-dark-200: #d1d1d1;--color-dark-300: #a2a3a3;--color-dark-400: #747476;--color-dark-500: #454648;--color-dark-600: #17181a;--color-dark-700: #121315;--color-dark-800: #0e0e10;--color-dark-900: #090a0a;--color-light-100: #ffffff;--color-light-200: #f1f5f7;--color-light-300: #d9e1e7;--color-light-400: #b3c5d4;--color-light-500: #99b2c6;--color-light-600: #809fb8;--color-light-700: #667f93;--color-light-800: #4d5f6e;--color-light-900: #33404a;--color-light-1000: #1a2025;--color-blue-100: #c0b6fe;--color-blue-200: #816dfd;--color-blue-300: #4324fc;--color-blue-400: #2003d3;--color-blue-500: #15028a;--color-blue-600: #0a0141;--color-blue-700: #09013a;--color-blue-800: #080134;--color-blue-900: #07012d;--color-blue-1000: #060127;--color-red-100: #f8bdbe;--color-red-200: #f59c9e;--color-red-300: #f17c7e;--color-red-400: #ed5b5d;--color-red-500: #ea3a3d;--color-red-600: #bc1417;--color-red-700: #bc1417;--color-red-800: #971012;--color-red-900: #710c0e;--color-red-1000: #4b0809;--color-orange-100: #fee6db;--color-orange-200: #fccdb6;--color-orange-300: #fab592;--color-orange-400: #f99c6d;--color-orange-500: #f88349;--color-orange-700: #d94e09;--color-orange-800: #a33b07;--color-orange-900: #6c2704;--color-orange-1000: #361402;--color-yellow-100: #fffaed;--color-yellow-200: #fef4db;--color-yellow-300: #fdeab7;--color-yellow-400: #fcdf92;--color-yellow-500: #fbd56e;--color-yellow-600: #faca4a;--color-yellow-700: #c8a23b;--color-yellow-800: #96792c;--color-yellow-900: #64511e;--color-yellow-1000: #32280f;--color-green-100: #ceffd8;--color-green-200: #9cffb2;--color-green-300: #6bfe8b;--color-green-400: #3afe65;--color-green-500: #09fe3e;--color-green-600: #01d42f;--color-green-700: #01aa26;--color-green-800: #017f1c;--color-green-900: #005513;--color-green-1000: #002a09;--color-purple-100: #e0ddf1;--color-purple-200: #c0bae4;--color-purple-300: #a198d6;--color-purple-400: #8276c9;--color-purple-500: #6353bb;--color-purple-600: #4d3fa0;--color-purple-700: #3d327d;--color-purple-800: #2c245b;--color-purple-900: #231d49;--color-purple-1000: #1a1637;--border-radius-button: 1.875rem;--border-radius-secondary-button: .625rem;--border-radius-card: 1.25rem;--border-radius-article: .875rem;--border-radius-outline: .5rem;--shadow-black-card: 0 1.25rem 2.5rem 0 rgba(0, 0, 0, .15);--shadow-hover-black-card: 0 1.875rem 3.75rem 0 rgba(0, 0, 0, .35);--shadow-black-button: 0 .625rem 1.25rem 0 rgba(0, 0, 0, .15);--shadow-hover-black-button: 0 .9375rem 1.875rem 0 rgba(0, 0, 0, .25);--shadow-hover-orange-button: 0 .9375rem 1.875rem 0 #fab592;--border-input: 1px solid rgba(96, 95, 96, .7);--border-input-disabled: 1px solid #d1d1d1;--border-input-error: 1px solid #ea3a3d;--border-input-focus: 1px solid #22205f}@font-face{font-family:Dax;src:url(./assets/fonts/dax-regular/dax-regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dax;src:url(./assets/fonts/Dax-Bold/Dax-Bold.otf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLight.otf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueUltraLightItalic.otf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThin.otf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueThinItalic.otf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLight.otf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueLightItalic.otf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueRoman.otf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueItalic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMedium.otf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueMediumItalic.otf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBold.otf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBoldItalic.otf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavy.otf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueHeavyItalic.otf) format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlack.otf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue;src:url(./assets/fonts/Helvetica-Neue/HelveticaNeueBlackItalic.otf) format("truetype");font-weight:900;font-style:italic;font-display:swap}*{scrollbar-width:thin;scrollbar-color:var(--color-main-orange-primary) #f1f1f1}*::-webkit-scrollbar{width:.5rem}*::-webkit-scrollbar-track{background:#f1f1f1;border-radius:.625rem}*::-webkit-scrollbar-thumb{background:var(--color-main-orange-primary);border-radius:.625rem}*::-webkit-scrollbar-thumb:hover{background:var(--color-main-orange-primary)}.my-toast{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:176.782%;border:none!important;box-shadow:var(--shadow-black-card);border-radius:var(--border-radius-article)!important}[data-sonner-toast][data-type=success]{background:linear-gradient(135deg,var(--color-main-positive-state) 0%,var(--color-green-200) 100%)!important;color:var(--color-main-white)!important}[data-sonner-toast][data-type=error]{background:linear-gradient(135deg,var(--color-main-warning-state) 0%,var(--color-red-300) 100%)!important;color:var(--color-main-white)!important}[data-sonner-toaster]{bottom:6rem!important}[data-sonner-toaster][data-position=bottom-center]{transform:translateY(-3rem)!important}
|
|
@@ -122,6 +122,14 @@ declare type BadgeVariant = 'primary' | 'secondary' | 'success' | 'warning' | 'd
|
|
|
122
122
|
|
|
123
123
|
export declare const baseFieldStyles: RuleSet<object>;
|
|
124
124
|
|
|
125
|
+
/**
|
|
126
|
+
* Base props shared across all form field components.
|
|
127
|
+
* Extends standard HTML input attributes while providing consistent sizing and state management.
|
|
128
|
+
* @param size - The size variant of the form field. Default is 'md'.
|
|
129
|
+
* @param hasError - When true, displays the field in an error state with error styling.
|
|
130
|
+
* @param disabled - When true, disables the field and prevents user interaction.
|
|
131
|
+
* @param className - Additional CSS class names for custom styling.
|
|
132
|
+
*/
|
|
125
133
|
export declare interface BaseFormFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
|
|
126
134
|
size?: FormFieldSize;
|
|
127
135
|
hasError?: boolean;
|
|
@@ -129,8 +137,39 @@ export declare interface BaseFormFieldProps extends Omit<InputHTMLAttributes<HTM
|
|
|
129
137
|
className?: string;
|
|
130
138
|
}
|
|
131
139
|
|
|
140
|
+
/**
|
|
141
|
+
* BaseInput is the foundational text input component with support for icons, multiple types, sizes, and states.
|
|
142
|
+
*
|
|
143
|
+
* Features:
|
|
144
|
+
* - Multiple sizes (xs, sm, md, lg) with appropriate text sizing
|
|
145
|
+
* - Icon support on both left and right sides
|
|
146
|
+
* - Various input types (text, email, password, number, tel, url)
|
|
147
|
+
* - Error and disabled states with visual feedback
|
|
148
|
+
* - Flushed variant for minimal styling
|
|
149
|
+
* - Full HTML input attributes support
|
|
150
|
+
*
|
|
151
|
+
* @example
|
|
152
|
+
* ```tsx
|
|
153
|
+
* <BaseInput
|
|
154
|
+
* placeholder="Enter email"
|
|
155
|
+
* type="email"
|
|
156
|
+
* leftIcon={RiMailLine}
|
|
157
|
+
* size="md"
|
|
158
|
+
* />
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
132
161
|
export declare const BaseInput: ForwardRefExoticComponent<BaseInputProps & RefAttributes<HTMLInputElement>>;
|
|
133
162
|
|
|
163
|
+
/**
|
|
164
|
+
* Props for the BaseInput component.
|
|
165
|
+
* Extends BaseFormFieldProps with input-specific properties and icon support.
|
|
166
|
+
* @param type - HTML input type determining keyboard and validation behavior. Default is 'text'.
|
|
167
|
+
* @param flushed - When true, applies a minimal style with only a bottom border. Default is false.
|
|
168
|
+
* @param leftIcon - Optional icon component displayed on the left side of the input.
|
|
169
|
+
* @param rightIcon - Optional icon component displayed on the right side of the input.
|
|
170
|
+
* @param iconSize - Size of the left and right icons ('tn', 'sm', 'md'). Default is 'md'.
|
|
171
|
+
* @param iconColor - Color of the icons. Default is 'currentColor'.
|
|
172
|
+
*/
|
|
134
173
|
export declare interface BaseInputProps extends Omit<BaseFormFieldProps, 'type'>, WithIconsProps {
|
|
135
174
|
type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';
|
|
136
175
|
flushed?: boolean;
|
|
@@ -727,8 +766,19 @@ export declare interface FormFieldProps extends BaseFormFieldProps, Omit<WithIco
|
|
|
727
766
|
className?: string;
|
|
728
767
|
}
|
|
729
768
|
|
|
769
|
+
/**
|
|
770
|
+
* Available sizes for form field components.
|
|
771
|
+
* - xs: Extra small size (30px height, 14px font).
|
|
772
|
+
* - sm: Small size (36px height, 14px font).
|
|
773
|
+
* - md: Medium size (42px height, 16px font) - Default for most inputs.
|
|
774
|
+
* - lg: Large size (48px height, 18px font).
|
|
775
|
+
*/
|
|
730
776
|
export declare type FormFieldSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
731
777
|
|
|
778
|
+
/**
|
|
779
|
+
* Interactive states for form fields.
|
|
780
|
+
* Used to describe the current visual and interactive state of a form element.
|
|
781
|
+
*/
|
|
732
782
|
export declare type FormFieldState = 'default' | 'hover' | 'focus' | 'error' | 'disabled';
|
|
733
783
|
|
|
734
784
|
/**
|
|
@@ -929,7 +979,7 @@ export declare const hasPermission: (userPermissions?: Permission[], requiredPer
|
|
|
929
979
|
* @returns JSX.Element The rendered header.
|
|
930
980
|
*/
|
|
931
981
|
export declare const Header: {
|
|
932
|
-
({ logo, user, hasNotifications, notificationCount, onNotificationClick, onUserProfileClick, onLogout, userMenuItems, }: HeaderProps): JSX.Element;
|
|
982
|
+
({ logo, user, hasNotifications, notificationCount, onNotificationClick, onUserProfileClick, onLogout, userMenuItems, className, }: HeaderProps): JSX.Element;
|
|
933
983
|
displayName: string;
|
|
934
984
|
};
|
|
935
985
|
|
|
@@ -954,6 +1004,7 @@ export declare interface HeaderProps {
|
|
|
954
1004
|
onUserProfileClick?: () => void;
|
|
955
1005
|
onLogout?: () => void;
|
|
956
1006
|
userMenuItems?: UserMenuItem[];
|
|
1007
|
+
className?: string;
|
|
957
1008
|
}
|
|
958
1009
|
|
|
959
1010
|
export declare const HeadingBold: IStyledComponentBase<"web", Substitute<DetailedHTMLProps<HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, {
|
|
@@ -1074,6 +1125,9 @@ export declare const isAllowedInputType: (t: string) => t is AllowedInputType;
|
|
|
1074
1125
|
|
|
1075
1126
|
export declare const Label: ({ children, htmlFor, className, required, disabled, size, ...props }: BaseLabelProps) => JSX.Element;
|
|
1076
1127
|
|
|
1128
|
+
/**
|
|
1129
|
+
* Available sizes for label components.
|
|
1130
|
+
*/
|
|
1077
1131
|
export declare type LabelSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
1078
1132
|
|
|
1079
1133
|
/**
|
|
@@ -1165,13 +1219,16 @@ export declare interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElemen
|
|
|
1165
1219
|
|
|
1166
1220
|
/**
|
|
1167
1221
|
* Defines the available sizes for the Link component.
|
|
1222
|
+
* Can be a preset size that maps to bodyTextStyles: xs(12), sm(14), md(16), lg(20), xl(24), 2xl(30)
|
|
1223
|
+
* Or a custom CSS size value (e.g., '1.5em', '18px', '1.2rem')
|
|
1168
1224
|
*/
|
|
1169
|
-
export declare type LinkSize = 'sm' | 'md' | 'lg';
|
|
1225
|
+
export declare type LinkSize = 'xs' | 'sm' | 'md' | 'lg' | (number & {});
|
|
1170
1226
|
|
|
1171
1227
|
/**
|
|
1172
1228
|
* CSS styles for each Link size.
|
|
1173
1229
|
*/
|
|
1174
1230
|
export declare const LinkSizeStyles: {
|
|
1231
|
+
xs: RuleSet<object>;
|
|
1175
1232
|
sm: RuleSet<object>;
|
|
1176
1233
|
md: RuleSet<object>;
|
|
1177
1234
|
lg: RuleSet<object>;
|
|
@@ -2063,9 +2120,29 @@ color?: string;
|
|
|
2063
2120
|
}>> & string;
|
|
2064
2121
|
export { Text_2 as Text }
|
|
2065
2122
|
|
|
2123
|
+
/**
|
|
2124
|
+
* TextAreaInput provides a flexible multi-line text input component.
|
|
2125
|
+
* Supports manual and automatic resizing, icons, and multiple size variants.
|
|
2126
|
+
* Use for comments, descriptions, messages, or any long-form text input.
|
|
2127
|
+
*/
|
|
2066
2128
|
export declare const TextAreaInput: ForwardRefExoticComponent<TextAreaInputProps & RefAttributes<HTMLTextAreaElement>>;
|
|
2067
2129
|
|
|
2068
|
-
|
|
2130
|
+
/**
|
|
2131
|
+
* Props for the TextAreaInput component.
|
|
2132
|
+
* A flexible multi-line text input with support for icons, auto-resize, and various sizing options.
|
|
2133
|
+
* @param size - The size variant of the textarea. Default is 'md'.
|
|
2134
|
+
* @param hasError - When true, displays the textarea in an error state with error styling.
|
|
2135
|
+
* @param disabled - When true, disables the textarea and prevents user interaction.
|
|
2136
|
+
* @param minRows - Minimum number of visible rows. Affects the initial height of the textarea. Default is 3.
|
|
2137
|
+
* @param maxRows - Maximum number of rows when autoResize is enabled. Limits the height expansion.
|
|
2138
|
+
* @param resize - Controls the manual resize behavior of the textarea. Default is 'vertical'.
|
|
2139
|
+
* @param autoResize - When true, automatically adjusts height based on content within minRows/maxRows constraints.
|
|
2140
|
+
* @param leftIcon - Optional icon component displayed on the left side of the textarea.
|
|
2141
|
+
* @param rightIcon - Optional icon component displayed on the right side of the textarea.
|
|
2142
|
+
* @param iconSize - Size of the left and right icons. Default is 'md'.
|
|
2143
|
+
* @param iconColor - Color of the icons. Default is 'currentColor'.
|
|
2144
|
+
*/
|
|
2145
|
+
export declare interface TextAreaInputProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size'>, WithIconsProps {
|
|
2069
2146
|
size?: FormFieldSize;
|
|
2070
2147
|
hasError?: boolean;
|
|
2071
2148
|
disabled?: boolean;
|
|
@@ -2176,13 +2253,13 @@ export declare interface UserAbilities {
|
|
|
2176
2253
|
}
|
|
2177
2254
|
|
|
2178
2255
|
/**
|
|
2179
|
-
*
|
|
2180
|
-
* Defines
|
|
2181
|
-
* @param id Unique identifier for the menu item
|
|
2182
|
-
* @param label Display text
|
|
2183
|
-
* @param icon Icon component
|
|
2184
|
-
* @param onClick
|
|
2185
|
-
* @param variant
|
|
2256
|
+
* Menu item configuration for the user profile dropdown.
|
|
2257
|
+
* Defines individual actions displayed in the dropdown menu.
|
|
2258
|
+
* @param id - Unique identifier for the menu item.
|
|
2259
|
+
* @param label - Display text shown in the menu.
|
|
2260
|
+
* @param icon - Icon component or ReactNode displayed next to the label.
|
|
2261
|
+
* @param onClick - Callback invoked when the menu item is clicked.
|
|
2262
|
+
* @param variant - Visual style variant. 'danger' applies warning colors (e.g., for logout/delete). Default is 'default'.
|
|
2186
2263
|
*/
|
|
2187
2264
|
export declare interface UserMenuItem {
|
|
2188
2265
|
id: string;
|
|
@@ -2203,10 +2280,10 @@ export declare const UserProfile: {
|
|
|
2203
2280
|
|
|
2204
2281
|
/**
|
|
2205
2282
|
* Props for the UserProfile component.
|
|
2206
|
-
* @param user
|
|
2207
|
-
* @param onProfileClick Optional
|
|
2208
|
-
* @param onLogout Optional
|
|
2209
|
-
* @param menuItems Optional array of custom menu items to display
|
|
2283
|
+
* @param user - User object containing id, name, email, and roles array. The first role's name is displayed.
|
|
2284
|
+
* @param onProfileClick - Optional callback invoked when the Profile menu item is selected.
|
|
2285
|
+
* @param onLogout - Optional callback invoked when the Logout menu item is selected.
|
|
2286
|
+
* @param menuItems - Optional array of custom menu items to display alongside the default Profile and Logout items.
|
|
2210
2287
|
*/
|
|
2211
2288
|
export declare interface UserProfileProps {
|
|
2212
2289
|
user: User;
|