UNPKG

@lanaco/lnc-react-ui

Version:

React component library

15 lines (12 loc) 2.05 kB
"use strict";const l=require("react/jsx-runtime"),s=require("react"),$=require("./emotion-styled.browser.esm-DwHBgTPn.cjs"),B=require("./DragAndDropFile.cjs"),E=require("./UploadedFile.cjs"),p=require("./utils-BK6B_Y9X.cjs"),G=require("./FlexGrid.cjs"),f=require("./FlexGridItem.cjs"),M=require("./emotion-element-f0de968e.browser.esm-B7k6i6lC.cjs"),U=$.styled.div` display: flex; flex-direction: column; gap: 1rem; border: ${t=>`1px solid ${p.getColorRgbaValue(t.theme,"DragDropFiles",t.color,"enabled","border")}`}; border-radius: ${t=>p.getBorderRadiusValueWithUnits(t.theme,"regular")}; padding: 1.25rem 2.5rem; & .file-item-lnc { padding: 0.5rem 0.813rem; height: 100%; } `,V=s.forwardRef((t,g)=>{const{id:D="",disabled:x=!1,preventDefault:b=!1,acceptDropzone:q={},acceptInput:C,multiple:F=!0,selectFileText:j="Select file",dndFileText:R="Drag and drop file here or",control:w,showFileSize:a=!0,files:S=[],onChange:d=()=>{},onFocus:y=()=>{},onBlur:z=()=>{},onDropAccepted:m=()=>{},onDrop:u=()=>{},fileClick:A=()=>{},onCancel:k=()=>{},color:i="primary",size:c="small",dragAndDropFileProps:v,uploadedFileProps:n,..._}=t;var I={theme:M.useTheme(),size:c,color:i};const[r,h]=s.useState([]);s.useEffect(()=>{},[S]);const N=s.useCallback((e,o)=>{u&&u(e,o)},[]),O=s.useCallback(e=>{m&&m(e)},[]),T=e=>{var o;(o=e.target)!=null&&o.files?h([...r,...e.target.files]):e&&h([...r,...e]),d&&d(e)};return l.jsx(U,{ref:g,...I,..._,children:l.jsxs(G,{direction:"RowReverse",children:[l.jsx(f,{M:(r==null?void 0:r.length)>0?6:12,children:l.jsx(B,{id:D,disabled:x,preventDefault:b,acceptDropzone:q,acceptInput:C,multiple:F,selectFileText:j,dndFileText:R,control:w,showFileSize:a,showDnD:!((r==null?void 0:r.length)>0),onChange:T,onFocus:y,onBlur:z,onDrop:N,onDropAccepted:O,color:i,size:c,...v})}),r==null?void 0:r.map((e,o)=>l.jsx(f,{M:6,children:l.jsx(E,{fileName:e.name,fileSize:e.size,showFileSize:a,color:i,size:c,onFileClick:A,onCancel:k,...n,className:"file-item-lnc "+(n==null?void 0:n.className)},o)},o))]})})});module.exports=V;