Releases: simonihmig/responsive-image
@responsive-image/react@1.1.0
Minor Changes
-
#1408
04979f8
Thanks @wkillerud! - Export the CSS as well as a JS only variantMost of the time the default export should "just work", but this change adds some flexibility for users of the package.
In particular it makes it easier to include the CSS in a client-side bundle in an application that is otherwise server-side only.
Patch Changes
- #1390
323fa8a
Thanks @wkillerud! - Add missing README
@responsive-image/webpack@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1246
c3dcac9
Thanks @simonihmig! - Makeassets
the default output pathTo align with defaults elsewhere (Ember, Vite) the webpack loaders will use a default
outputPath
ofassets
instead ofimages
. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Patch Changes
@responsive-image/wc@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Minor Changes
- #1346
b0ec36f
Thanks @wkillerud! - Add support for the 'auto' imageType
Patch Changes
@responsive-image/vite-plugin@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Patch Changes
@responsive-image/svelte@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Minor Changes
- #1346
b0ec36f
Thanks @wkillerud! - Add support for the 'auto' imageType
Patch Changes
@responsive-image/solid@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Minor Changes
- #1346
b0ec36f
Thanks @wkillerud! - Add support for the 'auto' imageType
Patch Changes
@responsive-image/react@1.0.0
Major Changes
-
#1364
18dbfea
Thanks @simonihmig! - Add support for ReactAdds a new
@responsive-image/react
package providing the image component with a native React implementation.
Minor Changes
- #1346
b0ec36f
Thanks @wkillerud! - Add support for the 'auto' imageType
Patch Changes
@responsive-image/ember@2.0.0
Major Changes
-
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Minor Changes
-
#1311
ba7a9da
Thanks @wkillerud! - Add support for Fastly IO as a CDN -
#1346
b0ec36f
Thanks @wkillerud! - Add support for the 'auto' imageType
Patch Changes
@responsive-image/core@2.0.0
Major Changes
-
#1346
b0ec36f
Thanks @wkillerud! - ImageData.imageTypes can now be the string 'auto'CDNs often have a feature to automatically choose the
optimal format based on the visiting browser. This type
change is made to support using such features in the
cdn
package.Where you assume
imageTypes
is an array of strings,
update to also support theimageTypes: 'auto'
case. -
#1239
2a12953
Thanks @simonihmig! - Refactor internal LQIP implementationThe way the build plugins would expose the image meta data for any LQIP (Low Quality Image Placeholder) features has changed, especially related to Thumbhash/Blurhash. Previously, the image component would lazily load the runtime decoding function for Thumbhash/Blurhash (dynamic import), as to not load that code when the feature is not used at all. However, this introduced some (minor) delay due to the additional chunk loading, but also made the internal implementation of the image components more complex than it needed to be due to having to handle asynchrony. Now the conditional loading is off-loaded to the build plugins, which can make the decision to pull in the decoding code only when needed at build-time, significantly simplifying the runtime image components by removing any async loading and state syncing.
This changed the internal contract (interface) for the LQIP feature between the build plugins (Vite or webpack) and the image components. This is a breaking chance, but the only impact for users is to make sure you only use v2.x of any of the project's dependencies (
@responsive-image/*
). No changes in code required. -
#1351
cfaabb7
Thanks @simonihmig! - Refactored styles for LQIP optionsThis changed the interface between build plugins and image components with regard to how CSS styling information for LQIP options is passed through. While technically a breaking change, this shouldn't affect you as long as you are on V2.x versions of any build blugins and image component packages.
It also introduces a new
styles: 'inline'
option for build plugins to ship LQIP tyles in the JavaScript bundle, which is needed for the web component, as external styles (external CSS file) was actually not working before due to Shadow DOM isolation.
Patch Changes
-
#1311
ba7a9da
Thanks @wkillerud! - Add support for Fastly IO as a CDN -
#1383
ae74565
Thanks @simonihmig! - Fix a too smallscreenSize
default in node/SSR environmentImage components use the user's screen size as the width to use for the fallback image used in the
src
attribute.
When running in node/SSR it cannot know the browser screen size, so it has to pick a reasonable default. It used to be 320, which is way too small in most cases. Now this defaults to the largestdeviceWidth
(3840 by default).In practice this only affected apps doing SSR and only relevant when
srcset
is not supported and thesrc
fallback is used, so only very old legacy browsers (IE).
@responsive-image/cdn@2.0.0
Major Changes
-
#1346
b0ec36f
Thanks @wkillerud! - The default imageTypes changed to 'auto'The default imageTypes changed from an array of image formats to the string 'auto' in order to have the CDN backend decide the format.
Image components that assume imageTypes is an array need to be updated to accept the string 'auto'. In such cases the component should render only an<img>
tag with a srcset attribute.
Minor Changes
- #1311
ba7a9da
Thanks @wkillerud! - Add support for Fastly IO as a CDN