@redocly/reference-docs 2.28.0 → 2.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/bin/cli/commands/redocly-docs-cli.min.js +9 -9
  2. package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +1 -1
  3. package/dist/console.redocly-reference-docs.min.js +110 -110
  4. package/dist/oauth2-redirect.js +1 -1
  5. package/dist/redocly-reference-docs.min.js +468 -468
  6. package/lib/components/console/AuthPanel.js +1 -1
  7. package/lib/components/console/OAuth2Flow.d.ts +1 -0
  8. package/lib/components/console/OAuth2Flow.js +1 -1
  9. package/lib/components/console/OAuth2TokenInput.d.ts +1 -0
  10. package/lib/components/console/OAuth2TokenInput.js +1 -1
  11. package/lib/components/console/utils.d.ts +6 -0
  12. package/lib/components/console/utils.js +1 -1
  13. package/lib/redoc-lib/src/common-elements/fields-layout.js +1 -1
  14. package/lib/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  15. package/lib/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +4 -0
  16. package/lib/redoc-lib/src/services/OpenAPIParser.js +1 -1
  17. package/lib/redoc-lib/src/theme.d.ts +1 -0
  18. package/lib/redoc-lib/src/theme.js +1 -1
  19. package/lib/redoc-lib/src/types/open-api.d.ts +3 -0
  20. package/lib/redoc-lib/src/utils/openapi.d.ts +3 -2
  21. package/lib/redoc-lib/src/utils/openapi.js +1 -1
  22. package/lib/redoc-lib/src/utils/string.d.ts +1 -0
  23. package/lib/redoc-lib/src/utils/string.js +2 -0
  24. package/lib/services/OAuth2.d.ts +4 -2
  25. package/lib/services/OAuth2.js +1 -1
  26. package/lib-esm/components/console/AuthPanel.js +1 -1
  27. package/lib-esm/components/console/OAuth2Flow.d.ts +1 -0
  28. package/lib-esm/components/console/OAuth2Flow.js +1 -1
  29. package/lib-esm/components/console/OAuth2TokenInput.d.ts +1 -0
  30. package/lib-esm/components/console/OAuth2TokenInput.js +1 -1
  31. package/lib-esm/components/console/utils.d.ts +6 -0
  32. package/lib-esm/components/console/utils.js +1 -1
  33. package/lib-esm/redoc-lib/src/common-elements/fields-layout.js +1 -1
  34. package/lib-esm/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  35. package/lib-esm/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +4 -0
  36. package/lib-esm/redoc-lib/src/services/OpenAPIParser.js +1 -1
  37. package/lib-esm/redoc-lib/src/theme.d.ts +1 -0
  38. package/lib-esm/redoc-lib/src/theme.js +1 -1
  39. package/lib-esm/redoc-lib/src/types/open-api.d.ts +3 -0
  40. package/lib-esm/redoc-lib/src/utils/openapi.d.ts +3 -2
  41. package/lib-esm/redoc-lib/src/utils/openapi.js +1 -1
  42. package/lib-esm/redoc-lib/src/utils/string.d.ts +1 -0
  43. package/lib-esm/redoc-lib/src/utils/string.js +2 -0
  44. package/lib-esm/services/OAuth2.d.ts +4 -2
  45. package/lib-esm/services/OAuth2.js +1 -1
  46. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- import{__assign,__extends}from"tslib";import*as React from"react";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage,escapeFormId}from"../../utils";import{FormDropdown,FormTextField}from"../common/TextField";import{FormControl,FormLabel,FormWrapper}from"../common/form";import{l}from"../../redoc-lib/src/services/Labels";import{Dropdown}from"../common/Dropdown";import{OpenIDConnect}from"./OpenIDConnect";import{OAuth2Flow}from"./OAuth2Flow";import OAuth2TokenInput from"./OAuth2TokenInput";export function requiredValidator(e){if(!e)return"Field is required"}var getCookie=function(e){var t=document.cookie.match("\\b"+e+"=([^;]*)\\b");return t?t[1]:void 0};function fromCookie(e){if("cookie"===e.in)return getCookie(e.name)}var AuthPanel=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{activeScheme:0}}),Object.defineProperty(t,"handleSchemeChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){t.setState({activeScheme:e.idx}),toSessionStorage("securityRequirementName",e.value)}}),t}return __extends(t,e),Object.defineProperty(t,"getDerivedStateFromProps",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.operation.security.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})),r=fromSessionStorage("securityRequirementName"),o=t.findIndex((function(e){return e===r}));return{activeScheme:o<0?0:o}}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props.securityDefaults,r=this.state.activeScheme,o=this.props.operation.security,a=o.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})).map((function(e,t){return{value:e,idx:t}}));return 0===a.length?null:React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,a.length>1&&React.createElement(FormControl,null,React.createElement(FormLabel,null," Security scheme: "),React.createElement(Dropdown,{variant:"dark",fullWidth:!0,options:a,value:a[r].value,onChange:this.handleSchemeChange}))||null,o[r].schemes.map((function(r){var o,a,n,i,u,s,c,m=escapeFormId(r.id);if("apiKey"===r.type){var d=getSecurityDetailsOptions(m,""),p={field:"auth."+m,fullWidth:!0,initialValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(FormControl,{key:m},React.createElement(FormLabel,null," ",r.name,": "),d?React.createElement(FormDropdown,__assign({},p,{options:d})):React.createElement(FormTextField,__assign({},p,{type:"password","data-cy":"apiKey-auth-password"})))}if("http"===r.type){if("basic"===r.scheme){var f=getSecurityDetailsOptions(m,"username");p={field:"auth."+m+".username",fullWidth:!0,initialValue:fromSessionStorage("auth."+m+".username")||(null===(o=null==t?void 0:t[m])||void 0===o?void 0:o.username),initValue:fromSessionStorage("auth."+m+".username")||(null===(a=null==t?void 0:t[m])||void 0===a?void 0:a.username),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicUsername"),": "),f?React.createElement(FormDropdown,__assign({},p,{options:f})):React.createElement(FormTextField,__assign({},p))),React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicPassword"),": "),React.createElement(FormTextField,{type:"password","data-cy":"http-auth-password",fullWidth:!0,field:"auth."+m+".password",initialValue:fromSessionStorage("auth."+m+".password")||(null===(n=null==t?void 0:t[m])||void 0===n?void 0:n.password)||"",validateOnBlur:!0,validateOnChange:!0})))}if("bearer"===r.scheme){var h=getSecurityDetailsOptions(m,"");p={field:"auth."+m,fullWidth:!0,initialValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Bearer Token: "),h?React.createElement(FormDropdown,__assign({},p,{options:h})):React.createElement(FormTextField,__assign({},p,{type:"password",placeholder:"(without 'Bearer')"}))))}}else{if("oauth2"===r.type&&r.flows&&r.flows.clientCredentials)return React.createElement(OAuth2TokenInput,{key:m,flow:r.flows.clientCredentials,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.clientCredentials["x-defaultClientId"]||r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.implicit)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.implicit.authorizationUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(u=null===(i=null==r?void 0:r.flows)||void 0===i?void 0:i.implicit)||void 0===u?void 0:u.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.implicit["x-defaultClientId"]||r["x-defaultClientId"],flow:"implicit",defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.authorizationCode)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.authorizationCode.authorizationUrl,tokenUrl:r.flows.authorizationCode.tokenUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(s=r.flows.authorizationCode)||void 0===s?void 0:s.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.authorizationCode["x-defaultClientId"]||r["x-defaultClientId"],flow:"authorizationCode",usePkce:r.flows.authorizationCode["x-usePkce"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type){var v=fromSessionStorage("auth."+m+".token")||JSON.stringify(null===(c=null==t?void 0:t[m])||void 0===c?void 0:c.token);return v=v?JSON.parse(v):{},React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token Type: "),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+m+".token.token_type",initialValue:v.token_type||"Bearer"})),React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+m+".token.access_token",validate:requiredValidator,initialValue:v.access_token,validateOnBlur:!0,validateOnChange:!0})))}if("openIdConnect"===r.type)return React.createElement(OpenIDConnect,{key:m,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,scheme:r,clientId:r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]})}}))),React.createElement("small",null,React.createElement("strong",null,"Note"),": Your credentials will be saved until the end of the browser session"))}}),t}(React.Component);export{AuthPanel};
1
+ import{__assign,__extends}from"tslib";import*as React from"react";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage,escapeFormId}from"../../utils";import{FormDropdown,FormTextField}from"../common/TextField";import{FormControl,FormLabel,FormWrapper}from"../common/form";import{l}from"../../redoc-lib/src/services/Labels";import{Dropdown}from"../common/Dropdown";import{OpenIDConnect}from"./OpenIDConnect";import{OAuth2Flow}from"./OAuth2Flow";import OAuth2TokenInput from"./OAuth2TokenInput";export function requiredValidator(e){if(!e)return"Field is required"}var getCookie=function(e){var t=document.cookie.match("\\b"+e+"=([^;]*)\\b");return t?t[1]:void 0};function fromCookie(e){if("cookie"===e.in)return getCookie(e.name)}var AuthPanel=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{activeScheme:0}}),Object.defineProperty(t,"handleSchemeChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){t.setState({activeScheme:e.idx}),toSessionStorage("securityRequirementName",e.value)}}),t}return __extends(t,e),Object.defineProperty(t,"getDerivedStateFromProps",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.operation.security.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})),r=fromSessionStorage("securityRequirementName"),o=t.findIndex((function(e){return e===r}));return{activeScheme:o<0?0:o}}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props.securityDefaults,r=this.state.activeScheme,o=this.props.operation.security,a=o.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})).map((function(e,t){return{value:e,idx:t}}));return 0===a.length?null:React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,a.length>1&&React.createElement(FormControl,null,React.createElement(FormLabel,null," Security scheme: "),React.createElement(Dropdown,{variant:"dark",fullWidth:!0,options:a,value:a[r].value,onChange:this.handleSchemeChange}))||null,o[r].schemes.map((function(r){var o,a,n,i,u,s,c,m=escapeFormId(r.id);if("apiKey"===r.type){var d=getSecurityDetailsOptions(m,""),p={field:"auth."+m,fullWidth:!0,initialValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(FormControl,{key:m},React.createElement(FormLabel,null," ",r.name,": "),d?React.createElement(FormDropdown,__assign({},p,{options:d})):React.createElement(FormTextField,__assign({},p,{type:"password","data-cy":"apiKey-auth-password"})))}if("http"===r.type){if("basic"===r.scheme){var f=getSecurityDetailsOptions(m,"username");p={field:"auth."+m+".username",fullWidth:!0,initialValue:fromSessionStorage("auth."+m+".username")||(null===(o=null==t?void 0:t[m])||void 0===o?void 0:o.username),initValue:fromSessionStorage("auth."+m+".username")||(null===(a=null==t?void 0:t[m])||void 0===a?void 0:a.username),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicUsername"),": "),f?React.createElement(FormDropdown,__assign({},p,{options:f})):React.createElement(FormTextField,__assign({},p))),React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicPassword"),": "),React.createElement(FormTextField,{type:"password","data-cy":"http-auth-password",fullWidth:!0,field:"auth."+m+".password",initialValue:fromSessionStorage("auth."+m+".password")||(null===(n=null==t?void 0:t[m])||void 0===n?void 0:n.password)||"",validateOnBlur:!0,validateOnChange:!0})))}if("bearer"===r.scheme){var h=getSecurityDetailsOptions(m,"");p={field:"auth."+m,fullWidth:!0,initialValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Bearer Token: "),h?React.createElement(FormDropdown,__assign({},p,{options:h})):React.createElement(FormTextField,__assign({},p,{type:"password",placeholder:"(without 'Bearer')"}))))}}else{if("oauth2"===r.type&&r.flows&&r.flows.clientCredentials)return React.createElement(OAuth2TokenInput,{key:m,flow:r.flows.clientCredentials,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.clientCredentials["x-defaultClientId"]||r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.implicit)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.implicit.authorizationUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(u=null===(i=null==r?void 0:r.flows)||void 0===i?void 0:i.implicit)||void 0===u?void 0:u.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.implicit["x-defaultClientId"]||r["x-defaultClientId"],flow:"implicit",defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.authorizationCode)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.authorizationCode.authorizationUrl,tokenUrl:r.flows.authorizationCode.tokenUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(s=r.flows.authorizationCode)||void 0===s?void 0:s.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.authorizationCode["x-defaultClientId"]||r["x-defaultClientId"],flow:"authorizationCode",tokenEndpointAuthMethod:r.flows.authorizationCode["x-tokenEndpointAuthMethod"],usePkce:r.flows.authorizationCode["x-usePkce"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type){var v=fromSessionStorage("auth."+m+".token")||JSON.stringify(null===(c=null==t?void 0:t[m])||void 0===c?void 0:c.token);return v=v?JSON.parse(v):{},React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token Type: "),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+m+".token.token_type",initialValue:v.token_type||"Bearer"})),React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+m+".token.access_token",validate:requiredValidator,initialValue:v.access_token,validateOnBlur:!0,validateOnChange:!0})))}if("openIdConnect"===r.type)return React.createElement(OpenIDConnect,{key:m,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,scheme:r,clientId:r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]})}}))),React.createElement("small",null,React.createElement("strong",null,"Note"),": Your credentials will be saved until the end of the browser session"))}}),t}(React.Component);export{AuthPanel};
2
2
  //# sourceMappingURL=AuthPanel.js.map
@@ -17,6 +17,7 @@ export interface OAuth2FlowProps {
17
17
  form: FormState;
18
18
  formApi: FormApi;
19
19
  flow: 'implicit' | 'authorizationCode';
20
+ tokenEndpointAuthMethod?: string;
20
21
  clientId?: string;
21
22
  defaultValues?: SecurityDetails;
22
23
  }
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__extends,__generator,__makeTemplateObject}from"tslib";import*as React from"react";import{styled,OptionsContext}from"../../redoc-lib";import{LinearProgress}from"../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper,FormWarning}from"../common/form";import{FormDropdown,FormTextField,TextField}from"../common/TextField";import{Checkbox}from"../common/Checkbox";import{Button}from"../shared";import{OAuth2,deriveCodeChallenge}from"../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../utils";import{isEmptyObject,randString}from"../../services/utils";import{normalizeUrlProtocol}from"./utils";import Scope from"./Scope";function requiredValidator(e){if(!e)return"Field is required"}var OAuth2Flow=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:null,loading:!1,showPkceOptions:!1}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"togglePkceOptions",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState((function(e){return{showPkceOptions:!e.showPkceOptions}}))}}),Object.defineProperty(t,"handleCodeVerifierChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r=e.target.value;return __awaiter(t,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return[4,deriveCodeChallenge(r)];case 1:return e=t.sent(),this.setState({codeVerifier:r,validCodeChallenge:e}),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.values)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pkceInputActionButtonProps",{get:function(){var e=this;if(void 0!==this.state.codeVerifier&&this.state.codeChallenge!==this.state.validCodeChallenge)return{label:"sync",onClick:function(){e.state.codeVerifier&&e.setState({codeChallenge:e.state.validCodeChallenge})}}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;if(this.props.usePkce){var t=randString(43);deriveCodeChallenge(t).then((function(r){e.setState({codeVerifier:t,codeChallenge:r,validCodeChallenge:r})}))}}}),Object.defineProperty(t.prototype,"handleAuthorize",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;if(e){this.props.formApi.validate();var r=this.props,n=r.flow,o=r.usePkce,a=r.id,l=r.tokenUrl,i=r.authCorsProxyUrl;if(isEmptyObject(this.errors)){this.setState({loading:!0,error:null});var c=i?i+normalizeUrlProtocol(e):e,s=i&&l?i+normalizeUrlProtocol(l):l,u=this.props.formApi.getValue("auth."+a+".scopes"),p={authorizationUrl:c.startsWith("http")?c:this.props.server+c,clientId:this.values.client_id,scopes:u,redirectUri:this.context.oAuth2RedirectURI,routingBasePath:this.context.routingBasePath,successCallback:function(e){t.props.formApi.setValue("auth."+t.props.id+".token",e),t.setState({loading:!1,error:null})},errorCallback:function(e){t.setState({loading:!1,error:(null==e?void 0:e.message)||"Failed to retrieve the access token"})}};"implicit"===n&&OAuth2.authorizeImplicit(p),"authorizationCode"===n&&OAuth2.authorizeAuthorizationCode(__assign(__assign(__assign({},p),{tokenUrl:(null==s?void 0:s.startsWith("http"))?s:this.props.server+s,clientSecret:this.values.client_secret}),o&&{codeVerifier:this.state.codeVerifier,codeChallenge:this.state.codeChallenge}))}}}}),Object.defineProperty(t.prototype,"handleLogout",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.clearToken(),this.setState({error:null})}}),Object.defineProperty(t.prototype,"handleCancel",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({loading:!1,error:null}),OAuth2.clearRedirectData(this.props.flow)}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.state,r=t.error,n=t.loading,o=this.props,a=o.id,l=o.scopes,i=o.authorizationUrl,c=o.flow,s=o.usePkce,u=o.defaultValues;if(!i)return React.createElement(FormError,null,"No flow info");var p=fromSessionStorage("auth."+a+".token")||JSON.stringify(null==u?void 0:u.token);p=p?JSON.parse(p):"";var d=getSecurityDetailsOptions(a,"client_id"),m={field:"auth."+a+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),initValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),placeholder:"Your OAuth2 app Client ID",validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement("div",null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null," Client ID: "),d?React.createElement(FormDropdown,__assign({},m,{options:d})):React.createElement(FormTextField,__assign({},m,{"data-cy":"client-id-input"}))),"authorizationCode"===c&&React.createElement(React.Fragment,null,(!(null==s?void 0:s.hideClientSecretInput)||!s)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+a+".client_secret",initialValue:fromSessionStorage("auth."+a+".client_secret")||(null==u?void 0:u.client_secret),validateOnBlur:!0,validateOnChange:!0,"data-cy":"client-secret-input"})),s&&!s.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:this.state.showPkceOptions,onChange:this.togglePkceOptions,"data-cy":"pkce-options-toggle"}),this.state.showPkceOptions&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeVerifier,onChange:this.handleCodeVerifierChange,"data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeChallenge,onChange:function(t){var r=t.target.value;e.setState({codeChallenge:r})},inputActionButton:this.pkceInputActionButtonProps,"data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+a+".token",type:"hidden",initialValue:p}),React.createElement(Scope,{id:a,scopes:l}),this.values.token&&this.values.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:this.values.token.access_token})):null),React.createElement(ButtonsWrapper,null,this.values.token&&this.values.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleLogout()}},"Log out"):n?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleCancel()}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(this.errors),onClick:function(){e.handleAuthorize(i)}},"Authorize")),n||r||!this.values.token||!this.values.token.access_token&&React.createElement(FormWrapper,null,React.createElement(FormControl,null,n?React.createElement(FormWarning,null,"Please, finish your authorization flow or cancel authorization."):r?React.createElement(React.Fragment,null,React.createElement(OriginalErrorMessage,null,React.createElement(FormError,null,r))):this.values.token&&this.values.token.access_token?null:React.createElement(FormWarning,null," No Access Token. Please, Authorize. "))))}}),Object.defineProperty(t,"contextType",{enumerable:!0,configurable:!0,writable:!0,value:OptionsContext}),t}(React.Component);export{OAuth2Flow};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,OriginalErrorMessage=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-family: monospace;\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"],["\n font-family: monospace;\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"]))),ButtonsWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n margin-bottom: 15px;\n"],["\n margin-bottom: 15px;\n"]))),PkceOptionsWrapper=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n padding: 8px 0 20px;\n"],["\n padding: 8px 0 20px;\n"]))),PkceDetails=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 4px 0;\n"],["\n padding: 4px 0;\n"])));
1
+ import{__assign,__awaiter,__extends,__generator,__makeTemplateObject}from"tslib";import*as React from"react";import{styled,OptionsContext}from"../../redoc-lib";import{LinearProgress}from"../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper,FormWarning}from"../common/form";import{FormDropdown,FormTextField,TextField}from"../common/TextField";import{Checkbox}from"../common/Checkbox";import{Button}from"../shared";import{OAuth2,deriveCodeChallenge}from"../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../utils";import{isEmptyObject,randString}from"../../services/utils";import{getOAuth2TokenEndpointAuthHeader,normalizeUrlProtocol,validateTokenEndpointMethod}from"./utils";import Scope from"./Scope";function requiredValidator(e){if(!e)return"Field is required"}var OAuth2Flow=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:null,loading:!1,showPkceOptions:!1}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"togglePkceOptions",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState((function(e){return{showPkceOptions:!e.showPkceOptions}}))}}),Object.defineProperty(t,"handleCodeVerifierChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r=e.target.value;return __awaiter(t,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return[4,deriveCodeChallenge(r)];case 1:return e=t.sent(),this.setState({codeVerifier:r,validCodeChallenge:e}),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.values)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pkceInputActionButtonProps",{get:function(){var e=this;if(void 0!==this.state.codeVerifier&&this.state.codeChallenge!==this.state.validCodeChallenge)return{label:"sync",onClick:function(){e.state.codeVerifier&&e.setState({codeChallenge:e.state.validCodeChallenge})}}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;if(this.props.usePkce){var t=randString(43);deriveCodeChallenge(t).then((function(r){e.setState({codeVerifier:t,codeChallenge:r,validCodeChallenge:r})}))}}}),Object.defineProperty(t.prototype,"handleAuthorize",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;if(e){this.props.formApi.validate();var r=this.props,n=r.flow,o=r.usePkce,a=r.id,l=r.tokenUrl,i=r.authCorsProxyUrl,c=r.tokenEndpointAuthMethod;if(isEmptyObject(this.errors)){this.setState({loading:!0,error:null});var s=i?i+normalizeUrlProtocol(e):e,u=i&&l?i+normalizeUrlProtocol(l):l,d=this.props.formApi.getValue("auth."+a+".scopes"),p={authorizationUrl:s.startsWith("http")?s:this.props.server+s,clientId:this.values.client_id,scopes:d,redirectUri:this.context.oAuth2RedirectURI,routingBasePath:this.context.routingBasePath,successCallback:function(e){t.props.formApi.setValue("auth."+t.props.id+".token",e),t.setState({loading:!1,error:null})},errorCallback:function(e){t.setState({loading:!1,error:(null==e?void 0:e.message)||"Failed to retrieve the access token"})}};"implicit"===n&&OAuth2.authorizeImplicit(p),validateTokenEndpointMethod(c)?"authorizationCode"===n&&OAuth2.authorizeAuthorizationCode(__assign(__assign(__assign({},p),{tokenUrl:(null==u?void 0:u.startsWith("http"))?u:this.props.server+u,clientSecret:this.values.client_secret,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:c,clientId:this.values.client_id,clientSecret:this.values.client_secret})}),o&&{codeVerifier:this.state.codeVerifier,codeChallenge:this.state.codeChallenge})):console.log("Unsupported token endpoint auth method: "+c)}}}}),Object.defineProperty(t.prototype,"handleLogout",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.clearToken(),this.setState({error:null})}}),Object.defineProperty(t.prototype,"handleCancel",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({loading:!1,error:null}),OAuth2.clearRedirectData(this.props.flow)}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.state,r=t.error,n=t.loading,o=this.props,a=o.id,l=o.scopes,i=o.authorizationUrl,c=o.flow,s=o.usePkce,u=o.defaultValues;if(!i)return React.createElement(FormError,null,"No flow info");var d=fromSessionStorage("auth."+a+".token")||JSON.stringify(null==u?void 0:u.token);d=d?JSON.parse(d):"";var p=getSecurityDetailsOptions(a,"client_id"),m={field:"auth."+a+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),initValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),placeholder:"Your OAuth2 app Client ID",validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement("div",null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null," Client ID: "),p?React.createElement(FormDropdown,__assign({},m,{options:p})):React.createElement(FormTextField,__assign({},m,{"data-cy":"client-id-input"}))),"authorizationCode"===c&&React.createElement(React.Fragment,null,(!(null==s?void 0:s.hideClientSecretInput)||!s)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+a+".client_secret",initialValue:fromSessionStorage("auth."+a+".client_secret")||(null==u?void 0:u.client_secret),validateOnBlur:!0,validateOnChange:!0,"data-cy":"client-secret-input"})),s&&!s.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:this.state.showPkceOptions,onChange:this.togglePkceOptions,"data-cy":"pkce-options-toggle"}),this.state.showPkceOptions&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeVerifier,onChange:this.handleCodeVerifierChange,"data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeChallenge,onChange:function(t){var r=t.target.value;e.setState({codeChallenge:r})},inputActionButton:this.pkceInputActionButtonProps,"data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+a+".token",type:"hidden",initialValue:d}),React.createElement(Scope,{id:a,scopes:l}),this.values.token&&this.values.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:this.values.token.access_token})):null),React.createElement(ButtonsWrapper,null,this.values.token&&this.values.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleLogout()}},"Log out"):n?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleCancel()}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(this.errors),onClick:function(){e.handleAuthorize(i)}},"Authorize")),n||r||!this.values.token||!this.values.token.access_token&&React.createElement(FormWrapper,null,React.createElement(FormControl,null,n?React.createElement(FormWarning,null,"Please, finish your authorization flow or cancel authorization."):r?React.createElement(React.Fragment,null,React.createElement(OriginalErrorMessage,null,React.createElement(FormError,null,r))):this.values.token&&this.values.token.access_token?null:React.createElement(FormWarning,null," No Access Token. Please, Authorize. "))))}}),Object.defineProperty(t,"contextType",{enumerable:!0,configurable:!0,writable:!0,value:OptionsContext}),t}(React.Component);export{OAuth2Flow};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,OriginalErrorMessage=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-family: monospace;\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"],["\n font-family: monospace;\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"]))),ButtonsWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n margin-bottom: 15px;\n"],["\n margin-bottom: 15px;\n"]))),PkceOptionsWrapper=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n padding: 8px 0 20px;\n"],["\n padding: 8px 0 20px;\n"]))),PkceDetails=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 4px 0;\n"],["\n padding: 4px 0;\n"])));
2
2
  //# sourceMappingURL=OAuth2Flow.js.map
