@digi-frontend/dgate-api-documentation 1.0.94 → 1.0.95

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.
@@ -1,2 +1,2 @@
1
- import{j as e}from"../../../../../_virtual/jsx-runtime.js";import s from"../../../../components/SVGLoader/SVGLoader.js";import l from"../../../../assets/icons/DownArrow.svg.js";import i from"../../../../assets/icons/RequestOption.svg.js";import a from"../../../../assets/icons/ArrowBack.svg.js";import o from"../../../../assets/icons/arrow-down.svg.js";import d from"../../../../assets/icons/newCopyIcon.svg.js";import r from"../../../../assets/icons/arrow-up.svg.js";import{d as t}from"../../../../../_virtual/index3.js";import{useState as n,useEffect as c,useMemo as v}from"react";import{handleStatusColor as h}from"../../../../helpers/methodAccordion.helper.js";import{httpStatusCodes as m}from"../../../../constants/index.js";import u from"../../../../components/Tooltip/Tooltip.js";import{useSectionToggle as p,SectionEnum as j}from"../../../../context/SectionToggleContext.js";import{copyToClipboard as x,capitalizeFirstLetter as b}from"../../../../utils/index.js";const N=({data:N,setActiveType:y,setActiveItemData:f})=>{var g,C,w,k,S,q,O,T;const[R,A]=n("header"),{toggleSection:E}=p(),[L,$]=n((null===(w=null===(C=null===(g=null==N?void 0:N.api)||void 0===g?void 0:g.servers)||void 0===C?void 0:C[0])||void 0===w?void 0:w.url)||""),[I,V]=n(!1);c(()=>{var e,s,l;$((null===(l=null===(s=null===(e=null==N?void 0:N.api)||void 0===e?void 0:e.servers)||void 0===s?void 0:s[0])||void 0===l?void 0:l.url)||"")},[N]),v(()=>{var e,s,l;const i=null===(l=null===(s=null===(e=N.api)||void 0===e?void 0:e.servers)||void 0===s?void 0:s.filter(e=>"/"!==e.url)[0])||void 0===l?void 0:l.url,a=null==N?void 0:N.path.split("/").slice(2);return`${i}${(null==a?void 0:a.length)?"/"+a.join("/"):""}`},[N]);const z=m.map(s=>({label:e.jsxs("div",{className:"statusCodeOptionContainer",children:[e.jsx("div",{className:"statusCodeOptionCircle",style:{backgroundColor:h(s)}}),e.jsx("span",{children:s})]}),value:s})),[D,_]=n(null),[B,G]=n(z[4]),[H,P]=n({});return((null==N?void 0:N.parameters)||[]).filter(e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===R.toLowerCase()}),c(()=>{if(B&&B.value){const e=null==N?void 0:N.responses[B.value];P(null==e?void 0:e.headers)}},[B,null==N?void 0:N.responses]),e.jsxs("div",{className:"api-details-expanded",children:[e.jsxs("div",{className:"test-button",children:[e.jsx("button",{className:"back-button",onClick:()=>{E(N.api.apiSpecId,[{type:j.OVERVIEW,setTo:!0}],{resetOthers:!0,filterKeys:[j.RESOURCE]}),y("OVERVIEW"),f(N.api)},children:e.jsx(s,{src:a})}),e.jsx(u,{content:"Comming soon",children:e.jsx("button",{className:"disabled",children:"Test"})})]}),e.jsx("h3",{children:N.api.title}),e.jsx("h1",{className:"api-title",children:null==N?void 0:N.summary}),e.jsx("div",{className:"url-box",children:e.jsxs("div",{className:"url-box_text-container",children:[e.jsx("span",{className:`method-label ${null===(k=null==N?void 0:N.method)||void 0===k?void 0:k.toLowerCase()}`,children:N.method}),e.jsxs("div",{className:"url-container",children:[e.jsxs("div",{className:"type-ddl",onClick:()=>V(e=>!e),children:[e.jsx("span",{className:"url-text",children:`${L}${N.path}`}),e.jsxs("div",{className:"icon-container",children:[0!==L.length&&e.jsx(s,{className:"icon",role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),x(L)},src:d}),0!==L.length&&e.jsx(s,{src:I?r:o})]})]}),I&&0!==L.length&&e.jsx("div",{className:"url-list",children:null===(q=null===(S=N.api)||void 0===S?void 0:S.servers)||void 0===q?void 0:q.map((s,l)=>e.jsxs("div",{className:"url-item",onClick:()=>{$(s.url),V(!1)},children:[e.jsx("input",{type:"radio",name:"api-method",checked:L===s.url,readOnly:!0}),e.jsx("span",{children:`${s.url}${N.path}`})]},l))})]})]})}),e.jsx("p",{className:"api-desc",children:(null==N?void 0:N.description)||"No Description"}),e.jsx("h3",{children:"Request"}),e.jsxs("div",{className:"request-section",children:[e.jsx("div",{className:"request-tabs",children:["header","path","query"].map(l=>e.jsxs("button",{className:"tab "+(R===l?"active":""),onClick:()=>A(l),children:[e.jsx(s,{src:i,className:"icon-left"}),e.jsx("span",{className:"tab-label",children:"requestBody"===l?"Request Body":l.charAt(0).toUpperCase()+l.slice(1)})]},l))}),e.jsx("div",{className:"table-wrapper",children:e.jsxs("table",{className:"param-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"head-table-label",children:"Parameter Name"}),e.jsx("th",{className:"head-table-label",children:"Required"}),e.jsx("th",{className:"head-table-label",children:"Type"}),e.jsx("th",{className:"head-table-label",children:"Enum"}),e.jsx("th",{className:"head-table-label",children:"Description"})]})}),e.jsx("tbody",{children:null===(O=N.parameters)||void 0===O?void 0:O.filter(e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===R.toLowerCase()}).map((i,a)=>{var o,d,r,t,n,c,v;return e.jsxs("tr",{children:[e.jsx("td",{children:i.name}),e.jsx("td",{children:i.required?"True":"False"}),e.jsxs("td",{style:{textTransform:"capitalize"},children:[e.jsx("span",{children:(null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.type)||"-"}),"array"===(null===(d=null==i?void 0:i.schema)||void 0===d?void 0:d.type)&&(null===(t=null===(r=null==i?void 0:i.schema)||void 0===r?void 0:r.items)||void 0===t?void 0:t.type)&&e.jsxs("span",{style:{color:"#616874",fontSize:"0.75rem"},children:["_",b(null===(c=null===(n=i.schema)||void 0===n?void 0:n.items)||void 0===c?void 0:c.type)]})]}),e.jsx("td",{children:Array.isArray(null===(v=i.schema)||void 0===v?void 0:v.enum)?i.schema.enum.join(" / "):"-"}),e.jsxs("td",{className:"desc-cell",children:[e.jsx("div",{className:"desc-text "+(D===a?"expanded":""),children:i.description||"No description"}),e.jsx("button",{className:"desc-toggle",onClick:()=>_(D===a?null:a),children:e.jsx(s,{src:l,className:D===a?"rotated":""})})]})]},a)})})]})})]}),e.jsxs("div",{className:"response-section",children:[e.jsx("h3",{children:"Response"}),e.jsxs("div",{children:[e.jsx("div",{style:{height:"0.5rem",width:"7.5rem",marginLeft:"auto"},children:(null===(T=Object.keys((null==N?void 0:N.responses)||{}))||void 0===T?void 0:T.length)>0&&e.jsx("div",{className:"codeboxSection",children:e.jsx("div",{className:"codeboxHeader",children:e.jsx(t.SelectGroup,{size:"small",withSearch:!1,isMultiple:!1,clearable:!1,placeholder:"200",options:[{list:z}],value:B,onChange:e=>{G(e)}})})})}),e.jsxs("button",{className:"tab active ",children:[e.jsx(s,{src:i,className:"icon-left"}),"Header"]})]}),e.jsx("div",{className:"table-wrapper",children:e.jsxs("table",{className:"param-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"head-table-label",children:"Header Name"}),e.jsx("th",{className:"head-table-label",children:"Required"}),e.jsx("th",{className:"head-table-label",children:"Type"}),e.jsx("th",{className:"head-table-label",children:"Enum"}),e.jsx("th",{className:"head-table-label",children:"Description"})]})}),e.jsx("tbody",{children:!!H&&Object.keys(H)&&Object.keys(H).map(s=>{var l,i,a,o,d,r,t,n,c,v,h,m,u,p,j;return e.jsxs("tr",{children:[e.jsx("td",{children:s}),e.jsx("td",{children:null===(l=H[s])||void 0===l?void 0:l.required.toString()}),e.jsxs("td",{style:{textTransform:"capitalize"},children:[e.jsx("span",{children:(null===(a=null===(i=H[s])||void 0===i?void 0:i.schema)||void 0===a?void 0:a.type)||"-"}),"array"===(null===(d=null===(o=H[s])||void 0===o?void 0:o.schema)||void 0===d?void 0:d.type)&&(null===(n=null===(t=null===(r=H[s])||void 0===r?void 0:r.schema)||void 0===t?void 0:t.items)||void 0===n?void 0:n.type)&&e.jsxs("span",{style:{color:"#616874",fontSize:"0.75rem"},children:["_",b(null===(h=null===(v=null===(c=H[s])||void 0===c?void 0:c.schema)||void 0===v?void 0:v.items)||void 0===h?void 0:h.type)]})]}),e.jsx("td",{children:null===(p=null===(u=null===(m=H[s])||void 0===m?void 0:m.schema)||void 0===u?void 0:u.enum)||void 0===p?void 0:p.join("/")}),e.jsx("td",{children:null===(j=H[s])||void 0===j?void 0:j.description})]})})})]})})]})]})};export{N as EndpointPage};
1
+ import{j as e}from"../../../../../_virtual/jsx-runtime.js";import s from"../../../../components/SVGLoader/SVGLoader.js";import l from"../../../../assets/icons/DownArrow.svg.js";import i from"../../../../assets/icons/RequestOption.svg.js";import a from"../../../../assets/icons/ArrowBack.svg.js";import o from"../../../../assets/icons/arrow-down.svg.js";import d from"../../../../assets/icons/newCopyIcon.svg.js";import r from"../../../../assets/icons/arrow-up.svg.js";import{d as t}from"../../../../../_virtual/index3.js";import{useState as n,useEffect as c,useMemo as v}from"react";import{handleStatusColor as h}from"../../../../helpers/methodAccordion.helper.js";import{httpStatusCodes as m}from"../../../../constants/index.js";import u from"../../../../components/Tooltip/Tooltip.js";import{useSectionToggle as p,SectionEnum as j}from"../../../../context/SectionToggleContext.js";import{copyToClipboard as x,capitalizeFirstLetter as b}from"../../../../utils/index.js";const N=({data:N,setActiveType:y,setActiveItemData:f})=>{var g,C,w,k,S,q,O,T;const[R,$]=n("header"),{toggleSection:A}=p(),[E,L]=n((null===(w=null===(C=null===(g=null==N?void 0:N.api)||void 0===g?void 0:g.servers)||void 0===C?void 0:C[0])||void 0===w?void 0:w.url)||""),[I,V]=n(!1);c(()=>{var e,s,l;L((null===(l=null===(s=null===(e=null==N?void 0:N.api)||void 0===e?void 0:e.servers)||void 0===s?void 0:s[0])||void 0===l?void 0:l.url)||"")},[N]),v(()=>{var e,s,l;const i=null===(l=null===(s=null===(e=N.api)||void 0===e?void 0:e.servers)||void 0===s?void 0:s.filter(e=>"/"!==e.url)[0])||void 0===l?void 0:l.url,a=null==N?void 0:N.path.split("/").slice(2);return`${i}${(null==a?void 0:a.length)?"/"+a.join("/"):""}`},[N]);const z=m.map(s=>({label:e.jsxs("div",{className:"statusCodeOptionContainer",children:[e.jsx("div",{className:"statusCodeOptionCircle",style:{backgroundColor:h(s)}}),e.jsx("span",{children:s})]}),value:s})),[D,_]=n(null),[B,G]=n(z[4]),[H,P]=n({});return((null==N?void 0:N.parameters)||[]).filter(e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===R.toLowerCase()}),c(()=>{if(B&&B.value){const e=null==N?void 0:N.responses[B.value];P(null==e?void 0:e.headers)}},[B,null==N?void 0:N.responses]),e.jsxs("div",{className:"api-details-expanded",children:[e.jsxs("div",{className:"test-button",children:[e.jsx("button",{className:"back-button",onClick:()=>{A(N.api.apiSpecId,[{type:j.OVERVIEW,setTo:!0}],{resetOthers:!0,filterKeys:[j.RESOURCE]}),y("OVERVIEW"),f(N.api)},children:e.jsx(s,{src:a})}),e.jsx(u,{content:"Comming soon",children:e.jsx("button",{className:"disabled",children:"Test"})})]}),e.jsx("h3",{children:N.api.title}),e.jsx("h1",{className:"api-title",children:null==N?void 0:N.summary}),e.jsxs("div",{className:"url-box",children:[I&&0!==E.length&&e.jsx("div",{className:"url-list",children:null===(S=null===(k=N.api)||void 0===k?void 0:k.servers)||void 0===S?void 0:S.map((s,l)=>e.jsxs("div",{className:"url-item",onClick:()=>{L(s.url),V(!1)},children:[e.jsx("input",{type:"radio",name:"api-method",checked:E===s.url,readOnly:!0}),e.jsx("span",{children:`${s.url}${N.path}`})]},l))}),e.jsxs("div",{className:"url-box_text-container",children:[e.jsx("span",{className:`method-label ${null===(q=null==N?void 0:N.method)||void 0===q?void 0:q.toLowerCase()}`,children:N.method}),e.jsx("div",{className:"url-container",children:e.jsxs("div",{className:"type-ddl",onClick:()=>V(e=>!e),children:[e.jsx("span",{className:"url-text",children:`${E}${N.path}`}),e.jsxs("div",{className:"icon-container",children:[e.jsx(s,{className:"icon",role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),x(`${E}${N.path}`)},src:d}),0!==E.length&&e.jsx(s,{src:I?r:o})]})]})})]})]}),e.jsx("p",{className:"api-desc",children:(null==N?void 0:N.description)||"No Description"}),e.jsx("h3",{children:"Request"}),e.jsxs("div",{className:"request-section",children:[e.jsx("div",{className:"request-tabs",children:["header","path","query"].map(l=>e.jsxs("button",{className:"tab "+(R===l?"active":""),onClick:()=>$(l),children:[e.jsx(s,{src:i,className:"icon-left"}),e.jsx("span",{className:"tab-label",children:"requestBody"===l?"Request Body":l.charAt(0).toUpperCase()+l.slice(1)})]},l))}),e.jsx("div",{className:"table-wrapper",children:e.jsxs("table",{className:"param-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"head-table-label",children:"Parameter Name"}),e.jsx("th",{className:"head-table-label",children:"Required"}),e.jsx("th",{className:"head-table-label",children:"Type"}),e.jsx("th",{className:"head-table-label",children:"Enum"}),e.jsx("th",{className:"head-table-label",children:"Description"})]})}),e.jsx("tbody",{children:null===(O=N.parameters)||void 0===O?void 0:O.filter(e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===R.toLowerCase()}).map((i,a)=>{var o,d,r,t,n,c,v;return e.jsxs("tr",{children:[e.jsx("td",{children:i.name}),e.jsx("td",{children:i.required?"True":"False"}),e.jsxs("td",{style:{textTransform:"capitalize"},children:[e.jsx("span",{children:(null===(o=null==i?void 0:i.schema)||void 0===o?void 0:o.type)||"-"}),"array"===(null===(d=null==i?void 0:i.schema)||void 0===d?void 0:d.type)&&(null===(t=null===(r=null==i?void 0:i.schema)||void 0===r?void 0:r.items)||void 0===t?void 0:t.type)&&e.jsxs("span",{style:{color:"#616874",fontSize:"0.75rem"},children:["_",b(null===(c=null===(n=i.schema)||void 0===n?void 0:n.items)||void 0===c?void 0:c.type)]})]}),e.jsx("td",{children:Array.isArray(null===(v=i.schema)||void 0===v?void 0:v.enum)?i.schema.enum.join(" / "):"-"}),e.jsxs("td",{className:"desc-cell",children:[e.jsx("div",{className:"desc-text "+(D===a?"expanded":""),children:i.description||"No description"}),e.jsx("button",{className:"desc-toggle",onClick:()=>_(D===a?null:a),children:e.jsx(s,{src:l,className:D===a?"rotated":""})})]})]},a)})})]})})]}),e.jsxs("div",{className:"response-section",children:[e.jsx("h3",{children:"Response"}),e.jsxs("div",{children:[e.jsx("div",{style:{height:"0.5rem",width:"7.5rem",marginLeft:"auto"},children:(null===(T=Object.keys((null==N?void 0:N.responses)||{}))||void 0===T?void 0:T.length)>0&&e.jsx("div",{className:"codeboxSection",children:e.jsx("div",{className:"codeboxHeader",children:e.jsx(t.SelectGroup,{size:"small",withSearch:!1,isMultiple:!1,clearable:!1,placeholder:"200",options:[{list:z}],value:B,onChange:e=>{G(e)}})})})}),e.jsxs("button",{className:"tab active ",children:[e.jsx(s,{src:i,className:"icon-left"}),"Header"]})]}),e.jsx("div",{className:"table-wrapper",children:e.jsxs("table",{className:"param-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"head-table-label",children:"Header Name"}),e.jsx("th",{className:"head-table-label",children:"Required"}),e.jsx("th",{className:"head-table-label",children:"Type"}),e.jsx("th",{className:"head-table-label",children:"Enum"}),e.jsx("th",{className:"head-table-label",children:"Description"})]})}),e.jsx("tbody",{children:!!H&&Object.keys(H)&&Object.keys(H).map(s=>{var l,i,a,o,d,r,t,n,c,v,h,m,u,p,j;return e.jsxs("tr",{children:[e.jsx("td",{children:s}),e.jsx("td",{children:null===(l=H[s])||void 0===l?void 0:l.required.toString()}),e.jsxs("td",{style:{textTransform:"capitalize"},children:[e.jsx("span",{children:(null===(a=null===(i=H[s])||void 0===i?void 0:i.schema)||void 0===a?void 0:a.type)||"-"}),"array"===(null===(d=null===(o=H[s])||void 0===o?void 0:o.schema)||void 0===d?void 0:d.type)&&(null===(n=null===(t=null===(r=H[s])||void 0===r?void 0:r.schema)||void 0===t?void 0:t.items)||void 0===n?void 0:n.type)&&e.jsxs("span",{style:{color:"#616874",fontSize:"0.75rem"},children:["_",b(null===(h=null===(v=null===(c=H[s])||void 0===c?void 0:c.schema)||void 0===v?void 0:v.items)||void 0===h?void 0:h.type)]})]}),e.jsx("td",{children:null===(p=null===(u=null===(m=H[s])||void 0===m?void 0:m.schema)||void 0===u?void 0:u.enum)||void 0===p?void 0:p.join("/")}),e.jsx("td",{children:null===(j=H[s])||void 0===j?void 0:j.description})]})})})]})})]})]})};export{N as EndpointPage};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../src/layout/docsComponents/DocsContent/EndpointPage/index.tsx"],"sourcesContent":["import SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport {\n ArrowBack,\n arrowDown,\n arrowUp,\n DownArrowIcon,\n newCopyIcon,\n RequestOption,\n} from '../../../../assets/icons/index'\nimport { SelectGroup } from 'digitinary-ui'\nimport { useEffect, useMemo, useState } from 'react'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\nimport { handleStatusColor } from '../../../../helpers/methodAccordion.helper'\nimport { httpStatusCodes } from '../../../../constants/index'\nimport styles from '../../Codebox/style.module.scss'\nimport Tooltip from '../../../../components/Tooltip/Tooltip'\nimport './style.scss'\nimport { SectionEnum, useSectionToggle } from '../../../../../src/context/SectionToggleContext'\nimport { capitalizeFirstLetter, copyToClipboard } from '../../../../../src/utils'\n\nexport const EndpointPage = ({\n data,\n setActiveType,\n setActiveItemData,\n}: {\n data: EndpointData\n setActiveType: React.Dispatch<React.SetStateAction<'OVERVIEW' | 'ENDPOINT'>>\n setActiveItemData: React.Dispatch<React.SetStateAction<OverviewData | EndpointData>>\n}) => {\n const [activeTab, setActiveTab] = useState('header')\n const { toggleSection } = useSectionToggle()\n const [selectedUrl, setSelectedUrl] = useState(data?.api?.servers?.[0]?.url || '')\n const [isUrlDropdownOpen, setIsUrlDropdownOpen] = useState<boolean>(false)\n\n useEffect(() => {\n setSelectedUrl(data?.api?.servers?.[0]?.url || '')\n }, [data])\n\n const fullUrl = useMemo(() => {\n // env gateway url + api version(if appended) + context path\n const url = data.api?.servers?.filter((s) => s.url !== '/')[0]?.url\n const pathParts = data?.path.split('/').slice(2) // slice from index 2 to skip the first empty \"\" and \"comments\"\n const fullPath = !!pathParts?.length ? '/' + pathParts.join('/') : '' // this will contain the full path without the context path\n return `${url}${fullPath}`\n }, [data])\n\n const httpStatusCodeOptions = httpStatusCodes.map((code) => ({\n label: (\n <div className={'statusCodeOptionContainer'}>\n <div\n className={'statusCodeOptionCircle'}\n style={{ backgroundColor: handleStatusColor(code) }}\n ></div>\n <span>{code}</span>\n </div>\n ),\n value: code,\n }))\n\n const [expanded, setExpanded] = useState(null)\n const [selectedResStatusCode, setSelectedResStatusCode] = useState(httpStatusCodeOptions[4])\n const [headersList, setHeadersList] = useState({})\n const requestTableData = (data?.parameters || []).filter(\n (param) => param.in?.toLowerCase() === activeTab.toLowerCase()\n )\n\n useEffect(() => {\n if (selectedResStatusCode && selectedResStatusCode.value) {\n const headerObj = data?.responses[selectedResStatusCode.value]\n setHeadersList(headerObj?.headers)\n }\n }, [selectedResStatusCode, data?.responses])\n\n // ? TODO: 'body' should be returned after discussing with PO\n\n return (\n <div className=\"api-details-expanded\">\n <div className=\"test-button\">\n <button\n className=\"back-button\"\n onClick={() => {\n toggleSection(data.api.apiSpecId, [{ type: SectionEnum.OVERVIEW, setTo: true }], {\n resetOthers: true,\n filterKeys: [SectionEnum.RESOURCE],\n })\n setActiveType('OVERVIEW')\n setActiveItemData(data.api)\n }}\n >\n <SVGLoader src={ArrowBack} />\n </button>\n\n <Tooltip content=\"Comming soon\">\n <button className=\"disabled\">Test</button>\n </Tooltip>\n </div>\n <h3>{data.api.title}</h3>\n <h1 className=\"api-title\">{data?.summary}</h1>\n <div className=\"url-box\">\n <div className=\"url-box_text-container\">\n <span className={`method-label ${data?.method?.toLowerCase()}`}>{data.method}</span>\n <div className=\"url-container\">\n <div className=\"type-ddl\" onClick={() => setIsUrlDropdownOpen((prev) => !prev)}>\n <span className=\"url-text\">{`${selectedUrl}${data.path}`}</span>\n <div className=\"icon-container\">\n {selectedUrl.length !== 0 && (\n <SVGLoader\n className=\"icon\"\n role=\"button\"\n tabIndex={0}\n onClick={(e) => {\n e.stopPropagation()\n copyToClipboard(selectedUrl)\n }}\n src={newCopyIcon}\n />\n )}\n {selectedUrl.length !== 0 && (\n <SVGLoader src={!isUrlDropdownOpen ? arrowDown : arrowUp} />\n )}\n </div>\n </div>\n\n {isUrlDropdownOpen && selectedUrl.length !== 0 && (\n <div className=\"url-list\">\n {data.api?.servers?.map((server, index) => (\n <div\n key={index}\n className=\"url-item\"\n onClick={() => {\n setSelectedUrl(server.url)\n setIsUrlDropdownOpen(false)\n }}\n >\n <input\n type=\"radio\"\n name=\"api-method\"\n checked={selectedUrl === server.url}\n readOnly\n />\n <span>{`${server.url}${data.path}`}</span>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n </div>\n\n <p className=\"api-desc\">{data?.description || 'No Description'}</p>\n\n <h3>Request</h3>\n\n <div className=\"request-section\">\n <div className=\"request-tabs\">\n {['header', 'path', 'query'].map((tab) => (\n <button\n key={tab}\n className={`tab ${activeTab === tab ? 'active' : ''}`}\n onClick={() => setActiveTab(tab)}\n >\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n <span className=\"tab-label\">\n {tab === 'requestBody'\n ? 'Request Body'\n : tab.charAt(0).toUpperCase() + tab.slice(1)}\n </span>\n </button>\n ))}\n </div>\n\n {\n <div className=\"table-wrapper\">\n <table className=\"param-table\">\n <thead>\n <tr>\n <th className=\"head-table-label\">Parameter Name</th>\n <th className=\"head-table-label\">Required</th>\n <th className=\"head-table-label\">Type</th>\n <th className=\"head-table-label\">Enum</th>\n <th className=\"head-table-label\">Description</th>\n </tr>\n </thead>\n <tbody>\n {data.parameters\n ?.filter((p) => p.in?.toLowerCase() === activeTab.toLowerCase())\n .map((row, index) => (\n <tr key={index}>\n <td>{row.name}</td>\n <td>{row.required ? 'True' : 'False'}</td>\n <td style={{ textTransform: 'capitalize' }}>\n <span>{row?.schema?.type || '-'}</span>\n {row?.schema?.type === 'array' && row?.schema?.items?.type && (\n <span style={{ color: '#616874', fontSize: '0.75rem' }}>\n _{capitalizeFirstLetter(row.schema?.items?.type)}\n </span>\n )}\n </td>\n <td>{Array.isArray(row.schema?.enum) ? row.schema.enum.join(' / ') : '-'}</td>\n <td className=\"desc-cell\">\n <div className={`desc-text ${expanded === index ? 'expanded' : ''}`}>\n {row.description || 'No description'}\n </div>\n <button\n className=\"desc-toggle\"\n onClick={() => setExpanded(expanded === index ? null : index)}\n >\n <SVGLoader\n src={DownArrowIcon}\n className={expanded === index ? 'rotated' : ''}\n />\n </button>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n }\n </div>\n\n <div className=\"response-section\">\n <h3>Response</h3>\n\n <div>\n <div style={{ height: '0.5rem', width: '7.5rem', marginLeft: 'auto' }}>\n {Object.keys(data?.responses || {})?.length > 0 && (\n <div className={'codeboxSection'}>\n <div className={`${'codeboxHeader'}`}>\n <SelectGroup\n size=\"small\"\n withSearch={false}\n isMultiple={false}\n clearable={false}\n placeholder=\"200\"\n options={[\n {\n list: httpStatusCodeOptions,\n },\n ]}\n value={selectedResStatusCode}\n onChange={(value) => {\n setSelectedResStatusCode(value)\n }}\n />\n </div>\n </div>\n )}\n </div>\n <button className=\"tab active \">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Header\n </button>\n </div>\n\n <div className=\"table-wrapper\">\n <table className=\"param-table\">\n <thead>\n <tr>\n <th className=\"head-table-label\">Header Name</th>\n <th className=\"head-table-label\">Required</th>\n <th className=\"head-table-label\">Type</th>\n <th className=\"head-table-label\">Enum</th>\n <th className=\"head-table-label\">Description</th>\n </tr>\n </thead>\n <tbody>\n {!!headersList &&\n Object.keys(headersList) &&\n Object.keys(headersList).map((key) => (\n <tr>\n <td>{key}</td>\n <td>{headersList[key]?.required.toString()}</td>\n <td style={{ textTransform: 'capitalize' }}>\n <span>{headersList[key]?.schema?.type || '-'}</span>\n {headersList[key]?.schema?.type === 'array' &&\n headersList[key]?.schema?.items?.type && (\n <span style={{ color: '#616874', fontSize: '0.75rem' }}>\n _{capitalizeFirstLetter(headersList[key]?.schema?.items?.type)}\n </span>\n )}\n </td>\n <td>{headersList[key]?.schema?.enum?.join('/')}</td>\n <td>{headersList[key]?.description}</td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["EndpointPage","data","setActiveType","setActiveItemData","activeTab","setActiveTab","useState","toggleSection","useSectionToggle","selectedUrl","setSelectedUrl","_c","_b","_a","api","servers","url","isUrlDropdownOpen","setIsUrlDropdownOpen","useEffect","useMemo","filter","s","pathParts","path","split","slice","length","join","httpStatusCodeOptions","httpStatusCodes","map","code","label","_jsxs","jsxs","className","children","_jsx","style","backgroundColor","handleStatusColor","value","expanded","setExpanded","selectedResStatusCode","setSelectedResStatusCode","headersList","setHeadersList","parameters","param","in","toLowerCase","headerObj","responses","headers","onClick","apiSpecId","type","SectionEnum","OVERVIEW","setTo","resetOthers","filterKeys","RESOURCE","SVGLoader","src","ArrowBack","jsx","Tooltip","content","title","summary","_d","method","prev","role","tabIndex","e","stopPropagation","copyToClipboard","newCopyIcon","arrowUp","arrowDown","_e","_f","server","index","name","checked","readOnly","description","tab","RequestOption","charAt","toUpperCase","_g","p","row","required","textTransform","schema","items","color","fontSize","capitalizeFirstLetter","Array","isArray","enum","DownArrowIcon","height","width","marginLeft","_h","Object","keys","SelectGroup","size","withSearch","isMultiple","clearable","placeholder","options","list","onChange","key","toString","_k","_j","_p","_o","_q"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/layout/docsComponents/DocsContent/EndpointPage/index.tsx"],"sourcesContent":["import SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport {\n ArrowBack,\n arrowDown,\n arrowUp,\n DownArrowIcon,\n newCopyIcon,\n RequestOption,\n} from '../../../../assets/icons/index'\nimport { SelectGroup } from 'digitinary-ui'\nimport { useEffect, useMemo, useState } from 'react'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\nimport { handleStatusColor } from '../../../../helpers/methodAccordion.helper'\nimport { httpStatusCodes } from '../../../../constants/index'\nimport styles from '../../Codebox/style.module.scss'\nimport Tooltip from '../../../../components/Tooltip/Tooltip'\nimport './style.scss'\nimport { SectionEnum, useSectionToggle } from '../../../../../src/context/SectionToggleContext'\nimport { capitalizeFirstLetter, copyToClipboard } from '../../../../../src/utils'\n\nexport const EndpointPage = ({\n data,\n setActiveType,\n setActiveItemData,\n}: {\n data: EndpointData\n setActiveType: React.Dispatch<React.SetStateAction<'OVERVIEW' | 'ENDPOINT'>>\n setActiveItemData: React.Dispatch<React.SetStateAction<OverviewData | EndpointData>>\n}) => {\n const [activeTab, setActiveTab] = useState('header')\n const { toggleSection } = useSectionToggle()\n const [selectedUrl, setSelectedUrl] = useState(data?.api?.servers?.[0]?.url || '')\n const [isUrlDropdownOpen, setIsUrlDropdownOpen] = useState<boolean>(false)\n\n useEffect(() => {\n setSelectedUrl(data?.api?.servers?.[0]?.url || '')\n }, [data])\n\n const fullUrl = useMemo(() => {\n // env gateway url + api version(if appended) + context path\n const url = data.api?.servers?.filter((s) => s.url !== '/')[0]?.url\n const pathParts = data?.path.split('/').slice(2) // slice from index 2 to skip the first empty \"\" and \"comments\"\n const fullPath = !!pathParts?.length ? '/' + pathParts.join('/') : '' // this will contain the full path without the context path\n return `${url}${fullPath}`\n }, [data])\n\n const httpStatusCodeOptions = httpStatusCodes.map((code) => ({\n label: (\n <div className={'statusCodeOptionContainer'}>\n <div\n className={'statusCodeOptionCircle'}\n style={{ backgroundColor: handleStatusColor(code) }}\n ></div>\n <span>{code}</span>\n </div>\n ),\n value: code,\n }))\n\n const [expanded, setExpanded] = useState(null)\n const [selectedResStatusCode, setSelectedResStatusCode] = useState(httpStatusCodeOptions[4])\n const [headersList, setHeadersList] = useState({})\n const requestTableData = (data?.parameters || []).filter(\n (param) => param.in?.toLowerCase() === activeTab.toLowerCase()\n )\n\n useEffect(() => {\n if (selectedResStatusCode && selectedResStatusCode.value) {\n const headerObj = data?.responses[selectedResStatusCode.value]\n setHeadersList(headerObj?.headers)\n }\n }, [selectedResStatusCode, data?.responses])\n\n // ? TODO: 'body' should be returned after discussing with PO\n\n return (\n <div className=\"api-details-expanded\">\n <div className=\"test-button\">\n <button\n className=\"back-button\"\n onClick={() => {\n toggleSection(data.api.apiSpecId, [{ type: SectionEnum.OVERVIEW, setTo: true }], {\n resetOthers: true,\n filterKeys: [SectionEnum.RESOURCE],\n })\n setActiveType('OVERVIEW')\n setActiveItemData(data.api)\n }}\n >\n <SVGLoader src={ArrowBack} />\n </button>\n\n <Tooltip content=\"Comming soon\">\n <button className=\"disabled\">Test</button>\n </Tooltip>\n </div>\n <h3>{data.api.title}</h3>\n <h1 className=\"api-title\">{data?.summary}</h1>\n <div className=\"url-box\">\n {isUrlDropdownOpen && selectedUrl.length !== 0 && (\n <div className=\"url-list\">\n {data.api?.servers?.map((server, index) => (\n <div\n key={index}\n className=\"url-item\"\n onClick={() => {\n setSelectedUrl(server.url)\n setIsUrlDropdownOpen(false)\n }}\n >\n <input\n type=\"radio\"\n name=\"api-method\"\n checked={selectedUrl === server.url}\n readOnly\n />\n <span>{`${server.url}${data.path}`}</span>\n </div>\n ))}\n </div>\n )}\n <div className=\"url-box_text-container\">\n <span className={`method-label ${data?.method?.toLowerCase()}`}>{data.method}</span>\n <div className=\"url-container\">\n <div className=\"type-ddl\" onClick={() => setIsUrlDropdownOpen((prev) => !prev)}>\n <span className=\"url-text\">{`${selectedUrl}${data.path}`}</span>\n <div className=\"icon-container\">\n <SVGLoader\n className=\"icon\"\n role=\"button\"\n tabIndex={0}\n onClick={(e) => {\n e.stopPropagation()\n copyToClipboard(`${selectedUrl}${data.path}`)\n }}\n src={newCopyIcon}\n />\n {selectedUrl.length !== 0 && (\n <SVGLoader src={!isUrlDropdownOpen ? arrowDown : arrowUp} />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <p className=\"api-desc\">{data?.description || 'No Description'}</p>\n\n <h3>Request</h3>\n\n <div className=\"request-section\">\n <div className=\"request-tabs\">\n {['header', 'path', 'query'].map((tab) => (\n <button\n key={tab}\n className={`tab ${activeTab === tab ? 'active' : ''}`}\n onClick={() => setActiveTab(tab)}\n >\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n <span className=\"tab-label\">\n {tab === 'requestBody'\n ? 'Request Body'\n : tab.charAt(0).toUpperCase() + tab.slice(1)}\n </span>\n </button>\n ))}\n </div>\n\n {\n <div className=\"table-wrapper\">\n <table className=\"param-table\">\n <thead>\n <tr>\n <th className=\"head-table-label\">Parameter Name</th>\n <th className=\"head-table-label\">Required</th>\n <th className=\"head-table-label\">Type</th>\n <th className=\"head-table-label\">Enum</th>\n <th className=\"head-table-label\">Description</th>\n </tr>\n </thead>\n <tbody>\n {data.parameters\n ?.filter((p) => p.in?.toLowerCase() === activeTab.toLowerCase())\n .map((row, index) => (\n <tr key={index}>\n <td>{row.name}</td>\n <td>{row.required ? 'True' : 'False'}</td>\n <td style={{ textTransform: 'capitalize' }}>\n <span>{row?.schema?.type || '-'}</span>\n {row?.schema?.type === 'array' && row?.schema?.items?.type && (\n <span style={{ color: '#616874', fontSize: '0.75rem' }}>\n _{capitalizeFirstLetter(row.schema?.items?.type)}\n </span>\n )}\n </td>\n <td>{Array.isArray(row.schema?.enum) ? row.schema.enum.join(' / ') : '-'}</td>\n <td className=\"desc-cell\">\n <div className={`desc-text ${expanded === index ? 'expanded' : ''}`}>\n {row.description || 'No description'}\n </div>\n <button\n className=\"desc-toggle\"\n onClick={() => setExpanded(expanded === index ? null : index)}\n >\n <SVGLoader\n src={DownArrowIcon}\n className={expanded === index ? 'rotated' : ''}\n />\n </button>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n }\n </div>\n\n <div className=\"response-section\">\n <h3>Response</h3>\n\n <div>\n <div style={{ height: '0.5rem', width: '7.5rem', marginLeft: 'auto' }}>\n {Object.keys(data?.responses || {})?.length > 0 && (\n <div className={'codeboxSection'}>\n <div className={`${'codeboxHeader'}`}>\n <SelectGroup\n size=\"small\"\n withSearch={false}\n isMultiple={false}\n clearable={false}\n placeholder=\"200\"\n options={[\n {\n list: httpStatusCodeOptions,\n },\n ]}\n value={selectedResStatusCode}\n onChange={(value) => {\n setSelectedResStatusCode(value)\n }}\n />\n </div>\n </div>\n )}\n </div>\n <button className=\"tab active \">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Header\n </button>\n </div>\n\n <div className=\"table-wrapper\">\n <table className=\"param-table\">\n <thead>\n <tr>\n <th className=\"head-table-label\">Header Name</th>\n <th className=\"head-table-label\">Required</th>\n <th className=\"head-table-label\">Type</th>\n <th className=\"head-table-label\">Enum</th>\n <th className=\"head-table-label\">Description</th>\n </tr>\n </thead>\n <tbody>\n {!!headersList &&\n Object.keys(headersList) &&\n Object.keys(headersList).map((key) => (\n <tr>\n <td>{key}</td>\n <td>{headersList[key]?.required.toString()}</td>\n <td style={{ textTransform: 'capitalize' }}>\n <span>{headersList[key]?.schema?.type || '-'}</span>\n {headersList[key]?.schema?.type === 'array' &&\n headersList[key]?.schema?.items?.type && (\n <span style={{ color: '#616874', fontSize: '0.75rem' }}>\n _{capitalizeFirstLetter(headersList[key]?.schema?.items?.type)}\n </span>\n )}\n </td>\n <td>{headersList[key]?.schema?.enum?.join('/')}</td>\n <td>{headersList[key]?.description}</td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["EndpointPage","data","setActiveType","setActiveItemData","activeTab","setActiveTab","useState","toggleSection","useSectionToggle","selectedUrl","setSelectedUrl","_c","_b","_a","api","servers","url","isUrlDropdownOpen","setIsUrlDropdownOpen","useEffect","useMemo","filter","s","pathParts","path","split","slice","length","join","httpStatusCodeOptions","httpStatusCodes","map","code","label","_jsxs","jsxs","className","children","_jsx","style","backgroundColor","handleStatusColor","value","expanded","setExpanded","selectedResStatusCode","setSelectedResStatusCode","headersList","setHeadersList","parameters","param","in","toLowerCase","headerObj","responses","headers","onClick","apiSpecId","type","SectionEnum","OVERVIEW","setTo","resetOthers","filterKeys","RESOURCE","SVGLoader","src","ArrowBack","Tooltip","content","title","summary","_e","_d","server","index","name","checked","readOnly","jsx","_f","method","prev","role","tabIndex","e","stopPropagation","copyToClipboard","newCopyIcon","arrowUp","arrowDown","description","tab","RequestOption","charAt","toUpperCase","_g","p","row","required","textTransform","schema","items","color","fontSize","capitalizeFirstLetter","Array","isArray","enum","DownArrowIcon","height","width","marginLeft","_h","Object","keys","SelectGroup","size","withSearch","isMultiple","clearable","placeholder","options","list","onChange","key","toString","_k","_j","_p","_o","_q"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../src/layout/docsComponents/DocsContent/OverviewPage/index.tsx"],"sourcesContent":["import './style.scss'\nimport SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport { arrowDown, arrowRightGray, arrowUp, newCopyIcon } from '../../../../assets/icons/index'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\nimport { SectionEnum, useSectionToggle } from '../../../../../src/context/SectionToggleContext'\nimport React, { useEffect, useState } from 'react'\nimport { copyToClipboard } from '../../../../utils'\n\nexport const OverviewPage = ({\n data,\n setActiveItemData,\n setActiveType,\n onProductNavigate,\n apis,\n}: {\n data: OverviewData\n setActiveItemData: React.Dispatch<React.SetStateAction<OverviewData | EndpointData>>\n setActiveType: React.Dispatch<React.SetStateAction<'OVERVIEW' | 'ENDPOINT'>>\n onProductNavigate?: (productId: number) => void\n apis: OverviewData[]\n}) => {\n const { toggleSection } = useSectionToggle()\n const [selectedUrl, setSelectedUrl] = useState(data?.servers?.[0]?.url || '')\n const [isUrlDropdownOpen, setIsUrlDropdownOpen] = useState<boolean>(false)\n\n useEffect(() => {\n setSelectedUrl(data?.servers?.[0]?.url || '')\n }, [data])\n const handleVersionClick = (verObj) => {\n if (verObj.apiSpecId === data.apiSpecId) {\n setActiveType('OVERVIEW')\n return\n }\n\n const matchedVersion = data.apiVersions.find((v) => v.apiSpecId === verObj.apiSpecId)\n\n if (!matchedVersion) {\n return\n }\n\n const matchedApi = apis.find((api) => api.apiSpecId === matchedVersion.apiSpecId)\n setActiveItemData(matchedApi)\n\n setActiveType('OVERVIEW')\n toggleSection(\n matchedApi.apiSpecId,\n [\n { type: SectionEnum.API_SECTION, setTo: true },\n { type: SectionEnum.OVERVIEW, setTo: true },\n ],\n {\n resetOthers: true,\n filterKeys: [\n SectionEnum.OVERVIEW,\n SectionEnum.API_SECTION,\n SectionEnum.ENDPOINTS_SECTION,\n SectionEnum.TAG_SECTION,\n ],\n }\n )\n }\n\n const handleClick = (endpoint) => {\n setActiveItemData({\n ...endpoint,\n api: {\n id: data.apiSpecId,\n title: data.title,\n description: data.description,\n version: data.version,\n ...data,\n },\n })\n setActiveType('ENDPOINT')\n const tagEntries = Object.entries(data?.tags || {})\n const sectionIndex = tagEntries.findIndex(([, endpoints]) =>\n endpoints.some((e) => e.id === endpoint.id)\n )\n\n const tagSectionIndex = Object.entries(data.tags)\n .sort(([a], [b]) => (a === 'default' ? 1 : b === 'default' ? -1 : a.localeCompare(b)))\n .findIndex(([_, tagData]) => tagData.find((t) => t.id === endpoint.id))\n\n toggleSection(\n data.apiSpecId,\n [\n { type: SectionEnum.API_SECTION, setTo: true },\n { type: SectionEnum.ENDPOINTS_SECTION, setTo: true },\n { type: SectionEnum.TAG_SECTION, setTo: true, index: tagSectionIndex },\n { type: SectionEnum.RESOURCE, setTo: true, id: endpoint.id },\n ],\n { resetOthers: true, filterKeys: [SectionEnum.OVERVIEW] }\n )\n }\n\n return (\n <div className=\"api-details-page\">\n <h2 className=\"welcome\">Welcome to</h2>\n <h1 className=\"api-title\">{data?.title}</h1>\n <p className=\"api-version\">\n API Version: <span>{data?.version}</span>\n </p>\n\n <div className=\"custom-url-input\">\n <label className=\"input-label\">API Base URL</label>\n <div className=\"url-container\">\n <div className=\"type-ddl\" onClick={() => setIsUrlDropdownOpen((prev) => !prev)}>\n <span className=\"url-text\">{selectedUrl || '-'}</span>\n <div className=\"icon-container\">\n {selectedUrl.length !== 0 && (\n <SVGLoader\n className=\"icon\"\n role=\"button\"\n tabIndex={0}\n onClick={(e) => {\n e.stopPropagation()\n copyToClipboard(selectedUrl)\n }}\n src={newCopyIcon}\n />\n )}\n {selectedUrl.length !== 0 && (\n <SVGLoader src={!isUrlDropdownOpen ? arrowDown : arrowUp} />\n )}\n </div>\n </div>\n {isUrlDropdownOpen && selectedUrl.length !== 0 && (\n <div className=\"url-list\">\n {data?.servers?.map((server, index) => (\n <div\n key={index}\n className=\"url-item\"\n onClick={() => {\n setSelectedUrl(server.url)\n setIsUrlDropdownOpen(false)\n }}\n >\n <input\n type=\"radio\"\n name=\"api-method\"\n checked={selectedUrl === server.url}\n readOnly\n />\n <span>{server.url}</span>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n\n <p className=\"api-desc\">{`${data.description || 'No Description'}`}</p>\n {onProductNavigate && (\n <div className=\"api-product-tag\">\n Product with this API{' '}\n <span\n className=\"product-tag\"\n role=\"button\"\n tabIndex={-1}\n onClick={() => onProductNavigate(data.associatedProduct.productId)}\n >\n {data.associatedProduct.name}\n </span>\n </div>\n )}\n\n <h3 className=\"section-title\">Endpoints</h3>\n\n {Object.entries(data?.tags).map(([tag, endpoints]) => (\n <div className=\"endpoint-group\" key={tag}>\n <h4 className=\"tag-title\">{tag}</h4>\n <div className=\"endpoint-list\">\n {endpoints.map((endpoint, idx) => (\n <div\n className=\"endpoint-card\"\n onClick={() => handleClick(endpoint)}\n key={`${tag}-${idx}`}\n >\n <div>\n <div className=\"endpoint-card-header\">\n <span className={`method-label ${endpoint.method.toLowerCase()}`}>\n {endpoint.method}\n </span>\n <div className=\"title-wrapper\">\n <h5>\n {(endpoint.summary || 'Endpoint Name').slice(0, 40)}\n {(endpoint.summary?.length ?? 0) > 40 && '...'}\n </h5>\n </div>\n </div>\n <div className=\"endpoint-meta\">\n <p>{endpoint.path}</p>\n <p className=\"description\">{endpoint.description ?? 'No Description '}</p>\n </div>\n </div>\n\n <div className=\"endpoint-arrow\">\n <SVGLoader src={arrowRightGray} />\n </div>\n </div>\n ))}\n </div>\n </div>\n ))}\n\n {data.apiVersions?.length > 0 && (\n <div className=\"versions-section\">\n <h4>API Versions</h4>\n <div className=\"version-list\">\n {data.apiVersions.map((verObj, index) => (\n <button\n key={index}\n className=\"version-btn\"\n onClick={() => handleVersionClick(verObj)}\n >\n {verObj.metaData?.version || 'N/A'}\n </button>\n ))}\n </div>\n </div>\n )}\n </div>\n )\n}\n"],"names":["OverviewPage","data","setActiveItemData","setActiveType","onProductNavigate","apis","toggleSection","useSectionToggle","selectedUrl","setSelectedUrl","useState","_b","_a","servers","url","isUrlDropdownOpen","setIsUrlDropdownOpen","useEffect","_jsxs","className","children","_jsx","jsx","title","version","onClick","prev","jsxs","length","SVGLoader","role","tabIndex","e","stopPropagation","copyToClipboard","src","newCopyIcon","arrowUp","arrowDown","_c","map","server","index","type","name","checked","readOnly","description","associatedProduct","productId","Object","entries","tags","tag","endpoints","endpoint","idx","assign","api","id","apiSpecId","findIndex","some","tagSectionIndex","sort","a","b","localeCompare","_","tagData","find","t","SectionEnum","API_SECTION","setTo","ENDPOINTS_SECTION","TAG_SECTION","RESOURCE","resetOthers","filterKeys","OVERVIEW","handleClick","method","toLowerCase","summary","slice","path","arrowRightGray","_d","apiVersions","verObj","matchedVersion","v","matchedApi","handleVersionClick","metaData"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/layout/docsComponents/DocsContent/OverviewPage/index.tsx"],"sourcesContent":["import './style.scss'\nimport SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport { arrowDown, arrowRightGray, arrowUp, newCopyIcon } from '../../../../assets/icons/index'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\nimport { SectionEnum, useSectionToggle } from '../../../../../src/context/SectionToggleContext'\nimport React, { useEffect, useState } from 'react'\nimport { copyToClipboard } from '../../../../utils'\n\nexport const OverviewPage = ({\n data,\n setActiveItemData,\n setActiveType,\n onProductNavigate,\n apis,\n}: {\n data: OverviewData\n setActiveItemData: React.Dispatch<React.SetStateAction<OverviewData | EndpointData>>\n setActiveType: React.Dispatch<React.SetStateAction<'OVERVIEW' | 'ENDPOINT'>>\n onProductNavigate?: (productId: number) => void\n apis: OverviewData[]\n}) => {\n const { toggleSection } = useSectionToggle()\n const [selectedUrl, setSelectedUrl] = useState(data?.servers?.[0]?.url || '')\n const [isUrlDropdownOpen, setIsUrlDropdownOpen] = useState<boolean>(false)\n\n useEffect(() => {\n setSelectedUrl(data?.servers?.[0]?.url || '')\n }, [data])\n const handleVersionClick = (verObj) => {\n if (verObj.apiSpecId === data.apiSpecId) {\n setActiveType('OVERVIEW')\n return\n }\n\n const matchedVersion = data.apiVersions.find((v) => v.apiSpecId === verObj.apiSpecId)\n\n if (!matchedVersion) {\n return\n }\n\n const matchedApi = apis.find((api) => api.apiSpecId === matchedVersion.apiSpecId)\n setActiveItemData(matchedApi)\n\n setActiveType('OVERVIEW')\n toggleSection(\n matchedApi.apiSpecId,\n [\n { type: SectionEnum.API_SECTION, setTo: true },\n { type: SectionEnum.OVERVIEW, setTo: true },\n ],\n {\n resetOthers: true,\n filterKeys: [\n SectionEnum.OVERVIEW,\n SectionEnum.API_SECTION,\n SectionEnum.ENDPOINTS_SECTION,\n SectionEnum.TAG_SECTION,\n ],\n }\n )\n }\n\n const handleClick = (endpoint) => {\n setActiveItemData({\n ...endpoint,\n api: {\n id: data.apiSpecId,\n title: data.title,\n description: data.description,\n version: data.version,\n ...data,\n },\n })\n setActiveType('ENDPOINT')\n const tagEntries = Object.entries(data?.tags || {})\n const sectionIndex = tagEntries.findIndex(([, endpoints]) =>\n endpoints.some((e) => e.id === endpoint.id)\n )\n\n const tagSectionIndex = Object.entries(data.tags)\n .sort(([a], [b]) => (a === 'default' ? 1 : b === 'default' ? -1 : a.localeCompare(b)))\n .findIndex(([_, tagData]) => tagData.find((t) => t.id === endpoint.id))\n\n toggleSection(\n data.apiSpecId,\n [\n { type: SectionEnum.API_SECTION, setTo: true },\n { type: SectionEnum.ENDPOINTS_SECTION, setTo: true },\n { type: SectionEnum.TAG_SECTION, setTo: true, index: tagSectionIndex },\n { type: SectionEnum.RESOURCE, setTo: true, id: endpoint.id },\n ],\n { resetOthers: true, filterKeys: [SectionEnum.OVERVIEW] }\n )\n }\n\n return (\n <div className=\"api-details-page\">\n <h2 className=\"welcome\">Welcome to</h2>\n <h1 className=\"api-title\">{data?.title}</h1>\n <p className=\"api-version\">\n API Version: <span>{data?.version}</span>\n </p>\n <div className=\"custom-url-input\">\n <label className=\"input-label\">API Base URL</label>\n <div className=\"url-container\">\n <div className=\"type-ddl\" onClick={() => setIsUrlDropdownOpen((prev) => !prev)}>\n <span className=\"url-text\">{selectedUrl || '-'}</span>\n <div className=\"icon-container\">\n {selectedUrl.length !== 0 && (\n <SVGLoader\n className=\"icon\"\n role=\"button\"\n tabIndex={0}\n onClick={(e) => {\n e.stopPropagation()\n copyToClipboard(selectedUrl)\n }}\n src={newCopyIcon}\n />\n )}\n {selectedUrl.length !== 0 && (\n <SVGLoader src={!isUrlDropdownOpen ? arrowDown : arrowUp} />\n )}\n </div>\n </div>\n {isUrlDropdownOpen && selectedUrl.length !== 0 && (\n <div className=\"url-list\">\n {data?.servers?.map((server, index) => (\n <div\n key={index}\n className=\"url-item\"\n onClick={() => {\n setSelectedUrl(server.url)\n setIsUrlDropdownOpen(false)\n }}\n >\n <input\n type=\"radio\"\n name=\"api-method\"\n checked={selectedUrl === server.url}\n readOnly\n />\n <span>{server.url}</span>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n\n <p className=\"api-desc\">{`${data.description || 'No Description'}`}</p>\n {onProductNavigate && (\n <div className=\"api-product-tag\">\n Product with this API{' '}\n <span\n className=\"product-tag\"\n role=\"button\"\n tabIndex={-1}\n onClick={() => onProductNavigate(data.associatedProduct.productId)}\n >\n {data.associatedProduct.name}\n </span>\n </div>\n )}\n\n <h3 className=\"section-title\">Endpoints</h3>\n\n {Object.entries(data?.tags).map(([tag, endpoints]) => (\n <div className=\"endpoint-group\" key={tag}>\n <h4 className=\"tag-title\">{tag}</h4>\n <div className=\"endpoint-list\">\n {endpoints.map((endpoint, idx) => (\n <div\n className=\"endpoint-card\"\n onClick={() => handleClick(endpoint)}\n key={`${tag}-${idx}`}\n >\n <div>\n <div className=\"endpoint-card-header\">\n <span className={`method-label ${endpoint.method.toLowerCase()}`}>\n {endpoint.method}\n </span>\n <div className=\"title-wrapper\">\n <h5>\n {(endpoint.summary || 'Endpoint Name').slice(0, 40)}\n {(endpoint.summary?.length ?? 0) > 40 && '...'}\n </h5>\n </div>\n </div>\n <div className=\"endpoint-meta\">\n <p>{endpoint.path}</p>\n <p className=\"description\">{endpoint.description ?? 'No Description '}</p>\n </div>\n </div>\n\n <div className=\"endpoint-arrow\">\n <SVGLoader src={arrowRightGray} />\n </div>\n </div>\n ))}\n </div>\n </div>\n ))}\n\n {data.apiVersions?.length > 0 && (\n <div className=\"versions-section\">\n <h4>API Versions</h4>\n <div className=\"version-list\">\n {data.apiVersions.map((verObj, index) => (\n <button\n key={index}\n className=\"version-btn\"\n onClick={() => handleVersionClick(verObj)}\n >\n {verObj.metaData?.version || 'N/A'}\n </button>\n ))}\n </div>\n </div>\n )}\n </div>\n )\n}\n"],"names":["OverviewPage","data","setActiveItemData","setActiveType","onProductNavigate","apis","toggleSection","useSectionToggle","selectedUrl","setSelectedUrl","useState","_b","_a","servers","url","isUrlDropdownOpen","setIsUrlDropdownOpen","useEffect","_jsxs","className","children","_jsx","jsx","title","version","onClick","prev","jsxs","length","SVGLoader","role","tabIndex","e","stopPropagation","copyToClipboard","src","newCopyIcon","arrowUp","arrowDown","_c","map","server","index","type","name","checked","readOnly","description","associatedProduct","productId","Object","entries","tags","tag","endpoints","endpoint","idx","assign","api","id","apiSpecId","findIndex","some","tagSectionIndex","sort","a","b","localeCompare","_","tagData","find","t","SectionEnum","API_SECTION","setTo","ENDPOINTS_SECTION","TAG_SECTION","RESOURCE","resetOthers","filterKeys","OVERVIEW","handleClick","method","toLowerCase","summary","slice","path","arrowRightGray","_d","apiVersions","verObj","matchedVersion","v","matchedApi","handleVersionClick","metaData"],"mappings":"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"}
package/dist/styles.css CHANGED
@@ -39,29 +39,176 @@
39
39
  grid-row: 2;
40
40
  grid-column: 2;
41
41
  background-color: white;
42
- }.containerTitleDrawer {
43
- height: 64px;
44
- min-height: 64px;
42
+ }.livePreviewContainer .titleContainer {
43
+ margin-top: 1.875rem;
45
44
  display: flex;
46
- flex-direction: row;
47
45
  justify-content: space-between;
48
46
  align-items: center;
49
- background-color: #f1f2f6;
50
- padding: 0 30px 0 30px;
51
- width: 100%;
47
+ flex-wrap: wrap;
48
+ max-width: 100%;
49
+ gap: 1.25rem;
52
50
  }
53
- .containerTitleDrawer span {
51
+ .livePreviewContainer .titleContainer p.apiName {
52
+ font-size: 40px;
53
+ line-height: 30px;
54
+ font-weight: 500;
55
+ word-wrap: break-word;
56
+ overflow-wrap: break-word;
57
+ word-break: break-all;
58
+ }
59
+ .livePreviewContainer .titleContainer .livePreviewChip {
60
+ background-color: #ebecf2;
54
61
  color: #12131a;
55
- font-weight: 600;
56
- font-size: 18px;
57
- line-height: 25px;
58
- letter-spacing: 0em;
59
62
  }
60
- .containerTitleDrawer svg path {
61
- stroke: #000 !important;
63
+ .livePreviewContainer .description_preview {
64
+ word-break: break-all;
62
65
  }
63
- .containerTitleDrawer .closeIcon {
66
+
67
+ .requestAccordion,
68
+ .responseAccordion {
69
+ background-color: #f4c5c5;
70
+ border: 1px solid #da3f3f;
71
+ border-radius: 0.3125rem !important;
72
+ box-shadow: none !important;
73
+ margin-bottom: 0 !important;
74
+ cursor: default !important;
75
+ margin-top: 0.625rem;
76
+ }
77
+ .requestAccordion :global(.accordion-header),
78
+ .responseAccordion :global(.accordion-header) {
79
+ background-color: #f4c5c5;
80
+ display: flex;
81
+ align-items: center;
82
+ justify-content: space-between;
83
+ margin: 0 !important;
84
+ padding: 0 !important;
85
+ height: 4.0625rem !important;
86
+ border-radius: 0.3125rem !important;
87
+ }
88
+ .requestAccordion :global(.accordion-details.expanded),
89
+ .responseAccordion :global(.accordion-details.expanded) {
90
+ border-top: 1px solid #000 !important;
91
+ padding: 1.25rem !important;
92
+ padding: 0 !important;
93
+ background-color: #f4c5c5;
94
+ }
95
+ .requestAccordion :global(.accordion-details.expanded) :global(.jsonField) div textarea,
96
+ .responseAccordion :global(.accordion-details.expanded) :global(.jsonField) div textarea {
97
+ border-top-right-radius: 0;
98
+ border-top-left-radius: 0;
99
+ height: 10rem;
100
+ }
101
+ .requestAccordion :global(.accordion-details.expanded .textArea .containerTextArea),
102
+ .responseAccordion :global(.accordion-details.expanded .textArea .containerTextArea) {
103
+ display: flex;
104
+ }
105
+ .requestAccordion :global(.accordion-details.expanded .textArea .containerTextArea .inputField),
106
+ .responseAccordion :global(.accordion-details.expanded .textArea .containerTextArea .inputField) {
107
+ height: 100%;
108
+ padding: 1.25rem;
109
+ }
110
+ .requestAccordion .accordionContent,
111
+ .responseAccordion .accordionContent {
112
+ max-width: 100%;
113
+ padding-left: 0.625rem;
114
+ padding-right: 0.625rem;
115
+ padding-top: 0.9375rem;
116
+ }
117
+ .requestAccordion .accordionContent ol,
118
+ .responseAccordion .accordionContent ol {
119
+ padding-left: 1.7rem;
120
+ }
121
+ .requestAccordion .accordionContent ol li,
122
+ .responseAccordion .accordionContent ol li {
123
+ max-width: 100%;
124
+ word-break: break-all;
125
+ }
126
+ .requestAccordion .requestAccordionSummary,
127
+ .requestAccordion .responseAccordionSummary,
128
+ .responseAccordion .requestAccordionSummary,
129
+ .responseAccordion .responseAccordionSummary {
130
+ width: 100%;
64
131
  cursor: pointer;
132
+ display: flex;
133
+ justify-content: space-between;
134
+ font-weight: 700;
135
+ font-size: 1.125rem;
136
+ line-height: 1.5rem;
137
+ display: flex;
138
+ align-items: center;
139
+ margin-inline: 0.625rem 1.25rem;
140
+ }
141
+ .requestAccordion .responseAccordionSummary_title,
142
+ .requestAccordion .requestAccordionSummary_title,
143
+ .requestAccordion .responseAccordionSummary,
144
+ .responseAccordion .responseAccordionSummary_title,
145
+ .responseAccordion .requestAccordionSummary_title,
146
+ .responseAccordion .responseAccordionSummary {
147
+ display: flex;
148
+ align-items: center;
149
+ }
150
+ .requestAccordion .responseAccordionSummary_title svg,
151
+ .requestAccordion .requestAccordionSummary_title svg,
152
+ .requestAccordion .responseAccordionSummary svg,
153
+ .responseAccordion .responseAccordionSummary_title svg,
154
+ .responseAccordion .requestAccordionSummary_title svg,
155
+ .responseAccordion .responseAccordionSummary svg {
156
+ transition: rotate 0.2s ease-in-out;
157
+ }
158
+ .requestAccordion .responseAccordionSummary_title .expanded,
159
+ .requestAccordion .requestAccordionSummary_title .expanded,
160
+ .requestAccordion .responseAccordionSummary .expanded,
161
+ .responseAccordion .responseAccordionSummary_title .expanded,
162
+ .responseAccordion .requestAccordionSummary_title .expanded,
163
+ .responseAccordion .responseAccordionSummary .expanded {
164
+ rotate: 180deg;
165
+ }
166
+ .requestAccordion :global(.accordion-details) :global(.textArea .inputField),
167
+ .responseAccordion :global(.accordion-details) :global(.textArea .inputField) {
168
+ padding: 0;
169
+ border: none;
170
+ }
171
+ .requestAccordion :global(.accordion-header .iconContainer .dropdownIcon),
172
+ .responseAccordion :global(.accordion-header .iconContainer .dropdownIcon) {
173
+ display: none !important;
174
+ }
175
+ .requestAccordion :global(.accordion-header),
176
+ .responseAccordion :global(.accordion-header) {
177
+ cursor: default;
178
+ }
179
+
180
+ .responseAccordion .responseAccordionSummary {
181
+ display: flex;
182
+ align-items: center;
183
+ }
184
+ .responseAccordion .responseAccordionSummary :global(.multiSelectGroup .optionsList) {
185
+ width: 8rem !important;
186
+ min-width: 8rem !important;
187
+ }
188
+ .responseAccordion .responseAccordionSummary :global(.multiSelectGroup) {
189
+ width: 8rem;
190
+ margin-left: auto;
191
+ }
192
+ .responseAccordion .responseAccordionSummary :global(.multiSelectGroup) :global(.selectDisplay) {
193
+ height: 2.0625rem !important;
194
+ min-height: 2.0625rem !important;
195
+ padding: 0;
196
+ padding-left: 0.625rem;
197
+ }
198
+ .responseAccordion :global(.accordion-header) {
199
+ overflow: visible;
200
+ cursor: default;
201
+ }
202
+ .responseAccordion .statusCodeOptionContainer {
203
+ display: grid;
204
+ grid-template-columns: min-content min-content;
205
+ align-items: center;
206
+ gap: 0.625rem;
207
+ }
208
+ .responseAccordion .statusCodeOptionContainer .statusCodeOptionCircle {
209
+ width: 0.625rem;
210
+ aspect-ratio: 1/1;
211
+ border-radius: 100%;
65
212
  }.apiInfoForm {
66
213
  display: grid;
67
214
  padding: 1.25rem 1.875rem;
@@ -511,176 +658,29 @@
511
658
  }
512
659
  .methodAccordion.readOnly .methodSummaryContainer .methodExpandArrowContainer {
513
660
  background-color: #ebecf2;
514
- }.livePreviewContainer .titleContainer {
515
- margin-top: 1.875rem;
661
+ }.containerTitleDrawer {
662
+ height: 64px;
663
+ min-height: 64px;
516
664
  display: flex;
665
+ flex-direction: row;
517
666
  justify-content: space-between;
518
667
  align-items: center;
519
- flex-wrap: wrap;
520
- max-width: 100%;
521
- gap: 1.25rem;
522
- }
523
- .livePreviewContainer .titleContainer p.apiName {
524
- font-size: 40px;
525
- line-height: 30px;
526
- font-weight: 500;
527
- word-wrap: break-word;
528
- overflow-wrap: break-word;
529
- word-break: break-all;
668
+ background-color: #f1f2f6;
669
+ padding: 0 30px 0 30px;
670
+ width: 100%;
530
671
  }
531
- .livePreviewContainer .titleContainer .livePreviewChip {
532
- background-color: #ebecf2;
672
+ .containerTitleDrawer span {
533
673
  color: #12131a;
674
+ font-weight: 600;
675
+ font-size: 18px;
676
+ line-height: 25px;
677
+ letter-spacing: 0em;
534
678
  }
535
- .livePreviewContainer .description_preview {
536
- word-break: break-all;
537
- }
538
-
539
- .requestAccordion,
540
- .responseAccordion {
541
- background-color: #f4c5c5;
542
- border: 1px solid #da3f3f;
543
- border-radius: 0.3125rem !important;
544
- box-shadow: none !important;
545
- margin-bottom: 0 !important;
546
- cursor: default !important;
547
- margin-top: 0.625rem;
548
- }
549
- .requestAccordion :global(.accordion-header),
550
- .responseAccordion :global(.accordion-header) {
551
- background-color: #f4c5c5;
552
- display: flex;
553
- align-items: center;
554
- justify-content: space-between;
555
- margin: 0 !important;
556
- padding: 0 !important;
557
- height: 4.0625rem !important;
558
- border-radius: 0.3125rem !important;
559
- }
560
- .requestAccordion :global(.accordion-details.expanded),
561
- .responseAccordion :global(.accordion-details.expanded) {
562
- border-top: 1px solid #000 !important;
563
- padding: 1.25rem !important;
564
- padding: 0 !important;
565
- background-color: #f4c5c5;
566
- }
567
- .requestAccordion :global(.accordion-details.expanded) :global(.jsonField) div textarea,
568
- .responseAccordion :global(.accordion-details.expanded) :global(.jsonField) div textarea {
569
- border-top-right-radius: 0;
570
- border-top-left-radius: 0;
571
- height: 10rem;
572
- }
573
- .requestAccordion :global(.accordion-details.expanded .textArea .containerTextArea),
574
- .responseAccordion :global(.accordion-details.expanded .textArea .containerTextArea) {
575
- display: flex;
576
- }
577
- .requestAccordion :global(.accordion-details.expanded .textArea .containerTextArea .inputField),
578
- .responseAccordion :global(.accordion-details.expanded .textArea .containerTextArea .inputField) {
579
- height: 100%;
580
- padding: 1.25rem;
581
- }
582
- .requestAccordion .accordionContent,
583
- .responseAccordion .accordionContent {
584
- max-width: 100%;
585
- padding-left: 0.625rem;
586
- padding-right: 0.625rem;
587
- padding-top: 0.9375rem;
588
- }
589
- .requestAccordion .accordionContent ol,
590
- .responseAccordion .accordionContent ol {
591
- padding-left: 1.7rem;
592
- }
593
- .requestAccordion .accordionContent ol li,
594
- .responseAccordion .accordionContent ol li {
595
- max-width: 100%;
596
- word-break: break-all;
679
+ .containerTitleDrawer svg path {
680
+ stroke: #000 !important;
597
681
  }
598
- .requestAccordion .requestAccordionSummary,
599
- .requestAccordion .responseAccordionSummary,
600
- .responseAccordion .requestAccordionSummary,
601
- .responseAccordion .responseAccordionSummary {
602
- width: 100%;
682
+ .containerTitleDrawer .closeIcon {
603
683
  cursor: pointer;
604
- display: flex;
605
- justify-content: space-between;
606
- font-weight: 700;
607
- font-size: 1.125rem;
608
- line-height: 1.5rem;
609
- display: flex;
610
- align-items: center;
611
- margin-inline: 0.625rem 1.25rem;
612
- }
613
- .requestAccordion .responseAccordionSummary_title,
614
- .requestAccordion .requestAccordionSummary_title,
615
- .requestAccordion .responseAccordionSummary,
616
- .responseAccordion .responseAccordionSummary_title,
617
- .responseAccordion .requestAccordionSummary_title,
618
- .responseAccordion .responseAccordionSummary {
619
- display: flex;
620
- align-items: center;
621
- }
622
- .requestAccordion .responseAccordionSummary_title svg,
623
- .requestAccordion .requestAccordionSummary_title svg,
624
- .requestAccordion .responseAccordionSummary svg,
625
- .responseAccordion .responseAccordionSummary_title svg,
626
- .responseAccordion .requestAccordionSummary_title svg,
627
- .responseAccordion .responseAccordionSummary svg {
628
- transition: rotate 0.2s ease-in-out;
629
- }
630
- .requestAccordion .responseAccordionSummary_title .expanded,
631
- .requestAccordion .requestAccordionSummary_title .expanded,
632
- .requestAccordion .responseAccordionSummary .expanded,
633
- .responseAccordion .responseAccordionSummary_title .expanded,
634
- .responseAccordion .requestAccordionSummary_title .expanded,
635
- .responseAccordion .responseAccordionSummary .expanded {
636
- rotate: 180deg;
637
- }
638
- .requestAccordion :global(.accordion-details) :global(.textArea .inputField),
639
- .responseAccordion :global(.accordion-details) :global(.textArea .inputField) {
640
- padding: 0;
641
- border: none;
642
- }
643
- .requestAccordion :global(.accordion-header .iconContainer .dropdownIcon),
644
- .responseAccordion :global(.accordion-header .iconContainer .dropdownIcon) {
645
- display: none !important;
646
- }
647
- .requestAccordion :global(.accordion-header),
648
- .responseAccordion :global(.accordion-header) {
649
- cursor: default;
650
- }
651
-
652
- .responseAccordion .responseAccordionSummary {
653
- display: flex;
654
- align-items: center;
655
- }
656
- .responseAccordion .responseAccordionSummary :global(.multiSelectGroup .optionsList) {
657
- width: 8rem !important;
658
- min-width: 8rem !important;
659
- }
660
- .responseAccordion .responseAccordionSummary :global(.multiSelectGroup) {
661
- width: 8rem;
662
- margin-left: auto;
663
- }
664
- .responseAccordion .responseAccordionSummary :global(.multiSelectGroup) :global(.selectDisplay) {
665
- height: 2.0625rem !important;
666
- min-height: 2.0625rem !important;
667
- padding: 0;
668
- padding-left: 0.625rem;
669
- }
670
- .responseAccordion :global(.accordion-header) {
671
- overflow: visible;
672
- cursor: default;
673
- }
674
- .responseAccordion .statusCodeOptionContainer {
675
- display: grid;
676
- grid-template-columns: min-content min-content;
677
- align-items: center;
678
- gap: 0.625rem;
679
- }
680
- .responseAccordion .statusCodeOptionContainer .statusCodeOptionCircle {
681
- width: 0.625rem;
682
- aspect-ratio: 1/1;
683
- border-radius: 100%;
684
684
  }.tooltip-custom-wrapper {
685
685
  display: flex;
686
686
  }
@@ -1807,42 +1807,6 @@ div.endBtnIcon {
1807
1807
  opacity: 1 !important;
1808
1808
  backdrop-filter: blur(0.5rem);
1809
1809
  background-color: rgba(0, 0, 0, 0.281) !important;
1810
- }.codebox {
1811
- border-radius: 0.25rem;
1812
- overflow: hidden;
1813
- }
1814
- .codebox_header {
1815
- display: flex;
1816
- align-items: center;
1817
- gap: 0.25rem;
1818
- padding-left: 0.5rem;
1819
- height: 1.75rem;
1820
- border: 1px solid #bbbec5;
1821
- border-top-right-radius: 0.25rem;
1822
- border-top-left-radius: 0.25rem;
1823
- }
1824
- .codebox_header_themeToggle {
1825
- width: 0.75rem;
1826
- min-width: 0.75rem;
1827
- aspect-ratio: 1/1;
1828
- border: 1px solid transparent;
1829
- border-radius: 100%;
1830
- cursor: pointer;
1831
- }
1832
- .codebox_header_themeToggle_dark {
1833
- background-color: #455162;
1834
- border-color: #6b7280;
1835
- }
1836
- .codebox_header_themeToggle_light {
1837
- background-color: #edf1fb;
1838
- border-color: #6b7280;
1839
- }
1840
- .codebox_header_copyIcon {
1841
- cursor: pointer;
1842
- }
1843
- .codebox :global(.custom-code-line),
1844
- .codebox :global(.custom-code-line span) {
1845
- font-family: "Cascadia Code", sans-serif;
1846
1810
  }.apiDocsAside {
1847
1811
  width: 22.5rem;
1848
1812
  padding: 3rem 1.5rem;
@@ -1929,6 +1893,42 @@ div.endBtnIcon {
1929
1893
  }
1930
1894
  .apiDocsAside :global(.multiSelectGroup .selectDisplay .displayValueContainer .iconsContainer) {
1931
1895
  padding-right: 0.75rem !important;
1896
+ }.codebox {
1897
+ border-radius: 0.25rem;
1898
+ overflow: hidden;
1899
+ }
1900
+ .codebox_header {
1901
+ display: flex;
1902
+ align-items: center;
1903
+ gap: 0.25rem;
1904
+ padding-left: 0.5rem;
1905
+ height: 1.75rem;
1906
+ border: 1px solid #bbbec5;
1907
+ border-top-right-radius: 0.25rem;
1908
+ border-top-left-radius: 0.25rem;
1909
+ }
1910
+ .codebox_header_themeToggle {
1911
+ width: 0.75rem;
1912
+ min-width: 0.75rem;
1913
+ aspect-ratio: 1/1;
1914
+ border: 1px solid transparent;
1915
+ border-radius: 100%;
1916
+ cursor: pointer;
1917
+ }
1918
+ .codebox_header_themeToggle_dark {
1919
+ background-color: #455162;
1920
+ border-color: #6b7280;
1921
+ }
1922
+ .codebox_header_themeToggle_light {
1923
+ background-color: #edf1fb;
1924
+ border-color: #6b7280;
1925
+ }
1926
+ .codebox_header_copyIcon {
1927
+ cursor: pointer;
1928
+ }
1929
+ .codebox :global(.custom-code-line),
1930
+ .codebox :global(.custom-code-line span) {
1931
+ font-family: "Cascadia Code", sans-serif;
1932
1932
  }.api-details-page {
1933
1933
  padding: 2rem;
1934
1934
  }
@@ -2234,7 +2234,6 @@ main .type-ddl {
2234
2234
  width: 100%;
2235
2235
  background-color: #edf1fb;
2236
2236
  border-radius: 0.375rem;
2237
- padding: 0.5rem 1rem;
2238
2237
  }
2239
2238
  main .url-text {
2240
2239
  flex: 1;
@@ -2365,6 +2364,7 @@ main .api-details-expanded h3 {
2365
2364
  margin-bottom: 0.5rem;
2366
2365
  }
2367
2366
  main .api-details-expanded .url-box {
2367
+ position: relative;
2368
2368
  background-color: #edf1fb;
2369
2369
  padding: 0.375rem 0.75rem;
2370
2370
  border-radius: 0.5rem;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digi-frontend/dgate-api-documentation",
3
- "version": "1.0.94",
3
+ "version": "1.0.95",
4
4
  "main": "dist/src/index.js",
5
5
  "module": "dist/src/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -97,52 +97,49 @@ export const EndpointPage = ({
97
97
  <h3>{data.api.title}</h3>
98
98
  <h1 className="api-title">{data?.summary}</h1>
99
99
  <div className="url-box">
100
+ {isUrlDropdownOpen && selectedUrl.length !== 0 && (
101
+ <div className="url-list">
102
+ {data.api?.servers?.map((server, index) => (
103
+ <div
104
+ key={index}
105
+ className="url-item"
106
+ onClick={() => {
107
+ setSelectedUrl(server.url)
108
+ setIsUrlDropdownOpen(false)
109
+ }}
110
+ >
111
+ <input
112
+ type="radio"
113
+ name="api-method"
114
+ checked={selectedUrl === server.url}
115
+ readOnly
116
+ />
117
+ <span>{`${server.url}${data.path}`}</span>
118
+ </div>
119
+ ))}
120
+ </div>
121
+ )}
100
122
  <div className="url-box_text-container">
101
123
  <span className={`method-label ${data?.method?.toLowerCase()}`}>{data.method}</span>
102
124
  <div className="url-container">
103
125
  <div className="type-ddl" onClick={() => setIsUrlDropdownOpen((prev) => !prev)}>
104
126
  <span className="url-text">{`${selectedUrl}${data.path}`}</span>
105
127
  <div className="icon-container">
106
- {selectedUrl.length !== 0 && (
107
- <SVGLoader
108
- className="icon"
109
- role="button"
110
- tabIndex={0}
111
- onClick={(e) => {
112
- e.stopPropagation()
113
- copyToClipboard(selectedUrl)
114
- }}
115
- src={newCopyIcon}
116
- />
117
- )}
128
+ <SVGLoader
129
+ className="icon"
130
+ role="button"
131
+ tabIndex={0}
132
+ onClick={(e) => {
133
+ e.stopPropagation()
134
+ copyToClipboard(`${selectedUrl}${data.path}`)
135
+ }}
136
+ src={newCopyIcon}
137
+ />
118
138
  {selectedUrl.length !== 0 && (
119
139
  <SVGLoader src={!isUrlDropdownOpen ? arrowDown : arrowUp} />
120
140
  )}
121
141
  </div>
122
142
  </div>
123
-
124
- {isUrlDropdownOpen && selectedUrl.length !== 0 && (
125
- <div className="url-list">
126
- {data.api?.servers?.map((server, index) => (
127
- <div
128
- key={index}
129
- className="url-item"
130
- onClick={() => {
131
- setSelectedUrl(server.url)
132
- setIsUrlDropdownOpen(false)
133
- }}
134
- >
135
- <input
136
- type="radio"
137
- name="api-method"
138
- checked={selectedUrl === server.url}
139
- readOnly
140
- />
141
- <span>{`${server.url}${data.path}`}</span>
142
- </div>
143
- ))}
144
- </div>
145
- )}
146
143
  </div>
147
144
  </div>
148
145
  </div>
@@ -14,7 +14,6 @@ main {
14
14
  width: 100%;
15
15
  background-color: #edf1fb;
16
16
  border-radius: 0.375rem;
17
- padding: 0.5rem 1rem;
18
17
  }
19
18
 
20
19
  .url-text {
@@ -171,6 +170,7 @@ main {
171
170
  }
172
171
 
173
172
  .url-box {
173
+ position: relative;
174
174
  background-color: #edf1fb;
175
175
  padding: 0.375rem 0.75rem;
176
176
  border-radius: 0.5rem;
@@ -100,7 +100,6 @@ export const OverviewPage = ({
100
100
  <p className="api-version">
101
101
  API Version: <span>{data?.version}</span>
102
102
  </p>
103
-
104
103
  <div className="custom-url-input">
105
104
  <label className="input-label">API Base URL</label>
106
105
  <div className="url-container">
package/variables.txt CHANGED
@@ -1 +1 @@
1
- export APP_VERSION=1.0.93
1
+ export APP_VERSION=1.0.94