Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
import * as JSData from 'js-data';
import DSHttpAdapter = require("js-data-http");
declare var axios: any;
const adapter = new DSHttpAdapter();
const store = new JSData.DS();
store.registerAdapter('http', adapter, { default: true });
adapter.defaults.basePath = '/api';
adapter.http = axios;
const ADocument: JSData.DSResourceDefinition = store.defineResource('document');
ADocument.inject({ id: 5, author: 'John' });
// bypass the data store
adapter.update(ADocument, 5, { author: 'Johnny' }).then((document: any) => {
document; // { id: 5, author: 'Johnny' }
// The updated document has NOT been injected into the data store because we bypassed the data store
ADocument.get(document.id); // { id: 5, author: 'John' }
});
constructor (opts) {
this.store = new JSData.DS()
// TODO don't use uuids, maybe use incrementing numbers to reduce memory
// TODO use relations to avoid storing the publicKey and torrentHash many times over
this.Payment = this.store.defineResource({
name: 'payment',
computed: {
id: ['id', (id) => id || uuid.v4()]
}
})
this.PaymentRequest = this.store.defineResource({
name: 'payment_request',
computed: {
id: ['id', (id) => id || uuid.v4()]
}
})
this.Delivery = this.store.defineResource({
name: 'delivery',
container.register('DS', function (Promise, container, sqlAdapter, messageService) {
var JSData = require('js-data');
JSData.DSUtils.Promise = Promise;
var store = new JSData.DS({
cacheResponse: false,
bypassCache: true,
// Important: If your relationships stop working, you might
// have deleted this.
linkRelations: false,
// Because
upsert: false,
// Don't really need this stuff on the server, so let's improve
// performance and disable these features
notify: false,
keepChangeHistory: false,
resetHistoryOnInject: false,
container.register('DS', function (container, rethinkdbAdapter) {
var JSData = require('js-data');
var store = new JSData.DS({
cacheResponse: false,
bypassCache: true,
// Important: If your relationships stop working, you might
// have deleted this.
linkRelations: false,
// Because
upsert: false,
// Don't really need this stuff on the server, so let's improve
// performance and disable these features
notify: false,
keepChangeHistory: false,
resetHistoryOnInject: false,
function load (...args) {
let $rootScope = args[args.length - 2]
let $q = args[args.length - 1]
let store = new JSData.DS(_this.defaults)
let originals = {}
function QPromise (executor) {
let deferred = $q.defer()
try {
executor(
angular.bind(deferred, deferred.resolve),
angular.bind(deferred, deferred.reject)
)
} catch (err) {
deferred.reject(err)
}
return deferred.promise
}
import JSData from 'js-data';
import DSNeDBAdapter from './DSNeDBAdapter.jsx';
let store = new JSData.DS({
reapInterval: false,
log: false
});
store.utils.Events(store);
store.registerAdapter('nedb', new DSNeDBAdapter(), { default: true });
export default store;
options.afterFindAll = (resource, data) => {
totalCount = data['@odata.count'];
return data.value;
};
options.afterInject = (resource, instances) => {
Object.defineProperty(instances, 'totalCount', { value: totalCount });
};
return super.findAll(definition, params, options);
}
}
JSData.DSUtils.Promise = require('bluebird');
var store = new JSData.DS();
store.registerAdapter('odata', new ODataAdapter({
basePath: 'http://services.odata.org/V4/Northwind/Northwind.svc/',
}), { default: true });
module.exports = store.defineResource({
name: 'Customers',
idAttribute: 'CustomerID',
});
var _ = require('underscore');
var JSData = require('js-data');
var DSHttpAdapter = require('js-data-http');
JSData.DSUtils.Promise = require('bluebird');
var store = new JSData.DS();
store.registerAdapter('http', new DSHttpAdapter({
basePath: 'http://services.odata.org/V4/Northwind/Northwind.svc/',
deserialize: function (definition, response) {
return response.data.value;
},
queryTransform: function (definition, params) {
var query = {};
_.has(params, 'offset') && (query.$skip = params.offset);
_.has(params, 'limit') && (query.$top = params.limit);
_.has(params, 'orderBy') && (query.$orderby = params.orderBy.map(function (item) {
return item[0] + ' ' + item[1].toLowerCase();
}).join(','));
return query;
},
import _ from 'underscore';
import JSData from 'js-data';
import DSHttpAdapter from 'js-data-http';
JSData.DSUtils.Promise = require('bluebird');
let store = new JSData.DS();
store.registerAdapter('http', new DSHttpAdapter({
basePath: 'https://services.odata.org/V4/Northwind/Northwind.svc/',
deserialize: (definition, response) => {
return response.data.value;
},
queryTransform: (definition, params) => {
let query = {};
_.has(params, 'offset') && (query.$skip = params.offset);
_.has(params, 'limit') && (query.$top = params.limit);
_.has(params, 'orderBy') && (query.$orderby = params.orderBy.map((item) => {
return item[0] + ' ' + item[1].toLowerCase();
}).join(','));
return query;
function createStore(options) {
var adapterName = options.adapter;
store = new JSData.DS();
if (adapterName) {
var DSAdapter = getAdapter(adapterName);
adapter = new DSAdapter(options.dbOptions);
store.registerAdapter(adapterName, adapter, { default: true });
}
Report = store.defineResource('report');
return {
list: list,
get: get,
add: add,
selectors: {
byBaseFields: byBaseFields
}