UNPKG

@datorama/akita

Version:

A Reactive State Management Tailored-Made for JS Applications

94 lines 2.27 kB
import { __decorate, __metadata } from "tslib"; import 'jest-localstorage-mock'; import { EntityStore } from '../lib/entityStore'; import { StoreConfig } from '../lib/storeConfig'; import { QueryEntity } from '../lib/queryEntity'; export class Todo { constructor(params) { this.completed = false; Object.assign(this, params); if (!params.title) { this.title = params.id.toString(); } } } export const initialState = { active: null, metadata: { name: 'metadata' }, }; let TodosStore = class TodosStore extends EntityStore { constructor(options) { super(initialState, options); } }; TodosStore = __decorate([ StoreConfig({ name: 'todos', }), __metadata("design:paramtypes", [Object]) ], TodosStore); export { TodosStore }; let TodosStoreCustomID = class TodosStoreCustomID extends EntityStore { constructor() { super({}, { idKey: 'todoId' }); } }; TodosStoreCustomID = __decorate([ StoreConfig({ name: 'todos', idKey: 'todoId', }), __metadata("design:paramtypes", []) ], TodosStoreCustomID); export { TodosStoreCustomID }; export function createTodos(len) { const arr = []; const factory = ct(); for (var i = 0; i < len; i++) { arr.push(factory()); } return arr; } export function ct() { let count = 0; return function () { const id = count++; return { id, title: `Todo ${id}`, complete: false, }; }; } export function cot() { return { id: 1, title: `Todo ${1}`, complete: false, }; } let WidgetsStore = class WidgetsStore extends EntityStore { constructor(initState) { super(initState); } }; WidgetsStore = __decorate([ StoreConfig({ name: 'widgets' }), __metadata("design:paramtypes", [Object]) ], WidgetsStore); export { WidgetsStore }; export class WidgetsQuery extends QueryEntity { constructor(store) { super(store); this.store = store; } } export function createWidget(id) { return { id, title: `Widget ${id}`, complete: false, }; } export const tick = () => Promise.resolve(); //# sourceMappingURL=setup.js.map