Skip to content

3.1.0-alpha.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@willmorgan willmorgan released this 12 Oct 14:22
· 117 commits to master since this release

Added

  • iProovSupport is a separate export to facilitate a smaller critical bundle size for integrators.
    • Using a module bundler you can run import { iProovSupport } from "@iproov/web/iProovSupport"
    • Script tag integrations can still access window.IProov.IProovSupport for the time being.
  • version property on the iProovMe component.
    • This is also accessible on window.IProov.version.
  • External dependencies are now loaded with <link rel=preload> for non-blocking parallel loading.
  • sideEffects and type props have been added to the distribution's package.json.
    • This adds a hint to bundlers like Webpack and Rollup to make tree shaking easier, resulting in smaller bundle sizes.
    • In the long term, once Webpack 5 is released, we intend to provide an ESM build for maximum tree shaking!

Changed

  • Bundling and modularisation upgrades.
    • Dependencies are once again modular, and will be loaded as needed.
    • This reduces the bundle size from 4MB (plus dependencies) to around 1.3MB gzipped (including dependencies).
    • With the iProovSupport change, the pre-gzip impact to an integration's critical bundle is 16KB raw (was 4MB).
    • With that, assets_url's meaning is changing again, we're afraid...
    • Customers now have a choice to either serve Web SDK assets "on premises", use our CDN, or reverse proxy.
    • This affects CDN and reverse proxy configurations; we do hope this is the last change to asset loading for a long time.
    • Please see the upgrade guide for steps needed.
  • The main entry file for the npm package is now iProovMe.js.
  • Improved our encoder for better speed and the latest bugfixes.

Removed

  • Automatic transpilation for the following outdated browsers:
    • Blackberry < 10
    • Edge < 84
    • Firefox < 80
    • IE < 11
    • IE Mobile (all)
    • iOS Safari < 13.4
    • Opera < 70
    • Safari < 13.1
    • Please see .browserslistrc for the current targeted browsers.
    • If your app must support older browsers, simply transpile the standalone iProovSupport.js checker as needed.