import { database as db } from '../common/database'; import type { BaseModel } from './index'; export const name = 'Folder Meta'; export const type = 'RequestGroupMeta'; export const prefix = 'fldm'; export const canDuplicate = false; export const canSync = false; interface BaseRequestGroupMeta { collapsed: boolean; } export type RequestGroupMeta = BaseModel & BaseRequestGroupMeta; export const isRequestGroupMeta = (model: Pick): model is RequestGroupMeta => ( model.type === type ); export function init() { return { parentId: null, collapsed: false, }; } export function migrate(doc: RequestGroupMeta) { return doc; } export function create(patch: Partial = {}) { if (!patch.parentId) { throw new Error('New RequestGroupMeta missing `parentId`: ' + JSON.stringify(patch)); } return db.docCreate(type, patch); } export function update(requestGroupMeta: RequestGroupMeta, patch: Partial) { return db.docUpdate(requestGroupMeta, patch); } export function getByParentId(parentId: string) { return db.getWhere(type, { parentId }); } export function all() { return db.all(type); }