{"_id":"@bolttech/ob-atoms-file-upload","_rev":"4-4e12ec03dd1d329cd662bdf4d8610b48","name":"@bolttech/ob-atoms-file-upload","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@bolttech/ob-atoms-file-upload","version":"1.0.0","_id":"@bolttech/ob-atoms-file-upload@1.0.0","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"e55ca73ed65ab5cdcdec2ae4b1f55e834171c0b7","tarball":"https://registry.npmjs.org/@bolttech/ob-atoms-file-upload/-/ob-atoms-file-upload-1.0.0.tgz","fileCount":12,"integrity":"sha512-XvclWCl9BbnY5KZzqEG2Dkusxl/9tBpdtFzsjC4hd0QxFexGz81dIiNA2ysIMmgmYb2p/WJYE2NZRAz3WjcVtw==","signatures":[{"sig":"MEQCIHavM4fk1pk1+Iy6k7gmDlUM7CvjNpPFrc2onnIWa5UTAiAC9dPwzjJY1p+09yEuDC6UF6Qe3Bz2LwdcsNb/c3UqAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273261},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"8dbc3be84a8a8e717502c2ecfaa431ab14362e02","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"11.10.1","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.17.1","dependencies":{"@bolttech/ui-utils":"0.6.5"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-atoms-file-upload_1.0.0_1778515479811_0.8742006286003563","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bolttech/ob-atoms-file-upload","version":"1.0.1","_id":"@bolttech/ob-atoms-file-upload@1.0.1","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"ede31d904944843e48b8fcda0153c80b40f4e756","tarball":"https://registry.npmjs.org/@bolttech/ob-atoms-file-upload/-/ob-atoms-file-upload-1.0.1.tgz","fileCount":5,"integrity":"sha512-xPOZuEouwgISrcDxQ+ffZsM8R9mhr+8qnDkxEqR+qjveortQUefgvysY42YJ8nr/j3F0SsNdtMr0wGVer5qgqw==","signatures":[{"sig":"MEUCIHwRYzjwDz0PVMQ5VzAagldMS4wr6iHFZpe/UeZXp7epAiEA4RwmeYBSyKOSENXyRmTgCM2QQhmKo3/LxOpLHlggSj8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144752},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"ea6306526246fa6bd8b407f65bebb75c5db04518","_npmUser":{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"},"_npmVersion":"10.9.4","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.22.0","dependencies":{"react":"19.1.2","classnames":"^2.5.1","react-dropzone":"14.3.8","@bolttech/ob-atoms-icon":"1.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-atoms-file-upload_1.0.1_1780926778024_0.14566259571802886","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bolttech/ob-atoms-file-upload","version":"1.0.2","_id":"@bolttech/ob-atoms-file-upload@1.0.2","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"db4821ae7b92b1fbeb9619cacbafb70ff98a4294","tarball":"https://registry.npmjs.org/@bolttech/ob-atoms-file-upload/-/ob-atoms-file-upload-1.0.2.tgz","fileCount":12,"integrity":"sha512-1SvQ+K9UORVcF8RCBEOA2tvGm4k45p3DHe2KV91+ttj+2lYe6vRDBSeVuks3Hd0x30JK80/WbJyCE8ZauSiymg==","signatures":[{"sig":"MEUCIQDKwSG7ihWh/scHy5TWOQyI8NTs1xOVPkfYM3qhEQvJOwIgPkwQX1LK1AeS2vmJUc2aKG1eOVBQcOR15giATeD3b4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEnYRRr8lwt5cIRxpOeGqp0PA7kHzXYizPVCgIdjR6V6AiEAzeorai/xWu7ZGHc9iJpKUx41dNqxzPoHRWa0vB4KL2Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118917},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"61426b405b884dcc38a5ce8a3ae273df449e2bc7","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"10.9.8","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.17.1","dependencies":{"react":"19.1.2","classnames":"^2.5.1","react-dropzone":"14.3.8","@bolttech/ob-atoms-icon":"1.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-atoms-file-upload_1.0.2_1788779003113_0.196120583769404","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"_id":"@bolttech/ob-atoms-file-upload@1.0.3","dist":{"shasum":"953ac756287654b0b3f3ded8927b1c444387d921","tarball":"https://registry.npmjs.org/@bolttech/ob-atoms-file-upload/-/ob-atoms-file-upload-1.0.3.tgz","fileCount":11,"integrity":"sha512-aWWCVIpSYrGjp7T3UP0Q4Vy2pIDLQG4ue0z/uylQ5UoFjNp/g9kGKgGNvoTPJ7B6IxSf44zG/a5sRW0J7MLh/g==","signatures":[{"sig":"MEUCIQDlYhaKfmRhOyPB35wt9Jlqc4nkQJFynL8cNqzLnbYqAgIgXzQY+5LpxMUY3Z3CYaWE6WRWGnAosC3sxn68vEPasso=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCAtxZl1wo8IBg45OxkK4adBqR/SqFKMMBdzGNaLLxerQIgG+omWd5oXoHZKIyu6Bnv4t/DrLLVyQgPLF2a6Nn74a0="}],"unpackedSize":122269},"main":"./index.cjs.js","name":"@bolttech/ob-atoms-file-upload","type":"commonjs","types":"./index.d.ts","gitHead":"0c350bd4b74dcba4c7c8b2ca2ce2d49445037df5","version":"1.0.3","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"10.9.8","description":"A simple React component for file uploads, supporting both traditional input and drag & drop.","directories":{},"maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"_nodeVersion":"22.17.1","dependencies":{"react":"19.1.2","classnames":"^2.5.1","react-dropzone":"14.3.8","@bolttech/ob-atoms-icon":"1.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ob-atoms-file-upload_1.0.3_1788796369598_0.9221741424529837"}}},"time":{"created":"2026-05-11T16:04:39.755Z","modified":"2026-09-07T15:52:49.895Z","1.0.0":"2026-05-11T16:04:39.977Z","1.0.1":"2026-06-08T13:52:58.192Z","1.0.2":"2026-09-07T11:03:23.209Z","1.0.3":"2026-09-07T15:52:49.684Z"},"description":"A simple React component for file uploads, supporting both traditional input and drag & drop.","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"readme":"# FileUpload Component\n\nA simple React component for file uploads, supporting both traditional input and drag & drop.\n\n## Installation\n\nUse [npm](https://www.npmjs.com/) or [yarn](https://yarnpkg.com/) to install the component.\n\n```bash\nnpm install @bolttech/atoms-file-upload\n```\n\nor\n\n```bash\nyarn add @bolttech/atoms-file-upload\n```\n\n## Props\n\nThe `FileUpload` component accepts the following properties:\n\n| Prop            | Type      | Description                                                                                       |\n|-----------------|-----------|---------------------------------------------------------------------------------------------------|\n| id              | `string`  | The ID attribute for the upload element.                                                          |\n| dataTestId      | `string`  | Identifier for automated tests.                                                                   |\n| text            | `string`  | Label text for the upload.                                                                        |\n| dragActiveText  | `string`  | Text displayed when files are dragged over the dropzone.                                          |\n| variant         | `string`  | Upload type: `'input'` or `'dropzone'`.                                                           |\n| accept          | `string`  | Accepted file types (e.g., `'image/png'`).                                                        |\n| multiple        | `boolean` | Allows selection of multiple files.                                                               |\n| disabled        | `boolean` | Disables the component.                                                                           |\n| value           | `File[]`  | List of selected files.                                                                           |\n| errorMessage    | `string`  | Custom error message.                                                                             |\n| onChange        | `function`| Callback to handle selected files.                                                                |\n\n## Usage\n\n```jsx\nimport React, { useState } from 'react';\nimport { FileUpload } from '@bolttech/atoms-file-upload/ob';\n\nconst ExampleComponent = () => {\n  const [files, setFiles] = useState([]);\n\n  const handleFileChange = async (selectedFiles) => {\n    setFiles(selectedFiles);\n    // Return an array of objects { file, success, message }\n    return selectedFiles.map(file => ({\n      file,\n      success: true,\n      message: `${file.name} uploaded successfully`\n    }));\n  };\n\n  return (\n    <FileUpload\n      id=\"custom-file-upload\"\n      text=\"Select or drag files\"\n      variant=\"dropzone\"\n      multiple\n      value={files}\n      onChange={handleFileChange}\n    />\n  );\n};\n\nexport default ExampleComponent;\n```\n\n## Contributing\n\nContributions are welcome! For bug fixes, improvements, or new features, please open an [issue](link-to-issues) or submit a pull request.\n\nPlease make sure to follow the code standards and test your\n","readmeFilename":"README.md"}