From 2dacb9bd185db2c05de435d2bd446865e158e483 Mon Sep 17 00:00:00 2001 From: sebdet Date: Wed, 17 Jul 2019 13:48:44 +0200 Subject: Draft of Config policy Initial code of the config policy window using the Json Editor version from NPM Issue-ID: CLAMP-426 Change-Id: I4ff3e63c463320706031c703afa22417b321faa3 Signed-off-by: sebdet --- .../ConfigurationPolicyModal.js | 43 +++++++++++++++++----- .../components/dialogs/OpenLoop/OpenLoopModal.js | 2 +- ui-react/src/components/loop_viewer/svg/LoopSvg.js | 4 -- ui-react/src/components/menu/MenuBar.js | 2 +- 4 files changed, 36 insertions(+), 15 deletions(-) (limited to 'ui-react/src/components') diff --git a/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js b/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js index 1a8b6e2c5..453ca6bb4 100644 --- a/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js +++ b/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js @@ -24,24 +24,26 @@ import React from 'react' import Button from 'react-bootstrap/Button'; import Modal from 'react-bootstrap/Modal'; -import { LOOP_CACHE } from '../../../api/LoopCache' import styled from 'styled-components'; +import JSONEditor from '@json-editor/json-editor'; + const ModalStyled = styled(Modal)` background-color: transparent; ` export default class ConfigurationPolicyModal extends React.Component { + state = { + show: true, + loopCache: this.props.loopCache, + jsonEditor: null, + }; + constructor(props, context) { super(props, context); - this.handleClose = this.handleClose.bind(this); - - this.state = { - show: true, - }; - + this.renderJsonEditor = this.renderJsonEditor.bind(this); } handleClose() { @@ -49,7 +51,31 @@ export default class ConfigurationPolicyModal extends React.Component { this.props.history.push('/') } + componentDidMount() { + this.renderJsonEditor(); + } + + renderJsonEditor() { + var toscaModel = this.state.loopCache.getMicroServiceJsonRepresentationForType("TCA_Jbv1z_v1_0_ResourceInstanceName1_tca"); + if (toscaModel == null) { + return; + } + var editorData = this.state.loopCache.getMicroServiceProperties("TCA_Jbv1z_v1_0_ResourceInstanceName1_tca"); + + JSONEditor.defaults.options.theme = 'bootstrap4'; + //JSONEditor.defaults.options.iconlib = 'bootstrap2'; + JSONEditor.defaults.options.object_layout = 'grid'; + JSONEditor.defaults.options.disable_properties = true; + JSONEditor.defaults.options.disable_edit_json = false; + JSONEditor.defaults.options.disable_array_reorder = true; + JSONEditor.defaults.options.disable_array_delete_last_row = true; + JSONEditor.defaults.options.disable_array_delete_all_rows = false; + JSONEditor.defaults.options.show_errors = 'always'; + + this.state.jsonEditor = new JSONEditor(document.getElementById("editor"), + { schema: toscaModel.schema, startval: editorData }); + } render() { return ( @@ -58,8 +84,7 @@ export default class ConfigurationPolicyModal extends React.Component { Configuration policies - - +
diff --git a/ui-react/src/components/dialogs/OpenLoop/OpenLoopModal.js b/ui-react/src/components/dialogs/OpenLoop/OpenLoopModal.js index 6986209d4..f3bdeb683 100644 --- a/ui-react/src/components/dialogs/OpenLoop/OpenLoopModal.js +++ b/ui-react/src/components/dialogs/OpenLoop/OpenLoopModal.js @@ -54,7 +54,7 @@ export default class OpenLoopModal extends React.Component { }; } - componentDidMount() { + componentWillMount() { this.getLoopNames(); } diff --git a/ui-react/src/components/loop_viewer/svg/LoopSvg.js b/ui-react/src/components/loop_viewer/svg/LoopSvg.js index 2858ccd8a..44356c1c0 100644 --- a/ui-react/src/components/loop_viewer/svg/LoopSvg.js +++ b/ui-react/src/components/loop_viewer/svg/LoopSvg.js @@ -61,10 +61,6 @@ class LoopViewSvg extends React.Component { this.getSvg(); } - componentDidMount() { - this.getSvg(); - } - getSvg() { LoopService.getSvg(this.state.loopCache.getLoopName()).then(svgXml => { if (svgXml.length != 0) { diff --git a/ui-react/src/components/menu/MenuBar.js b/ui-react/src/components/menu/MenuBar.js index 1a7c5d4e4..64aa6bc83 100644 --- a/ui-react/src/components/menu/MenuBar.js +++ b/ui-react/src/components/menu/MenuBar.js @@ -42,7 +42,7 @@ export default class MenuBar extends React.Component { Open CL Properties CL - Close Model + Close Model Submit -- cgit 1.2.3-korg