1.0.0 • Published 4 years ago

smartagent-data-mapper v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
4 years ago

SmartAgent Data Mapper

SmartAgent Data Mapper is a javascript library to use a simple data model.

To 'deploy'

Bitbucket pipelines is set up in this repo.

Installation

npm install @missionlabs/smartagent-data-mapper

Usage

See examples folder for more detailed use cases

import CreateModel, { DynamoStorage } from '@missionlabs/smartagent-data-mapper';

//Create Model
const Products = CreateModel({
    storage: new DynamoStorage({
        TableName: process.env.PRODUCTS_DB,
        Name: 'Product',
        IDField: 'sku',
    }),
});

//Load Model
const product = await Products.load('SKU1234'); //Load up from DB

//Query Models
const products = await Products.query({
    conditions: {
        brand: 'nike',
    },
    index: 'brand-index',
});

//Load Batch
const products = await Products.loadBatch(['SKU1', 'SKU2']);

//Update Model
product.name = 'Nike Trainer'; //Set product name
await product.commit(); //Commit to DB, will create if doesn't exist

//Delete Model
await product.delete();