# @uppy/react

## 5.2.0

### Minor Changes

- c0a8776: Introduce `useImageEditor` to build your own UI for using our image editor in React, Vue, and Svelte.

### Patch Changes

- Updated dependencies [c0a8776]
- Updated dependencies [c0a8776]
  - @uppy/components@1.2.0

## 5.1.1

### Patch Changes

- 16aa6fe: Add missing useUppyContext export

## 5.1.0

### Minor Changes

- 72d2d68: Add @uppy/{screen-capture,status-bar,webcam} as optional peer dependencies

### Patch Changes

- 86f353d: Remove dashboard export from index.ts
- Updated dependencies [72d2d68]
- Updated dependencies [26bf726]
  - @uppy/components@1.1.0

## 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

## 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

## 5.0.1

### Patch Changes

- a063bc3: Remove status-bar from export map

## 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

## 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

## 4.5.0

### Minor Changes

- 0c24c5a: Use TypeScript compiler instead of Babel

### Patch Changes

- Updated dependencies [0c24c5a]
- Updated dependencies [0c24c5a]
- Updated dependencies [0c24c5a]
  - @uppy/webcam@4.3.0
  - @uppy/core@4.5.0
  - @uppy/components@0.3.0
  - @uppy/dashboard@4.4.0
  - @uppy/drag-drop@4.2.0
  - @uppy/file-input@4.2.0
  - @uppy/progress-bar@4.3.0
  - @uppy/screen-capture@4.4.0
  - @uppy/status-bar@4.2.0
  - @uppy/utils@6.2.0

## 4.4.0

Released: 2025-06-30
Included in: Uppy v4.18.0