@@ -3,6 +3,7 @@ import type { SecurityDetails } from '../../utils';
3
3
  export interface OAuth2TokenInputProps {
4
4
  flow: {
5
5
  refreshUrl?: string;
6
+ 'x-tokenEndpointAuthMethod'?: 'none' | 'client_secret_basic' | string;
6
7
  scopes: Record<string, string>;
7
8
  tokenUrl: string;
8
9
  };
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__extends,__generator}from"tslib";import*as React from"react";import{FormControl,FormLabel,FormError,FormWrapper,FormHeader,TokenField,TokenValue,TokenClear,TokenShowHide}from"../common/form";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage}from"../../utils";import{OAuth2}from"../../services/OAuth2";import{Button}from"../shared";import{FormDropdown,FormTextField}from"../common/TextField";import Scope from"./Scope";import{normalizeUrlProtocol}from"./utils";function validateToken(e){if(!e)return"Token is required"}var OAuth2TokenInput=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:"",loading:!1,tokenMasked:!0}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token",""),toSessionStorage("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"toggleTokenMask",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({tokenMasked:!t.state.tokenMasked})}}),Object.defineProperty(t,"requestToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(t,void 0,void 0,(function(){var e,t,o,r,n,i,l,a=this;return __generator(this,(function(s){switch(s.label){case 0:return this.state.loading?[2]:(e=this.props,t=e.server,o=e.flow,r=e.authCorsProxyUrl,n=r&&o.tokenUrl?r+normalizeUrlProtocol(o.tokenUrl):o.tokenUrl,this.errors.client_id||this.errors.client_secret?(console.log("Provide client_id and client_secret"),[2]):(i=this.values.client_id,l=this.values.client_secret,i&&l?(this.setState({loading:!0}),[4,OAuth2.authorizeClientCredentials({tokenUrl:n.startsWith("http")?n:t+n,clientId:i,clientSecret:l,scopes:this.values.scopes,successCallback:function(e){a.props.formApi.setValue("auth."+a.props.id+".token",e),a.setState({loading:!1})},errorCallback:function(e){a.clearToken(),a.setState({error:e.message,loading:!1})}})]):(console.log("Provide client_id and client_secret"),[2])));case 1:return s.sent(),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t,o;return(null===(o=null===(t=null===(e=this.props.form)||void 0===e?void 0:e.values)||void 0===t?void 0:t.auth)||void 0===o?void 0:o[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.loading,o=e.error,r=e.tokenMasked,n=this.props,i=n.id,l=n.defaultValues,a=Object.keys(this.props.flow.scopes),s=fromSessionStorage("auth."+i+".token")||JSON.stringify(null==l?void 0:l.token);s=s?JSON.parse(s):"";var c=getSecurityDetailsOptions(i,"client_id"),u={field:"auth."+i+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),initValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),placeholder:"Your OAuth2 app Client ID"};return React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client ID:"),c?React.createElement(FormDropdown,__assign({},u,{options:c})):React.createElement(FormTextField,__assign({},u,{type:"password"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+i+".client_secret",initialValue:fromSessionStorage("auth."+i+".client_secret")||(null==l?void 0:l.client_secret)})),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+i+".token",type:"hidden",initialValue:s,validate:validateToken}),React.createElement(Scope,{id:i,scopes:a})),React.createElement(Button,{color:"primary",onClick:this.requestToken,blinking:t},t?"Loading...":"Request Token"),React.createElement(FormHeader,null," Access Token "),o?React.createElement(FormError,{style:{marginBottom:"1em"}},"Failed to request token: ",React.createElement("pre",null,o)," "):this.values.token&&this.values.token.access_token?React.createElement(TokenField,null,React.createElement(TokenValue,{length:this.values.token.access_token.length,masked:r},this.values.token.access_token),React.createElement(TokenShowHide,{onClick:this.toggleTokenMask},r?"Show":"Hide"," "),React.createElement(TokenClear,{onClick:this.clearToken}," Clear ")):React.createElement(FormError,{style:{marginBottom:"1em"}},"No token"))}}),t}(React.Component);export{OAuth2TokenInput};export default OAuth2TokenInput;
1
+ import{__assign,__awaiter,__extends,__generator}from"tslib";import*as React from"react";import{FormControl,FormLabel,FormError,FormWrapper,FormHeader,TokenField,TokenValue,TokenClear,TokenShowHide}from"../common/form";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage}from"../../utils";import{OAuth2}from"../../services/OAuth2";import{Button}from"../shared";import{FormDropdown,FormTextField}from"../common/TextField";import Scope from"./Scope";import{getOAuth2TokenEndpointAuthHeader,normalizeUrlProtocol,validateTokenEndpointMethod}from"./utils";function validateToken(e){if(!e)return"Token is required"}var OAuth2TokenInput=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:"",loading:!1,tokenMasked:!0}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token",""),toSessionStorage("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"toggleTokenMask",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({tokenMasked:!t.state.tokenMasked})}}),Object.defineProperty(t,"requestToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(t,void 0,void 0,(function(){var e,t,o,r,n,i,l,a,s=this;return __generator(this,(function(c){switch(c.label){case 0:return this.state.loading?[2]:(e=this.props,t=e.server,o=e.flow,r=e.authCorsProxyUrl,n=r&&o.tokenUrl?r+normalizeUrlProtocol(o.tokenUrl):o.tokenUrl,this.errors.client_id||this.errors.client_secret?(console.log("Provide client_id and client_secret"),[2]):(i=this.values.client_id,l=this.values.client_secret,i&&l?(this.setState({loading:!0}),a=o["x-tokenEndpointAuthMethod"],validateTokenEndpointMethod(a)?[4,OAuth2.authorizeClientCredentials({tokenUrl:n.startsWith("http")?n:t+n,clientId:i,clientSecret:l,scopes:this.values.scopes,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:a,clientId:i,clientSecret:l}),successCallback:function(e){s.props.formApi.setValue("auth."+s.props.id+".token",e),s.setState({loading:!1})},errorCallback:function(e){s.clearToken(),s.setState({error:e.message,loading:!1})}})]:(console.log("Unsupported token endpoint auth method: "+a),[2])):(console.log("Provide client_id and client_secret"),[2])));case 1:return c.sent(),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t,o;return(null===(o=null===(t=null===(e=this.props.form)||void 0===e?void 0:e.values)||void 0===t?void 0:t.auth)||void 0===o?void 0:o[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.loading,o=e.error,r=e.tokenMasked,n=this.props,i=n.id,l=n.defaultValues,a=Object.keys(this.props.flow.scopes),s=fromSessionStorage("auth."+i+".token")||JSON.stringify(null==l?void 0:l.token);s=s?JSON.parse(s):"";var c=getSecurityDetailsOptions(i,"client_id"),u={field:"auth."+i+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),initValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),placeholder:"Your OAuth2 app Client ID"};return React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client ID:"),c?React.createElement(FormDropdown,__assign({},u,{options:c})):React.createElement(FormTextField,__assign({},u,{type:"password"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+i+".client_secret",initialValue:fromSessionStorage("auth."+i+".client_secret")||(null==l?void 0:l.client_secret)})),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+i+".token",type:"hidden",initialValue:s,validate:validateToken}),React.createElement(Scope,{id:i,scopes:a})),React.createElement(Button,{color:"primary",onClick:this.requestToken,blinking:t},t?"Loading...":"Request Token"),React.createElement(FormHeader,null," Access Token "),o?React.createElement(FormError,{style:{marginBottom:"1em"}},"Failed to request token: ",React.createElement("pre",null,o)," "):this.values.token&&this.values.token.access_token?React.createElement(TokenField,null,React.createElement(TokenValue,{length:this.values.token.access_token.length,masked:r},this.values.token.access_token),React.createElement(TokenShowHide,{onClick:this.toggleTokenMask},r?"Show":"Hide"," "),React.createElement(TokenClear,{onClick:this.clearToken}," Clear ")):React.createElement(FormError,{style:{marginBottom:"1em"}},"No token"))}}),t}(React.Component);export{OAuth2TokenInput};export default OAuth2TokenInput;
2
2
  //# sourceMappingURL=OAuth2TokenInput.js.map
