@undefine-ui/design-system 2.12.0 → 2.13.0

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 CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react from 'react';
2
- import { SetStateAction, ElementType } from 'react';
2
+ import { SetStateAction, ElementType, CSSProperties, ReactNode, SyntheticEvent } from 'react';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { Breakpoint, Shadows, Components, Theme, SxProps as SxProps$1 } from '@mui/material/styles';
5
5
  import * as _mui_material from '@mui/material';
@@ -1757,6 +1757,77 @@ interface LogoProps extends BoxProps {
1757
1757
  declare const Logo: ({ sx, isFull, isWhite, isBlack, disableLink, LinkComponent, href, src, alt, ...rest }: LogoProps) => react_jsx_runtime.JSX.Element;
1758
1758
  declare const AnimatedLogo: () => react_jsx_runtime.JSX.Element;
1759
1759
 
1760
+ type ImageStatus = 'idle' | 'loading' | 'loaded' | 'error';
1761
+ interface ImageProps extends Omit<BoxProps, 'component' | 'children' | 'position'> {
1762
+ src: string;
1763
+ alt: string;
1764
+ /**
1765
+ * Load the image only when it enters the viewport.
1766
+ * Defaults to true.
1767
+ */
1768
+ lazy?: boolean;
1769
+ /**
1770
+ * Fallback URL used when the main source fails to load.
1771
+ */
1772
+ fallbackSrc?: string;
1773
+ /**
1774
+ * Responsive image sources for different screen sizes/resolutions.
1775
+ * Example: "image-320w.jpg 320w, image-640w.jpg 640w, image-1280w.jpg 1280w"
1776
+ */
1777
+ srcSet?: string;
1778
+ /**
1779
+ * Sizes attribute for responsive images. Defines which image size to use at different viewport widths.
1780
+ * Example: "(max-width: 600px) 100vw, (max-width: 1200px) 50vw, 33vw"
1781
+ */
1782
+ sizes?: string;
1783
+ /**
1784
+ * Aspect ratio (e.g. "16 / 9" or 1.5) applied to the wrapper to avoid layout shift.
1785
+ */
1786
+ aspectRatio?: number | string;
1787
+ /**
1788
+ * Controls object-fit of the underlying image. Defaults to "cover".
1789
+ */
1790
+ fit?: CSSProperties['objectFit'];
1791
+ /**
1792
+ * Controls object-position of the underlying image. Defaults to "center".
1793
+ */
1794
+ position?: CSSProperties['objectPosition'];
1795
+ /**
1796
+ * Optional overlay content rendered above the image.
1797
+ */
1798
+ overlay?: ReactNode;
1799
+ /**
1800
+ * Enables overlay even when overlay content is not provided.
1801
+ */
1802
+ withOverlay?: boolean;
1803
+ /**
1804
+ * Custom loading indicator shown before the image is loaded.
1805
+ */
1806
+ loadingIndicator?: ReactNode;
1807
+ /**
1808
+ * Custom error fallback content when both src and fallbackSrc fail.
1809
+ */
1810
+ renderError?: ReactNode;
1811
+ /**
1812
+ * Additional styles for the underlying image element.
1813
+ */
1814
+ imgSx?: BoxProps['sx'];
1815
+ /**
1816
+ * Additional props for the underlying image element.
1817
+ */
1818
+ imgProps?: Omit<BoxProps<'img'>, 'component' | 'sx' | 'ref' | 'src' | 'alt' | 'children'>;
1819
+ /**
1820
+ * Root margin passed to the IntersectionObserver. Defaults to "200px".
1821
+ */
1822
+ observerMargin?: string;
1823
+ /**
1824
+ * Callback fired when the image fails to load.
1825
+ */
1826
+ onError?: (event: SyntheticEvent<HTMLImageElement, Event>) => void;
1827
+ }
1828
+
1829
+ declare const Image: react.ForwardRefExoticComponent<Omit<ImageProps, "ref"> & react.RefAttributes<HTMLImageElement>>;
1830
+
1760
1831
  interface UploadProps extends DropzoneOptions {
1761
1832
  error?: boolean;
1762
1833
  sx?: SxProps$1<Theme>;
@@ -1926,4 +1997,4 @@ interface LoadingScreenProps extends BoxProps {
1926
1997
  declare const LoadingScreen: ({ portal, sx, ...rest }: LoadingScreenProps) => react_jsx_runtime.JSX.Element;
1927
1998
  declare const SplashScreen: ({ portal, sx, ...rest }: LoadingScreenProps) => react_jsx_runtime.JSX.Element;
1928
1999
 
1929
- export { AnimatedLogo, BellNotification, CheckboxDefault, CheckboxIndeterminate, CheckboxSelect, ClipboardCheck, CloudUpload, type ColorSchema, Copy, CopyButton, type CustomShadowOptions, type CustomSpacingOptions, Eye, EyeClosed, Field, Form, Icon, type IconProps, type IconType, InfoCircleFill, InfoCircleOutline, KeyCommand, Loader, LoadingScreen, LocalStorageAvailable, LocalStorageGetItem, Logo, LongArrowUpLeftSolid, NavArrowDown, NavArrowLeft, NavArrowRight, OTPInput, type OTPInputProps, RHFAutocomplete, type RHFAutocompleteProps, RHFCheckbox, type RHFCheckboxProps, RHFMultiCheckbox, type RHFMultiCheckboxOption, type RHFMultiCheckboxProps, RHFMultiSwitch, RHFOTPInput, type RHFOTPInputProps, RHFRadioGroup, type RHFRadioGroupProps, RHFSwitch, RHFTextField, RHFUpload, type RHFUploadProps, RadioDefault, RadioSelect, type RadiusOptions, STORAGE_KEY, Search, Settings, SettingsConsumer, SettingsContext, type SettingsContextProps, SettingsProvider, type SettingsValueProps, SplashScreen, Table, type TableNoRowsProps, TablePagination, ThemeProvider, Trash, Upload, type UploadProps, type UseBooleanReturnType, type UseSetStateReturnType, UserFill, UserOutline, XMark, XMarkSolid, action, background, baseAction, basePalette, bgBlur, bgGradient, border, borderGradient, breakpoints, colorSchemes, common, components, createPaletteChannel, createShadowColor, createTheme, customShadows, customSpacing, darkPalette, defaultSettings, error, fCurrency, fData, fNumber, fPercent, fShortenNumber, formatFullname, getCurrencySymbol, getInitColorSchemeScript, getInitials, getStorage, grey, hexToRgbChannel, hideScrollX, hideScrollY, icon, iconClasses, info, isEqual, lightPalette, maxLine, mediaQueries, menuItem, neutral, orderBy, paper, paramCase, primary, primaryFont, pxToRem, radius, remToPx, removeStorage, responsiveFontSizes, schemeConfig, secondary, secondaryFont, sentenceCase, setFont, setStorage, shadows, snakeCase, splitFullname, stylesMode, success, surface, tertiaryFont, text, textGradient, typography, updateComponentsWithSettings, updateCoreWithSettings, useBoolean, useCopyToClipboard, useCountdownDate, useCountdownSeconds, useEventListener, useLocalStorage, usePopover, useResponsive, useScrollOffSetTop, useSetState, useSettings, useWidth, varAlpha, warning };
2000
+ export { AnimatedLogo, BellNotification, CheckboxDefault, CheckboxIndeterminate, CheckboxSelect, ClipboardCheck, CloudUpload, type ColorSchema, Copy, CopyButton, type CustomShadowOptions, type CustomSpacingOptions, Eye, EyeClosed, Field, Form, Icon, type IconProps, type IconType, Image, type ImageProps, type ImageStatus, InfoCircleFill, InfoCircleOutline, KeyCommand, Loader, LoadingScreen, LocalStorageAvailable, LocalStorageGetItem, Logo, LongArrowUpLeftSolid, NavArrowDown, NavArrowLeft, NavArrowRight, OTPInput, type OTPInputProps, RHFAutocomplete, type RHFAutocompleteProps, RHFCheckbox, type RHFCheckboxProps, RHFMultiCheckbox, type RHFMultiCheckboxOption, type RHFMultiCheckboxProps, RHFMultiSwitch, RHFOTPInput, type RHFOTPInputProps, RHFRadioGroup, type RHFRadioGroupProps, RHFSwitch, RHFTextField, RHFUpload, type RHFUploadProps, RadioDefault, RadioSelect, type RadiusOptions, STORAGE_KEY, Search, Settings, SettingsConsumer, SettingsContext, type SettingsContextProps, SettingsProvider, type SettingsValueProps, SplashScreen, Table, type TableNoRowsProps, TablePagination, ThemeProvider, Trash, Upload, type UploadProps, type UseBooleanReturnType, type UseSetStateReturnType, UserFill, UserOutline, XMark, XMarkSolid, action, background, baseAction, basePalette, bgBlur, bgGradient, border, borderGradient, breakpoints, colorSchemes, common, components, createPaletteChannel, createShadowColor, createTheme, customShadows, customSpacing, darkPalette, defaultSettings, error, fCurrency, fData, fNumber, fPercent, fShortenNumber, formatFullname, getCurrencySymbol, getInitColorSchemeScript, getInitials, getStorage, grey, hexToRgbChannel, hideScrollX, hideScrollY, icon, iconClasses, info, isEqual, lightPalette, maxLine, mediaQueries, menuItem, neutral, orderBy, paper, paramCase, primary, primaryFont, pxToRem, radius, remToPx, removeStorage, responsiveFontSizes, schemeConfig, secondary, secondaryFont, sentenceCase, setFont, setStorage, shadows, snakeCase, splitFullname, stylesMode, success, surface, tertiaryFont, text, textGradient, typography, updateComponentsWithSettings, updateCoreWithSettings, useBoolean, useCopyToClipboard, useCountdownDate, useCountdownSeconds, useEventListener, useLocalStorage, usePopover, useResponsive, useScrollOffSetTop, useSetState, useSettings, useWidth, varAlpha, warning };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react from 'react';
2
- import { SetStateAction, ElementType } from 'react';
2
+ import { SetStateAction, ElementType, CSSProperties, ReactNode, SyntheticEvent } from 'react';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { Breakpoint, Shadows, Components, Theme, SxProps as SxProps$1 } from '@mui/material/styles';
5
5
  import * as _mui_material from '@mui/material';
@@ -1757,6 +1757,77 @@ interface LogoProps extends BoxProps {
1757
1757
  declare const Logo: ({ sx, isFull, isWhite, isBlack, disableLink, LinkComponent, href, src, alt, ...rest }: LogoProps) => react_jsx_runtime.JSX.Element;
1758
1758
  declare const AnimatedLogo: () => react_jsx_runtime.JSX.Element;
1759
1759
 
1760
+ type ImageStatus = 'idle' | 'loading' | 'loaded' | 'error';
1761
+ interface ImageProps extends Omit<BoxProps, 'component' | 'children' | 'position'> {
1762
+ src: string;
1763
+ alt: string;
1764
+ /**
1765
+ * Load the image only when it enters the viewport.
1766
+ * Defaults to true.
1767
+ */
1768
+ lazy?: boolean;
1769
+ /**
1770
+ * Fallback URL used when the main source fails to load.
1771
+ */
1772
+ fallbackSrc?: string;
1773
+ /**
1774
+ * Responsive image sources for different screen sizes/resolutions.
1775
+ * Example: "image-320w.jpg 320w, image-640w.jpg 640w, image-1280w.jpg 1280w"
1776
+ */
1777
+ srcSet?: string;
1778
+ /**
1779
+ * Sizes attribute for responsive images. Defines which image size to use at different viewport widths.
1780
+ * Example: "(max-width: 600px) 100vw, (max-width: 1200px) 50vw, 33vw"
1781
+ */
1782
+ sizes?: string;
1783
+ /**
1784
+ * Aspect ratio (e.g. "16 / 9" or 1.5) applied to the wrapper to avoid layout shift.
1785
+ */
1786
+ aspectRatio?: number | string;
1787
+ /**
1788
+ * Controls object-fit of the underlying image. Defaults to "cover".
1789
+ */
1790
+ fit?: CSSProperties['objectFit'];
1791
+ /**
1792
+ * Controls object-position of the underlying image. Defaults to "center".
1793
+ */
1794
+ position?: CSSProperties['objectPosition'];
1795
+ /**
1796
+ * Optional overlay content rendered above the image.
1797
+ */
1798
+ overlay?: ReactNode;
1799
+ /**
1800
+ * Enables overlay even when overlay content is not provided.
1801
+ */
1802
+ withOverlay?: boolean;
1803
+ /**
1804
+ * Custom loading indicator shown before the image is loaded.
1805
+ */
1806
+ loadingIndicator?: ReactNode;
1807
+ /**
1808
+ * Custom error fallback content when both src and fallbackSrc fail.
1809
+ */
1810
+ renderError?: ReactNode;
1811
+ /**
1812
+ * Additional styles for the underlying image element.
1813
+ */
1814
+ imgSx?: BoxProps['sx'];
1815
+ /**
1816
+ * Additional props for the underlying image element.
1817
+ */
1818
+ imgProps?: Omit<BoxProps<'img'>, 'component' | 'sx' | 'ref' | 'src' | 'alt' | 'children'>;
1819
+ /**
1820
+ * Root margin passed to the IntersectionObserver. Defaults to "200px".
1821
+ */
1822
+ observerMargin?: string;
1823
+ /**
1824
+ * Callback fired when the image fails to load.
1825
+ */
1826
+ onError?: (event: SyntheticEvent<HTMLImageElement, Event>) => void;
1827
+ }
1828
+
1829
+ declare const Image: react.ForwardRefExoticComponent<Omit<ImageProps, "ref"> & react.RefAttributes<HTMLImageElement>>;
1830
+
1760
1831
  interface UploadProps extends DropzoneOptions {
1761
1832
  error?: boolean;
1762
1833
  sx?: SxProps$1<Theme>;
@@ -1926,4 +1997,4 @@ interface LoadingScreenProps extends BoxProps {
1926
1997
  declare const LoadingScreen: ({ portal, sx, ...rest }: LoadingScreenProps) => react_jsx_runtime.JSX.Element;
1927
1998
  declare const SplashScreen: ({ portal, sx, ...rest }: LoadingScreenProps) => react_jsx_runtime.JSX.Element;
1928
1999
 
1929
- export { AnimatedLogo, BellNotification, CheckboxDefault, CheckboxIndeterminate, CheckboxSelect, ClipboardCheck, CloudUpload, type ColorSchema, Copy, CopyButton, type CustomShadowOptions, type CustomSpacingOptions, Eye, EyeClosed, Field, Form, Icon, type IconProps, type IconType, InfoCircleFill, InfoCircleOutline, KeyCommand, Loader, LoadingScreen, LocalStorageAvailable, LocalStorageGetItem, Logo, LongArrowUpLeftSolid, NavArrowDown, NavArrowLeft, NavArrowRight, OTPInput, type OTPInputProps, RHFAutocomplete, type RHFAutocompleteProps, RHFCheckbox, type RHFCheckboxProps, RHFMultiCheckbox, type RHFMultiCheckboxOption, type RHFMultiCheckboxProps, RHFMultiSwitch, RHFOTPInput, type RHFOTPInputProps, RHFRadioGroup, type RHFRadioGroupProps, RHFSwitch, RHFTextField, RHFUpload, type RHFUploadProps, RadioDefault, RadioSelect, type RadiusOptions, STORAGE_KEY, Search, Settings, SettingsConsumer, SettingsContext, type SettingsContextProps, SettingsProvider, type SettingsValueProps, SplashScreen, Table, type TableNoRowsProps, TablePagination, ThemeProvider, Trash, Upload, type UploadProps, type UseBooleanReturnType, type UseSetStateReturnType, UserFill, UserOutline, XMark, XMarkSolid, action, background, baseAction, basePalette, bgBlur, bgGradient, border, borderGradient, breakpoints, colorSchemes, common, components, createPaletteChannel, createShadowColor, createTheme, customShadows, customSpacing, darkPalette, defaultSettings, error, fCurrency, fData, fNumber, fPercent, fShortenNumber, formatFullname, getCurrencySymbol, getInitColorSchemeScript, getInitials, getStorage, grey, hexToRgbChannel, hideScrollX, hideScrollY, icon, iconClasses, info, isEqual, lightPalette, maxLine, mediaQueries, menuItem, neutral, orderBy, paper, paramCase, primary, primaryFont, pxToRem, radius, remToPx, removeStorage, responsiveFontSizes, schemeConfig, secondary, secondaryFont, sentenceCase, setFont, setStorage, shadows, snakeCase, splitFullname, stylesMode, success, surface, tertiaryFont, text, textGradient, typography, updateComponentsWithSettings, updateCoreWithSettings, useBoolean, useCopyToClipboard, useCountdownDate, useCountdownSeconds, useEventListener, useLocalStorage, usePopover, useResponsive, useScrollOffSetTop, useSetState, useSettings, useWidth, varAlpha, warning };
2000
+ export { AnimatedLogo, BellNotification, CheckboxDefault, CheckboxIndeterminate, CheckboxSelect, ClipboardCheck, CloudUpload, type ColorSchema, Copy, CopyButton, type CustomShadowOptions, type CustomSpacingOptions, Eye, EyeClosed, Field, Form, Icon, type IconProps, type IconType, Image, type ImageProps, type ImageStatus, InfoCircleFill, InfoCircleOutline, KeyCommand, Loader, LoadingScreen, LocalStorageAvailable, LocalStorageGetItem, Logo, LongArrowUpLeftSolid, NavArrowDown, NavArrowLeft, NavArrowRight, OTPInput, type OTPInputProps, RHFAutocomplete, type RHFAutocompleteProps, RHFCheckbox, type RHFCheckboxProps, RHFMultiCheckbox, type RHFMultiCheckboxOption, type RHFMultiCheckboxProps, RHFMultiSwitch, RHFOTPInput, type RHFOTPInputProps, RHFRadioGroup, type RHFRadioGroupProps, RHFSwitch, RHFTextField, RHFUpload, type RHFUploadProps, RadioDefault, RadioSelect, type RadiusOptions, STORAGE_KEY, Search, Settings, SettingsConsumer, SettingsContext, type SettingsContextProps, SettingsProvider, type SettingsValueProps, SplashScreen, Table, type TableNoRowsProps, TablePagination, ThemeProvider, Trash, Upload, type UploadProps, type UseBooleanReturnType, type UseSetStateReturnType, UserFill, UserOutline, XMark, XMarkSolid, action, background, baseAction, basePalette, bgBlur, bgGradient, border, borderGradient, breakpoints, colorSchemes, common, components, createPaletteChannel, createShadowColor, createTheme, customShadows, customSpacing, darkPalette, defaultSettings, error, fCurrency, fData, fNumber, fPercent, fShortenNumber, formatFullname, getCurrencySymbol, getInitColorSchemeScript, getInitials, getStorage, grey, hexToRgbChannel, hideScrollX, hideScrollY, icon, iconClasses, info, isEqual, lightPalette, maxLine, mediaQueries, menuItem, neutral, orderBy, paper, paramCase, primary, primaryFont, pxToRem, radius, remToPx, removeStorage, responsiveFontSizes, schemeConfig, secondary, secondaryFont, sentenceCase, setFont, setStorage, shadows, snakeCase, splitFullname, stylesMode, success, surface, tertiaryFont, text, textGradient, typography, updateComponentsWithSettings, updateCoreWithSettings, useBoolean, useCopyToClipboard, useCountdownDate, useCountdownSeconds, useEventListener, useLocalStorage, usePopover, useResponsive, useScrollOffSetTop, useSetState, useSettings, useWidth, varAlpha, warning };