@scalar/api-client 2.38.1 → 2.38.2
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/CHANGELOG.md +9 -0
- package/dist/AddressBar-B4xnl66I.js +302 -0
- package/dist/AddressBar-B4xnl66I.js.map +1 -0
- package/dist/App-BVH4lIe8.js +533 -0
- package/dist/App-BVH4lIe8.js.map +1 -0
- package/dist/App-CvClwSlM.js +2510 -0
- package/dist/App-CvClwSlM.js.map +1 -0
- package/dist/CodeInput-C-igR77V.js +694 -0
- package/dist/CodeInput-C-igR77V.js.map +1 -0
- package/dist/CodeSnippet-D7Heh1nd.js +218 -0
- package/dist/CodeSnippet-D7Heh1nd.js.map +1 -0
- package/dist/Collection-4MT9WmDD.js +219 -0
- package/dist/Collection-4MT9WmDD.js.map +1 -0
- package/dist/CollectionAuthentication-MHWQpw74.js +56 -0
- package/dist/CollectionAuthentication-MHWQpw74.js.map +1 -0
- package/dist/CollectionCookies-DyjPPMdt.js +19 -0
- package/dist/CollectionCookies-DyjPPMdt.js.map +1 -0
- package/dist/CollectionEnvironment-Dw35vIqo.js +514 -0
- package/dist/CollectionEnvironment-Dw35vIqo.js.map +1 -0
- package/dist/CollectionOverview-TUdDIu5f.js +131 -0
- package/dist/CollectionOverview-TUdDIu5f.js.map +1 -0
- package/dist/CollectionScripts-CMNlBlby.js +19 -0
- package/dist/CollectionScripts-CMNlBlby.js.map +1 -0
- package/dist/CollectionServers-BrjTCfDe.js +168 -0
- package/dist/CollectionServers-BrjTCfDe.js.map +1 -0
- package/dist/CollectionSettings-HVSlp2Gv.js +87 -0
- package/dist/CollectionSettings-HVSlp2Gv.js.map +1 -0
- package/dist/CollectionSync-CAflc5yW.js +19 -0
- package/dist/CollectionSync-CAflc5yW.js.map +1 -0
- package/dist/CommandActionInput-TkcAx6E8.js +97 -0
- package/dist/CommandActionInput-TkcAx6E8.js.map +1 -0
- package/dist/CommandPalette-CL8k4CoN.js +964 -0
- package/dist/CommandPalette-CL8k4CoN.js.map +1 -0
- package/dist/CommandPaletteImport-Diu5dDIY.js +622 -0
- package/dist/CommandPaletteImport-Diu5dDIY.js.map +1 -0
- package/dist/Cookies-DbOKTi1f.js +284 -0
- package/dist/Cookies-DbOKTi1f.js.map +1 -0
- package/dist/DataTable-BqbZKW3K.js +62 -0
- package/dist/DataTable-BqbZKW3K.js.map +1 -0
- package/dist/DataTableHeader-DJVB0jCZ.js +21 -0
- package/dist/DataTableHeader-DJVB0jCZ.js.map +1 -0
- package/dist/DataTableInput-yaU5g-kP.js +166 -0
- package/dist/DataTableInput-yaU5g-kP.js.map +1 -0
- package/dist/DataTableRow-c3XveEUO.js +57 -0
- package/dist/DataTableRow-c3XveEUO.js.map +1 -0
- package/dist/DeleteSidebarListElement-C-p87d03.js +78 -0
- package/dist/DeleteSidebarListElement-C-p87d03.js.map +1 -0
- package/dist/EditSidebarListElement-CodWPnM6.js +32 -0
- package/dist/EditSidebarListElement-CodWPnM6.js.map +1 -0
- package/dist/Editor-BomsGWHx.js +909 -0
- package/dist/Editor-BomsGWHx.js.map +1 -0
- package/dist/EmptyState-Cnm7hGW5.js +46 -0
- package/dist/EmptyState-Cnm7hGW5.js.map +1 -0
- package/dist/Environment-DJatRQIg.js +416 -0
- package/dist/Environment-DJatRQIg.js.map +1 -0
- package/dist/EnvironmentModal-DBEJ4Kzj.js +288 -0
- package/dist/EnvironmentModal-DBEJ4Kzj.js.map +1 -0
- package/dist/Form-CSKzyHGO.js +83 -0
- package/dist/Form-CSKzyHGO.js.map +1 -0
- package/dist/HttpMethod-rnWEgC3T.js +78 -0
- package/dist/HttpMethod-rnWEgC3T.js.map +1 -0
- package/dist/IconSelector-BDC_GQXv.js +67 -0
- package/dist/IconSelector-BDC_GQXv.js.map +1 -0
- package/dist/ImportCollection-DfX1UQ5u.js +804 -0
- package/dist/ImportCollection-DfX1UQ5u.js.map +1 -0
- package/dist/IntegrationLogo-B9EDW8db.js +51 -0
- package/dist/IntegrationLogo-B9EDW8db.js.map +1 -0
- package/dist/MainLayout-BEFMl1ud.js +281 -0
- package/dist/MainLayout-BEFMl1ud.js.map +1 -0
- package/dist/Modal-sQ9vH6MN.js +67 -0
- package/dist/Modal-sQ9vH6MN.js.map +1 -0
- package/dist/ModalClientContainer-qHsZi4wQ.js +65 -0
- package/dist/ModalClientContainer-qHsZi4wQ.js.map +1 -0
- package/dist/Request-gscRsGQ8.js +212 -0
- package/dist/Request-gscRsGQ8.js.map +1 -0
- package/dist/RequestAuth-BzBfIysT.js +989 -0
- package/dist/RequestAuth-BzBfIysT.js.map +1 -0
- package/dist/RequestRoot-3Bj8JZD-.js +1611 -0
- package/dist/RequestRoot-3Bj8JZD-.js.map +1 -0
- package/dist/RequestSection-HhdJj9hW.js +1582 -0
- package/dist/RequestSection-HhdJj9hW.js.map +1 -0
- package/dist/ResponseSection-DMJ0tw8E.js +949 -0
- package/dist/ResponseSection-DMJ0tw8E.js.map +1 -0
- package/dist/ScalarAsciiArt-BjuSnj8e.js +45 -0
- package/dist/ScalarAsciiArt-BjuSnj8e.js.map +1 -0
- package/dist/SectionFilter-hrtoRLwj.js +99 -0
- package/dist/SectionFilter-hrtoRLwj.js.map +1 -0
- package/dist/Server-DnA_BzPS.js +303 -0
- package/dist/Server-DnA_BzPS.js.map +1 -0
- package/dist/ServerVariablesForm-BRZ9XC8o.js +145 -0
- package/dist/ServerVariablesForm-BRZ9XC8o.js.map +1 -0
- package/dist/Settings-CYZzdJPO.js +347 -0
- package/dist/Settings-CYZzdJPO.js.map +1 -0
- package/dist/Sidebar-C6AdX6-N.js +73 -0
- package/dist/Sidebar-C6AdX6-N.js.map +1 -0
- package/dist/SidebarButton-BAagdMDe.js +37 -0
- package/dist/SidebarButton-BAagdMDe.js.map +1 -0
- package/dist/SidebarListElement-BfTPiihc.js +232 -0
- package/dist/SidebarListElement-BfTPiihc.js.map +1 -0
- package/dist/TheCommandPalette-Dl9TAeke.js +204 -0
- package/dist/TheCommandPalette-Dl9TAeke.js.map +1 -0
- package/dist/ValueEmitter-QYkZ9Hdc.js +20 -0
- package/dist/ValueEmitter-QYkZ9Hdc.js.map +1 -0
- package/dist/ViewLayout-BOXN0IYo.js +17 -0
- package/dist/ViewLayout-BOXN0IYo.js.map +1 -0
- package/dist/ViewLayoutCollapse-CiTb-Uml.js +86 -0
- package/dist/ViewLayoutCollapse-CiTb-Uml.js.map +1 -0
- package/dist/ViewLayoutContent-CvMoJYPF.js +13 -0
- package/dist/ViewLayoutContent-CvMoJYPF.js.map +1 -0
- package/dist/ViewLayoutSection-mUqKbQry.js +23 -0
- package/dist/ViewLayoutSection-mUqKbQry.js.map +1 -0
- package/dist/WatchModeToggle-D_eAiTWJ.js +41 -0
- package/dist/WatchModeToggle-D_eAiTWJ.js.map +1 -0
- package/dist/_plugin-vue_export-helper-BmmBcIzD.js +8 -0
- package/dist/analytics-BZimCWcw.js +7 -0
- package/dist/analytics-BZimCWcw.js.map +1 -0
- package/dist/build-request-security-BQjNr2MD.js +41 -0
- package/dist/build-request-security-BQjNr2MD.js.map +1 -0
- package/dist/code-input-iq-moLxi.js +775 -0
- package/dist/code-input-iq-moLxi.js.map +1 -0
- package/dist/components/AddressBar/AddressBar.vue.d.ts +1 -1
- package/dist/components/AddressBar/index.d.ts +1 -1
- package/dist/components/AddressBar/index.js +5 -4
- package/dist/components/CodeInput/CodeInput.vue.d.ts +1 -1
- package/dist/components/CodeInput/codeVariableWidget.d.ts +1 -1
- package/dist/components/CodeInput/index.d.ts +1 -1
- package/dist/components/CodeInput/index.js +2 -4
- package/dist/components/CommandPalette/index.d.ts +1 -1
- package/dist/components/CommandPalette/index.js +3 -4
- package/dist/components/DataTable/DataTableInput.vue.d.ts +2 -2
- package/dist/components/DataTable/index.d.ts +8 -8
- package/dist/components/DataTable/index.js +6 -18
- package/dist/components/Form/LabelInput.vue.d.ts +1 -1
- package/dist/components/HttpMethod/index.d.ts +1 -1
- package/dist/components/HttpMethod/index.js +2 -4
- package/dist/components/ImportCollection/index.d.ts +1 -1
- package/dist/components/ImportCollection/index.js +2 -4
- package/dist/components/ImportCollection/utils/import-collection.d.ts +1 -1
- package/dist/components/ImportCollection/utils/workspace-store-is-empty.d.ts +1 -1
- package/dist/components/Server/ServerVariablesForm.vue.d.ts +1 -1
- package/dist/components/Server/index.d.ts +3 -3
- package/dist/components/Server/index.js +3 -8
- package/dist/components/Sidebar/index.d.ts +1 -1
- package/dist/components/Sidebar/index.js +2 -4
- package/dist/components/ViewLayout/index.d.ts +1 -1
- package/dist/components/ViewLayout/index.js +2 -4
- package/dist/components/index.d.ts +3 -3
- package/dist/components/index.js +7 -8
- package/dist/components-CSxJTn6F.js +183 -0
- package/dist/components-CSxJTn6F.js.map +1 -0
- package/dist/components-ChixwQhN.js +61 -0
- package/dist/components-ChixwQhN.js.map +1 -0
- package/dist/computer-D7VW3Ruy.js +562 -0
- package/dist/computer-D7VW3Ruy.js.map +1 -0
- package/dist/consts-CyGRb9dl.js +318 -0
- package/dist/consts-CyGRb9dl.js.map +1 -0
- package/dist/curl-nbw1OxbV.js +54 -0
- package/dist/curl-nbw1OxbV.js.map +1 -0
- package/dist/data-table-PL7e8NRO.js +282 -0
- package/dist/data-table-PL7e8NRO.js.map +1 -0
- package/dist/editor-BZ_J0eze.js +466 -0
- package/dist/editor-BZ_J0eze.js.map +1 -0
- package/dist/environments-ByLK9lnC.js +592 -0
- package/dist/environments-ByLK9lnC.js.map +1 -0
- package/dist/formatters-DOGXZq9R.js +36 -0
- package/dist/formatters-DOGXZq9R.js.map +1 -0
- package/dist/forms-CZX6cFDS.js +42 -0
- package/dist/forms-CZX6cFDS.js.map +1 -0
- package/dist/get-active-environment-CkxyQ1dM.js +19 -0
- package/dist/get-active-environment-CkxyQ1dM.js.map +1 -0
- package/dist/get-resolved-url-BUCwrBzc.js +30 -0
- package/dist/get-resolved-url-BUCwrBzc.js.map +1 -0
- package/dist/get-server-url-o3On8CEr.js +32 -0
- package/dist/get-server-url-o3On8CEr.js.map +1 -0
- package/dist/get-servers-B_WNlQWB.js +106 -0
- package/dist/get-servers-B_WNlQWB.js.map +1 -0
- package/dist/get-snippet-DBRUSfZ2.js +39 -0
- package/dist/get-snippet-DBRUSfZ2.js.map +1 -0
- package/dist/global-cookies-D3ZS9ON3.js +184 -0
- package/dist/global-cookies-D3ZS9ON3.js.map +1 -0
- package/dist/hooks/index.d.ts +4 -4
- package/dist/hooks/index.js +3 -11
- package/dist/hooks/useSidebar.d.ts +1 -1
- package/dist/hooks-BvZxH4XB.js +80 -0
- package/dist/hooks-BvZxH4XB.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +8 -12
- package/dist/layout-BWiL7dfb.js +81 -0
- package/dist/layout-BWiL7dfb.js.map +1 -0
- package/dist/layouts/App/create-api-client-app.d.ts +9 -9
- package/dist/layouts/App/index.d.ts +2 -2
- package/dist/layouts/App/index.js +5 -7
- package/dist/layouts/Modal/create-api-client-modal.d.ts +1 -1
- package/dist/layouts/Modal/index.d.ts +2 -2
- package/dist/layouts/Modal/index.js +3 -4
- package/dist/layouts/Web/create-api-client-web.d.ts +9 -9
- package/dist/layouts/Web/index.d.ts +2 -2
- package/dist/layouts/Web/index.js +101 -6
- package/dist/layouts/Web/index.js.map +1 -0
- package/dist/libs/create-client.d.ts +9 -9
- package/dist/libs/create-client.d.ts.map +1 -1
- package/dist/libs/environment-parser.d.ts +1 -1
- package/dist/libs/get-request-uid-by-path-method.d.ts +1 -1
- package/dist/libs/hot-keys.d.ts +1 -1
- package/dist/libs/importers/index.d.ts +1 -1
- package/dist/libs/importers/index.js +2 -4
- package/dist/libs/index.d.ts +15 -15
- package/dist/libs/index.js +6 -45
- package/dist/libs/local-storage.d.ts +1 -1
- package/dist/libs/send-request/create-request-operation.d.ts +3 -3
- package/dist/libs/send-request/index.d.ts +3 -3
- package/dist/libs/send-request/index.js +3 -8
- package/dist/libs-spbv4P0g.js +249 -0
- package/dist/libs-spbv4P0g.js.map +1 -0
- package/dist/monacoeditorwork/json.worker.bundle.js +8 -8
- package/dist/monacoeditorwork/yaml.worker.bundle.js +151 -151
- package/dist/operation-block-BnMIKAOh.js +1624 -0
- package/dist/operation-block-BnMIKAOh.js.map +1 -0
- package/dist/operation-code-sample-ZUTueV3v.js +1726 -0
- package/dist/operation-code-sample-ZUTueV3v.js.map +1 -0
- package/dist/parse-curl-BtypQT3D.js +106 -0
- package/dist/parse-curl-BtypQT3D.js.map +1 -0
- package/dist/plugins/hooks/usePluginManager.d.ts +1 -1
- package/dist/plugins/index.d.ts +2 -2
- package/dist/plugins/index.js +2 -7
- package/dist/plugins/plugin-manager.d.ts +10 -4
- package/dist/plugins/plugin-manager.d.ts.map +1 -1
- package/dist/plugins-B52hCIyZ.js +50 -0
- package/dist/plugins-B52hCIyZ.js.map +1 -0
- package/dist/rabbitjump-CMZXAR6d.js +9 -0
- package/dist/rabbitjump-CMZXAR6d.js.map +1 -0
- package/dist/request-block-DwsGy64Q.js +1466 -0
- package/dist/request-block-DwsGy64Q.js.map +1 -0
- package/dist/resize-D2IYvVdh.js +114 -0
- package/dist/resize-D2IYvVdh.js.map +1 -0
- package/dist/response-block-DmkaDZYs.js +1188 -0
- package/dist/response-block-DmkaDZYs.js.map +1 -0
- package/dist/scalar-address-bar-block--Vs6IBU1.js +425 -0
- package/dist/scalar-address-bar-block--Vs6IBU1.js.map +1 -0
- package/dist/scalar-auth-selector-block-DI3DLag9.js +1886 -0
- package/dist/scalar-auth-selector-block-DI3DLag9.js.map +1 -0
- package/dist/search-CmsQQkjn.js +151 -0
- package/dist/search-CmsQQkjn.js.map +1 -0
- package/dist/send-request-BsTfRiBC.js +348 -0
- package/dist/send-request-BsTfRiBC.js.map +1 -0
- package/dist/server-tcI-OCyx.js +140 -0
- package/dist/server-tcI-OCyx.js.map +1 -0
- package/dist/set-request-cookies-BJJhsU4A.js +88 -0
- package/dist/set-request-cookies-BJJhsU4A.js.map +1 -0
- package/dist/settings-BKk_1lcH.js +455 -0
- package/dist/settings-BKk_1lcH.js.map +1 -0
- package/dist/sidebar-ceSbYmnt.js +217 -0
- package/dist/sidebar-ceSbYmnt.js.map +1 -0
- package/dist/store/collections.d.ts +1 -1
- package/dist/store/environment.d.ts +1 -1
- package/dist/store/events.d.ts +8 -8
- package/dist/store/import-spec.d.ts +2 -2
- package/dist/store/index.d.ts +2 -2
- package/dist/store/index.js +2 -10
- package/dist/store/request-example.d.ts +1 -1
- package/dist/store/requests.d.ts +1 -1
- package/dist/store/security-schemes.d.ts +1 -1
- package/dist/store/servers.d.ts +1 -1
- package/dist/store/store.d.ts +7 -7
- package/dist/store/tags.d.ts +1 -1
- package/dist/store/workspace.d.ts +1 -1
- package/dist/store-DpSUVhjp.js +1512 -0
- package/dist/store-DpSUVhjp.js.map +1 -0
- package/dist/string-template-sS5PtY6T.js +64 -0
- package/dist/string-template-sS5PtY6T.js.map +1 -0
- package/dist/style.css +10372 -1
- package/dist/types/index.js +0 -1
- package/dist/use-global-hot-keys-D8Ai8Qbm.js +274 -0
- package/dist/use-global-hot-keys-D8Ai8Qbm.js.map +1 -0
- package/dist/useSidebar-DLTwHDI-.js +45 -0
- package/dist/useSidebar-DLTwHDI-.js.map +1 -0
- package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts +3 -3
- package/dist/v2/blocks/operation-block/components/Header.vue.d.ts +2 -2
- package/dist/v2/blocks/operation-block/helpers/build-request-security.d.ts +2 -2
- package/dist/v2/blocks/operation-block/helpers/build-request.d.ts +2 -2
- package/dist/v2/blocks/operation-block/helpers/build-request.d.ts.map +1 -1
- package/dist/v2/blocks/operation-block/helpers/har-to-fetch-response.d.ts +1 -1
- package/dist/v2/blocks/operation-block/helpers/send-request.d.ts +1 -1
- package/dist/v2/blocks/operation-block/index.d.ts +4 -4
- package/dist/v2/blocks/operation-block/index.js +20 -11
- package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.d.ts +2 -2
- package/dist/v2/blocks/operation-code-sample/helpers/find-client.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.d.ts +2 -2
- package/dist/v2/blocks/operation-code-sample/helpers/get-clients.d.ts +2 -2
- package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.d.ts +1 -1
- package/dist/v2/blocks/operation-code-sample/index.d.ts +6 -6
- package/dist/v2/blocks/operation-code-sample/index.js +2 -16
- package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts +4 -4
- package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.d.ts +1 -1
- package/dist/v2/blocks/request-block/components/RequestParams.vue.d.ts +1 -1
- package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts +1 -1
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts +1 -1
- package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts +3 -2
- package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/helpers/get-form-body-rows.d.ts +1 -1
- package/dist/v2/blocks/request-block/index.d.ts +1 -1
- package/dist/v2/blocks/request-block/index.js +9 -4
- package/dist/v2/blocks/response-block/ResponseBlock.vue.d.ts +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts +1 -1
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts +1 -1
- package/dist/v2/blocks/response-block/index.d.ts +1 -1
- package/dist/v2/blocks/response-block/index.js +6 -4
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts +2 -2
- package/dist/v2/blocks/scalar-address-bar-block/index.d.ts +2 -2
- package/dist/v2/blocks/scalar-address-bar-block/index.js +5 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.d.ts +3 -3
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts +2 -2
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue.d.ts +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.d.ts +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.d.ts +2 -2
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/openid-discovery-to-flows.d.ts +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/index.d.ts +4 -4
- package/dist/v2/blocks/scalar-auth-selector-block/index.js +6 -8
- package/dist/v2/components/code-input/CodeInput.vue.d.ts +1 -1
- package/dist/v2/components/code-input/index.d.ts +1 -1
- package/dist/v2/components/code-input/index.js +2 -4
- package/dist/v2/components/data-table/DataTableInput.vue.d.ts +1 -1
- package/dist/v2/components/data-table/DataTableInputSelect.vue.d.ts +1 -1
- package/dist/v2/components/data-table/index.d.ts +8 -8
- package/dist/v2/components/data-table/index.js +3 -18
- package/dist/v2/components/forms/index.d.ts +1 -1
- package/dist/v2/components/forms/index.js +2 -4
- package/dist/v2/components/layout/index.d.ts +1 -1
- package/dist/v2/components/layout/index.js +2 -4
- package/dist/v2/components/modals/index.d.ts +1 -1
- package/dist/v2/components/modals/index.js +37 -3
- package/dist/v2/components/modals/index.js.map +1 -0
- package/dist/v2/components/resize/index.d.ts +2 -2
- package/dist/v2/components/resize/index.js +2 -6
- package/dist/v2/components/server/ServerDropdown.vue.d.ts +1 -1
- package/dist/v2/components/server/index.d.ts +1 -1
- package/dist/v2/components/server/index.js +2 -4
- package/dist/v2/components/sidebar/Sidebar.vue.d.ts +1 -1
- package/dist/v2/components/sidebar/index.d.ts +3 -3
- package/dist/v2/components/sidebar/index.js +3 -8
- package/dist/v2/features/app/App.vue.d.ts +4 -4
- package/dist/v2/features/app/components/AppSidebar.vue.d.ts +1 -1
- package/dist/v2/features/app/components/index.d.ts +1 -1
- package/dist/v2/features/app/components/index.js +10 -5
- package/dist/v2/features/app/helpers/create-api-client-app.d.ts +3 -3
- package/dist/v2/features/app/helpers/get-route-param.d.ts +1 -1
- package/dist/v2/features/app/helpers/routes.d.ts +5 -5
- package/dist/v2/features/app/hooks/use-theme.d.ts +1 -1
- package/dist/v2/features/app/index.d.ts +8 -8
- package/dist/v2/features/app/index.js +3161 -19
- package/dist/v2/features/app/index.js.map +1 -0
- package/dist/v2/features/collection/DocumentCollection.vue.d.ts +1 -1
- package/dist/v2/features/collection/OperationCollection.vue.d.ts +1 -1
- package/dist/v2/features/collection/WorkspaceCollection.vue.d.ts +1 -1
- package/dist/v2/features/collection/components/Authentication.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Cookies.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Editor/Editor.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Editor/index.d.ts +1 -1
- package/dist/v2/features/collection/components/Editor/index.js +2 -4
- package/dist/v2/features/collection/components/Environment.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Overview.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Servers.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Settings.vue.d.ts +4 -4
- package/dist/v2/features/collection/components/Tabs.vue.d.ts +1 -1
- package/dist/v2/features/command-palette/TheCommandPalette.vue.d.ts +1 -1
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts +10 -45
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts.map +1 -1
- package/dist/v2/features/command-palette/index.d.ts +2 -2
- package/dist/v2/features/command-palette/index.js +3 -6
- package/dist/v2/features/editor/helpers/json/create-json-model.d.ts +1 -1
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts +1 -1
- package/dist/v2/features/editor/helpers/json/json-pointer-path.d.ts +1 -1
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.d.ts +1 -1
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.d.ts +1 -1
- package/dist/v2/features/editor/hooks/use-editor.d.ts +1 -1
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.d.ts +1 -1
- package/dist/v2/features/editor/index.d.ts +4 -4
- package/dist/v2/features/editor/index.js +2 -10
- package/dist/v2/features/environments/index.d.ts +1 -1
- package/dist/v2/features/environments/index.js +4 -4
- package/dist/v2/features/global-cookies/index.d.ts +1 -1
- package/dist/v2/features/global-cookies/index.js +4 -4
- package/dist/v2/features/modal/Modal.vue.d.ts +1 -1
- package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts +2 -2
- package/dist/v2/features/modal/hooks/use-modal-sidebar.d.ts +1 -1
- package/dist/v2/features/modal/index.d.ts +3 -3
- package/dist/v2/features/modal/index.js +639 -7
- package/dist/v2/features/modal/index.js.map +1 -0
- package/dist/v2/features/modal/modal-events.d.ts +1 -1
- package/dist/v2/features/operation/Operation.vue.d.ts +2 -2
- package/dist/v2/features/operation/index.d.ts +5 -5
- package/dist/v2/features/operation/index.js +19 -12
- package/dist/v2/features/search/helpers/create-fuse-instance.d.ts +1 -1
- package/dist/v2/features/search/helpers/create-search-index.d.ts +1 -1
- package/dist/v2/features/search/index.d.ts +1 -1
- package/dist/v2/features/search/index.js +2 -4
- package/dist/v2/features/settings/index.d.ts +2 -2
- package/dist/v2/features/settings/index.js +2 -6
- package/dist/v2/helpers/get-active-proxy-url.d.ts +1 -1
- package/dist/v2/helpers/get-tab-details.d.ts +1 -1
- package/dist/v2/helpers/handle-hotkeys.d.ts +1 -1
- package/dist/v2/helpers/index.d.ts +2 -2
- package/dist/v2/helpers/index.js +3 -6
- package/dist/v2/hooks/use-global-hot-keys.d.ts +1 -1
- package/dist/views/Collection/components/EnvironmentForm.vue.d.ts +1 -1
- package/dist/views/Collection/components/MarkdownInput.vue.d.ts +1 -1
- package/dist/views/Components/CodeSnippet/CodeSnippet.vue.d.ts +1 -1
- package/dist/views/Components/CodeSnippet/helpers/get-har-request.d.ts +1 -1
- package/dist/views/Components/CodeSnippet/helpers/get-snippet.d.ts +1 -1
- package/dist/views/Components/CodeSnippet/index.d.ts +4 -4
- package/dist/views/Components/CodeSnippet/index.js +3 -10
- package/dist/views/Environment/EnvironmentVariableDropdown.vue.d.ts +1 -1
- package/dist/views/Environment/handle-drag.d.ts +1 -1
- package/dist/views/Request/Request.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.d.ts +2 -2
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestAuth/index.d.ts +3 -3
- package/dist/views/Request/RequestSection/RequestAuth/index.js +4 -8
- package/dist/views/Request/RequestSection/RequestBody.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestCodeExample.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestParams.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestPathParams.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestSection.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/RequestTable.vue.d.ts +1 -1
- package/dist/views/Request/RequestSection/helpers/update-scheme.d.ts +1 -1
- package/dist/views/Request/RequestSection/index.d.ts +2 -2
- package/dist/views/Request/RequestSection/index.js +42 -5
- package/dist/views/Request/RequestSection/index.js.map +1 -0
- package/dist/views/Request/RequestSidebarItem.vue.d.ts +1 -1
- package/dist/views/Request/RequestSidebarItemMenu.vue.d.ts +3 -3
- package/dist/views/Request/RequestSubpageHeader.vue.d.ts +1 -1
- package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.d.ts +1 -1
- package/dist/views/Request/ResponseSection/ResponseSection.vue.d.ts +1 -1
- package/dist/views/Request/ResponseSection/index.d.ts +2 -2
- package/dist/views/Request/ResponseSection/index.js +7 -6
- package/dist/views/Request/components/index.d.ts +1 -1
- package/dist/views/Request/components/index.js +2 -4
- package/dist/views/Request/consts/index.d.ts +2 -2
- package/dist/views/Request/consts/index.js +2 -10
- package/dist/views/Request/handle-drag.d.ts +2 -2
- package/dist/views/Request/libs/auth.d.ts +1 -1
- package/dist/views/Request/libs/index.d.ts +3 -3
- package/dist/views/Request/libs/index.js +3 -22
- package/dist/views/Request/libs/oauth2.d.ts +1 -1
- package/dist/views/Request/libs/watch-mode.d.ts +2 -2
- package/dist/views/Request/types/index.js +0 -1
- package/dist/watch-mode-Dbaqd9bG.js +375 -0
- package/dist/watch-mode-Dbaqd9bG.js.map +1 -0
- package/package.json +29 -33
- package/dist/_virtual/_plugin-vue_export-helper.js +0 -9
- package/dist/analytics.js +0 -9
- package/dist/assets/computer.ascii.js +0 -34
- package/dist/assets/keycap.ascii.js +0 -25
- package/dist/assets/rabbit.ascii.js +0 -11
- package/dist/assets/rabbitjump.ascii.js +0 -11
- package/dist/components/AddressBar/AddressBar.vue.js +0 -7
- package/dist/components/AddressBar/AddressBar.vue2.js +0 -160
- package/dist/components/AddressBar/AddressBarHistory.vue.js +0 -7
- package/dist/components/AddressBar/AddressBarHistory.vue2.js +0 -98
- package/dist/components/AddressBar/httpStatusCodeColors.js +0 -38
- package/dist/components/CodeInput/CodeInput.vue.js +0 -8
- package/dist/components/CodeInput/CodeInput.vue2.js +0 -209
- package/dist/components/CodeInput/codeVariableWidget.js +0 -111
- package/dist/components/CommandPalette/CommandActionForm.vue.js +0 -44
- package/dist/components/CommandPalette/CommandActionForm.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandActionInput.vue.js +0 -52
- package/dist/components/CommandPalette/CommandActionInput.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteCollection.vue.js +0 -80
- package/dist/components/CommandPalette/CommandPaletteCollection.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteExample.vue.js +0 -116
- package/dist/components/CommandPalette/CommandPaletteExample.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteImport.vue.js +0 -217
- package/dist/components/CommandPalette/CommandPaletteImport.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.js +0 -7
- package/dist/components/CommandPalette/CommandPaletteImportCurl.vue2.js +0 -136
- package/dist/components/CommandPalette/CommandPaletteServer.vue.js +0 -123
- package/dist/components/CommandPalette/CommandPaletteServer.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteTag.vue.js +0 -84
- package/dist/components/CommandPalette/CommandPaletteTag.vue2.js +0 -4
- package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.js +0 -48
- package/dist/components/CommandPalette/CommandPaletteWorkspace.vue2.js +0 -4
- package/dist/components/CommandPalette/TheCommandPalette.vue.js +0 -7
- package/dist/components/CommandPalette/TheCommandPalette.vue2.js +0 -305
- package/dist/components/CommandPalette/WatchModeToggle.vue.js +0 -39
- package/dist/components/CommandPalette/WatchModeToggle.vue2.js +0 -4
- package/dist/components/DataTable/DataTable.vue.js +0 -38
- package/dist/components/DataTable/DataTable.vue2.js +0 -4
- package/dist/components/DataTable/DataTableCell.vue.js +0 -26
- package/dist/components/DataTable/DataTableCell.vue2.js +0 -4
- package/dist/components/DataTable/DataTableCheckbox.vue.js +0 -53
- package/dist/components/DataTable/DataTableCheckbox.vue2.js +0 -4
- package/dist/components/DataTable/DataTableHeader.vue.js +0 -18
- package/dist/components/DataTable/DataTableHeader.vue2.js +0 -4
- package/dist/components/DataTable/DataTableInput.vue.js +0 -7
- package/dist/components/DataTable/DataTableInput.vue2.js +0 -124
- package/dist/components/DataTable/DataTableInputSelect.vue.js +0 -146
- package/dist/components/DataTable/DataTableInputSelect.vue2.js +0 -4
- package/dist/components/DataTable/DataTableRow.vue.js +0 -12
- package/dist/components/DataTable/DataTableText.vue.js +0 -23
- package/dist/components/DataTable/DataTableText.vue2.js +0 -4
- package/dist/components/EmptyState.vue.js +0 -7
- package/dist/components/EmptyState.vue2.js +0 -42
- package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.js +0 -113
- package/dist/components/EnvironmentSelector/EnvironmentSelector.vue2.js +0 -4
- package/dist/components/Form/Form.vue.js +0 -83
- package/dist/components/Form/Form.vue2.js +0 -4
- package/dist/components/Form/LabelInput.vue.js +0 -7
- package/dist/components/Form/LabelInput.vue2.js +0 -42
- package/dist/components/HelpfulLink.vue.js +0 -20
- package/dist/components/HelpfulLink.vue2.js +0 -4
- package/dist/components/HttpMethod/HttpMethod.vue.js +0 -7
- package/dist/components/HttpMethod/HttpMethod.vue2.js +0 -62
- package/dist/components/IconSelector.vue.js +0 -75
- package/dist/components/IconSelector.vue2.js +0 -4
- package/dist/components/ImportCollection/DropEventListener.vue.js +0 -81
- package/dist/components/ImportCollection/DropEventListener.vue2.js +0 -4
- package/dist/components/ImportCollection/ImportCollectionListener.vue.js +0 -77
- package/dist/components/ImportCollection/ImportCollectionListener.vue2.js +0 -4
- package/dist/components/ImportCollection/ImportCollectionModal.vue.js +0 -208
- package/dist/components/ImportCollection/ImportCollectionModal.vue3.js +0 -5
- package/dist/components/ImportCollection/ImportNowButton.vue.js +0 -73
- package/dist/components/ImportCollection/ImportNowButton.vue2.js +0 -4
- package/dist/components/ImportCollection/IntegrationLogo.vue.js +0 -44
- package/dist/components/ImportCollection/IntegrationLogo.vue2.js +0 -4
- package/dist/components/ImportCollection/PasteEventListener.vue.js +0 -24
- package/dist/components/ImportCollection/PasteEventListener.vue2.js +0 -4
- package/dist/components/ImportCollection/PrefetchError.vue.js +0 -27
- package/dist/components/ImportCollection/PrefetchError.vue2.js +0 -4
- package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.js +0 -20
- package/dist/components/ImportCollection/UrlQueryParameterChecker.vue2.js +0 -4
- package/dist/components/ImportCollection/WorkspaceSelector.vue.js +0 -134
- package/dist/components/ImportCollection/WorkspaceSelector.vue2.js +0 -4
- package/dist/components/ImportCollection/hooks/useUrlPrefetcher.js +0 -106
- package/dist/components/ImportCollection/utils/get-openapi-version.js +0 -20
- package/dist/components/ImportCollection/utils/import-collection.js +0 -29
- package/dist/components/ImportCollection/utils/is-document.js +0 -9
- package/dist/components/ImportCollection/utils/is-url.js +0 -9
- package/dist/components/ImportCollection/utils/workspace-store-is-empty.js +0 -7
- package/dist/components/OpenApiClientButton.vue.js +0 -7
- package/dist/components/OpenApiClientButton.vue2.js +0 -48
- package/dist/components/ScalarAsciiArt.vue.js +0 -7
- package/dist/components/ScalarAsciiArt.vue2.js +0 -37
- package/dist/components/Search/useSearch.js +0 -78
- package/dist/components/SectionFilter.vue.js +0 -7
- package/dist/components/SectionFilter.vue2.js +0 -64
- package/dist/components/SectionFilterButton.vue.js +0 -23
- package/dist/components/SectionFilterButton.vue2.js +0 -4
- package/dist/components/Server/ServerDropdown.vue.js +0 -132
- package/dist/components/Server/ServerDropdown.vue2.js +0 -4
- package/dist/components/Server/ServerDropdownItem.vue.js +0 -7
- package/dist/components/Server/ServerDropdownItem.vue2.js +0 -84
- package/dist/components/Server/ServerSelector.vue.js +0 -82
- package/dist/components/Server/ServerSelector.vue2.js +0 -4
- package/dist/components/Server/ServerVariablesForm.vue.js +0 -49
- package/dist/components/Server/ServerVariablesForm.vue2.js +0 -4
- package/dist/components/Server/ServerVariablesSelect.vue.js +0 -54
- package/dist/components/Server/ServerVariablesSelect.vue2.js +0 -4
- package/dist/components/Server/ServerVariablesTextbox.vue.js +0 -29
- package/dist/components/Server/ServerVariablesTextbox.vue2.js +0 -4
- package/dist/components/SideNav/DownloadAppButton.vue.js +0 -7
- package/dist/components/SideNav/DownloadAppButton.vue2.js +0 -33
- package/dist/components/SideNav/SideHelp.vue.js +0 -127
- package/dist/components/SideNav/SideHelp.vue2.js +0 -4
- package/dist/components/SideNav/SideNav.vue.js +0 -96
- package/dist/components/SideNav/SideNav.vue2.js +0 -4
- package/dist/components/SideNav/SideNavGroup.vue.js +0 -16
- package/dist/components/SideNav/SideNavGroup.vue2.js +0 -4
- package/dist/components/SideNav/SideNavLink.vue.js +0 -39
- package/dist/components/SideNav/SideNavLink.vue2.js +0 -4
- package/dist/components/SideNav/SideNavRouterLink.vue.js +0 -27
- package/dist/components/SideNav/SideNavRouterLink.vue2.js +0 -4
- package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue.js +0 -30
- package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue2.js +0 -4
- package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.js +0 -58
- package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue2.js +0 -4
- package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.js +0 -29
- package/dist/components/Sidebar/Actions/EditSidebarListElement.vue2.js +0 -4
- package/dist/components/Sidebar/Actions/SidebarListElementForm.vue.js +0 -46
- package/dist/components/Sidebar/Actions/SidebarListElementForm.vue2.js +0 -4
- package/dist/components/Sidebar/Sidebar.vue.js +0 -7
- package/dist/components/Sidebar/Sidebar.vue2.js +0 -63
- package/dist/components/Sidebar/SidebarButton.vue.js +0 -33
- package/dist/components/Sidebar/SidebarButton.vue2.js +0 -4
- package/dist/components/Sidebar/SidebarList.vue.js +0 -12
- package/dist/components/Sidebar/SidebarListElement.vue.js +0 -8
- package/dist/components/Sidebar/SidebarListElement.vue2.js +0 -94
- package/dist/components/Sidebar/SidebarListElementActions.vue.js +0 -86
- package/dist/components/Sidebar/SidebarListElementActions.vue2.js +0 -4
- package/dist/components/Sidebar/SidebarToggle.vue.js +0 -49
- package/dist/components/Sidebar/SidebarToggle.vue2.js +0 -4
- package/dist/components/TopNav/TopNav.vue.js +0 -210
- package/dist/components/TopNav/TopNav.vue2.js +0 -4
- package/dist/components/TopNav/TopNavItem.vue.js +0 -7
- package/dist/components/TopNav/TopNavItem.vue2.js +0 -138
- package/dist/components/ViewLayout/ViewLayout.vue.js +0 -18
- package/dist/components/ViewLayout/ViewLayout.vue2.js +0 -4
- package/dist/components/ViewLayout/ViewLayoutCollapse.vue.js +0 -92
- package/dist/components/ViewLayout/ViewLayoutCollapse.vue2.js +0 -4
- package/dist/components/ViewLayout/ViewLayoutContent.vue.js +0 -12
- package/dist/components/ViewLayout/ViewLayoutSection.vue.js +0 -23
- package/dist/components/ViewLayout/ViewLayoutSection.vue2.js +0 -4
- package/dist/constants.js +0 -40
- package/dist/data/httpHeaders.js +0 -537
- package/dist/hooks/useAnalytics.js +0 -11
- package/dist/hooks/useClientConfig.js +0 -7
- package/dist/hooks/useFileDialog.js +0 -21
- package/dist/hooks/useLayout.js +0 -8
- package/dist/hooks/useResponseBody.js +0 -20
- package/dist/hooks/useSidebar.js +0 -28
- package/dist/layouts/App/ApiClientApp.vue.js +0 -70
- package/dist/layouts/App/ApiClientApp.vue3.js +0 -5
- package/dist/layouts/App/MainLayout.vue.js +0 -26
- package/dist/layouts/App/MainLayout.vue2.js +0 -4
- package/dist/layouts/App/create-api-client-app.js +0 -35
- package/dist/layouts/App/hotkeys.js +0 -21
- package/dist/layouts/Modal/ApiClientModal.vue.js +0 -30
- package/dist/layouts/Modal/ApiClientModal.vue2.js +0 -4
- package/dist/layouts/Modal/create-api-client-modal.js +0 -32
- package/dist/layouts/Web/ApiClientWeb.vue.js +0 -64
- package/dist/layouts/Web/ApiClientWeb.vue3.js +0 -5
- package/dist/layouts/Web/create-api-client-web.js +0 -32
- package/dist/libs/create-client.js +0 -189
- package/dist/libs/electron.js +0 -4
- package/dist/libs/env-helpers.js +0 -6
- package/dist/libs/environment-parser.js +0 -18
- package/dist/libs/errors.js +0 -16
- package/dist/libs/event-bus.js +0 -32
- package/dist/libs/extractAttachmentFilename.js +0 -18
- package/dist/libs/find-request.js +0 -23
- package/dist/libs/formatters.js +0 -10
- package/dist/libs/get-request-uid-by-path-method.js +0 -18
- package/dist/libs/getOpenApiDocumentDetails.js +0 -40
- package/dist/libs/hot-keys.js +0 -44
- package/dist/libs/importers/curl.js +0 -53
- package/dist/libs/isUrl.js +0 -7
- package/dist/libs/local-storage.js +0 -41
- package/dist/libs/normalize-headers.js +0 -27
- package/dist/libs/parse-curl.js +0 -59
- package/dist/libs/postman.js +0 -37
- package/dist/libs/send-request/build-request-security.js +0 -35
- package/dist/libs/send-request/create-fetch-body.js +0 -25
- package/dist/libs/send-request/create-fetch-headers.js +0 -11
- package/dist/libs/send-request/create-fetch-query-params.js +0 -33
- package/dist/libs/send-request/create-request-operation.js +0 -140
- package/dist/libs/send-request/decode-buffer.js +0 -9
- package/dist/libs/send-request/set-request-cookies.js +0 -58
- package/dist/libs/string-template.js +0 -42
- package/dist/libs/validate-parameters.js +0 -16
- package/dist/plugins/hooks/usePluginManager.js +0 -10
- package/dist/plugins/plugin-manager.js +0 -26
- package/dist/routes.js +0 -210
- package/dist/store/active-entities.js +0 -118
- package/dist/store/collections.js +0 -73
- package/dist/store/cookies.js +0 -13
- package/dist/store/environment.js +0 -32
- package/dist/store/events.js +0 -35
- package/dist/store/import-spec.js +0 -55
- package/dist/store/request-example.js +0 -43
- package/dist/store/requests.js +0 -97
- package/dist/store/router-params.js +0 -22
- package/dist/store/security-schemes.js +0 -55
- package/dist/store/servers.js +0 -39
- package/dist/store/store.js +0 -144
- package/dist/store/tags.js +0 -45
- package/dist/store/workspace.js +0 -52
- package/dist/v2/blocks/operation-block/OperationBlock.vue.js +0 -242
- package/dist/v2/blocks/operation-block/OperationBlock.vue2.js +0 -4
- package/dist/v2/blocks/operation-block/components/Header.vue.js +0 -7
- package/dist/v2/blocks/operation-block/components/Header.vue2.js +0 -100
- package/dist/v2/blocks/operation-block/helpers/build-request-body.js +0 -40
- package/dist/v2/blocks/operation-block/helpers/build-request-cookie-header.js +0 -31
- package/dist/v2/blocks/operation-block/helpers/build-request-parameters.js +0 -107
- package/dist/v2/blocks/operation-block/helpers/build-request-security.js +0 -46
- package/dist/v2/blocks/operation-block/helpers/build-request.js +0 -70
- package/dist/v2/blocks/operation-block/helpers/de-serialize-parameter.js +0 -25
- package/dist/v2/blocks/operation-block/helpers/decode-buffer.js +0 -9
- package/dist/v2/blocks/operation-block/helpers/filter-global-cookies.js +0 -14
- package/dist/v2/blocks/operation-block/helpers/get-cookie-header-keys.js +0 -4
- package/dist/v2/blocks/operation-block/helpers/get-environment-variables.js +0 -7
- package/dist/v2/blocks/operation-block/helpers/get-example.js +0 -36
- package/dist/v2/blocks/operation-block/helpers/get-resolved-url.js +0 -17
- package/dist/v2/blocks/operation-block/helpers/get-selected-body-content-type.js +0 -4
- package/dist/v2/blocks/operation-block/helpers/get-server-url.js +0 -12
- package/dist/v2/blocks/operation-block/helpers/har-to-fetch-request.js +0 -31
- package/dist/v2/blocks/operation-block/helpers/har-to-fetch-response.js +0 -43
- package/dist/v2/blocks/operation-block/helpers/response-cache.js +0 -12
- package/dist/v2/blocks/operation-block/helpers/send-request.js +0 -122
- package/dist/v2/blocks/operation-block/helpers/serialize-parameter.js +0 -49
- package/dist/v2/blocks/operation-block/helpers/validate-path-parameters.js +0 -17
- package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.js +0 -56
- package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue2.js +0 -4
- package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.js +0 -30
- package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue2.js +0 -4
- package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.js +0 -7
- package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue2.js +0 -227
- package/dist/v2/blocks/operation-code-sample/helpers/find-client.js +0 -22
- package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.js +0 -27
- package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js +0 -40
- package/dist/v2/blocks/operation-code-sample/helpers/get-clients.js +0 -20
- package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.js +0 -4
- package/dist/v2/blocks/operation-code-sample/helpers/get-example-from-schema.js +0 -302
- package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.js +0 -28
- package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.js +0 -10
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js +0 -67
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js +0 -66
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.js +0 -172
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.js +0 -55
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.js +0 -18
- package/dist/v2/blocks/request-block/RequestBlock.vue.js +0 -7
- package/dist/v2/blocks/request-block/RequestBlock.vue2.js +0 -347
- package/dist/v2/blocks/request-block/components/RequestBody.vue.js +0 -7
- package/dist/v2/blocks/request-block/components/RequestBody.vue2.js +0 -191
- package/dist/v2/blocks/request-block/components/RequestBodyForm.vue.js +0 -84
- package/dist/v2/blocks/request-block/components/RequestBodyForm.vue2.js +0 -4
- package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.js +0 -135
- package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue2.js +0 -4
- package/dist/v2/blocks/request-block/components/RequestParams.vue.js +0 -78
- package/dist/v2/blocks/request-block/components/RequestParams.vue2.js +0 -4
- package/dist/v2/blocks/request-block/components/RequestTable.vue.js +0 -7
- package/dist/v2/blocks/request-block/components/RequestTable.vue2.js +0 -74
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.js +0 -204
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue2.js +0 -4
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.js +0 -7
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue2.js +0 -63
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js +0 -55
- package/dist/v2/blocks/request-block/helpers/files.js +0 -7
- package/dist/v2/blocks/request-block/helpers/get-default-headers.js +0 -26
- package/dist/v2/blocks/request-block/helpers/get-form-body-rows.js +0 -29
- package/dist/v2/blocks/request-block/helpers/get-parameter-content.js +0 -9
- package/dist/v2/blocks/request-block/helpers/get-parameter-schema.js +0 -6
- package/dist/v2/blocks/request-block/helpers/get-request-body-example.js +0 -16
- package/dist/v2/blocks/request-block/helpers/group-by.js +0 -10
- package/dist/v2/blocks/request-block/helpers/is-param-disabled.js +0 -7
- package/dist/v2/blocks/request-block/helpers/validate-parameter.js +0 -32
- package/dist/v2/blocks/response-block/ResponseBlock.vue.js +0 -7
- package/dist/v2/blocks/response-block/ResponseBlock.vue2.js +0 -180
- package/dist/v2/blocks/response-block/components/Headers.vue.js +0 -96
- package/dist/v2/blocks/response-block/components/Headers.vue2.js +0 -4
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.js +0 -7
- package/dist/v2/blocks/response-block/components/ResponseBody.vue2.js +0 -87
- package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue.js +0 -36
- package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue2.js +0 -4
- package/dist/v2/blocks/response-block/components/ResponseBodyInfo.vue.js +0 -14
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js +0 -7
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue2.js +0 -63
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.js +0 -7
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue2.js +0 -41
- package/dist/v2/blocks/response-block/components/ResponseBodyStreaming.vue.js +0 -94
- package/dist/v2/blocks/response-block/components/ResponseBodyStreaming.vue2.js +0 -4
- package/dist/v2/blocks/response-block/components/ResponseBodyToggle.vue.js +0 -25
- package/dist/v2/blocks/response-block/components/ResponseBodyToggle.vue2.js +0 -4
- package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.js +0 -52
- package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue3.js +0 -5
- package/dist/v2/blocks/response-block/components/ResponseCookies.vue.js +0 -54
- package/dist/v2/blocks/response-block/components/ResponseCookies.vue2.js +0 -4
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js +0 -7
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue2.js +0 -79
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.js +0 -7
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue2.js +0 -46
- package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.js +0 -67
- package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue2.js +0 -4
- package/dist/v2/blocks/response-block/helpers/extract-filename.js +0 -18
- package/dist/v2/blocks/response-block/helpers/get-content-length.js +0 -12
- package/dist/v2/blocks/response-block/helpers/media-types.js +0 -126
- package/dist/v2/blocks/response-block/helpers/parse-set-cookie.js +0 -12
- package/dist/v2/blocks/response-block/helpers/process-response-body.js +0 -16
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js +0 -7
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue2.js +0 -208
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.js +0 -7
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue2.js +0 -95
- package/dist/v2/blocks/scalar-address-bar-block/components/EnvironmentSelector.vue.js +0 -145
- package/dist/v2/blocks/scalar-address-bar-block/components/EnvironmentSelector.vue2.js +0 -4
- package/dist/v2/blocks/scalar-address-bar-block/components/httpStatusCodeColors.js +0 -38
- package/dist/v2/blocks/scalar-address-bar-block/hooks/use-loading-animation.js +0 -25
- package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.js +0 -184
- package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue.js +0 -51
- package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.js +0 -330
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js +0 -7
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue2.js +0 -76
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.js +0 -165
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue3.js +0 -5
- package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue.js +0 -91
- package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.js +0 -83
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue.js +0 -46
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.js +0 -244
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue2.js +0 -4
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/auth-options.js +0 -97
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/extract-security-scheme-secrets.js +0 -135
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.js +0 -35
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/is-auth-optional.js +0 -7
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/merge-security.js +0 -23
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js +0 -139
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/openid-discovery-to-flows.js +0 -27
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/security-scheme.js +0 -64
- package/dist/v2/components/callout/Callout.vue.js +0 -7
- package/dist/v2/components/callout/Callout.vue2.js +0 -43
- package/dist/v2/components/code-input/CodeInput.vue.js +0 -8
- package/dist/v2/components/code-input/CodeInput.vue2.js +0 -213
- package/dist/v2/components/code-input/code-variable-widget.js +0 -106
- package/dist/v2/components/data-table/DataTable.vue.js +0 -38
- package/dist/v2/components/data-table/DataTable.vue2.js +0 -4
- package/dist/v2/components/data-table/DataTableCell.vue.js +0 -26
- package/dist/v2/components/data-table/DataTableCell.vue2.js +0 -4
- package/dist/v2/components/data-table/DataTableCheckbox.vue.js +0 -53
- package/dist/v2/components/data-table/DataTableCheckbox.vue2.js +0 -4
- package/dist/v2/components/data-table/DataTableHeader.vue.js +0 -18
- package/dist/v2/components/data-table/DataTableHeader.vue2.js +0 -4
- package/dist/v2/components/data-table/DataTableInput.vue.js +0 -7
- package/dist/v2/components/data-table/DataTableInput.vue2.js +0 -121
- package/dist/v2/components/data-table/DataTableInputSelect.vue.js +0 -149
- package/dist/v2/components/data-table/DataTableInputSelect.vue2.js +0 -4
- package/dist/v2/components/data-table/DataTableRow.vue.js +0 -12
- package/dist/v2/components/data-table/DataTableText.vue.js +0 -23
- package/dist/v2/components/data-table/DataTableText.vue2.js +0 -4
- package/dist/v2/components/forms/ConfirmationForm.vue.js +0 -45
- package/dist/v2/components/forms/ConfirmationForm.vue2.js +0 -4
- package/dist/v2/components/layout/CollapsibleSection.vue.js +0 -89
- package/dist/v2/components/layout/CollapsibleSection.vue2.js +0 -4
- package/dist/v2/components/layout/ValueEmitter.vue.js +0 -21
- package/dist/v2/components/layout/ValueEmitter.vue2.js +0 -4
- package/dist/v2/components/modals/DeleteModal.vue.js +0 -31
- package/dist/v2/components/modals/DeleteModal.vue2.js +0 -4
- package/dist/v2/components/modals/ModalClientContainer.vue.js +0 -7
- package/dist/v2/components/modals/ModalClientContainer.vue2.js +0 -60
- package/dist/v2/components/resize/Resize.vue.js +0 -8
- package/dist/v2/components/resize/Resize.vue2.js +0 -36
- package/dist/v2/components/resize/use-split-resize.js +0 -57
- package/dist/v2/components/server/ServerDropdown.vue.js +0 -91
- package/dist/v2/components/server/ServerDropdown.vue2.js +0 -4
- package/dist/v2/components/server/ServerDropdownItem.vue.js +0 -7
- package/dist/v2/components/server/ServerDropdownItem.vue2.js +0 -49
- package/dist/v2/components/sidebar/Sidebar.vue.js +0 -115
- package/dist/v2/components/sidebar/Sidebar.vue2.js +0 -4
- package/dist/v2/components/sidebar/SidebarMenu.vue.js +0 -52
- package/dist/v2/components/sidebar/SidebarMenu.vue2.js +0 -4
- package/dist/v2/components/sidebar/SidebarToggle.vue.js +0 -52
- package/dist/v2/components/sidebar/SidebarToggle.vue2.js +0 -4
- package/dist/v2/features/app/App.vue.js +0 -152
- package/dist/v2/features/app/App.vue3.js +0 -5
- package/dist/v2/features/app/app-events.js +0 -251
- package/dist/v2/features/app/app-state.js +0 -415
- package/dist/v2/features/app/components/AppSidebar.vue.js +0 -7
- package/dist/v2/features/app/components/AppSidebar.vue2.js +0 -304
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.js +0 -56
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue2.js +0 -4
- package/dist/v2/features/app/components/DesktopTab.vue.js +0 -7
- package/dist/v2/features/app/components/DesktopTab.vue2.js +0 -134
- package/dist/v2/features/app/components/DesktopTabs.vue.js +0 -56
- package/dist/v2/features/app/components/DesktopTabs.vue2.js +0 -4
- package/dist/v2/features/app/components/DownloadAppButton.vue.js +0 -7
- package/dist/v2/features/app/components/DownloadAppButton.vue2.js +0 -19
- package/dist/v2/features/app/components/SidebarItemMenu.vue.js +0 -185
- package/dist/v2/features/app/components/SidebarItemMenu.vue2.js +0 -4
- package/dist/v2/features/app/components/SplashScreen.vue.js +0 -7
- package/dist/v2/features/app/components/SplashScreen.vue2.js +0 -18
- package/dist/v2/features/app/helpers/create-api-client-app.js +0 -36
- package/dist/v2/features/app/helpers/filter-workspaces.js +0 -5
- package/dist/v2/features/app/helpers/get-route-param.js +0 -9
- package/dist/v2/features/app/helpers/group-workspaces.js +0 -23
- package/dist/v2/features/app/helpers/routes.js +0 -157
- package/dist/v2/features/app/hooks/use-document-watcher.js +0 -66
- package/dist/v2/features/app/hooks/use-theme.js +0 -48
- package/dist/v2/features/collection/DocumentCollection.vue.js +0 -336
- package/dist/v2/features/collection/DocumentCollection.vue3.js +0 -5
- package/dist/v2/features/collection/OperationCollection.vue.js +0 -86
- package/dist/v2/features/collection/OperationCollection.vue2.js +0 -4
- package/dist/v2/features/collection/WorkspaceCollection.vue.js +0 -68
- package/dist/v2/features/collection/WorkspaceCollection.vue2.js +0 -4
- package/dist/v2/features/collection/components/Authentication.vue.js +0 -7
- package/dist/v2/features/collection/components/Authentication.vue2.js +0 -154
- package/dist/v2/features/collection/components/Cookies.vue.js +0 -52
- package/dist/v2/features/collection/components/Cookies.vue2.js +0 -4
- package/dist/v2/features/collection/components/Editor/Editor.vue.js +0 -7
- package/dist/v2/features/collection/components/Editor/Editor.vue2.js +0 -344
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.js +0 -78
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue2.js +0 -4
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.js +0 -83
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue2.js +0 -4
- package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.js +0 -10
- package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.js +0 -5
- package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.js +0 -5
- package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.js +0 -21
- package/dist/v2/features/collection/components/Editor/helpers/stringify-document.js +0 -5
- package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.js +0 -25
- package/dist/v2/features/collection/components/Environment.vue.js +0 -54
- package/dist/v2/features/collection/components/Environment.vue2.js +0 -4
- package/dist/v2/features/collection/components/Form.vue.js +0 -78
- package/dist/v2/features/collection/components/Form.vue2.js +0 -4
- package/dist/v2/features/collection/components/LabelInput.vue.js +0 -7
- package/dist/v2/features/collection/components/LabelInput.vue2.js +0 -35
- package/dist/v2/features/collection/components/Overview.vue.js +0 -7
- package/dist/v2/features/collection/components/Overview.vue2.js +0 -208
- package/dist/v2/features/collection/components/Servers.vue.js +0 -210
- package/dist/v2/features/collection/components/Servers.vue2.js +0 -4
- package/dist/v2/features/collection/components/Settings.vue.js +0 -61
- package/dist/v2/features/collection/components/Settings.vue2.js +0 -4
- package/dist/v2/features/collection/components/SyncConflictResolutionEditor.vue.js +0 -7
- package/dist/v2/features/collection/components/SyncConflictResolutionEditor.vue2.js +0 -136
- package/dist/v2/features/collection/components/Tabs.vue.js +0 -44
- package/dist/v2/features/collection/components/Tabs.vue2.js +0 -4
- package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.js +0 -13
- package/dist/v2/features/command-palette/TheCommandPalette.vue.js +0 -7
- package/dist/v2/features/command-palette/TheCommandPalette.vue2.js +0 -152
- package/dist/v2/features/command-palette/components/CommandActionForm.vue.js +0 -48
- package/dist/v2/features/command-palette/components/CommandActionForm.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandActionInput.vue.js +0 -52
- package/dist/v2/features/command-palette/components/CommandActionInput.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.js +0 -211
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js +0 -182
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue2.js +0 -115
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.js +0 -78
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.js +0 -221
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.js +0 -114
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue2.js +0 -4
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.js +0 -40
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue2.js +0 -4
- package/dist/v2/features/command-palette/helpers/generate-unique-slug.js +0 -11
- package/dist/v2/features/command-palette/helpers/get-openapi-document-details.js +0 -31
- package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.js +0 -11
- package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js +0 -76
- package/dist/v2/features/command-palette/helpers/get-postman-document-details.js +0 -18
- package/dist/v2/features/command-palette/helpers/import-document-to-workspace.js +0 -33
- package/dist/v2/features/command-palette/helpers/is-postman-collection.js +0 -11
- package/dist/v2/features/command-palette/helpers/load-document-from-source.js +0 -52
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.js +0 -139
- package/dist/v2/features/editor/config.js +0 -16
- package/dist/v2/features/editor/helpers/configure-language-support.js +0 -39
- package/dist/v2/features/editor/helpers/ensure-monaco-environment.js +0 -20
- package/dist/v2/features/editor/helpers/json/create-json-model.js +0 -19
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js +0 -9
- package/dist/v2/features/editor/helpers/json/json-ast.js +0 -24
- package/dist/v2/features/editor/helpers/json/json-pointer-links.js +0 -72
- package/dist/v2/features/editor/helpers/json/json-pointer-path.js +0 -21
- package/dist/v2/features/editor/helpers/range-to-whole-line.js +0 -8
- package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.js +0 -56
- package/dist/v2/features/editor/helpers/theme/load-css-variables.js +0 -21
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.js +0 -19
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.js +0 -50
- package/dist/v2/features/editor/hooks/use-editor-markers.js +0 -34
- package/dist/v2/features/editor/hooks/use-editor.js +0 -107
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.js +0 -27
- package/dist/v2/features/editor/hooks/use-three-way-merge-editor.js +0 -316
- package/dist/v2/features/editor/schemas/openapi-3.1-schema.json.js +0 -25
- package/dist/v2/features/environments/EnvironmentsList.vue.js +0 -68
- package/dist/v2/features/environments/EnvironmentsList.vue2.js +0 -4
- package/dist/v2/features/environments/components/Environment.vue.js +0 -66
- package/dist/v2/features/environments/components/Environment.vue2.js +0 -4
- package/dist/v2/features/environments/components/EnvironmentColors.vue.js +0 -121
- package/dist/v2/features/environments/components/EnvironmentColors.vue2.js +0 -4
- package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.js +0 -85
- package/dist/v2/features/environments/components/EnvironmentCreateModal.vue2.js +0 -4
- package/dist/v2/features/environments/components/EnvironmentDeleteModal.vue.js +0 -53
- package/dist/v2/features/environments/components/EnvironmentDeleteModal.vue2.js +0 -4
- package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.js +0 -109
- package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue2.js +0 -4
- package/dist/v2/features/environments/components/EnvironmentVariablesTable.vue.js +0 -7
- package/dist/v2/features/environments/components/EnvironmentVariablesTable.vue2.js +0 -136
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.js +0 -7
- package/dist/v2/features/global-cookies/components/CookiesTable.vue2.js +0 -189
- package/dist/v2/features/modal/Modal.vue.js +0 -122
- package/dist/v2/features/modal/Modal.vue2.js +0 -4
- package/dist/v2/features/modal/helpers/create-api-client-modal.js +0 -89
- package/dist/v2/features/modal/helpers/map-hidden-clients-config.js +0 -36
- package/dist/v2/features/modal/helpers/resolve-route-parameters.js +0 -29
- package/dist/v2/features/modal/helpers/restore-workspace-state.js +0 -36
- package/dist/v2/features/modal/hooks/use-modal-sidebar.js +0 -93
- package/dist/v2/features/modal/modal-events.js +0 -44
- package/dist/v2/features/operation/Operation.vue.js +0 -126
- package/dist/v2/features/operation/Operation.vue2.js +0 -4
- package/dist/v2/features/operation/helpers/combine-params.js +0 -14
- package/dist/v2/features/operation/helpers/get-security-requirements.js +0 -4
- package/dist/v2/features/operation/helpers/get-selected-security.js +0 -18
- package/dist/v2/features/operation/helpers/get-selected-server.js +0 -4
- package/dist/v2/features/search/helpers/create-fuse-instance.js +0 -43
- package/dist/v2/features/search/helpers/create-search-index.js +0 -63
- package/dist/v2/features/search/hooks/use-search-index.js +0 -18
- package/dist/v2/features/settings/CollectionSettings.vue.js +0 -275
- package/dist/v2/features/settings/CollectionSettings.vue2.js +0 -4
- package/dist/v2/features/settings/DocumentSettings.vue.js +0 -115
- package/dist/v2/features/settings/DocumentSettings.vue2.js +0 -4
- package/dist/v2/features/settings/components/Appearance.vue.js +0 -88
- package/dist/v2/features/settings/components/Appearance.vue2.js +0 -4
- package/dist/v2/features/settings/components/Section.vue.js +0 -35
- package/dist/v2/features/settings/components/Section.vue2.js +0 -4
- package/dist/v2/features/settings/helpers/get-theme-colors.js +0 -16
- package/dist/v2/helpers/drag-handle-factory.js +0 -120
- package/dist/v2/helpers/generate-location-id.js +0 -10
- package/dist/v2/helpers/get-active-environment.js +0 -22
- package/dist/v2/helpers/get-active-proxy-url.js +0 -5
- package/dist/v2/helpers/get-servers.js +0 -66
- package/dist/v2/helpers/get-tab-details.js +0 -34
- package/dist/v2/helpers/handle-hotkeys.js +0 -54
- package/dist/v2/helpers/is-url.js +0 -5
- package/dist/v2/helpers/slugify.js +0 -4
- package/dist/v2/helpers/storage.js +0 -16
- package/dist/v2/hooks/use-color-mode.js +0 -24
- package/dist/v2/hooks/use-global-hot-keys.js +0 -11
- package/dist/v2/hooks/use-scroll-lock.js +0 -21
- package/dist/v2/workspace-events.js +0 -252
- package/dist/views/Collection/Collection.vue.js +0 -4
- package/dist/views/Collection/Collection.vue2.js +0 -49
- package/dist/views/Collection/CollectionAuthentication.vue.js +0 -7
- package/dist/views/Collection/CollectionAuthentication.vue2.js +0 -56
- package/dist/views/Collection/CollectionCookies.vue.js +0 -4
- package/dist/views/Collection/CollectionCookies.vue2.js +0 -16
- package/dist/views/Collection/CollectionEnvironment.vue.js +0 -5
- package/dist/views/Collection/CollectionEnvironment.vue2.js +0 -229
- package/dist/views/Collection/CollectionInfoForm.vue.js +0 -7
- package/dist/views/Collection/CollectionInfoForm.vue2.js +0 -63
- package/dist/views/Collection/CollectionNavigation.vue.js +0 -133
- package/dist/views/Collection/CollectionNavigation.vue2.js +0 -4
- package/dist/views/Collection/CollectionOverview.vue.js +0 -4
- package/dist/views/Collection/CollectionOverview.vue2.js +0 -34
- package/dist/views/Collection/CollectionScripts.vue.js +0 -4
- package/dist/views/Collection/CollectionScripts.vue2.js +0 -16
- package/dist/views/Collection/CollectionServerForm.vue.js +0 -75
- package/dist/views/Collection/CollectionServerForm.vue2.js +0 -4
- package/dist/views/Collection/CollectionServers.vue.js +0 -4
- package/dist/views/Collection/CollectionServers.vue2.js +0 -94
- package/dist/views/Collection/CollectionSettings.vue.js +0 -4
- package/dist/views/Collection/CollectionSettings.vue2.js +0 -118
- package/dist/views/Collection/CollectionSync.vue.js +0 -4
- package/dist/views/Collection/CollectionSync.vue2.js +0 -16
- package/dist/views/Collection/components/EnvironmentForm.vue.js +0 -7
- package/dist/views/Collection/components/EnvironmentForm.vue2.js +0 -270
- package/dist/views/Collection/components/MarkdownInput.vue.js +0 -7
- package/dist/views/Collection/components/MarkdownInput.vue2.js +0 -100
- package/dist/views/Components/CodeSnippet/CodeSnippet.vue.js +0 -50
- package/dist/views/Components/CodeSnippet/CodeSnippet.vue2.js +0 -4
- package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.js +0 -62
- package/dist/views/Components/CodeSnippet/helpers/get-har-request.js +0 -82
- package/dist/views/Components/CodeSnippet/helpers/get-snippet.js +0 -30
- package/dist/views/Cookies/CookieForm.vue.js +0 -34
- package/dist/views/Cookies/CookieForm.vue2.js +0 -4
- package/dist/views/Cookies/CookieModal.vue.js +0 -7
- package/dist/views/Cookies/CookieModal.vue2.js +0 -88
- package/dist/views/Cookies/Cookies.vue.js +0 -4
- package/dist/views/Cookies/Cookies.vue2.js +0 -162
- package/dist/views/Environment/Environment.vue.js +0 -4
- package/dist/views/Environment/Environment.vue2.js +0 -402
- package/dist/views/Environment/EnvironmentColorModal.vue.js +0 -42
- package/dist/views/Environment/EnvironmentColorModal.vue2.js +0 -4
- package/dist/views/Environment/EnvironmentColors.vue.js +0 -118
- package/dist/views/Environment/EnvironmentColors.vue2.js +0 -4
- package/dist/views/Environment/EnvironmentModal.vue.js +0 -131
- package/dist/views/Environment/EnvironmentModal.vue2.js +0 -4
- package/dist/views/Environment/EnvironmentVariableDropdown.vue.js +0 -129
- package/dist/views/Environment/EnvironmentVariableDropdown.vue2.js +0 -4
- package/dist/views/Environment/handle-drag.js +0 -32
- package/dist/views/Request/Request.vue.js +0 -7
- package/dist/views/Request/Request.vue2.js +0 -105
- package/dist/views/Request/RequestRoot.vue.js +0 -7
- package/dist/views/Request/RequestRoot.vue2.js +0 -123
- package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.js +0 -52
- package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.js +0 -246
- package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.js +0 -135
- package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue2.js +0 -209
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue2.js +0 -116
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.js +0 -50
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.js +0 -219
- package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.js +0 -28
- package/dist/views/Request/RequestSection/RequestBody.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestBody.vue2.js +0 -451
- package/dist/views/Request/RequestSection/RequestCodeExample.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestCodeExample.vue2.js +0 -170
- package/dist/views/Request/RequestSection/RequestParams.vue.js +0 -162
- package/dist/views/Request/RequestSection/RequestParams.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestPathParams.vue.js +0 -96
- package/dist/views/Request/RequestSection/RequestPathParams.vue2.js +0 -4
- package/dist/views/Request/RequestSection/RequestSection.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestSection.vue2.js +0 -247
- package/dist/views/Request/RequestSection/RequestTable.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestTable.vue2.js +0 -227
- package/dist/views/Request/RequestSection/RequestTableTooltip.vue.js +0 -7
- package/dist/views/Request/RequestSection/RequestTableTooltip.vue2.js +0 -61
- package/dist/views/Request/RequestSection/helpers/filter-security-requirements.js +0 -29
- package/dist/views/Request/RequestSection/helpers/getting-started.js +0 -13
- package/dist/views/Request/RequestSection/helpers/update-scheme.js +0 -16
- package/dist/views/Request/RequestSidebar.vue.js +0 -7
- package/dist/views/Request/RequestSidebar.vue2.js +0 -341
- package/dist/views/Request/RequestSidebarItem.vue.js +0 -8
- package/dist/views/Request/RequestSidebarItem.vue2.js +0 -464
- package/dist/views/Request/RequestSidebarItemMenu.vue.js +0 -7
- package/dist/views/Request/RequestSidebarItemMenu.vue2.js +0 -236
- package/dist/views/Request/RequestSubpageHeader.vue.js +0 -7
- package/dist/views/Request/RequestSubpageHeader.vue2.js +0 -79
- package/dist/views/Request/ResponseSection/RequestHeaders.vue.js +0 -96
- package/dist/views/Request/ResponseSection/RequestHeaders.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseBody.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseBody.vue2.js +0 -83
- package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.js +0 -36
- package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.js +0 -14
- package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue2.js +0 -63
- package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue2.js +0 -42
- package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.js +0 -74
- package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.js +0 -25
- package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.js +0 -50
- package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue3.js +0 -5
- package/dist/views/Request/ResponseSection/ResponseCookies.vue.js +0 -51
- package/dist/views/Request/ResponseSection/ResponseCookies.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseEmpty.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseEmpty.vue2.js +0 -103
- package/dist/views/Request/ResponseSection/ResponseHeaders.vue.js +0 -96
- package/dist/views/Request/ResponseSection/ResponseHeaders.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue2.js +0 -38
- package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.js +0 -67
- package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue2.js +0 -4
- package/dist/views/Request/ResponseSection/ResponseSection.vue.js +0 -7
- package/dist/views/Request/ResponseSection/ResponseSection.vue2.js +0 -189
- package/dist/views/Request/components/WorkspaceDropdown.vue.js +0 -182
- package/dist/views/Request/components/WorkspaceDropdown.vue2.js +0 -4
- package/dist/views/Request/consts/mediaTypes.js +0 -131
- package/dist/views/Request/consts/new-auth-options.js +0 -100
- package/dist/views/Request/handle-drag.js +0 -42
- package/dist/views/Request/hooks/useOpenApiWatcher.js +0 -57
- package/dist/views/Request/libs/auth.js +0 -52
- package/dist/views/Request/libs/oauth2.js +0 -127
- package/dist/views/Request/libs/request.js +0 -40
- package/dist/views/Request/libs/watch-mode.js +0 -337
- package/dist/views/Settings/Settings.vue.js +0 -4
- package/dist/views/Settings/Settings.vue2.js +0 -29
- package/dist/views/Settings/SettingsGeneral.vue.js +0 -286
- package/dist/views/Settings/SettingsGeneral.vue2.js +0 -4
- package/dist/views/Settings/components/SettingsAppearance.vue.js +0 -85
- package/dist/views/Settings/components/SettingsAppearance.vue2.js +0 -4
- package/dist/views/Settings/components/SettingsSection.vue.js +0 -24
- package/dist/views/Settings/components/SettingsSection.vue2.js +0 -4
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
import { onScopeDispose, toValue, watch } from "vue";
|
|
2
|
+
import EditorWorker from "monaco-editor/esm/vs/editor/editor.worker.js?worker";
|
|
3
|
+
import JsonWorker from "monaco-editor/esm/vs/language/json/json.worker.js?worker";
|
|
4
|
+
import YamlWorker from "monaco-yaml/yaml.worker.js?worker";
|
|
5
|
+
import * as monaco from "monaco-editor";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import "monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css";
|
|
8
|
+
import "monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.css";
|
|
9
|
+
import { parseJsonPointerSegments } from "@scalar/helpers/json/parse-json-pointer-segments";
|
|
10
|
+
//#region src/v2/features/editor/helpers/ensure-monaco-environment.ts
|
|
11
|
+
/**
|
|
12
|
+
* This function ensures that the Monaco Editor's global environment is configured
|
|
13
|
+
* to provide the correct web worker for each language (json, yaml, or the default editor).
|
|
14
|
+
*/
|
|
15
|
+
var ensureMonacoEnvironment = () => {
|
|
16
|
+
globalThis.MonacoEnvironment ??= { getWorker(_workerId, label) {
|
|
17
|
+
switch (label) {
|
|
18
|
+
case "json": return new JsonWorker();
|
|
19
|
+
case "yaml": return new YamlWorker();
|
|
20
|
+
default: return new EditorWorker();
|
|
21
|
+
}
|
|
22
|
+
} };
|
|
23
|
+
};
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/v2/features/editor/helpers/theme/load-css-variables.ts
|
|
26
|
+
/**
|
|
27
|
+
* Extracts CSS custom properties (variables) from a given CSS string
|
|
28
|
+
* for .light-mode and .dark-mode selectors and returns an object
|
|
29
|
+
* with 'light' and 'dark' keys containing the filtered variables.
|
|
30
|
+
* Only variables matching hex color values (#RRGGBB or #RRGGBBAA) are accepted.
|
|
31
|
+
*
|
|
32
|
+
* @param css - The CSS string to parse.
|
|
33
|
+
* @returns An object with `light` and `dark` properties containing the extracted CSS variables.
|
|
34
|
+
*/
|
|
35
|
+
var loadCssVariables = async (css) => {
|
|
36
|
+
const sheet = new CSSStyleSheet();
|
|
37
|
+
await sheet.replace(css);
|
|
38
|
+
return Array.from(sheet.cssRules).reduce((acc, cur) => {
|
|
39
|
+
if (!(cur instanceof CSSStyleRule)) return acc;
|
|
40
|
+
const styles = Object.values(cur.style).reduce((style, name) => {
|
|
41
|
+
if (!name.startsWith("--")) return style;
|
|
42
|
+
const value = z.string().regex(/^(?:#(?:[0-9A-F]{6}|[0-9A-F]{8}))$/i).safeParse(cur.style.getPropertyValue(name).toUpperCase().trim());
|
|
43
|
+
if (value.error) return style;
|
|
44
|
+
style[name] = value.data;
|
|
45
|
+
return style;
|
|
46
|
+
}, {});
|
|
47
|
+
if (cur.selectorText.includes(".light-mode")) acc.light = {
|
|
48
|
+
...acc.light,
|
|
49
|
+
...styles
|
|
50
|
+
};
|
|
51
|
+
if (cur.selectorText.includes(".dark-mode")) acc.dark = {
|
|
52
|
+
...acc.dark,
|
|
53
|
+
...styles
|
|
54
|
+
};
|
|
55
|
+
return acc;
|
|
56
|
+
}, {
|
|
57
|
+
light: {},
|
|
58
|
+
dark: {}
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
//#endregion
|
|
62
|
+
//#region src/v2/features/editor/helpers/theme/apply-scalar-theme.ts
|
|
63
|
+
var THEME_NAME = "scalar-theme";
|
|
64
|
+
/**
|
|
65
|
+
* Applies a custom Scalar theme to the Monaco editor.
|
|
66
|
+
*
|
|
67
|
+
* This function loads CSS variables for either dark or light mode, maps the colors to Monaco's editor theme keys,
|
|
68
|
+
* and then applies the new theme. Theme color tokens are resolved from CSS custom properties.
|
|
69
|
+
*
|
|
70
|
+
* Example usage:
|
|
71
|
+
*
|
|
72
|
+
* await applyScalarTheme('scalar', true); // Apply dark mode
|
|
73
|
+
* await applyScalarTheme('scalar', false); // Apply light mode
|
|
74
|
+
*
|
|
75
|
+
* @param theme - The theme string key to load variables for (e.g. 'scalar').
|
|
76
|
+
* @param isDarkMode - Whether to use dark or light variables.
|
|
77
|
+
*/
|
|
78
|
+
var applyScalarTheme = async (theme, isDarkMode) => {
|
|
79
|
+
const allVars = await loadCssVariables(theme);
|
|
80
|
+
const vars = isDarkMode ? allVars.dark : allVars.light;
|
|
81
|
+
/**
|
|
82
|
+
* Build a colors object for Monaco from the variable map.
|
|
83
|
+
* Only assign if the variable exists in the loaded vars.
|
|
84
|
+
*/
|
|
85
|
+
const colors = Object.fromEntries(Object.entries({
|
|
86
|
+
"editor.background": "--scalar-background-1",
|
|
87
|
+
"editor.foreground": "--scalar-color-1",
|
|
88
|
+
"editorLineNumber.foreground": "--scalar-color-3",
|
|
89
|
+
"editorLineNumber.activeForeground": "--scalar-color-1",
|
|
90
|
+
"editorLineHighlight.background": "--scalar-background-2",
|
|
91
|
+
"editorCursor.foreground": "--scalar-color-1",
|
|
92
|
+
"editorCursor.background": "--scalar-background-1",
|
|
93
|
+
"editor.selectionBackground": "--scalar-background-3",
|
|
94
|
+
"editor.inactiveSelectionBackground": "--scalar-background-3",
|
|
95
|
+
"editorIndentGuide.background": "--scalar-background-3",
|
|
96
|
+
"editorIndentGuide.activeBackground": "--scalar-background-2",
|
|
97
|
+
"editorWhitespace.foreground": "--scalar-border-color",
|
|
98
|
+
"editorBracketMatch.background": "--scalar-background-3",
|
|
99
|
+
"editorBracketMatch.border": "--scalar-color-accent",
|
|
100
|
+
"editor.selectionHighlightBackground": "--scalar-background-3",
|
|
101
|
+
"editor.hoverHighlightBackground": "--scalar-background-3",
|
|
102
|
+
"editorLink.activeForeground": "--scalar-color-3",
|
|
103
|
+
"editorOverviewRuler.border": "--scalar-border-color"
|
|
104
|
+
}).filter(([_, cssVar]) => !!vars[cssVar]).map(([prop, cssVar]) => [prop, vars[cssVar]]));
|
|
105
|
+
monaco.editor.defineTheme(THEME_NAME, {
|
|
106
|
+
base: isDarkMode ? "vs-dark" : "vs",
|
|
107
|
+
inherit: true,
|
|
108
|
+
rules: [
|
|
109
|
+
{
|
|
110
|
+
token: "",
|
|
111
|
+
foreground: vars["--scalar-color-3"]
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
token: "comment",
|
|
115
|
+
foreground: vars["--scalar-color-2"],
|
|
116
|
+
fontStyle: "italic"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
token: "keyword",
|
|
120
|
+
foreground: vars["--scalar-color-accent"],
|
|
121
|
+
fontStyle: "bold"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
token: "number",
|
|
125
|
+
foreground: vars["--scalar-color-purple"]
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
token: "string",
|
|
129
|
+
foreground: vars["--scalar-color-2"]
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
token: "delimiter",
|
|
133
|
+
foreground: vars["--scalar-color-3"]
|
|
134
|
+
}
|
|
135
|
+
],
|
|
136
|
+
colors
|
|
137
|
+
});
|
|
138
|
+
monaco.editor.setTheme(THEME_NAME);
|
|
139
|
+
};
|
|
140
|
+
//#endregion
|
|
141
|
+
//#region src/v2/features/editor/config.ts
|
|
142
|
+
/**
|
|
143
|
+
* Configures the Monaco editor with custom Scala theme settings.
|
|
144
|
+
* Applies the theme whenever the theme or dark mode value changes.
|
|
145
|
+
* In development mode, ensures Monaco environment is configured (worker setup handled by Vite config).
|
|
146
|
+
*/
|
|
147
|
+
var useMonacoEditorConfiguration = ({ theme, darkMode }) => {
|
|
148
|
+
ensureMonacoEnvironment();
|
|
149
|
+
watch([() => toValue(theme), () => toValue(darkMode)], ([theme, darkMode]) => applyScalarTheme(theme, darkMode), { immediate: true });
|
|
150
|
+
};
|
|
151
|
+
//#endregion
|
|
152
|
+
//#region src/v2/features/editor/helpers/range-to-whole-line.ts
|
|
153
|
+
/**
|
|
154
|
+
* Expands a given range to cover whole lines within a Monaco editor model.
|
|
155
|
+
*
|
|
156
|
+
* Given a text model and an input range, this function calculates the smallest
|
|
157
|
+
* and largest lines touched by the range and returns a new range that starts at
|
|
158
|
+
* the beginning of the first touched line and ends at the end of the last touched line.
|
|
159
|
+
*
|
|
160
|
+
* @param model The Monaco editor text model.
|
|
161
|
+
* @param range The Monaco Range to expand.
|
|
162
|
+
* @returns A new Monaco Range covering the whole lines spanned by the given range.
|
|
163
|
+
*/
|
|
164
|
+
var rangeToWholeLine = (model, range) => {
|
|
165
|
+
const startOffset = model.getOffsetAt(range.getStartPosition());
|
|
166
|
+
const endOffset = model.getOffsetAt(range.getEndPosition());
|
|
167
|
+
const start = model.getPositionAt(startOffset);
|
|
168
|
+
const inclusiveEndOffset = Math.max(startOffset, endOffset - 1);
|
|
169
|
+
const end = model.getPositionAt(inclusiveEndOffset);
|
|
170
|
+
const startLine = Math.max(1, start.lineNumber);
|
|
171
|
+
const endLine = Math.max(startLine, end.lineNumber);
|
|
172
|
+
return new monaco.Range(startLine, 1, endLine, model.getLineMaxColumn(endLine));
|
|
173
|
+
};
|
|
174
|
+
//#endregion
|
|
175
|
+
//#region src/v2/features/editor/hooks/use-editor.ts
|
|
176
|
+
var HIGHLIGHT_DECORATION_CLASS = "json-focus-highlight";
|
|
177
|
+
/**
|
|
178
|
+
* Creates and manages a Monaco editor instance.
|
|
179
|
+
*
|
|
180
|
+
* @param element - The HTML element to mount the editor into.
|
|
181
|
+
* @param onChange - A callback function to handle changes to the editor's value.
|
|
182
|
+
* @param actions - An array of actions to add to the editor.
|
|
183
|
+
* @param readOnly - Whether the editor should be read-only.
|
|
184
|
+
* @param model - The editor model to use.
|
|
185
|
+
* @returns An object containing the editor instance, model, and utility functions.
|
|
186
|
+
*/
|
|
187
|
+
var useEditor = ({ element, onChange, actions, readOnly = false, model }) => {
|
|
188
|
+
const currentModel = () => toValue(model);
|
|
189
|
+
const editor = monaco.editor.create(element, {
|
|
190
|
+
model: currentModel().model,
|
|
191
|
+
automaticLayout: true,
|
|
192
|
+
folding: true,
|
|
193
|
+
showFoldingControls: "always",
|
|
194
|
+
glyphMargin: true,
|
|
195
|
+
lineNumbers: "on",
|
|
196
|
+
minimap: { enabled: false },
|
|
197
|
+
overviewRulerLanes: 0,
|
|
198
|
+
readOnly: toValue(readOnly),
|
|
199
|
+
scrollbar: {
|
|
200
|
+
useShadows: false,
|
|
201
|
+
verticalScrollbarSize: 5
|
|
202
|
+
},
|
|
203
|
+
scrollBeyondLastLine: false,
|
|
204
|
+
guides: { indentation: true },
|
|
205
|
+
formatOnPaste: true,
|
|
206
|
+
renderValidationDecorations: "on",
|
|
207
|
+
formatOnType: true,
|
|
208
|
+
lineHeight: 20,
|
|
209
|
+
renderLineHighlight: "none",
|
|
210
|
+
fontFamily: `'JetBrains Mono', monospace`
|
|
211
|
+
});
|
|
212
|
+
editor.updateOptions({
|
|
213
|
+
insertSpaces: true,
|
|
214
|
+
tabSize: 2
|
|
215
|
+
});
|
|
216
|
+
watch(model, (newModel) => {
|
|
217
|
+
editor.setModel(toValue(newModel).model);
|
|
218
|
+
});
|
|
219
|
+
let highlightDecorations = [];
|
|
220
|
+
let suppressedChangeEvents = 0;
|
|
221
|
+
actions?.forEach((action) => {
|
|
222
|
+
editor.addAction({
|
|
223
|
+
id: action.id,
|
|
224
|
+
label: action.label,
|
|
225
|
+
keybindings: action.keybindings,
|
|
226
|
+
run: async () => {
|
|
227
|
+
await action.run();
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
});
|
|
231
|
+
const runEditorAction = async (actionId) => {
|
|
232
|
+
await editor.getAction(actionId)?.run();
|
|
233
|
+
};
|
|
234
|
+
/**
|
|
235
|
+
* Highlights the range at the given path using the model's getRangeFromPath.
|
|
236
|
+
* Replaces any previous path highlight.
|
|
237
|
+
*/
|
|
238
|
+
const highlightPath = async (path) => {
|
|
239
|
+
const range = await Promise.resolve(currentModel().getRangeFromPath(path));
|
|
240
|
+
if (!range) return;
|
|
241
|
+
highlightDecorations = editor.deltaDecorations(highlightDecorations, [{
|
|
242
|
+
range,
|
|
243
|
+
options: { className: HIGHLIGHT_DECORATION_CLASS }
|
|
244
|
+
}]);
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* Focuses the editor on the range at the given path: folds all, unfolds the target,
|
|
248
|
+
* reveals it near the top, and highlights it using the model's getRangeFromPath.
|
|
249
|
+
*/
|
|
250
|
+
const focusPath = async (path) => {
|
|
251
|
+
const range = await Promise.resolve(currentModel().getRangeFromPath(path));
|
|
252
|
+
if (!range) return;
|
|
253
|
+
const monacoModel = currentModel().model;
|
|
254
|
+
const unfoldRange = new monaco.Range(range.startLineNumber, 1, range.endLineNumber, monacoModel.getLineMaxColumn(range.endLineNumber));
|
|
255
|
+
await runEditorAction("editor.foldAll");
|
|
256
|
+
editor.setSelection(unfoldRange);
|
|
257
|
+
await runEditorAction("editor.unfoldRecursively");
|
|
258
|
+
const position = {
|
|
259
|
+
lineNumber: range.startLineNumber,
|
|
260
|
+
column: range.startColumn
|
|
261
|
+
};
|
|
262
|
+
editor.setPosition(position);
|
|
263
|
+
editor.revealPositionNearTop(position);
|
|
264
|
+
await highlightPath(path);
|
|
265
|
+
};
|
|
266
|
+
editor.onDidChangeModelContent(() => {
|
|
267
|
+
if (suppressedChangeEvents > 0) {
|
|
268
|
+
suppressedChangeEvents -= 1;
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
const newValue = editor.getValue();
|
|
272
|
+
if (typeof newValue !== "string") return;
|
|
273
|
+
onChange?.(newValue ?? "");
|
|
274
|
+
});
|
|
275
|
+
watch(() => toValue(readOnly), (nextReadOnly) => {
|
|
276
|
+
editor?.updateOptions({ readOnly: nextReadOnly });
|
|
277
|
+
});
|
|
278
|
+
const formatDocument = async () => {
|
|
279
|
+
await runEditorAction("editor.action.formatDocument");
|
|
280
|
+
};
|
|
281
|
+
const getValue = () => editor.getValue();
|
|
282
|
+
const setValue = (nextValue, isProgrammaticUpdate = false) => {
|
|
283
|
+
if (isProgrammaticUpdate) suppressedChangeEvents += 1;
|
|
284
|
+
editor.setValue(nextValue);
|
|
285
|
+
};
|
|
286
|
+
const hasTextFocus = () => editor.hasTextFocus();
|
|
287
|
+
const dispose = () => {
|
|
288
|
+
editor.dispose();
|
|
289
|
+
};
|
|
290
|
+
return {
|
|
291
|
+
editor,
|
|
292
|
+
model,
|
|
293
|
+
highlightPath,
|
|
294
|
+
focusPath,
|
|
295
|
+
formatDocument,
|
|
296
|
+
getValue,
|
|
297
|
+
setValue,
|
|
298
|
+
hasTextFocus,
|
|
299
|
+
dispose
|
|
300
|
+
};
|
|
301
|
+
};
|
|
302
|
+
//#endregion
|
|
303
|
+
//#region src/v2/features/editor/helpers/json/json-pointer-path.ts
|
|
304
|
+
var extractPointer = (input) => {
|
|
305
|
+
const trimmed = input.trim();
|
|
306
|
+
if (trimmed.startsWith("/")) return trimmed;
|
|
307
|
+
if (trimmed.startsWith("#")) {
|
|
308
|
+
const fragment = trimmed.slice(1);
|
|
309
|
+
return fragment.startsWith("/") ? fragment : null;
|
|
310
|
+
}
|
|
311
|
+
const hashIndex = trimmed.indexOf("#");
|
|
312
|
+
if (hashIndex === -1) return null;
|
|
313
|
+
const fragment = trimmed.slice(hashIndex + 1);
|
|
314
|
+
return fragment.startsWith("/") ? fragment : null;
|
|
315
|
+
};
|
|
316
|
+
/**
|
|
317
|
+
* Parses a JSON Pointer (RFC 6901) and returns a "JSON path" compatible with this editor.
|
|
318
|
+
* Supports raw pointers ("/paths/...") and URI fragments ("#/paths/...").
|
|
319
|
+
*/
|
|
320
|
+
var parseJsonPointerPath = (pointer) => {
|
|
321
|
+
const extracted = extractPointer(pointer);
|
|
322
|
+
if (!extracted) return null;
|
|
323
|
+
return parseJsonPointerSegments(extracted);
|
|
324
|
+
};
|
|
325
|
+
//#endregion
|
|
326
|
+
//#region src/v2/features/editor/helpers/json/json-pointer-links.ts
|
|
327
|
+
var JSON_POINTER_LINK_SCHEME = "scalar-json-pointer";
|
|
328
|
+
/**
|
|
329
|
+
* Checks if the quote at the given index in the text is an unescaped double quote.
|
|
330
|
+
* An unescaped quote is one not preceded by an odd number of backslashes.
|
|
331
|
+
*
|
|
332
|
+
* @param text - The text string to check within.
|
|
333
|
+
* @param index - The index of the character in text to check.
|
|
334
|
+
* @returns True if the quote is unescaped, false otherwise.
|
|
335
|
+
*/
|
|
336
|
+
var isUnescapedQuote = (text, index) => {
|
|
337
|
+
if (text[index] !== "\"") return false;
|
|
338
|
+
let backslashes = 0;
|
|
339
|
+
for (let i = index - 1; i >= 0 && text[i] === "\\"; i--) backslashes++;
|
|
340
|
+
return backslashes % 2 === 0;
|
|
341
|
+
};
|
|
342
|
+
/**
|
|
343
|
+
* Finds the bounds (indices) of the nearest quoted string around a given index on the same line.
|
|
344
|
+
* Only considers unescaped double quotes (").
|
|
345
|
+
* Returns the left (opening) and right (closing) quote indices if both are found, or null otherwise.
|
|
346
|
+
*
|
|
347
|
+
* @param line - The string line in which to search.
|
|
348
|
+
* @param index - The index around which to search for the quoted string.
|
|
349
|
+
* @returns An object with `left` and `right` indices, or null if not found.
|
|
350
|
+
*/
|
|
351
|
+
var findQuotedStringBounds = (line, index) => {
|
|
352
|
+
let left = -1;
|
|
353
|
+
for (let i = index; i >= 0; i--) if (isUnescapedQuote(line, i)) {
|
|
354
|
+
left = i;
|
|
355
|
+
break;
|
|
356
|
+
}
|
|
357
|
+
if (left === -1) return null;
|
|
358
|
+
let right = -1;
|
|
359
|
+
for (let i = Math.max(left + 1, index); i < line.length; i++) if (isUnescapedQuote(line, i)) {
|
|
360
|
+
right = i;
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
if (right === -1 || right <= left) return null;
|
|
364
|
+
return {
|
|
365
|
+
left,
|
|
366
|
+
right
|
|
367
|
+
};
|
|
368
|
+
};
|
|
369
|
+
/**
|
|
370
|
+
* Enables clickable JSON Pointer links in Monaco JSON editor.
|
|
371
|
+
*
|
|
372
|
+
* - Scans for "#/" inside JSON string values, but only within properly quoted, unescaped strings.
|
|
373
|
+
* - When a valid JSON Pointer is found, highlights it (excluding quotes) as a clickable link.
|
|
374
|
+
* - Clicking the link invokes the provided `navigate` function with the decoded pointer.
|
|
375
|
+
*
|
|
376
|
+
* @param navigate Callback to execute on pointer link click.
|
|
377
|
+
*/
|
|
378
|
+
var ensureJsonPointerLinkSupport = (navigate) => {
|
|
379
|
+
monaco.languages.registerLinkProvider("json", { provideLinks(textModel) {
|
|
380
|
+
const links = [];
|
|
381
|
+
const lineCount = textModel.getLineCount();
|
|
382
|
+
for (let lineNumber = 1; lineNumber <= lineCount; lineNumber++) {
|
|
383
|
+
const line = textModel.getLineContent(lineNumber);
|
|
384
|
+
let fromIndex = 0;
|
|
385
|
+
while (true) {
|
|
386
|
+
const idx = line.indexOf("#/", fromIndex);
|
|
387
|
+
if (idx === -1) break;
|
|
388
|
+
const bounds = findQuotedStringBounds(line, idx);
|
|
389
|
+
if (!bounds) {
|
|
390
|
+
fromIndex = idx + 2;
|
|
391
|
+
continue;
|
|
392
|
+
}
|
|
393
|
+
const value = line.slice(bounds.left + 1, bounds.right);
|
|
394
|
+
if (!parseJsonPointerPath(value)) {
|
|
395
|
+
fromIndex = bounds.right + 1;
|
|
396
|
+
continue;
|
|
397
|
+
}
|
|
398
|
+
const range = new monaco.Range(lineNumber, bounds.left + 2, lineNumber, bounds.right + 1);
|
|
399
|
+
links.push({
|
|
400
|
+
range,
|
|
401
|
+
url: monaco.Uri.parse(`${JSON_POINTER_LINK_SCHEME}:${encodeURIComponent(value)}`),
|
|
402
|
+
tooltip: "Follow link"
|
|
403
|
+
});
|
|
404
|
+
fromIndex = bounds.right + 1;
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
return { links };
|
|
408
|
+
} });
|
|
409
|
+
const linkOpener = monaco.editor.registerLinkOpener({ open(resource) {
|
|
410
|
+
if (resource.scheme !== JSON_POINTER_LINK_SCHEME) return false;
|
|
411
|
+
const encoded = (resource.path || "").replace(/^\//, "");
|
|
412
|
+
const pointer = decodeURIComponent(encoded);
|
|
413
|
+
if (!pointer) return false;
|
|
414
|
+
return Promise.resolve(navigate(pointer)).then(() => true);
|
|
415
|
+
} });
|
|
416
|
+
const dispose = () => {
|
|
417
|
+
linkOpener.dispose();
|
|
418
|
+
};
|
|
419
|
+
return {
|
|
420
|
+
linkOpener,
|
|
421
|
+
dispose
|
|
422
|
+
};
|
|
423
|
+
};
|
|
424
|
+
//#endregion
|
|
425
|
+
//#region src/v2/features/editor/hooks/use-json-pointer-link-support.ts
|
|
426
|
+
var JSON_LANGUAGE_ID = "json";
|
|
427
|
+
/**
|
|
428
|
+
* Enables clickable JSON Pointer links when the editor model is JSON.
|
|
429
|
+
* Relates link support to the current model and uses the provided editor API to navigate.
|
|
430
|
+
*
|
|
431
|
+
* Call this hook with the return value of useEditor (or a ref to it) and the same model
|
|
432
|
+
* passed to useEditor. When the model's language is JSON, links like "#/paths/..." in
|
|
433
|
+
* string values become clickable and trigger focusPath on the editor.
|
|
434
|
+
*/
|
|
435
|
+
var useJsonPointerLinkSupport = (editorApi, model) => {
|
|
436
|
+
let disposeLinkSupport = null;
|
|
437
|
+
const setupOrDispose = () => {
|
|
438
|
+
const api = toValue(editorApi);
|
|
439
|
+
const currentModel = toValue(model);
|
|
440
|
+
if (disposeLinkSupport) {
|
|
441
|
+
disposeLinkSupport();
|
|
442
|
+
disposeLinkSupport = null;
|
|
443
|
+
}
|
|
444
|
+
if (!api?.focusPath || !currentModel) return;
|
|
445
|
+
if (currentModel.model.getLanguageId() !== JSON_LANGUAGE_ID) return;
|
|
446
|
+
const navigate = async (pointer) => {
|
|
447
|
+
const path = parseJsonPointerPath(pointer);
|
|
448
|
+
if (!path) return;
|
|
449
|
+
await api.focusPath(path.map(String));
|
|
450
|
+
};
|
|
451
|
+
disposeLinkSupport = ensureJsonPointerLinkSupport(navigate).dispose;
|
|
452
|
+
};
|
|
453
|
+
watch(() => [toValue(editorApi), toValue(model)], () => {
|
|
454
|
+
setupOrDispose();
|
|
455
|
+
}, { immediate: true });
|
|
456
|
+
onScopeDispose(() => {
|
|
457
|
+
if (disposeLinkSupport) {
|
|
458
|
+
disposeLinkSupport();
|
|
459
|
+
disposeLinkSupport = null;
|
|
460
|
+
}
|
|
461
|
+
});
|
|
462
|
+
};
|
|
463
|
+
//#endregion
|
|
464
|
+
export { rangeToWholeLine as a, useEditor as i, ensureJsonPointerLinkSupport as n, useMonacoEditorConfiguration as o, parseJsonPointerPath as r, useJsonPointerLinkSupport as t };
|
|
465
|
+
|
|
466
|
+
//# sourceMappingURL=editor-BZ_J0eze.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-BZ_J0eze.js","names":[],"sources":["../src/v2/features/editor/helpers/ensure-monaco-environment.ts","../src/v2/features/editor/helpers/theme/load-css-variables.ts","../src/v2/features/editor/helpers/theme/apply-scalar-theme.ts","../src/v2/features/editor/config.ts","../src/v2/features/editor/helpers/range-to-whole-line.ts","../src/v2/features/editor/hooks/use-editor.ts","../src/v2/features/editor/helpers/json/json-pointer-path.ts","../src/v2/features/editor/helpers/json/json-pointer-links.ts","../src/v2/features/editor/hooks/use-json-pointer-link-support.ts"],"sourcesContent":["import EditorWorker from 'monaco-editor/esm/vs/editor/editor.worker.js?worker'\nimport JsonWorker from 'monaco-editor/esm/vs/language/json/json.worker.js?worker'\nimport YamlWorker from 'monaco-yaml/yaml.worker.js?worker'\n\n/**\n * This function ensures that the Monaco Editor's global environment is configured\n * to provide the correct web worker for each language (json, yaml, or the default editor).\n */\nexport const ensureMonacoEnvironment = (): void => {\n // Set the MonacoEnvironment on the global scope if it hasn't already been set\n globalThis.MonacoEnvironment ??= {\n getWorker(_workerId: string, label: string): Worker {\n switch (label) {\n case 'json':\n return new JsonWorker()\n case 'yaml':\n return new YamlWorker()\n default:\n return new EditorWorker()\n }\n },\n }\n}\n","import { z } from 'zod'\n\n/**\n * Extracts CSS custom properties (variables) from a given CSS string\n * for .light-mode and .dark-mode selectors and returns an object\n * with 'light' and 'dark' keys containing the filtered variables.\n * Only variables matching hex color values (#RRGGBB or #RRGGBBAA) are accepted.\n *\n * @param css - The CSS string to parse.\n * @returns An object with `light` and `dark` properties containing the extracted CSS variables.\n */\nexport const loadCssVariables = async (css: string) => {\n const sheet = new CSSStyleSheet()\n await sheet.replace(css)\n\n const parsed = Array.from(sheet.cssRules).reduce<{ light: any; dark: any }>(\n (acc, cur) => {\n // Process only style rules (skip e.g. media, font-face, etc.)\n if (!(cur instanceof CSSStyleRule)) {\n return acc\n }\n\n // Collect valid CSS variable declarations from the rule's style\n const styles = Object.values(cur.style).reduce<Record<string, string>>((style, name) => {\n if (!name.startsWith('--')) {\n return style\n }\n\n // Only accept variables that match hex color format\n const value = z\n .string()\n .regex(/^(?:#(?:[0-9A-F]{6}|[0-9A-F]{8}))$/i)\n .safeParse(cur.style.getPropertyValue(name).toUpperCase().trim())\n\n if (value.error) {\n return style\n }\n\n style[name] = value.data\n\n return style\n }, {})\n\n // Merge variables into the correct theme object based on selector\n if (cur.selectorText.includes('.light-mode')) {\n acc.light = { ...acc.light, ...styles }\n }\n\n if (cur.selectorText.includes('.dark-mode')) {\n acc.dark = { ...acc.dark, ...styles }\n }\n\n return acc\n },\n { light: {}, dark: {} },\n )\n\n return parsed\n}\n","import * as monaco from 'monaco-editor'\n\nimport { loadCssVariables } from './load-css-variables'\n\nconst THEME_NAME = 'scalar-theme'\n\n/**\n * Applies a custom Scalar theme to the Monaco editor.\n *\n * This function loads CSS variables for either dark or light mode, maps the colors to Monaco's editor theme keys,\n * and then applies the new theme. Theme color tokens are resolved from CSS custom properties.\n *\n * Example usage:\n *\n * await applyScalarTheme('scalar', true); // Apply dark mode\n * await applyScalarTheme('scalar', false); // Apply light mode\n *\n * @param theme - The theme string key to load variables for (e.g. 'scalar').\n * @param isDarkMode - Whether to use dark or light variables.\n */\nexport const applyScalarTheme = async (theme: string, isDarkMode: boolean) => {\n // Load all CSS variables for the given theme\n const allVars = await loadCssVariables(theme)\n\n // Pick variables for dark or light mode\n const vars = isDarkMode ? allVars.dark : allVars.light\n\n /**\n * Map Monaco editor theme keys to CSS variable names.\n */\n const varsMap = {\n 'editor.background': '--scalar-background-1',\n 'editor.foreground': '--scalar-color-1',\n 'editorLineNumber.foreground': '--scalar-color-3',\n 'editorLineNumber.activeForeground': '--scalar-color-1',\n 'editorLineHighlight.background': '--scalar-background-2',\n 'editorCursor.foreground': '--scalar-color-1',\n 'editorCursor.background': '--scalar-background-1',\n 'editor.selectionBackground': '--scalar-background-3',\n 'editor.inactiveSelectionBackground': '--scalar-background-3',\n 'editorIndentGuide.background': '--scalar-background-3',\n 'editorIndentGuide.activeBackground': '--scalar-background-2',\n 'editorWhitespace.foreground': '--scalar-border-color',\n 'editorBracketMatch.background': '--scalar-background-3',\n 'editorBracketMatch.border': '--scalar-color-accent',\n 'editor.selectionHighlightBackground': '--scalar-background-3',\n 'editor.hoverHighlightBackground': '--scalar-background-3',\n 'editorLink.activeForeground': '--scalar-color-3',\n 'editorOverviewRuler.border': '--scalar-border-color',\n }\n\n /**\n * Build a colors object for Monaco from the variable map.\n * Only assign if the variable exists in the loaded vars.\n */\n const colors = Object.fromEntries(\n Object.entries(varsMap)\n .filter(([_, cssVar]) => !!vars[cssVar])\n .map(([prop, cssVar]) => [prop, vars[cssVar]]),\n )\n\n // Define the theme in Monaco using the chosen variables.\n monaco.editor.defineTheme(THEME_NAME, {\n base: isDarkMode ? 'vs-dark' : 'vs',\n inherit: true,\n rules: [\n // Default text\n { token: '', foreground: vars['--scalar-color-3'] },\n // Comments\n {\n token: 'comment',\n foreground: vars['--scalar-color-2'],\n fontStyle: 'italic',\n },\n // Keywords\n {\n token: 'keyword',\n foreground: vars['--scalar-color-accent'],\n fontStyle: 'bold',\n },\n // Numbers\n { token: 'number', foreground: vars['--scalar-color-purple'] },\n // Strings\n { token: 'string', foreground: vars['--scalar-color-2'] },\n // Delimiters (punctuation)\n { token: 'delimiter', foreground: vars['--scalar-color-3'] },\n ],\n colors,\n })\n\n // Finally, set the theme\n monaco.editor.setTheme(THEME_NAME)\n}\n","import { type MaybeRefOrGetter, toValue, watch } from 'vue'\n\nimport { ensureMonacoEnvironment } from './helpers/ensure-monaco-environment'\nimport { applyScalarTheme } from './helpers/theme/apply-scalar-theme'\n\nimport 'monaco-editor/esm/vs/language/json/monaco.contribution'\nimport 'monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution'\nimport 'monaco-editor/esm/vs/editor/contrib/folding/browser/folding'\nimport 'monaco-editor/esm/vs/editor/contrib/folding/browser/folding.css'\nimport 'monaco-editor/esm/vs/base/browser/ui/codicons/codicon/codicon.css'\n\n/**\n * Configures the Monaco editor with custom Scala theme settings.\n * Applies the theme whenever the theme or dark mode value changes.\n * In development mode, ensures Monaco environment is configured (worker setup handled by Vite config).\n */\nexport const useMonacoEditorConfiguration = ({\n theme,\n darkMode,\n}: {\n theme: MaybeRefOrGetter<string>\n darkMode: MaybeRefOrGetter<boolean>\n}): void => {\n // Ensure Monaco environment only in production to prevent worker misconfiguration.\n if (!import.meta.env.DEV) {\n ensureMonacoEnvironment()\n }\n\n // Watch for changes to theme or darkMode and apply the Scalar theme immediately.\n watch([() => toValue(theme), () => toValue(darkMode)], ([theme, darkMode]) => applyScalarTheme(theme, darkMode), {\n immediate: true,\n })\n}\n","import * as monaco from 'monaco-editor'\n\n/**\n * Expands a given range to cover whole lines within a Monaco editor model.\n *\n * Given a text model and an input range, this function calculates the smallest\n * and largest lines touched by the range and returns a new range that starts at\n * the beginning of the first touched line and ends at the end of the last touched line.\n *\n * @param model The Monaco editor text model.\n * @param range The Monaco Range to expand.\n * @returns A new Monaco Range covering the whole lines spanned by the given range.\n */\nexport const rangeToWholeLine = (model: monaco.editor.ITextModel, range: monaco.Range): monaco.Range => {\n const startOffset = model.getOffsetAt(range.getStartPosition())\n const endOffset = model.getOffsetAt(range.getEndPosition())\n const start = model.getPositionAt(startOffset)\n const inclusiveEndOffset = Math.max(startOffset, endOffset - 1)\n const end = model.getPositionAt(inclusiveEndOffset)\n const startLine = Math.max(1, start.lineNumber)\n const endLine = Math.max(startLine, end.lineNumber)\n return new monaco.Range(startLine, 1, endLine, model.getLineMaxColumn(endLine))\n}\n","import * as monaco from 'monaco-editor'\nimport { type MaybeRefOrGetter, toValue, watch } from 'vue'\n\nimport type { EditorModel, Path } from '@/v2/features/editor/helpers/model'\n\nconst HIGHLIGHT_DECORATION_CLASS = 'json-focus-highlight'\n\ntype MonacoEditorAction = {\n id: string\n label: string\n keybindings?: number[]\n run: () => void | Promise<void>\n}\n\n/**\n * Creates and manages a Monaco editor instance.\n *\n * @param element - The HTML element to mount the editor into.\n * @param onChange - A callback function to handle changes to the editor's value.\n * @param actions - An array of actions to add to the editor.\n * @param readOnly - Whether the editor should be read-only.\n * @param model - The editor model to use.\n * @returns An object containing the editor instance, model, and utility functions.\n */\nexport const useEditor = ({\n element,\n onChange,\n actions,\n readOnly = false,\n model,\n}: {\n element: HTMLElement\n readOnly?: MaybeRefOrGetter<boolean>\n onChange?: (e: string) => void\n actions?: MonacoEditorAction[]\n /** Editor model provided from outside; must implement EditorModel (model + getRangeFromPath). */\n model: MaybeRefOrGetter<EditorModel>\n}) => {\n const currentModel = () => toValue(model)\n\n const editor = monaco.editor.create(element, {\n model: currentModel().model,\n automaticLayout: true,\n folding: true,\n showFoldingControls: 'always',\n glyphMargin: true,\n lineNumbers: 'on',\n minimap: { enabled: false },\n overviewRulerLanes: 0,\n readOnly: toValue(readOnly),\n scrollbar: {\n useShadows: false,\n verticalScrollbarSize: 5,\n },\n scrollBeyondLastLine: false,\n guides: {\n indentation: true,\n },\n formatOnPaste: true,\n renderValidationDecorations: 'on',\n formatOnType: true,\n lineHeight: 20,\n renderLineHighlight: 'none',\n fontFamily: `'JetBrains Mono', monospace`,\n })\n\n editor.updateOptions({ insertSpaces: true, tabSize: 2 })\n\n watch(model, (newModel) => {\n editor.setModel(toValue(newModel).model)\n })\n\n let highlightDecorations: string[] = []\n let suppressedChangeEvents = 0\n\n actions?.forEach((action) => {\n editor.addAction({\n id: action.id,\n label: action.label,\n keybindings: action.keybindings,\n run: async () => {\n await action.run()\n },\n })\n })\n\n const runEditorAction = async (actionId: string): Promise<void> => {\n await editor.getAction(actionId)?.run()\n }\n\n /**\n * Highlights the range at the given path using the model's getRangeFromPath.\n * Replaces any previous path highlight.\n */\n const highlightPath = async (path: Path): Promise<void> => {\n const range = await Promise.resolve(currentModel().getRangeFromPath(path))\n if (!range) {\n return\n }\n\n highlightDecorations = editor.deltaDecorations(highlightDecorations, [\n {\n range,\n options: {\n className: HIGHLIGHT_DECORATION_CLASS,\n },\n },\n ])\n }\n\n /**\n * Focuses the editor on the range at the given path: folds all, unfolds the target,\n * reveals it near the top, and highlights it using the model's getRangeFromPath.\n */\n const focusPath = async (path: Path): Promise<void> => {\n const range = await Promise.resolve(currentModel().getRangeFromPath(path))\n if (!range) {\n return\n }\n\n const monacoModel = currentModel().model\n const unfoldRange = new monaco.Range(\n range.startLineNumber,\n 1,\n range.endLineNumber,\n monacoModel.getLineMaxColumn(range.endLineNumber),\n )\n\n await runEditorAction('editor.foldAll')\n editor.setSelection(unfoldRange)\n await runEditorAction('editor.unfoldRecursively')\n\n const position = { lineNumber: range.startLineNumber, column: range.startColumn }\n editor.setPosition(position)\n editor.revealPositionNearTop(position)\n\n await highlightPath(path)\n }\n\n editor.onDidChangeModelContent(() => {\n if (suppressedChangeEvents > 0) {\n suppressedChangeEvents -= 1\n return\n }\n\n const newValue = editor.getValue()\n if (typeof newValue !== 'string') {\n return\n }\n\n onChange?.(newValue ?? '')\n })\n\n //--------------------------------------------------\n // Read Only\n watch(\n () => toValue(readOnly),\n (nextReadOnly) => {\n editor?.updateOptions({ readOnly: nextReadOnly })\n },\n )\n\n const formatDocument = async (): Promise<void> => {\n await runEditorAction('editor.action.formatDocument')\n }\n\n const getValue = (): string => editor.getValue()\n\n const setValue = (nextValue: string, isProgrammaticUpdate = false): void => {\n if (isProgrammaticUpdate) {\n suppressedChangeEvents += 1\n }\n\n editor.setValue(nextValue)\n }\n\n const hasTextFocus = (): boolean => editor.hasTextFocus()\n\n const dispose = (): void => {\n editor.dispose()\n }\n\n return {\n editor,\n model,\n highlightPath,\n focusPath,\n formatDocument,\n getValue,\n setValue,\n hasTextFocus,\n dispose,\n }\n}\n","import { parseJsonPointerSegments } from '@scalar/helpers/json/parse-json-pointer-segments'\n\nimport type { JsonPath } from './json-ast'\n\nconst extractPointer = (input: string): string | null => {\n const trimmed = input.trim()\n\n // Pure RFC6901 pointers\n if (trimmed.startsWith('/')) {\n return trimmed\n }\n\n // URI fragments like \"#/paths/...\"\n if (trimmed.startsWith('#')) {\n const fragment = trimmed.slice(1)\n return fragment.startsWith('/') ? fragment : null\n }\n\n // URIs with fragments like \"file.json#/paths/...\"\n const hashIndex = trimmed.indexOf('#')\n if (hashIndex === -1) {\n return null\n }\n\n const fragment = trimmed.slice(hashIndex + 1)\n return fragment.startsWith('/') ? fragment : null\n}\n\n/**\n * Parses a JSON Pointer (RFC 6901) and returns a \"JSON path\" compatible with this editor.\n * Supports raw pointers (\"/paths/...\") and URI fragments (\"#/paths/...\").\n */\nexport const parseJsonPointerPath = (pointer: string): JsonPath | null => {\n const extracted = extractPointer(pointer)\n if (!extracted) {\n return null\n }\n\n return parseJsonPointerSegments(extracted)\n}\n","import * as monaco from 'monaco-editor'\n\nimport { parseJsonPointerPath } from './json-pointer-path'\n\nconst JSON_POINTER_LINK_SCHEME = 'scalar-json-pointer'\n\n/**\n * Checks if the quote at the given index in the text is an unescaped double quote.\n * An unescaped quote is one not preceded by an odd number of backslashes.\n *\n * @param text - The text string to check within.\n * @param index - The index of the character in text to check.\n * @returns True if the quote is unescaped, false otherwise.\n */\nconst isUnescapedQuote = (text: string, index: number): boolean => {\n if (text[index] !== '\"') {\n return false\n }\n\n let backslashes = 0\n // Count consecutive backslashes immediately before the quote\n for (let i = index - 1; i >= 0 && text[i] === '\\\\'; i--) {\n backslashes++\n }\n // If even number of backslashes, quote is unescaped\n return backslashes % 2 === 0\n}\n\n/**\n * Finds the bounds (indices) of the nearest quoted string around a given index on the same line.\n * Only considers unescaped double quotes (\").\n * Returns the left (opening) and right (closing) quote indices if both are found, or null otherwise.\n *\n * @param line - The string line in which to search.\n * @param index - The index around which to search for the quoted string.\n * @returns An object with `left` and `right` indices, or null if not found.\n */\nconst findQuotedStringBounds = (line: string, index: number): { left: number; right: number } | null => {\n // Find the nearest unescaped quote to the left (including the current index)\n let left = -1\n for (let i = index; i >= 0; i--) {\n if (isUnescapedQuote(line, i)) {\n left = i\n break\n }\n }\n if (left === -1) {\n // No opening quote found\n return null\n }\n\n // Find the nearest unescaped quote to the right after the opening quote\n let right = -1\n for (let i = Math.max(left + 1, index); i < line.length; i++) {\n if (isUnescapedQuote(line, i)) {\n right = i\n break\n }\n }\n // If there is no closing quote or it appears before the opening, return null\n if (right === -1 || right <= left) {\n return null\n }\n\n return { left, right }\n}\n\n/**\n * Enables clickable JSON Pointer links in Monaco JSON editor.\n *\n * - Scans for \"#/\" inside JSON string values, but only within properly quoted, unescaped strings.\n * - When a valid JSON Pointer is found, highlights it (excluding quotes) as a clickable link.\n * - Clicking the link invokes the provided `navigate` function with the decoded pointer.\n *\n * @param navigate Callback to execute on pointer link click.\n */\nexport const ensureJsonPointerLinkSupport = (navigate: (pointer: string) => Promise<void> | void) => {\n monaco.languages.registerLinkProvider('json', {\n provideLinks(textModel) {\n const links: monaco.languages.ILink[] = []\n\n const lineCount = textModel.getLineCount()\n for (let lineNumber = 1; lineNumber <= lineCount; lineNumber++) {\n const line = textModel.getLineContent(lineNumber)\n let fromIndex = 0\n\n while (true) {\n // Look for JSON Pointer prefix in the line starting from fromIndex\n const idx = line.indexOf('#/', fromIndex)\n if (idx === -1) {\n break\n }\n\n // Try to find quoted string bounds around found #/\n const bounds = findQuotedStringBounds(line, idx)\n if (!bounds) {\n fromIndex = idx + 2\n continue\n }\n\n // Extract the value inside quotes\n const value = line.slice(bounds.left + 1, bounds.right)\n // Only create a link if this is a valid JSON Pointer\n if (!parseJsonPointerPath(value)) {\n fromIndex = bounds.right + 1\n continue\n }\n\n // Exclude string quotes when creating the link's range\n const range = new monaco.Range(lineNumber, bounds.left + 2, lineNumber, bounds.right + 1)\n\n // Add the link to the collection\n links.push({\n range,\n url: monaco.Uri.parse(`${JSON_POINTER_LINK_SCHEME}:${encodeURIComponent(value)}`),\n tooltip: 'Follow link',\n })\n\n // Advance search past the string we just handled\n fromIndex = bounds.right + 1\n }\n }\n\n return { links }\n },\n })\n\n const linkOpener = monaco.editor.registerLinkOpener({\n open(resource) {\n // Only handle our special JSON pointer link scheme\n if (resource.scheme !== JSON_POINTER_LINK_SCHEME) {\n return false\n }\n\n // Remove leading slash from resource path, if any\n const encoded = (resource.path || '').replace(/^\\//, '')\n const pointer = decodeURIComponent(encoded)\n if (!pointer) {\n return false\n }\n\n // Invoke the navigate callback, resolve to true on successful navigation\n return Promise.resolve(navigate(pointer)).then(() => true)\n },\n })\n\n const dispose = () => {\n linkOpener.dispose()\n }\n\n return { linkOpener, dispose }\n}\n","import { type MaybeRefOrGetter, onScopeDispose, toValue, watch } from 'vue'\n\nimport { ensureJsonPointerLinkSupport } from '@/v2/features/editor/helpers/json/json-pointer-links'\nimport { parseJsonPointerPath } from '@/v2/features/editor/helpers/json/json-pointer-path'\nimport type { EditorModel } from '@/v2/features/editor/helpers/model'\n\nconst JSON_LANGUAGE_ID = 'json'\n\ntype EditorNavigationApi = {\n focusPath: (path: string[]) => Promise<void>\n}\n\n/**\n * Enables clickable JSON Pointer links when the editor model is JSON.\n * Relates link support to the current model and uses the provided editor API to navigate.\n *\n * Call this hook with the return value of useEditor (or a ref to it) and the same model\n * passed to useEditor. When the model's language is JSON, links like \"#/paths/...\" in\n * string values become clickable and trigger focusPath on the editor.\n */\nexport const useJsonPointerLinkSupport = (\n editorApi: MaybeRefOrGetter<EditorNavigationApi | undefined>,\n model: MaybeRefOrGetter<EditorModel | undefined>,\n): void => {\n let disposeLinkSupport: (() => void) | null = null\n\n const setupOrDispose = () => {\n const api = toValue(editorApi)\n const currentModel = toValue(model)\n\n if (disposeLinkSupport) {\n disposeLinkSupport()\n disposeLinkSupport = null\n }\n\n if (!api?.focusPath || !currentModel) {\n return\n }\n\n const languageId = currentModel.model.getLanguageId()\n if (languageId !== JSON_LANGUAGE_ID) {\n return\n }\n\n const navigate = async (pointer: string): Promise<void> => {\n const path = parseJsonPointerPath(pointer)\n if (!path) {\n return\n }\n await api.focusPath(path.map(String))\n }\n\n const result = ensureJsonPointerLinkSupport(navigate)\n disposeLinkSupport = result.dispose\n }\n\n watch(\n () => [toValue(editorApi), toValue(model)] as const,\n () => {\n setupOrDispose()\n },\n { immediate: true },\n )\n\n onScopeDispose(() => {\n if (disposeLinkSupport) {\n disposeLinkSupport()\n disposeLinkSupport = null\n }\n })\n}\n"],"mappings":";;;;;;;;;;;;;;AAQA,IAAa,gCAAsC;AAEjD,YAAW,sBAAsB,EAC/B,UAAU,WAAmB,OAAuB;AAClD,UAAQ,OAAR;GACE,KAAK,OACH,QAAO,IAAI,YAAY;GACzB,KAAK,OACH,QAAO,IAAI,YAAY;GACzB,QACE,QAAO,IAAI,cAAc;;IAGhC;;;;;;;;;;;;;ACVH,IAAa,mBAAmB,OAAO,QAAgB;CACrD,MAAM,QAAQ,IAAI,eAAe;AACjC,OAAM,MAAM,QAAQ,IAAI;AA4CxB,QA1Ce,MAAM,KAAK,MAAM,SAAS,CAAC,QACvC,KAAK,QAAQ;AAEZ,MAAI,EAAE,eAAe,cACnB,QAAO;EAIT,MAAM,SAAS,OAAO,OAAO,IAAI,MAAM,CAAC,QAAgC,OAAO,SAAS;AACtF,OAAI,CAAC,KAAK,WAAW,KAAK,CACxB,QAAO;GAIT,MAAM,QAAQ,EACX,QAAQ,CACR,MAAM,sCAAsC,CAC5C,UAAU,IAAI,MAAM,iBAAiB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;AAEnE,OAAI,MAAM,MACR,QAAO;AAGT,SAAM,QAAQ,MAAM;AAEpB,UAAO;KACN,EAAE,CAAC;AAGN,MAAI,IAAI,aAAa,SAAS,cAAc,CAC1C,KAAI,QAAQ;GAAE,GAAG,IAAI;GAAO,GAAG;GAAQ;AAGzC,MAAI,IAAI,aAAa,SAAS,aAAa,CACzC,KAAI,OAAO;GAAE,GAAG,IAAI;GAAM,GAAG;GAAQ;AAGvC,SAAO;IAET;EAAE,OAAO,EAAE;EAAE,MAAM,EAAE;EAAE,CACxB;;;;ACnDH,IAAM,aAAa;;;;;;;;;;;;;;;AAgBnB,IAAa,mBAAmB,OAAO,OAAe,eAAwB;CAE5E,MAAM,UAAU,MAAM,iBAAiB,MAAM;CAG7C,MAAM,OAAO,aAAa,QAAQ,OAAO,QAAQ;;;;;CA8BjD,MAAM,SAAS,OAAO,YACpB,OAAO,QA1BO;EACd,qBAAqB;EACrB,qBAAqB;EACrB,+BAA+B;EAC/B,qCAAqC;EACrC,kCAAkC;EAClC,2BAA2B;EAC3B,2BAA2B;EAC3B,8BAA8B;EAC9B,sCAAsC;EACtC,gCAAgC;EAChC,sCAAsC;EACtC,+BAA+B;EAC/B,iCAAiC;EACjC,6BAA6B;EAC7B,uCAAuC;EACvC,mCAAmC;EACnC,+BAA+B;EAC/B,8BAA8B;EAC/B,CAOwB,CACpB,QAAQ,CAAC,GAAG,YAAY,CAAC,CAAC,KAAK,QAAQ,CACvC,KAAK,CAAC,MAAM,YAAY,CAAC,MAAM,KAAK,QAAQ,CAAC,CACjD;AAGD,QAAO,OAAO,YAAY,YAAY;EACpC,MAAM,aAAa,YAAY;EAC/B,SAAS;EACT,OAAO;GAEL;IAAE,OAAO;IAAI,YAAY,KAAK;IAAqB;GAEnD;IACE,OAAO;IACP,YAAY,KAAK;IACjB,WAAW;IACZ;GAED;IACE,OAAO;IACP,YAAY,KAAK;IACjB,WAAW;IACZ;GAED;IAAE,OAAO;IAAU,YAAY,KAAK;IAA0B;GAE9D;IAAE,OAAO;IAAU,YAAY,KAAK;IAAqB;GAEzD;IAAE,OAAO;IAAa,YAAY,KAAK;IAAqB;GAC7D;EACD;EACD,CAAC;AAGF,QAAO,OAAO,SAAS,WAAW;;;;;;;;;AC3EpC,IAAa,gCAAgC,EAC3C,OACA,eAIU;AAGR,0BAAyB;AAI3B,OAAM,OAAO,QAAQ,MAAM,QAAQ,QAAQ,SAAS,CAAC,GAAG,CAAC,OAAO,cAAc,iBAAiB,OAAO,SAAS,EAAE,EAC/G,WAAW,MACZ,CAAC;;;;;;;;;;;;;;;AClBJ,IAAa,oBAAoB,OAAiC,UAAsC;CACtG,MAAM,cAAc,MAAM,YAAY,MAAM,kBAAkB,CAAC;CAC/D,MAAM,YAAY,MAAM,YAAY,MAAM,gBAAgB,CAAC;CAC3D,MAAM,QAAQ,MAAM,cAAc,YAAY;CAC9C,MAAM,qBAAqB,KAAK,IAAI,aAAa,YAAY,EAAE;CAC/D,MAAM,MAAM,MAAM,cAAc,mBAAmB;CACnD,MAAM,YAAY,KAAK,IAAI,GAAG,MAAM,WAAW;CAC/C,MAAM,UAAU,KAAK,IAAI,WAAW,IAAI,WAAW;AACnD,QAAO,IAAI,OAAO,MAAM,WAAW,GAAG,SAAS,MAAM,iBAAiB,QAAQ,CAAC;;;;AChBjF,IAAM,6BAA6B;;;;;;;;;;;AAmBnC,IAAa,aAAa,EACxB,SACA,UACA,SACA,WAAW,OACX,YAQI;CACJ,MAAM,qBAAqB,QAAQ,MAAM;CAEzC,MAAM,SAAS,OAAO,OAAO,OAAO,SAAS;EAC3C,OAAO,cAAc,CAAC;EACtB,iBAAiB;EACjB,SAAS;EACT,qBAAqB;EACrB,aAAa;EACb,aAAa;EACb,SAAS,EAAE,SAAS,OAAO;EAC3B,oBAAoB;EACpB,UAAU,QAAQ,SAAS;EAC3B,WAAW;GACT,YAAY;GACZ,uBAAuB;GACxB;EACD,sBAAsB;EACtB,QAAQ,EACN,aAAa,MACd;EACD,eAAe;EACf,6BAA6B;EAC7B,cAAc;EACd,YAAY;EACZ,qBAAqB;EACrB,YAAY;EACb,CAAC;AAEF,QAAO,cAAc;EAAE,cAAc;EAAM,SAAS;EAAG,CAAC;AAExD,OAAM,QAAQ,aAAa;AACzB,SAAO,SAAS,QAAQ,SAAS,CAAC,MAAM;GACxC;CAEF,IAAI,uBAAiC,EAAE;CACvC,IAAI,yBAAyB;AAE7B,UAAS,SAAS,WAAW;AAC3B,SAAO,UAAU;GACf,IAAI,OAAO;GACX,OAAO,OAAO;GACd,aAAa,OAAO;GACpB,KAAK,YAAY;AACf,UAAM,OAAO,KAAK;;GAErB,CAAC;GACF;CAEF,MAAM,kBAAkB,OAAO,aAAoC;AACjE,QAAM,OAAO,UAAU,SAAS,EAAE,KAAK;;;;;;CAOzC,MAAM,gBAAgB,OAAO,SAA8B;EACzD,MAAM,QAAQ,MAAM,QAAQ,QAAQ,cAAc,CAAC,iBAAiB,KAAK,CAAC;AAC1E,MAAI,CAAC,MACH;AAGF,yBAAuB,OAAO,iBAAiB,sBAAsB,CACnE;GACE;GACA,SAAS,EACP,WAAW,4BACZ;GACF,CACF,CAAC;;;;;;CAOJ,MAAM,YAAY,OAAO,SAA8B;EACrD,MAAM,QAAQ,MAAM,QAAQ,QAAQ,cAAc,CAAC,iBAAiB,KAAK,CAAC;AAC1E,MAAI,CAAC,MACH;EAGF,MAAM,cAAc,cAAc,CAAC;EACnC,MAAM,cAAc,IAAI,OAAO,MAC7B,MAAM,iBACN,GACA,MAAM,eACN,YAAY,iBAAiB,MAAM,cAAc,CAClD;AAED,QAAM,gBAAgB,iBAAiB;AACvC,SAAO,aAAa,YAAY;AAChC,QAAM,gBAAgB,2BAA2B;EAEjD,MAAM,WAAW;GAAE,YAAY,MAAM;GAAiB,QAAQ,MAAM;GAAa;AACjF,SAAO,YAAY,SAAS;AAC5B,SAAO,sBAAsB,SAAS;AAEtC,QAAM,cAAc,KAAK;;AAG3B,QAAO,8BAA8B;AACnC,MAAI,yBAAyB,GAAG;AAC9B,6BAA0B;AAC1B;;EAGF,MAAM,WAAW,OAAO,UAAU;AAClC,MAAI,OAAO,aAAa,SACtB;AAGF,aAAW,YAAY,GAAG;GAC1B;AAIF,aACQ,QAAQ,SAAS,GACtB,iBAAiB;AAChB,UAAQ,cAAc,EAAE,UAAU,cAAc,CAAC;GAEpD;CAED,MAAM,iBAAiB,YAA2B;AAChD,QAAM,gBAAgB,+BAA+B;;CAGvD,MAAM,iBAAyB,OAAO,UAAU;CAEhD,MAAM,YAAY,WAAmB,uBAAuB,UAAgB;AAC1E,MAAI,qBACF,2BAA0B;AAG5B,SAAO,SAAS,UAAU;;CAG5B,MAAM,qBAA8B,OAAO,cAAc;CAEzD,MAAM,gBAAsB;AAC1B,SAAO,SAAS;;AAGlB,QAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;;;;AC5LH,IAAM,kBAAkB,UAAiC;CACvD,MAAM,UAAU,MAAM,MAAM;AAG5B,KAAI,QAAQ,WAAW,IAAI,CACzB,QAAO;AAIT,KAAI,QAAQ,WAAW,IAAI,EAAE;EAC3B,MAAM,WAAW,QAAQ,MAAM,EAAE;AACjC,SAAO,SAAS,WAAW,IAAI,GAAG,WAAW;;CAI/C,MAAM,YAAY,QAAQ,QAAQ,IAAI;AACtC,KAAI,cAAc,GAChB,QAAO;CAGT,MAAM,WAAW,QAAQ,MAAM,YAAY,EAAE;AAC7C,QAAO,SAAS,WAAW,IAAI,GAAG,WAAW;;;;;;AAO/C,IAAa,wBAAwB,YAAqC;CACxE,MAAM,YAAY,eAAe,QAAQ;AACzC,KAAI,CAAC,UACH,QAAO;AAGT,QAAO,yBAAyB,UAAU;;;;AClC5C,IAAM,2BAA2B;;;;;;;;;AAUjC,IAAM,oBAAoB,MAAc,UAA2B;AACjE,KAAI,KAAK,WAAW,KAClB,QAAO;CAGT,IAAI,cAAc;AAElB,MAAK,IAAI,IAAI,QAAQ,GAAG,KAAK,KAAK,KAAK,OAAO,MAAM,IAClD;AAGF,QAAO,cAAc,MAAM;;;;;;;;;;;AAY7B,IAAM,0BAA0B,MAAc,UAA0D;CAEtG,IAAI,OAAO;AACX,MAAK,IAAI,IAAI,OAAO,KAAK,GAAG,IAC1B,KAAI,iBAAiB,MAAM,EAAE,EAAE;AAC7B,SAAO;AACP;;AAGJ,KAAI,SAAS,GAEX,QAAO;CAIT,IAAI,QAAQ;AACZ,MAAK,IAAI,IAAI,KAAK,IAAI,OAAO,GAAG,MAAM,EAAE,IAAI,KAAK,QAAQ,IACvD,KAAI,iBAAiB,MAAM,EAAE,EAAE;AAC7B,UAAQ;AACR;;AAIJ,KAAI,UAAU,MAAM,SAAS,KAC3B,QAAO;AAGT,QAAO;EAAE;EAAM;EAAO;;;;;;;;;;;AAYxB,IAAa,gCAAgC,aAAwD;AACnG,QAAO,UAAU,qBAAqB,QAAQ,EAC5C,aAAa,WAAW;EACtB,MAAM,QAAkC,EAAE;EAE1C,MAAM,YAAY,UAAU,cAAc;AAC1C,OAAK,IAAI,aAAa,GAAG,cAAc,WAAW,cAAc;GAC9D,MAAM,OAAO,UAAU,eAAe,WAAW;GACjD,IAAI,YAAY;AAEhB,UAAO,MAAM;IAEX,MAAM,MAAM,KAAK,QAAQ,MAAM,UAAU;AACzC,QAAI,QAAQ,GACV;IAIF,MAAM,SAAS,uBAAuB,MAAM,IAAI;AAChD,QAAI,CAAC,QAAQ;AACX,iBAAY,MAAM;AAClB;;IAIF,MAAM,QAAQ,KAAK,MAAM,OAAO,OAAO,GAAG,OAAO,MAAM;AAEvD,QAAI,CAAC,qBAAqB,MAAM,EAAE;AAChC,iBAAY,OAAO,QAAQ;AAC3B;;IAIF,MAAM,QAAQ,IAAI,OAAO,MAAM,YAAY,OAAO,OAAO,GAAG,YAAY,OAAO,QAAQ,EAAE;AAGzF,UAAM,KAAK;KACT;KACA,KAAK,OAAO,IAAI,MAAM,GAAG,yBAAyB,GAAG,mBAAmB,MAAM,GAAG;KACjF,SAAS;KACV,CAAC;AAGF,gBAAY,OAAO,QAAQ;;;AAI/B,SAAO,EAAE,OAAO;IAEnB,CAAC;CAEF,MAAM,aAAa,OAAO,OAAO,mBAAmB,EAClD,KAAK,UAAU;AAEb,MAAI,SAAS,WAAW,yBACtB,QAAO;EAIT,MAAM,WAAW,SAAS,QAAQ,IAAI,QAAQ,OAAO,GAAG;EACxD,MAAM,UAAU,mBAAmB,QAAQ;AAC3C,MAAI,CAAC,QACH,QAAO;AAIT,SAAO,QAAQ,QAAQ,SAAS,QAAQ,CAAC,CAAC,WAAW,KAAK;IAE7D,CAAC;CAEF,MAAM,gBAAgB;AACpB,aAAW,SAAS;;AAGtB,QAAO;EAAE;EAAY;EAAS;;;;AChJhC,IAAM,mBAAmB;;;;;;;;;AAczB,IAAa,6BACX,WACA,UACS;CACT,IAAI,qBAA0C;CAE9C,MAAM,uBAAuB;EAC3B,MAAM,MAAM,QAAQ,UAAU;EAC9B,MAAM,eAAe,QAAQ,MAAM;AAEnC,MAAI,oBAAoB;AACtB,uBAAoB;AACpB,wBAAqB;;AAGvB,MAAI,CAAC,KAAK,aAAa,CAAC,aACtB;AAIF,MADmB,aAAa,MAAM,eAAe,KAClC,iBACjB;EAGF,MAAM,WAAW,OAAO,YAAmC;GACzD,MAAM,OAAO,qBAAqB,QAAQ;AAC1C,OAAI,CAAC,KACH;AAEF,SAAM,IAAI,UAAU,KAAK,IAAI,OAAO,CAAC;;AAIvC,uBADe,6BAA6B,SAAS,CACzB;;AAG9B,aACQ,CAAC,QAAQ,UAAU,EAAE,QAAQ,MAAM,CAAC,QACpC;AACJ,kBAAgB;IAElB,EAAE,WAAW,MAAM,CACpB;AAED,sBAAqB;AACnB,MAAI,oBAAoB;AACtB,uBAAoB;AACpB,wBAAqB;;GAEvB"}
|