@@ -12,3 +12,9 @@ export declare function updateVariablesStorage(name: string, value: string): voi
12
12
  export declare function unescapeQueryParams(params: GenericObject): GenericObject;
13
13
  export declare function getFileNameFromHeaders(headers: Record<string, string>): string;
14
14
  export declare const makeRequestInterceptor: ({ requestInterceptor, sendXUserAgentInTryIt, disableTryItRequestUrlEncoding, }: Pick<RedocProNormalizedOptions, 'requestInterceptor' | 'sendXUserAgentInTryIt' | 'disableTryItRequestUrlEncoding'>, operation: OperationModel, securitySchemaAuth?: string | undefined) => (req: Request) => void | Request;
15
+ export declare const validateTokenEndpointMethod: (token: string[] | string | undefined) => boolean;
16
+ export declare const getOAuth2TokenEndpointAuthHeader: ({ authMethod, clientId, clientSecret, }: {
17
+ authMethod?: string | string[] | undefined;
18
+ clientId: string;
19
+ clientSecret: string;
20
+ }) => Record<'Authorization', string> | GenericObject;
@@ -1,2 +1,2 @@
1
- import{__assign}from"tslib";import{fromSessionStorage,getParameterValue,setParameterValue,setSecurityDetails,toSessionStorage,unescapeFormId}from"../../utils";export function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}export function updateStorage(e){if(e.values.auth)for(var r=0,t=Object.keys(e.values.auth);r<t.length;r++){var a=t[r],n=e.values.auth[a];setSecurityDetails(a,n)}updateParameterStorage(e)}function updateParameterStorage(e){for(var r,t=0,a=["path","query","header","cookie"];t<a.length;t++){var n=a[t];if(null===(r=e.values)||void 0===r?void 0:r[n])for(var i=0,o=Object.keys(e.values[n]);i<o.length;i++){var s=o[i];setParameterValue(n,s,e.values[n][s])}}}export var getParameters=function(e,r){return e.filter((function(e){return e.in===r})).reduce((function(e,r){var t=r.in,a=r.name;return e[a]=getParameterValue(t||"",a),e}),{})};var pathTemplateRegExp=/(?:{)(\w+)(?:})/g;export function getServerWithVariables(e,r){void 0===r&&(r=0);var t=e[r],a=getDefaultOrStoredVariables(t);return __assign(__assign({},t),{variables:a})}export function getInitialServerWithVariables(e){var r=fromSessionStorage("serverUrl"),t=e.find((function(e){return e.url===r}))||e[0],a=getDefaultOrStoredVariables(t);return __assign(__assign({},t),{variables:a})}export function expandVariables(e,r){return void 0===r&&(r={}),e.replace(pathTemplateRegExp,(function(e,t){return r[t]||e}))}export function expandDefaultServerVariables(e,r){return void 0===r&&(r={}),e.replace(pathTemplateRegExp,(function(e,t){return r[t]&&r[t].default||e}))}export function getDefaultOrStoredVariables(e){if(!(null==e?void 0:e.variables))return{};var r=fromSessionStorage("variables"),t=r&&JSON.parse(r)||{},a={};return Object.entries(e.variables||{}).forEach((function(e){var r=e[0],n=e[1];a[r]=t[r]||n.default||""})),a}export function updateVariablesStorage(e,r){var t,a=fromSessionStorage("variables"),n=a&&JSON.parse(a)||{};toSessionStorage("variables",JSON.stringify(__assign(__assign({},n),((t={})[e]=r,t))))}export function unescapeQueryParams(e){return Object.entries(e).reduce((function(e,r){var t=r[0],a=r[1];return e[unescapeFormId(t)]=a,e}),{})}export function getFileNameFromHeaders(e){for(var r="filename=",t=0,a=Object.entries(e);t<a.length;t++){var n=a[t],i=n[0],o=n[1];if("content-disposition"===i.toLowerCase()){var s=o.split(";").find((function(e){return e.trim().startsWith(r)}));if(s)return s.split(r)[1]}}return""}export var makeRequestInterceptor=function(e,r,t){var a=e.requestInterceptor,n=e.sendXUserAgentInTryIt,i=e.disableTryItRequestUrlEncoding;return function(e){var o,s,u,l;i&&(e=__assign(__assign({},e),{url:decodeURIComponent(e.url)})),n&&(e.headers["X-User-Agent"]="Redocly Try it API console");var v=(null===(s=null===(o=null==r?void 0:r.requestValues)||void 0===o?void 0:o.header)||void 0===s?void 0:s.authorization)||(null===(l=null===(u=null==r?void 0:r.requestValues)||void 0===u?void 0:u.header)||void 0===l?void 0:l.Authorization);return!t&&v&&(e.headers.Authorization=v),a?a(e,r):e}};
1
+ import{__assign}from"tslib";import{fromSessionStorage,getParameterValue,setParameterValue,setSecurityDetails,toSessionStorage,unescapeFormId}from"../../utils";export function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}export function updateStorage(e){if(e.values.auth)for(var r=0,t=Object.keys(e.values.auth);r<t.length;r++){var a=t[r],n=e.values.auth[a];setSecurityDetails(a,n)}updateParameterStorage(e)}function updateParameterStorage(e){for(var r,t=0,a=["path","query","header","cookie"];t<a.length;t++){var n=a[t];if(null===(r=e.values)||void 0===r?void 0:r[n])for(var i=0,o=Object.keys(e.values[n]);i<o.length;i++){var s=o[i];setParameterValue(n,s,e.values[n][s])}}}export var getParameters=function(e,r){return e.filter((function(e){return e.in===r})).reduce((function(e,r){var t=r.in,a=r.name;return e[a]=getParameterValue(t||"",a),e}),{})};var pathTemplateRegExp=/(?:{)(\w+)(?:})/g;export function getServerWithVariables(e,r){void 0===r&&(r=0);var t=e[r],a=getDefaultOrStoredVariables(t);return __assign(__assign({},t),{variables:a})}export function getInitialServerWithVariables(e){var r=fromSessionStorage("serverUrl"),t=e.find((function(e){return e.url===r}))||e[0],a=getDefaultOrStoredVariables(t);return __assign(__assign({},t),{variables:a})}export function expandVariables(e,r){return void 0===r&&(r={}),e.replace(pathTemplateRegExp,(function(e,t){return r[t]||e}))}export function expandDefaultServerVariables(e,r){return void 0===r&&(r={}),e.replace(pathTemplateRegExp,(function(e,t){return r[t]&&r[t].default||e}))}export function getDefaultOrStoredVariables(e){if(!(null==e?void 0:e.variables))return{};var r=fromSessionStorage("variables"),t=r&&JSON.parse(r)||{},a={};return Object.entries(e.variables||{}).forEach((function(e){var r=e[0],n=e[1];a[r]=t[r]||n.default||""})),a}export function updateVariablesStorage(e,r){var t,a=fromSessionStorage("variables"),n=a&&JSON.parse(a)||{};toSessionStorage("variables",JSON.stringify(__assign(__assign({},n),((t={})[e]=r,t))))}export function unescapeQueryParams(e){return Object.entries(e).reduce((function(e,r){var t=r[0],a=r[1];return e[unescapeFormId(t)]=a,e}),{})}export function getFileNameFromHeaders(e){for(var r="filename=",t=0,a=Object.entries(e);t<a.length;t++){var n=a[t],i=n[0],o=n[1];if("content-disposition"===i.toLowerCase()){var s=o.split(";").find((function(e){return e.trim().startsWith(r)}));if(s)return s.split(r)[1]}}return""}export var makeRequestInterceptor=function(e,r,t){var a=e.requestInterceptor,n=e.sendXUserAgentInTryIt,i=e.disableTryItRequestUrlEncoding;return function(e){var o,s,u,l;i&&(e=__assign(__assign({},e),{url:decodeURIComponent(e.url)})),n&&(e.headers["X-User-Agent"]="Redocly Try it API console");var c=(null===(s=null===(o=null==r?void 0:r.requestValues)||void 0===o?void 0:o.header)||void 0===s?void 0:s.authorization)||(null===(l=null===(u=null==r?void 0:r.requestValues)||void 0===u?void 0:u.header)||void 0===l?void 0:l.Authorization);return!t&&c&&(e.headers.Authorization=c),a?a(e,r):e}};export var validateTokenEndpointMethod=function(e){if(!e)return!0;var r=Array.isArray(e)?e:[e];return!(r.length&&!r.includes("none")&&!r.includes("client_secret_basic"))};export var getOAuth2TokenEndpointAuthHeader=function(e){var r=e.authMethod,t=e.clientId,a=e.clientSecret;return"client_secret_basic"===r||Array.isArray(r)&&r.includes("client_secret_basic")?{Authorization:"Basic "+btoa(t+":"+a)}:{}};
2
2
  //# sourceMappingURL=utils.js.map
