@scalar/api-client 3.6.1 → 3.8.1
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 +157 -0
- package/dist/components/HttpMethod/HttpMethod.vue.js +1 -1
- package/dist/components/HttpMethod/index.js +2 -0
- package/dist/components/ScalarAsciiArt/ScalarAsciiArt.vue.d.ts.map +1 -0
- package/dist/components/{ScalarAsciiArt.vue.js → ScalarAsciiArt/ScalarAsciiArt.vue.js} +3 -3
- package/dist/components/ScalarAsciiArt/ScalarAsciiArt.vue.js.map +1 -0
- package/dist/components/{ScalarAsciiArt.vue.script.js → ScalarAsciiArt/ScalarAsciiArt.vue.script.js} +1 -1
- package/dist/components/ScalarAsciiArt/ScalarAsciiArt.vue.script.js.map +1 -0
- package/dist/components/ScalarAsciiArt/index.d.ts +2 -0
- package/dist/components/ScalarAsciiArt/index.d.ts.map +1 -0
- package/dist/components/ScalarAsciiArt/index.js +2 -0
- package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue.d.ts +2 -2
- package/dist/components/Sidebar/Actions/SidebarListElementForm.vue.d.ts +2 -2
- package/dist/components/Sidebar/index.d.ts +2 -0
- package/dist/components/Sidebar/index.d.ts.map +1 -0
- package/dist/components/Sidebar/index.js +2 -0
- package/dist/components/ViewLayout/index.d.ts +4 -0
- package/dist/components/ViewLayout/index.d.ts.map +1 -0
- package/dist/components/ViewLayout/index.js +4 -0
- package/dist/plugins/posthog/index.d.ts.map +1 -1
- package/dist/plugins/posthog/index.js +21 -12
- package/dist/plugins/posthog/index.js.map +1 -1
- package/dist/plugins/posthog/sanitize-event-payload.d.ts +25 -0
- package/dist/plugins/posthog/sanitize-event-payload.d.ts.map +1 -0
- package/dist/plugins/posthog/sanitize-event-payload.js +136 -0
- package/dist/plugins/posthog/sanitize-event-payload.js.map +1 -0
- package/dist/style.css +214 -1651
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts.map +1 -1
- package/dist/v2/blocks/operation-block/OperationBlock.vue.js.map +1 -1
- package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js +72 -32
- package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js.map +1 -1
- package/dist/v2/blocks/operation-block/components/Header.vue.d.ts +2 -2
- package/dist/v2/blocks/operation-block/components/Header.vue.d.ts.map +1 -1
- package/dist/v2/blocks/operation-block/components/Header.vue.js +1 -1
- package/dist/v2/blocks/operation-block/components/Header.vue.js.map +1 -1
- package/dist/v2/blocks/operation-block/components/Header.vue.script.js +3 -3
- package/dist/v2/blocks/operation-block/components/Header.vue.script.js.map +1 -1
- package/dist/v2/blocks/operation-block/components/OpenApiClientButton.vue.js +1 -1
- package/dist/v2/blocks/operation-block/index.d.ts +1 -0
- package/dist/v2/blocks/operation-block/index.d.ts.map +1 -1
- package/dist/v2/blocks/operation-block/index.js +2 -1
- package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.script.js +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/operation-to-har.d.ts.map +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js +15 -9
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js.map +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.d.ts.map +1 -1
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js +9 -7
- package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js.map +1 -1
- package/dist/v2/blocks/operation-code-sample/index.d.ts +1 -0
- package/dist/v2/blocks/operation-code-sample/index.d.ts.map +1 -1
- package/dist/v2/blocks/operation-code-sample/index.js +2 -1
- package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/RequestBlock.vue.js +1 -1
- package/dist/v2/blocks/request-block/RequestBlock.vue.js.map +1 -1
- package/dist/v2/blocks/request-block/RequestBlock.vue.script.js +30 -17
- package/dist/v2/blocks/request-block/RequestBlock.vue.script.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestBody.vue.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestBody.vue.js +1 -1
- package/dist/v2/blocks/request-block/components/RequestBody.vue.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestBody.vue.script.js +43 -10
- package/dist/v2/blocks/request-block/components/RequestBody.vue.script.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.script.js +2 -2
- package/dist/v2/blocks/request-block/components/RequestParams.vue.d.ts +2 -2
- package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts +2 -2
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts +4 -2
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.script.js +2 -2
- package/dist/v2/blocks/request-block/components/RequestTableRow.vue.script.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.js.map +1 -1
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.script.js +4 -1
- package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.script.js.map +1 -1
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts +2 -1
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts.map +1 -1
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js +42 -13
- package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js.map +1 -1
- package/dist/v2/blocks/request-block/helpers/create-parameter-rows.d.ts +14 -0
- package/dist/v2/blocks/request-block/helpers/create-parameter-rows.d.ts.map +1 -0
- package/dist/v2/blocks/request-block/helpers/create-parameter-rows.js +136 -0
- package/dist/v2/blocks/request-block/helpers/create-parameter-rows.js.map +1 -0
- package/dist/v2/blocks/request-block/helpers/get-form-body-rows.js +1 -1
- package/dist/v2/blocks/response-block/ResponseBlock.vue.script.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.script.js +12 -10
- package/dist/v2/blocks/response-block/components/ResponseBody.vue.script.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts +2 -0
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.script.js +17 -4
- package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.script.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.d.ts +3 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.script.js +21 -9
- package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.script.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts +2 -2
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.script.js +2 -2
- package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.script.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.js +1 -1
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.js.map +1 -1
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.script.js +1 -0
- package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.script.js.map +1 -1
- package/dist/v2/blocks/response-block/helpers/media-types.d.ts +1 -1
- package/dist/v2/blocks/response-block/helpers/media-types.d.ts.map +1 -1
- package/dist/v2/blocks/response-block/helpers/media-types.js +14 -7
- package/dist/v2/blocks/response-block/helpers/media-types.js.map +1 -1
- package/dist/v2/blocks/response-block/helpers/prettify-jsonc-string.d.ts +6 -0
- package/dist/v2/blocks/response-block/helpers/prettify-jsonc-string.d.ts.map +1 -0
- package/dist/v2/blocks/response-block/helpers/prettify-jsonc-string.js +22 -0
- package/dist/v2/blocks/response-block/helpers/prettify-jsonc-string.js.map +1 -0
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts +2 -2
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js +1 -1
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.script.js +124 -91
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.script.js +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue.d.ts +2 -2
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts +30 -20
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.script.js +43 -21
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.d.ts +15 -2
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js +1 -3
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.script.js +74 -28
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.d.ts +30 -20
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.script.js +190 -72
- package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js +7 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts +26 -10
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.script.js +25 -3
- package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.script.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.d.ts.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js +12 -3
- package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js.map +1 -1
- package/dist/v2/blocks/scalar-auth-selector-block/index.d.ts +1 -0
- package/dist/v2/blocks/scalar-auth-selector-block/index.d.ts.map +1 -1
- package/dist/v2/components/code-input/CodeInput.vue.d.ts +4 -4
- package/dist/v2/components/code-input/CodeInput.vue.script.js +1 -1
- package/dist/v2/components/code-input/code-variable-widget.js +1 -1
- package/dist/v2/components/forms/ConfirmationForm.vue.d.ts +2 -2
- package/dist/v2/components/modals/DeleteModal.vue.d.ts +2 -2
- package/dist/v2/components/server/ServerDropdown.vue.d.ts +2 -2
- package/dist/v2/components/server/ServerDropdown.vue.js.map +1 -1
- package/dist/v2/components/server/ServerDropdown.vue.script.js +1 -1
- package/dist/v2/components/server/ServerDropdown.vue.script.js.map +1 -1
- package/dist/v2/components/sidebar/Sidebar.vue.d.ts.map +1 -1
- package/dist/v2/components/sidebar/Sidebar.vue.js.map +1 -1
- package/dist/v2/components/sidebar/Sidebar.vue.script.js +4 -3
- package/dist/v2/components/sidebar/Sidebar.vue.script.js.map +1 -1
- package/dist/v2/constants.js +1 -1
- package/dist/v2/features/command-palette/components/CommandActionForm.vue.d.ts +2 -2
- package/dist/v2/features/command-palette/components/CommandActionInput.vue.d.ts +2 -2
- package/dist/v2/features/command-palette/index.d.ts +0 -2
- package/dist/v2/features/command-palette/index.d.ts.map +1 -1
- package/dist/v2/features/command-palette/index.js +1 -3
- package/dist/v2/features/environments/components/EnvironmentDeleteModal.vue.d.ts +2 -2
- package/dist/v2/features/modal/Modal.vue.d.ts +5 -7
- package/dist/v2/features/modal/Modal.vue.d.ts.map +1 -1
- package/dist/v2/features/modal/Modal.vue.js.map +1 -1
- package/dist/v2/features/modal/Modal.vue.script.js +3 -3
- package/dist/v2/features/modal/Modal.vue.script.js.map +1 -1
- package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts +1 -1
- package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts.map +1 -1
- package/dist/v2/features/modal/helpers/create-api-client-modal.js +8 -3
- package/dist/v2/features/modal/helpers/create-api-client-modal.js.map +1 -1
- package/dist/v2/features/modal/helpers/resolve-route-parameters.d.ts +5 -1
- package/dist/v2/features/modal/helpers/resolve-route-parameters.d.ts.map +1 -1
- package/dist/v2/features/modal/helpers/resolve-route-parameters.js +15 -4
- package/dist/v2/features/modal/helpers/resolve-route-parameters.js.map +1 -1
- package/dist/v2/features/modal/hooks/use-modal-sidebar.d.ts.map +1 -1
- package/dist/v2/features/modal/hooks/use-modal-sidebar.js +5 -1
- package/dist/v2/features/modal/hooks/use-modal-sidebar.js.map +1 -1
- package/dist/v2/features/modal/index.js +1 -1
- package/dist/v2/features/modal/modal-events.d.ts.map +1 -1
- package/dist/v2/features/modal/modal-events.js +10 -6
- package/dist/v2/features/modal/modal-events.js.map +1 -1
- package/dist/v2/features/operation/Operation.vue.d.ts +35 -3
- package/dist/v2/features/operation/Operation.vue.d.ts.map +1 -1
- package/dist/v2/features/operation/Operation.vue.js.map +1 -1
- package/dist/v2/features/operation/Operation.vue.script.js +1 -9
- package/dist/v2/features/operation/Operation.vue.script.js.map +1 -1
- package/dist/v2/helpers/handle-hotkeys.d.ts.map +1 -1
- package/dist/v2/helpers/handle-hotkeys.js +4 -0
- package/dist/v2/helpers/handle-hotkeys.js.map +1 -1
- package/dist/v2/helpers/test-utils.d.ts +2 -0
- package/dist/v2/helpers/test-utils.d.ts.map +1 -1
- package/dist/v2/helpers/test-utils.js +18 -0
- package/dist/v2/helpers/test-utils.js.map +1 -0
- package/dist/v2/hooks/index.d.ts +2 -0
- package/dist/v2/hooks/index.d.ts.map +1 -0
- package/dist/v2/hooks/index.js +2 -0
- package/dist/v2/types/options.d.ts +1 -1
- package/dist/v2/types/options.d.ts.map +1 -1
- package/dist/v2/workspace-events.d.ts.map +1 -1
- package/dist/v2/workspace-events.js +2 -0
- package/dist/v2/workspace-events.js.map +1 -1
- package/dist/vue-styles.css +108 -658
- package/package.json +68 -97
- package/dist/components/IconSelector.vue.d.ts +0 -27
- package/dist/components/IconSelector.vue.d.ts.map +0 -1
- package/dist/components/IconSelector.vue.js +0 -7
- package/dist/components/IconSelector.vue.js.map +0 -1
- package/dist/components/IconSelector.vue.script.js +0 -65
- package/dist/components/IconSelector.vue.script.js.map +0 -1
- package/dist/components/ImportCollection/IntegrationLogo.vue.d.ts +0 -7
- package/dist/components/ImportCollection/IntegrationLogo.vue.d.ts.map +0 -1
- package/dist/components/ImportCollection/IntegrationLogo.vue.js +0 -7
- package/dist/components/ImportCollection/IntegrationLogo.vue.js.map +0 -1
- package/dist/components/ImportCollection/IntegrationLogo.vue.script.js +0 -50
- package/dist/components/ImportCollection/IntegrationLogo.vue.script.js.map +0 -1
- package/dist/components/ScalarAsciiArt.vue.d.ts.map +0 -1
- package/dist/components/ScalarAsciiArt.vue.js.map +0 -1
- package/dist/components/ScalarAsciiArt.vue.script.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +0 -1
- package/dist/monacoeditorwork/editor.worker.bundle.js +0 -14319
- package/dist/monacoeditorwork/json.worker.bundle.js +0 -22098
- package/dist/monacoeditorwork/yaml.worker.bundle.js +0 -38414
- package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts +0 -42
- package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts.map +0 -1
- package/dist/v2/blocks/request-block/helpers/get-default-headers.js +0 -61
- package/dist/v2/blocks/request-block/helpers/get-default-headers.js.map +0 -1
- package/dist/v2/features/app/App.vue.d.ts +0 -75
- package/dist/v2/features/app/App.vue.d.ts.map +0 -1
- package/dist/v2/features/app/App.vue.js +0 -8
- package/dist/v2/features/app/App.vue.js.map +0 -1
- package/dist/v2/features/app/App.vue.script.js +0 -284
- package/dist/v2/features/app/App.vue.script.js.map +0 -1
- package/dist/v2/features/app/app-events.d.ts +0 -20
- package/dist/v2/features/app/app-events.d.ts.map +0 -1
- package/dist/v2/features/app/app-events.js +0 -254
- package/dist/v2/features/app/app-events.js.map +0 -1
- package/dist/v2/features/app/app-state.d.ts +0 -156
- package/dist/v2/features/app/app-state.d.ts.map +0 -1
- package/dist/v2/features/app/app-state.js +0 -717
- package/dist/v2/features/app/app-state.js.map +0 -1
- package/dist/v2/features/app/components/AppHeader.vue.d.ts +0 -43
- package/dist/v2/features/app/components/AppHeader.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/AppHeader.vue.js +0 -7
- package/dist/v2/features/app/components/AppHeader.vue.js.map +0 -1
- package/dist/v2/features/app/components/AppHeader.vue.script.js +0 -53
- package/dist/v2/features/app/components/AppHeader.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/AppHeaderActions.vue.d.ts +0 -32
- package/dist/v2/features/app/components/AppHeaderActions.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/AppHeaderActions.vue.js +0 -7
- package/dist/v2/features/app/components/AppHeaderActions.vue.js.map +0 -1
- package/dist/v2/features/app/components/AppHeaderActions.vue.script.js +0 -172
- package/dist/v2/features/app/components/AppHeaderActions.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/AppSidebar.vue.d.ts +0 -37
- package/dist/v2/features/app/components/AppSidebar.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/AppSidebar.vue.js +0 -9
- package/dist/v2/features/app/components/AppSidebar.vue.js.map +0 -1
- package/dist/v2/features/app/components/AppSidebar.vue.script.js +0 -466
- package/dist/v2/features/app/components/AppSidebar.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/CreateVersionModal.vue.d.ts +0 -28
- package/dist/v2/features/app/components/CreateVersionModal.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/CreateVersionModal.vue.js +0 -7
- package/dist/v2/features/app/components/CreateVersionModal.vue.js.map +0 -1
- package/dist/v2/features/app/components/CreateVersionModal.vue.script.js +0 -84
- package/dist/v2/features/app/components/CreateVersionModal.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.d.ts +0 -16
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.js +0 -7
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.js.map +0 -1
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.script.js +0 -58
- package/dist/v2/features/app/components/CreateWorkspaceModal.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/DesktopTab.vue.d.ts +0 -27
- package/dist/v2/features/app/components/DesktopTab.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/DesktopTab.vue.js +0 -9
- package/dist/v2/features/app/components/DesktopTab.vue.js.map +0 -1
- package/dist/v2/features/app/components/DesktopTab.vue.script.js +0 -121
- package/dist/v2/features/app/components/DesktopTab.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/DesktopTabs.vue.d.ts +0 -14
- package/dist/v2/features/app/components/DesktopTabs.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/DesktopTabs.vue.js +0 -7
- package/dist/v2/features/app/components/DesktopTabs.vue.js.map +0 -1
- package/dist/v2/features/app/components/DesktopTabs.vue.script.js +0 -75
- package/dist/v2/features/app/components/DesktopTabs.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.d.ts +0 -25
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.js +0 -9
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.js.map +0 -1
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.script.js +0 -345
- package/dist/v2/features/app/components/DocumentBreadcrumb.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/DocumentSyncIndicator.vue.d.ts +0 -16
- package/dist/v2/features/app/components/DocumentSyncIndicator.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/PublishDocumentModal.vue.d.ts +0 -77
- package/dist/v2/features/app/components/PublishDocumentModal.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/PublishDocumentModal.vue.js +0 -7
- package/dist/v2/features/app/components/PublishDocumentModal.vue.js.map +0 -1
- package/dist/v2/features/app/components/PublishDocumentModal.vue.script.js +0 -209
- package/dist/v2/features/app/components/PublishDocumentModal.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/SidebarDocument.vue.d.ts +0 -45
- package/dist/v2/features/app/components/SidebarDocument.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/SidebarDocument.vue.js +0 -7
- package/dist/v2/features/app/components/SidebarDocument.vue.js.map +0 -1
- package/dist/v2/features/app/components/SidebarDocument.vue.script.js +0 -137
- package/dist/v2/features/app/components/SidebarDocument.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/SidebarItemMenu.vue.d.ts +0 -26
- package/dist/v2/features/app/components/SidebarItemMenu.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/SidebarItemMenu.vue.js +0 -7
- package/dist/v2/features/app/components/SidebarItemMenu.vue.js.map +0 -1
- package/dist/v2/features/app/components/SidebarItemMenu.vue.script.js +0 -175
- package/dist/v2/features/app/components/SidebarItemMenu.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/SplashScreen.vue.d.ts +0 -4
- package/dist/v2/features/app/components/SplashScreen.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/SplashScreen.vue.js +0 -9
- package/dist/v2/features/app/components/SplashScreen.vue.js.map +0 -1
- package/dist/v2/features/app/components/SplashScreen.vue.script.js +0 -20
- package/dist/v2/features/app/components/SplashScreen.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.d.ts +0 -18
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.d.ts.map +0 -1
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.js +0 -9
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.js.map +0 -1
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.script.js +0 -136
- package/dist/v2/features/app/components/SyncConflictResolutionEditor.vue.script.js.map +0 -1
- package/dist/v2/features/app/components/index.d.ts +0 -2
- package/dist/v2/features/app/components/index.d.ts.map +0 -1
- package/dist/v2/features/app/components/index.js +0 -2
- package/dist/v2/features/app/helpers/check-version-conflict.d.ts +0 -54
- package/dist/v2/features/app/helpers/check-version-conflict.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/check-version-conflict.js +0 -82
- package/dist/v2/features/app/helpers/check-version-conflict.js.map +0 -1
- package/dist/v2/features/app/helpers/compute-version-status.d.ts +0 -45
- package/dist/v2/features/app/helpers/compute-version-status.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/compute-version-status.js +0 -18
- package/dist/v2/features/app/helpers/compute-version-status.js.map +0 -1
- package/dist/v2/features/app/helpers/create-api-client-app.d.ts +0 -59
- package/dist/v2/features/app/helpers/create-api-client-app.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/create-api-client-app.js +0 -55
- package/dist/v2/features/app/helpers/create-api-client-app.js.map +0 -1
- package/dist/v2/features/app/helpers/create-draft-registry-document.d.ts +0 -39
- package/dist/v2/features/app/helpers/create-draft-registry-document.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/create-draft-registry-document.js +0 -64
- package/dist/v2/features/app/helpers/create-draft-registry-document.js.map +0 -1
- package/dist/v2/features/app/helpers/create-temp-operation.d.ts +0 -14
- package/dist/v2/features/app/helpers/create-temp-operation.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/create-temp-operation.js +0 -52
- package/dist/v2/features/app/helpers/create-temp-operation.js.map +0 -1
- package/dist/v2/features/app/helpers/detect-document-conflicts.d.ts +0 -26
- package/dist/v2/features/app/helpers/detect-document-conflicts.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/detect-document-conflicts.js +0 -27
- package/dist/v2/features/app/helpers/detect-document-conflicts.js.map +0 -1
- package/dist/v2/features/app/helpers/filter-workspaces.d.ts +0 -49
- package/dist/v2/features/app/helpers/filter-workspaces.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/filter-workspaces.js +0 -55
- package/dist/v2/features/app/helpers/filter-workspaces.js.map +0 -1
- package/dist/v2/features/app/helpers/get-route-param.d.ts +0 -7
- package/dist/v2/features/app/helpers/get-route-param.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/get-route-param.js +0 -12
- package/dist/v2/features/app/helpers/get-route-param.js.map +0 -1
- package/dist/v2/features/app/helpers/group-workspaces.d.ts +0 -44
- package/dist/v2/features/app/helpers/group-workspaces.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/group-workspaces.js +0 -53
- package/dist/v2/features/app/helpers/group-workspaces.js.map +0 -1
- package/dist/v2/features/app/helpers/load-registry-document.d.ts +0 -24
- package/dist/v2/features/app/helpers/load-registry-document.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/load-registry-document.js +0 -47
- package/dist/v2/features/app/helpers/load-registry-document.js.map +0 -1
- package/dist/v2/features/app/helpers/registry-error-messages.d.ts +0 -23
- package/dist/v2/features/app/helpers/registry-error-messages.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/registry-error-messages.js +0 -63
- package/dist/v2/features/app/helpers/registry-error-messages.js.map +0 -1
- package/dist/v2/features/app/helpers/routes.d.ts +0 -184
- package/dist/v2/features/app/helpers/routes.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/routes.js +0 -153
- package/dist/v2/features/app/helpers/routes.js.map +0 -1
- package/dist/v2/features/app/helpers/version-status-presentation.d.ts +0 -24
- package/dist/v2/features/app/helpers/version-status-presentation.d.ts.map +0 -1
- package/dist/v2/features/app/helpers/version-status-presentation.js +0 -43
- package/dist/v2/features/app/helpers/version-status-presentation.js.map +0 -1
- package/dist/v2/features/app/hooks/use-active-document-version.d.ts +0 -42
- package/dist/v2/features/app/hooks/use-active-document-version.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-active-document-version.js +0 -60
- package/dist/v2/features/app/hooks/use-active-document-version.js.map +0 -1
- package/dist/v2/features/app/hooks/use-document-filter.d.ts +0 -38
- package/dist/v2/features/app/hooks/use-document-filter.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-document-filter.js +0 -63
- package/dist/v2/features/app/hooks/use-document-filter.js.map +0 -1
- package/dist/v2/features/app/hooks/use-document-sync.d.ts +0 -126
- package/dist/v2/features/app/hooks/use-document-sync.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-document-sync.js +0 -448
- package/dist/v2/features/app/hooks/use-document-sync.js.map +0 -1
- package/dist/v2/features/app/hooks/use-document-watcher.d.ts +0 -30
- package/dist/v2/features/app/hooks/use-document-watcher.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-document-watcher.js +0 -168
- package/dist/v2/features/app/hooks/use-document-watcher.js.map +0 -1
- package/dist/v2/features/app/hooks/use-network-status.d.ts +0 -29
- package/dist/v2/features/app/hooks/use-network-status.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-network-status.js +0 -58
- package/dist/v2/features/app/hooks/use-network-status.js.map +0 -1
- package/dist/v2/features/app/hooks/use-sidebar-context-menu.d.ts +0 -17258
- package/dist/v2/features/app/hooks/use-sidebar-context-menu.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-sidebar-context-menu.js +0 -107
- package/dist/v2/features/app/hooks/use-sidebar-context-menu.js.map +0 -1
- package/dist/v2/features/app/hooks/use-sidebar-documents.d.ts +0 -119
- package/dist/v2/features/app/hooks/use-sidebar-documents.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-sidebar-documents.js +0 -219
- package/dist/v2/features/app/hooks/use-sidebar-documents.js.map +0 -1
- package/dist/v2/features/app/hooks/use-theme.d.ts +0 -56
- package/dist/v2/features/app/hooks/use-theme.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-theme.js +0 -94
- package/dist/v2/features/app/hooks/use-theme.js.map +0 -1
- package/dist/v2/features/app/hooks/use-version-conflict-check.d.ts +0 -35
- package/dist/v2/features/app/hooks/use-version-conflict-check.d.ts.map +0 -1
- package/dist/v2/features/app/hooks/use-version-conflict-check.js +0 -62
- package/dist/v2/features/app/hooks/use-version-conflict-check.js.map +0 -1
- package/dist/v2/features/app/index.d.ts +0 -10
- package/dist/v2/features/app/index.d.ts.map +0 -1
- package/dist/v2/features/app/index.js +0 -8
- package/dist/v2/features/collection/DocumentCollection.vue.d.ts +0 -13
- package/dist/v2/features/collection/DocumentCollection.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/DocumentCollection.vue.js +0 -8
- package/dist/v2/features/collection/DocumentCollection.vue.js.map +0 -1
- package/dist/v2/features/collection/DocumentCollection.vue.script.js +0 -112
- package/dist/v2/features/collection/DocumentCollection.vue.script.js.map +0 -1
- package/dist/v2/features/collection/OperationCollection.vue.d.ts +0 -6
- package/dist/v2/features/collection/OperationCollection.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/OperationCollection.vue.js +0 -7
- package/dist/v2/features/collection/OperationCollection.vue.js.map +0 -1
- package/dist/v2/features/collection/OperationCollection.vue.script.js +0 -95
- package/dist/v2/features/collection/OperationCollection.vue.script.js.map +0 -1
- package/dist/v2/features/collection/WorkspaceCollection.vue.d.ts +0 -6
- package/dist/v2/features/collection/WorkspaceCollection.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/WorkspaceCollection.vue.js +0 -7
- package/dist/v2/features/collection/WorkspaceCollection.vue.js.map +0 -1
- package/dist/v2/features/collection/WorkspaceCollection.vue.script.js +0 -74
- package/dist/v2/features/collection/WorkspaceCollection.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Authentication.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Authentication.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Authentication.vue.js +0 -9
- package/dist/v2/features/collection/components/Authentication.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Authentication.vue.script.js +0 -174
- package/dist/v2/features/collection/components/Authentication.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Cookies.vue.d.ts +0 -21
- package/dist/v2/features/collection/components/Cookies.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Cookies.vue.js +0 -7
- package/dist/v2/features/collection/components/Cookies.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Cookies.vue.script.js +0 -58
- package/dist/v2/features/collection/components/Cookies.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.d.ts +0 -12
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.js +0 -9
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.js.map +0 -1
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.script.js +0 -174
- package/dist/v2/features/collection/components/DocumentScriptsEditors.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/Editor.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Editor/Editor.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/Editor.vue.js +0 -9
- package/dist/v2/features/collection/components/Editor/Editor.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/Editor.vue.script.js +0 -361
- package/dist/v2/features/collection/components/Editor/Editor.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.d.ts +0 -19
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.js +0 -7
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.script.js +0 -69
- package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.js +0 -7
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.script.js +0 -91
- package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.d.ts +0 -12
- package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.js +0 -22
- package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.d.ts +0 -11
- package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.js +0 -17
- package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.d.ts +0 -7
- package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.js +0 -17
- package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.d.ts +0 -10
- package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.js +0 -34
- package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/stringify-document.d.ts +0 -10
- package/dist/v2/features/collection/components/Editor/helpers/stringify-document.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/helpers/stringify-document.js +0 -18
- package/dist/v2/features/collection/components/Editor/helpers/stringify-document.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.d.ts +0 -15
- package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.js +0 -36
- package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.js.map +0 -1
- package/dist/v2/features/collection/components/Editor/index.d.ts +0 -2
- package/dist/v2/features/collection/components/Editor/index.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Editor/index.js +0 -2
- package/dist/v2/features/collection/components/Environment.vue.d.ts +0 -21
- package/dist/v2/features/collection/components/Environment.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Environment.vue.js +0 -7
- package/dist/v2/features/collection/components/Environment.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Environment.vue.script.js +0 -61
- package/dist/v2/features/collection/components/Environment.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Form.vue.d.ts +0 -29
- package/dist/v2/features/collection/components/Form.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Form.vue.js +0 -7
- package/dist/v2/features/collection/components/Form.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Form.vue.script.js +0 -78
- package/dist/v2/features/collection/components/Form.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/GetStarted.vue.d.ts +0 -21
- package/dist/v2/features/collection/components/GetStarted.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/GetStarted.vue.js +0 -7
- package/dist/v2/features/collection/components/GetStarted.vue.js.map +0 -1
- package/dist/v2/features/collection/components/GetStarted.vue.script.js +0 -144
- package/dist/v2/features/collection/components/GetStarted.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/LabelInput.vue.d.ts +0 -18
- package/dist/v2/features/collection/components/LabelInput.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/LabelInput.vue.js +0 -9
- package/dist/v2/features/collection/components/LabelInput.vue.js.map +0 -1
- package/dist/v2/features/collection/components/LabelInput.vue.script.js +0 -38
- package/dist/v2/features/collection/components/LabelInput.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Overview.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Overview.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Overview.vue.js +0 -9
- package/dist/v2/features/collection/components/Overview.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Overview.vue.script.js +0 -204
- package/dist/v2/features/collection/components/Overview.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.script.js +0 -223
- package/dist/v2/features/collection/components/Runner/components/Runner.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.d.ts +0 -20
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.script.js +0 -45
- package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.d.ts +0 -19
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.script.js +0 -73
- package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.script.js +0 -124
- package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.d.ts +0 -17
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.script.js +0 -126
- package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.d.ts +0 -18
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.script.js +0 -180
- package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.d.ts +0 -14
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.script.js +0 -44
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.d.ts +0 -19
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.script.js +0 -53
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.d.ts +0 -23
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.js +0 -7
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.script.js +0 -75
- package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/hooks/index.d.ts +0 -3
- package/dist/v2/features/collection/components/Runner/hooks/index.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.d.ts +0 -75
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.js +0 -191
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.d.ts +0 -46
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.js +0 -114
- package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.js.map +0 -1
- package/dist/v2/features/collection/components/Runner/index.d.ts +0 -2
- package/dist/v2/features/collection/components/Runner/index.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Scripts.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Scripts.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Scripts.vue.js +0 -7
- package/dist/v2/features/collection/components/Scripts.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Scripts.vue.script.js +0 -49
- package/dist/v2/features/collection/components/Scripts.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Servers.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Servers.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Servers.vue.js +0 -7
- package/dist/v2/features/collection/components/Servers.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Servers.vue.script.js +0 -219
- package/dist/v2/features/collection/components/Servers.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Settings.vue.d.ts +0 -16
- package/dist/v2/features/collection/components/Settings.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Settings.vue.js +0 -7
- package/dist/v2/features/collection/components/Settings.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Settings.vue.script.js +0 -81
- package/dist/v2/features/collection/components/Settings.vue.script.js.map +0 -1
- package/dist/v2/features/collection/components/Tabs.vue.d.ts +0 -8
- package/dist/v2/features/collection/components/Tabs.vue.d.ts.map +0 -1
- package/dist/v2/features/collection/components/Tabs.vue.js +0 -7
- package/dist/v2/features/collection/components/Tabs.vue.js.map +0 -1
- package/dist/v2/features/collection/components/Tabs.vue.script.js +0 -55
- package/dist/v2/features/collection/components/Tabs.vue.script.js.map +0 -1
- package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.d.ts +0 -12
- package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.d.ts.map +0 -1
- package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.js +0 -19
- package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.js.map +0 -1
- package/dist/v2/features/command-palette/TheCommandPalette.vue.d.ts +0 -42
- package/dist/v2/features/command-palette/TheCommandPalette.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/TheCommandPalette.vue.js +0 -9
- package/dist/v2/features/command-palette/TheCommandPalette.vue.js.map +0 -1
- package/dist/v2/features/command-palette/TheCommandPalette.vue.script.js +0 -189
- package/dist/v2/features/command-palette/TheCommandPalette.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.d.ts +0 -49
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.script.js +0 -225
- package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.d.ts +0 -53
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.script.js +0 -227
- package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.d.ts +0 -44
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.js +0 -9
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.script.js +0 -137
- package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.d.ts +0 -30
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.script.js +0 -156
- package/dist/v2/features/command-palette/components/CommandPaletteImportPostman.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.d.ts +0 -37
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.script.js +0 -105
- package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.d.ts +0 -48
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.script.js +0 -228
- package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.d.ts +0 -65
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.js +0 -7
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.script.js +0 -142
- package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.d.ts +0 -58
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.js +0 -9
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.script.js +0 -142
- package/dist/v2/features/command-palette/components/PostmanImportPreview.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.d.ts +0 -23
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.js +0 -9
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.script.js +0 -138
- package/dist/v2/features/command-palette/components/PostmanRequestTreeRow.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.d.ts +0 -34
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.d.ts.map +0 -1
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.js +0 -7
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.js.map +0 -1
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.script.js +0 -39
- package/dist/v2/features/command-palette/components/WatchModeToggle.vue.script.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/generate-unique-slug.d.ts +0 -20
- package/dist/v2/features/command-palette/helpers/generate-unique-slug.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/generate-unique-slug.js +0 -33
- package/dist/v2/features/command-palette/helpers/generate-unique-slug.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-merge-key.d.ts +0 -11
- package/dist/v2/features/command-palette/helpers/get-merge-key.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-merge-key.js +0 -32
- package/dist/v2/features/command-palette/helpers/get-merge-key.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-openapi-document-details.d.ts +0 -24
- package/dist/v2/features/command-palette/helpers/get-openapi-document-details.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-openapi-document-details.js +0 -56
- package/dist/v2/features/command-palette/helpers/get-openapi-document-details.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.d.ts +0 -24
- package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.js +0 -22
- package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-operation-from-curl.d.ts +0 -26
- package/dist/v2/features/command-palette/helpers/get-operation-from-curl.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js +0 -119
- package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-postman-convert-options.d.ts +0 -14
- package/dist/v2/features/command-palette/helpers/get-postman-convert-options.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-postman-convert-options.js +0 -19
- package/dist/v2/features/command-palette/helpers/get-postman-convert-options.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-postman-document-details.d.ts +0 -28
- package/dist/v2/features/command-palette/helpers/get-postman-document-details.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/get-postman-document-details.js +0 -36
- package/dist/v2/features/command-palette/helpers/get-postman-document-details.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/import-document-to-workspace.d.ts +0 -30
- package/dist/v2/features/command-palette/helpers/import-document-to-workspace.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/import-document-to-workspace.js +0 -70
- package/dist/v2/features/command-palette/helpers/import-document-to-workspace.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/load-document-from-source.d.ts +0 -20
- package/dist/v2/features/command-palette/helpers/load-document-from-source.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/load-document-from-source.js +0 -72
- package/dist/v2/features/command-palette/helpers/load-document-from-source.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/parse-curl.d.ts +0 -14
- package/dist/v2/features/command-palette/helpers/parse-curl.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/parse-curl.js +0 -106
- package/dist/v2/features/command-palette/helpers/parse-curl.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/postman-request-collisions.d.ts +0 -11
- package/dist/v2/features/command-palette/helpers/postman-request-collisions.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/postman-request-collisions.js +0 -35
- package/dist/v2/features/command-palette/helpers/postman-request-collisions.js.map +0 -1
- package/dist/v2/features/command-palette/helpers/postman-request-tree.d.ts +0 -41
- package/dist/v2/features/command-palette/helpers/postman-request-tree.d.ts.map +0 -1
- package/dist/v2/features/command-palette/helpers/postman-request-tree.js +0 -139
- package/dist/v2/features/command-palette/helpers/postman-request-tree.js.map +0 -1
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts +0 -426
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts.map +0 -1
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.js +0 -207
- package/dist/v2/features/command-palette/hooks/use-command-palette-state.js.map +0 -1
- package/dist/v2/features/editor/config.d.ts +0 -16
- package/dist/v2/features/editor/config.d.ts.map +0 -1
- package/dist/v2/features/editor/config.js +0 -19
- package/dist/v2/features/editor/config.js.map +0 -1
- package/dist/v2/features/editor/helpers/configure-language-support.d.ts +0 -13
- package/dist/v2/features/editor/helpers/configure-language-support.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/configure-language-support.js +0 -48
- package/dist/v2/features/editor/helpers/configure-language-support.js.map +0 -1
- package/dist/v2/features/editor/helpers/ensure-monaco-environment.d.ts +0 -6
- package/dist/v2/features/editor/helpers/ensure-monaco-environment.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/ensure-monaco-environment.js +0 -21
- package/dist/v2/features/editor/helpers/ensure-monaco-environment.js.map +0 -1
- package/dist/v2/features/editor/helpers/json/create-json-model.d.ts +0 -12
- package/dist/v2/features/editor/helpers/json/create-json-model.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/json/create-json-model.js +0 -31
- package/dist/v2/features/editor/helpers/json/create-json-model.js.map +0 -1
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts +0 -14
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js +0 -22
- package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-ast.d.ts +0 -12
- package/dist/v2/features/editor/helpers/json/json-ast.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-ast.js +0 -32
- package/dist/v2/features/editor/helpers/json/json-ast.js.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-pointer-links.d.ts +0 -15
- package/dist/v2/features/editor/helpers/json/json-pointer-links.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-pointer-links.js +0 -104
- package/dist/v2/features/editor/helpers/json/json-pointer-links.js.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-pointer-path.d.ts +0 -7
- package/dist/v2/features/editor/helpers/json/json-pointer-path.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/json/json-pointer-path.js +0 -27
- package/dist/v2/features/editor/helpers/json/json-pointer-path.js.map +0 -1
- package/dist/v2/features/editor/helpers/model.d.ts +0 -9
- package/dist/v2/features/editor/helpers/model.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/range-to-whole-line.d.ts +0 -14
- package/dist/v2/features/editor/helpers/range-to-whole-line.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/range-to-whole-line.js +0 -27
- package/dist/v2/features/editor/helpers/range-to-whole-line.js.map +0 -1
- package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.d.ts +0 -16
- package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.js +0 -84
- package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.js.map +0 -1
- package/dist/v2/features/editor/helpers/theme/load-css-variables.d.ts +0 -36
- package/dist/v2/features/editor/helpers/theme/load-css-variables.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/theme/load-css-variables.js +0 -117
- package/dist/v2/features/editor/helpers/theme/load-css-variables.js.map +0 -1
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.d.ts +0 -13
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.js +0 -32
- package/dist/v2/features/editor/helpers/yaml/create-yaml-model.js.map +0 -1
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.d.ts +0 -19
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.d.ts.map +0 -1
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.js +0 -70
- package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.js.map +0 -1
- package/dist/v2/features/editor/hooks/use-editor-markers.d.ts +0 -152
- package/dist/v2/features/editor/hooks/use-editor-markers.d.ts.map +0 -1
- package/dist/v2/features/editor/hooks/use-editor-markers.js +0 -37
- package/dist/v2/features/editor/hooks/use-editor-markers.js.map +0 -1
- package/dist/v2/features/editor/hooks/use-editor.d.ts +0 -39
- package/dist/v2/features/editor/hooks/use-editor.d.ts.map +0 -1
- package/dist/v2/features/editor/hooks/use-editor.js +0 -133
- package/dist/v2/features/editor/hooks/use-editor.js.map +0 -1
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.d.ts +0 -16
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.d.ts.map +0 -1
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.js +0 -45
- package/dist/v2/features/editor/hooks/use-json-pointer-link-support.js.map +0 -1
- package/dist/v2/features/editor/hooks/use-three-way-merge-editor.d.ts +0 -77
- package/dist/v2/features/editor/hooks/use-three-way-merge-editor.d.ts.map +0 -1
- package/dist/v2/features/editor/hooks/use-three-way-merge-editor.js +0 -396
- package/dist/v2/features/editor/hooks/use-three-way-merge-editor.js.map +0 -1
- package/dist/v2/features/editor/index.d.ts +0 -5
- package/dist/v2/features/editor/index.d.ts.map +0 -1
- package/dist/v2/features/editor/index.js +0 -5
- package/dist/v2/features/editor/schemas/openapi-3.1-schema.json.js +0 -51
- package/dist/v2/features/editor/schemas/openapi-3.1-schema.json.js.map +0 -1
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.d.ts +0 -10
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.d.ts.map +0 -1
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.js +0 -9
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.js.map +0 -1
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.script.js +0 -188
- package/dist/v2/features/global-cookies/components/CookiesTable.vue.script.js.map +0 -1
- package/dist/v2/features/global-cookies/index.d.ts +0 -2
- package/dist/v2/features/global-cookies/index.d.ts.map +0 -1
- package/dist/v2/features/global-cookies/index.js +0 -2
- package/dist/v2/features/settings/CollectionSettings.vue.d.ts +0 -28
- package/dist/v2/features/settings/CollectionSettings.vue.d.ts.map +0 -1
- package/dist/v2/features/settings/CollectionSettings.vue.js +0 -7
- package/dist/v2/features/settings/CollectionSettings.vue.js.map +0 -1
- package/dist/v2/features/settings/CollectionSettings.vue.script.js +0 -229
- package/dist/v2/features/settings/CollectionSettings.vue.script.js.map +0 -1
- package/dist/v2/features/settings/DocumentSettings.vue.d.ts +0 -20
- package/dist/v2/features/settings/DocumentSettings.vue.d.ts.map +0 -1
- package/dist/v2/features/settings/DocumentSettings.vue.js +0 -7
- package/dist/v2/features/settings/DocumentSettings.vue.js.map +0 -1
- package/dist/v2/features/settings/DocumentSettings.vue.script.js +0 -92
- package/dist/v2/features/settings/DocumentSettings.vue.script.js.map +0 -1
- package/dist/v2/features/settings/components/Appearance.vue.d.ts +0 -11
- package/dist/v2/features/settings/components/Appearance.vue.d.ts.map +0 -1
- package/dist/v2/features/settings/components/Appearance.vue.js +0 -7
- package/dist/v2/features/settings/components/Appearance.vue.js.map +0 -1
- package/dist/v2/features/settings/components/Appearance.vue.script.js +0 -63
- package/dist/v2/features/settings/components/Appearance.vue.script.js.map +0 -1
- package/dist/v2/features/settings/components/Section.vue.d.ts +0 -16
- package/dist/v2/features/settings/components/Section.vue.d.ts.map +0 -1
- package/dist/v2/features/settings/components/Section.vue.js +0 -7
- package/dist/v2/features/settings/components/Section.vue.js.map +0 -1
- package/dist/v2/features/settings/components/Section.vue.script.js +0 -30
- package/dist/v2/features/settings/components/Section.vue.script.js.map +0 -1
- package/dist/v2/features/settings/helpers/get-theme-colors.d.ts +0 -10
- package/dist/v2/features/settings/helpers/get-theme-colors.d.ts.map +0 -1
- package/dist/v2/features/settings/helpers/get-theme-colors.js +0 -68
- package/dist/v2/features/settings/helpers/get-theme-colors.js.map +0 -1
- package/dist/v2/features/settings/index.d.ts +0 -3
- package/dist/v2/features/settings/index.d.ts.map +0 -1
- package/dist/v2/features/settings/index.js +0 -3
- package/dist/v2/helpers/download-document.d.ts +0 -2
- package/dist/v2/helpers/download-document.d.ts.map +0 -1
- package/dist/v2/helpers/download-document.js +0 -42
- package/dist/v2/helpers/download-document.js.map +0 -1
- package/dist/v2/helpers/drag-handle-factory.d.ts +0 -16
- package/dist/v2/helpers/drag-handle-factory.d.ts.map +0 -1
- package/dist/v2/helpers/drag-handle-factory.js +0 -258
- package/dist/v2/helpers/drag-handle-factory.js.map +0 -1
- package/dist/v2/helpers/get-tab-details.d.ts +0 -43
- package/dist/v2/helpers/get-tab-details.d.ts.map +0 -1
- package/dist/v2/helpers/get-tab-details.js +0 -54
- package/dist/v2/helpers/get-tab-details.js.map +0 -1
- package/dist/v2/helpers/is-url.d.ts +0 -2
- package/dist/v2/helpers/is-url.d.ts.map +0 -1
- package/dist/v2/helpers/is-url.js +0 -10
- package/dist/v2/helpers/is-url.js.map +0 -1
- package/dist/v2/helpers/safe-run.d.ts +0 -34
- package/dist/v2/helpers/safe-run.d.ts.map +0 -1
- package/dist/v2/helpers/safe-run.js +0 -43
- package/dist/v2/helpers/safe-run.js.map +0 -1
- package/dist/v2/helpers/storage.d.ts +0 -31
- package/dist/v2/helpers/storage.d.ts.map +0 -1
- package/dist/v2/helpers/storage.js +0 -37
- package/dist/v2/helpers/storage.js.map +0 -1
- package/dist/v2/hooks/use-color-mode.d.ts +0 -20
- package/dist/v2/hooks/use-color-mode.d.ts.map +0 -1
- package/dist/v2/hooks/use-color-mode.js +0 -72
- package/dist/v2/hooks/use-color-mode.js.map +0 -1
- package/dist/v2/types/configuration.d.ts +0 -278
- package/dist/v2/types/configuration.d.ts.map +0 -1
- /package/dist/components/{ScalarAsciiArt.vue.d.ts → ScalarAsciiArt/ScalarAsciiArt.vue.d.ts} +0 -0
- /package/dist/{index.js → types/index.js} +0 -0
package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.script.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuthScopesInput.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { Disclosure, DisclosureButton, DisclosurePanel } from '@headlessui/vue'\nimport {\n ScalarButton,\n ScalarIcon,\n ScalarSearchInput,\n useModal,\n} from '@scalar/components'\nimport type { ApiReferenceEvents } from '@scalar/workspace-store/events'\nimport type {\n OAuthFlow,\n OAuthFlowsObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed, ref } from 'vue'\n\nimport {\n DataTableCell,\n DataTableCheckbox,\n DataTableRow,\n} from '@/v2/components/data-table'\n\nimport OAuthScopesAddModal from './OAuthScopesAddModal.vue'\n\nconst { selectedScopes, flow, flowType } = defineProps<{\n flowType: keyof OAuthFlowsObject\n flow: OAuthFlow\n selectedScopes: string[]\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Pick<\n ApiReferenceEvents['auth:update:selected-scopes'],\n 'scopes' | 'newScopePayload'\n >,\n ): void\n}>()\n\nconst searchQuery = ref('')\n\n/** List of all available scopes */\nconst scopes = computed(() =>\n Object.entries(flow?.scopes ?? {}).map(([key, val]) => ({\n id: key,\n label: key,\n description: val,\n })),\n)\n\nconst filteredScopes = computed(() => {\n if (!searchQuery.value) {\n return scopes.value\n }\n\n const regex = new RegExp(\n searchQuery.value\n .split('')\n .map((c) => c.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'))\n .join('.*'),\n 'i',\n )\n\n return scopes.value.filter(({ label, description }) =>\n regex.test(`${label} ${description}`),\n )\n})\n\nconst allScopesSelected = computed(\n () => selectedScopes.length === Object.keys(flow?.scopes ?? {}).length,\n)\n\nfunction setScope(scopeKey: string, checked: boolean) {\n if (checked) {\n // Select the scope\n return emits('update:selectedScopes', {\n scopes: Array.from(new Set([...selectedScopes, scopeKey])),\n })\n }\n\n // Deselect the scope\n emits('update:selectedScopes', {\n scopes: selectedScopes.filter((scope) => scope !== scopeKey),\n })\n}\n\n/** Select all scopes */\nconst selectAllScopes = () =>\n emits('update:selectedScopes', { scopes: Object.keys(flow?.scopes ?? {}) })\n\n/** Deselect all scopes */\nconst deselectAllScopes = () => emits('update:selectedScopes', { scopes: [] })\n\nconst addNewScopeModal = useModal()\n</script>\n\n<template>\n <DataTableCell class=\"h-auto !max-h-[initial] min-h-8 items-center\">\n <div class=\"flex h-fit w-full\">\n <div class=\"text-c-1 h-full items-center\"></div>\n <Disclosure\n as=\"div\"\n class=\"bl flex w-full flex-col\">\n <DisclosureButton\n v-slot=\"{ open }\"\n :class=\"[\n 'group/scopes-accordion hover:text-c-1 flex h-auto min-h-8 cursor-pointer items-center gap-1.5 pr-2.25 pl-3 text-left',\n (selectedScopes.length || 0) > 0 ? 'text-c-1' : 'text-c-3',\n ]\">\n <div class=\"flex-1\">\n Scopes Selected\n {{ selectedScopes.length || 0 }} /\n {{ Object.keys(flow?.scopes ?? {}).length || 0 }}\n </div>\n <div class=\"flex items-center gap-1.75\">\n <!-- Add new scope -->\n <ScalarButton\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"addNewScopeModal.show()\">\n Add Scope\n </ScalarButton>\n\n <!-- Deselect All -->\n <ScalarButton\n v-if=\"allScopesSelected\"\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"deselectAllScopes\">\n Deselect All\n </ScalarButton>\n\n <!-- Select All -->\n <ScalarButton\n v-if=\"!allScopesSelected\"\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"selectAllScopes\">\n Select All\n </ScalarButton>\n\n <ScalarIcon\n class=\"text-c-3 group-hover/scopes-accordion:text-c-2\"\n :icon=\"open ? 'ChevronDown' : 'ChevronRight'\"\n size=\"md\" />\n </div>\n </DisclosureButton>\n <!-- Scopes List -->\n <DisclosurePanel as=\"template\">\n <div>\n <ScalarSearchInput\n v-model=\"searchQuery\"\n class=\"flex items-center text-xs\" />\n <table\n class=\"grid max-h-40 auto-rows-auto overflow-x-hidden overflow-y-scroll\"\n :style=\"{ gridTemplateColumns: '1fr auto' }\">\n <DataTableRow\n v-for=\"{ id, label, description } in filteredScopes\"\n :key=\"id\"\n class=\"text-c-2\"\n @click=\"setScope(id, !selectedScopes.includes(id))\">\n <DataTableCell\n class=\"no-scrollbar hover:text-c-1 box-border flex !max-h-[initial] w-full cursor-pointer items-center gap-1 overflow-x-scroll px-3 py-1.5 text-nowrap\">\n <span class=\"font-code text-xs\">{{ label }}</span>\n <span>–</span>\n <span v-if=\"description\">\n {{ description }}\n </span>\n </DataTableCell>\n <DataTableCheckbox\n :modelValue=\"selectedScopes.includes(id)\"\n @update:modelValue=\"setScope(id, $event)\" />\n </DataTableRow>\n </table>\n </div>\n </DisclosurePanel>\n </Disclosure>\n </div>\n\n <!-- Add new scope modal -->\n <OAuthScopesAddModal\n :scopes=\"Object.keys(flow.scopes ?? {})\"\n :state=\"addNewScopeModal\"\n @submit=\"\n (payload) =>\n emits('update:selectedScopes', {\n scopes: selectedScopes,\n newScopePayload: { ...payload, flowType },\n })\n \" />\n </DataTableCell>\n</template>\n\n<style>\n.no-scrollbar::-webkit-scrollbar {\n display: none;\n}\n\n.no-scrollbar {\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n</style>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OAuthScopesInput.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { Disclosure, DisclosureButton, DisclosurePanel } from '@headlessui/vue'\nimport {\n ScalarButton,\n ScalarIcon,\n ScalarIconButton,\n ScalarSearchInput,\n useModal,\n} from '@scalar/components'\nimport { ScalarIconPencilSimple, ScalarIconTrash } from '@scalar/icons'\nimport type { ApiReferenceEvents } from '@scalar/workspace-store/events'\nimport type {\n OAuthFlow,\n OAuthFlowsObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed, nextTick, ref, watch } from 'vue'\n\nimport {\n DataTableCell,\n DataTableCheckbox,\n DataTableRow,\n} from '@/v2/components/data-table'\n\nimport OAuthScopesAddModal from './OAuthScopesAddModal.vue'\n\nconst { selectedScopes, flow, flowType } = defineProps<{\n flowType: keyof OAuthFlowsObject\n flow: OAuthFlow\n selectedScopes: string[]\n}>()\n\nconst emits = defineEmits<{\n (e: 'update:selectedScopes', payload: { scopes: string[] }): void\n (\n e: 'upsert:scope',\n payload: Omit<ApiReferenceEvents['auth:upsert:scopes'], 'name'>,\n ): void\n (\n e: 'delete:scope',\n payload: Omit<ApiReferenceEvents['auth:delete:scopes'], 'name'>,\n ): void\n}>()\n\nconst searchQuery = ref('')\n\n/**\n * The scope currently being edited, used to switch the shared modal into edit mode.\n * Null means the modal is in \"add\" mode.\n */\nconst editingScope = ref<{ name: string; description: string } | null>(null)\n\n/** List of all available scopes */\nconst scopes = computed(() =>\n Object.entries(flow?.scopes ?? {}).map(([key, val]) => ({\n id: key,\n label: key,\n description: val,\n })),\n)\n\nconst scopeCount = computed(() => Object.keys(flow?.scopes ?? {}).length)\n\n/** Search is only useful once the list is long enough to scan */\nconst showScopeSearch = computed(() => scopeCount.value >= 10)\n\nconst filteredScopes = computed(() => {\n const query = showScopeSearch.value ? searchQuery.value : ''\n if (!query) {\n return scopes.value\n }\n\n const regex = new RegExp(\n query\n .split('')\n .map((c) => c.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'))\n .join('.*'),\n 'i',\n )\n\n return scopes.value.filter(({ label, description }) =>\n regex.test(`${label} ${description}`),\n )\n})\n\nconst hasScopes = computed(() => Object.keys(flow?.scopes ?? {}).length > 0)\n\nconst allScopesSelected = computed(\n () => selectedScopes.length === Object.keys(flow?.scopes ?? {}).length,\n)\n\nconst setScope = (scopeKey: string, checked: boolean) => {\n if (checked) {\n // Select the scope\n return emits('update:selectedScopes', {\n scopes: Array.from(new Set([...selectedScopes, scopeKey])),\n })\n }\n\n // Deselect the scope\n emits('update:selectedScopes', {\n scopes: selectedScopes.filter((scope) => scope !== scopeKey),\n })\n}\n\n/** Select all scopes */\nconst selectAllScopes = () =>\n emits('update:selectedScopes', { scopes: Object.keys(flow?.scopes ?? {}) })\n\n/** Deselect all scopes */\nconst deselectAllScopes = () => emits('update:selectedScopes', { scopes: [] })\n\nconst scopeFormModal = useModal()\n\n/**\n * Forces the Disclosure to remount with `defaultOpen` set so the panel auto-expands\n * the moment a brand-new scope is added. Bumping this counter is paired with toggling\n * `expandOnNextMount` so the remount opens the panel, then reverts to the default\n * closed-on-mount behavior for any future unrelated remounts (e.g. collapse on empty).\n *\n * The Disclosure `:key` is only this counter — not a separate `hasScopes` segment — so\n * adding the first scope does not remount twice (empty prefix → with-scopes prefix),\n * which would reopen with `defaultOpen=false` and collapse the panel right when rows appear.\n */\nconst remountKey = ref(0)\nconst expandOnNextMount = ref(false)\n\nwatch(hasScopes, (has, had) => {\n if (had && !has) {\n expandOnNextMount.value = false\n remountKey.value += 1\n }\n})\n\n/** Open the modal in \"add new scope\" mode */\nconst openAddScopeModal = () => {\n editingScope.value = null\n scopeFormModal.show()\n}\n\n/** Open the modal in \"edit scope\" mode prefilled with the chosen row */\nconst openEditScopeModal = (scope: { id: string; description: string }) => {\n editingScope.value = {\n name: scope.id,\n description: scope.description ?? '',\n }\n scopeFormModal.show()\n}\n\n/**\n * Submit handler shared by Add Scope and Edit Scope. For renames, the `upsertScope` mutator on\n * the workspace store rewrites the selection state in place, so the component does not need to\n * emit a follow-up `update:selectedScopes`.\n *\n * When adding a brand-new scope (no `oldName`), the payload sets `enable: true` so the\n * `upsertScope` mutator also adds the new scope to any selection requirement that references\n * this scheme. The Disclosure is then remounted with `defaultOpen=true` so the user\n * immediately sees (and sees selected) the scope they just added.\n */\nconst handleScopeFormSubmit = async (payload: {\n name: string\n description: string\n oldName?: string\n}) => {\n const isAdd = !payload.oldName\n\n emits('upsert:scope', {\n scope: payload.name,\n description: payload.description,\n flowType,\n ...(payload.oldName ? { oldScope: payload.oldName } : {}),\n ...(isAdd ? { enable: true } : {}),\n })\n\n if (!isAdd) {\n return\n }\n\n expandOnNextMount.value = true\n remountKey.value += 1\n // Reset after the remount so subsequent unrelated remounts (e.g. when the last\n // scope is deleted) still default to a closed panel.\n await nextTick()\n expandOnNextMount.value = false\n}\n\n/**\n * Remove the scope from the flow. Selection cleanup (dropping the deleted key from any\n * currently-selected scopes) is handled by the `deleteScope` mutator on the workspace store,\n * so the component does not need to emit a follow-up `update:selectedScopes` here.\n */\nconst handleDeleteScope = (scopeKey: string) => {\n emits('delete:scope', { scope: scopeKey, flowType })\n}\n</script>\n\n<template>\n <DataTableCell class=\"h-auto !max-h-[initial] min-h-8 items-center\">\n <div class=\"flex h-fit w-full\">\n <div class=\"text-c-1 h-full items-center\"></div>\n <Disclosure\n :key=\"remountKey\"\n as=\"div\"\n class=\"bl flex w-full flex-col\"\n :defaultOpen=\"expandOnNextMount\">\n <!--\n Keep Add Scope (and other actions) outside the summary DisclosureButton.\n When there are no scopes the summary control is disabled; a native disabled\n button blocks pointer events for all descendants, which would make Add Scope unusable.\n -->\n <div\n class=\"group/scopes-accordion flex h-auto min-h-8 items-center gap-1.5 pr-2.25 pl-3 text-left\">\n <DisclosureButton\n :class=\"[\n 'min-w-0 flex-1 text-left',\n hasScopes ? 'hover:text-c-1 cursor-pointer' : 'cursor-default',\n (selectedScopes.length || 0) > 0 ? 'text-c-1' : 'text-c-3',\n ]\"\n :disabled=\"!hasScopes\">\n <template v-if=\"hasScopes\">\n Scopes Selected\n {{ selectedScopes.length || 0 }} /\n {{ Object.keys(flow?.scopes ?? {}).length || 0 }}\n </template>\n <template v-else> No Scopes Defined </template>\n </DisclosureButton>\n\n <div class=\"flex shrink-0 items-center gap-1.75\">\n <!-- Add new scope -->\n <ScalarButton\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"openAddScopeModal\">\n Add Scope\n </ScalarButton>\n\n <!-- Deselect All -->\n <ScalarButton\n v-if=\"hasScopes && allScopesSelected\"\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"deselectAllScopes\">\n Deselect All\n </ScalarButton>\n\n <!-- Select All -->\n <ScalarButton\n v-if=\"hasScopes && !allScopesSelected\"\n class=\"pr-0.75 pl-1 transition-none\"\n size=\"sm\"\n variant=\"ghost\"\n @click.stop=\"selectAllScopes\">\n Select All\n </ScalarButton>\n\n <DisclosureButton\n v-if=\"hasScopes\"\n v-slot=\"{ open }\"\n class=\"text-c-3 hover:text-c-2 -m-0.5 flex shrink-0 items-center justify-center rounded p-0.5 focus-visible:outline-offset-2\">\n <ScalarIcon\n class=\"group-hover/scopes-accordion:text-c-2\"\n :icon=\"open ? 'ChevronDown' : 'ChevronRight'\"\n size=\"md\" />\n </DisclosureButton>\n </div>\n </div>\n <!-- Scopes List -->\n <DisclosurePanel as=\"template\">\n <div>\n <ScalarSearchInput\n v-if=\"showScopeSearch\"\n v-model=\"searchQuery\"\n class=\"flex items-center text-xs\" />\n <table\n class=\"grid max-h-40 auto-rows-auto overflow-x-hidden overflow-y-auto\"\n :style=\"{ gridTemplateColumns: '1fr auto' }\">\n <DataTableRow\n v-for=\"{ id, label, description } in filteredScopes\"\n :key=\"id\"\n class=\"text-c-2 group/scope-row\"\n @click=\"setScope(id, !selectedScopes.includes(id))\">\n <DataTableCell\n class=\"box-border flex !max-h-[initial] w-full min-w-0 cursor-pointer items-stretch overflow-hidden px-0 py-0\">\n <!-- Text scrolls horizontally; action rail stays fixed -->\n <div\n class=\"no-scrollbar text-c-2 group-hover/scope-row:text-c-1 flex min-h-8 min-w-0 flex-1 items-center gap-1 overflow-x-auto px-3 py-1.5 pr-20 text-xs text-nowrap\">\n <span class=\"font-code shrink-0 text-xs\">{{ label }}</span>\n <template v-if=\"String(description ?? '').trim()\">\n <span class=\"shrink-0\">–</span>\n <span class=\"whitespace-nowrap\">{{ description }}</span>\n </template>\n </div>\n <div\n class=\"oauth-scope-row-action-rail absolute top-0 right-0 z-[1] flex h-full min-w-[4.5rem] items-center justify-end gap-0.5 py-1 pr-2 pl-4 opacity-0 transition-opacity group-focus-within/scope-row:opacity-100 group-hover/scope-row:opacity-100\"\n @click.stop>\n <ScalarIconButton\n :icon=\"ScalarIconPencilSimple\"\n :label=\"`Edit ${label}`\"\n size=\"sm\"\n @click.stop=\"\n openEditScopeModal({\n id,\n description: description ?? '',\n })\n \" />\n <ScalarIconButton\n :icon=\"ScalarIconTrash\"\n :label=\"`Delete ${label}`\"\n size=\"sm\"\n @click.stop=\"handleDeleteScope(id)\" />\n </div>\n </DataTableCell>\n <DataTableCheckbox\n :modelValue=\"selectedScopes.includes(id)\"\n @update:modelValue=\"setScope(id, $event)\" />\n </DataTableRow>\n </table>\n </div>\n </DisclosurePanel>\n </Disclosure>\n </div>\n\n <!-- Shared add/edit scope modal -->\n <OAuthScopesAddModal\n :scope=\"editingScope\"\n :scopes=\"Object.keys(flow.scopes ?? {})\"\n :state=\"scopeFormModal\"\n @submit=\"handleScopeFormSubmit\" />\n </DataTableCell>\n</template>\n\n<style>\n/* Matches AddressBar.vue `.address-bar-bg-states` / `.fade-right` (header URL input). */\n.oauth-scope-row-action-rail {\n --oauth-scope-row-rail-bg: color-mix(\n in srgb,\n var(--scalar-background-1),\n var(--scalar-background-2)\n );\n background: linear-gradient(\n 90deg,\n color-mix(in srgb, var(--oauth-scope-row-rail-bg), transparent 100%) 0%,\n color-mix(in srgb, var(--oauth-scope-row-rail-bg), transparent 20%) 30%,\n var(--oauth-scope-row-rail-bg) 100%\n );\n}\n\n.no-scrollbar::-webkit-scrollbar {\n display: none;\n}\n\n.no-scrollbar {\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n</style>\n"],"mappings":"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"}
|
package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthDataTable.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RequestAuthDataTable.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"names":[],"mappings":"AA8JA,OAAO,KAAK,EAEV,QAAQ,EACR,iBAAiB,EAClB,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2EAA2E,CAAA;AACnH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAA;AAGhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gEAAgE,CAAA;AAK1G,KAAK,WAAW,GAAG;IACjB,4CAA4C;IAC5C,WAAW,EAAE,kBAAkB,CAAA;IAC/B,mEAAmE;IACnE,QAAQ,EAAE,OAAO,CAAA;IACjB,8CAA8C;IAC9C,qBAAqB,EAAE,oBAAoB,EAAE,CAAA;IAC7C,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,0CAA0C;IAC1C,eAAe,EAAE,qBAAqB,CAAA;IACtC,mCAAmC;IACnC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,0CAA0C;IAC1C,IAAI,EAAE,QAAQ,CAAA;IACd,uDAAuD;IACvD,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,CAAC;AAuPF,QAAA,MAAM,YAAY;;oPAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthDataTable.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"RequestAuthDataTable.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Handles scope-definition upserts (add / rename / description change) */\nconst handleScopeUpsert = (\n params: ApiReferenceEvents['auth:upsert:scopes'],\n): void => eventBus.emit('auth:upsert:scopes', params)\n\n/** Handles scope-definition deletes */\nconst handleScopeDelete = (\n params: ApiReferenceEvents['auth:delete:scopes'],\n): void => eventBus.emit('auth:delete:scopes', params)\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @delete:scope=\"handleScopeDelete\"\n @update:selectedScopes=\"handleScopesUpdate\"\n @upsert:scope=\"handleScopeUpsert\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":""}
|
package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js
CHANGED
|
@@ -40,6 +40,10 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
|
|
|
40
40
|
...params,
|
|
41
41
|
meta: __props.meta
|
|
42
42
|
});
|
|
43
|
+
/** Handles scope-definition upserts (add / rename / description change) */
|
|
44
|
+
const handleScopeUpsert = (params) => __props.eventBus.emit("auth:upsert:scopes", params);
|
|
45
|
+
/** Handles scope-definition deletes */
|
|
46
|
+
const handleScopeDelete = (params) => __props.eventBus.emit("auth:delete:scopes", params);
|
|
43
47
|
/** Determines if a tab is currently active */
|
|
44
48
|
const isTabActive = (index) => __props.activeAuthIndex === index;
|
|
45
49
|
/** Expose the active scheme for parent component access */
|
|
@@ -73,7 +77,9 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
|
|
|
73
77
|
securitySchemes: __props.securitySchemes,
|
|
74
78
|
selectedSecuritySchemas: activeScheme.value.value,
|
|
75
79
|
server: __props.server,
|
|
76
|
-
"
|
|
80
|
+
"onDelete:scope": handleScopeDelete,
|
|
81
|
+
"onUpdate:selectedScopes": handleScopesUpdate,
|
|
82
|
+
"onUpsert:scope": handleScopeUpsert
|
|
77
83
|
}, null, 8, [
|
|
78
84
|
"environment",
|
|
79
85
|
"eventBus",
|
package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthDataTable.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAmDA,MAAM,eAAe,eACb,QAAA,sBAAsB,QAAA,iBAC9B;;;;;EAMA,MAAM,iBAAiB,eAAwB,QAAA,sBAAsB,SAAS,EAAC;;EAG/E,MAAM,mBAAmB,UACvB,QAAA,SAAS,KAAK,4BAA4B;GACxC;GACA,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,sBACJ,WAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,GAAG;GACH,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,eAAe,UAA2B,QAAA,oBAAoB;;AAGpE,WAAa,EACX,cACD,CAAA;;uBAIC,
|
|
1
|
+
{"version":3,"file":"RequestAuthDataTable.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Handles scope-definition upserts (add / rename / description change) */\nconst handleScopeUpsert = (\n params: ApiReferenceEvents['auth:upsert:scopes'],\n): void => eventBus.emit('auth:upsert:scopes', params)\n\n/** Handles scope-definition deletes */\nconst handleScopeDelete = (\n params: ApiReferenceEvents['auth:delete:scopes'],\n): void => eventBus.emit('auth:delete:scopes', params)\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @delete:scope=\"handleScopeDelete\"\n @update:selectedScopes=\"handleScopesUpdate\"\n @upsert:scope=\"handleScopeUpsert\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAmDA,MAAM,eAAe,eACb,QAAA,sBAAsB,QAAA,iBAC9B;;;;;EAMA,MAAM,iBAAiB,eAAwB,QAAA,sBAAsB,SAAS,EAAC;;EAG/E,MAAM,mBAAmB,UACvB,QAAA,SAAS,KAAK,4BAA4B;GACxC;GACA,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,sBACJ,WAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,GAAG;GACH,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,qBACJ,WACS,QAAA,SAAS,KAAK,sBAAsB,OAAM;;EAGrD,MAAM,qBACJ,WACS,QAAA,SAAS,KAAK,sBAAsB,OAAM;;EAGrD,MAAM,eAAe,UAA2B,QAAA,oBAAoB;;AAGpE,WAAa,EACX,cACD,CAAA;;uBAIC,mBAwDO,QAAA,EAxDA,UAAM,OAAA,OAAA,OAAA,KAAA,oBAAP,IAAe,CAAA,UAAA,CAAA,GAAA,EAAA,CAGX,eAAA,SAAA,WAAA,EADR,mBAwBM,OAAA;;IAtBJ,OAAK,eAAA,CAAC,+EAA6E,EAAA,cAAA,CAC1D,QAAA,UAAQ,CAAA,CAAA;IACjC,eAAY;yBACZ,mBAkBM,UAAA,MAAA,WAjBsB,QAAA,wBAAlB,QAAQ,UAAK;wBADvB,mBAkBM,OAAA;KAhBH,KAAK,OAAO;KACb,OAAM;QACN,mBAQS,UAAA;KAPP,OAAK,eAAA,CAAC,8GACE,YAAY,MAAK,GAAA,aAAA,WAAA,CAAA;KACzB,MAAK;KACJ,UAAK,WAAE,gBAAgB,MAAK;QAC7B,mBAEO,QAFP,YAEO,gBADF,OAAO,MAAK,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA,EAMX,YAAY,MAAK,IAAA,WAAA,EADzB,mBAEwH,OAFxH,WAEwH,IAAA,mBAAA,IAAA,KAAA,CAAA,CAAA;mDAMpH,aAAA,SAAA,WAAA,EADR,YAkBY,MAAA,kBAAA,EAAA;;IAhBV,OAAK,eAAA,CAAC,UAAQ,EAAA,yCACqC,QAAA,UAAQ,CAAA,CAAA;IAC1D,SAAS,CAAA,GAAI;IACd,gBAAA;;2BAYsC,CAXtC,YAWsC,wBAAA;KAVnC,aAAA,QAAA;KACA,UAAA,QAAA;KACA,UAAA,QAAA;KACA,SAAA,QAAA;KACA,UAAA,QAAA;KACA,iBAAA,QAAA;KACA,yBAAyB,aAAA,MAAa;KACtC,QAAA,QAAA;KACA,kBAAc;KACd,2BAAuB;KACvB,kBAAc;;;;;;;;;;;;qCAInB,mBAKM,OAAA;;IAHJ,OAAK,eAAA,CAAC,mFAAiF,EAAA,gDAC7B,QAAA,UAAQ,CAAA,CAAA;MAAI,gCAExE,EAAA,EAAA,EAAA,GAAA"}
|
|
@@ -26,25 +26,41 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
|
|
|
26
26
|
id: string[];
|
|
27
27
|
name: string;
|
|
28
28
|
scopes: string[];
|
|
29
|
-
newScopePayload?: {
|
|
30
|
-
name: string;
|
|
31
|
-
description: string;
|
|
32
|
-
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
33
|
-
};
|
|
34
29
|
meta: import("@scalar/workspace-store/events").AuthMeta;
|
|
35
30
|
}, "meta">) => any;
|
|
31
|
+
"upsert:scope": (payload: {
|
|
32
|
+
name: string;
|
|
33
|
+
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
34
|
+
scope: string;
|
|
35
|
+
description: string;
|
|
36
|
+
oldScope?: string;
|
|
37
|
+
enable?: boolean;
|
|
38
|
+
}) => any;
|
|
39
|
+
"delete:scope": (payload: {
|
|
40
|
+
name: string;
|
|
41
|
+
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
42
|
+
scope: string;
|
|
43
|
+
}) => any;
|
|
36
44
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
37
45
|
"onUpdate:selectedScopes"?: ((payload: Omit<{
|
|
38
46
|
id: string[];
|
|
39
47
|
name: string;
|
|
40
48
|
scopes: string[];
|
|
41
|
-
newScopePayload?: {
|
|
42
|
-
name: string;
|
|
43
|
-
description: string;
|
|
44
|
-
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
45
|
-
};
|
|
46
49
|
meta: import("@scalar/workspace-store/events").AuthMeta;
|
|
47
50
|
}, "meta">) => any) | undefined;
|
|
51
|
+
"onUpsert:scope"?: ((payload: {
|
|
52
|
+
name: string;
|
|
53
|
+
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
54
|
+
scope: string;
|
|
55
|
+
description: string;
|
|
56
|
+
oldScope?: string;
|
|
57
|
+
enable?: boolean;
|
|
58
|
+
}) => any) | undefined;
|
|
59
|
+
"onDelete:scope"?: ((payload: {
|
|
60
|
+
name: string;
|
|
61
|
+
flowType: keyof import("@scalar/workspace-store/schemas/v3.1/strict/oauthflows").OAuthFlowsObject;
|
|
62
|
+
scope: string;
|
|
63
|
+
}) => any) | undefined;
|
|
48
64
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
49
65
|
declare const _default: typeof __VLS_export;
|
|
50
66
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthTab.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RequestAuthTab.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"names":[],"mappings":"AAkZA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2EAA2E,CAAA;AACnH,OAAO,KAAK,EAEV,yBAAyB,EACzB,YAAY,EACb,MAAM,8DAA8D,CAAA;AAKrE,OAAe,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAA;AAUzD,KAAK,WAAW,GAAG;IACjB,wCAAwC;IACxC,WAAW,EAAE,kBAAkB,CAAA;IAC/B,yFAAyF;IACzF,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,+BAA+B;IAC/B,uBAAuB,EAAE,yBAAyB,CAAA;IAClD,oGAAoG;IACpG,eAAe,EAAE,qBAAqB,CAAA;IACtC,mCAAmC;IACnC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,uDAAuD;IACvD,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,CAAC;AAuqBF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthTab.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"RequestAuthTab.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n (e: 'upsert:scope', payload: ApiReferenceEvents['auth:upsert:scopes']): void\n (e: 'delete:scope', payload: ApiReferenceEvents['auth:delete:scopes']): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/** Handles scope-definition upserts (add / rename / description change) */\nconst handleScopeUpsert = (\n name: string,\n event: Omit<ApiReferenceEvents['auth:upsert:scopes'], 'name'>,\n): void => {\n emits('upsert:scope', { ...event, name })\n}\n\n/** Handles scope-definition deletes */\nconst handleScopeDelete = (\n name: string,\n event: Omit<ApiReferenceEvents['auth:delete:scopes'], 'name'>,\n): void => {\n emits('delete:scope', { ...event, name })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @delete:scope=\"(event) => handleScopeDelete(name, event)\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\"\n @upsert:scope=\"(event) => handleScopeUpsert(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":""}
|
|
@@ -29,7 +29,11 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
29
29
|
eventBus: {},
|
|
30
30
|
options: {}
|
|
31
31
|
},
|
|
32
|
-
emits: [
|
|
32
|
+
emits: [
|
|
33
|
+
"update:selectedScopes",
|
|
34
|
+
"upsert:scope",
|
|
35
|
+
"delete:scope"
|
|
36
|
+
],
|
|
33
37
|
setup(__props, { emit: __emit }) {
|
|
34
38
|
const emits = __emit;
|
|
35
39
|
/**
|
|
@@ -111,6 +115,20 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
111
115
|
...event
|
|
112
116
|
});
|
|
113
117
|
};
|
|
118
|
+
/** Handles scope-definition upserts (add / rename / description change) */
|
|
119
|
+
const handleScopeUpsert = (name, event) => {
|
|
120
|
+
emits("upsert:scope", {
|
|
121
|
+
...event,
|
|
122
|
+
name
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
/** Handles scope-definition deletes */
|
|
126
|
+
const handleScopeDelete = (name, event) => {
|
|
127
|
+
emits("delete:scope", {
|
|
128
|
+
...event,
|
|
129
|
+
name
|
|
130
|
+
});
|
|
131
|
+
};
|
|
114
132
|
/**
|
|
115
133
|
* Computes dynamic classes for OAuth2 flow tabs based on active state.
|
|
116
134
|
*/
|
|
@@ -272,7 +290,9 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
272
290
|
selectedScopes: scopes,
|
|
273
291
|
server: __props.server,
|
|
274
292
|
type: key,
|
|
275
|
-
"
|
|
293
|
+
"onDelete:scope": (event) => handleScopeDelete(name, event),
|
|
294
|
+
"onUpdate:selectedScopes": (event) => handleScopesUpdate(name, event),
|
|
295
|
+
"onUpsert:scope": (event) => handleScopeUpsert(name, event)
|
|
276
296
|
}, null, 8, [
|
|
277
297
|
"environment",
|
|
278
298
|
"eventBus",
|
|
@@ -284,7 +304,9 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
284
304
|
"selectedScopes",
|
|
285
305
|
"server",
|
|
286
306
|
"type",
|
|
287
|
-
"
|
|
307
|
+
"onDelete:scope",
|
|
308
|
+
"onUpdate:selectedScopes",
|
|
309
|
+
"onUpsert:scope"
|
|
288
310
|
])) : createCommentVNode("", true)], 64);
|
|
289
311
|
}), 128))
|
|
290
312
|
], 64)) : (openBlock(), createElementBlock("div", _hoisted_7, " The security scheme is missing a type, please double check your OpenAPI document or Authentication Configuration "))
|
package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.script.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestAuthTab.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DA,MAAM,QAAQ;;;;;EAWd,MAAM,WAAW,eACf,OAAO,QAAQ,QAAA,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,EAAE,OAAO;GACpE,QAAQ,eAAe,QAAA,gBAAgB,MAAM;GAC7C;GACA;GACD,EAAE,CACL;;EAGA,MAAM,aAAa,IAAY,GAAE;;EAGjC,MAAM,eAAe,eAAuB;AAS1C,UARqB,SAAS,MAAM,SAAS,EAAE,aAAa;AAC1D,QAAI,QAAQ,SAAS,YAAY,QAAQ,SAAS,gBAChD,QAAO,EAAC;AAGV,WAAO,OAAO,KAAK,OAAO,SAAS,EAAE,CAAA;KACtC,CAEmB,SAAS,WAAW,MAAM,GAAG,WAAW,QAAQ;IACrE;EAED,MAAM,iBAAiB,SAAuB;AAC5C,cAAW,QAAQ;;;EAIrB,MAAM,qBAAqB,eAAwB,SAAS,MAAM,SAAS,EAAC;;;;;;EAO5E,MAAM,iBACJ,MACA,WACW;GACX,MAAM,kBAAkB,WAAW,KAAI;AAEvC,WAAQ,OAAO,MAAf;IACE,KAAK,SACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,KAAK;IACL,KAAK,UAAU;KACb,MAAM,YAAY,OAAO,KAAK,OAAO,SAAS,EAAE,CAAC,CAAC;KAClD,MAAM,cAAc,aAAa,SAAS;AAC1C,SAAI,CAAC,YACH,QAAO;AAET,YAAO,GAAG,gBAAgB,IAAI;;IAGhC,KAAK,OACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,QACE,QAAO;;;;;;;EAQb,MAAM,gBAAgB,SAAiB,UACrC,aAAa,UAAU,WAAY,UAAU,KAAK,CAAC,aAAa;;EAGlE,MAAM,6BAA6C,QAAA,YAAY;EAE/D,MAAM,2BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAQ,GAAG;IAAS;GACrC;GACD,CAAA;EAEH,MAAM,6BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;EAEH,MAAM,oCACJ,SACA,SAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;;EAGH,MAAM,sBACJ,MACA,UACS;AACT,SAAM,yBAAyB;IAC7B,IAAI,OAAO,KAAK,QAAA,wBAAwB;IACxC;IACA,GAAG;IACJ,CAAA;;;;;EAMH,MAAM,qBAAqB,SAAiB,UAA0B;GACpE,MAAM,cACJ;AAGF,UAAO,aAAa,SAAS,MAAK,GAC9B,GAAG,YAAY,oDAAoB,QAAA,WAAW,gBAAgB,OAC9D;;;2BAIJ,mBA2KW,UAAA,MAAA,WA1K0B,SAAA,QAAQ,EAAlC,QAAQ,MAAM,aAAM;4DACvB,MAAI,EAAA;KAKU,mBAAA,SAAsB,UAAA,WAAA,EAA1C,YAce,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CAZhB,YAYgB,MAAA,sBAAA,EAAA;OAXb,cAAY,cAAc,MAAM,OAAM;OACvC,OAAM;;8BASA,CARN,mBAQM,OARN,YAQM,CAPJ,mBAEI,KAFJ,YAEI,gBADC,cAAc,MAAM,OAAM,CAAA,EAAA,EAAA,EAGvB,OAAO,eAAA,WAAA,EADf,YAGgC,MAAA,sBAAA,EAAA;;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAMH,QAAQ,eAAW,CAAK,mBAAA,SAAA,WAAA,EAA5C,YAQe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CANhB,YAMgB,MAAA,sBAAA,EAAA;OALb,cAAY,OAAO;OACpB,OAAM;;8BAG0B,CAFhC,YAEgC,MAAA,sBAAA,EAAA;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAKL,QAAQ,SAAI,UAAA,WAAA,EAA5B,mBA8CW,UAAA,EAAA,KAAA,GAAA,EAAA,CA5CW,OAAO,WAAM,YAAA,WAAA,EAAjC,YAYe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAM,wBAAuB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAItG,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,kBAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;iBAImB,QAAQ,WAAM,WAAA,WAAA,EAAnC,mBA4BW,UAAA,EAAA,KAAA,GAAA,EAAA,CA3BT,YAae,MAAA,qBAAA,EAAA,MAAA;6BADe,CAX5B,YAW4B,mCAAA;OAV1B,OAAM;OACL,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,UAAA;OACC,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;6DAMe,QAAQ,SAAI,YAAA,WAAA,EAAjC,mBA0BW,UAAA,EAAA,KAAA,GAAA,EAAA,CAzBT,YAWe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAT5B,YAS4B,mCAAA;OARzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAO;OACpB,aAAY;OACX,wBAAiC,MAAM,iCAAgC,EAAA,MAAS,GAAC,EAAI,KAAI;;8BAI5F,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,UAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAoB,0BAAyB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAKtH,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,WAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;uBAMS,QAAQ,SAAI,YAAiB,QAAQ,SAAI,mBAAA,WAAA,EADtD,mBAiDW,UAAA,EAAA,KAAA,GAAA,EAAA;MA7CU,QAAQ,SAAI,mBAAA,CAAmC,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,UAAA,WAAA,EADlG,YAUY,uBAAA;;OALT,aAAA,QAAA;OACA,UAAA,QAAA;OACA;OACA;OACA,UAAA,QAAA;OACA;;;;;;;;MAGiB,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,SAAM,KAAA,WAAA,EAA1D,YAae,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;8BADP,CAXN,mBAWM,OAXN,YAWM,CAVJ,mBASM,OATN,YASM,EAAA,UAAA,KAAA,EARJ,mBAOS,UAAA,MAAA,WANiB,OAAO,QAAvB,GAAG,KAAK,QAAG;4BADrB,mBAOS,UAAA;SALD;SACL,OAAK,eAAE,kBAAkB,KAAK,IAAG,CAAA;SAClC,MAAK;SACJ,UAAK,WAAE,cAAc,IAAG;YACzB,mBAA4C,QAA5C,YAA4C,gBAAb,IAAG,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA;;;;wBAO1C,mBAgBW,UAAA,MAAA,WAfmB,OAAO,QAA3B,OAAO,KAAK,QAAG;0DACjB,KAAG,EAAA,CAED,OAAO,SAAS,aAAa,KAAK,IAAG,IAAA,WAAA,EAD7C,YAYwE,gBAAA;;QAVrE,aAAA,QAAA;QACA,UAAA,QAAA;QACA,OAAO,OAAO;QACd;QACA,SAAA,QAAA;QACA,UAAA,QAAA;QACA;QACA,gBAAgB;QAChB,QAAA,QAAA;QACA,MAAM;QACN,4BAAwB,UAAU,mBAAmB,MAAM,MAAK;;;;;;;;;;;;;;;6BAKvE,mBAKM,OALN,YAEuG,qHAGvG"}
|
|
1
|
+
{"version":3,"file":"RequestAuthTab.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n (e: 'upsert:scope', payload: ApiReferenceEvents['auth:upsert:scopes']): void\n (e: 'delete:scope', payload: ApiReferenceEvents['auth:delete:scopes']): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/** Handles scope-definition upserts (add / rename / description change) */\nconst handleScopeUpsert = (\n name: string,\n event: Omit<ApiReferenceEvents['auth:upsert:scopes'], 'name'>,\n): void => {\n emits('upsert:scope', { ...event, name })\n}\n\n/** Handles scope-definition deletes */\nconst handleScopeDelete = (\n name: string,\n event: Omit<ApiReferenceEvents['auth:delete:scopes'], 'name'>,\n): void => {\n emits('delete:scope', { ...event, name })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @delete:scope=\"(event) => handleScopeDelete(name, event)\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\"\n @upsert:scope=\"(event) => handleScopeUpsert(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DA,MAAM,QAAQ;;;;;EAad,MAAM,WAAW,eACf,OAAO,QAAQ,QAAA,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,EAAE,OAAO;GACpE,QAAQ,eAAe,QAAA,gBAAgB,MAAM;GAC7C;GACA;GACD,EAAE,CACL;;EAGA,MAAM,aAAa,IAAY,GAAE;;EAGjC,MAAM,eAAe,eAAuB;AAS1C,UARqB,SAAS,MAAM,SAAS,EAAE,aAAa;AAC1D,QAAI,QAAQ,SAAS,YAAY,QAAQ,SAAS,gBAChD,QAAO,EAAC;AAGV,WAAO,OAAO,KAAK,OAAO,SAAS,EAAE,CAAA;KACtC,CAEmB,SAAS,WAAW,MAAM,GAAG,WAAW,QAAQ;IACrE;EAED,MAAM,iBAAiB,SAAuB;AAC5C,cAAW,QAAQ;;;EAIrB,MAAM,qBAAqB,eAAwB,SAAS,MAAM,SAAS,EAAC;;;;;;EAO5E,MAAM,iBACJ,MACA,WACW;GACX,MAAM,kBAAkB,WAAW,KAAI;AAEvC,WAAQ,OAAO,MAAf;IACE,KAAK,SACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,KAAK;IACL,KAAK,UAAU;KACb,MAAM,YAAY,OAAO,KAAK,OAAO,SAAS,EAAE,CAAC,CAAC;KAClD,MAAM,cAAc,aAAa,SAAS;AAC1C,SAAI,CAAC,YACH,QAAO;AAET,YAAO,GAAG,gBAAgB,IAAI;;IAGhC,KAAK,OACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,QACE,QAAO;;;;;;;EAQb,MAAM,gBAAgB,SAAiB,UACrC,aAAa,UAAU,WAAY,UAAU,KAAK,CAAC,aAAa;;EAGlE,MAAM,6BAA6C,QAAA,YAAY;EAE/D,MAAM,2BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAQ,GAAG;IAAS;GACrC;GACD,CAAA;EAEH,MAAM,6BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;EAEH,MAAM,oCACJ,SACA,SAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;;EAGH,MAAM,sBACJ,MACA,UACS;AACT,SAAM,yBAAyB;IAC7B,IAAI,OAAO,KAAK,QAAA,wBAAwB;IACxC;IACA,GAAG;IACJ,CAAA;;;EAIH,MAAM,qBACJ,MACA,UACS;AACT,SAAM,gBAAgB;IAAE,GAAG;IAAO;IAAM,CAAA;;;EAI1C,MAAM,qBACJ,MACA,UACS;AACT,SAAM,gBAAgB;IAAE,GAAG;IAAO;IAAM,CAAA;;;;;EAM1C,MAAM,qBAAqB,SAAiB,UAA0B;GACpE,MAAM,cACJ;AAGF,UAAO,aAAa,SAAS,MAAK,GAC9B,GAAG,YAAY,oDAAoB,QAAA,WAAW,gBAAgB,OAC9D;;;2BAIJ,mBA6KW,UAAA,MAAA,WA5K0B,SAAA,QAAQ,EAAlC,QAAQ,MAAM,aAAM;4DACvB,MAAI,EAAA;KAKU,mBAAA,SAAsB,UAAA,WAAA,EAA1C,YAce,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CAZhB,YAYgB,MAAA,sBAAA,EAAA;OAXb,cAAY,cAAc,MAAM,OAAM;OACvC,OAAM;;8BASA,CARN,mBAQM,OARN,YAQM,CAPJ,mBAEI,KAFJ,YAEI,gBADC,cAAc,MAAM,OAAM,CAAA,EAAA,EAAA,EAGvB,OAAO,eAAA,WAAA,EADf,YAGgC,MAAA,sBAAA,EAAA;;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAMH,QAAQ,eAAW,CAAK,mBAAA,SAAA,WAAA,EAA5C,YAQe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CANhB,YAMgB,MAAA,sBAAA,EAAA;OALb,cAAY,OAAO;OACpB,OAAM;;8BAG0B,CAFhC,YAEgC,MAAA,sBAAA,EAAA;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAKL,QAAQ,SAAI,UAAA,WAAA,EAA5B,mBA8CW,UAAA,EAAA,KAAA,GAAA,EAAA,CA5CW,OAAO,WAAM,YAAA,WAAA,EAAjC,YAYe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAM,wBAAuB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAItG,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,kBAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;iBAImB,QAAQ,WAAM,WAAA,WAAA,EAAnC,mBA4BW,UAAA,EAAA,KAAA,GAAA,EAAA,CA3BT,YAae,MAAA,qBAAA,EAAA,MAAA;6BADe,CAX5B,YAW4B,mCAAA;OAV1B,OAAM;OACL,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,UAAA;OACC,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;6DAMe,QAAQ,SAAI,YAAA,WAAA,EAAjC,mBA0BW,UAAA,EAAA,KAAA,GAAA,EAAA,CAzBT,YAWe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAT5B,YAS4B,mCAAA;OARzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAO;OACpB,aAAY;OACX,wBAAiC,MAAM,iCAAgC,EAAA,MAAS,GAAC,EAAI,KAAI;;8BAI5F,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,UAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAoB,0BAAyB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAKtH,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,WAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;uBAMS,QAAQ,SAAI,YAAiB,QAAQ,SAAI,mBAAA,WAAA,EADtD,mBAmDW,UAAA,EAAA,KAAA,GAAA,EAAA;MA/CU,QAAQ,SAAI,mBAAA,CAAmC,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,UAAA,WAAA,EADlG,YAUY,uBAAA;;OALT,aAAA,QAAA;OACA,UAAA,QAAA;OACA;OACA;OACA,UAAA,QAAA;OACA;;;;;;;;MAGiB,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,SAAM,KAAA,WAAA,EAA1D,YAae,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;8BADP,CAXN,mBAWM,OAXN,YAWM,CAVJ,mBASM,OATN,YASM,EAAA,UAAA,KAAA,EARJ,mBAOS,UAAA,MAAA,WANiB,OAAO,QAAvB,GAAG,KAAK,QAAG;4BADrB,mBAOS,UAAA;SALD;SACL,OAAK,eAAE,kBAAkB,KAAK,IAAG,CAAA;SAClC,MAAK;SACJ,UAAK,WAAE,cAAc,IAAG;YACzB,mBAA4C,QAA5C,YAA4C,gBAAb,IAAG,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA;;;;wBAO1C,mBAkBW,UAAA,MAAA,WAjBmB,OAAO,QAA3B,OAAO,KAAK,QAAG;0DACjB,KAAG,EAAA,CAED,OAAO,SAAS,aAAa,KAAK,IAAG,IAAA,WAAA,EAD7C,YAc8D,gBAAA;;QAZ3D,aAAA,QAAA;QACA,UAAA,QAAA;QACA,OAAO,OAAO;QACd;QACA,SAAA,QAAA;QACA,UAAA,QAAA;QACA;QACA,gBAAgB;QAChB,QAAA,QAAA;QACA,MAAM;QACN,mBAAe,UAAU,kBAAkB,MAAM,MAAK;QACtD,4BAAwB,UAAU,mBAAmB,MAAM,MAAK;QAChE,mBAAe,UAAU,kBAAkB,MAAM,MAAK;;;;;;;;;;;;;;;;;6BAK7D,mBAKM,OALN,YAEuG,qHAGvG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAK3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAErF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAA;
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAK3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAErF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAA;AA6BhG,KAAK,gBAAgB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAE1F,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,kEAAkE;AAClE,KAAK,gBAAgB,GAAG,OAAO,CAAC,MAAM,sBAAsB,EAAE,UAAU,CAAC,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,YAAY,GACvB,cAAc,YAAY,GAAG,IAAI,EACjC,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,MAIA,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,cAAc,YAAY,GAAG,IAAI,EACjC,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,gBAWF,CAAA;AAuCD;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,sBAAsB,EAC7B,MAAM,MAAM,sBAAsB,EAClC,gBAAgB,MAAM,EAAE;AACxB,wEAAwE;AACxE,cAAc,YAAY,GAAG,IAAI;AACjC,kCAAkC;AAClC,UAAU,MAAM;AAChB,6FAA6F;AAC7F,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAsKrC,CAAA;AAqID;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,sBAAsB,EAC7B,MAAM,gBAAgB;AACtB,kCAAkC;AAClC,UAAU,MAAM;AAChB,+DAA+D;AAC/D,cAAc,YAAY,GAAG,IAAI;AACjC,2EAA2E;AAC3E,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAqFrC,CAAA"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { getOAuthCallbackData } from "./oauth-callback.js";
|
|
2
|
-
import { makeUrlAbsolute } from "@scalar/helpers/url/make-url-absolute";
|
|
3
2
|
import { getServerVariables } from "@scalar/workspace-store/request-example";
|
|
3
|
+
import { makeUrlAbsolute } from "@scalar/helpers/url/make-url-absolute";
|
|
4
4
|
import { encode, fromUint8Array } from "js-base64";
|
|
5
5
|
import { replaceEnvVariables, replacePathVariables } from "@scalar/helpers/regex/replace-variables";
|
|
6
6
|
import { isRelativePath } from "@scalar/helpers/url/is-relative-path";
|
|
7
7
|
import { shouldUseProxy } from "@scalar/helpers/url/redirect-to-proxy";
|
|
8
8
|
//#region src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts
|
|
9
|
+
var authorizationCodeUsesPkcePublicClient = (flowType, flow) => {
|
|
10
|
+
if (flowType !== "authorizationCode") return false;
|
|
11
|
+
const authCode = flow;
|
|
12
|
+
if (!authCode) return false;
|
|
13
|
+
const pkceMode = authCode["x-usePkce"];
|
|
14
|
+
return pkceMode === "SHA-256" || pkceMode === "plain";
|
|
15
|
+
};
|
|
9
16
|
/**
|
|
10
17
|
* Resolves the active server URL using OpenAPI server variables first, then
|
|
11
18
|
* Scalar environment variables.
|
|
@@ -142,7 +149,8 @@ var authorizeServers = async (flows, type, scopes, { code, pkce, proxyUrl } = {}
|
|
|
142
149
|
if (scopes && (type === "clientCredentials" || type === "password")) formData.set("scope", scopes);
|
|
143
150
|
/** Where to add the credentials */
|
|
144
151
|
const addCredentialsToBody = flow["x-scalar-credentials-location"] === "body";
|
|
145
|
-
const
|
|
152
|
+
const pkcePublicClient = authorizationCodeUsesPkcePublicClient(type, flow);
|
|
153
|
+
const hasClientSecret = Boolean(flow["x-scalar-secret-client-secret"]) && !pkcePublicClient;
|
|
146
154
|
if (addCredentialsToBody || type === "authorizationCode" && !hasClientSecret) formData.set("client_id", flow["x-scalar-secret-client-id"]);
|
|
147
155
|
if (addCredentialsToBody && hasClientSecret) formData.set("client_secret", flow["x-scalar-secret-client-secret"]);
|
|
148
156
|
if ("x-scalar-secret-redirect-uri" in flow && flow["x-scalar-secret-redirect-uri"]) formData.set("redirect_uri", flow["x-scalar-secret-redirect-uri"]);
|
|
@@ -195,7 +203,8 @@ var refreshOauth2Token = async (flows, type, proxyUrl, activeServer, environment
|
|
|
195
203
|
formData.set("grant_type", "refresh_token");
|
|
196
204
|
formData.set("refresh_token", refreshToken);
|
|
197
205
|
const addCredentialsToBody = flow["x-scalar-credentials-location"] === "body";
|
|
198
|
-
const
|
|
206
|
+
const pkcePublicClient = authorizationCodeUsesPkcePublicClient(type, flow);
|
|
207
|
+
const hasClientSecret = Boolean(flow["x-scalar-secret-client-secret"]) && !pkcePublicClient;
|
|
199
208
|
if (addCredentialsToBody || type === "authorizationCode" && !hasClientSecret) formData.set("client_id", flow["x-scalar-secret-client-id"]);
|
|
200
209
|
if (addCredentialsToBody && hasClientSecret) formData.set("client_secret", flow["x-scalar-secret-client-secret"]);
|
|
201
210
|
if (flow["x-scalar-security-body"]) Object.entries(flow["x-scalar-security-body"]).forEach(([key, value]) => {
|