uppy/packages/@uppy/url
Kevin van Zonneveld e99a17f1fe
companion: port to TypeScript (#6179)
Supersedes #6178.

This branch keeps the exact same final content as #6178, but splits
history for reviewability:

1. `chore(companion): rename source and test files from .js to .ts`
(pure `git mv`, no content changes)
2. `feat(companion): port Companion to TypeScript` (actual
content/type/schema/build updates)

Validation note:
- Final tree is byte-for-byte identical to `ts-companion`
(`7b5b16a298690b0492de4cc4fab744f998b45570`).

---------

Co-authored-by: Mikael Finstad <finstaden@gmail.com>
2026-05-04 20:50:43 +08:00
..
src Make Generics Optional in uppy.getPlugin (#6057) 2025-11-17 18:18:54 +05:30
.npmignore @uppy/url: migrate to TS (#4980) 2024-03-11 10:42:49 +01:00
CHANGELOG.md [ci] release (#6060) 2025-12-02 10:09:28 +01:00
LICENSE Move Url plugin to @uppy/url. 2018-06-18 01:10:21 -04:00
package.json companion: port to TypeScript (#6179) 2026-05-04 20:50:43 +08:00
README.md Fix links (#5492) 2024-10-29 13:54:00 +01:00
tsconfig.build.json From Babel to TS (#5792) 2025-06-30 16:12:26 +02:00
tsconfig.json Migrate from Eslint/Prettier/Stylelint to Biome (#5794) 2025-07-01 14:55:41 +02:00
turbo.json Fix turbo race condition (#5839) 2025-07-23 10:49:11 +02:00
vitest.config.ts improve test scripts (#6016) 2025-10-17 22:07:01 +08:00
vitest.setup.ts companion: port to TypeScript (#6179) 2026-05-04 20:50:43 +08:00

@uppy/url

Uppy logo: a smiling puppy above a pink upwards arrow

npm version CI status for Uppy tests CI status for Companion tests CI status for browser tests

The Url plugin lets users import files from the Internet. Paste any URL and itll be added!

A Companion instance is required for the Url plugin to work. Companion will download the files and upload them to their destination. This saves bandwidth for the user (especially on mobile connections) and helps avoid CORS restrictions.

Uppy is being developed by the folks at Transloadit, a versatile file encoding service.

Example

import Uppy from '@uppy/core'
import Url from '@uppy/url'

const uppy = new Uppy()
uppy.use(Url, {
  // Options
})

Installation

$ npm install @uppy/url

Alternatively, you can also use this plugin in a pre-built bundle from Transloadits CDN: Smart CDN. In that case Uppy will attach itself to the global window.Uppy object. See the main Uppy documentation for instructions.

Documentation

Documentation for this plugin can be found on the Uppy website.

License

The MIT License.