* don’t store file.data on local files when we save to localStorage, add isGhost: true, additional event restore-confirmed
Co-Authored-By: Renée Kooi <github@kooi.me>
* Don’t double-emit upload-started for Golden Retriever-restored files that were already started
Co-Authored-By: Renée Kooi <github@kooi.me>
* removeFile: delete updatedUploads[uploadID] instead of calling _removeUpload to avoide excess state updates
Co-Authored-By: Renée Kooi <github@kooi.me>
* clear preview, throttle saving state
* add service message and ghost icons
* regenerate thumnails on restore properly
* allow replacing duplicate files if it’s a ghost
* re-generate thumbnails on componentDidUpdate
* tweak styles for ghosts
* Dashboard cleanup
* refactor: load IndexedDBStore and ServiceWorkerStore together, add uninstall, handle file-edit-complete
* recoveredState — show upload button as “restore”, hide progress pause/resume, handle abortRestore
* tweak serviceMsg mobile styles
* use i18n for strings
* Handle aborting, complete and last file removal with MetaDataStore.cleanup(instanceID)
* fix all the tests
* import .eslintrc from master
* autofix
* add lodash.throttle
* when re-selecting ghost files, only replace the blob, keeping progress, meta, etc
* Delete package-lock.json
* Update en_US locale
* add golden retriever support to darkmode styles
* add golden retriever to website example
* Update package-lock.json
Co-authored-by: Renée Kooi <github@kooi.me>
* move findIndex to @uppy/utils, add tests
* use Array.findIndex instead of Array.indexOf in uppy.removePlugin
because strict comparison started failing with Vue3 Proxies
* dashboard: fix modal position on rtl pages, fixes#2495
* Align text to the right on right-to-left pages
* core: fix default text alignment on right-to-left pages
* dashboard: fix margin in provider browser on right-to-left pages
* dashboard: use direction-aware offset properties
* provider-views: use logical offset CSS properties
* status-bar: use logical offset CSS properties
* dashboard: fix addMore icon margin on RTL pages
* dashboard: some more logical properties
* build: compile logical properties to old CSS
* dashboard: set dir attribute if page did not provide one
* status-bar: set fallback text direction if not provided
* support direction option for inline and modal dashboard
* use companion.uppy.io on deploy previews
* provider-views: fix RTL alignment of file icons
* put the dir attribute on a wrapper div
* fix icon alignment in RTL provider views
* informer: fix ? alignment in RTL mode
* Add all the CI badges
* flip the CI / npm version order
* add github actions tests badges to all package readmes
* remove |
Co-authored-by: Artur Paikin <artur@arturpaikin.com>
* final-file-added event for when the last file in the batch has been added
* intoduce autoOpenFileEditor — open when the last file (image) from a batch has beed added
* make cropping box more visible
* add docs
* final-file-added --> files-added
* add passesRestrictions(file) and utilize it in provider-views
* disallow selecting more than maxNumberOfFiles
* add restriction reason and include folders
* let’s leave folder out of this for now — otherwise not only you can’t select them, but navigate too
* disallow selecting if totalCurrentSelectionFileSize is over maxTotalFileSize
* handle maxNumberOfFiles not being set 🙈
* fix totalCurrentSelectionFileSize and handle no file.name
* support grid in restrictions
* refactor the restriction reason logic, rename to validateRestrictions, wrap icon in a container
* add uppyFileSizes 🙈
* get rid of canSelectMore in favor of validateRestrictions (file, files)
* handle shift key bulk selection
* remove unused props
* use infoTimeout