@redocly/openapi-docs 3.3.18 → 3.3.20
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/dist/redocly-openapi-docs.min.js +1171 -934
- package/lib/components/ApiInfo/ApiInfo.js +1 -1
- package/lib/components/ApiInfo/Metadata.d.ts +3 -1
- package/lib/components/ApiInfo/Metadata.js +1 -1
- package/lib/components/CallbackSamples/CallbackSamples.d.ts +2 -0
- package/lib/components/CallbackSamples/CallbackSamples.js +1 -1
- package/lib/components/Callbacks/CallbackDetails.d.ts +2 -0
- package/lib/components/Callbacks/CallbackDetails.js +1 -1
- package/lib/components/Callbacks/CallbackOperation.js +1 -1
- package/lib/components/Callbacks/CallbackSummary.d.ts +3 -2
- package/lib/components/Callbacks/CallbackSummary.js +1 -1
- package/lib/components/Discriminator/Discriminator.d.ts +2 -0
- package/lib/components/Discriminator/Discriminator.js +1 -1
- package/lib/components/ExpandAllButton/ExpandAllButton.js +1 -1
- package/lib/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
- package/lib/components/OperationItem/OperationItem.js +2 -2
- package/lib/components/Overview/Overview.d.ts +8 -3
- package/lib/components/Overview/Overview.js +1 -1
- package/lib/components/PayloadSamples/Example.js +1 -1
- package/lib/components/PayloadSamples/MediaTypeSamples.js +1 -1
- package/lib/components/PayloadSamples/PayloadSamples.js +1 -1
- package/lib/components/PropertyDetails/DescriptionEnums.d.ts +1 -1
- package/lib/components/PropertyDetails/DescriptionEnums.js +1 -1
- package/lib/components/PropertyDetails/EnumValues.js +1 -1
- package/lib/components/PropertyDetails/Examples.js +1 -1
- package/lib/components/PropertyDetails/FieldDetail.d.ts +1 -0
- package/lib/components/PropertyDetails/FieldDetail.js +1 -1
- package/lib/components/PropertyDetails/FieldDetails.js +1 -1
- package/lib/components/PropertyDetails/Pattern.js +1 -1
- package/lib/components/PropertyDetails/SimpleEnums.d.ts +1 -1
- package/lib/components/PropertyDetails/SimpleEnums.js +1 -1
- package/lib/components/PropertyDetails/types.d.ts +3 -0
- package/lib/components/Replay/EmbeddedReplay.js +1 -1
- package/lib/components/Replay/Replay.js +1 -1
- package/lib/components/Request/RequestDetails.js +1 -1
- package/lib/components/Request/types.d.ts +2 -0
- package/lib/components/RequestParameters/RequestParameters.js +1 -1
- package/lib/components/RequestSamples/useCodeSamples.js +1 -1
- package/lib/components/ResponseSamples/Summary.js +1 -1
- package/lib/components/Responses/OperationResponseList.js +1 -1
- package/lib/components/Responses/ResponseHeaders.js +1 -1
- package/lib/components/RightPanel/RightPanel.js +1 -1
- package/lib/components/Schema/ObjectSchema.js +1 -1
- package/lib/components/Schema/OneOfSchema.js +1 -1
- package/lib/components/Schema/RecursiveSchema.js +1 -1
- package/lib/components/Schema/SubSchema.js +1 -1
- package/lib/components/Schema/helpers.d.ts +1 -1
- package/lib/components/Schema/helpers.js +1 -1
- package/lib/components/Security/OAuthFlow.js +1 -1
- package/lib/components/Security/SecurityFlow.js +1 -1
- package/lib/components/Security/SecurityModal.js +1 -1
- package/lib/components/ServerList/ServerList.d.ts +1 -1
- package/lib/components/ServerList/ServerList.js +1 -1
- package/lib/components/ServerList/types.d.ts +4 -1
- package/lib/components/TagItem/OperationNavigationItems.d.ts +10 -0
- package/lib/components/TagItem/OperationNavigationItems.js +37 -0
- package/lib/components/TagItem/OperationsNavigation.d.ts +1 -6
- package/lib/components/TagItem/OperationsNavigation.js +1 -40
- package/lib/components/TagItem/TagItem.js +1 -1
- package/lib/components/TagItem/styled.d.ts +2 -0
- package/lib/components/TagItem/styled.js +6 -0
- package/lib/components/TagItem/types.d.ts +5 -0
- package/lib/components/TagItem/types.js +2 -0
- package/lib/components/common/BodyContent/BodyContent.js +1 -1
- package/lib/components/common/Dropdown/Dropdown.d.ts +1 -4
- package/lib/components/common/ExpandableExample/ExpandableExample.js +1 -1
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/index.js +1 -1
- package/lib/hooks/useTranslate.d.ts +2 -0
- package/lib/hooks/useTranslate.js +2 -0
- package/lib/services/code-samples/generator.d.ts +3 -1
- package/lib/services/code-samples/generator.js +1 -1
- package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
- package/lib-esm/components/ApiInfo/Metadata.d.ts +3 -1
- package/lib-esm/components/ApiInfo/Metadata.js +1 -1
- package/lib-esm/components/CallbackSamples/CallbackSamples.d.ts +2 -0
- package/lib-esm/components/CallbackSamples/CallbackSamples.js +1 -1
- package/lib-esm/components/Callbacks/CallbackDetails.d.ts +2 -0
- package/lib-esm/components/Callbacks/CallbackDetails.js +1 -1
- package/lib-esm/components/Callbacks/CallbackOperation.js +1 -1
- package/lib-esm/components/Callbacks/CallbackSummary.d.ts +3 -2
- package/lib-esm/components/Callbacks/CallbackSummary.js +1 -1
- package/lib-esm/components/Discriminator/Discriminator.d.ts +2 -0
- package/lib-esm/components/Discriminator/Discriminator.js +1 -1
- package/lib-esm/components/ExpandAllButton/ExpandAllButton.js +1 -1
- package/lib-esm/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
- package/lib-esm/components/OperationItem/OperationItem.js +2 -2
- package/lib-esm/components/Overview/Overview.d.ts +8 -3
- package/lib-esm/components/Overview/Overview.js +1 -1
- package/lib-esm/components/PayloadSamples/Example.js +1 -1
- package/lib-esm/components/PayloadSamples/MediaTypeSamples.js +1 -1
- package/lib-esm/components/PayloadSamples/PayloadSamples.js +1 -1
- package/lib-esm/components/PropertyDetails/DescriptionEnums.d.ts +1 -1
- package/lib-esm/components/PropertyDetails/DescriptionEnums.js +1 -1
- package/lib-esm/components/PropertyDetails/EnumValues.js +1 -1
- package/lib-esm/components/PropertyDetails/Examples.js +1 -1
- package/lib-esm/components/PropertyDetails/FieldDetail.d.ts +1 -0
- package/lib-esm/components/PropertyDetails/FieldDetail.js +1 -1
- package/lib-esm/components/PropertyDetails/FieldDetails.js +1 -1
- package/lib-esm/components/PropertyDetails/Pattern.js +1 -1
- package/lib-esm/components/PropertyDetails/SimpleEnums.d.ts +1 -1
- package/lib-esm/components/PropertyDetails/SimpleEnums.js +1 -1
- package/lib-esm/components/PropertyDetails/types.d.ts +3 -0
- package/lib-esm/components/Replay/EmbeddedReplay.js +1 -1
- package/lib-esm/components/Replay/Replay.js +1 -1
- package/lib-esm/components/Request/RequestDetails.js +1 -1
- package/lib-esm/components/Request/types.d.ts +2 -0
- package/lib-esm/components/RequestParameters/RequestParameters.js +1 -1
- package/lib-esm/components/RequestSamples/useCodeSamples.js +1 -1
- package/lib-esm/components/ResponseSamples/Summary.js +1 -1
- package/lib-esm/components/Responses/OperationResponseList.js +1 -1
- package/lib-esm/components/Responses/ResponseHeaders.js +1 -1
- package/lib-esm/components/RightPanel/RightPanel.js +1 -1
- package/lib-esm/components/Schema/ObjectSchema.js +1 -1
- package/lib-esm/components/Schema/OneOfSchema.js +1 -1
- package/lib-esm/components/Schema/RecursiveSchema.js +1 -1
- package/lib-esm/components/Schema/SubSchema.js +1 -1
- package/lib-esm/components/Schema/helpers.d.ts +1 -1
- package/lib-esm/components/Schema/helpers.js +1 -1
- package/lib-esm/components/Security/OAuthFlow.js +1 -1
- package/lib-esm/components/Security/SecurityFlow.js +1 -1
- package/lib-esm/components/Security/SecurityModal.js +1 -1
- package/lib-esm/components/ServerList/ServerList.d.ts +1 -1
- package/lib-esm/components/ServerList/ServerList.js +1 -1
- package/lib-esm/components/ServerList/types.d.ts +4 -1
- package/lib-esm/components/TagItem/OperationNavigationItems.d.ts +10 -0
- package/lib-esm/components/TagItem/OperationNavigationItems.js +37 -0
- package/lib-esm/components/TagItem/OperationsNavigation.d.ts +1 -6
- package/lib-esm/components/TagItem/OperationsNavigation.js +1 -40
- package/lib-esm/components/TagItem/TagItem.js +2 -2
- package/lib-esm/components/TagItem/styled.d.ts +2 -0
- package/lib-esm/components/TagItem/styled.js +6 -0
- package/lib-esm/components/TagItem/types.d.ts +5 -0
- package/lib-esm/components/TagItem/types.js +2 -0
- package/lib-esm/components/common/BodyContent/BodyContent.js +1 -1
- package/lib-esm/components/common/Dropdown/Dropdown.d.ts +1 -4
- package/lib-esm/components/common/ExpandableExample/ExpandableExample.js +1 -1
- package/lib-esm/hooks/index.d.ts +1 -0
- package/lib-esm/hooks/index.js +1 -1
- package/lib-esm/hooks/useTranslate.d.ts +2 -0
- package/lib-esm/hooks/useTranslate.js +2 -0
- package/lib-esm/services/code-samples/generator.d.ts +3 -1
- package/lib-esm/services/code-samples/generator.js +1 -1
- package/package.json +7 -7
- package/lib/setupTests.d.ts +0 -2
- package/lib/setupTests.js +0 -2
- package/lib/testProviders.d.ts +0 -3
- package/lib/testProviders.js +0 -2
- package/lib-esm/setupTests.d.ts +0 -2
- package/lib-esm/setupTests.js +0 -2
- package/lib-esm/testProviders.d.ts +0 -3
- package/lib-esm/testProviders.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ObjectSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),common_1=require("../common"),Discriminator_1=require("../Discriminator"),store_1=require("../../jotai/store"),PropertyDetails_1=require("../PropertyDetails"),SubSchema_1=require("./SubSchema"),helpers_1=require("./helpers");function ObjectSchemaComponent({schema:e,showTitle:r,discriminator:i,level:t,skipWriteOnly:n,skipReadOnly:a,fieldParentsName:s,expandable:o,deepLink:l,required:m,disableDeepLinks:c,oneOfLevel:p}){const{fields:u=[],title:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ObjectSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),common_1=require("../common"),Discriminator_1=require("../Discriminator"),store_1=require("../../jotai/store"),PropertyDetails_1=require("../PropertyDetails"),SubSchema_1=require("./SubSchema"),helpers_1=require("./helpers"),hooks_1=require("../../hooks");function ObjectSchemaComponent({schema:e,showTitle:r,discriminator:i,level:t,skipWriteOnly:n,skipReadOnly:a,fieldParentsName:s,expandable:o,deepLink:l,required:m,disableDeepLinks:c,oneOfLevel:p}){const{fields:u=[],title:_}=e,d=(0,hooks_1.useTranslate)(),{schemasExpansionLevel:h}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),x=a||n?u.filter((e=>!(a&&e.schema.readOnly||n&&e.schema.writeOnly))):u,j=(0,helpers_1.getExpandByDefault)({required:m,level:t,schemasExpansionLevel:h});return(0,jsx_runtime_1.jsx)(SubSchema_1.SubSchema,{expandable:o,expandByDefault:j,level:t,propertyLength:x.length,deepLink:l,operationPointer:e.operationPointer,children:(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[r&&(0,jsx_runtime_1.jsx)(common_1.PropertiesTableCaption,{children:_}),x.map(((e,o)=>(0,jsx_runtime_1.jsx)(PropertyDetails_1.PropertyDetails,{isFirst:0===o,field:e,fieldParentsName:Number(t)>1?s:[],renderDiscriminatorSwitch:(null==i?void 0:i.fieldName)===e.name&&(null==i?void 0:i.parentSchema)?()=>(0,jsx_runtime_1.jsx)(Discriminator_1.Discriminator,{parent:i.parentSchema,onChange:null==i?void 0:i.onChange,activeOneOfIdx:i.activeOneOfIdx,translate:d}):void 0,skipReadOnly:a,skipWriteOnly:n,showTitle:r,level:t,disableDeepLinks:c,oneOfLevel:p},e.name)))]})})}exports.ObjectSchema=(0,react_1.memo)(ObjectSchemaComponent);
|
|
2
2
|
//# sourceMappingURL=ObjectSchema.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __rest=this&&this.__rest||function(e,t){var
|
|
1
|
+
"use strict";var __rest=this&&this.__rest||function(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OneOfSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),common_1=require("../common"),Markdown_1=require("../Markdown"),ConstraintsView_1=require("../common/ConstraintsView"),Schema_1=require("./Schema"),operation_1=require("../../jotai/operation"),SchemaSelection_1=require("../common/SchemaSelection"),useOneOfLocationIdx_1=require("./useOneOfLocationIdx"),hooks_1=require("../../hooks");function OneOfSchemaComponent(e){var{schema:{oneOf:t},schema:o,oneOfLevel:n=1}=e,r=__rest(e,["schema","schema","oneOfLevel"]);const i=(0,hooks_1.useTranslate)(),[s]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(o.operationPointer)),a=(0,useOneOfLocationIdx_1.useOneOfLocationIdx)(t,n),c=-1===a?0:a,_=t[void 0!==s.activeOneOf[o.pointer]?s.activeOneOf[o.pointer]:c];if(!_)return null;const m=t.map(((e,t)=>({label:e.title||e.typePrefix+e.displayType,value:t})));return(0,jsx_runtime_1.jsxs)(Wrapper,{children:[(0,jsx_runtime_1.jsxs)(common_1.SelectionTitle,{children:[o.oneOfType,":"]}),(0,jsx_runtime_1.jsx)(SchemaSelection_1.SchemaSelection,{options:m,pointer:o.operationPointer,schema:o,defaultOneOfIdx:c}),_.deprecated&&(0,jsx_runtime_1.jsx)(common_1.StyledBadge,{deprecated:!0,children:i("openapi.badges.deprecated","Deprecated")}),_.description&&(0,jsx_runtime_1.jsx)(StyledDescription,{source:_.description}),(0,jsx_runtime_1.jsx)(ConstraintsView_1.ConstraintsView,{constraints:_.constraints}),(0,jsx_runtime_1.jsx)(Schema_1.Schema,Object.assign({},r,{schema:_,oneOfLevel:n+1}))]})}exports.OneOfSchema=(0,react_1.memo)(OneOfSchemaComponent);const StyledDescription=(0,styled_components_1.default)(Markdown_1.Markdown)`
|
|
2
2
|
margin-top: var(--spacing-xs);
|
|
3
3
|
font-size: var(--font-size-base);
|
|
4
4
|
line-height: var(--line-height-base);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RecursiveSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common");function RecursiveSchemaComponent({schema:e}){return(0,jsx_runtime_1.jsxs)("div",{children:[(0,jsx_runtime_1.jsx)(common_1.TypeName,{children:e.displayType}),e.title&&(0,jsx_runtime_1.jsxs)(common_1.TypeTitle,{children:[" ",e.title," "]}),(0,jsx_runtime_1.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RecursiveSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common"),hooks_1=require("../../hooks");function RecursiveSchemaComponent({schema:e}){const r=(0,hooks_1.useTranslate)();return(0,jsx_runtime_1.jsxs)("div",{children:[(0,jsx_runtime_1.jsx)(common_1.TypeName,{children:e.displayType}),e.title&&(0,jsx_runtime_1.jsxs)(common_1.TypeTitle,{children:[" ",e.title," "]}),(0,jsx_runtime_1.jsxs)(common_1.RecursiveLabel,{children:[" ",r("openapi.recursive","Recursive")," "]})]})}exports.RecursiveSchema=(0,react_1.memo)(RecursiveSchemaComponent);
|
|
2
2
|
//# sourceMappingURL=RecursiveSchema.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SubSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),index_1=require("jotai/index"),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),operation_1=require("../../jotai/operation"),helpers_1=require("./helpers"),ViewNested_1=require("../ViewNested");function SubSchemaComponent({expandByDefault:e,deepLink:r,level:t,expandable:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SubSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),index_1=require("jotai/index"),theme_1=require("@redocly/theme"),utils_1=require("../../utils"),operation_1=require("../../jotai/operation"),helpers_1=require("./helpers"),ViewNested_1=require("../ViewNested"),hooks_1=require("../../hooks");function SubSchemaComponent({expandByDefault:e,deepLink:r,level:t,expandable:o=!1,isArray:i="",propertyLength:n="",children:a,operationPointer:s}){var u;const d=(0,hooks_1.useTranslate)(),p=(0,react_router_dom_1.useLocation)(),c=(0,utils_1.pathIncludesLink)(p,r),l=(0,helpers_1.extractTypeFromDeepLink)(r),[_,m]=(0,index_1.useAtom)((0,operation_1.operationStore)(s)),x=null===(u=_[l])||void 0===u?void 0:u.expandedFields[r||""],h=e=>{l&&r&&m((t=>{var o;return Object.assign(Object.assign({},t),{[l]:{expandedFields:Object.assign(Object.assign({},(null===(o=t[l])||void 0===o?void 0:o.expandedFields)||{}),{[r]:e})}})}))};(0,theme_1.useMount)((()=>{o&&(e||c)&&h(!0)}));const b=`${d("openapi.actions.show","Show")} ${1===Number(n)?"":n} ${i&&"array "}${1!==n?"properties":"property"}`;return(0,jsx_runtime_1.jsx)(ViewNested_1.ViewNested,{expandByDefault:e||c,isExpandedFromParent:x,level:t,expandable:o,onChange:()=>{h(!x)},expandText:b,children:a})}exports.SubSchema=(0,react_1.memo)(SubSchemaComponent);
|
|
2
2
|
//# sourceMappingURL=SubSchema.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SchemaProps } from './types';
|
|
2
2
|
export declare const extractTypeFromDeepLink: (str?: string) => string;
|
|
3
|
-
export declare function getExpandByDefault(
|
|
3
|
+
export declare function getExpandByDefault({ schemasExpansionLevel, level, required, }: Pick<SchemaProps, 'level' | 'required'> & {
|
|
4
4
|
schemasExpansionLevel?: number;
|
|
5
5
|
}): boolean;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getExpandByDefault=exports.extractTypeFromDeepLink=void 0;const extractTypeFromDeepLink=e=>{if(!e)return"";const t=e.match(/t=(request|response)/);return t?t[1]:""};function getExpandByDefault(e){
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getExpandByDefault=exports.extractTypeFromDeepLink=void 0;const theme_1=require("@redocly/theme"),extractTypeFromDeepLink=e=>{if(!e)return"";const t=e.match(/t=(request|response)/);return t?t[1]:""};exports.extractTypeFromDeepLink=extractTypeFromDeepLink;const DEFAULT_REQUIRE_EXPAND_LEVEL=4;function getExpandByDefault({schemasExpansionLevel:e,level:t,required:r}){const n=Number(t)-1;return(0,theme_1.isUndefined)(e)?Boolean(r)&&DEFAULT_REQUIRE_EXPAND_LEVEL>=n:e>=n}exports.getExpandByDefault=getExpandByDefault;
|
|
2
2
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OAuthFlow=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),Markdown_1=require("../Markdown"),SecuritySchemeItem_1=require("./SecuritySchemeItem"),styled_1=require("./styled");function OAuthFlowComponent({flow:e}){const t=Object.keys((null==e?void 0:e.scopes)||{});return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OAuthFlow=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),Markdown_1=require("../Markdown"),SecuritySchemeItem_1=require("./SecuritySchemeItem"),styled_1=require("./styled"),hooks_1=require("../../hooks");function OAuthFlowComponent({flow:e}){const t=Object.keys((null==e?void 0:e.scopes)||{}),r=(0,hooks_1.useTranslate)();return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:`${r("openapi.authorizationUrl","Authorization URL")}:`,value:(null==e?void 0:e.authorizationUrl)&&(0,jsx_runtime_1.jsx)(styled_1.StyledLink,{target:"_blank",rel:"noopener noreferrer",href:null==e?void 0:e.authorizationUrl,children:null==e?void 0:e.authorizationUrl})}),(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:`${r("openapi.tokenUrl","Token URL")}:`,value:null==e?void 0:e.tokenUrl}),(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:`${r("openapi.refreshUrl","Refresh URL")}:`,value:null==e?void 0:e.refreshUrl}),t.length&&(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:`${r("openapi.scopes","Scopes")}:`,value:" "}),t.map((t=>(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:(0,jsx_runtime_1.jsx)(StyledTag,{className:"tag-grey",children:t}),value:(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:(null==e?void 0:e.scopes[t])||""})},t)))]})||null]})}const StyledTag=(0,styled_components_1.default)(styled_1.Tag)`
|
|
2
2
|
margin-left: var(--spacing-xs);
|
|
3
3
|
`;exports.OAuthFlow=(0,react_1.memo)(OAuthFlowComponent);
|
|
4
4
|
//# sourceMappingURL=OAuthFlow.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityFlow=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),SecuritySchemeItem_1=require("./SecuritySchemeItem"),utils_1=require("../../utils"),OAuthFlow_1=require("./OAuthFlow"),styled_1=require("./styled"),Markdown_1=require("../Markdown"),helper_1=require("./helper");function SecurityFlow({type:e,bearerFormat:r,name:t,flows:i,openIdConnectUrl:s,description:n,id:
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityFlow=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),SecuritySchemeItem_1=require("./SecuritySchemeItem"),utils_1=require("../../utils"),OAuthFlow_1=require("./OAuthFlow"),styled_1=require("./styled"),Markdown_1=require("../Markdown"),helper_1=require("./helper"),hooks_1=require("../../hooks");function SecurityFlow({type:e,bearerFormat:r,name:t,flows:i,openIdConnectUrl:s,description:n,id:o,securities:a,in:u}){const l=(0,hooks_1.useTranslate)();if(!e||!o)return null;const c=(0,helper_1.getRequiredScopes)(o,a),m={http:(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:l("openapi.httpAuthorizationScheme","HTTP Authorization Scheme"),value:e}),(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:l("openapi.bearerFormat","Bearer Format"),value:r})]}),apiKey:(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:`${(0,utils_1.titleize)(u||"")} ${l("openapi.parameterName","parameter name")}:`,value:t}),oauth2:(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:l("openapi.flowType","Flow type"),value:e}),i&&Object.keys(i).map((e=>(0,jsx_runtime_1.jsx)(OAuthFlow_1.OAuthFlow,{flow:i[e]},e)))]}),openIdConnect:(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:l("openapi.connectUrl","Connect URL"),value:s&&(0,jsx_runtime_1.jsx)(styled_1.StyledLink,{target:"_blank",rel:"noopener noreferrer",href:s,children:s})})};return(0,jsx_runtime_1.jsxs)(Wrapper,{children:[(0,jsx_runtime_1.jsx)(TitleSchema,{children:o}),(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:n}),(0,jsx_runtime_1.jsxs)(List,{children:[m[e]||null,(0,jsx_runtime_1.jsx)(SecuritySchemeItem_1.SecuritySchemeItem,{label:l("openapi.requiredScopes","Required scopes"),value:c.length&&(0,jsx_runtime_1.jsx)(Row,{children:c.map((e=>(0,jsx_runtime_1.jsx)(styled_1.Tag,{className:"tag-grey",children:e},e)))})})]})]})}exports.SecurityFlow=SecurityFlow;const Wrapper=styled_components_1.default.div`
|
|
2
2
|
background: var(--layer-color);
|
|
3
3
|
padding: var(--spacing-base);
|
|
4
4
|
border-radius: var(--border-radius);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityModal=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),SecurityFlow_1=require("./SecurityFlow"),Divider_1=require("./Divider");function SecurityModal({securities:e,onClose:t}){const[i,
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityModal=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),SecurityFlow_1=require("./SecurityFlow"),Divider_1=require("./Divider"),hooks_1=require("../../hooks");function SecurityModal({securities:e,onClose:t}){const r=(0,hooks_1.useTranslate)(),[i,s]=(0,react_1.useState)(0),o=(0,react_1.useRef)(null),{schemes:a}=e[i]||{};(0,theme_1.useOutsideClick)(o,t),(0,theme_1.useFocusTrap)(o);const n=e.map((({schemes:e},t)=>({label:e.map((({id:e})=>e)).join(" and "),value:t})));return(0,jsx_runtime_1.jsx)(StyledBackground,{children:(0,jsx_runtime_1.jsxs)(Wrapper,{ref:o,tabIndex:0,children:[(0,jsx_runtime_1.jsx)(Close,{onClick:t,"data-testid":"close",variant:"ghost",icon:(0,jsx_runtime_1.jsx)(theme_1.CloseIcon,{})}),(0,jsx_runtime_1.jsxs)(Title,{children:[(0,jsx_runtime_1.jsx)(theme_1.SecurityIcon,{size:"24px"}),r("openapi.security","Security")]}),(0,jsx_runtime_1.jsx)(theme_1.Segmented,{value:i,onChange:({value:e})=>s(e),options:n}),a.map(((t,r)=>(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecurityFlow_1.SecurityFlow,Object.assign({},t,{securities:e})),r!==a.length-1&&(0,jsx_runtime_1.jsx)(Divider_1.Divider,{label:"and"})]},t.id)))]})})}exports.SecurityModal=SecurityModal;const Wrapper=styled_components_1.default.div`
|
|
2
2
|
background: var(--bg-color);
|
|
3
3
|
box-shadow: var(--bg-raised-shadow);
|
|
4
4
|
border-radius: var(--border-radius-lg);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { ReactElement } from 'react';
|
|
2
2
|
import type { ServerListProps } from './types';
|
|
3
|
-
export declare const ServerList: ({ servers, path }: ServerListProps) => ReactElement;
|
|
3
|
+
export declare const ServerList: ({ servers, path, translate }: ServerListProps) => ReactElement;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),PanelItem_1=require("../PanelItem"),ViewNested_1=require("../ViewNested"),common_1=require("../common"),Markdown_1=require("../Markdown"),ServerList=({servers:e,path:r})=>(0,jsx_runtime_1.jsx)(ItemsList,{children:e.map((e=>{const
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),PanelItem_1=require("../PanelItem"),ViewNested_1=require("../ViewNested"),common_1=require("../common"),Markdown_1=require("../Markdown"),ServerList=({servers:e,path:t,translate:r})=>(0,jsx_runtime_1.jsx)(ItemsList,{children:e.map((e=>{const i=e.url+t,n=Object.keys(e.variables||{}).length,a=1===n?"variable":"variables",s=`${n||""} ${r(`openapi.${a}`,a)}`;return(0,jsx_runtime_1.jsxs)("div",{children:[(0,jsx_runtime_1.jsx)(PanelItem_1.PanelItemDescription,{children:e.description}),(0,jsx_runtime_1.jsxs)(TitleWrap,{children:[(0,jsx_runtime_1.jsx)(PanelItem_1.Title,{suppressHydrationWarning:!0,children:i}),(0,jsx_runtime_1.jsx)(theme_1.CopyButton,{data:i},i)]}),e.variables&&(0,jsx_runtime_1.jsx)(ViewNested_1.ViewNested,{expandText:`${r("openapi.actions.show","Show")} ${s}`,hideText:`${r("openapi.actions.hide","Hide")} ${s}`,expandByDefault:!1,expandable:!0,hideDivider:!0,children:(0,jsx_runtime_1.jsx)(ServerVariablesContainer,{children:Object.entries(e.variables||{}).map((([e,t])=>(0,jsx_runtime_1.jsxs)(ServerVariableContainer,{children:[(0,jsx_runtime_1.jsx)(ServerVariableName,{children:e}),(0,jsx_runtime_1.jsxs)(Variable,{children:[r("openapi.default","Default")," ",(0,jsx_runtime_1.jsx)(StyledTag,{children:t.default})]}),(0,jsx_runtime_1.jsx)(Description,{source:t.description}),t.enum&&(0,jsx_runtime_1.jsxs)(Variable,{children:[r("openapi.enum","Enum")," ",(0,jsx_runtime_1.jsx)(TagWrapper,{children:t.enum.map((e=>(0,jsx_runtime_1.jsx)(StyledTag,{children:e},e)))})]})]},e)))})})]},e.url)}))});exports.ServerList=ServerList;const ItemsList=styled_components_1.default.div`
|
|
2
2
|
& > div {
|
|
3
3
|
border-bottom: 1px solid var(--border-color-secondary);
|
|
4
4
|
margin-bottom: var(--spacing-xs);
|
|
@@ -1,2 +1,5 @@
|
|
|
1
|
+
import type { TFunction } from '@redocly/theme';
|
|
1
2
|
import type { OperationModel } from '../../models';
|
|
2
|
-
export type ServerListProps = Pick<OperationModel, 'servers' | 'path'
|
|
3
|
+
export type ServerListProps = Pick<OperationModel, 'servers' | 'path'> & {
|
|
4
|
+
translate: TFunction;
|
|
5
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { TFunction } from '@redocly/theme';
|
|
3
|
+
import type { OperationsNavigationProps } from './types';
|
|
4
|
+
type OperationNavigationItemsProps = OperationsNavigationProps & {
|
|
5
|
+
title: string;
|
|
6
|
+
onClick: (link: string) => void;
|
|
7
|
+
translate: TFunction;
|
|
8
|
+
};
|
|
9
|
+
export declare const OperationNavigationItems: import("react").NamedExoticComponent<OperationNavigationItemsProps>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationNavigationItems=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),services_1=require("../../services"),utils_1=require("../../utils"),common_1=require("../common"),styled_1=require("./styled");function OperationNavigationItemsComponent({title:e,items:t,onClick:r,routingBasePath:i,translate:n}){return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Heading,{children:e}),t.map((({id:e,href:t,httpVerb:a,path:o,deprecated:s,badges:l})=>(0,jsx_runtime_1.jsx)(Item,{variant:"outlined",size:"large",onClick:()=>r((0,services_1.joinWithSeparator)(i,(0,utils_1.encodeBackSlashes)(t))),children:(0,jsx_runtime_1.jsxs)("span",{children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:s?"http-deprecated":a,children:a}),(0,jsx_runtime_1.jsx)(Path,{children:o}),s&&(0,jsx_runtime_1.jsx)(common_1.NavigationBadge,{deprecated:!0,children:n("openapi.badges.deprecated","Deprecated")}),null==l?void 0:l.map((({name:e,color:t})=>(0,jsx_runtime_1.jsx)(common_1.NavigationBadge,{color:t,children:e},e)))]})},e)))]})}exports.OperationNavigationItems=(0,react_1.memo)(OperationNavigationItemsComponent);const Heading=styled_components_1.default.span`
|
|
2
|
+
font-size: var(--font-size-base);
|
|
3
|
+
line-height: var(--line-height-base);
|
|
4
|
+
font-weight: var(--font-weight-bold);
|
|
5
|
+
color: var(--text-color-primary);
|
|
6
|
+
margin: var(--spacing-sm) 0 var(--spacing-xxs) 0;
|
|
7
|
+
`,Item=(0,styled_components_1.default)(styled_1.StyledButton)`
|
|
8
|
+
border-radius: var(--border-radius);
|
|
9
|
+
background: var(--bg-color);
|
|
10
|
+
justify-content: space-between;
|
|
11
|
+
|
|
12
|
+
& > span {
|
|
13
|
+
display: flex;
|
|
14
|
+
align-items: baseline;
|
|
15
|
+
gap: var(--spacing-unit);
|
|
16
|
+
overflow-x: hidden;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&:hover {
|
|
20
|
+
background: var(--bg-color);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&:hover::after {
|
|
24
|
+
content: '→';
|
|
25
|
+
line-height: var(--line-height-base);
|
|
26
|
+
}
|
|
27
|
+
`,Path=styled_components_1.default.span`
|
|
28
|
+
font-family: var(--font-family-base);
|
|
29
|
+
font-size: var(--font-size-base);
|
|
30
|
+
line-height: var(--line-height-base);
|
|
31
|
+
color: var(--text-color-primary);
|
|
32
|
+
text-decoration: none;
|
|
33
|
+
white-space: nowrap;
|
|
34
|
+
text-overflow: ellipsis;
|
|
35
|
+
overflow-x: hidden;
|
|
36
|
+
`;
|
|
37
|
+
//# sourceMappingURL=OperationNavigationItems.js.map
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import type {
|
|
3
|
-
type OperationsNavigationProps = {
|
|
4
|
-
items: OperationMenuItem[];
|
|
5
|
-
routingBasePath: string;
|
|
6
|
-
};
|
|
2
|
+
import type { OperationsNavigationProps } from './types';
|
|
7
3
|
export declare function OperationsNavigationComponent({ items, routingBasePath, }: OperationsNavigationProps): import("react/jsx-runtime").JSX.Element | null;
|
|
8
4
|
export declare const OperationsNavigation: import("react").NamedExoticComponent<OperationsNavigationProps>;
|
|
9
|
-
export {};
|
|
@@ -1,46 +1,7 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationsNavigation=exports.OperationsNavigationComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),index_1=require("jotai/index"),common_1=require("../common"),
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationsNavigation=exports.OperationsNavigationComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),index_1=require("jotai/index"),common_1=require("../common"),app_1=require("../../jotai/app"),OperationNavigationItems_1=require("./OperationNavigationItems"),styled_1=require("./styled"),hooks_1=require("../../hooks"),MAX_OPERATIONS=8;function OperationsNavigationComponent({items:e,routingBasePath:t}){const o=(0,hooks_1.useTranslate)(),[a,i]=(0,react_1.useState)(!1),n=(0,react_router_dom_1.useNavigate)(),r=(0,index_1.useAtomValue)(app_1.layoutAtom)===theme_1.LayoutVariant.STACKED,{operations:s,webhooks:p,count:_}=(0,react_1.useMemo)((()=>{const t=e.filter((e=>"operation"===e.type)),o=a?t:t.slice(0,MAX_OPERATIONS),{operations:i,webhooks:n}=o.reduce(((e,t)=>t.isWebhook?Object.assign(Object.assign({},e),{webhooks:[...e.webhooks,t]}):Object.assign(Object.assign({},e),{operations:[...e.operations,t]})),{operations:[],webhooks:[]});return{operations:i,webhooks:n,count:!a&&t.length>MAX_OPERATIONS?t.length-MAX_OPERATIONS:0}}),[a,e]),l=(0,react_1.useCallback)((e=>n(e)),[n]);return s.length||p.length?(0,jsx_runtime_1.jsxs)(Wrapper,{isStacked:r,"data-testid":"operation-navigation-list",children:[s.length>0&&(0,jsx_runtime_1.jsx)(OperationNavigationItems_1.OperationNavigationItems,{items:s,onClick:l,routingBasePath:t,translate:o,title:o("openapi.operations","Operations")}),p.length>0&&(0,jsx_runtime_1.jsx)(OperationNavigationItems_1.OperationNavigationItems,{items:p,onClick:l,routingBasePath:t,translate:o,title:o("openapi.webhooks","Webhooks")}),!a&&Boolean(_)&&(0,jsx_runtime_1.jsxs)(styled_1.StyledButton,{variant:"link",size:"large","data-testid":"show-more-operations",fullWidth:!0,onClick:()=>i(!0),children:[o("openapi.actions.show","Show")," ",_," ",o("openapi.actions.more","more"),"..."]})]}):null}exports.OperationsNavigationComponent=OperationsNavigationComponent,exports.OperationsNavigation=(0,react_1.memo)(OperationsNavigationComponent);const Wrapper=(0,styled_components_1.default)(common_1.SamplesPanel)`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
gap: var(--spacing-xxs);
|
|
5
5
|
padding-top: var(--spacing-xxl);
|
|
6
|
-
`,Heading=styled_components_1.default.span`
|
|
7
|
-
font-size: var(--font-size-base);
|
|
8
|
-
line-height: var(--line-height-base);
|
|
9
|
-
font-weight: var(--font-weight-bold);
|
|
10
|
-
color: var(--text-color-primary);
|
|
11
|
-
margin: var(--spacing-sm) 0 var(--spacing-xxs) 0;
|
|
12
|
-
`,StyledButton=(0,styled_components_1.default)(theme_1.Button)`
|
|
13
|
-
& + & {
|
|
14
|
-
margin-left: 0;
|
|
15
|
-
}
|
|
16
|
-
`,Item=(0,styled_components_1.default)(StyledButton)`
|
|
17
|
-
border-radius: var(--border-radius);
|
|
18
|
-
background: var(--bg-color);
|
|
19
|
-
justify-content: space-between;
|
|
20
|
-
|
|
21
|
-
& > span {
|
|
22
|
-
display: flex;
|
|
23
|
-
align-items: baseline;
|
|
24
|
-
gap: var(--spacing-unit);
|
|
25
|
-
overflow-x: hidden;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
&:hover {
|
|
29
|
-
background: var(--bg-color);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
&:hover::after {
|
|
33
|
-
content: '→';
|
|
34
|
-
line-height: var(--line-height-base);
|
|
35
|
-
}
|
|
36
|
-
`,Path=styled_components_1.default.span`
|
|
37
|
-
font-family: var(--font-family-base);
|
|
38
|
-
font-size: var(--font-size-base);
|
|
39
|
-
line-height: var(--line-height-base);
|
|
40
|
-
color: var(--text-color-primary);
|
|
41
|
-
text-decoration: none;
|
|
42
|
-
white-space: nowrap;
|
|
43
|
-
text-overflow: ellipsis;
|
|
44
|
-
overflow-x: hidden;
|
|
45
6
|
`;
|
|
46
7
|
//# sourceMappingURL=OperationsNavigation.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.TagItem=exports.TagItemComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),common_1=require("../common"),Markdown_1=require("../Markdown"),OperationsNavigation_1=require("./OperationsNavigation"),app_1=require("../../jotai/app");function TagItemComponent({item:e,routingBasePath:t="",isExpanded:a}){const{description:r,name:n,href:i}=e,
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.TagItem=exports.TagItemComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),common_1=require("../common"),Markdown_1=require("../Markdown"),OperationsNavigation_1=require("./OperationsNavigation"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks");function TagItemComponent({item:e,routingBasePath:t="",isExpanded:a}){const o=(0,hooks_1.useTranslate)(),{description:r,name:n,href:i}=e,s=(0,react_router_dom_1.useNavigate)(),m=(0,jotai_1.useAtomValue)(app_1.layoutAtom),_=(0,react_1.useCallback)((()=>{s(t+e.href)}),[e.href,s,t]),u=Boolean(e.items.length),d=m===theme_1.LayoutVariant.STACKED;return(0,jsx_runtime_1.jsxs)(Wrapper,{expanded:a,children:[(0,jsx_runtime_1.jsxs)(common_1.Row,{layout:m,children:[(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{fullWidth:!u,isStacked:d,children:[(0,jsx_runtime_1.jsxs)(Heading,{children:[(0,jsx_runtime_1.jsx)(common_1.ShareLink,{to:i,"aria-label":`link to ${n}`}),n]}),(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:r})]}),u&&(0,jsx_runtime_1.jsx)(OperationsNavigation_1.OperationsNavigation,{items:e.items,routingBasePath:t})]}),u&&!a&&(0,jsx_runtime_1.jsxs)(ShowButton,{type:"button",variant:"text",size:"medium",onClick:_,children:["+ ",o("openapi.actions.show","Show")]})]})}exports.TagItemComponent=TagItemComponent,exports.TagItem=(0,react_1.memo)(TagItemComponent);const Wrapper=styled_components_1.default.div`
|
|
2
2
|
padding-top: var(--spacing-lg);
|
|
3
3
|
padding-bottom: ${({expanded:e})=>e?"var(--spacing-xxl)":""};
|
|
4
4
|
`,ShowButton=(0,styled_components_1.default)(theme_1.Button)`
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.StyledButton=void 0;const styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme");exports.StyledButton=(0,styled_components_1.default)(theme_1.Button)`
|
|
2
|
+
& + & {
|
|
3
|
+
margin-left: 0;
|
|
4
|
+
}
|
|
5
|
+
`;
|
|
6
|
+
//# sourceMappingURL=styled.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.BodyContent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),Dropdown_1=require("../Dropdown"),Fields_1=require("../Fields"),ConstraintsView_1=require("../ConstraintsView"),Schema_1=require("../../Schema"),models_1=require("../../../models"),Markdown_1=require("../../Markdown"),app_1=require("../../../jotai/app"),LinkToField_1=require("../LinkToField");function BodyContentComponent({required:e,skipReadOnly:i,skipWriteOnly:t,description:n,content:
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.BodyContent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),Dropdown_1=require("../Dropdown"),Fields_1=require("../Fields"),ConstraintsView_1=require("../ConstraintsView"),Schema_1=require("../../Schema"),models_1=require("../../../models"),Markdown_1=require("../../Markdown"),app_1=require("../../../jotai/app"),LinkToField_1=require("../LinkToField"),hooks_1=require("../../../hooks");function BodyContentComponent({required:e,skipReadOnly:i,skipWriteOnly:t,description:n,content:o,deepLink:r}){const s=(0,hooks_1.useTranslate)(),[a,l]=(0,jotai_1.useAtom)(app_1.activeMimeNameAtom);if(!o)return null;const{schema:d,examples:_,operation:p,name:m}=(0,models_1.getActiveMediaType)(o,a),u=o.mediaTypes.map((({name:e})=>({label:e,value:e})));return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(Title,{children:[r&&(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:r}),s("openapi.body","Body"),(0,jsx_runtime_1.jsx)(Dropdown_1.Dropdown,{options:u,value:m,triggerVariant:"ghost",triggerSize:"large",onChange:({value:e})=>l(e)})]}),e&&(0,jsx_runtime_1.jsx)(Fields_1.RequiredLabel,{children:s("openapi.badges.required","required")}),(0,jsx_runtime_1.jsx)(StyledMarkdown,{source:n}),"object"===(null==d?void 0:d.type)&&(null==d?void 0:d.constraints)&&(0,jsx_runtime_1.jsx)(ConstraintsView_1.ConstraintsView,{constraints:(null==d?void 0:d.constraints)||[]}),(0,jsx_runtime_1.jsx)(Schema_1.Schema,{skipReadOnly:i,skipWriteOnly:t,schema:d,examples:_,operation:p,level:1,disableDeepLinks:!r},"schema")]})}exports.BodyContent=(0,react_1.memo)(BodyContentComponent);const StyledMarkdown=(0,styled_components_1.default)(Markdown_1.Markdown)`
|
|
2
2
|
margin: var(--spacing-xxs) 0 0;
|
|
3
3
|
`,Title=styled_components_1.default.span`
|
|
4
4
|
position: relative;
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import type { SelectOption } from '@redocly/theme';
|
|
2
2
|
export interface DropdownProps<T> {
|
|
3
3
|
value: T;
|
|
4
|
-
onChange: ({ label, value }:
|
|
5
|
-
label: any;
|
|
6
|
-
value: any;
|
|
7
|
-
}) => void;
|
|
4
|
+
onChange: ({ label, value }: SelectOption<T>) => void;
|
|
8
5
|
options: SelectOption<T>[];
|
|
9
6
|
className?: string;
|
|
10
7
|
triggerVariant?: 'ghost' | 'outlined';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExpandableExample=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),react_1=require("react"),Markdown_1=require("../../Markdown"),Fields_1=require("../Fields"),MAX_EXAMPLE_LENGTH=150;function ExpandableExample({value:e}){const
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExpandableExample=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),react_1=require("react"),Markdown_1=require("../../Markdown"),Fields_1=require("../Fields"),hooks_1=require("../../../hooks"),MAX_EXAMPLE_LENGTH=150;function ExpandableExample({value:e}){const t=(0,hooks_1.useTranslate)(),[r,n]=(0,react_1.useState)(!1),a=(0,react_1.useMemo)((()=>e.slice(0,MAX_EXAMPLE_LENGTH)),[e]);return(0,jsx_runtime_1.jsxs)(Container,{children:[(0,jsx_runtime_1.jsx)(Markdown_1.Markdown,{source:r?e:a}),(e!==a||r)&&(0,jsx_runtime_1.jsx)(ButtonWrap,{children:(0,jsx_runtime_1.jsx)(theme_1.Button,{variant:"link",size:"small",onClick:()=>{n(!r)},children:r?t("openapi.hideExample","Hide example"):t("openapi.showExample","Show example")})})]})}exports.ExpandableExample=ExpandableExample;const Container=(0,styled_components_1.default)(Fields_1.ExampleValue)`
|
|
2
2
|
display: inline;
|
|
3
3
|
|
|
4
4
|
& * {
|
package/lib/hooks/index.d.ts
CHANGED
|
@@ -5,3 +5,4 @@ export { useRouter } from './useRouter';
|
|
|
5
5
|
export { useContentItems } from './useContentItems';
|
|
6
6
|
export { useActiveWithFallback } from './useActiveWithFallback';
|
|
7
7
|
export { useUppercase2LowercaseRedirect } from './useUppercase2LowercaseRedirect';
|
|
8
|
+
export { useTranslate } from './useTranslate';
|
package/lib/hooks/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useUppercase2LowercaseRedirect=exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=exports.usePrevious=exports.useDimensions=void 0;var useDimensions_1=require("./useDimensions");Object.defineProperty(exports,"useDimensions",{enumerable:!0,get:function(){return useDimensions_1.useDimensions}});var usePrevious_1=require("./usePrevious");Object.defineProperty(exports,"usePrevious",{enumerable:!0,get:function(){return usePrevious_1.usePrevious}});var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});var useUppercase2LowercaseRedirect_1=require("./useUppercase2LowercaseRedirect");Object.defineProperty(exports,"useUppercase2LowercaseRedirect",{enumerable:!0,get:function(){return useUppercase2LowercaseRedirect_1.useUppercase2LowercaseRedirect}});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useTranslate=exports.useUppercase2LowercaseRedirect=exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=exports.usePrevious=exports.useDimensions=void 0;var useDimensions_1=require("./useDimensions");Object.defineProperty(exports,"useDimensions",{enumerable:!0,get:function(){return useDimensions_1.useDimensions}});var usePrevious_1=require("./usePrevious");Object.defineProperty(exports,"usePrevious",{enumerable:!0,get:function(){return usePrevious_1.usePrevious}});var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});var useUppercase2LowercaseRedirect_1=require("./useUppercase2LowercaseRedirect");Object.defineProperty(exports,"useUppercase2LowercaseRedirect",{enumerable:!0,get:function(){return useUppercase2LowercaseRedirect_1.useUppercase2LowercaseRedirect}});var useTranslate_1=require("./useTranslate");Object.defineProperty(exports,"useTranslate",{enumerable:!0,get:function(){return useTranslate_1.useTranslate}});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useTranslate=void 0;const theme_1=require("@redocly/theme");function useTranslate(){const{translate:e}=(0,theme_1.useThemeHooks)().useTranslate();return e}exports.useTranslate=useTranslate;
|
|
2
|
+
//# sourceMappingURL=useTranslate.js.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { OperationModel } from '../../models';
|
|
2
2
|
import type * as HAR from './har';
|
|
3
3
|
import type { Languages } from './types';
|
|
4
|
+
import type { TFunction } from '@redocly/theme';
|
|
4
5
|
export type CustomHAR = HAR.Request & {
|
|
5
6
|
securityOAuth2ExtraCalls?: HAR.Request[];
|
|
6
7
|
basicAuth?: {
|
|
@@ -13,7 +14,7 @@ export type CustomHAR = HAR.Request & {
|
|
|
13
14
|
serverVariables?: Record<string, string>;
|
|
14
15
|
allResponseCodes?: string[];
|
|
15
16
|
};
|
|
16
|
-
export declare function getCodeSample({ lang, operation, exampleName, pathParams, properties, options, environment, }: {
|
|
17
|
+
export declare function getCodeSample({ lang, operation, exampleName, pathParams, properties, options, environment, translate, }: {
|
|
17
18
|
lang: Languages;
|
|
18
19
|
operation: OperationModel;
|
|
19
20
|
exampleName?: string;
|
|
@@ -21,6 +22,7 @@ export declare function getCodeSample({ lang, operation, exampleName, pathParams
|
|
|
21
22
|
properties?: GenericObject;
|
|
22
23
|
options?: GenericObject;
|
|
23
24
|
environment: Record<string, string>;
|
|
25
|
+
translate: TFunction;
|
|
24
26
|
}): string;
|
|
25
27
|
export declare function isDefined<T>(arg?: T): arg is T;
|
|
26
28
|
export declare function capitalizeFirst(str: string): string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var s=Object.getOwnPropertyDescriptor(t,a);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,s)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),jstoxml_1=require("jstoxml"),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:c}){var p,d,m;const f=l.server,h=e.servers.find((e=>e.url===f))||e.servers[0],_=getSelectedSecurityScheme(e.security,c),{securityHeaders:y,securityCookies:g,securityQueries:v,securityOAuth2ExtraCalls:O,basicAuth:S}=getSecurityData(_||(null===(p=e.security)||void 0===p?void 0:p[0]),r,l),T=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},b=u;let j=!1;const D=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=b.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))}})).map((e=>((null==T?void 0:T.name)&&"content-type"===e.name.toLowerCase()&&(j=!0,e.value=T.name),e))).concat(y);!j&&(null==T?void 0:T.name)&&D.unshift({name:"Content-Type",value:null==T?void 0:T.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=b.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(g),q=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=b.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=b.query)||void 0===r?void 0:r[i]))||String((null===(s=b.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(v),P=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,k=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=b.path)||void 0===a?void 0:a[s])||n[s]||(0,utils_1.getParameterValue)(r,s),e}),{}),w=null===(m=null==T?void 0:T.examples)||void 0===m?void 0:m[t],A=(null==T?void 0:T.examples)||{},[R]=Object.values(A),M=(null==b?void 0:b.body)||(null==w?void 0:w.value)||(null==R?void 0:R.value)||(null==T?void 0:T.schema)&&Sampler.sample(null==T?void 0:T.schema.rawSchema,C,s),x=null==T?void 0:T.name.toLowerCase();let N="",H=[];switch((0,utils_2.normalizeMimeType)(x)){case constants_1.MediaTypes.JSON:N=JSON.stringify(getDataRequest(M,o));break;case constants_1.MediaTypes.XML:N="object"==typeof M?(0,jstoxml_1.toXML)(getDataRequest(M,o),{indent:" "}):M;break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:N=utils_1.queryString.stringify(getDataRequest(M,o)),H=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const z=N?{mimeType:(null==T?void 0:T.name)||constants_1.MediaTypes.OCTET_STREAM,text:N,params:H}:void 0,U=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:E,headers:D,queryString:q,postData:z,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:O,basicAuth:S,pathParameters:k,serverVariables:l,allResponseCodes:U}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:s,options:i={},environment:n}){try{const{skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c,store:p}=i,d=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c},{environment:n,requestValues:p.requestValues,activeSecuritySchemeIds:p.activeSecuritySchemeIds}),m=new httpsnippet_1.HTTPSnippet(d);return langToSnippetConfig[e]?m.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}exports.getCodeSample=getCodeSample,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var s=Object.getOwnPropertyDescriptor(t,a);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,s)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),jstoxml_1=require("jstoxml"),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:c}){var p,d,m;const f=l.server,h=e.servers.find((e=>e.url===f))||e.servers[0],_=getSelectedSecurityScheme(e.security,c),{securityHeaders:g,securityCookies:y,securityQueries:v,securityOAuth2ExtraCalls:O,basicAuth:S}=getSecurityData(_||(null===(p=e.security)||void 0===p?void 0:p[0]),r,l),T=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},b=u;let j=!1;const D=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=b.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))}})).map((e=>((null==T?void 0:T.name)&&"content-type"===e.name.toLowerCase()&&(j=!0,e.value=T.name),e))).concat(g);!j&&(null==T?void 0:T.name)&&D.unshift({name:"Content-Type",value:null==T?void 0:T.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=b.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(y),q=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=b.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=b.query)||void 0===r?void 0:r[i]))||String((null===(s=b.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(v),P=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,k=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=b.path)||void 0===a?void 0:a[s])||n[s]||(0,utils_1.getParameterValue)(r,s),e}),{}),w=null===(m=null==T?void 0:T.examples)||void 0===m?void 0:m[t],A=(null==T?void 0:T.examples)||{},[R]=Object.values(A),M=(null==b?void 0:b.body)||(null==w?void 0:w.value)||(null==R?void 0:R.value)||(null==T?void 0:T.schema)&&Sampler.sample(null==T?void 0:T.schema.rawSchema,C,s),x=null==T?void 0:T.name.toLowerCase();let N="",H=[];switch((0,utils_2.normalizeMimeType)(x)){case constants_1.MediaTypes.JSON:N=JSON.stringify(getDataRequest(M,o));break;case constants_1.MediaTypes.XML:N="object"==typeof M?(0,jstoxml_1.toXML)(getDataRequest(M,o),{indent:" "}):M;break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:N=utils_1.queryString.stringify(getDataRequest(M,o)),H=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const z=N?{mimeType:(null==T?void 0:T.name)||constants_1.MediaTypes.OCTET_STREAM,text:N,params:H}:void 0,U=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:E,headers:D,queryString:q,postData:z,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:O,basicAuth:S,pathParameters:k,serverVariables:l,allResponseCodes:U}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:s,options:i={},environment:n,translate:o}){try{const{skipOptionalParameters:l,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p,store:d}=i,m=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:l,withOAuth2Call:u,spec:c,generatedPayloadSamplesMaxDepth:p},{environment:n,requestValues:d.requestValues,activeSecuritySchemeIds:d.activeSecuritySchemeIds}),f=new httpsnippet_1.HTTPSnippet(m);return langToSnippetConfig[e]?f.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):o("openapi.unsupportedLanguage","Language is not supported.")}catch(e){return console.error(e),o("openapi.failedToGenerateCodeSample","Failed to generate code sample.")}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}exports.getCodeSample=getCodeSample,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;
|
|
2
2
|
//# sourceMappingURL=generator.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{layoutAtom}from"../../jotai/app";import{SamplesMiddlePanel,Row,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{RightPanel}from"../RightPanel
|
|
1
|
+
import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{layoutAtom}from"../../jotai/app";import{SamplesMiddlePanel,Row,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{RightPanel}from"../RightPanel";import{useTranslate}from"../../hooks";export function ApiInfo({item:e}){const o=useTranslate(),{options:{unstable_hooks:t,hideInfoMetadata:a},parser:{definition:r}}=useAtomValue(globalStoreAtom),i=useAtomValue(layoutAtom),n=e.infoDefinition;if(!n)return null;const s=saveTextBeforeHeading(getValueFromMdParsedExtension(n,"description")||""),l=getValueFromMdParsedExtension(n,"summary")||void 0,m=null==r?void 0:r.externalDocs,d=n.version&&_jsxs("span",{children:["(",n.version,")"]})||null,p=i===LayoutVariant.STACKED;return _jsxs(Row,{layout:i,children:[_jsxs(SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:p,children:[_jsxs(ApiHeader,{children:[n.title," ",d]}),_jsx(RenderHook,{Hook:AfterOpenApiTitle||(null==t?void 0:t.AfterApiTitle),props:{info:n}}),l&&_jsx(Markdown,{source:l,"data-role":"redoc-summary"}),s&&_jsx(Markdown,{source:s,"data-role":"redoc-description"}),m&&_jsx(ExternalDocumentation,{externalDocs:m}),!a&&_jsx(Metadata,{metadata:n["x-metadata"],translate:o})]}),p&&_jsx(RightPanelContainer,{isStacked:p,children:_jsx(RightPanel,{item:e})})]})}const RightPanelContainer=styled(SamplesPanel)`
|
|
2
2
|
position: static;
|
|
3
3
|
`;
|
|
4
4
|
//# sourceMappingURL=ApiInfo.js.map
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import type { TFunction } from '@redocly/theme';
|
|
1
2
|
import type { ReactElement } from 'react';
|
|
2
3
|
import type { OpenAPIInfo } from '../../types';
|
|
3
4
|
interface MetadataProps {
|
|
4
5
|
metadata: OpenAPIInfo['x-metadata'];
|
|
6
|
+
translate: TFunction;
|
|
5
7
|
}
|
|
6
|
-
export declare function Metadata({ metadata }: MetadataProps): ReactElement | null;
|
|
8
|
+
export declare function Metadata({ metadata, translate }: MetadataProps): ReactElement | null;
|
|
7
9
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo}from"react";import{Markdown as MarkdownWrapper,H3,isNotNull}from"@redocly/theme";const FILTER_OUT_KEYS=["title","description"];function metadataMap([e,t]){return FILTER_OUT_KEYS.includes(e)?null:Array.isArray(t)?{key:e,value:t.filter((e=>"object"!=typeof e)).join(", ")}:"object"==typeof t?null:{key:e,value:t}}export function Metadata({metadata:e}){const
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo}from"react";import{Markdown as MarkdownWrapper,H3,isNotNull}from"@redocly/theme";const FILTER_OUT_KEYS=["title","description"];function metadataMap([e,t]){return FILTER_OUT_KEYS.includes(e)?null:Array.isArray(t)?{key:e,value:t.filter((e=>"object"!=typeof e)).join(", ")}:"object"==typeof t?null:{key:e,value:t}}export function Metadata({metadata:e,translate:t}){const a=useMemo((()=>Object.entries(e||{}).map(metadataMap).filter(isNotNull)),[e]);return e?_jsxs(MarkdownWrapper,{children:[_jsx(H3,{children:t("openapi.info.metadata.title","Metadata")}),_jsxs("table",{className:"md",children:[_jsx("thead",{children:_jsxs("tr",{children:[_jsx("th",{scope:"col",children:t("openapi.key","Key")}),_jsx("th",{scope:"col",children:t("openapi.value","Value")})]})}),_jsx("tbody",{children:a.map((({key:e,value:t})=>_jsxs("tr",{children:[_jsx("td",{children:e}),_jsx("td",{children:`${t}`})]},e)))})]})]}):null}
|
|
2
2
|
//# sourceMappingURL=Metadata.js.map
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import type { TFunction } from '@redocly/theme';
|
|
2
3
|
import type { OperationModel } from '../../models';
|
|
3
4
|
export interface CallbackSamplesProps {
|
|
4
5
|
callback: OperationModel;
|
|
6
|
+
translate: TFunction;
|
|
5
7
|
}
|
|
6
8
|
export declare const CallbackSamples: import("react").NamedExoticComponent<CallbackSamplesProps>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{PanelHeader}from"@redocly/theme";import styled from"styled-components";import{PayloadSamples}from"../PayloadSamples";import{ServerListDropdown}from"../ServerListDropdown";import{CodeBlockPanel}from"../common";function CallbackSamplesComponent({callback:e}){var o;if(!(null==e?void 0:e.hasSamples))return null;return _jsx(CodeBlockPanel,{className:"panel-callback-samples",header:()=>_jsxs(StyledPanelHeader,{isExpandable:!1,children:[_jsx(StyledServerListDropdown,{operation:e}),_jsx(PayloadTitle,{children:"Payload"})]}),isExpandable:!1,children:(null===(o=null==e?void 0:e.payload)||void 0===o?void 0:o.requestBodyContent)&&_jsx(PayloadSamples,{content:e.payload.requestBodyContent})})}export const CallbackSamples=memo(CallbackSamplesComponent);const PayloadTitle=styled.div`
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{PanelHeader}from"@redocly/theme";import styled from"styled-components";import{PayloadSamples}from"../PayloadSamples";import{ServerListDropdown}from"../ServerListDropdown";import{CodeBlockPanel}from"../common";function CallbackSamplesComponent({callback:e,translate:a}){var o;if(!(null==e?void 0:e.hasSamples))return null;return _jsx(CodeBlockPanel,{className:"panel-callback-samples",header:()=>_jsxs(StyledPanelHeader,{isExpandable:!1,children:[_jsx(StyledServerListDropdown,{operation:e}),_jsx(PayloadTitle,{children:a("openapi.payload","Payload")})]}),isExpandable:!1,children:(null===(o=null==e?void 0:e.payload)||void 0===o?void 0:o.requestBodyContent)&&_jsx(PayloadSamples,{content:e.payload.requestBodyContent})})}export const CallbackSamples=memo(CallbackSamplesComponent);const PayloadTitle=styled.div`
|
|
2
2
|
font-size: var(--font-size-sm);
|
|
3
3
|
font-style: normal;
|
|
4
4
|
font-weight: var(--font-weight-regular);
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import type { TFunction } from '@redocly/theme';
|
|
2
3
|
import type { OperationModel } from '../../models';
|
|
3
4
|
export interface CallbackDetailsProps {
|
|
4
5
|
operation: OperationModel;
|
|
6
|
+
translate: TFunction;
|
|
5
7
|
}
|
|
6
8
|
export declare const CallbackDetails: import("react").NamedExoticComponent<CallbackDetailsProps>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback}from"react";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{OperationResponseList}from"../Responses";import{RequestDetails}from"../Request/RequestDetails";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";function CallbackDetailsComponent({operation:e}){var i;const
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback}from"react";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{OperationResponseList}from"../Responses";import{RequestDetails}from"../Request/RequestDetails";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";function CallbackDetailsComponent({operation:e,translate:t}){var i;const s=useCallback((i=>_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-response&c=${i.key}`)}),t("openapi.callbackResponse","Callback Response")]})),[e.callbackId,e.id,t]);return _jsxs(_Fragment,{children:[_jsx(RequestDetails,{operation:e,title:_jsxs(_Fragment,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-request`)}),t("openapi.callbackRequest","Callback Request")]})}),(null===(i=e.responses)||void 0===i?void 0:i.length)?_jsx(OperationResponseList,{responses:e.responses,operationId:e.id,operationPointer:e.pointer,callbackId:e.callbackId,renderTitle:s}):null]})}export const CallbackDetails=memo(CallbackDetailsComponent);const Title=styled.h4`
|
|
2
2
|
position: relative;
|
|
3
3
|
font-size: var(--font-size-lg);
|
|
4
4
|
font-weight: var(--h4-font-weight);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled from"styled-components";import{useLocation}from"react-router-dom";import{CallbackPanel}from"../Panel";import{CallbackDetails}from"./CallbackDetails";import{CallbackSummary}from"./CallbackSummary";import{pathIncludesLink}from"../../utils";export const CallbackOperation=({operation:a,operation:{callbackId:l},onExpand:e,selectedCallback:o})=>{const t=useLocation();return _jsx(CallbackPanel,{header:({expanded:l,toggle:o})=>_jsx(CallbackSummary,{callback:a,toggle:t=>{null==o||o(t),null==e||e(l?null:a)},expanded:l}),expanded:(null==o?void 0:o.callbackId)===l||pathIncludesLink(
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled from"styled-components";import{useLocation}from"react-router-dom";import{useTranslate}from"../../hooks";import{CallbackPanel}from"../Panel";import{CallbackDetails}from"./CallbackDetails";import{CallbackSummary}from"./CallbackSummary";import{pathIncludesLink}from"../../utils";export const CallbackOperation=({operation:a,operation:{callbackId:l},onExpand:e,selectedCallback:o})=>{const t=useTranslate(),r=useLocation();return _jsx(CallbackPanel,{header:({expanded:l,toggle:o})=>_jsx(CallbackSummary,{callback:a,toggle:t=>{null==o||o(t),null==e||e(l?null:a)},expanded:l,translate:t}),expanded:(null==o?void 0:o.callbackId)===l||pathIncludesLink(r,l),className:"panel-response-callback",children:_jsxs(CallbackDetailsWrap,{children:[_jsx(CallbackDetails,{operation:a,translate:t}),_jsx(LeftBorder,{})]})})};const CallbackDetailsWrap=styled.div`
|
|
2
2
|
position: relative;
|
|
3
3
|
.property:last-child {
|
|
4
4
|
border-bottom: none;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ReactElement } from 'react';
|
|
2
|
-
import type { PanelHeaderProps } from '@redocly/theme';
|
|
2
|
+
import type { PanelHeaderProps, TFunction } from '@redocly/theme';
|
|
3
3
|
import type { OperationModel } from '../../models';
|
|
4
4
|
export interface CallbackTitleProps extends PanelHeaderProps {
|
|
5
5
|
callback: OperationModel;
|
|
6
|
+
translate: TFunction;
|
|
6
7
|
}
|
|
7
|
-
export declare function CallbackSummary({ expanded, toggle, callback: { name, httpVerb, deprecated, callbackId, id }, }: CallbackTitleProps): ReactElement;
|
|
8
|
+
export declare function CallbackSummary({ expanded, toggle, callback: { name, httpVerb, deprecated, callbackId, id }, translate, }: CallbackTitleProps): ReactElement;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,Badge}from"@redocly/theme";import styled from"styled-components";import{Trigger}from"../Panel";import{HttpVerb}from"../common";import{makeDeepLink}from"../../services";import{shortenHTTPVerb}from"../../utils";import{CallbackTitle}from"./styled";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";import{LinkToField}from"../common/LinkToField";export function CallbackSummary({expanded:e=!1,toggle:r,callback:{name:a,httpVerb:i,deprecated:
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,Badge}from"@redocly/theme";import styled from"styled-components";import{Trigger}from"../Panel";import{HttpVerb}from"../common";import{makeDeepLink}from"../../services";import{shortenHTTPVerb}from"../../utils";import{CallbackTitle}from"./styled";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";import{LinkToField}from"../common/LinkToField";export function CallbackSummary({expanded:e=!1,toggle:r,callback:{name:a,httpVerb:i,deprecated:n,callbackId:o,id:l},translate:t}){return _jsxs(CallbackHeader,{expanded:e,onClick:r,children:[_jsx(LinkToField,{to:makeDeepLink(l,`callbacks/${o}`)}),_jsxs(Trigger,{children:[_jsx(CircleIconWrap,{children:_jsx(CircleIcon,{sign:e?"-":"+"})}),_jsx(CallbackTitle,{deprecated:n,children:a}),_jsx(HttpVerb,{color:i,children:shortenHTTPVerb(i)}),n?_jsx(Badge,{deprecated:!0,children:t("openapi.badges.deprecated","Deprecated")}):null]})]})}const CallbackHeader=styled(PanelHeader)`
|
|
2
2
|
padding: var(--spacing-sm) 0 var(--spacing-sm) calc(var(--spacing-unit) / 2);
|
|
3
3
|
margin: 0;
|
|
4
4
|
line-height: var(--line-height-base);
|