@@ -1,2 +1,2 @@
1
- var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k;import{__makeTemplateObject}from"tslib";import styled,{css,extensionsHook,mediaCSS,ZERO_BREAKPOINT}from"../styled-components";import{deprecatedCss}from"./mixins";export var PropertiesTableCaption=styled.caption(templateObject_1||(templateObject_1=__makeTemplateObject(["\n text-align: right;\n font-size: 0.9em;\n font-weight: normal;\n color: ",";\n"],["\n text-align: right;\n font-size: 0.9em;\n font-weight: normal;\n color: ",";\n"])),(function(n){return n.theme.colors.text.secondary}));var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,templateObject_11,repeatingGradient=css(templateObject_2||(templateObject_2=__makeTemplateObject(["\n repeating-linear-gradient(0deg,\n ",",\n "," 3px,\n transparent 3px,\n transparent 5px,\n "," 5px);\n"],["\n repeating-linear-gradient(0deg,\n ",",\n "," 3px,\n transparent 3px,\n transparent 5px,\n "," 5px);\n"])),(function(n){return n.theme.schema.linesColor}),(function(n){return n.theme.schema.linesColor}),(function(n){return n.theme.schema.linesColor}));export var PropertyCell=styled.td(templateObject_3||(templateObject_3=__makeTemplateObject(["\n box-sizing: border-box;\n position: relative;\n padding: 10px;\n background-image: ",";\n background-repeat: no-repeat;\n background-size: 1px 100%;\n\n ","\n\n tr:first-of-type > & {\n background-image: ",";\n background-position: 0 10px;\n padding-top: 0;\n }\n\n tr.last > & {\n background-image: ",";\n padding-bottom: 0;\n ",";\n }\n\n tr.last + tr > & {\n background: none;\n }\n\n tr.last:first-child > & {\n background-image: ",";\n ",";\n }\n"],["\n box-sizing: border-box;\n position: relative;\n padding: 10px;\n background-image: ",";\n background-repeat: no-repeat;\n background-size: 1px 100%;\n\n ","\n\n tr:first-of-type > & {\n background-image: ",";\n background-position: 0 10px;\n padding-top: 0;\n }\n\n tr.last > & {\n background-image: ",";\n padding-bottom: 0;\n ",";\n }\n\n tr.last + tr > & {\n background: none;\n }\n\n tr.last:first-child > & {\n background-image: ",";\n ",";\n }\n"])),repeatingGradient,mediaCSS({display:(_a={},_a[ZERO_BREAKPOINT]="block",_a.small="table-cell",_a),overflow:(_b={},_b[ZERO_BREAKPOINT]="hidden",_b.small="initial",_b),padding:(_c={},_c[ZERO_BREAKPOINT]="0 20px",_c.small="10px",_c),marginBottom:(_d={},_d[ZERO_BREAKPOINT]="2px",_d.small=0,_d)}),repeatingGradient,repeatingGradient,mediaCSS({backgroundSize:(_e={},_e[ZERO_BREAKPOINT]="0.9px 100%",_e.small="0.9px 22px",_e)}),repeatingGradient,mediaCSS({backgroundSize:(_f={},_f[ZERO_BREAKPOINT]="0.9px 100%",_f.small="0.9px 20px",_f),backgroundPosition:(_g={},_g[ZERO_BREAKPOINT]="0 20px",_g.small="0 0",_g)}));export var PropertyCellWithInner=styled(PropertyCell)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 0;\n"],["\n padding: 0;\n"])));export var PropertyNameCell=styled(PropertyCell)(templateObject_6||(templateObject_6=__makeTemplateObject(["\n vertical-align: top;\n line-height: 23px;\n white-space: nowrap;\n font-size: 14px;\n ","\n\n &.deprecated {\n ",";\n }\n\n ","\n\n ",";\n .field-name {\n display: inline-flex;\n align-items: center;\n }\n"],["\n vertical-align: top;\n line-height: 23px;\n white-space: nowrap;\n font-size: 14px;\n ","\n\n &.deprecated {\n ",";\n }\n\n ","\n\n ",";\n .field-name {\n display: inline-flex;\n align-items: center;\n }\n"])),(function(n){var e=n.theme;return mediaCSS({fontFamily:e.typography.fieldName.fontFamily})}),deprecatedCss,(function(n){return"patternProperties"===n.kind&&css(templateObject_5||(templateObject_5=__makeTemplateObject(["\n span.field-name {\n white-space: break-spaces;\n text-align: left;\n display: inline-table;\n line-height: 1.5;\n }\n "],["\n span.field-name {\n white-space: break-spaces;\n text-align: left;\n display: inline-table;\n line-height: 1.5;\n }\n "])))}),extensionsHook("PropertyNameCell"));export var PropertyDetailsCell=styled.td(templateObject_7||(templateObject_7=__makeTemplateObject(["\n box-sizing: border-box;\n vertical-align: top;\n\n tr.expanded & {\n border-bottom: none;\n }\n\n tr.last > & {\n border: none;\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 1px 100%;\n padding-bottom: 0;\n\n /* workaround for discriminator dropdown oveflowing scrolling container,\n fixes the issue for the last item in the schema only */\n & > div > div.dropdown > .dropdown-selector-content {\n position: relative;\n }\n }\n\n tr:first-of-type > & {\n padding-top: 0;\n }\n\n ","\n\n ",";\n"],["\n box-sizing: border-box;\n vertical-align: top;\n\n tr.expanded & {\n border-bottom: none;\n }\n\n tr.last > & {\n border: none;\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 1px 100%;\n padding-bottom: 0;\n\n /* workaround for discriminator dropdown oveflowing scrolling container,\n fixes the issue for the last item in the schema only */\n & > div > div.dropdown > .dropdown-selector-content {\n position: relative;\n }\n }\n\n tr:first-of-type > & {\n padding-top: 0;\n }\n\n ","\n\n ",";\n"])),(function(n){var e,t,r,a=n.theme;return mediaCSS({borderBottom:(e={},e[ZERO_BREAKPOINT]="none",e.small="1px solid "+a.colors.border.light,e),borderLeft:(t={},t[ZERO_BREAKPOINT]="1px solid "+a.schema.linesColor,t.small="none",t),padding:(r={},r[ZERO_BREAKPOINT]="0 20px",r.small="10px 0",r),width:a.schema.defaultDetailsWidth,minWidth:"200px"})}),extensionsHook("PropertyDetailsCell"));export var PropertyBullet=styled.span(templateObject_8||(templateObject_8=__makeTemplateObject(["\n margin-right: 10px;\n ","\n\n &::before {\n content: '';\n display: inline-block;\n vertical-align: middle;\n width: 10px;\n height: 1px;\n background: ",";\n }\n\n ","\n\n ",";\n"],["\n margin-right: 10px;\n ","\n\n &::before {\n content: '';\n display: inline-block;\n vertical-align: middle;\n width: 10px;\n height: 1px;\n background: ",";\n }\n\n ","\n\n ",";\n"])),(function(n){var e=n.theme;return mediaCSS({color:e.schema.linesColor,fontFamily:e.typography.code.fontFamily})}),(function(n){return n.theme.schema.linesColor}),(function(n){var e,t,r=n.theme;return mediaCSS({width:r.schema.defaultDetailsWidth,borderLeft:(e={},e[ZERO_BREAKPOINT]="1px dashed "+r.schema.linesColor,e.small="none",e),padding:(t={},t[ZERO_BREAKPOINT]="5px 10px",t.small="10px",t)})}),extensionsHook("PropertyDetailsCell"));export var InnerPropertiesWrap=styled.div(templateObject_9||(templateObject_9=__makeTemplateObject(["\n padding: ",";\n"],["\n padding: ",";\n"])),(function(n){return n.theme.schema.nestingSpacing}));export var PropertiesTableWrap=styled.div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n display: block;\n overflow-x: auto;\n padding: 5px; /* hack to show overflown anchor icons */\n margin: -5px;\n"],["\n display: block;\n overflow-x: auto;\n padding: 5px; /* hack to show overflown anchor icons */\n margin: -5px;\n"])));export var PropertiesTable=styled.table(templateObject_11||(templateObject_11=__makeTemplateObject(["\n border-collapse: separate;\n border-radius: ",";\n width: 100%;\n ","\n > tr, > tbody > tr {\n ","\n }\n\n > tr {\n vertical-align: middle;\n }\n\n ","\n\n &\n ",",\n &\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n "," {\n margin-left: ",";\n margin-bottom: ",";\n background: ",";\n border-radius: ",";\n }\n\n &\n ","\n ",",\n &\n ","\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n ","\n "," {\n background: #ffffff;\n }\n"],["\n border-collapse: separate;\n border-radius: ",";\n width: 100%;\n ","\n > tr, > tbody > tr {\n ","\n }\n\n > tr {\n vertical-align: middle;\n }\n\n ","\n\n &\n ",",\n &\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n "," {\n margin-left: ",";\n margin-bottom: ",";\n background: ",";\n border-radius: ",";\n }\n\n &\n ","\n ",",\n &\n ","\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n ","\n "," {\n background: #ffffff;\n }\n"])),(function(n){return n.theme.shape.borderRadius}),(function(n){var e,t=n.theme;return mediaCSS({fontSize:t.typography.fontSize,display:(e={},e[ZERO_BREAKPOINT]="block",e.small="table",e)})}),mediaCSS({display:(_h={},_h[ZERO_BREAKPOINT]="block",_h.small="table-row",_h),marginBottom:(_j={},_j[ZERO_BREAKPOINT]="2px",_j.small=0,_j),borderSpacing:(_k={},_k[ZERO_BREAKPOINT]=0,_k.small="0 2px",_k)}),(function(n){return"\n @media screen and (max-width: "+n.theme.breakpoints[0]+") and (-ms-high-contrast:none) {\n td {\n float: left;\n width: 100%;\n }\n }\n "}),InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,(function(n){return n.theme.schema.nestingSpacing}),(function(n){return n.theme.schema.nestingSpacing}),(function(n){return n.theme.schema.nestedBackground}),(function(n){return n.theme.components.panels.borderRadius}),InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap);
1
+ var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k;import{__makeTemplateObject}from"tslib";import styled,{css,extensionsHook,mediaCSS,ZERO_BREAKPOINT}from"../styled-components";import{deprecatedCss}from"./mixins";export var PropertiesTableCaption=styled.caption(templateObject_1||(templateObject_1=__makeTemplateObject(["\n text-align: right;\n font-size: 0.9em;\n font-weight: normal;\n color: ",";\n"],["\n text-align: right;\n font-size: 0.9em;\n font-weight: normal;\n color: ",";\n"])),(function(n){return n.theme.colors.text.secondary}));var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,templateObject_11,repeatingGradient=css(templateObject_2||(templateObject_2=__makeTemplateObject(["\n repeating-linear-gradient(0deg,\n ",",\n "," 3px,\n transparent 3px,\n transparent 5px,\n "," 5px);\n"],["\n repeating-linear-gradient(0deg,\n ",",\n "," 3px,\n transparent 3px,\n transparent 5px,\n "," 5px);\n"])),(function(n){return n.theme.schema.linesColor}),(function(n){return n.theme.schema.linesColor}),(function(n){return n.theme.schema.linesColor}));export var PropertyCell=styled.td(templateObject_3||(templateObject_3=__makeTemplateObject(["\n box-sizing: border-box;\n position: relative;\n padding: 10px;\n background-image: ",";\n background-repeat: no-repeat;\n background-size: 1px 100%;\n\n ","\n\n tr:first-of-type > & {\n background-image: ",";\n background-position: 0 10px;\n padding-top: 0;\n }\n\n tr.last > & {\n background-image: ",";\n padding-bottom: 0;\n ",";\n }\n\n tr.last + tr > & {\n background: none;\n }\n\n tr.last:first-child > & {\n background-image: ",";\n ",";\n }\n"],["\n box-sizing: border-box;\n position: relative;\n padding: 10px;\n background-image: ",";\n background-repeat: no-repeat;\n background-size: 1px 100%;\n\n ","\n\n tr:first-of-type > & {\n background-image: ",";\n background-position: 0 10px;\n padding-top: 0;\n }\n\n tr.last > & {\n background-image: ",";\n padding-bottom: 0;\n ",";\n }\n\n tr.last + tr > & {\n background: none;\n }\n\n tr.last:first-child > & {\n background-image: ",";\n ",";\n }\n"])),repeatingGradient,mediaCSS({display:(_a={},_a[ZERO_BREAKPOINT]="block",_a.small="table-cell",_a),overflow:(_b={},_b[ZERO_BREAKPOINT]="hidden",_b.small="initial",_b),padding:(_c={},_c[ZERO_BREAKPOINT]="0 20px",_c.small="10px",_c),marginBottom:(_d={},_d[ZERO_BREAKPOINT]="2px",_d.small=0,_d)}),repeatingGradient,repeatingGradient,mediaCSS({backgroundSize:(_e={},_e[ZERO_BREAKPOINT]="0.9px 100%",_e.small="0.9px 22px",_e)}),repeatingGradient,mediaCSS({backgroundSize:(_f={},_f[ZERO_BREAKPOINT]="0.9px 100%",_f.small="0.9px 20px",_f),backgroundPosition:(_g={},_g[ZERO_BREAKPOINT]="0 20px",_g.small="0 0",_g)}));export var PropertyCellWithInner=styled(PropertyCell)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 0;\n"],["\n padding: 0;\n"])));export var PropertyNameCell=styled(PropertyCell)(templateObject_6||(templateObject_6=__makeTemplateObject(["\n vertical-align: top;\n line-height: 23px;\n white-space: nowrap;\n font-size: 14px;\n ","\n\n &.deprecated {\n ",";\n }\n\n ","\n\n ",";\n .field-name {\n display: inline-flex;\n align-items: center;\n }\n"],["\n vertical-align: top;\n line-height: 23px;\n white-space: nowrap;\n font-size: 14px;\n ","\n\n &.deprecated {\n ",";\n }\n\n ","\n\n ",";\n .field-name {\n display: inline-flex;\n align-items: center;\n }\n"])),(function(n){var e=n.theme;return mediaCSS({fontFamily:e.typography.fieldName.fontFamily})}),deprecatedCss,(function(n){return"patternProperties"===n.kind&&css(templateObject_5||(templateObject_5=__makeTemplateObject(["\n span.field-name {\n white-space: break-spaces;\n text-align: left;\n display: inline-table;\n line-height: 1.5;\n }\n "],["\n span.field-name {\n white-space: break-spaces;\n text-align: left;\n display: inline-table;\n line-height: 1.5;\n }\n "])))}),extensionsHook("PropertyNameCell"));export var PropertyDetailsCell=styled.td(templateObject_7||(templateObject_7=__makeTemplateObject(["\n box-sizing: border-box;\n vertical-align: top;\n\n tr.expanded & {\n border-bottom: none;\n }\n\n tr.last > & {\n border: none;\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 1px 100%;\n padding-bottom: 0;\n\n /* workaround for discriminator dropdown oveflowing scrolling container,\n fixes the issue for the last item in the schema only */\n & > div > div.dropdown > .dropdown-selector-content {\n position: relative;\n }\n }\n\n tr:first-of-type > & {\n padding-top: 0;\n }\n\n ","\n\n ",";\n"],["\n box-sizing: border-box;\n vertical-align: top;\n\n tr.expanded & {\n border-bottom: none;\n }\n\n tr.last > & {\n border: none;\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 1px 100%;\n padding-bottom: 0;\n\n /* workaround for discriminator dropdown oveflowing scrolling container,\n fixes the issue for the last item in the schema only */\n & > div > div.dropdown > .dropdown-selector-content {\n position: relative;\n }\n }\n\n tr:first-of-type > & {\n padding-top: 0;\n }\n\n ","\n\n ",";\n"])),(function(n){var e,t,r,a=n.theme;return mediaCSS({borderBottom:(e={},e[ZERO_BREAKPOINT]="none",e.small="1px solid "+a.colors.border.light,e),borderLeft:(t={},t[ZERO_BREAKPOINT]="1px solid "+a.schema.linesColor,t.small="none",t),padding:(r={},r[ZERO_BREAKPOINT]="0 20px",r.small="10px 0",r),width:a.schema.defaultDetailsWidth,minWidth:"200px"})}),extensionsHook("PropertyDetailsCell"));export var PropertyBullet=styled.span(templateObject_8||(templateObject_8=__makeTemplateObject(["\n margin-right: 10px;\n ","\n\n &::before {\n content: '';\n display: inline-block;\n vertical-align: middle;\n width: 10px;\n height: 1px;\n background: ",";\n }\n\n ","\n\n ",";\n"],["\n margin-right: 10px;\n ","\n\n &::before {\n content: '';\n display: inline-block;\n vertical-align: middle;\n width: 10px;\n height: 1px;\n background: ",";\n }\n\n ","\n\n ",";\n"])),(function(n){var e=n.theme;return mediaCSS({color:e.schema.linesColor,fontFamily:e.typography.code.fontFamily})}),(function(n){return n.theme.schema.linesColor}),(function(n){var e,t,r=n.theme;return mediaCSS({width:r.schema.defaultDetailsWidth,borderLeft:(e={},e[ZERO_BREAKPOINT]="1px dashed "+r.schema.linesColor,e.small="none",e),padding:(t={},t[ZERO_BREAKPOINT]="5px 10px",t.small="10px",t)})}),extensionsHook("PropertyDetailsCell"));export var InnerPropertiesWrap=styled.div(templateObject_9||(templateObject_9=__makeTemplateObject(["\n padding: ",";\n"],["\n padding: ",";\n"])),(function(n){return n.theme.schema.nestingSpacing}));export var PropertiesTableWrap=styled.div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n display: block;\n overflow-x: auto;\n padding: 5px; /* hack to show overflown anchor icons */\n margin: -5px;\n"],["\n display: block;\n overflow-x: auto;\n padding: 5px; /* hack to show overflown anchor icons */\n margin: -5px;\n"])));export var PropertiesTable=styled.table(templateObject_11||(templateObject_11=__makeTemplateObject(["\n border-collapse: separate;\n border-radius: ",";\n width: 100%;\n ","\n > tr, > tbody > tr {\n ","\n }\n\n > tr {\n vertical-align: middle;\n }\n\n ","\n\n &\n ",",\n &\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n "," {\n margin-left: ",";\n margin-bottom: ",";\n background: ",";\n border-radius: ",";\n }\n\n &\n ","\n ",",\n &\n ","\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n ","\n "," {\n background: ",";\n }\n"],["\n border-collapse: separate;\n border-radius: ",";\n width: 100%;\n ","\n > tr, > tbody > tr {\n ","\n }\n\n > tr {\n vertical-align: middle;\n }\n\n ","\n\n &\n ",",\n &\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n "," {\n margin-left: ",";\n margin-bottom: ",";\n background: ",";\n border-radius: ",";\n }\n\n &\n ","\n ",",\n &\n ","\n ","\n ","\n ",",\n &\n ","\n ","\n ","\n ","\n ","\n "," {\n background: ",";\n }\n"])),(function(n){return n.theme.shape.borderRadius}),(function(n){var e,t=n.theme;return mediaCSS({fontSize:t.typography.fontSize,display:(e={},e[ZERO_BREAKPOINT]="block",e.small="table",e)})}),mediaCSS({display:(_h={},_h[ZERO_BREAKPOINT]="block",_h.small="table-row",_h),marginBottom:(_j={},_j[ZERO_BREAKPOINT]="2px",_j.small=0,_j),borderSpacing:(_k={},_k[ZERO_BREAKPOINT]=0,_k.small="0 2px",_k)}),(function(n){return"\n @media screen and (max-width: "+n.theme.breakpoints[0]+") and (-ms-high-contrast:none) {\n td {\n float: left;\n width: 100%;\n }\n }\n "}),InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,(function(n){return n.theme.schema.nestingSpacing}),(function(n){return n.theme.schema.nestingSpacing}),(function(n){return n.theme.schema.nestedBackground}),(function(n){return n.theme.components.panels.borderRadius}),InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,InnerPropertiesWrap,(function(n){return n.theme.schema.nestedAlternativeBackground}));
2
2
  //# sourceMappingURL=fields-layout.js.map
