mirror of
https://github.com/transloadit/uppy.git
synced 2026-08-01 14:31:15 +00:00
fixes #6024. ### Problem - `getPlugin()` defaults to `UnknownPlugin`, so methods like `openModal` are not visible , since core is not aware of that plugin type ### Proposed change - Introduce a types-only registry in core: - `export interface PluginTypeRegistry<M extends Meta, B extends Body> {}` - Overload `getPlugin` to return a precise type when the id is a known key of the registry. - add `Dashboard` to PluginTypeRegistry through module augmentation: - `'Dashboard': Dashboard<M, B>`. - When a project imports from `@uppy/dashboard`, its module augmentation extends PluginTypeRegistry, adding the correct type into it - I've added Tests , kept them in a separate file so it's easier to review , once this approach gets approved I'll add them to `Uppy.test.ts` Once this PR gets a positive review I'll add this for other plugins , currently only added for `@uppy/dashboard` **Build with Local tarball can be checked here** https://stackblitz.com/~/github.com/qxprakash/uppy-type-test?file=type_test.ts |
||
|---|---|---|
| .. | ||
| src/lib | ||
| .gitignore | ||
| .npmignore | ||
| CHANGELOG.md | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| svelte.config.js | ||
| tsconfig.json | ||
| turbo.json | ||
| vite.config.js | ||
@uppy/svelte
Svelte component wrappers around Uppy’s officially maintained UI plugins.
Uppy is being developed by the folks at Transloadit, a versatile file encoding service.
Installation
All Svelte components are provided through the @uppy/svelte package.
Install from NPM:
npm install @uppy/svelte
# Or with yarn
yarn add @uppy/svelte
Documentation
Documentation for this plugin can be found on the Uppy website. At the moment, there’s no documentation yet, so this link won’t work. Stay tuned for more info