authActions.showDefinitions(authorizableDefinitions)}\n isAuthorized={!!authSelectors.authorized().size}\n showPopup={!!authSelectors.shownDefinitions()}\n getComponent={getComponent}\n />\n ) : null\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class AuthorizeOperationBtn extends React.Component {\n static propTypes = {\n isAuthorized: PropTypes.bool.isRequired,\n onClick: PropTypes.func\n }\n\n onClick =(e) => {\n e.stopPropagation()\n let { onClick } = this.props\n\n if(onClick) {\n onClick()\n }\n }\n\n render() {\n let { isAuthorized } = this.props\n\n return (\n \n \n \n \n \n\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class Auths extends React.Component {\n static propTypes = {\n definitions: ImPropTypes.iterable.isRequired,\n getComponent: PropTypes.func.isRequired,\n authSelectors: PropTypes.object.isRequired,\n authActions: PropTypes.object.isRequired,\n errSelectors: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired\n }\n\n constructor(props, context) {\n super(props, context)\n\n this.state = {}\n }\n\n onAuthChange =(auth) => {\n let { name } = auth\n\n this.setState({ [name]: auth })\n }\n\n submitAuth =(e) => {\n e.preventDefault()\n\n let { authActions } = this.props\n authActions.authorizeWithPersistOption(this.state)\n }\n\n logoutClick =(e) => {\n e.preventDefault()\n\n let { authActions, definitions } = this.props\n let auths = definitions.map( (val, key) => {\n return key\n }).toArray()\n\n this.setState(auths.reduce((prev, auth) => {\n prev[auth] = \"\"\n return prev\n }, {}))\n\n authActions.logoutWithPersistOption(auths)\n }\n\n close =(e) => {\n e.preventDefault()\n let { authActions } = this.props\n\n authActions.showDefinitions(false)\n }\n\n render() {\n let { definitions, getComponent, authSelectors, errSelectors } = this.props\n const AuthItem = getComponent(\"AuthItem\")\n const Oauth2 = getComponent(\"oauth2\", true)\n const Button = getComponent(\"Button\")\n\n let authorized = authSelectors.authorized()\n\n let authorizedAuth = definitions.filter( (definition, key) => {\n return !!authorized.get(key)\n })\n\n let nonOauthDefinitions = definitions.filter( schema => schema.get(\"type\") !== \"oauth2\")\n let oauthDefinitions = definitions.filter( schema => schema.get(\"type\") === \"oauth2\")\n\n return (\n \n {\n !!nonOauthDefinitions.size &&
\n }\n\n {\n oauthDefinitions && oauthDefinitions.size ?
\n
\n
Scopes are used to grant an application different levels of access to data on behalf of the end user. Each API may declare one or more scopes.
\n
API requires the following scopes. Select which ones you want to grant to Swagger UI.
\n
\n {\n definitions.filter( schema => schema.get(\"type\") === \"oauth2\")\n .map( (schema, name) =>{\n return (
\n \n
)\n }\n ).toArray()\n }\n
: null\n }\n\n
\n )\n }\n\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class Auths extends React.Component {\n static propTypes = {\n authorized: ImPropTypes.orderedMap.isRequired,\n schema: ImPropTypes.orderedMap.isRequired,\n name: PropTypes.string.isRequired,\n getComponent: PropTypes.func.isRequired,\n onAuthChange: PropTypes.func.isRequired,\n errSelectors: PropTypes.object.isRequired,\n }\n\n render() {\n let {\n schema,\n name,\n getComponent,\n onAuthChange,\n authorized,\n errSelectors\n } = this.props\n const ApiKeyAuth = getComponent(\"apiKeyAuth\")\n const BasicAuth = getComponent(\"basicAuth\")\n\n let authEl\n\n const type = schema.get(\"type\")\n\n switch(type) {\n case \"apiKey\": authEl = \n break\n case \"basic\": authEl = \n break\n default: authEl = Unknown security definition type { type }
\n }\n\n return (\n { authEl }\n
)\n }\n\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class AuthError extends React.Component {\n\n static propTypes = {\n error: PropTypes.object.isRequired\n }\n\n render() {\n let { error } = this.props\n\n let level = error.get(\"level\")\n let message = error.get(\"message\")\n let source = error.get(\"source\")\n\n return (\n \n { source } { level } \n { message } \n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class ApiKeyAuth extends React.Component {\n static propTypes = {\n authorized: PropTypes.object,\n getComponent: PropTypes.func.isRequired,\n errSelectors: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired,\n name: PropTypes.string.isRequired,\n onChange: PropTypes.func\n }\n\n constructor(props, context) {\n super(props, context)\n let { name, schema } = this.props\n let value = this.getValue()\n\n this.state = {\n name: name,\n schema: schema,\n value: value\n }\n }\n\n getValue () {\n let { name, authorized } = this.props\n\n return authorized && authorized.getIn([name, \"value\"])\n }\n\n onChange =(e) => {\n let { onChange } = this.props\n let value = e.target.value\n let newState = Object.assign({}, this.state, { value: value })\n\n this.setState(newState)\n onChange(newState)\n }\n\n render() {\n let { schema, getComponent, errSelectors, name } = this.props\n const Input = getComponent(\"Input\")\n const Row = getComponent(\"Row\")\n const Col = getComponent(\"Col\")\n const AuthError = getComponent(\"authError\")\n const Markdown = getComponent(\"Markdown\", true)\n const JumpToPath = getComponent(\"JumpToPath\", true)\n let value = this.getValue()\n let errors = errSelectors.allErrors().filter( err => err.get(\"authId\") === name)\n\n return (\n \n
\n { name || schema.get(\"name\") }
(apiKey)\n \n \n { value &&
Authorized }\n
\n \n
\n
\n Name: { schema.get(\"name\") }
\n
\n
\n In: { schema.get(\"in\") }
\n
\n
\n Value: \n {\n value ? ******
\n : \n }\n
\n {\n errors.valueSeq().map( (error, key) => {\n return
\n } )\n }\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class BasicAuth extends React.Component {\n static propTypes = {\n authorized: ImPropTypes.map,\n schema: ImPropTypes.map,\n getComponent: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n errSelectors: PropTypes.object.isRequired,\n }\n\n constructor(props, context) {\n super(props, context)\n let { schema, name } = this.props\n\n let value = this.getValue()\n let username = value.username\n\n this.state = {\n name: name,\n schema: schema,\n value: !username ? {} : {\n username: username\n }\n }\n }\n\n getValue () {\n let { authorized, name } = this.props\n\n return authorized && authorized.getIn([name, \"value\"]) || {}\n }\n\n onChange =(e) => {\n let { onChange } = this.props\n let { value, name } = e.target\n\n let newValue = this.state.value\n newValue[name] = value\n\n this.setState({ value: newValue })\n\n onChange(this.state)\n }\n\n render() {\n let { schema, getComponent, name, errSelectors } = this.props\n const Input = getComponent(\"Input\")\n const Row = getComponent(\"Row\")\n const Col = getComponent(\"Col\")\n const AuthError = getComponent(\"authError\")\n const JumpToPath = getComponent(\"JumpToPath\", true)\n const Markdown = getComponent(\"Markdown\", true)\n let username = this.getValue().username\n let errors = errSelectors.allErrors().filter( err => err.get(\"authId\") === name)\n\n return (\n \n
Basic authorization \n { username &&
Authorized }\n
\n \n
\n
\n Username: \n {\n username ? { username }
\n : \n }\n
\n
\n Password: \n {\n username ? ******
\n : \n }\n
\n {\n errors.valueSeq().map( (error, key) => {\n return
\n } )\n }\n
\n )\n }\n\n}\n","/**\n * @prettier\n */\n\nimport React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { stringify } from \"core/utils\"\n\nexport default function Example(props) {\n const { example, showValue, getComponent, getConfigs } = props\n\n const Markdown = getComponent(\"Markdown\", true)\n const HighlightCode = getComponent(\"highlightCode\")\n\n if(!example) return null\n\n return (\n \n {example.get(\"description\") ? (\n
\n Example Description
\n \n \n
\n \n ) : null}\n {showValue && example.has(\"value\") ? (\n
\n ) : null}\n
\n )\n}\n\nExample.propTypes = {\n example: ImPropTypes.map.isRequired,\n showValue: PropTypes.bool,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.getConfigs,\n}\n","/**\n * @prettier\n */\n\nimport React from \"react\"\nimport Im from \"immutable\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class ExamplesSelect extends React.PureComponent {\n static propTypes = {\n examples: ImPropTypes.map.isRequired,\n onSelect: PropTypes.func,\n currentExampleKey: PropTypes.string,\n isModifiedValueAvailable: PropTypes.bool,\n isValueModified: PropTypes.bool,\n showLabels: PropTypes.bool,\n }\n\n static defaultProps = {\n examples: Im.Map({}),\n onSelect: (...args) =>\n console.log( // eslint-disable-line no-console\n // FIXME: remove before merging to master...\n `DEBUG: ExamplesSelect was not given an onSelect callback`,\n ...args\n ),\n currentExampleKey: null,\n showLabels: true,\n }\n\n _onSelect = (key, { isSyntheticChange = false } = {}) => {\n if (typeof this.props.onSelect === \"function\") {\n this.props.onSelect(key, {\n isSyntheticChange,\n })\n }\n }\n\n _onDomSelect = e => {\n if (typeof this.props.onSelect === \"function\") {\n const element = e.target.selectedOptions[0]\n const key = element.getAttribute(\"value\")\n\n this._onSelect(key, {\n isSyntheticChange: false,\n })\n }\n }\n\n getCurrentExample = () => {\n const { examples, currentExampleKey } = this.props\n\n const currentExamplePerProps = examples.get(currentExampleKey)\n\n const firstExamplesKey = examples.keySeq().first()\n const firstExample = examples.get(firstExamplesKey)\n\n return currentExamplePerProps || firstExample || Map({})\n }\n\n componentDidMount() {\n // this is the not-so-great part of ExamplesSelect... here we're\n // artificially kicking off an onSelect event in order to set a default\n // value in state. the consumer has the option to avoid this by checking\n // `isSyntheticEvent`, but we should really be doing this in a selector.\n // TODO: clean this up\n // FIXME: should this only trigger if `currentExamplesKey` is nullish?\n const { onSelect, examples } = this.props\n\n if (typeof onSelect === \"function\") {\n const firstExample = examples.first()\n const firstExampleKey = examples.keyOf(firstExample)\n\n this._onSelect(firstExampleKey, {\n isSyntheticChange: true,\n })\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n const { currentExampleKey, examples } = nextProps\n if (examples !== this.props.examples && !examples.has(currentExampleKey)) {\n // examples have changed from under us, and the currentExampleKey is no longer\n // valid.\n const firstExample = examples.first()\n const firstExampleKey = examples.keyOf(firstExample)\n\n this._onSelect(firstExampleKey, {\n isSyntheticChange: true,\n })\n }\n }\n\n render() {\n const {\n examples,\n currentExampleKey,\n isValueModified,\n isModifiedValueAvailable,\n showLabels,\n } = this.props\n\n return (\n \n {\n showLabels ? (\n Examples: \n ) : null\n }\n \n {isModifiedValueAvailable ? (\n [Modified value] \n ) : null}\n {examples\n .map((example, exampleName) => {\n return (\n \n {example.get(\"summary\") || exampleName}\n \n )\n })\n .valueSeq()}\n \n
\n )\n }\n}\n","/**\n * @prettier\n */\nimport React from \"react\"\nimport { Map, List } from \"immutable\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nimport { stringify } from \"core/utils\"\n\n// This stateful component lets us avoid writing competing values (user\n// modifications vs example values) into global state, and the mess that comes\n// with that: tracking which of the two values are currently used for\n// Try-It-Out, which example a modified value came from, etc...\n//\n// The solution here is to retain the last user-modified value in\n// ExamplesSelectValueRetainer's component state, so that our global state can stay\n// clean, always simply being the source of truth for what value should be both\n// displayed to the user and used as a value during request execution.\n//\n// This approach/tradeoff was chosen in order to encapsulate the particular\n// logic of Examples within the Examples component tree, and to avoid\n// regressions within our current implementation elsewhere (non-Examples\n// definitions, OpenAPI 2.0, etc). A future refactor to global state might make\n// this component unnecessary.\n//\n// TL;DR: this is not our usual approach, but the choice was made consciously.\n\n// Note that `currentNamespace` isn't currently used anywhere!\n\nconst stringifyUnlessList = input =>\n List.isList(input) ? input : stringify(input)\n\nexport default class ExamplesSelectValueRetainer extends React.PureComponent {\n static propTypes = {\n examples: ImPropTypes.map,\n onSelect: PropTypes.func,\n updateValue: PropTypes.func, // mechanism to update upstream value\n userHasEditedBody: PropTypes.bool,\n getComponent: PropTypes.func.isRequired,\n currentUserInputValue: PropTypes.any,\n currentKey: PropTypes.string,\n currentNamespace: PropTypes.string,\n setRetainRequestBodyValueFlag: PropTypes.func.isRequired,\n // (also proxies props for Examples)\n }\n\n static defaultProps = {\n userHasEditedBody: false,\n examples: Map({}),\n currentNamespace: \"__DEFAULT__NAMESPACE__\",\n setRetainRequestBodyValueFlag: () => {\n // NOOP\n },\n onSelect: (...args) =>\n console.log( // eslint-disable-line no-console\n \"ExamplesSelectValueRetainer: no `onSelect` function was provided\",\n ...args\n ),\n updateValue: (...args) =>\n console.log( // eslint-disable-line no-console\n \"ExamplesSelectValueRetainer: no `updateValue` function was provided\",\n ...args\n ),\n }\n\n constructor(props) {\n super(props)\n\n const valueFromExample = this._getCurrentExampleValue()\n\n this.state = {\n // user edited: last value that came from the world around us, and didn't\n // match the current example's value\n // internal: last value that came from user selecting an Example\n [props.currentNamespace]: Map({\n lastUserEditedValue: this.props.currentUserInputValue,\n lastDownstreamValue: valueFromExample,\n isModifiedValueSelected:\n // valueFromExample !== undefined &&\n this.props.userHasEditedBody ||\n this.props.currentUserInputValue !== valueFromExample,\n }),\n }\n }\n\n componentWillUnmount() {\n this.props.setRetainRequestBodyValueFlag(false)\n }\n\n _getStateForCurrentNamespace = () => {\n const { currentNamespace } = this.props\n\n return (this.state[currentNamespace] || Map()).toObject()\n }\n\n _setStateForCurrentNamespace = obj => {\n const { currentNamespace } = this.props\n\n return this._setStateForNamespace(currentNamespace, obj)\n }\n\n _setStateForNamespace = (namespace, obj) => {\n const oldStateForNamespace = this.state[namespace] || Map()\n const newStateForNamespace = oldStateForNamespace.mergeDeep(obj)\n return this.setState({\n [namespace]: newStateForNamespace,\n })\n }\n\n _isCurrentUserInputSameAsExampleValue = () => {\n const { currentUserInputValue } = this.props\n\n const valueFromExample = this._getCurrentExampleValue()\n\n return valueFromExample === currentUserInputValue\n }\n\n _getValueForExample = (exampleKey, props) => {\n // props are accepted so that this can be used in UNSAFE_componentWillReceiveProps,\n // which has access to `nextProps`\n const { examples } = props || this.props\n return stringifyUnlessList(\n (examples || Map({})).getIn([exampleKey, \"value\"])\n )\n }\n\n _getCurrentExampleValue = props => {\n // props are accepted so that this can be used in UNSAFE_componentWillReceiveProps,\n // which has access to `nextProps`\n const { currentKey } = props || this.props\n return this._getValueForExample(currentKey, props || this.props)\n }\n\n _onExamplesSelect = (key, { isSyntheticChange } = {}, ...otherArgs) => {\n const {\n onSelect,\n updateValue,\n currentUserInputValue,\n userHasEditedBody,\n } = this.props\n const { lastUserEditedValue } = this._getStateForCurrentNamespace()\n\n const valueFromExample = this._getValueForExample(key)\n\n if (key === \"__MODIFIED__VALUE__\") {\n updateValue(stringifyUnlessList(lastUserEditedValue))\n return this._setStateForCurrentNamespace({\n isModifiedValueSelected: true,\n })\n }\n\n if (typeof onSelect === \"function\") {\n onSelect(key, { isSyntheticChange }, ...otherArgs)\n }\n\n this._setStateForCurrentNamespace({\n lastDownstreamValue: valueFromExample,\n isModifiedValueSelected:\n (isSyntheticChange && userHasEditedBody) ||\n (!!currentUserInputValue && currentUserInputValue !== valueFromExample),\n })\n\n // we never want to send up value updates from synthetic changes\n if (isSyntheticChange) return\n\n if (typeof updateValue === \"function\") {\n updateValue(stringifyUnlessList(valueFromExample))\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n // update `lastUserEditedValue` as new currentUserInput values come in\n\n const {\n currentUserInputValue: newValue,\n examples,\n onSelect,\n userHasEditedBody,\n } = nextProps\n\n const {\n lastUserEditedValue,\n lastDownstreamValue,\n } = this._getStateForCurrentNamespace()\n\n const valueFromCurrentExample = this._getValueForExample(\n nextProps.currentKey,\n nextProps\n )\n\n const examplesMatchingNewValue = examples.filter(\n (example) =>\n example.get(\"value\") === newValue ||\n // sometimes data is stored as a string (e.g. in Request Bodies), so\n // let's check against a stringified version of our example too\n stringify(example.get(\"value\")) === newValue\n )\n\n if (examplesMatchingNewValue.size) {\n let key\n if(examplesMatchingNewValue.has(nextProps.currentKey))\n {\n key = nextProps.currentKey\n } else {\n key = examplesMatchingNewValue.keySeq().first()\n }\n onSelect(key, {\n isSyntheticChange: true,\n })\n } else if (\n newValue !== this.props.currentUserInputValue && // value has changed\n newValue !== lastUserEditedValue && // value isn't already tracked\n newValue !== lastDownstreamValue // value isn't what we've seen on the other side\n ) {\n this.props.setRetainRequestBodyValueFlag(true)\n this._setStateForNamespace(nextProps.currentNamespace, {\n lastUserEditedValue: nextProps.currentUserInputValue,\n isModifiedValueSelected:\n userHasEditedBody || newValue !== valueFromCurrentExample,\n })\n }\n }\n\n render() {\n const {\n currentUserInputValue,\n examples,\n currentKey,\n getComponent,\n userHasEditedBody,\n } = this.props\n const {\n lastDownstreamValue,\n lastUserEditedValue,\n isModifiedValueSelected,\n } = this._getStateForCurrentNamespace()\n\n const ExamplesSelect = getComponent(\"ExamplesSelect\")\n\n return (\n \n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport oauth2Authorize from \"core/oauth2-authorize\"\n\nexport default class Oauth2 extends React.Component {\n static propTypes = {\n name: PropTypes.string,\n authorized: PropTypes.object,\n getComponent: PropTypes.func.isRequired,\n schema: PropTypes.object.isRequired,\n authSelectors: PropTypes.object.isRequired,\n authActions: PropTypes.object.isRequired,\n errSelectors: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n errActions: PropTypes.object.isRequired,\n getConfigs: PropTypes.any\n }\n\n constructor(props, context) {\n super(props, context)\n let { name, schema, authorized, authSelectors } = this.props\n let auth = authorized && authorized.get(name)\n let authConfigs = authSelectors.getConfigs() || {}\n let username = auth && auth.get(\"username\") || \"\"\n let clientId = auth && auth.get(\"clientId\") || authConfigs.clientId || \"\"\n let clientSecret = auth && auth.get(\"clientSecret\") || authConfigs.clientSecret || \"\"\n let passwordType = auth && auth.get(\"passwordType\") || \"basic\"\n let scopes = auth && auth.get(\"scopes\") || authConfigs.scopes || []\n if (typeof scopes === \"string\") {\n scopes = scopes.split(authConfigs.scopeSeparator || \" \")\n }\n\n this.state = {\n appName: authConfigs.appName,\n name: name,\n schema: schema,\n scopes: scopes,\n clientId: clientId,\n clientSecret: clientSecret,\n username: username,\n password: \"\",\n passwordType: passwordType\n }\n }\n\n close = (e) => {\n e.preventDefault()\n let { authActions } = this.props\n\n authActions.showDefinitions(false)\n }\n\n authorize =() => {\n let { authActions, errActions, getConfigs, authSelectors, oas3Selectors } = this.props\n let configs = getConfigs()\n let authConfigs = authSelectors.getConfigs()\n\n errActions.clear({authId: name,type: \"auth\", source: \"auth\"})\n oauth2Authorize({\n auth: this.state,\n currentServer: oas3Selectors.serverEffectiveValue(oas3Selectors.selectedServer()),\n authActions,\n errActions,\n configs,\n authConfigs\n })\n }\n\n onScopeChange =(e) => {\n let { target } = e\n let { checked } = target\n let scope = target.dataset.value\n\n if ( checked && this.state.scopes.indexOf(scope) === -1 ) {\n let newScopes = this.state.scopes.concat([scope])\n this.setState({ scopes: newScopes })\n } else if ( !checked && this.state.scopes.indexOf(scope) > -1) {\n this.setState({ scopes: this.state.scopes.filter((val) => val !== scope) })\n }\n }\n\n onInputChange =(e) => {\n let { target : { dataset : { name }, value } } = e\n let state = {\n [name]: value\n }\n\n this.setState(state)\n }\n\n selectScopes =(e) => {\n if (e.target.dataset.all) {\n this.setState({\n scopes: Array.from((this.props.schema.get(\"allowedScopes\") || this.props.schema.get(\"scopes\")).keys())\n })\n } else {\n this.setState({ scopes: [] })\n }\n }\n\n logout =(e) => {\n e.preventDefault()\n let { authActions, errActions, name } = this.props\n\n errActions.clear({authId: name, type: \"auth\", source: \"auth\"})\n authActions.logoutWithPersistOption([ name ])\n }\n\n render() {\n let {\n schema, getComponent, authSelectors, errSelectors, name, specSelectors\n } = this.props\n const Input = getComponent(\"Input\")\n const Row = getComponent(\"Row\")\n const Col = getComponent(\"Col\")\n const Button = getComponent(\"Button\")\n const AuthError = getComponent(\"authError\")\n const JumpToPath = getComponent(\"JumpToPath\", true)\n const Markdown = getComponent(\"Markdown\", true)\n const InitializedInput = getComponent(\"InitializedInput\")\n\n const { isOAS3 } = specSelectors\n\n let oidcUrl = isOAS3() ? schema.get(\"openIdConnectUrl\") : null\n\n // Auth type consts\n const AUTH_FLOW_IMPLICIT = \"implicit\"\n const AUTH_FLOW_PASSWORD = \"password\"\n const AUTH_FLOW_ACCESS_CODE = isOAS3() ? (oidcUrl ? \"authorization_code\" : \"authorizationCode\") : \"accessCode\"\n const AUTH_FLOW_APPLICATION = isOAS3() ? (oidcUrl ? \"client_credentials\" : \"clientCredentials\") : \"application\"\n\n let authConfigs = authSelectors.getConfigs() || {}\n let isPkceCodeGrant = !!authConfigs.usePkceWithAuthorizationCodeGrant\n\n let flow = schema.get(\"flow\")\n let flowToDisplay = flow === AUTH_FLOW_ACCESS_CODE && isPkceCodeGrant ? flow + \" with PKCE\" : flow\n let scopes = schema.get(\"allowedScopes\") || schema.get(\"scopes\")\n let authorizedAuth = authSelectors.authorized().get(name)\n let isAuthorized = !!authorizedAuth\n let errors = errSelectors.allErrors().filter( err => err.get(\"authId\") === name)\n let isValid = !errors.filter( err => err.get(\"source\") === \"validation\").size\n let description = schema.get(\"description\")\n\n return (\n \n
{name} (OAuth2, { flowToDisplay }) \n { !this.state.appName ? null :
Application: { this.state.appName } }\n { description &&
}\n\n { isAuthorized &&
Authorized }\n\n { oidcUrl &&
OpenID Connect URL: { oidcUrl }
}\n { ( flow === AUTH_FLOW_IMPLICIT || flow === AUTH_FLOW_ACCESS_CODE ) &&
Authorization URL: { schema.get(\"authorizationUrl\") }
}\n { ( flow === AUTH_FLOW_PASSWORD || flow === AUTH_FLOW_ACCESS_CODE || flow === AUTH_FLOW_APPLICATION ) &&
Token URL: { schema.get(\"tokenUrl\") }
}\n
Flow: { flowToDisplay }
\n\n {\n flow !== AUTH_FLOW_PASSWORD ? null\n :
\n \n username: \n {\n isAuthorized ? { this.state.username }
\n : \n \n \n }\n
\n {\n\n }\n \n password: \n {\n isAuthorized ? ******
\n : \n \n \n }\n
\n \n Client credentials location: \n {\n isAuthorized ? { this.state.passwordType }
\n : \n \n Authorization header \n Request body \n \n \n }\n
\n
\n }\n {\n ( flow === AUTH_FLOW_APPLICATION || flow === AUTH_FLOW_IMPLICIT || flow === AUTH_FLOW_ACCESS_CODE || flow === AUTH_FLOW_PASSWORD ) &&\n ( !isAuthorized || isAuthorized && this.state.clientId) &&
\n client_id: \n {\n isAuthorized ? ******
\n : \n \n \n }\n
\n }\n\n {\n ( (flow === AUTH_FLOW_APPLICATION || flow === AUTH_FLOW_ACCESS_CODE || flow === AUTH_FLOW_PASSWORD) &&
\n client_secret: \n {\n isAuthorized ? ******
\n : \n \n \n }\n\n
\n )}\n\n {\n !isAuthorized && scopes && scopes.size ?
\n
\n { scopes.map((description, name) => {\n return (\n
\n \n
\n
\n \n \n
{name}
\n
{description}
\n
\n \n
\n
\n )\n }).toArray()\n }\n
: null\n }\n\n {\n errors.valueSeq().map( (error, key) => {\n return
\n } )\n }\n
\n { isValid &&\n ( isAuthorized ? Logout \n : Authorize \n )\n }\n Close \n
\n\n
\n )\n }\n}\n","import parseUrl from \"url-parse\"\nimport Im from \"immutable\"\nimport { btoa, sanitizeUrl, generateCodeVerifier, createCodeChallenge } from \"core/utils\"\n\nexport default function authorize ( { auth, authActions, errActions, configs, authConfigs={}, currentServer } ) {\n let { schema, scopes, name, clientId } = auth\n let flow = schema.get(\"flow\")\n let query = []\n\n switch (flow) {\n case \"password\":\n authActions.authorizePassword(auth)\n return\n\n case \"application\":\n authActions.authorizeApplication(auth)\n return\n\n case \"accessCode\":\n query.push(\"response_type=code\")\n break\n\n case \"implicit\":\n query.push(\"response_type=token\")\n break\n\n case \"clientCredentials\":\n case \"client_credentials\":\n // OAS3\n authActions.authorizeApplication(auth)\n return\n\n case \"authorizationCode\":\n case \"authorization_code\":\n // OAS3\n query.push(\"response_type=code\")\n break\n }\n\n if (typeof clientId === \"string\") {\n query.push(\"client_id=\" + encodeURIComponent(clientId))\n }\n\n let redirectUrl = configs.oauth2RedirectUrl\n\n // todo move to parser\n if (typeof redirectUrl === \"undefined\") {\n errActions.newAuthErr( {\n authId: name,\n source: \"validation\",\n level: \"error\",\n message: \"oauth2RedirectUrl configuration is not passed. Oauth2 authorization cannot be performed.\"\n })\n return\n }\n query.push(\"redirect_uri=\" + encodeURIComponent(redirectUrl))\n\n let scopesArray = []\n if (Array.isArray(scopes)) {\n scopesArray = scopes\n } else if (Im.List.isList(scopes)) {\n scopesArray = scopes.toArray()\n }\n\n if (scopesArray.length > 0) {\n let scopeSeparator = authConfigs.scopeSeparator || \" \"\n\n query.push(\"scope=\" + encodeURIComponent(scopesArray.join(scopeSeparator)))\n }\n\n let state = btoa(new Date())\n\n query.push(\"state=\" + encodeURIComponent(state))\n\n if (typeof authConfigs.realm !== \"undefined\") {\n query.push(\"realm=\" + encodeURIComponent(authConfigs.realm))\n }\n\n if ((flow === \"authorizationCode\" || flow === \"authorization_code\" || flow === \"accessCode\") && authConfigs.usePkceWithAuthorizationCodeGrant) {\n const codeVerifier = generateCodeVerifier()\n const codeChallenge = createCodeChallenge(codeVerifier)\n\n query.push(\"code_challenge=\" + codeChallenge)\n query.push(\"code_challenge_method=S256\")\n\n // storing the Code Verifier so it can be sent to the token endpoint\n // when exchanging the Authorization Code for an Access Token\n auth.codeVerifier = codeVerifier\n }\n\n let { additionalQueryStringParams } = authConfigs\n\n for (let key in additionalQueryStringParams) {\n if (typeof additionalQueryStringParams[key] !== \"undefined\") {\n query.push([key, additionalQueryStringParams[key]].map(encodeURIComponent).join(\"=\"))\n }\n }\n\n const authorizationUrl = schema.get(\"authorizationUrl\")\n let sanitizedAuthorizationUrl\n if (currentServer) {\n // OpenAPI 3\n sanitizedAuthorizationUrl = parseUrl(\n sanitizeUrl(authorizationUrl),\n currentServer,\n true\n ).toString()\n } else {\n sanitizedAuthorizationUrl = sanitizeUrl(authorizationUrl)\n }\n let url = [sanitizedAuthorizationUrl, query.join(\"&\")].join(authorizationUrl.indexOf(\"?\") === -1 ? \"?\" : \"&\")\n\n // pass action authorizeOauth2 and authentication data through window\n // to authorize with oauth2\n\n let callback\n if (flow === \"implicit\") {\n callback = authActions.preAuthorizeImplicit\n } else if (authConfigs.useBasicAuthenticationWithAccessCodeGrant) {\n callback = authActions.authorizeAccessCodeWithBasicAuthentication\n } else {\n callback = authActions.authorizeAccessCodeWithFormParams\n }\n\n authActions.authPopup(url, {\n auth: auth,\n state: state,\n redirectUrl: redirectUrl,\n callback: callback,\n errCb: errActions.newAuthErr\n })\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class Clear extends Component {\n\n onClick =() => {\n let { specActions, path, method } = this.props\n specActions.clearResponse( path, method )\n specActions.clearRequest( path, method )\n }\n\n render(){\n return (\n \n Clear\n \n )\n }\n\n static propTypes = {\n specActions: PropTypes.object.isRequired,\n path: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nconst Headers = ( { headers } )=>{\n return (\n \n
Response headers \n
{headers} \n
)\n}\nHeaders.propTypes = {\n headers: PropTypes.array.isRequired\n}\n\nconst Duration = ( { duration } ) => {\n return (\n \n
Request duration \n
{duration} ms \n
\n )\n}\nDuration.propTypes = {\n duration: PropTypes.number.isRequired\n}\n\n\nexport default class LiveResponse extends React.Component {\n static propTypes = {\n response: ImPropTypes.map,\n path: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n displayRequestDuration: PropTypes.bool.isRequired,\n specSelectors: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired\n }\n\n shouldComponentUpdate(nextProps) {\n // BUG: props.response is always coming back as a new Immutable instance\n // same issue as responses.jsx (tryItOutResponse)\n return this.props.response !== nextProps.response\n || this.props.path !== nextProps.path\n || this.props.method !== nextProps.method\n || this.props.displayRequestDuration !== nextProps.displayRequestDuration\n }\n\n render() {\n const { response, getComponent, getConfigs, displayRequestDuration, specSelectors, path, method } = this.props\n const { showMutatedRequest, requestSnippetsEnabled } = getConfigs()\n\n const curlRequest = showMutatedRequest ? specSelectors.mutatedRequestFor(path, method) : specSelectors.requestFor(path, method)\n const status = response.get(\"status\")\n const url = curlRequest.get(\"url\")\n const headers = response.get(\"headers\").toJS()\n const notDocumented = response.get(\"notDocumented\")\n const isError = response.get(\"error\")\n const body = response.get(\"text\")\n const duration = response.get(\"duration\")\n const headersKeys = Object.keys(headers)\n const contentType = headers[\"content-type\"] || headers[\"Content-Type\"]\n\n const ResponseBody = getComponent(\"responseBody\")\n const returnObject = headersKeys.map(key => {\n var joinedHeaders = Array.isArray(headers[key]) ? headers[key].join() : headers[key]\n return {key}: {joinedHeaders} \n })\n const hasHeaders = returnObject.length !== 0\n const Markdown = getComponent(\"Markdown\", true)\n const RequestSnippets = getComponent(\"RequestSnippets\", true)\n const Curl = getComponent(\"curl\")\n\n return (\n \n { curlRequest && (requestSnippetsEnabled === true || requestSnippetsEnabled === \"true\"\n ?
\n :
) }\n { url &&
\n }\n
Server response \n
\n \n \n Code \n Details \n \n \n \n \n \n { status }\n {\n notDocumented ? \n Undocumented \n
\n : null\n }\n \n \n {\n isError ? \n : null\n }\n {\n body ? \n : null\n }\n {\n hasHeaders ? : null\n }\n {\n displayRequestDuration && duration ? : null\n }\n \n \n \n
\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Im from \"immutable\"\n\nconst SWAGGER2_OPERATION_METHODS = [\n \"get\", \"put\", \"post\", \"delete\", \"options\", \"head\", \"patch\"\n]\n\nconst OAS3_OPERATION_METHODS = SWAGGER2_OPERATION_METHODS.concat([\"trace\"])\n\n\nexport default class Operations extends React.Component {\n\n static propTypes = {\n specSelectors: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n oas3Selectors: PropTypes.func.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n authActions: PropTypes.object.isRequired,\n authSelectors: PropTypes.object.isRequired,\n getConfigs: PropTypes.func.isRequired,\n fn: PropTypes.func.isRequired\n }\n\n render() {\n let {\n specSelectors,\n } = this.props\n\n const taggedOps = specSelectors.taggedOperations()\n\n if(taggedOps.size === 0) {\n return No operations defined in spec! \n }\n\n return (\n \n { taggedOps.map(this.renderOperationTag).toArray() }\n { taggedOps.size < 1 ?
No operations defined in spec! : null }\n \n )\n }\n\n renderOperationTag = (tagObj, tag) => {\n const {\n specSelectors,\n getComponent,\n oas3Selectors,\n layoutSelectors,\n layoutActions,\n getConfigs,\n } = this.props\n const OperationContainer = getComponent(\"OperationContainer\", true)\n const OperationTag = getComponent(\"OperationTag\")\n const operations = tagObj.get(\"operations\")\n return (\n \n \n {\n operations.map(op => {\n const path = op.get(\"path\")\n const method = op.get(\"method\")\n const specPath = Im.List([\"paths\", path, method])\n\n\n // FIXME: (someday) this logic should probably be in a selector,\n // but doing so would require further opening up\n // selectors to the plugin system, to allow for dynamic\n // overriding of low-level selectors that other selectors\n // rely on. --KS, 12/17\n const validMethods = specSelectors.isOAS3() ?\n OAS3_OPERATION_METHODS : SWAGGER2_OPERATION_METHODS\n\n if (validMethods.indexOf(method) === -1) {\n return null\n }\n\n return (\n \n )\n }).toArray()\n }\n
\n \n )\n }\n\n}\n\nOperations.propTypes = {\n layoutActions: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n fn: PropTypes.object.isRequired\n}\n","export function isAbsoluteUrl(url) {\n return url.match(/^(?:[a-z]+:)?\\/\\//i) // Matches http://, HTTP://, https://, ftp://, //example.com,\n}\n\nexport function addProtocol(url) {\n if (!url.match(/^\\/\\//i)) return url // Checks if protocol is missing e.g. //example.com\n\n return `${window.location.protocol}${url}`\n}\n\nexport function buildBaseUrl(selectedServer, specUrl) {\n if (!selectedServer) return specUrl\n if (isAbsoluteUrl(selectedServer)) return addProtocol(selectedServer)\n\n return new URL(selectedServer, specUrl).href\n}\n\nexport function buildUrl(url, specUrl, { selectedServer=\"\" } = {}) {\n if (!url) return undefined\n if (isAbsoluteUrl(url)) return url\n\n const baseUrl = buildBaseUrl(selectedServer, specUrl)\n if (!isAbsoluteUrl(baseUrl)) {\n return new URL(url, window.location.href).href\n }\n return new URL(url, baseUrl).href\n}\n\n/**\n * Safe version of buildUrl function. `selectedServer` can contain server variables\n * which can fail the URL resolution.\n */\nexport function safeBuildUrl(url, specUrl, { selectedServer=\"\" } = {}) {\n try {\n return buildUrl(url, specUrl, { selectedServer })\n } catch {\n return undefined\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport Im from \"immutable\"\nimport { createDeepLinkPath, escapeDeepLinkPath, sanitizeUrl } from \"core/utils\"\nimport { safeBuildUrl } from \"core/utils/url\"\nimport { isFunc } from \"core/utils\"\n\nexport default class OperationTag extends React.Component {\n\n static defaultProps = {\n tagObj: Im.fromJS({}),\n tag: \"\",\n }\n\n static propTypes = {\n tagObj: ImPropTypes.map.isRequired,\n tag: PropTypes.string.isRequired,\n\n oas3Selectors: PropTypes.func.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n\n getConfigs: PropTypes.func.isRequired,\n getComponent: PropTypes.func.isRequired,\n\n specUrl: PropTypes.string.isRequired,\n\n children: PropTypes.element,\n }\n\n render() {\n const {\n tagObj,\n tag,\n children,\n oas3Selectors,\n layoutSelectors,\n layoutActions,\n getConfigs,\n getComponent,\n specUrl,\n } = this.props\n\n let {\n docExpansion,\n deepLinking,\n } = getConfigs()\n\n const isDeepLinkingEnabled = deepLinking && deepLinking !== \"false\"\n\n const Collapse = getComponent(\"Collapse\")\n const Markdown = getComponent(\"Markdown\", true)\n const DeepLink = getComponent(\"DeepLink\")\n const Link = getComponent(\"Link\")\n\n let tagDescription = tagObj.getIn([\"tagDetails\", \"description\"], null)\n let tagExternalDocsDescription = tagObj.getIn([\"tagDetails\", \"externalDocs\", \"description\"])\n let rawTagExternalDocsUrl = tagObj.getIn([\"tagDetails\", \"externalDocs\", \"url\"])\n let tagExternalDocsUrl\n if (isFunc(oas3Selectors) && isFunc(oas3Selectors.selectedServer)) {\n tagExternalDocsUrl = safeBuildUrl(rawTagExternalDocsUrl, specUrl, { selectedServer: oas3Selectors.selectedServer() })\n } else {\n tagExternalDocsUrl = rawTagExternalDocsUrl\n }\n\n let isShownKey = [\"operations-tag\", tag]\n let showTag = layoutSelectors.isShown(isShownKey, docExpansion === \"full\" || docExpansion === \"list\")\n\n return (\n \n\n
layoutActions.show(isShownKey, !showTag)}\n className={!tagDescription ? \"opblock-tag no-desc\" : \"opblock-tag\"}\n id={isShownKey.map(v => escapeDeepLinkPath(v)).join(\"-\")}\n data-tag={tag}\n data-is-open={showTag}\n >\n \n {!tagDescription ? :\n \n \n \n }\n\n {!tagExternalDocsUrl ? null :\n \n \n e.stopPropagation()}\n target=\"_blank\"\n >{tagExternalDocsDescription || tagExternalDocsUrl}\n \n
\n }\n\n\n layoutActions.show(isShownKey, !showTag)}>\n\n \n \n \n \n \n\n
\n {children}\n \n
\n )\n }\n}\n","import React, { PureComponent } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { getList } from \"core/utils\"\nimport { getExtensions, sanitizeUrl, escapeDeepLinkPath } from \"core/utils\"\nimport { safeBuildUrl } from \"core/utils/url\"\nimport { Iterable, List } from \"immutable\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\n\nexport default class Operation extends PureComponent {\n static propTypes = {\n specPath: ImPropTypes.list.isRequired,\n operation: PropTypes.instanceOf(Iterable).isRequired,\n summary: PropTypes.string,\n response: PropTypes.instanceOf(Iterable),\n request: PropTypes.instanceOf(Iterable),\n\n toggleShown: PropTypes.func.isRequired,\n onTryoutClick: PropTypes.func.isRequired,\n onResetClick: PropTypes.func.isRequired,\n onCancelClick: PropTypes.func.isRequired,\n onExecute: PropTypes.func.isRequired,\n\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n authActions: PropTypes.object,\n authSelectors: PropTypes.object,\n specActions: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n fn: PropTypes.object.isRequired\n }\n\n static defaultProps = {\n operation: null,\n response: null,\n request: null,\n specPath: List(),\n summary: \"\"\n }\n\n render() {\n let {\n specPath,\n response,\n request,\n toggleShown,\n onTryoutClick,\n onResetClick,\n onCancelClick,\n onExecute,\n fn,\n getComponent,\n getConfigs,\n specActions,\n specSelectors,\n authActions,\n authSelectors,\n oas3Actions,\n oas3Selectors\n } = this.props\n let operationProps = this.props.operation\n\n let {\n deprecated,\n isShown,\n path,\n method,\n op,\n tag,\n operationId,\n allowTryItOut,\n displayRequestDuration,\n tryItOutEnabled,\n executeInProgress\n } = operationProps.toJS()\n\n let {\n description,\n externalDocs,\n schemes\n } = op\n\n const externalDocsUrl = externalDocs ? safeBuildUrl(externalDocs.url, specSelectors.url(), { selectedServer: oas3Selectors.selectedServer() }) : \"\"\n let operation = operationProps.getIn([\"op\"])\n let responses = operation.get(\"responses\")\n let parameters = getList(operation, [\"parameters\"])\n let operationScheme = specSelectors.operationScheme(path, method)\n let isShownKey = [\"operations\", tag, operationId]\n let extensions = getExtensions(operation)\n\n const Responses = getComponent(\"responses\")\n const Parameters = getComponent( \"parameters\" )\n const Execute = getComponent( \"execute\" )\n const Clear = getComponent( \"clear\" )\n const Collapse = getComponent( \"Collapse\" )\n const Markdown = getComponent(\"Markdown\", true)\n const Schemes = getComponent( \"schemes\" )\n const OperationServers = getComponent( \"OperationServers\" )\n const OperationExt = getComponent( \"OperationExt\" )\n const OperationSummary = getComponent( \"OperationSummary\" )\n const Link = getComponent( \"Link\" )\n\n const { showExtensions } = getConfigs()\n\n // Merge in Live Response\n if(responses && response && response.size > 0) {\n let notDocumented = !responses.get(String(response.get(\"status\"))) && !responses.get(\"default\")\n response = response.set(\"notDocumented\", notDocumented)\n }\n\n let onChangeKey = [ path, method ] // Used to add values to _this_ operation ( indexed by path and method )\n\n const validationErrors = specSelectors.validationErrors([path, method])\n\n return (\n \n
\n
\n \n { (operation && operation.size) || operation === null ? null :\n
\n }\n { deprecated &&
Warning: Deprecated }\n { description &&\n
\n }\n {\n externalDocsUrl ?\n
\n
Find more details \n
\n {externalDocs.description &&\n \n \n \n }\n {externalDocsUrl}\n
\n
: null\n }\n\n { !operation || !operation.size ? null :\n
\n }\n\n { !tryItOutEnabled ? null :\n
\n }\n\n {!tryItOutEnabled || !allowTryItOut ? null : schemes && schemes.size ?
\n \n
: null\n }\n\n { !tryItOutEnabled || !allowTryItOut || validationErrors.length <= 0 ? null :
\n Please correct the following validation errors and try again.\n
\n { validationErrors.map((error, index) => { error } ) }\n \n
\n }\n\n
\n { !tryItOutEnabled || !allowTryItOut ? null :\n\n \n }\n\n { (!tryItOutEnabled || !response || !allowTryItOut) ? null :\n \n }\n
\n\n {executeInProgress ?
: null}\n\n { !responses ? null :\n
\n }\n\n { !showExtensions || !extensions.size ? null :\n
\n }\n
\n \n
\n )\n }\n\n}\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_toString_da931f05__[\"default\"] });","import React, { PureComponent } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Iterable, List } from \"immutable\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport toString from \"lodash/toString\"\n\n\nexport default class OperationSummary extends PureComponent {\n\n static propTypes = {\n specPath: ImPropTypes.list.isRequired,\n operationProps: PropTypes.instanceOf(Iterable).isRequired,\n isShown: PropTypes.bool.isRequired,\n toggleShown: PropTypes.func.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n authActions: PropTypes.object,\n authSelectors: PropTypes.object,\n }\n\n static defaultProps = {\n operationProps: null,\n specPath: List(),\n summary: \"\"\n }\n\n render() {\n\n let {\n isShown,\n toggleShown,\n getComponent,\n authActions,\n authSelectors,\n operationProps,\n specPath,\n } = this.props\n\n let {\n summary,\n isAuthorized,\n method,\n op,\n showSummary,\n path,\n operationId,\n originalOperationId,\n displayOperationId,\n } = operationProps.toJS()\n\n let {\n summary: resolvedSummary,\n } = op\n\n let security = operationProps.get(\"security\")\n\n const AuthorizeOperationBtn = getComponent(\"authorizeOperationBtn\")\n const OperationSummaryMethod = getComponent(\"OperationSummaryMethod\")\n const OperationSummaryPath = getComponent(\"OperationSummaryPath\")\n const JumpToPath = getComponent(\"JumpToPath\", true)\n const CopyToClipboardBtn = getComponent(\"CopyToClipboardBtn\", true)\n\n const hasSecurity = security && !!security.count()\n const securityIsOptional = hasSecurity && security.size === 1 && security.first().isEmpty()\n const allowAnonymous = !hasSecurity || securityIsOptional\n return (\n \n
\n \n \n\n {!showSummary ? null :\n \n {toString(resolvedSummary || summary)}\n
\n }\n\n {displayOperationId && (originalOperationId || operationId) ? {originalOperationId || operationId} : null}\n\n \n \n \n \n\n {\n allowAnonymous ? null :\n
{\n const applicableDefinitions = authSelectors.definitionsForRequirements(security)\n authActions.showDefinitions(applicableDefinitions)\n }}\n />\n }\n \n {/* TODO: use wrapComponents here, swagger-ui doesn't care about jumpToPath */}\n \n )\n\n }\n}\n","import React, { PureComponent } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Iterable } from \"immutable\"\n\nexport default class OperationSummaryMethod extends PureComponent {\n\n static propTypes = {\n operationProps: PropTypes.instanceOf(Iterable).isRequired,\n method: PropTypes.string.isRequired,\n }\n\n static defaultProps = {\n operationProps: null,\n }\n render() {\n\n let {\n method,\n } = this.props\n\n return (\n {method.toUpperCase()} \n )\n }\n}\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_splice_d746fc5e__[\"default\"] });","import React, { PureComponent } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Iterable } from \"immutable\"\nimport { createDeepLinkPath } from \"core/utils\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class OperationSummaryPath extends PureComponent{\n\n static propTypes = {\n specPath: ImPropTypes.list.isRequired,\n operationProps: PropTypes.instanceOf(Iterable).isRequired,\n getComponent: PropTypes.func.isRequired,\n }\n\n render(){\n let {\n getComponent,\n operationProps,\n } = this.props\n\n\n let {\n deprecated,\n isShown,\n path,\n tag,\n operationId,\n isDeepLinkingEnabled,\n } = operationProps.toJS()\n\n /**\n * Add word-break elements between each segment, before the slash\n * to allow browsers an opportunity to break long paths into sensible segments.\n */\n const pathParts = path.split(/(?=\\/)/g)\n for (let i = 1; i < pathParts.length; i += 2) {\n pathParts.splice(i, 0, )\n }\n\n const DeepLink = getComponent( \"DeepLink\" )\n\n return(\n \n \n \n\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const OperationExt = ({ extensions, getComponent }) => {\n let OperationExtRow = getComponent(\"OperationExtRow\")\n return (\n \n
\n
Extensions \n \n
\n\n
\n \n \n Field \n Value \n \n \n \n {\n extensions.entrySeq().map(([k, v]) => )\n }\n \n
\n
\n
\n )\n}\nOperationExt.propTypes = {\n extensions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired\n}\n\nexport default OperationExt\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const OperationExtRow = ({ xKey, xVal }) => {\n const xNormalizedValue = !xVal ? null : xVal.toJS ? xVal.toJS() : xVal\n\n return (\n { xKey } \n { JSON.stringify(xNormalizedValue) } \n )\n}\nOperationExtRow.propTypes = {\n xKey: PropTypes.string,\n xVal: PropTypes.any\n}\n\nexport default OperationExtRow\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__[\"default\"] });","import React, { useRef, useEffect } from \"react\"\nimport PropTypes from \"prop-types\"\nimport cx from \"classnames\"\nimport {SyntaxHighlighter, getStyle} from \"core/syntax-highlighting\"\nimport get from \"lodash/get\"\nimport isFunction from \"lodash/isFunction\"\nimport saveAs from \"js-file-download\"\nimport { CopyToClipboard } from \"react-copy-to-clipboard\"\n\nconst HighlightCode = ({value, fileName, className, downloadable, getConfigs, canCopy, language}) => {\n const config = isFunction(getConfigs) ? getConfigs() : null\n const canSyntaxHighlight = get(config, \"syntaxHighlight\") !== false && get(config, \"syntaxHighlight.activated\", true)\n const rootRef = useRef(null)\n\n useEffect(() => {\n const childNodes = Array\n .from(rootRef.current.childNodes)\n .filter(node => !!node.nodeType && node.classList.contains(\"microlight\"))\n\n // eslint-disable-next-line no-use-before-define\n childNodes.forEach(node => node.addEventListener(\"mousewheel\", handlePreventYScrollingBeyondElement, { passive: false }))\n\n return () => {\n // eslint-disable-next-line no-use-before-define\n childNodes.forEach(node => node.removeEventListener(\"mousewheel\", handlePreventYScrollingBeyondElement))\n }\n }, [value, className, language])\n\n const handleDownload = () => {\n saveAs(value, fileName)\n }\n\n const handlePreventYScrollingBeyondElement = (e) => {\n const { target, deltaY } = e\n const { scrollHeight: contentHeight, offsetHeight: visibleHeight, scrollTop } = target\n const scrollOffset = visibleHeight + scrollTop\n const isElementScrollable = contentHeight > visibleHeight\n const isScrollingPastTop = scrollTop === 0 && deltaY < 0\n const isScrollingPastBottom = scrollOffset >= contentHeight && deltaY > 0\n\n if (isElementScrollable && (isScrollingPastTop || isScrollingPastBottom)) {\n e.preventDefault()\n }\n }\n\n return (\n \n {!downloadable ? null :\n
\n Download\n
\n }\n\n {canCopy && (\n
\n \n
\n )}\n\n {canSyntaxHighlight\n ?
\n {value}\n \n :
{value} \n }\n\n
\n )\n}\n\nHighlightCode.propTypes = {\n value: PropTypes.string.isRequired,\n getConfigs: PropTypes.func.isRequired,\n className: PropTypes.string,\n downloadable: PropTypes.bool,\n fileName: PropTypes.string,\n language: PropTypes.string,\n canCopy: PropTypes.bool\n}\n\nHighlightCode.defaultProps = {\n fileName: \"response.txt\"\n}\n\nexport default HighlightCode\n","import React from \"react\"\nimport { fromJS, Iterable } from \"immutable\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { defaultStatusCode, getAcceptControllingResponse } from \"core/utils\"\nimport createHtmlReadyId from \"../../helpers/create-html-ready-id\"\n\nexport default class Responses extends React.Component {\n static propTypes = {\n tryItOutResponse: PropTypes.instanceOf(Iterable),\n responses: PropTypes.instanceOf(Iterable).isRequired,\n produces: PropTypes.instanceOf(Iterable),\n producesValue: PropTypes.any,\n displayRequestDuration: PropTypes.bool.isRequired,\n path: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n specPath: ImPropTypes.list.isRequired,\n fn: PropTypes.object.isRequired\n }\n\n static defaultProps = {\n tryItOutResponse: null,\n produces: fromJS([\"application/json\"]),\n displayRequestDuration: false\n }\n\n // These performance-enhancing checks were disabled as part of Multiple Examples\n // because they were causing data-consistency issues\n //\n // shouldComponentUpdate(nextProps) {\n // // BUG: props.tryItOutResponse is always coming back as a new Immutable instance\n // let render = this.props.tryItOutResponse !== nextProps.tryItOutResponse\n // || this.props.responses !== nextProps.responses\n // || this.props.produces !== nextProps.produces\n // || this.props.producesValue !== nextProps.producesValue\n // || this.props.displayRequestDuration !== nextProps.displayRequestDuration\n // || this.props.path !== nextProps.path\n // || this.props.method !== nextProps.method\n // return render\n // }\n\n\tonChangeProducesWrapper = ( val ) => this.props.specActions.changeProducesValue([this.props.path, this.props.method], val)\n\n onResponseContentTypeChange = ({ controlsAcceptHeader, value }) => {\n const { oas3Actions, path, method } = this.props\n if(controlsAcceptHeader) {\n oas3Actions.setResponseContentType({\n value,\n path,\n method\n })\n }\n }\n\n render() {\n let {\n responses,\n tryItOutResponse,\n getComponent,\n getConfigs,\n specSelectors,\n fn,\n producesValue,\n displayRequestDuration,\n specPath,\n path,\n method,\n oas3Selectors,\n oas3Actions,\n } = this.props\n let defaultCode = defaultStatusCode( responses )\n\n const ContentType = getComponent( \"contentType\" )\n const LiveResponse = getComponent( \"liveResponse\" )\n const Response = getComponent( \"response\" )\n\n let produces = this.props.produces && this.props.produces.size ? this.props.produces : Responses.defaultProps.produces\n\n const isSpecOAS3 = specSelectors.isOAS3()\n\n const acceptControllingResponse = isSpecOAS3 ?\n getAcceptControllingResponse(responses) : null\n\n const regionId = createHtmlReadyId(`${method}${path}_responses`)\n const controlId = `${regionId}_select`\n\n return (\n \n
\n
Responses \n { specSelectors.isOAS3() ? null : \n Response content type \n \n }\n \n
\n {\n !tryItOutResponse ? null\n :
\n \n
Responses \n \n\n }\n\n
\n \n \n Code \n Description \n { specSelectors.isOAS3() ? Links : null }\n \n \n \n {\n responses.entrySeq().map( ([code, response]) => {\n\n let className = tryItOutResponse && tryItOutResponse.get(\"status\") == code ? \"response_current\" : \"\"\n return (\n \n )\n }).toArray()\n }\n \n
\n
\n
\n )\n }\n}\n","/**\n * Replace invalid characters from a string to create an html-ready ID\n *\n * @param {string} id A string that may contain invalid characters for the HTML ID attribute\n * @param {string} [replacement=_] The string to replace invalid characters with; \"_\" by default\n * @return {string} Information about the parameter schema\n */\nexport default function createHtmlReadyId(id, replacement = \"_\") {\n return id.replace(/[^\\w-]/g, replacement)\n}\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_values_a68750d2__[\"default\"] });","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport cx from \"classnames\"\nimport { fromJS, Seq, Iterable, List, Map } from \"immutable\"\nimport { getExtensions, getSampleSchema, fromJSOrdered, stringify } from \"core/utils\"\nimport { getKnownSyntaxHighlighterLanguage } from \"core/utils/jsonParse\"\n\n\nconst getExampleComponent = ( sampleResponse, HighlightCode, getConfigs ) => {\n if (\n sampleResponse !== undefined &&\n sampleResponse !== null\n ) {\n let language = null\n let testValueForJson = getKnownSyntaxHighlighterLanguage(sampleResponse)\n if (testValueForJson) {\n language = \"json\"\n }\n return \n \n
\n }\n return null\n}\n\nexport default class Response extends React.Component {\n constructor(props, context) {\n super(props, context)\n\n this.state = {\n responseContentType: \"\",\n }\n }\n\n static propTypes = {\n path: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n code: PropTypes.string.isRequired,\n response: PropTypes.instanceOf(Iterable),\n className: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n specPath: ImPropTypes.list.isRequired,\n fn: PropTypes.object.isRequired,\n contentType: PropTypes.string,\n activeExamplesKey: PropTypes.string,\n controlsAcceptHeader: PropTypes.bool,\n onContentTypeChange: PropTypes.func\n }\n\n static defaultProps = {\n response: fromJS({}),\n onContentTypeChange: () => {}\n }\n\n _onContentTypeChange = (value) => {\n const { onContentTypeChange, controlsAcceptHeader } = this.props\n this.setState({ responseContentType: value })\n onContentTypeChange({\n value: value,\n controlsAcceptHeader\n })\n }\n\n getTargetExamplesKey = () => {\n const { response, contentType, activeExamplesKey } = this.props\n\n const activeContentType = this.state.responseContentType || contentType\n const activeMediaType = response.getIn([\"content\", activeContentType], Map({}))\n const examplesForMediaType = activeMediaType.get(\"examples\", null)\n\n const firstExamplesKey = examplesForMediaType.keySeq().first()\n return activeExamplesKey || firstExamplesKey\n }\n\n render() {\n let {\n path,\n method,\n code,\n response,\n className,\n specPath,\n fn,\n getComponent,\n getConfigs,\n specSelectors,\n contentType,\n controlsAcceptHeader,\n oas3Actions,\n } = this.props\n\n let { inferSchema } = fn\n let isOAS3 = specSelectors.isOAS3()\n const { showExtensions } = getConfigs()\n\n let extensions = showExtensions ? getExtensions(response) : null\n let headers = response.get(\"headers\")\n let links = response.get(\"links\")\n const ResponseExtension = getComponent(\"ResponseExtension\")\n const Headers = getComponent(\"headers\")\n const HighlightCode = getComponent(\"highlightCode\")\n const ModelExample = getComponent(\"modelExample\")\n const Markdown = getComponent(\"Markdown\", true)\n const OperationLink = getComponent(\"operationLink\")\n const ContentType = getComponent(\"contentType\")\n const ExamplesSelect = getComponent(\"ExamplesSelect\")\n const Example = getComponent(\"Example\")\n\n\n var schema, specPathWithPossibleSchema\n\n const activeContentType = this.state.responseContentType || contentType\n const activeMediaType = response.getIn([\"content\", activeContentType], Map({}))\n const examplesForMediaType = activeMediaType.get(\"examples\", null)\n\n // Goal: find a schema value for `schema`\n if(isOAS3) {\n const oas3SchemaForContentType = activeMediaType.get(\"schema\")\n\n schema = oas3SchemaForContentType ? inferSchema(oas3SchemaForContentType.toJS()) : null\n specPathWithPossibleSchema = oas3SchemaForContentType ? List([\"content\", this.state.responseContentType, \"schema\"]) : specPath\n } else {\n schema = response.get(\"schema\")\n specPathWithPossibleSchema = response.has(\"schema\") ? specPath.push(\"schema\") : specPath\n }\n\n let mediaTypeExample\n let shouldOverrideSchemaExample = false\n let sampleSchema\n let sampleGenConfig = {\n includeReadOnly: true\n }\n\n // Goal: find an example value for `sampleResponse`\n if(isOAS3) {\n sampleSchema = activeMediaType.get(\"schema\")?.toJS()\n if(examplesForMediaType) {\n const targetExamplesKey = this.getTargetExamplesKey()\n const targetExample = examplesForMediaType\n .get(targetExamplesKey, Map({}))\n const getMediaTypeExample = (targetExample) =>\n targetExample.get(\"value\")\n mediaTypeExample = getMediaTypeExample(targetExample)\n if(mediaTypeExample === undefined) {\n mediaTypeExample = getMediaTypeExample(examplesForMediaType.values().next().value)\n }\n shouldOverrideSchemaExample = true\n } else if(activeMediaType.get(\"example\") !== undefined) {\n // use the example key's value\n mediaTypeExample = activeMediaType.get(\"example\")\n shouldOverrideSchemaExample = true\n }\n } else {\n sampleSchema = schema\n sampleGenConfig = {...sampleGenConfig, includeWriteOnly: true}\n const oldOASMediaTypeExample = response.getIn([\"examples\", activeContentType])\n if(oldOASMediaTypeExample) {\n mediaTypeExample = oldOASMediaTypeExample\n shouldOverrideSchemaExample = true\n }\n }\n\n const sampleResponse = getSampleSchema(\n sampleSchema,\n activeContentType,\n sampleGenConfig,\n shouldOverrideSchemaExample ? mediaTypeExample : undefined\n )\n\n let example = getExampleComponent( sampleResponse, HighlightCode, getConfigs )\n\n return (\n \n \n { code }\n \n \n\n \n \n
\n\n { !showExtensions || !extensions.size ? null : extensions.entrySeq().map(([key, v]) => )}\n\n {isOAS3 && response.get(\"content\") ? (\n \n \n \n Media type\n \n \n {controlsAcceptHeader ? (\n \n Controls Accept
header.\n \n ) : null}\n
\n {examplesForMediaType ? (\n \n \n Examples\n \n \n oas3Actions.setActiveExamplesMember({\n name: key,\n pathMethod: [path, method],\n contextType: \"responses\",\n contextName: code\n })\n }\n showLabels={false}\n />\n
\n ) : null}\n \n ) : null}\n\n { example || schema ? (\n \n ) : null }\n\n { isOAS3 && examplesForMediaType ? (\n \n ) : null}\n\n { headers ? (\n \n ) : null}\n\n \n {isOAS3 ? \n { links ?\n links.toSeq().entrySeq().map(([key, link]) => {\n return \n })\n : No links }\n : null}\n \n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const ResponseExtension = ({ xKey, xVal }) => {\n return { xKey }: { String(xVal) }
\n}\nResponseExtension.propTypes = {\n xKey: PropTypes.string,\n xVal: PropTypes.any\n}\n\nexport default ResponseExtension\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_xml_but_prettier_2ed4d5cb__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_toLower_c29ee2b0__[\"default\"] });","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport formatXml from \"xml-but-prettier\"\nimport toLower from \"lodash/toLower\"\nimport { extractFileNameFromContentDispositionHeader } from \"core/utils\"\nimport { getKnownSyntaxHighlighterLanguage } from \"core/utils/jsonParse\"\nimport win from \"core/window\"\n\nexport default class ResponseBody extends React.PureComponent {\n state = {\n parsedContent: null\n }\n\n static propTypes = {\n content: PropTypes.any.isRequired,\n contentType: PropTypes.string,\n getConfigs: PropTypes.func.isRequired,\n getComponent: PropTypes.func.isRequired,\n headers: PropTypes.object,\n url: PropTypes.string\n }\n\n updateParsedContent = (prevContent) => {\n const { content } = this.props\n\n if(prevContent === content) {\n return\n }\n\n if(content && content instanceof Blob) {\n var reader = new FileReader()\n reader.onload = () => {\n this.setState({\n parsedContent: reader.result\n })\n }\n reader.readAsText(content)\n } else {\n this.setState({\n parsedContent: content.toString()\n })\n }\n }\n\n componentDidMount() {\n this.updateParsedContent(null)\n }\n\n componentDidUpdate(prevProps) {\n this.updateParsedContent(prevProps.content)\n }\n\n render() {\n let { content, contentType, url, headers={}, getConfigs, getComponent } = this.props\n const { parsedContent } = this.state\n const HighlightCode = getComponent(\"highlightCode\")\n const downloadName = \"response_\" + new Date().getTime()\n let body, bodyEl\n url = url || \"\"\n\n if (\n /^application\\/octet-stream/i.test(contentType) ||\n (headers[\"Content-Disposition\"] && (/attachment/i).test(headers[\"Content-Disposition\"])) ||\n (headers[\"content-disposition\"] && (/attachment/i).test(headers[\"content-disposition\"])) ||\n (headers[\"Content-Description\"] && (/File Transfer/i).test(headers[\"Content-Description\"])) ||\n (headers[\"content-description\"] && (/File Transfer/i).test(headers[\"content-description\"]))) {\n // Download\n\n if (\"Blob\" in window) {\n let type = contentType || \"text/html\"\n let blob = (content instanceof Blob) ? content : new Blob([content], {type: type})\n let href = window.URL.createObjectURL(blob)\n let fileName = url.substr(url.lastIndexOf(\"/\") + 1)\n let download = [type, fileName, href].join(\":\")\n\n // Use filename from response header,\n // First check if filename is quoted (e.g. contains space), if no, fallback to not quoted check\n let disposition = headers[\"content-disposition\"] || headers[\"Content-Disposition\"]\n if (typeof disposition !== \"undefined\") {\n let responseFilename = extractFileNameFromContentDispositionHeader(disposition)\n if (responseFilename !== null) {\n download = responseFilename\n }\n }\n\n if(win.navigator && win.navigator.msSaveOrOpenBlob) {\n bodyEl = \n } else {\n bodyEl = \n }\n } else {\n bodyEl = Download headers detected but your browser does not support downloading binary via XHR (Blob). \n }\n\n // Anything else (CORS)\n } else if (/json/i.test(contentType)) {\n // JSON\n let language = null\n let testValueForJson = getKnownSyntaxHighlighterLanguage(content)\n if (testValueForJson) {\n language = \"json\"\n }\n try {\n body = JSON.stringify(JSON.parse(content), null, \" \")\n } catch (error) {\n body = \"can't parse JSON. Raw result:\\n\\n\" + content\n }\n\n bodyEl = \n\n // XML\n } else if (/xml/i.test(contentType)) {\n body = formatXml(content, {\n textNodesOnSameLine: true,\n indentor: \" \"\n })\n bodyEl = \n\n // HTML or Plain Text\n } else if (toLower(contentType) === \"text/html\" || /text\\/plain/.test(contentType)) {\n bodyEl = \n\n // CSV\n } else if (toLower(contentType) === \"text/csv\" || /text\\/csv/.test(contentType)) {\n bodyEl = \n\n // Image\n } else if (/^image\\//i.test(contentType)) {\n if(contentType.includes(\"svg\")) {\n bodyEl = { content }
\n } else {\n bodyEl = \n }\n\n // Audio\n } else if (/^audio\\//i.test(contentType)) {\n bodyEl = \n } else if (typeof content === \"string\") {\n bodyEl = \n } else if ( content.size > 0 ) {\n // We don't know the contentType, but there was some content returned\n if(parsedContent) {\n // We were able to squeeze something out of content\n // in `updateParsedContent`, so let's display it\n bodyEl = \n
\n Unrecognized response type; displaying content as text.\n
\n
\n
\n\n } else {\n // Give up\n bodyEl = \n Unrecognized response type; unable to display.\n
\n }\n } else {\n // We don't know the contentType and there was no content returned\n bodyEl = null\n }\n\n return ( !bodyEl ? null : \n
Response body \n { bodyEl }\n \n )\n }\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Map, List } from \"immutable\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class Parameters extends Component {\n\n constructor(props) {\n super(props)\n this.state = {\n callbackVisible: false,\n parametersVisible: true,\n }\n }\n\n static propTypes = {\n parameters: ImPropTypes.list.isRequired,\n operation: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n fn: PropTypes.object.isRequired,\n tryItOutEnabled: PropTypes.bool,\n allowTryItOut: PropTypes.bool,\n onTryoutClick: PropTypes.func,\n onResetClick: PropTypes.func,\n onCancelClick: PropTypes.func,\n onChangeKey: PropTypes.array,\n pathMethod: PropTypes.array.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specPath: ImPropTypes.list.isRequired,\n }\n\n\n static defaultProps = {\n onTryoutClick: Function.prototype,\n onCancelClick: Function.prototype,\n tryItOutEnabled: false,\n allowTryItOut: true,\n onChangeKey: [],\n specPath: [],\n }\n\n onChange = (param, value, isXml) => {\n let {\n specActions: { changeParamByIdentity },\n onChangeKey,\n } = this.props\n\n changeParamByIdentity(onChangeKey, param, value, isXml)\n }\n\n onChangeConsumesWrapper = (val) => {\n let {\n specActions: { changeConsumesValue },\n onChangeKey,\n } = this.props\n\n changeConsumesValue(onChangeKey, val)\n }\n\n toggleTab = (tab) => {\n if (tab === \"parameters\") {\n return this.setState({\n parametersVisible: true,\n callbackVisible: false,\n })\n } else if (tab === \"callbacks\") {\n return this.setState({\n callbackVisible: true,\n parametersVisible: false,\n })\n }\n }\n \n onChangeMediaType = ({ value, pathMethod }) => {\n let { specActions, oas3Selectors, oas3Actions } = this.props\n const userHasEditedBody = oas3Selectors.hasUserEditedBody(...pathMethod)\n const shouldRetainRequestBodyValue = oas3Selectors.shouldRetainRequestBodyValue(...pathMethod)\n oas3Actions.setRequestContentType({ value, pathMethod })\n oas3Actions.initRequestBodyValidateError({ pathMethod })\n if (!userHasEditedBody) {\n if(!shouldRetainRequestBodyValue) {\n oas3Actions.setRequestBodyValue({ value: undefined, pathMethod })\n }\n specActions.clearResponse(...pathMethod)\n specActions.clearRequest(...pathMethod)\n specActions.clearValidateParams(pathMethod)\n }\n }\n\n render() {\n\n let {\n onTryoutClick,\n onResetClick,\n parameters,\n allowTryItOut,\n tryItOutEnabled,\n specPath,\n fn,\n getComponent,\n getConfigs,\n specSelectors,\n specActions,\n pathMethod,\n oas3Actions,\n oas3Selectors,\n operation,\n } = this.props\n\n const ParameterRow = getComponent(\"parameterRow\")\n const TryItOutButton = getComponent(\"TryItOutButton\")\n const ContentType = getComponent(\"contentType\")\n const Callbacks = getComponent(\"Callbacks\", true)\n const RequestBody = getComponent(\"RequestBody\", true)\n\n const isExecute = tryItOutEnabled && allowTryItOut\n const isOAS3 = specSelectors.isOAS3()\n\n\n const requestBody = operation.get(\"requestBody\")\n\n const groupedParametersArr = Object.values(parameters\n .reduce((acc, x) => {\n const key = x.get(\"in\")\n acc[key] ??= []\n acc[key].push(x)\n return acc\n }, {}))\n .reduce((acc, x) => acc.concat(x), [])\n\n const retainRequestBodyValueFlagForOperation = (f) => oas3Actions.setRetainRequestBodyValueFlag({ value: f, pathMethod })\n return (\n \n
\n {isOAS3 ? (\n
\n
this.toggleTab(\"parameters\")}\n className={`tab-item ${this.state.parametersVisible && \"active\"}`}>\n
Parameters \n \n {operation.get(\"callbacks\") ?\n (\n
this.toggleTab(\"callbacks\")}\n className={`tab-item ${this.state.callbackVisible && \"active\"}`}>\n
Callbacks \n \n ) : null\n }\n
\n ) : (\n
\n
Parameters \n \n )}\n {allowTryItOut ? (\n
onResetClick(pathMethod)}/>\n ) : null}\n \n {this.state.parametersVisible ?
\n {!groupedParametersArr.length ?
:\n
\n
\n \n \n Name \n Description \n \n \n \n {\n groupedParametersArr.map((parameter, i) => (\n \n ))\n }\n \n
\n
\n }\n
: null}\n\n {this.state.callbackVisible ?
\n \n
: null}\n {\n isOAS3 && requestBody && this.state.parametersVisible &&\n
\n
\n
Request\n body \n \n {\n this.onChangeMediaType({ value, pathMethod })\n }}\n className=\"body-param-content-type\"\n ariaLabel=\"Request content type\" />\n \n \n
\n {\n this.props.oas3Actions.setActiveExamplesMember({\n name: key,\n pathMethod: this.props.pathMethod,\n contextType: \"requestBody\",\n contextName: \"requestBody\", // RBs are currently not stored per-mediaType\n })\n }\n }\n onChange={(value, path) => {\n if (path) {\n const lastValue = oas3Selectors.requestBodyValue(...pathMethod)\n const usableValue = Map.isMap(lastValue) ? lastValue : Map()\n return oas3Actions.setRequestBodyValue({\n pathMethod,\n value: usableValue.setIn(path, value),\n })\n }\n oas3Actions.setRequestBodyValue({ value, pathMethod })\n }}\n onChangeIncludeEmpty={(name, value) => {\n oas3Actions.setRequestBodyInclusion({\n pathMethod,\n value,\n name,\n })\n }}\n contentType={oas3Selectors.requestContentType(...pathMethod)} />\n
\n
\n }\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const ParameterExt = ({ xKey, xVal }) => {\n return { xKey }: { String(xVal) }
\n}\nParameterExt.propTypes = {\n xKey: PropTypes.string,\n xVal: PropTypes.any\n}\n\nexport default ParameterExt\n","import React, { Component } from \"react\"\nimport cx from \"classnames\"\nimport PropTypes from \"prop-types\"\n\n\nconst noop = () => { }\n\nconst ParameterIncludeEmptyPropTypes = {\n isIncluded: PropTypes.bool.isRequired,\n isDisabled: PropTypes.bool.isRequired,\n isIncludedOptions: PropTypes.object,\n onChange: PropTypes.func.isRequired,\n}\n\nconst ParameterIncludeEmptyDefaultProps = {\n onChange: noop,\n isIncludedOptions: {},\n}\nexport default class ParameterIncludeEmpty extends Component {\n static propTypes = ParameterIncludeEmptyPropTypes\n static defaultProps = ParameterIncludeEmptyDefaultProps\n\n componentDidMount() {\n const { isIncludedOptions, onChange } = this.props\n const { shouldDispatchInit, defaultValue } = isIncludedOptions\n if (shouldDispatchInit) {\n onChange(defaultValue)\n }\n }\n\n onCheckboxChange = e => {\n const { onChange } = this.props\n onChange(e.target.checked)\n }\n\n render() {\n let { isIncluded, isDisabled } = this.props\n\n return (\n \n \n \n Send empty value\n \n
\n )\n }\n}\n","import React, { Component } from \"react\"\nimport { Map, List } from \"immutable\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport win from \"core/window\"\nimport { getSampleSchema, getExtensions, getCommonExtensions, numberToString, stringify, isEmptyValue } from \"core/utils\"\nimport getParameterSchema from \"../../helpers/get-parameter-schema.js\"\n\nexport default class ParameterRow extends Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n param: PropTypes.object.isRequired,\n rawParam: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n fn: PropTypes.object.isRequired,\n isExecute: PropTypes.bool,\n onChangeConsumes: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n pathMethod: PropTypes.array.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specPath: ImPropTypes.list.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n }\n\n constructor(props, context) {\n super(props, context)\n\n this.setDefaultValue()\n }\n\n UNSAFE_componentWillReceiveProps(props) {\n let { specSelectors, pathMethod, rawParam } = props\n let isOAS3 = specSelectors.isOAS3()\n\n let parameterWithMeta = specSelectors.parameterWithMetaByIdentity(pathMethod, rawParam) || new Map()\n // fallback, if the meta lookup fails\n parameterWithMeta = parameterWithMeta.isEmpty() ? rawParam : parameterWithMeta\n\n let enumValue\n\n if(isOAS3) {\n let { schema } = getParameterSchema(parameterWithMeta, { isOAS3 })\n enumValue = schema ? schema.get(\"enum\") : undefined\n } else {\n enumValue = parameterWithMeta ? parameterWithMeta.get(\"enum\") : undefined\n }\n let paramValue = parameterWithMeta ? parameterWithMeta.get(\"value\") : undefined\n\n let value\n\n if ( paramValue !== undefined ) {\n value = paramValue\n } else if ( rawParam.get(\"required\") && enumValue && enumValue.size ) {\n value = enumValue.first()\n }\n\n if ( value !== undefined && value !== paramValue ) {\n this.onChangeWrapper(numberToString(value))\n }\n // todo: could check if schema here; if not, do not call. impact?\n this.setDefaultValue()\n }\n\n onChangeWrapper = (value, isXml = false) => {\n let { onChange, rawParam } = this.props\n let valueForUpstream\n\n // Coerce empty strings and empty Immutable objects to null\n if(value === \"\" || (value && value.size === 0)) {\n valueForUpstream = null\n } else {\n valueForUpstream = value\n }\n\n return onChange(rawParam, valueForUpstream, isXml)\n }\n\n _onExampleSelect = (key, /* { isSyntheticChange } = {} */) => {\n this.props.oas3Actions.setActiveExamplesMember({\n name: key,\n pathMethod: this.props.pathMethod,\n contextType: \"parameters\",\n contextName: this.getParamKey()\n })\n }\n\n onChangeIncludeEmpty = (newValue) => {\n let { specActions, param, pathMethod } = this.props\n const paramName = param.get(\"name\")\n const paramIn = param.get(\"in\")\n return specActions.updateEmptyParamInclusion(pathMethod, paramName, paramIn, newValue)\n }\n\n setDefaultValue = () => {\n let { specSelectors, pathMethod, rawParam, oas3Selectors } = this.props\n\n const paramWithMeta = specSelectors.parameterWithMetaByIdentity(pathMethod, rawParam) || Map()\n const { schema } = getParameterSchema(paramWithMeta, { isOAS3: specSelectors.isOAS3() })\n const parameterMediaType = paramWithMeta\n .get(\"content\", Map())\n .keySeq()\n .first()\n\n // getSampleSchema could return null\n const generatedSampleValue = schema ? getSampleSchema(schema.toJS(), parameterMediaType, {\n\n includeWriteOnly: true\n }) : null\n\n if (!paramWithMeta || paramWithMeta.get(\"value\") !== undefined) {\n return\n }\n\n if( paramWithMeta.get(\"in\") !== \"body\" ) {\n let initialValue\n\n //// Find an initial value\n\n if (specSelectors.isSwagger2()) {\n initialValue =\n paramWithMeta.get(\"x-example\") !== undefined\n ? paramWithMeta.get(\"x-example\")\n : paramWithMeta.getIn([\"schema\", \"example\"]) !== undefined\n ? paramWithMeta.getIn([\"schema\", \"example\"])\n : (schema && schema.getIn([\"default\"]))\n } else if (specSelectors.isOAS3()) {\n const currentExampleKey = oas3Selectors.activeExamplesMember(...pathMethod, \"parameters\", this.getParamKey())\n initialValue =\n paramWithMeta.getIn([\"examples\", currentExampleKey, \"value\"]) !== undefined\n ? paramWithMeta.getIn([\"examples\", currentExampleKey, \"value\"])\n : paramWithMeta.getIn([\"content\", parameterMediaType, \"example\"]) !== undefined\n ? paramWithMeta.getIn([\"content\", parameterMediaType, \"example\"])\n : paramWithMeta.get(\"example\") !== undefined\n ? paramWithMeta.get(\"example\")\n : (schema && schema.get(\"example\")) !== undefined\n ? (schema && schema.get(\"example\"))\n : (schema && schema.get(\"default\")) !== undefined\n ? (schema && schema.get(\"default\"))\n : paramWithMeta.get(\"default\") // ensures support for `parameterMacro`\n }\n\n //// Process the initial value\n\n if(initialValue !== undefined && !List.isList(initialValue)) {\n // Stringify if it isn't a List\n initialValue = stringify(initialValue)\n }\n\n //// Dispatch the initial value\n\n if(initialValue !== undefined) {\n this.onChangeWrapper(initialValue)\n } else if(\n schema && schema.get(\"type\") === \"object\"\n && generatedSampleValue\n && !paramWithMeta.get(\"examples\")\n ) {\n // Object parameters get special treatment.. if the user doesn't set any\n // default or example values, we'll provide initial values generated from\n // the schema.\n // However, if `examples` exist for the parameter, we won't do anything,\n // so that the appropriate `examples` logic can take over.\n this.onChangeWrapper(\n List.isList(generatedSampleValue) ? (\n generatedSampleValue\n ) : (\n stringify(generatedSampleValue)\n )\n )\n }\n }\n }\n\n getParamKey() {\n const { param } = this.props\n\n if(!param) return null\n\n return `${param.get(\"name\")}-${param.get(\"in\")}`\n }\n\n render() {\n let {param, rawParam, getComponent, getConfigs, isExecute, fn, onChangeConsumes, specSelectors, pathMethod, specPath, oas3Selectors} = this.props\n\n let isOAS3 = specSelectors.isOAS3()\n\n const { showExtensions, showCommonExtensions } = getConfigs()\n\n if(!param) {\n param = rawParam\n }\n\n if(!rawParam) return null\n\n // const onChangeWrapper = (value) => onChange(param, value)\n const JsonSchemaForm = getComponent(\"JsonSchemaForm\")\n const ParamBody = getComponent(\"ParamBody\")\n let inType = param.get(\"in\")\n let bodyParam = inType !== \"body\" ? null\n : \n\n const ModelExample = getComponent(\"modelExample\")\n const Markdown = getComponent(\"Markdown\", true)\n const ParameterExt = getComponent(\"ParameterExt\")\n const ParameterIncludeEmpty = getComponent(\"ParameterIncludeEmpty\")\n const ExamplesSelectValueRetainer = getComponent(\"ExamplesSelectValueRetainer\")\n const Example = getComponent(\"Example\")\n\n let { schema } = getParameterSchema(param, { isOAS3 })\n let paramWithMeta = specSelectors.parameterWithMetaByIdentity(pathMethod, rawParam) || Map()\n\n let format = schema ? schema.get(\"format\") : null\n let type = schema ? schema.get(\"type\") : null\n let itemType = schema ? schema.getIn([\"items\", \"type\"]) : null\n let isFormData = inType === \"formData\"\n let isFormDataSupported = \"FormData\" in win\n let required = param.get(\"required\")\n\n let value = paramWithMeta ? paramWithMeta.get(\"value\") : \"\"\n let commonExt = showCommonExtensions ? getCommonExtensions(schema) : null\n let extensions = showExtensions ? getExtensions(param) : null\n\n let paramItems // undefined\n let paramEnum // undefined\n let paramDefaultValue // undefined\n let paramExample // undefined\n let isDisplayParamEnum = false\n\n if ( param !== undefined && schema ) {\n paramItems = schema.get(\"items\")\n }\n\n if (paramItems !== undefined) {\n paramEnum = paramItems.get(\"enum\")\n paramDefaultValue = paramItems.get(\"default\")\n } else if (schema) {\n paramEnum = schema.get(\"enum\")\n }\n\n if ( paramEnum && paramEnum.size && paramEnum.size > 0) {\n isDisplayParamEnum = true\n }\n\n // Default and Example Value for readonly doc\n if ( param !== undefined ) {\n if (schema) {\n paramDefaultValue = schema.get(\"default\")\n }\n if (paramDefaultValue === undefined) {\n paramDefaultValue = param.get(\"default\")\n }\n paramExample = param.get(\"example\")\n if (paramExample === undefined) {\n paramExample = param.get(\"x-example\")\n }\n }\n\n return (\n \n \n \n { param.get(\"name\") }\n { !required ? null : * }\n
\n \n { type }\n { itemType && `[${itemType}]` }\n { format && (${format}) }\n
\n \n { isOAS3 && param.get(\"deprecated\") ? \"deprecated\": null }\n
\n ({ param.get(\"in\") })
\n { !showCommonExtensions || !commonExt.size ? null : commonExt.entrySeq().map(([key, v]) => )}\n { !showExtensions || !extensions.size ? null : extensions.entrySeq().map(([key, v]) => )}\n \n\n \n { param.get(\"description\") ? : null }\n\n { (bodyParam || !isExecute) && isDisplayParamEnum ?\n Available values : \" + paramEnum.map(function(item) {\n return item\n }).toArray().join(\", \")}/>\n : null\n }\n\n { (bodyParam || !isExecute) && paramDefaultValue !== undefined ?\n Default value : \" + paramDefaultValue}/>\n : null\n }\n\n { (bodyParam || !isExecute) && paramExample !== undefined ?\n Example : \" + paramExample}/>\n : null\n }\n\n {(isFormData && !isFormDataSupported) && Error: your browser does not support FormData
}\n\n {\n isOAS3 && param.get(\"examples\") ? (\n \n ) : null\n }\n\n { bodyParam ? null\n : \n }\n\n\n {\n bodyParam && schema ? \n : null\n }\n\n {\n !bodyParam && isExecute && param.get(\"allowEmptyValue\") ?\n \n : null\n }\n\n {\n isOAS3 && param.get(\"examples\") ? (\n \n ) : null\n }\n\n \n\n \n )\n\n }\n\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class Execute extends Component {\n\n static propTypes = {\n specSelectors: PropTypes.object.isRequired,\n specActions: PropTypes.object.isRequired,\n operation: PropTypes.object.isRequired,\n path: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n onExecute: PropTypes.func,\n disabled: PropTypes.bool\n }\n\n handleValidateParameters = () => {\n let { specSelectors, specActions, path, method } = this.props\n specActions.validateParams([path, method])\n return specSelectors.validateBeforeExecute([path, method])\n }\n\n handleValidateRequestBody = () => {\n let { path, method, specSelectors, oas3Selectors, oas3Actions } = this.props\n let validationErrors = {\n missingBodyValue: false,\n missingRequiredKeys: []\n }\n // context: reset errors, then (re)validate\n oas3Actions.clearRequestBodyValidateError({ path, method })\n let oas3RequiredRequestBodyContentType = specSelectors.getOAS3RequiredRequestBodyContentType([path, method])\n let oas3RequestBodyValue = oas3Selectors.requestBodyValue(path, method)\n let oas3ValidateBeforeExecuteSuccess = oas3Selectors.validateBeforeExecute([path, method])\n let oas3RequestContentType = oas3Selectors.requestContentType(path, method)\n\n if (!oas3ValidateBeforeExecuteSuccess) {\n validationErrors.missingBodyValue = true\n oas3Actions.setRequestBodyValidateError({ path, method, validationErrors })\n return false\n }\n if (!oas3RequiredRequestBodyContentType) {\n return true\n }\n let missingRequiredKeys = oas3Selectors.validateShallowRequired({\n oas3RequiredRequestBodyContentType,\n oas3RequestContentType,\n oas3RequestBodyValue\n })\n if (!missingRequiredKeys || missingRequiredKeys.length < 1) {\n return true\n }\n missingRequiredKeys.forEach((missingKey) => {\n validationErrors.missingRequiredKeys.push(missingKey)\n })\n oas3Actions.setRequestBodyValidateError({ path, method, validationErrors })\n return false\n }\n\n handleValidationResultPass = () => {\n let { specActions, operation, path, method } = this.props\n if (this.props.onExecute) {\n // loading spinner\n this.props.onExecute()\n }\n specActions.execute({ operation, path, method })\n }\n\n handleValidationResultFail = () => {\n let { specActions, path, method } = this.props\n // deferred by 40ms, to give element class change time to settle.\n specActions.clearValidateParams([path, method])\n setTimeout(() => {\n specActions.validateParams([path, method])\n }, 40)\n }\n\n handleValidationResult = (isPass) => {\n if (isPass) {\n this.handleValidationResultPass()\n } else {\n this.handleValidationResultFail()\n }\n }\n\n onClick = () => {\n let paramsResult = this.handleValidateParameters()\n let requestBodyResult = this.handleValidateRequestBody()\n let isPass = paramsResult && requestBodyResult\n this.handleValidationResult(isPass)\n }\n\n onChangeProducesWrapper = ( val ) => this.props.specActions.changeProducesValue([this.props.path, this.props.method], val)\n\n render(){\n const { disabled } = this.props\n return (\n \n Execute\n \n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Im from \"immutable\"\n\nconst propClass = \"header-example\"\n\nexport default class Headers extends React.Component {\n static propTypes = {\n headers: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired\n }\n\n render() {\n let { headers, getComponent } = this.props\n\n const Property = getComponent(\"Property\")\n const Markdown = getComponent(\"Markdown\", true)\n\n if ( !headers || !headers.size )\n return null\n\n return (\n \n
Headers: \n
\n \n \n Name \n Description \n Type \n \n \n \n {\n headers.entrySeq().map( ([ key, header ]) => {\n if(!Im.Map.isMap(header)) {\n return null\n }\n\n const description = header.get(\"description\")\n const type = header.getIn([\"schema\"]) ? header.getIn([\"schema\", \"type\"]) : header.getIn([\"type\"])\n const schemaExample = header.getIn([\"schema\", \"example\"])\n\n return (\n { key } \n {\n !description ? null : \n } \n { type } { schemaExample ? : null } \n )\n }).toArray()\n }\n \n
\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { List } from \"immutable\"\n\nexport default class Errors extends React.Component {\n\n static propTypes = {\n editorActions: PropTypes.object,\n errSelectors: PropTypes.object.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n }\n\n render() {\n let { editorActions, errSelectors, layoutSelectors, layoutActions, getComponent } = this.props\n\n const Collapse = getComponent(\"Collapse\")\n\n if(editorActions && editorActions.jumpToLine) {\n var jumpToLine = editorActions.jumpToLine\n }\n\n let errors = errSelectors.allErrors()\n\n // all thrown errors, plus error-level everything else\n let allErrorsToDisplay = errors.filter(err => err.get(\"type\") === \"thrown\" ? true :err.get(\"level\") === \"error\")\n\n if(!allErrorsToDisplay || allErrorsToDisplay.count() < 1) {\n return null\n }\n\n let isVisible = layoutSelectors.isShown([\"errorPane\"], true)\n let toggleVisibility = () => layoutActions.show([\"errorPane\"], !isVisible)\n\n let sortedJSErrors = allErrorsToDisplay.sortBy(err => err.get(\"line\"))\n\n return (\n \n \n Errors \n { isVisible ? \"Hide\" : \"Show\" } \n \n \n \n { sortedJSErrors.map((err, i) => {\n let type = err.get(\"type\")\n if(type === \"thrown\" || type === \"auth\") {\n return \n }\n if(type === \"spec\") {\n return \n }\n }) }\n
\n \n \n )\n }\n}\n\nconst ThrownErrorItem = ( { error, jumpToLine } ) => {\n if(!error) {\n return null\n }\n let errorLine = error.get(\"line\")\n\n return (\n \n { !error ? null :\n
\n
{ (error.get(\"source\") && error.get(\"level\")) ?\n toTitleCase(error.get(\"source\")) + \" \" + error.get(\"level\") : \"\" }\n { error.get(\"path\") ? at {error.get(\"path\")} : null } \n
\n { error.get(\"message\") }\n \n
\n
\n }\n
\n )\n }\n\nconst SpecErrorItem = ( { error, jumpToLine } ) => {\n let locationMessage = null\n\n if(error.get(\"path\")) {\n if(List.isList(error.get(\"path\"))) {\n locationMessage = at { error.get(\"path\").join(\".\") } \n } else {\n locationMessage = at { error.get(\"path\") } \n }\n } else if(error.get(\"line\") && !jumpToLine) {\n locationMessage = on line { error.get(\"line\") } \n }\n\n return (\n \n { !error ? null :\n
\n
{ toTitleCase(error.get(\"source\")) + \" \" + error.get(\"level\") } { locationMessage } \n
{ error.get(\"message\") } \n
\n
\n }\n
\n )\n }\n\nfunction toTitleCase(str) {\n return (str || \"\")\n .split(\" \")\n .map(substr => substr[0].toUpperCase() + substr.slice(1))\n .join(\" \")\n}\n\nThrownErrorItem.propTypes = {\n error: PropTypes.object.isRequired,\n jumpToLine: PropTypes.func\n}\n\nThrownErrorItem.defaultProps = {\n jumpToLine: null\n}\n\nSpecErrorItem.propTypes = {\n error: PropTypes.object.isRequired,\n jumpToLine: PropTypes.func\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { fromJS } from \"immutable\"\n\nconst noop = ()=>{}\n\nexport default class ContentType extends React.Component {\n\n static propTypes = {\n ariaControls: PropTypes.string,\n contentTypes: PropTypes.oneOfType([ImPropTypes.list, ImPropTypes.set, ImPropTypes.seq]),\n controlId: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n className: PropTypes.string,\n ariaLabel: PropTypes.string\n }\n\n static defaultProps = {\n onChange: noop,\n value: null,\n contentTypes: fromJS([\"application/json\"]),\n }\n\n componentDidMount() {\n // Needed to populate the form, initially\n if(this.props.contentTypes) {\n this.props.onChange(this.props.contentTypes.first())\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if(!nextProps.contentTypes || !nextProps.contentTypes.size) {\n return\n }\n\n if(!nextProps.contentTypes.includes(nextProps.value)) {\n nextProps.onChange(nextProps.contentTypes.first())\n }\n }\n\n onChangeWrapper = e => this.props.onChange(e.target.value)\n\n render() {\n let { ariaControls, ariaLabel, className, contentTypes, controlId, value } = this.props\n\n if ( !contentTypes || !contentTypes.size )\n return null\n\n return (\n \n \n { contentTypes.map( (val) => {\n return { val } \n }).toArray()}\n \n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nfunction xclass(...args) {\n return args.filter(a => !!a).join(\" \").trim()\n}\n\nexport class Container extends React.Component {\n render() {\n let { fullscreen, full, ...rest } = this.props\n // Normal element\n\n if(fullscreen)\n return \n\n let containerClass = \"swagger-container\" + (full ? \"-full\" : \"\")\n return (\n \n )\n }\n}\n\nContainer.propTypes = {\n fullscreen: PropTypes.bool,\n full: PropTypes.bool,\n className: PropTypes.string\n}\n\nconst DEVICES = {\n \"mobile\": \"\",\n \"tablet\": \"-tablet\",\n \"desktop\": \"-desktop\",\n \"large\": \"-hd\"\n}\n\nexport class Col extends React.Component {\n\n render() {\n const {\n hide,\n keepContents,\n /* we don't want these in the `rest` object that passes to the final component,\n since React now complains. So we extract them */\n /* eslint-disable no-unused-vars */\n mobile,\n tablet,\n desktop,\n large,\n /* eslint-enable no-unused-vars */\n ...rest\n } = this.props\n\n if(hide && !keepContents)\n return \n\n let classesAr = []\n\n for (let device in DEVICES) {\n if (!Object.prototype.hasOwnProperty.call(DEVICES, device)) {\n continue\n }\n let deviceClass = DEVICES[device]\n if(device in this.props) {\n let val = this.props[device]\n\n if(val < 1) {\n classesAr.push(\"none\" + deviceClass)\n continue\n }\n\n classesAr.push(\"block\" + deviceClass)\n classesAr.push(\"col-\" + val + deviceClass)\n }\n }\n\n if (hide) {\n classesAr.push(\"hidden\")\n }\n\n let classes = xclass(rest.className, ...classesAr)\n\n return (\n \n )\n }\n\n}\n\nCol.propTypes = {\n hide: PropTypes.bool,\n keepContents: PropTypes.bool,\n mobile: PropTypes.number,\n tablet: PropTypes.number,\n desktop: PropTypes.number,\n large: PropTypes.number,\n className: PropTypes.string\n}\n\nexport class Row extends React.Component {\n\n render() {\n return
\n }\n\n}\n\nRow.propTypes = {\n className: PropTypes.string\n}\n\nexport class Button extends React.Component {\n\n static propTypes = {\n className: PropTypes.string\n }\n\n static defaultProps = {\n className: \"\"\n }\n\n render() {\n return \n }\n\n}\n\n\nexport const TextArea = (props) => \n\nexport const Input = (props) => \n\nexport class Select extends React.Component {\n static propTypes = {\n allowedValues: PropTypes.array,\n value: PropTypes.any,\n onChange: PropTypes.func,\n multiple: PropTypes.bool,\n allowEmptyValue: PropTypes.bool,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n }\n\n static defaultProps = {\n multiple: false,\n allowEmptyValue: true\n }\n\n constructor(props, context) {\n super(props, context)\n\n let value\n\n if (props.value) {\n value = props.value\n } else {\n value = props.multiple ? [\"\"] : \"\"\n }\n\n this.state = { value: value }\n }\n\n onChange = (e) => {\n let { onChange, multiple } = this.props\n let options = [].slice.call(e.target.options)\n let value\n\n\n if (multiple) {\n value = options.filter(function (option) {\n return option.selected\n })\n .map(function (option){\n return option.value\n })\n } else {\n value = e.target.value\n }\n\n this.setState({value: value})\n\n onChange && onChange(value)\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n // TODO: this puts us in a weird area btwn un/controlled selection... review\n if(nextProps.value !== this.props.value) {\n this.setState({ value: nextProps.value })\n }\n }\n\n render(){\n let { allowedValues, multiple, allowEmptyValue, disabled } = this.props\n let value = this.state.value?.toJS?.() || this.state.value\n\n return (\n \n { allowEmptyValue ? -- : null }\n {\n allowedValues.map(function (item, key) {\n return { String(item) } \n })\n }\n \n )\n }\n}\n\nexport class Link extends React.Component {\n\n render() {\n return \n }\n\n}\n\nLink.propTypes = {\n className: PropTypes.string\n}\n\nconst NoMargin = ({children}) => {children}
\n\nNoMargin.propTypes = {\n children: PropTypes.node\n}\n\nexport class Collapse extends React.Component {\n\n static propTypes = {\n isOpened: PropTypes.bool,\n children: PropTypes.node.isRequired,\n animated: PropTypes.bool\n }\n\n static defaultProps = {\n isOpened: false,\n animated: false\n }\n\n renderNotAnimated() {\n if(!this.props.isOpened)\n return \n return (\n \n {this.props.children}\n \n )\n }\n\n render() {\n let { animated, isOpened, children } = this.props\n\n if(!animated)\n return this.renderNotAnimated()\n\n children = isOpened ? children : null\n return (\n \n {children}\n \n )\n }\n\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Link } from \"core/components/layout-utils\"\n\nexport default class Overview extends React.Component {\n\n constructor(...args) {\n super(...args)\n this.setTagShown = this._setTagShown.bind(this)\n }\n\n _setTagShown(showTagId, shown) {\n this.props.layoutActions.show(showTagId, shown)\n }\n\n showOp(key, shown) {\n let { layoutActions } = this.props\n layoutActions.show(key, shown)\n }\n\n render() {\n let { specSelectors, layoutSelectors, layoutActions, getComponent } = this.props\n let taggedOps = specSelectors.taggedOperations()\n\n const Collapse = getComponent(\"Collapse\")\n\n return (\n \n
Overview \n\n {\n taggedOps.map( (tagObj, tag) => {\n let operations = tagObj.get(\"operations\")\n\n let showTagId = [\"overview-tags\", tag]\n let showTag = layoutSelectors.isShown(showTagId, true)\n let toggleShow = ()=> layoutActions.show(showTagId, !showTag)\n\n return (\n
\n\n\n
{showTag ? \"-\" : \"+\"}{tag} \n\n \n {\n operations.map( op => {\n let { path, method, id } = op.toObject() // toObject is shallow\n let showOpIdPrefix = \"operations\"\n let showOpId = id\n let shown = layoutSelectors.isShown([showOpIdPrefix, showOpId])\n return \n }).toArray()\n }\n \n\n \n )\n }).toArray()\n }\n\n { taggedOps.size < 1 &&
No operations defined in spec! }\n
\n )\n }\n\n}\n\nOverview.propTypes = {\n layoutSelectors: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired\n}\n\nexport class OperationLink extends React.Component {\n\n constructor(props) {\n super(props)\n this.onClick = this._onClick.bind(this)\n }\n\n _onClick() {\n let { showOpId, showOpIdPrefix, onClick, shown } = this.props\n onClick([showOpIdPrefix, showOpId], !shown)\n }\n\n render() {\n let { id, method, shown, href } = this.props\n\n return (\n \n \n {method.toUpperCase()} \n {id} \n
\n \n )\n }\n\n}\n\nOperationLink.propTypes = {\n href: PropTypes.string,\n onClick: PropTypes.func,\n id: PropTypes.string.isRequired,\n method: PropTypes.string.isRequired,\n shown: PropTypes.bool.isRequired,\n showOpId: PropTypes.string.isRequired,\n showOpIdPrefix: PropTypes.string.isRequired\n}\n","// This component provides an interface that feels like an uncontrolled input\n// to consumers, while providing a `defaultValue` interface that initializes\n// the input's value using JavaScript value property APIs instead of React's \n// vanilla[0] implementation that uses HTML value attributes.\n//\n// This is useful in situations where we don't want to surface an input's value\n// into the HTML/CSS-exposed side of the DOM, for example to avoid sequential\n// input chaining attacks[1].\n// \n// [0]: https://github.com/facebook/react/blob/baff5cc2f69d30589a5dc65b089e47765437294b/fixtures/dom/src/components/fixtures/text-inputs/README.md\n// [1]: https://github.com/d0nutptr/sic\n\nimport React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class InitializedInput extends React.Component {\n componentDidMount() {\n // Set the element's `value` property (*not* the `value` attribute)\n // once, on mount, if an `initialValue` is provided.\n if(this.props.initialValue) {\n this.inputRef.value = this.props.initialValue\n }\n }\n\n render() {\n // Filter out `value` and `defaultValue`, since we have our own\n // `initialValue` interface that we provide.\n // eslint-disable-next-line no-unused-vars, react/prop-types\n const { value, defaultValue, initialValue, ...otherProps } = this.props\n return this.inputRef = c} />\n }\n}\n\nInitializedInput.propTypes = {\n initialValue: PropTypes.string\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { sanitizeUrl } from \"core/utils\"\nimport { safeBuildUrl } from \"core/utils/url\"\n\n\nexport class InfoBasePath extends React.Component {\n static propTypes = {\n host: PropTypes.string,\n basePath: PropTypes.string\n }\n\n render() {\n let { host, basePath } = this.props\n\n return (\n \n [ Base URL: {host}{basePath} ]\n \n )\n }\n}\n\n\nclass Contact extends React.Component {\n static propTypes = {\n data: PropTypes.object,\n getComponent: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n selectedServer: PropTypes.string,\n url: PropTypes.string.isRequired,\n }\n\n render(){\n let { data, getComponent, selectedServer, url: specUrl} = this.props\n let name = data.get(\"name\") || \"the developer\"\n let url = safeBuildUrl(data.get(\"url\"), specUrl, {selectedServer})\n let email = data.get(\"email\")\n\n const Link = getComponent(\"Link\")\n\n return (\n \n { url &&
{ name } - Website
}\n { email &&\n
\n { url ? `Send email to ${name}` : `Contact ${name}`}\n \n }\n
\n )\n }\n}\n\nclass License extends React.Component {\n static propTypes = {\n license: PropTypes.object,\n getComponent: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n selectedServer: PropTypes.string,\n url: PropTypes.string.isRequired,\n }\n\n render(){\n let { license, getComponent, selectedServer, url: specUrl } = this.props\n\n const Link = getComponent(\"Link\")\n let name = license.get(\"name\") || \"License\"\n let url = safeBuildUrl(license.get(\"url\"), specUrl, {selectedServer})\n\n return (\n \n {\n url ? { name }\n : { name } \n }\n
\n )\n }\n}\n\nexport class InfoUrl extends React.PureComponent {\n static propTypes = {\n url: PropTypes.string.isRequired,\n getComponent: PropTypes.func.isRequired\n }\n\n\n render() {\n const { url, getComponent } = this.props\n\n const Link = getComponent(\"Link\")\n\n return { url } \n }\n}\n\nexport default class Info extends React.Component {\n static propTypes = {\n info: PropTypes.object,\n url: PropTypes.string,\n host: PropTypes.string,\n basePath: PropTypes.string,\n externalDocs: ImPropTypes.map,\n getComponent: PropTypes.func.isRequired,\n oas3selectors: PropTypes.func,\n selectedServer: PropTypes.string,\n }\n\n render() {\n let { info, url, host, basePath, getComponent, externalDocs, selectedServer, url: specUrl } = this.props\n let version = info.get(\"version\")\n let description = info.get(\"description\")\n let title = info.get(\"title\")\n let termsOfServiceUrl = safeBuildUrl(info.get(\"termsOfService\"), specUrl, {selectedServer})\n let contact = info.get(\"contact\")\n let license = info.get(\"license\")\n let rawExternalDocsUrl = externalDocs && externalDocs.get(\"url\")\n let externalDocsUrl = safeBuildUrl(rawExternalDocsUrl, specUrl, {selectedServer})\n let externalDocsDescription = externalDocs && externalDocs.get(\"description\")\n\n const Markdown = getComponent(\"Markdown\", true)\n const Link = getComponent(\"Link\")\n const VersionStamp = getComponent(\"VersionStamp\")\n const InfoUrl = getComponent(\"InfoUrl\")\n const InfoBasePath = getComponent(\"InfoBasePath\")\n\n return (\n \n
\n { title }\n { version && }\n \n { host || basePath ? : null }\n { url && }\n \n\n
\n \n
\n\n {\n termsOfServiceUrl &&
\n Terms of service\n
\n }\n\n {contact && contact.size ?
: null }\n {license && license.size ?
: null }\n { externalDocsUrl ?\n {externalDocsDescription || externalDocsUrl}\n : null }\n\n \n )\n }\n\n}\n\nInfo.propTypes = {\n title: PropTypes.any,\n description: PropTypes.any,\n version: PropTypes.any,\n url: PropTypes.string\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class InfoContainer extends React.Component {\n\n static propTypes = {\n specActions: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n oas3Selectors: PropTypes.func.isRequired,\n }\n\n render () {\n const {specSelectors, getComponent, oas3Selectors} = this.props\n\n const info = specSelectors.info()\n const url = specSelectors.url()\n const basePath = specSelectors.basePath()\n const host = specSelectors.host()\n const externalDocs = specSelectors.externalDocs()\n const selectedServer = oas3Selectors.selectedServer()\n\n const Info = getComponent(\"info\")\n\n return (\n \n {info && info.count() ? (\n \n ) : null}\n
\n )\n }\n}\n","import React from \"react\"\n\n// Nothing by default- component can be overridden by another plugin.\n\nexport default class JumpToPath extends React.Component {\n render() {\n return null\n }\n}\n","import React from \"react\"\nimport { CopyToClipboard } from \"react-copy-to-clipboard\"\nimport PropTypes from \"prop-types\"\n\n/**\n * @param {{ textToCopy: string }} props\n * @returns {JSX.Element}\n * @constructor\n */\nexport default class CopyToClipboardBtn extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n
\n )\n }\n\n static propTypes = {\n textToCopy: PropTypes.string.isRequired,\n }\n}\n","import React from \"react\"\n\nexport default class Footer extends React.Component {\n render() {\n return (\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class FilterContainer extends React.Component {\n\n static propTypes = {\n specSelectors: PropTypes.object.isRequired,\n layoutSelectors: PropTypes.object.isRequired,\n layoutActions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n }\n\n onFilterChange = (e) => {\n const {target: {value}} = e\n this.props.layoutActions.updateFilter(value)\n }\n\n render () {\n const {specSelectors, layoutSelectors, getComponent} = this.props\n const Col = getComponent(\"Col\")\n\n const isLoading = specSelectors.loadingStatus() === \"loading\"\n const isFailed = specSelectors.loadingStatus() === \"failed\"\n const filter = layoutSelectors.currentFilter()\n\n const classNames = [\"operation-filter-input\"]\n if (isFailed) classNames.push(\"failed\")\n if (isLoading) classNames.push(\"loading\")\n\n return (\n \n {filter === null || filter === false || filter === \"false\" ? null :\n
\n
\n \n \n \n }\n
\n )\n }\n}\n","import React, { PureComponent } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { fromJS, List } from \"immutable\"\nimport { getSampleSchema } from \"core/utils\"\nimport { getKnownSyntaxHighlighterLanguage } from \"core/utils/jsonParse\"\n\nconst NOOP = Function.prototype\n\nexport default class ParamBody extends PureComponent {\n\n static propTypes = {\n param: PropTypes.object,\n onChange: PropTypes.func,\n onChangeConsumes: PropTypes.func,\n consumes: PropTypes.object,\n consumesValue: PropTypes.string,\n fn: PropTypes.object.isRequired,\n getConfigs: PropTypes.func.isRequired,\n getComponent: PropTypes.func.isRequired,\n isExecute: PropTypes.bool,\n specSelectors: PropTypes.object.isRequired,\n pathMethod: PropTypes.array.isRequired\n }\n\n static defaultProp = {\n consumes: fromJS([\"application/json\"]),\n param: fromJS({}),\n onChange: NOOP,\n onChangeConsumes: NOOP,\n }\n\n constructor(props, context) {\n super(props, context)\n\n this.state = {\n isEditBox: false,\n value: \"\"\n }\n\n }\n\n componentDidMount() {\n this.updateValues.call(this, this.props)\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.updateValues.call(this, nextProps)\n }\n\n updateValues = (props) => {\n let { param, isExecute, consumesValue=\"\" } = props\n let isXml = /xml/i.test(consumesValue)\n let isJson = /json/i.test(consumesValue)\n let paramValue = isXml ? param.get(\"value_xml\") : param.get(\"value\")\n\n if ( paramValue !== undefined ) {\n let val = !paramValue && isJson ? \"{}\" : paramValue\n this.setState({ value: val })\n this.onChange(val, {isXml: isXml, isEditBox: isExecute})\n } else {\n if (isXml) {\n this.onChange(this.sample(\"xml\"), {isXml: isXml, isEditBox: isExecute})\n } else {\n this.onChange(this.sample(), {isEditBox: isExecute})\n }\n }\n }\n\n sample = (xml) => {\n let { param, fn:{inferSchema} } = this.props\n let schema = inferSchema(param.toJS())\n\n return getSampleSchema(schema, xml, {\n includeWriteOnly: true\n })\n }\n\n onChange = (value, { isEditBox, isXml }) => {\n this.setState({value, isEditBox})\n this._onChange(value, isXml)\n }\n\n _onChange = (val, isXml) => { (this.props.onChange || NOOP)(val, isXml) }\n\n handleOnChange = e => {\n const {consumesValue} = this.props\n const isXml = /xml/i.test(consumesValue)\n const inputValue = e.target.value\n this.onChange(inputValue, {isXml, isEditBox: this.state.isEditBox})\n }\n\n toggleIsEditBox = () => this.setState( state => ({isEditBox: !state.isEditBox}))\n\n render() {\n let {\n onChangeConsumes,\n param,\n isExecute,\n specSelectors,\n pathMethod,\n getConfigs,\n getComponent,\n } = this.props\n\n const Button = getComponent(\"Button\")\n const TextArea = getComponent(\"TextArea\")\n const HighlightCode = getComponent(\"highlightCode\")\n const ContentType = getComponent(\"contentType\")\n // for domains where specSelectors not passed\n let parameter = specSelectors ? specSelectors.parameterWithMetaByIdentity(pathMethod, param) : param\n let errors = parameter.get(\"errors\", List())\n let consumesValue = specSelectors.contentTypeValues(pathMethod).get(\"requestContentType\")\n let consumes = this.props.consumes && this.props.consumes.size ? this.props.consumes : ParamBody.defaultProp.consumes\n\n let { value, isEditBox } = this.state\n let language = null\n let testValueForJson = getKnownSyntaxHighlighterLanguage(value)\n if (testValueForJson) {\n language = \"json\"\n }\n\n return (\n \n {\n isEditBox && isExecute\n ?
\n : (value &&
)\n }\n
\n {\n !isExecute ? null\n :
\n { isEditBox ? \"Cancel\" : \"Edit\"}\n \n
\n }\n
\n Parameter content type \n \n \n
\n\n
\n )\n\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { CopyToClipboard } from \"react-copy-to-clipboard\"\nimport {SyntaxHighlighter, getStyle} from \"core/syntax-highlighting\"\nimport get from \"lodash/get\"\nimport { requestSnippetGenerator_curl_bash } from \"../plugins/request-snippets/fn\"\n\nexport default class Curl extends React.Component {\n static propTypes = {\n getConfigs: PropTypes.func.isRequired,\n request: PropTypes.object.isRequired\n }\n\n render() {\n let { request, getConfigs } = this.props\n let curl = requestSnippetGenerator_curl_bash(request)\n\n const config = getConfigs()\n\n const curlBlock = get(config, \"syntaxHighlight.activated\")\n ? \n {curl}\n \n :\n \n\n return (\n \n
Curl \n
\n \n
\n
\n {curlBlock}\n
\n
\n )\n }\n\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class Schemes extends React.Component {\n\n static propTypes = {\n specActions: PropTypes.object.isRequired,\n schemes: PropTypes.object.isRequired,\n currentScheme: PropTypes.string.isRequired,\n path: PropTypes.string,\n method: PropTypes.string,\n }\n\n UNSAFE_componentWillMount() {\n let { schemes } = this.props\n\n //fire 'change' event to set default 'value' of select\n this.setScheme(schemes.first())\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if ( !this.props.currentScheme || !nextProps.schemes.includes(this.props.currentScheme) ) {\n // if we don't have a selected currentScheme or if our selected scheme is no longer an option,\n // then fire 'change' event and select the first scheme in the list of options\n this.setScheme(nextProps.schemes.first())\n }\n }\n\n onChange =( e ) => {\n this.setScheme( e.target.value )\n }\n\n setScheme = ( value ) => {\n let { path, method, specActions } = this.props\n\n specActions.setScheme( value, path, method )\n }\n\n render() {\n let { schemes, currentScheme } = this.props\n\n return (\n \n Schemes \n \n { schemes.valueSeq().map(\n ( scheme ) => { scheme } \n ).toArray()}\n \n \n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class SchemesContainer extends React.Component {\n\n static propTypes = {\n specActions: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired\n }\n\n render () {\n const {specActions, specSelectors, getComponent} = this.props\n\n const currentScheme = specSelectors.operationScheme()\n const schemes = specSelectors.schemes()\n\n const Schemes = getComponent(\"schemes\")\n\n const schemesArePresent = schemes && schemes.size\n\n return schemesArePresent ? (\n \n ) : null\n }\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport Im from \"immutable\"\n\nexport default class ModelCollapse extends Component {\n static propTypes = {\n collapsedContent: PropTypes.any,\n expanded: PropTypes.bool,\n children: PropTypes.any,\n title: PropTypes.element,\n modelName: PropTypes.string,\n classes: PropTypes.string,\n onToggle: PropTypes.func,\n hideSelfOnExpand: PropTypes.bool,\n layoutActions: PropTypes.object,\n layoutSelectors: PropTypes.object.isRequired,\n specPath: ImPropTypes.list.isRequired,\n }\n\n static defaultProps = {\n collapsedContent: \"{...}\",\n expanded: false,\n title: null,\n onToggle: () => {},\n hideSelfOnExpand: false,\n specPath: Im.List([]),\n }\n\n constructor(props, context) {\n super(props, context)\n\n let { expanded, collapsedContent } = this.props\n\n this.state = {\n expanded : expanded,\n collapsedContent: collapsedContent || ModelCollapse.defaultProps.collapsedContent\n }\n }\n\n componentDidMount() {\n const { hideSelfOnExpand, expanded, modelName } = this.props\n if(hideSelfOnExpand && expanded) {\n // We just mounted pre-expanded, and we won't be going back..\n // So let's give our parent an `onToggle` call..\n // Since otherwise it will never be called.\n this.props.onToggle(modelName, expanded)\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps){\n if(this.props.expanded !== nextProps.expanded){\n this.setState({expanded: nextProps.expanded})\n }\n }\n\n toggleCollapsed=()=>{\n if(this.props.onToggle){\n this.props.onToggle(this.props.modelName,!this.state.expanded)\n }\n\n this.setState({\n expanded: !this.state.expanded\n })\n }\n\n onLoad = (ref) => {\n if (ref && this.props.layoutSelectors) {\n const scrollToKey = this.props.layoutSelectors.getScrollToKey()\n\n if( Im.is(scrollToKey, this.props.specPath) ) this.toggleCollapsed()\n this.props.layoutActions.readyToScroll(this.props.specPath, ref.parentElement)\n }\n }\n\n render () {\n const { title, classes } = this.props\n\n if(this.state.expanded ) {\n if(this.props.hideSelfOnExpand) {\n return \n {this.props.children}\n \n }\n }\n\n return (\n \n \n { title && {title} }\n \n { !this.state.expanded && {this.state.collapsedContent} }\n \n\n { this.state.expanded && this.props.children }\n \n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport cx from \"classnames\"\nimport randomBytes from \"randombytes\"\n\nexport default class ModelExample extends React.Component {\n static propTypes = {\n getComponent: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n schema: PropTypes.object.isRequired,\n example: PropTypes.any.isRequired,\n isExecute: PropTypes.bool,\n getConfigs: PropTypes.func.isRequired,\n specPath: ImPropTypes.list.isRequired,\n includeReadOnly: PropTypes.bool,\n includeWriteOnly: PropTypes.bool,\n }\n\n constructor(props, context) {\n super(props, context)\n let { getConfigs, isExecute } = this.props\n let { defaultModelRendering } = getConfigs()\n\n let activeTab = defaultModelRendering\n\n if (defaultModelRendering !== \"example\" && defaultModelRendering !== \"model\") {\n activeTab = \"example\"\n }\n\n if(isExecute) {\n activeTab = \"example\"\n }\n\n this.state = {\n activeTab,\n }\n }\n\n activeTab = ( e ) => {\n let { target : { dataset : { name } } } = e\n\n this.setState({\n activeTab: name\n })\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.isExecute &&\n !this.props.isExecute &&\n this.props.example\n ) {\n this.setState({ activeTab: \"example\" })\n }\n }\n\n render() {\n let { getComponent, specSelectors, schema, example, isExecute, getConfigs, specPath, includeReadOnly, includeWriteOnly } = this.props\n let { defaultModelExpandDepth } = getConfigs()\n const ModelWrapper = getComponent(\"ModelWrapper\")\n const HighlightCode = getComponent(\"highlightCode\")\n const exampleTabId = randomBytes(5).toString(\"base64\")\n const examplePanelId = randomBytes(5).toString(\"base64\")\n const modelTabId = randomBytes(5).toString(\"base64\")\n const modelPanelId = randomBytes(5).toString(\"base64\")\n\n let isOAS3 = specSelectors.isOAS3()\n\n return (\n \n
\n \n \n {isExecute ? \"Edit Value\" : \"Example Value\"}\n \n \n { schema && (\n \n \n {isOAS3 ? \"Schema\" : \"Model\" }\n \n \n )}\n \n {this.state.activeTab === \"example\" && (\n
\n {example ? example : (\n \n )}\n
\n )}\n\n {this.state.activeTab === \"model\" && (\n
\n \n
\n )}\n
\n )\n }\n\n}\n","import React, { Component, } from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nexport default class ModelWrapper extends Component {\n\n static propTypes = {\n schema: PropTypes.object.isRequired,\n name: PropTypes.string,\n displayName: PropTypes.string,\n fullPath: PropTypes.array.isRequired,\n specPath: ImPropTypes.list.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n expandDepth: PropTypes.number,\n layoutActions: PropTypes.object,\n layoutSelectors: PropTypes.object.isRequired,\n includeReadOnly: PropTypes.bool,\n includeWriteOnly: PropTypes.bool,\n }\n\n onToggle = (name,isShown) => {\n // If this prop is present, we'll have deepLinking for it\n if(this.props.layoutActions) {\n this.props.layoutActions.show(this.props.fullPath, isShown)\n }\n }\n\n render(){\n let { getComponent, getConfigs } = this.props\n const Model = getComponent(\"Model\")\n\n let expanded\n if(this.props.layoutSelectors) {\n // If this is prop is present, we'll have deepLinking for it\n expanded = this.props.layoutSelectors.isShown(this.props.fullPath)\n }\n\n return \n \n
\n }\n}\n","import React, { Component } from \"react\"\nimport Im, { Map } from \"immutable\"\nimport PropTypes from \"prop-types\"\n\nexport default class Models extends Component {\n static propTypes = {\n getComponent: PropTypes.func,\n specSelectors: PropTypes.object,\n specActions: PropTypes.object.isRequired,\n layoutSelectors: PropTypes.object,\n layoutActions: PropTypes.object,\n getConfigs: PropTypes.func.isRequired\n }\n\n getSchemaBasePath = () => {\n const isOAS3 = this.props.specSelectors.isOAS3()\n return isOAS3 ? [\"components\", \"schemas\"] : [\"definitions\"]\n }\n\n getCollapsedContent = () => {\n return \" \"\n }\n\n handleToggle = (name, isExpanded) => {\n const { layoutActions } = this.props\n layoutActions.show([...this.getSchemaBasePath(), name], isExpanded)\n if(isExpanded) {\n this.props.specActions.requestResolvedSubtree([...this.getSchemaBasePath(), name])\n }\n }\n\n onLoadModels = (ref) => {\n if (ref) {\n this.props.layoutActions.readyToScroll(this.getSchemaBasePath(), ref)\n }\n }\n\n onLoadModel = (ref) => {\n if (ref) {\n const name = ref.getAttribute(\"data-name\")\n this.props.layoutActions.readyToScroll([...this.getSchemaBasePath(), name], ref)\n }\n }\n\n render(){\n let { specSelectors, getComponent, layoutSelectors, layoutActions, getConfigs } = this.props\n let definitions = specSelectors.definitions()\n let { docExpansion, defaultModelsExpandDepth } = getConfigs()\n if (!definitions.size || defaultModelsExpandDepth < 0) return null\n\n const specPathBase = this.getSchemaBasePath()\n let showModels = layoutSelectors.isShown(specPathBase, defaultModelsExpandDepth > 0 && docExpansion !== \"none\")\n const isOAS3 = specSelectors.isOAS3()\n\n const ModelWrapper = getComponent(\"ModelWrapper\")\n const Collapse = getComponent(\"Collapse\")\n const ModelCollapse = getComponent(\"ModelCollapse\")\n const JumpToPath = getComponent(\"JumpToPath\", true)\n\n return \n \n layoutActions.show(specPathBase, !showModels)}\n >\n {isOAS3 ? \"Schemas\" : \"Models\"} \n \n \n \n \n \n \n {\n definitions.entrySeq().map(([name])=>{\n\n const fullPath = [...specPathBase, name]\n const specPath = Im.List(fullPath)\n\n const schemaValue = specSelectors.specResolvedSubtree(fullPath)\n const rawSchemaValue = specSelectors.specJson().getIn(fullPath)\n\n const schema = Map.isMap(schemaValue) ? schemaValue : Im.Map()\n const rawSchema = Map.isMap(rawSchemaValue) ? rawSchemaValue : Im.Map()\n\n const displayName = schema.get(\"title\") || rawSchema.get(\"title\") || name\n const isShown = layoutSelectors.isShown(fullPath, false)\n\n if( isShown && (schema.size === 0 && rawSchema.size > 0) ) {\n // Firing an action in a container render is not great,\n // but it works for now.\n this.props.specActions.requestResolvedSubtree(fullPath)\n }\n\n const content = \n\n const title = \n \n {displayName}\n \n \n\n return \n \n 0 && isShown }\n >{content} \n
\n }).toArray()\n }\n \n \n }\n}\n","import React from \"react\"\nimport ImPropTypes from \"react-immutable-proptypes\"\n\nconst EnumModel = ({ value, getComponent }) => {\n let ModelCollapse = getComponent(\"ModelCollapse\")\n let collapsedContent = Array [ { value.count() } ] \n return \n Enum: \n \n [ { value.join(\", \") } ]\n \n \n}\nEnumModel.propTypes = {\n value: ImPropTypes.iterable,\n getComponent: ImPropTypes.func\n}\n\nexport default EnumModel","import React, { Component, } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { List } from \"immutable\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { sanitizeUrl } from \"core/utils\"\n\nconst braceOpen = \"{\"\nconst braceClose = \"}\"\nconst propClass = \"property\"\n\nexport default class ObjectModel extends Component {\n static propTypes = {\n schema: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n expanded: PropTypes.bool,\n onToggle: PropTypes.func,\n specSelectors: PropTypes.object.isRequired,\n name: PropTypes.string,\n displayName: PropTypes.string,\n isRef: PropTypes.bool,\n expandDepth: PropTypes.number,\n depth: PropTypes.number,\n specPath: ImPropTypes.list.isRequired,\n includeReadOnly: PropTypes.bool,\n includeWriteOnly: PropTypes.bool,\n }\n\n render(){\n let { schema, name, displayName, isRef, getComponent, getConfigs, depth, onToggle, expanded, specPath, ...otherProps } = this.props\n let { specSelectors,expandDepth, includeReadOnly, includeWriteOnly} = otherProps\n const { isOAS3 } = specSelectors\n\n if(!schema) {\n return null\n }\n\n const { showExtensions } = getConfigs()\n\n let description = schema.get(\"description\")\n let properties = schema.get(\"properties\")\n let additionalProperties = schema.get(\"additionalProperties\")\n let title = schema.get(\"title\") || displayName || name\n let requiredProperties = schema.get(\"required\")\n let infoProperties = schema\n .filter( ( v, key) => [\"maxProperties\", \"minProperties\", \"nullable\", \"example\"].indexOf(key) !== -1 )\n let deprecated = schema.get(\"deprecated\")\n let externalDocsUrl = schema.getIn([\"externalDocs\", \"url\"])\n let externalDocsDescription = schema.getIn([\"externalDocs\", \"description\"])\n\n const JumpToPath = getComponent(\"JumpToPath\", true)\n const Markdown = getComponent(\"Markdown\", true)\n const Model = getComponent(\"Model\")\n const ModelCollapse = getComponent(\"ModelCollapse\")\n const Property = getComponent(\"Property\")\n const Link = getComponent(\"Link\")\n\n const JumpToPathSection = () => {\n return \n }\n const collapsedContent = (\n { braceOpen } ...{ braceClose } \n {\n isRef ? : \"\"\n }\n )\n\n const anyOf = specSelectors.isOAS3() ? schema.get(\"anyOf\") : null\n const oneOf = specSelectors.isOAS3() ? schema.get(\"oneOf\") : null\n const not = specSelectors.isOAS3() ? schema.get(\"not\") : null\n\n const titleEl = title && \n { isRef && schema.get(\"$$ref\") && { schema.get(\"$$ref\") } }\n { title } \n \n\n return \n \n\n { braceOpen } \n {\n !isRef ? null : \n }\n \n {\n \n {\n !description ? null : \n description: \n \n \n \n \n }\n {\n externalDocsUrl &&\n \n \n externalDocs:\n \n \n {externalDocsDescription || externalDocsUrl}\n \n \n }\n {\n !deprecated ? null :\n \n \n deprecated:\n \n \n true\n \n \n }\n {\n !(properties && properties.size) ? null : properties.entrySeq().filter(\n ([, value]) => {\n return (!value.get(\"readOnly\") || includeReadOnly) &&\n (!value.get(\"writeOnly\") || includeWriteOnly)\n }\n ).map(\n ([key, value]) => {\n let isDeprecated = isOAS3() && value.get(\"deprecated\")\n let isRequired = List.isList(requiredProperties) && requiredProperties.contains(key)\n\n let classNames = [\"property-row\"]\n\n if (isDeprecated) {\n classNames.push(\"deprecated\")\n }\n\n if (isRequired) {\n classNames.push(\"required\")\n }\n\n return (\n \n { key }{ isRequired && * }\n \n \n \n \n )\n }).toArray()\n }\n {\n // empty row before extensions...\n !showExtensions ? null : \n }\n {\n !showExtensions ? null :\n schema.entrySeq().map(\n ([key, value]) => {\n if(key.slice(0,2) !== \"x-\") {\n return\n }\n\n const normalizedValue = !value ? null : value.toJS ? value.toJS() : value\n\n return (\n \n { key }\n \n \n { JSON.stringify(normalizedValue) }\n \n )\n }).toArray()\n }\n {\n !additionalProperties || !additionalProperties.size ? null\n : \n { \"< * >:\" } \n \n \n \n \n }\n {\n !anyOf ? null\n : \n { \"anyOf ->\" } \n \n {anyOf.map((schema, k) => {\n return
\n })}\n \n \n }\n {\n !oneOf ? null\n : \n { \"oneOf ->\" } \n \n {oneOf.map((schema, k) => {\n return
\n })}\n \n \n }\n {\n !not ? null\n : \n { \"not ->\" } \n \n \n \n
\n \n \n }\n
\n }\n \n { braceClose } \n \n {\n infoProperties.size ? infoProperties.entrySeq().map( ( [ key, v ] ) => ) : null\n }\n \n }\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport { sanitizeUrl } from \"core/utils\"\n\nconst propClass = \"property\"\n\nexport default class ArrayModel extends Component {\n static propTypes = {\n schema: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n specSelectors: PropTypes.object.isRequired,\n name: PropTypes.string,\n displayName: PropTypes.string,\n required: PropTypes.bool,\n expandDepth: PropTypes.number,\n specPath: ImPropTypes.list.isRequired,\n depth: PropTypes.number,\n includeReadOnly: PropTypes.bool,\n includeWriteOnly: PropTypes.bool,\n }\n\n render(){\n let { getComponent, getConfigs, schema, depth, expandDepth, name, displayName, specPath } = this.props\n let description = schema.get(\"description\")\n let items = schema.get(\"items\")\n let title = schema.get(\"title\") || displayName || name\n let properties = schema.filter( ( v, key) => [\"type\", \"items\", \"description\", \"$$ref\", \"externalDocs\"].indexOf(key) === -1 )\n let externalDocsUrl = schema.getIn([\"externalDocs\", \"url\"])\n let externalDocsDescription = schema.getIn([\"externalDocs\", \"description\"])\n\n\n const Markdown = getComponent(\"Markdown\", true)\n const ModelCollapse = getComponent(\"ModelCollapse\")\n const Model = getComponent(\"Model\")\n const Property = getComponent(\"Property\")\n const Link = getComponent(\"Link\")\n\n const titleEl = title &&\n \n { title } \n \n\n /*\n Note: we set `name={null}` in below because we don't want\n the name of the current Model passed (and displayed) as the name of the array element Model\n */\n\n return \n \n [\n {\n properties.size ? properties.entrySeq().map( ( [ key, v ] ) => ) : null\n }\n {\n !description ? (properties.size ?
: null) :\n \n }\n { externalDocsUrl &&\n \n {externalDocsDescription || externalDocsUrl}\n
\n }\n \n \n \n ]\n \n \n }\n}\n","import React, { Component } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { getExtensions, sanitizeUrl } from \"core/utils\"\n\nconst propClass = \"property primitive\"\n\nexport default class Primitive extends Component {\n static propTypes = {\n schema: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired,\n getConfigs: PropTypes.func.isRequired,\n name: PropTypes.string,\n displayName: PropTypes.string,\n depth: PropTypes.number,\n expandDepth: PropTypes.number\n }\n\n render() {\n let { schema, getComponent, getConfigs, name, displayName, depth, expandDepth } = this.props\n\n const { showExtensions } = getConfigs()\n\n if (!schema || !schema.get) {\n // don't render if schema isn't correctly formed\n return
\n }\n\n let type = schema.get(\"type\")\n let format = schema.get(\"format\")\n let xml = schema.get(\"xml\")\n let enumArray = schema.get(\"enum\")\n let title = schema.get(\"title\") || displayName || name\n let description = schema.get(\"description\")\n let extensions = getExtensions(schema)\n let properties = schema\n .filter((_, key) => [\"enum\", \"type\", \"format\", \"description\", \"$$ref\", \"externalDocs\"].indexOf(key) === -1)\n .filterNot((_, key) => extensions.has(key))\n let externalDocsUrl = schema.getIn([\"externalDocs\", \"url\"])\n let externalDocsDescription = schema.getIn([\"externalDocs\", \"description\"])\n\n const Markdown = getComponent(\"Markdown\", true)\n const EnumModel = getComponent(\"EnumModel\")\n const Property = getComponent(\"Property\")\n const ModelCollapse = getComponent(\"ModelCollapse\")\n const Link = getComponent(\"Link\")\n\n const titleEl = title &&\n \n {title} \n \n\n return \n \n \n {name && depth > 1 && {title} }\n {type} \n {format && (${format}) }\n {\n properties.size ? properties.entrySeq().map(([key, v]) => ) : null\n }\n {\n showExtensions && extensions.size ? extensions.entrySeq().map(([key, v]) => ) : null\n }\n {\n !description ? null :\n \n }\n {\n externalDocsUrl &&\n \n {externalDocsDescription || externalDocsUrl}\n
\n }\n {\n xml && xml.size ? (xml: \n {\n xml.entrySeq().map(([key, v]) => {key}: {String(v)} ).toArray()\n }\n ) : null\n }\n {\n enumArray && \n }\n \n \n \n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const Property = ({ propKey, propVal, propClass }) => {\n return (\n \n { propKey }: { String(propVal) } \n )\n}\nProperty.propTypes = {\n propKey: PropTypes.string,\n propVal: PropTypes.any,\n propClass: PropTypes.string\n}\n\nexport default Property\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class TryItOutButton extends React.Component {\n\n static propTypes = {\n onTryoutClick: PropTypes.func,\n onResetClick: PropTypes.func,\n onCancelClick: PropTypes.func,\n enabled: PropTypes.bool, // Try it out is enabled, ie: the user has access to the form\n hasUserEditedBody: PropTypes.bool, // Try it out is enabled, ie: the user has access to the form\n isOAS3: PropTypes.bool, // Try it out is enabled, ie: the user has access to the form\n }\n\n static defaultProps = {\n onTryoutClick: Function.prototype,\n onCancelClick: Function.prototype,\n onResetClick: Function.prototype,\n enabled: false,\n hasUserEditedBody: false,\n isOAS3: false,\n }\n\n render() {\n const { onTryoutClick, onCancelClick, onResetClick, enabled, hasUserEditedBody, isOAS3 } = this.props\n\n const showReset = isOAS3 && hasUserEditedBody\n return (\n \n {\n enabled ? Cancel \n : Try it out \n\n }\n {\n showReset && Reset \n }\n
\n )\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class VersionPragmaFilter extends React.PureComponent {\n static propTypes = {\n isSwagger2: PropTypes.bool.isRequired,\n isOAS3: PropTypes.bool.isRequired,\n bypass: PropTypes.bool,\n alsoShow: PropTypes.element,\n children: PropTypes.any,\n }\n\n static defaultProps = {\n alsoShow: null,\n children: null,\n bypass: false,\n }\n\n render() {\n const { bypass, isSwagger2, isOAS3, alsoShow } = this.props\n\n if(bypass) {\n return { this.props.children }
\n }\n\n if(isSwagger2 && isOAS3) {\n return \n {alsoShow}\n
\n
\n
Unable to render this definition \n
swagger
and openapi
fields cannot be present in the same Swagger or OpenAPI definition. Please remove one of the fields.
\n
Supported version fields are swagger: {\"\\\"2.0\\\"\"}
and those that match openapi: 3.0.n
(for example, openapi: 3.0.0
).
\n
\n
\n
\n }\n\n if(!isSwagger2 && !isOAS3) {\n return \n {alsoShow}\n
\n
\n
Unable to render this definition \n
The provided definition does not specify a valid version field.
\n
Please indicate a valid Swagger or OpenAPI version field. Supported version fields are swagger: {\"\\\"2.0\\\"\"}
and those that match openapi: 3.0.n
(for example, openapi: 3.0.0
).
\n
\n
\n
\n }\n\n return { this.props.children }
\n }\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nconst VersionStamp = ({ version }) => {\n return { version } \n}\n\nVersionStamp.propTypes = {\n version: PropTypes.string.isRequired\n}\n\nexport default VersionStamp\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport const DeepLink = ({ enabled, path, text }) => {\n return (\n e.preventDefault() : null}\n href={enabled ? `#/${path}` : null}>\n {text} \n \n )\n}\nDeepLink.propTypes = {\n enabled: PropTypes.bool,\n isShown: PropTypes.bool,\n path: PropTypes.string,\n text: PropTypes.node\n}\n\nexport default DeepLink\n","import React from \"react\"\nconst SvgAssets = () =>\n \n
\n \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n \n \n\n \n \n
\n\nexport default SvgAssets\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class BaseLayout extends React.Component {\n\n static propTypes = {\n errSelectors: PropTypes.object.isRequired,\n errActions: PropTypes.object.isRequired,\n specSelectors: PropTypes.object.isRequired,\n oas3Selectors: PropTypes.object.isRequired,\n oas3Actions: PropTypes.object.isRequired,\n getComponent: PropTypes.func.isRequired\n }\n\n render() {\n let {errSelectors, specSelectors, getComponent} = this.props\n\n let SvgAssets = getComponent(\"SvgAssets\")\n let InfoContainer = getComponent(\"InfoContainer\", true)\n let VersionPragmaFilter = getComponent(\"VersionPragmaFilter\")\n let Operations = getComponent(\"operations\", true)\n let Models = getComponent(\"Models\", true)\n let Row = getComponent(\"Row\")\n let Col = getComponent(\"Col\")\n let Errors = getComponent(\"errors\", true)\n\n const ServersContainer = getComponent(\"ServersContainer\", true)\n const SchemesContainer = getComponent(\"SchemesContainer\", true)\n const AuthorizeBtnContainer = getComponent(\"AuthorizeBtnContainer\", true)\n const FilterContainer = getComponent(\"FilterContainer\", true)\n let isSwagger2 = specSelectors.isSwagger2()\n let isOAS3 = specSelectors.isOAS3()\n\n const isSpecEmpty = !specSelectors.specStr()\n\n const loadingStatus = specSelectors.loadingStatus()\n\n let loadingMessage = null\n\n if(loadingStatus === \"loading\") {\n loadingMessage = \n }\n\n if(loadingStatus === \"failed\") {\n loadingMessage = \n
\n
Failed to load API definition. \n \n \n
\n }\n\n if (loadingStatus === \"failedConfig\") {\n const lastErr = errSelectors.lastError()\n const lastErrMsg = lastErr ? lastErr.get(\"message\") : \"\"\n loadingMessage = \n
\n
Failed to load remote configuration. \n
{lastErrMsg}
\n
\n
\n }\n\n if(!loadingMessage && isSpecEmpty) {\n loadingMessage = No API definition provided. \n }\n\n if(loadingMessage) {\n return \n
\n {loadingMessage}\n
\n
\n }\n\n const servers = specSelectors.servers()\n const schemes = specSelectors.schemes()\n\n const hasServers = servers && servers.size\n const hasSchemes = schemes && schemes.size\n const hasSecurityDefinitions = !!specSelectors.securityDefinitions()\n\n return (\n \n
\n
}>\n \n \n \n \n \n
\n\n {hasServers || hasSchemes || hasSecurityDefinitions ? (\n \n
\n {hasServers ? (
) : null}\n {hasSchemes ? (
) : null}\n {hasSecurityDefinitions ? (
) : null}\n \n
\n ) : null}\n\n \n\n \n \n \n \n
\n \n \n \n \n
\n \n
\n )\n }\n}\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_react_debounce_input_7ed3e068__[\"default\"] });","import React, { PureComponent, Component } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { List, fromJS } from \"immutable\"\nimport cx from \"classnames\"\nimport ImPropTypes from \"react-immutable-proptypes\"\nimport DebounceInput from \"react-debounce-input\"\nimport { stringify, getSampleSchema } from \"core/utils\"\n//import \"less/json-schema-form\"\n\nconst noop = ()=> {}\nconst JsonSchemaPropShape = {\n getComponent: PropTypes.func.isRequired,\n value: PropTypes.any,\n onChange: PropTypes.func,\n keyName: PropTypes.any,\n fn: PropTypes.object.isRequired,\n schema: PropTypes.object,\n errors: ImPropTypes.list,\n required: PropTypes.bool,\n dispatchInitialValue: PropTypes.bool,\n description: PropTypes.any,\n disabled: PropTypes.bool,\n}\n\nconst JsonSchemaDefaultProps = {\n value: \"\",\n onChange: noop,\n schema: {},\n keyName: \"\",\n required: false,\n errors: List()\n}\n\nexport class JsonSchemaForm extends Component {\n\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n componentDidMount() {\n const { dispatchInitialValue, value, onChange } = this.props\n if(dispatchInitialValue) {\n onChange(value)\n } else if(dispatchInitialValue === false) {\n onChange(\"\")\n }\n }\n\n render() {\n let { schema, errors, value, onChange, getComponent, fn, disabled } = this.props\n const format = schema && schema.get ? schema.get(\"format\") : null\n const type = schema && schema.get ? schema.get(\"type\") : null\n\n let getComponentSilently = (name) => getComponent(name, false, { failSilently: true })\n let Comp = type ? format ?\n getComponentSilently(`JsonSchema_${type}_${format}`) :\n getComponentSilently(`JsonSchema_${type}`) :\n getComponent(\"JsonSchema_string\")\n if (!Comp) {\n Comp = getComponent(\"JsonSchema_string\")\n }\n return \n }\n}\n\nexport class JsonSchema_string extends Component {\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n onChange = (e) => {\n const value = this.props.schema && this.props.schema.get(\"type\") === \"file\" ? e.target.files[0] : e.target.value\n this.props.onChange(value, this.props.keyName)\n }\n onEnumChange = (val) => this.props.onChange(val)\n render() {\n let { getComponent, value, schema, errors, required, description, disabled } = this.props\n const enumValue = schema && schema.get ? schema.get(\"enum\") : null\n const format = schema && schema.get ? schema.get(\"format\") : null\n const type = schema && schema.get ? schema.get(\"type\") : null\n const schemaIn = schema && schema.get ? schema.get(\"in\") : null\n if (!value) {\n value = \"\" // value should not be null; this fixes a Debounce error\n }\n errors = errors.toJS ? errors.toJS() : []\n\n if ( enumValue ) {\n const Select = getComponent(\"Select\")\n return ( )\n }\n\n const isDisabled = disabled || (schemaIn && schemaIn === \"formData\" && !(\"FormData\" in window))\n const Input = getComponent(\"Input\")\n if (type && type === \"file\") {\n return (\n \n )\n }\n else {\n return (\n \n )\n }\n }\n}\n\nexport class JsonSchema_array extends PureComponent {\n\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n constructor(props, context) {\n super(props, context)\n this.state = { value: valueOrEmptyList(props.value), schema: props.schema}\n }\n\n UNSAFE_componentWillReceiveProps(props) {\n const value = valueOrEmptyList(props.value)\n if(value !== this.state.value)\n this.setState({ value })\n\n if(props.schema !== this.state.schema)\n this.setState({ schema: props.schema })\n }\n\n onChange = () => {\n this.props.onChange(this.state.value)\n }\n\n onItemChange = (itemVal, i) => {\n this.setState(({ value }) => ({\n value: value.set(i, itemVal)\n }), this.onChange)\n }\n\n removeItem = (i) => {\n this.setState(({ value }) => ({\n value: value.delete(i)\n }), this.onChange)\n }\n\n addItem = () => {\n let newValue = valueOrEmptyList(this.state.value)\n this.setState(() => ({\n value: newValue.push(getSampleSchema(this.state.schema.get(\"items\"), false, {\n includeWriteOnly: true\n }))\n }), this.onChange)\n }\n\n onEnumChange = (value) => {\n this.setState(() => ({\n value: value\n }), this.onChange)\n }\n\n render() {\n let { getComponent, required, schema, errors, fn, disabled } = this.props\n\n errors = errors.toJS ? errors.toJS() : Array.isArray(errors) ? errors : []\n const arrayErrors = errors.filter(e => typeof e === \"string\")\n const needsRemoveError = errors.filter(e => e.needRemove !== undefined)\n .map(e => e.error)\n const value = this.state.value // expect Im List\n const shouldRenderValue =\n value && value.count && value.count() > 0 ? true : false\n const schemaItemsEnum = schema.getIn([\"items\", \"enum\"])\n const schemaItemsType = schema.getIn([\"items\", \"type\"])\n const schemaItemsFormat = schema.getIn([\"items\", \"format\"])\n const schemaItemsSchema = schema.get(\"items\")\n let ArrayItemsComponent\n let isArrayItemText = false\n let isArrayItemFile = (schemaItemsType === \"file\" || (schemaItemsType === \"string\" && schemaItemsFormat === \"binary\")) ? true : false\n if (schemaItemsType && schemaItemsFormat) {\n ArrayItemsComponent = getComponent(`JsonSchema_${schemaItemsType}_${schemaItemsFormat}`)\n } else if (schemaItemsType === \"boolean\" || schemaItemsType === \"array\" || schemaItemsType === \"object\") {\n ArrayItemsComponent = getComponent(`JsonSchema_${schemaItemsType}`)\n }\n // if ArrayItemsComponent not assigned or does not exist,\n // use default schemaItemsType === \"string\" & JsonSchemaArrayItemText component\n if (!ArrayItemsComponent && !isArrayItemFile) {\n isArrayItemText = true\n }\n\n if ( schemaItemsEnum ) {\n const Select = getComponent(\"Select\")\n return ( )\n }\n\n const Button = getComponent(\"Button\")\n return (\n \n {shouldRenderValue ?\n (value.map((item, i) => {\n const itemErrors = fromJS([\n ...errors.filter((err) => err.index === i)\n .map(e => e.error)\n ])\n return (\n
\n {\n isArrayItemFile ?\n
this.onItemChange(val, i)}\n disabled={disabled}\n errors={itemErrors}\n getComponent={getComponent}\n />\n : isArrayItemText ?\n this.onItemChange(val, i)}\n disabled={disabled}\n errors={itemErrors}\n />\n : this.onItemChange(val, i)}\n disabled={disabled}\n errors={itemErrors}\n schema={schemaItemsSchema}\n getComponent={getComponent}\n fn={fn}\n />\n }\n {!disabled ? (\n this.removeItem(i)}\n > - \n ) : null}\n \n )\n })\n ) : null\n }\n {!disabled ? (\n
\n Add {schemaItemsType ? `${schemaItemsType} ` : \"\"}item\n \n ) : null}\n
\n )\n }\n}\n\nexport class JsonSchemaArrayItemText extends Component {\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n onChange = (e) => {\n const value = e.target.value\n this.props.onChange(value, this.props.keyName)\n }\n\n render() {\n let { value, errors, description, disabled } = this.props\n if (!value) {\n value = \"\" // value should not be null\n }\n errors = errors.toJS ? errors.toJS() : []\n\n return ( )\n }\n}\n\nexport class JsonSchemaArrayItemFile extends Component {\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n onFileChange = (e) => {\n const value = e.target.files[0]\n this.props.onChange(value, this.props.keyName)\n }\n\n render() {\n let { getComponent, errors, disabled } = this.props\n const Input = getComponent(\"Input\")\n const isDisabled = disabled || !(\"FormData\" in window)\n\n return ( )\n }\n}\n\nexport class JsonSchema_boolean extends Component {\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n onEnumChange = (val) => this.props.onChange(val)\n render() {\n let { getComponent, value, errors, schema, required, disabled } = this.props\n errors = errors.toJS ? errors.toJS() : []\n let enumValue = schema && schema.get ? schema.get(\"enum\") : null\n let allowEmptyValue = !enumValue || !required\n let booleanValue = !enumValue && [\"true\", \"false\"]\n const Select = getComponent(\"Select\")\n\n return ( )\n }\n}\n\nconst stringifyObjectErrors = (errors) => {\n return errors.map(err => {\n const meta = err.propKey !== undefined ? err.propKey : err.index\n let stringError = typeof err === \"string\" ? err : typeof err.error === \"string\" ? err.error : null\n\n if(!meta && stringError) {\n return stringError\n }\n let currentError = err.error\n let path = `/${err.propKey}`\n while(typeof currentError === \"object\") {\n const part = currentError.propKey !== undefined ? currentError.propKey : currentError.index\n if(part === undefined) {\n break\n }\n path += `/${part}`\n if (!currentError.error) {\n break\n }\n currentError = currentError.error\n }\n return `${path}: ${currentError}`\n })\n}\n\nexport class JsonSchema_object extends PureComponent {\n constructor() {\n super()\n }\n\n static propTypes = JsonSchemaPropShape\n static defaultProps = JsonSchemaDefaultProps\n\n onChange = (value) => {\n this.props.onChange(value)\n }\n\n handleOnChange = e => {\n const inputValue = e.target.value\n\n this.onChange(inputValue)\n }\n\n render() {\n let {\n getComponent,\n value,\n errors,\n disabled\n } = this.props\n\n const TextArea = getComponent(\"TextArea\")\n errors = errors.toJS ? errors.toJS() : Array.isArray(errors) ? errors : []\n\n return (\n \n \n
\n )\n }\n}\n\nfunction valueOrEmptyList(value) {\n return List.isList(value) ? value : Array.isArray(value) ? fromJS(value) : List()\n}\n","import err from \"core/plugins/err\"\nimport layout from \"core/plugins/layout\"\nimport spec from \"core/plugins/spec\"\nimport view from \"core/plugins/view\"\nimport samples from \"core/plugins/samples\"\nimport requestSnippets from \"core/plugins/request-snippets\"\nimport logs from \"core/plugins/logs\"\nimport swaggerJs from \"core/plugins/swagger-js\"\nimport auth from \"core/plugins/auth\"\nimport util from \"core/plugins/util\"\nimport downloadUrlPlugin from \"core/plugins/download-url\"\nimport configsPlugin from \"core/plugins/configs\"\nimport deepLinkingPlugin from \"core/plugins/deep-linking\"\nimport filter from \"core/plugins/filter\"\nimport onComplete from \"core/plugins/on-complete\"\nimport safeRender from \"core/plugins/safe-render\"\n\nimport OperationContainer from \"core/containers/OperationContainer\"\n\nimport App from \"core/components/app\"\nimport AuthorizationPopup from \"core/components/auth/authorization-popup\"\nimport AuthorizeBtn from \"core/components/auth/authorize-btn\"\nimport AuthorizeBtnContainer from \"core/containers/authorize-btn\"\nimport AuthorizeOperationBtn from \"core/components/auth/authorize-operation-btn\"\nimport Auths from \"core/components/auth/auths\"\nimport AuthItem from \"core/components/auth/auth-item\"\nimport AuthError from \"core/components/auth/error\"\nimport ApiKeyAuth from \"core/components/auth/api-key-auth\"\nimport BasicAuth from \"core/components/auth/basic-auth\"\nimport Example from \"core/components/example\"\nimport ExamplesSelect from \"core/components/examples-select\"\nimport ExamplesSelectValueRetainer from \"core/components/examples-select-value-retainer\"\nimport Oauth2 from \"core/components/auth/oauth2\"\nimport Clear from \"core/components/clear\"\nimport LiveResponse from \"core/components/live-response\"\nimport OnlineValidatorBadge from \"core/components/online-validator-badge\"\nimport Operations from \"core/components/operations\"\nimport OperationTag from \"core/components/operation-tag\"\nimport Operation from \"core/components/operation\"\nimport OperationSummary from \"core/components/operation-summary\"\nimport OperationSummaryMethod from \"core/components/operation-summary-method\"\nimport OperationSummaryPath from \"core/components/operation-summary-path\"\nimport OperationExt from \"core/components/operation-extensions\"\nimport OperationExtRow from \"core/components/operation-extension-row\"\nimport HighlightCode from \"core/components/highlight-code\"\nimport Responses from \"core/components/responses\"\nimport Response from \"core/components/response\"\nimport ResponseExtension from \"core/components/response-extension\"\nimport ResponseBody from \"core/components/response-body\"\nimport { Parameters } from \"core/components/parameters\"\nimport ParameterExt from \"core/components/parameter-extension\"\nimport ParameterIncludeEmpty from \"core/components/parameter-include-empty\"\nimport ParameterRow from \"core/components/parameter-row\"\nimport Execute from \"core/components/execute\"\nimport Headers from \"core/components/headers\"\nimport Errors from \"core/components/errors\"\nimport ContentType from \"core/components/content-type\"\nimport Overview from \"core/components/overview\"\nimport InitializedInput from \"core/components/initialized-input\"\nimport Info, {\n InfoUrl,\n InfoBasePath\n} from \"core/components/info\"\nimport InfoContainer from \"core/containers/info\"\nimport JumpToPath from \"core/components/jump-to-path\"\nimport CopyToClipboardBtn from \"core/components/copy-to-clipboard-btn\"\nimport Footer from \"core/components/footer\"\nimport FilterContainer from \"core/containers/filter\"\nimport ParamBody from \"core/components/param-body\"\nimport Curl from \"core/components/curl\"\nimport Schemes from \"core/components/schemes\"\nimport SchemesContainer from \"core/containers/schemes\"\nimport ModelCollapse from \"core/components/model-collapse\"\nimport ModelExample from \"core/components/model-example\"\nimport ModelWrapper from \"core/components/model-wrapper\"\nimport Model from \"core/components/model\"\nimport Models from \"core/components/models\"\nimport EnumModel from \"core/components/enum-model\"\nimport ObjectModel from \"core/components/object-model\"\nimport ArrayModel from \"core/components/array-model\"\nimport PrimitiveModel from \"core/components/primitive-model\"\nimport Property from \"core/components/property\"\nimport TryItOutButton from \"core/components/try-it-out-button\"\nimport VersionPragmaFilter from \"core/components/version-pragma-filter\"\nimport VersionStamp from \"core/components/version-stamp\"\nimport DeepLink from \"core/components/deep-link\"\nimport SvgAssets from \"core/components/svg-assets\"\n\nimport Markdown from \"core/components/providers/markdown\"\n\nimport BaseLayout from \"core/components/layouts/base\"\n\nimport * as LayoutUtils from \"core/components/layout-utils\"\nimport * as JsonSchemaComponents from \"core/json-schema-components\"\n\nexport default function() {\n\n let coreComponents = {\n components: {\n App,\n authorizationPopup: AuthorizationPopup,\n authorizeBtn: AuthorizeBtn,\n AuthorizeBtnContainer,\n authorizeOperationBtn: AuthorizeOperationBtn,\n auths: Auths,\n AuthItem: AuthItem,\n authError: AuthError,\n oauth2: Oauth2,\n apiKeyAuth: ApiKeyAuth,\n basicAuth: BasicAuth,\n clear: Clear,\n liveResponse: LiveResponse,\n InitializedInput,\n info: Info,\n InfoContainer,\n JumpToPath,\n CopyToClipboardBtn,\n onlineValidatorBadge: OnlineValidatorBadge,\n operations: Operations,\n operation: Operation,\n OperationSummary,\n OperationSummaryMethod,\n OperationSummaryPath,\n highlightCode: HighlightCode,\n responses: Responses,\n response: Response,\n ResponseExtension: ResponseExtension,\n responseBody: ResponseBody,\n parameters: Parameters,\n parameterRow: ParameterRow,\n execute: Execute,\n headers: Headers,\n errors: Errors,\n contentType: ContentType,\n overview: Overview,\n footer: Footer,\n FilterContainer,\n ParamBody: ParamBody,\n curl: Curl,\n schemes: Schemes,\n SchemesContainer,\n modelExample: ModelExample,\n ModelWrapper,\n ModelCollapse,\n Model,\n Models,\n EnumModel,\n ObjectModel,\n ArrayModel,\n PrimitiveModel,\n Property,\n TryItOutButton,\n Markdown,\n BaseLayout,\n VersionPragmaFilter,\n VersionStamp,\n OperationExt,\n OperationExtRow,\n ParameterExt,\n ParameterIncludeEmpty,\n OperationTag,\n OperationContainer,\n DeepLink,\n InfoUrl,\n InfoBasePath,\n SvgAssets,\n Example,\n ExamplesSelect,\n ExamplesSelectValueRetainer,\n }\n }\n\n let formComponents = {\n components: LayoutUtils\n }\n\n let jsonSchemaComponents = {\n components: JsonSchemaComponents\n }\n\n return [\n configsPlugin,\n util,\n logs,\n view,\n spec,\n err,\n layout,\n samples,\n coreComponents,\n formComponents,\n swaggerJs,\n jsonSchemaComponents,\n auth,\n downloadUrlPlugin,\n deepLinkingPlugin,\n filter,\n onComplete,\n requestSnippets,\n safeRender(),\n ]\n}\n","import BasePreset from \"./base\"\nimport OAS3Plugin from \"../plugins/oas3\"\n\n// Just the base, for now.\n\nexport default function PresetApis() {\n\n return [\n BasePreset,\n OAS3Plugin\n ]\n}\n","import deepExtend from \"deep-extend\"\n\nimport System from \"./system\"\nimport ApisPreset from \"./presets/apis\"\nimport AllPlugins from \"./plugins/all\"\nimport { parseSearch } from \"./utils\"\nimport win from \"./window\"\n\n// eslint-disable-next-line no-undef\nconst { GIT_DIRTY, GIT_COMMIT, PACKAGE_VERSION, BUILD_TIME } = buildInfo\n\nexport default function SwaggerUI(opts) {\n\n win.versions = win.versions || {}\n win.versions.swaggerUi = {\n version: PACKAGE_VERSION,\n gitRevision: GIT_COMMIT,\n gitDirty: GIT_DIRTY,\n buildTimestamp: BUILD_TIME,\n }\n\n const defaults = {\n // Some general settings, that we floated to the top\n dom_id: null, // eslint-disable-line camelcase\n domNode: null,\n spec: {},\n url: \"\",\n urls: null,\n layout: \"BaseLayout\",\n docExpansion: \"list\",\n maxDisplayedTags: null,\n filter: null,\n validatorUrl: \"https://validator.swagger.io/validator\",\n oauth2RedirectUrl: `${window.location.protocol}//${window.location.host}${window.location.pathname.substring(0, window.location.pathname.lastIndexOf(\"/\"))}/oauth2-redirect.html`,\n persistAuthorization: false,\n configs: {},\n custom: {},\n displayOperationId: false,\n displayRequestDuration: false,\n deepLinking: false,\n tryItOutEnabled: false,\n requestInterceptor: (a => a),\n responseInterceptor: (a => a),\n showMutatedRequest: true,\n defaultModelRendering: \"example\",\n defaultModelExpandDepth: 1,\n defaultModelsExpandDepth: 1,\n showExtensions: false,\n showCommonExtensions: false,\n withCredentials: undefined,\n requestSnippetsEnabled: false,\n requestSnippets: {\n generators: {\n \"curl_bash\": {\n title: \"cURL (bash)\",\n syntax: \"bash\"\n },\n \"curl_powershell\": {\n title: \"cURL (PowerShell)\",\n syntax: \"powershell\"\n },\n \"curl_cmd\": {\n title: \"cURL (CMD)\",\n syntax: \"bash\"\n },\n },\n defaultExpanded: true,\n languages: null, // e.g. only show curl bash = [\"curl_bash\"]\n },\n supportedSubmitMethods: [\n \"get\",\n \"put\",\n \"post\",\n \"delete\",\n \"options\",\n \"head\",\n \"patch\",\n \"trace\"\n ],\n queryConfigEnabled: false,\n\n // Initial set of plugins ( TODO rename this, or refactor - we don't need presets _and_ plugins. Its just there for performance.\n // Instead, we can compile the first plugin ( it can be a collection of plugins ), then batch the rest.\n presets: [\n ApisPreset\n ],\n\n // Plugins; ( loaded after presets )\n plugins: [\n ],\n\n pluginsOptions: {\n // Behavior during plugin registration. Can be :\n // - legacy (default) : the current behavior for backward compatibility – last plugin takes precedence over the others\n // - chain : chain wrapComponents when targeting the same core component\n pluginLoadType: \"legacy\"\n },\n\n // Initial state\n initialState: { },\n\n // Inline Plugin\n fn: { },\n components: { },\n\n syntaxHighlight: {\n activated: true,\n theme: \"agate\"\n }\n }\n\n let queryConfig = opts.queryConfigEnabled ? parseSearch() : {}\n\n const domNode = opts.domNode\n delete opts.domNode\n\n const constructorConfig = deepExtend({}, defaults, opts, queryConfig)\n\n const storeConfigs = {\n system: {\n configs: constructorConfig.configs\n },\n plugins: constructorConfig.presets,\n pluginsOptions: constructorConfig.pluginsOptions,\n state: deepExtend({\n layout: {\n layout: constructorConfig.layout,\n filter: constructorConfig.filter\n },\n spec: {\n spec: \"\",\n url: constructorConfig.url\n },\n requestSnippets: constructorConfig.requestSnippets\n }, constructorConfig.initialState)\n }\n\n if(constructorConfig.initialState) {\n // if the user sets a key as `undefined`, that signals to us that we\n // should delete the key entirely.\n // known usage: Swagger-Editor validate plugin tests\n for (var key in constructorConfig.initialState) {\n if(\n Object.prototype.hasOwnProperty.call(constructorConfig.initialState, key)\n && constructorConfig.initialState[key] === undefined\n ) {\n delete storeConfigs.state[key]\n }\n }\n }\n\n let inlinePlugin = ()=> {\n return {\n fn: constructorConfig.fn,\n components: constructorConfig.components,\n state: constructorConfig.state,\n }\n }\n\n var store = new System(storeConfigs)\n store.register([constructorConfig.plugins, inlinePlugin])\n\n var system = store.getSystem()\n\n const downloadSpec = (fetchedConfig) => {\n let localConfig = system.specSelectors.getLocalConfig ? system.specSelectors.getLocalConfig() : {}\n let mergedConfig = deepExtend({}, localConfig, constructorConfig, fetchedConfig || {}, queryConfig)\n\n // deep extend mangles domNode, we need to set it manually\n if(domNode) {\n mergedConfig.domNode = domNode\n }\n\n store.setConfigs(mergedConfig)\n system.configsActions.loaded()\n\n if (fetchedConfig !== null) {\n if (!queryConfig.url && typeof mergedConfig.spec === \"object\" && Object.keys(mergedConfig.spec).length) {\n system.specActions.updateUrl(\"\")\n system.specActions.updateLoadingStatus(\"success\")\n system.specActions.updateSpec(JSON.stringify(mergedConfig.spec))\n } else if (system.specActions.download && mergedConfig.url && !mergedConfig.urls) {\n system.specActions.updateUrl(mergedConfig.url)\n system.specActions.download(mergedConfig.url)\n }\n }\n\n if(mergedConfig.domNode) {\n system.render(mergedConfig.domNode, \"App\")\n } else if(mergedConfig.dom_id) {\n let domNode = document.querySelector(mergedConfig.dom_id)\n system.render(domNode, \"App\")\n } else if(mergedConfig.dom_id === null || mergedConfig.domNode === null) {\n // do nothing\n // this is useful for testing that does not need to do any rendering\n } else {\n console.error(\"Skipped rendering: no `dom_id` or `domNode` was specified\")\n }\n\n return system\n }\n\n const configUrl = queryConfig.config || constructorConfig.configUrl\n\n if (configUrl && system.specActions && system.specActions.getConfigByUrl) {\n system.specActions.getConfigByUrl({\n url: configUrl,\n loadRemoteConfig: true,\n requestInterceptor: constructorConfig.requestInterceptor,\n responseInterceptor: constructorConfig.responseInterceptor,\n }, downloadSpec)\n } else {\n return downloadSpec()\n }\n\n return system\n}\n\n// Add presets\nSwaggerUI.presets = {\n apis: ApisPreset,\n}\n\n// All Plugins\nSwaggerUI.plugins = AllPlugins\n","import SwaggerUI from \"./core\"\n\nexport default SwaggerUI\n"],"names":["y","x","__webpack_require__","d","__WEBPACK_EXTERNAL_MODULE_react_immutable_pure_component_cbcfaebd__","Model","ImmutablePureComponent","ref","replace","model","specSelectors","this","props","findDefinition","render","getComponent","getConfigs","schema","required","name","isRef","specPath","displayName","includeReadOnly","includeWriteOnly","ObjectModel","ArrayModel","PrimitiveModel","type","$$ref","get","getModelName","getRefSchema","className","src","require","height","width","deprecated","isOAS3","undefined","ImPropTypes","isRequired","PropTypes","expandDepth","depth","OnlineValidatorBadge","React","constructor","context","super","URL","url","win","toString","validatorUrl","state","getDefinitionUrl","UNSAFE_componentWillReceiveProps","nextProps","setState","spec","sanitizedValidatorUrl","sanitizeUrl","length","requiresValidationURL","target","rel","href","encodeURIComponent","ValidatorImage","alt","loaded","error","componentDidMount","img","Image","onload","onerror","__WEBPACK_EXTERNAL_MODULE_remarkable_linkify_34829ba6__","linkify","__WEBPACK_EXTERNAL_MODULE_dompurify__","Markdown","source","md","Remarkable","html","typographer","breaks","linkTarget","use","core","ruler","disable","useUnsafeMarkdown","sanitized","sanitizer","cx","dangerouslySetInnerHTML","__html","DomPurify","current","setAttribute","defaultProps","str","ALLOW_DATA_ATTR","FORBID_ATTR","hasWarnedAboutDeprecation","console","warn","ADD_ATTR","FORBID_TAGS","request","allPlugins","key","mod","pascalCaseFilename","default","SafeRender","SHOW_AUTH_POPUP","AUTHORIZE","LOGOUT","PRE_AUTHORIZE_OAUTH2","AUTHORIZE_OAUTH2","VALIDATE","CONFIGURE_AUTH","RESTORE_AUTHORIZATION","showDefinitions","payload","authorize","authorizeWithPersistOption","authActions","persistAuthorizationIfNeeded","logout","logoutWithPersistOption","preAuthorizeImplicit","errActions","auth","token","isValid","flow","newAuthErr","authId","level","message","authorizeOauth2WithPersistOption","authorizeOauth2","authorizePassword","username","password","passwordType","clientId","clientSecret","form","grant_type","scope","scopes","join","headers","client_id","client_secret","setClientIdAndSecret","Authorization","btoa","authorizeRequest","body","buildFormData","query","authorizeApplication","authorizeAccessCodeWithFormParams","redirectUrl","codeVerifier","code","redirect_uri","code_verifier","authorizeAccessCodeWithBasicAuthentication","data","parsedUrl","fn","oas3Selectors","authSelectors","additionalQueryStringParams","finalServerUrl","serverEffectiveValue","selectedServer","parseUrl","fetchUrl","_headers","fetch","method","requestInterceptor","responseInterceptor","then","response","JSON","parse","parseError","ok","statusText","catch","e","Error","errData","jsonResponse","error_description","jsonError","configureAuth","restoreAuthorization","persistAuthorization","authorized","localStorage","setItem","toJS","authPopup","swaggerUIRedirectOauth2","afterLoad","system","rootInjects","initOAuth","preauthorizeApiKey","preauthorizeBasic","statePlugins","reducers","actions","selectors","wrapActions","specWrapActionReplacements","specJson","definitionBase","getIn","value","set","securities","fromJS","map","Map","entrySeq","security","isFunc","setIn","header","parsedAuth","result","withMutations","delete","shownDefinitions","createSelector","definitionsToAuthorize","definitions","securityDefinitions","list","List","val","push","getDefinitionsByNames","valueSeq","names","allowedScopes","definition","size","keySeq","contains","definitionsForRequirements","allDefinitions","sec","first","securityScopes","definitionScopes","isAuthorized","execute","oriAction","path","operation","extras","specSecurity","UPDATE_CONFIGS","TOGGLE_CONFIGS","update","configName","configValue","toggle","getItem","parseYamlConfig","yaml","YAML","newThrownErr","getLocalConfig","yamlConfig","configsPlugin","specActions","configs","action","merge","oriVal","downloadConfig","req","getConfigByUrl","cb","next","res","status","updateLoadingStatus","updateUrl","text","setHash","history","pushState","window","location","hash","layout","ori","decodeURIComponent","layoutActions","parseDeepLinkHash","wrapComponents","OperationWrapper","OperationTag","OperationTagWrapper","__WEBPACK_EXTERNAL_MODULE_zenscroll__","SCROLL_TO","CLEAR_SCROLL_TO","show","layoutSelectors","args","deepLinking","tokenArray","shown","urlHashArray","urlHashArrayFromIsShownKey","assetName","createDeepLinkPath","scrollTo","rawHash","hashArray","split","isShownKey","isShownKeyFromUrlHashArray","tagId","maybeOperationId","tagIsShownKey","readyToScroll","scrollToKey","getScrollToKey","Im","scrollToElement","clearScrollTo","container","getScrollParent","zenscroll","to","element","includeHidden","LAST_RESORT","document","documentElement","style","getComputedStyle","excludeStaticParent","position","overflowRegex","parent","parentElement","test","overflow","overflowY","overflowX","tag","operationId","Ori","onLoad","toObject","downloadUrlPlugin","toolbox","download","config","specUrl","createElement","protocol","origin","checkPossibleFailReasons","updateSpec","clear","loadSpec","a","credentials","enums","loadingStatus","NEW_THROWN_ERR","NEW_THROWN_ERR_BATCH","NEW_SPEC_ERR","NEW_SPEC_ERR_BATCH","NEW_AUTH_ERR","CLEAR","CLEAR_BY","err","serializeError","newThrownErrBatch","errors","newSpecErr","newSpecErrBatch","errArray","filter","clearBy","__WEBPACK_EXTERNAL_MODULE_lodash_reduce_11e69996__","errorTransformers","transformErrors","inputs","jsSpec","transformedErrors","reduce","transformer","newlyTransformedErrors","transform","seekStr","i","types","p","c","arr","makeNewMessage","makeReducers","DEFAULT_ERROR_STRUCTURE","line","sortBy","newErrors","k","errValue","filterValue","allErrors","lastError","all","last","opsFilter","taggedOps","phrase","tagObj","UPDATE_LAYOUT","UPDATE_FILTER","UPDATE_MODE","SHOW","updateLayout","updateFilter","thing","normalizeArray","changeMode","mode","wrapSelectors","isShown","thingToShow","currentFilter","def","whatMode","showSummary","taggedOperations","oriSelector","getSystem","maxDisplayedTags","isNaN","levels","getLevel","logLevel","logLevelInt","log","info","debug","UPDATE_SELECTED_SERVER","UPDATE_REQUEST_BODY_VALUE","UPDATE_REQUEST_BODY_VALUE_RETAIN_FLAG","UPDATE_REQUEST_BODY_INCLUSION","UPDATE_ACTIVE_EXAMPLES_MEMBER","UPDATE_REQUEST_CONTENT_TYPE","UPDATE_RESPONSE_CONTENT_TYPE","UPDATE_SERVER_VARIABLE_VALUE","SET_REQUEST_BODY_VALIDATE_ERROR","CLEAR_REQUEST_BODY_VALIDATE_ERROR","CLEAR_REQUEST_BODY_VALUE","setSelectedServer","selectedServerUrl","namespace","setRequestBodyValue","pathMethod","setRetainRequestBodyValueFlag","setRequestBodyInclusion","setActiveExamplesMember","contextType","contextName","setRequestContentType","setResponseContentType","setServerVariableValue","server","setRequestBodyValidateError","validationErrors","clearRequestBodyValidateError","initRequestBodyValidateError","clearRequestBodyValue","selector","defName","flowKey","flowVal","translatedDef","authorizationUrl","tokenUrl","description","v","oidcData","grants","grant","translatedScopes","acc","cur","openIdConnectUrl","isOAS3Helper","resolvedSchemes","getState","callbacks","OperationContainer","callbackElements","callbackName","callback","pathItemName","pathItem","op","allowTryItOut","HttpAuth","onChange","newValue","getValue","errSelectors","Input","Row","Col","AuthError","JumpToPath","scheme","toLowerCase","autoFocus","autoComplete","Callbacks","RequestBody","Servers","ServersContainer","RequestBodyEditor","OperationServers","operationLink","OperationLink","Component","link","targetOp","parameters","n","string","Array","padString","forceUpdate","obj","getSelectedServer","getServerVariable","getEffectiveServerValue","operationServers","pathServers","serversToDisplay","displaying","servers","currentServer","NOOP","Function","prototype","PureComponent","defaultValue","stringify","inputValue","applyDefaultValue","isInvalid","TextArea","invalid","title","onDomChange","userHasEditedBody","getDefaultRequestBodyValue","requestBody","mediaType","activeExamplesKey","mediaTypeValue","hasExamplesKey","exampleSchema","mediaTypeExample","exampleValue","getSampleSchema","requestBodyValue","requestBodyInclusionSetting","requestBodyErrors","contentType","isExecute","onChangeIncludeEmpty","updateActiveExamplesKey","handleFile","files","setIsIncludedOptions","options","shouldDispatchInit","ModelExample","HighlightCode","ExamplesSelectValueRetainer","Example","ParameterIncludeEmpty","showCommonExtensions","requestBodyDescription","requestBodyContent","OrderedMap","schemaForMediaType","rawExamplesOfMediaType","sampleForMediaType","isObjectContent","isBinaryFormat","isBase64Format","JsonSchemaForm","ParameterExt","bodyProperties","prop","commonExt","getCommonExtensions","format","currentValue","currentErrors","included","useInitialValFromSchemaSamples","has","hasIn","useInitialValFromEnum","useInitialValue","initialValue","isFile","xKey","xVal","dispatchInitialValue","isIncluded","isIncludedOptions","isDisabled","isEmptyValue","sampleRequestBody","language","getKnownSyntaxHighlighterLanguage","examples","currentKey","currentUserInputValue","onSelect","updateValue","defaultToFirstExample","example","oas3Actions","serverVariableValue","setServer","variableName","getAttribute","newVariableValue","currentServerDefinition","prevServerDefinition","prevServerVariableDefs","prevServerVariableDefaultValue","currentServerVariableDefs","currentServerVariableDefaultValue","s","shouldShowVariableUI","htmlFor","onServerChange","toArray","onServerVariableValueChange","enumValue","selected","oasVersion","isSwagger2","swaggerVersion","OAS3ComponentWrapFactory","components","specWrapSelectors","authWrapSelectors","oas3","oas3Reducers","newVal","currentVal","valueKeys","valueKey","valueKeyVal","missingBodyValue","missingRequiredKeys","updateIn","missingKeyValues","bodyValue","currentMissingKey","bodyValues","curr","onlyOAS3","shouldRetainRequestBodyValue","selectDefaultRequestBodyValue","currentMediaType","requestContentType","specResolvedSubtree","activeExamplesMember","hasUserEditedBody","userEditedRequestBody","mapEntries","kv","currentMediaTypeDefaultBodyValue","responseContentType","locationData","serverVariables","varValues","serverValue","RegExp","validateBeforeExecute","validateRequestBodyValueExists","validateShallowRequired","oas3RequiredRequestBodyContentType","oas3RequestContentType","oas3RequestBodyValue","requiredKeys","contentTypeVal","requiredKey","specResolved","count","isSwagger2Helper","OAS3NullSelector","hasHost","specJsonWithResolvedSubtrees","host","basePath","consumes","produces","schemes","onAuthChange","AuthItem","JsonSchema_string","VersionStamp","onlineValidatorBadge","disabled","parser","block","enable","trimmed","ModelComponent","classes","engaged","updateJsonSpec","onComplete","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_repeat_18ab8b74__","extractKey","hashIdx","escapeShell","escapeCMD","escapePowershell","getStringBodyOfMap","curlifyToJoin","extractedKey","curlify","escape","newLine","ext","isMultipartFormDataRequest","curlified","addWords","addWordsWithoutLeadingSpace","addNewLine","addIndent","h","reqBody","requestSnippetGenerator_curl_powershell","requestSnippetGenerator_curl_bash","requestSnippetGenerator_curl_cmd","RequestSnippets","requestSnippets","cursor","lineHeight","display","backgroundColor","paddingBottom","paddingTop","border","borderRadius","boxShadow","borderBottom","activeStyle","marginTop","marginRight","marginLeft","zIndex","requestSnippetsSelectors","isFunction","canSyntaxHighlight","rootRef","useRef","activeLanguage","setActiveLanguage","useState","getSnippetGenerators","isExpanded","setIsExpanded","getDefaultExpanded","useEffect","childNodes","node","nodeType","classList","addEventListener","handlePreventYScrollingBeyondElement","passive","removeEventListener","snippetGenerators","activeGenerator","snippet","handleSetIsExpanded","handleGetBtnStyle","deltaY","scrollHeight","contentHeight","offsetHeight","visibleHeight","scrollTop","preventDefault","SnippetComponent","getStyle","readOnly","justifyContent","alignItems","marginBottom","onClick","background","xlinkHref","paddingLeft","paddingRight","gen","handleGenChange","color","CopyToClipboard","getGenerators","languageKeys","generators","isEmpty","genFn","getGenFn","getActiveLanguage","ErrorBoundary","static","hasError","componentDidCatch","errorInfo","targetName","children","FallbackComponent","Fallback","withErrorBoundary","WrappedComponent","getDisplayName","WithErrorBoundary","component","isReactComponent","mapStateToProps","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_fill_07ef3114__","__WEBPACK_EXTERNAL_MODULE_lodash_zipObject_c74f1c14__","componentList","fullOverride","mergedComponentList","zipObject","Original","__WEBPACK_EXTERNAL_MODULE_randexp__","__WEBPACK_EXTERNAL_MODULE_lodash_isEmpty_e109fd6b__","primitives","pattern","RandExp","generateStringFromRegex","Date","toISOString","substring","primitive","objectify","sanitizeRef","deeplyStripKey","objectContracts","arrayContracts","numberContracts","stringContracts","liftSampleHelper","oldSchema","setIfNotDefinedInTarget","properties","propName","Object","hasOwnProperty","call","writeOnly","items","sampleFromSchemaGeneric","exampleOverride","respectXML","usePlainValue","hasOneOf","oneOf","hasAnyOf","anyOf","schemaToAdd","xml","_attr","additionalProperties","prefix","schemaHasAny","keys","enum","handleMinMaxItems","sampleArray","maxItems","minItems","addPropertyToResult","propertyAddedCounter","hasExceededMaxProperties","maxProperties","requiredPropertiesToAdd","addedCount","isOptionalProperty","canAddProperty","overrideE","attribute","enumAttrVal","attrExample","attrDefault","t","discriminator","mapping","propertyName","pair","search","sample","itemSchema","itemSamples","wrapped","additionalProp","additionalProp1","additionalProps","additionalPropSample","toGenerateCount","minProperties","temp","min","minimum","exclusiveMinimum","max","maximum","exclusiveMaximum","maxLength","minLength","inferSchema","createXMLExample","o","json","XML","declaration","indent","sampleFromSchema","resolver","arg1","arg2","arg3","memoizedCreateXMLExample","memoizeN","memoizedSampleFromSchema","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_promise_047dc8e8__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_date_now_1bf78713__","__WEBPACK_EXTERNAL_MODULE_lodash_isString_e6fa8a5b__","__WEBPACK_EXTERNAL_MODULE_lodash_debounce_3540babe__","__WEBPACK_EXTERNAL_MODULE_lodash_set_b4b15ee5__","UPDATE_SPEC","UPDATE_URL","UPDATE_JSON","UPDATE_PARAM","UPDATE_EMPTY_PARAM_INCLUSION","VALIDATE_PARAMS","SET_RESPONSE","SET_REQUEST","SET_MUTATED_REQUEST","LOG_REQUEST","CLEAR_RESPONSE","CLEAR_REQUEST","CLEAR_VALIDATE_PARAMS","UPDATE_OPERATION_META_VALUE","UPDATE_RESOLVED","UPDATE_RESOLVED_SUBTREE","SET_SCHEME","cleanSpec","isString","updateResolved","parseToJson","specStr","JSON_SCHEMA","reason","mark","hasWarnedAboutResolveSpecDeprecation","resolveSpec","resolve","AST","modelPropertyMacro","parameterMacro","getLineNumberForPath","baseDoc","preparedErrors","fullPath","enumerable","requestBatch","debResolveSubtrees","debounce","async","resolveSubtree","batchResult","prev","resultMap","specWithCurrentSubtrees","oidcScheme","openIdConnectData","updateResolvedSubtree","requestResolvedSubtree","changeParam","paramName","paramIn","isXml","changeParamByIdentity","param","invalidateResolvedSubtreeCache","validateParams","updateEmptyParamInclusion","includeEmptyValue","clearValidateParams","changeConsumesValue","changeProducesValue","setResponse","setRequest","setMutatedRequest","logRequest","executeRequest","pathName","parameterInclusionSettingFor","paramValue","paramToValue","contextUrl","opId","namespaceVariables","globalVariables","parsedRequest","buildRequest","r","mutatedRequest","apply","parsedMutatedRequest","startTime","duration","operationScheme","contentTypeValues","parameterValues","clearResponse","clearRequest","setScheme","fromJSOrdered","paramKey","paramToIdentifier","paramValues","paramMeta","isEmptyValueIncluded","validateParam","bypassRequiredCheck","statusCode","newState","operationPath","metaPath","deleteIn","OPERATION_METHODS","specSource","mergerFn","oldVal","mergeWith","returnSelfOrNewMap","externalDocs","version","semver","exec","paths","operations","id","Set","resolvedRes","unresolvedRes","operationsWithRootInherited","ops","tags","tagDetails","currentTags","operationsWithTags","taggedMap","ar","tagsSorter","operationsSorter","tagA","tagB","sortFn","sorters","responses","requests","mutatedRequests","responseFor","requestFor","mutatedRequestFor","allowTryItOutFor","parameterWithMetaByIdentity","opParams","metaParams","mergedParams","currentParam","inNameKeyedMeta","hashKeyedMeta","hashCode","parameterWithMeta","operationWithMeta","meta","getParameter","inType","params","allowHashes","parametersIncludeIn","inValue","parametersIncludeType","typeValue","producesValue","currentProducesFor","currentProducesValue","firstProducesArrayItem","producesOptionsFor","operationProduces","pathItemProduces","globalProduces","consumesOptionsFor","operationConsumes","pathItemConsumes","globalConsumes","matchResult","match","urlScheme","canExecuteScheme","getOAS3RequiredRequestBodyContentType","requiredObj","isMediaTypeSchemaPropertiesEqual","targetMediaType","currentMediaTypeSchemaProperties","targetMediaTypeSchemaProperties","equals","pathItems","pathItemKeys","$ref","withCredentials","__WEBPACK_EXTERNAL_MODULE_swagger_client_es_resolver_f879c638__","__WEBPACK_EXTERNAL_MODULE_swagger_client_es_execute_d486d3d6__","__WEBPACK_EXTERNAL_MODULE_swagger_client_es_http_69655560__","makeHttp","serializeRes","__WEBPACK_EXTERNAL_MODULE_swagger_client_es_subtree_resolver_741cb9d9__","Http","preFetch","postFetch","opts","freshConfigs","rest","shallowEqualKeys","getComponents","getStore","memGetComponent","memoize","memMakeMappedContainer","memoizeForWithMappedContainer","withMappedContainer","makeMappedContainer","__WEBPACK_EXTERNAL_MODULE_react_dom_7dac9eee__","__WEBPACK_EXTERNAL_MODULE_react_redux_87be03b0__","Provider","connect","__WEBPACK_EXTERNAL_MODULE_lodash_omit_d930e0f3__","__WEBPACK_EXTERNAL_MODULE_lodash_identity_75ffe4a7__","withSystem","WithSystem","withRoot","reduxStore","WithRoot","store","withConnect","compose","identity","ownProps","customMapStateToProps","handleProps","oldProps","componentName","WithMappedContainer","cleanProps","omit","domNode","App","ReactDOM","TypeError","failSilently","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_light_746e1958__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_javascript_e22911f7__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_json_b876afc5__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_xml_a81c807b__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_bash_1621c621__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_yaml_02838f34__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_http_4e924b23__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_languages_hljs_powershell_d51eb4f6__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_agate_99a46aa2__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_arta_570691fc__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_monokai_2529bafb__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_nord_5bfa1099__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_obsidian_a278dd52__","__WEBPACK_EXTERNAL_MODULE_react_syntax_highlighter_dist_esm_styles_hljs_tomorrow_night_63765df9__","SyntaxHighlighter","js","http","bash","powershell","javascript","styles","agate","arta","monokai","nord","obsidian","tomorrowNight","availableStyles","__WEBPACK_EXTERNAL_MODULE__braintree_sanitize_url_2340607f__","__WEBPACK_EXTERNAL_MODULE_lodash_camelCase_81fadc19__","__WEBPACK_EXTERNAL_MODULE_lodash_upperFirst_9993ecb4__","__WEBPACK_EXTERNAL_MODULE_lodash_find_e8ecc2cb__","__WEBPACK_EXTERNAL_MODULE_lodash_some_5cd47809__","__WEBPACK_EXTERNAL_MODULE_lodash_eq_b41b823a__","__WEBPACK_EXTERNAL_MODULE_css_escape_2d301448__","DEFAULT_RESPONSE_KEY","isImmutable","maybe","isObject","toList","objWithHashedKeys","fdObj","newObj","trackKeys","containsMultiple","createObjWithHashedKeys","isFn","isArray","_memoize","objMap","objReduce","systemThunkMiddleware","dispatch","defaultStatusCode","codes","getList","iterable","extractFileNameFromContentDispositionHeader","responseFilename","patterns","regex","filename","upperFirst","camelCase","validateValueBySchema","requiredByParam","parameterContentMediaType","nullable","requiredBySchema","uniqueItems","schemaRequiresValue","hasValue","stringCheck","arrayCheck","arrayListCheck","allChecks","passedAnyCheck","objectVal","isList","propKey","errs","rxPattern","validatePattern","validateMinItems","validateMaxItems","needRemove","errorPerItem","toSet","errorsPerIndex","item","add","index","validateUniqueItems","validateMaxLength","validateMinLength","validateMaximum","validateMinimum","validateDateTime","validateGuid","validateString","validateBoolean","validateNumber","validateInteger","validateFile","paramRequired","paramDetails","getParameterSchema","getXmlSampleSchema","shouldStringifyTypesConfig","when","shouldStringifyTypes","defaultStringifyTypes","getStringifiedSampleForSchema","resType","typesToStringify","nextConfig","some","getYamlSampleSchema","jsonExample","yamlString","lineWidth","parseSearch","substr","buffer","Buffer","from","alpha","b","localeCompare","formArr","find","eq","braintreeSanitizeUrl","uri","getAcceptControllingResponse","suitable2xxResponse","defaultResponse","suitableDefaultResponse","String","escapeDeepLinkPath","cssEscape","getExtensions","defObj","input","keyToStrip","predicate","numberToString","returnAll","generatedIdentifiers","allIdentifiers","generateCodeVerifier","b64toB64UrlEncoded","randomBytes","createCodeChallenge","shaJs","digest","canJsonParse","open","close","File","swagger2SchemaKeys","parameter","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_find_index_99e05360__","shallowArrayEquals","Cache","foundKey","OriginalCache","memoized","base64","ieee754","customInspectSymbol","Symbol","exports","SlowBuffer","alloc","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","RangeError","buf","Uint8Array","setPrototypeOf","arg","encodingOrOffset","allocUnsafe","encoding","isEncoding","byteLength","actual","write","slice","fromString","ArrayBuffer","isView","arrayView","isInstance","copy","fromArrayBuffer","byteOffset","fromArrayLike","fromArrayView","SharedArrayBuffer","valueOf","isBuffer","len","checked","numberIsNaN","fromObject","toPrimitive","assertSize","array","mustMatch","arguments","loweredCase","utf8ToBytes","base64ToBytes","slowToString","start","end","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","m","bidirectionalIndexOf","dir","arrayIndexOf","indexOf","lastIndexOf","indexSize","arrLength","valLength","read","readUInt16BE","foundIndex","found","j","hexWrite","offset","Number","remaining","strLen","parsed","parseInt","utf8Write","blitBuffer","asciiWrite","byteArray","charCodeAt","asciiToBytes","base64Write","ucs2Write","units","hi","lo","utf16leToBytes","fromByteArray","Math","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","TYPED_ARRAY_SUPPORT","proto","foo","typedArraySupport","defineProperty","poolSize","fill","allocUnsafeSlow","_isBuffer","compare","concat","pos","swap16","swap32","swap64","toLocaleString","inspect","trim","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","_arr","ret","out","hexSliceLookupTable","bytes","checkOffset","checkInt","wrtBigUInt64LE","checkIntBI","BigInt","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","boundsError","readBigUInt64BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUInt16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUInt32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","E","sym","getMessage","Base","writable","configurable","stack","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_INVALID_ARG_TYPE","floor","ERR_BUFFER_OUT_OF_BOUNDS","msg","received","isInteger","abs","INVALID_BASE64_RE","Infinity","leadSurrogate","toByteArray","base64clean","dst","alphabet","table","i16","BufferBigIntNotDefined","module","it","desc","sham","global","isCallable","tryToString","argument","uncurryThis","stringSlice","DESCRIPTORS","definePropertyModule","createPropertyDescriptor","object","f","bitmap","fails","EXISTS","getBuiltIn","userAgent","process","Deno","versions","v8","getOwnPropertyDescriptor","isForced","bind","createNonEnumerableProperty","hasOwn","wrapConstructor","NativeConstructor","Wrapper","USE_NATIVE","VIRTUAL_PROTOTYPE","sourceProperty","targetProperty","nativeProperty","resultProperty","descriptor","TARGET","GLOBAL","STATIC","stat","PROTO","nativeSource","targetPrototype","forced","noTargetGet","wrap","real","NATIVE_BIND","FunctionPrototype","Reflect","aCallable","that","aFunction","variable","V","P","func","check","globalThis","self","g","classof","propertyIsEnumerable","replacement","feature","detection","normalize","POLYFILL","NATIVE","isPrototypeOf","USE_SYMBOL_AS_UID","$Symbol","V8_VERSION","getOwnPropertySymbols","symbol","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","anObject","toPropertyKey","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","CONFIGURABLE","WRITABLE","O","Attributes","propertyIsEnumerableModule","toIndexedObject","$propertyIsEnumerable","NASHORN_BUG","pref","setGlobal","SHARED","IS_PURE","copyright","license","IndexedObject","requireObjectCoercible","isSymbol","getMethod","ordinaryToPrimitive","wellKnownSymbol","TO_PRIMITIVE","exoticToPrim","postfix","random","NATIVE_SYMBOL","iterator","shared","uid","WellKnownSymbolsStore","symbolFor","createWellKnownSymbol","withoutSetter","$","isSpecificValue","cloneSpecificValue","getTime","deepCloneArray","clone","forEach","deepExtend","safeGetProperty","property","ReflectOwnKeys","R","ReflectApply","receiver","ownKeys","getOwnPropertyNames","NumberIsNaN","EventEmitter","init","once","emitter","Promise","reject","errorListener","removeListener","eventTargetAgnosticAddListener","handler","flags","on","addErrorHandlerIfEventEmitter","_events","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","listener","_getMaxListeners","_addListener","prepend","events","existing","warning","create","newListener","emit","unshift","warned","w","onceWrapper","fired","wrapFn","_onceWrap","_listeners","unwrap","evlistener","unwrapListeners","arrayClone","listenerCount","wrapListener","getPrototypeOf","setMaxListeners","getMaxListeners","doError","er","listeners","addListener","prependListener","prependOnceListener","originalListener","shift","pop","spliceOne","off","removeAllListeners","rawListeners","eventNames","ctor","superCtor","super_","TempCtor","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","noop","nextTick","browser","env","argv","binding","cwd","chdir","umask","MAX_BYTES","MAX_UINT32","crypto","msCrypto","getRandomValues","generated","createErrorType","NodeError","_Base","subClass","superClass","__proto__","expected","determiner","this_len","endsWith","objectKeys","Duplex","Readable","Writable","allowHalfOpen","readable","onend","_writableState","ended","onEndNT","highWaterMark","getBuffer","_readableState","destroyed","PassThrough","Transform","_transform","chunk","ReadableState","EElistenerCount","Stream","OurUint8Array","debugUtil","debuglog","StringDecoder","createReadableStreamAsyncIterator","BufferList","destroyImpl","getHighWaterMark","_require$codes","ERR_STREAM_PUSH_AFTER_EOF","ERR_METHOD_NOT_IMPLEMENTED","ERR_STREAM_UNSHIFT_AFTER_END_EVENT","errorOrDestroy","kProxyEvents","stream","isDuplex","objectMode","readableObjectMode","pipes","pipesCount","flowing","endEmitted","reading","sync","needReadable","emittedReadable","readableListening","resumeScheduled","paused","emitClose","autoDestroy","defaultEncoding","awaitDrain","readingMore","decoder","_read","destroy","_destroy","readableAddChunk","addToFront","skipChunkCheck","emitReadable","emitReadable_","onEofChunk","chunkInvalid","_uint8ArrayToBuffer","addChunk","maybeReadMore","_undestroy","undestroy","isPaused","setEncoding","enc","head","content","MAX_HWM","howMuchToRead","computeNewHighWaterMark","maybeReadMore_","updateReadableListening","resume","nReadingNextTick","resume_","fromList","consume","endReadable","endReadableNT","wState","finished","xs","l","nOrig","doRead","pipe","dest","pipeOpts","endFn","stdout","stderr","unpipe","onunpipe","unpipeInfo","hasUnpiped","onclose","onfinish","ondrain","ondata","cleanedUp","needDrain","pipeOnDrain","pause","event","dests","splice","ev","_this","asyncIterator","_fromList","ERR_MULTIPLE_CALLBACK","ERR_TRANSFORM_ALREADY_TRANSFORMING","ERR_TRANSFORM_WITH_LENGTH_0","afterTransform","ts","_transformState","transforming","writecb","writechunk","rs","needTransform","writeencoding","flush","_flush","prefinish","done","_write","err2","CorkedRequest","entry","finish","corkReq","pendingcb","corkedRequestsFree","onCorkedFinish","WritableState","internalUtil","deprecate","realHasInstance","ERR_STREAM_CANNOT_PIPE","ERR_STREAM_DESTROYED","ERR_STREAM_NULL_VALUES","ERR_STREAM_WRITE_AFTER_END","ERR_UNKNOWN_ENCODING","nop","writableObjectMode","finalCalled","ending","noDecode","decodeStrings","writing","corked","bufferProcessing","onwrite","writelen","onwriteStateUpdate","finishMaybe","errorEmitted","onwriteError","needFinish","bufferedRequest","clearBuffer","afterWrite","lastBufferedRequest","prefinished","bufferedRequestCount","writev","_writev","final","_final","doWrite","onwriteDrain","holder","allBuffers","isBuf","callFinal","need","rState","_","hasInstance","writeAfterEnd","validChunk","newChunk","decodeChunk","writeOrBuffer","cork","uncork","setDefaultEncoding","endWritable","_Object$setPrototypeO","_defineProperty","kLastResolve","kLastReject","kError","kEnded","kLastPromise","kHandlePromise","kStream","createIterResult","readAndResolve","iter","onReadable","AsyncIteratorPrototype","ReadableStreamAsyncIteratorPrototype","promise","lastPromise","wrapForNext","_this2","_Object$create","enumerableOnly","symbols","_defineProperties","custom","instance","Constructor","_classCallCheck","tail","protoProps","staticProps","hasStrings","_getString","_getBuffer","nb","getOwnPropertyDescriptors","defineProperties","_objectSpread","customInspect","emitErrorAndCloseNT","emitErrorNT","emitCloseNT","readableDestroyed","writableDestroyed","ERR_STREAM_PREMATURE_CLOSE","eos","called","_len","_key","onlegacyfinish","writableEnded","readableEnded","onrequest","setHeader","abort","isRequest","ERR_MISSING_ARGS","destroyer","closed","popCallback","streams","destroys","ERR_INVALID_OPT_VALUE","duplexKey","hwm","highWaterMarkFrom","Hash","blockSize","finalSize","_block","_finalSize","_blockSize","accum","assigned","remainder","_update","rem","bits","lowBits","highBits","_hash","algorithm","Algorithm","sha","sha1","sha224","sha256","sha384","sha512","inherits","K","W","Sha","_w","rotl30","num","ft","_a","_b","_c","_d","_e","M","H","Sha1","rotl5","Sha256","Sha224","_f","_g","_h","ch","z","maj","sigma0","sigma1","gamma0","T1","T2","SHA512","Sha384","_ah","_bh","_ch","_dh","_eh","_fh","_gh","_hh","_al","_bl","_cl","_dl","_el","_fl","_gl","_hl","writeInt64BE","Sha512","Ch","xl","Gamma0","Gamma0l","Gamma1","Gamma1l","getCarry","ah","bh","dh","eh","fh","gh","hh","al","bl","cl","dl","el","fl","gl","hl","xh","gamma0l","gamma1","gamma1l","Wi7h","Wi7l","Wi16h","Wi16l","Wil","Wih","majh","majl","sigma0h","sigma0l","sigma1h","sigma1l","Kih","Kil","chh","chl","t1l","t1h","t2l","t2h","EE","pipeline","_isStdio","didOnEnd","cleanup","nenc","retried","_normalizeEncoding","normalizeEncoding","utf16Text","utf16End","fillLast","utf8FillLast","base64Text","base64End","simpleWrite","simpleEnd","lastNeed","lastTotal","lastChar","utf8CheckByte","byte","utf8CheckExtraBytes","total","utf8CheckIncomplete","copyProps","SafeBuffer","trace","XML_CHARACTER_MAP","escapeForXML","indent_count","character","indent_spaces","values","_elem","icount","indents","interrupt","isStringContent","attributes","get_attributes","_cdata","append","elem","proceed","attr","output","interrupted","instant","delay","standalone","Element","webpackContext","webpackContextResolve","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_array_from_6be643d1__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_array_is_array_6a843f38__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_bind_23a689fe__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_concat_ad403b1a__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_entries_97fed13d__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_every_ac7bb0bc__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_filter_13f270a8__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_find_0ad1164d__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_for_each_f55cb86b__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_includes_c33ad5d5__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_index_of_5fb826c6__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_keys_3b8fec80__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_map_868765ae__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_reduce_e87b61a7__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_slice_9832b507__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_some_50ff1b2d__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_sort_abe23e03__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_starts_with_a4b73998__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_trim_ca5b709e__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_json_stringify_1bf7a515__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_map_16a511c8__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_object_assign_e13b6141__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_object_keys_e09d3035__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_object_values_550c3b22__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_set_timeout_d31e8027__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_url_4cfab046__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_helpers_defineProperty_807a2698__","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_helpers_extends_d20d3ceb__","__WEBPACK_EXTERNAL_MODULE_base64_js_f145eb6e__","__WEBPACK_EXTERNAL_MODULE_classnames__","__WEBPACK_EXTERNAL_MODULE_ieee754__","__WEBPACK_EXTERNAL_MODULE_immutable__","Seq","__WEBPACK_EXTERNAL_MODULE_js_yaml_78384032__","__WEBPACK_EXTERNAL_MODULE_lodash_get_9427f899__","__WEBPACK_EXTERNAL_MODULE_lodash_isFunction_f90b20d6__","__WEBPACK_EXTERNAL_MODULE_lodash_memoize_2b5bc477__","__WEBPACK_EXTERNAL_MODULE_prop_types_adfe8e31__","__WEBPACK_EXTERNAL_MODULE_react__","__WEBPACK_EXTERNAL_MODULE_react_copy_to_clipboard_5b11dd57__","__WEBPACK_EXTERNAL_MODULE_react_immutable_proptypes_89c7d083__","__WEBPACK_EXTERNAL_MODULE_redux__","applyMiddleware","bindActionCreators","createStore","__WEBPACK_EXTERNAL_MODULE_remarkable__","__WEBPACK_EXTERNAL_MODULE_reselect__","__WEBPACK_EXTERNAL_MODULE_serialize_error_5f2df3e5__","__WEBPACK_EXTERNAL_MODULE_swagger_client_es_helpers_4d7bea47__","__WEBPACK_EXTERNAL_MODULE_url_parse_6456105f__","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","toStringTag","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_last_index_of_bbdfc000__","__WEBPACK_EXTERNAL_MODULE_redux_immutable_446c9f82__","combineReducers","__WEBPACK_EXTERNAL_MODULE_lodash_merge_cf99375a__","idFn","Store","rootReducer","initialState","plugins","pluginsOptions","boundSystem","_getSystem","middlwares","composeEnhancers","createStoreWithMiddleware","buildSystem","register","rebuild","pluginSystem","combinePlugins","systemExtend","callAfterLoad","buildReducer","getRootInjects","getWrappedAndBoundActions","getWrappedAndBoundSelectors","getStateThunks","getFn","rebuildReducer","_getConfigs","setConfigs","states","replaceReducer","reducerSystem","reducerObj","redFn","wrapWithTryCatch","makeReducer","allReducers","getType","upName","toUpperCase","getSelectors","getActions","actionHolders","actionName","actionGroups","getBoundActions","actionGroupName","wrappers","newAction","selectorGroups","getBoundSelectors","selectorGroupName","stateName","selectorName","wrappedSelector","getStates","wrapper","getNestedState","creator","actionCreator","getMapStateToProps","getMapDispatchToProps","pluginOptions","pluginLoadType","plugin","hasLoaded","calledSomething","wrapperFn","namespaceObj","logErrors","resolvedSubtree","getResolvedSubtree","tryItOutEnabled","defaultRequestBodyValue","executeInProgress","nextState","docExpansion","displayOperationId","displayRequestDuration","supportedSubmitMethods","isDeepLinkingEnabled","jumpToKey","unresolvedOp","Operation","operationProps","summary","originalOperationId","toggleShown","onTryoutClick","onResetClick","onCancelClick","onExecute","getLayout","layoutName","Layout","AuthorizationPopup","Auths","AuthorizeBtn","showPopup","AuthorizeBtnContainer","authorizableDefinitions","AuthorizeOperationBtn","stopPropagation","auths","Oauth2","Button","authorizedAuth","nonOauthDefinitions","oauthDefinitions","onSubmit","submitAuth","logoutClick","ApiKeyAuth","BasicAuth","authEl","showValue","ExamplesSelect","isSyntheticChange","selectedOptions","_onSelect","currentExampleKey","currentExamplePerProps","firstExamplesKey","firstExample","firstExampleKey","keyOf","isValueModified","isModifiedValueAvailable","showLabels","_onDomSelect","exampleName","stringifyUnlessList","currentNamespace","_setStateForNamespace","newStateForNamespace","mergeDeep","_getCurrentExampleValue","exampleKey","_getValueForExample","lastUserEditedValue","_getStateForCurrentNamespace","valueFromExample","_setStateForCurrentNamespace","isModifiedValueSelected","otherArgs","lastDownstreamValue","componentWillUnmount","valueFromCurrentExample","examplesMatchingNewValue","_onExamplesSelect","authConfigs","oauth2RedirectUrl","scopesArray","scopeSeparator","realm","usePkceWithAuthorizationCodeGrant","codeChallenge","sanitizedAuthorizationUrl","useBasicAuthenticationWithAccessCodeGrant","errCb","oauth2Authorize","dataset","newScopes","appName","InitializedInput","oidcUrl","AUTH_FLOW_IMPLICIT","AUTH_FLOW_PASSWORD","AUTH_FLOW_ACCESS_CODE","AUTH_FLOW_APPLICATION","isPkceCodeGrant","flowToDisplay","tablet","desktop","onInputChange","selectScopes","onScopeChange","Clear","Headers","Duration","LiveResponse","shouldComponentUpdate","showMutatedRequest","requestSnippetsEnabled","curlRequest","notDocumented","isError","headersKeys","ResponseBody","returnObject","joinedHeaders","hasHeaders","Curl","SWAGGER2_OPERATION_METHODS","OAS3_OPERATION_METHODS","Operations","validMethods","renderOperationTag","isAbsoluteUrl","buildBaseUrl","buildUrl","baseUrl","safeBuildUrl","Collapse","DeepLink","Link","tagExternalDocsUrl","tagDescription","tagExternalDocsDescription","rawTagExternalDocsUrl","showTag","enabled","focusable","isOpened","externalDocsUrl","extensions","Responses","Parameters","Execute","Schemes","OperationExt","OperationSummary","showExtensions","onChangeKey","currentScheme","tryItOutResponse","__WEBPACK_EXTERNAL_MODULE_lodash_toString_da931f05__","resolvedSummary","OperationSummaryMethod","OperationSummaryPath","CopyToClipboardBtn","hasSecurity","securityIsOptional","allowAnonymous","applicableDefinitions","textToCopy","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_splice_d746fc5e__","pathParts","OperationExtRow","xNormalizedValue","__WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__","fileName","downloadable","canCopy","saveAs","controlsAcceptHeader","defaultCode","ContentType","Response","acceptControllingResponse","regionId","createHtmlReadyId","controlId","ariaControls","ariaLabel","contentTypes","onChangeProducesWrapper","role","isDefault","onContentTypeChange","onResponseContentTypeChange","__WEBPACK_EXTERNAL_MODULE__babel_runtime_corejs3_core_js_stable_instance_values_a68750d2__","activeContentType","links","ResponseExtension","specPathWithPossibleSchema","activeMediaType","examplesForMediaType","oas3SchemaForContentType","sampleSchema","shouldOverrideSchemaExample","sampleGenConfig","targetExamplesKey","getTargetExamplesKey","getMediaTypeExample","targetExample","oldOASMediaTypeExample","sampleResponse","getExampleComponent","_onContentTypeChange","omitValue","toSeq","__WEBPACK_EXTERNAL_MODULE_xml_but_prettier_2ed4d5cb__","__WEBPACK_EXTERNAL_MODULE_lodash_toLower_c29ee2b0__","parsedContent","prevContent","Blob","reader","FileReader","readAsText","updateParsedContent","componentDidUpdate","prevProps","downloadName","bodyEl","blob","disposition","formatXml","textNodesOnSameLine","indentor","toLower","controls","tab","parametersVisible","callbackVisible","ParameterRow","TryItOutButton","groupedParametersArr","toggleTab","rawParam","onChangeConsumes","onChangeConsumesWrapper","onChangeMediaType","lastValue","usableValue","ParameterIncludeEmptyDefaultProps","onCheckboxChange","valueForUpstream","getParamKey","paramWithMeta","parameterMediaType","generatedSampleValue","onChangeWrapper","setDefaultValue","ParamBody","bodyParam","consumesValue","paramItems","paramEnum","paramDefaultValue","paramExample","itemType","isFormData","isFormDataSupported","isDisplayParamEnum","_onExampleSelect","oas3ValidateBeforeExecuteSuccess","missingKey","isPass","handleValidationResultPass","handleValidationResultFail","paramsResult","handleValidateParameters","requestBodyResult","handleValidateRequestBody","handleValidationResult","Property","schemaExample","propVal","propClass","Errors","editorActions","jumpToLine","allErrorsToDisplay","isVisible","sortedJSErrors","animated","ThrownErrorItem","SpecErrorItem","errorLine","toTitleCase","locationMessage","xclass","Container","fullscreen","full","containerClass","DEVICES","hide","keepContents","mobile","large","classesAr","device","deviceClass","Select","multiple","option","allowedValues","allowEmptyValue","NoMargin","renderNotAnimated","Overview","setTagShown","_setTagShown","showTagId","showOp","showOpIdPrefix","showOpId","_onClick","inputRef","otherProps","InfoBasePath","Contact","email","License","InfoUrl","Info","termsOfServiceUrl","contact","externalDocsDescription","InfoContainer","Footer","FilterContainer","isLoading","isFailed","classNames","placeholder","onFilterChange","isJson","isEditBox","_onChange","updateValues","defaultProp","handleOnChange","toggleIsEditBox","curl","curlBlock","UNSAFE_componentWillMount","SchemesContainer","ModelCollapse","onToggle","modelName","expanded","toggleCollapsed","collapsedContent","hideSelfOnExpand","activeTab","defaultModelRendering","defaultModelExpandDepth","ModelWrapper","exampleTabId","examplePanelId","modelTabId","modelPanelId","active","inactive","tabIndex","Models","getSchemaBasePath","defaultModelsExpandDepth","specPathBase","showModels","onLoadModels","schemaValue","rawSchemaValue","rawSchema","onLoadModel","getCollapsedContent","handleToggle","requiredProperties","infoProperties","JumpToPathSection","not","titleEl","isDeprecated","normalizedValue","Primitive","enumArray","filterNot","EnumModel","showReset","VersionPragmaFilter","bypass","alsoShow","xmlns","xmlnsXlink","viewBox","fillRule","BaseLayout","SvgAssets","isSpecEmpty","loadingMessage","lastErr","lastErrMsg","hasServers","hasSchemes","hasSecurityDefinitions","__WEBPACK_EXTERNAL_MODULE_react_debounce_input_7ed3e068__","JsonSchemaDefaultProps","keyName","getComponentSilently","Comp","schemaIn","onEnumChange","debounceTimeout","JsonSchema_array","itemVal","valueOrEmptyList","arrayErrors","needsRemoveError","shouldRenderValue","schemaItemsEnum","schemaItemsType","schemaItemsFormat","schemaItemsSchema","ArrayItemsComponent","isArrayItemText","isArrayItemFile","itemErrors","JsonSchemaArrayItemFile","onItemChange","JsonSchemaArrayItemText","removeItem","addItem","onFileChange","JsonSchema_boolean","booleanValue","stringifyObjectErrors","stringError","currentError","part","JsonSchema_object","coreComponents","authorizationPopup","authorizeBtn","authorizeOperationBtn","authError","oauth2","apiKeyAuth","basicAuth","liveResponse","highlightCode","responseBody","parameterRow","overview","footer","modelExample","formComponents","LayoutUtils","jsonSchemaComponents","JsonSchemaComponents","util","logs","view","samples","swaggerJs","deepLinkingPlugin","safeRender","PresetApis","BasePreset","OAS3Plugin","GIT_DIRTY","GIT_COMMIT","PACKAGE_VERSION","BUILD_TIME","buildInfo","SwaggerUI","gitRevision","gitDirty","buildTimestamp","defaults","dom_id","urls","pathname","syntax","defaultExpanded","languages","queryConfigEnabled","presets","ApisPreset","syntaxHighlight","activated","theme","queryConfig","constructorConfig","storeConfigs","System","downloadSpec","fetchedConfig","localConfig","mergedConfig","configsActions","querySelector","configUrl","loadRemoteConfig","apis","AllPlugins"],"sourceRoot":""}