Commit graph

738 commits

Author SHA1 Message Date
Prakash
675b48fa14
@uppy/upgrade devdeps v2 (#6318)
AI disclaimer : AI used

## Changes
- **jsdom 26 → 29** across all packages' devDependencies —
**except`@uppy/aws-s3`** (left at 26; that plugin is being rewritten and
its deps are handled on the rewrite branch).
- **`@uppy/xhr-upload` unit tests migrated from nock to MSW**, and
`nock` dropped from its devDependencies.
  ## Why the test migration was needed
jsdom **28** overhauled resource loading so `XMLHttpRequest` now goes
through jsdom's internal (undici-based) fetch instead of Node's `http`
module ([jsdom 28 release
notes](https://github.com/jsdom/jsdom/releases/tag/28.0.0)).
nock intercepts at the Node `http` / `http.ClientRequest` layer ([nock
README](https://github.com/nock/nock)), so it can no longer see uppy's
upload requests — the mocked responses never arrive and the tests time
out. (This is the long-standing nock + jsdom XHR incompatibility:
[nock#518](https://github.com/nock/nock/issues/518).)

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-03 15:30:55 +05:30
Prakash
d7aaab7ad1
@uppy: upgrade dev deps (#6315)
addresses #6297

I'll raise another PR which would include deps which require code
changes
2026-06-02 10:48:58 +08:00
Prakash
c3c7cef4ed
@uppy: upgrade deps (#6307)
will do a separte PR for changes which would require code changes so
it's easier to review , didn't upgrade any deps for `@uppy/aws-s3` since
we'll merge the rewrite so I think we should do that upgrade in the
rewrite branch before merging.

update : Dependency upgrades which required code changes were raised
separately

- #6309 
- #6310

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-29 18:58:42 +05:30
Prakash
5519b84409
@uppy: upgrade biome and more improvements (#6244)
- This PR upgrades `biome` from `2.0.5` -> `2.1.2` and adds two new
rules
-
[noUnusedImports](https://biomejs.dev/linter/rules/no-unused-private-class-members)
( we already had suppressions for this rule in code, but the rule itself
was never enabled in the config )
-
[noUnusedPrivateClassMembers](https://biomejs.dev/linter/rules/no-unused-private-class-members/)
- remove stale suppressions. 
- remove stale code.

---------

Co-authored-by: Mikael Finstad <finstaden@gmail.com>
2026-05-21 12:28:03 +08:00
Prakash
12de077e6d
remove @uppy/instagram (#6257)
closes #5455 , this PR removes all Instagram support from both the
client and Companion server.

Removed:
- Instagram from @uppy/remote-sources (src, package.json, keywords)
- Instagram export from uppy bundle (bundle.ts, index.ts, package.json)
- Companion Instagram OAuth provider (provider/index.js, grant.js)
- Companion standalone helper Instagram env vars (helper.js,
env_example)
- All Companion Instagram tests (providers.test.js,
provider-manager.test.js, fixtures/index.js, mockserver.js)
2026-05-13 14:42:10 +05:30
Prakash
588e1c0f88
@uppy/core: fix stale comments (#6272)
reported in https://github.com/transloadit/uppy/issues/6270
2026-04-24 17:00:50 +05:30
dependabot[bot]
09bf6857a1
build(deps): bump lodash from 4.17.21 to 4.17.23 (#6152)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to
4.17.23.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="dec55b7a3b"><code>dec55b7</code></a>
Bump main to v4.17.23 (<a
href="https://redirect.github.com/lodash/lodash/issues/6088">#6088</a>)</li>
<li><a
href="19c9251b36"><code>19c9251</code></a>
fix: setCacheHas JSDoc return type should be boolean (<a
href="https://redirect.github.com/lodash/lodash/issues/6071">#6071</a>)</li>
<li><a
href="b5e672995a"><code>b5e6729</code></a>
jsdoc: Add -0 and BigInt zeros to _.compact falsey values list (<a
href="https://redirect.github.com/lodash/lodash/issues/6062">#6062</a>)</li>
<li><a
href="edadd45214"><code>edadd45</code></a>
Prevent prototype pollution on baseUnset function</li>
<li><a
href="4879a7a7d0"><code>4879a7a</code></a>
doc: fix autoLink function, conversion of source links (<a
href="https://redirect.github.com/lodash/lodash/issues/6056">#6056</a>)</li>
<li><a
href="9648f692b0"><code>9648f69</code></a>
chore: remove <code>yarn.lock</code> file (<a
href="https://redirect.github.com/lodash/lodash/issues/6053">#6053</a>)</li>
<li><a
href="dfa407db0b"><code>dfa407d</code></a>
ci: remove legacy configuration files (<a
href="https://redirect.github.com/lodash/lodash/issues/6052">#6052</a>)</li>
<li><a
href="156e1965ae"><code>156e196</code></a>
feat: add renovate setup (<a
href="https://redirect.github.com/lodash/lodash/issues/6039">#6039</a>)</li>
<li><a
href="933e1061b8"><code>933e106</code></a>
ci: add pipeline for Bun (<a
href="https://redirect.github.com/lodash/lodash/issues/6023">#6023</a>)</li>
<li><a
href="072a807ff7"><code>072a807</code></a>
docs: update links related to Open JS Foundation (<a
href="https://redirect.github.com/lodash/lodash/issues/5968">#5968</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/lodash/lodash/compare/4.17.21...4.17.23">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=lodash&package-manager=npm_and_yarn&previous-version=4.17.21&new-version=4.17.23)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/transloadit/uppy/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-26 15:01:18 +01:00
dependabot[bot]
fd8f54f542
build(deps): bump preact from 10.26.9 to 10.26.10 (#6123)
Bumps [preact](https://github.com/preactjs/preact) from 10.26.9 to
10.26.10.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/preactjs/preact/releases">preact's
releases</a>.</em></p>
<blockquote>
<h2>10.26.10</h2>
<h2>Fixes</h2>
<ul>
<li>Enforce strict equality for VNode object constructors</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e6f88b0842"><code>e6f88b0</code></a>
10.26.10</li>
<li><a
href="c373f23c48"><code>c373f23</code></a>
10.26 strict equality (<a
href="https://redirect.github.com/preactjs/preact/issues/4988">#4988</a>)</li>
<li><a
href="d008a1a242"><code>d008a1a</code></a>
10.26.x</li>
<li>See full diff in <a
href="https://github.com/preactjs/preact/compare/10.26.9...10.26.10">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=preact&package-manager=npm_and_yarn&previous-version=10.26.9&new-version=10.26.10)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/transloadit/uppy/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-08 12:00:59 +01:00
github-actions[bot]
556e36de4c
[ci] release (#6060)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/audio@3.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/aws-s3@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- ac12f35: Fix: Move completed uploads exclusion logic into uploaders.
This fixes the problem where postprocessors would not run for already
uploaded files.
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/box@4.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/compressor@3.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/core@5.2.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- ac12f35: Fix: Move completed uploads exclusion logic into uploaders.
This fixes the problem where postprocessors would not run for already
uploaded files.
- 4817585: added icon to webdav provider, add css to truncate large file
names
-   Updated dependencies [ac12f35]
    -   @uppy/utils@7.1.4

## @uppy/dashboard@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- cc3ff31: Move golden retriever clear files logic to the restore
function. This prevents race condition bugs when storing state.
-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/thumbnail-generator@5.1.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/drag-drop@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/drop-target@4.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/dropbox@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/facebook@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/form@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/golden-retriever@5.2.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- cc3ff31: Move golden retriever clear files logic to the restore
function. This prevents race condition bugs when storing state.
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/google-drive@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/google-drive-picker@1.1.0

### Minor Changes

- e661348: Allow selecting folders with Google Drive Picker. They will
be recursively resolved.
- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/google-photos-picker@1.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/image-editor@4.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/instagram@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/onedrive@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/provider-views@5.2.0

### Minor Changes

- e661348: Allow selecting folders with Google Drive Picker. They will
be recursively resolved.
- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- 4817585: added icon to webdav provider, add css to truncate large file
names
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/remote-sources@3.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [cc3ff31]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/dashboard@5.1.0
    -   @uppy/google-drive@5.1.0
    -   @uppy/instagram@5.1.0
    -   @uppy/facebook@5.1.0
    -   @uppy/onedrive@5.1.0
    -   @uppy/unsplash@5.1.0
    -   @uppy/dropbox@5.1.0
    -   @uppy/core@5.2.0
    -   @uppy/zoom@4.1.0
    -   @uppy/box@4.1.0
    -   @uppy/url@5.1.0

## @uppy/screen-capture@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/status-bar@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/thumbnail-generator@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/transloadit@5.3.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/tus@5.1.0
    -   @uppy/utils@7.1.4

## @uppy/tus@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- ac12f35: Fix: Move completed uploads exclusion logic into uploaders.
This fixes the problem where postprocessors would not run for already
uploaded files.
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/unsplash@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/url@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/webcam@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/webdav@1.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/xhr-upload@5.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

- ac12f35: Fix: Move completed uploads exclusion logic into uploaders.
This fixes the problem where postprocessors would not run for already
uploaded files.
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/zoom@4.1.0

### Minor Changes

- 79e6460: - Add PluginTypeRegistry and typed getPlugin overload in
@uppy/core
- Register plugin ids across packages so uppy.getPlugin('Dashboard' |
'Webcam') returns the concrete plugin type and removes the need to pass
generics in getPlugin()

### Patch Changes

-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/provider-views@5.2.0
    -   @uppy/core@5.2.0
    -   @uppy/utils@7.1.4

## @uppy/companion@6.2.1

### Patch Changes

- 4817585: added icon to webdav provider, add css to truncate large file
names

## @uppy/locales@5.0.1

### Patch Changes

-   c3c16ae: Improve zh-CN and zh-TW locale
-   8744c4d: Improve Dutch locale
-   Updated dependencies [ac12f35]
    -   @uppy/utils@7.1.4

## @uppy/utils@7.1.4

### Patch Changes

- ac12f35: Fix: Move completed uploads exclusion logic into uploaders.
This fixes the problem where postprocessors would not run for already
uploaded files.

## uppy@5.1.12

### Patch Changes

-   Updated dependencies [cc3ff31]
-   Updated dependencies [c3c16ae]
-   Updated dependencies [8744c4d]
-   Updated dependencies [e661348]
-   Updated dependencies [79e6460]
-   Updated dependencies [ac12f35]
-   Updated dependencies [4817585]
    -   @uppy/dashboard@5.1.0
    -   @uppy/golden-retriever@5.2.0
    -   @uppy/locales@5.0.1
    -   @uppy/provider-views@5.2.0
    -   @uppy/google-drive-picker@1.1.0
    -   @uppy/google-photos-picker@1.1.0
    -   @uppy/thumbnail-generator@5.1.0
    -   @uppy/remote-sources@3.1.0
    -   @uppy/screen-capture@5.1.0
    -   @uppy/google-drive@5.1.0
    -   @uppy/image-editor@4.1.0
    -   @uppy/drop-target@4.1.0
    -   @uppy/transloadit@5.3.0
    -   @uppy/compressor@3.1.0
    -   @uppy/status-bar@5.1.0
    -   @uppy/xhr-upload@5.1.0
    -   @uppy/drag-drop@5.1.0
    -   @uppy/instagram@5.1.0
    -   @uppy/facebook@5.1.0
    -   @uppy/onedrive@5.1.0
    -   @uppy/unsplash@5.1.0
    -   @uppy/dropbox@5.1.0
    -   @uppy/aws-s3@5.1.0
    -   @uppy/webcam@5.1.0
    -   @uppy/webdav@1.1.0
    -   @uppy/audio@3.1.0
    -   @uppy/core@5.2.0
    -   @uppy/form@5.1.0
    -   @uppy/zoom@4.1.0
    -   @uppy/box@4.1.0
    -   @uppy/tus@5.1.0
    -   @uppy/url@5.1.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-02 10:09:28 +01:00
Prakash
4817585b66
@uppy/companion: fix broken icons for webdav provider (#6069)
This fixes #6063.

It should be merged after #6059. Icon issue was fixed but This still
doesn’t fix the thumbnail preview issue, because OwnCloud and Nextcloud
don’t provide enough information about their thumbnail preview
endpoints. The docs aren’t very helpful: they mention how to make a
`PROPFIND` request to get extra metadata (such as has_preview)
[doc_ref](https://docs.nextcloud.com/server/stable/developer_manual/client_apis/WebDAV/basic.html#requesting-properties),
but I couldn’t get it to work with our webdav client.

Even if we did manage to obtain the thumbnail preview URL, it would be a
complicated capability to add, since we’d have to handle each WebDAV
server separately. That would lead to the same problems discussed here:
https://github.com/transloadit/uppy/pull/6059#issuecomment-3564642795 ,
so I don't think we need to spend anymore time on this.

**Before** 
<img width="1238" height="1014" alt="image"
src="https://github.com/user-attachments/assets/378c8b4b-640f-4e5d-9fef-48d255f729f9"
/>


**After** 
<img width="982" height="708" alt="image"
src="https://github.com/user-attachments/assets/7e20b119-c5a9-45dd-a0bd-7ddf95672137"
/>
2025-11-29 01:25:12 +05:30
Mikael Finstad
ac12f35f5b
Move completed uploads exclusion logic (#6058)
into uploader plugins

fixes #6051

also [fix deprecated usage of done
callback](2511142276)
2025-11-24 19:47:45 +07:00
Prakash
79e6460a6c
Make Generics Optional in uppy.getPlugin (#6057)
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
2025-11-17 18:18:54 +05:30
github-actions[bot]
2c4727e5f4
[ci] release (#6011)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/aws-s3@5.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/companion-client@5.1.1
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/companion@6.1.1

### Patch Changes

- 6a60ee5: Reject request early instead of crashing on missing
`filename` for /s3/multipart and /s3/params endpoints

## @uppy/companion-client@5.1.1

### Patch Changes

- 0c16fe4: - Split UppyFile into two intefaces distinguished by the
`isRemote` boolean:
    -   LocalUppyFile
    -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/components@1.0.4

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Move `restore-confirmed` from `onUploadStart` event listener to
`startUpload`, else it would cause `restore-confirmed` to be triggered
even if there is no `recoveredState` to recover
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/image-editor@4.0.2

## @uppy/compressor@3.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/core@5.1.1

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`)
- Introduce new field `progress`.`complete`: if there is a
post-processing step, set it to `true` once post processing is complete.
If not, set it to `true` once upload has finished.
- Throw a proper `Nonexistent upload` error message if trying to upload
a non-existent upload, instead of TypeError
    -   Rewrite `Uppy.upload()` - this fixes two bugs:
1. No more duplicate emit call when
this.#restricter.validateMinNumberOfFiles throws (`#informAndEmit` and
`this.emit('error')`)
2. 'restriction-failed' now also gets correctly called when
`checkRequiredMetaFields` check errors.
    -   Don't re-upload completed files #5930
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
    -   Remove TagFile type - Use UppyFile instead.
    -   Make `name` required on UppyFile (it is in reality always set)
- Fix bug: `RestrictionError` sometimes thrown with a `file` property
that was _not_ a `UppyFile`, but a `File`. This would happen if someone
passed a `File` instead of a `MinimalRequiredUppyFile` into
`core.addFile` (which is valid to do according to our API)
    -   Improve some log messages
    -   Simplify Uppy `postprocess-complete` handler
-   Updated dependencies [0c16fe4]
    -   @uppy/utils@7.1.1

## @uppy/dashboard@5.0.3

### Patch Changes

-   0c16fe4: - Remove `restore-canceled` event as it was not being used.
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1
    -   @uppy/provider-views@5.1.1
    -   @uppy/thumbnail-generator@5.0.2

## @uppy/golden-retriever@5.1.1

### Patch Changes

- 0c16fe4: - **Internal inter-package breaking change:** Remove hacky
internal event `restore:get-data` that would send a function as its
event data (to golden retriever for it to call the function to receive
data from it). Add instead `restore:plugin-data-changed` that publishes
data when it changes. This means that **old versions of
`@uppy/transloadit` are not compatible with newest version of
`@uppy/golden-retriever` (and vice versa)**.
    -   Large internal refactor of Golden Retriever
- Use `state-update` handler to trigger save to local storage and blobs,
instead of doing it in various other event handlers (`complete`,
`upload-success`, `file-removed`, `file-editor:complete`, `file-added`).
this way we don't miss any state updates. also simplifies the code a
lot. this fixes:
- Always store blob when it changes - this fixes the bug when using the
compressor plugin, it would store the uncompressed original blob (like
when using image editor plugin)
- Add back throttle: but throttling must happen on the actual local
storage save calls inside MetaDataStore, _not_ the handleStateUpdate
function, so we don't miss any state updates (and end up with
inconsistent data). Note that there is still a race condition where if
the user removes a file (causing the blob to be deleted), then quickly
reloads the page before the throttled save has happened, the file will
be restored but the blob will be missing, so it will become a ghost.
this is probably not a big problem though. need to disable throttling
when running tests (add it as an option to the plugin)
    -   Fix implicit `any` types in #restore filesWithBlobs
- Don't error when saving indexedDB file that already exists (make it
idempotent)
- Fix bug: Golden Retriever was not deleting from IndexedDbStore if
ServiceWorkerStore exists, causing a storage leak
    -   Remove unused Golden Retriever cleanup.ts
- Clean up stored files on `complete` event _only_ if _all_ files
succeeded (no failed files). this allows the user to retry failed files
if they get interrupted - fixes #5927, closes #5955
- Only set `isGhost` for non-successful files - it doesn't make sense
for successfully uploaded files to be ghosted because they're already
done. #5930
- Add `upload-success` event handler `handleFileUploaded`: this handler
will remove blobs of files that have successfully uploaded. this
prevents leaking blobs when an upload with multiple files gets
interrupted (but some files have uploaded successfully), because
`#handleUploadComplete` (which normally does the cleanup) doesn't get
called untill _all_ files are complete.
- Fix `file-editor:complete` potential race condition: it would delete
and add at the same time (without first awaiting delete operation)
    -   Fix: Don't double `setState` when restoring
    -   Improve types in golden retriever and MetaDataStore
- MetaDataStore: move old state expiry to from `constructor` to `load()`
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/image-editor@4.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/provider-views@5.1.1

### Patch Changes

-   0c16fe4: - Rename `getTagFile` to `companionFileToUppyFile`
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/thumbnail-generator@5.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/transloadit@5.1.3

### Patch Changes

- 0c16fe4: - **Internal inter-package breaking change:** Remove hacky
internal event `restore:get-data` that would send a function as its
event data (to golden retriever for it to call the function to receive
data from it). Add instead `restore:plugin-data-changed` that publishes
data when it changes. This means that **old versions of
`@uppy/transloadit` are not compatible with newest version of
`@uppy/golden-retriever` (and vice versa)**.
- Minor internal refactoring in order to make sure that we will always
emit `restore:plugin-data-changed` whenever assembly state changes
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/companion-client@5.1.1
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1
    -   @uppy/provider-views@5.1.1
    -   @uppy/tus@5.0.2

## @uppy/tus@5.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/companion-client@5.1.1
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/url@5.0.2

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`). This means we have to add null checks in some packages
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/companion-client@5.1.1
    -   @uppy/core@5.1.1
    -   @uppy/utils@7.1.1

## @uppy/utils@7.1.1

### Patch Changes

- 0c16fe4: - Make `file.data` nullable - Because for ghosts it will be
`undefined` and we don't have any type to distinguish ghosts from other
(local) files. This caused a crash, because we didn't check for
`undefined` everywhere (when trying to store a blob that was
`undefined`)
- Introduce new field `progress`.`complete`: if there is a
post-processing step, set it to `true` once post processing is complete.
If not, set it to `true` once upload has finished.
- Throw a proper `Nonexistent upload` error message if trying to upload
a non-existent upload, instead of TypeError
    -   Rewrite `Uppy.upload()` - this fixes two bugs:
1. No more duplicate emit call when
this.#restricter.validateMinNumberOfFiles throws (`#informAndEmit` and
`this.emit('error')`)
2. 'restriction-failed' now also gets correctly called when
`checkRequiredMetaFields` check errors.
    -   Don't re-upload completed files #5930
- Split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
        -   LocalUppyFile
        -   RemoteUppyFile
    -   Remove TagFile type - Use UppyFile instead.
    -   Make `name` required on UppyFile (it is in reality always set)
- Fix bug: `RestrictionError` sometimes thrown with a `file` property
that was _not_ a `UppyFile`, but a `File`. This would happen if someone
passed a `File` instead of a `MinimalRequiredUppyFile` into
`core.addFile` (which is valid to do according to our API)
    -   Improve some log messages
    -   Simplify Uppy `postprocess-complete` handler

## uppy@5.1.7

### Patch Changes

-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
-   Updated dependencies [0c16fe4]
    -   @uppy/aws-s3@5.0.2
    -   @uppy/companion-client@5.1.1
    -   @uppy/compressor@3.0.2
    -   @uppy/core@5.1.1
    -   @uppy/dashboard@5.0.3
    -   @uppy/golden-retriever@5.1.1
    -   @uppy/image-editor@4.0.2
    -   @uppy/provider-views@5.1.1
    -   @uppy/thumbnail-generator@5.0.2
    -   @uppy/transloadit@5.1.3
    -   @uppy/tus@5.0.2
    -   @uppy/url@5.0.2

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-10-17 20:24:52 +02:00
Mikael Finstad
0c16fe44b9
Golden retriever refactor and UppyFile type improvements (#5978)
Probably best reviewed commit by commit.

I also split UppyFile into two intefaces distinguished by the `isRemote`
boolean:
- LocalUppyFile
- RemoteUppyFile

Also:
- Removed the TagFile type
- Don't re-upload completed files - fixes #5930
- Clean up stored files on `complete` event *only* if *all* files
succeeded (no failed files). this allows the user to retry failed files
if the browser & upload get interrupted - fixes #5927, closes #5955
- Only set `isGhost` for non-successful files. it doesn't make sense for
successfully uploaded files to be ghosted because they're already done.
#5930

fixes #6013

---------

Co-authored-by: Prakash <qxprakash@gmail.com>
2025-10-17 23:17:40 +08:00
github-actions[bot]
91c6bfd7d7
[ci] release (#6008)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/companion@6.1.0

### Minor Changes

- 5ba2c1c: Introduce the concept of server-side search and add support
for it for the Dropbox provider. Previously, only client-side filtering
in the currently viewed folder was possible, which was limiting. Now
users using Companion with Dropbox can perform a search across their
entire account.

## @uppy/companion-client@5.1.0

### Minor Changes

- 5ba2c1c: Introduce the concept of server-side search and add support
for it for the Dropbox provider. Previously, only client-side filtering
in the currently viewed folder was possible, which was limiting. Now
users using Companion with Dropbox can perform a search across their
entire account.

### Patch Changes

-   Updated dependencies [5ba2c1c]
    -   @uppy/utils@7.1.0
    -   @uppy/core@5.1.0

## @uppy/core@5.1.0

### Minor Changes

- 5ba2c1c: Introduce the concept of server-side search and add support
for it for the Dropbox provider. Previously, only client-side filtering
in the currently viewed folder was possible, which was limiting. Now
users using Companion with Dropbox can perform a search across their
entire account.

### Patch Changes

-   Updated dependencies [5ba2c1c]
    -   @uppy/utils@7.1.0

## @uppy/provider-views@5.1.0

### Minor Changes

- 5ba2c1c: Introduce the concept of server-side search and add support
for it for the Dropbox provider. Previously, only client-side filtering
in the currently viewed folder was possible, which was limiting. Now
users using Companion with Dropbox can perform a search across their
entire account.

### Patch Changes

-   Updated dependencies [5ba2c1c]
    -   @uppy/utils@7.1.0
    -   @uppy/core@5.1.0

## @uppy/utils@7.1.0

### Minor Changes

- 5ba2c1c: Introduce the concept of server-side search and add support
for it for the Dropbox provider. Previously, only client-side filtering
in the currently viewed folder was possible, which was limiting. Now
users using Companion with Dropbox can perform a search across their
entire account.

## uppy@5.1.6

### Patch Changes

-   Updated dependencies [5ba2c1c]
    -   @uppy/companion-client@5.1.0
    -   @uppy/provider-views@5.1.0
    -   @uppy/core@5.1.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-10-08 22:01:27 +02:00
Prakash
5ba2c1c8d3
Server side search @uppy/Companion (#6003)
## High Level View

<img width="3367" height="1576" alt="Global Search (1)"
src="https://github.com/user-attachments/assets/134e8658-5cbd-4816-87a1-3bd42603089d"
/>


- Search View replicated , through minimal components `<GlobalSearchView
/>` and `<SearchResultItem />`
- Both components take only the minimal state needed to render the
search view no dependency on PartialTree. search response from companion
server is directly passed to GlobalSearchView for file state.
- `#buildPath` creates missing parent nodes in partialTree (if any) and
opens the folder in the normal way using a minimal wrapper over
openFolder function.
- Both interactions : "checking a file/folder" and "opening a folder"
use the same function `#buildPath` to build the path, then use the
already existing `openFolder` and `toggleCheckBox`.
- Max search results: 1000. Pagination removed for simplicity (can be
added later).
- From a UI/UX standpoint, all functionality works as expected.
- The only limitation is occasional inconsistent partial checked states
when the tree isn’t fully built — unavoidable since percolateUp and
percolateDown require the complete partialTree to sync state correctly.
This issue isn’t critical; even in other cases, we already mark folders
"checked" whereas they may be empty if not yet fetched.
- I figured out it's better to just derive the checkedState from
PartialTree , and then pass it to `GlobalSearchView` rather than keep it
separate and then worrying about checked state syncs across two views
for UI to look right.
- IMO this is the most simplest approach I could come up with. without
sacrificing any user functionality and it carefully reuses all the util
code.

---------

Co-authored-by: Merlijn Vos <merlijn@soverin.net>
Co-authored-by: Mikael Finstad <finstaden@gmail.com>
2025-10-08 21:18:17 +02:00
github-actions[bot]
54ee01105d
[ci] release (#5939)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/golden-retriever@5.1.0

### Minor Changes

- 6c0cbe6: Converted sw.js to sw.ts so that it can be transpiled, in the
build.

### Patch Changes

-   4b6a76c: added missing exports.
- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/angular@1.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/dashboard@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/audio@3.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/aws-s3@5.0.1

### Patch Changes

-   4b6a76c: added missing exports.
- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/box@4.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/companion@6.0.2

### Patch Changes

- 7e5acf1: fix the server crashing due a malformed json in a websocket
message
- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.

## @uppy/companion-client@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/components@1.0.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
    -   @uppy/core@5.0.2
    -   @uppy/audio@3.0.1
    -   @uppy/image-editor@4.0.1
    -   @uppy/remote-sources@3.0.1
    -   @uppy/screen-capture@5.0.1
    -   @uppy/webcam@5.0.1

## @uppy/compressor@3.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/core@5.0.2

### Patch Changes

-   4b6a76c: added missing exports.
- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/utils@7.0.2

## @uppy/dashboard@5.0.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/provider-views@5.0.2
    -   @uppy/thumbnail-generator@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/drag-drop@5.0.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/drop-target@4.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/dropbox@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/facebook@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/form@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/google-drive@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/google-drive-picker@1.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/google-photos-picker@1.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/image-editor@4.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/instagram@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/onedrive@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/provider-views@5.0.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/react@5.0.3

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/components@1.0.2
    -   @uppy/dashboard@5.0.2
    -   @uppy/screen-capture@5.0.1
    -   @uppy/utils@7.0.2
    -   @uppy/webcam@5.0.1

## @uppy/remote-sources@3.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
    -   @uppy/core@5.0.2
    -   @uppy/box@4.0.1
    -   @uppy/dashboard@5.0.2
    -   @uppy/dropbox@5.0.1
    -   @uppy/facebook@5.0.1
    -   @uppy/google-drive@5.0.1
    -   @uppy/instagram@5.0.1
    -   @uppy/onedrive@5.0.1
    -   @uppy/unsplash@5.0.1
    -   @uppy/url@5.0.1
    -   @uppy/zoom@4.0.1

## @uppy/screen-capture@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/status-bar@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/thumbnail-generator@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/transloadit@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/tus@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/tus@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/unsplash@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/url@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/utils@7.0.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
- 9bac4c8: Fix `TypeError: Cannot use 'in' operator to search for
'draggable' in null`

## @uppy/vue@3.0.3

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   9f18ac7: Export UppyContext and UppyContextSymbol
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
    -   @uppy/core@5.0.2
    -   @uppy/components@1.0.2
    -   @uppy/dashboard@5.0.2

## @uppy/webcam@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/webdav@1.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## @uppy/xhr-upload@5.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/utils@7.0.2

## @uppy/zoom@4.0.1

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [9bac4c8]
    -   @uppy/core@5.0.2
    -   @uppy/companion-client@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/utils@7.0.2

## uppy@5.1.2

### Patch Changes

- 975317d: Removed "main" from package.json, since export maps serve as
the contract for the public API.
-   Updated dependencies [4b6a76c]
-   Updated dependencies [975317d]
-   Updated dependencies [6c0cbe6]
    -   @uppy/golden-retriever@5.1.0
    -   @uppy/aws-s3@5.0.1
    -   @uppy/core@5.0.2
    -   @uppy/audio@3.0.1
    -   @uppy/box@4.0.1
    -   @uppy/companion-client@5.0.1
    -   @uppy/compressor@3.0.1
    -   @uppy/dashboard@5.0.2
    -   @uppy/drag-drop@5.0.2
    -   @uppy/drop-target@4.0.1
    -   @uppy/dropbox@5.0.1
    -   @uppy/facebook@5.0.1
    -   @uppy/form@5.0.1
    -   @uppy/google-drive-picker@1.0.1
    -   @uppy/google-drive@5.0.1
    -   @uppy/google-photos-picker@1.0.1
    -   @uppy/image-editor@4.0.1
    -   @uppy/instagram@5.0.1
    -   @uppy/onedrive@5.0.1
    -   @uppy/provider-views@5.0.2
    -   @uppy/remote-sources@3.0.1
    -   @uppy/screen-capture@5.0.1
    -   @uppy/status-bar@5.0.1
    -   @uppy/thumbnail-generator@5.0.1
    -   @uppy/transloadit@5.0.1
    -   @uppy/tus@5.0.1
    -   @uppy/unsplash@5.0.1
    -   @uppy/url@5.0.1
    -   @uppy/webcam@5.0.1
    -   @uppy/webdav@1.0.1
    -   @uppy/xhr-upload@5.0.1
    -   @uppy/zoom@4.0.1

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-09-16 16:07:17 +02:00
Prakash
923197ccec
@uppy/golden-retriever : emit "complete" on restore (#5956)
fixes #5929

---------

Co-authored-by: Mikael Finstad <finstaden@gmail.com>
2025-09-14 14:49:18 +02:00
Copilot
84cf20ea4c
Add stability warning comment to SCSS source files (#5960)
Adds a stability warning comment to the top of all `src/style.scss`
files in the following Uppy packages to inform consumers that the source
code and variables are not part of the stable API:

- @uppy/audio
- @uppy/core
- @uppy/dashboard
- @uppy/drag-drop
- @uppy/drop-target
- @uppy/image-editor
- @uppy/provider-views
- @uppy/screen-capture
- @uppy/status-bar
- @uppy/url
- @uppy/webcam

The comment added is:
```scss
// NOTE TO CONSUMERS: The code and variables in these source files are not considered stable and can change at any time, even in minor and patch releases!
```

This warning helps clarify that while the compiled CSS output and public
APIs remain stable, the internal SCSS source files, variables, and
implementation details should not be relied upon by consumers as they
may change without notice in any release.

The changes are minimal and surgical - exactly one line added to the top
of each file with no other modifications to existing code.

<!-- START COPILOT CODING AGENT SUFFIX -->

*This pull request was created as a result of the following prompt from
Copilot chat.*
> Add the following comment at the very top of each src/style.scss file
in the following Uppy packages: @uppy/audio, @uppy/core,
@uppy/dashboard, @uppy/drag-drop, @uppy/drop-target, @uppy/image-editor,
@uppy/provider-views, @uppy/screen-capture, @uppy/status-bar, @uppy/url,
@uppy/webcam.
> 
> Comment to add:
> // NOTE TO CONSUMERS: The code and variables in these source files are
not considered stable and can change at any time, even in minor and
patch releases!
> 
> Ensure the comment is the first line in each file, above any existing
code or imports.

<!-- START COPILOT CODING AGENT TIPS -->
---

 Let Copilot coding agent [set things up for
you](https://github.com/transloadit/uppy/issues/new?title=+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
— coding agent works faster and does higher quality work when set up for
your repo.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: mifi <402547+mifi@users.noreply.github.com>
Co-authored-by: Prakash <qxprakash@gmail.com>
Co-authored-by: Mikael Finstad <finstaden@gmail.com>
2025-09-11 21:53:40 +02:00
Prakash
4b6a76cbf4
add missing exports (#5952)
fixes #5940
2025-09-04 22:43:50 +05:30
Prakash
f997d8b401
Revert "add missing exports" (#5951)
Reverts transloadit/uppy#5944
2025-09-04 22:29:21 +05:30
Prakash
06f8382338
add missing exports (#5944)
fixes #5940
2025-09-04 22:24:49 +05:30
Prakash
975317dd17
remove main from package.json (#5950)
redo of #5943 , forgot to add changesets , reverted in #5949
2025-09-04 17:39:50 +05:30
Prakash
d65e6e4179
Revert "packages/@uppy/* : remove "main" from package.json (#5943)" (#5949)
This reverts commit 2117874073.
2025-09-04 17:26:34 +05:30
Prakash
2117874073
packages/@uppy/* : remove "main" from package.json (#5943)
- The blocker was `@uppy/angular` — its build was failing because it
could not resolve modules and types for its dependencies
(`@uppy/dashboard`, `@uppy/utils`, `@uppy/provider-views`,
`@uppy/core`).

```typescript
------------------------------------------------------------------------------
Building entry point '@uppy/angular'
------------------------------------------------------------------------------
✖ Compiling with Angular sources in Ivy partial compilation mode.
../dashboard/lib/Dashboard.d.ts:1:106 - error TS2307: Cannot find module '@uppy/core' or its corresponding type declarations.

1 import type { Body, DefinePluginOpts, Meta, State, UIPluginOptions, UnknownPlugin, Uppy, UppyFile } from '@uppy/core';
                                                                                                           ~~~~~~~~~~~~
../dashboard/lib/Dashboard.d.ts:2:26 - error TS2307: Cannot find module '@uppy/core' or its corresponding type declarations.

2 import { UIPlugin } from '@uppy/core';
                           ~~~~~~~~~~~~
../dashboard/lib/Dashboard.d.ts:3:35 - error TS2307: Cannot find module '@uppy/provider-views' or its corresponding type declarations.


```

Angular (TypeScript with moduleResolution: node) required a "main" or
"types" field in each dependency’s package.json, and ignored their
"exports" map.
2025-09-04 17:02:01 +05:30
github-actions[bot]
d4bdb463c1
[ci] release (#5936)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/companion@6.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.

## @uppy/components@1.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/core@5.0.1

## @uppy/core@5.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/utils@7.0.1

## @uppy/dashboard@5.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/provider-views@5.0.1
    -   @uppy/utils@7.0.1
    -   @uppy/core@5.0.1

## @uppy/drag-drop@5.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/utils@7.0.1
    -   @uppy/core@5.0.1

## @uppy/provider-views@5.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/utils@7.0.1
    -   @uppy/core@5.0.1

## @uppy/react@5.0.2

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/components@1.0.1
    -   @uppy/dashboard@5.0.1
    -   @uppy/utils@7.0.1
    -   @uppy/core@5.0.1

## @uppy/svelte@5.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/components@1.0.1
    -   @uppy/dashboard@5.0.1
    -   @uppy/core@5.0.1

## @uppy/utils@7.0.1

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.

## @uppy/vue@3.0.2

### Patch Changes

- 49522ec: Remove preact/compat imports in favor of preact, preventing
JSX type issues in certain setups.
-   Updated dependencies [49522ec]
    -   @uppy/components@1.0.1
    -   @uppy/dashboard@5.0.1
    -   @uppy/core@5.0.1

## uppy@5.1.1

### Patch Changes

-   7abd062: Add missing styles for drag-drop and status-bar
-   Updated dependencies [49522ec]
    -   @uppy/provider-views@5.0.1
    -   @uppy/dashboard@5.0.1
    -   @uppy/drag-drop@5.0.1
    -   @uppy/core@5.0.1

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-28 17:03:19 +02:00
Merlijn Vos
49522ec5cb
Remove preact/compat (#5935)
We drag it in unneccesarily in the bundle and it can cause JSX clashes
in React apps with `"jsx": "preserve"` in their `tsconfig.json`
(https://github.com/preactjs/preact/issues/4908)

- Remove `@types/react` from companion (unused)
- Fix tsconfig's for @uppy/utils (build was fine, but editor diagnostics
weren't)
2025-08-28 16:57:07 +02:00
github-actions[bot]
e183da8de9
[ci] release (#5918)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/audio@3.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/aws-s3@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/core@5.0.0

## @uppy/box@4.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/companion@6.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

- acdc683: Make Companion ESM-only. As of Node.js 20.19.0, you can
require(esm) if you haven't transitioned yet.

## @uppy/companion-client@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/components@1.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [c5b51f6]
    -   @uppy/remote-sources@3.0.0
    -   @uppy/screen-capture@5.0.0
    -   @uppy/image-editor@4.0.0
    -   @uppy/webcam@5.0.0
    -   @uppy/audio@3.0.0
    -   @uppy/core@5.0.0

## @uppy/compressor@3.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/core@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/store-default@5.0.0

## @uppy/dashboard@5.0.0

### Major Changes

-   e869243: ### Merge @uppy/status-bar into @uppy/dashboard

The `@uppy/status-bar` package has been merged into `@uppy/dashboard`.
The plugin gave a false promise of flexibility as a standalone plugin
but was always built tightly coupled for `@uppy/dashboard`. With the new
headless components and hooks, we want go all in those components and
remove the confusing, inflexible ones.

StatusBar is now rendered as an integrated component within Dashboard
rather than as a separate plugin. The standalone `@uppy/status-bar`
package is no longer maintained and should be removed from your
dependencies.

    #### Migration from standalone StatusBar to Dashboard

If you were using StatusBar as a separate plugin, you'll need to migrate
to using Dashboard with the equivalent options.

    **Before:**

    ```javascript
    import StatusBar from "@uppy/status-bar";

    uppy.use(StatusBar, {
      target: "#status-bar",
      showProgressDetails: true,
      hideUploadButton: false,
      hideAfterFinish: true,
    });
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/dashboard";

    uppy.use(Dashboard, {
      target: "#dashboard",
      hideProgressDetails: false,
      hideUploadButton: false,
      hideAfterFinish: true,
    });
    ```

All StatusBar configuration options are now available directly as
Dashboard options:

- `hideProgressDetails` - Hide detailed progress information (previously
`showProgressDetails` with inverted logic)
    -   `hideUploadButton` - Hide the upload button
    -   `hideAfterFinish` - Hide status bar after upload completion
    -   `hideRetryButton` - Hide the retry button
    -   `hidePauseResumeButton` - Hide pause/resume controls
    -   `hideCancelButton` - Hide the cancel button
    -   `doneButtonHandler` - Custom handler for the done button

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/thumbnail-generator@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/drop-target@4.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/dropbox@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/facebook@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/form@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/golden-retriever@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/google-drive@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/google-drive-picker@1.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/google-photos-picker@1.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/image-editor@4.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/instagram@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/locales@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0

## @uppy/onedrive@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/provider-views@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/react@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/utils@7.0.0
    -   @uppy/screen-capture@5.0.0
    -   @uppy/components@1.0.0
    -   @uppy/webcam@5.0.0
    -   @uppy/core@5.0.0

## @uppy/remote-sources@3.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/google-drive@5.0.0
    -   @uppy/instagram@5.0.0
    -   @uppy/facebook@5.0.0
    -   @uppy/onedrive@5.0.0
    -   @uppy/unsplash@5.0.0
    -   @uppy/dropbox@5.0.0
    -   @uppy/core@5.0.0
    -   @uppy/zoom@4.0.0
    -   @uppy/box@4.0.0
    -   @uppy/url@5.0.0

## @uppy/screen-capture@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/store-default@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

## @uppy/svelte@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/components@1.0.0
    -   @uppy/core@5.0.0

## @uppy/thumbnail-generator@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/transloadit@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0
    -   @uppy/tus@5.0.0

## @uppy/tus@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/core@5.0.0

## @uppy/unsplash@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## @uppy/url@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/core@5.0.0

## @uppy/utils@7.0.0

### Major Changes

- d301c01: Updated export maps for @uppy/utils: removed nested subpath
exports; all utilities are now exported from the root index.js.

    **Before :**

    ```typescript
import getFileTypeExtension from "@uppy/utils/lib/getFileTypeExtension";
    ```

    **After :**

    ```typescript
    import { getFileTypeExtension } from "@uppy/utils";
    ```

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

## @uppy/vue@3.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/components@1.0.0
    -   @uppy/core@5.0.0

## @uppy/webcam@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/xhr-upload@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/core@5.0.0

## @uppy/zoom@4.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

## uppy@5.0.0

### Major Changes

-   c5b51f6: ### Export maps for all packages

All packages now have export maps. This is a breaking change in two
cases:

1. The css imports have changed from
`@uppy[package]/dist/styles.min.css` to
`@uppy[package]/css/styles.min.css`
2. You were importing something that wasn't exported from the root, for
instance `@uppy/core/lib/foo.js`. You can now only import things we
explicitly exported.

#### Changed imports for `@uppy/react`, `@uppy/vue`, and `@uppy/svelte`

Some components, like Dashboard, require a peer dependency to work but
since all components were exported from a single file you were forced to
install all peer dependencies. Even if you never imported, for instance,
the status bar component.

Every component that requires a peer dependency has now been moved to a
subpath, such as `@uppy/react/dashboard`, so you only need to install
the peer dependencies you need.

    **Example for `@uppy/react`:**

    **Before:**

    ```javascript
    import { Dashboard, StatusBar } from "@uppy/react";
    ```

    **Now:**

    ```javascript
    import Dashboard from "@uppy/react/dashboard";
    import StatusBar from "@uppy/react/status-bar";
    ```

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/google-photos-picker@1.0.0
    -   @uppy/google-drive-picker@1.0.0
    -   @uppy/thumbnail-generator@5.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/golden-retriever@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/remote-sources@3.0.0
    -   @uppy/screen-capture@5.0.0
    -   @uppy/store-default@5.0.0
    -   @uppy/google-drive@5.0.0
    -   @uppy/image-editor@4.0.0
    -   @uppy/drop-target@4.0.0
    -   @uppy/transloadit@5.0.0
    -   @uppy/compressor@3.0.0
    -   @uppy/xhr-upload@5.0.0
    -   @uppy/instagram@5.0.0
    -   @uppy/facebook@5.0.0
    -   @uppy/onedrive@5.0.0
    -   @uppy/unsplash@5.0.0
    -   @uppy/dropbox@5.0.0
    -   @uppy/locales@5.0.0
    -   @uppy/aws-s3@5.0.0
    -   @uppy/webcam@5.0.0
    -   @uppy/audio@3.0.0
    -   @uppy/core@5.0.0
    -   @uppy/form@5.0.0
    -   @uppy/zoom@4.0.0
    -   @uppy/box@4.0.0
    -   @uppy/tus@5.0.0
    -   @uppy/url@5.0.0
    -   @uppy/webdav@1.0.0

## @uppy/angular@1.0.0

### Patch Changes

-   Updated dependencies [e869243]
-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/dashboard@5.0.0
    -   @uppy/utils@7.0.0
    -   @uppy/core@5.0.0

## @uppy/webdav@1.0.0

### Patch Changes

-   Updated dependencies [d301c01]
-   Updated dependencies [c5b51f6]
    -   @uppy/utils@7.0.0
    -   @uppy/companion-client@5.0.0
    -   @uppy/provider-views@5.0.0
    -   @uppy/core@5.0.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-22 09:02:12 +02:00
Prakash
58e9025d07 Merge branch 'main' of https://github.com/transloadit/uppy into merge_v2 2025-08-21 20:40:23 +05:30
Prakash
d82bbdbbfe lint fix 2025-08-21 14:34:12 +05:30
Prakash
6a33652458 Merge branch 'main' of https://github.com/transloadit/uppy into 5.0 2025-08-20 16:17:08 +05:30
github-actions[bot]
1c3fc13957
[ci] release (#5901)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/core@4.5.3

### Patch Changes

- eee05db: Fix retry after setting missed metaFields requiring you to
click "retry" and then "upload" again. Now "retry" immediately restarts
the upload.

## @uppy/golden-retriever@4.2.3

### Patch Changes

- a0a248a: Fix golden retriever crash when removing a file after
restoring and clicking upload
-   Updated dependencies [eee05db]
    -   @uppy/core@4.5.3

## @uppy/provider-views@4.5.3

### Patch Changes

- 2f62f40: VirtualList now virtualises rows in the file list, as was
intented. This means better performance when scrolling thousands for
files.
-   Updated dependencies [eee05db]
    -   @uppy/core@4.5.3

## @uppy/react-native@0.6.5

### Patch Changes

-   Updated dependencies [eee05db]
    -   @uppy/core@4.5.3

## @uppy/thumbnail-generator@4.2.3

### Patch Changes

- 79502f7: Make tiny/small thumbnails look better by not scaling them to
cover the entire grid item
-   Updated dependencies [eee05db]
    -   @uppy/core@4.5.3

## uppy@4.18.3

### Patch Changes

-   Updated dependencies [a0a248a]
-   Updated dependencies [2f62f40]
-   Updated dependencies [eee05db]
-   Updated dependencies [79502f7]
    -   @uppy/golden-retriever@4.2.3
    -   @uppy/provider-views@4.5.3
    -   @uppy/core@4.5.3
    -   @uppy/thumbnail-generator@4.2.3

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-20 12:44:12 +02:00
Prakash
d301c01d6a
@uppy/utils: update export maps (#5900)
- cleanup `@uppy/utils ` removed unused / redundant modules .
- migrated modules and tests from `.js` to `.ts`
- removed all the nested export paths
- updated `@uppy/utils` import paths for all packages
- `@uppy/angular` is still failing while running`yarn build` , I'm
looking into it.

---------

Co-authored-by: Merlijn Vos <merlijn@soverin.net>
2025-08-19 12:25:27 +02:00
Prakash
eee05db260
fix retry after setting missed metaFields (#5805) 2025-08-11 14:15:16 +02:00
github-actions[bot]
62cf5bbb14
[ci] release (#5867)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @uppy/angular@0.9.0

### Minor Changes

-   8b8ab01: Declare components as standalone & support 20.x

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/progress-bar@4.3.2
    -   @uppy/status-bar@4.2.2
    -   @uppy/dashboard@4.4.2
    -   @uppy/drag-drop@4.2.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/audio@2.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/aws-s3@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/companion-client@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/aws-s3-multipart@4.1.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/aws-s3@4.3.2

## @uppy/box@3.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/companion-client@4.5.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/components@0.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/remote-sources@2.4.2
    -   @uppy/screen-capture@4.4.2
    -   @uppy/image-editor@3.4.2
    -   @uppy/webcam@4.3.2
    -   @uppy/audio@2.2.2
    -   @uppy/core@4.5.2

## @uppy/compressor@2.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/core@4.5.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/store-default@4.3.2
    -   @uppy/utils@6.2.2

## @uppy/dashboard@4.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/thumbnail-generator@4.2.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/status-bar@4.2.2
    -   @uppy/informer@4.3.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/drag-drop@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/drop-target@3.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/dropbox@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/facebook@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/file-input@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/form@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/golden-retriever@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/google-drive@4.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/google-drive-picker@0.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/google-photos-picker@0.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/image-editor@3.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/informer@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/instagram@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/locales@4.8.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2

## @uppy/onedrive@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/progress-bar@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/provider-views@4.5.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   c66fd85: Fix package.json import
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/react@4.5.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/screen-capture@4.4.2
    -   @uppy/progress-bar@4.3.2
    -   @uppy/components@0.3.2
    -   @uppy/file-input@4.2.2
    -   @uppy/status-bar@4.2.2
    -   @uppy/dashboard@4.4.2
    -   @uppy/drag-drop@4.2.2
    -   @uppy/webcam@4.3.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/react-native@0.6.4

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/instagram@4.3.2
    -   @uppy/core@4.5.2
    -   @uppy/url@4.3.2

## @uppy/redux-dev-tools@4.1.3

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   c66fd85: Fix package.json import
-   Updated dependencies [1b1a9e3]
    -   @uppy/core@4.5.2

## @uppy/remote-sources@2.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/google-drive@4.4.2
    -   @uppy/dashboard@4.4.2
    -   @uppy/instagram@4.3.2
    -   @uppy/facebook@4.3.2
    -   @uppy/onedrive@4.3.2
    -   @uppy/unsplash@4.4.2
    -   @uppy/dropbox@4.3.2
    -   @uppy/core@4.5.2
    -   @uppy/zoom@3.3.2
    -   @uppy/box@3.3.2
    -   @uppy/url@4.3.2

## @uppy/screen-capture@4.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/status-bar@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/store-default@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json

## @uppy/store-redux@4.1.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   c66fd85: Fix package.json import

## @uppy/thumbnail-generator@4.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/transloadit@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2
    -   @uppy/tus@4.3.2

## @uppy/tus@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/companion-client@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/unsplash@4.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/url@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/companion-client@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/utils@6.2.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json

## @uppy/vue@2.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/progress-bar@4.3.2
    -   @uppy/components@0.3.2
    -   @uppy/file-input@4.2.2
    -   @uppy/status-bar@4.2.2
    -   @uppy/dashboard@4.4.2
    -   @uppy/drag-drop@4.2.2
    -   @uppy/core@4.5.2

## @uppy/webcam@4.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/webdav@0.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/xhr-upload@4.4.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
    -   @uppy/companion-client@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

## @uppy/zoom@3.3.2

### Patch Changes

-   1b1a9e3: Define "files" in package.json
-   Updated dependencies [1b1a9e3]
-   Updated dependencies [c66fd85]
    -   @uppy/companion-client@4.5.2
    -   @uppy/provider-views@4.5.2
    -   @uppy/utils@6.2.2
    -   @uppy/core@4.5.2

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-01 17:30:57 +02:00
Merlijn Vos
1b1a9e3591
Add "files" to all package.json's (#5852)
Closes #5865

I noticed we are publishing all files, we should filter them. npm
automatically adds package.json, license, and readme so you can leave
them out of the files array.
2025-08-01 17:20:42 +02:00
Prakash
c5b51f6158
Add Export Maps (#5830)
- added export maps to all the @uppy packages .
- imports remain unaffected except for peerDep packages in `@uppy/react`
`@uppy/svelte` and `@uppy/vue3`.
- export maps added for index files , css , and package.json. 
- Added side effects for all the packages.

---------

Co-authored-by: Mikael Finstad <finstaden@gmail.com>
Co-authored-by: Merlijn Vos <merlijn@soverin.net>
2025-07-31 17:22:57 +02:00
Murderlon
7d6d90ba5c
Version packages
After manual releasing all packages as changesets messed things up
2025-07-29 20:09:54 +02:00
Mikael Finstad
acdc683d47
Refactor Companion to ESM (#5803)
- convert cjs to esm
- refactor from jest to vitest

closes #3979

---------

Co-authored-by: Merlijn Vos <merlijn@soverin.net>
2025-07-29 19:07:48 +02:00
github-actions[bot]
4ccd3716af
[ci] release (#5849) 2025-07-29 17:10:10 +02:00
Merlijn Vos
7bf319646a
Migrate from Cypress to Vitest Browser Mode (#5828)
- Remove `e2e` folder entirely
- Remove all hacky resolutions and yarn patches
- Remove `@types/jasmine`, `js2ts` (convert a JS file to TS), and
`vue-template-compiler` from `private/`
- Remove e2e CI job
- Add browsers tests for vue, svelte, and react headless components and
hooks.
- Add new (browser) tests for transloadit, aws-s3, and dashboard.
- Remove final useless scripts from `package.json`, use direct
references in CI.
- Fix Dropzone component accessibility discovered during testing
- Clean up github workflows (move linters.yml into ci.yml, update
e2e.yml)

**Why Vitest Browser Mode?**

We could have used playwright but vitest browser mode uses it under the
hood and we get the use the vitest we know a love. No two entirely
different setups, no different assertions to relearn, write e2e tests as
if you're writing unit tests. Easy, fast, beautiful.

https://vitest.dev/guide/browser/

**Has every single e2e test been rewritten?**

No there were quite a few tests that have a lot overlap with existing or
newly added tests. There were also some tests that were so heavily
mocked inside and out you start to wonder what the value still is. Open
to discuss which tests still need to be added.
2025-07-28 11:27:37 +02:00
Merlijn Vos
7c609a56d9
Use turbo for all unit tests (#5815)
- Upgrade vitest from 1.x to 3.x.
  - Fix some tests that now became more strict and started failing
-  Add test command to all packages + needed dependencies
- Add turbo config for running tests

Another PR will completely redo the e2e test suite.
2025-07-12 13:21:35 +02:00
Prakash
33e4b37106
@uppy/core: resolve stale state issue in checkAndUpdateFileState (#5814) 2025-07-10 17:38:39 +02:00
Merlijn Vos
271db86ad0
Use turbo for building and watching concurrently (#5808)
- Add `typecheck` command to all packages.
- Use turbo to build and watch concurrently with caches.
- Remove root `bin/` folder with last global scripts
- `bin/companion.sh` -> `@uppy/companion/start-dev` (`yarn
start:companion` still works)
- `bin/build-components.mjs` -> `@uppy/components/migrate.mjs` (`yarn
migrate:components` can be used to run it). This only needs to be ran
for new components, not changing existing ones, so that's why it's not
part of the build process.

turbo is smart enough to build dependencies within a package first
before building the package itself (e.g if wanting to build @uppy/audio,
build @uppy/utils first). Unfortunately @uppy/core is a peer dep
everywhere turbo does not take it into account, yet it must be build
first to avoid race conditions. Therefor I added a turbo.json to each
package, which you normally never need, but this is an odd case I
suppose. Other solutions ran into cyclic dep errors.

Another PR would move over the test commands to turbo too.
2025-07-10 13:21:18 +02:00
Merlijn Vos
75c8007cf9
Isolate CSS building per package (#5799)
- Isolate CSS bundling per package
- Fix _all_ sass deprecation warnings
- Remove global scripts
- Run CSS building in parallel .

Is it repetitive? Yes a bit. But it's mono repo best practice and once
we introduce turbo each css build step can be individually cached. That
means when you edit scss in one package, only that needs to be rebuild,
not the TS of that package nor any other CSS. This PR lays the
groundwork for that.
2025-07-07 11:47:14 +02:00
Murderlon
a848a4f695
Revert "@uppy/core: resolve stale state issue in checkAndUpdateFileState (#5806)"
This reverts commit da5f24b322.
2025-07-07 10:29:56 +02:00
Prakash
da5f24b322
@uppy/core: resolve stale state issue in checkAndUpdateFileState (#5806) 2025-07-07 09:26:17 +02:00
Merlijn Vos
78299475ae
Migrate from Eslint/Prettier/Stylelint to Biome (#5794) 2025-07-01 14:55:41 +02:00
Merlijn Vos
d408570373
From Babel to TS (#5792) 2025-06-30 16:12:26 +02:00
github-actions[bot]
c16657e075
Release: uppy@4.18.0 (#5796)
| Package                    | Version | Package                    | Version |
| -------------------------- | ------- | -------------------------- | ------- |
| @uppy/components           |   0.2.0 | @uppy/remote-sources       |   2.3.4 |
| @uppy/core                 |   4.4.7 | @uppy/screen-capture       |   4.3.1 |
| @uppy/google-drive-picker  |   0.3.6 | @uppy/svelte               |   4.5.0 |
| @uppy/google-photos-picker |   0.3.6 | @uppy/vue                  |   2.3.0 |
| @uppy/locales              |   4.6.0 | @uppy/webcam               |   4.2.1 |
| @uppy/provider-views       |   4.4.5 | uppy                       |  4.18.0 |
| @uppy/react                |   4.4.0 |                            |         |

- meta: Remove remark reference from CI (Murderlon)
- @uppy/components,@uppy/screen-capture: useScreenCapture fixes (Prakash / #5793)
- examples: Add useRemoteSource (Merlijn Vos / #5778)
- @uppy/components: Use webcam fixes2 (Mikael Finstad / #5791)
- meta: Remove remark (Merlijn Vos / #5790)
- meta: Delete old, unused files (Merlijn Vos / #5788)
- meta: Sort package.json (Murderlon)
- examples: Headless Hooks: Add useScreenCapture (Prakash / #5784)
- @uppy/locales: Update pt_BR localization (Gabriel Pereira / #5780)
- e2e: Skip for now then (Murderlon)
- e2e: fixup! Fix CI for now (Murderlon)
- e2e: Fix CI for now (Murderlon)
- examples: Add useWebcam (Merlijn Vos / #5741)
- @uppy/react,@uppy/svelte,@uppy/vue: Add useDropzone & useFileInput (Merlijn Vos / #5735)
- meta: build(deps): bump base-x from 3.0.9 to 3.0.11 (dependabot[bot] / #5772)
- @uppy/provider-views: improve metadata handling in Google Photos Picker (ben rosenbaum / #5769)
2025-06-30 13:50:55 +00:00