{"_id":"@atlassian/fancy-file-input","_rev":"4-403475264832d168627b61eb1794b502","name":"@atlassian/fancy-file-input","dist-tags":{"latest":"3.0.0","alpha":"3.0.0-alpha.4"},"versions":{"3.0.0-alpha.2":{"name":"@atlassian/fancy-file-input","version":"3.0.0-alpha.2","license":"Apache-2.0","_id":"@atlassian/fancy-file-input@3.0.0-alpha.2","maintainers":[{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"}],"homepage":"https://bitbucket.org/atlassianlabs/fancy-file-input#readme","bugs":{"url":"https://bitbucket.org/atlassianlabs/fancy-file-input/issues"},"dist":{"shasum":"a705df986f23e3c8d598f849b3fa401fbcb6de7f","tarball":"https://registry.npmjs.org/@atlassian/fancy-file-input/-/fancy-file-input-3.0.0-alpha.2.tgz","fileCount":12,"integrity":"sha512-At/hzvoji0N2aWOiCB2QAdDz5QGdLx5rd6vNA3VF4MDKaUhUKVICYD/n67YHN1ZUMkm6KbCKNk8dDiQA1XlAmQ==","signatures":[{"sig":"MEUCIE5uS4o5Cs9Udkps8ABMeqQ41O+y+UCK1s9QZeBnKJUnAiEAv6kVmW7cRM7J10xXeLIro/1RK3AXgO+VVVHpfxvBRGA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54442},"main":"./src/fancy-file-input","_from":"file:/tmp/package-1-698b116b-d69124fee2caf5cc55f87078-2.tgz","engines":{"node":">= 0.6.0"},"scripts":{"dist":"npm run build","lint":"eslint .","test":"jest","build":"rspack build && node scripts/copy-demo.js","version":"npm run dist","prepublishOnly":"npm run dist"},"_npmUser":{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"},"_resolved":"/tmp/package-1-698b116b-d69124fee2caf5cc55f87078-2.tgz","_integrity":"sha512-At/hzvoji0N2aWOiCB2QAdDz5QGdLx5rd6vNA3VF4MDKaUhUKVICYD/n67YHN1ZUMkm6KbCKNk8dDiQA1XlAmQ==","repository":{"url":"git+ssh://git@bitbucket.org/atlassianlabs/fancy-file-input.git","type":"git"},"_npmVersion":"10.8.2","description":"jQuery Fancy File Input plugin","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"registry":"https://packages.atlassian.com/api/npm/npm-public/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.0","less":"^4.2.0","eslint":"^9.0.0","jquery":"^4.0.0","globals":"^15.0.0","css-loader":"^7.1.3","@rspack/cli":"^1.0.0","less-loader":"^12.3.1","@rspack/core":"^1.0.0","jest-environment-jsdom":"^29.0.0"},"peerDependencies":{"jquery":"^1.11 || ^2.1.0 || ^3 || ^4"},"_npmOperationalInternal":{"tmp":"tmp/fancy-file-input_3.0.0-alpha.2_1770721647739_0.8619680330340924","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-alpha.3":{"name":"@atlassian/fancy-file-input","version":"3.0.0-alpha.3","license":"Apache-2.0","_id":"@atlassian/fancy-file-input@3.0.0-alpha.3","maintainers":[{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"}],"homepage":"https://bitbucket.org/atlassianlabs/fancy-file-input#readme","bugs":{"url":"https://bitbucket.org/atlassianlabs/fancy-file-input/issues"},"dist":{"shasum":"4c3b14177d80582d167b9b5376c76b6c6e2c3606","tarball":"https://registry.npmjs.org/@atlassian/fancy-file-input/-/fancy-file-input-3.0.0-alpha.3.tgz","fileCount":12,"integrity":"sha512-Tyew3NknnFwpMvQdRPo/jL/FDmIaTC/M0tRN95CU9ufK9prQRk6EGxJ5w/zKq+9bDMQi+aBz/q99azw7ygHUAA==","signatures":[{"sig":"MEQCID6wfzfx833QVYRIpw3CRph+8yJlWjFJgPUqIuw4L7EzAiAooRCcj9dz6FtDLXIBGRAVHVg4UWke3wfRXE47FKI2rQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54274},"main":"./src/fancy-file-input","_from":"file:/tmp/package-1-698b173c-fae72d438860043c9b4b534b-2.tgz","engines":{"node":">= 0.6.0"},"scripts":{"dist":"npm run build","lint":"eslint .","test":"jest","build":"rspack build && node scripts/copy-demo.js","version":"npm run dist","prepublishOnly":"npm run dist"},"_npmUser":{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"},"_resolved":"/tmp/package-1-698b173c-fae72d438860043c9b4b534b-2.tgz","_integrity":"sha512-Tyew3NknnFwpMvQdRPo/jL/FDmIaTC/M0tRN95CU9ufK9prQRk6EGxJ5w/zKq+9bDMQi+aBz/q99azw7ygHUAA==","repository":{"url":"git+ssh://git@bitbucket.org/atlassianlabs/fancy-file-input.git","type":"git"},"_npmVersion":"10.8.2","description":"jQuery Fancy File Input plugin","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"registry":"https://packages.atlassian.com/api/npm/npm-public/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.0.0","less":"^4.2.0","eslint":"^9.0.0","jquery":"^4.0.0","globals":"^15.0.0","css-loader":"^7.1.3","@rspack/cli":"^1.0.0","less-loader":"^12.3.1","@rspack/core":"^1.0.0","jest-environment-jsdom":"^29.0.0"},"peerDependencies":{"jquery":"^1.11 || ^2.1.0 || ^3 || ^4"},"_npmOperationalInternal":{"tmp":"tmp/fancy-file-input_3.0.0-alpha.3_1770723136326_0.5165300058346716","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-alpha.4":{"name":"@atlassian/fancy-file-input","version":"3.0.0-alpha.4","license":"Apache-2.0","_id":"@atlassian/fancy-file-input@3.0.0-alpha.4","maintainers":[{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"}],"homepage":"https://bitbucket.org/atlassianlabs/fancy-file-input#readme","bugs":{"url":"https://bitbucket.org/atlassianlabs/fancy-file-input/issues"},"dist":{"shasum":"454e39a269c08b16bee445b1cd0c4de19e3daa5f","tarball":"https://registry.npmjs.org/@atlassian/fancy-file-input/-/fancy-file-input-3.0.0-alpha.4.tgz","fileCount":12,"integrity":"sha512-Na0/Ghv5VBK+jMS/ArQ4Aazlp3BtOXtLv2A1vr0aQCh+5lGkZLNeQstQY6dX3QAvjGW9Rvn6YYnuDB3En8O2HQ==","signatures":[{"sig":"MEQCIGJerzZlq0n2WJvQ1OPBCSu1Zn0Gh/XxxBiNi9/xD6dRAiBoyj1mxmP0SUrofeaZZIxB/6CHBksJpHqw8khvnhQJSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60252},"main":"./src/fancy-file-input","_from":"file:/tmp/package-1-698b3004-648d5e54070391b219d1b40f-1.tgz","engines":{"node":">= 0.10.0"},"scripts":{"lint":"eslint .","test":"jest","build":"rspack build","version":"npm run build","build:demo":"npm run build && node scripts/copy-demo.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"},"_resolved":"/tmp/package-1-698b3004-648d5e54070391b219d1b40f-1.tgz","_integrity":"sha512-Na0/Ghv5VBK+jMS/ArQ4Aazlp3BtOXtLv2A1vr0aQCh+5lGkZLNeQstQY6dX3QAvjGW9Rvn6YYnuDB3En8O2HQ==","repository":{"url":"git+ssh://git@bitbucket.org/atlassianlabs/fancy-file-input.git","type":"git"},"_npmVersion":"10.8.2","description":"jQuery Fancy File Input plugin","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"registry":"https://packages.atlassian.com/api/npm/npm-public/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.0.0","less":"^4.2.0","eslint":"^9.0.0","jquery":"^4.0.0","globals":"^15.0.0","css-loader":"^7.1.3","@rspack/cli":"^1.0.0","less-loader":"^12.3.1","@rspack/core":"^1.0.0","jest-environment-jsdom":"^29.0.0"},"peerDependencies":{"jquery":"^1.11 || ^2.1.0 || ^3 || ^4"},"_npmOperationalInternal":{"tmp":"tmp/fancy-file-input_3.0.0-alpha.4_1770729479822_0.5154598434993498","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@atlassian/fancy-file-input","description":"jQuery Fancy File Input plugin","version":"3.0.0","main":"./src/fancy-file-input","engines":{"node":">= 0.10.0"},"scripts":{"test":"jest","lint":"eslint .","build":"rspack build","build:demo":"npm run build && node scripts/copy-demo.js","prepublishOnly":"npm run build","version":"npm run build"},"license":"Apache-2.0","repository":{"type":"git","url":"git+ssh://git@bitbucket.org/atlassianlabs/fancy-file-input.git"},"publishConfig":{"registry":"https://packages.atlassian.com/api/npm/npm-public/"},"peerDependencies":{"jquery":"^1.11 || ^2.1.0 || ^3 || ^4"},"devDependencies":{"@rspack/cli":"^1.0.0","@rspack/core":"^1.0.0","css-loader":"^7.1.3","eslint":"^9.0.0","globals":"^15.0.0","jquery":"^4.0.0","jest":"^29.0.0","jest-environment-jsdom":"^29.0.0","less":"^4.2.0","less-loader":"^12.3.1"},"_id":"@atlassian/fancy-file-input@3.0.0","bugs":{"url":"https://bitbucket.org/atlassianlabs/fancy-file-input/issues"},"homepage":"https://bitbucket.org/atlassianlabs/fancy-file-input#readme","_integrity":"sha512-VYR1+MHjKTzBgAIMddsjzMZcNE2r6iqeZtzkL+C4HWAdMzb2oQ2Y71j+9F8pJTBJtmXX9WqVODJTa0mtqI4rKQ==","_resolved":"/tmp/package-1-698c2682-71d5283b829799c750b2c4b7-1.tgz","_from":"file:/tmp/package-1-698c2682-71d5283b829799c750b2c4b7-1.tgz","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-VYR1+MHjKTzBgAIMddsjzMZcNE2r6iqeZtzkL+C4HWAdMzb2oQ2Y71j+9F8pJTBJtmXX9WqVODJTa0mtqI4rKQ==","shasum":"2292a7ce21351fe9f0a52b054fd3e3faf366caa0","tarball":"https://registry.npmjs.org/@atlassian/fancy-file-input/-/fancy-file-input-3.0.0.tgz","fileCount":12,"unpackedSize":56141,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC7PZsDhXqFy7TZMIekyUgccQsNf+z6dBhz/aIXBKiTZAIhANNc5TVKEEhciTSq/Smx9vhxAa+aIVU1n7qEQVeMvpYq"}]},"_npmUser":{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"},"directories":{},"maintainers":[{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fancy-file-input_3.0.0_1770792581551_0.9101344365614108"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-10T11:07:27.607Z","modified":"2026-02-11T06:49:41.830Z","3.0.0-alpha.2":"2026-02-10T11:07:27.884Z","3.0.0-alpha.3":"2026-02-10T11:32:16.459Z","3.0.0-alpha.4":"2026-02-10T13:17:59.994Z","3.0.0":"2026-02-11T06:49:41.687Z"},"bugs":{"url":"https://bitbucket.org/atlassianlabs/fancy-file-input/issues"},"license":"Apache-2.0","homepage":"https://bitbucket.org/atlassianlabs/fancy-file-input#readme","repository":{"type":"git","url":"git+ssh://git@bitbucket.org/atlassianlabs/fancy-file-input.git"},"description":"jQuery Fancy File Input plugin","maintainers":[{"name":"atlassianartifactteam","email":"eng-development-tooling-secrets-and-artifacts@atlassian.com"}],"readme":"The repository has been archived.\n\nFancy File Input\n=================\n\nThis jQuery plugin provides an enormous amount of flexibility for styling file input fields. The visual appearance is 100% customisable via CSS. No images are used so they display nicely on retina/HiDPI displays. They are responsive, accessible, and support internationalization (i18n).\n\n## Browser support\n\nFirefox, Chrome, Edge, Safari (matching Atlassian's DC standard browser support policy)\n\n## How does it work?\n\nWrap your file input with a label with the ffi class and data attribute for the button text. If you can't modify the markup, or want to render this clientside first, then the JS will wrap it for you, however this can lead to a flash of unstyled content for the field and, depending on the height of the field, may cause some \"jank\" in the page.\n\n    <label class=\"ffi\" data-ffi-button-text=\"Browse...\">\n        <input type=\"file\" name=\"something\" />\n    </label>\n\n[Take a look at the demos](http://seancurtis.com/experiments/ffi/) for more configurations and customisations.\n\n## Basic Usage\n\n    $(function(){\n\t\t$('input[type=file]').fancyFileInput();\n\t});\n\n## Customise with options\n\n    $(function(){\n        $('input[type=file]').fancyFileInput({\n            buttonText: \"Browse\\u2026\", // The text for the \"button\"\n            multipleFileTextPattern: \"{0} files\", // Shown when multiple files are chosen\n            clearButtonText: \"Clear\" // For screen readers\n        });\n    });\n\n## Release\n\n1. You'll need to first get package publishing permissions with `atlas packages permission grant`.\n2. Remember to add a changelog entry in `CHANGELOG.md` and create a tag in the repo matching the version.\n3. Run `npm publish --tag alpha` for testing version only in PAC or `npm publish --userconfig=~/.npmrc-public` for release to public PAC and npm (see https://hello.atlassian.net/wiki/spaces/~zxu2/pages/5795449397/How+to+locally+npm+publish+to+public+npm+2025+mid).\n4. Then create a PR bumping the package version in `package.json` for the next development iteration.\n","readmeFilename":"README.md"}