@@ -1,2 +1,2 @@
1
- import{__decorate,__extends}from"tslib";import{observer}from"mobx-react";import*as React from"react";import{Dropdown}from"../../../../components/common/Dropdown";var DiscriminatorDropdown=function(e){function r(){var r=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(r,"changeActiveChild",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0!==e.idx&&r.props.parent.activateOneOf(e.idx)}}),r}return __extends(r,e),Object.defineProperty(r.prototype,"sortOptions",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r){if(0!==r.length){var t={};r.forEach((function(e,r){t[e]=r})),e.sort((function(e,r){return t[e.value]>t[r.value]?1:-1}))}}}),Object.defineProperty(r.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,r=e.parent,t=e.enumValues;if(void 0===r.oneOf)return null;var n=r.oneOf.map((function(e,r){return{value:e.title,idx:r}})),o=n[r.activeOneOf].value;return this.sortOptions(n,t),React.createElement(Dropdown,{dense:!0,value:o,options:n,onChange:this.changeActiveChild,ariaLabel:"Example"})}}),r=__decorate([observer],r)}(React.Component);export{DiscriminatorDropdown};
1
+ import{__decorate,__extends}from"tslib";import{observer}from"mobx-react";import*as React from"react";import{Dropdown}from"../../../../components/common/Dropdown";import{strikethroughText}from"../../utils/string";var DiscriminatorDropdown=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"changeActiveChild",{enumerable:!0,configurable:!0,writable:!0,value:function(e){void 0!==e.idx&&t.props.parent.activateOneOf(e.idx)}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"sortOptions",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){if(0!==t.length){var r={};t.forEach((function(e,t){r[e]=t})),e.sort((function(e,t){return r[e.value]>r[t.value]?1:-1}))}}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.parent,r=e.enumValues;if(void 0===t.oneOf)return null;var o=t.oneOf.map((function(e,t){return{value:e.schema.deprecated?strikethroughText(e.title)+" (deprecated)":e.title,idx:t}})),n=o[t.activeOneOf].value;return this.sortOptions(o,r),React.createElement(Dropdown,{dense:!0,value:n,options:o,onChange:this.changeActiveChild,ariaLabel:"Example"})}}),t=__decorate([observer],t)}(React.Component);export{DiscriminatorDropdown};
2
2
  //# sourceMappingURL=DiscriminatorDropdown.js.map
