diff options
author | sebdet <sebastien.determe@intl.att.com> | 2019-07-17 13:48:44 +0200 |
---|---|---|
committer | sebdet <sebastien.determe@intl.att.com> | 2019-07-17 13:48:44 +0200 |
commit | 2dacb9bd185db2c05de435d2bd446865e158e483 (patch) | |
tree | 4f42564c670c8b8807cc4a50623abe5ea5fb03f9 /ui-react/src/components/dialogs/ConfigurationPolicy | |
parent | 493c3839fb6807512218165fd8a3a6efe1933fb9 (diff) |
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 <sebastien.determe@intl.att.com>
Diffstat (limited to 'ui-react/src/components/dialogs/ConfigurationPolicy')
-rw-r--r-- | ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js | 43 |
1 files changed, 34 insertions, 9 deletions
diff --git a/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js b/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js index 1a8b6e2c..453ca6bb 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 { <Modal.Title>Configuration policies</Modal.Title> </Modal.Header> <Modal.Body> - - + <div id="editor" /> </Modal.Body> <Modal.Footer> |