Vue Storefront is now Alokai! Learn More
@vsf-enterprise/contentful-sdk

@vsf-enterprise/contentful-sdk

6.0.0ri:link

Major Changesri:link

  • CHANGED Guarantee compatibility with @alokai/connect package.
  • CHANGED Updated the package for compatibility with Node.js 22.

Key Updates:ri:link

  • Upgraded to the latest version of Node.js 22
  • Updated CI pipelines to use Node.js 22 for consistency.
  • Updated .nvmrc or .node-version files to specify Node.js version 22.14.
  • Upgraded @types/node to version ^22.13.17 for compatibility with the latest Node.js features.

Recommendations:ri:link

  • Use Node.js version 22.14.0 or higher for optimal performance, security, and compatibility.
  • While Node.js 20 is technically supported, it is not recommended as it may cause compatibility issues with certain packages and has not been thoroughly tested. CHANGED Replaced core dependencies with a new @alokai/connect package. @vue-storefront/middleware, @vue-storefront/sdk, vue-storefront/logger, vue-storefront/unified-data-model, @vue-storefront/multistore were replaced with @alokai/connect. The replacement preserves the same functionality and interface as the original packages. To read more about the @alokai/connect package, please refer to the documentation.

Minor Changesri:link

  • CHANGED Update axios version to "^1.7.9"

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/cms-components-utils@3.0.0
    • @alokai/connect@1.0.0

6.0.0-rc.5ri:link

Patch Changesri:link

  • Updated dependencies:
    • @alokai/connect@1.0.0-rc.4

6.0.0-rc.4ri:link

Major Changesri:link

  • CHANGED Updated the package for compatibility with Node.js 22.

Key Updates:ri:link

  • Upgraded to the latest version of Node.js 22
  • Updated CI pipelines to use Node.js 22 for consistency.
  • Updated .nvmrc or .node-version files to specify Node.js version 22.14.
  • Upgraded @types/node to version ^22.13.17 for compatibility with the latest Node.js features.

Recommendations:ri:link

  • Use Node.js version 22.14.0 or higher for optimal performance, security, and compatibility.
  • While Node.js 20 is technically supported, it is not recommended as it may cause compatibility issues with certain packages and has not been thoroughly tested.

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/cms-components-utils@3.0.0-rc.1
    • @alokai/connect@1.0.0-rc.3

6.0.0-rc.3ri:link

Minor Changesri:link

  • CHANGED Update axios version to "^1.7.9"

Patch Changesri:link

  • Updated dependencies:
    • @alokai/connect@1.0.0-rc.2

6.0.0-rc.2ri:link

Patch Changesri:link

  • Updated dependencies:
    • @alokai/connect@1.0.0-rc.1

6.0.0-rc.1ri:link

Major Changesri:link

Update packages to work with connect rc version

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/cms-components-utils@3.0.0-rc.0
    • @alokai/connect@1.0.0-rc.0

6.0.0-rc.0ri:link

Major Changesri:link

CHANGED Replaced core dependencies with a new @alokai/connect package. @vue-storefront/middleware, @vue-storefront/sdk, vue-storefront/logger, vue-storefront/unified-data-model were replaced with @alokai/connect. The replacement preserves the same functionality and interface as the original packages. To read more about the @alokai/connect package, please refer to the documentation. You will also find a migration guide in the documentation.

5.1.2ri:link

Patch Changesri:link

  • REMOVED the dependency to @vue-storefront/sdk-axios-request-sender. It was redundant and not used in the project.
  • DEPRECATED ContentfulModuleType interface. It's redundant and will be removed in next major version after 04.2025.

5.1.1ri:link

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/cms-components-utils@2.0.0

5.1.0ri:link

Minor Changesri:link

  • CHANGED The extractComponents utility has been marked as @deprecated and will be removed in 4 years from now (July 2028). Use getPage method which returns unified CMS page data.
- const extractedData = sdk.contentful.utils.extractComponents(params);
+ const extractedData = sdk.unifiedCms.getPage(params);

5.0.0ri:link

Major Changesri:link

  • CHANGED Implemented Alokai's middlewareModule.
  • REMOVED The package no longer exports the GetContentParams interface. Instead, extract getContent method parameters from the Endpoints interface imported from@vsf-enterprise/contentful-api:
