@scalably/ui 0.4.4 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.cts +563 -83
- package/dist/index.d.ts +563 -83
- package/dist/index.esm.js +3 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +3 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import react__default, { ReactNode, HTMLAttributes, ForwardRefExoticComponent, SVGProps, RefAttributes, MemoExoticComponent } from 'react';
|
|
3
|
+
import { Point, Area } from 'react-easy-crop';
|
|
3
4
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
5
|
import * as date_fns from 'date-fns';
|
|
5
6
|
export { addMonths, endOfMonth, isSameDay, startOfMonth } from 'date-fns';
|
|
@@ -703,6 +704,9 @@ declare const Divider: react.ForwardRefExoticComponent<react.HTMLAttributes<HTML
|
|
|
703
704
|
colorClassName?: string;
|
|
704
705
|
} & react.RefAttributes<HTMLDivElement>>;
|
|
705
706
|
|
|
707
|
+
/**
|
|
708
|
+
* File upload component types and interfaces.
|
|
709
|
+
*/
|
|
706
710
|
type FileUploadVariant = "default" | "dragOver" | "error" | "disabled";
|
|
707
711
|
type FileUploadSize = "sm" | "md" | "lg";
|
|
708
712
|
type FileUploadIconType = "file" | "image" | "video";
|
|
@@ -736,6 +740,24 @@ interface FileUploadProps {
|
|
|
736
740
|
onUploadSuccess?: (files: File[]) => void;
|
|
737
741
|
onUploadError?: (error: FileUploadError) => void;
|
|
738
742
|
onFileRemove?: (fileId: string) => void;
|
|
743
|
+
/**
|
|
744
|
+
* Accepted file types. Can be:
|
|
745
|
+
* - MIME types (e.g., 'image/jpeg', 'image/png') - **Recommended**
|
|
746
|
+
* - MIME type wildcards (e.g., 'image/*', 'video/*')
|
|
747
|
+
* - File extensions (e.g., '.jpg', '.png') - Will be converted to MIME types internally
|
|
748
|
+
*
|
|
749
|
+
* @example
|
|
750
|
+
* ```tsx
|
|
751
|
+
* // MIME types (recommended)
|
|
752
|
+
* acceptedFileTypes={['image/jpeg', 'image/png', 'image/gif']}
|
|
753
|
+
*
|
|
754
|
+
* // With wildcards
|
|
755
|
+
* acceptedFileTypes={['image/*', 'video/*']}
|
|
756
|
+
*
|
|
757
|
+
* // Extensions (supported but will be normalized to MIME types)
|
|
758
|
+
* acceptedFileTypes={['.jpg', '.png', '.gif']}
|
|
759
|
+
* ```
|
|
760
|
+
*/
|
|
739
761
|
acceptedFileTypes?: string[];
|
|
740
762
|
maxFileSize?: number;
|
|
741
763
|
maxFiles?: number;
|
|
@@ -746,7 +768,78 @@ interface FileUploadProps {
|
|
|
746
768
|
/** Optional helper text displayed under the dropzone when no error */
|
|
747
769
|
helperText?: string;
|
|
748
770
|
variant?: FileUploadVariant;
|
|
771
|
+
/**
|
|
772
|
+
* Size variant (optional). If not provided, the component uses full width
|
|
773
|
+
* with a default min-height of 160px. For custom sizing, use `className` instead.
|
|
774
|
+
*
|
|
775
|
+
* **Best Practice:** Omit `size` and control dimensions via `className` for
|
|
776
|
+
* maximum flexibility. The component automatically adjusts icon sizes, text,
|
|
777
|
+
* and spacing based on detected dimensions.
|
|
778
|
+
*/
|
|
749
779
|
size?: FileUploadSize;
|
|
780
|
+
/**
|
|
781
|
+
* Custom CSS classes for styling the upload zone.
|
|
782
|
+
*
|
|
783
|
+
* **Default Behavior:**
|
|
784
|
+
* - Full width (`sui-w-full`)
|
|
785
|
+
* - Default min-height: 160px (best practice)
|
|
786
|
+
* - Default padding: 24px (1.5rem)
|
|
787
|
+
* - Icon size: 24px (auto-scales based on dimensions)
|
|
788
|
+
*
|
|
789
|
+
* **Custom Sizing:**
|
|
790
|
+
* Control dimensions using Tailwind classes. The component automatically adjusts
|
|
791
|
+
* icon sizes, text sizes, and spacing to fit your layout:
|
|
792
|
+
* - `sui-min-h-[124px]` - Set minimum height
|
|
793
|
+
* - `sui-max-w-[200px]` - Set maximum width
|
|
794
|
+
* - `sui-w-full` - Full width (default)
|
|
795
|
+
*
|
|
796
|
+
* **Responsive Sizing:**
|
|
797
|
+
* When custom dimensions are detected from `className`, the component automatically:
|
|
798
|
+
* - Scales icon size based on container dimensions:
|
|
799
|
+
* - ≤100px: 16px icon
|
|
800
|
+
* - ≤150px: 20px icon
|
|
801
|
+
* - ≤200px: 24px icon
|
|
802
|
+
* - >200px: 28px icon
|
|
803
|
+
* - Adjusts text sizes for compact layouts
|
|
804
|
+
* - Optimizes spacing for smaller containers
|
|
805
|
+
*
|
|
806
|
+
* **Best Practice Examples:**
|
|
807
|
+
*
|
|
808
|
+
* @example
|
|
809
|
+
* ```tsx
|
|
810
|
+
* // Full width, default height (160px) - recommended
|
|
811
|
+
* <FileUpload onFilesChange={setFiles} />
|
|
812
|
+
*
|
|
813
|
+
* // Full width, custom height
|
|
814
|
+
* <FileUpload
|
|
815
|
+
* className="sui-min-h-[200px]"
|
|
816
|
+
* onFilesChange={setFiles}
|
|
817
|
+
* />
|
|
818
|
+
*
|
|
819
|
+
* // Compact custom size (200x124) - icon and text auto-scale
|
|
820
|
+
* <FileUpload
|
|
821
|
+
* className="sui-min-h-[124px] sui-max-w-[200px]"
|
|
822
|
+
* onFilesChange={setFiles}
|
|
823
|
+
* />
|
|
824
|
+
*
|
|
825
|
+
* // Square crop (1:1) with matching zone size
|
|
826
|
+
* <FileUpload
|
|
827
|
+
* enableImageCrop
|
|
828
|
+
* imageCropAspect={1}
|
|
829
|
+
* className="sui-min-h-[300px] sui-max-w-[300px]"
|
|
830
|
+
* />
|
|
831
|
+
*
|
|
832
|
+
* // Widescreen crop (16:9) with matching zone size
|
|
833
|
+
* <FileUpload
|
|
834
|
+
* enableImageCrop
|
|
835
|
+
* imageCropAspect={16 / 9}
|
|
836
|
+
* className="sui-min-h-[200px] sui-max-w-[356px]"
|
|
837
|
+
* />
|
|
838
|
+
* ```
|
|
839
|
+
*
|
|
840
|
+
* After cropping, the preview will render at exactly the zone dimensions,
|
|
841
|
+
* ensuring the cropped image fills the zone perfectly.
|
|
842
|
+
*/
|
|
750
843
|
className?: string;
|
|
751
844
|
iconType?: FileUploadIconType;
|
|
752
845
|
uploadIcon?: React.ReactNode;
|
|
@@ -775,18 +868,178 @@ interface FileUploadProps {
|
|
|
775
868
|
* Provides the Blob (image/jpeg) and a data URL for immediate preview.
|
|
776
869
|
*/
|
|
777
870
|
onThumbnailCapture?: (thumbnail: Blob, dataUrl: string, file: FileUploadFile) => void;
|
|
871
|
+
/** Enable image crop UI via modal when an image file is selected. */
|
|
872
|
+
enableImageCrop?: boolean;
|
|
873
|
+
/**
|
|
874
|
+
* Aspect ratio constraint for image crop (width/height), undefined = free crop.
|
|
875
|
+
* Common values: 1 (square), 16/9 (widescreen), 4/3 (standard).
|
|
876
|
+
*
|
|
877
|
+
* **Tip:** To match the upload zone size to the crop aspect ratio, use `className`
|
|
878
|
+
* with matching dimensions. For example, with `imageCropAspect={1}` (square),
|
|
879
|
+
* use `className="sui-min-h-[300px] sui-max-w-[300px]"` to create a 300×300px zone.
|
|
880
|
+
* The preview will then render at exactly that size after cropping.
|
|
881
|
+
*
|
|
882
|
+
* @example
|
|
883
|
+
* ```tsx
|
|
884
|
+
* // Square crop with matching zone
|
|
885
|
+
* <FileUpload
|
|
886
|
+
* enableImageCrop
|
|
887
|
+
* imageCropAspect={1}
|
|
888
|
+
* className="sui-min-h-[300px] sui-max-w-[300px]"
|
|
889
|
+
* />
|
|
890
|
+
* ```
|
|
891
|
+
*/
|
|
892
|
+
imageCropAspect?: number;
|
|
893
|
+
/**
|
|
894
|
+
* Called when an image is cropped.
|
|
895
|
+
* Provides the cropped Blob (image/jpeg) and a data URL for immediate preview.
|
|
896
|
+
*
|
|
897
|
+
* **Note:** When using custom zone sizing with `className`, update the file's
|
|
898
|
+
* `preview` property with the `dataUrl` to ensure the preview renders at the
|
|
899
|
+
* correct size within the zone.
|
|
900
|
+
*
|
|
901
|
+
* @example
|
|
902
|
+
* ```tsx
|
|
903
|
+
* <FileUpload
|
|
904
|
+
* enableImageCrop
|
|
905
|
+
* imageCropAspect={1}
|
|
906
|
+
* className="sui-min-h-[300px] sui-max-w-[300px]"
|
|
907
|
+
* onImageCrop={(blob, dataUrl, file) => {
|
|
908
|
+
* // Update the file preview to show the cropped image
|
|
909
|
+
* setFiles(prev =>
|
|
910
|
+
* prev.map(f =>
|
|
911
|
+
* f.id === file.id ? { ...f, preview: dataUrl } : f
|
|
912
|
+
* )
|
|
913
|
+
* );
|
|
914
|
+
* }}
|
|
915
|
+
* />
|
|
916
|
+
* ```
|
|
917
|
+
*/
|
|
918
|
+
onImageCrop?: (croppedBlob: Blob, dataUrl: string, file: FileUploadFile) => void;
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
declare const FileUpload: react.ForwardRefExoticComponent<FileUploadProps & react.RefAttributes<HTMLDivElement>>;
|
|
922
|
+
|
|
923
|
+
interface ImageCropProps {
|
|
924
|
+
/** Image source (data URL or object URL) */
|
|
925
|
+
imageSrc: string;
|
|
926
|
+
/** Aspect ratio (width/height), undefined = free */
|
|
927
|
+
aspect?: number;
|
|
928
|
+
/** Current crop position */
|
|
929
|
+
crop: Point;
|
|
930
|
+
/** Current zoom level */
|
|
931
|
+
zoom: number;
|
|
932
|
+
/** Current rotation in degrees */
|
|
933
|
+
rotation: number;
|
|
934
|
+
/** Called when crop position changes (on drag) */
|
|
935
|
+
onCropChange: (crop: Point) => void;
|
|
936
|
+
/** Called when zoom changes */
|
|
937
|
+
onZoomChange: (zoom: number) => void;
|
|
938
|
+
/** Called when rotation changes */
|
|
939
|
+
onRotationChange: (rotation: number) => void;
|
|
940
|
+
/** Called when crop completes - stores coordinates only (fires on drag) */
|
|
941
|
+
onCropComplete: (croppedArea: Area, croppedAreaPixels: Area) => void;
|
|
942
|
+
/** Crop shape */
|
|
943
|
+
cropShape?: "rect" | "round";
|
|
944
|
+
/** Show grid overlay */
|
|
945
|
+
showGrid?: boolean;
|
|
946
|
+
/** Minimum zoom level */
|
|
947
|
+
minZoom?: number;
|
|
948
|
+
/** Maximum zoom level */
|
|
949
|
+
maxZoom?: number;
|
|
950
|
+
/** Accessibility label */
|
|
951
|
+
"aria-label"?: string;
|
|
952
|
+
/** Additional class name */
|
|
953
|
+
className?: string;
|
|
954
|
+
}
|
|
955
|
+
/**
|
|
956
|
+
* Image crop component wrapping react-easy-crop with controls for zoom, rotation, and crop area.
|
|
957
|
+
* This component only manages the UI and stores crop coordinates. Blob generation happens
|
|
958
|
+
* separately when the user confirms the crop.
|
|
959
|
+
*/
|
|
960
|
+
declare const ImageCrop: react.ForwardRefExoticComponent<ImageCropProps & react.RefAttributes<HTMLDivElement>>;
|
|
961
|
+
|
|
962
|
+
interface ImageCropModalProps {
|
|
963
|
+
/** Controls visibility of the modal */
|
|
964
|
+
isOpen: boolean;
|
|
965
|
+
/** Called when the modal should close */
|
|
966
|
+
onClose: () => void;
|
|
967
|
+
/** Image source (File object URL or data URL) */
|
|
968
|
+
imageSrc: string;
|
|
969
|
+
/** Aspect ratio constraint (width/height), undefined = free */
|
|
970
|
+
aspect?: number;
|
|
971
|
+
/** Called when crop is confirmed with final result */
|
|
972
|
+
onConfirm: (croppedBlob: Blob, dataUrl: string) => void;
|
|
973
|
+
/** Crop shape */
|
|
974
|
+
cropShape?: "rect" | "round";
|
|
975
|
+
/** Show grid overlay */
|
|
976
|
+
showGrid?: boolean;
|
|
977
|
+
/** Customizable content */
|
|
978
|
+
title?: string;
|
|
979
|
+
cancelButtonText?: string;
|
|
980
|
+
saveButtonText?: string;
|
|
778
981
|
}
|
|
779
982
|
/**
|
|
780
|
-
*
|
|
781
|
-
*
|
|
983
|
+
* Modal component for cropping images with zoom, rotation, and aspect ratio controls.
|
|
984
|
+
* Manages all crop state and generates the final Blob only when the user clicks "Save".
|
|
782
985
|
*/
|
|
986
|
+
declare const ImageCropModal: {
|
|
987
|
+
({ isOpen, onClose, imageSrc, aspect, onConfirm, cropShape, showGrid, title, cancelButtonText, saveButtonText, }: ImageCropModalProps): react_jsx_runtime.JSX.Element | null;
|
|
988
|
+
displayName: string;
|
|
989
|
+
};
|
|
990
|
+
|
|
783
991
|
/**
|
|
784
|
-
*
|
|
785
|
-
* - The component does not perform uploads; the parent owns upload lifecycle.
|
|
786
|
-
* - To show progress or uploading state, manage `files` as a controlled prop and
|
|
787
|
-
* update each item's `status` ("uploading" | "success" | "error") and `progress`.
|
|
992
|
+
* Options for cropping an image
|
|
788
993
|
*/
|
|
789
|
-
|
|
994
|
+
interface GetCroppedImgOptions {
|
|
995
|
+
/** Image source (data URL, object URL, or remote URL) */
|
|
996
|
+
imageSrc: string;
|
|
997
|
+
/** Crop area in pixels from react-easy-crop's onCropComplete */
|
|
998
|
+
pixelCrop: Area;
|
|
999
|
+
/** Rotation in degrees (default: 0) */
|
|
1000
|
+
rotation?: number;
|
|
1001
|
+
/** Flip configuration */
|
|
1002
|
+
flip?: {
|
|
1003
|
+
horizontal: boolean;
|
|
1004
|
+
vertical: boolean;
|
|
1005
|
+
};
|
|
1006
|
+
/** Output image format (default: 'image/jpeg') */
|
|
1007
|
+
outputFormat?: "image/jpeg" | "image/png";
|
|
1008
|
+
/** Output quality for JPEG (0-1, default: 0.9) */
|
|
1009
|
+
outputQuality?: number;
|
|
1010
|
+
}
|
|
1011
|
+
/**
|
|
1012
|
+
* Result of image cropping operation
|
|
1013
|
+
*/
|
|
1014
|
+
interface CroppedImageResult {
|
|
1015
|
+
/** Cropped image as Blob */
|
|
1016
|
+
blob: Blob;
|
|
1017
|
+
/** Cropped image as data URL for immediate preview */
|
|
1018
|
+
dataUrl: string;
|
|
1019
|
+
}
|
|
1020
|
+
/**
|
|
1021
|
+
* Crops an image based on the provided crop area and applies rotation/flip transformations.
|
|
1022
|
+
* Returns both a Blob (for upload) and a data URL (for immediate preview).
|
|
1023
|
+
*
|
|
1024
|
+
* @param options - Cropping options including image source, crop area, rotation, and output format
|
|
1025
|
+
* @returns Promise resolving to cropped image result or null if operation fails
|
|
1026
|
+
*
|
|
1027
|
+
* @example
|
|
1028
|
+
* ```tsx
|
|
1029
|
+
* const result = await getCroppedImg({
|
|
1030
|
+
* imageSrc: imageUrl,
|
|
1031
|
+
* pixelCrop: { x: 100, y: 100, width: 300, height: 300 },
|
|
1032
|
+
* rotation: 90,
|
|
1033
|
+
* outputFormat: 'image/jpeg',
|
|
1034
|
+
* outputQuality: 0.9
|
|
1035
|
+
* });
|
|
1036
|
+
* if (result) {
|
|
1037
|
+
* // Use result.blob for upload
|
|
1038
|
+
* // Use result.dataUrl for preview
|
|
1039
|
+
* }
|
|
1040
|
+
* ```
|
|
1041
|
+
*/
|
|
1042
|
+
declare function getCroppedImg(options: GetCroppedImgOptions): Promise<CroppedImageResult | null>;
|
|
790
1043
|
|
|
791
1044
|
type FormBaseProps = Omit<React.FormHTMLAttributes<HTMLFormElement>, "onSubmit">;
|
|
792
1045
|
interface FormProps extends FormBaseProps {
|
|
@@ -1086,6 +1339,7 @@ interface SelectProps extends SelectBaseProps {
|
|
|
1086
1339
|
onSearch?: (searchTerm: string) => void;
|
|
1087
1340
|
clearable?: boolean;
|
|
1088
1341
|
maxHeight?: number;
|
|
1342
|
+
dropdownClassName?: string;
|
|
1089
1343
|
renderValue?: (props: {
|
|
1090
1344
|
selectedValue: string | string[];
|
|
1091
1345
|
selectedOption: SelectOption | null;
|
|
@@ -1912,16 +2166,6 @@ interface LoadingScreenProps extends Omit<react__default.HTMLAttributes<HTMLDivE
|
|
|
1912
2166
|
* Optional loading message displayed below the logo.
|
|
1913
2167
|
*/
|
|
1914
2168
|
message?: string;
|
|
1915
|
-
/**
|
|
1916
|
-
* Backdrop blur amount. Set to 0 to disable blur.
|
|
1917
|
-
* @default 8
|
|
1918
|
-
*/
|
|
1919
|
-
backdropBlur?: number;
|
|
1920
|
-
/**
|
|
1921
|
-
* Backdrop opacity (0-1).
|
|
1922
|
-
* @default 0.8
|
|
1923
|
-
*/
|
|
1924
|
-
backdropOpacity?: number;
|
|
1925
2169
|
/**
|
|
1926
2170
|
* Logo size in pixels. Responsive: smaller on mobile, larger on desktop.
|
|
1927
2171
|
* @default { mobile: 64, desktop: 80 }
|
|
@@ -1940,7 +2184,7 @@ interface LoadingScreenProps extends Omit<react__default.HTMLAttributes<HTMLDivE
|
|
|
1940
2184
|
* Full-screen loading overlay component with animated Scalably logo.
|
|
1941
2185
|
*
|
|
1942
2186
|
* Features:
|
|
1943
|
-
* - Full-screen overlay
|
|
2187
|
+
* - Full-screen transparent overlay
|
|
1944
2188
|
* - Animated logo with pulse and rotate combination
|
|
1945
2189
|
* - Optional loading message
|
|
1946
2190
|
* - Full accessibility support
|
|
@@ -1955,8 +2199,8 @@ interface LoadingScreenProps extends Omit<react__default.HTMLAttributes<HTMLDivE
|
|
|
1955
2199
|
* // With message
|
|
1956
2200
|
* <LoadingScreen message="Loading your data..." />
|
|
1957
2201
|
*
|
|
1958
|
-
* //
|
|
1959
|
-
* <LoadingScreen
|
|
2202
|
+
* // With backdrop blur via className
|
|
2203
|
+
* <LoadingScreen className="backdrop-blur-md" />
|
|
1960
2204
|
*
|
|
1961
2205
|
* // Custom size
|
|
1962
2206
|
* <LoadingScreen size={{ mobile: 48, desktop: 96 }} />
|
|
@@ -1964,6 +2208,53 @@ interface LoadingScreenProps extends Omit<react__default.HTMLAttributes<HTMLDivE
|
|
|
1964
2208
|
*/
|
|
1965
2209
|
declare const LoadingScreen: react__default.ForwardRefExoticComponent<LoadingScreenProps & react__default.RefAttributes<HTMLDivElement>>;
|
|
1966
2210
|
|
|
2211
|
+
interface LoadingSpinnerProps extends Omit<react__default.HTMLAttributes<HTMLDivElement>, "children"> {
|
|
2212
|
+
/**
|
|
2213
|
+
* Size of the spinner in pixels.
|
|
2214
|
+
* @default 24
|
|
2215
|
+
*/
|
|
2216
|
+
size?: number;
|
|
2217
|
+
/**
|
|
2218
|
+
* Accessible label for screen readers.
|
|
2219
|
+
* @default "Loading"
|
|
2220
|
+
*/
|
|
2221
|
+
"aria-label"?: string;
|
|
2222
|
+
}
|
|
2223
|
+
/**
|
|
2224
|
+
* Inline loading spinner component with animated Scalably logo.
|
|
2225
|
+
*
|
|
2226
|
+
* Features:
|
|
2227
|
+
* - Compact spinner for inline use (buttons, cards, tables, etc.)
|
|
2228
|
+
* - Animated logo with pulse and rotate combination
|
|
2229
|
+
* - Full accessibility support
|
|
2230
|
+
* - Respects reduced motion preferences
|
|
2231
|
+
* - Customizable size
|
|
2232
|
+
*
|
|
2233
|
+
* @example
|
|
2234
|
+
* ```tsx
|
|
2235
|
+
* // Basic usage
|
|
2236
|
+
* <LoadingSpinner />
|
|
2237
|
+
*
|
|
2238
|
+
* // Custom size
|
|
2239
|
+
* <LoadingSpinner size={32} />
|
|
2240
|
+
*
|
|
2241
|
+
* // In a button
|
|
2242
|
+
* <Button disabled>
|
|
2243
|
+
* <LoadingSpinner size={16} className="sui-mr-2" />
|
|
2244
|
+
* Loading...
|
|
2245
|
+
* </Button>
|
|
2246
|
+
*
|
|
2247
|
+
* // In a card
|
|
2248
|
+
* <Card>
|
|
2249
|
+
* <div className="sui-flex sui-items-center sui-gap-2">
|
|
2250
|
+
* <LoadingSpinner size={20} />
|
|
2251
|
+
* <span>Processing...</span>
|
|
2252
|
+
* </div>
|
|
2253
|
+
* </Card>
|
|
2254
|
+
* ```
|
|
2255
|
+
*/
|
|
2256
|
+
declare const LoadingSpinner: react__default.ForwardRefExoticComponent<LoadingSpinnerProps & react__default.RefAttributes<HTMLDivElement>>;
|
|
2257
|
+
|
|
1967
2258
|
interface WelcomeAssetProps extends Omit<SVGProps<SVGSVGElement>, "ref"> {
|
|
1968
2259
|
/**
|
|
1969
2260
|
* Optional square dimension override; falls back to intrinsic size.
|
|
@@ -2116,6 +2407,15 @@ interface RichTextEditorProps {
|
|
|
2116
2407
|
max: number;
|
|
2117
2408
|
current: number;
|
|
2118
2409
|
}) => void;
|
|
2410
|
+
/**
|
|
2411
|
+
* Controls when Tiptap renders the editor content.
|
|
2412
|
+
*
|
|
2413
|
+
* - Set to `false` when using SSR (e.g., Next.js) to prevent hydration mismatches.
|
|
2414
|
+
* - Set to `true` or leave undefined for client-side only rendering.
|
|
2415
|
+
*
|
|
2416
|
+
* @default undefined (Tiptap auto-detects, but you should explicitly set `false` for SSR)
|
|
2417
|
+
*/
|
|
2418
|
+
immediatelyRender?: boolean;
|
|
2119
2419
|
}
|
|
2120
2420
|
/**
|
|
2121
2421
|
* RichTextEditor - Controlled rich text editor built on top of Tiptap.
|
|
@@ -2138,7 +2438,12 @@ interface RichTextEditorProps {
|
|
|
2138
2438
|
*
|
|
2139
2439
|
* return (
|
|
2140
2440
|
* <div>
|
|
2141
|
-
*
|
|
2441
|
+
* {/* For SSR (Next.js, etc.), set immediatelyRender={false} *\/}
|
|
2442
|
+
* <RichTextEditor
|
|
2443
|
+
* value={content}
|
|
2444
|
+
* onChange={setContent}
|
|
2445
|
+
* immediatelyRender={false}
|
|
2446
|
+
* />
|
|
2142
2447
|
* <RichTextViewer content={content} />
|
|
2143
2448
|
* </div>
|
|
2144
2449
|
* );
|
|
@@ -2148,7 +2453,7 @@ interface RichTextEditorProps {
|
|
|
2148
2453
|
* @see RichTextViewer - Read-only viewer component for displaying rich text content
|
|
2149
2454
|
*/
|
|
2150
2455
|
declare const RichTextEditor: {
|
|
2151
|
-
({ value, onChange, label, error, helperText, placeholder, minHeight, simple, disabled, "data-testid": dataTestId, containerClassName, onImageUpload, imageSourceMode, maxCharacters, onMaxLengthExceed, }: RichTextEditorProps): react_jsx_runtime.JSX.Element;
|
|
2456
|
+
({ value, onChange, label, error, helperText, placeholder, minHeight, simple, disabled, "data-testid": dataTestId, containerClassName, onImageUpload, imageSourceMode, maxCharacters, onMaxLengthExceed, immediatelyRender, }: RichTextEditorProps): react_jsx_runtime.JSX.Element;
|
|
2152
2457
|
displayName: string;
|
|
2153
2458
|
};
|
|
2154
2459
|
|
|
@@ -2327,6 +2632,102 @@ declare const zodErrorsToSummary: (errors: Record<string, FieldErrorLike>) => {
|
|
|
2327
2632
|
message: string;
|
|
2328
2633
|
}[];
|
|
2329
2634
|
|
|
2635
|
+
type BasicFileValidationErrorType = "fileType" | "fileSize";
|
|
2636
|
+
interface BasicFileValidationError {
|
|
2637
|
+
type: BasicFileValidationErrorType;
|
|
2638
|
+
message: string;
|
|
2639
|
+
}
|
|
2640
|
+
/**
|
|
2641
|
+
* Converts a file extension (e.g., '.jpg') to its corresponding MIME type (e.g., 'image/jpeg').
|
|
2642
|
+
* Returns null if the extension is not recognized.
|
|
2643
|
+
*
|
|
2644
|
+
* @param extension - File extension with or without leading dot (e.g., '.jpg' or 'jpg')
|
|
2645
|
+
* @returns The corresponding MIME type or null if not found
|
|
2646
|
+
*
|
|
2647
|
+
* @example
|
|
2648
|
+
* ```ts
|
|
2649
|
+
* extensionToMimeType('.jpg') // 'image/jpeg'
|
|
2650
|
+
* extensionToMimeType('png') // 'image/png'
|
|
2651
|
+
* extensionToMimeType('.xyz') // null
|
|
2652
|
+
* ```
|
|
2653
|
+
*/
|
|
2654
|
+
declare function extensionToMimeType(extension: string): string | null;
|
|
2655
|
+
/**
|
|
2656
|
+
* Converts a MIME type to a user-friendly display name (extension format).
|
|
2657
|
+
* Returns the extension name in uppercase (e.g., 'image/jpeg' → 'JPEG').
|
|
2658
|
+
* For wildcards, returns a category name (e.g., 'image/*' → 'All images').
|
|
2659
|
+
*
|
|
2660
|
+
* @param mimeType - MIME type (e.g., 'image/jpeg') or wildcard (e.g., 'image/*')
|
|
2661
|
+
* @returns User-friendly display name
|
|
2662
|
+
*
|
|
2663
|
+
* @example
|
|
2664
|
+
* ```ts
|
|
2665
|
+
* mimeTypeToDisplayName('image/jpeg') // 'JPEG'
|
|
2666
|
+
* mimeTypeToDisplayName('image/*') // 'All images'
|
|
2667
|
+
* mimeTypeToDisplayName('video/mp4') // 'MP4'
|
|
2668
|
+
* ```
|
|
2669
|
+
*/
|
|
2670
|
+
declare function mimeTypeToDisplayName(mimeType: string): string;
|
|
2671
|
+
/**
|
|
2672
|
+
* Converts an array of MIME types to a user-friendly display string.
|
|
2673
|
+
* Shows extensions in uppercase (e.g., 'JPEG, PNG, GIF') or category names for wildcards.
|
|
2674
|
+
*
|
|
2675
|
+
* @param mimeTypes - Array of MIME types
|
|
2676
|
+
* @returns User-friendly comma-separated string
|
|
2677
|
+
*
|
|
2678
|
+
* @example
|
|
2679
|
+
* ```ts
|
|
2680
|
+
* formatAcceptedFileTypes(['image/jpeg', 'image/png', 'image/gif'])
|
|
2681
|
+
* // 'JPEG, PNG, GIF'
|
|
2682
|
+
*
|
|
2683
|
+
* formatAcceptedFileTypes(['image/*', 'video/*'])
|
|
2684
|
+
* // 'All images, All videos'
|
|
2685
|
+
* ```
|
|
2686
|
+
*/
|
|
2687
|
+
declare function formatAcceptedFileTypes(mimeTypes: string[]): string;
|
|
2688
|
+
/**
|
|
2689
|
+
* Normalizes an array of accepted file types to MIME types only.
|
|
2690
|
+
* Converts file extensions (e.g., '.jpg') to MIME types (e.g., 'image/jpeg').
|
|
2691
|
+
* MIME types and wildcards (e.g., 'image/*') are passed through unchanged.
|
|
2692
|
+
*
|
|
2693
|
+
* @param acceptedFileTypes - Array of file types (extensions or MIME types)
|
|
2694
|
+
* @returns Array of normalized MIME types
|
|
2695
|
+
*
|
|
2696
|
+
* @example
|
|
2697
|
+
* ```ts
|
|
2698
|
+
* normalizeAcceptedFileTypes(['.jpg', 'image/png', 'image/*'])
|
|
2699
|
+
* // ['image/jpeg', 'image/png', 'image/*']
|
|
2700
|
+
* ```
|
|
2701
|
+
*/
|
|
2702
|
+
declare function normalizeAcceptedFileTypes(acceptedFileTypes: string[]): string[];
|
|
2703
|
+
/**
|
|
2704
|
+
* Validate a File against accepted MIME types and max size.
|
|
2705
|
+
* Returns null when valid, or a BasicFileValidationError when invalid.
|
|
2706
|
+
*
|
|
2707
|
+
* **Note:** This function only accepts MIME types (e.g., 'image/jpeg', 'image/png').
|
|
2708
|
+
* Use `normalizeAcceptedFileTypes()` to convert extensions to MIME types before calling this function.
|
|
2709
|
+
*
|
|
2710
|
+
* @param file - The file to validate
|
|
2711
|
+
* @param acceptedMimeTypes - Array of accepted MIME types. Supports:
|
|
2712
|
+
* - Exact MIME types (e.g., 'image/png', 'image/jpeg')
|
|
2713
|
+
* - MIME type wildcards (e.g., 'image/*', 'video/*')
|
|
2714
|
+
* @param maxFileSize - Maximum file size in bytes
|
|
2715
|
+
*
|
|
2716
|
+
* @example
|
|
2717
|
+
* ```ts
|
|
2718
|
+
* // MIME types
|
|
2719
|
+
* validateFileTypeAndSize(file, ['image/png', 'image/jpeg'], 5 * 1024 * 1024);
|
|
2720
|
+
*
|
|
2721
|
+
* // With wildcards
|
|
2722
|
+
* validateFileTypeAndSize(file, ['image/*', 'video/*'], 5 * 1024 * 1024);
|
|
2723
|
+
*
|
|
2724
|
+
* // Converting extensions to MIME types first
|
|
2725
|
+
* const mimeTypes = normalizeAcceptedFileTypes(['.jpg', '.png']);
|
|
2726
|
+
* validateFileTypeAndSize(file, mimeTypes, 5 * 1024 * 1024);
|
|
2727
|
+
* ```
|
|
2728
|
+
*/
|
|
2729
|
+
declare function validateFileTypeAndSize(file: File, acceptedMimeTypes: string[], maxFileSize: number): BasicFileValidationError | null;
|
|
2730
|
+
|
|
2330
2731
|
/**
|
|
2331
2732
|
* Props for the CalendarIcon component
|
|
2332
2733
|
*/
|
|
@@ -2335,8 +2736,6 @@ interface CalendarIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2335
2736
|
size?: number;
|
|
2336
2737
|
/** Additional CSS classes to apply to the icon */
|
|
2337
2738
|
className?: string;
|
|
2338
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2339
|
-
strokeWidth?: number;
|
|
2340
2739
|
}
|
|
2341
2740
|
/**
|
|
2342
2741
|
* Calendar icon component - displays a calendar with date indicators.
|
|
@@ -2383,8 +2782,6 @@ interface CheckIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2383
2782
|
size?: number;
|
|
2384
2783
|
/** Additional CSS classes to apply to the icon */
|
|
2385
2784
|
className?: string;
|
|
2386
|
-
/** Stroke width of the icon in pixels. Defaults to 2.2. */
|
|
2387
|
-
strokeWidth?: number;
|
|
2388
2785
|
}
|
|
2389
2786
|
/**
|
|
2390
2787
|
* Check icon component - displays a checkmark in a green gradient circle.
|
|
@@ -2408,8 +2805,6 @@ interface CloseIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2408
2805
|
size?: number;
|
|
2409
2806
|
/** Additional CSS classes to apply to the icon */
|
|
2410
2807
|
className?: string;
|
|
2411
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2412
|
-
strokeWidth?: number;
|
|
2413
2808
|
}
|
|
2414
2809
|
/**
|
|
2415
2810
|
* Close icon component - displays a cross icon.
|
|
@@ -2431,13 +2826,23 @@ interface CopyIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2431
2826
|
}
|
|
2432
2827
|
declare const CopyIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<CopyIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2433
2828
|
|
|
2829
|
+
interface CropIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2830
|
+
size?: number;
|
|
2831
|
+
className?: string;
|
|
2832
|
+
}
|
|
2833
|
+
declare const CropIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<CropIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2834
|
+
|
|
2835
|
+
interface DeleteIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2836
|
+
size?: number;
|
|
2837
|
+
className?: string;
|
|
2838
|
+
}
|
|
2839
|
+
declare const DeleteIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<DeleteIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2840
|
+
|
|
2434
2841
|
interface DropdownIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2435
2842
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2436
2843
|
size?: number;
|
|
2437
2844
|
/** Additional CSS classes to apply to the icon */
|
|
2438
2845
|
className?: string;
|
|
2439
|
-
/** Stroke width of the icon in pixels. Defaults to 2. */
|
|
2440
|
-
strokeWidth?: number;
|
|
2441
2846
|
}
|
|
2442
2847
|
/**
|
|
2443
2848
|
* Dropdown icon component - displays a down arrow icon.
|
|
@@ -2458,8 +2863,6 @@ interface DropUpIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2458
2863
|
size?: number;
|
|
2459
2864
|
/** Additional CSS classes to apply to the icon */
|
|
2460
2865
|
className?: string;
|
|
2461
|
-
/** Stroke width of the icon in pixels. Defaults to 2. */
|
|
2462
|
-
strokeWidth?: number;
|
|
2463
2866
|
}
|
|
2464
2867
|
/**
|
|
2465
2868
|
* DropUp icon component - displays an up arrow icon.
|
|
@@ -2475,13 +2878,17 @@ interface DropUpIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2475
2878
|
*/
|
|
2476
2879
|
declare const DropUpIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<DropUpIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2477
2880
|
|
|
2881
|
+
interface EditIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2882
|
+
size?: number;
|
|
2883
|
+
className?: string;
|
|
2884
|
+
}
|
|
2885
|
+
declare const EditIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<EditIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2886
|
+
|
|
2478
2887
|
interface ErrorIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2479
2888
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2480
2889
|
size?: number;
|
|
2481
2890
|
/** Additional CSS classes to apply to the icon */
|
|
2482
2891
|
className?: string;
|
|
2483
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2484
|
-
strokeWidth?: number;
|
|
2485
2892
|
}
|
|
2486
2893
|
/**
|
|
2487
2894
|
* Error icon component - displays an error icon.
|
|
@@ -2497,6 +2904,46 @@ interface ErrorIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2497
2904
|
*/
|
|
2498
2905
|
declare const ErrorIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<ErrorIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2499
2906
|
|
|
2907
|
+
interface EyeIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2908
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
2909
|
+
size?: number;
|
|
2910
|
+
/** Additional CSS classes to apply to the icon */
|
|
2911
|
+
className?: string;
|
|
2912
|
+
}
|
|
2913
|
+
/**
|
|
2914
|
+
* Eye icon component - displays an eye icon.
|
|
2915
|
+
*
|
|
2916
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
2917
|
+
*
|
|
2918
|
+
* @example
|
|
2919
|
+
* ```tsx
|
|
2920
|
+
* import { EyeIcon } from '@scalably/ui';
|
|
2921
|
+
*
|
|
2922
|
+
* <EyeIcon size={24} className="sui-text-primary" />
|
|
2923
|
+
* ```
|
|
2924
|
+
*/
|
|
2925
|
+
declare const EyeIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<EyeIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2926
|
+
|
|
2927
|
+
interface EyeSlashIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2928
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
2929
|
+
size?: number;
|
|
2930
|
+
/** Additional CSS classes to apply to the icon */
|
|
2931
|
+
className?: string;
|
|
2932
|
+
}
|
|
2933
|
+
/**
|
|
2934
|
+
* Eye slash icon component - displays an eye slash icon.
|
|
2935
|
+
*
|
|
2936
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
2937
|
+
*
|
|
2938
|
+
* @example
|
|
2939
|
+
* ```tsx
|
|
2940
|
+
* import { EyeSlashIcon } from '@scalably/ui';
|
|
2941
|
+
*
|
|
2942
|
+
* <EyeSlashIcon size={24} className="sui-text-primary" />
|
|
2943
|
+
* ```
|
|
2944
|
+
*/
|
|
2945
|
+
declare const EyeSlashIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<EyeSlashIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2946
|
+
|
|
2500
2947
|
interface FileIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2501
2948
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2502
2949
|
size?: number;
|
|
@@ -2520,8 +2967,6 @@ declare const FileIcon: react.MemoExoticComponent<react.ForwardRefExoticComponen
|
|
|
2520
2967
|
interface FileUploadIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2521
2968
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2522
2969
|
size?: number;
|
|
2523
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2524
|
-
strokeWidth?: number;
|
|
2525
2970
|
/** Additional CSS classes to apply to the icon */
|
|
2526
2971
|
className?: string;
|
|
2527
2972
|
}
|
|
@@ -2544,8 +2989,6 @@ interface GridIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2544
2989
|
size?: number;
|
|
2545
2990
|
/** Additional CSS classes to apply to the icon */
|
|
2546
2991
|
className?: string;
|
|
2547
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2548
|
-
strokeWidth?: number;
|
|
2549
2992
|
}
|
|
2550
2993
|
/**
|
|
2551
2994
|
* Grid icon component - displays a grid icon.
|
|
@@ -2584,8 +3027,6 @@ declare const ImageIcon: react.MemoExoticComponent<react.ForwardRefExoticCompone
|
|
|
2584
3027
|
interface ImageUploadIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2585
3028
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2586
3029
|
size?: number;
|
|
2587
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2588
|
-
strokeWidth?: number;
|
|
2589
3030
|
/** Additional CSS classes to apply to the icon */
|
|
2590
3031
|
className?: string;
|
|
2591
3032
|
}
|
|
@@ -2608,8 +3049,6 @@ interface IndeterminateIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2608
3049
|
size?: number;
|
|
2609
3050
|
/** Additional CSS classes to apply to the icon */
|
|
2610
3051
|
className?: string;
|
|
2611
|
-
/** Stroke width of the icon in pixels. Defaults to 2. */
|
|
2612
|
-
strokeWidth?: number;
|
|
2613
3052
|
}
|
|
2614
3053
|
/**
|
|
2615
3054
|
* Indeterminate icon component - displays an indeterminate icon.
|
|
@@ -2630,8 +3069,6 @@ interface InfoIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2630
3069
|
size?: number;
|
|
2631
3070
|
/** Additional CSS classes to apply to the icon */
|
|
2632
3071
|
className?: string;
|
|
2633
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2634
|
-
strokeWidth?: number;
|
|
2635
3072
|
}
|
|
2636
3073
|
/**
|
|
2637
3074
|
* Info icon component - displays an info icon.
|
|
@@ -2652,8 +3089,6 @@ interface ListIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2652
3089
|
size?: number;
|
|
2653
3090
|
/** Additional CSS classes to apply to the icon */
|
|
2654
3091
|
className?: string;
|
|
2655
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2656
|
-
strokeWidth?: number;
|
|
2657
3092
|
}
|
|
2658
3093
|
/**
|
|
2659
3094
|
* List icon component - displays a list icon.
|
|
@@ -2674,8 +3109,6 @@ interface MinusIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2674
3109
|
size?: number;
|
|
2675
3110
|
/** Additional CSS classes to apply to the icon */
|
|
2676
3111
|
className?: string;
|
|
2677
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2678
|
-
strokeWidth?: number;
|
|
2679
3112
|
}
|
|
2680
3113
|
/**
|
|
2681
3114
|
* Minus icon component - displays a minus icon.
|
|
@@ -2719,8 +3152,6 @@ interface PlusIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2719
3152
|
size?: number;
|
|
2720
3153
|
/** Additional CSS classes to apply to the icon */
|
|
2721
3154
|
className?: string;
|
|
2722
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2723
|
-
strokeWidth?: number;
|
|
2724
3155
|
}
|
|
2725
3156
|
/**
|
|
2726
3157
|
* Plus icon component - displays a plus icon.
|
|
@@ -2736,6 +3167,67 @@ interface PlusIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2736
3167
|
*/
|
|
2737
3168
|
declare const PlusIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<PlusIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2738
3169
|
|
|
3170
|
+
interface ResetIconProps extends React.SVGProps<SVGSVGElement> {
|
|
3171
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
3172
|
+
size?: number;
|
|
3173
|
+
/** Additional CSS classes to apply to the icon */
|
|
3174
|
+
className?: string;
|
|
3175
|
+
}
|
|
3176
|
+
/**
|
|
3177
|
+
* Reset icon component - displays a reset icon.
|
|
3178
|
+
*
|
|
3179
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
3180
|
+
*
|
|
3181
|
+
* @example
|
|
3182
|
+
* ```tsx
|
|
3183
|
+
* import { ResetIcon } from '@scalably/ui';
|
|
3184
|
+
*
|
|
3185
|
+
* <ResetIcon size={24} className="sui-text-primary" />
|
|
3186
|
+
* ```
|
|
3187
|
+
*/
|
|
3188
|
+
declare const ResetIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<ResetIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3189
|
+
|
|
3190
|
+
interface RotateLeftIconProps extends React.SVGProps<SVGSVGElement> {
|
|
3191
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
3192
|
+
size?: number;
|
|
3193
|
+
/** Additional CSS classes to apply to the icon */
|
|
3194
|
+
className?: string;
|
|
3195
|
+
}
|
|
3196
|
+
/**
|
|
3197
|
+
* RotateLeft icon component - displays a rotate left icon.
|
|
3198
|
+
*
|
|
3199
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
3200
|
+
*
|
|
3201
|
+
* @example
|
|
3202
|
+
* ```tsx
|
|
3203
|
+
* import { RotateLeftIcon } from '@scalably/ui';
|
|
3204
|
+
*
|
|
3205
|
+
* <RotateLeftIcon size={24} className="sui-text-primary" />
|
|
3206
|
+
* ```
|
|
3207
|
+
*/
|
|
3208
|
+
declare const RotateLeftIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<RotateLeftIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3209
|
+
|
|
3210
|
+
interface RotateRightIconProps extends React.SVGProps<SVGSVGElement> {
|
|
3211
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
3212
|
+
size?: number;
|
|
3213
|
+
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3214
|
+
/** Additional CSS classes to apply to the icon */
|
|
3215
|
+
className?: string;
|
|
3216
|
+
}
|
|
3217
|
+
/**
|
|
3218
|
+
* RotateRight icon component - displays a rotate right icon.
|
|
3219
|
+
*
|
|
3220
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
3221
|
+
*
|
|
3222
|
+
* @example
|
|
3223
|
+
* ```tsx
|
|
3224
|
+
* import { RotateRightIcon } from '@scalably/ui';
|
|
3225
|
+
*
|
|
3226
|
+
* <RotateRightIcon size={24} className="sui-text-primary" />
|
|
3227
|
+
* ```
|
|
3228
|
+
*/
|
|
3229
|
+
declare const RotateRightIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<RotateRightIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3230
|
+
|
|
2739
3231
|
/**
|
|
2740
3232
|
* Props for the SearchIcon component
|
|
2741
3233
|
*/
|
|
@@ -2744,8 +3236,6 @@ interface SearchIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2744
3236
|
size?: number;
|
|
2745
3237
|
/** Additional CSS classes to apply to the icon */
|
|
2746
3238
|
className?: string;
|
|
2747
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2748
|
-
strokeWidth?: number;
|
|
2749
3239
|
}
|
|
2750
3240
|
/**
|
|
2751
3241
|
* Search icon component - a magnifying glass icon for search functionality.
|
|
@@ -2766,8 +3256,6 @@ interface SettingsIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2766
3256
|
size?: number;
|
|
2767
3257
|
/** Additional CSS classes to apply to the icon */
|
|
2768
3258
|
className?: string;
|
|
2769
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2770
|
-
strokeWidth?: number;
|
|
2771
3259
|
}
|
|
2772
3260
|
/**
|
|
2773
3261
|
* Settings icon component - displays a settings icon.
|
|
@@ -2791,8 +3279,6 @@ interface SuccessIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2791
3279
|
size?: number;
|
|
2792
3280
|
/** Additional CSS classes to apply to the icon */
|
|
2793
3281
|
className?: string;
|
|
2794
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2795
|
-
strokeWidth?: number;
|
|
2796
3282
|
}
|
|
2797
3283
|
/**
|
|
2798
3284
|
* Success icon component - displays a checkmark in a green gradient circle.
|
|
@@ -2814,8 +3300,6 @@ interface TickIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2814
3300
|
size?: number;
|
|
2815
3301
|
/** Additional CSS classes to apply to the icon */
|
|
2816
3302
|
className?: string;
|
|
2817
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2818
|
-
strokeWidth?: number;
|
|
2819
3303
|
}
|
|
2820
3304
|
/**
|
|
2821
3305
|
* Tick icon component - displays a tick icon.
|
|
@@ -2836,8 +3320,6 @@ interface ToFirstIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2836
3320
|
size?: number;
|
|
2837
3321
|
/** Additional CSS classes to apply to the icon */
|
|
2838
3322
|
className?: string;
|
|
2839
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2840
|
-
strokeWidth?: number;
|
|
2841
3323
|
}
|
|
2842
3324
|
/**
|
|
2843
3325
|
* ToFirst icon component - displays a to first icon.
|
|
@@ -2858,8 +3340,6 @@ interface ToLastIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2858
3340
|
size?: number;
|
|
2859
3341
|
/** Additional CSS classes to apply to the icon */
|
|
2860
3342
|
className?: string;
|
|
2861
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2862
|
-
strokeWidth?: number;
|
|
2863
3343
|
}
|
|
2864
3344
|
/**
|
|
2865
3345
|
* ToLast icon component - displays a to last icon.
|
|
@@ -2880,8 +3360,6 @@ interface ToNextIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2880
3360
|
size?: number;
|
|
2881
3361
|
/** Additional CSS classes to apply to the icon */
|
|
2882
3362
|
className?: string;
|
|
2883
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2884
|
-
strokeWidth?: number;
|
|
2885
3363
|
}
|
|
2886
3364
|
/**
|
|
2887
3365
|
* ToNext icon component - displays a to next icon.
|
|
@@ -2902,8 +3380,6 @@ interface ToPreviousIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2902
3380
|
size?: number;
|
|
2903
3381
|
/** Additional CSS classes to apply to the icon */
|
|
2904
3382
|
className?: string;
|
|
2905
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2906
|
-
strokeWidth?: number;
|
|
2907
3383
|
}
|
|
2908
3384
|
/**
|
|
2909
3385
|
* ToPrevious icon component - displays a to previous icon.
|
|
@@ -2919,6 +3395,26 @@ interface ToPreviousIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2919
3395
|
*/
|
|
2920
3396
|
declare const ToPreviousIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<ToPreviousIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
2921
3397
|
|
|
3398
|
+
interface TranslateIconProps extends React.SVGProps<SVGSVGElement> {
|
|
3399
|
+
/** Size of the icon in pixels. Defaults to 24. */
|
|
3400
|
+
size?: number;
|
|
3401
|
+
/** Additional CSS classes to apply to the icon */
|
|
3402
|
+
className?: string;
|
|
3403
|
+
}
|
|
3404
|
+
/**
|
|
3405
|
+
* Translate icon component - displays a translate icon.
|
|
3406
|
+
*
|
|
3407
|
+
* This icon uses `currentColor`, so it can be styled with Tailwind classes.
|
|
3408
|
+
*
|
|
3409
|
+
* @example
|
|
3410
|
+
* ```tsx
|
|
3411
|
+
* import { TranslateIcon } from '@scalably/ui';
|
|
3412
|
+
*
|
|
3413
|
+
* <TranslateIcon size={24} className="sui-text-primary" />
|
|
3414
|
+
* ```
|
|
3415
|
+
*/
|
|
3416
|
+
declare const TranslateIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<TranslateIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3417
|
+
|
|
2922
3418
|
interface VideoIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2923
3419
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2924
3420
|
size?: number;
|
|
@@ -2942,8 +3438,6 @@ declare const VideoIcon: react.MemoExoticComponent<react.ForwardRefExoticCompone
|
|
|
2942
3438
|
interface VideoUploadIconProps extends React.SVGProps<SVGSVGElement> {
|
|
2943
3439
|
/** Size of the icon in pixels. Defaults to 24. */
|
|
2944
3440
|
size?: number;
|
|
2945
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2946
|
-
strokeWidth?: number;
|
|
2947
3441
|
/** Additional CSS classes to apply to the icon */
|
|
2948
3442
|
className?: string;
|
|
2949
3443
|
}
|
|
@@ -2966,8 +3460,6 @@ interface WarnIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
2966
3460
|
size?: number;
|
|
2967
3461
|
/** Additional CSS classes to apply to the icon */
|
|
2968
3462
|
className?: string;
|
|
2969
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
2970
|
-
strokeWidth?: number;
|
|
2971
3463
|
}
|
|
2972
3464
|
/**
|
|
2973
3465
|
* Warn icon component - displays a warn icon.
|
|
@@ -3331,8 +3823,6 @@ interface AlignCenterIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3331
3823
|
size?: number;
|
|
3332
3824
|
/** Additional CSS classes to apply to the icon */
|
|
3333
3825
|
className?: string;
|
|
3334
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3335
|
-
strokeWidth?: number;
|
|
3336
3826
|
}
|
|
3337
3827
|
declare const AlignCenterIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<AlignCenterIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3338
3828
|
|
|
@@ -3341,8 +3831,6 @@ interface AlignLeftIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3341
3831
|
size?: number;
|
|
3342
3832
|
/** Additional CSS classes to apply to the icon */
|
|
3343
3833
|
className?: string;
|
|
3344
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3345
|
-
strokeWidth?: number;
|
|
3346
3834
|
}
|
|
3347
3835
|
declare const AlignLeftIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<AlignLeftIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3348
3836
|
|
|
@@ -3351,8 +3839,6 @@ interface AlignRightIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3351
3839
|
size?: number;
|
|
3352
3840
|
/** Additional CSS classes to apply to the icon */
|
|
3353
3841
|
className?: string;
|
|
3354
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3355
|
-
strokeWidth?: number;
|
|
3356
3842
|
}
|
|
3357
3843
|
declare const AlignRightIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<AlignRightIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3358
3844
|
|
|
@@ -3361,8 +3847,6 @@ interface BoldIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3361
3847
|
size?: number;
|
|
3362
3848
|
/** Additional CSS classes to apply to the icon */
|
|
3363
3849
|
className?: string;
|
|
3364
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3365
|
-
strokeWidth?: number;
|
|
3366
3850
|
}
|
|
3367
3851
|
/**
|
|
3368
3852
|
* Bold icon component - displays a bold icon.
|
|
@@ -3399,8 +3883,6 @@ interface ItalicIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3399
3883
|
size?: number;
|
|
3400
3884
|
/** Additional CSS classes to apply to the icon */
|
|
3401
3885
|
className?: string;
|
|
3402
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3403
|
-
strokeWidth?: number;
|
|
3404
3886
|
}
|
|
3405
3887
|
/**
|
|
3406
3888
|
* Italic icon component - displays an italic icon.
|
|
@@ -3445,8 +3927,6 @@ interface UnderlineIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3445
3927
|
size?: number;
|
|
3446
3928
|
/** Additional CSS classes to apply to the icon */
|
|
3447
3929
|
className?: string;
|
|
3448
|
-
/** Stroke width of the icon in pixels. Defaults to 1.5. */
|
|
3449
|
-
strokeWidth?: number;
|
|
3450
3930
|
}
|
|
3451
3931
|
/**
|
|
3452
3932
|
* Underline icon component - displays an underline icon.
|
|
@@ -3462,4 +3942,4 @@ interface UnderlineIconProps extends React.SVGProps<SVGSVGElement> {
|
|
|
3462
3942
|
*/
|
|
3463
3943
|
declare const UnderlineIcon: react.MemoExoticComponent<react.ForwardRefExoticComponent<Omit<UnderlineIconProps, "ref"> & react.RefAttributes<SVGSVGElement>>>;
|
|
3464
3944
|
|
|
3465
|
-
export { AlignCenterIcon, type AlignCenterIconProps, AlignLeftIcon, type AlignLeftIconProps, AlignRightIcon, type AlignRightIconProps, AppLogo, AuthPrompt, type AuthPromptProps, AvatarPlaceholder, type AvatarPlaceholderCategory, type AvatarPlaceholderProps, type AvatarPlaceholderVariant, BackToTop, type BackToTopProps, BoldIcon, type BoldIconProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, CalendarIcon, type CalendarIconProps, CampaignLogo, CaptureIcon, type CaptureIconProps, CelebrationModal, type CelebrationModalProps, CheckBox, CheckBoxGroup, type CheckBoxGroupOption, type CheckBoxGroupProps, type CheckBoxProps, CheckIcon, type CheckIconProps, CloseIcon, type CloseIconProps, CopyIcon, type CopyIconProps, Countdown, type CountdownProps, type CountdownSize, type CountdownTimeValues, type CountdownUnit, DateInput, type DateInputMode, type DateInputProps, DatePicker, type DatePickerMode, type DatePickerProps, type DefaultAssetCategory, type DefaultAssetComponent, type DefaultAssetProps, type DefaultAssetVariant, type DefaultAssets, DiscordIcon, type DiscordIconProps, Divider, type DividerProps, type DividerVariant, DropUpIcon, type DropUpIconProps, DropdownIcon, type DropdownIconProps, ErrorIcon, type ErrorIconProps, FacebookIcon, type FacebookIconProps, type FieldErrorLike, FileIcon, type FileIconProps, FileUpload, type FileUploadError, type FileUploadFile, FileUploadIcon, type FileUploadIconProps, type FileUploadIconType, type FileUploadProps, type FileUploadSize, type FileUploadVariant, Form, type FormErrorItem, FormErrorSummary, type FormErrorSummaryProps, FormField, type FormFieldProps, type FormProps, GmailIcon, type GmailIconProps, GridIcon, type GridIconProps, GroupAvatar, IconBigLogo, IconLogo, ImageIcon, type ImageIconProps, ImagePlaceholder, type ImageSourceMode, ImageUploadIcon, type ImageUploadIconProps, IndeterminateIcon, type IndeterminateIconProps, InfoIcon, type InfoIconProps, Input, type InputProps, type InputVariant, InsertImageIcon, type InsertImageIconProps, InsertVideoIcon, type InsertVideoIconProps, InstagramIcon, type InstagramIconProps, ItalicIcon, type ItalicIconProps, KakaoTalkIcon, type KakaoTalkIconProps, LineIcon, type LineIconProps, LinkIcon, type LinkIconProps, LinkedInIcon, type LinkedInIconProps, ListBulletIcon, type ListBulletIconProps, ListIcon, type ListIconProps, ListNumberIcon, type ListNumberIconProps, LoadingScreen, type LoadingScreenProps, Logo, type LogoAssetComponent, type LogoAssetProps, type LogoAssets, type LogoFormat, type LogoProps, type LogoVariant, MessengerIcon, type MessengerIconProps, MinusIcon, type MinusIconProps, MultipleSelectionButton, type MultipleSelectionButtonProps, MultipleSelectionIcon, type MultipleSelectionIconProps, Pagination, type PaginationProps, PlusIcon, type PlusIconProps, ProfileAvatar, QuantityInput, type QuantityInputProps, Radio, RadioGroup, type RadioGroupOption, type RadioGroupProps, type RadioProps, type RangeValue, RedditIcon, type RedditIconProps, RichTextEditor, type RichTextEditorProps, RichTextViewer, type RichTextViewerProps, ScalablyUIProvider, type ScalablyUIProviderProps, SearchIcon, type SearchIconProps, SearchInput, type SearchInputProps, type SearchInputVariant, Select, type SelectOption, type SelectProps, type SelectVariant, SettingsIcon, type SettingsIconProps, SignalIcon, type SignalIconProps, Skeleton, type SkeletonProps, type SkeletonSize, SkeletonText, type SkeletonTextProps, type SkeletonVariant, SlackIcon, type SlackIconProps, StatusBadge, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, type StatusBadgeVariant, SuccessIcon, type SuccessIconProps, Switch, type SwitchProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TelegramIcon, type TelegramIconProps, TickIcon, type TickIconProps, TiktokIcon, type TiktokIconProps, TimePicker, type TimePickerProps, ToFirstIcon, type ToFirstIconProps, ToLastIcon, type ToLastIconProps, ToNextIcon, type ToNextIconProps, ToPreviousIcon, type ToPreviousIconProps, Toast, type ToastAction, ToastContainer, type ToastContainerProps, type ToastPosition, type ToastProps, type ToastStatus, Tooltip, type TooltipAlign, type TooltipProps, type TooltipSide, TwitchIcon, type TwitchIconProps, UnderlineIcon, type UnderlineIconProps, VideoIcon, type VideoIconProps, VideoUploadIcon, type VideoUploadIconProps, type ViewMode, ViewToggle, type ViewToggleProps, WarnIcon, type WarnIconProps, WelcomeBackground, type WelcomeBackgroundProps, WhatsAppIcon, type WhatsAppIconProps, XIcon, type XIconProps, YoutubeIcon, type YoutubeIconProps, clampDate, cn, daysGrid, debounce, defaultAssets, fieldErrorToProps, formatDateLocalized, logoAssets, monthsForLocale, scopeClass, throttle, toDateKey, weekdaysForLocale, welcomeAssets, zodErrorsToSummary };
|
|
3945
|
+
export { AlignCenterIcon, type AlignCenterIconProps, AlignLeftIcon, type AlignLeftIconProps, AlignRightIcon, type AlignRightIconProps, AppLogo, AuthPrompt, type AuthPromptProps, AvatarPlaceholder, type AvatarPlaceholderCategory, type AvatarPlaceholderProps, type AvatarPlaceholderVariant, BackToTop, type BackToTopProps, type BasicFileValidationError, BoldIcon, type BoldIconProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, CalendarIcon, type CalendarIconProps, CampaignLogo, CaptureIcon, type CaptureIconProps, CelebrationModal, type CelebrationModalProps, CheckBox, CheckBoxGroup, type CheckBoxGroupOption, type CheckBoxGroupProps, type CheckBoxProps, CheckIcon, type CheckIconProps, CloseIcon, type CloseIconProps, CopyIcon, type CopyIconProps, Countdown, type CountdownProps, type CountdownSize, type CountdownTimeValues, type CountdownUnit, CropIcon, type CropIconProps, type CroppedImageResult, DateInput, type DateInputMode, type DateInputProps, DatePicker, type DatePickerMode, type DatePickerProps, type DefaultAssetCategory, type DefaultAssetComponent, type DefaultAssetProps, type DefaultAssetVariant, type DefaultAssets, DeleteIcon, type DeleteIconProps, DiscordIcon, type DiscordIconProps, Divider, type DividerProps, type DividerVariant, DropUpIcon, type DropUpIconProps, DropdownIcon, type DropdownIconProps, EditIcon, type EditIconProps, ErrorIcon, type ErrorIconProps, EyeIcon, type EyeIconProps, EyeSlashIcon, type EyeSlashIconProps, FacebookIcon, type FacebookIconProps, type FieldErrorLike, FileIcon, type FileIconProps, FileUpload, type FileUploadError, type FileUploadFile, FileUploadIcon, type FileUploadIconProps, type FileUploadIconType, type FileUploadProps, type FileUploadSize, type FileUploadVariant, Form, type FormErrorItem, FormErrorSummary, type FormErrorSummaryProps, FormField, type FormFieldProps, type FormProps, type GetCroppedImgOptions, GmailIcon, type GmailIconProps, GridIcon, type GridIconProps, GroupAvatar, IconBigLogo, IconLogo, ImageCrop, ImageCropModal, type ImageCropModalProps, type ImageCropProps, ImageIcon, type ImageIconProps, ImagePlaceholder, type ImageSourceMode, ImageUploadIcon, type ImageUploadIconProps, IndeterminateIcon, type IndeterminateIconProps, InfoIcon, type InfoIconProps, Input, type InputProps, type InputVariant, InsertImageIcon, type InsertImageIconProps, InsertVideoIcon, type InsertVideoIconProps, InstagramIcon, type InstagramIconProps, ItalicIcon, type ItalicIconProps, KakaoTalkIcon, type KakaoTalkIconProps, LineIcon, type LineIconProps, LinkIcon, type LinkIconProps, LinkedInIcon, type LinkedInIconProps, ListBulletIcon, type ListBulletIconProps, ListIcon, type ListIconProps, ListNumberIcon, type ListNumberIconProps, LoadingScreen, type LoadingScreenProps, LoadingSpinner, type LoadingSpinnerProps, Logo, type LogoAssetComponent, type LogoAssetProps, type LogoAssets, type LogoFormat, type LogoProps, type LogoVariant, MessengerIcon, type MessengerIconProps, MinusIcon, type MinusIconProps, MultipleSelectionButton, type MultipleSelectionButtonProps, MultipleSelectionIcon, type MultipleSelectionIconProps, Pagination, type PaginationProps, PlusIcon, type PlusIconProps, ProfileAvatar, QuantityInput, type QuantityInputProps, Radio, RadioGroup, type RadioGroupOption, type RadioGroupProps, type RadioProps, type RangeValue, RedditIcon, type RedditIconProps, ResetIcon, type ResetIconProps, RichTextEditor, type RichTextEditorProps, RichTextViewer, type RichTextViewerProps, RotateLeftIcon, type RotateLeftIconProps, RotateRightIcon, type RotateRightIconProps, ScalablyUIProvider, type ScalablyUIProviderProps, SearchIcon, type SearchIconProps, SearchInput, type SearchInputProps, type SearchInputVariant, Select, type SelectOption, type SelectProps, type SelectVariant, SettingsIcon, type SettingsIconProps, SignalIcon, type SignalIconProps, Skeleton, type SkeletonProps, type SkeletonSize, SkeletonText, type SkeletonTextProps, type SkeletonVariant, SlackIcon, type SlackIconProps, StatusBadge, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, type StatusBadgeVariant, SuccessIcon, type SuccessIconProps, Switch, type SwitchProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TelegramIcon, type TelegramIconProps, TickIcon, type TickIconProps, TiktokIcon, type TiktokIconProps, TimePicker, type TimePickerProps, ToFirstIcon, type ToFirstIconProps, ToLastIcon, type ToLastIconProps, ToNextIcon, type ToNextIconProps, ToPreviousIcon, type ToPreviousIconProps, Toast, type ToastAction, ToastContainer, type ToastContainerProps, type ToastPosition, type ToastProps, type ToastStatus, Tooltip, type TooltipAlign, type TooltipProps, type TooltipSide, TranslateIcon, type TranslateIconProps, TwitchIcon, type TwitchIconProps, UnderlineIcon, type UnderlineIconProps, VideoIcon, type VideoIconProps, VideoUploadIcon, type VideoUploadIconProps, type ViewMode, ViewToggle, type ViewToggleProps, WarnIcon, type WarnIconProps, WelcomeBackground, type WelcomeBackgroundProps, WhatsAppIcon, type WhatsAppIconProps, XIcon, type XIconProps, YoutubeIcon, type YoutubeIconProps, clampDate, cn, daysGrid, debounce, defaultAssets, extensionToMimeType, fieldErrorToProps, formatAcceptedFileTypes, formatDateLocalized, getCroppedImg, logoAssets, mimeTypeToDisplayName, monthsForLocale, normalizeAcceptedFileTypes, scopeClass, throttle, toDateKey, validateFileTypeAndSize, weekdaysForLocale, welcomeAssets, zodErrorsToSummary };
|