@redocly/reference-docs 3.0.0-alpha.5 → 3.0.0-alpha.6
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.
- package/bin/cli/commands/redocly-docs-cli.min.js +58 -59
- package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +1 -1
- package/dist/console.redocly-reference-docs.min.js +89 -90
- package/dist/oauth2-redirect.js +1 -1
- package/dist/redocly-reference-docs.min.js +386 -374
- package/lib/components/NextSectionButton.d.ts +1 -1
- package/lib/components/NextSectionButton.js +1 -1
- package/lib/components/console/Console.js +1 -1
- package/lib/components/console/RequestBody/RequestBody.js +1 -1
- package/lib/components/console/RequestBody/types.d.ts +1 -1
- package/lib/components/console/ResponsePanel.js +1 -1
- package/lib/components/console/ServerVariable.d.ts +1 -1
- package/lib/components/console/ServerVariable.js +1 -1
- package/lib/components/console/utils.d.ts +3 -0
- package/lib/components/console/utils.js +1 -1
- package/lib/redoc-lib/src/components/DiscriminatorDropdown/DiscriminatorDropdown.d.ts +11 -0
- package/lib/redoc-lib/src/components/DiscriminatorDropdown/DiscriminatorDropdown.js +2 -0
- package/lib/redoc-lib/src/components/DiscriminatorDropdown/index.d.ts +1 -0
- package/lib/redoc-lib/src/components/DiscriminatorDropdown/index.js +2 -0
- package/lib/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
- package/lib/redoc-lib/src/components/Parameters/Parameters.d.ts +2 -5
- package/lib/redoc-lib/src/components/Parameters/Parameters.js +1 -1
- package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +1 -1
- package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
- package/lib/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
- package/lib/redoc-lib/src/components/PayloadSamples/types.d.ts +1 -0
- package/lib/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
- package/lib/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
- package/lib/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
- package/lib/redoc-lib/src/components/Schema/Schema.d.ts +1 -1
- package/lib/redoc-lib/src/components/Schema/Schema.js +1 -1
- package/lib/redoc-lib/src/components/Schema/index.d.ts +0 -1
- package/lib/redoc-lib/src/components/Schema/index.js +1 -1
- package/lib/redoc-lib/src/components/Schema/types.d.ts +8 -2
- package/lib/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.d.ts +1 -0
- package/lib/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
- package/lib/redoc-lib/src/components/index.d.ts +1 -0
- package/lib/redoc-lib/src/components/index.js +1 -1
- package/lib/redoc-lib/src/services/models/MediaContent.d.ts +1 -0
- package/lib/redoc-lib/src/services/models/MediaContent.js +1 -1
- package/lib/redoc-lib/src/services/models/Schema.js +1 -1
- package/lib/services/OAuth2.js +1 -1
- package/lib-esm/components/NextSectionButton.d.ts +1 -1
- package/lib-esm/components/NextSectionButton.js +1 -1
- package/lib-esm/components/console/Console.js +1 -1
- package/lib-esm/components/console/RequestBody/RequestBody.js +1 -1
- package/lib-esm/components/console/RequestBody/types.d.ts +1 -1
- package/lib-esm/components/console/ResponsePanel.js +1 -1
- package/lib-esm/components/console/ServerVariable.d.ts +1 -1
- package/lib-esm/components/console/ServerVariable.js +1 -1
- package/lib-esm/components/console/utils.d.ts +3 -0
- package/lib-esm/components/console/utils.js +1 -1
- package/lib-esm/redoc-lib/src/components/DiscriminatorDropdown/DiscriminatorDropdown.d.ts +11 -0
- package/lib-esm/redoc-lib/src/components/DiscriminatorDropdown/DiscriminatorDropdown.js +2 -0
- package/lib-esm/redoc-lib/src/components/DiscriminatorDropdown/index.d.ts +1 -0
- package/lib-esm/redoc-lib/src/components/DiscriminatorDropdown/index.js +2 -0
- package/lib-esm/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
- package/lib-esm/redoc-lib/src/components/Parameters/Parameters.d.ts +2 -5
- package/lib-esm/redoc-lib/src/components/Parameters/Parameters.js +1 -1
- package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +1 -1
- package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
- package/lib-esm/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
- package/lib-esm/redoc-lib/src/components/PayloadSamples/types.d.ts +1 -0
- package/lib-esm/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/Schema.d.ts +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/Schema.js +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/index.d.ts +0 -1
- package/lib-esm/redoc-lib/src/components/Schema/index.js +1 -1
- package/lib-esm/redoc-lib/src/components/Schema/types.d.ts +8 -2
- package/lib-esm/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.d.ts +1 -0
- package/lib-esm/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
- package/lib-esm/redoc-lib/src/components/index.d.ts +1 -0
- package/lib-esm/redoc-lib/src/components/index.js +1 -1
- package/lib-esm/redoc-lib/src/services/models/MediaContent.d.ts +1 -0
- package/lib-esm/redoc-lib/src/services/models/MediaContent.js +1 -1
- package/lib-esm/redoc-lib/src/services/models/Schema.js +1 -1
- package/lib-esm/services/OAuth2.js +1 -1
- package/package.json +3 -3
- package/bin/cli/assets/assets/redoc-fast-scroll.js +0 -23
- package/bin/cli/assets/assets/template.hbs +0 -25
- package/lib/redoc-lib/src/components/Schema/DiscriminatorDropdown.d.ts +0 -11
- package/lib/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +0 -2
- package/lib-esm/redoc-lib/src/components/Schema/DiscriminatorDropdown.d.ts +0 -11
- package/lib-esm/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SchemaModel=void 0;var tslib_1=require("tslib"),mobx_1=require("mobx"),OpenAPIParser_1=require("../OpenAPIParser"),utils_1=require("../../utils/"),Labels_1=require("../Labels"),Field_1=require("./Field"),SchemaModel=function(){function e(e,i,t,r,n,a,s){void 0===n&&(n=!1),void 0===a&&(a=[]),void 0===s&&(s={}),Object.defineProperty(this,"parser",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"refsStack",{enumerable:!0,configurable:!0,writable:!0,value:a}),Object.defineProperty(this,"deps",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"pointer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"displayType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"typePrefix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"title",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"description",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"externalDocs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isPrimitive",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isCircular",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"format",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"displayFormat",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nullable",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"deprecated",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"pattern",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"example",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"enum",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"default",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"readOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"writeOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"constraints",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_fields",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"oneOf",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"oneOfType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"discriminatorProp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeOneOf",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"rawSchema",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"schema",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"extensions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"x-enumDescriptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"const",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contentEncoding",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contentMediaType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"minItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),(0,mobx_1.makeObservable)(this),this.pointer=i.$ref||t||"";var l=e.deref(i,a,!0),o=l.resolved,d=l.refsStack;this.refsStack=(0,OpenAPIParser_1.pushRef)(d,this.pointer),this.rawSchema=o,this.schema=e.mergeAllOf(this.rawSchema,this.pointer,this.refsStack),this.init(e,n),r.showExtensions&&(this.extensions=(0,utils_1.extractExtensions)(this.schema,r.showExtensions))}return Object.defineProperty(e.prototype,"activateOneOf",{enumerable:!1,configurable:!0,writable:!0,value:function(e){this.activeOneOf=e}}),Object.defineProperty(e.prototype,"hasType",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return this.type===e||Array.isArray(this.type)&&this.type.includes(e)}}),Object.defineProperty(e.prototype,"fields",{get:function(){if(!this.isCircular)return!this._fields&&this.hasType("object")&&(this._fields=buildFields(this.parser,this.schema,this.pointer,this.options,this.refsStack,this.deps)),this._fields},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"init",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r,n,a,s,l,o,d,u,p=this,f=this.schema;if(this.isCircular=!!f["x-circular-ref"],this.title=f.title||(0,utils_1.isNamedDefinition)(this.pointer)&&utils_1.JsonPointer.baseName(this.pointer)||"",this.description=f.description||"",this.type=f.type||(0,utils_1.detectType)(f),this.format=f.format,this.enum=f.enum||[],this["x-enumDescriptions"]=f["x-enumDescriptions"],this.example=f.example,this.deprecated=!!f.deprecated,this.pattern=f.pattern,this.externalDocs=f.externalDocs,this.constraints=(0,utils_1.humanizeConstraints)(f),this.displayFormat=this.format,this.isPrimitive=(0,utils_1.isPrimitiveType)(f,this.type),this.default=f.default,this.readOnly=!!f.readOnly,this.writeOnly=!!f.writeOnly,this.const=f.const||"",this.contentEncoding=f.contentEncoding,this.contentMediaType=f.contentMediaType,this.minItems=f.minItems,this.maxItems=f.maxItems,(f.nullable||f["x-nullable"])&&(Array.isArray(this.type)&&!this.type.some((function(e){return null===e||"null"===e}))?this.type=(0,tslib_1.__spreadArray)((0,tslib_1.__spreadArray)([],this.type,!0),["null"],!1):Array.isArray(this.type)||null===this.type&&"null"===this.type||(this.type=[this.type,"null"])),this.displayType=Array.isArray(this.type)?this.type.map((function(e){return null===e?"null":e})).join(" or "):this.type,!this.isCircular)if(f.if&&f.then||f.if&&f.else)this.initConditionalOperators(f,i);else if(t||void 0===getDiscriminator(f)){if(t&&Array.isArray(f.oneOf)&&f.oneOf.find((function(e){return e.$ref===p.pointer}))&&delete f.oneOf,void 0!==f.oneOf)return this.initOneOf(f.oneOf,i),this.oneOfType="One of",void(void 0!==f.anyOf&&console.warn("oneOf and anyOf are not supported on the same level. Skipping anyOf at "+this.pointer));if(void 0!==f.anyOf)return this.initOneOf(f.anyOf,i),void(this.oneOfType="Any of");if(this.hasType("array")&&(Array.isArray(f.items)||Array.isArray(f.prefixItems)?this._fields=buildFields(i,f,this.pointer,this.options,this.refsStack,this.deps):f.items&&(this.items=new e(i,f.items,this.pointer+"/items",this.options,!1,this.refsStack,this.deps)),this.displayType=f.prefixItems||Array.isArray(f.items)?"items":(0,utils_1.pluralizeType)((null===(r=this.items)||void 0===r?void 0:r.displayType)||this.displayType),this.displayFormat=(null===(n=this.items)||void 0===n?void 0:n.format)||"",this.typePrefix=(null===(a=this.items)||void 0===a?void 0:a.typePrefix)||""+(0,Labels_1.l)("arrayOf"),this.title=this.title||(null===(s=this.items)||void 0===s?void 0:s.title)||"",this.isPrimitive=void 0!==(null===(l=this.items)||void 0===l?void 0:l.isPrimitive)?null===(o=this.items)||void 0===o?void 0:o.isPrimitive:this.isPrimitive,void 0===this.example&&void 0!==(null===(d=this.items)||void 0===d?void 0:d.example)&&(this.example=[this.items.example]),(null===(u=this.items)||void 0===u?void 0:u.isPrimitive)&&(this.enum=this.items.enum,this["x-enumDescriptions"]=this.items["x-enumDescriptions"]),Array.isArray(this.type))){var b=this.type.filter((function(e){return"array"!==e}));b.length&&(this.displayType+=" or "+b.join(" or "))}this.enum.length&&this.options.sortEnumValuesAlphabetically&&this.enum.sort()}else this.initDiscriminator(f,i)}}),Object.defineProperty(e.prototype,"initOneOf",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this;if(this.oneOf=i.map((function(i,n){var a=t.deref(i,r.refsStack,!0),s=a.resolved,l=a.refsStack,o=t.mergeAllOf(s,r.pointer+"/oneOf/"+n,l),d=(0,utils_1.isNamedDefinition)(i.$ref)&&!o.title?utils_1.JsonPointer.baseName(i.$ref):""+(o.title||"")+(o.const&&JSON.stringify(o.const)||"");return new e(t,(0,tslib_1.__assign)((0,tslib_1.__assign)({},o),{title:d,allOf:[(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.schema),{oneOf:void 0,anyOf:void 0})]}),i.$ref||r.pointer+"/oneOf/"+n,r.options,!1,l,(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+n:n.toString()}))})),this.options.simpleOneOfTypeLabel){var n=collectUniqueOneOfTypesDeep(this);this.displayType=n.join(" or ")}else this.displayType=this.oneOf.map((function(e){var i=e.typePrefix+(e.title?e.title+" ("+e.displayType+")":e.displayType);return i.indexOf(" or ")>-1&&(i="("+i+")"),i})).join(" or ")}}),Object.defineProperty(e.prototype,"initDiscriminator",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this,n=getDiscriminator(i);this.discriminatorProp=null==n?void 0:n.propertyName;var a=t.findDerived((0,tslib_1.__spreadArray)((0,tslib_1.__spreadArray)([],this.schema["x-parentRefs"]||[],!0),[this.pointer],!1));if(i.oneOf)for(var s=0,l=i.oneOf;s<l.length;s++){var o=l[s];if(void 0!==o.$ref){var d=utils_1.JsonPointer.baseName(o.$ref);a[o.$ref]=d}}var u=(null==n?void 0:n.mapping)||{},p=(null==n?void 0:n["x-explicitMappingOnly"])||!1;0===Object.keys(u).length&&(p=!1);var f={};for(var b in u){var c=u[b];Array.isArray(f[c])?f[c].push(b):f[c]=[b]}for(var h=p?(0,tslib_1.__assign)({},f):(0,tslib_1.__assign)((0,tslib_1.__assign)({},a),f),m=[],y=0,v=Object.keys(h);y<v.length;y++){var O=h[c=v[y]];if(Array.isArray(O))for(var _=0,P=O;_<P.length;_++){var g=P[_];m.push({$ref:c,name:g})}else m.push({$ref:c,name:O})}var w=Object.keys(u);0!==w.length&&(m=m.sort((function(e,i){var t=w.indexOf(e.name),r=w.indexOf(i.name);return t<0&&r<0?e.name.localeCompare(i.name):t<0?1:r<0?-1:t-r}))),this.oneOf=m.map((function(i,n){var a=i.$ref,s=i.name,l=new e(t,{$ref:a},a,r.options,!0,r.refsStack.slice(0,-1),(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+n:n.toString()}));return l.title=s,l}))}}),Object.defineProperty(e.prototype,"initConditionalOperators",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this,n=i.if,a=i.else,s=void 0===a?{}:a,l=i.then,o=void 0===l?{}:l,d=(0,tslib_1.__rest)(i,["if","else","then"]),u=[{allOf:[d,o,n],title:n&&n["x-displayName"]||(null==n?void 0:n.title)||"case 1"},{allOf:[d,s],title:s&&s["x-displayName"]||(null==s?void 0:s.title)||"case 2"}];this.oneOf=u.map((function(i,n){return new e(t,(0,tslib_1.__assign)({},i),r.pointer+"/oneOf/"+n,r.options,!1,r.refsStack,(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+n:n.toString()}))})),this.oneOfType="One of"}}),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeOneOf",void 0),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activateOneOf",null),e}();function normalizeField(e,i,t){return e||(console.warn('Field "'+i+'" is invalid, skipping.\n Field must be an object but got '+typeof e+' at "'+t+'"'),{})}function buildFields(e,i,t,r,n,a){var s=i.properties||i.prefixItems||i.items||{},l=i.patternProperties||{},o=i.additionalProperties||i.unevaluatedProperties,d=i.prefixItems?i.items:i.additionalItems,u=i.default||{},p=Object.keys(s).map((function(l){var o,d=normalizeField(s[l],l,t),p=void 0!==i.required&&i.required.indexOf(l)>-1;return new Field_1.FieldModel(e,{name:i.properties?l:"["+l+"]",required:p,schema:(0,tslib_1.__assign)((0,tslib_1.__assign)({},d),{example:(null===(o=i.example)||void 0===o?void 0:o[l])||d.example,default:void 0===d.default&&u?u[l]:d.default})},t+"/properties/"+l,r,n,a)}));return r.sortPropsAlphabetically&&(p=(0,utils_1.sortByField)(p,"name")),r.requiredPropsFirst&&(p=(0,utils_1.sortByRequired)(p,r.sortPropsAlphabetically?void 0:i.required)),p.push.apply(p,Object.keys(l).map((function(i){var s=normalizeField(l[i],i,t);return new Field_1.FieldModel(e,{name:i,required:!1,schema:s,kind:"patternProperties"},t+"/patternProperties/"+i,r,n,a)}))),((0,utils_1.isObject)(o)||!0===o)&&p.push(new Field_1.FieldModel(e,{name:((0,utils_1.isObject)(o)&&o["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:!0===o?{}:o,kind:"additionalProperties"},t+"/additionalProperties",r,n,a)),p.push.apply(p,buildAdditionalItems({parser:e,schema:d,fieldsCount:p.length,$ref:t,options:r,refsStack:n,deps:a})),p}function buildAdditionalItems(e){var i=e.parser,t=e.schema,r=void 0!==t&&t,n=e.fieldsCount,a=e.$ref,s=e.options,l=e.refsStack,o=e.deps;return"boolean"==typeof r?r?[new Field_1.FieldModel(i,{name:"["+n+"...]",schema:{},kind:"additionalItems"},a+"/additionalItems",s,l,o)]:[]:Array.isArray(r)?(0,tslib_1.__spreadArray)([],r.map((function(e,t){return new Field_1.FieldModel(i,{name:"["+(n+t)+"]",schema:e,kind:"additionalItems"},a+"/additionalItems/"+t,s,l,o)})),!0):(0,utils_1.isObject)(r)?[new Field_1.FieldModel(i,{name:"["+n+"...]",schema:r,kind:"additionalItems"},a+"/additionalItems",s,l,o)]:[]}function getDiscriminator(e){return e.discriminator||e["x-discriminator"]}function collectUniqueOneOfTypesDeep(e){var i=new Set;return function e(t){for(var r=0,n=t.oneOf||[];r<n.length;r++){var a=n[r];a.oneOf?e(a):a.type&&i.add(a.type)}}(e),Array.from(i.values())}exports.SchemaModel=SchemaModel;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SchemaModel=void 0;var tslib_1=require("tslib"),mobx_1=require("mobx"),OpenAPIParser_1=require("../OpenAPIParser"),utils_1=require("../../utils/"),Labels_1=require("../Labels"),Field_1=require("./Field"),SchemaModel=function(){function e(e,i,t,r,a,n,s){void 0===a&&(a=!1),void 0===n&&(n=[]),void 0===s&&(s={}),Object.defineProperty(this,"parser",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"refsStack",{enumerable:!0,configurable:!0,writable:!0,value:n}),Object.defineProperty(this,"deps",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"pointer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"displayType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"typePrefix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"title",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"description",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"externalDocs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isPrimitive",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isCircular",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"format",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"displayFormat",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nullable",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"deprecated",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"pattern",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"example",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"enum",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"default",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"readOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"writeOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"constraints",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_fields",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"oneOf",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"oneOfType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"discriminatorProp",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"activeOneOf",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"rawSchema",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"schema",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"extensions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"x-enumDescriptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"const",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contentEncoding",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contentMediaType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"minItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxItems",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),(0,mobx_1.makeObservable)(this),this.pointer=i.$ref||t||"";var l=e.deref(i,n,!0),o=l.resolved,d=l.refsStack;this.refsStack=(0,OpenAPIParser_1.pushRef)(d,this.pointer),this.rawSchema=o,this.schema=e.mergeAllOf(this.rawSchema,this.pointer,this.refsStack),this.init(e,a),r.showExtensions&&(this.extensions=(0,utils_1.extractExtensions)(this.schema,r.showExtensions))}return Object.defineProperty(e.prototype,"activateOneOf",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var i,t;this.activeOneOf=e;var r=null===(i=this.oneOf)||void 0===i?void 0:i[e].title;r&&(null===(t=this.deps.operation)||void 0===t||t.activateExampleName(r))}}),Object.defineProperty(e.prototype,"hasType",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return this.type===e||Array.isArray(this.type)&&this.type.includes(e)}}),Object.defineProperty(e.prototype,"fields",{get:function(){if(!this.isCircular)return!this._fields&&this.hasType("object")&&(this._fields=buildFields(this.parser,this.schema,this.pointer,this.options,this.refsStack,this.deps)),this._fields},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"init",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r,a,n,s,l,o,d,u,p=this,f=this.schema;if(this.isCircular=!!f["x-circular-ref"],this.title=f.title||(0,utils_1.isNamedDefinition)(this.pointer)&&utils_1.JsonPointer.baseName(this.pointer)||"",this.description=f.description||"",this.type=f.type||(0,utils_1.detectType)(f),this.format=f.format,this.enum=f.enum||[],this["x-enumDescriptions"]=f["x-enumDescriptions"],this.example=f.example,this.deprecated=!!f.deprecated,this.pattern=f.pattern,this.externalDocs=f.externalDocs,this.constraints=(0,utils_1.humanizeConstraints)(f),this.displayFormat=this.format,this.isPrimitive=(0,utils_1.isPrimitiveType)(f,this.type),this.default=f.default,this.readOnly=!!f.readOnly,this.writeOnly=!!f.writeOnly,this.const=f.const||"",this.contentEncoding=f.contentEncoding,this.contentMediaType=f.contentMediaType,this.minItems=f.minItems,this.maxItems=f.maxItems,(f.nullable||f["x-nullable"])&&(Array.isArray(this.type)&&!this.type.some((function(e){return null===e||"null"===e}))?this.type=(0,tslib_1.__spreadArray)((0,tslib_1.__spreadArray)([],this.type,!0),["null"],!1):Array.isArray(this.type)||null===this.type&&"null"===this.type||(this.type=[this.type,"null"])),this.displayType=Array.isArray(this.type)?this.type.map((function(e){return null===e?"null":e})).join(" or "):this.type,!this.isCircular)if(f.if&&f.then||f.if&&f.else)this.initConditionalOperators(f,i);else if(t||void 0===getDiscriminator(f)){if(t&&Array.isArray(f.oneOf)&&f.oneOf.find((function(e){return e.$ref===p.pointer}))&&delete f.oneOf,void 0!==f.oneOf)return this.initOneOf(f.oneOf,i),this.oneOfType="One of",void(void 0!==f.anyOf&&console.warn("oneOf and anyOf are not supported on the same level. Skipping anyOf at "+this.pointer));if(void 0!==f.anyOf)return this.initOneOf(f.anyOf,i),void(this.oneOfType="Any of");if(this.hasType("array")&&(Array.isArray(f.items)||Array.isArray(f.prefixItems)?this._fields=buildFields(i,f,this.pointer,this.options,this.refsStack,this.deps):f.items&&(this.items=new e(i,f.items,this.pointer+"/items",this.options,!1,this.refsStack,this.deps)),this.displayType=f.prefixItems||Array.isArray(f.items)?"items":(0,utils_1.pluralizeType)((null===(r=this.items)||void 0===r?void 0:r.displayType)||this.displayType),this.displayFormat=(null===(a=this.items)||void 0===a?void 0:a.format)||"",this.typePrefix=(null===(n=this.items)||void 0===n?void 0:n.typePrefix)||""+(0,Labels_1.l)("arrayOf"),this.title=this.title||(null===(s=this.items)||void 0===s?void 0:s.title)||"",this.isPrimitive=void 0!==(null===(l=this.items)||void 0===l?void 0:l.isPrimitive)?null===(o=this.items)||void 0===o?void 0:o.isPrimitive:this.isPrimitive,void 0===this.example&&void 0!==(null===(d=this.items)||void 0===d?void 0:d.example)&&(this.example=[this.items.example]),(null===(u=this.items)||void 0===u?void 0:u.isPrimitive)&&(this.enum=this.items.enum,this["x-enumDescriptions"]=this.items["x-enumDescriptions"]),Array.isArray(this.type))){var b=this.type.filter((function(e){return"array"!==e}));b.length&&(this.displayType+=" or "+b.join(" or "))}this.enum.length&&this.options.sortEnumValuesAlphabetically&&this.enum.sort()}else this.initDiscriminator(f,i)}}),Object.defineProperty(e.prototype,"initOneOf",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this;if(this.oneOf=i.map((function(i,a){var n=t.deref(i,r.refsStack,!0),s=n.resolved,l=n.refsStack,o=t.mergeAllOf(s,r.pointer+"/oneOf/"+a,l),d=(0,utils_1.isNamedDefinition)(i.$ref)&&!o.title?utils_1.JsonPointer.baseName(i.$ref):""+(o.title||"")+(o.const&&JSON.stringify(o.const)||"");return new e(t,(0,tslib_1.__assign)((0,tslib_1.__assign)({},o),{title:d,allOf:[(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.schema),{oneOf:void 0,anyOf:void 0})]}),i.$ref||r.pointer+"/oneOf/"+a,r.options,!1,l,(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+a:a.toString()}))})),this.options.simpleOneOfTypeLabel){var a=collectUniqueOneOfTypesDeep(this);this.displayType=a.join(" or ")}else this.displayType=this.oneOf.map((function(e){var i=e.typePrefix+(e.title?e.title+" ("+e.displayType+")":e.displayType);return i.indexOf(" or ")>-1&&(i="("+i+")"),i})).join(" or ")}}),Object.defineProperty(e.prototype,"initDiscriminator",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this,a=getDiscriminator(i);this.discriminatorProp=null==a?void 0:a.propertyName;var n=t.findDerived((0,tslib_1.__spreadArray)((0,tslib_1.__spreadArray)([],this.schema["x-parentRefs"]||[],!0),[this.pointer],!1));if(i.oneOf)for(var s=0,l=i.oneOf;s<l.length;s++){var o=l[s];if(void 0!==o.$ref){var d=utils_1.JsonPointer.baseName(o.$ref);n[o.$ref]=d}}var u=(null==a?void 0:a.mapping)||{},p=(null==a?void 0:a["x-explicitMappingOnly"])||!1;0===Object.keys(u).length&&(p=!1);var f={};for(var b in u){var c=u[b];Array.isArray(f[c])?f[c].push(b):f[c]=[b]}for(var h=p?(0,tslib_1.__assign)({},f):(0,tslib_1.__assign)((0,tslib_1.__assign)({},n),f),m=[],y=0,v=Object.keys(h);y<v.length;y++){var O=h[c=v[y]];if(Array.isArray(O))for(var _=0,P=O;_<P.length;_++){var g=P[_];m.push({$ref:c,name:g})}else m.push({$ref:c,name:O})}var w=Object.keys(u);0!==w.length&&(m=m.sort((function(e,i){var t=w.indexOf(e.name),r=w.indexOf(i.name);return t<0&&r<0?e.name.localeCompare(i.name):t<0?1:r<0?-1:t-r}))),this.oneOf=m.map((function(i,a){var n=i.$ref,s=i.name,l=new e(t,{$ref:n},n,r.options,!0,r.refsStack.slice(0,-1),(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+a:a.toString()}));return l.title=s,l}))}}),Object.defineProperty(e.prototype,"initConditionalOperators",{enumerable:!1,configurable:!0,writable:!0,value:function(i,t){var r=this,a=i.if,n=i.else,s=void 0===n?{}:n,l=i.then,o=void 0===l?{}:l,d=(0,tslib_1.__rest)(i,["if","else","then"]),u=[{allOf:[d,o,a],title:a&&a["x-displayName"]||(null==a?void 0:a.title)||"case 1"},{allOf:[d,s],title:s&&s["x-displayName"]||(null==s?void 0:s.title)||"case 2"}];this.oneOf=u.map((function(i,a){return new e(t,(0,tslib_1.__assign)({},i),r.pointer+"/oneOf/"+a,r.options,!1,r.refsStack,(0,tslib_1.__assign)((0,tslib_1.__assign)({},r.deps),{parentFieldFullPath:r.deps.parentFieldFullPath?r.deps.parentFieldFullPath+r.options.deepLinkSeparator+a:a.toString()}))})),this.oneOfType="One of"}}),(0,tslib_1.__decorate)([mobx_1.observable],e.prototype,"activeOneOf",void 0),(0,tslib_1.__decorate)([mobx_1.action],e.prototype,"activateOneOf",null),e}();function normalizeField(e,i,t){return e||(console.warn('Field "'+i+'" is invalid, skipping.\n Field must be an object but got '+typeof e+' at "'+t+'"'),{})}function buildFields(e,i,t,r,a,n){var s=i.properties||i.prefixItems||i.items||{},l=i.patternProperties||{},o=i.additionalProperties||i.unevaluatedProperties,d=i.prefixItems?i.items:i.additionalItems,u=i.default||{},p=Object.keys(s).map((function(l){var o,d=normalizeField(s[l],l,t),p=void 0!==i.required&&i.required.indexOf(l)>-1;return new Field_1.FieldModel(e,{name:i.properties?l:"["+l+"]",required:p,schema:(0,tslib_1.__assign)((0,tslib_1.__assign)({},d),{example:(null===(o=i.example)||void 0===o?void 0:o[l])||d.example,default:void 0===d.default&&u?u[l]:d.default})},t+"/properties/"+l,r,a,n)}));return r.sortPropsAlphabetically&&(p=(0,utils_1.sortByField)(p,"name")),r.requiredPropsFirst&&(p=(0,utils_1.sortByRequired)(p,r.sortPropsAlphabetically?void 0:i.required)),p.push.apply(p,Object.keys(l).map((function(i){var s=normalizeField(l[i],i,t);return new Field_1.FieldModel(e,{name:i,required:!1,schema:s,kind:"patternProperties"},t+"/patternProperties/"+i,r,a,n)}))),((0,utils_1.isObject)(o)||!0===o)&&p.push(new Field_1.FieldModel(e,{name:((0,utils_1.isObject)(o)&&o["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:!0===o?{}:o,kind:"additionalProperties"},t+"/additionalProperties",r,a,n)),p.push.apply(p,buildAdditionalItems({parser:e,schema:d,fieldsCount:p.length,$ref:t,options:r,refsStack:a,deps:n})),p}function buildAdditionalItems(e){var i=e.parser,t=e.schema,r=void 0!==t&&t,a=e.fieldsCount,n=e.$ref,s=e.options,l=e.refsStack,o=e.deps;return"boolean"==typeof r?r?[new Field_1.FieldModel(i,{name:"["+a+"...]",schema:{},kind:"additionalItems"},n+"/additionalItems",s,l,o)]:[]:Array.isArray(r)?(0,tslib_1.__spreadArray)([],r.map((function(e,t){return new Field_1.FieldModel(i,{name:"["+(a+t)+"]",schema:e,kind:"additionalItems"},n+"/additionalItems/"+t,s,l,o)})),!0):(0,utils_1.isObject)(r)?[new Field_1.FieldModel(i,{name:"["+a+"...]",schema:r,kind:"additionalItems"},n+"/additionalItems",s,l,o)]:[]}function getDiscriminator(e){return e.discriminator||e["x-discriminator"]}function collectUniqueOneOfTypesDeep(e){var i=new Set;return function e(t){for(var r=0,a=t.oneOf||[];r<a.length;r++){var n=a[r];n.oneOf?e(n):n.type&&i.add(n.type)}}(e),Array.from(i.values())}exports.SchemaModel=SchemaModel;
|
|
2
2
|
//# sourceMappingURL=Schema.js.map
|
package/lib/services/OAuth2.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.deriveCodeChallenge=exports.oauth2Instance=exports.OAuth2=void 0;var tslib_1=require("tslib"),qs=(0,tslib_1.__importStar)(require("querystring")),utils_1=require("./utils"),DEFAULT_OAUTH2_REDIRECT_PAGE="/oauth2-redirect.html",OAuth2=function(){function e(){}return Object.defineProperty(e,"authorizeImplicit",{enumerable:!1,configurable:!0,writable:!0,value:function(t){var r=t.authorizationUrl,a=t.clientId,i=t.scopes,s=t.extraParams,n=void 0===s?{}:s,o=t.routingBasePath,c=t.redirectUri,l=t.successCallback,u=t.errorCallback,d=(0,utils_1.encodeState)({date:(new Date).toString()}),_=new URL(r),h="/"===o?"":o,b=""+window.location.origin+h+DEFAULT_OAUTH2_REDIRECT_PAGE;for(var p in _.searchParams.set("client_id",a),_.searchParams.set("redirect_uri",c||b),_.searchParams.set("response_type","token"),_.searchParams.set("state",d),Array.isArray(i)&&_.searchParams.set("scope",i.join(" ")),n)_.searchParams.set(p,n[p]);window.redirectOAuth2={flow:"implicit",data:{authorizationUrl:r,clientId:a,scopes:i},state:d,successCallback:function(t){l(t),e.clearRedirectData("implicit")},errorCallback:function(t){u(t),e.clearRedirectData("implicit")}},window.open(_.toString())}}),Object.defineProperty(e,"authorizeAuthorizationCode",{enumerable:!1,configurable:!0,writable:!0,value:function(t){var r=this,a=t.authorizationUrl,i=t.tokenUrl,s=t.clientId,n=t.clientSecret,o=t.codeVerifier,c=t.codeChallenge,l=t.scopes,u=t.extraParams,d=void 0===u?{}:u,_=t.extraHeaders,h=void 0===_?{}:_,b=t.routingBasePath,p=t.redirectUri,f=t.successCallback,w=t.errorCallback,v=new URL(a),g="/"===b?"":b,C=""+window.location.origin+g+DEFAULT_OAUTH2_REDIRECT_PAGE,m=(0,utils_1.encodeState)({date:(new Date).toString()});for(var y in v.searchParams.set("client_id",s),v.searchParams.set("redirect_uri",p||C),v.searchParams.set("response_type","code"),v.searchParams.set("state",m),Array.isArray(l)&&v.searchParams.set("scope",l.join(" ")),c&&(v.searchParams.set("code_challenge",c),v.searchParams.set("code_challenge_method","S256")),d)v.searchParams.set(y,d[y]);window.redirectOAuth2={flow:"authorizationCode",data:{authorizationUrl:a,clientId:s,scopes:l},state:m,successCallback:function(t){var a=t.auth_code;return(0,tslib_1.__awaiter)(r,void 0,void 0,(function(){var t;return(0,tslib_1.__generator)(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),[4,fetch(i,{method:"POST",headers:(0,tslib_1.__assign)({"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},h),body:qs.stringify((0,tslib_1.__assign)((0,tslib_1.__assign)((0,tslib_1.__assign)({client_id:s,client_secret:n},o&&{code_verifier:o}),{code:a,grant_type:"authorization_code",redirect_uri:p||C}),d))})];case 1:return[4,handleResponseCallback(r.sent(),f,w)];case 2:return r.sent(),[3,4];case 3:return t=r.sent(),w(t),[3,4];case 4:return e.clearRedirectData("authorizationCode"),[2]}}))}))},errorCallback:function(t){w(t),e.clearRedirectData("authorizationCode")}},window.open(v.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 t=e.tokenUrl,r=e.clientId,a=e.clientSecret,i=e.scopes,s=void 0===i?[]:i,n=e.extraParams,o=void 0===n?{}:n,c=e.extraHeaders,l=void 0===c?{}:c,u=e.successCallback,d=e.errorCallback;return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var e;return(0,tslib_1.__generator)(this,(function(
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.deriveCodeChallenge=exports.oauth2Instance=exports.OAuth2=void 0;var tslib_1=require("tslib"),qs=(0,tslib_1.__importStar)(require("querystring")),utils_1=require("./utils"),DEFAULT_OAUTH2_REDIRECT_PAGE="/oauth2-redirect.html",OAuth2=function(){function e(){}return Object.defineProperty(e,"authorizeImplicit",{enumerable:!1,configurable:!0,writable:!0,value:function(t){var r=t.authorizationUrl,a=t.clientId,i=t.scopes,s=t.extraParams,n=void 0===s?{}:s,o=t.routingBasePath,c=t.redirectUri,l=t.successCallback,u=t.errorCallback,d=(0,utils_1.encodeState)({date:(new Date).toString()}),_=new URL(r),h="/"===o?"":o,b=""+window.location.origin+h+DEFAULT_OAUTH2_REDIRECT_PAGE;for(var p in _.searchParams.set("client_id",a),_.searchParams.set("redirect_uri",c||b),_.searchParams.set("response_type","token"),_.searchParams.set("state",d),Array.isArray(i)&&_.searchParams.set("scope",i.join(" ")),n)_.searchParams.set(p,n[p]);window.redirectOAuth2={flow:"implicit",data:{authorizationUrl:r,clientId:a,scopes:i},state:d,successCallback:function(t){l(t),e.clearRedirectData("implicit")},errorCallback:function(t){u(t),e.clearRedirectData("implicit")}},window.open(_.toString())}}),Object.defineProperty(e,"authorizeAuthorizationCode",{enumerable:!1,configurable:!0,writable:!0,value:function(t){var r=this,a=t.authorizationUrl,i=t.tokenUrl,s=t.clientId,n=t.clientSecret,o=t.codeVerifier,c=t.codeChallenge,l=t.scopes,u=t.extraParams,d=void 0===u?{}:u,_=t.extraHeaders,h=void 0===_?{}:_,b=t.routingBasePath,p=t.redirectUri,f=t.successCallback,w=t.errorCallback,v=new URL(a),g="/"===b?"":b,C=""+window.location.origin+g+DEFAULT_OAUTH2_REDIRECT_PAGE,m=(0,utils_1.encodeState)({date:(new Date).toString()});for(var y in v.searchParams.set("client_id",s),v.searchParams.set("redirect_uri",p||C),v.searchParams.set("response_type","code"),v.searchParams.set("state",m),Array.isArray(l)&&v.searchParams.set("scope",l.join(" ")),c&&(v.searchParams.set("code_challenge",c),v.searchParams.set("code_challenge_method","S256")),d)v.searchParams.set(y,d[y]);window.redirectOAuth2={flow:"authorizationCode",data:{authorizationUrl:a,clientId:s,scopes:l},state:m,successCallback:function(t){var a=t.auth_code;return(0,tslib_1.__awaiter)(r,void 0,void 0,(function(){var t;return(0,tslib_1.__generator)(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),[4,fetch(i,{method:"POST",headers:(0,tslib_1.__assign)({"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},h),body:qs.stringify((0,tslib_1.__assign)((0,tslib_1.__assign)((0,tslib_1.__assign)({client_id:s,client_secret:n},o&&{code_verifier:o}),{code:a,grant_type:"authorization_code",redirect_uri:p||C}),d))})];case 1:return[4,handleResponseCallback(r.sent(),f,w)];case 2:return r.sent(),[3,4];case 3:return t=r.sent(),w(t),[3,4];case 4:return e.clearRedirectData("authorizationCode"),[2]}}))}))},errorCallback:function(t){w(t),e.clearRedirectData("authorizationCode")}},window.open(v.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 t=e.tokenUrl,r=e.clientId,a=e.clientSecret,i=e.scopes,s=void 0===i?[]:i,n=e.extraParams,o=void 0===n?{}:n,c=e.extraHeaders,l=void 0===c?{}:c,u=e.successCallback,d=e.errorCallback;return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var e,i;return(0,tslib_1.__generator)(this,(function(n){switch(n.label){case 0:return n.trys.push([0,3,,4]),e=JSON.parse(JSON.stringify((0,tslib_1.__assign)({client_id:r,client_secret:a,grant_type:"client_credentials",scope:Array.isArray(s)&&s.length?s.join(" "):void 0},o))),[4,fetch(t,{method:"POST",headers:(0,tslib_1.__assign)({"Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},l),body:qs.stringify(e)})];case 1:return[4,handleResponseCallback(n.sent(),u,d)];case 2:return n.sent(),[3,4];case 3:return i=n.sent(),d(i),[3,4];case 4:return[2]}}))}))}}),e}();function handleResponseCallback(e,t,r){return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var a,i,s,n,o,c;return(0,tslib_1.__generator)(this,(function(l){switch(l.label){case 0:return e.ok?[4,e.json()]:[3,2];case 1:return a=l.sent(),t(a),[3,7];case 2:return i=r,s=Error.bind,(e.headers.get("Content-Type")||"").indexOf("json")>-1?(c=(o=JSON).stringify,[4,e.json()]):[3,4];case 3:return n=c.apply(o,[l.sent()]),[3,6];case 4:return[4,e.text()];case 5:n=l.sent(),l.label=6;case 6:i.apply(void 0,[new(s.apply(Error,[void 0,n]))]),l.label=7;case 7:return[2]}}))}))}function deriveCodeChallenge(e){return(0,tslib_1.__awaiter)(this,void 0,void 0,(function(){var t;return(0,tslib_1.__generator)(this,(function(r){switch(r.label){case 0:return t=utils_1.base64UrlEncode,[4,(0,utils_1.sha256)(e)];case 1:return[2,t.apply(void 0,[r.sent()])]}}))}))}exports.OAuth2=OAuth2,exports.oauth2Instance=new OAuth2,exports.deriveCodeChallenge=deriveCodeChallenge;
|
|
2
2
|
//# sourceMappingURL=OAuth2.js.map
|
|
@@ -5,7 +5,7 @@ import type { RedocProNormalizedOptions } from '../services/ProStore';
|
|
|
5
5
|
export declare const NextSectionButton: import("styled-components").StyledComponent<React.FC<ButtonProps>, any, {
|
|
6
6
|
className: string;
|
|
7
7
|
}, "className">;
|
|
8
|
-
export declare const NextSectionButtonLink: import("styled-components").StyledComponent<
|
|
8
|
+
export declare const NextSectionButtonLink: import("styled-components").StyledComponent<React.FC<ButtonProps>, any, ButtonProps, never>;
|
|
9
9
|
interface ContinueButtonProps {
|
|
10
10
|
pagination?: RedocProNormalizedOptions['pagination'];
|
|
11
11
|
menu: ProMenu;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme/Button";import{IS_BROWSER}from"../redoc-lib";import{userIsForcingNavigation}from"../redoc-lib/src/common-elements/linkify";import{NextSectionButtonWrap}from"./styled.elements";export var NextSectionButton=styled(Button).attrs({className:"next-section-button"})(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-size: 14px;\n margin-left: auto;\n"],["\n font-size: 14px;\n margin-left: auto;\n"])));export var NextSectionButtonLink=styled(Button
|
|
1
|
+
import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme/Button";import{IS_BROWSER}from"../redoc-lib";import{userIsForcingNavigation}from"../redoc-lib/src/common-elements/linkify";import{NextSectionButtonWrap}from"./styled.elements";export var NextSectionButton=styled(Button).attrs({className:"next-section-button"})(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-size: 14px;\n margin-left: auto;\n"],["\n font-size: 14px;\n margin-left: auto;\n"])));export var NextSectionButtonLink=styled(Button)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n font-size: 14px;\n margin-left: auto;\n"],["\n font-size: 14px;\n margin-left: auto;\n"])));export var ContinueButton=function(t){var e=t.pagination,n=t.menu;if(!e||"none"===e)return null;var o=getNext(e,n),a=o.nextItem,r=o.nextLabel;return a?React.createElement(NextSectionButtonWrap,null,React.createElement(NextSectionButtonLink,{extraClass:"next-section-button",color:"secondary",onClick:function(t){var e;t.defaultPrevented||userIsForcingNavigation(t)||(t.preventDefault(),e=a,IS_BROWSER&&window.scrollTo(0,0),n.activateAndScroll(e),setTimeout((function(){return n.activateAndScroll(e)})))},to:a.href},"➔ Next to ",React.createElement("strong",null,r))):null};function getNext(t,e){var n,o,a,r=e.renderItems,i=e.flatItems,l=void 0;if(-1===e.activeRenderItemIdx)return l=i.find((function(t){return t.id.startsWith("tag")})),{nextItem:l,nextLabel:null==l?void 0:l.name};if(!r.length)return"group"===(l=i[0]).type&&(l=l.items[0]),{nextItem:l,nextLabel:a=l.name};if("section"===t)return(l=nextItemOfDepth(r[r.length-1],i))?{nextItem:l,nextLabel:a=null==l?void 0:l.name}:{};if("item"===t){switch(r[0].type){case"tag":a=null==(l=nextOperationOrTagItem(r[0],i))?void 0:l.name;break;case"section":a=null==(l=nextItemOfDepth(r[r.length-1],i))?void 0:l.name;break;case"operation":case"schema":a=null==(l=getNextForOperation(r[0],i))?void 0:l.name;break;default:return{}}return"tag"===(null==l?void 0:l.type)&&!(null==l?void 0:l.description)&&(null==l?void 0:l.items.length)&&(a=(null===(n=null==(l=null==l?void 0:l.items[0])?void 0:l.parent)||void 0===n?void 0:n.name)+" / "+(null==l?void 0:l.name)),l&&l.parent&&0===l.parent.items.indexOf(l)&&(a=(null===(o=l.parent)||void 0===o?void 0:o.name)+" / "+l.name),{nextItem:l,nextLabel:a}}return{}}function nextItemOfDepth(t,e){for(var n,o=(null!==(n=null==t?void 0:t.absoluteIdx)&&void 0!==n?n:0)+1;o<e.length;o++)if(e[o].depth===t.depth)return e[o]}function nextOperationOrTagItem(t,e){for(var n,o=(null!==(n=null==t?void 0:t.absoluteIdx)&&void 0!==n?n:0)+1;o<e.length;o++)if("operation"===e[o].type||"tag"===e[o].type||"schema"===e[o].type)return e[o]}function getNextForOperation(t,e){for(var n,o,a=(null!==(n=null==t?void 0:t.absoluteIdx)&&void 0!==n?n:0)+1;a<e.length;a++)if("tag"===(o=e[a]).type||"operation"===o.type||"section"===o.type||"schema"===o.type)return o}var templateObject_1,templateObject_2;
|
|
2
2
|
//# sourceMappingURL=NextSectionButton.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__awaiter,__decorate,__extends,__generator,__rest}from"tslib";import*as React from"react";import{Form,useField}from"informed";import{observer}from"mobx-react";import Swagger from"swagger-client";import{get,unescapeFormId}from"../../utils";import{AnalyticsEventType}from"../../services";import{JsonPointer,StoreContext}from"../../redoc-lib";import{RenderHook}from"../../redoc-lib/src/components/RenderHook";import{l}from"../../redoc-lib/src/services/Labels";import{Accordion,StyledCodeHeader}from"../Panel";import{OAuth2}from"../../services/OAuth2";import{isFileUploadMime}from"../common/FileUpload/helper";import{OperationParameters}from"../OperationParameters";import{useDimensions}from"../../hooks";import{getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage,requiredValidator}from"./utils";import{AuthPanel}from"./AuthPanel";import{RequestBody}from"./RequestBody/RequestBody";import{ResponsePanel}from"./ResponsePanel";import{ActionPanel}from"./ActionPanel";import{ServersDropdown}from"./ServersDropdown";import{TryItPanel}from"./TryItPanel";import{ConsoleTabs}from"./ConsoleTabs";import{CloseButton,ConsoleBody,ConsoleWrap}from"./styled";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}var flexColumn={flex:1,display:"flex",flexDirection:"column"},Console=function(e){function t(t){var r=e.call(this,t)||this;return Object.defineProperty(r,"formApi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"setFormApi",{enumerable:!0,configurable:!0,writable:!0,value:function(e,t){void 0===t&&(t=e.getState());var o=t.values,a=__rest(t,["values"]);r.formApi=e,setTimeout((function(){var e=__assign(__assign({},a),{values:__assign(__assign({},o),{query:unescapeQueryParams(o.query||{})})});r.setState({form:e})}),0)}}),Object.defineProperty(r,"handleChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.values,o=__rest(e,["values"]),a=__assign(__assign({},o),{values:__assign(__assign({},t),{query:unescapeQueryParams(t.query||{})})});r.setState({form:a}),updateStorage(a),r.props.operation.setRequestValues(t)}}),Object.defineProperty(r,"handleTabChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({activeTab:e})}}),Object.defineProperty(r,"handleServerChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({server:e}),r.props.operation.setActiveServer(e)}}),Object.defineProperty(r,"handleExecute",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(r,void 0,void 0,(function(){var e,t,r,o,a,n,s,i,l,u,c,p,d,m,h,v,f,y,g,_,b,P,R,S,C,w,A,E,I,k,T,q,O,x,F,B,j,H,D,V,U,N=this;return __generator(this,(function(W){switch(W.label){case 0:if(e=this.props,t=e.store,r=e.operation,o=e.onResponse,a=this.state.form,n=a.values,s=a.invalid,null===(x=this.formApi)||void 0===x||x.submitForm(),s)return this.setState({shaking:!0}),setTimeout((function(){return N.setState({shaking:!1})}),1e3),null===(B=null===(F=null==t?void 0:t.options.events)||void 0===F?void 0:F.tryItSent)||void 0===B||B.call(F,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[2];if(i=this.props.operation.requestBody,l=i&&i.content&&i.content.active&&i.content.active.name||"",u=n.body,/json/.test(l))try{u=JSON.parse(u)}catch(e){console.error(e)}if(this.setState({loading:!0}),c=this.state.resolvedRawSpec,p=(r.httpVerb||"").toLowerCase(),!(d=get(c,["paths",r.path,p,"servers"])||get(c,["paths",r.path,"servers"])||get(c,["servers"])))throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");m=d.find((function(e){return N.state.server.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url)})),h=Date.now(),v=!!window.document.documentMode,y=n.auth,n.auth?(g=Object.keys(n.auth)[0],_=unescapeFormId(g),f=__assign(__assign({},c),{components:__assign(__assign({},null==c?void 0:c.components),{securitySchemes:__assign(__assign({},null==c?void 0:c.components.securitySchemes),(k={},k[_]=__assign(__assign({},null==c?void 0:c.components.securitySchemes[_]),{type:"openIdConnect"===(null==c?void 0:c.components.securitySchemes[_].type)?"oauth2":null==c?void 0:c.components.securitySchemes[_].type}),k))})}),y=__assign(__assign({},y),((T={})[_]=y[g],T))):f=__assign({},c),(b=t.options.corsProxyUrl)&&d.length&&(f.servers=d.map((function(e){return __assign(__assign({},e),{url:b+normalizeUrlProtocol(e.url)})})),f.paths=__assign(__assign({},f.paths),((q={})[r.path]=__assign(__assign({},f.paths[r.path]),((O={})[p]=__assign(__assign({},f.paths[r.path][p]),{servers:void 0}),O.servers=void 0,O)),q))),(P=(null===(H=null===(j=null==i?void 0:i.content)||void 0===j?void 0:j.active)||void 0===H?void 0:H.name)||null)&&u&&isFileUploadMime(P)&&(R=Object.values(u),u=R.length>1?R:R[0]),S={userFetch:v&&require("cross-fetch").fetch,server:b?b+normalizeUrlProtocol(m.url):m.url,serverVariables:this.state.server.variables,spec:f,pathName:r.path,method:r.httpVerb,parameters:__assign(__assign(__assign(__assign({},n.path),n.query),n.header),n.cookie),securities:{authorized:y},requestBody:u,requestContentType:P,responseContentType:(null===(D=n.header)||void 0===D?void 0:D.Accept)||null,requestInterceptor:makeRequestInterceptor(t.options,r,null==y?void 0:y.Authorization)},W.label=1;case 1:return W.trys.push([1,5,8,9]),[4,Swagger.execute(S)];case 2:return C=W.sent(),(w=null==C?void 0:C.data)instanceof Blob?(isFileUploadMime(w.type)&&(C.fileInfo={rawData:w,fileName:getFileNameFromHeaders(C.headers)}),A=C,[4,w.text()]):[3,4];case 3:A.data=W.sent(),W.label=4;case 4:return null==o||o({request:S,response:C}),this.setState({response:C,error:void 0}),[3,9];case 5:return(E=W.sent())&&E.response&&E.response.data instanceof Blob?(I=E.response,[4,E.response.data.text()]):[3,7];case 6:I.data=W.sent(),null==o||o({request:S,response:E.response}),W.label=7;case 7:return this.setState({response:void 0,error:E}),[3,9];case 8:return this.setState({loading:!1,activeTab:1,time:Date.now()-h}),null===(U=null===(V=null==t?void 0:t.options.events)||void 0===V?void 0:V.tryItSent)||void 0===U||U.call(V,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[7];case 9:return[2]}}))}))}}),r.state={form:{values:{path:getParameters(t.operation.parameters,"path"),cookie:getParameters(t.operation.parameters,"cookie"),header:getParameters(t.operation.parameters,"header"),query:getParameters(t.operation.parameters,"query")}},shaking:!1,loading:!1,activeTab:0,server:{}},r}return __extends(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e;return __awaiter(this,void 0,void 0,(function(){var t,r,o,a;return __generator(this,(function(n){switch(n.label){case 0:return t=this.props,r=t.store,o=t.operation,[4,r.dereferenceSpecForTryIt(o)];case 1:return a=n.sent(),this.setState({resolvedRawSpec:a}),null===(e=this.formApi)||void 0===e||e.setValues({}),[2]}}))}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.operation!==this.props.operation&&this.setState({response:void 0,error:void 0,activeTab:0})}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.operation,r=e.className,o=e.rootElement,a=this.state,n=a.shaking,s=a.activeTab,i=a.form,l=a.response,u=a.loading,c=a.error,p=!(!l&&!c);return React.createElement(ConsoleWrapHook,{shaking:n,className:r,rootElement:o},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:s,hasResponse:p,onChange:this.handleTabChange}),this.props.onClose&&React.createElement(CloseButton,{onClick:this.props.onClose}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==s,"data-cy":"console-request-body"},this.renderRequest()),React.createElement(ConsoleBody,{hidden:1!==s,"data-cy":"console-response-body"},this.renderResponse()),React.createElement(ActionPanel,{hasResponse:p,params:i.values,operation:t,loading:u,execute:this.handleExecute}))}}),Object.defineProperty(t.prototype,"renderRequest",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,r=t.operation,o=t.store,a=t.properties,n=t.securityDefaults,s=this.state,i=s.form,u=s.resolvedRawSpec,c=s.server,p=i.errors||{},d=p.path||p.cookie||p.header||p.query,m=u&&JsonPointer.get(u,r.pointer),h=i.values&&i.values.auth&&Object.keys(i.values.auth)[0];h&&i.values.auth[h]||(h=void 0),!h||void 0===i.values.auth[h].token&&void 0===i.values.auth[h].client_id&&void 0===i.values.auth[h].client_secret||i.values.auth[h].token&&i.values.auth[h].token.access_token||(h=void 0),h&&null!=i.values.auth[h].username&&(i.values.auth[h].username&&i.values.auth[h].password||(h=void 0));var v=r.parameters||[],f=null===(e=null==o?void 0:o.options.hooks)||void 0===e?void 0:e.ReplaceTryItSecurityPanel;return!u&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(Form,{onChange:this.handleChange,getApi:this.setFormApi,style:__assign(__assign({},flexColumn),{margin:0})},React.createElement(ServersDropdown,{operation:r,onChange:this.handleServerChange}),React.createElement(Accordion,{initialActiveIdx:r.security.length&&h?1:0},r.security.length&&this.formApi&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",error:!h&&!!p.auth,success:!!h},f?React.createElement(AuthPanelHook,{field:"auth",validate:requiredValidator},(function(e){return React.createElement(RenderHook,{Hook:f,props:{server:c,operation:r,onChange:e,OAuth2:OAuth2}})})):React.createElement(AuthPanel,{formApi:this.formApi,form:i,operation:r,activeServer:c.url,authCorsProxyUrl:o.options.authCorsProxyUrl,securityDefaults:n}))||null,r.requestBody&&this.formApi&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",error:!!p.body},React.createElement(RequestBody,{validate:allowBodyErrors,formApi:this.formApi,body:r.requestBody,id:r.id,resolvedBody:null==m?void 0:m.requestBody,properties:a}))||null,v.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:d},React.createElement(OperationParameters,{operation:r,values:i.values,errors:i.errors||{}}))||null))}}),Object.defineProperty(t.prototype,"renderResponse",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.response,r=e.error,o=e.time;return React.createElement(ResponsePanel,{response:t,error:r,time:o})}}),t=__decorate([observer],t)}(React.Component);export{Console};function allowBodyErrors(){}function ConsoleWrapHook(e){var t=e.shaking,r=e.className,o=e.children,a=e.rootElement,n=useDimensions(a)[0],s=React.useContext(StoreContext);return React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,shaking:t,className:r,"data-cy":"console",fullWidth:null==n?void 0:n.width},o)}function AuthPanelHook(e){var t=useField(__assign({},e)),r=t.fieldApi,o=t.render,a=t.userProps,n=r.setValue,s=a.children;return o(React.createElement(React.Fragment,null,s(n)))}
|
|
1
|
+
import{__assign,__awaiter,__decorate,__extends,__generator,__rest}from"tslib";import*as React from"react";import{Form,useField}from"informed";import{observer}from"mobx-react";import Swagger from"swagger-client";import{unescapeFormId}from"../../utils";import{AnalyticsEventType}from"../../services";import{JsonPointer,StoreContext}from"../../redoc-lib";import{RenderHook}from"../../redoc-lib/src/components/RenderHook";import{l}from"../../redoc-lib/src/services/Labels";import{Accordion,StyledCodeHeader}from"../Panel";import{OAuth2}from"../../services/OAuth2";import{isFileUploadMime}from"../common/FileUpload/helper";import{OperationParameters}from"../OperationParameters";import{useDimensions}from"../../hooks";import{getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage,requiredValidator}from"./utils";import{AuthPanel}from"./AuthPanel";import{RequestBody}from"./RequestBody/RequestBody";import{ResponsePanel}from"./ResponsePanel";import{ActionPanel}from"./ActionPanel";import{ServersDropdown}from"./ServersDropdown";import{TryItPanel}from"./TryItPanel";import{ConsoleTabs}from"./ConsoleTabs";import{CloseButton,ConsoleBody,ConsoleWrap}from"./styled";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}var flexColumn={flex:1,display:"flex",flexDirection:"column"},Console=function(e){function t(t){var r=e.call(this,t)||this;return Object.defineProperty(r,"formApi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"setFormApi",{enumerable:!0,configurable:!0,writable:!0,value:function(e,t){void 0===t&&(t=e.getState());var o=t.values,a=__rest(t,["values"]);r.formApi=e,setTimeout((function(){var e=__assign(__assign({},a),{values:__assign(__assign({},o),{query:unescapeQueryParams(o.query||{})})});r.setState({form:e})}),0)}}),Object.defineProperty(r,"handleChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.values,o=__rest(e,["values"]),a=__assign(__assign({},o),{values:__assign(__assign({},t),{query:unescapeQueryParams(t.query||{})})});r.setState({form:a}),updateStorage(a),r.props.operation.setRequestValues(t)}}),Object.defineProperty(r,"handleTabChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({activeTab:e})}}),Object.defineProperty(r,"handleServerChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({server:e}),r.props.operation.setActiveServer(e)}}),Object.defineProperty(r,"handleExecute",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(r,void 0,void 0,(function(){var e,t,r,o,a,n,s,i,l,u,c,p,d,m,h,v,f,y,g,_,b,P,R,S,C,w,A,E,I,k,T,q,O,x,F,B,H,j,D,V,U,N,W=this;return __generator(this,(function(z){switch(z.label){case 0:if(e=this.props,t=e.store,r=e.operation,o=e.onResponse,a=this.state.form,n=a.values,s=a.invalid,null===(F=this.formApi)||void 0===F||F.submitForm(),s)return this.setState({shaking:!0}),setTimeout((function(){return W.setState({shaking:!1})}),1e3),null===(H=null===(B=null==t?void 0:t.options.events)||void 0===B?void 0:B.tryItSent)||void 0===H||H.call(B,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[2];if(i=this.props.operation,l=i.servers,u=i.requestBody,c=u&&u.content&&u.content.active&&u.content.active.name||"",p=n.body,/json/.test(c))try{p=JSON.parse(p)}catch(e){console.error(e)}if(this.setState({loading:!0}),d=this.state.resolvedRawSpec,m=(r.httpVerb||"").toLowerCase(),!l)throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");h=l.find((function(e){return W.state.server.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url)})),v=Date.now(),f=!!window.document.documentMode,g=n.auth,n.auth?(_=Object.keys(n.auth)[0],b=unescapeFormId(_),y=__assign(__assign({},d),{components:__assign(__assign({},null==d?void 0:d.components),{securitySchemes:__assign(__assign({},null==d?void 0:d.components.securitySchemes),(T={},T[b]=__assign(__assign({},null==d?void 0:d.components.securitySchemes[b]),{type:"openIdConnect"===(null==d?void 0:d.components.securitySchemes[b].type)?"oauth2":null==d?void 0:d.components.securitySchemes[b].type}),T))})}),g=__assign(__assign({},g),((q={})[b]=g[_],q))):y=__assign({},d),y.servers=l,(P=t.options.corsProxyUrl)&&l.length&&(y.servers=l.map((function(e){return __assign(__assign({},e),{url:P+normalizeUrlProtocol(e.url)})})),y.paths=__assign(__assign({},y.paths),((O={})[r.path]=__assign(__assign({},y.paths[r.path]),((x={})[m]=__assign(__assign({},y.paths[r.path][m]),{servers:void 0}),x.servers=void 0,x)),O))),(R=(null===(D=null===(j=null==u?void 0:u.content)||void 0===j?void 0:j.active)||void 0===D?void 0:D.name)||null)&&p&&isFileUploadMime(R)&&(S=Object.values(p),p=S.length>1?S:S[0]),C={userFetch:f&&require("cross-fetch").fetch,server:P?P+normalizeUrlProtocol(h.url):h.url,serverVariables:this.state.server.variables,spec:y,pathName:r.path,method:r.httpVerb,parameters:__assign(__assign(__assign(__assign({},n.path),n.query),n.header),n.cookie),securities:{authorized:g},requestBody:p,requestContentType:R,responseContentType:(null===(V=n.header)||void 0===V?void 0:V.Accept)||null,requestInterceptor:makeRequestInterceptor(t.options,r,null==g?void 0:g.Authorization)},z.label=1;case 1:return z.trys.push([1,5,8,9]),[4,Swagger.execute(C)];case 2:return w=z.sent(),(A=null==w?void 0:w.data)instanceof Blob?(isFileUploadMime(A.type)&&(w.fileInfo={rawData:A,fileName:getFileNameFromHeaders(w.headers)}),E=w,[4,A.text()]):[3,4];case 3:E.data=z.sent(),z.label=4;case 4:return null==o||o({request:C,response:w}),this.setState({response:w,error:void 0}),[3,9];case 5:return(I=z.sent())&&I.response&&I.response.data instanceof Blob?(k=I.response,[4,I.response.data.text()]):[3,7];case 6:k.data=z.sent(),null==o||o({request:C,response:I.response}),z.label=7;case 7:return this.setState({response:void 0,error:I}),[3,9];case 8:return this.setState({loading:!1,activeTab:1,time:Date.now()-v}),null===(N=null===(U=null==t?void 0:t.options.events)||void 0===U?void 0:U.tryItSent)||void 0===N||N.call(U,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[7];case 9:return[2]}}))}))}}),r.state={form:{values:{path:getParameters(t.operation.parameters,"path"),cookie:getParameters(t.operation.parameters,"cookie"),header:getParameters(t.operation.parameters,"header"),query:getParameters(t.operation.parameters,"query")}},shaking:!1,loading:!1,activeTab:0,server:{}},r}return __extends(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e;return __awaiter(this,void 0,void 0,(function(){var t,r,o,a;return __generator(this,(function(n){switch(n.label){case 0:return t=this.props,r=t.store,o=t.operation,[4,r.dereferenceSpecForTryIt(o)];case 1:return a=n.sent(),this.setState({resolvedRawSpec:a}),null===(e=this.formApi)||void 0===e||e.setValues({}),[2]}}))}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.operation!==this.props.operation&&this.setState({response:void 0,error:void 0,activeTab:0})}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.operation,r=e.className,o=e.rootElement,a=this.state,n=a.shaking,s=a.activeTab,i=a.form,l=a.response,u=a.loading,c=a.error,p=!(!l&&!c);return React.createElement(ConsoleWrapHook,{shaking:n,className:r,rootElement:o},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:s,hasResponse:p,onChange:this.handleTabChange}),this.props.onClose&&React.createElement(CloseButton,{onClick:this.props.onClose}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==s,"data-cy":"console-request-body"},this.renderRequest()),React.createElement(ConsoleBody,{hidden:1!==s,"data-cy":"console-response-body"},this.renderResponse()),React.createElement(ActionPanel,{hasResponse:p,params:i.values,operation:t,loading:u,execute:this.handleExecute}))}}),Object.defineProperty(t.prototype,"renderRequest",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,r=t.operation,o=t.store,a=t.properties,n=t.securityDefaults,s=this.state,i=s.form,u=s.resolvedRawSpec,c=s.server,p=i.errors||{},d=p.path||p.cookie||p.header||p.query,m=u&&JsonPointer.get(u,r.pointer),h=i.values&&i.values.auth&&Object.keys(i.values.auth)[0];h&&i.values.auth[h]||(h=void 0),!h||void 0===i.values.auth[h].token&&void 0===i.values.auth[h].client_id&&void 0===i.values.auth[h].client_secret||i.values.auth[h].token&&i.values.auth[h].token.access_token||(h=void 0),h&&null!=i.values.auth[h].username&&(i.values.auth[h].username&&i.values.auth[h].password||(h=void 0));var v=r.parameters||[],f=null===(e=null==o?void 0:o.options.hooks)||void 0===e?void 0:e.ReplaceTryItSecurityPanel;return!u&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(Form,{onChange:this.handleChange,getApi:this.setFormApi,style:__assign(__assign({},flexColumn),{margin:0})},React.createElement(ServersDropdown,{operation:r,onChange:this.handleServerChange}),React.createElement(Accordion,{initialActiveIdx:r.security.length&&h?1:0},r.security.length&&this.formApi&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",error:!h&&!!p.auth,success:!!h,renderChildrenHidden:!0},f?React.createElement(AuthPanelHook,{field:"auth",validate:requiredValidator},(function(e){return React.createElement(RenderHook,{Hook:f,props:{server:c,operation:r,onChange:e,OAuth2:OAuth2}})})):React.createElement(AuthPanel,{formApi:this.formApi,form:i,operation:r,activeServer:c.url,authCorsProxyUrl:o.options.authCorsProxyUrl,securityDefaults:n}))||null,r.requestBody&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",error:!!p.body,renderChildrenHidden:!0},React.createElement(RequestBody,{validate:allowBodyErrors,formApi:this.formApi,body:r.requestBody,id:r.id,resolvedBody:null==m?void 0:m.requestBody,properties:a}))||null,v.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:d,renderChildrenHidden:!0},React.createElement(OperationParameters,{operation:r,values:i.values,errors:i.errors||{}}))||null))}}),Object.defineProperty(t.prototype,"renderResponse",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.response,r=e.error,o=e.time;return React.createElement(ResponsePanel,{response:t,error:r,time:o})}}),t=__decorate([observer],t)}(React.Component);export{Console};function allowBodyErrors(){}function ConsoleWrapHook(e){var t=e.shaking,r=e.className,o=e.children,a=e.rootElement,n=useDimensions(a)[0],s=React.useContext(StoreContext);return React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,shaking:t,className:r,"data-cy":"console",fullWidth:null==n?void 0:n.width},o)}function AuthPanelHook(e){var t=useField(__assign({},e)),r=t.fieldApi,o=t.render,a=t.userProps,n=r.setValue,s=a.children;return o(React.createElement(React.Fragment,null,s(n)))}
|
|
2
2
|
//# sourceMappingURL=Console.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign}from"tslib";import React,{memo,useCallback,useEffect}from"react";import{observer}from"mobx-react";import merge from"deepmerge";import{DropdownOrLabel,MediaTypesSwitch}from"../../../redoc-lib";import{ExampleSwitch,useExampleKey}from"../../Samples";import{arrayMergeStrategy}from"../../../services/utils";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../types";import{Dropdown}from"../../common/Dropdown";import{RequestBodyForm}from"../RequestBodyForm";import{RequestMimeLabel}from"../RequestMimeLabel";import CodemirrorInput from"../CodemirrorInput";import{encodeSample}from"../utils";import{fromSessionStorage,toSessionStorage}from"../../../utils";var RequestBodyComponent=observer((function(e){var o,
|
|
1
|
+
import{__assign}from"tslib";import React,{memo,useCallback,useEffect}from"react";import{observer}from"mobx-react";import merge from"deepmerge";import{DropdownOrLabel,MediaTypesSwitch}from"../../../redoc-lib";import{ExampleSwitch,useExampleKey}from"../../Samples";import{arrayMergeStrategy}from"../../../services/utils";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../types";import{Dropdown}from"../../common/Dropdown";import{RequestBodyForm}from"../RequestBodyForm";import{RequestMimeLabel}from"../RequestMimeLabel";import CodemirrorInput from"../CodemirrorInput";import{encodeSample,getStorageExampleKey}from"../utils";import{fromSessionStorage,toSessionStorage}from"../../../utils";var RequestBodyComponent=observer((function(e){var o,t,a=e.body,r=e.formApi,i=e.resolvedBody,n=e.properties,l=e.id,m=e.validate,p=a.content,d=function(e){var o;if(!p||!p.hasSample)return"";var t=null===(o=p.active)||void 0===o?void 0:o.examples;if(!(null==t?void 0:t[e]))return"";var a=null==t?void 0:t[e].value,r=n?merge(a,n,{arrayMerge:arrayMergeStrategy}):a;return JSON.stringify(r,null,2)},u=null===(o=null==p?void 0:p.operation)||void 0===o?void 0:o.activeExampleName,s=function(e){null==p||p.activateExampleName(e),null==r||r.setValue("body",d(e))},c=function(e,o){null==r||r.setValue("body."+e,o)};useEffect((function(){var e,o;if(null===(e=null==p?void 0:p.operation)||void 0===e?void 0:e.activeMimeName){var t=getStorageExampleKey(l,p.operation.activeMimeName,u,null===(o=null==p?void 0:p.active)||void 0===o?void 0:o.examples);null==r||r.setValue("body",fromSessionStorage(t)||d(u||""))}else null==r||r.setValue("body",JSON.stringify(n||{},null,2))}),[u,null===(t=null==p?void 0:p.operation)||void 0===t?void 0:t.activeMimeName,null==p?void 0:p.active]);var v=useCallback((function(e,o,t){return void 0===e&&(e=""),void 0===o&&(o=""),void 0===t&&(t=[]),function(a){toSessionStorage(getStorageExampleKey(l,e,o,t),a)}}),[l]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:a.content,renderDropdown:function(e){return React.createElement(DropdownOrLabel,__assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))}},(function(e){var o=e.examples||{},t=Object.keys(o),a=e.schema,p=isRootFileUpload(a||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,d=useExampleKey(e.operation,o).exampleKey,u=fromSessionStorage(getStorageExampleKey(l,e.name,d,o))||encodeSample(o[d],n);return React.createElement(React.Fragment,null,t.length&&1!==t.length&&React.createElement(ExampleSwitch,{examples:o,onChange:s,exampleKey:d,panel:"try-it"})||null,p?React.createElement(RequestBodyForm,{mediaType:e,formApi:r,onChange:c}):React.createElement(CodemirrorInput,{id:"body"+l,field:"body",initialValue:u,schema:((null==i?void 0:i.content[e.name])||{}).schema,mode:e.name,validate:m,onChange:v(e.name,d,o)}))})))}));export var RequestBody=memo(RequestBodyComponent);
|
|
2
2
|
//# sourceMappingURL=RequestBody.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__extends,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{ResponseBody}from"./ResponseBody";import{ResponseHeadersList}from"./ResponseHeadersList";var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,ResponseBadges=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-bottom: 10px;\n"],["\n margin-bottom: 10px;\n"]))),ResponseBadgeBase=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n display: inline-block;\n margin-right: 20px;\n padding: 2px 0;\n text-align: center;\n color: var(--text-color-inverse);\n"],["\n display: inline-block;\n margin-right: 20px;\n padding: 2px 0;\n text-align: center;\n color: var(--text-color-inverse);\n"]))),ResponseBadge=styled(ResponseBadgeBase)(templateObject_3||(templateObject_3=__makeTemplateObject(["\n color: ",";\n"],["\n color: ",";\n"])),(function(e){var t=e.code;return t>=200&&t<300?"var(--response-success-text-color)":t>=300&&t<400?"var(--response-redirect-text-color)":t>400?"var(--response-error-text-color)":"var(--response-info-text-color)"})),ErrorHeader=styled.header(templateObject_4||(templateObject_4=__makeTemplateObject(["\n font-weight: bold;\n margin-bottom: 10px;\n"],["\n font-weight: bold;\n margin-bottom: 10px;\n"]))),ErrorDetails=styled.code(templateObject_5||(templateObject_5=__makeTemplateObject(["\n border-left: 3px solid #ff4040;\n padding-left: 5px;\n"],["\n border-left: 3px solid #ff4040;\n padding-left: 5px;\n"]))),ResponsePanel=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,n=t.error,a=t.response,r=t.time,l=a||n&&n.response,o=l&&l.data&&l.data.length||0;return e=o>1e6?(o/1e6).toFixed(2)+" MB":o>1e3?(o/1e3).toFixed(2)+" KB":o+" B",n&&!n.response||!l?React.createElement(React.Fragment,null,React.createElement(ErrorHeader,null," Could not get any response "),React.createElement(ErrorDetails,null,n&&n.message||"Unknown error"),React.createElement("br",null),React.createElement(ErrorHeader,null," Why this might have happened:"),React.createElement("div",null," - CORS is misconfigured on the server"),React.createElement("div",null," - The server couldn't
|
|
1
|
+
import{__extends,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{ResponseBody}from"./ResponseBody";import{ResponseHeadersList}from"./ResponseHeadersList";var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,ResponseBadges=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-bottom: 10px;\n"],["\n margin-bottom: 10px;\n"]))),ResponseBadgeBase=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n display: inline-block;\n margin-right: 20px;\n padding: 2px 0;\n text-align: center;\n color: var(--text-color-inverse);\n"],["\n display: inline-block;\n margin-right: 20px;\n padding: 2px 0;\n text-align: center;\n color: var(--text-color-inverse);\n"]))),ResponseBadge=styled(ResponseBadgeBase)(templateObject_3||(templateObject_3=__makeTemplateObject(["\n color: ",";\n"],["\n color: ",";\n"])),(function(e){var t=e.code;return t>=200&&t<300?"var(--response-success-text-color)":t>=300&&t<400?"var(--response-redirect-text-color)":t>400?"var(--response-error-text-color)":"var(--response-info-text-color)"})),ErrorHeader=styled.header(templateObject_4||(templateObject_4=__makeTemplateObject(["\n font-weight: bold;\n margin-bottom: 10px;\n"],["\n font-weight: bold;\n margin-bottom: 10px;\n"]))),ErrorDetails=styled.code(templateObject_5||(templateObject_5=__makeTemplateObject(["\n border-left: 3px solid #ff4040;\n padding-left: 5px;\n"],["\n border-left: 3px solid #ff4040;\n padding-left: 5px;\n"]))),ResponsePanel=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,n=t.error,a=t.response,r=t.time,l=a||n&&n.response,o=l&&l.data&&l.data.length||0;return e=o>1e6?(o/1e6).toFixed(2)+" MB":o>1e3?(o/1e3).toFixed(2)+" KB":o+" B",n&&!n.response||!l?React.createElement(React.Fragment,null,React.createElement(ErrorHeader,null," Could not get any response "),React.createElement(ErrorDetails,null,n&&n.message||"Unknown error"),React.createElement("br",null),React.createElement(ErrorHeader,null," Why this might have happened:"),React.createElement("div",null," - CORS is misconfigured on the server"),React.createElement("div",null," - The server couldn't send a response"),React.createElement("div",null," - No internet access"),React.createElement("div",null," - Documentation issue - contact API owner"),React.createElement("div",null," - Misconfigured security definition")):l?React.createElement(React.Fragment,null,React.createElement(ResponseBadges,null,React.createElement(ResponseBadge,{code:l.status},React.createElement("span",null," Status: "),l.status," ",l.statusText),React.createElement(ResponseBadgeBase,null,React.createElement("span",null," Time: "),r,"ms"),React.createElement(ResponseBadgeBase,null,React.createElement("span",null," Size: "),e)),React.createElement("div",null,React.createElement(ResponseHeadersList,{headers:l.headers}),React.createElement(ResponseBody,{response:l}))):React.createElement(React.Fragment,null,"Something went wrong")}}),t}(React.PureComponent);export{ResponsePanel};
|
|
2
2
|
//# sourceMappingURL=ResponsePanel.js.map
|
|
@@ -7,5 +7,5 @@ interface ServerVariableProps {
|
|
|
7
7
|
description?: string;
|
|
8
8
|
defaultValue: string;
|
|
9
9
|
}
|
|
10
|
-
export default function ServerVariable(
|
|
10
|
+
export default function ServerVariable({ name, value, description, variableEnum, onChange, defaultValue, }: ServerVariableProps): JSX.Element;
|
|
11
11
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__makeTemplateObject}from"tslib";import
|
|
1
|
+
import{__makeTemplateObject}from"tslib";import React,{useCallback}from"react";import styled from"styled-components";import{Markdown}from"../../redoc-lib";import{FormControl,FormLabel}from"../common/form";import{TextField}from"../common/TextField";import{TryItDropdown}from"./styled";export default function ServerVariable(e){var t=e.name,r=e.value,a=e.description,o=e.variableEnum,l=e.onChange,n=e.defaultValue,m=useCallback((function(e){return l(e.target.value)}),[l]),c=useCallback((function(e){return l(e.value)}),[l]),d=o?o.map((function(e,t){return{value:e,idx:t}})):[];return React.createElement(FormControl,null,React.createElement(FormLabel,null,t,":"),d&&d.length?React.createElement(TryItDropdown,{fullWidth:!0,variant:"dark",value:r,options:d,onChange:c}):React.createElement(TextField,{fullWidth:!0,value:r,onChange:m,placeholder:n,panel:"try-it"}),a&&React.createElement(StyledMarkdown,{compact:!0,source:a}))}var templateObject_1,StyledMarkdown=styled(Markdown)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-top: 5px;\n color: #d0d0d0;\n"],["\n margin-top: 5px;\n color: #d0d0d0;\n"])));
|
|
2
2
|
//# sourceMappingURL=ServerVariable.js.map
|
|
@@ -22,3 +22,6 @@ export declare const getOAuth2TokenEndpointAuthHeader: ({ authMethod, clientId,
|
|
|
22
22
|
clientSecret: string;
|
|
23
23
|
}) => Record<'Authorization', string> | GenericObject;
|
|
24
24
|
export declare function encodeSample(sample: ExampleModel, properties: RequestBodyProps['properties']): string;
|
|
25
|
+
export declare const getStorageExampleKey: (operationId: string, activeMimeType: string, activeExample?: string | false | undefined, examples?: {
|
|
26
|
+
[name: string]: ExampleModel;
|
|
27
|
+
} | undefined) => string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign}from"tslib";import merge from"deepmerge";import{MediaTypes}from"../../types";import{arrayMergeStrategy}from"../../services/utils";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 u=o[i];setParameterValue(n,u,e.values[n][u])}}}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 u=o.split(";").find((function(e){return e.trim().startsWith(r)}));if(u)return u.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,u,s,l;i&&(e=__assign(__assign({},e),{url:decodeURIComponent(e.url)})),n&&(e.headers["X-User-Agent"]="Redocly Try it API console");var c=(null===(u=null===(o=null==r?void 0:r.requestValues)||void 0===o?void 0:o.header)||void 0===u?void 0:u.authorization)||(null===(l=null===(s=null==r?void 0:r.requestValues)||void 0===s?void 0:s.header)||void 0===l?void 0:l.Authorization);return!t&&c&&(e.headers.Authorization=c),a?a(e,r):e}};export function requiredValidator(e){if(!e)return"Field is required"}var getCookie=function(e){var r=document.cookie.match("\\b"+e+"=([^;]*)\\b");return r?r[1]:void 0};export function fromCookie(e){if("cookie"===e.in)return getCookie(e.name||"")}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)}:{}};export function encodeSample(e,r){if(!e)return"";if(e.mime===MediaTypes.URL_ENCODED)return e.value;var t=e.value,a=r?merge(t,r,{arrayMerge:arrayMergeStrategy}):t;return JSON.stringify(a,null,2)}
|
|
1
|
+
import{__assign}from"tslib";import merge from"deepmerge";import{MediaTypes}from"../../types";import{arrayMergeStrategy}from"../../services/utils";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 u=o[i];setParameterValue(n,u,e.values[n][u])}}}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 u=o.split(";").find((function(e){return e.trim().startsWith(r)}));if(u)return u.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,u,s,l;i&&(e=__assign(__assign({},e),{url:decodeURIComponent(e.url)})),n&&(e.headers["X-User-Agent"]="Redocly Try it API console");var c=(null===(u=null===(o=null==r?void 0:r.requestValues)||void 0===o?void 0:o.header)||void 0===u?void 0:u.authorization)||(null===(l=null===(s=null==r?void 0:r.requestValues)||void 0===s?void 0:s.header)||void 0===l?void 0:l.Authorization);return!t&&c&&(e.headers.Authorization=c),a?a(e,r):e}};export function requiredValidator(e){if(!e)return"Field is required"}var getCookie=function(e){var r=document.cookie.match("\\b"+e+"=([^;]*)\\b");return r?r[1]:void 0};export function fromCookie(e){if("cookie"===e.in)return getCookie(e.name||"")}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)}:{}};export function encodeSample(e,r){if(!e)return"";if(e.mime===MediaTypes.URL_ENCODED)return e.value;var t=e.value,a=r?merge(t,r,{arrayMerge:arrayMergeStrategy}):t;return JSON.stringify(a,null,2)}export var getStorageExampleKey=function(e,r,t,a){var n=e+"_"+r;return t&&a&&Object.keys(a).includes(t)&&(n+="_"+t),n};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { DropdownOption } from '../../../../components/common/Dropdown';
|
|
3
|
+
import type { SchemaModel } from '../../services/models';
|
|
4
|
+
interface DiscriminatorDropdownProps {
|
|
5
|
+
parent: SchemaModel;
|
|
6
|
+
enumValues: string[];
|
|
7
|
+
onChange?: (idx: number) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const DiscriminatorDropdown: ({ parent, enumValues, onChange }: DiscriminatorDropdownProps) => JSX.Element | null;
|
|
10
|
+
export declare function sortOptions(options: DropdownOption[], enumValues: string[]): DropdownOption[];
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{observer}from"mobx-react";import React,{useCallback,useMemo}from"react";import{strikethroughText}from"../../utils/string";import{SchemaDiscriminatorDropdown}from"../../../../components/common/Dropdown";export var DiscriminatorDropdown=observer((function(e){var r=e.parent,o=e.enumValues,t=e.onChange;if(void 0===r.oneOf)return null;var n=r.oneOf.map((function(e,r){return{value:e.schema.deprecated?strikethroughText(e.title)+" (deprecated)":e.title,idx:r}})),a=useCallback((function(e){var o=e.idx;void 0!==o&&(t?t(o):r.activateOneOf(o))}),[t,r]),i=useMemo((function(){return sortOptions(n,o)}),[o,n]),c=i[r.activeOneOf].value;return React.createElement(SchemaDiscriminatorDropdown,{className:"discriminator-dropdown",dense:!0,value:c,options:i,onChange:a,ariaLabel:"Example"})}));export function sortOptions(e,r){if(0===r.length)return e;var o={};return r.forEach((function(e,r){o[e]=r})),e.sort((function(e,r){return o[e.value]>o[r.value]?1:-1}))}
|
|
2
|
+
//# sourceMappingURL=DiscriminatorDropdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DiscriminatorDropdown } from './DiscriminatorDropdown';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__decorate,__extends,__makeTemplateObject}from"tslib";import*as React from"react";import{observer}from"mobx-react";import styled from"styled-components";import{PatternLabel,RecursiveLabel,TypeFormat,TypeName,TypePrefix,TypeTitle,ToggleButton,FieldLabel,ExampleValue}from"../../common-elements/fields";import{serializeParameterValue}from"../../utils";import{ExternalDocumentation}from"../ExternalDocumentation/ExternalDocumentation";import{Markdown}from"../Markdown";import{Badge}from"../../common-elements/";import{l}from"../../services/Labels";import{OptionsContext}from"../OptionsProvider";import{FieldDetail}from"./FieldDetail";import{ConstraintsView}from"./FieldContstraints";import{Extensions}from"./Extensions";import{EnumValues}from"./EnumValues";var MAX_PATTERN_LENGTH=45,FieldDetails=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:{patternShown:!1}}),Object.defineProperty(t,"togglePattern",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({patternShown:!t.state.patternShown})}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.showExamples,a=e.field,n=e.renderDiscriminatorSwitch,r=this.state.patternShown,i=this.context,m=i.enumSkipQuotes,o=i.hideSchemaTitles,c=i.hideSchemaPattern,p=a.schema,s=a.description,u=a.example,d=a.deprecated,E=a.examples,b=!!m||"header"===a.in,f=null;if(t&&(void 0!==u||void 0!==E))if(void 0!==E)f=React.createElement(Examples,{field:a});else{var _=!!a.in;f=React.createElement(FieldDetail,{label:"example",value:getSerializedValue(a,a.example),raw:_})}return React.createElement("div",null,React.createElement(TypeWrapper,null,React.createElement(TypePrefix,null,p.typePrefix),React.createElement(TypeName,null,p.displayType),p.displayFormat&&React.createElement(TypeFormat,null," ","<",p.displayFormat,">"," "),p.contentEncoding&&React.createElement(TypeFormat,null," ","<",p.contentEncoding,">"," "),p.contentMediaType&&React.createElement(TypeFormat,null," ","<",p.contentMediaType,">"," "),p.title&&!o&&React.createElement(TypeTitle,null," (",p.title,") "),React.createElement(ConstraintsView,{constraints:p.constraints}),p.pattern&&!c&&React.createElement(React.Fragment,null,React.createElement(PatternLabel,null,r||p.pattern.length<MAX_PATTERN_LENGTH?p.pattern:p.pattern.substr(0,MAX_PATTERN_LENGTH)+"..."),p.pattern.length>MAX_PATTERN_LENGTH&&React.createElement(ToggleButton,{onClick:this.togglePattern},r?"Hide pattern":"Show pattern"))," ",p.isCircular&&React.createElement(RecursiveLabel,null,l("recursive"))),d&&React.createElement("div",null,React.createElement(Badge,{deprecated:!0,style:{marginLeft:0}}," ",l("deprecated")," ")),React.createElement(FieldDetail,{raw:b,label:"default",value:p.default}),React.createElement("div",null,React.createElement(Markdown,{compact:!0,source:s})),!n&&React.createElement(EnumValues,{type:p.type,values:p["x-enumDescriptions"]||p.enum})," ",f,React.createElement(Extensions,{extensions:__assign(__assign({},a.extensions),p.extensions)}),p.externalDocs&&React.createElement(ExternalDocumentation,{externalDocs:p.externalDocs,compact:!0}),n
|
|
1
|
+
import{__assign,__decorate,__extends,__makeTemplateObject}from"tslib";import*as React from"react";import{observer}from"mobx-react";import styled from"styled-components";import{PatternLabel,RecursiveLabel,TypeFormat,TypeName,TypePrefix,TypeTitle,ToggleButton,FieldLabel,ExampleValue}from"../../common-elements/fields";import{serializeParameterValue}from"../../utils";import{ExternalDocumentation}from"../ExternalDocumentation/ExternalDocumentation";import{Markdown}from"../Markdown";import{Badge}from"../../common-elements/";import{l}from"../../services/Labels";import{OptionsContext}from"../OptionsProvider";import{FieldDetail}from"./FieldDetail";import{ConstraintsView}from"./FieldContstraints";import{Extensions}from"./Extensions";import{EnumValues}from"./EnumValues";var MAX_PATTERN_LENGTH=45,FieldDetails=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:{patternShown:!1}}),Object.defineProperty(t,"togglePattern",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({patternShown:!t.state.patternShown})}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.showExamples,a=e.field,n=e.renderDiscriminatorSwitch,r=this.state.patternShown,i=this.context,m=i.enumSkipQuotes,o=i.hideSchemaTitles,c=i.hideSchemaPattern,p=a.schema,s=a.description,u=a.example,d=a.deprecated,E=a.examples,b=!!m||"header"===a.in,f=null;if(t&&(void 0!==u||void 0!==E))if(void 0!==E)f=React.createElement(Examples,{field:a});else{var _=!!a.in;f=React.createElement(FieldDetail,{label:"example",value:getSerializedValue(a,a.example),raw:_})}return React.createElement("div",null,React.createElement(TypeWrapper,null,React.createElement(TypePrefix,null,p.typePrefix),React.createElement(TypeName,null,p.displayType),p.displayFormat&&React.createElement(TypeFormat,null," ","<",p.displayFormat,">"," "),p.contentEncoding&&React.createElement(TypeFormat,null," ","<",p.contentEncoding,">"," "),p.contentMediaType&&React.createElement(TypeFormat,null," ","<",p.contentMediaType,">"," "),p.title&&!o&&React.createElement(TypeTitle,null," (",p.title,") "),React.createElement(ConstraintsView,{constraints:p.constraints}),p.pattern&&!c&&React.createElement(React.Fragment,null,React.createElement(PatternLabel,null,r||p.pattern.length<MAX_PATTERN_LENGTH?p.pattern:p.pattern.substr(0,MAX_PATTERN_LENGTH)+"..."),p.pattern.length>MAX_PATTERN_LENGTH&&React.createElement(ToggleButton,{onClick:this.togglePattern},r?"Hide pattern":"Show pattern"))," ",p.isCircular&&React.createElement(RecursiveLabel,null,l("recursive"))),d&&React.createElement("div",null,React.createElement(Badge,{deprecated:!0,style:{marginLeft:0}}," ",l("deprecated")," ")),React.createElement(FieldDetail,{raw:b,label:"default",value:p.default}),React.createElement("div",null,React.createElement(Markdown,{compact:!0,source:s})),!n&&React.createElement(EnumValues,{type:p.type,values:p["x-enumDescriptions"]||p.enum})," ",f,React.createElement(Extensions,{extensions:__assign(__assign({},a.extensions),p.extensions)}),p.externalDocs&&React.createElement(ExternalDocumentation,{externalDocs:p.externalDocs,compact:!0}),null==n?void 0:n(this.props),a.const&&React.createElement(FieldDetail,{label:"const",value:a.const})||null)}}),Object.defineProperty(t,"contextType",{enumerable:!0,configurable:!0,writable:!0,value:OptionsContext}),t=__decorate([observer],t)}(React.PureComponent);export{FieldDetails};function Examples(e){var t=e.field;return t.examples?React.createElement(React.Fragment,null,React.createElement(FieldLabel,null," ",l("examples"),": "),React.createElement(ExamplesList,null,Object.entries(t.examples).map((function(e){var a=e[0],n=e[1];return React.createElement(ExampleWrap,{key:a},React.createElement(ExampleSummary,null,n.summary||a," "),n.description&&React.createElement(ExampleDescription,null,n.description," "),React.createElement(ExampleValue,null,getSerializedValue(t,n.value)))})))):null}function getSerializedValue(e,t){return e.in?decodeURIComponent(serializeParameterValue(e,t)):t}var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,ExampleDescription=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject([""],[""]))),ExampleSummary=styled.label(templateObject_2||(templateObject_2=__makeTemplateObject(["\n display: block;\n font-size: inherit;\n margin-bottom: 0.2em;\n font-weight: var(--font-weight-bold);\n"],["\n display: block;\n font-size: inherit;\n margin-bottom: 0.2em;\n font-weight: var(--font-weight-bold);\n"]))),ExampleWrap=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n margin-top: 1em;\n font-size: var(--field-name-font-size);\n"],["\n margin-top: 1em;\n font-size: var(--field-name-font-size);\n"]))),ExamplesList=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding-left: 1.5em;\n margin-bottom: 1em;\n"],["\n padding-left: 1.5em;\n margin-bottom: 1em;\n"]))),TypeWrapper=styled.div(templateObject_5||(templateObject_5=__makeTemplateObject(["\n line-height: 20px;\n"],["\n line-height: 20px;\n"])));
|
|
2
2
|
//# sourceMappingURL=FieldDetails.js.map
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
import type { FieldModel, RequestBodyModel, MediaContentModel } from '../../services/models';
|
|
3
3
|
export interface ParametersProps {
|
|
4
4
|
parameters?: FieldModel[];
|
|
5
5
|
body?: RequestBodyModel;
|
|
6
6
|
}
|
|
7
|
-
export declare
|
|
8
|
-
orderParams(params: FieldModel[]): Record<string, FieldModel[]>;
|
|
9
|
-
render(): JSX.Element | null;
|
|
10
|
-
}
|
|
7
|
+
export declare const Parameters: ({ body, parameters }: ParametersProps) => JSX.Element | null;
|
|
11
8
|
export declare function BodyContent({ content, description, }: {
|
|
12
9
|
content: MediaContentModel;
|
|
13
10
|
description?: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,
|
|
1
|
+
import{__assign,__makeTemplateObject}from"tslib";import React from"react";import styled from"styled-components";import{DropdownOrLabel}from"../DropdownOrLabel/DropdownOrLabel";import{FieldsGroupHeader}from"../../common-elements";import{MediaTypesSwitch}from"../MediaTypeSwitch/MediaTypesSwitch";import{Schema}from"../Schema";import{Markdown}from"../Markdown";import{ConstraintsView}from"../Fields/FieldContstraints";import{SchemaMimeTypeDropdown}from"../../../../components/common/Dropdown/styled";import{ParametersGroup}from"./ParametersGroup";function safePush(e,t,r){e[t]||(e[t]=[]),e[t].push(r)}var PARAM_PLACES=["path","query","cookie","header"];export var Parameters=function(e){var t=e.body,r=e.parameters,o=void 0===r?[]:r;if(void 0===t&&void 0===o)return null;var n,a=(n={},o.forEach((function(e){safePush(n,e.in,e)})),n),i=o.length>0?PARAM_PLACES:[],c=t&&t.content,m=t&&t.description;return React.createElement(React.Fragment,null,i.map((function(e){return React.createElement(ParametersGroup,{key:e,place:e,parameters:a[e]})})),c&&React.createElement(BodyContent,{content:c,description:m}))};function DropdownWithinHeader(e){return React.createElement(FieldsGroupHeader,{key:"header","data-cy":"request-body-header"},"Request Body schema: ",React.createElement(DropdownOrLabel,__assign({},e,{Dropdown:SchemaMimeTypeDropdown})))}export function BodyContent(e){var t=e.content,r=e.description,o=t.isRequestType;return React.createElement(MediaTypesSwitch,{content:t,renderDropdown:DropdownWithinHeader},(function(e){var t=e.schema,n=e.examples,a=e.operation;return React.createElement(React.Fragment,null,(void 0!==r||(null==t?void 0:t.constraints))&&React.createElement(Description,null,void 0!==r&&React.createElement(Markdown,{source:r}),"object"===(null==t?void 0:t.type)&&React.createElement(ConstraintsView,{constraints:(null==t?void 0:t.constraints)||[]})),React.createElement(Schema,{skipReadOnly:o,skipWriteOnly:!o,key:"schema",schema:t,examples:n,operation:a}))}))}var templateObject_1,Description=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-bottom: calc(var(--spacing-unit) * 4);\n"],["\n margin-bottom: calc(var(--spacing-unit) * 4);\n"])));
|
|
2
2
|
//# sourceMappingURL=Parameters.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { MediaTypeSamplesProps } from './types';
|
|
3
|
-
export declare const MediaTypeSamples: ({ mediaType, onlyDefaultSample, properties }: MediaTypeSamplesProps) => JSX.Element;
|
|
3
|
+
export declare const MediaTypeSamples: ({ mediaType, onlyDefaultSample, properties, onChange }: MediaTypeSamplesProps) => JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign}from"tslib";import React from"react";import merge from"deepmerge";import{observer}from"mobx-react";import{NoSampleLabel}from"../../../../components/shared";import{ExampleSwitch,useExampleKey}from"../../../../components/Samples";import{arrayMergeStrategy}from"../../../../services/utils";import{Markdown}from"../Markdown";import{Example}from"./Example";import{ExampleWrapper}from"./styled";export var MediaTypeSamples=observer((function(e){var a=e.mediaType,r=e.onlyDefaultSample,t=e.properties,m=a.examples||{},
|
|
1
|
+
import{__assign}from"tslib";import React from"react";import merge from"deepmerge";import{observer}from"mobx-react";import{NoSampleLabel}from"../../../../components/shared";import{ExampleSwitch,useExampleKey}from"../../../../components/Samples";import{arrayMergeStrategy}from"../../../../services/utils";import{Markdown}from"../Markdown";import{Example}from"./Example";import{ExampleWrapper}from"./styled";export var MediaTypeSamples=observer((function(e){var a=e.mediaType,r=e.onlyDefaultSample,t=e.properties,m=e.onChange,l=a.examples||{},p=a.name,o=Object.keys(l),n=useExampleKey(a.operation,l),c=n.exampleKey,i=n.defaultExampleName,s=1===o.length?Object.values(l)[0]:l[c];if(!o.length)return React.createElement(NoSampleLabel,null,"No sample");var E=t?__assign(__assign({},s),{value:merge(s.value,t,{arrayMerge:arrayMergeStrategy})}):s,x=E.description;return i&&r?React.createElement(React.Fragment,null,E.description&&React.createElement(Markdown,{source:E.description}),React.createElement(Example,{example:E,mimeType:p})):React.createElement(React.Fragment,null,React.createElement(ExampleSwitch,{examples:l,exampleKey:c,onChange:m}),React.createElement(ExampleWrapper,null,x&&React.createElement(Markdown,{source:x}),React.createElement(Example,{example:E,mimeType:p})))}));
|
|
2
2
|
//# sourceMappingURL=MediaTypeSamples.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__rest}from"tslib";import{observer}from"mobx-react";import React from"react";import{DropdownOrLabel}from"../DropdownOrLabel/DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch/MediaTypesSwitch";import{MimeLabel}from"../../../../components/shared";import{Dropdown}from"../../../../components/common/Dropdown";import{MediaTypeSamples}from"./MediaTypeSamples";import{DropdownWrapper}from"./styled";export var PayloadSamples=observer((function(e){var r=e.onlyDefaultMimeType,o=e.operation,t=e.content,n=__rest(e,["onlyDefaultMimeType","operation","content"]),a=r&&(null==o?void 0:o.defaultMimeType);return React.createElement(MediaTypesSwitch,{content:t,renderDropdown:a?function(){return null}:function(e){return React.createElement(DropdownWrapper,null,React.createElement(DropdownOrLabel,__assign({Label:MimeLabel,Dropdown:Dropdown,variant:"dark",fullWidth:!0},e)))}},(function(e){return React.createElement(MediaTypeSamples,__assign({key:"samples",mediaType:e},n))}))}));
|
|
1
|
+
import{__assign,__rest}from"tslib";import{observer}from"mobx-react";import React from"react";import{DropdownOrLabel}from"../DropdownOrLabel/DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch/MediaTypesSwitch";import{MimeLabel}from"../../../../components/shared";import{Dropdown}from"../../../../components/common/Dropdown";import{MediaTypeSamples}from"./MediaTypeSamples";import{DropdownWrapper}from"./styled";export var PayloadSamples=observer((function(e){var r=e.onlyDefaultMimeType,o=e.operation,t=e.content,n=__rest(e,["onlyDefaultMimeType","operation","content"]),a=r&&(null==o?void 0:o.defaultMimeType),p=function(e){return t.activateExampleName(e)};return React.createElement(MediaTypesSwitch,{content:t,renderDropdown:a?function(){return null}:function(e){return React.createElement(DropdownWrapper,null,React.createElement(DropdownOrLabel,__assign({Label:MimeLabel,Dropdown:Dropdown,variant:"dark",fullWidth:!0},e)))}},(function(e){return React.createElement(MediaTypeSamples,__assign({key:"samples",mediaType:e},n,{onChange:p}))}))}));
|
|
2
2
|
//# sourceMappingURL=PayloadSamples.js.map
|
|
@@ -15,6 +15,7 @@ export interface MediaTypeSamplesProps {
|
|
|
15
15
|
mediaType: MediaTypeModel;
|
|
16
16
|
onlyDefaultSample?: boolean;
|
|
17
17
|
properties?: GenericObject;
|
|
18
|
+
onChange: (key: any) => void;
|
|
18
19
|
}
|
|
19
20
|
export interface PayloadSamplesProps extends Pick<MediaTypeSamplesProps, 'properties'> {
|
|
20
21
|
content: MediaContentModel;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__rest}from"tslib";import*as React from"react";import{observer}from"mobx-react";import{SourceCode}from"@redocly/theme/SourceCode";import{DropdownOrLabel}from"../DropdownOrLabel/DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch/MediaTypesSwitch";import{MimeLabel}from"../../../../components/shared";import{Dropdown}from"../../../../components/common/Dropdown";import{DropdownWrapper}from"../../../src/components/PayloadSamples";import{ExampleSwitch,useExampleKey}from"../../../../components/Samples";export var CodeSample=observer((function(e){var o,r=e.onlyDefaultSample,t=e.onlyDefaultMimeType,a=e.content,n=__rest(e,["onlyDefaultSample","onlyDefaultMimeType","content"]),p=function(e){return n.source?React.createElement(SourceCode,{lang:n.lang,source:n.source,withCopyButton:!0}):React.createElement(SourceCode,{lang:n.lang,externalSource:{sample:n.externalSample,exampleName:e,operation:n.operation,pathParams:n.pathParams,properties:n.properties},withCopyButton:!0})};if(void 0===a||null!=n.source)return p();var l=t&&(null===(o=n.operation)||void 0===o?void 0:o.defaultMimeType),m=a&&a.mediaTypes.length>1&&!l,
|
|
1
|
+
import{__assign,__rest}from"tslib";import*as React from"react";import{observer}from"mobx-react";import{SourceCode}from"@redocly/theme/SourceCode";import{DropdownOrLabel}from"../DropdownOrLabel/DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch/MediaTypesSwitch";import{MimeLabel}from"../../../../components/shared";import{Dropdown}from"../../../../components/common/Dropdown";import{DropdownWrapper}from"../../../src/components/PayloadSamples";import{ExampleSwitch,useExampleKey}from"../../../../components/Samples";export var CodeSample=observer((function(e){var o,r=e.onlyDefaultSample,t=e.onlyDefaultMimeType,a=e.content,n=__rest(e,["onlyDefaultSample","onlyDefaultMimeType","content"]),p=function(e){return n.source?React.createElement(SourceCode,{lang:n.lang,source:n.source,withCopyButton:!0}):React.createElement(SourceCode,{lang:n.lang,externalSource:{sample:n.externalSample,exampleName:e,operation:n.operation,pathParams:n.pathParams,properties:n.properties},withCopyButton:!0})};if(void 0===a||null!=n.source)return p();var l=t&&(null===(o=n.operation)||void 0===o?void 0:o.defaultMimeType),m=a&&a.mediaTypes.length>1&&!l,c=function(e){return a.activateExampleName(e)};return React.createElement(MediaTypesSwitch,{content:a,renderDropdown:m?function(e){return React.createElement(DropdownWrapper,null,React.createElement(DropdownOrLabel,__assign({Label:MimeLabel,Dropdown:Dropdown,variant:"dark",fullWidth:!0},e)))}:function(){return null}},(function(e){var o=e.examples||{},t=Object.keys(o),a=useExampleKey(e.operation,o),n=a.exampleKey,l=a.defaultExampleName;return t.length&&1!==t.length?l&&r?p(n):React.createElement(React.Fragment,null,React.createElement(ExampleSwitch,{examples:o,exampleKey:n,onChange:c}),p(n)):p()}))}));
|
|
2
2
|
//# sourceMappingURL=CodeSample.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React,{useContext}from"react";import{observer}from"mobx-react";import{PropertiesTable,PropertiesTableWrap,PropertiesTableCaption}from"../../common-elements/fields-layout";import{Field}from"../Fields/Field";import{mapWithLast}from"../../utils";import{OptionsContext}from"../OptionsProvider";import{DiscriminatorDropdown}from"../DiscriminatorDropdown";export var ObjectSchema=observer((function(e){var t=e.schema,r=t.fields,i=void 0===r?[]:r,a=t.title,n=e.showTitle,o=e.discriminator,l=e.level,m=e.skipWriteOnly,s=e.skipReadOnly,p=useContext(OptionsContext),c=p.expandSingleSchemaField,d=p.showObjectSchemaExamples,u=p.schemaExpansionLevel,h=s||m?i.filter((function(e){return!(s&&e.schema.readOnly||m&&e.schema.writeOnly)})):i,f=c&&1===h.length||u>=l;return React.createElement(PropertiesTableWrap,null,React.createElement(PropertiesTable,null,n&&React.createElement(PropertiesTableCaption,null,a),React.createElement("tbody",null,mapWithLast(h,(function(e,t){return React.createElement(Field,{key:e.name,isLast:t,field:e,expandByDefault:f,renderDiscriminatorSwitch:(null==o?void 0:o.fieldName)===e.name&&(null==o?void 0:o.parentSchema)?function(){return React.createElement(DiscriminatorDropdown,{parent:o.parentSchema,enumValues:e.schema.enum,onChange:null==o?void 0:o.onChange})}:void 0,className:e.expanded?"expanded":void 0,showExamples:d,skipReadOnly:s,skipWriteOnly:m,showTitle:n,level:l})})))))}));
|
|
2
2
|
//# sourceMappingURL=ObjectSchema.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__rest}from"tslib";import
|
|
1
|
+
import{__assign,__rest}from"tslib";import React,{useCallback}from"react";import{observer}from"mobx-react";import{BadgeStyle,OneOfButton as StyledOneOfButton,OneOfList,Wrapper}from"../../common-elements/schema";import{OptionsContext}from"../OptionsProvider";import{Markdown}from"../Markdown";import{ConstraintsView}from"../Fields/FieldContstraints";import{Schema}from"./Schema";export var OneOfSchema=observer((function(e){var t=e.schema.oneOf,n=e.schema,r=__rest(e,["schema","schema"]);if(void 0===t)return null;var a=React.useContext(OptionsContext).hideOneOfDescription,o=t[n.activeOneOf],i=useCallback((function(e){var t;null===(t=null==n?void 0:n.oneOf)||void 0===t||t.forEach((function(t){t.discriminatorProp===o.discriminatorProp&&t.activateOneOf(e)}))}),[o.discriminatorProp,null==n?void 0:n.oneOf]);return React.createElement("div",null,React.createElement(Wrapper,null,React.createElement("span",null,n.oneOfType,":"),React.createElement(OneOfList,null,t.map((function(e,t){return React.createElement(StyledOneOfButton,{key:e.pointer,selected:t===n.activeOneOf,deprecated:e.deprecated,onClick:function(){return n.activateOneOf(t)},"data-cy":"oneOf"+e.title||e.typePrefix+e.displayType},e.title||e.typePrefix+e.displayType)})))),o.deprecated&&React.createElement(BadgeStyle,{deprecated:!0},"Deprecated"),React.createElement(Wrapper,null,!a&&o.description&&React.createElement(Markdown,{compact:!0,source:o.description}),React.createElement(ConstraintsView,{constraints:o.constraints})),React.createElement(Schema,__assign({},r,{schema:o,onDiscriminatorChange:i})))}));
|
|
2
2
|
//# sourceMappingURL=OneOfSchema.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { SchemaProps } from './types';
|
|
3
|
-
export declare const Schema: ({ schema, ...rest }: Partial<SchemaProps>) => JSX.Element | null;
|
|
3
|
+
export declare const Schema: ({ schema, onDiscriminatorChange, ...rest }: Partial<SchemaProps>) => JSX.Element | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign,__rest}from"tslib";import*as React from"react";import{observer}from"mobx-react";import{FieldDetails}from"../Fields/FieldDetails";import{ArraySchema}from"./ArraySchema";import{ObjectSchema}from"./ObjectSchema";import{OneOfSchema}from"./OneOfSchema";import{RecursiveSchema}from"./RecursiveSchema";export var Schema=observer((function(e){var r,a=e.schema,t=__rest(e,["schema"]);if(!a)return React.createElement("em",null," Schema not provided ");var
|
|
1
|
+
import{__assign,__rest}from"tslib";import*as React from"react";import{observer}from"mobx-react";import{FieldDetails}from"../Fields/FieldDetails";import{ArraySchema}from"./ArraySchema";import{ObjectSchema}from"./ObjectSchema";import{OneOfSchema}from"./OneOfSchema";import{RecursiveSchema}from"./RecursiveSchema";export var Schema=observer((function(e){var r,a=e.schema,t=e.onDiscriminatorChange,i=__rest(e,["schema","onDiscriminatorChange"]);if(!a)return React.createElement("em",null," Schema not provided ");var c=a.type,n=a.oneOf,m=a.discriminatorProp,o=a.isCircular,s=(i.level||0)+1;if(o)return React.createElement(RecursiveSchema,{schema:a});if(void 0!==m){if(!n||!n.length)return console.warn("Looks like you are using discriminator wrong: you don't have any definition inherited from the "+a.title),null;var l=n[a.activeOneOf];return l.isCircular?React.createElement(RecursiveSchema,{schema:l}):React.createElement(ObjectSchema,__assign({},i,{level:s,schema:l,discriminator:{fieldName:m,parentSchema:a,onChange:t}}))}if(void 0!==n)return React.createElement(OneOfSchema,__assign({},i,{schema:a}));var h=Array.isArray(c)?c:[c];if(h.includes("object")){if(null===(r=a.fields)||void 0===r?void 0:r.length)return React.createElement(ObjectSchema,__assign({},i,{level:s,schema:a}))}else if(h.includes("array"))return React.createElement(ArraySchema,__assign({},i,{level:s,schema:a}));var d={schema:a,name:"",required:!1,description:a.description,externalDocs:a.externalDocs,deprecated:!1,toggle:function(){return null},expanded:!1};return React.createElement("div",null,React.createElement(FieldDetails,{field:d}))}));
|
|
2
2
|
//# sourceMappingURL=Schema.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export*from"./Schema";export*from"./ObjectSchema";export*from"./OneOfSchema";export*from"./ArraySchema";
|
|
1
|
+
export*from"./Schema";export*from"./ObjectSchema";export*from"./OneOfSchema";export*from"./ArraySchema";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,16 +1,22 @@
|
|
|
1
|
-
import type { SchemaModel } from '../../services/models';
|
|
1
|
+
import type { ExampleModel, OperationModel, SchemaModel } from '../../services/models';
|
|
2
2
|
export interface SchemaOptions {
|
|
3
3
|
showTitle?: boolean;
|
|
4
4
|
skipReadOnly?: boolean;
|
|
5
5
|
skipWriteOnly?: boolean;
|
|
6
6
|
level?: number;
|
|
7
|
+
examples?: {
|
|
8
|
+
[name: string]: ExampleModel;
|
|
9
|
+
};
|
|
10
|
+
operation?: OperationModel;
|
|
7
11
|
}
|
|
8
12
|
export interface SchemaProps extends SchemaOptions {
|
|
9
13
|
schema: SchemaModel;
|
|
14
|
+
onDiscriminatorChange?: (idx: number) => void;
|
|
10
15
|
}
|
|
11
|
-
export interface ObjectSchemaProps extends SchemaProps {
|
|
16
|
+
export interface ObjectSchemaProps extends Omit<SchemaProps, 'onDiscriminatorChange'> {
|
|
12
17
|
discriminator?: {
|
|
13
18
|
fieldName: string;
|
|
14
19
|
parentSchema: SchemaModel;
|
|
20
|
+
onChange?: (idx: number) => void;
|
|
15
21
|
};
|
|
16
22
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__extends,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{PanelBody}from"@redocly/theme";import{SamplesMiddlePanel,SamplesPanel,Row,Section}from"../../common-elements";import{MediaTypeModel}from"../../services";import{MediaTypeSamples}from"../PayloadSamples/MediaTypeSamples";import{Schema}from"../Schema";import{CodePanel}from"../../../../components/Panel";import{LayoutVariant}from"../../../../services/store-types";import{Markdown}from"../Markdown";var SchemaDefinition=function(e){function
|
|
1
|
+
import{__extends,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{PanelBody}from"@redocly/theme";import{SamplesMiddlePanel,SamplesPanel,Row,Section}from"../../common-elements";import{MediaTypeModel}from"../../services";import{MediaTypeSamples}from"../PayloadSamples/MediaTypeSamples";import{Schema}from"../Schema";import{CodePanel}from"../../../../components/Panel";import{LayoutVariant}from"../../../../services/store-types";import{Markdown}from"../Markdown";var SchemaDefinition=function(e){function a(){var a=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(a,"_mediaModel",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),a}return __extends(a,e),Object.defineProperty(a,"getMediaType",{enumerable:!1,configurable:!0,writable:!0,value:function(e,a){if(!e)return{};var t={schema:{$ref:e}};return a&&(t.examples={example:{$ref:a}}),t}}),Object.defineProperty(a.prototype,"mediaModel",{get:function(){var e=this.props,t=e.parser,l=e.schemaRef,n=e.exampleRef,o=e.options;return this._mediaModel||(this._mediaModel=new MediaTypeModel(t,"json",!1,a.getMediaType(l,n),o)),this._mediaModel},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"handleMediaTypeChange",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var a,t,l,n,o,i,r=null===(a=this.mediaModel.schema)||void 0===a?void 0:a.oneOf;if(r&&(null===(t=this.mediaModel)||void 0===t?void 0:t.examples)&&Object.keys(null===(l=this.mediaModel)||void 0===l?void 0:l.examples).includes(e)){var d=r.findIndex((function(a){return a.title===e}));-1!==d&&(null===(n=this.mediaModel.schema)||void 0===n||n.activateOneOf(d))}(null===(o=this.mediaModel.operation)||void 0===o?void 0:o.activeExampleName)!==e&&(null===(i=this.mediaModel.operation)||void 0===i||i.activateExampleName(e))}}),Object.defineProperty(a.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,a,t=this.props,l=t.showReadOnly,n=void 0===l||l,o=t.showWriteOnly,i=void 0!==o&&o,r=t.layout,d=t.showRightPanel;return React.createElement(Section,null,React.createElement(Row,{layout:r},React.createElement(SamplesMiddlePanel,{isStacked:r===LayoutVariant.STACKED},(null===(e=this.mediaModel.schema)||void 0===e?void 0:e.description)&&React.createElement(Description,null,React.createElement(Markdown,{source:null===(a=this.mediaModel.schema)||void 0===a?void 0:a.description})),React.createElement(StyledPanelBody,{className:"panel-default"},React.createElement(Schema,{skipWriteOnly:!i,skipReadOnly:!n,schema:this.mediaModel.schema}))),d?React.createElement(SamplesPanel,null,React.createElement(CodePanel,{className:"panel-response-samples"},React.createElement(MediaTypeSamples,{mediaType:this.mediaModel,onChange:this.handleMediaTypeChange}))):null))}}),a}(React.PureComponent);export{SchemaDefinition};var templateObject_1,templateObject_2,Description=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-bottom: var(--spacing-vertical);\n"],["\n margin-bottom: var(--spacing-vertical);\n"]))),StyledPanelBody=styled(PanelBody)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n --panel-schemas-body-padding: var(--panel-body-padding);\n --panel-body-border-local: var(--panel-border);\n"],["\n --panel-schemas-body-padding: var(--panel-body-padding);\n --panel-body-border-local: var(--panel-border);\n"])));
|
|
2
2
|
//# sourceMappingURL=SchemaDefinition.js.map
|
|
@@ -3,6 +3,7 @@ export { OperationItem } from './OperationItem';
|
|
|
3
3
|
export { SectionItem } from './SectionItem';
|
|
4
4
|
export { ContentItem } from './ContentItem';
|
|
5
5
|
export { ContentItems } from './ContentItems';
|
|
6
|
+
export { DiscriminatorDropdown } from './DiscriminatorDropdown';
|
|
6
7
|
export * from './Schema/';
|
|
7
8
|
export * from './SearchBox/SearchBox';
|
|
8
9
|
export * from './Operation/Operation';
|