X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Fcomposer%2Fsrc%2Fsrc%2Fcomponents%2FComposerApp.js;h=861c38be03d6fa01d809d7af5a1102c4743250e2;hp=9e6daa4b4bbe2b45ca556a46d2a6085b0e9daa15;hb=refs%2Fheads%2Fpkg_mgmt;hpb=e29efc315df33d546237e270470916e26df391d6 diff --git a/skyquake/plugins/composer/src/src/components/ComposerApp.js b/skyquake/plugins/composer/src/src/components/ComposerApp.js index 9e6daa4b4..861c38be0 100644 --- a/skyquake/plugins/composer/src/src/components/ComposerApp.js +++ b/skyquake/plugins/composer/src/src/components/ComposerApp.js @@ -1,5 +1,5 @@ /* - * + * * Copyright 2016 RIFT.IO Inc * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -47,11 +47,12 @@ import CatalogDataStore from '../stores/CatalogDataStore' import TooltipManager from '../libraries/TooltipManager' import CatalogItemsActions from '../actions/CatalogItemsActions' import CommonUtils from 'utils/utils.js' - +import FileManagerActions from './filemanager/FileManagerActions'; import 'normalize.css' import '../styles/AppRoot.scss' import 'style/layout.scss' + const resizeManager = new ResizableManager(window); const clearLocalStorage = utils.getSearchParams(window.location).hasOwnProperty('clearLocalStorage'); @@ -59,6 +60,7 @@ const clearLocalStorage = utils.getSearchParams(window.location).hasOwnProperty( const preventDefault = e => e.preventDefault(); const clearDragState = () => ComposerAppActions.setDragState(null); + const ComposerApp = React.createClass({ mixins: [PureRenderMixin], getInitialState() { @@ -71,6 +73,9 @@ const ComposerApp = React.createClass({ if (clearLocalStorage) { window.localStorage.clear(); } + if(this.item) { + FileManagerActions.openFileManagerSockets(); + } this.state.isLoading = CatalogDataStore.getState().isLoading; ComposerAppStore.listen(this.onChange); CatalogDataStore.listen(this.onCatalogDataChanged); @@ -88,6 +93,7 @@ const ComposerApp = React.createClass({ window.removeEventListener('dragover', preventDefault); window.removeEventListener('drop', preventDefault); window.removeEventListener('drop', clearDragState); + FileManagerActions.closeFileManagerSockets(); // resizeManager automatically registered its event handlers resizeManager.removeAllEventListeners(); ComposerAppStore.unlisten(this.onChange); @@ -157,7 +163,7 @@ const ComposerApp = React.createClass({ } } - let cpNumber = 0; + let AppHeader = (
); @@ -168,24 +174,22 @@ const ComposerApp = React.createClass({ const isModified = self.state.item && self.state.item.uiState.modified; const isEditingNSD = self.state.item && self.state.item.uiState && /nsd/.test(self.state.item.uiState.type); const isEditingVNFD = self.state.item && self.state.item.uiState && /vnfd/.test(self.state.item.uiState.type); - const containers = [self.state.item].reduce(DescriptorModelFactory.buildCatalogItemFactory(CatalogDataStore.getState().catalogs), []); - - containers.filter(d => DescriptorModelFactory.isConnectionPoint(d)).forEach(d => { - d.cpNumber = ++cpNumber; - containers.filter(d => DescriptorModelFactory.isVnfdConnectionPointRef(d)).filter(ref => ref.key === d.key).forEach(ref => ref.cpNumber = d.cpNumber); - }); + const containers = self.state.containers; const canvasTitle = containers.length ? containers[0].model.name : ''; const hasNoCatalogs = CatalogDataStore.getState().catalogs.length === 0; const isLoading = self.state.isLoading; + //Bridge element for Crouton fix. Should eventually put Composer on same flux context + const Bridge = this.state.ComponentBridgeElement; + html = (
+ {AppHeader} -
- + { + (self.state.panelTabShown == 'descriptor') ? + + : null + } + event.stopPropagation()}/> + onClick={event => event.stopPropagation()} + panelTabShown={self.state.panelTabShown}/>