- @uppy/react,@uppy/svelte,@uppy/vue: Add useDropzone & useFileInput (Merlijn Vos / #5735)

## 4.2.2

Released: 2025-03-13
Included in: Uppy v4.13.4

- @uppy/react: pass getServerSnapshot to useSyncExternalStoreWithSelector (Merlijn Vos / #5685)

## 4.2.0

Released: 2025-01-06
Included in: Uppy v4.11.0

- @uppy/angular,@uppy/audio,@uppy/aws-s3,@uppy/box,@uppy/companion-client,@uppy/compressor,@uppy/core,@uppy/dashboard,@uppy/drag-drop,@uppy/drop-target,@uppy/dropbox,@uppy/facebook,@uppy/file-input,@uppy/form,@uppy/golden-retriever,@uppy/google-drive-picker,@uppy/google-drive,@uppy/google-photos-picker,@uppy/google-photos,@uppy/image-editor,@uppy/informer,@uppy/instagram,@uppy/locales,@uppy/onedrive,@uppy/progress-bar,@uppy/provider-views,@uppy/react,@uppy/remote-sources,@uppy/screen-capture,@uppy/status-bar,@uppy/thumbnail-generator,@uppy/transloadit,@uppy/tus,@uppy/unsplash,@uppy/url,@uppy/vue,@uppy/webcam,@uppy/webdav,@uppy/xhr-upload,@uppy/zoom: Remove "paths" from all tsconfig's (Merlijn Vos / #5572)

## 4.1.0

Released: 2025-01-06
Included in: Uppy v4.10.0

- @uppy/react: allow React 19 as peer dependency (Shubs / #5556)

## 4.0.4

Released: 2024-12-05
Included in: Uppy v4.8.0

- @uppy/audio,@uppy/aws-s3,@uppy/box,@uppy/companion-client,@uppy/compressor,@uppy/core,@uppy/dashboard,@uppy/drag-drop,@uppy/drop-target,@uppy/dropbox,@uppy/facebook,@uppy/file-input,@uppy/form,@uppy/golden-retriever,@uppy/google-drive,@uppy/google-photos,@uppy/image-editor,@uppy/informer,@uppy/instagram,@uppy/locales,@uppy/onedrive,@uppy/progress-bar,@uppy/provider-views,@uppy/react,@uppy/remote-sources,@uppy/screen-capture,@uppy/status-bar,@uppy/store-default,@uppy/thumbnail-generator,@uppy/transloadit,@uppy/tus,@uppy/unsplash,@uppy/url,@uppy/utils,@uppy/vue,@uppy/webcam,@uppy/xhr-upload,@uppy/zoom: cleanup tsconfig (Mikael Finstad / #5520)

## 4.0.3

Released: 2024-10-31
Included in: Uppy v4.6.0

- @uppy/aws-s3,@uppy/box,@uppy/companion-client,@uppy/core,@uppy/dashboard,@uppy/drag-drop,@uppy/dropbox,@uppy/facebook,@uppy/file-input,@uppy/form,@uppy/golden-retriever,@uppy/google-drive,@uppy/google-photos,@uppy/image-editor,@uppy/informer,@uppy/instagram,@uppy/locales,@uppy/onedrive,@uppy/progress-bar,@uppy/provider-views,@uppy/react-native,@uppy/react,@uppy/redux-dev-tools,@uppy/screen-capture,@uppy/status-bar,@uppy/store-default,@uppy/store-redux,@uppy/svelte,@uppy/thumbnail-generator,@uppy/transloadit,@uppy/tus,@uppy/unsplash,@uppy/url,@uppy/utils,@uppy/vue,@uppy/webcam,@uppy/xhr-upload,@uppy/zoom: Fix links (Anthony Veaudry / #5492)

## 4.0.2

Released: 2024-08-26
Included in: Uppy v4.2.1

- @uppy/react: fix `use-sync-external-store` import (Merlijn Vos / #5426)

## 4.0.0

Released: 2024-07-10
Included in: Uppy v4.0.0

- @uppy/react: introduce useUppyEvent (Merlijn Vos / #5264)

## 4.0.0-beta.8

Released: 2024-06-27
Included in: Uppy v4.0.0-beta.13

- @uppy/react: TS strict mode (Merlijn Vos / #5258)

## 4.0.0-beta.6

Released: 2024-06-11
Included in: Uppy v4.0.0-beta.11

- @uppy/react: remove `react:` prefix from `id` & allow `id` as a prop (Merlijn Vos / #5228)

## 4.0.0-beta.4

Released: 2024-04-29
Included in: Uppy v4.0.0-beta.4

- @uppy/react: remove `useUppy` & reintroduce `useUppyState` (Merlijn Vos / #5059)

## 4.0.0-beta.1

Released: 2024-03-28
Included in: Uppy v4.0.0-beta.1

- @uppy/react: remove `prop-types` dependency (Antoine du Hamel / #5031)
- @uppy/react: remove `Wrapper.ts` (Antoine du Hamel / #5032)
- @uppy/react: refactor to TS (Antoine du Hamel / #5012)

## 3.3.0

Released: 2024-03-27
Included in: Uppy v3.24.0

- @uppy/react: refactor to TS (Antoine du Hamel / #5012)

## 3.2.1

Released: 2023-11-12
Included in: Uppy v3.19.1

- @uppy/react: Revert "@uppy/react: add useUppyState (#4711)" (Artur Paikin / #4789)

## 3.2.0

Released: 2023-11-08
Included in: Uppy v3.19.0

- @uppy/react: add useUppyState (Merlijn Vos / #4711)

## 3.1.3

Released: 2023-07-13
Included in: Uppy v3.12.0

- @uppy/react: allow `id` from props (Merlijn Vos / #4570)

## 3.1.0

Released: 2023-01-26
Included in: Uppy v3.4.0

- @uppy/react: deprecate `useUppy` (Merlijn Vos / #4223)

## 3.0.2

Released: 2022-09-25
Included in: Uppy v3.1.0

- @uppy/audio,@uppy/aws-s3-multipart,@uppy/aws-s3,@uppy/box,@uppy/companion-client,@uppy/companion,@uppy/compressor,@uppy/core,@uppy/dashboard,@uppy/drag-drop,@uppy/drop-target,@uppy/dropbox,@uppy/facebook,@uppy/file-input,@uppy/form,@uppy/golden-retriever,@uppy/google-drive,@uppy/image-editor,@uppy/informer,@uppy/instagram,@uppy/locales,@uppy/onedrive,@uppy/progress-bar,@uppy/provider-views,@uppy/react,@uppy/redux-dev-tools,@uppy/remote-sources,@uppy/screen-capture,@uppy/status-bar,@uppy/store-default,@uppy/store-redux,@uppy/svelte,@uppy/thumbnail-generator,@uppy/transloadit,@uppy/tus,@uppy/unsplash,@uppy/url,@uppy/utils,@uppy/vue,@uppy/webcam,@uppy/xhr-upload,@uppy/zoom: add missing entries to changelog for individual packages (Antoine du Hamel / #4092)

## 3.0.1

Released: 2022-08-30
Included in: Uppy v3.0.1

- @uppy/react: useUppy: fix unmount on NextJS dev mode (Matt Jesuele / #4062)

## 3.0.0

Released: 2022-08-22
Included in: Uppy v3.0.0

- @uppy/react: move `@uppy/` packages to peer dependencies (Antoine du Hamel / #4004)
- Switch to ESM

## 3.0.0-beta.4

Released: 2022-08-16
Included in: Uppy v3.0.0-beta.5

- @uppy/core,@uppy/react: Fix all breaking todo comments for 3.0 (Merlijn Vos / #3907)

## 3.0.0-beta.2

Released: 2022-07-27
Included in: Uppy v3.0.0-beta.3

- @uppy/react: Fix exports in propTypes.js to fix website build (Murderlon)

## 3.0.0-beta

Released: 2022-05-30
Included in: Uppy v3.0.0-beta

- @uppy/react: refactor to ESM (Antoine du Hamel / #3780)

## 2.2.2

Released: 2022-06-07
Included in: Uppy v2.12.0

- @uppy/react: Reset uppy instance when React component is unmounted (Tomasz Pęksa / #3814)

## 2.2.1

Released: 2022-05-30
Included in: Uppy v2.11.0

- @uppy/angular,@uppy/audio,@uppy/aws-s3-multipart,@uppy/aws-s3,@uppy/box,@uppy/core,@uppy/dashboard,@uppy/drag-drop,@uppy/dropbox,@uppy/facebook,@uppy/file-input,@uppy/form,@uppy/golden-retriever,@uppy/google-drive,@uppy/image-editor,@uppy/informer,@uppy/instagram,@uppy/onedrive,@uppy/progress-bar,@uppy/react,@uppy/redux-dev-tools,@uppy/robodog,@uppy/screen-capture,@uppy/status-bar,@uppy/store-default,@uppy/store-redux,@uppy/thumbnail-generator,@uppy/transloadit,@uppy/tus,@uppy/unsplash,@uppy/url,@uppy/vue,@uppy/webcam,@uppy/xhr-upload,@uppy/zoom: doc: update bundler recommendation (Antoine du Hamel / #3763)

## 2.2.0

Released: 2022-05-14
Included in: Uppy v2.10.0

- @uppy/aws-s3-multipart,@uppy/aws-s3,@uppy/core,@uppy/react,@uppy/transloadit,@uppy/tus,@uppy/xhr-upload: proposal: Cancel assemblies optional (Mikael Finstad / #3575)
- @uppy/react: Support React 18 in @uppy/react (Merlijn Vos / #3680)
