'use strict'; /* *+------------------------------------------------------------------------+ *| Licensed Materials - Property of IBM *| IBM Cognos Products: Dashboard *| (C) Copyright IBM Corp. 2018 *| *| US Government Users Restricted Rights - Use, duplication or disclosure *| restricted by GSA ADP Schedule Contract with IBM Corp. *+------------------------------------------------------------------------+ */ define(['./BaseTask', 'dashboard-analytics/visualizations/vipr/VIPRUtils'], function (BaseTask, VIPRUtils) { 'use strict'; var KeyDriversTask = BaseTask.extend({ process: function process(renderContext) { var _this = this; if (this._isStepComplete(renderContext, 'keyDrivers')) { return Promise.resolve(renderContext); } else { return this._getPossibleDrivers(renderContext).then(function (keyDrivers) { _this._completeStep(renderContext, 'keyDrivers', keyDrivers); return renderContext; }).catch(function () { return renderContext; }); } }, _getPossibleDrivers: function _getPossibleDrivers(renderContext) { var visualization = this.content.getFeature('Visualization'); // Only enable this step for viz types with 'supportsPossibleKeyDrivers=true'. if (visualization.getSlots().isMappingComplete() && VIPRUtils.doesConfigPropertyMatchExpected(visualization.getDefinition().getId(), 'supportsPossibleKeyDrivers', true)) { return this.visAPI.whenPossibleKeyDriversAreReady(renderContext, this._getTargetId()); } else { return Promise.resolve([]); } }, _getTargetId: function _getTargetId() { // We are assuming only one slot and only one data item for that slot. var visualization = this.content.getFeature('Visualization'); return visualization.getSlots().getMappedSlotList()[0].getDataItemList()[0].getColumnId(); } }); return KeyDriversTask; }); //# sourceMappingURL=KeyDriversTask.js.map