UNPKG

@nexusui/components

Version:

These are custom components specially-developed for NexusUI applications. They will make your life easier by giving you out-of-the-box implementations for various high-level UI elements that you can drop directly into your application.

2 lines (1 loc) 1.89 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),a=require("@mui/material/Stack"),r=require("@mui/material/Typography"),t=require("react"),i=require("@mui/material/Box"),s=require("@mui/icons-material/ArrowDownward"),l=require("@mui/material/Avatar"),o=require("./DropOverlay.styles.js"),n=require("../../../locales/index.js"),u=require("../../locale.json.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var x=d(a),c=d(r),m=d(i),p=d(s),f=d(l);const h="NexusDropOverlay";exports.DropOverlay=a=>{const r=n.useTranslate(u.default),{dropZoneOptions:i,header:s=r("Drop files anywhere to upload"),showMaxFiles:l=!0,showMaxSize:d=!0,extraDescription:y,sx:j}=a,v=t.useMemo((()=>i?.maxSize&&Number.isFinite(i.maxSize)?parseFloat((i.maxSize/1024/1024).toFixed(1)):1/0),[i?.maxSize]),$=i?.maxFiles||"";return e.jsxs(x.default,{sx:[o.overlayStyle,...Array.isArray(j)?j:[j]],direction:"column",alignItems:"center",justifyContent:"center","data-testid":`${h}-root`,className:`${h}-root`,children:[e.jsx(f.default,{sx:{height:48,width:48,mb:3,backgroundColor:"grey.600"},children:e.jsx(p.default,{})}),s&&e.jsxs(m.default,{"data-testid":`${h}-header`,className:`${h}-header`,children:["string"==typeof s&&e.jsx(c.default,{variant:"subtitle1",sx:{fontWeight:700,mb:2},children:s}),"string"!=typeof s&&s]}),l&&$&&e.jsxs(c.default,{variant:"caption","data-testid":`${h}-maxFiles`,className:`${h}-maxFiles`,children:[r("MaximumNumberFiles",{0:`${$}`}),"."]}),d&&v&&v!==1/0&&e.jsxs(c.default,{variant:"caption","data-testid":`${h}-maxSize`,className:`${h}-maxSize`,children:[r("MaximumFileSize",{0:v}),"."]}),y&&e.jsxs(m.default,{"data-testid":`${h}-extraDescription`,className:`${h}-extraDescription`,children:["string"==typeof y&&e.jsx(c.default,{variant:"caption",children:y}),"string"!=typeof y&&y]})]})},exports.prefix=h;