0.50.1 (2024-07-16)
Bug Fixes
- styles: added prefix uc- to className in the js (#700) (672c5c3)
0.50.0 (2024-07-16)
Features
See the secureDeliveryProxyUrlResolver
docs for details.
0.49.0 (2024-07-03)
BEAKING CHANGES
- styles: Added the
uc-
prefix to all class selectors (#683) (a3929d5).
See the migration guide for details.
0.48.1 (2024-07-02)
Bug Fixes
0.48.0 (2024-07-02)
0.47.0 (2024-07-02)
BEAKING CHANGES
- Extract public api to the composition class at the Uploader API instance that you can get using
getAPI()
method of the lr-upload-ctx-provider
block. (#676) (ea29dd2).
See the migration guide for details.
0.46.3 (2024-07-01)
Bug Fixes
- icons: Added currentColor to icon edit-file (#689) (617d3cd)
0.46.2 (2024-07-01)
Bug Fixes
0.46.1 (2024-06-28)
Bug Fixes
- events: Added status after deleting files in idle (#684) (0e07ee3)
0.46.0 (2024-06-24)
Features
- Significant improvements to accessibility and keyboard navigation, enhancing user experience and inclusivity (#671) (4acb8a0)
0.45.0 (2024-06-23)
BEAKING CHANGES
- The previously deprecated API method
setUploadMetadata
has been removed. Use metadata
instance property on lr-config
block instead. See metadata for more details.
- The previously deprecated API method
addFiles
has been removed. Use addFileFromObject
, addFileFromUrl
or addFileFromUuid
instead. See File Uploader API for more details.
See the migration guide for details.
0.44.0 (2024-06-21)
BEAKING CHANGES
- All theme variables of the previous version are deprecated and won't affect the look anymore.
- The default button that opens the uploader dialog (SimpleBtn) component now uses independent variables.
- By default, the theme now uses OKLCH color space. You can still override it using other color spaces, but we recommend converting your colors to OKLCH.
See the migration guide for details.
Full styling docs are available here.
Features
- updated theming mechanics with oklch colors and reworked css properties (#662) (ee90e66)
0.43.0 (2024-06-14)
Features
- added
collectionValidators
and fileValidators
: Custom validators are now supported for collections and files. This enhancement allows for the addition of necessary checks for uploaded files and collections, providing flexibility and control over compliance with requirements (#667) (d3260b0). See docs here.
0.42.1 (2024-05-30)
0.42.0 (2024-05-30)
Features
- lr-file-uploader-regular: added attribute headless (5e58ff4). See docs here.
0.41.1 (2024-05-27)
Bug Fixes
- styles-readme: updated connect style in the project (#663) (2ee913f)
0.41.0 (2024-05-24)
Features
- add
secureDeliveryProxyUrlResolver
option (c7cfcd0). See docs here.
- add
secureUploadsExpireThreshold
option (0d9205d). See docs here.
- add
secureUploadsSignatureResolver
option (226d36f). See docs here.
0.40.0 (2024-05-17)
BREAKING CHANGES
- Icons are moved from CSS custom properties to SVG sprites. Overriding icons is
now done via the
iconHrefResolver
option. See the migration guide for details.
Bug Fixes
- image-editor: check for imageSize before commit (cdb87b4)
- image-editor: define icons size via css (080439f)
Features
0.39.1 (2024-05-15)
Bug Fixes
- l10n: add l10n key to the state if it's not present (#656) (227a88f)
0.39.0 (2024-05-07)
Features
- shadow-styles: eliminating shadow styles (#646) (984dbda)
0.38.3 (2024-05-07)
Bug Fixes
- lr-config: normalize DOM property values (#653) (5aa55c2)
0.38.2 (2024-04-29)
Bug Fixes
- config: dont bind complex config options to the attributes (#650) (310c728)
0.38.1 (2024-04-29)
Bug Fixes
- upload-list: set fixed modal container width to avoid bouncy width (could lead to some l10n ui width glitches but we're ok with them) (#648) (167af55)
0.38.0 (2024-04-25)
BREAKING CHANGES
- CSS configuration deprecated in v0.25.0 is removed. See the migration guide for v0.25.0 for more details.
- Localizations are removed from CSS.
Now we have a special API defineLocale
, and locale-name
and locale-definition-override
options. See the migration guide for more details.
0.37.0 (2024-04-15)
Bug Fixes
- activity switch races (#643) (fe365da)
- define config DOM property accessors on the class prototype to make it compatible with framework bindings (#638) (d47baf0)
Features
- added export UID from @symbiotejs/symbiote (#636) (9666f21)
0.36.0 (2024-03-21)
Bug Fixes
- don't try to open empty modal on mobile when camera is the only source (#634) (1bc4f5d)
Features
0.35.2 (2024-03-08)
Bug Fixes
- image-shrink: fallback algo on Firefox and iOS (#630) (066cfca)
0.35.1 (2024-03-07)
Bug Fixes
0.35.0 (2024-03-07)
Bug Fixes
- minimal: open system dialog on
add more
button (#626) (0098600)
Features
0.34.0 (2024-03-05)
Bug Fixes
- show camera system dialog when camera is the only source (95f0287)
- specify camera input accept attribute value as simple
image/*
to prevent OS to show unrelated sources (video/audio) (5ecacba)
- switch camera source output format to JPEG to make it shrinkable (6da4212)
Features
- add
cameraCapture
option to specify inpit capture attribute value (9a77057)
- lr-upload-ctx-provider: add method
addFileFromCdnUrl
to add already uploaded files with predefined cdn url modifiers (#617) (8043d08)
- lr-upload-ctx-provider: add method
removeFileByInternalId
(#618) (c2492eb)
0.33.2 (2024-02-20)
Bug Fixes
- set
cdnUrlModifers
default to empty string after file upload (#613) (7113058)
0.33.1 (2024-02-20)
Bug Fixes
- shadow-wrapper: wait for
shadowStyles
load before calling shadowReadyCallback
(#611) (42b73b7)
0.33.0 (2024-02-16)
Bug Fixes
- progress calculation errors when file is removed during uploading (#606) (74769ce)
Features
- Add image shrink to the uploader (e2b0896). See docs here
0.32.4 (2024-02-15)
Bug Fixes
- cloud-image-editor: disable image enter transition (2abe55f)
- cloud-image-editor: weird ui glitches when updating
cdnUrl
on change (c264c64)
0.32.3 (2024-02-13)
Bug Fixes
0.32.2 (2024-02-12)
Bug Fixes
- form-input: do not append
[]
postfix to input name when multiple
is falsy (#602) (4722c4d)
0.32.1 (2024-02-06)
Bug Fixes
- bump upload-client to fix large groups uploading (#599) (cb61448)
0.32.0 (2024-02-05)
Breaking changes
- Global events are removed. I.e.
window.addEventListener('LR_UPLOAD_FINISH', ...)
will not work anymore. Now you need to use lr-upload-ctx-provider
block to subscribe to the events. See the migration guide for more details.
- All existing events and their payloads are changed. See the migration guide for more details.
lr-data-output
block is removed.
- To handle HTML forms you need to use
lr-form-input
block.
- Groups output moved to the
lr-upload-ctx-provider
events
- Console debugging output now enabled with the
debug
attribute on lr-config
lr-message-box
block is removed.
See the migration guide for more details.
0.31.1 (2024-01-30)
Bug Fixes
- image-editor: fix flip operation serialization (#595) (140df3a)
0.31.0 (2024-01-29)
Bug Fixes
Features
0.30.9 (2024-01-18)
Bug Fixes
- cloud-image-editor: ignore unsupported cdn operations and print console warning (#587) (503eaae)
- external-source: disallow to select multiple files when multiple mode is off (#589) (d5c43cd)
0.30.8 (2023-12-29)
Bug Fixes
- shadow-wrapper: do not call success callback on the second
css-src
attribute change (#583) (eb9618a)
0.30.7 (2023-12-27)
Features
- lr-img: Do not append
-/format/auto/
and -/quality/smart/
by default to the resulting CDN URL. Now, the defaults of these settings are preserved within the project settings on the dashboard. See the release notes for the Auto formatting and CDN updates.
Bug fixes
- lr-img:: Ignore breakpoints config when applying
image-set
for the background image using is-background-for
option.
0.30.6 (2023-12-20)
Bug Fixes
- upload-ctx-provider: execute destroy context callback async to ensure all sync callbacks are run (#575) (cbb9a21)
0.30.5 (2023-12-07)
Bug Fixes
- activity-block: check for the
*modalActive
key presence in state before subscribing it (0e50b4f)
- destroy upload collection when the last block in context is being destroyed (42e501a)
0.30.4 (2023-12-06)
Bug Fixes
- activity: run activity deactivation callback when modal became closed (2e84268)
- cloud-image-editor: do no try to update image when element is disconnected from DOM (1b417a9)
- cloud-image-editor: init
*tabId
global state key in the main editor block instead of deeper toolbar block (511d3e1)
- start-from: add missing scroll area (680a282)
- window-height-tracker: prevent infinite loop (7576ece)
0.30.3 (2023-12-04)
Bug Fixes
- block: destroy both local and global contexts (bdd4a33)
- cloud-image-editor: destroy context (deb9d25)
- config: do not overwrite config values inside context (c1f6a0f)
- drop-area: destroy global registry context if there are no items inside (ad89e56)
- img: destroy context (05ba451)
- typed-collection: destroy context (a7c136d)
- upload-collection: destroy upload collection (bcc4d46)
0.30.2 (2023-12-01)
Bug Fixes
- start-from: styles (#566) (7367b1d)
- upload-ctx-provider: run parent init callback before accessing event emitter (#565) (a313c5c)
0.30.1 (2023-11-30)
Bug Fixes
0.30.0 (2023-11-14)
- drop-area: show pointer on clickable drop areas (6990cd4)
Features
- add
cancel
button on the start from activity (#554) (44bd845)
- move global events to the
lr-upload-ctx-provider
scope (c452eeb)
0.29.1 (2023-10-31)
Bug Fixes
- modal: buggy click handlers to close modal on outside click (#551) (8949948)
- types: bump @uploadcare/upload-client with fixed types for
imageInfo.datetimeOriginal
(#550) (8babfab)
0.29.0 (2023-10-27)
Features
- add property
fullPath
to the output entry (9e4707f)
- pass output entry to the metadata callback (9153826)
config.metadata = (fileEntry) => ({
type: 'cat',
fileName: fileEntry.name,
fullPath: fileEntry.fullPath,
});
0.28.0 (2023-10-26)
BREAKING CHANGES
LR_DATA_OUTPUT
event on window
Before: The LR_DATA_OUTPUT
event only contained uploaded files and fired only when a file was uploaded, deleted, or edited.
Now: The LR_DATA_OUTPUT
event now includes all the files in the upload list, including those not yet uploaded, and it fires whenever there is any change in the file list.
The event firing is debounced with a 100ms delay. So, in this event, you receive a complete snapshot of the upload list's state. *Please note that if the file hasn't been uploaded yet, the data will be incomplete. Properties such as uuid
, cdnUrl
and others will not be accessible. Before accessing them, you should check the isUploaded
flag, which is described below.
window.addEventListener('LR_DATA_OUTPUT', (e) => {
const entries = e.detail.data;
for (const entry of entries) {
if (entry.isUploaded) {
console.log('Uploaded', entry.uuid);
} else {
console.log('Not uploaded', entry.uploadProgress);
}
}
});
- make
LR_DATA_OUTPUT
event frequent and contain all the files (69105e4)
lr-data-output
event on lr-data-output
block (tag)
Before: The lr-data-output
event mirrors the LR_DATA_OUTPUT
event. When the group-output
option is enabled or the use-group
attribute is present, it always creates a group for the file list.
Now: The lr-data-output
event mirrors the LR_DATA_OUTPUT
event. When the group-output
option is enabled or the use-group
attribute is present, a group is only created if all files are uploaded, and there are no validation errors.
Otherwise, the event contains undefined groupData
and a list of files.
Features
New file properties for the events payload
The following events are affected:
LR_DATA_OUTPUT
LR_UPLOAD_FINISH
LR_REMOVE
LR_UPLOAD_START
lr-data-output
What file properties have been added:
validationErrorMessage: string | null;
uploadError: Error | null;
file: File | Blob | null;
externalUrl: string | null;
isValid: boolean;
isUploaded: boolean;
uploadProgress: number;
- add new properties to the output file entry (2821bf3)
lr-data-output
now uses native validation to show errors
- lr-data-output: improve native form validation (c329d4c)
Bug Fixes
- lr-config: validate passed settings (6012581)
- show inline validation message for the
multiple-min
requirement check fail (8af0fec)
0.27.6 (2023-10-20)
Bug Fixes
- minimal-mode: add file button should open system dialog (#544) (366d524)
0.27.5 (2023-10-19)
Bug Fixes
- types: add missing
LR_CLOUD_MODIFICATION
JSX type (#542) (3307b25)
0.27.4 (2023-10-12)
Bug Fixes
- require
ctx-name
attribute for all the public blocks and wait for it with 300ms timeout (11d5a94)
0.27.3 (2023-10-10)
Bug Fixes
- cloud-image-editor: make
crop-preset
and tabs
attributes reactive (8545c71)
- uploader: append
preview
operation when setting initial crop with crop-preset
defined (5f1036c)
0.27.2 (2023-10-10)
Bug Fixes
- capture and store file's full path while getting drag'n'dropped (#536) (3ba168e)
0.27.1 (2023-10-06)
Bug Fixes
- init-flow: fix sync
initFlow
calls right after upload collection (#532) (f4f4dea)
0.27.0 (2023-10-06)
Bug Fixes
- drag-n-drop: do not show drop cursor when it's not over the drop target (05a08dc)
Features
- simple-btn: add flag to toggle drop-zone (5f4fae2)
Example:
class CustomSimpleBtn extends LR.SimpleBtn {
dropzone = false;
}
LR.registerBlocks({ ...LR, SimpleBtn: CustomSimpleBtn });
or
<lr-simple-btn dropzone="false"></lr-simple-btn>
0.26.0 (2023-10-03)
Features
New option cloudImageEditorTabs
Defines the list of tabs in the cloud image editor. See the configuration reference for more details.
- cloud-image-editor: add ability to hide unnecessary editor tabs (crop, tuning or filters) (af15f51)
New option cropPreset
Defines the crop behavior. When uploading images, your users can select a crop area with defined aspect ratio. See the configuration reference for more details.
- cloud-image-editor: add crop preset setting (923f4ca)
- uploader: force defined aspect ration for the output images (26eda66)
Fixes
- external-sources: add files to the upload list after done button click (0089370)
0.25.6 (2023-09-01)
Bug Fixes
- types: shadow wrapper static fields mixin (#522) (a65435c)
0.25.5 (2023-08-28)
Bug Fixes
- types: events types export for angular projects (#518) (daf3c2c)
0.25.4 (2023-08-08)
Bug Fixes
- add-file-from: handle upload collection initial state when called before initialization (6f932d3)
- inline: show upload list if there are any file in the list (96e44e6)
- minimal: show upload list if there are any file in the list (174c4a7)
0.25.3 (2023-08-08)
Bug Fixes
- minimal: add exports of
lr-config
and upload-ctx-provider
(#506) (8049e6f)
0.25.2 (2023-08-07)
0.25.1 (2023-07-24)
Bug Fixes
- cloud-image-editor: fix
initEditor
type (#502) (6c222d5)
0.25.0 (2023-07-24)
BREAKING CHANGES
Configuration in CSS is now deprecated.
Although it currently works, it will be removed shortly.
In lieu of this, we are introducing a new lr-config block for configuration definitions.
The css-src
attribute is now required on solution blocks.
This implies that the use of Shadow DOM is enforced.
The ctx-name
attribute is required for the each block on the page.
Method setUploadMetadata
is deprecated in favour of metadata
DOM property
on the lr-config
block.
CloudEditor
(lr-cloud-editor
) solution block is renamed to
CloudImageEditor
(lr-cloud-image-editor
).
CloudImageEditor
(lr-cloud-image-editor
) activity is was renamed to
CloudImageEditorActivity
(lr-cloud-image-editor-activity
).
All solution bundles are prefixed with lr-
prefix:
file-uploader-regular.min.js
-> lr-file-uploader-regular.min.js
file-uploader-regular.min.css
-> lr-file-uploader-regular.min.css
file-uploader-inline.min.js
-> lr-file-uploader-inline.min.js
file-uploader-inline.min.css
-> lr-file-uploader-inline.min.css
file-uploader-minimal.min.js
-> lr-file-uploader-minimal.min.js
file-uploader-minimal.min.css
-> lr-file-uploader-minimal.min.css
Solution bundles do not automatically register blocks.
You will need to manually register them:
import * as LR from 'https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.js';
LR.registerBlocks(LR);
Bundle blocks.iife.js
is renamed to blocks.iife.min.js
.
Bundle blocks-browser.min.js
is deprecated. Use blocks.iife.min.js
instead.
How to migrate
This migration guide is also available at: https://uploadcare.com/docs/file-uploader/migration-to-0.25.0/
Configuration
First and foremost, you need to shift all the configuration from CSS to the lr-config
block.
For instance, if you have the following CSS:
.config {
--ctx-name: 'my-uploader';
--cfg-pubkey: 'YOUR_PUBLIC_KEY';
--cfg-multiple-min: 0;
--cfg-multiple-max: 3;
}
Move it to the lr-config
block:
<lr-config ctx-name="my-uploader" pubkey="YOUR_PUBLIC_KEY" multiple-min="0" multiple-max="3"></lr-config>
Subsequently, you should link your solution block to the lr-config
block using the ctx-name
attribute:
<lr-file-uploader-regular
ctx-name="my-uploader"
css-src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.css"
></lr-file-uploader-regular>
The property names remain the same but without the --cfg
prefix. For example,
--cfg-pubkey
becomes simply pubkey
.
See the [configuration reference][file-uploader-configuration] for more details.
Dynamic configuration updates
If you have dynamically updated CSS configuration like this:
const uploader = document.querySelector('lr-file-uploader-regular');
uploader.style.setProperty('--cfg-pubkey', 'YOUR_PUBLIC_KEY');
const uploaderCtx = document.querySelector('lr-upload-ctx-provider');
uploaderCtx.updateCtxCssData();
You need to update it to the following:
const config = document.querySelector('lr-config');
config.setAttribute('pubkey', 'YOUR_PUBLIC_KEY');
config.pubkey = 'YOUR_PUBLIC_KEY';
Both attributes and DOM properties are reactive so you don't need to call
updateCtxCssData
anymore.
Shadow DOM and css-src
Shadow DOM is now enforced for all the solution blocks. It means that you need
to use css-src
attribute to attach CSS to the block.
If you previously attached CSS to the global like this:
<link href="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.css" rel="stylesheet" />
<lr-file-uploader-regular class="lr-wgt-common"></lr-file-uploader-regular>
You need to use css-src
attribute instead:
<lr-file-uploader-regular
css-src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.css"
></lr-file-uploader-regular>
(Other attributes are omitted for brevity)
ctx-name
attribute
ctx-name
attribute is required for all the blocks now even if you have only
one block on the page. It's used to wire blocks to the lr-config
block. For
example:
<lr-config ctx-name="my-uploader"></lr-config>
<lr-file-uploader-regular ctx-name="my-uploader"></lr-file-uploader-regular>
<lr-upload-ctx-provider ctx-name="my-uploader"></lr-upload-ctx-provider>
<lr-data-output ctx-name="my-uploader"></lr-data-output>
(Other attributes are omitted for brevity)
If you was using setUploadMetadata
method like this:
uploaderCtxProvider.setUploadMetadata({ foo: 'bar' });
You need to replace it with metadata
DOM property on the lr-config
block:
const config = document.querySelector('lr-config');
config.metadata = { foo: 'bar' };
config.metadata = () => Promise.resolve({ foo: 'bar' });
See the [configuration reference][file-uploader-option-metadata] for more details.
Rename CloudEditor
-> CloudImageEditor
If you was using standalone lr-cloud-editor
solution block, you need to rename
it to lr-cloud-image-editor
like this:
<lr-cloud-image-editor
uuid="7c167b79-9f27-4489-8032-3f3be1840605"
css-src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-cloud-image-editor.min.css"
ctx-name="my-editor"
></lr-cloud-image-editor>
Rename CloudImageEditor
-> CloudImageEditorActivity
If you was using lr-cloud-image-editor
activity block inside your custom
Symbiote.js templates, you need to rename it to lr-cloud-image-editor-activity
like this:
FileUploaderRegular.template = `
<lr-simple-btn></lr-simple-btn>
<lr-modal strokes block-body-scrolling>
<lr-start-from>
<lr-drop-area with-icon clickable></lr-drop-area>
<lr-source-list wrap></lr-source-list>
<lr-copyright></lr-copyright>
</lr-start-from>
<lr-upload-list></lr-upload-list>
<lr-camera-source></lr-camera-source>
<lr-url-source></lr-url-source>
<lr-external-source></lr-external-source>
<lr-cloud-image-editor-activity></lr-cloud-image-editor-activity>
<!-- here it is -->
</lr-modal>
<lr-message-box></lr-message-box>
<lr-progress-bar-common></lr-progress-bar-common>
`;
Rename imported JS and CSS bundles
Just rename all the imports according to the following table:
Old name |
New name |
file-uploader-regular.min.js |
lr-file-uploader-regular.min.js |
file-uploader-regular.min.css |
lr-file-uploader-regular.min.css |
file-uploader-inline.min.js |
lr-file-uploader-inline.min.js |
file-uploader-inline.min.css |
lr-file-uploader-inline.min.css |
file-uploader-minimal.min.js |
lr-file-uploader-minimal.min.js |
file-uploader-minimal.min.css |
lr-file-uploader-minimal.min.css |
For example:
<script type="module">
import * as LR from 'https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/file-uploader-regular.min.js';
LR.registerBlocks(LR);
</script>
<lr-config ctx-name="my-uploader" pubkey="YOUR_PUBLIC_KEY"></lr-config>
<lr-file-uploader-regular
ctx-name="my-uploader"
css-src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/file-uploader-regular.min.css"
></lr-file-uploader-regular>
Became:
<script type="module">
import * as LR from 'https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.js';
LR.registerBlocks(LR);
</script>
<lr-config ctx-name="my-uploader" pubkey="YOUR_PUBLIC_KEY"></lr-config>
<lr-file-uploader-regular
ctx-name="my-uploader"
css-src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.css"
></lr-file-uploader-regular>
Call registerBlocks
manually
If you have installed blocks using min.js
bundles, you need to call
registerBlocks
manually:
<script type="module">
import * as LR from 'https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/lr-file-uploader-regular.min.js';
LR.registerBlocks(LR);
</script>
Rename blocks.iife.js
to blocks.iife.min.js
If you previously used the blocks.iife.js
bundle, you need to rename it to
blocks.iife.min.js
as follows:
<script src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/blocks.iife.min.js" async />
Rename blocks-browser.min.js
to blocks.iife.min.js
If you were using the connectBlocksFrom
method in conjunction with the
blocks-browser.min.js
bundle, you need to rename it to blocks.iife.min.js
,
as shown below:
connectBlocksFrom('https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/blocks.iife.min.js').then((LR) => {
LR.registerBlocks(LR);
});
If you were using blocks-browser.min.js
via a script
tag with type="module"
,
you need to rename it to blocks.min.js
, as shown below:
<script type="module">
import * as LR from 'https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/blocks.min.js';
LR.registerBlocks(LR);
</script>
If you were using blocks-browser.min.js
via a script
tag without
type="module"
, you need to rename it to blocks.iife.min.js
, as shown below:
<script src="https://cdn.jsdelivr.net/npm/@uploadcare/blocks/web/blocks.iife.min.js" async />
0.24.2 (2023-07-20)
Changes
0.24.1 (2023-06-27)
Bug Fixes
- url-source: enable input autofocus, form submit, value clear on submit (#495) (552cad3)
0.24.0 (2023-06-21)
Bug Fixes
- drag-n-drop: copy
type
value from DataTransferItem
to FileSystemFileEntry
when doing drag'n'drop because FileSystemFileEntry
don't resolve type for HEIC (832ed55)
- get
mimeType
from upload API from both contentInfo
and provided type (33cf2f7)
- validation: skip client validation if mime type or file name aren't available (0d7a96f)
Features
- add icons for flickr, evernote, box, onedrive, huddle (#490) (30ae37d)
0.23.0 (2023-06-14)
Features
- add
uploadAll
method to trigger upload (db69508)
- add separate
addFileFromUrl
, addFileFromUuid
and addFileFromObject
(b5a89c4)
Deprecations
- method
addFiles
is deprecated in favour of addFileFromUrl
, addFileFromUuid
and addFileFromObject
above
API
uploaderCtx.addFileFromUrl(url: string, { silent?: boolean, fileName?: string } = {});
uploaderCtx.addFileFromUuid(uuid: string, { silent?: boolean, fileName?: string } = {});
uploaderCtx.addFileFromObject(file: File, { silent?: boolean, fileName?: string } = {});
uploaderCtx.uploadAll();
Bug Fixes
Features
- add IIFE bundle
web/blocks.iife.js
(#480)
Bug Fixes
- skip validation if no allowed file types provided (#477) (e241993)
Bug Fixes
- file-item:
--cfg-img-only
for external sources causing error (#475) (479db7b)
0.22.9 (2023-06-05)
Bug Fixes
- copyright: not working --cfg-remove-copyright config option (#473) (e925c7b)
0.22.8 (2023-05-31)
Bug Fixes
- make file extension validation case-insensitive (#471) (ae87b6b)
0.22.7 (2023-05-29)
Bug Fixes
0.22.6 (2023-05-26)
Bug Fixes
- cloud-editor: init editor on initCallback instead of connectedCallback to prevent cases when editor init is going before the block init (#467) (f6d92fd)
0.22.5 (2023-05-26)
Bug Fixes
- do not use host-context unsupported in firefox and safari (7ab7a98)
0.22.4 (2023-05-23)
Bug Fixes
- file-item: do not validate local files if no mime type provided (this is the case for drag'n'dropped HEICs) (e47497e)
- file-item: validate file extensions along with the mime types (b89ea0e)
0.22.3 (2023-05-19)
Features
- external-source: configurable social base url (0cd7f94)
Bug Fixes
- drop-area: fix detection of the active dropzone (97dbb32)
- drop-area: prevent flickering on file being dragged before init (72b76a7)
- file-uploader-inline: update missing
init$
usage that was leading to crash (51a7b10)
0.22.2 (2023-05-17)
Bug Fixes
- add empty export to the blocks-browser bundle to fix working under isolatedModules (#451) (683fb2b)
- cloud-editor: extend from ShadowWrapper (3c518a5)
- cloud-editor: solution bundle (89ad5af)
0.22.1 (2023-05-15)
Bug Fixes
- copyright: hide whole
lr-copyright
block if it's disabled (2550d20)
- get rid of
ctxOwner
flag due to it's buggy behaviour (6c5f374)
0.22.0 (2023-05-12)
Bug Fixes
- file-item: error while rewoke thumb (9dc73ff)
- progress-bar-common: ignore pointer events when not active (e6ddbf6)
- Don't show block re-registration warnings for the same block components
Features
- Run upload requests in the queue (ed9d6de)
0.21.7 (2023-05-03)
Bug Fixes
- bump @uploadcare/upload-client to fix issues with Buffer polyfilling by CDNs (esm.sh, skypack) (#442) (afd1d7d)
0.21.6 (2023-04-28)
Bug Fixes
- file-uploader-inline: add
flex: 1
css property to fill all available space inside flex column container (#439) (a781d20)
- package.json: add types to exports field (#440) (718f432)
0.21.5 (2023-04-27)
Bug Fixes
- file-uploader-inline: set init context (#437) (81031a7)
0.21.4 (2023-04-27)
Bug Fixes
- file-uploader-inline: do not try to hide drop area because it's hides itself (#435) (4f11007)
0.21.3 (2023-04-27)
Bug Fixes
- modal: restore scroll lock on modal destroy (#433) (70fad11)
0.21.2 (2023-04-27)
Bug Fixes
- jsx: add missing lr-file-uploader-inline tag (#431) (a15cc28)
0.21.1 (2023-04-25)
Bug Fixes
- activity-block: reset current activity (e72f15c)
- activity-header: button colors in the darkmode (6c29b47)
- block: update css data when block is connected to the DOM only (23a99e2)
- drop-area: disable and hide drop area if local sources are not allowed (cf6bc8a)
- external-source: reactive style updates (bb6838b)
- message-box: reduce background lightness in the darkmode (221bd05)
- shadow-wrapper: prepend css-src style instead of append to make easier to override styles via
shadowStyles
(7941e40)
- simple-btn: safari icon fractional scaling (4400acd)
- solutions: export LR from web bundles (d5e718c)
- source-list: update children when source list is empty (75cbbd4)
- stub package exports for SSR (d528184)
- upload-list: do not try to handle file collection update while being disconnected from DOM (ef6f101)
0.21.0 (2023-04-19)
Features
- add
--cfg-external-sources-preferred-types
option to configure preferred mime types for the external sources (1d4e645)
0.20.1 (2023-04-11)
Bug Fixes
- bundle stubbed jsx types to npm package (#414) (98de315)
0.20.0 (2023-04-10)
Bug Fixes
- file-item: make ui reactive to css data (5d64a05)
- simple-btn: prevent dropzone flickering on initial render (82d9c1d)
- types: add type stub for
lr-upload-ctx-provider
(560502f)
- uploader-block: add missing external source types to the UploaderBlock's
sourceTypes
static property (0a7c2fc)
Features
- add
--cfg-remove-copyright
option (e128953)
- block: add method
updateCtxCssData
to update css data for all the blocks in the context (5a89749)
0.19.0 (2023-03-10)
Bug Fixes
- cloud-editor: refetch image on container resize (67ea66f)
Features
- cloud-editor: use resize observer to wait for non-zero container size (5686965)
0.18.1 (2023-03-09)
Bug Fixes
- docs: set cloud-editor examples body height (#398) (690760e)
- lr-data-output: create dynamic inputs container even if
input-required
is not defined (#401) (cdfce56)
0.18.0 (2023-02-17)
Bug Fixes
- modal: backdrop color definition (d8fcf51)
- modal: do not manipulate
open
attr if dialog is supported (4a286b9)
Features
- data-output: add
input-required
attribute (0fb1370)
- file-uploader-minimal: include
lr-data-output
to the bundle (a6e7802)
0.17.1 (2023-02-14)
Bug Fixes
- cloud-image-editor: get rid of
change
event double initial calling (#386) (0cc0b00)
0.17.0 (2023-02-08)
Bug Fixes
- cloud-image-editor: dispatch events with
bubble
and composed
flags (58733c4)
- cloud-image-editor: fix extraction of
filter
operation with undefined value (351b080)
- cloud-image-editor: pause render until container get non-zero size (1e5a4a8)
Features
- cloud-image-editor: Add
change
event (1fff5fb)
0.16.1 (2023-02-06)
Bug Fixes
- do not call init flow without user interaction (#380) (be100a5)
- file-uploader-inline: show back button (#381) (cb83ebe)
0.16.0 (2023-02-03)
Bug Fixes
- file-uploader-inline: hide close button (4026508)
Features
- add
LR_DONE_FLOW
and LR_INIT_FLOW
events (b5828ad)
0.15.2 (2023-02-03)
Bug Fixes
- upload-list: undefined files count in the header (#376) (c897986)
0.15.1 (2023-02-02)
Bug Fixes
- file-item: dont show edit button if
--cfg-use-cloud-image-editor
flag is false (#374) (85d79bb)
0.15.0 (2023-01-31)
We are excited to announce the launch of a brand-new design. This new design offers a more modern look and feels, making it easier and faster to use. We have also made several other UI improvements, such as improved navigation and a better overall user experience. We hope you enjoy the new design and experience.
Breaking changes
If you haven't used custom templates, then there shouldn't be any breaking changes for you.
If you're using custom templates, you will need to update them to comply with the new version's default template.
- Content of
<lr-start-from />
component was modified
<lr-confirmation-dialog />
was removed
Here is the basic template for the <lr-file-uploader-regular />
component:
<lr-simple-btn></lr-simple-btn>
<lr-modal strokes block-body-scrolling>
<lr-start-from>
<lr-drop-area with-icon clickable></lr-drop-area>
<lr-source-list wrap></lr-source-list>
<lr-copyright></lr-copyright>
</lr-start-from>
<lr-upload-list></lr-upload-list>
<lr-camera-source></lr-camera-source>
<lr-url-source></lr-url-source>
<lr-external-source></lr-external-source>
<lr-cloud-image-editor></lr-cloud-image-editor>
</lr-modal>
<lr-message-box></lr-message-box>
<lr-progress-bar-common></lr-progress-bar-common>
Bug Fixes
- image-editor: restore transformations state from the cdn url (32b1858)
- shadow-wrapper: hide container until css load (ef9c552)
- specify image types for file input capture accept, fixes Firefox on Android (99b5f4f)
Features
- allow custom pluralizers (62ecffb)
- do not confirm upload list clearing (c90c57a)
- show
cloud editor
instead of upload details
(036be6c)
- drop-area: fullscreen mode
- upload-list: show upload errors inside file item
0.14.3 (2022-12-20)
Bug Fixes
- data-output: pass files or group URL to the hidden input (160b08f)
- events: emit
LR_DATA_OUTPUT
on image edit (fa30140)
- events: pass the whole file info object to to the
LR_CLOUD_MODIFICATION
event (38440bd)
- single source behaviour (#343) (d2929de)
0.14.2 (2022-11-22)
Bug Fixes
- wrap
::backdrop
with :is
to prevent ignoring from unsupported browsers (#332) (e3ef691)
0.14.1 (2022-10-26)
Bug Fixes
- fix processing escaped css property values in Firefox
0.14.0 (2022-10-26)
Bug Fixes
- external-source: prevent iframe height overflow (4fc669b)
- store: set store to
auto
by default (464a5ce)
Features
- Block: use real window height instead of 100vh (577981e)
- camera-source: show user media denied error to the user (b4d167d)
- modal: use native
dialog
element & close modal on outside click (5ec02e0)
0.13.0 (2022-10-17)
Bug Fixes
- drop-area: open modal on files drop (6c112a8)
Features
- simple-button: show drop area on files drag (25fa023)
0.12.4 (2022-10-11)
Bug Fixes
- modal: disable stroked backdrop by default (970b590)
0.12.3 (2022-10-10)
Bug Fixes
- register-blocks: remove optional chaining usage (935c8f3)
0.12.2 (2022-10-08)
Bug Fixes
- connect-blocks-from: remove optional chaining usage (f93ab07)
0.12.1 (2022-10-05)
Bug Fixes
- file-item: cancel debounced thumb generation on element disconnect (#294) (7371335)
0.12.0 (2022-10-03)
Bug Fixes
- count blocks number in the registry and unobserve upload collection when there are no any registred blocks (9134f9b)
- file-uploader-minimal: add missing translations (#291) (2ee8964)
Features
- add export of
ShadowWrapper
(6fedc7c)
0.11.1 (2022-09-28)
Bug Fixes
- file-item: check file mime type before upload (0ced1ef)
- file-item: check for allowed mime types list length before match (16cabec)
- file-item: do not handle empty mime types (3ce3e95)
- file-item: skip
isImage
check for the external files before upload (7f19457)
- uploader-block: fix array destructuring mistake (09d57f6)
0.11.0 (2022-09-26)
Bug Fixes
- lr-image: return data: and blob: sources as is (e83518b)
- lr-image: set provided custom
cdn-cname
when uuid attr passed (ff04d93)
- svg image preview rendering in firefox (1231951)
Features
- lr-image: don't proxify already uploaded images (4d0dc0d)
0.10.3 (2022-09-23)
Bug Fixes
- file-item: uploading from external url (typo) (#281) (ed5c741)
- unobserve upload collection on destroy (#282) (2c871e1)
0.10.2 (2022-09-22)
Bug Fixes
- external-source: disable
done
button when no files selected (#278) (7ae584f)
0.10.1 (2022-09-20)
Bug Fixes
- file-item: prevent flickering (d04ec9d)
- file-item: regenerate thumb on image edit (15e567d)
- rework history (f7e39f9)
- upload-list: do not close modal automatically if
--cfg-confirm-upload
enabled (68f3e93)
0.10.0 (2022-09-19)
Bug Fixes
- file-item: calculate state in the single place (8eb5f6e)
- file-item: proper request abort, restore state on new entry, optimize thumb generation (60038f2)
- upload-list: enable
Upload
button if any file isn't started uploading (9b980c4)
- uploader-block: do not history back if no any files in the collection (34bbb7e)
Features
- typed-collection: check type with instanceof (409feec)
- typed-collection: notify subscribers about added and removed items (624c282)
0.9.4 (2022-09-13)
Bug Fixes
- do not use
structuredClone
due to unsupport in safari <= 15.3 (#257) (8708b08)
- message-box: specify text-align for message (#254) (2561eb6)
0.9.3 (2022-09-09)
Bug Fixes
- abort uploading on item remove (c53d730)
- core: deep clone shared initial state before use it (f48e7f3)
- file-uploader-minimal: add missing icons (91f08b4)
- file-uploader-minimal: do not show empty list (15c1fb4)
- upload-list: do not call upload done callback on empty list (522a8cb)
- upload-list: wrong scrollable content height on safari 15.3 (#248) (60573d8)
0.9.2 (2022-09-02)
0.9.1 (2022-08-31)
Bug Fixes
- DropArea > prevent activity change on empty list (f65806e)
0.9.0 (2022-08-31)
Bug Fixes
0.8.1 (2022-08-26)
Bug Fixes
- cloud-image-editor: errors while edit image multiple times (#232) (743220d)
- ctx-owner rendering issue (React) (0365765)
0.8.0 (2022-08-23)
Bug Fixes
-
- data output call bound to upload state and uploaded items removal + lr-img fix (863fe99)
- double slash bug with --cfg-cdn-cname trailing slash (6a121c9)
- merge issues (ba48502)
- modal layout in Safari (52bbc4a)
- TS error (f0babf1)
Features
- add clickable attribute to DropArea (d486788)
- connectBlocksFrom added (4c80a97)
- custom base upload URL support (6d03fd1)
- drag-n-drop page img (0ec0e69)
- lr-drop-area is-image validation support (3bc8ae5)
- workflow evens (7709a1d)
0.7.2 (2022-08-11)
0.7.1 (2022-08-04)
Bug Fixes
- file-uploader-minimal: ensure current activity is always present (33ee804)
0.7.0 (2022-08-04)
Bug Fixes
- cloud-editor: create own context (db97b19)
- data-output: do not set value property (88c5deb)
- file-item: call IntersectionObserver.unobserve in the right places (3216ad7)
- move TypedCollection and TypedData from symbiote to our repo (#211) (eb99ce7)
- specify side-effects for .css files (#210) (30d7e51)
- use zero specific css selectors for common classes to allow user to override styles (#209) (959931b)
- volume range behavior (aede13b)
Features
- add
--cfg-user-agent-integration
option (75eebf0)
- lr-video stage 1 (626d5b6)
0.6.0 (2022-07-14)
Bug Fixes
Features
- img: proxify image load and error events (#202) (7350c97)
0.5.2 (2022-07-07)
Bug Fixes
- camera label (287700f)
- empty camera labels return on some platforms (d66b471)
0.5.1 (2022-07-06)
Bug Fixes
- camera-source with symbiote updated (5d136e4)
0.5.0 (2022-07-06)
Bug Fixes
Features
0.4.1 (2022-06-29)
Bug Fixes
- add missing FileUploaderInline export (1fa0888)
- bump upload-client version (5b1df67)
- cloud-editor: do not initialize --cfg-cdn-cname with empty string (07a770b)
0.4.0 (2022-06-22)
Bug Fixes
Features
0.3.0 (2022-06-15)
Bug Fixes
- add
type=button
to all the buttons to prevent form submit (e681ca5)
- FileItem: error icon (094eb7b)
- TS fix (72f6a91)
- upload-details: handle not-uploaded images and clear canvase before preview render (d522818)
- upload-details: render preview image with
format/auto
and preview
operations (7c30d29)
- upload-details: show/hide
cloud edit
button properly (b2efe40)
Features
- add
--cfg-cdn-cname
option (#154)
- add
--cfg-preview-proxy
option state (#157)
- add
--cfg-secure-expire
and --cfg-secure-signature
(#156)
- cloud-image-editor: add separate config for the solution (f6b1726)
- Img: secure delivery support (a14baa1)
- optional grouping output support (3f9b23c)
- passthrough upload-client options (80c2226)
0.2.0 (2022-05-17)
Bug Fixes
Features
0.1.3 (2022-04-27)
Bug Fixes
- uc-image breakpoint duplicates (8d3b542)
0.1.2 (2022-04-25)
0.1.1 (2022-04-21)
0.1.0 (2022-04-21)
Bug Fixes
- blocks page navigation (aba948f)
- camera-source: l10n fix (ddc1abd)
- closing slash for uc-img src + common test updates (7dc5e17)
- closing slash for uc-img src 2 (50d3ce0)
- cloud editor styles and behaviour (5a3fcec)
- cloud-image-editor: retry network button (b2ff5e0)
- edit button visibility (c45c60f)
- excess render calls for the FileItem on "Add more" (655747a)
- external source type (832d269)
- live-html indents (137d6a8)
- regular uploader demo (149d0c2)
- single source flow + minimal case activity (ff8c335)
- styles for modal sizes & content scrolls (892e3ea)
Features
- app-shell (test) (be01d8a)
- app-shell (test) (0fd91bc)
- github contribution templates and conditions added (7c75ead)
- single source flow handle (a899c15)
- single source handle (ad7b8ce)
- single source handle WIP (5f19625)
- uc-image solution (340349a)
- uc-live-html - remove excess tree indents for innerHTML (920cbd4)