my-test123
Version:
A planner front-end for Fabric8.
47 lines • 1.94 kB
JavaScript
import { cloneDeep } from 'lodash';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
var WorkItemDataService = /** @class */ (function () {
function WorkItemDataService() {
this.workItems = {};
if (sessionStorage.getItem('planner_workItems') === null) {
sessionStorage.setItem('planner_workItems', JSON.stringify({}));
}
}
WorkItemDataService.prototype.setItem = function (workItem) {
var items = JSON.parse(sessionStorage.getItem('planner_workItems'));
items[workItem.id] = cloneDeep(workItem);
sessionStorage.setItem('planner_workItems', JSON.stringify(items));
};
WorkItemDataService.prototype.setItems = function (workItems) {
var _this = this;
workItems.forEach(function (item) { return _this.setItem(item); });
};
WorkItemDataService.prototype.getItem = function (workItemId) {
var items = JSON.parse(sessionStorage.getItem('planner_workItems'));
if (items[workItemId]) {
return Observable.of(items[workItemId]).delay(0);
}
else {
return Observable.of(null).delay(0);
}
};
WorkItemDataService.prototype.getItembyNumber = function (workItemNumber) {
var items = JSON.parse(sessionStorage.getItem('planner_workItems'));
var item_id = Object.keys(items).find(function (key) { return items[key]['attributes']['system.number'] === workItemNumber; });
if (item_id) {
return Observable.of(items[item_id]).delay(0);
}
else {
return Observable.of(null).delay(0);
}
};
WorkItemDataService.decorators = [
{ type: Injectable },
];
/** @nocollapse */
WorkItemDataService.ctorParameters = function () { return []; };
return WorkItemDataService;
}());
export { WorkItemDataService };
//# sourceMappingURL=work-item-data.service.js.map