JavaScript api for communicating with Adapt retail
api.
🚧🚧 Warning: This project is in alpha stage. Use with caution. 🚧🚧
npm install @adapt-retail/banner-datayarn add @adapt-retail/banner-dataProvide the adapt data when creating the AdaptData.
Note: When creating your first Adapt
BannerorInstoreTVWe recommend that you use acollectionproduction instead of aBannerorInstoreTVproduction. This is because you cannot generate preview of aBannerorInstoreTVproduction that do not have template assign to it. And usually you do not have that when creating yourAdapt Template.
// Import Adapt Data
import AdaptData from '@adapt-retail/banner-data';
// Create instance
var adapt = new AdaptData({
account: 'priceco58c12436f20b4', // Account key
project: 1, // Project ID
campaign: 1, // Campaign ID
production: 1, // Production ID
source: null, // optional
preview: false, // optional
});Setting preview preview: true will use the slower but faster reloading of data.
For live sites, make sure to use the preview: false to use our fast CDN with cache reload in 5 minutes.
Setting the source property of the Adapt data will overwrite any data requested by api. This is nice for developing when you are offline.
var adapt = new AdaptData({
source: {
data: [
{
id: 1234,
name: 'Product',
price: 199
}
]
}
});After setting up the object, you can call .start to start retrieving the content.
var adapt = new AdaptData({ ... });
// Via promise
adapt.start().then( function( adapt_data ) {
... Adapt data is loaded and ready ...
} );
// Via function parameter
adapt.start( function( adapt_data ) {
... Adapt data is loaded and ready ...
} );Get the asset in the adapt folder.
adapt.start( function( adapt_data ) {
adapt.asset( 'my-image.png' );
} );Light adapt data is a super light version for adapt data.
It cannot request data from external source, but it can read source.
This class is meant for Adapt banner productions.
When using webpack you can set this setting when running production script.
if (process.env.NODE_ENV === 'production') {
module.exports.resolve = {
alias: {
'@adapt-retail/banner-data': '@adapt-retail/banner-data/dist/LightAdaptData.js',
}
};
}