| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 | 
							- 'use strict';
 
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
- /**
 
-  * Licensed Materials - Property of IBM
 
-  * IBM Cognos Products: BI Cloud (C) Copyright IBM Corp. 2019
 
-  * US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
 
-  */
 
- define(['../../../lib/@waca/dashboard-common/dist/core/APIFactory', './api/SlotActionsAPI', 'underscore'], function (APIFactory, SlotActionsAPI, _) {
 
- 	var SlotActions = function () {
 
- 		function SlotActions() {
 
- 			_classCallCheck(this, SlotActions);
 
- 			this.api = APIFactory.createAPI(this, [SlotActionsAPI]);
 
- 			this.providers = [];
 
- 		}
 
- 		SlotActions.prototype.registerProvider = function registerProvider(name, provider) {
 
- 			this.providers[name] = provider;
 
- 		};
 
- 		SlotActions.prototype.getSlotActionList = function getSlotActionList(dataSlotId, itemIndex, options) {
 
- 			var actionOptions = options && options.actionOptions || {};
 
- 			var actionsToKeep = options && options.actionsToKeep || [];
 
- 			var actions = [];
 
- 			for (var actionName in this.providers) {
 
- 				var feature = this.providers[actionName];
 
- 				if (feature.getSlotActionList) {
 
- 					var slotAction = null;
 
- 					try {
 
- 						slotAction = feature.getSlotActionList(dataSlotId, itemIndex, actionOptions[actionName]);
 
- 					} catch (e) {
 
- 						console.log(e);
 
- 					}
 
- 					if (!_.isEmpty(slotAction)) {
 
- 						var _actions;
 
- 						(_actions = actions).push.apply(_actions, slotAction);
 
- 					}
 
- 				}
 
- 			}
 
- 			// Filter actions if needed
 
- 			if (actionsToKeep.length) {
 
- 				actions = actions.filter(function (action) {
 
- 					// TODO We need to check all three of them for now because of some inconsistencies we have in our code.
 
- 					// New API's should use *name* to identify an action.
 
- 					return _.contains(actionsToKeep, action.id || action.group || action.name) || action.name === 'delete';
 
- 				});
 
- 			}
 
- 			return actions;
 
- 		};
 
- 		SlotActions.prototype.getAPI = function getAPI() {
 
- 			return this.api;
 
- 		};
 
- 		return SlotActions;
 
- 	}();
 
- 	return SlotActions;
 
- });
 
- //# sourceMappingURL=SlotActions.js.map
 
 
  |