@@ -4,12 +4,14 @@ export declare const hasAuthorizationUrl: (type: string, flow: OAuthFlowProps['f
4
4
  scopes: Record<string, string>;
5
5
  authorizationUrl: string;
6
6
  'x-defaultClientId'?: string | undefined;
7
+ 'x-tokenEndpointAuthMethod'?: string | undefined;
7
8
  } | {
8
9
  refreshUrl?: string | undefined;
9
10
  scopes: Record<string, string>;
10
11
  authorizationUrl: string;
11
12
  tokenUrl: string;
12
13
  'x-defaultClientId'?: string | undefined;
14
+ 'x-tokenEndpointAuthMethod'?: string | undefined;
13
15
  } | undefined;
14
16
  export declare const hasTokenUrl: (type: string, flow: OAuthFlowProps['flow']) => flow is {
15
17
  refreshUrl?: string | undefined;
@@ -21,10 +23,12 @@ export declare const hasTokenUrl: (type: string, flow: OAuthFlowProps['flow']) =
21
23
  scopes: Record<string, string>;
22
24
  tokenUrl: string;
23
25
  'x-defaultClientId'?: string | undefined;
26
+ 'x-tokenEndpointAuthMethod'?: string | undefined;
24
27
  } | {
25
28
  refreshUrl?: string | undefined;
26
29
  scopes: Record<string, string>;
27
30
  authorizationUrl: string;
28
31
  tokenUrl: string;
29
32
  'x-defaultClientId'?: string | undefined;
33
+ 'x-tokenEndpointAuthMethod'?: string | undefined;
30
34
  } | undefined;
@@ -1,2 +1,2 @@
1
- import{__assign,__rest,__spreadArray}from"tslib";import{IS_BROWSER,getDefinitionName}from"../utils/";import{JsonPointer}from"../utils/JsonPointer";import{RedocNormalizedOptions}from"./RedocNormalizedOptions";export function pushRef(e,r){return r&&e[e.length-1]!==r?__spreadArray(__spreadArray([],e,!0),[r],!1):e}export function concatRefStacks(e,r){return r?e.concat(r):e}var OpenAPIParser=function(){function e(e,r,i){var t=this;void 0===i&&(i=new RedocNormalizedOptions({})),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"definitionUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"allowMergeRefs",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"byRef",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r;if(t.definition){"#"!==e.charAt(0)&&(e="#"+e),e=decodeURIComponent(e);try{r=JsonPointer.get(t.definition,e)}catch(e){}return r||{}}}}),this.validate(e),this.preprocess(e),this.definition=e,this.allowMergeRefs=e.openapi.startsWith("3.1");var n=IS_BROWSER?window.location.href:"";"string"==typeof r&&(this.definitionUrl=new URL(r,n).href)}return Object.defineProperty(e.prototype,"validate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0===e.openapi)throw new Error("Document must be valid OpenAPI 3.0.0 definition")}}),Object.defineProperty(e.prototype,"preprocess",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.info&&this.options.hideInfoDescription&&(e.info.description="")}}),Object.defineProperty(e.prototype,"isRef",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return!!e&&(void 0!==e.$ref&&null!==e.$ref)}}),Object.defineProperty(e.prototype,"deref",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){void 0===r&&(r=[]),void 0===i&&(i=!1);var t=null==e?void 0:e["x-refsStack"];if(r=concatRefStacks(r,t),this.isRef(e)){var n=getDefinitionName(e.$ref);if(n&&this.options.ignoreNamedSchemas.has(n))return{resolved:{type:"object",title:n},refsStack:r};var o=this.byRef(e.$ref);if(!o)throw new Error('Failed to resolve $ref "'+e.$ref+'"');var a=r;if(r.includes(e.$ref))o=Object.assign({},o,{"x-circular-ref":!0});else if(this.isRef(o)){var s=this.deref(o,r,i);a=s.refsStack,o=s.resolved}return a=pushRef(r,e.$ref),{resolved:o=this.allowMergeRefs?this.mergeRefs(e,o,i):o,refsStack:a}}return{resolved:e,refsStack:concatRefStacks(r,t)}}}),Object.defineProperty(e.prototype,"mergeRefs",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){e.$ref;var t=__rest(e,["$ref"]),n=Object.keys(t);return 0===n.length?r:i&&n.some((function(e){return!["description","title","externalDocs","x-refsStack","x-parentRefs"].includes(e)}))?{allOf:[r,t]}:__assign(__assign({},r),t)}}),Object.defineProperty(e.prototype,"mergeAllOf",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){var t,n=this;if(e["x-circular-ref"])return e;if(void 0===(e=this.hoistOneOfs(e)).allOf)return e;var o=__assign(__assign({},e),{"x-parentRefs":[],allOf:void 0,title:e.title||getDefinitionName(r)});void 0!==o.properties&&"object"==typeof o.properties&&(o.properties=__assign({},o.properties)),void 0!==o.items&&"object"==typeof o.items&&(o.items=__assign({},o.items));for(var a=e.allOf.map((function(e){var r,t=n.deref(e,i,!0),a=t.resolved,s=t.refsStack,f=e.$ref||void 0,l=n.mergeAllOf(a,f,s);if(!l["x-circular-ref"]||!l.allOf)return f&&(null===(r=o["x-parentRefs"])||void 0===r||r.push.apply(r,__spreadArray(__spreadArray([],l["x-parentRefs"]||[],!1),[f],!1))),{$ref:f,refsStack:pushRef(s,f),schema:l}})).filter((function(e){return void 0!==e})),s=0,f=a;s<f.length;s++){var l=f[s],p=l.schema,c=l.refsStack,d=p.type,u=p.enum,v=p.properties,y=p.items,m=p.required,b=p.title,O=p.description,_=p.readOnly,h=p.writeOnly,g=p.oneOf,A=p.anyOf,w=p["x-circular-ref"],R=__rest(p,["type","enum","properties","items","required","title","description","readOnly","writeOnly","oneOf","anyOf","x-circular-ref"]);if(o.type!==d&&void 0!==o.type&&void 0!==d&&console.warn('Incompatible types in allOf at "'+r+'": "'+o.type+'" and "'+d+'"'),void 0!==d&&(Array.isArray(d)&&Array.isArray(o.type)?o.type=__spreadArray(__spreadArray([],d,!0),o.type,!0):o.type=d),void 0!==u&&(Array.isArray(u)&&Array.isArray(o.enum)?o.enum=Array.from(new Set(__spreadArray(__spreadArray([],u,!0),o.enum,!0))):o.enum=u),void 0!==v&&"object"==typeof v)for(var j in o.properties=o.properties||{},v){var x=concatRefStacks(c,null===(t=v[j])||void 0===t?void 0:t["x-refsStack"]);if(o.properties[j]){if(!w){var S=this.mergeAllOf({allOf:[o.properties[j],v[j]],"x-refsStack":x},r+"/properties/"+j,x);o.properties[j]=S}}else o.properties[j]=__assign(__assign({},v[j]),{"x-refsStack":x})}if(void 0!==y&&!w){var P="boolean"==typeof o.items?{}:Object.assign({},o.items),k="boolean"==typeof p.items?{}:Object.assign({},p.items);o.items=this.mergeAllOf({allOf:[P,k]},r+"/items",c)}void 0!==g&&(o.oneOf=g),void 0!==A&&(o.anyOf=A),void 0!==m&&(o.required=__spreadArray(__spreadArray([],o.required||[],!0),m,!0)),o=__assign(__assign(__assign({},o),{title:o.title||b,description:o.description||O,readOnly:void 0!==o.readOnly?o.readOnly:_,writeOnly:void 0!==o.writeOnly?o.writeOnly:h,"x-circular-ref":o["x-circular-ref"]||w}),R)}return o}}),Object.defineProperty(e.prototype,"findDerived",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var r={},i=this.definition.components&&this.definition.components.schemas||{};for(var t in i){var n=this.deref(i[t]).resolved;void 0!==n.allOf&&n.allOf.find((function(r){return void 0!==r.$ref&&e.indexOf(r.$ref)>-1}))&&(r["#/components/schemas/"+t]=[n["x-discriminator-value"]||t])}return r}}),Object.defineProperty(e.prototype,"hoistOneOfs",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0===e.allOf)return e;for(var r=e.allOf,i=function(e){var i=r[e];if(Array.isArray(i.oneOf)){var t=r.slice(0,e),n=r.slice(e+1);return{value:{oneOf:i.oneOf.map((function(e){return{allOf:__spreadArray(__spreadArray(__spreadArray([],t,!0),[e],!1),n,!0)}}))}}}},t=0;t<r.length;t++){var n=i(t);if("object"==typeof n)return n.value}return e}}),e}();export{OpenAPIParser};
1
+ import{__assign,__rest,__spreadArray}from"tslib";import{IS_BROWSER,getDefinitionName}from"../utils/";import{JsonPointer}from"../utils/JsonPointer";import{RedocNormalizedOptions}from"./RedocNormalizedOptions";export function pushRef(e,r){return r&&e[e.length-1]!==r?__spreadArray(__spreadArray([],e,!0),[r],!1):e}export function concatRefStacks(e,r){return r?e.concat(r):e}var OpenAPIParser=function(){function e(e,r,i){var t=this;void 0===i&&(i=new RedocNormalizedOptions({})),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"definitionUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"allowMergeRefs",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"byRef",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r;if(t.definition){"#"!==e.charAt(0)&&(e="#"+e),e=decodeURIComponent(e);try{r=JsonPointer.get(t.definition,e)}catch(e){}return r||{}}}}),this.validate(e),this.preprocess(e),this.definition=e,this.allowMergeRefs=e.openapi.startsWith("3.1");var n=IS_BROWSER?window.location.href:"";"string"==typeof r&&(this.definitionUrl=new URL(r,n).href)}return Object.defineProperty(e.prototype,"validate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0===e.openapi)throw new Error("Document must be valid OpenAPI 3.0.0 definition")}}),Object.defineProperty(e.prototype,"preprocess",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.info&&this.options.hideInfoDescription&&(e.info.description="")}}),Object.defineProperty(e.prototype,"isRef",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return!!e&&(void 0!==e.$ref&&null!==e.$ref)}}),Object.defineProperty(e.prototype,"deref",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){void 0===r&&(r=[]),void 0===i&&(i=!1);var t=null==e?void 0:e["x-refsStack"];if(r=concatRefStacks(r,t),this.isRef(e)){var n=getDefinitionName(e.$ref);if(n&&this.options.ignoreNamedSchemas.has(n))return{resolved:{type:"object",title:n},refsStack:r};var o=this.byRef(e.$ref);if(!o)throw new Error('Failed to resolve $ref "'+e.$ref+'"');var a=r;if(r.includes(e.$ref))o=Object.assign({},o,{"x-circular-ref":!0});else if(this.isRef(o)){var s=this.deref(o,r,i);a=s.refsStack,o=s.resolved}return a=pushRef(r,e.$ref),{resolved:o=this.allowMergeRefs?this.mergeRefs(e,o,i):o,refsStack:a}}return{resolved:e,refsStack:concatRefStacks(r,t)}}}),Object.defineProperty(e.prototype,"mergeRefs",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){e.$ref;var t=__rest(e,["$ref"]),n=Object.keys(t);if(0===n.length)return r;if(i&&n.some((function(e){return!["description","title","externalDocs","x-refsStack","x-parentRefs","readOnly","writeOnly"].includes(e)}))){var o=t;return{allOf:[{description:o.description,title:o.title,readOnly:o.readOnly,writeOnly:o.writeOnly},r,__rest(o,["description","title","readOnly","writeOnly"])]}}return __assign(__assign({},r),t)}}),Object.defineProperty(e.prototype,"mergeAllOf",{enumerable:!1,configurable:!0,writable:!0,value:function(e,r,i){var t,n=this;if(e["x-circular-ref"])return e;if(void 0===(e=this.hoistOneOfs(e)).allOf)return e;var o=__assign(__assign({},e),{"x-parentRefs":[],allOf:void 0,title:e.title||getDefinitionName(r)});void 0!==o.properties&&"object"==typeof o.properties&&(o.properties=__assign({},o.properties)),void 0!==o.items&&"object"==typeof o.items&&(o.items=__assign({},o.items));for(var a=e.allOf.map((function(e){var r,t=n.deref(e,i,!0),a=t.resolved,s=t.refsStack,f=e.$ref||void 0,l=n.mergeAllOf(a,f,s);if(!l["x-circular-ref"]||!l.allOf)return f&&(null===(r=o["x-parentRefs"])||void 0===r||r.push.apply(r,__spreadArray(__spreadArray([],l["x-parentRefs"]||[],!1),[f],!1))),{$ref:f,refsStack:pushRef(s,f),schema:l}})).filter((function(e){return void 0!==e})),s=0,f=a;s<f.length;s++){var l=f[s],p=l.schema,c=l.refsStack,d=p.type,u=p.enum,y=p.properties,v=p.items,O=p.required,m=p.title,b=p.description,_=p.readOnly,h=p.writeOnly,g=p.oneOf,w=p.anyOf,A=p["x-circular-ref"],R=__rest(p,["type","enum","properties","items","required","title","description","readOnly","writeOnly","oneOf","anyOf","x-circular-ref"]);if(o.type!==d&&void 0!==o.type&&void 0!==d&&console.warn('Incompatible types in allOf at "'+r+'": "'+o.type+'" and "'+d+'"'),void 0!==d&&(Array.isArray(d)&&Array.isArray(o.type)?o.type=__spreadArray(__spreadArray([],d,!0),o.type,!0):o.type=d),void 0!==u&&(Array.isArray(u)&&Array.isArray(o.enum)?o.enum=Array.from(new Set(__spreadArray(__spreadArray([],u,!0),o.enum,!0))):o.enum=u),void 0!==y&&"object"==typeof y)for(var j in o.properties=o.properties||{},y){var x=concatRefStacks(c,null===(t=y[j])||void 0===t?void 0:t["x-refsStack"]);if(o.properties[j]){if(!A){var S=this.mergeAllOf({allOf:[o.properties[j],y[j]],"x-refsStack":x},r+"/properties/"+j,x);o.properties[j]=S}}else o.properties[j]=__assign(__assign({},y[j]),{"x-refsStack":x})}if(void 0!==v&&!A){var P="boolean"==typeof o.items?{}:Object.assign({},o.items),k="boolean"==typeof p.items?{}:Object.assign({},p.items);o.items=this.mergeAllOf({allOf:[P,k]},r+"/items",c)}void 0!==g&&(o.oneOf=g),void 0!==w&&(o.anyOf=w),void 0!==O&&(o.required=__spreadArray(__spreadArray([],o.required||[],!0),O,!0)),o=__assign(__assign(__assign({},o),{title:o.title||m,description:o.description||b,readOnly:void 0!==o.readOnly?o.readOnly:_,writeOnly:void 0!==o.writeOnly?o.writeOnly:h,"x-circular-ref":o["x-circular-ref"]||A}),R)}return o}}),Object.defineProperty(e.prototype,"findDerived",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var r={},i=this.definition.components&&this.definition.components.schemas||{};for(var t in i){var n=this.deref(i[t]).resolved;void 0!==n.allOf&&n.allOf.find((function(r){return void 0!==r.$ref&&e.indexOf(r.$ref)>-1}))&&(r["#/components/schemas/"+t]=[n["x-discriminator-value"]||t])}return r}}),Object.defineProperty(e.prototype,"hoistOneOfs",{enumerable:!1,configurable:!0,writable:!0,value:function(e){if(void 0===e.allOf)return e;for(var r=e.allOf,i=function(e){var i=r[e];if(Array.isArray(i.oneOf)){var t=r.slice(0,e),n=r.slice(e+1);return{value:{oneOf:i.oneOf.map((function(e){return{allOf:__spreadArray(__spreadArray(__spreadArray([],t,!0),[e],!1),n,!0)}}))}}}},t=0;t<r.length;t++){var n=i(t);if("object"==typeof n)return n.value}return e}}),e}();export{OpenAPIParser};
2
2
  //# sourceMappingURL=OpenAPIParser.js.map
@@ -93,6 +93,7 @@ export interface ResolvedThemeInterface {
93
93
  labelsTextSize: string;
94
94
  nestingSpacing: string;
95
95
  nestedBackground: string;
96
+ nestedAlternativeBackground: string;
96
97
  };
97
98
  typography: {
98
99
  fontSize: MediaValue;
@@ -1,2 +1,2 @@
1
- var _a,_b;import{darken,lighten,readableColor,transparentize}from"polished";import{ZERO_BREAKPOINT}from"./utils/media-css";var defaultTheme={spacing:{unit:5,sectionHorizontal:function(r){return 8*r.spacing.unit},sectionVertical:function(r){return 4*r.spacing.unit}},breakpoints:{small:"50rem",medium:"85rem",large:"105rem"},colors:{tonalOffset:.2,primary:{main:"#0065FB",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.primary.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.primary.main)},contrastText:function(r){var o=r.colors;return readableColor(o.primary.main)}},secondary:{main:"#E4E7EB",light:"#F5F7FA",dark:"#E4E7EB",contrastText:"#3E4C59"},accent:{main:"#59C3FF",light:"#b3dcf3",dark:"#033B73",contrastText:"#ffffff"},success:{main:"#41DE50",light:function(r){var o=r.colors;return lighten(2*o.tonalOffset,o.success.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.success.main)},contrastText:function(r){var o=r.colors;return readableColor(o.success.main)}},warning:{main:"#ffa500",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.warning.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.warning.main)},contrastText:"#ffffff"},error:{main:"#FF6161",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.error.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.error.main)},contrastText:"#ffffff"},text:{primary:"#1F2933",secondary:"#7b8794",light:"#F5F7FA"},border:{dark:"#616E7C",light:"#E4E7EB"},responses:{success:{borderColor:"#B1E996",backgroundColor:"#F6FFF4",tabTextColor:function(r){return r.colors.responses.success.borderColor}},error:{borderColor:"#FFC9C9",backgroundColor:"#FFF4F4",tabTextColor:function(r){return r.colors.responses.error.borderColor}},redirect:{borderColor:function(r){return r.colors.warning.main},backgroundColor:function(r){var o=r.colors;return transparentize(.9,o.responses.redirect.borderColor)},tabTextColor:function(r){return r.colors.responses.redirect.borderColor}},info:{borderColor:"#87ceeb",backgroundColor:function(r){var o=r.colors;return transparentize(.9,o.responses.info.borderColor)},tabTextColor:function(r){return r.colors.responses.info.borderColor}}},http:{get:"#3A9601",post:"#0065FB",put:"#93527B",options:"#947014",patch:"#bf581d",delete:"#C83637",basic:"#707070",link:"#07818F",head:"#A23DAD"}},schema:{linesColor:function(r){return r.colors.border.light},defaultDetailsWidth:"70%",typeNameColor:function(r){return r.colors.text.secondary},typeTitleColor:function(r){return r.schema.typeNameColor},requireLabelColor:"#FF0000",labelsTextSize:"0.9em",nestingSpacing:"1em",nestedBackground:function(r){return r.colors.secondary.light},caretColor:function(r){return r.colors.text.primary},caretSize:"9px"},typography:{fontSize:"14px",lineHeight:"1.5em",fontWeightRegular:"400",fontWeightBold:"600",fontWeightLight:"300",fontFamily:"Source Sans Pro, sans-serif",smoothing:"antialiased",optimizeSpeed:!0,headings:{fontFamily:function(r){return r.typography.fontFamily},fontWeight:"700",lineHeight:"1.6em"},code:{fontSize:"13px",fontFamily:"Source Code Pro, monospace",lineHeight:function(r){return r.typography.lineHeight},fontWeight:function(r){return r.typography.fontWeightRegular},color:"#e53935",backgroundColor:"rgba(38, 50, 56, 0.05)",wrap:!1},links:{color:function(r){return r.colors.primary.main},visited:function(r){return r.typography.links.color},hover:function(r){var o=r.typography;return lighten(.2,o.links.color)},textDecoration:"auto",hoverTextDecoration:"auto"},fieldName:{fontSize:function(r){return r.typography.code.fontSize},fontFamily:function(r){return r.typography.code.fontFamily},fontWeight:function(r){return r.typography.code.fontWeight}}},sidebar:{separatorLabelColor:function(r){return r.sidebar.textColor},separatorLineColor:"#DADADA",caretColor:function(r){return r.sidebar.textColor},caretSize:function(r){return r.sidebar.spacing.unit},spacing:{unit:8,paddingHorizontal:function(r){return r.sidebar.spacing.unit},paddingVertical:function(r){return r.sidebar.spacing.unit},offsetTop:function(r){return 2*r.sidebar.spacing.unit},offsetLeft:function(r){return 2*r.sidebar.spacing.unit},offsetNesting:function(r){return 2*r.sidebar.spacing.unit}},borderRadius:"4px",fontFamily:function(r){return r.typography.fontFamily},fontSize:function(r){return r.typography.fontSize},showAtBreakpoint:"small",width:"285px",backgroundColor:"#fff",rightLineColor:function(r){return r.colors.border.light},textColor:function(r){return r.colors.text.primary},activeTextColor:function(r){return r.sidebar.textColor},activeBgColor:function(r){return r.colors.border.light}},components:{buttons:{borderRadius:function(r){return r.shape.borderRadius},hoverStyle:"",fontWeight:function(r){return r.typography.fontWeightBold},boxShadow:"none",hoverBoxShadow:"0px 0px 12px 0px rgba(0, 0, 0, 0.1)",fontFamily:"inherit",sizes:{small:{fontSize:"12px",padding:"8px 10px",minWidth:"90px"},medium:{fontSize:"14px",padding:"8px 20px",minWidth:"120px"},large:{fontSize:"14px",padding:"12px 24px",minWidth:"150px"},xlarge:{fontSize:"16px",padding:"20px 24px",minWidth:"200px"}}},httpBadges:{borderRadius:"16px",fontFamily:function(r){return r.typography.code.fontFamily},fontWeight:function(r){return r.typography.fontWeightBold},color:function(r){return r.colors.text.light},sizes:{medium:{fontSize:"12px",lineHeight:"20px"},small:{fontSize:"8px",lineHeight:"15px"}}},tryItButton:{fullWidth:!1},tryItSendButton:{fullWidth:!1},panels:{borderRadius:"8px",backgroundColor:"#fff"},layoutControls:{top:"20px",width:"36px",height:"36px"}},logo:{maxHeight:function(r){return r.sidebar.width},maxWidth:function(r){return r.sidebar.width},gutter:"2px"},fab:{backgroundColor:"#f2f2f2",color:"#0065FB"},rightPanel:{showAtBreakpoint:"medium",backgroundColor:"#1F2933",panelBackgroundColor:"#52606D",panelControlsBackgroundColor:"#323F4B",width:"37.5%",textColor:"#ffffff"},codeBlock:{backgroundColor:function(r){return r.rightPanel.panelControlsBackgroundColor}},shape:{borderRadius:"4px"},layout:{showDarkRightPanel:!1,stacked:{maxWidth:(_a={},_a[ZERO_BREAKPOINT]="",_a.small="90%",_a.medium="75%",_a.large="1200px",_a)},"three-panel":{middlePanelMaxWidth:"none",maxWidth:(_b={},_b[ZERO_BREAKPOINT]="100%",_b.small="100%",_b.medium="100%",_b.large="1800px",_b)}}};export default defaultTheme;export function resolveTheme(r){var o={},t=0,n=function(e,i){Object.keys(e).forEach((function(a){var l=(i?i+".":"")+a,c=e[a];"function"==typeof c?Object.defineProperty(e,a,{get:function(){if(!o[l]){if(++t>1e3)throw new Error("Theme probably contains circular dependency at "+l+": "+c.toString());o[l]=c(r)}return o[l]},enumerable:!0}):"object"==typeof c&&n(c,l)}))};return n(r,""),JSON.parse(JSON.stringify(r))}
1
+ var _a,_b;import{darken,lighten,readableColor,transparentize}from"polished";import{ZERO_BREAKPOINT}from"./utils/media-css";var defaultTheme={spacing:{unit:5,sectionHorizontal:function(r){return 8*r.spacing.unit},sectionVertical:function(r){return 4*r.spacing.unit}},breakpoints:{small:"50rem",medium:"85rem",large:"105rem"},colors:{tonalOffset:.2,primary:{main:"#0065FB",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.primary.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.primary.main)},contrastText:function(r){var o=r.colors;return readableColor(o.primary.main)}},secondary:{main:"#E4E7EB",light:"#F5F7FA",dark:"#E4E7EB",contrastText:"#3E4C59"},accent:{main:"#59C3FF",light:"#b3dcf3",dark:"#033B73",contrastText:"#ffffff"},success:{main:"#41DE50",light:function(r){var o=r.colors;return lighten(2*o.tonalOffset,o.success.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.success.main)},contrastText:function(r){var o=r.colors;return readableColor(o.success.main)}},warning:{main:"#ffa500",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.warning.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.warning.main)},contrastText:"#ffffff"},error:{main:"#FF6161",light:function(r){var o=r.colors;return lighten(o.tonalOffset,o.error.main)},dark:function(r){var o=r.colors;return darken(o.tonalOffset,o.error.main)},contrastText:"#ffffff"},text:{primary:"#1F2933",secondary:"#7b8794",light:"#F5F7FA"},border:{dark:"#616E7C",light:"#E4E7EB"},responses:{success:{borderColor:"#B1E996",backgroundColor:"#F6FFF4",tabTextColor:function(r){return r.colors.responses.success.borderColor}},error:{borderColor:"#FFC9C9",backgroundColor:"#FFF4F4",tabTextColor:function(r){return r.colors.responses.error.borderColor}},redirect:{borderColor:function(r){return r.colors.warning.main},backgroundColor:function(r){var o=r.colors;return transparentize(.9,o.responses.redirect.borderColor)},tabTextColor:function(r){return r.colors.responses.redirect.borderColor}},info:{borderColor:"#87ceeb",backgroundColor:function(r){var o=r.colors;return transparentize(.9,o.responses.info.borderColor)},tabTextColor:function(r){return r.colors.responses.info.borderColor}}},http:{get:"#3A9601",post:"#0065FB",put:"#93527B",options:"#947014",patch:"#bf581d",delete:"#C83637",basic:"#707070",link:"#07818F",head:"#A23DAD"}},schema:{linesColor:function(r){return r.colors.border.light},defaultDetailsWidth:"70%",typeNameColor:function(r){return r.colors.text.secondary},typeTitleColor:function(r){return r.schema.typeNameColor},requireLabelColor:"#FF0000",labelsTextSize:"0.9em",nestingSpacing:"1em",nestedBackground:function(r){return r.colors.secondary.light},nestedAlternativeBackground:"#ffffff",caretColor:function(r){return r.colors.text.primary},caretSize:"9px"},typography:{fontSize:"14px",lineHeight:"1.5em",fontWeightRegular:"400",fontWeightBold:"600",fontWeightLight:"300",fontFamily:"Source Sans Pro, sans-serif",smoothing:"antialiased",optimizeSpeed:!0,headings:{fontFamily:function(r){return r.typography.fontFamily},fontWeight:"700",lineHeight:"1.6em"},code:{fontSize:"13px",fontFamily:"Source Code Pro, monospace",lineHeight:function(r){return r.typography.lineHeight},fontWeight:function(r){return r.typography.fontWeightRegular},color:"#e53935",backgroundColor:"rgba(38, 50, 56, 0.05)",wrap:!1},links:{color:function(r){return r.colors.primary.main},visited:function(r){return r.typography.links.color},hover:function(r){var o=r.typography;return lighten(.2,o.links.color)},textDecoration:"auto",hoverTextDecoration:"auto"},fieldName:{fontSize:function(r){return r.typography.code.fontSize},fontFamily:function(r){return r.typography.code.fontFamily},fontWeight:function(r){return r.typography.code.fontWeight}}},sidebar:{separatorLabelColor:function(r){return r.sidebar.textColor},separatorLineColor:"#DADADA",caretColor:function(r){return r.sidebar.textColor},caretSize:function(r){return r.sidebar.spacing.unit},spacing:{unit:8,paddingHorizontal:function(r){return r.sidebar.spacing.unit},paddingVertical:function(r){return r.sidebar.spacing.unit},offsetTop:function(r){return 2*r.sidebar.spacing.unit},offsetLeft:function(r){return 2*r.sidebar.spacing.unit},offsetNesting:function(r){return 2*r.sidebar.spacing.unit}},borderRadius:"4px",fontFamily:function(r){return r.typography.fontFamily},fontSize:function(r){return r.typography.fontSize},showAtBreakpoint:"small",width:"285px",backgroundColor:"#fff",rightLineColor:function(r){return r.colors.border.light},textColor:function(r){return r.colors.text.primary},activeTextColor:function(r){return r.sidebar.textColor},activeBgColor:function(r){return r.colors.border.light}},components:{buttons:{borderRadius:function(r){return r.shape.borderRadius},hoverStyle:"",fontWeight:function(r){return r.typography.fontWeightBold},boxShadow:"none",hoverBoxShadow:"0px 0px 12px 0px rgba(0, 0, 0, 0.1)",fontFamily:"inherit",sizes:{small:{fontSize:"12px",padding:"8px 10px",minWidth:"90px"},medium:{fontSize:"14px",padding:"8px 20px",minWidth:"120px"},large:{fontSize:"14px",padding:"12px 24px",minWidth:"150px"},xlarge:{fontSize:"16px",padding:"20px 24px",minWidth:"200px"}}},httpBadges:{borderRadius:"16px",fontFamily:function(r){return r.typography.code.fontFamily},fontWeight:function(r){return r.typography.fontWeightBold},color:function(r){return r.colors.text.light},sizes:{medium:{fontSize:"12px",lineHeight:"20px"},small:{fontSize:"8px",lineHeight:"15px"}}},tryItButton:{fullWidth:!1},tryItSendButton:{fullWidth:!1},panels:{borderRadius:"8px",backgroundColor:"#fff"},layoutControls:{top:"20px",width:"36px",height:"36px"}},logo:{maxHeight:function(r){return r.sidebar.width},maxWidth:function(r){return r.sidebar.width},gutter:"2px"},fab:{backgroundColor:"#f2f2f2",color:"#0065FB"},rightPanel:{showAtBreakpoint:"medium",backgroundColor:"#1F2933",panelBackgroundColor:"#52606D",panelControlsBackgroundColor:"#323F4B",width:"37.5%",textColor:"#ffffff"},codeBlock:{backgroundColor:function(r){return r.rightPanel.panelControlsBackgroundColor}},shape:{borderRadius:"4px"},layout:{showDarkRightPanel:!1,stacked:{maxWidth:(_a={},_a[ZERO_BREAKPOINT]="",_a.small="90%",_a.medium="75%",_a.large="1200px",_a)},"three-panel":{middlePanelMaxWidth:"none",maxWidth:(_b={},_b[ZERO_BREAKPOINT]="100%",_b.small="100%",_b.medium="100%",_b.large="1800px",_b)}}};export default defaultTheme;export function resolveTheme(r){var o={},t=0,n=function(e,i){Object.keys(e).forEach((function(a){var l=(i?i+".":"")+a,c=e[a];"function"==typeof c?Object.defineProperty(e,a,{get:function(){if(!o[l]){if(++t>1e3)throw new Error("Theme probably contains circular dependency at "+l+": "+c.toString());o[l]=c(r)}return o[l]},enumerable:!0}):"object"==typeof c&&n(c,l)}))};return n(r,""),JSON.parse(JSON.stringify(r))}
2
2
  //# sourceMappingURL=theme.js.map
