diff --git a/src/core/components/parameter-include-empty.jsx b/src/core/components/parameter-include-empty.jsx
index ef56663f..9e90df30 100644
--- a/src/core/components/parameter-include-empty.jsx
+++ b/src/core/components/parameter-include-empty.jsx
@@ -1,19 +1,24 @@
import React from "react"
import cx from "classnames"
import PropTypes from "prop-types"
+import ImPropTypes from "react-immutable-proptypes"
-export const ParameterIncludeEmpty = ({ isIncluded, onChange, isDisabled }) => {
+export const ParameterIncludeEmpty = ({ param, isIncluded, onChange, isDisabled }) => {
const onCheckboxChange = e => {
onChange(e.target.checked)
}
- return
+
}
ParameterIncludeEmpty.propTypes = {
+ param: ImPropTypes.map.isRequired,
isIncluded: PropTypes.bool.isRequired,
isDisabled: PropTypes.bool.isRequired,
onChange: PropTypes.func.isRequired,
diff --git a/src/core/components/parameter-row.jsx b/src/core/components/parameter-row.jsx
index 9c49dedb..12db1f67 100644
--- a/src/core/components/parameter-row.jsx
+++ b/src/core/components/parameter-row.jsx
@@ -3,7 +3,7 @@ import { Map, List } from "immutable"
import PropTypes from "prop-types"
import ImPropTypes from "react-immutable-proptypes"
import win from "core/window"
-import { getSampleSchema, getExtensions, getCommonExtensions, numberToString, stringify, isEmptyValue } from "core/utils"
+import { getSampleSchema, getExtensions, getCommonExtensions, numberToString, stringify } from "core/utils"
import getParameterSchema from "../../helpers/get-parameter-schema.js"
export default class ParameterRow extends Component {
@@ -343,11 +343,12 @@ export default class ParameterRow extends Component {
}
{
- !bodyParam && isExecute && param.get("allowEmptyValue") ?
+ !bodyParam && isExecute ?
+ isDisabled={value && value.size !== 0}
+ param={param} />
: null
}
diff --git a/src/core/components/parameters/parameters.jsx b/src/core/components/parameters/parameters.jsx
index 0f574b32..630d25ec 100644
--- a/src/core/components/parameters/parameters.jsx
+++ b/src/core/components/parameters/parameters.jsx
@@ -196,7 +196,6 @@ export default class Parameters extends Component {
specPath={specPath.slice(0, -1).push("requestBody")}
requestBody={requestBody}
requestBodyValue={oas3Selectors.requestBodyValue(...pathMethod)}
- requestBodyInclusionSetting={oas3Selectors.requestBodyInclusionSetting(...pathMethod)}
isExecute={isExecute}
activeExamplesKey={oas3Selectors.activeExamplesMember(
...pathMethod,
@@ -223,13 +222,6 @@ export default class Parameters extends Component {
}
oas3Actions.setRequestBodyValue({ value, pathMethod })
}}
- onChangeIncludeEmpty={(name, value) => {
- oas3Actions.setRequestBodyInclusion({
- pathMethod,
- value,
- name,
- })
- }}
contentType={oas3Selectors.requestContentType(...pathMethod)}/>
diff --git a/src/core/plugins/oas3/actions.js b/src/core/plugins/oas3/actions.js
index 0736489a..0985c784 100644
--- a/src/core/plugins/oas3/actions.js
+++ b/src/core/plugins/oas3/actions.js
@@ -3,7 +3,6 @@
export const UPDATE_SELECTED_SERVER = "oas3_set_servers"
export const UPDATE_REQUEST_BODY_VALUE = "oas3_set_request_body_value"
-export const UPDATE_REQUEST_BODY_INCLUSION = "oas3_set_request_body_inclusion"
export const UPDATE_ACTIVE_EXAMPLES_MEMBER = "oas3_set_active_examples_member"
export const UPDATE_REQUEST_CONTENT_TYPE = "oas3_set_request_content_type"
export const UPDATE_RESPONSE_CONTENT_TYPE = "oas3_set_response_content_type"
@@ -23,13 +22,6 @@ export function setRequestBodyValue ({ value, pathMethod }) {
}
}
-export function setRequestBodyInclusion ({ value, pathMethod, name }) {
- return {
- type: UPDATE_REQUEST_BODY_INCLUSION,
- payload: { value, pathMethod, name }
- }
-}
-
export function setActiveExamplesMember ({ name, pathMethod, contextType, contextName }) {
return {
type: UPDATE_ACTIVE_EXAMPLES_MEMBER,
diff --git a/src/core/plugins/oas3/components/request-body.jsx b/src/core/plugins/oas3/components/request-body.jsx
index b21acc4c..e6ca86da 100644
--- a/src/core/plugins/oas3/components/request-body.jsx
+++ b/src/core/plugins/oas3/components/request-body.jsx
@@ -2,7 +2,7 @@ import React from "react"
import PropTypes from "prop-types"
import ImPropTypes from "react-immutable-proptypes"
import { Map, OrderedMap, List } from "immutable"
-import { getCommonExtensions, getSampleSchema, stringify, isEmptyValue } from "core/utils"
+import { getCommonExtensions, getSampleSchema, stringify } from "core/utils"
function getDefaultRequestBodyValue(requestBody, mediaType, activeExamplesKey) {
let mediaTypeValue = requestBody.getIn(["content", mediaType])
@@ -37,7 +37,6 @@ function getDefaultRequestBodyValue(requestBody, mediaType, activeExamplesKey) {
const RequestBody = ({
requestBody,
requestBodyValue,
- requestBodyInclusionSetting,
getComponent,
getConfigs,
specSelectors,
@@ -46,7 +45,6 @@ const RequestBody = ({
isExecute,
specPath,
onChange,
- onChangeIncludeEmpty,
activeExamplesKey,
updateActiveExamplesKey,
}) => {
@@ -60,7 +58,6 @@ const RequestBody = ({
const HighlightCode = getComponent("highlightCode")
const ExamplesSelectValueRetainer = getComponent("ExamplesSelectValueRetainer")
const Example = getComponent("Example")
- const ParameterIncludeEmpty = getComponent("ParameterIncludeEmpty")
const { showCommonExtensions } = getConfigs()
@@ -158,26 +155,17 @@ const RequestBody = ({
- {isExecute ?
- {
- onChange(value, [key])
- }}
- />
- {required ? null : (
- onChangeIncludeEmpty(key, value)}
- isIncluded={requestBodyInclusionSetting.get(key)}
- isDisabled={!isEmptyValue(currentValue)}
- />
- )}
- : null }
+ {isExecute ? {
+ onChange(value, [key])
+ }}
+ /> : null }
|
})
@@ -255,7 +243,6 @@ const RequestBody = ({
RequestBody.propTypes = {
requestBody: ImPropTypes.orderedMap.isRequired,
requestBodyValue: ImPropTypes.orderedMap.isRequired,
- requestBodyInclusionSetting: ImPropTypes.Map.isRequired,
getComponent: PropTypes.func.isRequired,
getConfigs: PropTypes.func.isRequired,
fn: PropTypes.object.isRequired,
@@ -263,7 +250,6 @@ RequestBody.propTypes = {
contentType: PropTypes.string,
isExecute: PropTypes.bool.isRequired,
onChange: PropTypes.func.isRequired,
- onChangeIncludeEmpty: PropTypes.func.isRequired,
specPath: PropTypes.array.isRequired,
activeExamplesKey: PropTypes.string,
updateActiveExamplesKey: PropTypes.func,
diff --git a/src/core/plugins/oas3/reducers.js b/src/core/plugins/oas3/reducers.js
index d9916a2e..c37b637a 100644
--- a/src/core/plugins/oas3/reducers.js
+++ b/src/core/plugins/oas3/reducers.js
@@ -1,7 +1,6 @@
import {
UPDATE_SELECTED_SERVER,
UPDATE_REQUEST_BODY_VALUE,
- UPDATE_REQUEST_BODY_INCLUSION,
UPDATE_ACTIVE_EXAMPLES_MEMBER,
UPDATE_REQUEST_CONTENT_TYPE,
UPDATE_SERVER_VARIABLE_VALUE,
@@ -17,10 +16,6 @@ export default {
let [path, method] = pathMethod
return state.setIn( [ "requestData", path, method, "bodyValue" ], value)
},
- [UPDATE_REQUEST_BODY_INCLUSION]: (state, { payload: { value, pathMethod, name } } ) =>{
- let [path, method] = pathMethod
- return state.setIn( [ "requestData", path, method, "bodyInclusion", name ], value)
- },
[UPDATE_ACTIVE_EXAMPLES_MEMBER]: (state, { payload: { name, pathMethod, contextType, contextName } } ) =>{
let [path, method] = pathMethod
return state.setIn( [ "examples", path, method, contextType, contextName, "activeExample" ], name)
diff --git a/src/core/plugins/oas3/selectors.js b/src/core/plugins/oas3/selectors.js
index 1bdc5589..432831e2 100644
--- a/src/core/plugins/oas3/selectors.js
+++ b/src/core/plugins/oas3/selectors.js
@@ -1,4 +1,4 @@
-import { OrderedMap, Map } from "immutable"
+import { OrderedMap } from "immutable"
import { isOAS3 as isOAS3Helper } from "./helpers"
@@ -26,11 +26,6 @@ export const requestBodyValue = onlyOAS3((state, path, method) => {
}
)
-export const requestBodyInclusionSetting = onlyOAS3((state, path, method) => {
- return state.getIn(["requestData", path, method, "bodyInclusion"]) || Map()
- }
-)
-
export const activeExamplesMember = onlyOAS3((state, path, method, type, name) => {
return state.getIn(["examples", path, method, type, name, "activeExample"]) || null
}
diff --git a/src/core/plugins/spec/actions.js b/src/core/plugins/spec/actions.js
index bd88db44..b9814e5a 100644
--- a/src/core/plugins/spec/actions.js
+++ b/src/core/plugins/spec/actions.js
@@ -5,7 +5,7 @@ import serializeError from "serialize-error"
import isString from "lodash/isString"
import debounce from "lodash/debounce"
import set from "lodash/set"
-import { isJSONObject, paramToValue, isEmptyValue } from "core/utils"
+import { isJSONObject, paramToValue } from "core/utils"
// Actions conform to FSA (flux-standard-actions)
// {type: string,payload: Any|Error, meta: obj, error: bool}
@@ -401,12 +401,11 @@ export const executeRequest = (req) =>
req.requestContentType = oas3Selectors.requestContentType(pathName, method)
req.responseContentType = oas3Selectors.responseContentType(pathName, method) || "*/*"
const requestBody = oas3Selectors.requestBodyValue(pathName, method)
- const requestBodyInclusionSetting = oas3Selectors.requestBodyInclusionSetting(pathName, method)
if(isJSONObject(requestBody)) {
req.requestBody = JSON.parse(requestBody)
} else if(requestBody && requestBody.toJS) {
- req.requestBody = requestBody.filter((value, key) => !isEmptyValue(value) || requestBodyInclusionSetting.get(key)).toJS()
+ req.requestBody = requestBody.toJS()
} else{
req.requestBody = requestBody
}
diff --git a/src/core/utils.js b/src/core/utils.js
index f83f433b..407efcca 100644
--- a/src/core/utils.js
+++ b/src/core/utils.js
@@ -956,15 +956,3 @@ function b64toB64UrlEncoded(str) {
.replace(/\//g, "_")
.replace(/=/g, "")
}
-
-export const isEmptyValue = (value) => {
- if (!value) {
- return true
- }
-
- if (isImmutable(value) && value.isEmpty()) {
- return true
- }
-
- return false
-}
diff --git a/src/style/_table.scss b/src/style/_table.scss
index c155a681..dde30937 100644
--- a/src/style/_table.scss
+++ b/src/style/_table.scss
@@ -157,7 +157,6 @@ table
}
.parameter__empty_value_toggle {
- display: block;
font-size: 13px;
padding-top: 5px;
padding-bottom: 12px;