import {WPTableRowSelectionState, WorkPackageTableRow} from './wp-fast-table/wp-table.interfaces'; import {MultiState, initStates, State} from "../helpers/reactive-fassade"; import {WorkPackageResource} from "./api/api-v3/hal-resources/work-package-resource.service"; import {opServicesModule} from "../angular-modules"; import {SchemaResource} from './api/api-v3/hal-resources/schema-resource.service'; import {WorkPackageEditForm} from './wp-edit-form/work-package-edit-form'; import {QueryColumn} from './wp-query/query-column'; export class States { workPackages = new MultiState(); schemas = new MultiState(); // Work package table states table = { // Set of rows in strict order of appearance rows: new State(), // Set of columns in strict order of appearance columns: new State(), // Current row (preselected for details button) focusedWorkPackage: new State(), // Table row selection state selection: new State(), // Active editing rows group: new State(), }; // Query states query = { // All available columns for selection availableColumns: new State() }; editing = new MultiState(); constructor() { initStates(this, function (msg: any) { if (~location.hostname.indexOf("localhost")) { (console.trace as any)(msg); // RR: stupid hack to avoid compiler error } }); } } opServicesModule.service('states', States);