@@ -280,6 +280,7 @@ export interface OpenAPISecurityScheme {
280
280
  scopes: Record<string, string>;
281
281
  authorizationUrl: string;
282
282
  'x-defaultClientId'?: string;
283
+ 'x-tokenEndpointAuthMethod'?: string;
283
284
  };
284
285
  password?: {
285
286
  refreshUrl?: string;
@@ -292,6 +293,7 @@ export interface OpenAPISecurityScheme {
292
293
  scopes: Record<string, string>;
293
294
  tokenUrl: string;
294
295
  'x-defaultClientId'?: string;
296
+ 'x-tokenEndpointAuthMethod'?: string;
295
297
  };
296
298
  authorizationCode?: {
297
299
  refreshUrl?: string;
@@ -299,6 +301,7 @@ export interface OpenAPISecurityScheme {
299
301
  authorizationUrl: string;
300
302
  tokenUrl: string;
301
303
  'x-defaultClientId'?: string;
304
+ 'x-tokenEndpointAuthMethod'?: string;
302
305
  };
303
306
  };
304
307
  openIdConnectUrl?: string;
@@ -1,10 +1,11 @@
1
+ import type { ExtendedOpenAPIOperation } from '../services';
1
2
  import type { FieldModel } from '../services/models';
2
3
  import type { OpenAPIParser } from '../services/OpenAPIParser';
3
- import type { OpenAPIEncoding, OpenAPIMediaType, OpenAPIOperation, OpenAPIParameter, OpenAPIParameterStyle, OpenAPISchema, OpenAPIServer, Referenced, OpenAPIResponse, OpenAPIRequestBody } from '../types';
4
+ import type { OpenAPIEncoding, OpenAPIMediaType, OpenAPIParameter, OpenAPIParameterStyle, OpenAPISchema, OpenAPIServer, Referenced, OpenAPIResponse, OpenAPIRequestBody } from '../types';
4
5
  export declare function isStatusCode(statusCode: string): boolean;
5
6
  export declare function getStatusCodeType(statusCode: string | number, defaultAsError?: boolean): string;
6
7
  export declare function isOperationName(key: string): boolean;
7
- export declare function getOperationSummary(operation: OpenAPIOperation): string;
8
+ export declare function getOperationSummary(operation: ExtendedOpenAPIOperation): string;
8
9
  export declare function detectType(schema: OpenAPISchema): string;
9
10
  export declare function isPrimitiveType(schema: OpenAPISchema, type?: string | string[] | undefined): boolean;
10
11
  export declare function isJsonLike(contentType: string): boolean;
@@ -1,2 +1,2 @@
1
- import{__assign,__spreadArray}from"tslib";import{dirname}from"path";import UrlTemplate from"url-template";import{MediaTypes}from"../../../types";import{IS_BROWSER}from"./dom";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl}from"./helpers";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r){if(void 0===r&&(r=!1),"default"===e)return r?"error":"success";var t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");var i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}var operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationSummary(e){return e.summary||e.operationId||e.description&&e.description.substring(0,50)||"<no summary>"}var schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;for(var r=0,t=Object.keys(schemaKeywordTypes);r<t.length;r++){var i=t[r],n=schemaKeywordTypes[i];if(void 0!==e[i])return n}return"any"}export function isPrimitiveType(e,r){if(void 0===r&&(r=e.type),e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;var t=!0,i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((function(e){return e.toString()})).join(t):"object"==typeof e?Object.keys(e).map((function(r){return""+r+t+e[r]})).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((function(t){return e[t]?r+"["+t+"]="+e[t]:void 0})).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){var i,n="__redoc_param_name__",a=r?"*":"";return UrlTemplate.parse("{?"+n+a+"}").expand((i={},i[n]=t,i)).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){var t,i=e?"*":"",n="__redoc_param_name__",a=UrlTemplate.parse("{"+n+i+"}");return decodeURIComponent(a.expand(((t={})[n]=r,t)))}export function urlFormEncodePayload(e,r){if(void 0===r&&(r={}),Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((function(t){var i=e[t],n=r[t]||{},a=n.style,o=void 0===a?"form":a,s=n.explode,u=void 0===s||s;switch(o){case"form":return serializeFormValue(t,u,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+o),""}})).join("&")}function serializePathParameter(e,r,t,i){var n,a=t?"*":"",o="";"label"===r?o=".":"matrix"===r&&(o=";");var s="__redoc_param_name__";return UrlTemplate.parse("{"+o+s+a+"}").expand((n={},n[s]=i,n)).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){var n=function(n){switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):e+"="+n.join("%20"):(console.warn("The style spaceDelimited is only applicable to arrays"),"");case"pipeDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):e+"="+n.join("|"):(console.warn("The style pipeDelimited is only applicable to arrays"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((function(e){return n(e)}))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn("Parameter serialization as "+r+" is not supported"),"")}export function serializeParameterValue(e,r){var t=e.name,i=e.style,n=e.explode,a=void 0!==n&&n,o=e.serializationMime;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return t+"="+serializeParameterValueWithMime(r,o);default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn("Missing style attribute or content for parameter "+t),"";switch(e.in){case"path":return serializePathParameter(t,i,a,r);case"query":return serializeQueryParameter(t,i,a,r);case"header":return serializeHeaderParameter(i,a,r);case"cookie":return serializeCookieParameter(t,i,a,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}var DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0!==e){var r=e.toString(10);return/^0\.0*1$/.test(r)?"decimal places <= "+r.split(".")[1].length:"multiple of "+r}}function humanizeRangeConstraint(e,r,t){var i;return void 0!==r&&void 0!==t?i=r===t?"= "+r+" "+e:"[ "+r+" .. "+t+" ] "+e:void 0!==t?i="<= "+t+" "+e:void 0!==r&&(i=1===r?"non-empty":">= "+r+" "+e),i}export function humanizeNumberRange(e){var r,t,i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,a="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,o="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?(a?"( ":"[ ")+i+" .. "+n+(o?" )":" ]"):void 0!==n?(o?"< ":"<= ")+n:void 0!==i?(a?"> ":">= ")+i:void 0}export function humanizeConstraints(e){var r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);var i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);var n=humanizeRangeConstraint("properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);var a=humanizeMultipleOfConstraint(e.multipleOf);void 0!==a&&r.push(a);var o=humanizeNumberRange(e);return void 0!==o&&r.push(o),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r){void 0===r&&(r=[]);var t=[],i=[],n=[];return e.forEach((function(e){e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort((function(e,t){return r.indexOf(e.name)-r.indexOf(t.name)})),__spreadArray(__spreadArray(__spreadArray([],i,!0),n,!0),t,!0)}export function sortByField(e,r){return __spreadArray([],e,!0).sort((function(e,t){return e[r].localeCompare(t[r])}))}export function mergeParams(e,r,t){void 0===r&&(r=[]),void 0===t&&(t=[]);var i={};return t.forEach((function(r){r=e.deref(r).resolved,i[r.name+"_"+r.in]=!0})),(r=r.filter((function(r){return r=e.deref(r).resolved,!i[r.name+"_"+r.in]}))).concat(t)}export function mergeSimilarMediaTypes(e){var r={};return Object.keys(e).forEach((function(t){var i=e[t],n=t.split(";")[0].trim();r[n]?r[n]=__assign(__assign({},r[n]),i):r[n]=i})),r}export function expandDefaultServerVariables(e,r){return void 0===r&&(r={}),e.replace(/(?:{)([\w-.]+)(?:})/g,(function(e,t){return r[t]&&r[t].default||e}))}export function normalizeServers(e,r){var t=void 0===e?removeQueryStringAndHash(function(){if(!IS_BROWSER)return"";var e=window.location.href;return e.endsWith(".html")?dirname(e):e}()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((function(e){return __assign(__assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export var SECURITY_DEFINITIONS_COMPONENT_NAME="security-definitions";export var SECURITY_DEFINITIONS_JSX_NAME="SecurityDefinitions";export var SCHEMA_DEFINITION_JSX_NAME="SchemaDefinition";export var shortenHTTPVerb=function(e){return{delete:"del",options:"opts"}[e]||e};export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-code-samples":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-ignoredHeaderParameters":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideTryItPanel":!0}}export function extractExtensions(e,r){return Object.keys(e).filter((function(e){return!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1})).reduce((function(r,t){return r[t]=e[t],r}),{})}export function pluralizeType(e){return e.split(" or ").map((function(e){return e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2")})).join(" or ")}export function getContentWithLegacyExamples(e){var r=e.content,t=e["x-examples"],i=e["x-example"];if(t){r=__assign({},r);for(var n=0,a=Object.keys(t);n<a.length;n++){var o=t[m=a[n]];r[m]=__assign(__assign({},r[m]),{examples:o})}}else if(i){r=__assign({},r);for(var s=0,u=Object.keys(i);s<u.length;s++){var m,l=i[m=u[s]];r[m]=__assign(__assign({},r[m]),{example:l})}}return r}
1
+ import{__assign,__spreadArray}from"tslib";import{dirname}from"path";import UrlTemplate from"url-template";import{MediaTypes}from"../../../types";import{IS_BROWSER}from"./dom";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl}from"./helpers";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r){if(void 0===r&&(r=!1),"default"===e)return r?"error":"success";var t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");var i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}var operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationSummary(e){return e.summary||e.operationId||e.description&&e.description.substring(0,50)||e.pathName||"<no summary>"}var schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;for(var r=0,t=Object.keys(schemaKeywordTypes);r<t.length;r++){var i=t[r],n=schemaKeywordTypes[i];if(void 0!==e[i])return n}return"any"}export function isPrimitiveType(e,r){if(void 0===r&&(r=e.type),e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;var t=!0,i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((function(e){return e.toString()})).join(t):"object"==typeof e?Object.keys(e).map((function(r){return""+r+t+e[r]})).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((function(t){return e[t]?r+"["+t+"]="+e[t]:void 0})).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){var i,n="__redoc_param_name__",a=r?"*":"";return UrlTemplate.parse("{?"+n+a+"}").expand((i={},i[n]=t,i)).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){var t,i=e?"*":"",n="__redoc_param_name__",a=UrlTemplate.parse("{"+n+i+"}");return decodeURIComponent(a.expand(((t={})[n]=r,t)))}export function urlFormEncodePayload(e,r){if(void 0===r&&(r={}),Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((function(t){var i=e[t],n=r[t]||{},a=n.style,o=void 0===a?"form":a,s=n.explode,u=void 0===s||s;switch(o){case"form":return serializeFormValue(t,u,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+o),""}})).join("&")}function serializePathParameter(e,r,t,i){var n,a=t?"*":"",o="";"label"===r?o=".":"matrix"===r&&(o=";");var s="__redoc_param_name__";return UrlTemplate.parse("{"+o+s+a+"}").expand((n={},n[s]=i,n)).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){var n=function(n){switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):e+"="+n.join("%20"):(console.warn("The style spaceDelimited is only applicable to arrays"),"");case"pipeDelimited":return Array.isArray(n)?t?serializeFormValue(e,t,n):e+"="+n.join("|"):(console.warn("The style pipeDelimited is only applicable to arrays"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((function(e){return n(e)}))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn("Parameter serialization as "+r+" is not supported"),"")}export function serializeParameterValue(e,r){var t=e.name,i=e.style,n=e.explode,a=void 0!==n&&n,o=e.serializationMime;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return t+"="+serializeParameterValueWithMime(r,o);default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn("Missing style attribute or content for parameter "+t),"";switch(e.in){case"path":return serializePathParameter(t,i,a,r);case"query":return serializeQueryParameter(t,i,a,r);case"header":return serializeHeaderParameter(i,a,r);case"cookie":return serializeCookieParameter(t,i,a,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}var DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0!==e){var r=e.toString(10);return/^0\.0*1$/.test(r)?"decimal places <= "+r.split(".")[1].length:"multiple of "+r}}function humanizeRangeConstraint(e,r,t){var i;return void 0!==r&&void 0!==t?i=r===t?"= "+r+" "+e:"[ "+r+" .. "+t+" ] "+e:void 0!==t?i="<= "+t+" "+e:void 0!==r&&(i=1===r?"non-empty":">= "+r+" "+e),i}export function humanizeNumberRange(e){var r,t,i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,a="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,o="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?(a?"( ":"[ ")+i+" .. "+n+(o?" )":" ]"):void 0!==n?(o?"< ":"<= ")+n:void 0!==i?(a?"> ":">= ")+i:void 0}export function humanizeConstraints(e){var r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);var i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);var n=humanizeRangeConstraint("properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);var a=humanizeMultipleOfConstraint(e.multipleOf);void 0!==a&&r.push(a);var o=humanizeNumberRange(e);return void 0!==o&&r.push(o),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r){void 0===r&&(r=[]);var t=[],i=[],n=[];return e.forEach((function(e){e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort((function(e,t){return r.indexOf(e.name)-r.indexOf(t.name)})),__spreadArray(__spreadArray(__spreadArray([],i,!0),n,!0),t,!0)}export function sortByField(e,r){return __spreadArray([],e,!0).sort((function(e,t){return e[r].localeCompare(t[r])}))}export function mergeParams(e,r,t){void 0===r&&(r=[]),void 0===t&&(t=[]);var i={};return t.forEach((function(r){r=e.deref(r).resolved,i[r.name+"_"+r.in]=!0})),(r=r.filter((function(r){return r=e.deref(r).resolved,!i[r.name+"_"+r.in]}))).concat(t)}export function mergeSimilarMediaTypes(e){var r={};return Object.keys(e).forEach((function(t){var i=e[t],n=t.split(";")[0].trim();r[n]?r[n]=__assign(__assign({},r[n]),i):r[n]=i})),r}export function expandDefaultServerVariables(e,r){return void 0===r&&(r={}),e.replace(/(?:{)([\w-.]+)(?:})/g,(function(e,t){return r[t]&&r[t].default||e}))}export function normalizeServers(e,r){var t=void 0===e?removeQueryStringAndHash(function(){if(!IS_BROWSER)return"";var e=window.location.href;return e.endsWith(".html")?dirname(e):e}()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((function(e){return __assign(__assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export var SECURITY_DEFINITIONS_COMPONENT_NAME="security-definitions";export var SECURITY_DEFINITIONS_JSX_NAME="SecurityDefinitions";export var SCHEMA_DEFINITION_JSX_NAME="SchemaDefinition";export var shortenHTTPVerb=function(e){return{delete:"del",options:"opts"}[e]||e};export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-code-samples":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-ignoredHeaderParameters":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideTryItPanel":!0,"x-tokenEndpointAuthMethod":!0}}export function extractExtensions(e,r){return Object.keys(e).filter((function(e){return!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1})).reduce((function(r,t){return r[t]=e[t],r}),{})}export function pluralizeType(e){return e.split(" or ").map((function(e){return e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2")})).join(" or ")}export function getContentWithLegacyExamples(e){var r=e.content,t=e["x-examples"],i=e["x-example"];if(t){r=__assign({},r);for(var n=0,a=Object.keys(t);n<a.length;n++){var o=t[m=a[n]];r[m]=__assign(__assign({},r[m]),{examples:o})}}else if(i){r=__assign({},r);for(var s=0,u=Object.keys(i);s<u.length;s++){var m,l=i[m=u[s]];r[m]=__assign(__assign({},r[m]),{example:l})}}return r}
2
2
  //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ export declare function strikethroughText(text: string): string;
@@ -0,0 +1,2 @@
1
+ export function strikethroughText(t){return t.split("").map((function(t){return t+"̵"})).join("")}
2
+ //# sourceMappingURL=string.js.map
@@ -9,7 +9,7 @@ export declare class OAuth2 {
9
9
  successCallback: OAuth2SuccessCallback;
10
10
  errorCallback: OAuth2ErrorCallback;
11
11
  }): void;
12
- static authorizeAuthorizationCode({ authorizationUrl, tokenUrl, clientId, clientSecret, codeVerifier, codeChallenge, scopes, extraParams, routingBasePath, redirectUri, successCallback, errorCallback, }: {
12
+ static authorizeAuthorizationCode({ authorizationUrl, tokenUrl, clientId, clientSecret, codeVerifier, codeChallenge, scopes, extraParams, extraHeaders, routingBasePath, redirectUri, successCallback, errorCallback, }: {
13
13
  authorizationUrl: string;
14
14
  tokenUrl: string;
15
15
  clientId: string;
@@ -20,16 +20,18 @@ export declare class OAuth2 {
20
20
  redirectUri?: string | null;
21
21
  routingBasePath?: string;
22
22
  extraParams?: Record<string, string>;
23
+ extraHeaders?: Record<string, string>;
23
24
  successCallback: OAuth2SuccessCallback;
24
25
  errorCallback: OAuth2ErrorCallback;
25
26
  }): void;
26
27
  static clearRedirectData(flow: 'implicit' | 'authorizationCode'): void;
27
- static authorizeClientCredentials({ tokenUrl, clientId, clientSecret, scopes, extraParams, successCallback, errorCallback, }: {
28
+ static authorizeClientCredentials({ tokenUrl, clientId, clientSecret, scopes, extraParams, extraHeaders, successCallback, errorCallback, }: {
28
29
  tokenUrl: string;
29
30
  clientId: string;
30
31
  clientSecret: string;
31
32
  scopes?: string[];
32
33
  extraParams?: Record<string, string>;
34
+ extraHeaders?: Record<string, string>;
33
35
  successCallback: OAuth2SuccessCallback;
34
36
  errorCallback: OAuth2ErrorCallback;
35
37
  }): Promise<void>;
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__generator}from"tslib";import*as qs from"querystring";import{base64UrlEncode,encodeState,sha256}from"./utils";var DEFAULT_OAUTH2_REDIRECT_PAGE="/oauth2-redirect.html",OAuth2=function(){function e(){}return Object.defineProperty(e,"authorizeImplicit",{enumerable:!1,configurable:!0,writable:!0,value:function(r){var t=r.authorizationUrl,a=r.clientId,n=r.scopes,i=r.extraParams,s=void 0===i?{}:i,o=r.routingBasePath,c=r.redirectUri,l=r.successCallback,u=r.errorCallback,d=encodeState({date:(new Date).toString()}),h=new URL(t),_="/"===o?"":o,p=""+window.location.origin+_+DEFAULT_OAUTH2_REDIRECT_PAGE;for(var f in h.searchParams.set("client_id",a),h.searchParams.set("redirect_uri",c||p),h.searchParams.set("response_type","token"),h.searchParams.set("state",d),Array.isArray(n)&&h.searchParams.set("scope",n.join(" ")),s)h.searchParams.set(f,s[f]);window.redirectOAuth2={flow:"implicit",data:{authorizationUrl:t,clientId:a,scopes:n},state:d,successCallback:function(r){l(r),e.clearRedirectData("implicit")},errorCallback:function(r){u(r),e.clearRedirectData("implicit")}},window.open(h.toString())}}),Object.defineProperty(e,"authorizeAuthorizationCode",{enumerable:!1,configurable:!0,writable:!0,value:function(r){var t=this,a=r.authorizationUrl,n=r.tokenUrl,i=r.clientId,s=r.clientSecret,o=r.codeVerifier,c=r.codeChallenge,l=r.scopes,u=r.extraParams,d=void 0===u?{}:u,h=r.routingBasePath,_=r.redirectUri,p=r.successCallback,f=r.errorCallback,b=new URL(a),w="/"===h?"":h,m=""+window.location.origin+w+DEFAULT_OAUTH2_REDIRECT_PAGE,v=encodeState({date:(new Date).toString()});for(var g in b.searchParams.set("client_id",i),b.searchParams.set("redirect_uri",_||m),b.searchParams.set("response_type","code"),b.searchParams.set("state",v),Array.isArray(l)&&b.searchParams.set("scope",l.join(" ")),c&&(b.searchParams.set("code_challenge",c),b.searchParams.set("code_challenge_method","S256")),d)b.searchParams.set(g,d[g]);window.redirectOAuth2={flow:"authorizationCode",data:{authorizationUrl:a,clientId:i,scopes:l},state:v,successCallback:function(r){var a=r.auth_code;return __awaiter(t,void 0,void 0,(function(){var r;return __generator(this,(function(t){switch(t.label){case 0:return t.trys.push([0,3,,4]),[4,fetch(n,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},body:qs.stringify(__assign(__assign(__assign({client_id:i,client_secret:s},o&&{code_verifier:o}),{code:a,grant_type:"authorization_code",redirect_uri:_||m}),d))})];case 1:return[4,handleResponseCallback(t.sent(),p,f)];case 2:return t.sent(),[3,4];case 3:return r=t.sent(),f(r),[3,4];case 4:return e.clearRedirectData("authorizationCode"),[2]}}))}))},errorCallback:function(r){f(r),e.clearRedirectData("authorizationCode")}},window.open(b.toString())}}),Object.defineProperty(e,"clearRedirectData",{enumerable:!1,configurable:!0,writable:!0,value:function(e){window.redirectOAuth2={flow:e,data:{authorizationUrl:"",clientId:"",scopes:[]},state:"",successCallback:function(){},errorCallback:function(){}}}}),Object.defineProperty(e,"authorizeClientCredentials",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var r=e.tokenUrl,t=e.clientId,a=e.clientSecret,n=e.scopes,i=void 0===n?[]:n,s=e.extraParams,o=void 0===s?{}:s,c=e.successCallback,l=e.errorCallback;return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(n){switch(n.label){case 0:return n.trys.push([0,3,,4]),[4,fetch(r,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},body:qs.stringify(__assign({client_id:t,client_secret:a,grant_type:"client_credentials",scope:Array.isArray(i)?i.join(" "):void 0},o))})];case 1:return[4,handleResponseCallback(n.sent(),c,l)];case 2:return n.sent(),[3,4];case 3:return e=n.sent(),l(e),[3,4];case 4:return[2]}}))}))}}),e}();export{OAuth2};export var oauth2Instance=new OAuth2;function handleResponseCallback(e,r,t){return __awaiter(this,void 0,void 0,(function(){var a,n,i,s,o,c;return __generator(this,(function(l){switch(l.label){case 0:return e.ok?[4,e.json()]:[3,2];case 1:return a=l.sent(),r(a),[3,7];case 2:return n=t,i=Error.bind,(e.headers.get("Content-Type")||"").indexOf("json")>-1?(c=(o=JSON).stringify,[4,e.json()]):[3,4];case 3:return s=c.apply(o,[l.sent()]),[3,6];case 4:return[4,e.text()];case 5:s=l.sent(),l.label=6;case 6:n.apply(void 0,[new(i.apply(Error,[void 0,s]))]),l.label=7;case 7:return[2]}}))}))}export function deriveCodeChallenge(e){return __awaiter(this,void 0,void 0,(function(){var r;return __generator(this,(function(t){switch(t.label){case 0:return r=base64UrlEncode,[4,sha256(e)];case 1:return[2,r.apply(void 0,[t.sent()])]}}))}))}
1
+ import{__assign,__awaiter,__generator}from"tslib";import*as qs from"querystring";import{base64UrlEncode,encodeState,sha256}from"./utils";var DEFAULT_OAUTH2_REDIRECT_PAGE="/oauth2-redirect.html",OAuth2=function(){function e(){}return Object.defineProperty(e,"authorizeImplicit",{enumerable:!1,configurable:!0,writable:!0,value:function(r){var t=r.authorizationUrl,a=r.clientId,n=r.scopes,i=r.extraParams,s=void 0===i?{}:i,o=r.routingBasePath,c=r.redirectUri,l=r.successCallback,u=r.errorCallback,d=encodeState({date:(new Date).toString()}),h=new URL(t),_="/"===o?"":o,p=""+window.location.origin+_+DEFAULT_OAUTH2_REDIRECT_PAGE;for(var f in h.searchParams.set("client_id",a),h.searchParams.set("redirect_uri",c||p),h.searchParams.set("response_type","token"),h.searchParams.set("state",d),Array.isArray(n)&&h.searchParams.set("scope",n.join(" ")),s)h.searchParams.set(f,s[f]);window.redirectOAuth2={flow:"implicit",data:{authorizationUrl:t,clientId:a,scopes:n},state:d,successCallback:function(r){l(r),e.clearRedirectData("implicit")},errorCallback:function(r){u(r),e.clearRedirectData("implicit")}},window.open(h.toString())}}),Object.defineProperty(e,"authorizeAuthorizationCode",{enumerable:!1,configurable:!0,writable:!0,value:function(r){var t=this,a=r.authorizationUrl,n=r.tokenUrl,i=r.clientId,s=r.clientSecret,o=r.codeVerifier,c=r.codeChallenge,l=r.scopes,u=r.extraParams,d=void 0===u?{}:u,h=r.extraHeaders,_=void 0===h?{}:h,p=r.routingBasePath,f=r.redirectUri,b=r.successCallback,w=r.errorCallback,m=new URL(a),v="/"===p?"":p,g=""+window.location.origin+v+DEFAULT_OAUTH2_REDIRECT_PAGE,C=encodeState({date:(new Date).toString()});for(var y in m.searchParams.set("client_id",i),m.searchParams.set("redirect_uri",f||g),m.searchParams.set("response_type","code"),m.searchParams.set("state",C),Array.isArray(l)&&m.searchParams.set("scope",l.join(" ")),c&&(m.searchParams.set("code_challenge",c),m.searchParams.set("code_challenge_method","S256")),d)m.searchParams.set(y,d[y]);window.redirectOAuth2={flow:"authorizationCode",data:{authorizationUrl:a,clientId:i,scopes:l},state:C,successCallback:function(r){var a=r.auth_code;return __awaiter(t,void 0,void 0,(function(){var r;return __generator(this,(function(t){switch(t.label){case 0:return t.trys.push([0,3,,4]),[4,fetch(n,{method:"POST",headers:__assign({"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},_),body:qs.stringify(__assign(__assign(__assign({client_id:i,client_secret:s},o&&{code_verifier:o}),{code:a,grant_type:"authorization_code",redirect_uri:f||g}),d))})];case 1:return[4,handleResponseCallback(t.sent(),b,w)];case 2:return t.sent(),[3,4];case 3:return r=t.sent(),w(r),[3,4];case 4:return e.clearRedirectData("authorizationCode"),[2]}}))}))},errorCallback:function(r){w(r),e.clearRedirectData("authorizationCode")}},window.open(m.toString())}}),Object.defineProperty(e,"clearRedirectData",{enumerable:!1,configurable:!0,writable:!0,value:function(e){window.redirectOAuth2={flow:e,data:{authorizationUrl:"",clientId:"",scopes:[]},state:"",successCallback:function(){},errorCallback:function(){}}}}),Object.defineProperty(e,"authorizeClientCredentials",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var r=e.tokenUrl,t=e.clientId,a=e.clientSecret,n=e.scopes,i=void 0===n?[]:n,s=e.extraParams,o=void 0===s?{}:s,c=e.extraHeaders,l=void 0===c?{}:c,u=e.successCallback,d=e.errorCallback;return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(n){switch(n.label){case 0:return n.trys.push([0,3,,4]),[4,fetch(r,{method:"POST",headers:__assign({"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},l),body:qs.stringify(__assign({client_id:t,client_secret:a,grant_type:"client_credentials",scope:Array.isArray(i)?i.join(" "):void 0},o))})];case 1:return[4,handleResponseCallback(n.sent(),u,d)];case 2:return n.sent(),[3,4];case 3:return e=n.sent(),d(e),[3,4];case 4:return[2]}}))}))}}),e}();export{OAuth2};export var oauth2Instance=new OAuth2;function handleResponseCallback(e,r,t){return __awaiter(this,void 0,void 0,(function(){var a,n,i,s,o,c;return __generator(this,(function(l){switch(l.label){case 0:return e.ok?[4,e.json()]:[3,2];case 1:return a=l.sent(),r(a),[3,7];case 2:return n=t,i=Error.bind,(e.headers.get("Content-Type")||"").indexOf("json")>-1?(c=(o=JSON).stringify,[4,e.json()]):[3,4];case 3:return s=c.apply(o,[l.sent()]),[3,6];case 4:return[4,e.text()];case 5:s=l.sent(),l.label=6;case 6:n.apply(void 0,[new(i.apply(Error,[void 0,s]))]),l.label=7;case 7:return[2]}}))}))}export function deriveCodeChallenge(e){return __awaiter(this,void 0,void 0,(function(){var r;return __generator(this,(function(t){switch(t.label){case 0:return r=base64UrlEncode,[4,sha256(e)];case 1:return[2,r.apply(void 0,[t.sent()])]}}))}))}
2
2
  //# sourceMappingURL=OAuth2.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/reference-docs",
3
- "version": "2.28.0",
3
+ "version": "2.31.0",
4
4
  "description": "Redocly Reference Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",