Merge pull request #3346 from owenconti/bug/3271-fix-trim-with-non-json-parameters

Fixes #3271 - Trimming parameter values
This commit is contained in:
shockey
2017-07-07 15:35:08 -07:00
committed by GitHub

View File

@@ -49,10 +49,11 @@ export default class ParamBody extends PureComponent {
let { specSelectors, pathMethod, param, isExecute, consumesValue="" } = props let { specSelectors, pathMethod, param, isExecute, consumesValue="" } = props
let parameter = specSelectors ? specSelectors.getParameter(pathMethod, param.get("name")) : {} let parameter = specSelectors ? specSelectors.getParameter(pathMethod, param.get("name")) : {}
let isXml = /xml/i.test(consumesValue) let isXml = /xml/i.test(consumesValue)
let isJson = /json/i.test(consumesValue)
let paramValue = isXml ? parameter.get("value_xml") : parameter.get("value") let paramValue = isXml ? parameter.get("value_xml") : parameter.get("value")
if ( paramValue !== undefined ) { if ( paramValue !== undefined ) {
let val = !paramValue && !isXml ? "{}" : paramValue let val = !paramValue && isJson ? "{}" : paramValue
this.setState({ value: val }) this.setState({ value: val })
this.onChange(val, {isXml: isXml, isEditBox: isExecute}) this.onChange(val, {isXml: isXml, isEditBox: isExecute})
} else { } else {
@@ -79,8 +80,11 @@ export default class ParamBody extends PureComponent {
_onChange = (val, isXml) => { (this.props.onChange || NOOP)(this.props.param, val, isXml) } _onChange = (val, isXml) => { (this.props.onChange || NOOP)(this.props.param, val, isXml) }
handleOnChange = e => { handleOnChange = e => {
let {consumesValue} = this.props const {consumesValue} = this.props
this.onChange(e.target.value.trim(), {isXml: /xml/i.test(consumesValue)}) const isJson = /json/i.test(consumesValue)
const isXml = /xml/i.test(consumesValue)
const inputValue = isJson ? e.target.value.trim() : e.target.value
this.onChange(inputValue, {isXml})
} }
toggleIsEditBox = () => this.setState( state => ({isEditBox: !state.isEditBox})) toggleIsEditBox = () => this.setState( state => ({isEditBox: !state.isEditBox}))