- import type { GetContentParams } from "@vsf-enterprise/contentful-sdk";
+ import type { Endpoints } from "@vsf-enterprise/contentful-api";

- const getContentParams: GetContentParams = { ... };
+ const getContentParams: Parameters<Endpoints["getContent"]> = { ... };
  • REMOVED The package no longer exports the HTTP Client used by the SDK because it now comes from the middlewareModule. Read this guide to find out how to modify the behaviour of the HTTP Client coming from the middlewareModule.
  • FIXED Ensured the Endpoints interface are loaded as expected.

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/contentful-api@4.0.0

5.0.0-rc.1ri:link

Major Changesri:link

  • FIXED Ensured the Endpoints interface are loaded as expected.

5.0.0-rc.0ri:link

Major Changesri:link

  • CHANGED Implemented Alokai's middlewareModule.
  • REMOVED The package no longer exports the GetContentParams interface. Instead, extract getContent method parameters from the Endpoints interface imported from@vsf-enterprise/contentful-api:
- import type { GetContentParams } from "@vsf-enterprise/contentful-sdk";
+ import type { Endpoints } from "@vsf-enterprise/contentful-api";

- const getContentParams: GetContentParams = { ... };
+ const getContentParams: Parameters<Endpoints["getContent"]> = { ... };
  • REMOVED The package no longer exports the HTTP Client used by the SDK because it now comes from the middlewareModule. Read this guide to find out how to modify the behaviour of the HTTP Client coming from the middlewareModule.

Minor Changesri:link

  • FIXED Ensured the Endpoints interface are loaded as expected.

Patch Changesri:link

  • Updated dependencies:
    • @vsf-enterprise/contentful-api@3.0.0-rc.0

4.0.2ri:link

Patch Changesri:link

  • CHANGED Updated @vue-storefront/middleware version to 4.1.0.

4.0.1ri:link

Patch Changesri:link

Update axios to ^0.28.0 to mitigate security vulnerability CVE-2023-45857

4.0.0ri:link

Major Changesri:link

  • CHANGED Changed minimum Node version from 16 to 18. The condition that was forcing the Node version to be lower than 19 is also removed.

3.1.0ri:link

Minor Changesri:link

  • CHANGED Upgraded @contentful/live-preview library to the new major version 3.x. Our initLivePreview utility no longer clones input & output data since it is no longer required after the upgrade.

3.1.0-rc.0ri:link

Minor Changesri:link

  • CHANGED Upgraded @contentful/live-preview library to the new major version 3.x. Our initLivePreview utility no longer clones input & output data since it is no longer required after the upgrade.

3.0.2ri:link

Patch Changesri:link

  • CHANGED Prevent error when calling extractComponents method on an entry which does not have a sys property in it.

3.0.1ri:link

Patch Changesri:link

  • ec79e46: Fixed initLivePreview util throwing in Firefox due to unsupported window.location.ancestorOrigins property

3.0.0ri:link

Major Changesri:link

  • Implemented @vue-storefront/sdk-axios-request-sender package in all SDK methods. All methods now send GET instead of POST requests to Vue Storefront's Server Middleware.

2.1.0ri:link

Minor Changesri:link

  • @vsf-enterprise/contentful-api now implements Contentful's Typescript SDK. Methods coming from the SDK client are available as endpoints of Vue Storefront's Server Middleware. For example:
    curl --request POST 'http://localhost:8181/cntf/getEntries'
    

    The getContent endpoint has been marked as @deprecated and will be removed in 4 years from now (July 2027).
    @vsf-enterprise/contentful-sdk has been aligned with the changes in the @vsf-enterprise/contentful-api package. It exposes a proxy for all of the new endpoints. Proxy methods are fully typed and documented with TSDoc.
    import { sdk } from "~/sdk.config.ts";
    
    const entries = await sdk.contentful.getEntries();
    

    The getContent method has been marked as @deprecated and will be removed in 4 years from now.
  • Add node 18 support

2.0.0ri:link

Major Changesri:link

  • Added new version of the extractComponents method. It now scans raw Contentful data objects recursively and resolves nested entries at all levels. It also ships with customizable resolver functions. The contract of the method has changed - refer to its documentation for more information,
  • Added a new initLivePreview() utility method and removed redundant getImageObject() utility method,

1.0.1ri:link

  • In this release, we fixed an issue with the lack of generic types in the getContent method.