- Fixed the dialog disappearing in some cases in the mobile layout.
- Show remove button on uploading error when widget is clearable.
- Optimize parallel uploading of big amount of files at once.
- Accept
data-crop="true"
as free.
- New Swedish locale.
- File info pooling optimization.
- Multipart uploading tuning via settings.
- File uploading logging via
debugUploads
settings.
- The choose file button occasionally was not clickable on iOS 8.
- HTTPS is default protocol for CDN.
- Fixed
onDialogOpen
event which did not fire when files were dropped. - Optimized info loading for files uploaded from URLs.
- Internal
uploadcare.namespace
function accepts namespace name withoutuploadcare
prefix. I.e.uploadcare.files.utils
becomesfiles.utils
.
- Fixed uploading from url for large files.
- Fixes in English, Russian and German locales.
uploadcare.start()
is fixed and accepts global settings again.
- Built-in jQuery upgraded to 2.1.4. This automatically means that widget version with built-in jQuery will no longer work in IE8. But we still support IE8 in version without built-in jQuery.
- Uploadcare doesn't expose and doesn't use global
window.JST
object anymore. This enhances widget isolation on the page.
- Prevent infinity loop when multiupload dialog is used with crop with some ratio and uploaded image is already has this ratio.
- Correct reading of EXIF data from some corrupeted JPEGs.
- New crop visual style.
- Updated Spanish locale.
- Updated Catalan locale.
- New Azerbaijan locale.
- New Catalan locale. Incomplete.
- Updated Taiwan locale.
- Updated Turkish locale.
- jQuery updated to 1.11.3.
- Fixed version with builtin jQuery.
- Camera are revoked when user switches on another tab if page runs over HTTPS.
- Clicking to image in dialog led to opening of two crop dialogs in some cases.
- Dialog api change: undocumented
fileColl.onAnyDone
,fileColl.onAnyFail
andonAnyProgress
become a functions with guarantee of callback execution for each object infileColl
.
- New preview page for multiple images (when flag imagesOnly is set).
- Crop now works with multiple files (even when flag imagesOnly is not set).
- New Italian locale.
- Camera tab is hidden for mobile layout now. Mobile devices have camera or regular file tab.
- New
widget.onDialogOpen
callback. - Role plugin removed from built-in jQuery.
@some-role
can't be used anymore in selectors passed to API methods. Use[role="some-role"]
instead. - Fixed jQuery bug related to promises. jquery/jquery#2013 Progress was not shown in some cases with crop.
uploadcare.initialize()
now initializes widgets in whole document, not only 'body' descendants.- Custom events
#{status}.uploadcare
are fired on widget instead of form. (works with built-in jQuery only).
- Fixed "also choose file from" list on mobile layout.
- Fixed live initialization (when a new widget is added to the page after loading). Broken since 2.1.0.
- Restored compatibility with IE8. Broken since 2.1.0.
- Traditional Chinese locale (zhTW).
- Hidden tabs (camera, for example) excluded from list of sources on first dialog's tab.
- New method in dialog api:
isTabVisible()
. - New callback in dialog api:
onTabVisibility
. Triggered when some tab is showed or hidden.
- Fixed compatibility with jQuery-ui (internal
sortable
plugin renamed touploadcareSortble
).
- Fixed welcome text when public key is not set.
- Fixed error messages in console in jQuery build.
- Keyboard navigation.
- Widgets are initialized immediately after page loading, not after 100ms.
- Role attributes inside the widget were aligned with ARIA.
The
uploadcare-uploader
role is still used for widget identification. - Multiple panels's footer is now maintained by panel itself, not by tabs. As a result the footer will appear on custom tabs too.
- New
showTab
andhideTab
methods for dialog api. uploadcare.globals()
now includes settings fromuploadcare.start()
.- Removed
white-space: nowrap
around the widget. - Reduced the number of relatively slow
settings.build
andsettings.normalize
calls.
- Fix exception when multiple files are uploaded simalteniously with
image-shrink
option and uploading is cancelled.
- Added compatibility with FastClick.
- Warnings from
image-shrink
option are suppressed.
- Fixed error if validation is failed.
- Fixed error in case of large file with imagesOnly settings and files larger than 100 MB in old browsers.
- Transparent images are automatically shrinked to PNG.
- Considering
cdnUrlModifiers
when group is loaded.
- Fixed uploading of large files.
- Restored compatibility with IE 8-9 and other old browsers.
Compatibility breaking changes in this release.
- Resize images on client before uploading (
image-shrink
option). - Autostore option was removed (but not autostore itself). Now file is automatically stored if the project allows autostore.
- New option
do-not-store
. Use it when autostore is enabled in the project, but you don’t want to store files uploaded with a particular widget. uploadcare.Widget
now can return either single or multiple widgets.- New
uploadcare.SingleWidget
function reproduce olduploadcare.Widget
behavior — it raises an exception on multiple widgets. - New
sourceInfo
property is added to the info of the files uploaded from social sources. At the moment only extended info about Instagram files is provided. dialogApi
for custom tabs is now the same object as dialog and panel objects.dialogApi
now supports promise interface, and dialog and panel objects havefileColl
,addFiles
andswitchTab
properties. New methodresolve
is also added.- Custom tabs constructors now receive tab name as last argument.
- Fix group
cdnUrl
property when group creation is failed. - Multi-upload widget does not break when
null
value assigned to it.
path-value
is on by default. Widget will always return file URL, not only when crop is used.- Widget value is no longer cleared when file is failed to upload.
- Input value is no longer cleared when a new uploading is started. Previous value remains until upload of a new file is successful.
dialogApi.dialog
is removed in favor ofdialogApi
itself, which now supports promise interface.dialogApi.done
is part of the promise interface and receives a callback (instead of triggering resolving). In order to resolve usedialogApi.resolve
.dialogApi.onSwitched
is removed in favor ofdialogApi.progress
and tab name.uploadcare.Circle.listen
now expects progress value to be the first argument ofprogress
callback.
- Fixed creation of group with modifiers.
- Fixed assiging array of files as value to multiple widget.
- Fixed filename and progress indication for piped file objects in multiple dialog.
- Fixed progress drawing when progress element size is 0.
- Fixed the error preventing any file uploading in old versions of Google Chrome. Bug was instroduced in 1.5.0.
- New Arabic locale.
- New file source Huddle (huddle.com).
- Dialog is closed by double click on gray background instead of single click.
- New
uploadcare.closeDialog()
method close current active dialog (usefull for single-page applications).
- Built-in jQuery updated to 1.11.1
- Validators for
openDialog()
,openPanel()
andfilesFrom
- Mirror option in camera tab
- Capture highest possible video resolution from camera
- Go to preview tab after camera shot for multiple widget
- Fixed buttons on camera tab for multiple widget
- Fixed video preview on camera tab on Android
- Fixed English locale for camera dialog
- Fixed some typos in the norwegian locale
- Camera tab
- Progress circle color can be changed through CSS
- Version without built-in jQuery
- Added Norwegian locale
- Improved iOS scrolling performance in some cases
- Dropbox added to default tabs list (no additional setup is required anymore)
- All default tabs rearranged according to their usage
- Restored IE8 compatibility.
- Fix conflict with host pages Pusher. Built-in pusher isn't exposed to global namesapse anymore.
- Japanese localization.
- French localization updated.
- Use progressive jpeg for preview and crop.
- Fixed ui freeze in IE 10+ after file choosing.
- Fixed crop to fixed size when whole image is selected
- Fixed progress indication for files smaller than 1kb
- Added
accept="image/*"
input attribute for images only widgets
- German localization.
- Retina icons for all social networks.
- Updated "local files" tab for mobile devices.
- Widget works on local pages (without web server).
utils
andt
are no more exposed to file info.- Fix French and Portuguese locales.
- Fixed preview size for wide images in non-webkit browsers.
- Multiple cropping presets can be added divided by comma. User can choose any.
- Fixed free crop problem introduced in previous version.
- Further crop fixes
- Fixed croping for
minimum
settings and othr rare cases. - Fixed uploading in IE9- when jQuery not used on page.
- Added Flickr as a source.
- Added Danish locale.
- Fixed French localization.
- Added Dutch locale.
system-dialog
widget settings.- Restored compatibility with some old browsers versions.
- Fixed uploading from url.
- Mobile version.
- Undocumented
fileFrom('event')
method was removed. - Page scrolling disabled when dialog is opened.
- Increased active size of crop corners.
- New widget settings
preferred-types
. - Fixed tabs order when 'all' or 'default' shortcuts used.
- Fixed transparent images crop.
- Clear look for close icon.
- Added Turkish locale.
- Fixed crop on pages with old bootstrap.
- Widget now is one button "Choose a file". Progress circle appears only on uploading.
- Widget adapts to host page: controls size depends on font size only, height can be adjusted via line-height.
- Widget always return CDN urls when crop used (similar to path-value option).
- Validators runs every time new file properties available. All unavailable properties are null.
- Fixed scrolling on social tabs on touch devices.
- Fixed file size labels.
- Fixed images in multiple preview in IE8.
- Fixed impossible to set null value to widget.
- Removed deprecated
preview()
andpreviewUrl
fields offileInfo
object.
- better compatibility with host page markup
- Large files uploads in parallel by small pieces with automatic recovering in case of network errors.
- Requests aborts after user cancels upload.
- Slightly reduced cpu usage during large files uploading.
- We now support large files uploads. Merry Christmas.
- Removing file from multiupload preview step no longer closes whole dialog. Bug introduced in 0.16.0.
- Widget.onChange now fires immediately after user chooses file.
uploadcare.openPanel()
method added. It allows open panel with tabs embedded in page (no modal mode).uploadcare.registerTab()
method added. Now you can add custom tabs to dialogs and panels.- jQuery version updated to 1.10.2. If you use
uploadcare.jQuery
, please check update guide http://jquery.com/upgrade-guide/1.9/ - spelling of
body.uploadcare-dragging
class fixed (it was draging). If you use this class, update your code. uploadcare-dragging
class now appear on elements used as target forreceiveDrop
anduploadDrop
- Skydrive tab added.
- Box.com tab added.
- Fixed bug, do not allow set value while page loading.
- Widget's width can be easily changed in css.
- Css is now prepended to head, this allows overriding css rules without
important
keyword.
- Tiny replacement of jQuery UI sotrable plugin used. This saves about 12kb of gziped widget size for multiupload documents.
- New settings
clearable
allows user to remove uploaded file from widget. It is turned off by default. - Widget does not cleared if user cancels dialog.
- Portuguese localization added.
- Minimum and maximum limits for number of files in MultipleWidget added.
- Chinese localization updated.
- French localization was added.
- Custom file's validators can be used to restrict user's choice.
- Undocumented method
fileInfo.dimensions()
was removed. - Undocumented callback
Dialog.uploadDone
was removed.
uploadcare.filesFrom
function exposed in api.
- Fixed loading from url and social sources. Bug introduced in 0.13.3.
- Opening speed is significantly impoved for widget with hundreds of files
- Restored compatibility with IE8 and some Firefox versions
- Translations fixes
- widget size reduced from 341 to 293 kb (from 104 to 93 kb gziped)
- Widget no longer accepts urls in
value
HTML-attribute orvalue()
method. You should usewidget.value(uploadcare.fileFrom('url', 'http://url/'))
. - Widget now can be used with any custom domain.
- switch to preview tab right after selecting files
- prevent to request not ready images in multiupload preview
uploadcare.tabsCss
api fixed
- restrictions on the number of files in multiupload group removed
- fixed bug introduced in 0.12.0 related to loading info about already uploaded files
- crop options "upscale" and "minimum" also applicable to ratio
- built-in jQuery (version 1.8.3) now available in
uploadcare.jQuery
- new property
originalImageInfo
offileInfo
object - now you can use
fileInfo.cdnUrl
with all operations right after uploading - traffic and preview delay significantly reduced for large images
- new option for crop — "minimum". Doesn't allows user to select area less then you specified
- add Chinese (Simplified) locale
- drag and drop api
- source tabs styling
- widget size reduced from 455 to 346 kb (from 144 to 105 kb gziped)
- fixed bug when can't upload new file from uploadcare cdn url
- better compatibility with host page markup
- evernote is supported as a source of files
- if images_only is used, video thumbnails are loaded from the instagram
- fixed bug, preventing some of our clients from using uploadcare with AMD