Skip to main content

SDK Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[3.1.3] 2024-09-12

Fixed

  • Added workaround for missing implementation of AxiosError status property to ensure token refresh on 401 responses.

[3.1.2] 2024-07-17

Fixed

  • Fix API token retrieval (edge cases).

[3.1.0] 2024-06-24

Changed

  • Added addAssetsToCurrentContext and closeExtension functions to Showpad.

[3.0.1] 2024-06-11

Fixed

  • Incorrect chunking of AppsDB entries with encoded characters.

[3.0.0] 2023-12-01

Breaking Changes

  • When using parseConfig or parseEnrichedConfig, the localLabels option will also be taken into account on production. This change was needed to support the local testing flow. You should only send localLabels: true in local development mode.
Warning

Be sure to never send localLabels: true in the packaged app. Doing so would load the locally embedded config.json instead of the live configuration saved by the Administrator.

Changed

  • The SDK now allows a v1 Experience app or any extension point in a v2 Experience app to be served from localhost enabling an improved development flow where each extension point or app can be loaded from localhost in the correct context in web app or the admin platform.
  • No longer uses the Proxy App for local development.
  • No longer offers the Showpadize option.

[2.4.1] 2023-09-11

Changed

  • Make an AxiosError thrown in development consistent with an AxiosEror thrown in production mode. Some properties (eg the response property) were missing in development mode.

[2.4.0] 2023-05-03

Added

  • Added memoization to the getCollections function.
  • Added createRecord, setRecord and deleteRecord functions to Sdm.
  • Added types TrackEventPageView and TrackEventEvent

Changed

  • Admins do not need to pass the authentication parameter for createStore, setGlobalStoreEntryValue and deleteGlobalStoreEntry

[2.3.1] 2023-03-29

Fixed

  • Fixed the Known Issues section in README.md.
  • To have the desired memoization effect also the core functions needed to be memoized as they call each other.

[2.3.0] - 2023-03-23

Added

  • Added support for folder app links as argument for the getAssetsInFolder method.
  • Following functions are now memoized: getVersion(), getDeviceInfo(), getUserInfo(), hasFeature(), parseConfig(), parseEnrichedConfig(), isAdmin() and getAppContext(). This also fixes problems with collection functions where hasFeature() was called too quickly after each other and was discarded the second time.

[2.2.1] - 2023-01-27

Fixed

  • On the Windows app, getDeviceInfo().app will also return web. windows will never be returned

[2.2.0] - 2023-01-24

Added

  • Added getShowpadFile and getShowpadPreview to fetch raw files from Showpad.
  • Added support for storing undefined values in arrays and objects.

Fixed

  • Fixed unexpected conversion of undefined values to null.

[2.2.0-beta.3] - 2022-12-22

Added

Fixed

  • When calling getShowpadOAuthApi() from an alias subdomain the returned url changed to the new subdomain resulting in a CORS error. Also dependant methods were impacted: getShowpadOAuthApiInteractive(), getShowpadOAuthInstance(), getShowpadOAuthInstanceInteractive().

[2.2.0-beta.2] - 2022-11-03

Added

Fixed

  • RecordType should also allow optional fields. See type-fest fix.
  • Fixed bug where the SDK thinks its running in development inside a HTML Asset on iOS and Android.
  • The showpadApiCache is now user suffixed to prevent usage of tokens from other users.
  • JSBI is used to handle BigInt
  • trackExperienceEvent() and trackExperiencePageview() had a wrong signature.

[2.2.0-beta.1] - 2022-09-26

Changed

  • Changed AppsDB record type from Scalar to JsonValue known from the type-fest package.
  • Changed minimal NODE version to >= 15.0.0.
  • Changed entry point in package.json from module to exports as this it the NodeJS standard: https://stackoverflow.com/questions/42708484/what-is-the-module-package-json-field-for.
  • TrackEventPageView has been renamed to PageViewTouchpoint and now hold the correct fields for the touchpoint.
  • TrackEventEvent has been renamed to EventTouchpoint and now hold the correct fields for the touchpoint.

Fixed

  • Fixed Uncaught (in promise) Error error when calling onShowpadLibLoaded in an external context.

[2.1.8] - 2022-06-20

Added

  • Added support for arraybuffer & blob response on the Proxy app or Showpadize.
  • Added V3ApiRef type.

Fixed

  • Fixed formData filename was lost when using the Proxy app or Showpadize.
  • An owner is now also considered as an admin in isAdmin().

Removed

  • Removed V3EventType and V3ExportsEvent types.

Changed

  • All types starting with Cms have been renamed to start with Sdm.
  • All properties of types starting with cms have been renamed to start with sdm.

[2.1.7] - 2022-04-13

This release marks the first stable release of the Experience App SDK. Previous versions are deprecated and should be updated ASAP.

[1.1.0] - 2021-10-08

Public release.

[1.0.0] - 2021-10-01

Internal release.