X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Fcomposer%2Fsrc%2Fsrc%2Fstores%2FComposerAppStore.js;h=b23db5c06ef1d19c10d7acb772a543c203121874;hp=97813ea02a36e7383dd0d6c9953324c9c444d194;hb=4ef8c40c2c013c21f5487330daeab2561ba25fb3;hpb=7f02fe01671d62e6c3c9a523cf0d21b251960365 diff --git a/skyquake/plugins/composer/src/src/stores/ComposerAppStore.js b/skyquake/plugins/composer/src/src/stores/ComposerAppStore.js index 97813ea02..b23db5c06 100644 --- a/skyquake/plugins/composer/src/src/stores/ComposerAppStore.js +++ b/skyquake/plugins/composer/src/src/stores/ComposerAppStore.js @@ -18,7 +18,14 @@ */ 'use strict'; -import _ from 'lodash' +import _isNumber from 'lodash/isNumber' +import _cloneDeep from 'lodash/cloneDeep' +import _isEmpty from 'lodash/isEmpty' +import _mergeWith from 'lodash/mergeWith' +import _uniqBy from 'lodash/uniqBy' +import _isEqual from 'lodash/isEqual' +import _findIndex from 'lodash/findIndex' +import _remove from 'lodash/remove' import d3 from 'd3' import alt from '../alt' import UID from '../libraries/UniqueId' @@ -56,7 +63,7 @@ class ComponentBridge extends React.Component { const getDefault = (name, defaultValue) => { const val = window.localStorage.getItem('defaults-' + name); if (val) { - if (_.isNumber(val)) { + if (_isNumber(val)) { if (val < 0) { return setDefault(name, 0); } @@ -218,7 +225,7 @@ class ComposerAppStore { d.cpNumber = ++cpNumber; containers.filter(d => DescriptorModelFactory.isVnfdConnectionPointRef(d)).filter(ref => ref.key === d.key).forEach(ref => ref.cpNumber = d.cpNumber); }); - this.setState({containers: containers, item: _.cloneDeep(item)}); + this.setState({containers: containers, item: _cloneDeep(item)}); } SelectionManager.refreshOutline(); } @@ -267,7 +274,7 @@ class ComposerAppStore { applyDefaultLayout() { if (this.item && this.item.uiState && this.item.uiState.containerPositionMap) { - if (!_.isEmpty(this.item.uiState.containerPositionMap)) { + if (!_isEmpty(this.item.uiState.containerPositionMap)) { this.item.uiState.containerPositionMap = {}; CatalogItemsActions.catalogItemMetaDataChanged.defer(this.item); } @@ -410,7 +417,7 @@ class ComposerAppStore { if (isFullScreen()) { const layout = comp.layout; - const restoreLayout = _.cloneDeep(layout); + const restoreLayout = _cloneDeep(layout); uiTransientState.restoreLayout = restoreLayout; layout.left = 0; layout.right = 0; @@ -475,13 +482,12 @@ class ComposerAppStore { if (self.fileMonitoringSocketID) { let newState = {}; if(data.hasOwnProperty('contents')) { - filesState = addInputState( _.cloneDeep(this.filesState),data); - // filesState = _.merge(self.filesState, addInputState({},data)); + filesState = addInputState( _cloneDeep(this.filesState),data); let normalizedData = normalizeTree(data); newState = { files: { - data: _.mergeWith(normalizedData.data, self.files.data, function(obj, src) { - return _.uniqBy(obj? obj.concat(src) : src, 'name'); + data: _mergeWith(normalizedData.data, self.files.data, function(obj, src) { + return _uniqBy(obj? obj.concat(src) : src, 'name'); }), id: normalizedData.id }, @@ -492,7 +498,7 @@ class ComposerAppStore { files: false } } - if(!_.isEqual(newState.files, this.files) || ! _.isEqual(newState.fileState, this.fileState)) { + if(!_isEqual(newState.files, this.files) || ! _isEqual(newState.fileState, this.fileState)) { this.setState(newState); } @@ -540,7 +546,7 @@ class ComposerAppStore { updateFileLocationInput = (data) => { let name = data.name; let value = data.value; - var filesState = _.cloneDeep(this.filesState); + var filesState = _cloneDeep(this.filesState); filesState[name] = value; this.setState({ filesState: filesState @@ -550,7 +556,7 @@ class ComposerAppStore { if(!data.refresh) { let path = data.path; let fileName = data.fileName; - let files = _.cloneDeep(this.files); + let files = _cloneDeep(this.files); let loadingIndex = files.data[path].push({ status: 'DOWNLOADING', name: path + '/' + fileName @@ -568,7 +574,7 @@ class ComposerAppStore { openDownloadMonitoringSocketSuccess = (id) => { let self = this; let ws = window.multiplexer.channel(id); - let downloadJobs = _.cloneDeep(self.downloadJobs); + let downloadJobs = _cloneDeep(self.downloadJobs); let newFiles = false; ws.onmessage = (socket) => { if (self.files && self.files.length > 0) { @@ -576,14 +582,14 @@ class ComposerAppStore { try { jobs = JSON.parse(socket.data); } catch(e) {} - newFiles = _.cloneDeep(self.files); + newFiles = _cloneDeep(self.files); jobs.map(function(j) { //check if not in completed state let fullPath = j['package-path']; let path = fullPath.split('/'); let fileName = path.pop(); path = path.join('/'); - let index = _.findIndex(self.files.data[path], function(o){ + let index = _findIndex(self.files.data[path], function(o){ return fullPath == o.name }); if((index > -1) && newFiles.data[path][index]) { @@ -661,11 +667,11 @@ class ComposerAppStore { } deleteFileSuccess = (data) => { let path = data.path.split('/') - let files = _.cloneDeep(this.files); + let files = _cloneDeep(this.files); path.pop(); path = path.join('/'); let pathFiles = files.data[path] - _.remove(pathFiles, function(c) { + _remove(pathFiles, function(c) { return c.name == data.path; });