insomnia/app/models/cookie-jar.js

43 lines
846 B
JavaScript
Raw Normal View History

2016-11-10 05:56:23 +00:00
import * as db from '../common/database';
2016-09-21 20:32:45 +00:00
export const name = 'Cookie Jar';
export const type = 'CookieJar';
export const prefix = 'jar';
export const canDuplicate = true;
export function init () {
2016-11-10 01:15:27 +00:00
return {
name: 'Default Jar',
cookies: []
};
}
2016-09-21 20:32:45 +00:00
export function migrate (doc) {
return doc;
}
export function create (patch = {}) {
return db.docCreate(type, patch);
}
2016-09-21 20:32:45 +00:00
export async function getOrCreateForWorkspace (workspace) {
2016-09-21 20:32:45 +00:00
const parentId = workspace._id;
const cookieJars = await db.find(type, {parentId});
if (cookieJars.length === 0) {
return await create({parentId});
} else {
return cookieJars[0];
}
}
2016-09-21 20:32:45 +00:00
export function all () {
return db.all(type);
}
2016-09-21 20:32:45 +00:00
export function getById (id) {
return db.get(type, id);
}
2016-09-21 20:32:45 +00:00
export function update (cookieJar, patch) {
2016-09-21 20:32:45 +00:00
return db.docUpdate(cookieJar, patch);
}