UNPKG

@ozen-ui/kit

Version:

React component library

23 lines (22 loc) 1.48 kB
import { __assign, __rest } from "tslib"; import React from 'react'; import { useThemeProps } from '../../../../hooks/useThemeProps'; import { cn } from '../../../../utils/classname'; import { polymorphicComponentWithRef } from '../../../../utils/polymorphicComponentWithRef'; import { Loader } from '../../../Loader'; import { Stack } from '../../../Stack'; import { useFileUploaderContext } from '../../context'; import { FILE_UPLOADER_LOADER_DEFAULT_TAG, FILE_UPLOADER_SIZE_TO_LOADER_SIZE, } from './constants'; export var cnFileUploaderLoader = cn('FileUploaderLoader'); export var FileUploaderLoader = polymorphicComponentWithRef(function (inProps, ref) { var props = useThemeProps({ props: inProps, name: 'FileUploaderLoader', }); var text = props.text, _a = props.as, as = _a === void 0 ? FILE_UPLOADER_LOADER_DEFAULT_TAG : _a, className = props.className, other = __rest(props, ["text", "as", "className"]); var size = useFileUploaderContext().size; return (React.createElement(Stack, __assign({}, other, { as: as, ref: ref, className: cnFileUploaderLoader({ size: size }, [className]), direction: "column", justify: "center", align: "center", gap: "s" }), React.createElement(Loader, { className: cnFileUploaderLoader('Loader'), size: FILE_UPLOADER_SIZE_TO_LOADER_SIZE[size] }), React.createElement("div", { className: cnFileUploaderLoader('Text') }, text))); }); FileUploaderLoader.displayName = 'FileUploaderLoader';