summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE/client/bower_components/angular-cache/dist
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-portal-FE/client/bower_components/angular-cache/dist')
-rw-r--r--ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js1111
-rw-r--r--ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js.map1
-rw-r--r--ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.js2
-rw-r--r--ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.map1
4 files changed, 0 insertions, 1115 deletions
diff --git a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js b/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js
deleted file mode 100644
index 6a62e9b7..00000000
--- a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js
+++ /dev/null
@@ -1,1111 +0,0 @@
-/**
- * angular-cache
- * @version 4.6.0 - Homepage <https://github.com/jmdobry/angular-cache>
- * @copyright (c) 2013-2016 angular-cache project authors
- * @license MIT <https://github.com/jmdobry/angular-cache/blob/master/LICENSE>
- * @overview angular-cache is a very useful replacement for Angular's $cacheFactory.
- */
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(typeof angular === 'undefined' ? require('angular') : angular) :
- typeof define === 'function' && define.amd ? define('angular-cache', ['angular'], factory) :
- (global.angularCacheModuleName = factory(global.angular));
-}(this, function (angular) { 'use strict';
-
- angular = 'default' in angular ? angular['default'] : angular;
-
- var babelHelpers = {};
- babelHelpers.typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
- return typeof obj;
- } : function (obj) {
- return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj;
- };
-
- /**
- * @method bubbleUp
- * @param {array} heap The heap.
- * @param {function} weightFunc The weight function.
- * @param {number} n The index of the element to bubble up.
- */
- var bubbleUp = function bubbleUp(heap, weightFunc, n) {
- var element = heap[n];
- var weight = weightFunc(element);
- // When at 0, an element can not go up any further.
- while (n > 0) {
- // Compute the parent element's index, and fetch it.
- var parentN = Math.floor((n + 1) / 2) - 1;
- var parent = heap[parentN];
- // If the parent has a lesser weight, things are in order and we
- // are done.
- if (weight >= weightFunc(parent)) {
- break;
- } else {
- heap[parentN] = element;
- heap[n] = parent;
- n = parentN;
- }
- }
- };
-
- /**
- * @method bubbleDown
- * @param {array} heap The heap.
- * @param {function} weightFunc The weight function.
- * @param {number} n The index of the element to sink down.
- */
- var bubbleDown = function bubbleDown(heap, weightFunc, n) {
- var length = heap.length;
- var node = heap[n];
- var nodeWeight = weightFunc(node);
-
- while (true) {
- var child2N = (n + 1) * 2;
- var child1N = child2N - 1;
- var swap = null;
- if (child1N < length) {
- var child1 = heap[child1N];
- var child1Weight = weightFunc(child1);
- // If the score is less than our node's, we need to swap.
- if (child1Weight < nodeWeight) {
- swap = child1N;
- }
- }
- // Do the same checks for the other child.
- if (child2N < length) {
- var child2 = heap[child2N];
- var child2Weight = weightFunc(child2);
- if (child2Weight < (swap === null ? nodeWeight : weightFunc(heap[child1N]))) {
- swap = child2N;
- }
- }
-
- if (swap === null) {
- break;
- } else {
- heap[n] = heap[swap];
- heap[swap] = node;
- n = swap;
- }
- }
- };
-
- function BinaryHeap(weightFunc, compareFunc) {
- if (!weightFunc) {
- weightFunc = function weightFunc(x) {
- return x;
- };
- }
- if (!compareFunc) {
- compareFunc = function compareFunc(x, y) {
- return x === y;
- };
- }
- if (typeof weightFunc !== 'function') {
- throw new Error('BinaryHeap([weightFunc][, compareFunc]): "weightFunc" must be a function!');
- }
- if (typeof compareFunc !== 'function') {
- throw new Error('BinaryHeap([weightFunc][, compareFunc]): "compareFunc" must be a function!');
- }
- this.weightFunc = weightFunc;
- this.compareFunc = compareFunc;
- this.heap = [];
- }
-
- var BHProto = BinaryHeap.prototype;
-
- BHProto.push = function (node) {
- this.heap.push(node);
- bubbleUp(this.heap, this.weightFunc, this.heap.length - 1);
- };
-
- BHProto.peek = function () {
- return this.heap[0];
- };
-
- BHProto.pop = function () {
- var front = this.heap[0];
- var end = this.heap.pop();
- if (this.heap.length > 0) {
- this.heap[0] = end;
- bubbleDown(this.heap, this.weightFunc, 0);
- }
- return front;
- };
-
- BHProto.remove = function (node) {
- var length = this.heap.length;
- for (var i = 0; i < length; i++) {
- if (this.compareFunc(this.heap[i], node)) {
- var removed = this.heap[i];
- var end = this.heap.pop();
- if (i !== length - 1) {
- this.heap[i] = end;
- bubbleUp(this.heap, this.weightFunc, i);
- bubbleDown(this.heap, this.weightFunc, i);
- }
- return removed;
- }
- }
- return null;
- };
-
- BHProto.removeAll = function () {
- this.heap = [];
- };
-
- BHProto.size = function () {
- return this.heap.length;
- };
-
- var _Promise = null;
- try {
- _Promise = window.Promise;
- } catch (e) {}
-
- var utils = {
- isNumber: function isNumber(value) {
- return typeof value === 'number';
- },
- isString: function isString(value) {
- return typeof value === 'string';
- },
- isObject: function isObject(value) {
- return value !== null && (typeof value === 'undefined' ? 'undefined' : babelHelpers.typeof(value)) === 'object';
- },
- isFunction: function isFunction(value) {
- return typeof value === 'function';
- },
- fromJson: function fromJson(value) {
- return JSON.parse(value);
- },
- equals: function equals(a, b) {
- return a === b;
- },
-
- Promise: _Promise
- };
-
- function _keys(collection) {
- var keys = [];
- var key = void 0;
- if (!utils.isObject(collection)) {
- return keys;
- }
- for (key in collection) {
- if (collection.hasOwnProperty(key)) {
- keys.push(key);
- }
- }
- return keys;
- }
-
- function _isPromiseLike(value) {
- return value && typeof value.then === 'function';
- }
-
- function _stringifyNumber(number) {
- if (utils.isNumber(number)) {
- return number.toString();
- }
- return number;
- }
-
- function _keySet(collection) {
- var keySet = {};
- var key = void 0;
- if (!utils.isObject(collection)) {
- return keySet;
- }
- for (key in collection) {
- if (collection.hasOwnProperty(key)) {
- keySet[key] = key;
- }
- }
- return keySet;
- }
-
- var defaults = {
- capacity: Number.MAX_VALUE,
- maxAge: Number.MAX_VALUE,
- deleteOnExpire: 'none',
- onExpire: null,
- cacheFlushInterval: null,
- recycleFreq: 1000,
- storageMode: 'memory',
- storageImpl: null,
- disabled: false,
- storagePrefix: 'cachefactory.caches.',
- storeOnResolve: false,
- storeOnReject: false
- };
-
- var caches = {};
-
- function createCache(cacheId, options) {
- if (cacheId in caches) {
- throw new Error(cacheId + ' already exists!');
- } else if (!utils.isString(cacheId)) {
- throw new Error('cacheId must be a string!');
- }
-
- var $$data = {};
- var $$promises = {};
- var $$storage = null;
- var $$expiresHeap = new BinaryHeap(function (x) {
- return x.expires;
- }, utils.equals);
- var $$lruHeap = new BinaryHeap(function (x) {
- return x.accessed;
- }, utils.equals);
-
- var cache = caches[cacheId] = {
-
- $$id: cacheId,
-
- destroy: function destroy() {
- clearInterval(this.$$cacheFlushIntervalId);
- clearInterval(this.$$recycleFreqId);
- this.removeAll();
- if ($$storage) {
- $$storage().removeItem(this.$$prefix + '.keys');
- $$storage().removeItem(this.$$prefix);
- }
- $$storage = null;
- $$data = null;
- $$lruHeap = null;
- $$expiresHeap = null;
- this.$$prefix = null;
- delete caches[this.$$id];
- },
- disable: function disable() {
- this.$$disabled = true;
- },
- enable: function enable() {
- delete this.$$disabled;
- },
- get: function get(key, options) {
- var _this2 = this;
-
- if (Array.isArray(key)) {
- var _ret = function () {
- var keys = key;
- var values = [];
-
- keys.forEach(function (key) {
- var value = _this2.get(key, options);
- if (value !== null && value !== undefined) {
- values.push(value);
- }
- });
-
- return {
- v: values
- };
- }();
-
- if ((typeof _ret === 'undefined' ? 'undefined' : babelHelpers.typeof(_ret)) === "object") return _ret.v;
- } else {
- key = _stringifyNumber(key);
-
- if (this.$$disabled) {
- return;
- }
- }
-
- options = options || {};
- if (!utils.isString(key)) {
- throw new Error('key must be a string!');
- } else if (options && !utils.isObject(options)) {
- throw new Error('options must be an object!');
- } else if (options.onExpire && !utils.isFunction(options.onExpire)) {
- throw new Error('options.onExpire must be a function!');
- }
-
- var item = void 0;
-
- if ($$storage) {
- if ($$promises[key]) {
- return $$promises[key];
- }
-
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
-
- if (itemJson) {
- item = utils.fromJson(itemJson);
- } else {
- return;
- }
- } else if (utils.isObject($$data)) {
- if (!(key in $$data)) {
- return;
- }
-
- item = $$data[key];
- }
-
- var value = item.value;
- var now = new Date().getTime();
-
- if ($$storage) {
- $$lruHeap.remove({
- key: key,
- accessed: item.accessed
- });
- item.accessed = now;
- $$lruHeap.push({
- key: key,
- accessed: now
- });
- } else {
- $$lruHeap.remove(item);
- item.accessed = now;
- $$lruHeap.push(item);
- }
-
- if (this.$$deleteOnExpire === 'passive' && 'expires' in item && item.expires < now) {
- this.remove(key);
-
- if (this.$$onExpire) {
- this.$$onExpire(key, item.value, options.onExpire);
- } else if (options.onExpire) {
- options.onExpire.call(this, key, item.value);
- }
- value = undefined;
- } else if ($$storage) {
- $$storage().setItem(this.$$prefix + '.data.' + key, JSON.stringify(item));
- }
-
- return value;
- },
- info: function info(key) {
- if (key) {
- var item = void 0;
- if ($$storage) {
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
-
- if (itemJson) {
- item = utils.fromJson(itemJson);
- return {
- created: item.created,
- accessed: item.accessed,
- expires: item.expires,
- isExpired: new Date().getTime() - item.created > (item.maxAge || this.$$maxAge)
- };
- } else {
- return undefined;
- }
- } else if (utils.isObject($$data) && key in $$data) {
- item = $$data[key];
-
- return {
- created: item.created,
- accessed: item.accessed,
- expires: item.expires,
- isExpired: new Date().getTime() - item.created > (item.maxAge || this.$$maxAge)
- };
- } else {
- return undefined;
- }
- } else {
- return {
- id: this.$$id,
- capacity: this.$$capacity,
- maxAge: this.$$maxAge,
- deleteOnExpire: this.$$deleteOnExpire,
- onExpire: this.$$onExpire,
- cacheFlushInterval: this.$$cacheFlushInterval,
- recycleFreq: this.$$recycleFreq,
- storageMode: this.$$storageMode,
- storageImpl: $$storage ? $$storage() : undefined,
- disabled: !!this.$$disabled,
- size: $$lruHeap && $$lruHeap.size() || 0
- };
- }
- },
- keys: function keys() {
- if ($$storage) {
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
-
- if (keysJson) {
- return utils.fromJson(keysJson);
- } else {
- return [];
- }
- } else {
- return _keys($$data);
- }
- },
- keySet: function keySet() {
- if ($$storage) {
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
- var kSet = {};
-
- if (keysJson) {
- var keys = utils.fromJson(keysJson);
-
- for (var i = 0; i < keys.length; i++) {
- kSet[keys[i]] = keys[i];
- }
- }
- return kSet;
- } else {
- return _keySet($$data);
- }
- },
- put: function put(key, value, options) {
- var _this3 = this;
-
- options || (options = {});
-
- var storeOnResolve = 'storeOnResolve' in options ? !!options.storeOnResolve : this.$$storeOnResolve;
- var storeOnReject = 'storeOnReject' in options ? !!options.storeOnReject : this.$$storeOnReject;
-
- var getHandler = function getHandler(store, isError) {
- return function (v) {
- if (store) {
- delete $$promises[key];
- if (utils.isObject(v) && 'status' in v && 'data' in v) {
- v = [v.status, v.data, v.headers(), v.statusText];
- _this3.put(key, v);
- } else {
- _this3.put(key, v);
- }
- }
- if (isError) {
- if (utils.Promise) {
- return utils.Promise.reject(v);
- } else {
- throw v;
- }
- } else {
- return v;
- }
- };
- };
-
- if (this.$$disabled || !utils.isObject($$data) || value === null || value === undefined) {
- return;
- }
- key = _stringifyNumber(key);
-
- if (!utils.isString(key)) {
- throw new Error('key must be a string!');
- }
-
- var now = new Date().getTime();
- var item = {
- key: key,
- value: _isPromiseLike(value) ? value.then(getHandler(storeOnResolve, false), getHandler(storeOnReject, true)) : value,
- created: options.created === undefined ? now : options.created,
- accessed: options.accessed === undefined ? now : options.accessed
- };
- if (options.maxAge) {
- item.maxAge = options.maxAge;
- }
-
- if (options.expires === undefined) {
- item.expires = item.created + (item.maxAge || this.$$maxAge);
- } else {
- item.expires = options.expires;
- }
-
- if ($$storage) {
- if (_isPromiseLike(item.value)) {
- $$promises[key] = item.value;
- return $$promises[key];
- }
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
- var keys = keysJson ? utils.fromJson(keysJson) : [];
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
-
- // Remove existing
- if (itemJson) {
- this.remove(key);
- }
- // Add to expires heap
- $$expiresHeap.push({
- key: key,
- expires: item.expires
- });
- // Add to lru heap
- $$lruHeap.push({
- key: key,
- accessed: item.accessed
- });
- // Set item
- $$storage().setItem(this.$$prefix + '.data.' + key, JSON.stringify(item));
- var exists = false;
- for (var i = 0; i < keys.length; i++) {
- if (keys[i] === key) {
- exists = true;
- break;
- }
- }
- if (!exists) {
- keys.push(key);
- }
- $$storage().setItem(this.$$prefix + '.keys', JSON.stringify(keys));
- } else {
- // Remove existing
- if ($$data[key]) {
- this.remove(key);
- }
- // Add to expires heap
- $$expiresHeap.push(item);
- // Add to lru heap
- $$lruHeap.push(item);
- // Set item
- $$data[key] = item;
- delete $$promises[key];
- }
-
- // Handle exceeded capacity
- if ($$lruHeap.size() > this.$$capacity) {
- this.remove($$lruHeap.peek().key);
- }
-
- return value;
- },
- remove: function remove(key) {
- key += '';
- delete $$promises[key];
- if ($$storage) {
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
-
- if (itemJson) {
- var item = utils.fromJson(itemJson);
- $$lruHeap.remove({
- key: key,
- accessed: item.accessed
- });
- $$expiresHeap.remove({
- key: key,
- expires: item.expires
- });
- $$storage().removeItem(this.$$prefix + '.data.' + key);
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
- var keys = keysJson ? utils.fromJson(keysJson) : [];
- var index = keys.indexOf(key);
-
- if (index >= 0) {
- keys.splice(index, 1);
- }
- $$storage().setItem(this.$$prefix + '.keys', JSON.stringify(keys));
- return item.value;
- }
- } else if (utils.isObject($$data)) {
- var value = $$data[key] ? $$data[key].value : undefined;
- $$lruHeap.remove($$data[key]);
- $$expiresHeap.remove($$data[key]);
- $$data[key] = null;
- delete $$data[key];
- return value;
- }
- },
- removeAll: function removeAll() {
- if ($$storage) {
- $$lruHeap.removeAll();
- $$expiresHeap.removeAll();
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
-
- if (keysJson) {
- var keys = utils.fromJson(keysJson);
-
- for (var i = 0; i < keys.length; i++) {
- this.remove(keys[i]);
- }
- }
- $$storage().setItem(this.$$prefix + '.keys', JSON.stringify([]));
- } else if (utils.isObject($$data)) {
- $$lruHeap.removeAll();
- $$expiresHeap.removeAll();
- for (var key in $$data) {
- $$data[key] = null;
- }
- $$data = {};
- } else {
- $$lruHeap.removeAll();
- $$expiresHeap.removeAll();
- $$data = {};
- }
- $$promises = {};
- },
- removeExpired: function removeExpired() {
- var now = new Date().getTime();
- var expired = {};
- var key = void 0;
- var expiredItem = void 0;
-
- while ((expiredItem = $$expiresHeap.peek()) && expiredItem.expires <= now) {
- expired[expiredItem.key] = expiredItem.value ? expiredItem.value : null;
- $$expiresHeap.pop();
- }
-
- if ($$storage) {
- for (key in expired) {
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
- if (itemJson) {
- expired[key] = utils.fromJson(itemJson).value;
- this.remove(key);
- }
- }
- } else {
- for (key in expired) {
- this.remove(key);
- }
- }
-
- if (this.$$onExpire) {
- for (key in expired) {
- this.$$onExpire(key, expired[key]);
- }
- }
-
- return expired;
- },
- setCacheFlushInterval: function setCacheFlushInterval(cacheFlushInterval) {
- var _this = this;
- if (cacheFlushInterval === null) {
- delete _this.$$cacheFlushInterval;
- } else if (!utils.isNumber(cacheFlushInterval)) {
- throw new Error('cacheFlushInterval must be a number!');
- } else if (cacheFlushInterval < 0) {
- throw new Error('cacheFlushInterval must be greater than zero!');
- } else if (cacheFlushInterval !== _this.$$cacheFlushInterval) {
- _this.$$cacheFlushInterval = cacheFlushInterval;
-
- clearInterval(_this.$$cacheFlushIntervalId); // eslint-disable-line
-
- _this.$$cacheFlushIntervalId = setInterval(function () {
- _this.removeAll();
- }, _this.$$cacheFlushInterval);
- }
- },
- setCapacity: function setCapacity(capacity) {
- if (capacity === null) {
- delete this.$$capacity;
- } else if (!utils.isNumber(capacity)) {
- throw new Error('capacity must be a number!');
- } else if (capacity < 0) {
- throw new Error('capacity must be greater than zero!');
- } else {
- this.$$capacity = capacity;
- }
- var removed = {};
- while ($$lruHeap.size() > this.$$capacity) {
- removed[$$lruHeap.peek().key] = this.remove($$lruHeap.peek().key);
- }
- return removed;
- },
- setDeleteOnExpire: function setDeleteOnExpire(deleteOnExpire, setRecycleFreq) {
- if (deleteOnExpire === null) {
- delete this.$$deleteOnExpire;
- } else if (!utils.isString(deleteOnExpire)) {
- throw new Error('deleteOnExpire must be a string!');
- } else if (deleteOnExpire !== 'none' && deleteOnExpire !== 'passive' && deleteOnExpire !== 'aggressive') {
- throw new Error('deleteOnExpire must be "none", "passive" or "aggressive"!');
- } else {
- this.$$deleteOnExpire = deleteOnExpire;
- }
- if (setRecycleFreq !== false) {
- this.setRecycleFreq(this.$$recycleFreq);
- }
- },
- setMaxAge: function setMaxAge(maxAge) {
- if (maxAge === null) {
- this.$$maxAge = Number.MAX_VALUE;
- } else if (!utils.isNumber(maxAge)) {
- throw new Error('maxAge must be a number!');
- } else if (maxAge < 0) {
- throw new Error('maxAge must be greater than zero!');
- } else {
- this.$$maxAge = maxAge;
- }
- var i = void 0,
- keys = void 0,
- key = void 0;
-
- $$expiresHeap.removeAll();
-
- if ($$storage) {
- var keysJson = $$storage().getItem(this.$$prefix + '.keys');
-
- keys = keysJson ? utils.fromJson(keysJson) : [];
-
- for (i = 0; i < keys.length; i++) {
- key = keys[i];
- var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);
-
- if (itemJson) {
- var item = utils.fromJson(itemJson);
- if (this.$$maxAge === Number.MAX_VALUE) {
- item.expires = Number.MAX_VALUE;
- } else {
- item.expires = item.created + (item.maxAge || this.$$maxAge);
- }
- $$expiresHeap.push({
- key: key,
- expires: item.expires
- });
- }
- }
- } else {
- keys = _keys($$data);
-
- for (i = 0; i < keys.length; i++) {
- key = keys[i];
- if (this.$$maxAge === Number.MAX_VALUE) {
- $$data[key].expires = Number.MAX_VALUE;
- } else {
- $$data[key].expires = $$data[key].created + ($$data[key].maxAge || this.$$maxAge);
- }
- $$expiresHeap.push($$data[key]);
- }
- }
- if (this.$$deleteOnExpire === 'aggressive') {
- return this.removeExpired();
- } else {
- return {};
- }
- },
- setOnExpire: function setOnExpire(onExpire) {
- if (onExpire === null) {
- delete this.$$onExpire;
- } else if (!utils.isFunction(onExpire)) {
- throw new Error('onExpire must be a function!');
- } else {
- this.$$onExpire = onExpire;
- }
- },
- setOptions: function setOptions(cacheOptions, strict) {
- cacheOptions = cacheOptions || {};
- strict = !!strict;
- if (!utils.isObject(cacheOptions)) {
- throw new Error('cacheOptions must be an object!');
- }
-
- if ('storagePrefix' in cacheOptions) {
- this.$$storagePrefix = cacheOptions.storagePrefix;
- } else if (strict) {
- this.$$storagePrefix = defaults.storagePrefix;
- }
-
- this.$$prefix = this.$$storagePrefix + this.$$id;
-
- if ('disabled' in cacheOptions) {
- this.$$disabled = !!cacheOptions.disabled;
- } else if (strict) {
- this.$$disabled = defaults.disabled;
- }
-
- if ('deleteOnExpire' in cacheOptions) {
- this.setDeleteOnExpire(cacheOptions.deleteOnExpire, false);
- } else if (strict) {
- this.setDeleteOnExpire(defaults.deleteOnExpire, false);
- }
-
- if ('recycleFreq' in cacheOptions) {
- this.setRecycleFreq(cacheOptions.recycleFreq);
- } else if (strict) {
- this.setRecycleFreq(defaults.recycleFreq);
- }
-
- if ('maxAge' in cacheOptions) {
- this.setMaxAge(cacheOptions.maxAge);
- } else if (strict) {
- this.setMaxAge(defaults.maxAge);
- }
-
- if ('storeOnResolve' in cacheOptions) {
- this.$$storeOnResolve = !!cacheOptions.storeOnResolve;
- } else if (strict) {
- this.$$storeOnResolve = defaults.storeOnResolve;
- }
-
- if ('storeOnReject' in cacheOptions) {
- this.$$storeOnReject = !!cacheOptions.storeOnReject;
- } else if (strict) {
- this.$$storeOnReject = defaults.storeOnReject;
- }
-
- if ('capacity' in cacheOptions) {
- this.setCapacity(cacheOptions.capacity);
- } else if (strict) {
- this.setCapacity(defaults.capacity);
- }
-
- if ('cacheFlushInterval' in cacheOptions) {
- this.setCacheFlushInterval(cacheOptions.cacheFlushInterval);
- } else if (strict) {
- this.setCacheFlushInterval(defaults.cacheFlushInterval);
- }
-
- if ('onExpire' in cacheOptions) {
- this.setOnExpire(cacheOptions.onExpire);
- } else if (strict) {
- this.setOnExpire(defaults.onExpire);
- }
-
- if ('storageMode' in cacheOptions || 'storageImpl' in cacheOptions) {
- this.setStorageMode(cacheOptions.storageMode || defaults.storageMode, cacheOptions.storageImpl || defaults.storageImpl);
- } else if (strict) {
- this.setStorageMode(defaults.storageMode, defaults.storageImpl);
- }
- },
- setRecycleFreq: function setRecycleFreq(recycleFreq) {
- if (recycleFreq === null) {
- delete this.$$recycleFreq;
- } else if (!utils.isNumber(recycleFreq)) {
- throw new Error('recycleFreq must be a number!');
- } else if (recycleFreq < 0) {
- throw new Error('recycleFreq must be greater than zero!');
- } else {
- this.$$recycleFreq = recycleFreq;
- }
- clearInterval(this.$$recycleFreqId);
- if (this.$$deleteOnExpire === 'aggressive') {
- (function (self) {
- self.$$recycleFreqId = setInterval(function () {
- self.removeExpired();
- }, self.$$recycleFreq);
- })(this);
- } else {
- delete this.$$recycleFreqId;
- }
- },
- setStorageMode: function setStorageMode(storageMode, storageImpl) {
- if (!utils.isString(storageMode)) {
- throw new Error('storageMode must be a string!');
- } else if (storageMode !== 'memory' && storageMode !== 'localStorage' && storageMode !== 'sessionStorage') {
- throw new Error('storageMode must be "memory", "localStorage" or "sessionStorage"!');
- }
-
- var prevStorage = $$storage;
- var prevData = $$data;
- var shouldReInsert = false;
- var items = {};
-
- function load(prevStorage, prevData) {
- var keys = this.keys();
- var length = keys.length;
- if (length) {
- var _key = void 0;
- var prevDataIsObject = utils.isObject(prevData);
- for (var i = 0; i < length; i++) {
- _key = keys[i];
- if (prevStorage) {
- var itemJson = prevStorage().getItem(this.$$prefix + '.data.' + _key);
- if (itemJson) {
- items[_key] = utils.fromJson(itemJson);
- }
- } else if (prevDataIsObject) {
- items[_key] = prevData[_key];
- }
- this.remove(_key);
- }
- shouldReInsert = true;
- }
- }
-
- if (!this.$$initializing) {
- load.call(this, prevStorage, prevData);
- }
-
- this.$$storageMode = storageMode;
-
- if (storageImpl) {
- if (!utils.isObject(storageImpl)) {
- throw new Error('storageImpl must be an object!');
- } else if (!('setItem' in storageImpl) || typeof storageImpl.setItem !== 'function') {
- throw new Error('storageImpl must implement "setItem(key, value)"!');
- } else if (!('getItem' in storageImpl) || typeof storageImpl.getItem !== 'function') {
- throw new Error('storageImpl must implement "getItem(key)"!');
- } else if (!('removeItem' in storageImpl) || typeof storageImpl.removeItem !== 'function') {
- throw new Error('storageImpl must implement "removeItem(key)"!');
- }
- $$storage = function $$storage() {
- return storageImpl;
- };
- } else if (this.$$storageMode === 'localStorage') {
- try {
- localStorage.setItem('cachefactory', 'cachefactory');
- localStorage.removeItem('cachefactory');
- $$storage = function $$storage() {
- return localStorage;
- };
- } catch (e) {
- $$storage = null;
- this.$$storageMode = 'memory';
- }
- } else if (this.$$storageMode === 'sessionStorage') {
- try {
- sessionStorage.setItem('cachefactory', 'cachefactory');
- sessionStorage.removeItem('cachefactory');
- $$storage = function $$storage() {
- return sessionStorage;
- };
- } catch (e) {
- $$storage = null;
- this.$$storageMode = 'memory';
- }
- } else {
- $$storage = null;
- this.$$storageMode = 'memory';
- }
-
- if (this.$$initializing) {
- load.call(this, $$storage, $$data);
- }
-
- if (shouldReInsert) {
- var item = void 0;
- for (var key in items) {
- item = items[key];
- this.put(key, item.value, {
- created: item.created,
- accessed: item.accessed,
- expires: item.expires
- });
- }
- }
- },
- touch: function touch(key, options) {
- var _this4 = this;
-
- if (key) {
- var val = this.get(key, {
- onExpire: function onExpire(k, v) {
- return _this4.put(k, v);
- }
- });
- if (val) {
- this.put(key, val, options);
- }
- } else {
- var keys = this.keys();
- for (var i = 0; i < keys.length; i++) {
- this.touch(keys[i], options);
- }
- }
- },
- values: function values() {
- var keys = this.keys();
- var items = [];
- for (var i = 0; i < keys.length; i++) {
- items.push(this.get(keys[i]));
- }
- return items;
- }
- };
-
- cache.$$initializing = true;
- cache.setOptions(options, true);
- cache.$$initializing = false;
-
- return cache;
- }
-
- function CacheFactory(cacheId, options) {
- return createCache(cacheId, options);
- }
-
- CacheFactory.createCache = createCache;
- CacheFactory.defaults = defaults;
-
- CacheFactory.info = function () {
- var keys = _keys(caches);
- var info = {
- size: keys.length,
- caches: {}
- };
- for (var opt in defaults) {
- if (defaults.hasOwnProperty(opt)) {
- info[opt] = defaults[opt];
- }
- }
- for (var i = 0; i < keys.length; i++) {
- var key = keys[i];
- info.caches[key] = caches[key].info();
- }
- return info;
- };
-
- CacheFactory.get = function (cacheId) {
- return caches[cacheId];
- };
- CacheFactory.keySet = function () {
- return _keySet(caches);
- };
- CacheFactory.keys = function () {
- return _keys(caches);
- };
- CacheFactory.destroy = function (cacheId) {
- if (caches[cacheId]) {
- caches[cacheId].destroy();
- delete caches[cacheId];
- }
- };
- CacheFactory.destroyAll = function () {
- for (var cacheId in caches) {
- caches[cacheId].destroy();
- }
- caches = {};
- };
- CacheFactory.clearAll = function () {
- for (var cacheId in caches) {
- caches[cacheId].removeAll();
- }
- };
- CacheFactory.removeExpiredFromAll = function () {
- var expired = {};
- for (var cacheId in caches) {
- expired[cacheId] = caches[cacheId].removeExpired();
- }
- return expired;
- };
- CacheFactory.enableAll = function () {
- for (var cacheId in caches) {
- caches[cacheId].$$disabled = false;
- }
- };
- CacheFactory.disableAll = function () {
- for (var cacheId in caches) {
- caches[cacheId].$$disabled = true;
- }
- };
- CacheFactory.touchAll = function () {
- for (var cacheId in caches) {
- caches[cacheId].touch();
- }
- };
-
- CacheFactory.utils = utils;
- CacheFactory.BinaryHeap = BinaryHeap;
-
- CacheFactory.utils.equals = angular.equals;
- CacheFactory.utils.isObject = angular.isObject;
- CacheFactory.utils.fromJson = angular.fromJson;
-
- function BinaryHeapProvider() {
- this.$get = function () {
- return CacheFactory.BinaryHeap;
- };
- }
-
- function CacheFactoryProvider() {
- this.defaults = CacheFactory.defaults;
- this.defaults.storagePrefix = 'angular-cache.caches.';
-
- this.$get = ['$q', function ($q) {
- CacheFactory.utils.Promise = $q;
- return CacheFactory;
- }];
- }
-
- angular.module('angular-cache', []).provider('BinaryHeap', BinaryHeapProvider).provider('CacheFactory', CacheFactoryProvider);
-
- var index = 'angular-cache';
-
- return index;
-
-}));
-//# sourceMappingURL=angular-cache.js.map \ No newline at end of file
diff --git a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js.map b/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js.map
deleted file mode 100644
index ca27a6fd..00000000
--- a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"angular-cache.js","sources":["../node_modules/cachefactory/dist/cachefactory.es2015.js","../src/index.js"],"sourcesContent":["/**\n * CacheFactory\n * @version 1.5.1 - Homepage <https://github.com/jmdobry/CacheFactory>\n * @copyright (c) 2013-2016 CacheFactory project authors\n * @license MIT <https://github.com/jmdobry/CacheFactory/blob/master/LICENSE>\n * @overview CacheFactory is a very simple and useful cache for the browser.\n */\nvar babelHelpers = {};\nbabelHelpers.typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n};\nbabelHelpers;\n\n/**\n * @method bubbleUp\n * @param {array} heap The heap.\n * @param {function} weightFunc The weight function.\n * @param {number} n The index of the element to bubble up.\n */\nvar bubbleUp = function bubbleUp(heap, weightFunc, n) {\n var element = heap[n];\n var weight = weightFunc(element);\n // When at 0, an element can not go up any further.\n while (n > 0) {\n // Compute the parent element's index, and fetch it.\n var parentN = Math.floor((n + 1) / 2) - 1;\n var parent = heap[parentN];\n // If the parent has a lesser weight, things are in order and we\n // are done.\n if (weight >= weightFunc(parent)) {\n break;\n } else {\n heap[parentN] = element;\n heap[n] = parent;\n n = parentN;\n }\n }\n};\n\n/**\n * @method bubbleDown\n * @param {array} heap The heap.\n * @param {function} weightFunc The weight function.\n * @param {number} n The index of the element to sink down.\n */\nvar bubbleDown = function bubbleDown(heap, weightFunc, n) {\n var length = heap.length;\n var node = heap[n];\n var nodeWeight = weightFunc(node);\n\n while (true) {\n var child2N = (n + 1) * 2;\n var child1N = child2N - 1;\n var swap = null;\n if (child1N < length) {\n var child1 = heap[child1N];\n var child1Weight = weightFunc(child1);\n // If the score is less than our node's, we need to swap.\n if (child1Weight < nodeWeight) {\n swap = child1N;\n }\n }\n // Do the same checks for the other child.\n if (child2N < length) {\n var child2 = heap[child2N];\n var child2Weight = weightFunc(child2);\n if (child2Weight < (swap === null ? nodeWeight : weightFunc(heap[child1N]))) {\n swap = child2N;\n }\n }\n\n if (swap === null) {\n break;\n } else {\n heap[n] = heap[swap];\n heap[swap] = node;\n n = swap;\n }\n }\n};\n\nfunction BinaryHeap(weightFunc, compareFunc) {\n if (!weightFunc) {\n weightFunc = function weightFunc(x) {\n return x;\n };\n }\n if (!compareFunc) {\n compareFunc = function compareFunc(x, y) {\n return x === y;\n };\n }\n if (typeof weightFunc !== 'function') {\n throw new Error('BinaryHeap([weightFunc][, compareFunc]): \"weightFunc\" must be a function!');\n }\n if (typeof compareFunc !== 'function') {\n throw new Error('BinaryHeap([weightFunc][, compareFunc]): \"compareFunc\" must be a function!');\n }\n this.weightFunc = weightFunc;\n this.compareFunc = compareFunc;\n this.heap = [];\n}\n\nvar BHProto = BinaryHeap.prototype;\n\nBHProto.push = function (node) {\n this.heap.push(node);\n bubbleUp(this.heap, this.weightFunc, this.heap.length - 1);\n};\n\nBHProto.peek = function () {\n return this.heap[0];\n};\n\nBHProto.pop = function () {\n var front = this.heap[0];\n var end = this.heap.pop();\n if (this.heap.length > 0) {\n this.heap[0] = end;\n bubbleDown(this.heap, this.weightFunc, 0);\n }\n return front;\n};\n\nBHProto.remove = function (node) {\n var length = this.heap.length;\n for (var i = 0; i < length; i++) {\n if (this.compareFunc(this.heap[i], node)) {\n var removed = this.heap[i];\n var end = this.heap.pop();\n if (i !== length - 1) {\n this.heap[i] = end;\n bubbleUp(this.heap, this.weightFunc, i);\n bubbleDown(this.heap, this.weightFunc, i);\n }\n return removed;\n }\n }\n return null;\n};\n\nBHProto.removeAll = function () {\n this.heap = [];\n};\n\nBHProto.size = function () {\n return this.heap.length;\n};\n\nvar _Promise = null;\ntry {\n _Promise = window.Promise;\n} catch (e) {}\n\nvar utils = {\n isNumber: function isNumber(value) {\n return typeof value === 'number';\n },\n isString: function isString(value) {\n return typeof value === 'string';\n },\n isObject: function isObject(value) {\n return value !== null && (typeof value === 'undefined' ? 'undefined' : babelHelpers.typeof(value)) === 'object';\n },\n isFunction: function isFunction(value) {\n return typeof value === 'function';\n },\n fromJson: function fromJson(value) {\n return JSON.parse(value);\n },\n equals: function equals(a, b) {\n return a === b;\n },\n\n\n Promise: _Promise\n};\n\nfunction _keys(collection) {\n var keys = [];\n var key = void 0;\n if (!utils.isObject(collection)) {\n return keys;\n }\n for (key in collection) {\n if (collection.hasOwnProperty(key)) {\n keys.push(key);\n }\n }\n return keys;\n}\n\nfunction _isPromiseLike(value) {\n return value && typeof value.then === 'function';\n}\n\nfunction _stringifyNumber(number) {\n if (utils.isNumber(number)) {\n return number.toString();\n }\n return number;\n}\n\nfunction _keySet(collection) {\n var keySet = {};\n var key = void 0;\n if (!utils.isObject(collection)) {\n return keySet;\n }\n for (key in collection) {\n if (collection.hasOwnProperty(key)) {\n keySet[key] = key;\n }\n }\n return keySet;\n}\n\nvar defaults = {\n capacity: Number.MAX_VALUE,\n maxAge: Number.MAX_VALUE,\n deleteOnExpire: 'none',\n onExpire: null,\n cacheFlushInterval: null,\n recycleFreq: 1000,\n storageMode: 'memory',\n storageImpl: null,\n disabled: false,\n storagePrefix: 'cachefactory.caches.',\n storeOnResolve: false,\n storeOnReject: false\n};\n\nvar caches = {};\n\nfunction createCache(cacheId, options) {\n if (cacheId in caches) {\n throw new Error(cacheId + ' already exists!');\n } else if (!utils.isString(cacheId)) {\n throw new Error('cacheId must be a string!');\n }\n\n var $$data = {};\n var $$promises = {};\n var $$storage = null;\n var $$expiresHeap = new BinaryHeap(function (x) {\n return x.expires;\n }, utils.equals);\n var $$lruHeap = new BinaryHeap(function (x) {\n return x.accessed;\n }, utils.equals);\n\n var cache = caches[cacheId] = {\n\n $$id: cacheId,\n\n destroy: function destroy() {\n clearInterval(this.$$cacheFlushIntervalId);\n clearInterval(this.$$recycleFreqId);\n this.removeAll();\n if ($$storage) {\n $$storage().removeItem(this.$$prefix + '.keys');\n $$storage().removeItem(this.$$prefix);\n }\n $$storage = null;\n $$data = null;\n $$lruHeap = null;\n $$expiresHeap = null;\n this.$$prefix = null;\n delete caches[this.$$id];\n },\n disable: function disable() {\n this.$$disabled = true;\n },\n enable: function enable() {\n delete this.$$disabled;\n },\n get: function get(key, options) {\n var _this2 = this;\n\n if (Array.isArray(key)) {\n var _ret = function () {\n var keys = key;\n var values = [];\n\n keys.forEach(function (key) {\n var value = _this2.get(key, options);\n if (value !== null && value !== undefined) {\n values.push(value);\n }\n });\n\n return {\n v: values\n };\n }();\n\n if ((typeof _ret === 'undefined' ? 'undefined' : babelHelpers.typeof(_ret)) === \"object\") return _ret.v;\n } else {\n key = _stringifyNumber(key);\n\n if (this.$$disabled) {\n return;\n }\n }\n\n options = options || {};\n if (!utils.isString(key)) {\n throw new Error('key must be a string!');\n } else if (options && !utils.isObject(options)) {\n throw new Error('options must be an object!');\n } else if (options.onExpire && !utils.isFunction(options.onExpire)) {\n throw new Error('options.onExpire must be a function!');\n }\n\n var item = void 0;\n\n if ($$storage) {\n if ($$promises[key]) {\n return $$promises[key];\n }\n\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n\n if (itemJson) {\n item = utils.fromJson(itemJson);\n } else {\n return;\n }\n } else if (utils.isObject($$data)) {\n if (!(key in $$data)) {\n return;\n }\n\n item = $$data[key];\n }\n\n var value = item.value;\n var now = new Date().getTime();\n\n if ($$storage) {\n $$lruHeap.remove({\n key: key,\n accessed: item.accessed\n });\n item.accessed = now;\n $$lruHeap.push({\n key: key,\n accessed: now\n });\n } else {\n $$lruHeap.remove(item);\n item.accessed = now;\n $$lruHeap.push(item);\n }\n\n if (this.$$deleteOnExpire === 'passive' && 'expires' in item && item.expires < now) {\n this.remove(key);\n\n if (this.$$onExpire) {\n this.$$onExpire(key, item.value, options.onExpire);\n } else if (options.onExpire) {\n options.onExpire.call(this, key, item.value);\n }\n value = undefined;\n } else if ($$storage) {\n $$storage().setItem(this.$$prefix + '.data.' + key, JSON.stringify(item));\n }\n\n return value;\n },\n info: function info(key) {\n if (key) {\n var item = void 0;\n if ($$storage) {\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n\n if (itemJson) {\n item = utils.fromJson(itemJson);\n return {\n created: item.created,\n accessed: item.accessed,\n expires: item.expires,\n isExpired: new Date().getTime() - item.created > (item.maxAge || this.$$maxAge)\n };\n } else {\n return undefined;\n }\n } else if (utils.isObject($$data) && key in $$data) {\n item = $$data[key];\n\n return {\n created: item.created,\n accessed: item.accessed,\n expires: item.expires,\n isExpired: new Date().getTime() - item.created > (item.maxAge || this.$$maxAge)\n };\n } else {\n return undefined;\n }\n } else {\n return {\n id: this.$$id,\n capacity: this.$$capacity,\n maxAge: this.$$maxAge,\n deleteOnExpire: this.$$deleteOnExpire,\n onExpire: this.$$onExpire,\n cacheFlushInterval: this.$$cacheFlushInterval,\n recycleFreq: this.$$recycleFreq,\n storageMode: this.$$storageMode,\n storageImpl: $$storage ? $$storage() : undefined,\n disabled: !!this.$$disabled,\n size: $$lruHeap && $$lruHeap.size() || 0\n };\n }\n },\n keys: function keys() {\n if ($$storage) {\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n\n if (keysJson) {\n return utils.fromJson(keysJson);\n } else {\n return [];\n }\n } else {\n return _keys($$data);\n }\n },\n keySet: function keySet() {\n if ($$storage) {\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n var kSet = {};\n\n if (keysJson) {\n var keys = utils.fromJson(keysJson);\n\n for (var i = 0; i < keys.length; i++) {\n kSet[keys[i]] = keys[i];\n }\n }\n return kSet;\n } else {\n return _keySet($$data);\n }\n },\n put: function put(key, value, options) {\n var _this3 = this;\n\n options || (options = {});\n\n var storeOnResolve = 'storeOnResolve' in options ? !!options.storeOnResolve : this.$$storeOnResolve;\n var storeOnReject = 'storeOnReject' in options ? !!options.storeOnReject : this.$$storeOnReject;\n\n var getHandler = function getHandler(store, isError) {\n return function (v) {\n if (store) {\n delete $$promises[key];\n if (utils.isObject(v) && 'status' in v && 'data' in v) {\n v = [v.status, v.data, v.headers(), v.statusText];\n _this3.put(key, v);\n } else {\n _this3.put(key, v);\n }\n }\n if (isError) {\n if (utils.Promise) {\n return utils.Promise.reject(v);\n } else {\n throw v;\n }\n } else {\n return v;\n }\n };\n };\n\n if (this.$$disabled || !utils.isObject($$data) || value === null || value === undefined) {\n return;\n }\n key = _stringifyNumber(key);\n\n if (!utils.isString(key)) {\n throw new Error('key must be a string!');\n }\n\n var now = new Date().getTime();\n var item = {\n key: key,\n value: _isPromiseLike(value) ? value.then(getHandler(storeOnResolve, false), getHandler(storeOnReject, true)) : value,\n created: options.created === undefined ? now : options.created,\n accessed: options.accessed === undefined ? now : options.accessed\n };\n if (options.maxAge) {\n item.maxAge = options.maxAge;\n }\n\n if (options.expires === undefined) {\n item.expires = item.created + (item.maxAge || this.$$maxAge);\n } else {\n item.expires = options.expires;\n }\n\n if ($$storage) {\n if (_isPromiseLike(item.value)) {\n $$promises[key] = item.value;\n return $$promises[key];\n }\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n var keys = keysJson ? utils.fromJson(keysJson) : [];\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n\n // Remove existing\n if (itemJson) {\n this.remove(key);\n }\n // Add to expires heap\n $$expiresHeap.push({\n key: key,\n expires: item.expires\n });\n // Add to lru heap\n $$lruHeap.push({\n key: key,\n accessed: item.accessed\n });\n // Set item\n $$storage().setItem(this.$$prefix + '.data.' + key, JSON.stringify(item));\n var exists = false;\n for (var i = 0; i < keys.length; i++) {\n if (keys[i] === key) {\n exists = true;\n break;\n }\n }\n if (!exists) {\n keys.push(key);\n }\n $$storage().setItem(this.$$prefix + '.keys', JSON.stringify(keys));\n } else {\n // Remove existing\n if ($$data[key]) {\n this.remove(key);\n }\n // Add to expires heap\n $$expiresHeap.push(item);\n // Add to lru heap\n $$lruHeap.push(item);\n // Set item\n $$data[key] = item;\n delete $$promises[key];\n }\n\n // Handle exceeded capacity\n if ($$lruHeap.size() > this.$$capacity) {\n this.remove($$lruHeap.peek().key);\n }\n\n return value;\n },\n remove: function remove(key) {\n key += '';\n delete $$promises[key];\n if ($$storage) {\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n\n if (itemJson) {\n var item = utils.fromJson(itemJson);\n $$lruHeap.remove({\n key: key,\n accessed: item.accessed\n });\n $$expiresHeap.remove({\n key: key,\n expires: item.expires\n });\n $$storage().removeItem(this.$$prefix + '.data.' + key);\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n var keys = keysJson ? utils.fromJson(keysJson) : [];\n var index = keys.indexOf(key);\n\n if (index >= 0) {\n keys.splice(index, 1);\n }\n $$storage().setItem(this.$$prefix + '.keys', JSON.stringify(keys));\n return item.value;\n }\n } else if (utils.isObject($$data)) {\n var value = $$data[key] ? $$data[key].value : undefined;\n $$lruHeap.remove($$data[key]);\n $$expiresHeap.remove($$data[key]);\n $$data[key] = null;\n delete $$data[key];\n return value;\n }\n },\n removeAll: function removeAll() {\n if ($$storage) {\n $$lruHeap.removeAll();\n $$expiresHeap.removeAll();\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n\n if (keysJson) {\n var keys = utils.fromJson(keysJson);\n\n for (var i = 0; i < keys.length; i++) {\n this.remove(keys[i]);\n }\n }\n $$storage().setItem(this.$$prefix + '.keys', JSON.stringify([]));\n } else if (utils.isObject($$data)) {\n $$lruHeap.removeAll();\n $$expiresHeap.removeAll();\n for (var key in $$data) {\n $$data[key] = null;\n }\n $$data = {};\n } else {\n $$lruHeap.removeAll();\n $$expiresHeap.removeAll();\n $$data = {};\n }\n $$promises = {};\n },\n removeExpired: function removeExpired() {\n var now = new Date().getTime();\n var expired = {};\n var key = void 0;\n var expiredItem = void 0;\n\n while ((expiredItem = $$expiresHeap.peek()) && expiredItem.expires <= now) {\n expired[expiredItem.key] = expiredItem.value ? expiredItem.value : null;\n $$expiresHeap.pop();\n }\n\n if ($$storage) {\n for (key in expired) {\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n if (itemJson) {\n expired[key] = utils.fromJson(itemJson).value;\n this.remove(key);\n }\n }\n } else {\n for (key in expired) {\n this.remove(key);\n }\n }\n\n if (this.$$onExpire) {\n for (key in expired) {\n this.$$onExpire(key, expired[key]);\n }\n }\n\n return expired;\n },\n setCacheFlushInterval: function setCacheFlushInterval(cacheFlushInterval) {\n var _this = this;\n if (cacheFlushInterval === null) {\n delete _this.$$cacheFlushInterval;\n } else if (!utils.isNumber(cacheFlushInterval)) {\n throw new Error('cacheFlushInterval must be a number!');\n } else if (cacheFlushInterval < 0) {\n throw new Error('cacheFlushInterval must be greater than zero!');\n } else if (cacheFlushInterval !== _this.$$cacheFlushInterval) {\n _this.$$cacheFlushInterval = cacheFlushInterval;\n\n clearInterval(_this.$$cacheFlushIntervalId); // eslint-disable-line\n\n _this.$$cacheFlushIntervalId = setInterval(function () {\n _this.removeAll();\n }, _this.$$cacheFlushInterval);\n }\n },\n setCapacity: function setCapacity(capacity) {\n if (capacity === null) {\n delete this.$$capacity;\n } else if (!utils.isNumber(capacity)) {\n throw new Error('capacity must be a number!');\n } else if (capacity < 0) {\n throw new Error('capacity must be greater than zero!');\n } else {\n this.$$capacity = capacity;\n }\n var removed = {};\n while ($$lruHeap.size() > this.$$capacity) {\n removed[$$lruHeap.peek().key] = this.remove($$lruHeap.peek().key);\n }\n return removed;\n },\n setDeleteOnExpire: function setDeleteOnExpire(deleteOnExpire, setRecycleFreq) {\n if (deleteOnExpire === null) {\n delete this.$$deleteOnExpire;\n } else if (!utils.isString(deleteOnExpire)) {\n throw new Error('deleteOnExpire must be a string!');\n } else if (deleteOnExpire !== 'none' && deleteOnExpire !== 'passive' && deleteOnExpire !== 'aggressive') {\n throw new Error('deleteOnExpire must be \"none\", \"passive\" or \"aggressive\"!');\n } else {\n this.$$deleteOnExpire = deleteOnExpire;\n }\n if (setRecycleFreq !== false) {\n this.setRecycleFreq(this.$$recycleFreq);\n }\n },\n setMaxAge: function setMaxAge(maxAge) {\n if (maxAge === null) {\n this.$$maxAge = Number.MAX_VALUE;\n } else if (!utils.isNumber(maxAge)) {\n throw new Error('maxAge must be a number!');\n } else if (maxAge < 0) {\n throw new Error('maxAge must be greater than zero!');\n } else {\n this.$$maxAge = maxAge;\n }\n var i = void 0,\n keys = void 0,\n key = void 0;\n\n $$expiresHeap.removeAll();\n\n if ($$storage) {\n var keysJson = $$storage().getItem(this.$$prefix + '.keys');\n\n keys = keysJson ? utils.fromJson(keysJson) : [];\n\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n var itemJson = $$storage().getItem(this.$$prefix + '.data.' + key);\n\n if (itemJson) {\n var item = utils.fromJson(itemJson);\n if (this.$$maxAge === Number.MAX_VALUE) {\n item.expires = Number.MAX_VALUE;\n } else {\n item.expires = item.created + (item.maxAge || this.$$maxAge);\n }\n $$expiresHeap.push({\n key: key,\n expires: item.expires\n });\n }\n }\n } else {\n keys = _keys($$data);\n\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n if (this.$$maxAge === Number.MAX_VALUE) {\n $$data[key].expires = Number.MAX_VALUE;\n } else {\n $$data[key].expires = $$data[key].created + ($$data[key].maxAge || this.$$maxAge);\n }\n $$expiresHeap.push($$data[key]);\n }\n }\n if (this.$$deleteOnExpire === 'aggressive') {\n return this.removeExpired();\n } else {\n return {};\n }\n },\n setOnExpire: function setOnExpire(onExpire) {\n if (onExpire === null) {\n delete this.$$onExpire;\n } else if (!utils.isFunction(onExpire)) {\n throw new Error('onExpire must be a function!');\n } else {\n this.$$onExpire = onExpire;\n }\n },\n setOptions: function setOptions(cacheOptions, strict) {\n cacheOptions = cacheOptions || {};\n strict = !!strict;\n if (!utils.isObject(cacheOptions)) {\n throw new Error('cacheOptions must be an object!');\n }\n\n if ('storagePrefix' in cacheOptions) {\n this.$$storagePrefix = cacheOptions.storagePrefix;\n } else if (strict) {\n this.$$storagePrefix = defaults.storagePrefix;\n }\n\n this.$$prefix = this.$$storagePrefix + this.$$id;\n\n if ('disabled' in cacheOptions) {\n this.$$disabled = !!cacheOptions.disabled;\n } else if (strict) {\n this.$$disabled = defaults.disabled;\n }\n\n if ('deleteOnExpire' in cacheOptions) {\n this.setDeleteOnExpire(cacheOptions.deleteOnExpire, false);\n } else if (strict) {\n this.setDeleteOnExpire(defaults.deleteOnExpire, false);\n }\n\n if ('recycleFreq' in cacheOptions) {\n this.setRecycleFreq(cacheOptions.recycleFreq);\n } else if (strict) {\n this.setRecycleFreq(defaults.recycleFreq);\n }\n\n if ('maxAge' in cacheOptions) {\n this.setMaxAge(cacheOptions.maxAge);\n } else if (strict) {\n this.setMaxAge(defaults.maxAge);\n }\n\n if ('storeOnResolve' in cacheOptions) {\n this.$$storeOnResolve = !!cacheOptions.storeOnResolve;\n } else if (strict) {\n this.$$storeOnResolve = defaults.storeOnResolve;\n }\n\n if ('storeOnReject' in cacheOptions) {\n this.$$storeOnReject = !!cacheOptions.storeOnReject;\n } else if (strict) {\n this.$$storeOnReject = defaults.storeOnReject;\n }\n\n if ('capacity' in cacheOptions) {\n this.setCapacity(cacheOptions.capacity);\n } else if (strict) {\n this.setCapacity(defaults.capacity);\n }\n\n if ('cacheFlushInterval' in cacheOptions) {\n this.setCacheFlushInterval(cacheOptions.cacheFlushInterval);\n } else if (strict) {\n this.setCacheFlushInterval(defaults.cacheFlushInterval);\n }\n\n if ('onExpire' in cacheOptions) {\n this.setOnExpire(cacheOptions.onExpire);\n } else if (strict) {\n this.setOnExpire(defaults.onExpire);\n }\n\n if ('storageMode' in cacheOptions || 'storageImpl' in cacheOptions) {\n this.setStorageMode(cacheOptions.storageMode || defaults.storageMode, cacheOptions.storageImpl || defaults.storageImpl);\n } else if (strict) {\n this.setStorageMode(defaults.storageMode, defaults.storageImpl);\n }\n },\n setRecycleFreq: function setRecycleFreq(recycleFreq) {\n if (recycleFreq === null) {\n delete this.$$recycleFreq;\n } else if (!utils.isNumber(recycleFreq)) {\n throw new Error('recycleFreq must be a number!');\n } else if (recycleFreq < 0) {\n throw new Error('recycleFreq must be greater than zero!');\n } else {\n this.$$recycleFreq = recycleFreq;\n }\n clearInterval(this.$$recycleFreqId);\n if (this.$$deleteOnExpire === 'aggressive') {\n (function (self) {\n self.$$recycleFreqId = setInterval(function () {\n self.removeExpired();\n }, self.$$recycleFreq);\n })(this);\n } else {\n delete this.$$recycleFreqId;\n }\n },\n setStorageMode: function setStorageMode(storageMode, storageImpl) {\n if (!utils.isString(storageMode)) {\n throw new Error('storageMode must be a string!');\n } else if (storageMode !== 'memory' && storageMode !== 'localStorage' && storageMode !== 'sessionStorage') {\n throw new Error('storageMode must be \"memory\", \"localStorage\" or \"sessionStorage\"!');\n }\n\n var prevStorage = $$storage;\n var prevData = $$data;\n var shouldReInsert = false;\n var items = {};\n\n function load(prevStorage, prevData) {\n var keys = this.keys();\n var length = keys.length;\n if (length) {\n var _key = void 0;\n var prevDataIsObject = utils.isObject(prevData);\n for (var i = 0; i < length; i++) {\n _key = keys[i];\n if (prevStorage) {\n var itemJson = prevStorage().getItem(this.$$prefix + '.data.' + _key);\n if (itemJson) {\n items[_key] = utils.fromJson(itemJson);\n }\n } else if (prevDataIsObject) {\n items[_key] = prevData[_key];\n }\n this.remove(_key);\n }\n shouldReInsert = true;\n }\n }\n\n if (!this.$$initializing) {\n load.call(this, prevStorage, prevData);\n }\n\n this.$$storageMode = storageMode;\n\n if (storageImpl) {\n if (!utils.isObject(storageImpl)) {\n throw new Error('storageImpl must be an object!');\n } else if (!('setItem' in storageImpl) || typeof storageImpl.setItem !== 'function') {\n throw new Error('storageImpl must implement \"setItem(key, value)\"!');\n } else if (!('getItem' in storageImpl) || typeof storageImpl.getItem !== 'function') {\n throw new Error('storageImpl must implement \"getItem(key)\"!');\n } else if (!('removeItem' in storageImpl) || typeof storageImpl.removeItem !== 'function') {\n throw new Error('storageImpl must implement \"removeItem(key)\"!');\n }\n $$storage = function $$storage() {\n return storageImpl;\n };\n } else if (this.$$storageMode === 'localStorage') {\n try {\n localStorage.setItem('cachefactory', 'cachefactory');\n localStorage.removeItem('cachefactory');\n $$storage = function $$storage() {\n return localStorage;\n };\n } catch (e) {\n $$storage = null;\n this.$$storageMode = 'memory';\n }\n } else if (this.$$storageMode === 'sessionStorage') {\n try {\n sessionStorage.setItem('cachefactory', 'cachefactory');\n sessionStorage.removeItem('cachefactory');\n $$storage = function $$storage() {\n return sessionStorage;\n };\n } catch (e) {\n $$storage = null;\n this.$$storageMode = 'memory';\n }\n } else {\n $$storage = null;\n this.$$storageMode = 'memory';\n }\n\n if (this.$$initializing) {\n load.call(this, $$storage, $$data);\n }\n\n if (shouldReInsert) {\n var item = void 0;\n for (var key in items) {\n item = items[key];\n this.put(key, item.value, {\n created: item.created,\n accessed: item.accessed,\n expires: item.expires\n });\n }\n }\n },\n touch: function touch(key, options) {\n var _this4 = this;\n\n if (key) {\n var val = this.get(key, {\n onExpire: function onExpire(k, v) {\n return _this4.put(k, v);\n }\n });\n if (val) {\n this.put(key, val, options);\n }\n } else {\n var keys = this.keys();\n for (var i = 0; i < keys.length; i++) {\n this.touch(keys[i], options);\n }\n }\n },\n values: function values() {\n var keys = this.keys();\n var items = [];\n for (var i = 0; i < keys.length; i++) {\n items.push(this.get(keys[i]));\n }\n return items;\n }\n };\n\n cache.$$initializing = true;\n cache.setOptions(options, true);\n cache.$$initializing = false;\n\n return cache;\n}\n\nfunction CacheFactory(cacheId, options) {\n return createCache(cacheId, options);\n}\n\nCacheFactory.createCache = createCache;\nCacheFactory.defaults = defaults;\n\nCacheFactory.info = function () {\n var keys = _keys(caches);\n var info = {\n size: keys.length,\n caches: {}\n };\n for (var opt in defaults) {\n if (defaults.hasOwnProperty(opt)) {\n info[opt] = defaults[opt];\n }\n }\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n info.caches[key] = caches[key].info();\n }\n return info;\n};\n\nCacheFactory.get = function (cacheId) {\n return caches[cacheId];\n};\nCacheFactory.keySet = function () {\n return _keySet(caches);\n};\nCacheFactory.keys = function () {\n return _keys(caches);\n};\nCacheFactory.destroy = function (cacheId) {\n if (caches[cacheId]) {\n caches[cacheId].destroy();\n delete caches[cacheId];\n }\n};\nCacheFactory.destroyAll = function () {\n for (var cacheId in caches) {\n caches[cacheId].destroy();\n }\n caches = {};\n};\nCacheFactory.clearAll = function () {\n for (var cacheId in caches) {\n caches[cacheId].removeAll();\n }\n};\nCacheFactory.removeExpiredFromAll = function () {\n var expired = {};\n for (var cacheId in caches) {\n expired[cacheId] = caches[cacheId].removeExpired();\n }\n return expired;\n};\nCacheFactory.enableAll = function () {\n for (var cacheId in caches) {\n caches[cacheId].$$disabled = false;\n }\n};\nCacheFactory.disableAll = function () {\n for (var cacheId in caches) {\n caches[cacheId].$$disabled = true;\n }\n};\nCacheFactory.touchAll = function () {\n for (var cacheId in caches) {\n caches[cacheId].touch();\n }\n};\n\nCacheFactory.utils = utils;\nCacheFactory.BinaryHeap = BinaryHeap;\n\nexport default CacheFactory;\n//# sourceMappingURL=cachefactory.es2015.js.map","import angular from 'angular'\nimport CacheFactory from '../node_modules/cachefactory/dist/cachefactory.es2015'\n\nCacheFactory.utils.equals = angular.equals\nCacheFactory.utils.isObject = angular.isObject\nCacheFactory.utils.fromJson = angular.fromJson\n\nfunction BinaryHeapProvider () {\n this.$get = function () { return CacheFactory.BinaryHeap }\n}\n\nfunction CacheFactoryProvider () {\n this.defaults = CacheFactory.defaults\n this.defaults.storagePrefix = 'angular-cache.caches.'\n\n this.$get = ['$q', function ($q) {\n CacheFactory.utils.Promise = $q\n return CacheFactory\n }]\n}\n\nangular.module('angular-cache', [])\n .provider('BinaryHeap', BinaryHeapProvider)\n .provider('CacheFactory', CacheFactoryProvider)\n\nexport default 'angular-cache'\n"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.js b/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.js
deleted file mode 100644
index ae78ddcb..00000000
--- a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t("undefined"==typeof angular?require("angular"):angular):"function"==typeof define&&define.amd?define("angular-cache",["angular"],t):e.angularCacheModuleName=t(e.angular)}(this,function(e){"use strict";function t(e,t){if(e||(e=function(e){return e}),t||(t=function(e,t){return e===t}),"function"!=typeof e)throw new Error('BinaryHeap([weightFunc][, compareFunc]): "weightFunc" must be a function!');if("function"!=typeof t)throw new Error('BinaryHeap([weightFunc][, compareFunc]): "compareFunc" must be a function!');this.weightFunc=e,this.compareFunc=t,this.heap=[]}function r(e){var t=[],r=void 0;if(!d.isObject(e))return t;for(r in e)e.hasOwnProperty(r)&&t.push(r);return t}function i(e){return e&&"function"==typeof e.then}function s(e){return d.isNumber(e)?e.toString():e}function n(e){var t={},r=void 0;if(!d.isObject(e))return t;for(r in e)e.hasOwnProperty(r)&&(t[r]=r);return t}function o(e,o){if(e in g)throw new Error(e+" already exists!");if(!d.isString(e))throw new Error("cacheId must be a string!");var a={},c={},l=null,h=new t(function(e){return e.expires},d.equals),f=new t(function(e){return e.accessed},d.equals),p=g[e]={$$id:e,destroy:function(){clearInterval(this.$$cacheFlushIntervalId),clearInterval(this.$$recycleFreqId),this.removeAll(),l&&(l().removeItem(this.$$prefix+".keys"),l().removeItem(this.$$prefix)),l=null,a=null,f=null,h=null,this.$$prefix=null,delete g[this.$$id]},disable:function(){this.$$disabled=!0},enable:function(){delete this.$$disabled},get:function(e,t){var r=this;if(Array.isArray(e)){var i=function(){var i=e,s=[];return i.forEach(function(e){var i=r.get(e,t);null!==i&&void 0!==i&&s.push(i)}),{v:s}}();if("object"===("undefined"==typeof i?"undefined":u["typeof"](i)))return i.v}else if(e=s(e),this.$$disabled)return;if(t=t||{},!d.isString(e))throw new Error("key must be a string!");if(t&&!d.isObject(t))throw new Error("options must be an object!");if(t.onExpire&&!d.isFunction(t.onExpire))throw new Error("options.onExpire must be a function!");var n=void 0;if(l){if(c[e])return c[e];var o=l().getItem(this.$$prefix+".data."+e);if(!o)return;n=d.fromJson(o)}else if(d.isObject(a)){if(!(e in a))return;n=a[e]}var h=n.value,p=(new Date).getTime();return l?(f.remove({key:e,accessed:n.accessed}),n.accessed=p,f.push({key:e,accessed:p})):(f.remove(n),n.accessed=p,f.push(n)),"passive"===this.$$deleteOnExpire&&"expires"in n&&n.expires<p?(this.remove(e),this.$$onExpire?this.$$onExpire(e,n.value,t.onExpire):t.onExpire&&t.onExpire.call(this,e,n.value),h=void 0):l&&l().setItem(this.$$prefix+".data."+e,JSON.stringify(n)),h},info:function(e){if(e){var t=void 0;if(l){var r=l().getItem(this.$$prefix+".data."+e);return r?(t=d.fromJson(r),{created:t.created,accessed:t.accessed,expires:t.expires,isExpired:(new Date).getTime()-t.created>(t.maxAge||this.$$maxAge)}):void 0}return d.isObject(a)&&e in a?(t=a[e],{created:t.created,accessed:t.accessed,expires:t.expires,isExpired:(new Date).getTime()-t.created>(t.maxAge||this.$$maxAge)}):void 0}return{id:this.$$id,capacity:this.$$capacity,maxAge:this.$$maxAge,deleteOnExpire:this.$$deleteOnExpire,onExpire:this.$$onExpire,cacheFlushInterval:this.$$cacheFlushInterval,recycleFreq:this.$$recycleFreq,storageMode:this.$$storageMode,storageImpl:l?l():void 0,disabled:!!this.$$disabled,size:f&&f.size()||0}},keys:function(){if(l){var e=l().getItem(this.$$prefix+".keys");return e?d.fromJson(e):[]}return r(a)},keySet:function(){if(l){var e=l().getItem(this.$$prefix+".keys"),t={};if(e)for(var r=d.fromJson(e),i=0;i<r.length;i++)t[r[i]]=r[i];return t}return n(a)},put:function(e,t,r){var n=this;r||(r={});var o="storeOnResolve"in r?!!r.storeOnResolve:this.$$storeOnResolve,u="storeOnReject"in r?!!r.storeOnReject:this.$$storeOnReject,p=function(t,r){return function(i){if(t&&(delete c[e],d.isObject(i)&&"status"in i&&"data"in i?(i=[i.status,i.data,i.headers(),i.statusText],n.put(e,i)):n.put(e,i)),r){if(d.Promise)return d.Promise.reject(i);throw i}return i}};if(!this.$$disabled&&d.isObject(a)&&null!==t&&void 0!==t){if(e=s(e),!d.isString(e))throw new Error("key must be a string!");var m=(new Date).getTime(),$={key:e,value:i(t)?t.then(p(o,!1),p(u,!0)):t,created:void 0===r.created?m:r.created,accessed:void 0===r.accessed?m:r.accessed};if(r.maxAge&&($.maxAge=r.maxAge),void 0===r.expires?$.expires=$.created+($.maxAge||this.$$maxAge):$.expires=r.expires,l){if(i($.value))return c[e]=$.value,c[e];var v=l().getItem(this.$$prefix+".keys"),g=v?d.fromJson(v):[],y=l().getItem(this.$$prefix+".data."+e);y&&this.remove(e),h.push({key:e,expires:$.expires}),f.push({key:e,accessed:$.accessed}),l().setItem(this.$$prefix+".data."+e,JSON.stringify($));for(var x=!1,b=0;b<g.length;b++)if(g[b]===e){x=!0;break}x||g.push(e),l().setItem(this.$$prefix+".keys",JSON.stringify(g))}else a[e]&&this.remove(e),h.push($),f.push($),a[e]=$,delete c[e];return f.size()>this.$$capacity&&this.remove(f.peek().key),t}},remove:function(e){if(e+="",delete c[e],l){var t=l().getItem(this.$$prefix+".data."+e);if(t){var r=d.fromJson(t);f.remove({key:e,accessed:r.accessed}),h.remove({key:e,expires:r.expires}),l().removeItem(this.$$prefix+".data."+e);var i=l().getItem(this.$$prefix+".keys"),s=i?d.fromJson(i):[],n=s.indexOf(e);return n>=0&&s.splice(n,1),l().setItem(this.$$prefix+".keys",JSON.stringify(s)),r.value}}else if(d.isObject(a)){var o=a[e]?a[e].value:void 0;return f.remove(a[e]),h.remove(a[e]),a[e]=null,delete a[e],o}},removeAll:function(){if(l){f.removeAll(),h.removeAll();var e=l().getItem(this.$$prefix+".keys");if(e)for(var t=d.fromJson(e),r=0;r<t.length;r++)this.remove(t[r]);l().setItem(this.$$prefix+".keys",JSON.stringify([]))}else if(d.isObject(a)){f.removeAll(),h.removeAll();for(var i in a)a[i]=null;a={}}else f.removeAll(),h.removeAll(),a={};c={}},removeExpired:function(){for(var e=(new Date).getTime(),t={},r=void 0,i=void 0;(i=h.peek())&&i.expires<=e;)t[i.key]=i.value?i.value:null,h.pop();if(l)for(r in t){var s=l().getItem(this.$$prefix+".data."+r);s&&(t[r]=d.fromJson(s).value,this.remove(r))}else for(r in t)this.remove(r);if(this.$$onExpire)for(r in t)this.$$onExpire(r,t[r]);return t},setCacheFlushInterval:function(e){var t=this;if(null===e)delete t.$$cacheFlushInterval;else{if(!d.isNumber(e))throw new Error("cacheFlushInterval must be a number!");if(0>e)throw new Error("cacheFlushInterval must be greater than zero!");e!==t.$$cacheFlushInterval&&(t.$$cacheFlushInterval=e,clearInterval(t.$$cacheFlushIntervalId),t.$$cacheFlushIntervalId=setInterval(function(){t.removeAll()},t.$$cacheFlushInterval))}},setCapacity:function(e){if(null===e)delete this.$$capacity;else{if(!d.isNumber(e))throw new Error("capacity must be a number!");if(0>e)throw new Error("capacity must be greater than zero!");this.$$capacity=e}for(var t={};f.size()>this.$$capacity;)t[f.peek().key]=this.remove(f.peek().key);return t},setDeleteOnExpire:function(e,t){if(null===e)delete this.$$deleteOnExpire;else{if(!d.isString(e))throw new Error("deleteOnExpire must be a string!");if("none"!==e&&"passive"!==e&&"aggressive"!==e)throw new Error('deleteOnExpire must be "none", "passive" or "aggressive"!');this.$$deleteOnExpire=e}t!==!1&&this.setRecycleFreq(this.$$recycleFreq)},setMaxAge:function(e){if(null===e)this.$$maxAge=Number.MAX_VALUE;else{if(!d.isNumber(e))throw new Error("maxAge must be a number!");if(0>e)throw new Error("maxAge must be greater than zero!");this.$$maxAge=e}var t=void 0,i=void 0,s=void 0;if(h.removeAll(),l){var n=l().getItem(this.$$prefix+".keys");for(i=n?d.fromJson(n):[],t=0;t<i.length;t++){s=i[t];var o=l().getItem(this.$$prefix+".data."+s);if(o){var c=d.fromJson(o);this.$$maxAge===Number.MAX_VALUE?c.expires=Number.MAX_VALUE:c.expires=c.created+(c.maxAge||this.$$maxAge),h.push({key:s,expires:c.expires})}}}else for(i=r(a),t=0;t<i.length;t++)s=i[t],this.$$maxAge===Number.MAX_VALUE?a[s].expires=Number.MAX_VALUE:a[s].expires=a[s].created+(a[s].maxAge||this.$$maxAge),h.push(a[s]);return"aggressive"===this.$$deleteOnExpire?this.removeExpired():{}},setOnExpire:function(e){if(null===e)delete this.$$onExpire;else{if(!d.isFunction(e))throw new Error("onExpire must be a function!");this.$$onExpire=e}},setOptions:function(e,t){if(e=e||{},t=!!t,!d.isObject(e))throw new Error("cacheOptions must be an object!");"storagePrefix"in e?this.$$storagePrefix=e.storagePrefix:t&&(this.$$storagePrefix=v.storagePrefix),this.$$prefix=this.$$storagePrefix+this.$$id,"disabled"in e?this.$$disabled=!!e.disabled:t&&(this.$$disabled=v.disabled),"deleteOnExpire"in e?this.setDeleteOnExpire(e.deleteOnExpire,!1):t&&this.setDeleteOnExpire(v.deleteOnExpire,!1),"recycleFreq"in e?this.setRecycleFreq(e.recycleFreq):t&&this.setRecycleFreq(v.recycleFreq),"maxAge"in e?this.setMaxAge(e.maxAge):t&&this.setMaxAge(v.maxAge),"storeOnResolve"in e?this.$$storeOnResolve=!!e.storeOnResolve:t&&(this.$$storeOnResolve=v.storeOnResolve),"storeOnReject"in e?this.$$storeOnReject=!!e.storeOnReject:t&&(this.$$storeOnReject=v.storeOnReject),"capacity"in e?this.setCapacity(e.capacity):t&&this.setCapacity(v.capacity),"cacheFlushInterval"in e?this.setCacheFlushInterval(e.cacheFlushInterval):t&&this.setCacheFlushInterval(v.cacheFlushInterval),"onExpire"in e?this.setOnExpire(e.onExpire):t&&this.setOnExpire(v.onExpire),"storageMode"in e||"storageImpl"in e?this.setStorageMode(e.storageMode||v.storageMode,e.storageImpl||v.storageImpl):t&&this.setStorageMode(v.storageMode,v.storageImpl)},setRecycleFreq:function(e){if(null===e)delete this.$$recycleFreq;else{if(!d.isNumber(e))throw new Error("recycleFreq must be a number!");if(0>e)throw new Error("recycleFreq must be greater than zero!");this.$$recycleFreq=e}clearInterval(this.$$recycleFreqId),"aggressive"===this.$$deleteOnExpire?!function(e){e.$$recycleFreqId=setInterval(function(){e.removeExpired()},e.$$recycleFreq)}(this):delete this.$$recycleFreqId},setStorageMode:function(e,t){function r(e,t){var r=this.keys(),i=r.length;if(i){for(var s=void 0,a=d.isObject(t),c=0;i>c;c++){if(s=r[c],e){var l=e().getItem(this.$$prefix+".data."+s);l&&(o[s]=d.fromJson(l))}else a&&(o[s]=t[s]);this.remove(s)}n=!0}}if(!d.isString(e))throw new Error("storageMode must be a string!");if("memory"!==e&&"localStorage"!==e&&"sessionStorage"!==e)throw new Error('storageMode must be "memory", "localStorage" or "sessionStorage"!');var i=l,s=a,n=!1,o={};if(this.$$initializing||r.call(this,i,s),this.$$storageMode=e,t){if(!d.isObject(t))throw new Error("storageImpl must be an object!");if(!("setItem"in t&&"function"==typeof t.setItem))throw new Error('storageImpl must implement "setItem(key, value)"!');if(!("getItem"in t&&"function"==typeof t.getItem))throw new Error('storageImpl must implement "getItem(key)"!');if(!("removeItem"in t)||"function"!=typeof t.removeItem)throw new Error('storageImpl must implement "removeItem(key)"!');l=function(){return t}}else if("localStorage"===this.$$storageMode)try{localStorage.setItem("cachefactory","cachefactory"),localStorage.removeItem("cachefactory"),l=function(){return localStorage}}catch(c){l=null,this.$$storageMode="memory"}else if("sessionStorage"===this.$$storageMode)try{sessionStorage.setItem("cachefactory","cachefactory"),sessionStorage.removeItem("cachefactory"),l=function(){return sessionStorage}}catch(c){l=null,this.$$storageMode="memory"}else l=null,this.$$storageMode="memory";if(this.$$initializing&&r.call(this,l,a),n){var u=void 0;for(var h in o)u=o[h],this.put(h,u.value,{created:u.created,accessed:u.accessed,expires:u.expires})}},touch:function(e,t){var r=this;if(e){var i=this.get(e,{onExpire:function(e,t){return r.put(e,t)}});i&&this.put(e,i,t)}else for(var s=this.keys(),n=0;n<s.length;n++)this.touch(s[n],t)},values:function(){for(var e=this.keys(),t=[],r=0;r<e.length;r++)t.push(this.get(e[r]));return t}};return p.$$initializing=!0,p.setOptions(o,!0),p.$$initializing=!1,p}function a(e,t){return o(e,t)}function c(){this.$get=function(){return a.BinaryHeap}}function l(){this.defaults=a.defaults,this.defaults.storagePrefix="angular-cache.caches.",this.$get=["$q",function(e){return a.utils.Promise=e,a}]}e="default"in e?e["default"]:e;var u={};u["typeof"]="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};var h=function(e,t,r){for(var i=e[r],s=t(i);r>0;){var n=Math.floor((r+1)/2)-1,o=e[n];if(s>=t(o))break;e[n]=i,e[r]=o,r=n}},f=function(e,t,r){for(var i=e.length,s=e[r],n=t(s);;){var o=2*(r+1),a=o-1,c=null;if(i>a){var l=e[a],u=t(l);n>u&&(c=a)}if(i>o){var h=e[o],f=t(h);f<(null===c?n:t(e[a]))&&(c=o)}if(null===c)break;e[r]=e[c],e[c]=s,r=c}},p=t.prototype;p.push=function(e){this.heap.push(e),h(this.heap,this.weightFunc,this.heap.length-1)},p.peek=function(){return this.heap[0]},p.pop=function(){var e=this.heap[0],t=this.heap.pop();return this.heap.length>0&&(this.heap[0]=t,f(this.heap,this.weightFunc,0)),e},p.remove=function(e){for(var t=this.heap.length,r=0;t>r;r++)if(this.compareFunc(this.heap[r],e)){var i=this.heap[r],s=this.heap.pop();return r!==t-1&&(this.heap[r]=s,h(this.heap,this.weightFunc,r),f(this.heap,this.weightFunc,r)),i}return null},p.removeAll=function(){this.heap=[]},p.size=function(){return this.heap.length};var m=null;try{m=window.Promise}catch($){}var d={isNumber:function(e){return"number"==typeof e},isString:function(e){return"string"==typeof e},isObject:function(e){return null!==e&&"object"===("undefined"==typeof e?"undefined":u["typeof"](e))},isFunction:function(e){return"function"==typeof e},fromJson:function(e){return JSON.parse(e)},equals:function(e,t){return e===t},Promise:m},v={capacity:Number.MAX_VALUE,maxAge:Number.MAX_VALUE,deleteOnExpire:"none",onExpire:null,cacheFlushInterval:null,recycleFreq:1e3,storageMode:"memory",storageImpl:null,disabled:!1,storagePrefix:"cachefactory.caches.",storeOnResolve:!1,storeOnReject:!1},g={};a.createCache=o,a.defaults=v,a.info=function(){var e=r(g),t={size:e.length,caches:{}};for(var i in v)v.hasOwnProperty(i)&&(t[i]=v[i]);for(var s=0;s<e.length;s++){var n=e[s];t.caches[n]=g[n].info()}return t},a.get=function(e){return g[e]},a.keySet=function(){return n(g)},a.keys=function(){return r(g)},a.destroy=function(e){g[e]&&(g[e].destroy(),delete g[e])},a.destroyAll=function(){for(var e in g)g[e].destroy();g={}},a.clearAll=function(){for(var e in g)g[e].removeAll()},a.removeExpiredFromAll=function(){var e={};for(var t in g)e[t]=g[t].removeExpired();return e},a.enableAll=function(){for(var e in g)g[e].$$disabled=!1},a.disableAll=function(){for(var e in g)g[e].$$disabled=!0},a.touchAll=function(){for(var e in g)g[e].touch()},a.utils=d,a.BinaryHeap=t,a.utils.equals=e.equals,a.utils.isObject=e.isObject,a.utils.fromJson=e.fromJson,e.module("angular-cache",[]).provider("BinaryHeap",c).provider("CacheFactory",l);var y="angular-cache";return y});
-//# sourceMappingURL=angular-cache.min.map \ No newline at end of file
diff --git a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.map b/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.map
deleted file mode 100644
index cba11d79..00000000
--- a/ecomp-portal-FE/client/bower_components/angular-cache/dist/angular-cache.min.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["dist/angular-cache.js"],"names":["global","factory","exports","module","angular","require","define","amd","angularCacheModuleName","this","BinaryHeap","weightFunc","compareFunc","x","y","Error","heap","_keys","collection","keys","key","utils","isObject","hasOwnProperty","push","_isPromiseLike","value","then","_stringifyNumber","number","isNumber","toString","_keySet","keySet","createCache","cacheId","options","caches","isString","$$data","$$promises","$$storage","$$expiresHeap","expires","equals","$$lruHeap","accessed","cache","$$id","destroy","clearInterval","$$cacheFlushIntervalId","$$recycleFreqId","removeAll","removeItem","$$prefix","disable","$$disabled","enable","get","_this2","Array","isArray","_ret","values","forEach","undefined","v","babelHelpers","onExpire","isFunction","item","itemJson","getItem","fromJson","now","Date","getTime","remove","$$deleteOnExpire","$$onExpire","call","setItem","JSON","stringify","info","created","isExpired","maxAge","$$maxAge","id","capacity","$$capacity","deleteOnExpire","cacheFlushInterval","$$cacheFlushInterval","recycleFreq","$$recycleFreq","storageMode","$$storageMode","storageImpl","disabled","size","keysJson","kSet","i","length","put","_this3","storeOnResolve","$$storeOnResolve","storeOnReject","$$storeOnReject","getHandler","store","isError","status","data","headers","statusText","Promise","reject","exists","peek","index","indexOf","splice","removeExpired","expired","expiredItem","pop","setCacheFlushInterval","_this","setInterval","setCapacity","removed","setDeleteOnExpire","setRecycleFreq","setMaxAge","Number","MAX_VALUE","setOnExpire","setOptions","cacheOptions","strict","$$storagePrefix","storagePrefix","defaults","setStorageMode","self","load","prevStorage","prevData","_key","prevDataIsObject","items","shouldReInsert","$$initializing","localStorage","e","sessionStorage","touch","_this4","val","k","CacheFactory","BinaryHeapProvider","$get","CacheFactoryProvider","$q","Symbol","iterator","obj","constructor","bubbleUp","n","element","weight","parentN","Math","floor","parent","bubbleDown","node","nodeWeight","child2N","child1N","swap","child1","child1Weight","child2","child2Weight","BHProto","prototype","front","end","_Promise","window","parse","a","b","opt","destroyAll","clearAll","removeExpiredFromAll","enableAll","disableAll","touchAll","provider"],"mappings":"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","file":"dist/angular-cache.min.js"} \ No newline at end of file