"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../index-DEZRGktf.js"),t=require("lucide-react");require("react-router-dom");require("react");require("react-dom");const r=()=>{const i=[{label:"Primary",color:"primary"},{label:"Secondary",color:"secondary"},{label:"Danger",color:"danger"},{label:"Info",color:"info"},{label:"Success",color:"success"},{label:"Warning",color:"warning"}];return e.jsxs(e.Fragment,{children:[e.jsx(l.HeroCard,{title:"FileInput",description:"An advanced file input component with native HTML5 drag-and-drop support, image preview, and flexible file type validation. The component implements native drag and drop functionality without external dependencies.",icon:e.jsx("div",{className:"w-20 h-20 sm:w-24 sm:h-24 md:w-32 md:h-32 bg-linear-to-br from-purple-500 via-fuchsia-500 to-pink-500 rounded-full flex items-center justify-center shadow-lg border border-purple-500/50",children:e.jsx(t.Upload,{className:"w-10 h-10 sm:w-12 sm:h-12 md:w-16 md:h-16 text-white filter drop-shadow-lg"})})}),e.jsx(l.CardContainer,{className:"overflow-hidden",children:e.jsx(l.CardTitle,{title:"Examples",className:"mt-2 mb-2",children:e.jsx("div",{className:"w-full p-4 sm:p-6",children:e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"Images Only"}),e.jsx(l.FileInputWithRef,{label:"Upload Images",accept:"img",placeholderText:"PNG, JPG, GIF, WEBP. Max 100mb."})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"Multiple Images"}),e.jsx(l.FileInputWithRef,{label:"Upload Multiple Images",accept:"img",multiple:!0,placeholderText:"Select multiple images"})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"PDF Documents"}),e.jsx(l.FileInputWithRef,{label:"Upload PDF",accept:"pdf",placeholderText:"PDF files only. Max 100mb."})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"CSV & Excel Files"}),e.jsx(l.FileInputWithRef,{label:"Upload CSV or Excel",accept:"csvAndExcel",multiple:!0,placeholderText:"CSV, XLSX, or XLS files. Max 100mb."})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"Images & PDFs"}),e.jsx(l.FileInputWithRef,{label:"Upload Images or PDFs",accept:"imgAndPdf",multiple:!0,placeholderText:"Images or PDF documents"})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"All File Types"}),e.jsx(l.FileInputWithRef,{label:"Upload Any File",accept:"all",multiple:!0,placeholderText:"Drag and drop any file type or click to browse"})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"Any File (No Restriction)"}),e.jsx(l.FileInputWithRef,{label:"Upload Files",multiple:!0,placeholderText:"Accept any file type - no restrictions"})]}),e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:"Disabled"}),e.jsx(l.FileInputWithRef,{accept:"img",disabled:!0})]})]})})})}),e.jsx(l.CardContainer,{className:"overflow-hidden",children:e.jsx(l.CardTitle,{title:"Colors",className:"mt-2 mb-2",children:e.jsx("div",{className:"w-full p-4 sm:p-6",children:e.jsx("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2",children:i.map(({label:a,color:s})=>e.jsxs(l.CardContainer,{className:"p-4",children:[e.jsx(l.Typography,{tag:"h5",className:"mb-3",children:a}),e.jsx(l.FileInputWithRef,{label:`Upload ${a}`,color:s,accept:"img",placeholderText:"PNG, JPG, GIF, WEBP. Max 100mb."})]},s))})})})}),e.jsx(l.PropPlayground,{componentName:"FileInput",defaultValues:{label:"Upload Assets",accept:"img",multiple:!1,disabled:!1,color:"primary",placeholderText:"PNG, JPG, GIF or PDF. Max 100mb."},includeProps:["label","accept","multiple","disabled","color","placeholderText"],excludeProps:["children","containerProps","additionalInputProps","wrapperClassName","className","labelClassName","containerClassName"],children:a=>e.jsx("div",{className:"w-full max-w-2xl",children:e.jsx(l.FileInputWithRef,{...a})})}),e.jsx(l.AutoPropsTable,{componentName:"FileInput"}),e.jsx(l.CardContainer,{className:"overflow-hidden",children:e.jsx(l.CardTitle,{title:"Code Example",className:"mt-2 mb-2",children:e.jsx("div",{className:"w-full p-4 sm:p-6",children:e.jsx(l.CodeBlock,{language:"tsx",code:`import { FileInput } from '@e-burgos/tucu-ui';

// Images only
<FileInput
  label="Upload Images"
  accept="img"
  placeholderText="PNG, JPG, GIF, WEBP. Max 100mb."
/>

// Multiple images
<FileInput
  label="Upload Multiple Images"
  accept="img"
  multiple
  placeholderText="Select multiple images"
/>

// PDF documents
<FileInput
  label="Upload PDF"
  accept="pdf"
  placeholderText="PDF files only. Max 100mb."
/>

// CSV and Excel files
<FileInput
  label="Upload CSV or Excel"
  accept="csvAndExcel"
  multiple
  placeholderText="CSV, XLSX, or XLS files. Max 100mb."
/>

// Images and PDFs
<FileInput
  label="Upload Images or PDFs"
  accept="imgAndPdf"
  multiple
  placeholderText="Images or PDF documents"
/>

// All predefined file types
<FileInput
  label="Upload Any File"
  accept="all"
  multiple
  placeholderText="Drag and drop any file type or click to browse"
/>

// Any file type (no restrictions)
<FileInput
  label="Upload Files"
  multiple
  placeholderText="Accept any file type - no restrictions"
/>

// Disabled
<FileInput accept="img" disabled />

// Colors
<FileInput accept="img" color="primary" />
<FileInput accept="img" color="secondary" />
<FileInput accept="img" color="danger" />
<FileInput accept="img" color="info" />
<FileInput accept="img" color="success" />
<FileInput accept="img" color="warning" />

// Custom styling
<FileInput
  accept="img"
  wrapperClassName="custom-wrapper"
  containerClassName="custom-container"
  labelClassName="custom-label"
/>`})})})})]})};exports.default=r;
