@redocly/openapi-docs 3.4.6 → 3.4.8
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 +369 -369
- package/lib/components/ExpandAllButton/ExpandAllButton.d.ts +1 -1
- package/lib/components/ExpandAllButton/ExpandAllButton.js +1 -1
- package/lib/components/ExpandAllButton/index.d.ts +0 -1
- package/lib/components/ExpandAllButton/index.js +1 -1
- package/lib/components/Markdown/Markdown.js +1 -1
- package/lib/components/Request/RequestDetails.js +1 -1
- package/lib/components/Responses/OperationResponseList.js +1 -1
- package/lib/components/Responses/ResponseDetails.js +1 -1
- package/lib/components/Responses/types.d.ts +0 -1
- package/lib/components/Schema/OneOfSchema.js +1 -1
- package/lib/components/Schema/SubSchema.js +1 -1
- package/lib/components/ViewNested/ViewNested.d.ts +1 -2
- package/lib/components/ViewNested/ViewNested.js +1 -1
- package/lib/jotai/operation.d.ts +4 -8
- package/lib/jotai/operation.js +1 -1
- package/lib-esm/components/ExpandAllButton/ExpandAllButton.d.ts +1 -1
- package/lib-esm/components/ExpandAllButton/ExpandAllButton.js +1 -1
- package/lib-esm/components/ExpandAllButton/index.d.ts +0 -1
- package/lib-esm/components/ExpandAllButton/index.js +1 -1
- package/lib-esm/components/Markdown/Markdown.js +1 -1
- package/lib-esm/components/Request/RequestDetails.js +1 -1
- package/lib-esm/components/Responses/OperationResponseList.js +1 -1
- package/lib-esm/components/Responses/ResponseDetails.js +1 -1
- package/lib-esm/components/Responses/types.d.ts +0 -1
- package/lib-esm/components/Schema/OneOfSchema.js +1 -1
- package/lib-esm/components/Schema/SubSchema.js +1 -1
- package/lib-esm/components/ViewNested/ViewNested.d.ts +1 -2
- package/lib-esm/components/ViewNested/ViewNested.js +1 -1
- package/lib-esm/jotai/operation.d.ts +4 -8
- package/lib-esm/jotai/operation.js +1 -1
- package/package.json +1 -1
- package/lib/components/ExpandAllButton/getAllNestedSchema.d.ts +0 -8
- package/lib/components/ExpandAllButton/getAllNestedSchema.js +0 -2
- package/lib/components/ExpandAllButton/useUpdateExpandedFields.d.ts +0 -2
- package/lib/components/ExpandAllButton/useUpdateExpandedFields.js +0 -2
- package/lib-esm/components/ExpandAllButton/getAllNestedSchema.d.ts +0 -8
- package/lib-esm/components/ExpandAllButton/getAllNestedSchema.js +0 -2
- package/lib-esm/components/ExpandAllButton/useUpdateExpandedFields.d.ts +0 -2
- package/lib-esm/components/ExpandAllButton/useUpdateExpandedFields.js +0 -2
|
@@ -2,5 +2,5 @@ interface ExpandAllButtonProps {
|
|
|
2
2
|
operationPointer: string;
|
|
3
3
|
type: 'request' | 'response';
|
|
4
4
|
}
|
|
5
|
-
export declare const ExpandAllButton: ({ operationPointer, type }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element
|
|
5
|
+
export declare const ExpandAllButton: ({ operationPointer, type }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -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.ExpandAllButton=void 0;const jsx_runtime_1=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExpandAllButton=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),index_1=require("jotai/index"),operation_1=require("../../jotai/operation"),hooks_1=require("../../hooks"),ExpandAllButton=({operationPointer:e,type:t})=>{const o=(0,hooks_1.useTranslate)(),[n,i]=(0,index_1.useAtom)((0,operation_1.operationStore)(e));return(0,jsx_runtime_1.jsx)(StyledButton,{icon:(0,jsx_runtime_1.jsx)(theme_1.MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{i((e=>{const o=!e[t].expandedAll;return Object.assign(Object.assign({},e),{[t]:{expandedAll:o}})}))},children:n[t].expandedAll?o("openapi.collapseAll","Collapse all"):o("openapi.expandAll","Expand all")})};exports.ExpandAllButton=ExpandAllButton;const StyledButton=(0,styled_components_1.default)(theme_1.Button)`
|
|
2
2
|
margin-left: auto;
|
|
3
3
|
`;
|
|
4
4
|
//# sourceMappingURL=ExpandAllButton.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExpandAllButton=void 0;var ExpandAllButton_1=require("./ExpandAllButton");Object.defineProperty(exports,"ExpandAllButton",{enumerable:!0,get:function(){return ExpandAllButton_1.ExpandAllButton}});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,i)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__rest=this&&this.__rest||function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(r[o[i]]=e[o[i]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Markdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=__importStar(require("react")),markdoc_1=require("@markdoc/markdoc"),jotai_1=require("jotai"),dompurify_1=__importDefault(require("dompurify")),theme_1=require("@redocly/theme"),store_1=require("../../jotai/store"),TAGS_NOT_TO_WRAP=["OpenApiResponse","OpenApiRequestBody"],Markdown=e=>{var t,r,o,i,n,a,s,l,u,{source:d,ast:c,htmlWrap:_}=e,m=__rest(e,["source","ast","htmlWrap"]);const p=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom);if(!d&&!c)return null;const f=(null==p?void 0:p.markdocOptions)&&{tags:null===(t=p.markdocOptions)||void 0===t?void 0:t.tags,nodes:null===(r=p.markdocOptions)||void 0===r?void 0:r.nodes,partials:null===(o=p.markdocOptions)||void 0===o?void 0:o.partials,variables:null===(i=p.markdocOptions)||void 0===i?void 0:i.variables,functions:null===(n=p.markdocOptions)||void 0===n?void 0:n.functions},v=(null==p?void 0:p.markdocOptions)&&{components:null===(a=p.markdocOptions)||void 0===a?void 0:a.components};let O;if(d)if((0,theme_1.isString)(d)){const e=(null===(s=null==p?void 0:p.unstable_hooks)||void 0===s?void 0:s.sanitize)?null===(u=null===(l=p.unstable_hooks)||void 0===l?void 0:l.sanitize)||void 0===u?void 0:u.call(l,d):(null==p?void 0:p.sanitize)?dompurify_1.default.sanitize(d):d,t=(0,markdoc_1.parse)(e);O=(0,markdoc_1.transform)(t,f)}else{const e=markdoc_1.Ast.fromJSON("object"==typeof d.result?JSON.stringify(d.result):d.result);O=(Array.isArray(e),(0,markdoc_1.transform)(e,f))}else c&&(O=(0,markdoc_1.transform)(c,f));const b=e=>{const t=markdoc_1.renderers.react(e,react_1.default,v);return(0,jsx_runtime_1.jsx)(theme_1.Markdown,Object.assign({},m,{children:t,as:"div"}))};if(!_)return b(O);const
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,i)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__rest=this&&this.__rest||function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(r[o[i]]=e[o[i]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Markdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=__importStar(require("react")),markdoc_1=require("@markdoc/markdoc"),jotai_1=require("jotai"),dompurify_1=__importDefault(require("dompurify")),theme_1=require("@redocly/theme"),store_1=require("../../jotai/store"),TAGS_NOT_TO_WRAP=["OpenApiResponse","OpenApiRequestBody"],Markdown=e=>{var t,r,o,i,n,a,s,l,u,{source:d,ast:c,htmlWrap:_}=e,m=__rest(e,["source","ast","htmlWrap"]);const p=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom);if(!d&&!c)return null;const f=(null==p?void 0:p.markdocOptions)&&{tags:null===(t=p.markdocOptions)||void 0===t?void 0:t.tags,nodes:null===(r=p.markdocOptions)||void 0===r?void 0:r.nodes,partials:(e=>{if(e)return Object.entries(e).reduce(((e,[t,r])=>(e[t]=markdoc_1.Ast.fromJSON(JSON.stringify(r)),e)),{})})(null===(o=p.markdocOptions)||void 0===o?void 0:o.partials),variables:null===(i=p.markdocOptions)||void 0===i?void 0:i.variables,functions:null===(n=p.markdocOptions)||void 0===n?void 0:n.functions},v=(null==p?void 0:p.markdocOptions)&&{components:null===(a=p.markdocOptions)||void 0===a?void 0:a.components};let O;if(d)if((0,theme_1.isString)(d)){const e=(null===(s=null==p?void 0:p.unstable_hooks)||void 0===s?void 0:s.sanitize)?null===(u=null===(l=p.unstable_hooks)||void 0===l?void 0:l.sanitize)||void 0===u?void 0:u.call(l,d):(null==p?void 0:p.sanitize)?dompurify_1.default.sanitize(d):d,t=(0,markdoc_1.parse)(e);O=(0,markdoc_1.transform)(t,f)}else{const e=markdoc_1.Ast.fromJSON("object"==typeof d.result?JSON.stringify(d.result):d.result);O=(Array.isArray(e),(0,markdoc_1.transform)(e,f))}else c&&(O=(0,markdoc_1.transform)(c,f));const b=e=>{const t=markdoc_1.renderers.react(e,react_1.default,v);return(0,jsx_runtime_1.jsx)(theme_1.Markdown,Object.assign({},m,{children:t,as:"div"}))};if(!_)return b(O);const j=e=>{var t;return!1!==(null===(t=e.attributes)||void 0===t?void 0:t.htmlWrap)&&!TAGS_NOT_TO_WRAP.includes(null==e?void 0:e.name)};return O=Array.isArray(O)?O:O.children,(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:O.map(((e,t)=>{var r,o,i;return(0,jsx_runtime_1.jsx)(react_1.Fragment,{children:(o=j(e),i=e,o?_(b(i)):b(i))},(null===(r=null==e?void 0:e.attributes)||void 0===r?void 0:r.id)||t)}))})};exports.Markdown=Markdown;
|
|
2
2
|
//# sourceMappingURL=Markdown.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.RequestDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),common_1=require("../common"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),services_1=require("../../services"),Description_1=require("../OperationItem/Description"),Security_1=require("../Security"),ExpandAllButton_1=require("../ExpandAllButton"),RequestParameters_1=require("../RequestParameters");function RequestDetailsComponent({operation:{id:e,description:t,externalDocs:
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.RequestDetails=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"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),services_1=require("../../services"),Description_1=require("../OperationItem/Description"),Security_1=require("../Security"),ExpandAllButton_1=require("../ExpandAllButton"),RequestParameters_1=require("../RequestParameters"),app_1=require("../../jotai/app"),mediaContent_1=require("../../models/mediaContent");function RequestDetailsComponent({operation:{id:e,description:t,externalDocs:i,parameters:r,requestBody:s,pointer:n,security:o,extensions:a,callbackId:u},title:_,translate:m}){const l=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),c=(0,react_1.useMemo)((()=>{var e;const t=r.some((({schema:e})=>!e.isPrimitive&&!e.isCircular));if(!(null==s?void 0:s.content)||t)return t;const{schema:i}=(0,mediaContent_1.getActiveMediaType)(s.content,l)||{};return null===(e=null==i?void 0:i.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[l,r,null==s?void 0:s.content]);return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(common_1.Row,{children:(0,jsx_runtime_1.jsxs)(HeadingWrapper,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[e&&(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(e,"request")}),_||(null==m?void 0:m("openapi.request","Request")),c&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{operationPointer:n,type:"request"})]}),(0,jsx_runtime_1.jsx)(Description_1.Description,{description:t||i?t:void 0,externalDocs:i,extensions:a}),(0,jsx_runtime_1.jsx)(Security_1.Security,{securities:o})]})}),(0,jsx_runtime_1.jsx)(RequestParameters_1.RequestParameters,{parameters:r,body:s,operationId:e,callbackId:u})]})}const HeadingWrapper=styled_components_1.default.div`
|
|
2
2
|
width: 100%;
|
|
3
3
|
`;exports.RequestDetails=(0,react_1.memo)(RequestDetailsComponent);
|
|
4
4
|
//# sourceMappingURL=RequestDetails.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.OperationResponseList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),Tabs_1=require("../Tabs"),ResponseDetails_1=require("./ResponseDetails"),services_1=require("../../services"),styled_1=require("./styled"),LinkToField_1=require("../common/LinkToField"),utils_1=require("../../utils"),ExpandAllButton_1=require("../ExpandAllButton"),hooks_1=require("../../hooks");exports.OperationResponseList=(0,react_1.memo)((({responses:e,renderTitle:
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationResponseList=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),Tabs_1=require("../Tabs"),ResponseDetails_1=require("./ResponseDetails"),services_1=require("../../services"),styled_1=require("./styled"),LinkToField_1=require("../common/LinkToField"),utils_1=require("../../utils"),ExpandAllButton_1=require("../ExpandAllButton"),hooks_1=require("../../hooks"),models_1=require("../../models"),app_1=require("../../jotai/app");exports.OperationResponseList=(0,react_1.memo)((({responses:e,renderTitle:t,operationId:s,operationPointer:i,activeResponseTab:r,onTabChange:n,callbackId:o})=>{const a=(0,react_router_dom_1.useLocation)(),l=(0,hooks_1.useTranslate)(),[u]=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),_=e.map((({code:e})=>({key:e,title:e}))),d=_.find((({key:e})=>e===r||(0,utils_1.pathIncludesLink)(a,s)&&(0,utils_1.pathIncludesLink)(a,`c=${e}`))),{activeTab:p,handleTabChange:c}=(0,Tabs_1.useTabsState)({tabs:_,defaultTab:null==d?void 0:d.key,onChange:n}),m=_.find((e=>e.key===(r||p))),x=e.find((e=>e.code===(null==m?void 0:m.key))),j=(0,react_1.useMemo)((()=>{var e;if(!(null==x?void 0:x.content))return!1;const{schema:t}=(0,models_1.getActiveMediaType)(null==x?void 0:x.content,u)||{};return null===(e=null==t?void 0:t.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[u,null==x?void 0:x.content]);return m?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(TitleWrap,{children:[(null==t?void 0:t(m))||(0,jsx_runtime_1.jsxs)(styled_1.StyledTitle,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(s,`response&c=${m.key}`)}),l("openapi.responses","Responses")]}),(0,jsx_runtime_1.jsx)(Tabs_1.Tabs,{tabs:_,activeTab:m,onChange:c}),j&&(0,jsx_runtime_1.jsx)(ExpandAllButton_1.ExpandAllButton,{type:"response",operationPointer:i})]}),x?(0,jsx_runtime_1.jsx)("div",{children:(0,jsx_runtime_1.jsx)(ResponseDetails_1.ResponseDetails,{response:x,operationId:s,callbackId:o})},x.code):null]}):null}));const TitleWrap=(0,styled_components_1.default)(styled_1.Row)`
|
|
2
2
|
flex-wrap: wrap;
|
|
3
3
|
gap: var(--spacing-unit);
|
|
4
4
|
`;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),ResponseHeaders_1=require("./ResponseHeaders"),styled_1=require("./styled"),BodyContent_1=require("../common/BodyContent"),services_1=require("../../services")
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseDetails=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),ResponseHeaders_1=require("./ResponseHeaders"),styled_1=require("./styled"),BodyContent_1=require("../common/BodyContent"),services_1=require("../../services");function ResponseDetailsComponent({response:e,operationId:s,callbackId:n,disableDeepLinks:r}){const{description:t,headers:o,content:i,summary:d,code:a}=e;return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(styled_1.StyledDescription,{className:"redoc-markdown",source:d}),(0,jsx_runtime_1.jsx)(styled_1.StyledDescription,{className:"redoc-markdown",source:t}),(0,jsx_runtime_1.jsx)(ResponseHeaders_1.ResponseHeaders,{headers:o,deepLink:r?void 0:generateDeepLink(s,n,a,"headers")}),(0,jsx_runtime_1.jsx)(BodyContent_1.BodyContent,{content:i,skipWriteOnly:!0,deepLink:r?void 0:generateDeepLink(s,n,a,"body")})]})}function generateDeepLink(e,s="",n,r){const t=s?`${s}/response&c=${n}/${r}`:`response&c=${n}/${r}`;return(0,services_1.makeDeepLink)(e,t)}exports.ResponseDetails=(0,react_1.memo)(ResponseDetailsComponent);
|
|
2
2
|
//# sourceMappingURL=ResponseDetails.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
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:
|
|
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 t,{schema:{oneOf:o},schema:n,oneOfLevel:r=1}=e,i=__rest(e,["schema","schema","oneOfLevel"]);const s=(0,hooks_1.useTranslate)(),a=(0,jotai_1.useAtomValue)((0,operation_1.operationStore)(n.operationPointer)),c=(0,useOneOfLocationIdx_1.useOneOfLocationIdx)(o,r),_=-1===c?0:c,l=o[void 0!==(null===(t=a.activeOneOf)||void 0===t?void 0:t[n.pointer])?a.activeOneOf[n.pointer]:_];if(!l)return null;const m=o.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:[n.oneOfType,":"]}),(0,jsx_runtime_1.jsx)(SchemaSelection_1.SchemaSelection,{options:m,pointer:n.operationPointer,schema:n,defaultOneOfIdx:_}),l.deprecated&&(0,jsx_runtime_1.jsx)(common_1.StyledBadge,{deprecated:!0,children:s("openapi.badges.deprecated","Deprecated")}),l.description&&(0,jsx_runtime_1.jsx)(StyledDescription,{source:l.description}),(0,jsx_runtime_1.jsx)(ConstraintsView_1.ConstraintsView,{constraints:l.constraints}),(0,jsx_runtime_1.jsx)(Schema_1.Schema,Object.assign({},i,{schema:l,oneOfLevel:r+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.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"),
|
|
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"),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:a="",children:n,operationPointer:u}){var s;const p=(0,hooks_1.useTranslate)(),d=(0,react_router_dom_1.useLocation)(),l=(0,utils_1.pathIncludesLink)(d,r),_=(0,helpers_1.extractTypeFromDeepLink)(r),c=(0,index_1.useAtomValue)((0,operation_1.operationStore)(u)),x=`${p("openapi.actions.show","Show")} ${1===Number(a)?"":a} ${i&&"array "}${1!==a?"properties":"property"}`;return(0,jsx_runtime_1.jsx)(ViewNested_1.ViewNested,{expandByDefault:e||l,level:t,expandable:o,expandText:x,children:n,expandedAll:null===(s=c[_])||void 0===s?void 0:s.expandedAll})}exports.SubSchema=(0,react_1.memo)(SubSchemaComponent);
|
|
2
2
|
//# sourceMappingURL=SubSchema.js.map
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import type { PropsWithChildren } from 'react';
|
|
2
2
|
interface ViewNestedProps {
|
|
3
3
|
expandByDefault: boolean;
|
|
4
|
-
isExpandedFromParent?: boolean;
|
|
5
4
|
level?: number;
|
|
6
5
|
expandable?: boolean;
|
|
7
6
|
expandText?: string;
|
|
8
7
|
hideText?: string;
|
|
9
8
|
hideDivider?: boolean;
|
|
10
|
-
|
|
9
|
+
expandedAll?: boolean;
|
|
11
10
|
}
|
|
12
11
|
export declare const ViewNested: import("react").NamedExoticComponent<PropsWithChildren<ViewNestedProps>>;
|
|
13
12
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ViewNested=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importStar(require("styled-components")),react_1=require("react"),theme_1=require("@redocly/theme"),cycleColorsByLevel_1=require("../PropertyDetails/cycleColorsByLevel"),PlusCircleIcon_1=require("../PropertyDetails/PlusCircleIcon");function ViewNestedComponent({expandByDefault:e,
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),__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 r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ViewNested=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importStar(require("styled-components")),react_1=require("react"),theme_1=require("@redocly/theme"),cycleColorsByLevel_1=require("../PropertyDetails/cycleColorsByLevel"),PlusCircleIcon_1=require("../PropertyDetails/PlusCircleIcon");function ViewNestedComponent({expandByDefault:e,level:t,expandable:r=!1,expandText:o,hideText:n,hideDivider:i=!1,children:s,expandedAll:l}){const[c,a]=(0,react_1.useState)(null!=e&&e);(0,react_1.useEffect)((()=>{(0,theme_1.isUndefined)(l)||a(l)}),[l]);const d=c?(0,cycleColorsByLevel_1.cycleColorsByLevel)(t):void 0;if(!r)return s;return(0,jsx_runtime_1.jsxs)(Wrapper,{$divider:!i&&!c,className:"view-nested-wrapper",children:[(0,jsx_runtime_1.jsxs)(ShowProperty,{onClick:()=>{a((e=>!e))},children:[(0,jsx_runtime_1.jsx)(PlusCircleIcon_1.CircleIcon,{sign:c?"-":"+",color:d}),!c&&o,c&&(n||"")]}),c&&(0,jsx_runtime_1.jsx)(StyledNested,{color:d,children:s})]})}exports.ViewNested=(0,react_1.memo)(ViewNestedComponent);const ShowProperty=styled_components_1.default.button`
|
|
2
2
|
background: none;
|
|
3
3
|
border: none;
|
|
4
4
|
cursor: pointer;
|
package/lib/jotai/operation.d.ts
CHANGED
|
@@ -8,14 +8,10 @@ export type OperationStore = {
|
|
|
8
8
|
[field: string]: any;
|
|
9
9
|
};
|
|
10
10
|
request: {
|
|
11
|
-
|
|
12
|
-
[field: string]: boolean;
|
|
13
|
-
};
|
|
11
|
+
expandedAll?: boolean;
|
|
14
12
|
};
|
|
15
13
|
response: {
|
|
16
|
-
|
|
17
|
-
[field: string]: boolean;
|
|
18
|
-
};
|
|
14
|
+
expandedAll?: boolean;
|
|
19
15
|
};
|
|
20
16
|
};
|
|
21
17
|
export declare function getDefaultOperationStore(pointer: string, requestValues?: {
|
|
@@ -29,10 +25,10 @@ export declare function getDefaultOperationStore(pointer: string, requestValues?
|
|
|
29
25
|
[field: string]: any;
|
|
30
26
|
};
|
|
31
27
|
request: {
|
|
32
|
-
|
|
28
|
+
expandedAll: undefined;
|
|
33
29
|
};
|
|
34
30
|
response: {
|
|
35
|
-
|
|
31
|
+
expandedAll: undefined;
|
|
36
32
|
};
|
|
37
33
|
};
|
|
38
34
|
export declare const operationStore: import("jotai/vanilla/utils/atomFamily").AtomFamily<any, import("jotai").PrimitiveAtom<OperationStore> & {
|
package/lib/jotai/operation.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.operationStore=void 0,exports.getDefaultOperationStore=getDefaultOperationStore;const jotai_1=require("jotai"),utils_1=require("jotai/utils"),fast_deep_equal_1=__importDefault(require("fast-deep-equal"));function getDefaultOperationStore(e,t={}){return{activeExampleName:void 0,activeOneOf:{[e]:0},requestValues:t,request:{
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.operationStore=void 0,exports.getDefaultOperationStore=getDefaultOperationStore;const jotai_1=require("jotai"),utils_1=require("jotai/utils"),fast_deep_equal_1=__importDefault(require("fast-deep-equal"));function getDefaultOperationStore(e,t={}){return{activeExampleName:void 0,activeOneOf:{[e]:0},requestValues:t,request:{expandedAll:void 0},response:{expandedAll:void 0}}}exports.operationStore=(0,utils_1.atomFamily)((e=>(0,jotai_1.atom)(getDefaultOperationStore(e))),fast_deep_equal_1.default);
|
|
2
2
|
//# sourceMappingURL=operation.js.map
|
|
@@ -2,5 +2,5 @@ interface ExpandAllButtonProps {
|
|
|
2
2
|
operationPointer: string;
|
|
3
3
|
type: 'request' | 'response';
|
|
4
4
|
}
|
|
5
|
-
export declare const ExpandAllButton: ({ operationPointer, type }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element
|
|
5
|
+
export declare const ExpandAllButton: ({ operationPointer, type }: ExpandAllButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx}from"react/jsx-runtime";import
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import styled from"styled-components";import{Button,MaximizeIcon}from"@redocly/theme";import{useAtom}from"jotai/index";import{operationStore}from"../../jotai/operation";import{useTranslate}from"../../hooks";export const ExpandAllButton=({operationPointer:o,type:t})=>{const e=useTranslate(),[n,a]=useAtom(operationStore(o));return _jsx(StyledButton,{icon:_jsx(MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{a((o=>{const e=!o[t].expandedAll;return Object.assign(Object.assign({},o),{[t]:{expandedAll:e}})}))},children:n[t].expandedAll?e("openapi.collapseAll","Collapse all"):e("openapi.expandAll","Expand all")})};const StyledButton=styled(Button)`
|
|
2
2
|
margin-left: auto;
|
|
3
3
|
`;
|
|
4
4
|
//# sourceMappingURL=ExpandAllButton.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{ExpandAllButton}from"./ExpandAllButton";
|
|
1
|
+
export{ExpandAllButton}from"./ExpandAllButton";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var __rest=this&&this.__rest||function(r,o){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&o.indexOf(n)<0&&(t[n]=r[n]);if(null!=r&&"function"==typeof Object.getOwnPropertySymbols){var e=0;for(n=Object.getOwnPropertySymbols(r);e<n.length;e++)o.indexOf(n[e])<0&&Object.prototype.propertyIsEnumerable.call(r,n[e])&&(t[n[e]]=r[n[e]])}return t};import{jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";import React,{Fragment}from"react";import{parse,transform,renderers,Ast}from"@markdoc/markdoc";import{useAtomValue}from"jotai";import DOMPurify from"dompurify";import{Markdown as MarkdownWrapper,isString}from"@redocly/theme";import{globalOptionsAtom}from"../../jotai/store";const TAGS_NOT_TO_WRAP=["OpenApiResponse","OpenApiRequestBody"];export const Markdown=r=>{var o,t,n,e,i,s,a,l,d,{source:m,ast:u,htmlWrap:
|
|
1
|
+
var __rest=this&&this.__rest||function(r,o){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&o.indexOf(n)<0&&(t[n]=r[n]);if(null!=r&&"function"==typeof Object.getOwnPropertySymbols){var e=0;for(n=Object.getOwnPropertySymbols(r);e<n.length;e++)o.indexOf(n[e])<0&&Object.prototype.propertyIsEnumerable.call(r,n[e])&&(t[n[e]]=r[n[e]])}return t};import{jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";import React,{Fragment}from"react";import{parse,transform,renderers,Ast}from"@markdoc/markdoc";import{useAtomValue}from"jotai";import DOMPurify from"dompurify";import{Markdown as MarkdownWrapper,isString}from"@redocly/theme";import{globalOptionsAtom}from"../../jotai/store";const TAGS_NOT_TO_WRAP=["OpenApiResponse","OpenApiRequestBody"];export const Markdown=r=>{var o,t,n,e,i,s,a,l,d,{source:m,ast:u,htmlWrap:c}=r,p=__rest(r,["source","ast","htmlWrap"]);const v=useAtomValue(globalOptionsAtom);if(!m&&!u)return null;const f=(null==v?void 0:v.markdocOptions)&&{tags:null===(o=v.markdocOptions)||void 0===o?void 0:o.tags,nodes:null===(t=v.markdocOptions)||void 0===t?void 0:t.nodes,partials:(r=>{if(r)return Object.entries(r).reduce(((r,[o,t])=>(r[o]=Ast.fromJSON(JSON.stringify(t)),r)),{})})(null===(n=v.markdocOptions)||void 0===n?void 0:n.partials),variables:null===(e=v.markdocOptions)||void 0===e?void 0:e.variables,functions:null===(i=v.markdocOptions)||void 0===i?void 0:i.functions},O=(null==v?void 0:v.markdocOptions)&&{components:null===(s=v.markdocOptions)||void 0===s?void 0:s.components};let y;if(m)if(isString(m)){const r=(null===(a=null==v?void 0:v.unstable_hooks)||void 0===a?void 0:a.sanitize)?null===(d=null===(l=v.unstable_hooks)||void 0===l?void 0:l.sanitize)||void 0===d?void 0:d.call(l,m):(null==v?void 0:v.sanitize)?DOMPurify.sanitize(m):m,o=parse(r);y=transform(o,f)}else{const r=Ast.fromJSON("object"==typeof m.result?JSON.stringify(m.result):m.result);y=(Array.isArray(r),transform(r,f))}else u&&(y=transform(u,f));const _=r=>{const o=renderers.react(r,React,O);return _jsx(MarkdownWrapper,Object.assign({},p,{children:o,as:"div"}))};if(!c)return _(y);const b=r=>{var o;return!1!==(null===(o=r.attributes)||void 0===o?void 0:o.htmlWrap)&&!TAGS_NOT_TO_WRAP.includes(null==r?void 0:r.name)};return y=Array.isArray(y)?y:y.children,_jsx(_Fragment,{children:y.map(((r,o)=>{var t,n,e;return _jsx(Fragment,{children:(n=b(r),e=r,n?c(_(e)):_(e))},(null===(t=null==r?void 0:r.attributes)||void 0===t?void 0:t.id)||o)}))})};
|
|
2
2
|
//# sourceMappingURL=Markdown.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo}from"react";import styled from"styled-components";import{Row}from"../common";import{Title}from"../common/OperationItemTitle";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";import{Description}from"../OperationItem/Description";import{Security}from"../Security";import{ExpandAllButton
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useMemo}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{Row}from"../common";import{Title}from"../common/OperationItemTitle";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";import{Description}from"../OperationItem/Description";import{Security}from"../Security";import{ExpandAllButton}from"../ExpandAllButton";import{RequestParameters}from"../RequestParameters";import{activeMimeNameAtom}from"../../jotai/app";import{getActiveMediaType}from"../../models/mediaContent";function RequestDetailsComponent({operation:{id:e,description:t,externalDocs:o,parameters:i,requestBody:r,pointer:s,security:m,extensions:n,callbackId:a},title:p,translate:l}){const c=useAtomValue(activeMimeNameAtom),d=useMemo((()=>{var e;const t=i.some((({schema:e})=>!e.isPrimitive&&!e.isCircular));if(!(null==r?void 0:r.content)||t)return t;const{schema:o}=getActiveMediaType(r.content,c)||{};return null===(e=null==o?void 0:o.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[c,i,null==r?void 0:r.content]);return _jsxs(_Fragment,{children:[_jsx(Row,{children:_jsxs(HeadingWrapper,{children:[_jsxs(Title,{children:[e&&_jsx(LinkToField,{to:makeDeepLink(e,"request")}),p||(null==l?void 0:l("openapi.request","Request")),d&&_jsx(ExpandAllButton,{operationPointer:s,type:"request"})]}),_jsx(Description,{description:t||o?t:void 0,externalDocs:o,extensions:n}),_jsx(Security,{securities:m})]})}),_jsx(RequestParameters,{parameters:i,body:r,operationId:e,callbackId:a})]})}const HeadingWrapper=styled.div`
|
|
2
2
|
width: 100%;
|
|
3
3
|
`;export const RequestDetails=memo(RequestDetailsComponent);
|
|
4
4
|
//# sourceMappingURL=RequestDetails.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo}from"react";import{useLocation}from"react-router-dom";import styled from"styled-components";import{Tabs,useTabsState}from"../Tabs";import{ResponseDetails}from"./ResponseDetails";import{makeDeepLink}from"../../services";import{Row,StyledTitle}from"./styled";import{LinkToField}from"../common/LinkToField";import{pathIncludesLink}from"../../utils";import{ExpandAllButton}from"../ExpandAllButton";import{useTranslate}from"../../hooks";export const OperationResponseList=memo((({responses:e,renderTitle:o,operationId:
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useMemo}from"react";import{useLocation}from"react-router-dom";import styled from"styled-components";import{useAtomValue}from"jotai";import{Tabs,useTabsState}from"../Tabs";import{ResponseDetails}from"./ResponseDetails";import{makeDeepLink}from"../../services";import{Row,StyledTitle}from"./styled";import{LinkToField}from"../common/LinkToField";import{pathIncludesLink}from"../../utils";import{ExpandAllButton}from"../ExpandAllButton";import{useTranslate}from"../../hooks";import{getActiveMediaType}from"../../models";import{activeMimeNameAtom}from"../../jotai/app";export const OperationResponseList=memo((({responses:e,renderTitle:o,operationId:t,operationPointer:s,activeResponseTab:i,onTabChange:n,callbackId:a})=>{const r=useLocation(),l=useTranslate(),[m]=useAtomValue(activeMimeNameAtom),p=e.map((({code:e})=>({key:e,title:e}))),d=p.find((({key:e})=>e===i||pathIncludesLink(r,t)&&pathIncludesLink(r,`c=${e}`))),{activeTab:c,handleTabChange:u}=useTabsState({tabs:p,defaultTab:null==d?void 0:d.key,onChange:n}),T=p.find((e=>e.key===(i||c))),f=e.find((e=>e.code===(null==T?void 0:T.key))),v=useMemo((()=>{var e;if(!(null==f?void 0:f.content))return!1;const{schema:o}=getActiveMediaType(null==f?void 0:f.content,m)||{};return null===(e=null==o?void 0:o.fields)||void 0===e?void 0:e.some((({schema:e})=>!e.isPrimitive&&!e.isCircular))}),[m,null==f?void 0:f.content]);return T?_jsxs(_Fragment,{children:[_jsxs(TitleWrap,{children:[(null==o?void 0:o(T))||_jsxs(StyledTitle,{children:[_jsx(LinkToField,{to:makeDeepLink(t,`response&c=${T.key}`)}),l("openapi.responses","Responses")]}),_jsx(Tabs,{tabs:p,activeTab:T,onChange:u}),v&&_jsx(ExpandAllButton,{type:"response",operationPointer:s})]}),f?_jsx("div",{children:_jsx(ResponseDetails,{response:f,operationId:t,callbackId:a})},f.code):null]}):null}));const TitleWrap=styled(Row)`
|
|
2
2
|
flex-wrap: wrap;
|
|
3
3
|
gap: var(--spacing-unit);
|
|
4
4
|
`;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{ResponseHeaders}from"./ResponseHeaders";import{StyledDescription}from"./styled";import{BodyContent}from"../common/BodyContent";import{makeDeepLink}from"../../services";
|
|
1
|
+
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{ResponseHeaders}from"./ResponseHeaders";import{StyledDescription}from"./styled";import{BodyContent}from"../common/BodyContent";import{makeDeepLink}from"../../services";function ResponseDetailsComponent({response:e,operationId:s,callbackId:o,disableDeepLinks:n}){const{description:r,headers:t,content:i,summary:a,code:m}=e;return _jsxs(_Fragment,{children:[_jsx(StyledDescription,{className:"redoc-markdown",source:a}),_jsx(StyledDescription,{className:"redoc-markdown",source:r}),_jsx(ResponseHeaders,{headers:t,deepLink:n?void 0:generateDeepLink(s,o,m,"headers")}),_jsx(BodyContent,{content:i,skipWriteOnly:!0,deepLink:n?void 0:generateDeepLink(s,o,m,"body")})]})}export const ResponseDetails=memo(ResponseDetailsComponent);function generateDeepLink(e,s="",o,n){return makeDeepLink(e,s?`${s}/response&c=${o}/${n}`:`response&c=${o}/${n}`)}
|
|
2
2
|
//# sourceMappingURL=ResponseDetails.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __rest=this&&this.__rest||function(e,
|
|
1
|
+
var __rest=this&&this.__rest||function(e,o){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&o.indexOf(n)<0&&(t[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)o.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(t[n[r]]=e[n[r]])}return t};import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{StyledBadge,SelectionTitle}from"../common";import{Markdown}from"../Markdown";import{ConstraintsView}from"../common/ConstraintsView";import{Schema}from"./Schema";import{operationStore}from"../../jotai/operation";import{SchemaSelection}from"../common/SchemaSelection";import{useOneOfLocationIdx}from"./useOneOfLocationIdx";import{useTranslate}from"../../hooks";function OneOfSchemaComponent(e){var o,{schema:{oneOf:t},schema:n,oneOfLevel:r=1}=e,i=__rest(e,["schema","schema","oneOfLevel"]);const s=useTranslate(),a=useAtomValue(operationStore(n.operationPointer)),c=useOneOfLocationIdx(t,r),m=-1===c?0:c,p=t[void 0!==(null===(o=a.activeOneOf)||void 0===o?void 0:o[n.pointer])?a.activeOneOf[n.pointer]:m];if(!p)return null;const l=t.map(((e,o)=>({label:e.title||e.typePrefix+e.displayType,value:o})));return _jsxs(Wrapper,{children:[_jsxs(SelectionTitle,{children:[n.oneOfType,":"]}),_jsx(SchemaSelection,{options:l,pointer:n.operationPointer,schema:n,defaultOneOfIdx:m}),p.deprecated&&_jsx(StyledBadge,{deprecated:!0,children:s("openapi.badges.deprecated","Deprecated")}),p.description&&_jsx(StyledDescription,{source:p.description}),_jsx(ConstraintsView,{constraints:p.constraints}),_jsx(Schema,Object.assign({},i,{schema:p,oneOfLevel:r+1}))]})}export const OneOfSchema=memo(OneOfSchemaComponent);const StyledDescription=styled(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
|
-
import{jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import{useLocation}from"react-router-dom";import{
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import{useLocation}from"react-router-dom";import{useAtomValue}from"jotai/index";import{pathIncludesLink}from"../../utils";import{operationStore}from"../../jotai/operation";import{extractTypeFromDeepLink}from"./helpers";import{ViewNested}from"../ViewNested";import{useTranslate}from"../../hooks";function SubSchemaComponent({expandByDefault:e,deepLink:o,level:r,expandable:t=!1,isArray:a="",propertyLength:n="",children:p,operationPointer:i}){var m;const s=useTranslate(),l=useLocation(),u=pathIncludesLink(l,o),d=extractTypeFromDeepLink(o),c=useAtomValue(operationStore(i)),x=`${s("openapi.actions.show","Show")} ${1===Number(n)?"":n} ${a&&"array "}${1!==n?"properties":"property"}`;return _jsx(ViewNested,{expandByDefault:e||u,level:r,expandable:t,expandText:x,children:p,expandedAll:null===(m=c[d])||void 0===m?void 0:m.expandedAll})}export const SubSchema=memo(SubSchemaComponent);
|
|
2
2
|
//# sourceMappingURL=SubSchema.js.map
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import type { PropsWithChildren } from 'react';
|
|
2
2
|
interface ViewNestedProps {
|
|
3
3
|
expandByDefault: boolean;
|
|
4
|
-
isExpandedFromParent?: boolean;
|
|
5
4
|
level?: number;
|
|
6
5
|
expandable?: boolean;
|
|
7
6
|
expandText?: string;
|
|
8
7
|
hideText?: string;
|
|
9
8
|
hideDivider?: boolean;
|
|
10
|
-
|
|
9
|
+
expandedAll?: boolean;
|
|
11
10
|
}
|
|
12
11
|
export declare const ViewNested: import("react").NamedExoticComponent<PropsWithChildren<ViewNestedProps>>;
|
|
13
12
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled,{css}from"styled-components";import{memo,useEffect,useState}from"react";import{isUndefined}from"@redocly/theme";import{cycleColorsByLevel}from"../PropertyDetails/cycleColorsByLevel";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";function ViewNestedComponent({expandByDefault:e,
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled,{css}from"styled-components";import{memo,useEffect,useState}from"react";import{isUndefined}from"@redocly/theme";import{cycleColorsByLevel}from"../PropertyDetails/cycleColorsByLevel";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";function ViewNestedComponent({expandByDefault:e,level:r,expandable:o=!1,expandText:t,hideText:s,hideDivider:i=!1,children:n,expandedAll:l}){const[d,a]=useState(null!=e&&e);useEffect((()=>{isUndefined(l)||a(l)}),[l]);const c=d?cycleColorsByLevel(r):void 0;if(!o)return n;return _jsxs(Wrapper,{$divider:!i&&!d,className:"view-nested-wrapper",children:[_jsxs(ShowProperty,{onClick:()=>{a((e=>!e))},children:[_jsx(CircleIcon,{sign:d?"-":"+",color:c}),!d&&t,d&&(s||"")]}),d&&_jsx(StyledNested,{color:c,children:n})]})}export const ViewNested=memo(ViewNestedComponent);const ShowProperty=styled.button`
|
|
2
2
|
background: none;
|
|
3
3
|
border: none;
|
|
4
4
|
cursor: pointer;
|
|
@@ -8,14 +8,10 @@ export type OperationStore = {
|
|
|
8
8
|
[field: string]: any;
|
|
9
9
|
};
|
|
10
10
|
request: {
|
|
11
|
-
|
|
12
|
-
[field: string]: boolean;
|
|
13
|
-
};
|
|
11
|
+
expandedAll?: boolean;
|
|
14
12
|
};
|
|
15
13
|
response: {
|
|
16
|
-
|
|
17
|
-
[field: string]: boolean;
|
|
18
|
-
};
|
|
14
|
+
expandedAll?: boolean;
|
|
19
15
|
};
|
|
20
16
|
};
|
|
21
17
|
export declare function getDefaultOperationStore(pointer: string, requestValues?: {
|
|
@@ -29,10 +25,10 @@ export declare function getDefaultOperationStore(pointer: string, requestValues?
|
|
|
29
25
|
[field: string]: any;
|
|
30
26
|
};
|
|
31
27
|
request: {
|
|
32
|
-
|
|
28
|
+
expandedAll: undefined;
|
|
33
29
|
};
|
|
34
30
|
response: {
|
|
35
|
-
|
|
31
|
+
expandedAll: undefined;
|
|
36
32
|
};
|
|
37
33
|
};
|
|
38
34
|
export declare const operationStore: import("jotai/vanilla/utils/atomFamily").AtomFamily<any, import("jotai").PrimitiveAtom<OperationStore> & {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{atom}from"jotai";import{atomFamily}from"jotai/utils";import deepEqual from"fast-deep-equal";export function getDefaultOperationStore(e,t={}){return{activeExampleName:void 0,activeOneOf:{[e]:0},requestValues:t,request:{
|
|
1
|
+
import{atom}from"jotai";import{atomFamily}from"jotai/utils";import deepEqual from"fast-deep-equal";export function getDefaultOperationStore(e,t={}){return{activeExampleName:void 0,activeOneOf:{[e]:0},requestValues:t,request:{expandedAll:void 0},response:{expandedAll:void 0}}}export const operationStore=atomFamily((e=>atom(getDefaultOperationStore(e))),deepEqual);
|
|
2
2
|
//# sourceMappingURL=operation.js.map
|
package/package.json
CHANGED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { SchemaModel } from '../../models';
|
|
2
|
-
import type { OperationStore } from '../../jotai/operation';
|
|
3
|
-
export declare const getAllNestedSchema: ({ schema, activeOneOf, skipReadOnly, skipWriteOnly, }: {
|
|
4
|
-
schema?: SchemaModel;
|
|
5
|
-
activeOneOf: OperationStore["activeOneOf"];
|
|
6
|
-
skipReadOnly?: boolean;
|
|
7
|
-
skipWriteOnly?: boolean;
|
|
8
|
-
}) => any;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAllNestedSchema=void 0;const LinkToField_1=require("../common/LinkToField"),getAllNestedSchema=({schema:e,activeOneOf:i,skipReadOnly:s=!1,skipWriteOnly:t=!1})=>{var l;if(!e||e.isCircular)return{};if(e.oneOf&&e.oneOf.length){const s=e.oneOf[i[e.pointer]||0];return(null==s?void 0:s.isCircular)?{}:(0,exports.getAllNestedSchema)({schema:s,activeOneOf:i})}return(e.fields||(null===(l=e.items)||void 0===l?void 0:l.fields)||[]).reduce(((e,l)=>l.schema.isCircular||l.schema.isPrimitive||s&&l.schema.readOnly||t&&l.schema.writeOnly?e:Object.assign(Object.assign(Object.assign({},e),{[(0,LinkToField_1.generateDeepLink)(l)]:!1}),(0,exports.getAllNestedSchema)({schema:l.schema,activeOneOf:i,skipReadOnly:s,skipWriteOnly:t}))),{})};exports.getAllNestedSchema=getAllNestedSchema;
|
|
2
|
-
//# sourceMappingURL=getAllNestedSchema.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useUpdateExpandedFields=useUpdateExpandedFields;const index_1=require("jotai/index"),react_1=require("react"),theme_1=require("@redocly/theme"),models_1=require("../../models"),operation_1=require("../../jotai/operation"),getAllNestedSchema_1=require("./getAllNestedSchema"),app_1=require("../../jotai/app");function useUpdateExpandedFields(e,t,s,i){var a;const n=(0,index_1.useAtomValue)(app_1.activeMimeNameAtom),d=s&&(null===(a=(0,models_1.getActiveMediaType)(s,n))||void 0===a?void 0:a.schema),[{activeOneOf:l},r]=(0,index_1.useAtom)((0,operation_1.operationStore)(i)),c=(i=!1)=>{((null==t?void 0:t.length)||s)&&r((s=>{const a=(0,getAllNestedSchema_1.getAllNestedSchema)({schema:d,activeOneOf:s.activeOneOf,skipReadOnly:"request"===e,skipWriteOnly:"response"===e})||{},n=(0,getAllNestedSchema_1.getAllNestedSchema)({schema:{type:"object",fields:t},activeOneOf:s.activeOneOf,skipReadOnly:"request"===e,skipWriteOnly:"response"===e});return Object.assign(Object.assign({},s),{[e]:{expandedFields:Object.assign(Object.assign(Object.assign({},a),n),i?s[e].expandedFields:{})}})}))};(0,theme_1.useMount)((()=>{c(!0)})),(0,theme_1.useUnmount)((()=>{((null==t?void 0:t.length)||s)&&r((t=>Object.assign(Object.assign({},t),{[e]:{expandedFields:{}}})))})),(0,react_1.useEffect)((()=>{Object.keys(l).length>1&&c(!0)}),[l])}
|
|
2
|
-
//# sourceMappingURL=useUpdateExpandedFields.js.map
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { SchemaModel } from '../../models';
|
|
2
|
-
import type { OperationStore } from '../../jotai/operation';
|
|
3
|
-
export declare const getAllNestedSchema: ({ schema, activeOneOf, skipReadOnly, skipWriteOnly, }: {
|
|
4
|
-
schema?: SchemaModel;
|
|
5
|
-
activeOneOf: OperationStore["activeOneOf"];
|
|
6
|
-
skipReadOnly?: boolean;
|
|
7
|
-
skipWriteOnly?: boolean;
|
|
8
|
-
}) => any;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{generateDeepLink}from"../common/LinkToField";export const getAllNestedSchema=({schema:e,activeOneOf:i,skipReadOnly:n=!1,skipWriteOnly:s=!1})=>{var t;if(!e||e.isCircular)return{};if(e.oneOf&&e.oneOf.length){const n=e.oneOf[i[e.pointer]||0];return(null==n?void 0:n.isCircular)?{}:getAllNestedSchema({schema:n,activeOneOf:i})}return(e.fields||(null===(t=e.items)||void 0===t?void 0:t.fields)||[]).reduce(((e,t)=>t.schema.isCircular||t.schema.isPrimitive||n&&t.schema.readOnly||s&&t.schema.writeOnly?e:Object.assign(Object.assign(Object.assign({},e),{[generateDeepLink(t)]:!1}),getAllNestedSchema({schema:t.schema,activeOneOf:i,skipReadOnly:n,skipWriteOnly:s}))),{})};
|
|
2
|
-
//# sourceMappingURL=getAllNestedSchema.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{useAtomValue,useAtom}from"jotai/index";import{useEffect}from"react";import{useMount,useUnmount}from"@redocly/theme";import{getActiveMediaType}from"../../models";import{operationStore}from"../../jotai/operation";import{getAllNestedSchema}from"./getAllNestedSchema";import{activeMimeNameAtom}from"../../jotai/app";export function useUpdateExpandedFields(e,t,s,i){var o;const a=useAtomValue(activeMimeNameAtom),n=s&&(null===(o=getActiveMediaType(s,a))||void 0===o?void 0:o.schema),[{activeOneOf:m},c]=useAtom(operationStore(i)),r=(i=!1)=>{((null==t?void 0:t.length)||s)&&c((s=>{const o=getAllNestedSchema({schema:n,activeOneOf:s.activeOneOf,skipReadOnly:"request"===e,skipWriteOnly:"response"===e})||{},a=getAllNestedSchema({schema:{type:"object",fields:t},activeOneOf:s.activeOneOf,skipReadOnly:"request"===e,skipWriteOnly:"response"===e});return Object.assign(Object.assign({},s),{[e]:{expandedFields:Object.assign(Object.assign(Object.assign({},o),a),i?s[e].expandedFields:{})}})}))};useMount((()=>{r(!0)})),useUnmount((()=>{((null==t?void 0:t.length)||s)&&c((t=>Object.assign(Object.assign({},t),{[e]:{expandedFields:{}}})))})),useEffect((()=>{Object.keys(m).length>1&&r(!0)}),[m])}
|
|
2
|
-
//# sourceMappingURL=useUpdateExpandedFields.js.map
|