@digi-frontend/dgate-api-documentation 1.0.39 → 1.0.47
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/.editorconfig +12 -12
- package/.prettierignore +7 -7
- package/.prettierrc +15 -15
- package/dist/{a7568b270e175038.svg → 070dc6ecd197bc80.svg} +8 -8
- package/dist/16702d92fd6d1730.svg +6 -0
- package/dist/2b546d6e9fdf604a.svg +3 -0
- package/dist/2c3c6c2c3b835504.svg +5 -0
- package/dist/{43595976d1fdccbf.svg → 2e10bbdb265df50e.svg} +4 -4
- package/dist/55b5994c5781482b.svg +5 -0
- package/dist/60bef8083c55f46b.svg +6 -0
- package/dist/68c710e0583e19e6.svg +5 -0
- package/dist/731221b3f242672d.svg +4 -0
- package/dist/{b82c7612e73342f3.svg → 7f54eeb0bb2d1150.svg} +3 -3
- package/dist/8520b6792278d9df.svg +6 -0
- package/dist/{56dc416b683db280.svg → 8789eb84283ea95b.svg} +5 -5
- package/dist/9506ef7a26a74147.svg +12 -0
- package/dist/9b7aee27757b5036.svg +3 -0
- package/dist/{af16a554be8c4d69.svg → 9bdff13f8d8fa48a.svg} +3 -3
- package/dist/_virtual/index3.js +1 -1
- package/dist/_virtual/index4.js +1 -1
- package/dist/_virtual/index5.js +1 -1
- package/dist/{64efc2716808c4a4.svg → bb8b87cace25e052.svg} +3 -3
- package/dist/cceb1e5dc06b0b85.svg +4 -0
- package/dist/d140a601c85bac25.svg +3 -0
- package/dist/{72db3b05a96dd600.svg → d32ce84bbd78babd.svg} +3 -3
- package/dist/{844eba3f2e42a9eb.svg → d501922060662842.svg} +3 -3
- package/dist/d6d0a98ec38e6b77.svg +3 -0
- package/dist/e04479ad425e7d58.svg +4 -0
- package/dist/f4a32992f02af522.svg +5 -0
- package/dist/node_modules/dom-serializer/lib/foreignNames.js +2 -0
- package/dist/node_modules/dom-serializer/lib/foreignNames.js.map +1 -0
- package/dist/node_modules/dom-serializer/lib/index.js +2 -0
- package/dist/node_modules/dom-serializer/lib/index.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/decode.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/decode.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/decode_codepoint.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/decode_codepoint.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/encode.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/encode.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/escape.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/escape.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-html.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-html.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-xml.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-xml.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/encode-html.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/generated/encode-html.js.map +1 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/index.js +2 -0
- package/dist/node_modules/dom-serializer/node_modules/entities/lib/index.js.map +1 -0
- package/dist/node_modules/domhandler/lib/index.js +2 -0
- package/dist/node_modules/domhandler/lib/index.js.map +1 -0
- package/dist/node_modules/domhandler/lib/node.js +2 -0
- package/dist/node_modules/domhandler/lib/node.js.map +1 -0
- package/dist/node_modules/domutils/lib/feeds.js +2 -0
- package/dist/node_modules/domutils/lib/feeds.js.map +1 -0
- package/dist/node_modules/domutils/lib/helpers.js +2 -0
- package/dist/node_modules/domutils/lib/helpers.js.map +1 -0
- package/dist/node_modules/domutils/lib/index.js +2 -0
- package/dist/node_modules/domutils/lib/index.js.map +1 -0
- package/dist/node_modules/domutils/lib/legacy.js +2 -0
- package/dist/node_modules/domutils/lib/legacy.js.map +1 -0
- package/dist/node_modules/domutils/lib/manipulation.js +2 -0
- package/dist/node_modules/domutils/lib/manipulation.js.map +1 -0
- package/dist/node_modules/domutils/lib/querying.js +2 -0
- package/dist/node_modules/domutils/lib/querying.js.map +1 -0
- package/dist/node_modules/domutils/lib/stringify.js +2 -0
- package/dist/node_modules/domutils/lib/stringify.js.map +1 -0
- package/dist/node_modules/domutils/lib/traversal.js +2 -0
- package/dist/node_modules/domutils/lib/traversal.js.map +1 -0
- package/dist/node_modules/entities/dist/commonjs/decode-codepoint.js +2 -0
- package/dist/node_modules/entities/dist/commonjs/decode-codepoint.js.map +1 -0
- package/dist/node_modules/entities/dist/commonjs/decode.js +2 -0
- package/dist/node_modules/entities/dist/commonjs/decode.js.map +1 -0
- package/dist/node_modules/entities/dist/commonjs/generated/decode-data-html.js +2 -0
- package/dist/node_modules/entities/dist/commonjs/generated/decode-data-html.js.map +1 -0
- package/dist/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +2 -0
- package/dist/node_modules/entities/dist/commonjs/generated/decode-data-xml.js.map +1 -0
- package/dist/node_modules/html-dom-parser/lib/server/html-to-dom.js +1 -1
- package/dist/node_modules/html-dom-parser/lib/server/html-to-dom.js.map +1 -1
- package/dist/node_modules/html-react-parser/lib/index.js +1 -1
- package/dist/node_modules/html-react-parser/lib/index.js.map +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/Parser.js +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/Parser.js.map +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/Tokenizer.js +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/Tokenizer.js.map +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/index.js +1 -1
- package/dist/node_modules/htmlparser2/dist/commonjs/index.js.map +1 -1
- package/dist/node_modules/style-to-object/cjs/index.js +1 -1
- package/dist/node_modules/toposort/index.js +1 -1
- package/dist/node_modules/yup/index.esm.js +1 -1
- package/dist/src/assets/icons/AddRow.svg.js +1 -1
- package/dist/src/assets/icons/AddRow.svg.js.map +1 -1
- package/dist/src/assets/icons/ApiIcon.svg.js +2 -0
- package/dist/src/assets/icons/ApiIcon.svg.js.map +1 -0
- package/dist/src/assets/icons/ArrowBack.svg.js +2 -0
- package/dist/src/assets/icons/ArrowBack.svg.js.map +1 -0
- package/dist/src/assets/icons/BookIcon.svg.js +2 -0
- package/dist/src/assets/icons/BookIcon.svg.js.map +1 -0
- package/dist/src/assets/icons/CopySticker.svg.js +2 -0
- package/dist/src/assets/icons/CopySticker.svg.js.map +1 -0
- package/dist/src/assets/icons/DeleteIcon.svg.js +1 -1
- package/dist/src/assets/icons/DeleteIcon.svg.js.map +1 -1
- package/dist/src/assets/icons/DeleteOutlinedIcon.svg.js +2 -0
- package/dist/src/assets/icons/DeleteOutlinedIcon.svg.js.map +1 -0
- package/dist/src/assets/icons/DownArrow.svg.js +1 -1
- package/dist/src/assets/icons/DownArrow.svg.js.map +1 -1
- package/dist/src/assets/icons/EditIcon.svg.js +1 -1
- package/dist/src/assets/icons/EditIcon.svg.js.map +1 -1
- package/dist/src/assets/icons/FilterIcon.svg.js +2 -0
- package/dist/src/assets/icons/FilterIcon.svg.js.map +1 -0
- package/dist/src/assets/icons/Plus.svg.js +2 -0
- package/dist/src/assets/icons/Plus.svg.js.map +1 -0
- package/dist/src/assets/icons/PlusSquare.svg.js +2 -0
- package/dist/src/assets/icons/PlusSquare.svg.js.map +1 -0
- package/dist/src/assets/icons/RequestOption.svg.js +2 -0
- package/dist/src/assets/icons/RequestOption.svg.js.map +1 -0
- package/dist/src/assets/icons/arrowDownGray.svg.js +2 -0
- package/dist/src/assets/icons/arrowDownGray.svg.js.map +1 -0
- package/dist/src/assets/icons/arrowRightGray.svg.js +2 -0
- package/dist/src/assets/icons/arrowRightGray.svg.js.map +1 -0
- package/dist/src/assets/icons/close-circle.svg.js +2 -0
- package/dist/src/assets/icons/close-circle.svg.js.map +1 -0
- package/dist/src/assets/icons/document.svg.js +2 -0
- package/dist/src/assets/icons/document.svg.js.map +1 -0
- package/dist/src/assets/icons/eye.svg.js +2 -0
- package/dist/src/assets/icons/eye.svg.js.map +1 -0
- package/dist/src/assets/icons/infoIcon.svg.js +2 -0
- package/dist/src/assets/icons/infoIcon.svg.js.map +1 -0
- package/dist/src/assets/icons/searchIcon.svg.js +2 -0
- package/dist/src/assets/icons/searchIcon.svg.js.map +1 -0
- package/dist/src/components/InfoForm/InfoForm.js +1 -1
- package/dist/src/components/InfoForm/InfoForm.js.map +1 -1
- package/dist/src/components/JsonInput/JsonInput.js.map +1 -1
- package/dist/src/components/LivePreview/LivePreview.js +1 -1
- package/dist/src/components/LivePreview/LivePreview.js.map +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/SVGLoader/SVGLoader.js.map +1 -1
- package/dist/src/components/SectionHead/SectionHead.js.map +1 -1
- package/dist/src/components/SimpleLabelValue/SimpleLabelValue.js.map +1 -1
- package/dist/src/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/src/components/dialog/index.js +1 -1
- package/dist/src/components/dialog/index.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/components/table/tags-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/constants/methods.constant.js +2 -0
- package/dist/src/constants/methods.constant.js.map +1 -0
- package/dist/src/constants/regex.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/helpers/methodAccordion.helper.js.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/layout/docsComponents/DocsAside/DocsAside.js +2 -0
- package/dist/src/layout/docsComponents/DocsAside/DocsAside.js.map +1 -0
- package/dist/src/layout/docsComponents/DocsContent/DocsContent.js +2 -0
- package/dist/src/layout/docsComponents/DocsContent/DocsContent.js.map +1 -0
- package/dist/src/layout/docsComponents/DocsContent/EndpointPage/index.js +2 -0
- package/dist/src/layout/docsComponents/DocsContent/EndpointPage/index.js.map +1 -0
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.js +2 -0
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.js.map +1 -0
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.module.scss.js +2 -0
- package/dist/src/layout/docsComponents/DocsHeader/DocsHeader.module.scss.js.map +1 -0
- package/dist/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.js +2 -0
- package/dist/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.js.map +1 -0
- package/dist/src/layout/docsComponents/index.js +2 -0
- package/dist/src/layout/docsComponents/index.js.map +1 -0
- package/dist/src/layout/docsLayout.js +2 -0
- package/dist/src/layout/docsLayout.js.map +1 -0
- package/dist/src/layout/layout.js +1 -1
- package/dist/src/layout/layout.js.map +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 +1436 -368
- package/dist/types/assets/icons/index.d.ts +16 -1
- package/dist/types/components/LivePreview/LivePreview.d.ts +1 -0
- package/dist/types/components/MethodAccordion/MethodAccordion.d.ts +2 -1
- package/dist/types/components/dialog/dialog.d.ts +3 -0
- package/dist/types/components/table/table.d.ts +2 -1
- package/dist/types/constants/methods.constant.d.ts +16 -0
- package/dist/types/helpers/docs.helper.d.ts +3 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/layout/docsComponents/DocsAside/DocsAside.d.ts +3 -0
- package/dist/types/layout/docsComponents/DocsContent/DocsContent.d.ts +3 -0
- package/dist/types/layout/docsComponents/DocsContent/EndpointPage/index.d.ts +2 -0
- package/dist/types/layout/docsComponents/DocsContent/TagPage/index.d.ts +2 -0
- package/dist/types/layout/docsComponents/DocsHeader/DocsHeader.d.ts +3 -0
- package/dist/types/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.d.ts +8 -0
- package/dist/types/layout/docsComponents/index.d.ts +17 -0
- package/dist/types/layout/docsLayout.d.ts +33 -0
- package/dist/types/layout/layout.d.ts +2 -1
- package/dist/types/types/layout.type.d.ts +1 -0
- package/dist/types/types/openApi.d.ts +4 -4
- package/dist/types/validator/form.scheme.d.ts +10 -2
- package/package.json +45 -43
- package/rollup.config.js +35 -35
- package/src/assets/icons/AddRow.svg +3 -3
- package/src/assets/icons/ApiIcon.svg +12 -0
- package/src/assets/icons/ArrowBack.svg +3 -0
- package/src/assets/icons/BookIcon.svg +6 -0
- package/src/assets/icons/CheckMarkSquare.svg +5 -5
- package/src/assets/icons/CloseIcon.svg +4 -4
- package/src/assets/icons/CopySticker.svg +6 -0
- package/src/assets/icons/DeleteIcon.svg +3 -3
- package/src/assets/icons/DeleteOutlinedIcon.svg +8 -0
- package/src/assets/icons/DownArrow.svg +3 -3
- package/src/assets/icons/EditIcon.svg +3 -3
- package/src/assets/icons/FilterIcon.svg +4 -0
- package/src/assets/icons/Plus.svg +5 -0
- package/src/assets/icons/PlusSquare.svg +3 -0
- package/src/assets/icons/RequestOption.svg +5 -0
- package/src/assets/icons/UpArrow.svg +3 -3
- package/src/assets/icons/arrowDownGray.svg +3 -0
- package/src/assets/icons/arrowRightGray.svg +3 -0
- package/src/assets/icons/close-circle.svg +5 -0
- package/src/assets/icons/deleteOutlinedIcon.svg +8 -8
- package/src/assets/icons/document.svg +6 -0
- package/src/assets/icons/eye.svg +4 -0
- package/src/assets/icons/index.ts +23 -8
- package/src/assets/icons/infoIcon.svg +5 -0
- package/src/assets/icons/searchIcon.svg +4 -0
- package/src/components/Chips/Chips.tsx +87 -87
- package/src/components/Chips/style.scss +147 -147
- package/src/components/InfoForm/InfoForm.module.scss +165 -165
- package/src/components/InfoForm/InfoForm.tsx +423 -428
- package/src/components/JsonInput/JsonInput.tsx +149 -149
- package/src/components/JsonInput/style.module.scss +133 -133
- package/src/components/LivePreview/LivePreview.module.scss +180 -24
- package/src/components/LivePreview/LivePreview.tsx +226 -191
- package/src/components/MethodAccordion/MethodAccordion.module.scss +386 -338
- package/src/components/MethodAccordion/MethodAccordion.tsx +670 -514
- package/src/components/SVGLoader/SVGLoader.tsx +96 -94
- package/src/components/SectionHead/SectionHead.scss +29 -29
- package/src/components/SectionHead/SectionHead.tsx +22 -22
- package/src/components/SimpleLabelValue/SimpleLabelValue.tsx +31 -31
- package/src/components/SimpleLabelValue/index.ts +1 -1
- package/src/components/SimpleLabelValue/style.scss +30 -30
- package/src/components/Tooltip/Tooltip.scss +133 -133
- package/src/components/Tooltip/Tooltip.tsx +85 -85
- package/src/components/_global.scss +337 -337
- package/src/components/dialog/dialog.ts +57 -54
- package/src/components/dialog/index.tsx +86 -85
- package/src/components/dialog/style.scss +188 -104
- package/src/components/table/style.scss +217 -190
- package/src/components/table/table.tsx +489 -327
- package/src/components/table/tags-table.tsx +348 -348
- package/src/constants/index.ts +95 -93
- package/src/constants/methods.constant.ts +26 -0
- package/src/constants/regex.ts +7 -7
- package/src/global.d.ts +13 -13
- package/src/helpers/docs.helper.ts +28 -0
- package/src/helpers/layout.helper.ts +176 -174
- package/src/helpers/methodAccordion.helper.ts +19 -19
- package/src/index.ts +2 -1
- package/src/layout/docsComponents/DocsAside/DocsAside.tsx +8 -0
- package/src/layout/docsComponents/DocsAside/style.scss +3 -0
- package/src/layout/docsComponents/DocsContent/DocsContent.tsx +13 -0
- package/src/layout/docsComponents/DocsContent/EndpointPage/index.tsx +183 -0
- package/src/layout/docsComponents/DocsContent/EndpointPage/style.scss +230 -0
- package/src/layout/docsComponents/DocsContent/TagPage/index.tsx +111 -0
- package/src/layout/docsComponents/DocsContent/TagPage/style.scss +246 -0
- package/src/layout/docsComponents/DocsContent/style.scss +0 -0
- package/src/layout/docsComponents/DocsHeader/DocsHeader.module.scss +198 -0
- package/src/layout/docsComponents/DocsHeader/DocsHeader.tsx +119 -0
- package/src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.tsx +183 -0
- package/src/layout/docsComponents/DocsSideMenuTree/style.scss +195 -0
- package/src/layout/docsComponents/index.scss +47 -0
- package/src/layout/docsComponents/index.tsx +28 -0
- package/src/layout/docsLayout.tsx +69 -0
- package/src/layout/layout.module.css +61 -61
- package/src/layout/layout.tsx +162 -150
- package/src/types/layout.type.ts +31 -30
- package/src/types/openApi.ts +108 -108
- package/src/types/transformedOpenApi.ts +52 -52
- package/src/validator/form.scheme.ts +88 -70
- package/tsconfig.json +33 -33
- package/dist/_virtual/index20.js +0 -2
- package/dist/_virtual/index20.js.map +0 -1
- package/dist/_virtual/index21.js +0 -2
- package/dist/_virtual/index21.js.map +0 -1
- package/dist/_virtual/node2.js +0 -2
- package/dist/_virtual/node2.js.map +0 -1
- package/dist/_virtual/node3.js +0 -2
- package/dist/_virtual/node3.js.map +0 -1
- package/dist/node_modules/html-dom-parser/node_modules/domhandler/lib/index.js +0 -2
- package/dist/node_modules/html-dom-parser/node_modules/domhandler/lib/index.js.map +0 -1
- package/dist/node_modules/html-dom-parser/node_modules/domhandler/lib/node.js +0 -2
- package/dist/node_modules/html-dom-parser/node_modules/domhandler/lib/node.js.map +0 -1
- package/dist/node_modules/html-react-parser/node_modules/domhandler/lib/index.js +0 -2
- package/dist/node_modules/html-react-parser/node_modules/domhandler/lib/index.js.map +0 -1
- package/dist/node_modules/html-react-parser/node_modules/domhandler/lib/node.js +0 -2
- package/dist/node_modules/html-react-parser/node_modules/domhandler/lib/node.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/lib/foreignNames.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/lib/foreignNames.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/lib/index.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/lib/index.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode_codepoint.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/decode_codepoint.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/encode.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/encode.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/escape.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/escape.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-html.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-html.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-xml.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/decode-data-xml.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/encode-html.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/generated/encode-html.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/index.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/dom-serializer/node_modules/entities/lib/index.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domhandler/lib/index.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domhandler/lib/index.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domhandler/lib/node.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domhandler/lib/node.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/feeds.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/feeds.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/helpers.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/helpers.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/index.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/index.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/legacy.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/legacy.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/manipulation.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/manipulation.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/querying.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/querying.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/stringify.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/stringify.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/traversal.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/domutils/lib/traversal.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode-codepoint.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/decode.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-html.js.map +0 -1
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +0 -2
- package/dist/node_modules/htmlparser2/node_modules/entities/dist/commonjs/generated/decode-data-xml.js.map +0 -1
- package/dist/src/assets/icons/CheckMarkSquare.svg.js +0 -2
- package/dist/src/assets/icons/CheckMarkSquare.svg.js.map +0 -1
- package/dist/src/assets/icons/CloseIcon.svg.js +0 -2
- package/dist/src/assets/icons/CloseIcon.svg.js.map +0 -1
- package/dist/src/assets/icons/UpArrow.svg.js +0 -2
- package/dist/src/assets/icons/UpArrow.svg.js.map +0 -1
- package/dist/src/assets/icons/deleteOutlinedIcon.svg.js +0 -2
- package/dist/src/assets/icons/deleteOutlinedIcon.svg.js.map +0 -1
- package/dist/src/components/Chips/Chips.js +0 -2
- package/dist/src/components/Chips/Chips.js.map +0 -1
- package/dist/types/types/index.d.ts +0 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tags-table.js","sources":["../../../../src/components/table/tags-table.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\r\nimport './style.scss'\r\nimport _styles from '../InfoForm/InfoForm.module.scss'\r\nimport { Button, Input, TextArea } from 'digitinary-ui'\r\nimport Tooltip from '../Tooltip/Tooltip'\r\nimport SVGLoader from '../SVGLoader/SVGLoader'\r\nimport { AddRow, EditIcon, DeleteIcon } from '../../assets/icons'\r\nimport styles from '../MethodAccordion/MethodAccordion.module.scss'\r\nimport { useFormik } from 'formik'\r\nimport * as yup from 'yup'\r\nimport regex from '../../constants/regex'\r\n\r\nconst TagsTable = ({ id, headCells, data, isFormOpen, setIsFormOpen, saveNewRow, readOnly }) => {\r\n const [text, setText] = useState('')\r\n const [externalDesc, setExternalDesc] = useState('')\r\n const [externalUrl, setExternalUrl] = useState('')\r\n const [tooltipRef, setTooltipRef] = useState(null)\r\n const [externalTooltipRefs, setExternalTooltipRefs] = useState(null)\r\n const { values, errors, setFieldValue, isValid, submitForm, resetForm } = useFormik({\r\n validateOnMount: true,\r\n initialValues: {\r\n name: '',\r\n description: '',\r\n externalDocs: {\r\n url: '',\r\n description: '',\r\n },\r\n },\r\n validationSchema: yup.object().shape({\r\n name: yup.string().trim().required('Tag name is required'),\r\n description: yup.string().optional(),\r\n externalDocs: yup\r\n .object()\r\n .shape({\r\n url: yup\r\n .string()\r\n .trim()\r\n .matches(regex.urlRegex, 'Invalid URL')\r\n .when('description', (description, schema) => {\r\n return description?.at(0)\r\n ? schema.required('URL is required when description is provided')\r\n : schema.optional()\r\n }),\r\n description: yup.string().trim().optional(),\r\n })\r\n .optional(),\r\n }),\r\n onSubmit: (values) => {\r\n saveNewRow(values)\r\n setText('')\r\n resetForm()\r\n setIsFormOpen(false)\r\n },\r\n validateOnChange: true,\r\n })\r\n\r\n return (\r\n <div className=\"tableSectionContainer\">\r\n <div className=\"tableContainer\">\r\n <table id={id || ''} className={`table borderRadiusTop borderRadiusBottom`}>\r\n <thead className=\"tableHead\">\r\n <tr>\r\n {headCells?.map((headCell) => (\r\n <th\r\n key={headCell.id}\r\n className={`tableHeadCell ${headCell.classes || ''}`}\r\n style={{ width: headCell.width, minWidth: headCell.minWidth }}\r\n >\r\n <div\r\n className=\"headContainer\"\r\n data-id={`${\r\n typeof headCell.label === 'string'\r\n ? headCell.label.toUpperCase().replace(/[^a-zA-Z0-9]+/g, '_')\r\n : 'UNKNOWN_LABEL'\r\n }_COLUMN`}\r\n >\r\n {headCell.label}\r\n </div>\r\n </th>\r\n ))}\r\n </tr>\r\n </thead>\r\n <tbody className=\"tableBody\" data-id=\"TABLE_BODY\">\r\n {data?.map((row, rowIndex) => {\r\n return (\r\n <tr key={rowIndex} data-i={rowIndex} className={`row`}>\r\n {headCells?.map((headCell) => {\r\n const cellContent = row[headCell.id] !== '_' && (\r\n <div\r\n data-id=\"TEXT_DESCRIPTION\"\r\n className=\"tableData\"\r\n style={{\r\n width: headCell.width,\r\n minWidth: headCell.minWidth,\r\n }}\r\n >\r\n {row[headCell.id]}\r\n </div>\r\n )\r\n\r\n return (\r\n <td\r\n key={headCell.id}\r\n style={{\r\n width: headCell.width,\r\n minWidth: headCell.minWidth,\r\n }}\r\n >\r\n {cellContent}\r\n </td>\r\n )\r\n })}\r\n </tr>\r\n )\r\n })}\r\n {isFormOpen ? (\r\n <tr key={''} data-i={''} className={`row`}>\r\n <td key={'tag name'}>\r\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\r\n <Input\r\n placeholder=\"Tag name\"\r\n size=\"large\"\r\n type=\"text\"\r\n maxLength={25}\r\n onChange={(value) => {\r\n !regex.basic.test(value) && setFieldValue('name', value)\r\n }} // Pass the value directly\r\n value={values.name} // Bind value to the state\r\n disabled={readOnly}\r\n />\r\n </div>\r\n </td>\r\n\r\n <td key={'tagDescRequired'}>\r\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\r\n <div className={styles.paramDescContainer}>\r\n <Tooltip\r\n arrowWithBorder\r\n placement=\"bottom-end\"\r\n type=\"function\"\r\n trigger=\"click\"\r\n delay={[0, 0]}\r\n onCreate={(instance) => setTooltipRef(instance)}\r\n onShow={() => {\r\n setText(values.description || '') // Reset to current value when shown\r\n }}\r\n onHidden={() => {\r\n setText(values.description || '') // Reset on close\r\n }}\r\n content={\r\n <div className={_styles.editDescTooltipContent}>\r\n <p className={_styles.editDescTooltipContent_header}>Description</p>\r\n <TextArea\r\n value={text || values.description}\r\n disabled={readOnly}\r\n maxLength={25}\r\n placeholder=\"Describe Tag...\"\r\n onChange={(value) => {\r\n if (value === '' || regex.ASCII.test(value)) setText(value)\r\n }}\r\n />\r\n {!readOnly && (\r\n <Button\r\n className={_styles.editDescTooltipContent_btn}\r\n variant=\"outlined\"\r\n size=\"small\"\r\n onClick={() => {\r\n setFieldValue('description', text?.trim())\r\n tooltipRef?.hide()\r\n }}\r\n disabled={!(text || values.description)?.trim()}\r\n >\r\n Apply\r\n </Button>\r\n )}\r\n </div>\r\n }\r\n >\r\n <Button\r\n className={_styles.editDescBtn}\r\n style={{ paddingLeft: 0 }}\r\n variant=\"link\"\r\n color=\"action\"\r\n endIcon={<SVGLoader src={EditIcon} width=\"1.5rem\" height=\"1.5rem\" />}\r\n >\r\n {readOnly ? 'View ' : 'Add '} Description\r\n </Button>\r\n </Tooltip>\r\n </div>{' '}\r\n </div>\r\n </td>\r\n <td key={'tagExternal'}>\r\n <div className=\"tableData\">\r\n <div className={_styles.paramDescContainer}>\r\n <Tooltip\r\n arrowWithBorder\r\n placement=\"bottom-end\"\r\n type=\"function\"\r\n trigger=\"click\"\r\n delay={[0, 0]}\r\n onCreate={(instance) => setExternalTooltipRefs(instance)}\r\n onShow={() => {\r\n setExternalDesc(values.externalDocs.description || '')\r\n setExternalUrl(values.externalDocs.url || '')\r\n }}\r\n onHidden={() => {\r\n setExternalDesc(values.externalDocs.description || '')\r\n setExternalUrl(values.externalDocs.url || '')\r\n }}\r\n content={\r\n <div className={_styles.editDescTooltipContent}>\r\n <p className={_styles.editDescTooltipContent_header}>\r\n External Docs Description\r\n </p>\r\n <TextArea\r\n placeholder=\"Describe External Doc...\"\r\n value={externalDesc || values.externalDocs.description}\r\n disabled={readOnly}\r\n maxLength={25}\r\n onChange={(value) => {\r\n if (value === '' || regex.ASCII.test(value)) setExternalDesc(value)\r\n }}\r\n />\r\n <p className={_styles.editDescTooltipContent_header}>\r\n External Docs Link\r\n </p>\r\n <TextArea\r\n placeholder=\"External Docs Link...\"\r\n restrictedCharsRegex={regex.urlRegex}\r\n value={externalUrl || values.externalDocs.url}\r\n disabled={readOnly}\r\n maxLength={200}\r\n onChange={(value) => {\r\n if (value === '' || regex.ASCII.test(value)) setExternalUrl(value)\r\n }}\r\n />\r\n {!readOnly && (\r\n <Button\r\n className={_styles.editDescTooltipContent_btn}\r\n variant=\"outlined\"\r\n size=\"small\"\r\n onClick={() => {\r\n setFieldValue(`externalDocs`, {\r\n description: externalDesc,\r\n url: externalUrl,\r\n })\r\n\r\n externalTooltipRefs?.hide()\r\n }}\r\n disabled={\r\n !(externalUrl || values.externalDocs.url)?.trim() ||\r\n !regex.urlRegex.test(externalUrl || values.externalDocs.url)\r\n }\r\n >\r\n Apply\r\n </Button>\r\n )}\r\n </div>\r\n }\r\n >\r\n {readOnly ? (\r\n <a\r\n className={_styles.editDescBtn}\r\n variant=\"link\"\r\n color=\"action\"\r\n href={values.externalDocs?.url}\r\n target=\"_blank\"\r\n >\r\n {values?.externalDocs?.description\r\n ? values?.externalDocs?.description?.substring(0, 12)\r\n : '-'}\r\n {values?.externalDocs?.description &&\r\n values?.externalDocs?.description?.length > 12\r\n ? '...'\r\n : ''}\r\n </a>\r\n ) : (\r\n <Button\r\n className={_styles.editDescBtn}\r\n variant=\"link\"\r\n color=\"action\"\r\n endIcon={<SVGLoader src={EditIcon} width=\"1.5rem\" height=\"1.5rem\" />}\r\n >\r\n {readOnly ? 'View ' : 'Add '} External Docs Link\r\n </Button>\r\n )}\r\n </Tooltip>\r\n <div className={_styles.paramDescContainer_separator}></div>\r\n {!readOnly && (\r\n <Button\r\n className={_styles.deleteParamBtn}\r\n variant=\"link\"\r\n color=\"error\"\r\n endIcon={\r\n <SVGLoader src={DeleteIcon} width=\"1.125rem\" height=\"1.125rem\" />\r\n }\r\n onClick={() => {\r\n resetForm()\r\n setText('')\r\n setIsFormOpen(false)\r\n }} // Correctly delete the new row\r\n />\r\n )}\r\n\r\n {!readOnly && (\r\n <Button\r\n className={_styles.deleteParamBtn}\r\n variant=\"link\"\r\n color=\"success\"\r\n disabled={!isValid}\r\n endIcon={<SVGLoader src={AddRow} width=\"0.125rem\" height=\"0.125rem\" />}\r\n onClick={() => {\r\n setText('')\r\n submitForm()\r\n }} // Save the new row when clicked\r\n />\r\n )}\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n ) : (\r\n <>\r\n {!readOnly && (\r\n <tr key={'addNew'} data-i={'addNew'} className={`row`}>\r\n <td colSpan={5}>\r\n <Button\r\n variant=\"link\"\r\n color=\"primary\"\r\n onClick={() => {\r\n setIsFormOpen((prev) => !prev)\r\n }}\r\n >\r\n + Add Tag\r\n </Button>\r\n </td>\r\n </tr>\r\n )}\r\n </>\r\n )}\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default TagsTable\r\n"],"names":["TagsTable","id","headCells","data","isFormOpen","setIsFormOpen","saveNewRow","readOnly","text","setText","useState","externalDesc","setExternalDesc","externalUrl","setExternalUrl","tooltipRef","setTooltipRef","externalTooltipRefs","setExternalTooltipRefs","values","errors","setFieldValue","isValid","submitForm","resetForm","useFormik","validateOnMount","initialValues","name","description","externalDocs","url","validationSchema","yup.object","shape","yup.string","trim","required","optional","yup\n .object","yup\n .string","matches","regex","urlRegex","when","schema","at","onSubmit","validateOnChange","_jsx","className","_jsxs","jsxs","children","map","headCell","classes","style","width","minWidth","jsx","label","toUpperCase","replace","row","rowIndex","cellContent","Input","placeholder","size","type","maxLength","onChange","value","basic","test","disabled","styles","paramDescContainer","Tooltip","arrowWithBorder","placement","trigger","delay","onCreate","instance","onShow","onHidden","content","_styles","editDescTooltipContent","editDescTooltipContent_header","TextArea","ASCII","Button","editDescTooltipContent_btn","variant","onClick","hide","_a","editDescBtn","paddingLeft","color","endIcon","SVGLoader","src","EditIcon","height","restrictedCharsRegex","_b","href","_c","target","_d","_f","_e","substring","_g","_j","_h","length","paramDescContainer_separator","deleteParamBtn","DeleteIcon","AddRow","_Fragment","Fragment","colSpan","prev"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tags-table.js","sources":["../../../../src/components/table/tags-table.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport './style.scss'\nimport _styles from '../InfoForm/InfoForm.module.scss'\nimport { Button, Input, TextArea } from 'digitinary-ui'\nimport Tooltip from '../Tooltip/Tooltip'\nimport SVGLoader from '../SVGLoader/SVGLoader'\nimport { AddRow, EditIcon, DeleteIcon } from '../../assets/icons'\nimport styles from '../MethodAccordion/MethodAccordion.module.scss'\nimport { useFormik } from 'formik'\nimport * as yup from 'yup'\nimport regex from '../../constants/regex'\n\nconst TagsTable = ({ id, headCells, data, isFormOpen, setIsFormOpen, saveNewRow, readOnly }) => {\n const [text, setText] = useState('')\n const [externalDesc, setExternalDesc] = useState('')\n const [externalUrl, setExternalUrl] = useState('')\n const [tooltipRef, setTooltipRef] = useState(null)\n const [externalTooltipRefs, setExternalTooltipRefs] = useState(null)\n const { values, errors, setFieldValue, isValid, submitForm, resetForm } = useFormik({\n validateOnMount: true,\n initialValues: {\n name: '',\n description: '',\n externalDocs: {\n url: '',\n description: '',\n },\n },\n validationSchema: yup.object().shape({\n name: yup.string().trim().required('Tag name is required'),\n description: yup.string().optional(),\n externalDocs: yup\n .object()\n .shape({\n url: yup\n .string()\n .trim()\n .matches(regex.urlRegex, 'Invalid URL')\n .when('description', (description, schema) => {\n return description?.at(0)\n ? schema.required('URL is required when description is provided')\n : schema.optional()\n }),\n description: yup.string().trim().optional(),\n })\n .optional(),\n }),\n onSubmit: (values) => {\n saveNewRow(values)\n setText('')\n resetForm()\n setIsFormOpen(false)\n },\n validateOnChange: true,\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 {isFormOpen ? (\n <tr key={''} data-i={''} className={`row`}>\n <td key={'tag name'}>\n <div data-id=\"TEXT_DESCRIPTION\" className=\"tableData\">\n <Input\n placeholder=\"Tag name\"\n size=\"large\"\n type=\"text\"\n maxLength={25}\n onChange={(value) => {\n !regex.basic.test(value) && setFieldValue('name', value)\n }} // Pass the value directly\n value={values.name} // Bind value to the state\n disabled={readOnly}\n />\n </div>\n </td>\n\n <td key={'tagDescRequired'}>\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 onShow={() => {\n setText(values.description || '') // Reset to current value when shown\n }}\n onHidden={() => {\n setText(values.description || '') // Reset on close\n }}\n content={\n <div className={_styles.editDescTooltipContent}>\n <p className={_styles.editDescTooltipContent_header}>Description</p>\n <TextArea\n value={text || values.description}\n disabled={readOnly}\n maxLength={25}\n placeholder=\"Describe Tag...\"\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value)) setText(value)\n }}\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 || values.description)?.trim()}\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n <Button\n className={_styles.editDescBtn}\n style={{ paddingLeft: 0 }}\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 </div>{' '}\n </div>\n </td>\n <td key={'tagExternal'}>\n <div 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) => setExternalTooltipRefs(instance)}\n onShow={() => {\n setExternalDesc(values.externalDocs.description || '')\n setExternalUrl(values.externalDocs.url || '')\n }}\n onHidden={() => {\n setExternalDesc(values.externalDocs.description || '')\n setExternalUrl(values.externalDocs.url || '')\n }}\n content={\n <div className={_styles.editDescTooltipContent}>\n <p className={_styles.editDescTooltipContent_header}>\n External Docs Description\n </p>\n <TextArea\n placeholder=\"Describe External Doc...\"\n value={externalDesc || values.externalDocs.description}\n disabled={readOnly}\n maxLength={25}\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value)) setExternalDesc(value)\n }}\n />\n <p className={_styles.editDescTooltipContent_header}>\n External Docs Link\n </p>\n <TextArea\n placeholder=\"External Docs Link...\"\n restrictedCharsRegex={regex.urlRegex}\n value={externalUrl || values.externalDocs.url}\n disabled={readOnly}\n maxLength={200}\n onChange={(value) => {\n if (value === '' || regex.ASCII.test(value)) setExternalUrl(value)\n }}\n />\n {!readOnly && (\n <Button\n className={_styles.editDescTooltipContent_btn}\n variant=\"outlined\"\n size=\"small\"\n onClick={() => {\n setFieldValue(`externalDocs`, {\n description: externalDesc,\n url: externalUrl,\n })\n\n externalTooltipRefs?.hide()\n }}\n disabled={\n !(externalUrl || values.externalDocs.url)?.trim() ||\n !regex.urlRegex.test(externalUrl || values.externalDocs.url)\n }\n >\n Apply\n </Button>\n )}\n </div>\n }\n >\n {readOnly ? (\n <a\n className={_styles.editDescBtn}\n variant=\"link\"\n color=\"action\"\n href={values.externalDocs?.url}\n target=\"_blank\"\n >\n {values?.externalDocs?.description\n ? values?.externalDocs?.description?.substring(0, 12)\n : '-'}\n {values?.externalDocs?.description &&\n values?.externalDocs?.description?.length > 12\n ? '...'\n : ''}\n </a>\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 '} External Docs Link\n </Button>\n )}\n </Tooltip>\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(false)\n }} // Correctly delete the new row\n />\n )}\n\n {!readOnly && (\n <Button\n className={_styles.deleteParamBtn}\n variant=\"link\"\n color=\"success\"\n disabled={!isValid}\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 )}\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)\n }}\n >\n + Add Tag\n </Button>\n </td>\n </tr>\n )}\n </>\n )}\n </tbody>\n </table>\n </div>\n </div>\n )\n}\n\nexport default TagsTable\n"],"names":["TagsTable","id","headCells","data","isFormOpen","setIsFormOpen","saveNewRow","readOnly","text","setText","useState","externalDesc","setExternalDesc","externalUrl","setExternalUrl","tooltipRef","setTooltipRef","externalTooltipRefs","setExternalTooltipRefs","values","errors","setFieldValue","isValid","submitForm","resetForm","useFormik","validateOnMount","initialValues","name","description","externalDocs","url","validationSchema","yup.object","shape","yup.string","trim","required","optional","yup\n .object","yup\n .string","matches","regex","urlRegex","when","schema","at","onSubmit","validateOnChange","_jsx","className","_jsxs","jsxs","children","map","headCell","classes","style","width","minWidth","jsx","label","toUpperCase","replace","row","rowIndex","cellContent","Input","placeholder","size","type","maxLength","onChange","value","basic","test","disabled","styles","paramDescContainer","Tooltip","arrowWithBorder","placement","trigger","delay","onCreate","instance","onShow","onHidden","content","_styles","editDescTooltipContent","editDescTooltipContent_header","TextArea","ASCII","Button","editDescTooltipContent_btn","variant","onClick","hide","_a","editDescBtn","paddingLeft","color","endIcon","SVGLoader","src","EditIcon","height","restrictedCharsRegex","_b","href","_c","target","_d","_f","_e","substring","_g","_j","_h","length","paramDescContainer_separator","deleteParamBtn","DeleteIcon","AddRow","_Fragment","Fragment","colSpan","prev"],"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:"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};
|
|
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:"arraySchemaType",label:"Array Schema Type",sortable:!1},{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 = {\
|
|
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,iBACpE,CAAEF,GAAI,kBAAmBX,MAAO,oBAAqBY,UAAU,GAC/D,CAAED,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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const l=[{label:"Post",value:"POST",color:"#10b981"},{label:"GET",value:"GET",color:"#3b82f6"},{label:"Delete",value:"DELETE",color:"#ef4444"},{label:"Put",value:"PUT",color:"#f59e0b"},{label:"PATCH",value:"PATCH",color:"#8b5cf6"},{label:"OPTIONS",value:"OPTIONS",color:"#6b7280"},{label:"HEAD",value:"HEAD",color:"#8b5cf6"},{label:"TRACE",value:"TRACE",color:"#ec4899"}];l.map((l=>({labelConfig:{color:l.color,text:l.label},value:l.value,data:l})));export{l as METHOD_OPTIONS};
|
|
2
|
+
//# sourceMappingURL=methods.constant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"methods.constant.js","sources":["../../../src/constants/methods.constant.ts"],"sourcesContent":["export type MethodOption = {\n label: string\n value: string\n color: string\n}\n\nexport const METHOD_OPTIONS: MethodOption[] = [\n { label: 'Post', value: 'POST', color: '#10b981' },\n { label: 'GET', value: 'GET', color: '#3b82f6' },\n { label: 'Delete', value: 'DELETE', color: '#ef4444' },\n { label: 'Put', value: 'PUT', color: '#f59e0b' },\n { label: 'PATCH', value: 'PATCH', color: '#8b5cf6' },\n { label: 'OPTIONS', value: 'OPTIONS', color: '#6b7280' },\n { label: 'HEAD', value: 'HEAD', color: '#8b5cf6' },\n { label: 'TRACE', value: 'TRACE', color: '#ec4899' },\n]\n\nexport const METHOD_OPTIONS_CONFIG = [\n {\n list: METHOD_OPTIONS.map((method) => ({\n labelConfig: { color: method.color, text: method.label },\n value: method.value,\n data: method,\n })),\n },\n]\n"],"names":["METHOD_OPTIONS","label","value","color","map","method","labelConfig","text","data"],"mappings":"AAMa,MAAAA,EAAiC,CAC5C,CAAEC,MAAO,OAAQC,MAAO,OAAQC,MAAO,WACvC,CAAEF,MAAO,MAAOC,MAAO,MAAOC,MAAO,WACrC,CAAEF,MAAO,SAAUC,MAAO,SAAUC,MAAO,WAC3C,CAAEF,MAAO,MAAOC,MAAO,MAAOC,MAAO,WACrC,CAAEF,MAAO,QAASC,MAAO,QAASC,MAAO,WACzC,CAAEF,MAAO,UAAWC,MAAO,UAAWC,MAAO,WAC7C,CAAEF,MAAO,OAAQC,MAAO,OAAQC,MAAO,WACvC,CAAEF,MAAO,QAASC,MAAO,QAASC,MAAO,YAKjCH,EAAeI,KAAKC,IAAY,CACpCC,YAAa,CAAEH,MAAOE,EAAOF,MAAOI,KAAMF,EAAOJ,OACjDC,MAAOG,EAAOH,MACdM,KAAMH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","sources":["../../../src/constants/regex.ts"],"sourcesContent":["const regex = {\
|
|
1
|
+
{"version":3,"file":"regex.js","sources":["../../../src/constants/regex.ts"],"sourcesContent":["const regex = {\n basic: /[^a-zA-Z0-9-_ ]/, // not (alphanumeric + underscore + dash + space)\n restrictNone: /^$/, // restrict nothing\n ASCII: /^[\\x00-\\x7F]+$/,\n urlRegex: /^(https?:\\/\\/|www\\.)[a-zA-Z0-9-]+(\\.[a-zA-Z]{2,})+(\\/[^\\s]*)?$/,\n}\nexport default regex\n"],"names":["regex","basic","restrictNone","ASCII","urlRegex"],"mappings":"AAAA,MAAMA,EAAQ,CACZC,MAAO,kBACPC,aAAc,KACdC,MAAO,iBACPC,SAAU"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__rest as e}from"../../node_modules/tslib/tslib.es6.js";const t=e=>{var t,s,n,c
|
|
1
|
+
import{__rest as e}from"../../node_modules/tslib/tslib.es6.js";const t=e=>{var t,s,n,c;if(e.components&&e.components.securitySchemes){const o=null===(t=Object.keys(e.components.securitySchemes))||void 0===t?void 0:t.at(0);o&&(e.components.securitySchemes[o].type=null===(c=null===(n=null===(s=null==e?void 0:e.components)||void 0===s?void 0:s.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)})},s=e=>{var t,s,o,n;const i=Object.assign(Object.assign({},e),{paths:c(e.paths)});if(i.components&&i.components.securitySchemes){const e=null===(t=Object.keys(i.components.securitySchemes))||void 0===t?void 0:t.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===(s=null==i?void 0:i.components)||void 0===s?void 0:s.securitySchemes)||void 0===o?void 0:o[e])||void 0===n?void 0:n.type)}return i},o=e=>Object.entries(e).map((([e,t])=>({path:e,methods:Object.entries(t).map((([e,t])=>{var s,o,n,c,i,r;const p=Object.assign(Object.assign({},t),{type:e,tags:t.tags||[],summary:t.summary||"",responses:Object.entries(t.responses).map((([e,t])=>{var s,o,n,c,i;const r=Object.keys(t.content||{})[0];return{code:e,content:{contentType:r,schema:Object.assign(Object.assign({},null===(o=null===(s=t.content)||void 0===s?void 0:s[r])||void 0===o?void 0:o.schema),{properties:JSON.stringify(null===(i=null===(c=null===(n=t.content)||void 0===n?void 0:n[r])||void 0===c?void 0:c.schema)||void 0===i?void 0:i.properties)})}}}))});if((null==t?void 0:t.parameters)||(p.parameters=[]),"get"!=e.toLowerCase()){const e=Object.keys((null===(s=null==t?void 0:t.requestBody)||void 0===s?void 0:s.content)||{})[0],a=null===(n=null===(o=null==t?void 0:t.requestBody)||void 0===o?void 0:o.content)||void 0===n?void 0:n.schema,d=(null===(r=null===(i=null===(c=null==t?void 0:t.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({},a),{properties:(null==a?void 0:a.properties)?JSON.stringify(null==a?void 0:a.properties):"{}"})}}:{content:{contentType:"application/json",schema:{properties:"{}",type:"object"}}};p.requestBody=d}return p}))}))),n=(e,t)=>{var s;return JSON.parse(null===(s=null==e?void 0:e.schema)||void 0===s?void 0:s.properties)},c=t=>t.reduce(((t,{path:s,methods:o})=>(t[s]=o.reduce(((t,s)=>{var{type:o,tags:c,responses:i,summary:r,requestBody:p}=s,a=e(s,["type","tags","responses","summary","requestBody"]);t[o]=Object.assign(Object.assign({},a),{tags:c,summary:r,responses:i.reduce(((e,{code:t,content:s})=>(e[t]={description:"Success",content:s.contentType?{[s.contentType]:{schema:Object.assign(Object.assign({},s.schema),{properties:n(s)})}}:{}},e)),{})});const d="get"!==o?JSON.parse(p.content.schema.properties):{};return"get"!==o&&(t[o].requestBody={content:{[p.content.contentType]:{schema:Object.assign(Object.assign({},p.content.schema),{properties:d})}}}),t}),{}),t)),{});export{t as transformOpenApiObject,s 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'\r\nimport { OpenAPIFile, SecurityScheme } from '@entities/openApi'\r\nimport { TransformedOpenApi } from '@entities/transformedOpenApi'\r\n\r\nexport const transformOpenApiObject = (openApiJson: OpenAPIFile): TransformedOpenApi => {\r\n if (openApiJson.components && openApiJson.components.securitySchemes) {\r\n const authKey = Object.keys(openApiJson.components.securitySchemes)?.at(0)\r\n if (authKey) {\r\n openApiJson.components.securitySchemes[authKey].type =\r\n openApiJson?.components?.securitySchemes?.[\r\n authKey\r\n ]?.type?.toUpperCase() as SecurityScheme['type']\r\n }\r\n } else {\r\n openApiJson.components = {\r\n securitySchemes: {\r\n Public: {\r\n type: 'http',\r\n scheme: 'public',\r\n },\r\n },\r\n }\r\n }\r\n\r\n if (!openApiJson.tags) {\r\n openApiJson.tags = []\r\n }\r\n\r\n return {\r\n ...openApiJson,\r\n paths: transformPathsToArray(openApiJson.paths),\r\n } as TransformedOpenApi\r\n}\r\n\r\nexport const transformOpenApiObjectToOrigin = (values: TransformedOpenApi): OpenAPIFile => {\r\n const object = {\r\n ...values,\r\n paths: transformPathsArrayToOrigin(values.paths),\r\n }\r\n if (object.components && object.components.securitySchemes) {\r\n const authKey = Object.keys(object.components.securitySchemes)?.at(0)\r\n if (authKey) {\r\n if (object.components.securitySchemes[authKey].type.toLowerCase() == 'APIKEY'.toLowerCase()) {\r\n object.components.securitySchemes[authKey].in = object.components.securitySchemes[\r\n authKey\r\n ].in.toUpperCase() as SecurityScheme['in']\r\n }\r\n object.components.securitySchemes[authKey].type = object?.components?.securitySchemes?.[\r\n authKey\r\n ]?.type?.toUpperCase() as SecurityScheme['type']\r\n }\r\n }\r\n return object\r\n}\r\n\r\nexport const transformPathsToArray = (paths: OpenAPIFile['paths']): TransformedPathsArray | any => {\r\n const transformedPaths = Object.entries(paths).map(([path, methods]) => ({\r\n path,\r\n methods: Object.entries(methods).map(([method, methodProps]) => {\r\n const obj: any = {\r\n ...methodProps,\r\n type: method,\r\n tags: methodProps.tags || [],\r\n responses: Object.entries(methodProps.responses).map(([code, codeProps]) => {\r\n const contentType = Object.keys(codeProps.content || {})[0]\r\n return {\r\n code,\r\n content: {\r\n contentType,\r\n schema: {\r\n ...codeProps.content?.[contentType]?.schema,\r\n properties: JSON.stringify(codeProps.content?.[contentType]?.schema?.properties),\r\n },\r\n },\r\n }\r\n }),\r\n }\r\n // Add parameters if it does not exist in the original JSON\r\n if (!methodProps?.parameters) {\r\n obj.parameters = []\r\n }\r\n\r\n if (method.toLowerCase() != 'get') {\r\n const contentType = Object.keys(methodProps?.requestBody?.content || {})[0]\r\n const reqSchema = methodProps?.requestBody?.content?.schema\r\n const requestBodyData = methodProps?.requestBody?.content?.schema?.properties\r\n ? {\r\n content: {\r\n contentType,\r\n schema: {\r\n ...reqSchema,\r\n properties: reqSchema?.properties ? JSON.stringify(reqSchema?.properties) : '{}',\r\n },\r\n },\r\n }\r\n : {\r\n content: {\r\n contentType: 'application/json',\r\n schema: {\r\n properties: '{}',\r\n type: 'object',\r\n },\r\n },\r\n }\r\n\r\n obj['requestBody'] = requestBodyData\r\n }\r\n\r\n return obj\r\n }),\r\n }))\r\n\r\n return transformedPaths\r\n}\r\n\r\nconst validateBodyForResponse = (content, method) => {\r\n let _content = JSON.parse((content?.schema as any)?.properties as string)\r\n // if (method == 'get') {\r\n // if (!_content?.body) {\r\n // _content = {\r\n // body: _content,\r\n // }\r\n // }\r\n // }\r\n return _content\r\n}\r\n\r\nexport const transformPathsArrayToOrigin = (paths: TransformedPathsArray): OpenAPIFile['paths'] => {\r\n return paths.reduce((acc, { path, methods }) => {\r\n acc[path] = methods.reduce((methodAcc, { type, tags, responses, requestBody, ...rest }) => {\r\n // Initialize the method object\r\n methodAcc[type] = {\r\n ...rest,\r\n tags,\r\n responses: responses.reduce((respAcc, { code, content }) => {\r\n respAcc[code] = {\r\n description: 'Success', // Assuming this is static from the original data\r\n content: content.contentType\r\n ? {\r\n [content.contentType]: {\r\n schema: {\r\n ...(content.schema as object),\r\n properties: validateBodyForResponse(content, type),\r\n },\r\n },\r\n }\r\n : {},\r\n }\r\n return respAcc\r\n }, {} as Record<string, any>),\r\n }\r\n\r\n const parsedRequestBodyProps =\r\n type !== 'get' ? JSON.parse(requestBody.content.schema.properties) : {}\r\n // Add requestBody for non-GET methods\r\n if (type !== 'get') {\r\n methodAcc[type].requestBody = {\r\n content: {\r\n [requestBody.content.contentType]: {\r\n schema: {\r\n ...requestBody.content.schema,\r\n properties: parsedRequestBodyProps,\r\n },\r\n },\r\n },\r\n }\r\n }\r\n\r\n return methodAcc\r\n }, {} as Record<string, any>)\r\n\r\n return acc\r\n }, {} as OpenAPIFile['paths'])\r\n}\r\n"],"names":["transformOpenApiObject","openApiJson","components","securitySchemes","authKey","_a","Object","keys","at","type","_e","_d","_b","_c","toUpperCase","Public","scheme","tags","assign","paths","transformPathsToArray","transformOpenApiObjectToOrigin","values","object","transformPathsArrayToOrigin","toLowerCase","in","entries","map","path","methods","method","methodProps","obj","responses","code","codeProps","contentType","content","schema","properties","JSON","stringify","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 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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"methodAccordion.helper.js","sources":["../../../src/helpers/methodAccordion.helper.ts"],"sourcesContent":["export const handleStatusColor = (code: number): string => {\
|
|
1
|
+
{"version":3,"file":"methodAccordion.helper.js","sources":["../../../src/helpers/methodAccordion.helper.ts"],"sourcesContent":["export const handleStatusColor = (code: number): string => {\n if (code >= 200 && code < 300) {\n return 'green' // 2xx codes\n } else if (code >= 400 && code < 500) {\n return 'red' // 4xx codes\n } else if (code >= 500 && code < 600) {\n return 'red' // 5xx codes\n } else if (code >= 100 && code < 200) {\n return 'blue' // 1xx codes (Informational)\n } else if (code >= 300 && code < 400) {\n return 'orange' // 3xx codes (Redirection)\n } else {\n return 'gray' // Default or invalid status codes\n }\n}\n\nexport const capitalize = (str)=> {\n if (!str) return \"\";\n return str.charAt(0).toUpperCase() + str.slice(1);\n}"],"names":["handleStatusColor","code","capitalize","str","charAt","toUpperCase","slice"],"mappings":"AAAa,MAAAA,EAAqBC,GAC5BA,GAAQ,KAAOA,EAAO,IACjB,QACEA,GAAQ,KAAOA,EAAO,KAEtBA,GAAQ,KAAOA,EAAO,IADxB,MAGEA,GAAQ,KAAOA,EAAO,IACxB,OACEA,GAAQ,KAAOA,EAAO,IACxB,SAEA,OAIGC,EAAcC,GACrBA,EACEA,EAAIC,OAAO,GAAGC,cAAgBF,EAAIG,MAAM,GAD9B"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{default as Layout}from"./layout/layout.js";
|
|
1
|
+
export{default as Layout}from"./layout/layout.js";export{default as DocsLayout}from"./layout/docsLayout.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocsAside.js","sources":["../../../../../src/layout/docsComponents/DocsAside/DocsAside.tsx"],"sourcesContent":["import React from 'react'\nimport './style.scss'\n\nconst DocsAside = () => {\n return <aside className=\"api-docs-aside\"></aside>\n}\n\nexport default DocsAside\n"],"names":["DocsAside","_jsx","jsx","className"],"mappings":"wDAGM,MAAAA,EAAY,IACTC,EAAOC,IAAA,QAAA,CAAAC,UAAU"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as s}from"../../../../_virtual/jsx-runtime.js";import"../../../../node_modules/tslib/tslib.es6.js";import"react";import"../../../../node_modules/html-react-parser/esm/index.mjs.js";import{EndpointPage as e}from"./EndpointPage/index.js";const t=()=>s.jsx("main",{children:s.jsx(e,{})});export{t as default};
|
|
2
|
+
//# sourceMappingURL=DocsContent.js.map
|
|
@@ -0,0 +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'\n\nconst DocsContent = () => {\n const isTagPage = false\n return <main>{isTagPage ? <TagPage /> : <EndpointPage />}</main>\n}\n\nexport default DocsContent\n"],"names":["DocsContent","_jsx","jsx","children","EndpointPage"],"mappings":"qPAOM,MAAAA,EAAc,IAEXC,EAAOC,IAAA,OAAA,CAAAC,SAA0BF,EAAAC,IAACE,EAAY,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as e}from"../../../../../_virtual/jsx-runtime.js";import s from"../../../../components/SVGLoader/SVGLoader.js";import a from"../../../../assets/icons/DownArrow.svg.js";import t from"../../../../assets/icons/CopySticker.svg.js";import r from"../../../../assets/icons/RequestOption.svg.js";import i from"../../../../assets/icons/ArrowBack.svg.js";import{d as l}from"../../../../../_virtual/index.js";import{useState as c}from"react";const d=()=>{const[d,n]=c(null);return 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:i})}),e.jsx("button",{className:"disabled",children:"Test"})]}),e.jsx("h3",{children:" Api Name"}),e.jsx("h1",{className:"api-title",children:"Endpoint Name"}),e.jsxs("div",{className:"url-box",children:[e.jsxs("div",{style:{textAlign:"center"},children:[e.jsx("span",{className:"method-label post",children:"Post"}),e.jsx("span",{className:"url-text",children:"https://apigw sdb-1.test.dgate.digitinary.net/test"})]}),e.jsx(s,{src:t,className:"copy-icon"})]}),e.jsx("p",{className:"api-desc",children:"Endpoint Description"}),e.jsx("h3",{children:"Request"}),e.jsxs("div",{className:"request-section",children:[e.jsxs("div",{className:"request-tabs",children:[e.jsxs("button",{className:"tab",children:[e.jsx(s,{src:r,className:"icon-left"}),"Header"]}),e.jsxs("button",{className:"tab",children:[e.jsx(s,{src:r,className:"icon-left"}),"Path"]}),e.jsxs("button",{className:"tab",children:[e.jsx(s,{src:r,className:"icon-left"}),"Query"]}),e.jsxs("button",{className:"tab",children:[e.jsx(s,{src:r,className:"icon-left"}),"Request Body"]})]}),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:[{name:"Parameter Name",required:"True",type:"String",enum:"Active/Expired/Cancelled",description:"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."},{name:"Parameter Name",required:"False",type:"Boolean",enum:"Active/Expired/Cancelled",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss"},{name:"Parameter Name",required:"True",type:"Object",enum:"-",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss"},{name:"Parameter Name",required:"True",type:"Array_String",enum:"-",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit.sssssss"}].map(((t,r)=>e.jsxs("tr",{children:[e.jsx("td",{children:t.name}),e.jsx("td",{children:t.required}),e.jsx("td",{children:t.type}),e.jsx("td",{children:t.enum}),e.jsxs("td",{className:"desc-cell",children:[e.jsx("div",{className:"desc-text "+(d===r?"expanded":""),children:t.description}),e.jsx("button",{className:"desc-toggle",onClick:()=>n(d===r?null:r),children:e.jsx(s,{src:a,className:d===r?"rotated":""})})]})]},r)))})]})})]}),e.jsxs("div",{className:"response-section",children:[e.jsx("div",{className:"response-drop-test",children:e.jsx(l.SelectGroup,{className:"response-drop",withSearch:!1,isMultiple:!1,clearable:!1,placeholder:"200",options:[],onChange:e=>{}})}),e.jsx("h3",{children:"Response"}),e.jsxs("button",{className:"tab",children:[e.jsx(s,{src:r,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:"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.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"Parameter Name"}),e.jsx("td",{children:"True"}),e.jsx("td",{children:"String"}),e.jsx("td",{children:"Active/Expired/Cancelled"}),e.jsx("td",{children:"Borem taciti dolor ..."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Parameter Name"}),e.jsx("td",{children:"True"}),e.jsx("td",{children:"Array_Object"}),e.jsx("td",{children:"-"}),e.jsx("td",{children:"Borem taciti dolor ..."})]})]})]})})]})]})};export{d as EndpointPage};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +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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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as e}from"../../../../_virtual/jsx-runtime.js";import{useState as s,useRef as o}from"react";import{d as a}from"../../../../_virtual/index.js";import r from"../../../components/SVGLoader/SVGLoader.js";import t from"../../../assets/icons/ApiIcon.svg.js";import i from"../../../assets/icons/FilterIcon.svg.js";import l from"../../../assets/icons/BookIcon.svg.js";import n from"../../../assets/icons/searchIcon.svg.js";import c from"../../../components/Tooltip/Tooltip.js";import m from"../../../components/dialog/index.js";import{METHOD_OPTIONS as d}from"../../../constants/methods.constant.js";import h from"./DocsHeader.module.scss.js";const p=()=>{const[p,j]=s(!1),[x,u]=s(""),[v,f]=s([]),[b,N]=s(!1);o(null);return e.jsxs(e.Fragment,{children:[e.jsx("header",{className:h.api_docs_header,children:e.jsxs("div",{className:h.header_content,children:[e.jsxs(a.Button,{variant:"outlined",size:"small",className:"search-filter-btn",onClick:()=>{j(!0)},children:["Search & Filter",e.jsx(r,{src:i})]}),e.jsxs("div",{className:h.nav_buttons,children:[e.jsx(c,{placement:"bottom",delay:[0,0],className:`guides-tooltip ${h.tippy_box_color}`,content:e.jsx("div",{children:"Coming Soon"}),children:e.jsxs(a.Button,{variant:"outlined",size:"small",className:"guide-btn",disabled:!0,children:[e.jsx(r,{src:l}),"GUIDES"]})}),e.jsxs(a.Button,{variant:"outlined",size:"small",className:"api-btn",children:[e.jsx(r,{src:t}),"API reference"]})]})]})}),e.jsx(m,{size:"sm",open:p,onClose:()=>{j(!1),N(!1)},icon:!1,withClose:!1,content:e.jsxs("div",{className:"search-filter-form "+(b?"expanded":""),children:[e.jsx("div",{className:"search-filter-form__header",children:e.jsx("p",{className:"search-filter-form__header__title",children:"Search & Filter"})}),e.jsx(a.Input,{placeholder:"Search by API name",value:x,onChange:e=>u(e),size:a.Size.Medium,clearable:!0,endAdornment:e.jsx(r,{src:n})}),e.jsxs("div",{className:"method-container",children:[e.jsx("label",{children:"Method"}),e.jsx(a.SelectGroup,{isMultiple:!0,size:a.Size.Medium,placeholder:"Select Method",value:v,onChange:e=>f(e||[]),options:[{list:d.map((s=>({label:e.jsx("span",{style:{color:s.color},children:s.label}),value:s.value,data:s})))}],className:"method-select custom-select-border"})]}),e.jsx("div",{className:"button-container",children:e.jsx(a.Button,{variant:"contained",color:"primary",size:"large",onClick:()=>{j(!1)},className:"dialog-submit-btn",children:"Apply"})})]})})]})};export{p as default};
|
|
2
|
+
//# sourceMappingURL=DocsHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocsHeader.js","sources":["../../../../../src/layout/docsComponents/DocsHeader/DocsHeader.tsx"],"sourcesContent":["import React, { useState, useRef } from 'react'\nimport { Button, Size, Input, SelectGroup } from 'digitinary-ui'\nimport SVGLoader from '../../../components/SVGLoader/SVGLoader'\nimport { FilterIcon, BookIcon, ApiIcon, SearchIcon } from '../../../assets/icons'\nimport Tooltip from '../../../components/Tooltip/Tooltip'\nimport CommonDialog from '../../../components/dialog/index'\nimport { METHOD_OPTIONS } from '../../../constants/methods.constant'\nimport styles from './DocsHeader.module.scss'\n\nconst DocsHeader: React.FC = () => {\n const [showSearchFilter, setShowSearchFilter] = useState<boolean>(false)\n const [apiName, setApiName] = useState<string>('')\n const [selectedMethods, setSelectedMethods] = useState<any[]>([])\n const [isMethodDropdownOpen, setIsMethodDropdownOpen] = useState<boolean>(false)\n const selectRef = useRef<any>(null)\n\n const handleOpenSearchFilter = (): void => {\n setShowSearchFilter(true)\n }\n\n const handleCloseSearchFilter = (): void => {\n setShowSearchFilter(false)\n setIsMethodDropdownOpen(false)\n }\n\n const handleApplyFilters = (): void => {\n setShowSearchFilter(false)\n }\n\n return (\n <>\n <header className={styles.api_docs_header}>\n <div className={styles.header_content}>\n <Button\n variant=\"outlined\"\n size=\"small\"\n className=\"search-filter-btn\"\n onClick={handleOpenSearchFilter}\n >\n Search & Filter\n <SVGLoader src={FilterIcon} />\n </Button>\n <div className={styles.nav_buttons}>\n <Tooltip\n placement=\"bottom\"\n delay={[0, 0]}\n className={`guides-tooltip ${styles.tippy_box_color}`}\n content={<div>Coming Soon</div>}\n >\n <Button variant=\"outlined\" size=\"small\" className=\"guide-btn\" disabled={true}>\n <SVGLoader src={BookIcon} />\n GUIDES\n </Button>\n </Tooltip>\n <Button variant=\"outlined\" size=\"small\" className=\"api-btn\">\n <SVGLoader src={ApiIcon} />\n API reference\n </Button>\n </div>\n </div>\n </header>\n <CommonDialog\n size=\"sm\"\n open={showSearchFilter}\n onClose={handleCloseSearchFilter}\n icon={false}\n withClose={false}\n content={\n <div className={`search-filter-form ${isMethodDropdownOpen ? 'expanded' : ''}`}>\n <div className=\"search-filter-form__header\">\n <p className=\"search-filter-form__header__title\">Search & Filter</p>\n </div>\n <Input\n placeholder=\"Search by API name\"\n value={apiName}\n onChange={(value) => setApiName(value as string)}\n size={Size.Medium}\n clearable\n endAdornment={<SVGLoader src={SearchIcon} />}\n />\n <div className=\"method-container\">\n <label>Method</label>\n <SelectGroup\n isMultiple={true}\n size={Size.Medium}\n placeholder=\"Select Method\"\n value={selectedMethods}\n onChange={(value) => setSelectedMethods(value || [])}\n options={[\n {\n list: METHOD_OPTIONS.map((method) => ({\n label: <span style={{ color: method.color }}>{method.label}</span>,\n value: method.value,\n data: method,\n })),\n },\n ]}\n className=\"method-select custom-select-border\"\n />\n </div>\n <div className=\"button-container\">\n <Button\n variant=\"contained\"\n color=\"primary\"\n size=\"large\"\n onClick={handleApplyFilters}\n className=\"dialog-submit-btn\"\n >\n Apply\n </Button>\n </div>\n </div>\n }\n />\n </>\n )\n}\n\nexport default DocsHeader\n"],"names":["DocsHeader","showSearchFilter","setShowSearchFilter","useState","apiName","setApiName","selectedMethods","setSelectedMethods","isMethodDropdownOpen","setIsMethodDropdownOpen","useRef","_jsxs","_Fragment","children","_jsx","className","styles","api_docs_header","header_content","jsxs","Button","variant","size","onClick","SVGLoader","src","FilterIcon","nav_buttons","jsx","Tooltip","placement","delay","tippy_box_color","content","disabled","BookIcon","ApiIcon","CommonDialog","open","onClose","icon","withClose","Input","placeholder","value","onChange","Size","Medium","clearable","endAdornment","SearchIcon","SelectGroup","isMultiple","options","list","METHOD_OPTIONS","map","method","label","style","color","data"],"mappings":"ooBASM,MAAAA,EAAuB,KAC3B,MAAOC,EAAkBC,GAAuBC,GAAkB,IAC3DC,EAASC,GAAcF,EAAiB,KACxCG,EAAiBC,GAAsBJ,EAAgB,KACvDK,EAAsBC,GAA2BN,GAAkB,GACxDO,EAAY,MAe9B,OACEC,OAAAC,EAAAA,SAAA,CAAAC,SAAA,CACEC,EAAAA,IAAQ,SAAA,CAAAC,UAAWC,EAAOC,gBACxBJ,SAAAF,EAAAA,KAAA,MAAA,CAAKI,UAAWC,EAAOE,eACrBL,SAAA,CAAAF,EAAAQ,KAACC,SAAM,CACLC,QAAQ,WACRC,KAAK,QACLP,UAAU,oBACVQ,QArBqB,KAC7BrB,GAAoB,EAAK,EAuBjBW,SAAA,CAAA,kBAAAC,EAAAA,IAACU,EAAS,CAACC,IAAKC,OAElBf,OAAK,MAAA,CAAAI,UAAWC,EAAOW,YAAWd,SAAA,CAChCC,EAACc,IAAAC,EACC,CAAAC,UAAU,SACVC,MAAO,CAAC,EAAG,GACXhB,UAAW,kBAAkBC,EAAOgB,kBACpCC,QAASnB,EAAsBc,IAAA,MAAA,CAAAf,SAAA,gBAAAA,SAE/BF,EAACQ,KAAAC,EAAMA,QAACC,QAAQ,WAAWC,KAAK,QAAQP,UAAU,YAAYmB,UAAU,EAAIrB,SAAA,CAC1EC,MAACU,EAAS,CAACC,IAAKU,IAET,cAEXxB,OAACS,EAAAA,OAAM,CAACC,QAAQ,WAAWC,KAAK,QAAQP,UAAU,UAChDF,SAAA,CAAAC,EAAAc,IAACJ,EAAU,CAAAC,IAAKW,IAAW,2BAMnCtB,MAACuB,EAAY,CACXf,KAAK,KACLgB,KAAMrC,EACNsC,QA5C0B,KAC9BrC,GAAoB,GACpBO,GAAwB,EAAM,EA2C1B+B,MAAM,EACNC,WAAW,EACXR,QACEtB,EAAAA,KAAA,MAAA,CAAKI,UAAW,uBAAsBP,EAAuB,WAAa,IACxEK,SAAA,CAAAC,EAAAc,IAAA,MAAA,CAAKb,UAAU,6BAA4BF,SACzCC,EAAAA,IAAG,IAAA,CAAAC,UAAU,mEAEfD,MAAC4B,EAAAA,MACC,CAAAC,YAAY,qBACZC,MAAOxC,EACPyC,SAAWD,GAAUvC,EAAWuC,GAChCtB,KAAMwB,OAAKC,OACXC,WACA,EAAAC,aAAcnC,MAACU,EAAU,CAAAC,IAAKyB,MAEhCvC,OAAA,MAAA,CAAKI,UAAU,mBAAkBF,SAAA,CAC/BC,EAAAA,IAAqB,QAAA,CAAAD,SAAA,WACrBC,MAACqC,cAAW,CACVC,YAAY,EACZ9B,KAAMwB,EAAAA,KAAKC,OACXJ,YAAY,gBACZC,MAAOtC,EACPuC,SAAWD,GAAUrC,EAAmBqC,GAAS,IACjDS,QAAS,CACP,CACEC,KAAMC,EAAeC,KAAKC,IAAY,CACpCC,MAAO5C,EAAAc,IAAA,OAAA,CAAM+B,MAAO,CAAEC,MAAOH,EAAOG,OAAO/C,SAAG4C,EAAOC,QACrDd,MAAOa,EAAOb,MACdiB,KAAMJ,QAIZ1C,UAAU,0CAGdD,EAAKc,IAAA,MAAA,CAAAb,UAAU,4BACbD,EAAAA,IAACM,EAAAA,QACCC,QAAQ,YACRuC,MAAM,UACNtC,KAAK,QACLC,QAhFa,KACzBrB,GAAoB,EAAM,EAgFda,UAAU,oBAGHF,SAAA,mBAMpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocsHeader.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as s}from"../../../../_virtual/jsx-runtime.js";import{useState as e}from"react";import i from"../../../components/SVGLoader/SVGLoader.js";import a from"../../../assets/icons/arrowDownGray.svg.js";import t from"../../../assets/icons/arrowRightGray.svg.js";import c from"../../../assets/icons/document.svg.js";import r from"../../../assets/icons/eye.svg.js";const n=({apis:n,setActiveItemData:d,isFirstApiExpanded:o,setIsFirstApiExpanded:p})=>{const[l,j]=e({}),m=(s,e,i,a)=>{if(o&&p(!1),i&&a){const i=Object.fromEntries(Object.entries(Object.assign({},l)).filter((([i,t])=>!!i.includes(s)&&(i===e||!a.some((s=>i.includes(s)))))));j(Object.assign(Object.assign({},i),{[e]:!l[e]}))}else j((s=>Object.assign(Object.assign({},s),{[e]:!s[e]})))},v=(e,i)=>e.map(((e,a)=>{const t=l[`api-${i.id}-resource-${e.id}`];return s.jsxs("div",{className:`api-docs-api-tree__endpoint api-docs-api-tree__endpoint--${e.method.toLowerCase()}`,onClick:()=>{d(Object.assign(Object.assign({},e),{api:{id:i.id,title:i.title,description:i.description,version:i.version}})),t||m(i.id,`api-${i.id}-resource-${e.id}`,!0,["resource","overview"])},"data-active":t,children:[s.jsx("span",{className:"api-docs-api-tree__endpoint-method",children:e.method}),s.jsx("span",{className:"api-docs-api-tree__endpoint-name",children:e.path})]},a)})),_=(e,c,r,n)=>{const d=`api-${r.id}-section-${n}`,o=l[d];return s.jsx("div",{className:"api-docs-api-tree__subsection",children:s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"api-docs-api-tree__subsection-header",onClick:()=>m(r.id,d),children:[o?s.jsx(i,{src:a}):s.jsx(i,{src:t}),s.jsx("span",{className:"api-docs-api-tree__subsection-title",children:e})]}),o&&s.jsx("div",{className:"api-docs-api-tree__endpoints",children:v(c,r)})]})},d)};return s.jsx("aside",{className:"api-docs-api-tree",children:n.map(((e,n)=>((e,n)=>{const p=l[`api-${e.id}-section`],j=Object.keys(l).some((s=>s.includes(`api-${e.id}-resource`))),v=l[`api-${e.id}-endpoints`],x=l[`api-${e.id}-overview`];return o&&0===n&&!p&&(m(e.id,`api-${e.id}-section`),m(e.id,`api-${e.id}-overview`),d(e)),s.jsxs("div",{className:"api-docs-api-tree__section","data-active":j||x,children:[s.jsxs("div",{className:"api-docs-api-tree__section-header",onClick:()=>m(e.id,`api-${e.id}-section`),children:[p?s.jsx(i,{src:a}):s.jsx(i,{src:t}),s.jsx(i,{src:c}),s.jsx("span",{className:"api-docs-api-tree__section-title",children:e.title})]}),p&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"api-docs-api-tree__section__overview",onClick:()=>{m(e.id,`api-${e.id}-overview`,!0,["resource"]),d(e)},"data-active":x,children:[s.jsx(i,{src:r}),s.jsx("span",{children:"Overview"})]}),s.jsxs("div",{className:"api-docs-api-tree__section__endpoints",onClick:()=>{m(e.id,`api-${e.id}-endpoints`)},"data-active":j&&!x,children:[v?s.jsx(i,{src:a}):s.jsx(i,{src:t}),s.jsx("span",{children:"Endpoints"})]}),v&&s.jsx("div",{className:"api-docs-api-tree__subsections",children:Object.entries(e.tags).sort((([s],[e])=>"default"===s?1:"default"===e?-1:s.localeCompare(e))).map((([s,i],a)=>_(s,i,e,a)))})]})]},e.id)})(e,n)))})};export{n as default};
|
|
2
|
+
//# sourceMappingURL=DocsSideMenuTree.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocsSideMenuTree.js","sources":["../../../../../src/layout/docsComponents/DocsSideMenuTree/DocsSideMenuTree.tsx"],"sourcesContent":["import './style.scss'\nimport React, { useState } from 'react'\nimport SVGLoader from '../../../components/SVGLoader/SVGLoader'\nimport { arrowDownGray, arrowRightGray, document, eye } from '../../../assets/icons'\n\nconst DocsSideMenuTree = ({\n apis,\n setActiveItemData,\n isFirstApiExpanded,\n setIsFirstApiExpanded,\n}) => {\n const [expandedSections, setExpandedSections] = useState({})\n\n const toggleSection = (apiId, sectionId: string, resetOthers?: boolean, key?: string[]) => {\n isFirstApiExpanded && setIsFirstApiExpanded(false)\n if (resetOthers && key) {\n const filteredExpandedSections = Object.fromEntries(\n Object.entries({ ...expandedSections }).filter(([expandKey, _]) => {\n // Close other APIs sections\n if (!expandKey.includes(apiId)) return false\n // always return the clicked on section\n else if (expandKey === sectionId) return true\n // filter all sections containing the key\n else if (key.some((k) => expandKey.includes(k))) return false\n else return true\n })\n )\n\n setExpandedSections({\n ...filteredExpandedSections,\n [sectionId]: !expandedSections[sectionId],\n })\n } else {\n setExpandedSections((prev) => ({\n ...prev,\n [sectionId]: !prev[sectionId],\n }))\n }\n }\n\n const renderEndpoints = (endpoints, api) => {\n return endpoints.map((endpoint, index) => {\n const isResourceExpanded = expandedSections[`api-${api.id}-resource-${endpoint.id}`]\n\n return (\n <div\n key={index}\n className={`api-docs-api-tree__endpoint api-docs-api-tree__endpoint--${endpoint.method.toLowerCase()}`}\n onClick={() => {\n setActiveItemData({\n ...endpoint,\n api: {\n id: api.id,\n title: api.title,\n description: api.description,\n version: api.version,\n },\n })\n\n if (!isResourceExpanded) {\n toggleSection(api.id, `api-${api.id}-resource-${endpoint.id}`, true, [\n 'resource',\n 'overview',\n ])\n }\n }}\n data-active={isResourceExpanded}\n >\n <span className=\"api-docs-api-tree__endpoint-method\">{endpoint.method}</span>\n <span className=\"api-docs-api-tree__endpoint-name\">{endpoint.path}</span>\n </div>\n )\n })\n }\n\n const renderApiSection = (api, index) => {\n const isApiExpanded = expandedSections[`api-${api.id}-section`]\n const isEndpointActive = Object.keys(expandedSections).some((k) =>\n k.includes(`api-${api.id}-resource`)\n )\n const isEndpointsExpanded = expandedSections[`api-${api.id}-endpoints`]\n const isOverviewExpanded = expandedSections[`api-${api.id}-overview`]\n\n if (isFirstApiExpanded && index === 0 && !isApiExpanded) {\n toggleSection(api.id, `api-${api.id}-section`)\n toggleSection(api.id, `api-${api.id}-overview`)\n setActiveItemData(api)\n }\n\n return (\n <div\n key={api.id}\n className=\"api-docs-api-tree__section\"\n data-active={isEndpointActive || isOverviewExpanded}\n >\n <div\n className=\"api-docs-api-tree__section-header\"\n onClick={() => toggleSection(api.id, `api-${api.id}-section`)}\n >\n {isApiExpanded ? <SVGLoader src={arrowDownGray} /> : <SVGLoader src={arrowRightGray} />}\n <SVGLoader src={document} />\n <span className=\"api-docs-api-tree__section-title\">{api.title}</span>\n </div>\n\n {isApiExpanded && (\n <>\n <div\n className={`api-docs-api-tree__section__overview`}\n onClick={() => {\n toggleSection(api.id, `api-${api.id}-overview`, true, ['resource'])\n setActiveItemData(api)\n }}\n data-active={isOverviewExpanded}\n >\n {<SVGLoader src={eye} />}\n <span>Overview</span>\n </div>\n <div\n className=\"api-docs-api-tree__section__endpoints\"\n onClick={() => {\n toggleSection(api.id, `api-${api.id}-endpoints`)\n }}\n data-active={isEndpointActive && !isOverviewExpanded}\n >\n {isEndpointsExpanded ? (\n <SVGLoader src={arrowDownGray} />\n ) : (\n <SVGLoader src={arrowRightGray} />\n )}\n <span>Endpoints</span>\n </div>\n {isEndpointsExpanded && (\n <div className=\"api-docs-api-tree__subsections\">\n {Object.entries(api.tags)\n .sort(([a], [b]) => {\n if (a === 'default') return 1\n if (b === 'default') return -1\n return a.localeCompare(b)\n })\n .map(([tagName, data], index) => renderSubSection(tagName, data, api, index))}\n </div>\n )}\n </>\n )}\n </div>\n )\n }\n\n const renderSubSection = (tagName, data, api, sectionIndex) => {\n const sectionKey = `api-${api.id}-section-${sectionIndex}`\n const isSectionExpanded = expandedSections[sectionKey]\n\n return (\n <div key={sectionKey} className=\"api-docs-api-tree__subsection\">\n <>\n <div\n className=\"api-docs-api-tree__subsection-header\"\n onClick={() => toggleSection(api.id, sectionKey)}\n >\n {isSectionExpanded ? (\n <SVGLoader src={arrowDownGray} />\n ) : (\n <SVGLoader src={arrowRightGray} />\n )}\n <span className=\"api-docs-api-tree__subsection-title\">{tagName}</span>\n </div>\n\n {isSectionExpanded && (\n <div className=\"api-docs-api-tree__endpoints\">{renderEndpoints(data, api)}</div>\n )}\n </>\n </div>\n )\n }\n\n return (\n <aside className=\"api-docs-api-tree\">\n {apis.map((api, index) => renderApiSection(api, index))}\n </aside>\n )\n}\n\nexport default DocsSideMenuTree\n"],"names":["DocsSideMenuTree","apis","setActiveItemData","isFirstApiExpanded","setIsFirstApiExpanded","expandedSections","setExpandedSections","useState","toggleSection","apiId","sectionId","resetOthers","key","filteredExpandedSections","Object","fromEntries","entries","assign","filter","expandKey","_","includes","some","k","prev","renderEndpoints","endpoints","api","map","endpoint","index","isResourceExpanded","id","_jsxs","className","method","toLowerCase","onClick","title","description","version","children","_jsx","jsx","path","renderSubSection","tagName","data","sectionIndex","sectionKey","isSectionExpanded","_Fragment","Fragment","jsxs","SVGLoader","src","arrowDownGray","arrowRightGray","isApiExpanded","isEndpointActive","keys","isEndpointsExpanded","isOverviewExpanded","document","eye","tags","sort","a","b","localeCompare","renderApiSection"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as e}from"../../../_virtual/jsx-runtime.js";import o from"./DocsHeader/DocsHeader.js";import s from"./DocsSideMenuTree/DocsSideMenuTree.js";import r from"./DocsContent/DocsContent.js";import c from"./DocsAside/DocsAside.js";const i=({children:o})=>e.jsx("div",{className:"api-docs-layout",children:o});i.DocsHeader=o,i.DocsSideMenuTree=s,i.DocsContent=r,i.DocsAside=c;export{i as default};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/layout/docsComponents/index.tsx"],"sourcesContent":["import React from 'react'\nimport DocsHeader from './DocsHeader/DocsHeader'\nimport DocsSideMenuTree from './DocsSideMenuTree/DocsSideMenuTree'\nimport DocsContent from './DocsContent/DocsContent'\nimport DocsAside from './DocsAside/DocsAside'\nimport './index.scss'\n\ntype LayoutProps = {\n children: React.ReactNode\n}\n\ntype CompoundLayout = React.FC<LayoutProps> & {\n DocsHeader: typeof DocsHeader\n DocsSideMenuTree: typeof DocsSideMenuTree\n DocsContent: typeof DocsContent\n DocsAside: typeof DocsAside\n}\n\nconst Layout = (({ children }: LayoutProps) => {\n return <div className=\"api-docs-layout\">{children}</div>\n}) as CompoundLayout\n\nLayout.DocsHeader = DocsHeader\nLayout.DocsSideMenuTree = DocsSideMenuTree\nLayout.DocsContent = DocsContent\nLayout.DocsAside = DocsAside\n\nexport default Layout\n"],"names":["Layout","children","_jsx","className","DocsHeader","DocsSideMenuTree","DocsContent","DocsAside"],"mappings":"yOAkBM,MAAAA,EAAU,EAAGC,cACVC,EAAAA,WAAKC,UAAU,kBAAmBF,SAAAA,IAG3CD,EAAOI,WAAaA,EACpBJ,EAAOK,iBAAmBA,EAC1BL,EAAOM,YAAcA,EACrBN,EAAOO,UAAYA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as s}from"../../_virtual/jsx-runtime.js";import{useState as e}from"react";import t from"./docsComponents/index.js";const o=({openApiJson:o})=>{const[i,r]=e([]),[n,a]=e(!0),[d,p]=e();return s.jsxs(t,{children:[s.jsx(t.DocsHeader,{}),s.jsx(t.DocsSideMenuTree,{apis:i,setActiveItemData:p,isFirstApiExpanded:n,setIsFirstApiExpanded:a}),s.jsx(t.DocsContent,{data:d}),s.jsx(t.DocsAside,{})]})};export{o as default};
|
|
2
|
+
//# sourceMappingURL=docsLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docsLayout.js","sources":["../../../src/layout/docsLayout.tsx"],"sourcesContent":["import React, { JSX, useEffect, useState } from 'react'\nimport Layout from './docsComponents'\nimport { HTTPMethod, OpenAPIFile, Parameter, RequestBody, Responses } from '@entities/openApi'\nimport { transformOpenApiToDocs } from '../helpers/docs.helper'\n\ninterface ILayoutProps {\n openApiJson?: OpenAPIFile[]\n}\n\nexport interface TagData {\n id: string\n method: HTTPMethod\n path: string\n tags: string[]\n responses: Responses\n summary?: string\n description: string\n parameters?: Parameter[]\n requestBody?: RequestBody\n}\n\nexport interface EndpointData extends TagData {\n api: {\n id: string\n description: string\n title: string\n version: string\n }\n}\n\nexport interface OverviewData {\n id: string\n description: string\n title: string\n version: string\n tags: Record<string, TagData[]>\n}\n\nconst DocsLayout = ({ openApiJson }: ILayoutProps): JSX.Element => {\n const [transformedOpenApis, setTransformedOpenApis] = useState([])\n const [isFirstApiExpanded, setIsFirstApiExpanded] = useState(true)\n const [activeItemData, setActiveItemData] = useState<OverviewData | EndpointData>()\n\n // useEffect(() => {\n // if (transformedOpenApis.length === 0) {\n // setTransformedOpenApis(\n // structuredClone(openApiJson)\n // ?.map((o3) => transformOpenApiToDocs(o3))\n // .sort((a, b) => a.title.toLowerCase().localeCompare(b.title.toLowerCase()))\n // )\n // }\n // }, [openApiJson])\n\n return (\n <Layout>\n <Layout.DocsHeader />\n <Layout.DocsSideMenuTree\n apis={transformedOpenApis}\n setActiveItemData={setActiveItemData}\n isFirstApiExpanded={isFirstApiExpanded}\n setIsFirstApiExpanded={setIsFirstApiExpanded}\n />\n <Layout.DocsContent data={activeItemData} />\n <Layout.DocsAside />\n </Layout>\n )\n}\n\nexport default DocsLayout\n"],"names":["DocsLayout","openApiJson","transformedOpenApis","setTransformedOpenApis","useState","isFirstApiExpanded","setIsFirstApiExpanded","activeItemData","setActiveItemData","_jsxs","Layout","children","_jsx","DocsHeader","DocsSideMenuTree","apis","DocsContent","data","DocsAside"],"mappings":"4HAsCA,MAAMA,EAAa,EAAGC,kBACpB,MAAOC,EAAqBC,GAA0BC,EAAS,KACxDC,EAAoBC,GAAyBF,GAAS,IACtDG,EAAgBC,GAAqBJ,IAY5C,OACEK,EAAAA,KAACC,EAAM,CAAAC,SAAA,CACLC,EAAAA,IAACF,EAAOG,WAAU,CAAA,GAClBD,EAAAA,IAACF,EAAOI,kBACNC,KAAMb,EACNM,kBAAmBA,EACnBH,mBAAoBA,EACpBC,sBAAuBA,IAEzBM,EAAAA,IAACF,EAAOM,YAAW,CAACC,KAAMV,IAC1BK,EAAAA,IAACF,EAAOQ,UAAS,CAAA,KAEpB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as e}from"../../_virtual/jsx-runtime.js";import{useState as o,useEffect as t}from"react";import{d as
|
|
1
|
+
import{j as e}from"../../_virtual/jsx-runtime.js";import{useState as o,useEffect as t}from"react";import{d as i}from"../../_virtual/index.js";import r from"../components/MethodAccordion/MethodAccordion.js";import s from"./layout.module.css.js";import n from"../components/InfoForm/InfoForm.js";import a from"../components/SectionHead/SectionHead.js";import{transformOpenApiObject as l,transformOpenApiObjectToOrigin as d}from"../helpers/layout.helper.js";import m from"../components/LivePreview/LivePreview.js";import{useFormik as c,FormikProvider as h}from"../../node_modules/formik/dist/formik.esm.js";import{schemaValidation as u}from"../validator/form.scheme.js";import{methodColorMapping as p}from"../constants/index.js";import j from"../components/dialog/index.js";const v=({openApiJson:v,handleSave:x,setIsFormDirty:f,openApiErrors:g})=>{const S=structuredClone(v),y=l(S),A=c({initialValues:structuredClone(y),validationSchema:u,validateOnMount:!0,onSubmit:(e,{validateForm:o,resetForm:t})=>{const i=d(e);x(i),t({values:e}),o(e)}}),{dirty:b,isValid:F,isSubmitting:C,values:N,setFieldValue:w,handleSubmit:H}=A,[P,$]=o(!1),[I,W]=o(null);return t((()=>{f&&f(b)}),[b]),e.jsxs("div",{className:s.docsLayout,children:[b&&e.jsx(i.Alert,{className:s.apiDocAlert,color:"warning",severity:"warning",children:"There are changes you made may not be saved"}),e.jsxs("div",{className:s.layoutContainer,children:[e.jsxs("div",{className:`${s.editorSide} ${s.docSide}`,children:[e.jsx(a,{className:s.editorSectionHead,text:e.jsxs("div",{className:s.editorSectionHead_content,children:["API Information",e.jsx(i.Button,{className:s.methodForm_submitBtn,size:"medium",fullWidth:!1,type:"submit",variant:"contained",color:"primary",onClick:()=>$(!0),disabled:!F||C||!b,children:"Save"})]})}),e.jsx(h,{value:A,children:e.jsx(n,{})}),e.jsx(a,{className:s.editorSectionHead,text:"Endpoints"}),e.jsx(h,{value:A,children:N.paths.map(((o,t)=>e.jsx(e.Fragment,{children:o.methods.sort(((e,o)=>p[e.type].order-p[o.type].order)).map(((i,s)=>{var n,a,l;return e.jsx(r,{tags:N.tags,method:i,path:o.path,setFieldValue:(e,o)=>{w(`paths[${t}].methods[${s}].${e}`,o)},isOpen:I===s,setIsOpen:e=>W(e?s:null),errors:null===(l=null===(a=null===(n=A.errors.paths)||void 0===n?void 0:n[t])||void 0===a?void 0:a.methods)||void 0===l?void 0:l[s]})}))})))})]}),e.jsx("div",{className:`${s.livePreviewSide} ${s.docSide}`,children:y&&e.jsx(h,{value:A,children:e.jsx(m,{transformedData:y,openApiErrors:g})})})]}),e.jsx(j,{status:"warning",content:e.jsxs(e.Fragment,{children:[e.jsx("h5",{style:{fontWeight:600,fontSize:"1.5rem",lineHeight:"1.875rem",color:"#FAAD14",textAlign:"center",margin:0},children:"Publish Changes"}),e.jsx("p",{style:{textAlign:"center",fontWeight:400,fontSize:"1rem",lineHeight:"1.4375rem"},children:"Are you sure to Publish the changes?"})]}),onSubmit:{onClick:()=>{H(),$(!1)},text:"Publish",color:"warning",fullWidth:!0},onCancel:{text:"Cancel",color:"action",fullWidth:!0},onClose:()=>$(!1),open:P})]})};export{v as default};
|
|
2
2
|
//# sourceMappingURL=layout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sources":["../../../src/layout/layout.tsx"],"sourcesContent":["import { JSX, useEffect, useState } from 'react'\
|
|
1
|
+
{"version":3,"file":"layout.js","sources":["../../../src/layout/layout.tsx"],"sourcesContent":["import { JSX, useEffect, useState } from 'react'\nimport { Alert, Button } from 'digitinary-ui'\nimport MethodsAccordion from '../components/MethodAccordion/MethodAccordion'\nimport styles from './layout.module.css'\nimport InfoForm from '../components/InfoForm/InfoForm'\nimport SectionHead from '../components/SectionHead/SectionHead'\nimport { transformOpenApiObject, transformOpenApiObjectToOrigin } from '../helpers/layout.helper'\nimport { OpenAPIFile } from '../types/openApi'\nimport LivePreview from '../components/LivePreview/LivePreview'\nimport { FormikProvider, useFormik } from 'formik'\nimport { schemaValidation } from '../validator/form.scheme'\nimport { TransformedOpenApi } from '@entities/transformedOpenApi'\nimport { methodColorMapping } from '../constants/index'\nimport CommonDialog from '../components/dialog'\n\ninterface ILayoutProps {\n openApiJson?: OpenAPIFile\n handleSave?: (values: unknown) => unknown\n setIsFormDirty?: any\n openApiErrors?: any\n}\n\nconst Layout = ({ openApiJson, handleSave, setIsFormDirty, openApiErrors }: ILayoutProps): JSX.Element => {\n const clonedOpenApiJson = structuredClone(openApiJson)\n const transformedOpenApi = transformOpenApiObject(clonedOpenApiJson)\n const formik = useFormik<TransformedOpenApi>({\n initialValues: structuredClone(transformedOpenApi),\n validationSchema: schemaValidation,\n validateOnMount: true,\n onSubmit: (values, { validateForm, resetForm }) => {\n // Handle save logic\n const originalOpenApiForm = transformOpenApiObjectToOrigin(values)\n handleSave(originalOpenApiForm)\n resetForm({\n values: values, // You can reset it to the same values if you want\n })\n\n validateForm(values)\n },\n })\n const { dirty, isValid, isSubmitting, values, setFieldValue, handleSubmit } = formik\n const [isPublishDialogOpen, setIsPublishDialogOpen] = useState(false)\n const [openMethodIndex, setOpenMethodIndex] = useState<number | null>(null)\n\n useEffect(() => {\n if (setIsFormDirty) {\n setIsFormDirty(dirty)\n }\n }, [dirty])\n\n return (\n <div className={styles.docsLayout}>\n {dirty && (\n <Alert className={styles.apiDocAlert} color=\"warning\" severity=\"warning\">\n There are changes you made may not be saved\n </Alert>\n )}\n <div className={styles.layoutContainer}>\n <div className={`${styles.editorSide} ${styles.docSide}`}>\n <SectionHead\n className={styles.editorSectionHead}\n text={\n <div className={styles.editorSectionHead_content}>\n API Information\n <Button\n className={styles.methodForm_submitBtn}\n size=\"medium\"\n fullWidth={false}\n type=\"submit\"\n variant=\"contained\"\n color=\"primary\"\n onClick={() => setIsPublishDialogOpen(true)}\n disabled={!isValid || isSubmitting || !dirty}\n >\n Save\n </Button>\n </div>\n }\n />\n <FormikProvider value={formik}>\n <InfoForm />\n </FormikProvider>\n <SectionHead className={styles.editorSectionHead} text=\"Endpoints\" />\n <FormikProvider value={formik}>\n {values.paths.map((path, pathIndex) => (\n <>\n {path.methods\n .sort(\n (a, b) => methodColorMapping[a.type].order - methodColorMapping[b.type].order\n )\n .map((method, methodIndex) => (\n <MethodsAccordion\n tags={values.tags}\n method={method}\n path={path.path}\n setFieldValue={(key, value) => {\n const h = `paths[${pathIndex}].methods[${methodIndex}].${key}`\n setFieldValue(h, value)\n }}\n isOpen={openMethodIndex === methodIndex}\n setIsOpen={(open) => setOpenMethodIndex(open ? methodIndex : null)}\n errors={formik.errors.paths?.[pathIndex]?.methods?.[methodIndex]}\n />\n ))}\n </>\n ))}\n </FormikProvider>\n </div>\n <div className={`${styles.livePreviewSide} ${styles.docSide}`}>\n {transformedOpenApi && (\n <FormikProvider value={formik}>\n <LivePreview transformedData={transformedOpenApi} openApiErrors={openApiErrors}/>\n </FormikProvider>\n )}\n </div>\n </div>\n <CommonDialog\n status=\"warning\"\n content={\n <>\n <h5 style={{\n fontWeight: 600,\n fontSize: '1.5rem',\n lineHeight: '1.875rem',\n color: '#FAAD14',\n textAlign: 'center',\n margin: 0\n }}>Publish Changes</h5>\n <p\n style={{\n textAlign: 'center',\n fontWeight: 400,\n fontSize: '1rem',\n lineHeight: '1.4375rem',\n }}\n >\n Are you sure to Publish the changes?\n </p>\n </>\n }\n onSubmit={{\n onClick: () => {\n handleSubmit()\n setIsPublishDialogOpen(false)\n },\n text: 'Publish',\n color: 'warning',\n fullWidth: true,\n }}\n onCancel={{\n text: 'Cancel',\n color: 'action',\n fullWidth: true,\n }}\n onClose={() => setIsPublishDialogOpen(false)}\n open={isPublishDialogOpen}\n />\n </div>\n )\n}\n\nexport default Layout\n"],"names":["Layout","openApiJson","handleSave","setIsFormDirty","openApiErrors","clonedOpenApiJson","structuredClone","transformedOpenApi","transformOpenApiObject","formik","useFormik","initialValues","validationSchema","schemaValidation","validateOnMount","onSubmit","values","validateForm","resetForm","originalOpenApiForm","transformOpenApiObjectToOrigin","dirty","isValid","isSubmitting","setFieldValue","handleSubmit","isPublishDialogOpen","setIsPublishDialogOpen","useState","openMethodIndex","setOpenMethodIndex","useEffect","_jsxs","jsxs","className","styles","docsLayout","children","_jsx","Alert","apiDocAlert","color","severity","layoutContainer","editorSide","docSide","SectionHead","editorSectionHead","text","editorSectionHead_content","Button","methodForm_submitBtn","size","fullWidth","type","variant","onClick","disabled","FormikProvider","value","InfoForm","jsx","paths","map","path","pathIndex","_Fragment","methods","sort","a","b","methodColorMapping","order","method","methodIndex","MethodsAccordion","tags","key","isOpen","setIsOpen","open","errors","_b","_a","livePreviewSide","LivePreview","transformedData","CommonDialog","status","content","style","fontWeight","fontSize","lineHeight","textAlign","margin","onCancel","onClose"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{object as e,string as i,array as o,
|
|
1
|
+
import{object as e,string as i,array as o,lazy as r,mixed as t}from"../../node_modules/yup/index.esm.js";const s=e({openapi:i().required(),info:e({title:i().trim().required("API Name is required."),description:i().trim().required("API Description is required."),version:i().required("API Version is required")}).required(),servers:o(e({url:i().url().required(),description:i().optional()})).optional(),paths:o().of(e().shape({path:i().required(),methods:o().of(e().shape({summary:i().trim().required("Endpoint Name is required."),description:i().trim().optional(),type:i().optional(),tags:o().of(i()).optional()})).required()})).required(),components:e({schemas:r((s=>e(s?Object.keys(s).reduce(((s,a)=>(s[a]=e({type:i().optional(),format:i().optional(),properties:r((i=>e(i?Object.keys(i).reduce(((e,i)=>(e[i]=t(),e)),{}):{}))).optional(),items:t().optional(),enum:o(i()).optional(),required:o(i()).optional()}),s)),{}):{}))).optional(),securitySchemes:e().optional()}).optional(),security:o(e().shape({schemeName:o(i()).optional()})).optional(),tags:o(e({name:i().required(),description:i().optional()})).optional()});export{s as schemaValidation};
|
|
2
2
|
//# sourceMappingURL=form.scheme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.scheme.js","sources":["../../../src/validator/form.scheme.ts"],"sourcesContent":["import * as yup from 'yup'\
|
|
1
|
+
{"version":3,"file":"form.scheme.js","sources":["../../../src/validator/form.scheme.ts"],"sourcesContent":["import * as yup from 'yup'\nexport const schemaValidation = yup.object({\n openapi: yup.string().required(),\n info: yup\n .object({\n title: yup.string().trim().required('API Name is required.'),\n description: yup.string().trim().required('API Description is required.'),\n version: yup.string().required('API Version is required'),\n })\n .required(),\n servers: yup\n .array(\n yup.object({\n url: yup.string().url().required(),\n description: yup.string().optional(),\n })\n )\n .optional(),\n paths: yup\n .array()\n .of(\n yup.object().shape({\n path: yup.string().required(),\n methods: yup\n .array()\n .of(\n yup.object().shape({\n summary: yup.string().trim().required('Endpoint Name is required.'),\n description: yup.string().trim().optional(),\n type: yup.string().optional(),\n tags: yup.array().of(yup.string()).optional(),\n })\n )\n .required(),\n })\n )\n .required(),\n components: yup\n .object({\n schemas: yup\n .lazy((value) =>\n yup.object(\n value\n ? Object.keys(value).reduce((acc, key) => {\n acc[key] = yup.object({\n type: yup.string().optional(),\n format: yup.string().optional(),\n properties: yup\n .lazy((props) =>\n yup.object(\n props\n ? Object.keys(props).reduce((acc, propKey) => {\n acc[propKey] = yup.mixed()\n return acc\n }, {})\n : {}\n )\n )\n .optional(),\n items: yup.mixed().optional(),\n enum: yup.array(yup.string()).optional(),\n required: yup.array(yup.string()).optional(),\n })\n return acc\n }, {})\n : {}\n )\n )\n .optional(),\n securitySchemes: yup.object().optional(),\n })\n .optional(),\n security: yup\n .array(\n yup.object().shape({\n schemeName: yup.array(yup.string()).optional(),\n })\n )\n .optional(),\n tags: yup\n .array(\n yup.object({\n name: yup.string().required(),\n description: yup.string().optional(),\n })\n )\n .optional(),\n})\n"],"names":["schemaValidation","yup.object","openapi","yup.string","required","info","yup\n .object","title","trim","description","version","servers","yup\n .array","url","optional","paths","of","shape","path","methods","yup\n .array","summary","type","tags","yup.array","components","schemas","yup\n .lazy","value","Object","keys","reduce","acc","key","format","properties","yup\n .lazy","props","propKey","yup.mixed","items","enum","securitySchemes","security","schemeName","name"],"mappings":"yGACa,MAAAA,EAAmBC,EAAW,CACzCC,QAASC,IAAaC,WACtBC,KAAMC,EACI,CACNC,MAAOJ,IAAaK,OAAOJ,SAAS,yBACpCK,YAAaN,IAAaK,OAAOJ,SAAS,gCAC1CM,QAASP,IAAaC,SAAS,6BAEhCA,WACHO,QAASC,EAELX,EAAW,CACTY,IAAKV,IAAaU,MAAMT,WACxBK,YAAaN,IAAaW,cAG7BA,WACHC,MAAOH,IAEJI,GACCf,IAAagB,MAAM,CACjBC,KAAMf,IAAaC,WACnBe,QAASC,IAENJ,GACCf,IAAagB,MAAM,CACjBI,QAASlB,IAAaK,OAAOJ,SAAS,8BACtCK,YAAaN,IAAaK,OAAOM,WACjCQ,KAAMnB,IAAaW,WACnBS,KAAMC,IAAYR,GAAGb,KAAcW,cAGtCV,cAGNA,WACHqB,WAAYnB,EACF,CACNoB,QAASC,GACAC,GACL3B,EACE2B,EACIC,OAAOC,KAAKF,GAAOG,QAAO,CAACC,EAAKC,KAC9BD,EAAIC,GAAOhC,EAAW,CACpBqB,KAAMnB,IAAaW,WACnBoB,OAAQ/B,IAAaW,WACrBqB,WAAYC,GACHC,GACLpC,EACEoC,EACIR,OAAOC,KAAKO,GAAON,QAAO,CAACC,EAAKM,KAC9BN,EAAIM,GAAWC,IACRP,IACN,IACH,CAAA,KAGPlB,WACH0B,MAAOD,IAAYzB,WACnB2B,KAAMjB,EAAUrB,KAAcW,WAC9BV,SAAUoB,EAAUrB,KAAcW,aAE7BkB,IACN,IACH,CAAA,KAGPlB,WACH4B,gBAAiBzC,IAAaa,aAE/BA,WACH6B,SAAU/B,EAENX,IAAagB,MAAM,CACjB2B,WAAYpB,EAAUrB,KAAcW,cAGvCA,WACHS,KAAMX,EAEFX,EAAW,CACT4C,KAAM1C,IAAaC,WACnBK,YAAaN,IAAaW,cAG7BA"}
|