@digi-frontend/dgate-api-documentation 1.0.50 → 1.0.53
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/_virtual/index3.js +1 -1
- package/dist/_virtual/index6.js +1 -1
- package/dist/node_modules/yup/index.esm.js +1 -1
- package/dist/src/components/MethodAccordion/MethodAccordion.js +1 -1
- package/dist/src/components/MethodAccordion/MethodAccordion.js.map +1 -1
- package/dist/src/components/table/table.js +1 -1
- package/dist/src/components/table/table.js.map +1 -1
- package/dist/src/constants/index.js +1 -1
- package/dist/src/constants/index.js.map +1 -1
- package/dist/src/helpers/docs.helper.js +1 -1
- package/dist/src/helpers/docs.helper.js.map +1 -1
- package/dist/src/helpers/layout.helper.js +1 -1
- package/dist/src/helpers/layout.helper.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsAside/DocsAside.js +1 -1
- package/dist/src/layout/docsComponents/DocsAside/DocsAside.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsContent/DocsContent.js +1 -1
- package/dist/src/layout/docsComponents/DocsContent/DocsContent.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsContent/EndpointPage/index.js +1 -1
- package/dist/src/layout/docsComponents/DocsContent/EndpointPage/index.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsContent/TagPage/index.js +1 -1
- package/dist/src/layout/docsComponents/DocsContent/TagPage/index.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.js +1 -1
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.js.map +1 -1
- package/dist/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.js +1 -1
- package/dist/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.js.map +1 -1
- package/dist/src/layout/docsLayout.js +1 -1
- package/dist/src/layout/docsLayout.js.map +1 -1
- package/dist/src/layout/layout.js +1 -1
- package/dist/src/layout/layout.js.map +1 -1
- package/dist/src/layout/layout.module.css.js +1 -1
- package/dist/src/validator/form.scheme.js +1 -1
- package/dist/src/validator/form.scheme.js.map +1 -1
- package/dist/styles.css +262 -214
- package/dist/types/helpers/docs.helper.d.ts +2 -2
- package/dist/types/layout/docsComponents/DocsContent/DocsContent.d.ts +2 -1
- package/dist/types/layout/docsComponents/DocsContent/TagPage/index.d.ts +4 -1
- package/dist/types/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.d.ts +12 -6
- package/dist/types/layout/docsLayout.d.ts +5 -4
- package/dist/types/layout/layout.d.ts +1 -1
- package/dist/types/types/index.d.ts +27 -0
- package/dist/types/types/layout.type.d.ts +1 -0
- package/dist/types/types/openApi.d.ts +1 -0
- package/dist/types/validator/form.scheme.d.ts +1 -0
- package/package.json +1 -2
- package/src/components/MethodAccordion/MethodAccordion.tsx +384 -9
- package/src/components/table/style.scss +6 -0
- package/src/components/table/table.tsx +33 -35
- package/src/constants/index.ts +1 -1
- package/src/helpers/docs.helper.ts +17 -4
- package/src/helpers/layout.helper.ts +20 -9
- package/src/layout/docsComponents/DocsAside/DocsAside.tsx +6 -7
- package/src/layout/docsComponents/DocsContent/DocsContent.tsx +24 -3
- package/src/layout/docsComponents/DocsContent/EndpointPage/index.tsx +132 -121
- package/src/layout/docsComponents/DocsContent/EndpointPage/style.scss +45 -0
- package/src/layout/docsComponents/DocsContent/TagPage/index.tsx +49 -17
- package/src/layout/docsComponents/DocsHeader/DocsHeader.tsx +34 -1
- package/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.tsx +106 -79
- package/src/layout/docsLayout.tsx +42 -17
- package/src/layout/layout.module.css +1 -1
- package/src/layout/layout.tsx +36 -18
- package/src/types/index.ts +28 -0
- package/src/types/layout.type.ts +1 -0
- package/src/types/openApi.ts +1 -0
- package/src/validator/form.scheme.ts +9 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as e}from"../../../_virtual/jsx-runtime.js";import{useState as a}from"react";import{d as l}from"../../../_virtual/index.js";import i from"../Tooltip/Tooltip.js";import t from"../SVGLoader/SVGLoader.js";import s from"../../assets/icons/DeleteIcon.svg.js";import d from"../../assets/icons/EditIcon.svg.js";import r from"../../assets/icons/AddRow.svg.js";import n from"../../assets/icons/Plus.svg.js";import o from"../../assets/icons/PlusSquare.svg.js";import c from"../MethodAccordion/MethodAccordion.module.scss.js";import{useFormik as m}from"../../../node_modules/formik/dist/formik.esm.js";import{object as u,string as v,array as h,bool as p}from"../../../node_modules/yup/index.esm.js";import{capitalize as b}from"../../helpers/methodAccordion.helper.js";import j from"../../constants/regex.js";const x=({id:x,headCells:y,data:N,isFormOpen:C,setIsFormOpen:g,saveNewRow:w,readOnly:T,isRequest:D=!0})=>{var I,f,E,S,B,q,k,_,P,A,O,L,R,F,M,V,W,X,G,z,H,U,$,K,Q,Y,Z;const[J,ee]=a(""),[ae,le]=a(null),[ie,te]=a(null),[se,de]=a([]),{values:re,errors:ne,setFieldValue:oe,isValid:ce,submitForm:me,resetForm:ue}=m({validateOnMount:!0,initialValues:{name:"",in:D?"query":"header",schema:{type:"string",enum:[],items:{type:"string"}},required:!0,description:""},validationSchema:u().shape({name:v().default("").trim().required("Parameter name is required"),in:v().required("Paramter type is required"),schema:u().shape({type:v().required("Parameter schema type is required"),enum:h(v()).optional(),items:u().shape({type:v().optional()})}),required:p().when("in",{is:"path",then:e=>e.oneOf([!0],"Path parameters must be required."),otherwise:e=>e.optional()}),description:v().default("").trim().optional()}),onSubmit:e=>{var a,l,i,t;e&&!(null===(l=null===(a=null==e?void 0:e.schema)||void 0===a?void 0:a.items)||void 0===l?void 0:l.type)&&(null===(t=null===(i=null==e?void 0:e.schema)||void 0===i?void 0:i.items)||void 0===t||delete t.type),w(e),g(void 0),ee(""),ue()}});return e.jsx("div",{className:"tableSectionContainer",children:e.jsx("div",{className:"tableContainer",children:e.jsxs("table",{id:x||"",className:"table borderRadiusTop borderRadiusBottom",children:[e.jsx("thead",{className:"tableHead",children:e.jsx("tr",{children:null==y?void 0:y.map((a=>e.jsx("th",{className:`tableHeadCell ${a.classes||""}`,style:{width:a.width,minWidth:a.minWidth},children:e.jsx("div",{className:"headContainer","data-id":`${"string"==typeof a.label?a.label.toUpperCase().replace(/[^a-zA-Z0-9]+/g,"_"):"UNKNOWN_LABEL"}_COLUMN`,children:a.label})},a.id)))})}),e.jsxs("tbody",{className:"tableBody","data-id":"TABLE_BODY",children:[null==N?void 0:N.map(((a,l)=>e.jsx("tr",{"data-i":l,className:"row",children:null==y?void 0:y.map((l=>{const i="_"!==a[l.id]&&e.jsx("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",style:{width:l.width,minWidth:l.minWidth},children:a[l.id]});return e.jsx("td",{style:{width:l.width,minWidth:l.minWidth},children:i},l.id)}))},l))),0===(null==N?void 0:N.length)&&T&&e.jsx("tr",{className:"fallbackTableRow",children:e.jsx("td",{className:"fallbackContainer",colSpan:null==y?void 0:y.length,children:e.jsx("div",{className:"fallbackTextContainer",children:e.jsx("span",{className:"fallbackText",children:" No Data Available"})})})}),C&&!T?e.jsxs("tr",{className:"row",children:[e.jsx("td",{children:e.jsx("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:e.jsx(l.Input,{placeholder:"Parameter name",size:"large",type:"text",onChange:e=>{(""===e||j.ASCII.test(e))&&oe("name",e)},value:re.name,disabled:T})})},"Parameter name"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[e.jsx(l.SelectGroupV2,{disabled:T,value:{label:b(re.in),value:re.in},onChange:e=>{var a;return oe("in",null===(a=null==e?void 0:e.value)||void 0===a?void 0:a.toLowerCase())},options:[{list:D?[{label:"Query",value:"query"},{label:"Header",value:"header"},{label:"Path",value:"path"},{label:"Body",value:"body"}]:[{label:"Header",value:"header"}]}],errorMsg:!!ne.in&&ne.in,isMultiple:!1,withSearch:!1,clearable:!1})," "]})},"parameter in"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[e.jsx(l.SelectGroupV2,{disabled:T,clearable:!1,value:{label:b(null===(I=null==re?void 0:re.schema)||void 0===I?void 0:I.type),value:null===(f=null==re?void 0:re.schema)||void 0===f?void 0:f.type},errorMsg:!!ne.schema&&ne.schema,onChange:e=>{var a;return oe("schema.type",null===(a=null==e?void 0:e.value)||void 0===a?void 0:a.toLowerCase())},options:[{list:[{label:"String",value:"string"},{label:"Integer",value:"integer"},{label:"Boolean",value:"boolean"},{label:"Object",value:"object"},{label:"Array",value:"array"},{label:"Number",value:"number"}]}],isMultiple:!1,withSearch:!1})," "]})},"parameter schema type"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[re.schema&&"array"==(null===(S=null===(E=re.schema)||void 0===E?void 0:E.type)||void 0===S?void 0:S.toLowerCase())?e.jsx(l.SelectGroupV2,{disabled:T,clearable:!1,value:{label:b(null===(q=null===(B=null==re?void 0:re.schema)||void 0===B?void 0:B.items)||void 0===q?void 0:q.type),value:null===(_=null===(k=re.schema)||void 0===k?void 0:k.items)||void 0===_?void 0:_.type},errorMsg:!!(null===(A=null===(P=null==ne?void 0:ne.schema)||void 0===P?void 0:P.items)||void 0===A?void 0:A.type)&&(null===(L=null===(O=null==ne?void 0:ne.schema)||void 0===O?void 0:O.items)||void 0===L?void 0:L.type),onChange:e=>{var a;return oe("schema.items.type",null===(a=null==e?void 0:e.value)||void 0===a?void 0:a.toLowerCase())},options:[{list:[{label:"String",value:"string"},{label:"Integer",value:"integer"},{label:"Boolean",value:"boolean"},{label:"Object",value:"object"},{label:"Array",value:"array"},{label:"Number",value:"number"}]}],isMultiple:!1,withSearch:!1}):"-"," "]})},"parameter array schema type"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[(null==re?void 0:re.schema)&&"array"!=(null===(F=null===(R=null==re?void 0:re.schema)||void 0===R?void 0:R.type)||void 0===F?void 0:F.toLowerCase())&&"object"!=(null===(V=null===(M=null==re?void 0:re.schema)||void 0===M?void 0:M.type)||void 0===V?void 0:V.toLowerCase())?e.jsx(i,{disabled:"array"==(null===(X=null===(W=null==re?void 0:re.schema)||void 0===W?void 0:W.type)||void 0===X?void 0:X.toLowerCase())||"object"==(null===(z=null===(G=null==re?void 0:re.schema)||void 0===G?void 0:G.type)||void 0===z?void 0:z.toLowerCase()),arrowWithBorder:!0,placement:"bottom-end",type:"function",trigger:"click",delay:[0,0],onCreate:e=>te(e),content:e.jsxs("div",{className:c.editDescTooltipContent,children:[e.jsx("p",{className:c.editDescTooltipContent_header,children:"Enum"}),!!(null===(H=null==re?void 0:re.schema)||void 0===H?void 0:H.enum)&&!!(null===(U=null==re?void 0:re.schema)||void 0===U?void 0:U.enum.length)&&(null===(K=null===($=null==re?void 0:re.schema)||void 0===$?void 0:$.enum)||void 0===K?void 0:K.map(((a,i)=>e.jsx(l.Input,{className:"methodDescForEnum",required:!0,clearable:!1,placeholder:"Enter Enum value...",value:a,onChange:e=>{oe(`schema.enum[${i}]`,e)}},i)))),se&&(null==se?void 0:se.map(((a,i)=>e.jsx(l.Input,{className:"methodDescForEnum",required:!0,clearable:!1,placeholder:"Enter Enum value...",value:a,onChange:e=>{let a=[...se];a[i]=e,de(a)}},i)))),e.jsxs("p",{className:"addEnumButton",onClick:()=>{de((e=>[...e,""]))},children:[e.jsx(t,{src:o}),"Add New Enum"]}),!T&&e.jsx(l.Button,{className:c.editDescTooltipContent_btn,variant:"outlined",size:"small",type:"button",onClick:()=>{var e;oe("schema.enum",[...null===(e=null==re?void 0:re.schema)||void 0===e?void 0:e.enum,...se]),de([]),null==ie||ie.hide()},disabled:se.length>0&&(null==se?void 0:se.filter((e=>!e)).length)||(null===(Q=null==re?void 0:re.schema)||void 0===Q?void 0:Q.enum.length)>0&&(null===(Z=null===(Y=null==re?void 0:re.schema)||void 0===Y?void 0:Y.enum)||void 0===Z?void 0:Z.filter((e=>!e)).length),children:"Apply"})]}),children:e.jsx(l.Button,{className:c.editDescBtn,id:"EnumButton",variant:"link",color:"action",endIcon:e.jsx(t,{id:"enumIcon",src:n,width:"1.5rem",height:"1.5rem"}),children:"Add"})}):"-"," "]})},"parameter enum"),e.jsx("td",{children:e.jsx("div",{"data-id":"is required",className:"tableData",children:T?e.jsx(e.Fragment,{children:re.required?"True":"False"}):e.jsx(l.Switch,{checked:re.required,onClick:()=>{T||oe("required",!re.required)}})})},"parameter required"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[e.jsxs("div",{className:c.paramDescContainer,children:[e.jsx(i,{arrowWithBorder:!0,placement:"bottom-end",type:"function",trigger:"click",delay:[0,0],onCreate:e=>le(e),content:e.jsxs("div",{className:c.editDescTooltipContent,children:[e.jsx("p",{className:c.editDescTooltipContent_header,children:"Description"}),e.jsx(l.TextArea,{value:J||re.description,onChange:e=>{(""===e||j.ASCII.test(e))&&ee(e)},disabled:T,placeholder:"Describe parameter...",maxLength:120}),!T&&e.jsx(l.Button,{className:c.editDescTooltipContent_btn,variant:"outlined",size:"small",onClick:()=>{oe("description",null==J?void 0:J.trim()),null==ae||ae.hide()},disabled:""===(null==J?void 0:J.trim()),children:"Apply"})]}),children:e.jsxs(l.Button,{className:c.editDescBtn,variant:"link",color:"action",endIcon:e.jsx(t,{src:d,width:"1.5rem",height:"1.5rem"}),children:[T?"View ":"Add "," Description"]})}),e.jsx("div",{className:c.paramDescContainer_separator}),!T&&e.jsx(l.Button,{className:c.deleteParamBtn,variant:"link",color:"error",endIcon:e.jsx(t,{src:s,width:"1.125rem",height:"1.125rem"}),onClick:()=>{ue(),ee(""),g(void 0)}}),!T&&e.jsx(i,{disabled:!!re.name.trim(),content:"Parameter name can't be empty ",children:e.jsx(l.Button,{className:c.deleteParamBtn,variant:"link",color:"success",disabled:!re.name.trim(),endIcon:e.jsx(t,{src:r,width:"0.125rem",height:"0.125rem"}),onClick:()=>{ee(""),me()}})})]})," "]})},"parameter schema desc")]}):e.jsx(e.Fragment,{children:!T&&e.jsx("tr",{"data-i":"addNew",className:"row",children:e.jsx("td",{colSpan:5,children:e.jsx(l.Button,{variant:"link",color:"primary",onClick:()=>{g((e=>e?void 0:D?"Req":"Res"))},children:"+ Add Parameter"})})},"addNew")})]})]})})})};export{x as default};
|
|
1
|
+
import{j as e}from"../../../_virtual/jsx-runtime.js";import{useState as l}from"react";import{d as a}from"../../../_virtual/index.js";import i from"../Tooltip/Tooltip.js";import t from"../SVGLoader/SVGLoader.js";import s from"../../assets/icons/DeleteIcon.svg.js";import d from"../../assets/icons/EditIcon.svg.js";import n from"../../assets/icons/AddRow.svg.js";import o from"../../assets/icons/Plus.svg.js";import r from"../../assets/icons/PlusSquare.svg.js";import c from"../MethodAccordion/MethodAccordion.module.scss.js";import{useFormik as m}from"../../../node_modules/formik/dist/formik.esm.js";import{object as u,string as v,array as h,bool as p}from"../../../node_modules/yup/index.esm.js";import{capitalize as b}from"../../helpers/methodAccordion.helper.js";import j from"../../constants/regex.js";const x=({id:x,headCells:y,data:N,isFormOpen:C,setIsFormOpen:g,saveNewRow:w,readOnly:T,isRequest:D=!0})=>{var f,I,E,S,B,q,k,_,A,P,O,L,R,F,M,V,W,X,G,z,H,U,$,K,Q,Y,Z;const[J,ee]=l(""),[le,ae]=l(null),[ie,te]=l(null),[se,de]=l([]),{values:ne,errors:oe,setFieldValue:re,isValid:ce,submitForm:me,resetForm:ue}=m({validateOnMount:!0,initialValues:{name:"",in:D?"query":"header",schema:{type:"string",enum:[],items:{type:"string"}},required:!0,description:""},validationSchema:u().shape({name:v().default("").trim().required("Parameter name is required"),in:v().required("Paramter type is required"),schema:u().shape({type:v().required("Parameter schema type is required"),enum:h(v()).optional(),items:u().shape({type:v().optional()})}),required:p().when("in",{is:"path",then:e=>e.oneOf([!0],"Path parameters must be required."),otherwise:e=>e.optional()}),description:v().default("").trim().optional()}),onSubmit:e=>{var l,a,i,t;e&&!(null===(a=null===(l=null==e?void 0:e.schema)||void 0===l?void 0:l.items)||void 0===a?void 0:a.type)&&(null===(t=null===(i=null==e?void 0:e.schema)||void 0===i?void 0:i.items)||void 0===t||delete t.type),w(e),g(void 0),ee(""),ue()}});return e.jsx("div",{className:"tableSectionContainer",children:e.jsx("div",{className:"tableContainer",children:e.jsxs("table",{id:x||"",className:"table borderRadiusTop borderRadiusBottom",children:[e.jsx("thead",{className:"tableHead",children:e.jsx("tr",{children:null==y?void 0:y.map((l=>e.jsx("th",{className:`tableHeadCell ${l.classes||""}`,style:{width:l.width,minWidth:l.minWidth},children:e.jsx("div",{className:"headContainer","data-id":`${"string"==typeof l.label?l.label.toUpperCase().replace(/[^a-zA-Z0-9]+/g,"_"):"UNKNOWN_LABEL"}_COLUMN`,children:l.label})},l.id)))})}),e.jsxs("tbody",{className:"tableBody","data-id":"TABLE_BODY",children:[null==N?void 0:N.map(((l,a)=>e.jsx("tr",{"data-i":a,className:"row",children:null==y?void 0:y.map((a=>{const i="_"!==l[a.id]&&e.jsx("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",style:{width:a.width,minWidth:a.minWidth},children:l[a.id]});return e.jsx("td",{style:{width:a.width,minWidth:a.minWidth},children:i},a.id)}))},a))),0===(null==N?void 0:N.length)&&T&&e.jsx("tr",{className:"fallbackTableRow",children:e.jsx("td",{className:"fallbackContainer",colSpan:null==y?void 0:y.length,children:e.jsx("div",{className:"fallbackTextContainer",children:e.jsx("span",{className:"fallbackText",children:" No Data Available"})})})}),C&&!T?e.jsxs("tr",{className:"row",children:[e.jsx("td",{children:e.jsx("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:e.jsx(a.Input,{placeholder:"Parameter name",size:"large",type:"text",onChange:e=>{(""===e||j.ASCII.test(e))&&re("name",e)},value:ne.name,disabled:T})})},"Parameter name"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[e.jsx(a.SelectGroupV2,{disabled:T,value:{label:b(ne.in),value:ne.in},onChange:e=>{var l;return re("in",null===(l=null==e?void 0:e.value)||void 0===l?void 0:l.toLowerCase())},options:[{list:D?[{label:"Query",value:"query"},{label:"Header",value:"header"},{label:"Path",value:"path"},{label:"Body",value:"body"}]:[{label:"Header",value:"header"}]}],errorMsg:!!oe.in&&oe.in,isMultiple:!1,withSearch:!1,clearable:!1})," "]})},"parameter in"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData select-inputs",children:[e.jsx(a.SelectGroupV2,{disabled:T,clearable:!1,value:{label:b(null===(f=null==ne?void 0:ne.schema)||void 0===f?void 0:f.type),value:null===(I=null==ne?void 0:ne.schema)||void 0===I?void 0:I.type},errorMsg:!!oe.schema&&oe.schema,onChange:e=>{var l;return re("schema.type",null===(l=null==e?void 0:e.value)||void 0===l?void 0:l.toLowerCase())},options:[{list:[{label:"String",value:"string"},{label:"Integer",value:"integer"},{label:"Boolean",value:"boolean"},{label:"Object",value:"object"},{label:"Array",value:"array"},{label:"Number",value:"number"}]}],isMultiple:!1,withSearch:!1})," ",(null===(E=null==ne?void 0:ne.schema)||void 0===E?void 0:E.type)&&"array"===(null===(S=null==ne?void 0:ne.schema)||void 0===S?void 0:S.type.toLowerCase())?e.jsx(a.SelectGroupV2,{disabled:T,clearable:!1,value:{label:b(null===(q=null===(B=null==ne?void 0:ne.schema)||void 0===B?void 0:B.items)||void 0===q?void 0:q.type),value:null===(_=null===(k=ne.schema)||void 0===k?void 0:k.items)||void 0===_?void 0:_.type},errorMsg:!!(null===(P=null===(A=null==oe?void 0:oe.schema)||void 0===A?void 0:A.items)||void 0===P?void 0:P.type)&&(null===(L=null===(O=null==oe?void 0:oe.schema)||void 0===O?void 0:O.items)||void 0===L?void 0:L.type),onChange:e=>{var l;return re("schema.items.type",null===(l=null==e?void 0:e.value)||void 0===l?void 0:l.toLowerCase())},options:[{list:[{label:"String",value:"string"},{label:"Integer",value:"integer"},{label:"Boolean",value:"boolean"},{label:"Object",value:"object"},{label:"Array",value:"array"},{label:"Number",value:"number"}]}],isMultiple:!1,withSearch:!1}):""]})},"parameter schema type"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[(null==ne?void 0:ne.schema)&&"array"!=(null===(F=null===(R=null==ne?void 0:ne.schema)||void 0===R?void 0:R.type)||void 0===F?void 0:F.toLowerCase())&&"object"!=(null===(V=null===(M=null==ne?void 0:ne.schema)||void 0===M?void 0:M.type)||void 0===V?void 0:V.toLowerCase())?e.jsx(i,{disabled:"array"==(null===(X=null===(W=null==ne?void 0:ne.schema)||void 0===W?void 0:W.type)||void 0===X?void 0:X.toLowerCase())||"object"==(null===(z=null===(G=null==ne?void 0:ne.schema)||void 0===G?void 0:G.type)||void 0===z?void 0:z.toLowerCase()),arrowWithBorder:!0,placement:"bottom-end",type:"function",trigger:"click",delay:[0,0],onCreate:e=>te(e),content:e.jsxs("div",{className:c.editDescTooltipContent,children:[e.jsx("p",{className:c.editDescTooltipContent_header,children:"Enum"}),!!(null===(H=null==ne?void 0:ne.schema)||void 0===H?void 0:H.enum)&&!!(null===(U=null==ne?void 0:ne.schema)||void 0===U?void 0:U.enum.length)&&(null===(K=null===($=null==ne?void 0:ne.schema)||void 0===$?void 0:$.enum)||void 0===K?void 0:K.map(((l,i)=>e.jsx(a.Input,{className:"methodDescForEnum",required:!0,clearable:!1,placeholder:"Enter Enum value...",value:l,onChange:e=>{re(`schema.enum[${i}]`,e)}},i)))),se&&(null==se?void 0:se.map(((l,i)=>e.jsx(a.Input,{className:"methodDescForEnum",required:!0,clearable:!1,placeholder:"Enter Enum value...",value:l,onChange:e=>{let l=[...se];l[i]=e,de(l)}},i)))),e.jsxs("p",{className:"addEnumButton",onClick:()=>{de((e=>[...e,""]))},children:[e.jsx(t,{src:r}),"Add New Enum"]}),!T&&e.jsx(a.Button,{className:c.editDescTooltipContent_btn,variant:"outlined",size:"small",type:"button",onClick:()=>{var e;re("schema.enum",[...null===(e=null==ne?void 0:ne.schema)||void 0===e?void 0:e.enum,...se]),de([]),null==ie||ie.hide()},disabled:se.length>0&&(null==se?void 0:se.filter((e=>!e)).length)||(null===(Q=null==ne?void 0:ne.schema)||void 0===Q?void 0:Q.enum.length)>0&&(null===(Z=null===(Y=null==ne?void 0:ne.schema)||void 0===Y?void 0:Y.enum)||void 0===Z?void 0:Z.filter((e=>!e)).length),children:"Apply"})]}),children:e.jsx(a.Button,{className:c.editDescBtn,id:"EnumButton",variant:"link",color:"action",endIcon:e.jsx(t,{id:"enumIcon",src:o,width:"1.5rem",height:"1.5rem"}),children:"Add"})}):"-"," "]})},"parameter enum"),e.jsx("td",{children:e.jsx("div",{"data-id":"is required",className:"tableData",children:T?e.jsx(e.Fragment,{children:ne.required?"True":"False"}):e.jsx(a.Switch,{checked:ne.required,onClick:()=>{T||re("required",!ne.required)}})})},"parameter required"),e.jsx("td",{children:e.jsxs("div",{"data-id":"TEXT_DESCRIPTION",className:"tableData",children:[e.jsxs("div",{className:c.paramDescContainer,children:[e.jsx(i,{arrowWithBorder:!0,placement:"bottom-end",type:"function",trigger:"click",delay:[0,0],onCreate:e=>ae(e),content:e.jsxs("div",{className:c.editDescTooltipContent,children:[e.jsx("p",{className:c.editDescTooltipContent_header,children:"Description"}),e.jsx(a.TextArea,{value:J||ne.description,onChange:e=>{(""===e||j.ASCII.test(e))&&ee(e)},disabled:T,placeholder:"Describe parameter...",maxLength:120}),!T&&e.jsx(a.Button,{className:c.editDescTooltipContent_btn,variant:"outlined",size:"small",onClick:()=>{re("description",null==J?void 0:J.trim()),null==le||le.hide()},disabled:""===(null==J?void 0:J.trim()),children:"Apply"})]}),children:e.jsxs(a.Button,{className:c.editDescBtn,variant:"link",color:"action",endIcon:e.jsx(t,{src:d,width:"1.5rem",height:"1.5rem"}),children:[T?"View ":"Add "," Description"]})}),e.jsx("div",{className:c.paramDescContainer_separator}),!T&&e.jsx(a.Button,{className:c.deleteParamBtn,variant:"link",color:"error",endIcon:e.jsx(t,{src:s,width:"1.125rem",height:"1.125rem"}),onClick:()=>{ue(),ee(""),g(void 0)}}),!T&&e.jsx(i,{disabled:!!ne.name.trim(),content:"Parameter name can't be empty ",children:e.jsx(a.Button,{className:c.deleteParamBtn,variant:"link",color:"success",disabled:!ne.name.trim(),endIcon:e.jsx(t,{src:n,width:"0.125rem",height:"0.125rem"}),onClick:()=>{ee(""),me()}})})]})," "]})},"parameter schema desc")]}):e.jsx(e.Fragment,{children:!T&&e.jsx("tr",{"data-i":"addNew",className:"row",children:e.jsx("td",{colSpan:5,children:e.jsx(a.Button,{variant:"link",color:"primary",onClick:()=>{g((e=>e?void 0:D?"Req":"Res"))},children:"+ Add Parameter"})})},"addNew")})]})]})})})};export{x as default};
|
|
2
2
|
//# sourceMappingURL=table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sources":["../../../../src/components/table/table.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport './style.scss'\nimport { Button, Input, SelectGroupV2, Switch, TextArea } from 'digitinary-ui'\nimport Tooltip from '../Tooltip/Tooltip'\nimport SVGLoader from '../SVGLoader/SVGLoader'\nimport { AddRow, EditIcon, DeleteIcon } from '../../assets/icons'\nimport PlusIcon from '../../assets/icons/Plus.svg'\nimport PlusSquare from '../../assets/icons/PlusSquare.svg'\nimport styles from '../MethodAccordion/MethodAccordion.module.scss'\nimport { useFormik } from 'formik'\nimport * as yup from 'yup'\nimport { capitalize } from '../../helpers/methodAccordion.helper'\nimport regex from '../../constants/regex'\n\nconst ParamterTable = ({\n id,\n headCells,\n data,\n isFormOpen,\n setIsFormOpen,\n saveNewRow,\n readOnly,\n isRequest = true,\n}) => {\n const [text, setText] = useState('')\n const [tooltipRef, setTooltipRef] = useState(null)\n const [tooltipEnumRef, setTooltipEnumRef] = useState(null)\n const [enumFields, setEnumFields] = useState<string[]>([])\n const { values, errors, setFieldValue, isValid, submitForm, resetForm } = useFormik({\n validateOnMount: true,\n initialValues: {\n name: '',\n in: isRequest ? 'query' : 'header',\n schema: {\n type: 'string',\n enum: [],\n items: {\n type: 'string',\n },\n },\n required: true,\n description: '',\n },\n validationSchema: yup.object().shape({\n name: yup.string().default('').trim().required('Parameter name is required'),\n in: yup.string().required('Paramter type is required'),\n schema: yup.object().shape({\n type: yup.string().required('Parameter schema type is required'),\n enum: yup.array(yup.string()).optional(),\n items: yup.object().shape({\n type: yup.string().optional(),\n }),\n }),\n required: yup.boolean().when('in', {\n is: 'path',\n then: (schema) => schema.oneOf([true], 'Path parameters must be required.'),\n otherwise: (schema) => schema.optional(),\n }),\n description: yup.string().default('').trim().optional(),\n }),\n onSubmit: (values) => {\n if (values && !values?.schema?.items?.type) {\n delete values?.schema?.items?.type\n }\n saveNewRow(values)\n setIsFormOpen(undefined)\n setText('')\n resetForm()\n },\n })\n\n return (\n <div className=\"tableSectionContainer\">\n <div className=\"tableContainer\">\n <table id={id || ''} className={`table borderRadiusTop borderRadiusBottom`}>\n <thead className=\"tableHead\">\n <tr>\n {headCells?.map((headCell) => (\n <th\n key={headCell.id}\n className={`tableHeadCell ${headCell.classes || ''}`}\n style={{ width: headCell.width, minWidth: headCell.minWidth }}\n >\n <div\n className=\"headContainer\"\n data-id={`${\n typeof headCell.label === 'string'\n ? headCell.label.toUpperCase().replace(/[^a-zA-Z0-9]+/g, '_')\n : 'UNKNOWN_LABEL'\n }_COLUMN`}\n >\n {headCell.label}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n <tbody className=\"tableBody\" data-id=\"TABLE_BODY\">\n {data?.map((row, rowIndex) => {\n return (\n <tr key={rowIndex} data-i={rowIndex} className={`row`}>\n {headCells?.map((headCell) => {\n const cellContent = row[headCell.id] !== '_' && (\n <div\n data-id=\"TEXT_DESCRIPTION\"\n className=\"tableData\"\n style={{\n width: headCell.width,\n minWidth: headCell.minWidth,\n }}\n >\n {row[headCell.id]}\n </div>\n )\n\n return (\n <td\n key={headCell.id}\n style={{\n width: headCell.width,\n minWidth: headCell.minWidth,\n }}\n >\n {cellContent}\n </td>\n )\n })}\n </tr>\n )\n })}\n {data?.length === 0 && readOnly && (\n <tr className=\"fallbackTableRow\">\n <td className=\"fallbackContainer\" colSpan={headCells?.length}>\n <div className=\"fallbackTextContainer\">\n <span className=\"fallbackText\"> No Data Available</span>\n </div>\n </td>\n </tr>\n )}\n\n {isFormOpen && !readOnly ? (\n <tr className={`row`}>\n <td key={'Parameter name'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <Input\n placeholder=\"Parameter name\"\n size=\"large\"\n type=\"text\"\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value as string))\n setFieldValue('name', value)\n }}\n value={values.name}\n disabled={readOnly}\n />\n </div>\n </td>\n\n <td key={'parameter in'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <SelectGroupV2\n disabled={readOnly}\n value={{\n label: capitalize(values.in),\n value: values.in,\n }}\n onChange={(item) => setFieldValue('in', item?.value?.toLowerCase())} // Updates state on selection\n options={[\n {\n list: isRequest\n ? [\n { label: 'Query', value: 'query' },\n { label: 'Header', value: 'header' },\n { label: 'Path', value: 'path' },\n { label: 'Body', value: 'body' },\n ]\n : [{ label: 'Header', value: 'header' }],\n },\n ]}\n errorMsg={!!errors.in && errors.in}\n isMultiple={false}\n withSearch={false}\n clearable={false}\n />{' '}\n </div>\n </td>\n\n <td key={'parameter schema type'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <SelectGroupV2\n disabled={readOnly}\n clearable={false}\n value={{\n label: capitalize(values?.schema?.type),\n value: values?.schema?.type,\n }}\n errorMsg={!!errors.schema && errors.schema}\n onChange={(item) => setFieldValue('schema.type', item?.value?.toLowerCase())} // Updates state on selection\n options={[\n {\n list: [\n { label: 'String', value: 'string' },\n { label: 'Integer', value: 'integer' },\n { label: 'Boolean', value: 'boolean' },\n { label: 'Object', value: 'object' },\n { label: 'Array', value: 'array' },\n { label: 'Number', value: 'number' },\n ],\n },\n ]}\n isMultiple={false}\n withSearch={false}\n />{' '}\n </div>\n </td>\n\n <td key={'parameter array schema type'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n {values.schema && values.schema?.type?.toLowerCase() == 'array' ? (\n <SelectGroupV2\n disabled={readOnly}\n clearable={false}\n value={{\n label: capitalize(values?.schema?.items?.type),\n value: values.schema?.items?.type,\n }}\n errorMsg={!!errors?.schema?.items?.type && errors?.schema?.items?.type}\n onChange={(item) =>\n setFieldValue('schema.items.type', item?.value?.toLowerCase())\n } // Updates state on selection\n options={[\n {\n list: [\n { label: 'String', value: 'string' },\n { label: 'Integer', value: 'integer' },\n { label: 'Boolean', value: 'boolean' },\n { label: 'Object', value: 'object' },\n { label: 'Array', value: 'array' },\n { label: 'Number', value: 'number' },\n ],\n },\n ]}\n isMultiple={false}\n withSearch={false}\n />\n ) : (\n '-'\n )}{' '}\n </div>\n </td>\n\n <td key={'parameter enum'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n {values?.schema &&\n values?.schema?.type?.toLowerCase() != 'array' &&\n values?.schema?.type?.toLowerCase() != 'object' ? (\n <Tooltip\n disabled={\n values?.schema?.type?.toLowerCase() == 'array' ||\n values?.schema?.type?.toLowerCase() == 'object'\n }\n arrowWithBorder\n placement=\"bottom-end\"\n type=\"function\"\n trigger=\"click\"\n delay={[0, 0]}\n onCreate={(instance) => setTooltipEnumRef(instance)}\n content={\n <div className={styles.editDescTooltipContent}>\n <p className={styles.editDescTooltipContent_header}>Enum</p>\n {!!values?.schema?.enum &&\n !!values?.schema?.enum.length &&\n values?.schema?.enum?.map((item, index) => (\n <Input\n key={index}\n className={'methodDescForEnum'}\n required\n clearable={false}\n placeholder=\"Enter Enum value...\"\n value={item}\n onChange={(value) => {\n setFieldValue(`schema.enum[${index}]`, value)\n }}\n />\n ))}\n {enumFields &&\n enumFields?.map((item, index) => (\n <Input\n key={index}\n className={'methodDescForEnum'}\n required\n clearable={false}\n placeholder={`Enter Enum value...`}\n value={item}\n onChange={(value) => {\n let _values = [...enumFields]\n _values[index] = value\n setEnumFields(_values)\n }}\n />\n ))}\n <p\n className={'addEnumButton'}\n onClick={() => {\n setEnumFields((prev) => [...prev, ''])\n }}\n >\n <SVGLoader src={PlusSquare} />\n Add New Enum\n </p>\n {!readOnly && (\n <Button\n className={styles.editDescTooltipContent_btn}\n variant=\"outlined\"\n size=\"small\"\n type=\"button\"\n onClick={() => {\n setFieldValue('schema.enum', [\n ...values?.schema?.enum,\n ...enumFields,\n ])\n setEnumFields([])\n tooltipEnumRef?.hide()\n }}\n disabled={\n (enumFields.length > 0 &&\n enumFields?.filter((item) => !item).length) ||\n (values?.schema?.enum.length > 0 &&\n values?.schema?.enum?.filter((item) => !item).length)\n }\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n <Button\n className={styles.editDescBtn}\n id=\"EnumButton\"\n variant=\"link\"\n color=\"action\"\n endIcon={\n <SVGLoader\n id=\"enumIcon\"\n src={PlusIcon}\n width=\"1.5rem\"\n height=\"1.5rem\"\n />\n }\n >\n Add\n </Button>\n </Tooltip>\n ) : (\n '-'\n )}{' '}\n </div>\n </td>\n\n <td key={'parameter required'}>\n <div data-id=\"is required\" className=\"tableData\">\n {readOnly ? (\n <>{values.required ? 'True' : 'False'}</>\n ) : (\n <Switch\n checked={values.required}\n onClick={() => {\n if (readOnly) {\n return\n }\n setFieldValue('required', !values.required)\n }}\n />\n )}\n </div>\n </td>\n\n <td key={'parameter schema desc'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <div className={styles.paramDescContainer}>\n <Tooltip\n arrowWithBorder\n placement=\"bottom-end\"\n type=\"function\"\n trigger=\"click\"\n delay={[0, 0]}\n onCreate={(instance) => setTooltipRef(instance)}\n content={\n <div className={styles.editDescTooltipContent}>\n <p className={styles.editDescTooltipContent_header}>Description</p>\n <TextArea\n value={text || values.description}\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value)) setText(value)\n }}\n disabled={readOnly}\n placeholder=\"Describe parameter...\"\n maxLength={120}\n />\n {!readOnly && (\n <Button\n className={styles.editDescTooltipContent_btn}\n variant=\"outlined\"\n size=\"small\"\n onClick={() => {\n setFieldValue('description', text?.trim())\n tooltipRef?.hide()\n }}\n disabled={text?.trim() === ''}\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n <Button\n className={styles.editDescBtn}\n variant=\"link\"\n color=\"action\"\n endIcon={<SVGLoader src={EditIcon} width=\"1.5rem\" height=\"1.5rem\" />}\n >\n {readOnly ? 'View ' : 'Add '} Description\n </Button>\n </Tooltip>\n\n <div className={styles.paramDescContainer_separator}></div>\n {!readOnly && (\n <Button\n className={styles.deleteParamBtn}\n variant=\"link\"\n color=\"error\"\n endIcon={\n <SVGLoader src={DeleteIcon} width=\"1.125rem\" height=\"1.125rem\" />\n }\n onClick={() => {\n resetForm()\n setText('')\n setIsFormOpen(undefined)\n }} // Correctly delete the new row\n />\n )}\n\n {!readOnly && (\n <Tooltip\n disabled={!!values.name.trim()}\n content={`Parameter name can't be empty `}\n >\n <Button\n className={styles.deleteParamBtn}\n variant=\"link\"\n color=\"success\"\n disabled={!values.name.trim()}\n endIcon={<SVGLoader src={AddRow} width=\"0.125rem\" height=\"0.125rem\" />}\n onClick={() => {\n setText('')\n submitForm()\n }} // Save the new row when clicked\n />\n </Tooltip>\n )}\n </div>{' '}\n </div>\n </td>\n </tr>\n ) : (\n <>\n {!readOnly && (\n <tr key={'addNew'} data-i={'addNew'} className={`row`}>\n <td colSpan={5}>\n <Button\n variant=\"link\"\n color=\"primary\"\n onClick={() => {\n setIsFormOpen((prev) => (!prev ? (isRequest ? 'Req' : 'Res') : undefined))\n }}\n >\n + Add Parameter\n </Button>\n </td>\n </tr>\n )}\n </>\n )}\n </tbody>\n </table>\n </div>\n </div>\n )\n}\n\nexport default ParamterTable\n"],"names":["ParamterTable","id","headCells","data","isFormOpen","setIsFormOpen","saveNewRow","readOnly","isRequest","text","setText","useState","tooltipRef","setTooltipRef","tooltipEnumRef","setTooltipEnumRef","enumFields","setEnumFields","values","errors","setFieldValue","isValid","submitForm","resetForm","useFormik","validateOnMount","initialValues","name","in","schema","type","enum","items","required","description","validationSchema","yup.object","shape","yup.string","default","trim","yup.array","optional","yup.boolean","when","is","then","oneOf","otherwise","onSubmit","_b","_a","_d","_c","undefined","_jsx","className","_jsxs","jsxs","children","map","headCell","classes","style","width","minWidth","jsx","label","toUpperCase","replace","row","rowIndex","cellContent","length","colSpan","Input","placeholder","size","onChange","value","regex","ASCII","test","disabled","SelectGroupV2","capitalize","item","toLowerCase","options","list","errorMsg","isMultiple","withSearch","clearable","_f","_e","_g","_h","_k","_j","_m","_l","_p","_o","_q","Tooltip","_t","_s","_u","_v","arrowWithBorder","placement","trigger","delay","onCreate","instance","content","styles","editDescTooltipContent","editDescTooltipContent_header","_w","_x","_z","_y","index","_values","onClick","prev","SVGLoader","src","PlusSquare","Button","editDescTooltipContent_btn","variant","hide","filter","_0","_2","_1","editDescBtn","color","endIcon","PlusIcon","height","_Fragment","Switch","checked","paramDescContainer","TextArea","maxLength","EditIcon","paramDescContainer_separator","deleteParamBtn","DeleteIcon","AddRow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table.js","sources":["../../../../src/components/table/table.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport './style.scss'\nimport { Button, Input, SelectGroupV2, Switch, TextArea } from 'digitinary-ui'\nimport Tooltip from '../Tooltip/Tooltip'\nimport SVGLoader from '../SVGLoader/SVGLoader'\nimport { AddRow, EditIcon, DeleteIcon } from '../../assets/icons'\nimport PlusIcon from '../../assets/icons/Plus.svg'\nimport PlusSquare from '../../assets/icons/PlusSquare.svg'\nimport styles from '../MethodAccordion/MethodAccordion.module.scss'\nimport { useFormik } from 'formik'\nimport * as yup from 'yup'\nimport { capitalize } from '../../helpers/methodAccordion.helper'\nimport regex from '../../constants/regex'\n\nconst ParamterTable = ({\n id,\n headCells,\n data,\n isFormOpen,\n setIsFormOpen,\n saveNewRow,\n readOnly,\n isRequest = true,\n}) => {\n const [text, setText] = useState('')\n const [tooltipRef, setTooltipRef] = useState(null)\n const [tooltipEnumRef, setTooltipEnumRef] = useState(null)\n const [enumFields, setEnumFields] = useState<string[]>([])\n const { values, errors, setFieldValue, isValid, submitForm, resetForm } = useFormik({\n validateOnMount: true,\n initialValues: {\n name: '',\n in: isRequest ? 'query' : 'header',\n schema: {\n type: 'string',\n enum: [],\n items: {\n type: 'string',\n },\n },\n required: true,\n description: '',\n },\n validationSchema: yup.object().shape({\n name: yup.string().default('').trim().required('Parameter name is required'),\n in: yup.string().required('Paramter type is required'),\n schema: yup.object().shape({\n type: yup.string().required('Parameter schema type is required'),\n enum: yup.array(yup.string()).optional(),\n items: yup.object().shape({\n type: yup.string().optional(),\n }),\n }),\n required: yup.boolean().when('in', {\n is: 'path',\n then: (schema) => schema.oneOf([true], 'Path parameters must be required.'),\n otherwise: (schema) => schema.optional(),\n }),\n description: yup.string().default('').trim().optional(),\n }),\n onSubmit: (values) => {\n if (values && !values?.schema?.items?.type) {\n delete values?.schema?.items?.type\n }\n saveNewRow(values)\n setIsFormOpen(undefined)\n setText('')\n resetForm()\n },\n })\n\n return (\n <div className=\"tableSectionContainer\">\n <div className=\"tableContainer\">\n <table id={id || ''} className={`table borderRadiusTop borderRadiusBottom`}>\n <thead className=\"tableHead\">\n <tr>\n {headCells?.map((headCell) => (\n <th\n key={headCell.id}\n className={`tableHeadCell ${headCell.classes || ''}`}\n style={{ width: headCell.width, minWidth: headCell.minWidth }}\n >\n <div\n className=\"headContainer\"\n data-id={`${\n typeof headCell.label === 'string'\n ? headCell.label.toUpperCase().replace(/[^a-zA-Z0-9]+/g, '_')\n : 'UNKNOWN_LABEL'\n }_COLUMN`}\n >\n {headCell.label}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n <tbody className=\"tableBody\" data-id=\"TABLE_BODY\">\n {data?.map((row, rowIndex) => {\n return (\n <tr key={rowIndex} data-i={rowIndex} className={`row`}>\n {headCells?.map((headCell) => {\n const cellContent = row[headCell.id] !== '_' && (\n <div\n data-id=\"TEXT_DESCRIPTION\"\n className=\"tableData\"\n style={{\n width: headCell.width,\n minWidth: headCell.minWidth,\n }}\n >\n {row[headCell.id]}\n </div>\n )\n\n return (\n <td\n key={headCell.id}\n style={{\n width: headCell.width,\n minWidth: headCell.minWidth,\n }}\n >\n {cellContent}\n </td>\n )\n })}\n </tr>\n )\n })}\n {data?.length === 0 && readOnly && (\n <tr className=\"fallbackTableRow\">\n <td className=\"fallbackContainer\" colSpan={headCells?.length}>\n <div className=\"fallbackTextContainer\">\n <span className=\"fallbackText\"> No Data Available</span>\n </div>\n </td>\n </tr>\n )}\n\n {isFormOpen && !readOnly ? (\n <tr className={`row`}>\n <td key={'Parameter name'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <Input\n placeholder=\"Parameter name\"\n size=\"large\"\n type=\"text\"\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value as string))\n setFieldValue('name', value)\n }}\n value={values.name}\n disabled={readOnly}\n />\n </div>\n </td>\n\n <td key={'parameter in'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <SelectGroupV2\n disabled={readOnly}\n value={{\n label: capitalize(values.in),\n value: values.in,\n }}\n onChange={(item) => setFieldValue('in', item?.value?.toLowerCase())} // Updates state on selection\n options={[\n {\n list: isRequest\n ? [\n { label: 'Query', value: 'query' },\n { label: 'Header', value: 'header' },\n { label: 'Path', value: 'path' },\n { label: 'Body', value: 'body' },\n ]\n : [{ label: 'Header', value: 'header' }],\n },\n ]}\n errorMsg={!!errors.in && errors.in}\n isMultiple={false}\n withSearch={false}\n clearable={false}\n />{' '}\n </div>\n </td>\n\n <td key={'parameter schema type'}>\n <div\n data-id=\"TEXT_DESCRIPTION\"\n className=\"tableData select-inputs\"\n >\n <SelectGroupV2\n disabled={readOnly}\n clearable={false}\n value={{\n label: capitalize(values?.schema?.type),\n value: values?.schema?.type,\n }}\n errorMsg={!!errors.schema && errors.schema}\n onChange={(item) => setFieldValue('schema.type', item?.value?.toLowerCase())} // Updates state on selection\n options={[\n {\n list: [\n { label: 'String', value: 'string' },\n { label: 'Integer', value: 'integer' },\n { label: 'Boolean', value: 'boolean' },\n { label: 'Object', value: 'object' },\n { label: 'Array', value: 'array' },\n { label: 'Number', value: 'number' },\n ],\n },\n ]}\n isMultiple={false}\n withSearch={false}\n />{' '}\n {!!values?.schema?.type && values?.schema?.type.toLowerCase() === 'array' ? (\n <SelectGroupV2\n disabled={readOnly}\n clearable={false}\n value={{\n label: capitalize(values?.schema?.items?.type),\n value: values.schema?.items?.type,\n }}\n errorMsg={!!errors?.schema?.items?.type && errors?.schema?.items?.type}\n onChange={(item) =>\n setFieldValue('schema.items.type', item?.value?.toLowerCase())\n } // Updates state on selection\n options={[\n {\n list: [\n { label: 'String', value: 'string' },\n { label: 'Integer', value: 'integer' },\n { label: 'Boolean', value: 'boolean' },\n { label: 'Object', value: 'object' },\n { label: 'Array', value: 'array' },\n { label: 'Number', value: 'number' },\n ],\n },\n ]}\n isMultiple={false}\n withSearch={false}\n />\n ) : (\n ''\n )}\n </div>\n </td>\n\n <td key={'parameter enum'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n {values?.schema &&\n values?.schema?.type?.toLowerCase() != 'array' &&\n values?.schema?.type?.toLowerCase() != 'object' ? (\n <Tooltip\n disabled={\n values?.schema?.type?.toLowerCase() == 'array' ||\n values?.schema?.type?.toLowerCase() == 'object'\n }\n arrowWithBorder\n placement=\"bottom-end\"\n type=\"function\"\n trigger=\"click\"\n delay={[0, 0]}\n onCreate={(instance) => setTooltipEnumRef(instance)}\n content={\n <div className={styles.editDescTooltipContent}>\n <p className={styles.editDescTooltipContent_header}>Enum</p>\n {!!values?.schema?.enum &&\n !!values?.schema?.enum.length &&\n values?.schema?.enum?.map((item, index) => (\n <Input\n key={index}\n className={'methodDescForEnum'}\n required\n clearable={false}\n placeholder=\"Enter Enum value...\"\n value={item}\n onChange={(value) => {\n setFieldValue(`schema.enum[${index}]`, value)\n }}\n />\n ))}\n {enumFields &&\n enumFields?.map((item, index) => (\n <Input\n key={index}\n className={'methodDescForEnum'}\n required\n clearable={false}\n placeholder={`Enter Enum value...`}\n value={item}\n onChange={(value) => {\n let _values = [...enumFields]\n _values[index] = value\n setEnumFields(_values)\n }}\n />\n ))}\n <p\n className={'addEnumButton'}\n onClick={() => {\n setEnumFields((prev) => [...prev, ''])\n }}\n >\n <SVGLoader src={PlusSquare} />\n Add New Enum\n </p>\n {!readOnly && (\n <Button\n className={styles.editDescTooltipContent_btn}\n variant=\"outlined\"\n size=\"small\"\n type=\"button\"\n onClick={() => {\n setFieldValue('schema.enum', [\n ...values?.schema?.enum,\n ...enumFields,\n ])\n setEnumFields([])\n tooltipEnumRef?.hide()\n }}\n disabled={\n (enumFields.length > 0 &&\n enumFields?.filter((item) => !item).length) ||\n (values?.schema?.enum.length > 0 &&\n values?.schema?.enum?.filter((item) => !item).length)\n }\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n <Button\n className={styles.editDescBtn}\n id=\"EnumButton\"\n variant=\"link\"\n color=\"action\"\n endIcon={\n <SVGLoader\n id=\"enumIcon\"\n src={PlusIcon}\n width=\"1.5rem\"\n height=\"1.5rem\"\n />\n }\n >\n Add\n </Button>\n </Tooltip>\n ) : (\n '-'\n )}{' '}\n </div>\n </td>\n\n <td key={'parameter required'}>\n <div data-id=\"is required\" className=\"tableData\">\n {readOnly ? (\n <>{values.required ? 'True' : 'False'}</>\n ) : (\n <Switch\n checked={values.required}\n onClick={() => {\n if (readOnly) {\n return\n }\n setFieldValue('required', !values.required)\n }}\n />\n )}\n </div>\n </td>\n\n <td key={'parameter schema desc'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <div className={styles.paramDescContainer}>\n <Tooltip\n arrowWithBorder\n placement=\"bottom-end\"\n type=\"function\"\n trigger=\"click\"\n delay={[0, 0]}\n onCreate={(instance) => setTooltipRef(instance)}\n content={\n <div className={styles.editDescTooltipContent}>\n <p className={styles.editDescTooltipContent_header}>Description</p>\n <TextArea\n value={text || values.description}\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value)) setText(value)\n }}\n disabled={readOnly}\n placeholder=\"Describe parameter...\"\n maxLength={120}\n />\n {!readOnly && (\n <Button\n className={styles.editDescTooltipContent_btn}\n variant=\"outlined\"\n size=\"small\"\n onClick={() => {\n setFieldValue('description', text?.trim())\n tooltipRef?.hide()\n }}\n disabled={text?.trim() === ''}\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n <Button\n className={styles.editDescBtn}\n variant=\"link\"\n color=\"action\"\n endIcon={<SVGLoader src={EditIcon} width=\"1.5rem\" height=\"1.5rem\" />}\n >\n {readOnly ? 'View ' : 'Add '} Description\n </Button>\n </Tooltip>\n\n <div className={styles.paramDescContainer_separator}></div>\n {!readOnly && (\n <Button\n className={styles.deleteParamBtn}\n variant=\"link\"\n color=\"error\"\n endIcon={\n <SVGLoader src={DeleteIcon} width=\"1.125rem\" height=\"1.125rem\" />\n }\n onClick={() => {\n resetForm()\n setText('')\n setIsFormOpen(undefined)\n }} // Correctly delete the new row\n />\n )}\n\n {!readOnly && (\n <Tooltip\n disabled={!!values.name.trim()}\n content={`Parameter name can't be empty `}\n >\n <Button\n className={styles.deleteParamBtn}\n variant=\"link\"\n color=\"success\"\n disabled={!values.name.trim()}\n endIcon={<SVGLoader src={AddRow} width=\"0.125rem\" height=\"0.125rem\" />}\n onClick={() => {\n setText('')\n submitForm()\n }} // Save the new row when clicked\n />\n </Tooltip>\n )}\n </div>{' '}\n </div>\n </td>\n </tr>\n ) : (\n <>\n {!readOnly && (\n <tr key={'addNew'} data-i={'addNew'} className={`row`}>\n <td colSpan={5}>\n <Button\n variant=\"link\"\n color=\"primary\"\n onClick={() => {\n setIsFormOpen((prev) => (!prev ? (isRequest ? 'Req' : 'Res') : undefined))\n }}\n >\n + Add Parameter\n </Button>\n </td>\n </tr>\n )}\n </>\n )}\n </tbody>\n </table>\n </div>\n </div>\n )\n}\n\nexport default ParamterTable\n"],"names":["ParamterTable","id","headCells","data","isFormOpen","setIsFormOpen","saveNewRow","readOnly","isRequest","text","setText","useState","tooltipRef","setTooltipRef","tooltipEnumRef","setTooltipEnumRef","enumFields","setEnumFields","values","errors","setFieldValue","isValid","submitForm","resetForm","useFormik","validateOnMount","initialValues","name","in","schema","type","enum","items","required","description","validationSchema","yup.object","shape","yup.string","default","trim","yup.array","optional","yup.boolean","when","is","then","oneOf","otherwise","onSubmit","_b","_a","_d","_c","undefined","_jsx","className","_jsxs","jsxs","children","map","headCell","classes","style","width","minWidth","jsx","label","toUpperCase","replace","row","rowIndex","cellContent","length","colSpan","Input","placeholder","size","onChange","value","regex","ASCII","test","disabled","SelectGroupV2","capitalize","item","toLowerCase","options","list","errorMsg","isMultiple","withSearch","clearable","_f","_e","_g","_h","_k","_j","_m","_l","_p","_o","_q","Tooltip","_t","_s","_u","_v","arrowWithBorder","placement","trigger","delay","onCreate","instance","content","styles","editDescTooltipContent","editDescTooltipContent_header","_w","_x","_z","_y","index","_values","onClick","prev","SVGLoader","src","PlusSquare","Button","editDescTooltipContent_btn","variant","hide","filter","_0","_2","_1","editDescBtn","color","endIcon","PlusIcon","height","_Fragment","Switch","checked","paramDescContainer","TextArea","maxLength","EditIcon","paramDescContainer_separator","deleteParamBtn","DeleteIcon","AddRow"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e={get:{label:"Get",color:"#3A6CD1",order:1},post:{label:"Post",color:"#3AAA35",order:2},put:{label:"Put",color:"#FAAD14",order:3},delete:{label:"Delete",color:"#DA3F3F",order:4},patch:{label:"Patch",color:"#58E2C2",order:5},options:{label:"Options",color:"#495D97",order:6},trace:{label:"Trace",color:"#FFA28F",order:7},head:{label:"Head",color:"#9461C9",order:8}},r=[{id:"tagName",label:"Tag Name",sortable:!1,classes:"requiredParam"},{id:"description",label:"Description",sortable:!1},{id:"externalDocs",label:"External Docs",sortable:!1}],a=[{id:"paramName",label:"Parameter Name",sortable:!1,required:!0,classes:"requiredParam"},{id:"paramType",label:"In",sortable:!1,classes:"requiredParam"},{id:"schemaType",label:"Schema-Type",sortable:!1,classes:"requiredParam"},{id:"
|
|
1
|
+
const e={get:{label:"Get",color:"#3A6CD1",order:1},post:{label:"Post",color:"#3AAA35",order:2},put:{label:"Put",color:"#FAAD14",order:3},delete:{label:"Delete",color:"#DA3F3F",order:4},patch:{label:"Patch",color:"#58E2C2",order:5},options:{label:"Options",color:"#495D97",order:6},trace:{label:"Trace",color:"#FFA28F",order:7},head:{label:"Head",color:"#9461C9",order:8}},r=[{id:"tagName",label:"Tag Name",sortable:!1,classes:"requiredParam"},{id:"description",label:"Description",sortable:!1},{id:"externalDocs",label:"External Docs",sortable:!1}],a=[{id:"paramName",label:"Parameter Name",sortable:!1,required:!0,classes:"requiredParam"},{id:"paramType",label:"In",sortable:!1,classes:"requiredParam"},{id:"schemaType",label:"Schema-Type",sortable:!1,classes:"requiredParam"},{id:"enum",label:"Enum",sortable:!1},{id:"required",label:"Required",sortable:!1,classes:"requiredParam"},{id:"description",label:"Description",sortable:!1}],l=[100,101,102,103,200,201,202,203,204,205,206,207,208,226,300,301,302,303,304,305,306,307,308,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,421,422,423,424,425,426,428,429,431,451,500,501,502,503,504,505,506,507,508,510,511];export{l as httpStatusCodes,e as methodColorMapping,a as paramsTableHeaders,r as tagsTableHeaders};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/constants/index.ts"],"sourcesContent":["export const methodColorMapping = {\n get: {\n label: 'Get',\n color: '#3A6CD1',\n order: 1,\n },\n post: {\n label: 'Post',\n color: '#3AAA35',\n order: 2,\n },\n put: {\n label: 'Put',\n color: '#FAAD14',\n order: 3,\n },\n delete: {\n label: 'Delete',\n color: '#DA3F3F',\n order: 4,\n },\n patch: {\n label: 'Patch',\n color: '#58E2C2',\n order: 5,\n },\n options: {\n label: 'Options',\n color: '#495D97',\n order: 6,\n },\n trace: {\n label: 'Trace',\n color: '#FFA28F',\n order: 7,\n },\n head: {\n label: 'Head',\n color: '#9461C9',\n order: 8,\n },\n}\n\nexport const tagsTableHeaders = [\n {\n id: 'tagName',\n label: 'Tag Name',\n sortable: false,\n classes: 'requiredParam',\n },\n {\n id: 'description',\n label: 'Description',\n sortable: false,\n },\n {\n id: 'externalDocs',\n label: 'External Docs',\n sortable: false,\n },\n]\n\nexport const paramsTableHeaders = [\n {\n id: 'paramName',\n label: 'Parameter Name',\n sortable: false,\n required: true,\n classes: 'requiredParam',\n },\n { id: 'paramType', label: 'In', sortable: false, classes: 'requiredParam' },\n { id: 'schemaType', label: 'Schema-Type', sortable: false, classes: 'requiredParam' },\n { id: 'arraySchemaType', label: 'Array Schema Type', sortable: false },\n { id: 'enum', label: 'Enum', sortable: false },\n { id: 'required', label: 'Required', sortable: false, classes: 'requiredParam' },\n { id: 'description', label: 'Description', sortable: false },\n]\n\nexport const httpStatusCodes = [\n // 1xx: Informational responses\n 100, 101, 102, 103,\n\n // 2xx: Success\n 200, 201, 202, 203, 204, 205, 206, 207, 208, 226,\n\n // 3xx: Redirection\n 300, 301, 302, 303, 304, 305, 306, 307, 308,\n\n // 4xx: Client errors\n 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,\n 421, 422, 423, 424, 425, 426, 428, 429, 431, 451,\n\n // 5xx: Server errors\n 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, 511,\n]\n"],"names":["methodColorMapping","get","label","color","order","post","put","delete","patch","options","trace","head","tagsTableHeaders","id","sortable","classes","paramsTableHeaders","required","httpStatusCodes"],"mappings":"AAAa,MAAAA,EAAqB,CAChCC,IAAK,CACHC,MAAO,MACPC,MAAO,UACPC,MAAO,GAETC,KAAM,CACJH,MAAO,OACPC,MAAO,UACPC,MAAO,GAETE,IAAK,CACHJ,MAAO,MACPC,MAAO,UACPC,MAAO,GAETG,OAAQ,CACNL,MAAO,SACPC,MAAO,UACPC,MAAO,GAETI,MAAO,CACLN,MAAO,QACPC,MAAO,UACPC,MAAO,GAETK,QAAS,CACPP,MAAO,UACPC,MAAO,UACPC,MAAO,GAETM,MAAO,CACLR,MAAO,QACPC,MAAO,UACPC,MAAO,GAETO,KAAM,CACJT,MAAO,OACPC,MAAO,UACPC,MAAO,IAIEQ,EAAmB,CAC9B,CACEC,GAAI,UACJX,MAAO,WACPY,UAAU,EACVC,QAAS,iBAEX,CACEF,GAAI,cACJX,MAAO,cACPY,UAAU,GAEZ,CACED,GAAI,eACJX,MAAO,gBACPY,UAAU,IAIDE,EAAqB,CAChC,CACEH,GAAI,YACJX,MAAO,iBACPY,UAAU,EACVG,UAAU,EACVF,QAAS,iBAEX,CAAEF,GAAI,YAAaX,MAAO,KAAMY,UAAU,EAAOC,QAAS,iBAC1D,CAAEF,GAAI,aAAcX,MAAO,cAAeY,UAAU,EAAOC,QAAS,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/constants/index.ts"],"sourcesContent":["export const methodColorMapping = {\n get: {\n label: 'Get',\n color: '#3A6CD1',\n order: 1,\n },\n post: {\n label: 'Post',\n color: '#3AAA35',\n order: 2,\n },\n put: {\n label: 'Put',\n color: '#FAAD14',\n order: 3,\n },\n delete: {\n label: 'Delete',\n color: '#DA3F3F',\n order: 4,\n },\n patch: {\n label: 'Patch',\n color: '#58E2C2',\n order: 5,\n },\n options: {\n label: 'Options',\n color: '#495D97',\n order: 6,\n },\n trace: {\n label: 'Trace',\n color: '#FFA28F',\n order: 7,\n },\n head: {\n label: 'Head',\n color: '#9461C9',\n order: 8,\n },\n}\n\nexport const tagsTableHeaders = [\n {\n id: 'tagName',\n label: 'Tag Name',\n sortable: false,\n classes: 'requiredParam',\n },\n {\n id: 'description',\n label: 'Description',\n sortable: false,\n },\n {\n id: 'externalDocs',\n label: 'External Docs',\n sortable: false,\n },\n]\n\nexport const paramsTableHeaders = [\n {\n id: 'paramName',\n label: 'Parameter Name',\n sortable: false,\n required: true,\n classes: 'requiredParam',\n },\n { id: 'paramType', label: 'In', sortable: false, classes: 'requiredParam' },\n { id: 'schemaType', label: 'Schema-Type', sortable: false, classes: 'requiredParam' },\n // { id: 'arraySchemaType', label: 'Array Schema Type', sortable: false },\n { id: 'enum', label: 'Enum', sortable: false },\n { id: 'required', label: 'Required', sortable: false, classes: 'requiredParam' },\n { id: 'description', label: 'Description', sortable: false },\n]\n\nexport const httpStatusCodes = [\n // 1xx: Informational responses\n 100, 101, 102, 103,\n\n // 2xx: Success\n 200, 201, 202, 203, 204, 205, 206, 207, 208, 226,\n\n // 3xx: Redirection\n 300, 301, 302, 303, 304, 305, 306, 307, 308,\n\n // 4xx: Client errors\n 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,\n 421, 422, 423, 424, 425, 426, 428, 429, 431, 451,\n\n // 5xx: Server errors\n 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, 511,\n]\n"],"names":["methodColorMapping","get","label","color","order","post","put","delete","patch","options","trace","head","tagsTableHeaders","id","sortable","classes","paramsTableHeaders","required","httpStatusCodes"],"mappings":"AAAa,MAAAA,EAAqB,CAChCC,IAAK,CACHC,MAAO,MACPC,MAAO,UACPC,MAAO,GAETC,KAAM,CACJH,MAAO,OACPC,MAAO,UACPC,MAAO,GAETE,IAAK,CACHJ,MAAO,MACPC,MAAO,UACPC,MAAO,GAETG,OAAQ,CACNL,MAAO,SACPC,MAAO,UACPC,MAAO,GAETI,MAAO,CACLN,MAAO,QACPC,MAAO,UACPC,MAAO,GAETK,QAAS,CACPP,MAAO,UACPC,MAAO,UACPC,MAAO,GAETM,MAAO,CACLR,MAAO,QACPC,MAAO,UACPC,MAAO,GAETO,KAAM,CACJT,MAAO,OACPC,MAAO,UACPC,MAAO,IAIEQ,EAAmB,CAC9B,CACEC,GAAI,UACJX,MAAO,WACPY,UAAU,EACVC,QAAS,iBAEX,CACEF,GAAI,cACJX,MAAO,cACPY,UAAU,GAEZ,CACED,GAAI,eACJX,MAAO,gBACPY,UAAU,IAIDE,EAAqB,CAChC,CACEH,GAAI,YACJX,MAAO,iBACPY,UAAU,EACVG,UAAU,EACVF,QAAS,iBAEX,CAAEF,GAAI,YAAaX,MAAO,KAAMY,UAAU,EAAOC,QAAS,iBAC1D,CAAEF,GAAI,aAAcX,MAAO,cAAeY,UAAU,EAAOC,QAAS,iBAEpE,CAAEF,GAAI,OAAQX,MAAO,OAAQY,UAAU,GACvC,CAAED,GAAI,WAAYX,MAAO,WAAYY,UAAU,EAAOC,QAAS,iBAC/D,CAAEF,GAAI,cAAeX,MAAO,cAAeY,UAAU,IAG1CI,EAAkB,CAE7B,IAAK,IAAK,IAAK,IAGf,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAG7C,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAGxC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAC1F,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAG7C,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{nanoid as s}from"../../node_modules/nanoid/index.js";const t=t=>{var e;const n={default:[]},
|
|
1
|
+
import{nanoid as s}from"../../node_modules/nanoid/index.js";const t=t=>{var e;const a="string"==typeof t.metaData.openApiJson?JSON.parse(t.metaData.openApiJson):t.metaData.openApiJson,n={default:[]},o=new Set(a.tags.map((({name:s})=>s)));for(const[t,i]of Object.entries(a.paths))for(const[a,c]of Object.entries(i)){const i=Object.assign(Object.assign({},c),{method:a,path:t}),r=(null!==(e=c.tags)&&void 0!==e?e:[]).filter((s=>o.has(s)));r.length>0?r.forEach((t=>{n[t]||(n[t]=[]),n[t].push(Object.assign(Object.assign({},i),{id:s(8)}))})):n.default.push(Object.assign(Object.assign({},i),{id:s(8)}))}return Object.assign(Object.assign({},a.info),{apiSpecId:t.apiSpecId,contextPath:t.contextPath,associatedProduct:t.associatedProduct,apiVersions:t.apiVersions,tags:n,servers:a.servers})};export{t as transformOpenApiToDocs};
|
|
2
2
|
//# sourceMappingURL=docs.helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.helper.js","sources":["../../../src/helpers/docs.helper.ts"],"sourcesContent":["import { HTTPMethod, OpenAPIFile } from '@entities/openApi'\nimport { nanoid } from 'nanoid'\nimport { OverviewData, TagData } from 'src/layout/docsLayout'\n\nexport const transformOpenApiToDocs = (
|
|
1
|
+
{"version":3,"file":"docs.helper.js","sources":["../../../src/helpers/docs.helper.ts"],"sourcesContent":["import { ApiSpecModel } from '@entities/index'\nimport { HTTPMethod, OpenAPIFile } from '@entities/openApi'\nimport { nanoid } from 'nanoid'\nimport { OverviewData, TagData } from 'src/layout/docsLayout'\n\nexport const transformOpenApiToDocs = (api: ApiSpecModel): OverviewData => {\n const parsedOpenApi: OpenAPIFile =\n typeof api.metaData.openApiJson === 'string'\n ? JSON.parse(api.metaData.openApiJson)\n : api.metaData.openApiJson\n const groupedPathsByTags: Record<string, TagData[]> = { default: [] }\n const validTags = new Set(parsedOpenApi.tags.map(({ name }) => name))\n\n for (const [path, methods] of Object.entries(parsedOpenApi.paths)) {\n for (const [method, methodData] of Object.entries(methods)) {\n const entry = { ...methodData, method: method as HTTPMethod, path }\n const resourceTags = methodData.tags ?? []\n\n const matchedTags = resourceTags.filter((tag) => validTags.has(tag))\n\n if (matchedTags.length > 0) {\n matchedTags.forEach((tag) => {\n if (!groupedPathsByTags[tag]) groupedPathsByTags[tag] = []\n groupedPathsByTags[tag].push({ ...entry, id: nanoid(8) } as TagData)\n })\n } else {\n groupedPathsByTags.default.push({ ...entry, id: nanoid(8) } as TagData)\n }\n }\n }\n\n return {\n ...parsedOpenApi.info,\n apiSpecId: api.apiSpecId,\n contextPath: api.contextPath,\n associatedProduct: api.associatedProduct,\n apiVersions: api.apiVersions,\n tags: groupedPathsByTags,\n servers: parsedOpenApi.servers,\n }\n}\n"],"names":["transformOpenApiToDocs","api","parsedOpenApi","metaData","openApiJson","JSON","parse","groupedPathsByTags","default","validTags","Set","tags","map","name","path","methods","Object","entries","paths","method","methodData","entry","assign","matchedTags","_a","filter","tag","has","length","forEach","push","id","nanoid","info","apiSpecId","contextPath","associatedProduct","apiVersions","servers"],"mappings":"4DAKa,MAAAA,EAA0BC,UACrC,MAAMC,EACgC,iBAA7BD,EAAIE,SAASC,YAChBC,KAAKC,MAAML,EAAIE,SAASC,aACxBH,EAAIE,SAASC,YACbG,EAAgD,CAAEC,QAAS,IAC3DC,EAAY,IAAIC,IAAIR,EAAcS,KAAKC,KAAI,EAAGC,UAAWA,KAE/D,IAAK,MAAOC,EAAMC,KAAYC,OAAOC,QAAQf,EAAcgB,OACzD,IAAK,MAAOC,EAAQC,KAAeJ,OAAOC,QAAQF,GAAU,CAC1D,MAAMM,EAAaL,OAAAM,OAAAN,OAAAM,OAAA,CAAA,EAAAF,GAAY,CAAAD,OAAQA,EAAsBL,SAGvDS,GAF8B,QAAfC,EAAAJ,EAAWT,YAAI,IAAAa,EAAAA,EAAI,IAEPC,QAAQC,GAAQjB,EAAUkB,IAAID,KAE3DH,EAAYK,OAAS,EACvBL,EAAYM,SAASH,IACdnB,EAAmBmB,KAAMnB,EAAmBmB,GAAO,IACxDnB,EAAmBmB,GAAKI,KAAKd,OAAKM,OAAAN,OAAAM,OAAA,CAAA,EAAAD,GAAO,CAAAU,GAAIC,EAAO,KAAgB,IAGtEzB,EAAmBC,QAAQsB,KAAKd,+BAAKK,GAAK,CAAEU,GAAIC,EAAO,KAE1D,CAGH,OAAAhB,OAAAM,OAAAN,OAAAM,OAAA,CAAA,EACKpB,EAAc+B,MACjB,CAAAC,UAAWjC,EAAIiC,UACfC,YAAalC,EAAIkC,YACjBC,kBAAmBnC,EAAImC,kBACvBC,YAAapC,EAAIoC,YACjB1B,KAAMJ,EACN+B,QAASpC,EAAcoC,SACxB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__rest as e}from"../../node_modules/tslib/tslib.es6.js";const
|
|
1
|
+
import{__rest as e}from"../../node_modules/tslib/tslib.es6.js";const s=e=>{var s,t,n,c;if(e.components&&e.components.securitySchemes){const o=null===(s=Object.keys(e.components.securitySchemes))||void 0===s?void 0:s.at(0);o&&(e.components.securitySchemes[o].type=null===(c=null===(n=null===(t=null==e?void 0:e.components)||void 0===t?void 0:t.securitySchemes)||void 0===n?void 0:n[o])||void 0===c?void 0:c.type)}else e.components={securitySchemes:{Public:{type:"http",scheme:"public"}}};return e.tags||(e.tags=[]),Object.assign(Object.assign({},e),{paths:o(e.paths)})},t=e=>{var s,t,o,n;const i=Object.assign(Object.assign({},e),{paths:c(e.paths)});if(i.components&&i.components.securitySchemes){const e=null===(s=Object.keys(i.components.securitySchemes))||void 0===s?void 0:s.at(0);e&&(i.components.securitySchemes[e].type.toLowerCase()=="APIKEY".toLowerCase()&&(i.components.securitySchemes[e].in=i.components.securitySchemes[e].in),i.components.securitySchemes[e].type=null===(n=null===(o=null===(t=null==i?void 0:i.components)||void 0===t?void 0:t.securitySchemes)||void 0===o?void 0:o[e])||void 0===n?void 0:n.type)}return i},o=e=>Object.entries(e).map((([e,s])=>({path:e,methods:Object.entries(s).map((([e,s])=>{var t,o,n,c,i,r;const p=Object.assign(Object.assign({},s),{type:e,tags:s.tags||[],summary:s.summary||"",responses:Object.entries(s.responses).map((([e,s])=>{var t,o,n,c,i;const r=Object.keys(s.content||{})[0];return{code:e,headers:(null==s?void 0:s.headers)?s.headers:{},content:{contentType:r,schema:Object.assign(Object.assign({},null===(o=null===(t=s.content)||void 0===t?void 0:t[r])||void 0===o?void 0:o.schema),{properties:JSON.stringify(null===(i=null===(c=null===(n=s.content)||void 0===n?void 0:n[r])||void 0===c?void 0:c.schema)||void 0===i?void 0:i.properties)})}}}))});if((null==s?void 0:s.parameters)||(p.parameters=[]),"get"!=e.toLowerCase()){const e=Object.keys((null===(t=null==s?void 0:s.requestBody)||void 0===t?void 0:t.content)||{})[0],d=null===(n=null===(o=null==s?void 0:s.requestBody)||void 0===o?void 0:o.content)||void 0===n?void 0:n.schema,a=(null===(r=null===(i=null===(c=null==s?void 0:s.requestBody)||void 0===c?void 0:c.content)||void 0===i?void 0:i.schema)||void 0===r?void 0:r.properties)?{content:{contentType:e,schema:Object.assign(Object.assign({},d),{properties:(null==d?void 0:d.properties)?JSON.stringify(null==d?void 0:d.properties):"{}"})}}:{content:{contentType:"application/json",schema:{properties:"{}",type:"object"}}};p.requestBody=a}return p}))}))),n=(e,s)=>{var t,o;if(!(null==e?void 0:e.schema)||!(null===(t=null==e?void 0:e.schema)||void 0===t?void 0:t.properties))return{};return JSON.parse(null===(o=null==e?void 0:e.schema)||void 0===o?void 0:o.properties)},c=s=>s.reduce(((s,{path:t,methods:o})=>(s[t]=o.reduce(((s,t)=>{var{type:o,tags:c,responses:i,summary:r,requestBody:p}=t,d=e(t,["type","tags","responses","summary","requestBody"]);s[o]=Object.assign(Object.assign({},d),{tags:c,summary:r,responses:i.reduce(((e,{code:s,content:t,headers:o})=>{const c={};if(o)for(const[e,s]of Object.entries(o))c[e]={description:s.description||"",required:s.required||!1,schema:s.schema||{}};return e[s]={description:"Success",content:t.contentType?{[t.contentType]:{schema:Object.assign(Object.assign({},t.schema),{properties:n(t)})}}:{},headers:c},e}),{})});const a="get"!==o?JSON.parse(p.content.schema.properties):{};return"get"!==o&&(s[o].requestBody={content:{[p.content.contentType]:{schema:Object.assign(Object.assign({},p.content.schema),{properties:a})}}}),s}),{}),s)),{});export{s as transformOpenApiObject,t as transformOpenApiObjectToOrigin,c as transformPathsArrayToOrigin,o as transformPathsToArray};
|
|
2
2
|
//# sourceMappingURL=layout.helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.helper.js","sources":["../../../src/helpers/layout.helper.ts"],"sourcesContent":["import { TransformedPathsArray } from '@entities/layout.type'\nimport { OpenAPIFile, SecurityScheme } from '@entities/openApi'\nimport { TransformedOpenApi } from '@entities/transformedOpenApi'\n\nexport const transformOpenApiObject = (openApiJson: OpenAPIFile): TransformedOpenApi => {\n if (openApiJson.components && openApiJson.components.securitySchemes) {\n const authKey = Object.keys(openApiJson.components.securitySchemes)?.at(0)\n if (authKey) {\n openApiJson.components.securitySchemes[authKey].type = openApiJson?.components\n ?.securitySchemes?.[authKey]?.type as SecurityScheme['type']\n }\n } else {\n openApiJson.components = {\n securitySchemes: {\n Public: {\n type: 'http',\n scheme: 'public',\n },\n },\n }\n }\n\n if (!openApiJson.tags) {\n openApiJson.tags = []\n }\n\n return {\n ...openApiJson,\n paths: transformPathsToArray(openApiJson.paths),\n } as TransformedOpenApi\n}\n\nexport const transformOpenApiObjectToOrigin = (values: TransformedOpenApi): OpenAPIFile => {\n const object = {\n ...values,\n paths: transformPathsArrayToOrigin(values.paths),\n }\n if (object.components && object.components.securitySchemes) {\n const authKey = Object.keys(object.components.securitySchemes)?.at(0)\n if (authKey) {\n if (object.components.securitySchemes[authKey].type.toLowerCase() == 'APIKEY'.toLowerCase()) {\n object.components.securitySchemes[authKey].in = object.components.securitySchemes[authKey]\n .in as SecurityScheme['in']\n }\n object.components.securitySchemes[authKey].type = object?.components?.securitySchemes?.[\n authKey\n ]?.type as SecurityScheme['type']\n }\n }\n return object\n}\n\nexport const transformPathsToArray = (paths: OpenAPIFile['paths']): TransformedPathsArray | any => {\n const transformedPaths = Object.entries(paths).map(([path, methods]) => ({\n path,\n methods: Object.entries(methods).map(([method, methodProps]) => {\n const obj: any = {\n ...methodProps,\n type: method,\n tags: methodProps.tags || [],\n summary: methodProps.summary || '',\n responses: Object.entries(methodProps.responses).map(([code, codeProps]) => {\n const contentType = Object.keys(codeProps.content || {})[0]\n return {\n code,\n content: {\n contentType,\n schema: {\n ...codeProps.content?.[contentType]?.schema,\n properties: JSON.stringify(codeProps.content?.[contentType]?.schema?.properties),\n },\n },\n }\n }),\n }\n // Add parameters if it does not exist in the original JSON\n if (!methodProps?.parameters) {\n obj.parameters = []\n }\n\n if (method.toLowerCase() != 'get') {\n const contentType = Object.keys(methodProps?.requestBody?.content || {})[0]\n const reqSchema = methodProps?.requestBody?.content?.schema\n const requestBodyData = methodProps?.requestBody?.content?.schema?.properties\n ? {\n content: {\n contentType,\n schema: {\n ...reqSchema,\n properties: reqSchema?.properties ? JSON.stringify(reqSchema?.properties) : '{}',\n },\n },\n }\n : {\n content: {\n contentType: 'application/json',\n schema: {\n properties: '{}',\n type: 'object',\n },\n },\n }\n\n obj['requestBody'] = requestBodyData\n }\n\n return obj\n }),\n }))\n\n return transformedPaths\n}\n\nconst validateBodyForResponse = (content, method) => {\n let _content = JSON.parse((content?.schema as any)?.properties as string)\n // if (method == 'get') {\n // if (!_content?.body) {\n // _content = {\n // body: _content,\n // }\n // }\n // }\n return _content\n}\n\nexport const transformPathsArrayToOrigin = (paths: TransformedPathsArray): OpenAPIFile['paths'] => {\n return paths.reduce((acc, { path, methods }) => {\n acc[path] = methods.reduce(\n (methodAcc, { type, tags, responses, summary, requestBody, ...rest }) => {\n // Initialize the method object\n methodAcc[type] = {\n ...rest,\n tags,\n summary,\n responses: responses.reduce((respAcc, { code, content }) => {\n respAcc[code] = {\n description: 'Success', // Assuming this is static from the original data\n content: content.contentType\n ? {\n [content.contentType]: {\n schema: {\n ...(content.schema as object),\n properties: validateBodyForResponse(content, type),\n },\n },\n }\n : {},\n }\n return respAcc\n }, {} as Record<string, any>),\n }\n\n const parsedRequestBodyProps =\n type !== 'get' ? JSON.parse(requestBody.content.schema.properties) : {}\n // Add requestBody for non-GET methods\n if (type !== 'get') {\n methodAcc[type].requestBody = {\n content: {\n [requestBody.content.contentType]: {\n schema: {\n ...requestBody.content.schema,\n properties: parsedRequestBodyProps,\n },\n },\n },\n }\n }\n\n return methodAcc\n },\n {} as Record<string, any>\n )\n\n return acc\n }, {} as OpenAPIFile['paths'])\n}\n"],"names":["transformOpenApiObject","openApiJson","components","securitySchemes","authKey","_a","Object","keys","at","type","_d","_c","_b","Public","scheme","tags","assign","paths","transformPathsToArray","transformOpenApiObjectToOrigin","values","object","transformPathsArrayToOrigin","toLowerCase","in","entries","map","path","methods","method","methodProps","obj","summary","responses","code","codeProps","contentType","content","schema","properties","JSON","stringify","_e","parameters","requestBody","reqSchema","requestBodyData","validateBodyForResponse","parse","reduce","acc","methodAcc","rest","__rest","respAcc","description","parsedRequestBodyProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"layout.helper.js","sources":["../../../src/helpers/layout.helper.ts"],"sourcesContent":["import { TransformedPathsArray } from '@entities/layout.type'\nimport { OpenAPIFile, SecurityScheme } from '@entities/openApi'\nimport { TransformedOpenApi } from '@entities/transformedOpenApi'\n\nexport const transformOpenApiObject = (openApiJson: OpenAPIFile): TransformedOpenApi => {\n if (openApiJson.components && openApiJson.components.securitySchemes) {\n const authKey = Object.keys(openApiJson.components.securitySchemes)?.at(0)\n if (authKey) {\n openApiJson.components.securitySchemes[authKey].type = openApiJson?.components\n ?.securitySchemes?.[authKey]?.type as SecurityScheme['type']\n }\n } else {\n openApiJson.components = {\n securitySchemes: {\n Public: {\n type: 'http',\n scheme: 'public',\n },\n },\n }\n }\n\n if (!openApiJson.tags) {\n openApiJson.tags = []\n }\n\n return {\n ...openApiJson,\n paths: transformPathsToArray(openApiJson.paths),\n } as TransformedOpenApi\n}\n\nexport const transformOpenApiObjectToOrigin = (values: TransformedOpenApi): OpenAPIFile => {\n const object = {\n ...values,\n paths: transformPathsArrayToOrigin(values.paths),\n }\n if (object.components && object.components.securitySchemes) {\n const authKey = Object.keys(object.components.securitySchemes)?.at(0)\n if (authKey) {\n if (object.components.securitySchemes[authKey].type.toLowerCase() == 'APIKEY'.toLowerCase()) {\n object.components.securitySchemes[authKey].in = object.components.securitySchemes[authKey]\n .in as SecurityScheme['in']\n }\n object.components.securitySchemes[authKey].type = object?.components?.securitySchemes?.[\n authKey\n ]?.type as SecurityScheme['type']\n }\n }\n return object\n}\n\nexport const transformPathsToArray = (paths: OpenAPIFile['paths']): TransformedPathsArray | any => {\n const transformedPaths = Object.entries(paths).map(([path, methods]) => ({\n path,\n methods: Object.entries(methods).map(([method, methodProps]) => {\n const obj: any = {\n ...methodProps,\n type: method,\n tags: methodProps.tags || [],\n summary: methodProps.summary || '',\n responses: Object.entries(methodProps.responses).map(([code, codeProps]) => {\n const contentType = Object.keys(codeProps.content || {})[0]\n const headers = !codeProps?.headers ? {} : codeProps.headers\n return {\n code,\n headers,\n content: {\n contentType,\n schema: {\n ...codeProps.content?.[contentType]?.schema,\n properties: JSON.stringify(codeProps.content?.[contentType]?.schema?.properties),\n },\n },\n }\n }),\n }\n // Add parameters if it does not exist in the original JSON\n if (!methodProps?.parameters) {\n obj.parameters = []\n }\n\n // load response headers parameters\n\n if (method.toLowerCase() != 'get') {\n const contentType = Object.keys(methodProps?.requestBody?.content || {})[0]\n const reqSchema = methodProps?.requestBody?.content?.schema\n const requestBodyData = methodProps?.requestBody?.content?.schema?.properties\n ? {\n content: {\n contentType,\n schema: {\n ...reqSchema,\n properties: reqSchema?.properties ? JSON.stringify(reqSchema?.properties) : '{}',\n },\n },\n }\n : {\n content: {\n contentType: 'application/json',\n schema: {\n properties: '{}',\n type: 'object',\n },\n },\n }\n\n obj['requestBody'] = requestBodyData\n }\n return obj\n }),\n }))\n\n return transformedPaths\n}\n\nconst validateBodyForResponse = (content, method) => {\n if (!(content?.schema as any) || !(content?.schema as any)?.properties) {\n return {}\n }\n let _content = JSON.parse((content?.schema as any)?.properties as string)\n\n return _content\n}\n\nexport const transformPathsArrayToOrigin = (paths: TransformedPathsArray): OpenAPIFile['paths'] => {\n return paths.reduce((acc, { path, methods }) => {\n acc[path] = methods.reduce(\n (methodAcc, { type, tags, responses, summary, requestBody, ...rest }) => {\n // Initialize the method object\n methodAcc[type] = {\n ...rest,\n tags,\n summary,\n responses: responses.reduce((respAcc, { code, content, headers }) => {\n const formattedHeaders: Record<string, any> = {}\n if (headers) {\n for (const [key, value] of Object.entries(headers)) {\n formattedHeaders[key] = {\n description: value.description || '',\n required: value.required || false,\n schema: value.schema || {},\n }\n }\n }\n respAcc[code] = {\n description: 'Success', // Assuming this is static from the original data\n content: content.contentType\n ? {\n [content.contentType]: {\n schema: {\n ...(content.schema as object),\n properties: validateBodyForResponse(content, type),\n },\n },\n }\n : {},\n headers: formattedHeaders,\n }\n return respAcc\n }, {} as Record<string, any>),\n }\n\n const parsedRequestBodyProps =\n type !== 'get' ? JSON.parse(requestBody.content.schema.properties) : {}\n // Add requestBody for non-GET methods\n if (type !== 'get') {\n methodAcc[type].requestBody = {\n content: {\n [requestBody.content.contentType]: {\n schema: {\n ...requestBody.content.schema,\n properties: parsedRequestBodyProps,\n },\n },\n },\n }\n }\n\n return methodAcc\n },\n {} as Record<string, any>\n )\n\n return acc\n }, {} as OpenAPIFile['paths'])\n}\n"],"names":["transformOpenApiObject","openApiJson","components","securitySchemes","authKey","_a","Object","keys","at","type","_d","_c","_b","Public","scheme","tags","assign","paths","transformPathsToArray","transformOpenApiObjectToOrigin","values","object","transformPathsArrayToOrigin","toLowerCase","in","entries","map","path","methods","method","methodProps","obj","summary","responses","code","codeProps","contentType","content","headers","schema","properties","JSON","stringify","_e","parameters","requestBody","reqSchema","requestBodyData","validateBodyForResponse","parse","reduce","acc","methodAcc","rest","__rest","respAcc","formattedHeaders","key","value","description","required","parsedRequestBodyProps"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as e}from"../../../../_virtual/jsx-runtime.js";import{useState as s}from"react";import o from"../Codebox/Codebox.js";import{d as i}from"../../../../_virtual/index.js";import{httpStatusCodes as l}from"../../../constants/index.js";import{handleStatusColor as t}from"../../../helpers/methodAccordion.helper.js";import d from"./style.module.scss.js";const n=l.map((s=>({label:e.jsxs("div",{className:d.statusCodeOptionContainer,children:[e.jsx("div",{className:d.statusCodeOptionCircle,style:{backgroundColor:t(s)}}),e.jsx("span",{children:s})]}),value:s}))),a=({data:l})=>{var t,a;const[r,c]=s(n[4]),u=Object.entries(l.responses).map((([e,s])=>({code:e,data:s}))).find((e=>
|
|
1
|
+
import{j as e}from"../../../../_virtual/jsx-runtime.js";import{useState as s}from"react";import o from"../Codebox/Codebox.js";import{d as i}from"../../../../_virtual/index.js";import{httpStatusCodes as l}from"../../../constants/index.js";import{handleStatusColor as t}from"../../../helpers/methodAccordion.helper.js";import d from"./style.module.scss.js";const n=l.map((s=>({label:e.jsxs("div",{className:d.statusCodeOptionContainer,children:[e.jsx("div",{className:d.statusCodeOptionCircle,style:{backgroundColor:t(s)}}),e.jsx("span",{children:s})]}),value:String(s)}))),a=({data:l})=>{var t,a;const[r,c]=s(n[4]),u=Object.entries(l.responses).map((([e,s])=>({code:e,data:s}))).find((e=>e.code===r.value));return e.jsxs("aside",{className:d.apiDocsAside,children:[e.jsx("h2",{className:d.apiDocsAside_title,children:l.summary}),e.jsxs("h4",{className:d.apiDocsAside_subtitle,children:[e.jsx("span",{className:d.apiDocsAside_subtitle_method,"data-method":l.method,children:l.method})," ",e.jsx("span",{children:l.path})]}),(null===(t=null==l?void 0:l.requestBody)||void 0===t?void 0:t.content)&&e.jsxs("div",{className:d.codeboxSection,children:[e.jsx("div",{className:d.codeboxHeader,children:e.jsx("h6",{className:d.codeboxTitle,children:"Request"})}),e.jsx(o,{code:(()=>{var e,s,o;if(null===(e=null==l?void 0:l.requestBody)||void 0===e?void 0:e.content){const e=Object.keys(null===(s=null==l?void 0:l.requestBody)||void 0===s?void 0:s.content)[0];return JSON.stringify(null===(o=null==l?void 0:l.requestBody)||void 0===o?void 0:o.content[e],null,2)}return"{}"})()})]}),(null===(a=Object.keys((null==l?void 0:l.responses)||{}))||void 0===a?void 0:a.length)>0&&e.jsxs("div",{className:d.codeboxSection,children:[e.jsxs("div",{className:`${d.codeboxHeader}`,children:[e.jsx("h6",{className:d.codeboxTitle,children:"Response"}),e.jsx(i.SelectGroup,{size:"small",withSearch:!1,isMultiple:!1,clearable:!1,placeholder:"200",options:[{list:n}],value:r,onChange:e=>{c(e)}})]}),e.jsx(o,{code:(()=>{var e,s;if(null==u?void 0:u.data){const o=Object.keys(null===(e=u.data)||void 0===e?void 0:e.content)[0];return JSON.stringify(null===(s=u.data)||void 0===s?void 0:s.content[o],null,2)}return"{}"})()})]})]})};export{a as default};
|
|
2
2
|
//# sourceMappingURL=DocsAside.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocsAside.js","sources":["../../../../../src/layout/docsComponents/DocsAside/DocsAside.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { EndpointData } from 'src/layout/docsLayout'\nimport Codebox from '../Codebox/Codebox'\nimport { SelectGroup } from 'digitinary-ui'\nimport { httpStatusCodes } from '../../../constants/index'\nimport { handleStatusColor } from '../../../helpers/methodAccordion.helper'\nimport styles from './style.module.scss'\n\nconst httpStatusCodeOptions = httpStatusCodes.map((code) => ({\n label: (\n <div className={styles.statusCodeOptionContainer}>\n <div\n className={styles.statusCodeOptionCircle}\n style={{ backgroundColor: handleStatusColor(code) }}\n ></div>\n <span>{code}</span>\n </div>\n ),\n value: code,\n}))\n\nconst DocsAside = ({ data }: { data: EndpointData }) => {\n const [selectedResStatusCode, setSelectedResStatusCode] = useState(httpStatusCodeOptions[4])\n const currentResponse
|
|
1
|
+
{"version":3,"file":"DocsAside.js","sources":["../../../../../src/layout/docsComponents/DocsAside/DocsAside.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { EndpointData } from 'src/layout/docsLayout'\nimport Codebox from '../Codebox/Codebox'\nimport { Option, SelectGroup } from 'digitinary-ui'\nimport { httpStatusCodes } from '../../../constants/index'\nimport { handleStatusColor } from '../../../helpers/methodAccordion.helper'\nimport styles from './style.module.scss'\n\nconst httpStatusCodeOptions: Option[] = httpStatusCodes.map((code) => ({\n label: (\n <div className={styles.statusCodeOptionContainer}>\n <div\n className={styles.statusCodeOptionCircle}\n style={{ backgroundColor: handleStatusColor(code) }}\n ></div>\n <span>{code}</span>\n </div>\n ),\n value: String(code),\n}))\n\nconst DocsAside = ({ data }: { data: EndpointData }) => {\n const [selectedResStatusCode, setSelectedResStatusCode] = useState(httpStatusCodeOptions[4])\n const currentResponse = Object.entries(data.responses)\n .map(([code, data]) => ({ code, data }))\n .find((res) => res.code === selectedResStatusCode.value)\n\n const stringifyRequestBody = () => {\n if (data?.requestBody?.content) {\n const contentKey = Object.keys(data?.requestBody?.content)[0]\n return JSON.stringify(data?.requestBody?.content[contentKey], null, 2)\n } else {\n return '{}'\n }\n }\n\n const stringifyResponseBody = () => {\n if (currentResponse?.data) {\n const contentKey = Object.keys(currentResponse.data?.content)[0]\n return JSON.stringify(currentResponse.data?.content[contentKey], null, 2)\n } else {\n return '{}'\n }\n }\n\n return (\n <aside className={styles.apiDocsAside}>\n <h2 className={styles.apiDocsAside_title}>{data.summary}</h2>\n <h4 className={styles.apiDocsAside_subtitle}>\n <span className={styles.apiDocsAside_subtitle_method} data-method={data.method}>\n {data.method}\n </span>{' '}\n <span>{data.path}</span>\n </h4>\n {data?.requestBody?.content && (\n <div className={styles.codeboxSection}>\n <div className={styles.codeboxHeader}>\n <h6 className={styles.codeboxTitle}>Request</h6>\n </div>\n\n <Codebox code={stringifyRequestBody()} />\n </div>\n )}\n {Object.keys(data?.responses || {})?.length > 0 && (\n <div className={styles.codeboxSection}>\n <div className={`${styles.codeboxHeader}`}>\n <h6 className={styles.codeboxTitle}>Response</h6>\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\n <Codebox code={stringifyResponseBody()} />\n </div>\n )}\n </aside>\n )\n}\n\nexport default DocsAside\n"],"names":["httpStatusCodeOptions","httpStatusCodes","map","code","label","_jsxs","className","styles","statusCodeOptionContainer","children","_jsx","statusCodeOptionCircle","style","backgroundColor","handleStatusColor","value","String","DocsAside","data","selectedResStatusCode","setSelectedResStatusCode","useState","currentResponse","Object","entries","responses","find","res","apiDocsAside","jsx","apiDocsAside_title","summary","jsxs","apiDocsAside_subtitle","apiDocsAside_subtitle_method","method","path","_a","requestBody","content","codeboxSection","codeboxHeader","codeboxTitle","Codebox","contentKey","keys","_b","JSON","stringify","_c","stringifyRequestBody","length","SelectGroup","size","withSearch","isMultiple","clearable","placeholder","options","list","onChange","stringifyResponseBody"],"mappings":"mWAQA,MAAMA,EAAkCC,EAAgBC,KAAKC,IAAU,CACrEC,MACEC,EAAAA,KAAK,MAAA,CAAAC,UAAWC,EAAOC,0BAAyBC,SAAA,CAC9CC,EAAAA,IACE,MAAA,CAAAJ,UAAWC,EAAOI,uBAClBC,MAAO,CAAEC,gBAAiBC,EAAkBX,MAE9CO,MAAA,OAAA,CAAAD,SAAON,OAGXY,MAAOC,OAAOb,OAGVc,EAAY,EAAGC,mBACnB,MAAOC,EAAuBC,GAA4BC,EAASrB,EAAsB,IACnFsB,EAAkBC,OAAOC,QAAQN,EAAKO,WACzCvB,KAAI,EAAEC,EAAMe,MAAK,CAAQf,OAAMe,WAC/BQ,MAAMC,GAAQA,EAAIxB,OAASgB,EAAsBJ,QAoBpD,OACEV,EAAAA,KAAO,QAAA,CAAAC,UAAWC,EAAOqB,aAAYnB,SAAA,CACnCC,EAAImB,IAAA,KAAA,CAAAvB,UAAWC,EAAOuB,mBAAqBrB,SAAAS,EAAKa,UAChD1B,EAAA2B,KAAA,KAAA,CAAI1B,UAAWC,EAAO0B,sBAAqBxB,SAAA,CACzCC,cAAMJ,UAAWC,EAAO2B,6BAA2C,cAAAhB,EAAKiB,OAAM1B,SAC3ES,EAAKiB,SACA,IACRzB,EAAAmB,IAAA,OAAA,CAAApB,SAAOS,EAAKkB,WAEM,QAAnBC,EAAAnB,eAAAA,EAAMoB,mBAAa,IAAAD,OAAA,EAAAA,EAAAE,UAClBlC,cAAKC,UAAWC,EAAOiC,yBACrB9B,EAAAA,IAAK,MAAA,CAAAJ,UAAWC,EAAOkC,cAAahC,SAClCC,EAAAA,UAAIJ,UAAWC,EAAOmC,aAA0BjC,SAAA,cAGlDC,EAAAA,IAACiC,EAAQ,CAAAxC,KAjCY,gBAC3B,GAAqB,QAAjBkC,EAAAnB,aAAI,EAAJA,EAAMoB,mBAAW,IAAAD,OAAA,EAAAA,EAAEE,QAAS,CAC9B,MAAMK,EAAarB,OAAOsB,KAAwB,QAAnBC,EAAA5B,eAAAA,EAAMoB,mBAAa,IAAAQ,OAAA,EAAAA,EAAAP,SAAS,GAC3D,OAAOQ,KAAKC,UAA6B,UAAnB9B,aAAI,EAAJA,EAAMoB,mBAAa,IAAAW,OAAA,EAAAA,EAAAV,QAAQK,GAAa,KAAM,EACrE,CACC,MAAO,IACR,EA2BoBM,SAGgB,UAAlC3B,OAAOsB,MAAK3B,aAAA,EAAAA,EAAMO,YAAa,WAAG,IAAAqB,OAAA,EAAAA,EAAEK,QAAS,GAC5C9C,EAAAA,YAAKC,UAAWC,EAAOiC,eACrB/B,SAAA,CAAAJ,EAAAA,KAAA,MAAA,CAAKC,UAAW,GAAGC,EAAOkC,gBACxBhC,SAAA,CAAAC,EAAAA,IAAA,KAAA,CAAIJ,UAAWC,EAAOmC,mCACtBhC,MAAC0C,EAAAA,YACC,CAAAC,KAAK,QACLC,YAAY,EACZC,YAAY,EACZC,WAAW,EACXC,YAAY,MACZC,QAAS,CACP,CACEC,KAAM3D,IAGVe,MAAOI,EACPyC,SAAW7C,IACTK,EAAyBL,EAAM,OAKrCL,EAAAmB,IAACc,EAAQ,CAAAxC,KAjDa,cAC5B,GAAImB,aAAe,EAAfA,EAAiBJ,KAAM,CACzB,MAAM0B,EAAarB,OAAOsB,aAAKR,EAAAf,EAAgBJ,2BAAMqB,SAAS,GAC9D,OAAOQ,KAAKC,UAA8B,QAApBF,EAAAxB,EAAgBJ,YAAI,IAAA4B,OAAA,EAAAA,EAAEP,QAAQK,GAAa,KAAM,EACxE,CACC,MAAO,IACR,EA2CoBiB,UAItB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as
|
|
1
|
+
import{j as t}from"../../../../_virtual/jsx-runtime.js";import{TagPage as e}from"./TagPage/index.js";import{EndpointPage as a}from"./EndpointPage/index.js";const s=({data:s,activeType:i,setActiveItemData:d,setActiveType:n,setExpandedSections:o})=>t.jsx("main",{children:"OVERVIEW"===i?t.jsx(e,{data:s,setActiveItemData:d,setActiveType:n,setExpandedSections:o}):t.jsx(a,{data:s})});export{s as default};
|
|
2
2
|
//# sourceMappingURL=DocsContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DocsContent.js","sources":["../../../../../src/layout/docsComponents/DocsContent/DocsContent.tsx"],"sourcesContent":["import React from 'react'\nimport './style.scss'\nimport SVGLoader from '../../../components/SVGLoader/SVGLoader'\nimport { CopySticker } from '../../../assets/icons/index'\nimport { TagPage } from './TagPage'\nimport { EndpointPage } from './EndpointPage'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\n\nconst DocsContent = ({
|
|
1
|
+
{"version":3,"file":"DocsContent.js","sources":["../../../../../src/layout/docsComponents/DocsContent/DocsContent.tsx"],"sourcesContent":["import React from 'react'\nimport './style.scss'\nimport SVGLoader from '../../../components/SVGLoader/SVGLoader'\nimport { CopySticker } from '../../../assets/icons/index'\nimport { TagPage } from './TagPage'\nimport { EndpointPage } from './EndpointPage'\nimport { EndpointData, OverviewData } from 'src/layout/docsLayout'\n\nconst DocsContent = ({\n data,\n activeType,\n setActiveItemData,\n setActiveType,\n setExpandedSections,\n}: {\n data: OverviewData | EndpointData\n activeType: 'OVERVIEW' | 'ENDPOINT'\n}) => {\n return (\n <main>\n {activeType === 'OVERVIEW' ? (\n <TagPage\n data={data}\n setActiveItemData={setActiveItemData}\n setActiveType={setActiveType}\n setExpandedSections={setExpandedSections}\n />\n ) : (\n <EndpointPage data={data} />\n )}\n </main>\n )\n}\n\nexport default DocsContent\n"],"names":["DocsContent","data","activeType","setActiveItemData","setActiveType","setExpandedSections","_jsx","children","TagPage","EndpointPage"],"mappings":"4JAQA,MAAMA,EAAc,EAClBC,OACAC,aACAC,oBACAC,gBACAC,yBAMEC,MACG,OAAA,CAAAC,SAAe,aAAfL,EACCI,MAACE,EAAO,CACNP,KAAMA,EACNE,kBAAmBA,EACnBC,cAAeA,EACfC,oBAAqBA,IAGvBC,MAACG,EAAY,CAACR,KAAMA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as e}from"../../../../../_virtual/jsx-runtime.js";import s from"../../../../components/SVGLoader/SVGLoader.js";import
|
|
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 a from"../../../../assets/icons/CopySticker.svg.js";import i from"../../../../assets/icons/RequestOption.svg.js";import r from"../../../../assets/icons/ArrowBack.svg.js";import{d}from"../../../../../_virtual/index.js";import{useState as t,useEffect as o}from"react";import{handleStatusColor as n}from"../../../../helpers/methodAccordion.helper.js";import{httpStatusCodes as c}from"../../../../constants/index.js";import h from"../../Codebox/style.module.scss.js";import m from"../../../../components/Tooltip/Tooltip.js";const j=({data:j})=>{var x,p,v,u,b;const[N,y]=t("header"),C=c.map((s=>({label:e.jsxs("div",{className:"statusCodeOptionContainer",children:[e.jsx("div",{className:"statusCodeOptionCircle",style:{backgroundColor:n(s)}}),e.jsx("span",{children:s})]}),value:s}))),[f,w]=t(null),[g,k]=t(C[4]),[q,A]=t({});return((null==j?void 0:j.parameters)||[]).filter((e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===N.toLowerCase()})),o((()=>{if(g&&g.value){const e=null==j?void 0:j.responses[g.value];A(null==e?void 0:e.headers)}}),[g]),e.jsxs("div",{className:"api-details-expanded",children:[e.jsxs("div",{className:"test-button",children:[e.jsx("button",{className:"back-button",onClick:()=>window.history.back(),children:e.jsx(s,{src:r})}),e.jsx(m,{content:"Comming soon",children:e.jsx("button",{className:"disabled",children:"Test"})})]}),e.jsx("h3",{children:" Api Name"}),e.jsx("h1",{className:"api-title",children:null===(x=null==j?void 0:j.api)||void 0===x?void 0:x.title}),e.jsxs("div",{className:"url-box",children:[e.jsxs("div",{style:{textAlign:"center"},children:[e.jsx("span",{className:`method-label ${null===(p=null==j?void 0:j.method)||void 0===p?void 0:p.toLowerCase()}`,children:j.method}),e.jsx("span",{className:"url-text",children:null==j?void 0:j.path})]}),e.jsx("span",{className:"icon",onClick:()=>navigator.clipboard.writeText(null==j?void 0:j.path),children:e.jsx(s,{src:a})})]}),e.jsx("p",{className:"api-desc",children:(null===(v=null==j?void 0:j.api)||void 0===v?void 0:v.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","Body"].map((l=>e.jsxs("button",{className:"tab "+(N===l?"active":""),onClick:()=>y(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===(u=j.parameters)||void 0===u?void 0:u.filter((e=>{var s;return(null===(s=e.in)||void 0===s?void 0:s.toLowerCase())===N.toLowerCase()})).map(((a,i)=>{var r,d;return e.jsxs("tr",{children:[e.jsx("td",{children:a.name}),e.jsx("td",{children:a.required?"True":"False"}),e.jsx("td",{children:(null===(r=a.schema)||void 0===r?void 0:r.type)||"-"}),e.jsx("td",{children:Array.isArray(null===(d=a.schema)||void 0===d?void 0:d.enum)?a.schema.enum.join(" / "):"-"}),e.jsxs("td",{className:"desc-cell",children:[e.jsx("div",{className:"desc-text "+(f===i?"expanded":""),children:a.description||"No description"}),e.jsx("button",{className:"desc-toggle",onClick:()=>w(f===i?null:i),children:e.jsx(s,{src:l,className:f===i?"rotated":""})})]})]},i)}))})]})})]}),e.jsxs("div",{className:"response-section",children:[e.jsx("h3",{children:"Response"}),e.jsx("div",{style:{width:"7.5rem",marginLeft:"auto"},children:(null===(b=Object.keys((null==j?void 0:j.responses)||{}))||void 0===b?void 0:b.length)>0&&e.jsx("div",{className:h.codeboxSection,children:e.jsx("div",{className:`${h.codeboxHeader}`,children:e.jsx(d.SelectGroup,{size:"small",withSearch:!1,isMultiple:!1,clearable:!1,placeholder:"200",options:[{list:C}],value:g,onChange:e=>{k(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:!!q&&Object.keys(q)&&Object.keys(q).map(((s,l)=>{var a,i,r,d,t,o,n;return e.jsxs("tr",{children:[e.jsx("td",{children:s}),e.jsx("td",{children:null===(a=q[s])||void 0===a?void 0:a.required.toString()}),e.jsx("td",{children:null===(r=null===(i=q[s])||void 0===i?void 0:i.schema)||void 0===r?void 0:r.type}),e.jsx("td",{children:null===(o=null===(t=null===(d=q[s])||void 0===d?void 0:d.schema)||void 0===t?void 0:t.enum)||void 0===o?void 0:o.join("/")}),e.jsx("td",{children:null===(n=q[s])||void 0===n?void 0:n.description})]})}))})]})})]})]})};export{j 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 './style.scss'\nimport SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport {\n ArrowBack,\n CopySticker,\n DownArrowIcon,\n RequestOption,\n} from '../../../../assets/icons/index'\nimport { ArrowIcon, SelectGroup } from 'digitinary-ui'\nimport { useState } from 'react'\n\nexport const EndpointPage = () => {\n const [expanded, setExpanded] = useState(null)\n\n const requestTableData = [\n {\n name: 'Parameter Name',\n required: 'True',\n type: 'String',\n enum: 'Active/Expired/Cancelled',\n description:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit, Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit.',\n },\n {\n name: 'Parameter Name',\n required: 'False',\n type: 'Boolean',\n enum: 'Active/Expired/Cancelled',\n description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss',\n },\n {\n name: 'Parameter Name',\n required: 'True',\n type: 'Object',\n enum: '-',\n description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss',\n },\n {\n name: 'Parameter Name',\n required: 'True',\n type: 'Array_String',\n enum: '-',\n description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss',\n },\n ]\n\n return (\n <div className=\"api-details-expanded\">\n <div className=\"test-button\">\n <button className=\"back-button\" onClick={() => window.history.back()}>\n <SVGLoader src={ArrowBack} />\n </button>\n\n <button className=\"disabled\">Test</button>\n </div>\n <h3> Api Name</h3>\n <h1 className=\"api-title\">Endpoint Name</h1>\n <div className=\"url-box\">\n <div style={{ textAlign: 'center' }}>\n <span className=\"method-label post\">Post</span>\n <span className=\"url-text\">https://apigw sdb-1.test.dgate.digitinary.net/test</span>\n </div>\n\n <SVGLoader src={CopySticker} className=\"copy-icon\" />\n </div>\n\n <p className=\"api-desc\">Endpoint Description</p>\n\n <h3>Request</h3>\n\n <div className=\"request-section\">\n <div className=\"request-tabs\">\n <button className=\"tab\">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Header\n </button>\n <button className=\"tab\">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Path\n </button>\n <button className=\"tab\">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Query\n </button>\n <button className=\"tab\">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Request Body\n </button>\n </div>\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 {requestTableData.map((row, index) => (\n <tr key={index}>\n <td>{row.name}</td>\n <td>{row.required}</td>\n <td>{row.type}</td>\n <td>{row.enum}</td>\n <td className=\"desc-cell\">\n <div className={`desc-text ${expanded === index ? 'expanded' : ''}`}>\n {row.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 </div>\n\n <div className=\"response-section\">\n <div className=\"response-drop-test\">\n <SelectGroup\n className=\"response-drop\"\n withSearch={false}\n isMultiple={false}\n clearable={false}\n placeholder=\"200\"\n options={[]}\n //value={selectedStatusCode}\n onChange={(value) => {\n // setSelectedStatusCode(value)\n }}\n />\n </div>\n\n <h3>Response</h3>\n <button className=\"tab\">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Header\n </button>\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 <tr>\n <td>Parameter Name</td>\n <td>True</td>\n <td>String</td>\n <td>Active/Expired/Cancelled</td>\n <td>Borem taciti dolor ...</td>\n </tr>\n <tr>\n <td>Parameter Name</td>\n <td>True</td>\n <td>Array_Object</td>\n <td>-</td>\n <td>Borem taciti dolor ...</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["EndpointPage","expanded","setExpanded","useState","_jsxs","className","children","_jsx","onClick","window","history","back","SVGLoader","src","ArrowBack","jsxs","style","textAlign","jsx","CopySticker","RequestOption","name","required","type","enum","description","map","row","index","DownArrowIcon","SelectGroup","withSearch","isMultiple","clearable","placeholder","options","onChange","value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/layout/docsComponents/DocsContent/EndpointPage/index.tsx"],"sourcesContent":["import './style.scss'\nimport SVGLoader from '../../../../components/SVGLoader/SVGLoader'\nimport {\n ArrowBack,\n CopySticker,\n DownArrowIcon,\n RequestOption,\n} from '../../../../assets/icons/index'\nimport { ArrowIcon, SelectGroup } from 'digitinary-ui'\nimport { useEffect, useState } from 'react'\nimport { EndpointData } 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'\n\nexport const EndpointPage = ({ data }) => {\n const [activeTab, setActiveTab] = useState('header')\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])\n\n return (\n <div className=\"api-details-expanded\">\n <div className=\"test-button\">\n <button className=\"back-button\" onClick={() => window.history.back()}>\n <SVGLoader src={ArrowBack} />\n </button>\n\n <Tooltip content=\"Comming soon\">\n <button className=\"disabled\">Test</button>\n </Tooltip>\n </div>\n <h3> Api Name</h3>\n <h1 className=\"api-title\">{data?.api?.title}</h1>\n <div className=\"url-box\">\n <div style={{ textAlign: 'center' }}>\n <span className={`method-label ${data?.method?.toLowerCase()}`}>{data.method}</span>\n <span className=\"url-text\">{data?.path}</span>\n </div>\n <span className=\"icon\" onClick={() => navigator.clipboard.writeText(data?.path)}>\n <SVGLoader src={CopySticker} />\n </span>\n </div>\n\n <p className=\"api-desc\">{data?.api?.description || 'No Description'}</p>\n\n <h3>Request</h3>\n\n <div className=\"request-section\">\n <div className=\"request-tabs\">\n {['header', 'path', 'query', 'Body'].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>{row.schema?.type || '-'}</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 style={{ width: '7.5rem', marginLeft: 'auto' }}>\n {Object.keys(data?.responses || {})?.length > 0 && (\n <div className={styles.codeboxSection}>\n <div className={`${styles.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\n <button className=\"tab active \">\n <SVGLoader src={RequestOption} className=\"icon-left\" />\n Header\n </button>\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 && Object.keys(headersList) && Object.keys(headersList).map((key, index) => (\n <tr>\n <td>{key}</td>\n <td>{headersList[key]?.required.toString()}</td>\n <td>{headersList[key]?.schema?.type}</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","activeTab","setActiveTab","useState","httpStatusCodeOptions","httpStatusCodes","map","code","label","_jsxs","jsxs","className","children","_jsx","style","backgroundColor","handleStatusColor","value","expanded","setExpanded","selectedResStatusCode","setSelectedResStatusCode","headersList","setHeadersList","parameters","filter","param","in","_a","toLowerCase","useEffect","headerObj","responses","headers","jsx","onClick","window","history","back","SVGLoader","src","ArrowBack","Tooltip","content","api","title","textAlign","_b","method","path","navigator","clipboard","writeText","CopySticker","_c","description","tab","RequestOption","charAt","toUpperCase","slice","_d","p","row","index","name","required","schema","type","Array","isArray","enum","join","DownArrowIcon","width","marginLeft","Object","keys","_e","length","styles","codeboxSection","codeboxHeader","SelectGroup","size","withSearch","isMultiple","clearable","placeholder","options","list","onChange","key","toString","_f","_g"],"mappings":"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"}
|