@scalar/api-client 3.6.1 → 3.8.0
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 +150 -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 +67 -96
- 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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentBreadcrumb.vue.js","names":[],"sources":["../../../../../src/v2/features/app/components/DocumentBreadcrumb.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCombobox,\n useModal,\n type ScalarComboboxOption,\n type ScalarComboboxOptionGroup,\n} from '@scalar/components'\nimport { ScalarIconCaretDown } from '@scalar/icons'\nimport { useToasts } from '@scalar/use-toasts'\nimport { computed, ref } from 'vue'\n\nimport { type AppState } from '@/v2/features/app/app-state'\nimport type { VersionStatus } from '@/v2/features/app/helpers/compute-version-status'\nimport { createDraftRegistryDocument } from '@/v2/features/app/helpers/create-draft-registry-document'\nimport { loadRegistryDocument } from '@/v2/features/app/helpers/load-registry-document'\nimport { VERSION_STATUS_PRESENTATION } from '@/v2/features/app/helpers/version-status-presentation'\nimport { useActiveDocumentVersion } from '@/v2/features/app/hooks/use-active-document-version'\nimport { useVersionConflictCheck } from '@/v2/features/app/hooks/use-version-conflict-check'\nimport { safeRun } from '@/v2/helpers/safe-run'\nimport type {\n ImportDocumentFromRegistry,\n RegistryDocumentsState,\n} from '@/v2/types/configuration'\n\nimport CreateVersionModal from './CreateVersionModal.vue'\n\nconst {\n app,\n registryDocuments = { status: 'success', documents: [] },\n fetchRegistryDocument,\n} = defineProps<{\n /** The app state used to read the active document and emit navigation events. */\n app: AppState\n /**\n * The list of all available registry documents. Used to merge advertised\n * versions with loaded workspace documents so the picker can offer every\n * known version of the active document.\n */\n registryDocuments?: RegistryDocumentsState\n /**\n * Fetcher used to import a version from the registry when the user picks\n * one that has not been loaded into the local workspace store yet.\n */\n fetchRegistryDocument?: ImportDocumentFromRegistry\n}>()\n\nconst emit = defineEmits<{\n /**\n * Emitted when the user clicks the \"+\" affordance inside the workspace\n * picker dropdown. The parent owns the create-workspace modal so the\n * breadcrumb stays free of workspace lifecycle concerns.\n */\n (event: 'createWorkspace'): void\n}>()\n\nconst { toast } = useToasts()\n\n/**\n * Resolve the active document group, its versions, and the currently\n * selected version once. The right-side sync indicator consumes the same\n * composable so the two surfaces always agree on what \"active\" means.\n */\nconst { activeRegistryMeta, activeItem, versions, activeVersion } =\n useActiveDocumentVersion({\n app,\n registryDocuments: () => registryDocuments,\n })\n\n/** Workspace label rendered as the first segment of the breadcrumb. */\nconst workspaceTitle = computed(\n () => app.workspace.activeWorkspace.value?.label ?? '',\n)\n\n/** Identifier for the active workspace - used as the combobox selection. */\nconst activeWorkspaceId = computed(\n () => app.workspace.activeWorkspace.value?.id,\n)\n\n/**\n * Workspaces grouped by team, mapped into the shape `ScalarCombobox`\n * expects. We always render this as a grouped combobox - even when there\n * is only one group - so the dropdown layout stays consistent and the\n * group label clearly separates `Team Workspaces` from `Local Workspaces`.\n */\nconst workspaceGroups = computed<ScalarComboboxOptionGroup[]>(() =>\n app.workspace.workspaceGroups.value.map((group) => ({\n // `WorkspaceGroup.label` is optional, but the combobox requires a\n // string. Falling back to an empty string lets the option group still\n // render its rows; the `group` slot below renders nothing for empty\n // labels so we do not surface an awkward blank header.\n label: group.label ?? '',\n options: group.options.map((option) => ({\n id: option.id,\n label: option.label,\n })),\n })),\n)\n\n/**\n * Currently selected option object. The combobox compares by reference, so\n * we have to look the option up inside `workspaceGroups` rather than build\n * a fresh `{ id, label }` here.\n */\nconst selectedWorkspaceOption = computed<ScalarComboboxOption | undefined>(\n () => {\n const id = activeWorkspaceId.value\n if (!id) {\n return undefined\n }\n for (const group of workspaceGroups.value) {\n const match = group.options.find((option) => option.id === id)\n if (match) {\n return match\n }\n }\n return undefined\n },\n)\n\n/** Title rendered for the document segment of the breadcrumb. */\nconst documentTitle = computed(() => {\n const item = activeItem.value\n if (item) {\n return item.title\n }\n const doc = app.store.value?.workspace.activeDocument\n return doc?.info?.title ?? ''\n})\n\n/**\n * Options passed to the combobox. We extend the base option shape with the\n * extra metadata the row template needs:\n * - `isLatest` toggles the \"Latest\" badge on the most recent version.\n * - `status` drives the row icon (synced / push / pull / conflict).\n *\n * `id` must match `SidebarDocumentVersion.key` so emitted updates can\n * resolve back to the underlying version.\n */\ntype VersionOption = ScalarComboboxOption & {\n isLatest: boolean\n status: VersionStatus\n}\n\nconst versionOptions = computed<VersionOption[]>(() =>\n versions.value.map((v) => ({\n id: v.key,\n label: v.version,\n // `isLatest` is precomputed by the sidebar layer and tracks the latest\n // *registry-advertised* version, not just the first row in the list —\n // drafts surface ahead of registry rows but never claim the badge.\n isLatest: v.isLatest,\n status: v.status,\n })),\n)\n\n/**\n * The combobox compares `modelValue` to options by reference, so we must\n * return the exact option object from `versionOptions` rather than a freshly\n * constructed one — otherwise the active row would never render as selected.\n */\nconst selectedOption = computed<VersionOption | undefined>(() => {\n const active = activeVersion.value\n if (!active) {\n return undefined\n }\n return versionOptions.value.find((option) => option.id === active.key)\n})\n\n/**\n * True when the current route actually resolves to a document. The workspace\n * store's `activeDocument` getter falls back to the first document in the\n * workspace even while the user is on a settings or environment page, so we\n * key off `activeEntities.documentSlug` instead — it is only populated when\n * the route actually carries a `:documentSlug` segment.\n */\nconst hasActiveDocument = computed(() =>\n Boolean(app.activeEntities.documentSlug.value),\n)\n\n/**\n * True only for registry-backed documents, which are the only ones that can\n * advertise multiple versions and therefore the only ones that get a picker.\n */\nconst hasVersionPicker = computed(() =>\n Boolean(activeItem.value && activeRegistryMeta.value),\n)\n\n/** Hide the entire breadcrumb when there is nothing meaningful to show. */\nconst isVisible = computed(() =>\n Boolean(workspaceTitle.value || hasActiveDocument.value),\n)\n\n/** Guards against double-firing the loader when the user clicks repeatedly. */\nconst isLoading = ref(false)\n\n// Run the three-way conflict check for every loaded version of the active\n// document group. We deliberately do not check versions of *other*\n// documents — the breadcrumb only renders the picker for the active one —\n// but every row inside that picker carries a status icon, so we want a\n// fresh result for each of them up front rather than on demand.\nuseVersionConflictCheck({\n store: () => app.store.value,\n fetcher: () => fetchRegistryDocument,\n registry: () => activeItem.value?.registry,\n versions,\n})\n\nconst navigateToDocument = (documentSlug: string) => {\n app.eventBus.emit('ui:navigate', {\n page: 'document',\n path: 'overview',\n documentSlug,\n })\n}\n\n/**\n * Click handler for the workspace label when it renders as a plain link\n * (i.e. the user is NOT yet on the get-started page). Navigating there\n * is what flips the same segment into a dropdown on the next render.\n */\nconst handleWorkspaceLinkClick = () => {\n const id = activeWorkspaceId.value\n if (!id) {\n return\n }\n app.workspace.navigateToWorkspaceGetStarted(id)\n}\n\n/**\n * Click handler for the document title segment. Routes back to the\n * document overview - useful when the user is deep inside an operation\n * page and wants to jump back to the top-level doc view without losing\n * the workspace / document context the breadcrumb already encodes.\n */\nconst handleDocumentTitleClick = () => {\n const documentSlug = app.activeEntities.documentSlug.value\n if (!documentSlug) {\n return\n }\n navigateToDocument(documentSlug)\n}\n\n/**\n * Selecting a workspace from the combobox routes to that workspace's\n * get-started page. We deliberately go to get-started rather than the\n * environment overview because the workspace switch is the natural moment\n * to surface onboarding guidance - the user has effectively arrived at a\n * fresh workspace and may not yet have any documents loaded.\n */\nconst handleWorkspaceSelect = (option: ScalarComboboxOption | undefined) => {\n if (!option) {\n return\n }\n if (option.id === activeWorkspaceId.value) {\n return\n }\n app.workspace.navigateToWorkspaceGetStarted(option.id)\n}\n\nconst handleVersionSelect = async (option: VersionOption | undefined) => {\n if (!option) {\n return\n }\n const version = versions.value.find((v) => v.key === option.id)\n if (!version || version.key === activeVersion.value?.key) {\n return\n }\n\n // Already imported into the workspace store — just route to it. The sidebar\n // active-version selection follows from `activeDocumentSlug` so switching\n // the route is enough to keep both surfaces in sync.\n if (version.documentName) {\n navigateToDocument(version.documentName)\n return\n }\n\n // Capture `app.store.value` into a local so the closure passed to\n // `safeRun` keeps the non-nullable type without needing an assertion,\n // and so a later store swap cannot redirect the in-flight load.\n const registry = activeItem.value?.registry\n const workspaceStore = app.store.value\n if (!registry || !fetchRegistryDocument || !workspaceStore) {\n toast('Cannot load this version without a registry fetcher.', 'error')\n return\n }\n\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n\n // The loader's helpers (fetcher, coercion, slug generation) can throw on\n // network failures or unexpected payloads. `safeRun` swallows the\n // exception and surfaces it as an `{ ok: false, error }` result so a\n // single rejection cannot leave the picker permanently disabled.\n const outcome = await safeRun(() =>\n loadRegistryDocument({\n fetcher: fetchRegistryDocument,\n workspaceStore,\n namespace: registry.namespace,\n slug: registry.slug,\n version: version.version,\n }),\n )\n\n isLoading.value = false\n\n if (!outcome.ok) {\n toast(outcome.error, 'error')\n return\n }\n\n const result = outcome.data\n if (!result.ok) {\n toast(result.error, 'error')\n return\n }\n\n navigateToDocument(result.documentName)\n}\n\n/** Modal lifecycle for the create-new-version flow. */\nconst createVersionModal = useModal()\n\n/**\n * Versions already loaded into the workspace store for the active group.\n * Used to keep the modal from accepting duplicates that would silently\n * collide with an existing local document. Versions advertised only by the\n * registry are intentionally NOT included - submitting one of those is the\n * conflict-resolution path the create-draft flow opts into.\n */\nconst loadedVersionStrings = computed(() =>\n versions.value.filter((v) => Boolean(v.documentName)).map((v) => v.version),\n)\n\nconst handleCreateVersion = async (version: string) => {\n const registry = activeItem.value?.registry\n const seedDocumentName = app.activeEntities.documentSlug.value\n const store = app.store.value\n\n if (!registry || !seedDocumentName || !store) {\n toast(\n 'Cannot create a new version without an active registry document.',\n 'error',\n )\n return\n }\n\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n\n const result = await createDraftRegistryDocument({\n workspaceStore: store,\n namespace: registry.namespace,\n slug: registry.slug,\n version,\n seedDocumentName,\n })\n\n isLoading.value = false\n\n if (!result.ok) {\n toast(result.error, 'error')\n return\n }\n\n navigateToDocument(result.documentName)\n}\n</script>\n\n<template>\n <nav\n v-if=\"isVisible\"\n aria-label=\"Document breadcrumb\"\n class=\"flex min-w-0 items-center gap-2 text-sm font-medium max-md:gap-0 max-md:text-xs\">\n <!--\n The breadcrumb leads with a vertical bar to visually divide it from\n the menu trigger to its left. The menu trigger itself surfaces the\n active scope (\"Team\" / \"Local\") so it doubles as the leading\n breadcrumb segment - the bar separates that scope label from the\n workspace selector.\n -->\n <span\n aria-hidden=\"true\"\n class=\"bg-border h-4 w-px shrink-0\" />\n\n <!--\n Workspace segment. Two-step affordance keyed off whether a document\n is active on the route:\n 1. While viewing a document: a plain link that navigates to the\n workspace's get-started page. A single click cannot accidentally\n switch workspaces while the user is mid-task.\n 2. On any workspace-level page (no active document, e.g. the\n get-started or environment pages): the same label expands into\n a `ScalarCombobox` so switching workspaces is one extra click\n from the workspace home, which is the natural moment for that\n decision.\n -->\n <template v-if=\"workspaceTitle\">\n <ScalarCombobox\n v-if=\"!hasActiveDocument\"\n class=\"workspace-picker w-72\"\n :modelValue=\"selectedWorkspaceOption\"\n :options=\"workspaceGroups\"\n placeholder=\"Search workspaces\"\n @add=\"emit('createWorkspace')\"\n @update:modelValue=\"handleWorkspaceSelect\">\n <button\n aria-label=\"Workspace\"\n class=\"hover:bg-b-2 flex min-w-0 items-center gap-1 rounded px-1.5 py-0.5\"\n type=\"button\">\n <span class=\"truncate\">{{ workspaceTitle }}</span>\n <ScalarIconCaretDown\n class=\"text-c-3 size-3 shrink-0\"\n weight=\"bold\" />\n </button>\n <template #add>\n <span class=\"text-c-1\">Create local workspace</span>\n </template>\n </ScalarCombobox>\n <button\n v-else\n aria-label=\"Open workspace home\"\n class=\"hover:bg-b-2 truncate rounded px-1.5 py-0.5\"\n type=\"button\"\n @click=\"handleWorkspaceLinkClick\">\n {{ workspaceTitle }}\n </button>\n </template>\n\n <template v-if=\"hasActiveDocument\">\n <!--\n Forward slashes separate the inner breadcrumb segments because\n they read as a path-like hierarchy (\"Workspace / Document /\n Version\"), in contrast to the leading bar that separates the\n breadcrumb from the menu trigger.\n -->\n <span\n aria-hidden=\"true\"\n class=\"text-c-3\">\n /\n </span>\n <button\n class=\"hover:bg-b-2 truncate rounded px-1.5 py-0.5\"\n type=\"button\"\n @click=\"handleDocumentTitleClick\">\n {{ documentTitle }}\n </button>\n <template v-if=\"hasVersionPicker\">\n <span\n aria-hidden=\"true\"\n class=\"text-c-3\">\n /\n </span>\n <ScalarCombobox\n class=\"version-picker w-64\"\n :modelValue=\"selectedOption\"\n :options=\"versionOptions\"\n placeholder=\"Search versions\"\n @add=\"createVersionModal.show()\"\n @update:modelValue=\"handleVersionSelect\">\n <button\n aria-label=\"Document version\"\n class=\"hover:bg-b-2 flex items-center gap-1 rounded px-1.5 py-0.5 disabled:opacity-50\"\n :disabled=\"isLoading\"\n type=\"button\">\n <span>{{ activeVersion?.version ?? '' }}</span>\n <ScalarIconCaretDown\n class=\"text-c-3 size-3\"\n weight=\"bold\" />\n </button>\n <template #option=\"{ option, selected }\">\n <component\n :is=\"VERSION_STATUS_PRESENTATION[option.status].icon\"\n :aria-label=\"VERSION_STATUS_PRESENTATION[option.status].label\"\n class=\"size-4 shrink-0\"\n :class=\"VERSION_STATUS_PRESENTATION[option.status].class\"\n :title=\"VERSION_STATUS_PRESENTATION[option.status].label\" />\n <span\n class=\"text-c-1 min-w-0 flex-1 truncate\"\n :class=\"{ 'font-medium': selected }\">\n {{ option.label }}\n </span>\n <span\n v-if=\"option.isLatest\"\n class=\"text-c-3 ml-2 shrink-0 text-xs\">\n Latest\n </span>\n </template>\n <!--\n The combobox's built-in `add` slot renders a `+` icon row below\n the version list. Wiring it up here keeps the create-draft\n affordance discoverable inside the same surface where the user\n picks versions, instead of as a separate button next to it.\n -->\n <template #add>\n <span class=\"text-c-1 font-medium\">New Version</span>\n </template>\n </ScalarCombobox>\n <span\n v-if=\"isLoading\"\n class=\"text-c-3 ml-1 text-xs\">\n Loading…\n </span>\n </template>\n </template>\n <CreateVersionModal\n :existingVersions=\"loadedVersionStrings\"\n :sourceVersion=\"activeVersion?.version\"\n :state=\"createVersionModal\"\n @create=\"handleCreateVersion\" />\n </nav>\n</template>\n\n<style scoped>\n/*\n * The combobox option only marks the *active* (hovered / keyboard-focused)\n * row with a background. We also want a persistent highlight on the\n * currently *selected* version so the user can spot it at a glance, even\n * after moving the cursor or arrowing to another row.\n */\n.version-picker :deep([role='option'][aria-selected='true']) {\n background-color: var(--scalar-background-2);\n}\n</style>\n"],"mappings":""}
|
|
@@ -1,345 +0,0 @@
|
|
|
1
|
-
import { loadRegistryDocument } from "../helpers/load-registry-document.js";
|
|
2
|
-
import { safeRun } from "../../../helpers/safe-run.js";
|
|
3
|
-
import { createDraftRegistryDocument } from "../helpers/create-draft-registry-document.js";
|
|
4
|
-
import { VERSION_STATUS_PRESENTATION } from "../helpers/version-status-presentation.js";
|
|
5
|
-
import { useActiveDocumentVersion } from "../hooks/use-active-document-version.js";
|
|
6
|
-
import { useVersionConflictCheck } from "../hooks/use-version-conflict-check.js";
|
|
7
|
-
import CreateVersionModal_default from "./CreateVersionModal.vue.js";
|
|
8
|
-
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, ref, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
|
|
9
|
-
import { ScalarCombobox, useModal } from "@scalar/components";
|
|
10
|
-
import { ScalarIconCaretDown } from "@scalar/icons";
|
|
11
|
-
import { useToasts } from "@scalar/use-toasts";
|
|
12
|
-
//#region src/v2/features/app/components/DocumentBreadcrumb.vue?vue&type=script&setup=true&lang.ts
|
|
13
|
-
var _hoisted_1 = {
|
|
14
|
-
key: 0,
|
|
15
|
-
"aria-label": "Document breadcrumb",
|
|
16
|
-
class: "flex min-w-0 items-center gap-2 text-sm font-medium max-md:gap-0 max-md:text-xs"
|
|
17
|
-
};
|
|
18
|
-
var _hoisted_2 = {
|
|
19
|
-
"aria-label": "Workspace",
|
|
20
|
-
class: "hover:bg-b-2 flex min-w-0 items-center gap-1 rounded px-1.5 py-0.5",
|
|
21
|
-
type: "button"
|
|
22
|
-
};
|
|
23
|
-
var _hoisted_3 = { class: "truncate" };
|
|
24
|
-
var _hoisted_4 = ["disabled"];
|
|
25
|
-
var _hoisted_5 = {
|
|
26
|
-
key: 0,
|
|
27
|
-
class: "text-c-3 ml-2 shrink-0 text-xs"
|
|
28
|
-
};
|
|
29
|
-
var _hoisted_6 = {
|
|
30
|
-
key: 0,
|
|
31
|
-
class: "text-c-3 ml-1 text-xs"
|
|
32
|
-
};
|
|
33
|
-
var DocumentBreadcrumb_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
|
|
34
|
-
__name: "DocumentBreadcrumb",
|
|
35
|
-
props: {
|
|
36
|
-
app: {},
|
|
37
|
-
registryDocuments: { default: () => ({
|
|
38
|
-
status: "success",
|
|
39
|
-
documents: []
|
|
40
|
-
}) },
|
|
41
|
-
fetchRegistryDocument: { type: Function }
|
|
42
|
-
},
|
|
43
|
-
emits: ["createWorkspace"],
|
|
44
|
-
setup(__props, { emit: __emit }) {
|
|
45
|
-
const emit = __emit;
|
|
46
|
-
const { toast } = useToasts();
|
|
47
|
-
/**
|
|
48
|
-
* Resolve the active document group, its versions, and the currently
|
|
49
|
-
* selected version once. The right-side sync indicator consumes the same
|
|
50
|
-
* composable so the two surfaces always agree on what "active" means.
|
|
51
|
-
*/
|
|
52
|
-
const { activeRegistryMeta, activeItem, versions, activeVersion } = useActiveDocumentVersion({
|
|
53
|
-
app: __props.app,
|
|
54
|
-
registryDocuments: () => __props.registryDocuments
|
|
55
|
-
});
|
|
56
|
-
/** Workspace label rendered as the first segment of the breadcrumb. */
|
|
57
|
-
const workspaceTitle = computed(() => __props.app.workspace.activeWorkspace.value?.label ?? "");
|
|
58
|
-
/** Identifier for the active workspace - used as the combobox selection. */
|
|
59
|
-
const activeWorkspaceId = computed(() => __props.app.workspace.activeWorkspace.value?.id);
|
|
60
|
-
/**
|
|
61
|
-
* Workspaces grouped by team, mapped into the shape `ScalarCombobox`
|
|
62
|
-
* expects. We always render this as a grouped combobox - even when there
|
|
63
|
-
* is only one group - so the dropdown layout stays consistent and the
|
|
64
|
-
* group label clearly separates `Team Workspaces` from `Local Workspaces`.
|
|
65
|
-
*/
|
|
66
|
-
const workspaceGroups = computed(() => __props.app.workspace.workspaceGroups.value.map((group) => ({
|
|
67
|
-
label: group.label ?? "",
|
|
68
|
-
options: group.options.map((option) => ({
|
|
69
|
-
id: option.id,
|
|
70
|
-
label: option.label
|
|
71
|
-
}))
|
|
72
|
-
})));
|
|
73
|
-
/**
|
|
74
|
-
* Currently selected option object. The combobox compares by reference, so
|
|
75
|
-
* we have to look the option up inside `workspaceGroups` rather than build
|
|
76
|
-
* a fresh `{ id, label }` here.
|
|
77
|
-
*/
|
|
78
|
-
const selectedWorkspaceOption = computed(() => {
|
|
79
|
-
const id = activeWorkspaceId.value;
|
|
80
|
-
if (!id) return;
|
|
81
|
-
for (const group of workspaceGroups.value) {
|
|
82
|
-
const match = group.options.find((option) => option.id === id);
|
|
83
|
-
if (match) return match;
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
/** Title rendered for the document segment of the breadcrumb. */
|
|
87
|
-
const documentTitle = computed(() => {
|
|
88
|
-
const item = activeItem.value;
|
|
89
|
-
if (item) return item.title;
|
|
90
|
-
return (__props.app.store.value?.workspace.activeDocument)?.info?.title ?? "";
|
|
91
|
-
});
|
|
92
|
-
/**
|
|
93
|
-
* Options passed to the combobox. We extend the base option shape with the
|
|
94
|
-
* extra metadata the row template needs:
|
|
95
|
-
* - `isLatest` toggles the "Latest" badge on the most recent version.
|
|
96
|
-
* - `status` drives the row icon (synced / push / pull / conflict).
|
|
97
|
-
*
|
|
98
|
-
* `id` must match `SidebarDocumentVersion.key` so emitted updates can
|
|
99
|
-
* resolve back to the underlying version.
|
|
100
|
-
*/
|
|
101
|
-
const versionOptions = computed(() => versions.value.map((v) => ({
|
|
102
|
-
id: v.key,
|
|
103
|
-
label: v.version,
|
|
104
|
-
isLatest: v.isLatest,
|
|
105
|
-
status: v.status
|
|
106
|
-
})));
|
|
107
|
-
/**
|
|
108
|
-
* The combobox compares `modelValue` to options by reference, so we must
|
|
109
|
-
* return the exact option object from `versionOptions` rather than a freshly
|
|
110
|
-
* constructed one — otherwise the active row would never render as selected.
|
|
111
|
-
*/
|
|
112
|
-
const selectedOption = computed(() => {
|
|
113
|
-
const active = activeVersion.value;
|
|
114
|
-
if (!active) return;
|
|
115
|
-
return versionOptions.value.find((option) => option.id === active.key);
|
|
116
|
-
});
|
|
117
|
-
/**
|
|
118
|
-
* True when the current route actually resolves to a document. The workspace
|
|
119
|
-
* store's `activeDocument` getter falls back to the first document in the
|
|
120
|
-
* workspace even while the user is on a settings or environment page, so we
|
|
121
|
-
* key off `activeEntities.documentSlug` instead — it is only populated when
|
|
122
|
-
* the route actually carries a `:documentSlug` segment.
|
|
123
|
-
*/
|
|
124
|
-
const hasActiveDocument = computed(() => Boolean(__props.app.activeEntities.documentSlug.value));
|
|
125
|
-
/**
|
|
126
|
-
* True only for registry-backed documents, which are the only ones that can
|
|
127
|
-
* advertise multiple versions and therefore the only ones that get a picker.
|
|
128
|
-
*/
|
|
129
|
-
const hasVersionPicker = computed(() => Boolean(activeItem.value && activeRegistryMeta.value));
|
|
130
|
-
/** Hide the entire breadcrumb when there is nothing meaningful to show. */
|
|
131
|
-
const isVisible = computed(() => Boolean(workspaceTitle.value || hasActiveDocument.value));
|
|
132
|
-
/** Guards against double-firing the loader when the user clicks repeatedly. */
|
|
133
|
-
const isLoading = ref(false);
|
|
134
|
-
useVersionConflictCheck({
|
|
135
|
-
store: () => __props.app.store.value,
|
|
136
|
-
fetcher: () => __props.fetchRegistryDocument,
|
|
137
|
-
registry: () => activeItem.value?.registry,
|
|
138
|
-
versions
|
|
139
|
-
});
|
|
140
|
-
const navigateToDocument = (documentSlug) => {
|
|
141
|
-
__props.app.eventBus.emit("ui:navigate", {
|
|
142
|
-
page: "document",
|
|
143
|
-
path: "overview",
|
|
144
|
-
documentSlug
|
|
145
|
-
});
|
|
146
|
-
};
|
|
147
|
-
/**
|
|
148
|
-
* Click handler for the workspace label when it renders as a plain link
|
|
149
|
-
* (i.e. the user is NOT yet on the get-started page). Navigating there
|
|
150
|
-
* is what flips the same segment into a dropdown on the next render.
|
|
151
|
-
*/
|
|
152
|
-
const handleWorkspaceLinkClick = () => {
|
|
153
|
-
const id = activeWorkspaceId.value;
|
|
154
|
-
if (!id) return;
|
|
155
|
-
__props.app.workspace.navigateToWorkspaceGetStarted(id);
|
|
156
|
-
};
|
|
157
|
-
/**
|
|
158
|
-
* Click handler for the document title segment. Routes back to the
|
|
159
|
-
* document overview - useful when the user is deep inside an operation
|
|
160
|
-
* page and wants to jump back to the top-level doc view without losing
|
|
161
|
-
* the workspace / document context the breadcrumb already encodes.
|
|
162
|
-
*/
|
|
163
|
-
const handleDocumentTitleClick = () => {
|
|
164
|
-
const documentSlug = __props.app.activeEntities.documentSlug.value;
|
|
165
|
-
if (!documentSlug) return;
|
|
166
|
-
navigateToDocument(documentSlug);
|
|
167
|
-
};
|
|
168
|
-
/**
|
|
169
|
-
* Selecting a workspace from the combobox routes to that workspace's
|
|
170
|
-
* get-started page. We deliberately go to get-started rather than the
|
|
171
|
-
* environment overview because the workspace switch is the natural moment
|
|
172
|
-
* to surface onboarding guidance - the user has effectively arrived at a
|
|
173
|
-
* fresh workspace and may not yet have any documents loaded.
|
|
174
|
-
*/
|
|
175
|
-
const handleWorkspaceSelect = (option) => {
|
|
176
|
-
if (!option) return;
|
|
177
|
-
if (option.id === activeWorkspaceId.value) return;
|
|
178
|
-
__props.app.workspace.navigateToWorkspaceGetStarted(option.id);
|
|
179
|
-
};
|
|
180
|
-
const handleVersionSelect = async (option) => {
|
|
181
|
-
if (!option) return;
|
|
182
|
-
const version = versions.value.find((v) => v.key === option.id);
|
|
183
|
-
if (!version || version.key === activeVersion.value?.key) return;
|
|
184
|
-
if (version.documentName) {
|
|
185
|
-
navigateToDocument(version.documentName);
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
const registry = activeItem.value?.registry;
|
|
189
|
-
const workspaceStore = __props.app.store.value;
|
|
190
|
-
if (!registry || !__props.fetchRegistryDocument || !workspaceStore) {
|
|
191
|
-
toast("Cannot load this version without a registry fetcher.", "error");
|
|
192
|
-
return;
|
|
193
|
-
}
|
|
194
|
-
if (isLoading.value) return;
|
|
195
|
-
isLoading.value = true;
|
|
196
|
-
const outcome = await safeRun(() => loadRegistryDocument({
|
|
197
|
-
fetcher: __props.fetchRegistryDocument,
|
|
198
|
-
workspaceStore,
|
|
199
|
-
namespace: registry.namespace,
|
|
200
|
-
slug: registry.slug,
|
|
201
|
-
version: version.version
|
|
202
|
-
}));
|
|
203
|
-
isLoading.value = false;
|
|
204
|
-
if (!outcome.ok) {
|
|
205
|
-
toast(outcome.error, "error");
|
|
206
|
-
return;
|
|
207
|
-
}
|
|
208
|
-
const result = outcome.data;
|
|
209
|
-
if (!result.ok) {
|
|
210
|
-
toast(result.error, "error");
|
|
211
|
-
return;
|
|
212
|
-
}
|
|
213
|
-
navigateToDocument(result.documentName);
|
|
214
|
-
};
|
|
215
|
-
/** Modal lifecycle for the create-new-version flow. */
|
|
216
|
-
const createVersionModal = useModal();
|
|
217
|
-
/**
|
|
218
|
-
* Versions already loaded into the workspace store for the active group.
|
|
219
|
-
* Used to keep the modal from accepting duplicates that would silently
|
|
220
|
-
* collide with an existing local document. Versions advertised only by the
|
|
221
|
-
* registry are intentionally NOT included - submitting one of those is the
|
|
222
|
-
* conflict-resolution path the create-draft flow opts into.
|
|
223
|
-
*/
|
|
224
|
-
const loadedVersionStrings = computed(() => versions.value.filter((v) => Boolean(v.documentName)).map((v) => v.version));
|
|
225
|
-
const handleCreateVersion = async (version) => {
|
|
226
|
-
const registry = activeItem.value?.registry;
|
|
227
|
-
const seedDocumentName = __props.app.activeEntities.documentSlug.value;
|
|
228
|
-
const store = __props.app.store.value;
|
|
229
|
-
if (!registry || !seedDocumentName || !store) {
|
|
230
|
-
toast("Cannot create a new version without an active registry document.", "error");
|
|
231
|
-
return;
|
|
232
|
-
}
|
|
233
|
-
if (isLoading.value) return;
|
|
234
|
-
isLoading.value = true;
|
|
235
|
-
const result = await createDraftRegistryDocument({
|
|
236
|
-
workspaceStore: store,
|
|
237
|
-
namespace: registry.namespace,
|
|
238
|
-
slug: registry.slug,
|
|
239
|
-
version,
|
|
240
|
-
seedDocumentName
|
|
241
|
-
});
|
|
242
|
-
isLoading.value = false;
|
|
243
|
-
if (!result.ok) {
|
|
244
|
-
toast(result.error, "error");
|
|
245
|
-
return;
|
|
246
|
-
}
|
|
247
|
-
navigateToDocument(result.documentName);
|
|
248
|
-
};
|
|
249
|
-
return (_ctx, _cache) => {
|
|
250
|
-
return isVisible.value ? (openBlock(), createElementBlock("nav", _hoisted_1, [
|
|
251
|
-
_cache[6] || (_cache[6] = createElementVNode("span", {
|
|
252
|
-
"aria-hidden": "true",
|
|
253
|
-
class: "bg-border h-4 w-px shrink-0"
|
|
254
|
-
}, null, -1)),
|
|
255
|
-
workspaceTitle.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [!hasActiveDocument.value ? (openBlock(), createBlock(unref(ScalarCombobox), {
|
|
256
|
-
key: 0,
|
|
257
|
-
class: "workspace-picker w-72",
|
|
258
|
-
modelValue: selectedWorkspaceOption.value,
|
|
259
|
-
options: workspaceGroups.value,
|
|
260
|
-
placeholder: "Search workspaces",
|
|
261
|
-
onAdd: _cache[0] || (_cache[0] = ($event) => emit("createWorkspace")),
|
|
262
|
-
"onUpdate:modelValue": handleWorkspaceSelect
|
|
263
|
-
}, {
|
|
264
|
-
add: withCtx(() => [..._cache[2] || (_cache[2] = [createElementVNode("span", { class: "text-c-1" }, "Create local workspace", -1)])]),
|
|
265
|
-
default: withCtx(() => [createElementVNode("button", _hoisted_2, [createElementVNode("span", _hoisted_3, toDisplayString(workspaceTitle.value), 1), createVNode(unref(ScalarIconCaretDown), {
|
|
266
|
-
class: "text-c-3 size-3 shrink-0",
|
|
267
|
-
weight: "bold"
|
|
268
|
-
})])]),
|
|
269
|
-
_: 1
|
|
270
|
-
}, 8, ["modelValue", "options"])) : (openBlock(), createElementBlock("button", {
|
|
271
|
-
key: 1,
|
|
272
|
-
"aria-label": "Open workspace home",
|
|
273
|
-
class: "hover:bg-b-2 truncate rounded px-1.5 py-0.5",
|
|
274
|
-
type: "button",
|
|
275
|
-
onClick: handleWorkspaceLinkClick
|
|
276
|
-
}, toDisplayString(workspaceTitle.value), 1))], 64)) : createCommentVNode("", true),
|
|
277
|
-
hasActiveDocument.value ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
278
|
-
_cache[5] || (_cache[5] = createElementVNode("span", {
|
|
279
|
-
"aria-hidden": "true",
|
|
280
|
-
class: "text-c-3"
|
|
281
|
-
}, " / ", -1)),
|
|
282
|
-
createElementVNode("button", {
|
|
283
|
-
class: "hover:bg-b-2 truncate rounded px-1.5 py-0.5",
|
|
284
|
-
type: "button",
|
|
285
|
-
onClick: handleDocumentTitleClick
|
|
286
|
-
}, toDisplayString(documentTitle.value), 1),
|
|
287
|
-
hasVersionPicker.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
288
|
-
_cache[4] || (_cache[4] = createElementVNode("span", {
|
|
289
|
-
"aria-hidden": "true",
|
|
290
|
-
class: "text-c-3"
|
|
291
|
-
}, " / ", -1)),
|
|
292
|
-
createVNode(unref(ScalarCombobox), {
|
|
293
|
-
class: "version-picker w-64",
|
|
294
|
-
modelValue: selectedOption.value,
|
|
295
|
-
options: versionOptions.value,
|
|
296
|
-
placeholder: "Search versions",
|
|
297
|
-
onAdd: _cache[1] || (_cache[1] = ($event) => unref(createVersionModal).show()),
|
|
298
|
-
"onUpdate:modelValue": handleVersionSelect
|
|
299
|
-
}, {
|
|
300
|
-
option: withCtx(({ option, selected }) => [
|
|
301
|
-
(openBlock(), createBlock(resolveDynamicComponent(unref(VERSION_STATUS_PRESENTATION)[option.status].icon), {
|
|
302
|
-
"aria-label": unref(VERSION_STATUS_PRESENTATION)[option.status].label,
|
|
303
|
-
class: normalizeClass(["size-4 shrink-0", unref(VERSION_STATUS_PRESENTATION)[option.status].class]),
|
|
304
|
-
title: unref(VERSION_STATUS_PRESENTATION)[option.status].label
|
|
305
|
-
}, null, 8, [
|
|
306
|
-
"aria-label",
|
|
307
|
-
"class",
|
|
308
|
-
"title"
|
|
309
|
-
])),
|
|
310
|
-
createElementVNode("span", { class: normalizeClass(["text-c-1 min-w-0 flex-1 truncate", { "font-medium": selected }]) }, toDisplayString(option.label), 3),
|
|
311
|
-
option.isLatest ? (openBlock(), createElementBlock("span", _hoisted_5, " Latest ")) : createCommentVNode("", true)
|
|
312
|
-
]),
|
|
313
|
-
add: withCtx(() => [..._cache[3] || (_cache[3] = [createElementVNode("span", { class: "text-c-1 font-medium" }, "New Version", -1)])]),
|
|
314
|
-
default: withCtx(() => [createElementVNode("button", {
|
|
315
|
-
"aria-label": "Document version",
|
|
316
|
-
class: "hover:bg-b-2 flex items-center gap-1 rounded px-1.5 py-0.5 disabled:opacity-50",
|
|
317
|
-
disabled: isLoading.value,
|
|
318
|
-
type: "button"
|
|
319
|
-
}, [createElementVNode("span", null, toDisplayString(unref(activeVersion)?.version ?? ""), 1), createVNode(unref(ScalarIconCaretDown), {
|
|
320
|
-
class: "text-c-3 size-3",
|
|
321
|
-
weight: "bold"
|
|
322
|
-
})], 8, _hoisted_4)]),
|
|
323
|
-
_: 1
|
|
324
|
-
}, 8, ["modelValue", "options"]),
|
|
325
|
-
isLoading.value ? (openBlock(), createElementBlock("span", _hoisted_6, " Loading… ")) : createCommentVNode("", true)
|
|
326
|
-
], 64)) : createCommentVNode("", true)
|
|
327
|
-
], 64)) : createCommentVNode("", true),
|
|
328
|
-
createVNode(CreateVersionModal_default, {
|
|
329
|
-
existingVersions: loadedVersionStrings.value,
|
|
330
|
-
sourceVersion: unref(activeVersion)?.version,
|
|
331
|
-
state: unref(createVersionModal),
|
|
332
|
-
onCreate: handleCreateVersion
|
|
333
|
-
}, null, 8, [
|
|
334
|
-
"existingVersions",
|
|
335
|
-
"sourceVersion",
|
|
336
|
-
"state"
|
|
337
|
-
])
|
|
338
|
-
])) : createCommentVNode("", true);
|
|
339
|
-
};
|
|
340
|
-
}
|
|
341
|
-
});
|
|
342
|
-
//#endregion
|
|
343
|
-
export { DocumentBreadcrumb_vue_vue_type_script_setup_true_lang_default as default };
|
|
344
|
-
|
|
345
|
-
//# sourceMappingURL=DocumentBreadcrumb.vue.script.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentBreadcrumb.vue.script.js","names":[],"sources":["../../../../../src/v2/features/app/components/DocumentBreadcrumb.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCombobox,\n useModal,\n type ScalarComboboxOption,\n type ScalarComboboxOptionGroup,\n} from '@scalar/components'\nimport { ScalarIconCaretDown } from '@scalar/icons'\nimport { useToasts } from '@scalar/use-toasts'\nimport { computed, ref } from 'vue'\n\nimport { type AppState } from '@/v2/features/app/app-state'\nimport type { VersionStatus } from '@/v2/features/app/helpers/compute-version-status'\nimport { createDraftRegistryDocument } from '@/v2/features/app/helpers/create-draft-registry-document'\nimport { loadRegistryDocument } from '@/v2/features/app/helpers/load-registry-document'\nimport { VERSION_STATUS_PRESENTATION } from '@/v2/features/app/helpers/version-status-presentation'\nimport { useActiveDocumentVersion } from '@/v2/features/app/hooks/use-active-document-version'\nimport { useVersionConflictCheck } from '@/v2/features/app/hooks/use-version-conflict-check'\nimport { safeRun } from '@/v2/helpers/safe-run'\nimport type {\n ImportDocumentFromRegistry,\n RegistryDocumentsState,\n} from '@/v2/types/configuration'\n\nimport CreateVersionModal from './CreateVersionModal.vue'\n\nconst {\n app,\n registryDocuments = { status: 'success', documents: [] },\n fetchRegistryDocument,\n} = defineProps<{\n /** The app state used to read the active document and emit navigation events. */\n app: AppState\n /**\n * The list of all available registry documents. Used to merge advertised\n * versions with loaded workspace documents so the picker can offer every\n * known version of the active document.\n */\n registryDocuments?: RegistryDocumentsState\n /**\n * Fetcher used to import a version from the registry when the user picks\n * one that has not been loaded into the local workspace store yet.\n */\n fetchRegistryDocument?: ImportDocumentFromRegistry\n}>()\n\nconst emit = defineEmits<{\n /**\n * Emitted when the user clicks the \"+\" affordance inside the workspace\n * picker dropdown. The parent owns the create-workspace modal so the\n * breadcrumb stays free of workspace lifecycle concerns.\n */\n (event: 'createWorkspace'): void\n}>()\n\nconst { toast } = useToasts()\n\n/**\n * Resolve the active document group, its versions, and the currently\n * selected version once. The right-side sync indicator consumes the same\n * composable so the two surfaces always agree on what \"active\" means.\n */\nconst { activeRegistryMeta, activeItem, versions, activeVersion } =\n useActiveDocumentVersion({\n app,\n registryDocuments: () => registryDocuments,\n })\n\n/** Workspace label rendered as the first segment of the breadcrumb. */\nconst workspaceTitle = computed(\n () => app.workspace.activeWorkspace.value?.label ?? '',\n)\n\n/** Identifier for the active workspace - used as the combobox selection. */\nconst activeWorkspaceId = computed(\n () => app.workspace.activeWorkspace.value?.id,\n)\n\n/**\n * Workspaces grouped by team, mapped into the shape `ScalarCombobox`\n * expects. We always render this as a grouped combobox - even when there\n * is only one group - so the dropdown layout stays consistent and the\n * group label clearly separates `Team Workspaces` from `Local Workspaces`.\n */\nconst workspaceGroups = computed<ScalarComboboxOptionGroup[]>(() =>\n app.workspace.workspaceGroups.value.map((group) => ({\n // `WorkspaceGroup.label` is optional, but the combobox requires a\n // string. Falling back to an empty string lets the option group still\n // render its rows; the `group` slot below renders nothing for empty\n // labels so we do not surface an awkward blank header.\n label: group.label ?? '',\n options: group.options.map((option) => ({\n id: option.id,\n label: option.label,\n })),\n })),\n)\n\n/**\n * Currently selected option object. The combobox compares by reference, so\n * we have to look the option up inside `workspaceGroups` rather than build\n * a fresh `{ id, label }` here.\n */\nconst selectedWorkspaceOption = computed<ScalarComboboxOption | undefined>(\n () => {\n const id = activeWorkspaceId.value\n if (!id) {\n return undefined\n }\n for (const group of workspaceGroups.value) {\n const match = group.options.find((option) => option.id === id)\n if (match) {\n return match\n }\n }\n return undefined\n },\n)\n\n/** Title rendered for the document segment of the breadcrumb. */\nconst documentTitle = computed(() => {\n const item = activeItem.value\n if (item) {\n return item.title\n }\n const doc = app.store.value?.workspace.activeDocument\n return doc?.info?.title ?? ''\n})\n\n/**\n * Options passed to the combobox. We extend the base option shape with the\n * extra metadata the row template needs:\n * - `isLatest` toggles the \"Latest\" badge on the most recent version.\n * - `status` drives the row icon (synced / push / pull / conflict).\n *\n * `id` must match `SidebarDocumentVersion.key` so emitted updates can\n * resolve back to the underlying version.\n */\ntype VersionOption = ScalarComboboxOption & {\n isLatest: boolean\n status: VersionStatus\n}\n\nconst versionOptions = computed<VersionOption[]>(() =>\n versions.value.map((v) => ({\n id: v.key,\n label: v.version,\n // `isLatest` is precomputed by the sidebar layer and tracks the latest\n // *registry-advertised* version, not just the first row in the list —\n // drafts surface ahead of registry rows but never claim the badge.\n isLatest: v.isLatest,\n status: v.status,\n })),\n)\n\n/**\n * The combobox compares `modelValue` to options by reference, so we must\n * return the exact option object from `versionOptions` rather than a freshly\n * constructed one — otherwise the active row would never render as selected.\n */\nconst selectedOption = computed<VersionOption | undefined>(() => {\n const active = activeVersion.value\n if (!active) {\n return undefined\n }\n return versionOptions.value.find((option) => option.id === active.key)\n})\n\n/**\n * True when the current route actually resolves to a document. The workspace\n * store's `activeDocument` getter falls back to the first document in the\n * workspace even while the user is on a settings or environment page, so we\n * key off `activeEntities.documentSlug` instead — it is only populated when\n * the route actually carries a `:documentSlug` segment.\n */\nconst hasActiveDocument = computed(() =>\n Boolean(app.activeEntities.documentSlug.value),\n)\n\n/**\n * True only for registry-backed documents, which are the only ones that can\n * advertise multiple versions and therefore the only ones that get a picker.\n */\nconst hasVersionPicker = computed(() =>\n Boolean(activeItem.value && activeRegistryMeta.value),\n)\n\n/** Hide the entire breadcrumb when there is nothing meaningful to show. */\nconst isVisible = computed(() =>\n Boolean(workspaceTitle.value || hasActiveDocument.value),\n)\n\n/** Guards against double-firing the loader when the user clicks repeatedly. */\nconst isLoading = ref(false)\n\n// Run the three-way conflict check for every loaded version of the active\n// document group. We deliberately do not check versions of *other*\n// documents — the breadcrumb only renders the picker for the active one —\n// but every row inside that picker carries a status icon, so we want a\n// fresh result for each of them up front rather than on demand.\nuseVersionConflictCheck({\n store: () => app.store.value,\n fetcher: () => fetchRegistryDocument,\n registry: () => activeItem.value?.registry,\n versions,\n})\n\nconst navigateToDocument = (documentSlug: string) => {\n app.eventBus.emit('ui:navigate', {\n page: 'document',\n path: 'overview',\n documentSlug,\n })\n}\n\n/**\n * Click handler for the workspace label when it renders as a plain link\n * (i.e. the user is NOT yet on the get-started page). Navigating there\n * is what flips the same segment into a dropdown on the next render.\n */\nconst handleWorkspaceLinkClick = () => {\n const id = activeWorkspaceId.value\n if (!id) {\n return\n }\n app.workspace.navigateToWorkspaceGetStarted(id)\n}\n\n/**\n * Click handler for the document title segment. Routes back to the\n * document overview - useful when the user is deep inside an operation\n * page and wants to jump back to the top-level doc view without losing\n * the workspace / document context the breadcrumb already encodes.\n */\nconst handleDocumentTitleClick = () => {\n const documentSlug = app.activeEntities.documentSlug.value\n if (!documentSlug) {\n return\n }\n navigateToDocument(documentSlug)\n}\n\n/**\n * Selecting a workspace from the combobox routes to that workspace's\n * get-started page. We deliberately go to get-started rather than the\n * environment overview because the workspace switch is the natural moment\n * to surface onboarding guidance - the user has effectively arrived at a\n * fresh workspace and may not yet have any documents loaded.\n */\nconst handleWorkspaceSelect = (option: ScalarComboboxOption | undefined) => {\n if (!option) {\n return\n }\n if (option.id === activeWorkspaceId.value) {\n return\n }\n app.workspace.navigateToWorkspaceGetStarted(option.id)\n}\n\nconst handleVersionSelect = async (option: VersionOption | undefined) => {\n if (!option) {\n return\n }\n const version = versions.value.find((v) => v.key === option.id)\n if (!version || version.key === activeVersion.value?.key) {\n return\n }\n\n // Already imported into the workspace store — just route to it. The sidebar\n // active-version selection follows from `activeDocumentSlug` so switching\n // the route is enough to keep both surfaces in sync.\n if (version.documentName) {\n navigateToDocument(version.documentName)\n return\n }\n\n // Capture `app.store.value` into a local so the closure passed to\n // `safeRun` keeps the non-nullable type without needing an assertion,\n // and so a later store swap cannot redirect the in-flight load.\n const registry = activeItem.value?.registry\n const workspaceStore = app.store.value\n if (!registry || !fetchRegistryDocument || !workspaceStore) {\n toast('Cannot load this version without a registry fetcher.', 'error')\n return\n }\n\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n\n // The loader's helpers (fetcher, coercion, slug generation) can throw on\n // network failures or unexpected payloads. `safeRun` swallows the\n // exception and surfaces it as an `{ ok: false, error }` result so a\n // single rejection cannot leave the picker permanently disabled.\n const outcome = await safeRun(() =>\n loadRegistryDocument({\n fetcher: fetchRegistryDocument,\n workspaceStore,\n namespace: registry.namespace,\n slug: registry.slug,\n version: version.version,\n }),\n )\n\n isLoading.value = false\n\n if (!outcome.ok) {\n toast(outcome.error, 'error')\n return\n }\n\n const result = outcome.data\n if (!result.ok) {\n toast(result.error, 'error')\n return\n }\n\n navigateToDocument(result.documentName)\n}\n\n/** Modal lifecycle for the create-new-version flow. */\nconst createVersionModal = useModal()\n\n/**\n * Versions already loaded into the workspace store for the active group.\n * Used to keep the modal from accepting duplicates that would silently\n * collide with an existing local document. Versions advertised only by the\n * registry are intentionally NOT included - submitting one of those is the\n * conflict-resolution path the create-draft flow opts into.\n */\nconst loadedVersionStrings = computed(() =>\n versions.value.filter((v) => Boolean(v.documentName)).map((v) => v.version),\n)\n\nconst handleCreateVersion = async (version: string) => {\n const registry = activeItem.value?.registry\n const seedDocumentName = app.activeEntities.documentSlug.value\n const store = app.store.value\n\n if (!registry || !seedDocumentName || !store) {\n toast(\n 'Cannot create a new version without an active registry document.',\n 'error',\n )\n return\n }\n\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n\n const result = await createDraftRegistryDocument({\n workspaceStore: store,\n namespace: registry.namespace,\n slug: registry.slug,\n version,\n seedDocumentName,\n })\n\n isLoading.value = false\n\n if (!result.ok) {\n toast(result.error, 'error')\n return\n }\n\n navigateToDocument(result.documentName)\n}\n</script>\n\n<template>\n <nav\n v-if=\"isVisible\"\n aria-label=\"Document breadcrumb\"\n class=\"flex min-w-0 items-center gap-2 text-sm font-medium max-md:gap-0 max-md:text-xs\">\n <!--\n The breadcrumb leads with a vertical bar to visually divide it from\n the menu trigger to its left. The menu trigger itself surfaces the\n active scope (\"Team\" / \"Local\") so it doubles as the leading\n breadcrumb segment - the bar separates that scope label from the\n workspace selector.\n -->\n <span\n aria-hidden=\"true\"\n class=\"bg-border h-4 w-px shrink-0\" />\n\n <!--\n Workspace segment. Two-step affordance keyed off whether a document\n is active on the route:\n 1. While viewing a document: a plain link that navigates to the\n workspace's get-started page. A single click cannot accidentally\n switch workspaces while the user is mid-task.\n 2. On any workspace-level page (no active document, e.g. the\n get-started or environment pages): the same label expands into\n a `ScalarCombobox` so switching workspaces is one extra click\n from the workspace home, which is the natural moment for that\n decision.\n -->\n <template v-if=\"workspaceTitle\">\n <ScalarCombobox\n v-if=\"!hasActiveDocument\"\n class=\"workspace-picker w-72\"\n :modelValue=\"selectedWorkspaceOption\"\n :options=\"workspaceGroups\"\n placeholder=\"Search workspaces\"\n @add=\"emit('createWorkspace')\"\n @update:modelValue=\"handleWorkspaceSelect\">\n <button\n aria-label=\"Workspace\"\n class=\"hover:bg-b-2 flex min-w-0 items-center gap-1 rounded px-1.5 py-0.5\"\n type=\"button\">\n <span class=\"truncate\">{{ workspaceTitle }}</span>\n <ScalarIconCaretDown\n class=\"text-c-3 size-3 shrink-0\"\n weight=\"bold\" />\n </button>\n <template #add>\n <span class=\"text-c-1\">Create local workspace</span>\n </template>\n </ScalarCombobox>\n <button\n v-else\n aria-label=\"Open workspace home\"\n class=\"hover:bg-b-2 truncate rounded px-1.5 py-0.5\"\n type=\"button\"\n @click=\"handleWorkspaceLinkClick\">\n {{ workspaceTitle }}\n </button>\n </template>\n\n <template v-if=\"hasActiveDocument\">\n <!--\n Forward slashes separate the inner breadcrumb segments because\n they read as a path-like hierarchy (\"Workspace / Document /\n Version\"), in contrast to the leading bar that separates the\n breadcrumb from the menu trigger.\n -->\n <span\n aria-hidden=\"true\"\n class=\"text-c-3\">\n /\n </span>\n <button\n class=\"hover:bg-b-2 truncate rounded px-1.5 py-0.5\"\n type=\"button\"\n @click=\"handleDocumentTitleClick\">\n {{ documentTitle }}\n </button>\n <template v-if=\"hasVersionPicker\">\n <span\n aria-hidden=\"true\"\n class=\"text-c-3\">\n /\n </span>\n <ScalarCombobox\n class=\"version-picker w-64\"\n :modelValue=\"selectedOption\"\n :options=\"versionOptions\"\n placeholder=\"Search versions\"\n @add=\"createVersionModal.show()\"\n @update:modelValue=\"handleVersionSelect\">\n <button\n aria-label=\"Document version\"\n class=\"hover:bg-b-2 flex items-center gap-1 rounded px-1.5 py-0.5 disabled:opacity-50\"\n :disabled=\"isLoading\"\n type=\"button\">\n <span>{{ activeVersion?.version ?? '' }}</span>\n <ScalarIconCaretDown\n class=\"text-c-3 size-3\"\n weight=\"bold\" />\n </button>\n <template #option=\"{ option, selected }\">\n <component\n :is=\"VERSION_STATUS_PRESENTATION[option.status].icon\"\n :aria-label=\"VERSION_STATUS_PRESENTATION[option.status].label\"\n class=\"size-4 shrink-0\"\n :class=\"VERSION_STATUS_PRESENTATION[option.status].class\"\n :title=\"VERSION_STATUS_PRESENTATION[option.status].label\" />\n <span\n class=\"text-c-1 min-w-0 flex-1 truncate\"\n :class=\"{ 'font-medium': selected }\">\n {{ option.label }}\n </span>\n <span\n v-if=\"option.isLatest\"\n class=\"text-c-3 ml-2 shrink-0 text-xs\">\n Latest\n </span>\n </template>\n <!--\n The combobox's built-in `add` slot renders a `+` icon row below\n the version list. Wiring it up here keeps the create-draft\n affordance discoverable inside the same surface where the user\n picks versions, instead of as a separate button next to it.\n -->\n <template #add>\n <span class=\"text-c-1 font-medium\">New Version</span>\n </template>\n </ScalarCombobox>\n <span\n v-if=\"isLoading\"\n class=\"text-c-3 ml-1 text-xs\">\n Loading…\n </span>\n </template>\n </template>\n <CreateVersionModal\n :existingVersions=\"loadedVersionStrings\"\n :sourceVersion=\"activeVersion?.version\"\n :state=\"createVersionModal\"\n @create=\"handleCreateVersion\" />\n </nav>\n</template>\n\n<style scoped>\n/*\n * The combobox option only marks the *active* (hovered / keyboard-focused)\n * row with a background. We also want a persistent highlight on the\n * currently *selected* version so the user can spot it at a glance, even\n * after moving the cursor or arrowing to another row.\n */\n.version-picker :deep([role='option'][aria-selected='true']) {\n background-color: var(--scalar-background-2);\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8CA,MAAM,OAAO;EASb,MAAM,EAAE,UAAU,WAAU;;;;;;EAO5B,MAAM,EAAE,oBAAoB,YAAY,UAAU,kBAChD,yBAAyB;GACvB,KAAE,QAAA;GACF,yBAAyB,QAAA;GAC1B,CAAA;;EAGH,MAAM,iBAAiB,eACf,QAAA,IAAI,UAAU,gBAAgB,OAAO,SAAS,GACtD;;EAGA,MAAM,oBAAoB,eAClB,QAAA,IAAI,UAAU,gBAAgB,OAAO,GAC7C;;;;;;;EAQA,MAAM,kBAAkB,eACtB,QAAA,IAAI,UAAU,gBAAgB,MAAM,KAAK,WAAW;GAKlD,OAAO,MAAM,SAAS;GACtB,SAAS,MAAM,QAAQ,KAAK,YAAY;IACtC,IAAI,OAAO;IACX,OAAO,OAAO;IACf,EAAE;GACJ,EAAE,CACL;;;;;;EAOA,MAAM,0BAA0B,eACxB;GACJ,MAAM,KAAK,kBAAkB;AAC7B,OAAI,CAAC,GACH;AAEF,QAAK,MAAM,SAAS,gBAAgB,OAAO;IACzC,MAAM,QAAQ,MAAM,QAAQ,MAAM,WAAW,OAAO,OAAO,GAAE;AAC7D,QAAI,MACF,QAAO;;IAKf;;EAGA,MAAM,gBAAgB,eAAe;GACnC,MAAM,OAAO,WAAW;AACxB,OAAI,KACF,QAAO,KAAK;AAGd,WADY,QAAA,IAAI,MAAM,OAAO,UAAU,iBAC3B,MAAM,SAAS;IAC5B;;;;;;;;;;EAgBD,MAAM,iBAAiB,eACrB,SAAS,MAAM,KAAK,OAAO;GACzB,IAAI,EAAE;GACN,OAAO,EAAE;GAIT,UAAU,EAAE;GACZ,QAAQ,EAAE;GACX,EAAE,CACL;;;;;;EAOA,MAAM,iBAAiB,eAA0C;GAC/D,MAAM,SAAS,cAAc;AAC7B,OAAI,CAAC,OACH;AAEF,UAAO,eAAe,MAAM,MAAM,WAAW,OAAO,OAAO,OAAO,IAAG;IACtE;;;;;;;;EASD,MAAM,oBAAoB,eACxB,QAAQ,QAAA,IAAI,eAAe,aAAa,MAAM,CAChD;;;;;EAMA,MAAM,mBAAmB,eACvB,QAAQ,WAAW,SAAS,mBAAmB,MAAM,CACvD;;EAGA,MAAM,YAAY,eAChB,QAAQ,eAAe,SAAS,kBAAkB,MAAM,CAC1D;;EAGA,MAAM,YAAY,IAAI,MAAK;AAO3B,0BAAwB;GACtB,aAAa,QAAA,IAAI,MAAM;GACvB,eAAe,QAAA;GACf,gBAAgB,WAAW,OAAO;GAClC;GACD,CAAA;EAED,MAAM,sBAAsB,iBAAyB;AACnD,WAAA,IAAI,SAAS,KAAK,eAAe;IAC/B,MAAM;IACN,MAAM;IACN;IACD,CAAA;;;;;;;EAQH,MAAM,iCAAiC;GACrC,MAAM,KAAK,kBAAkB;AAC7B,OAAI,CAAC,GACH;AAEF,WAAA,IAAI,UAAU,8BAA8B,GAAE;;;;;;;;EAShD,MAAM,iCAAiC;GACrC,MAAM,eAAe,QAAA,IAAI,eAAe,aAAa;AACrD,OAAI,CAAC,aACH;AAEF,sBAAmB,aAAY;;;;;;;;;EAUjC,MAAM,yBAAyB,WAA6C;AAC1E,OAAI,CAAC,OACH;AAEF,OAAI,OAAO,OAAO,kBAAkB,MAClC;AAEF,WAAA,IAAI,UAAU,8BAA8B,OAAO,GAAE;;EAGvD,MAAM,sBAAsB,OAAO,WAAsC;AACvE,OAAI,CAAC,OACH;GAEF,MAAM,UAAU,SAAS,MAAM,MAAM,MAAM,EAAE,QAAQ,OAAO,GAAE;AAC9D,OAAI,CAAC,WAAW,QAAQ,QAAQ,cAAc,OAAO,IACnD;AAMF,OAAI,QAAQ,cAAc;AACxB,uBAAmB,QAAQ,aAAY;AACvC;;GAMF,MAAM,WAAW,WAAW,OAAO;GACnC,MAAM,iBAAiB,QAAA,IAAI,MAAM;AACjC,OAAI,CAAC,YAAY,CAAC,QAAA,yBAAyB,CAAC,gBAAgB;AAC1D,UAAM,wDAAwD,QAAO;AACrE;;AAGF,OAAI,UAAU,MACZ;AAGF,aAAU,QAAQ;GAMlB,MAAM,UAAU,MAAM,cACpB,qBAAqB;IACnB,SAAS,QAAA;IACT;IACA,WAAW,SAAS;IACpB,MAAM,SAAS;IACf,SAAS,QAAQ;IAClB,CAAC,CACJ;AAEA,aAAU,QAAQ;AAElB,OAAI,CAAC,QAAQ,IAAI;AACf,UAAM,QAAQ,OAAO,QAAO;AAC5B;;GAGF,MAAM,SAAS,QAAQ;AACvB,OAAI,CAAC,OAAO,IAAI;AACd,UAAM,OAAO,OAAO,QAAO;AAC3B;;AAGF,sBAAmB,OAAO,aAAY;;;EAIxC,MAAM,qBAAqB,UAAS;;;;;;;;EASpC,MAAM,uBAAuB,eAC3B,SAAS,MAAM,QAAQ,MAAM,QAAQ,EAAE,aAAa,CAAC,CAAC,KAAK,MAAM,EAAE,QAAQ,CAC7E;EAEA,MAAM,sBAAsB,OAAO,YAAoB;GACrD,MAAM,WAAW,WAAW,OAAO;GACnC,MAAM,mBAAmB,QAAA,IAAI,eAAe,aAAa;GACzD,MAAM,QAAQ,QAAA,IAAI,MAAM;AAExB,OAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,OAAO;AAC5C,UACE,oEACA,QACF;AACA;;AAGF,OAAI,UAAU,MACZ;AAGF,aAAU,QAAQ;GAElB,MAAM,SAAS,MAAM,4BAA4B;IAC/C,gBAAgB;IAChB,WAAW,SAAS;IACpB,MAAM,SAAS;IACf;IACA;IACD,CAAA;AAED,aAAU,QAAQ;AAElB,OAAI,CAAC,OAAO,IAAI;AACd,UAAM,OAAO,OAAO,QAAO;AAC3B;;AAGF,sBAAmB,OAAO,aAAY;;;UAM9B,UAAA,SAAA,WAAA,EADR,mBA4IM,OA5IN,YA4IM;8BAjIJ,mBAEwC,QAAA;KADtC,eAAY;KACZ,OAAM;;IAcQ,eAAA,SAAA,WAAA,EAAhB,mBA8BW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,CA5BA,kBAAA,SAAA,WAAA,EADT,YAoBiB,MAAA,eAAA,EAAA;;KAlBf,OAAM;KACL,YAAY,wBAAA;KACZ,SAAS,gBAAA;KACV,aAAY;KACX,OAAG,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,kBAAA;KACT,uBAAmB;;KAUT,KAAG,cACwC,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAApD,mBAAoD,QAAA,EAA9C,OAAM,YAAU,EAAC,0BAAsB,GAAA,CAAA,EAAA,CAAA;4BAFtC,CART,mBAQS,UART,YAQS,CAJP,mBAAkD,QAAlD,YAAkD,gBAAxB,eAAA,MAAc,EAAA,EAAA,EACxC,YAEkB,MAAA,oBAAA,EAAA;MADhB,OAAM;MACN,QAAO;;;sDAMb,mBAOS,UAAA;;KALP,cAAW;KACX,OAAM;KACN,MAAK;KACJ,SAAO;uBACL,eAAA,MAAc,EAAA,EAAA,EAAA,EAAA,GAAA,IAAA,mBAAA,IAAA,KAAA;IAIL,kBAAA,SAAA,WAAA,EAAhB,mBA2EW,UAAA,EAAA,KAAA,GAAA,EAAA;+BApET,mBAIO,QAAA;MAHL,eAAY;MACZ,OAAM;QAAW,OAEnB,GAAA;KACA,mBAKS,UAAA;MAJP,OAAM;MACN,MAAK;MACJ,SAAO;wBACL,cAAA,MAAa,EAAA,EAAA;KAEF,iBAAA,SAAA,WAAA,EAAhB,mBAwDW,UAAA,EAAA,KAAA,GAAA,EAAA;gCAvDT,mBAIO,QAAA;OAHL,eAAY;OACZ,OAAM;SAAW,OAEnB,GAAA;MACA,YA4CiB,MAAA,eAAA,EAAA;OA3Cf,OAAM;OACL,YAAY,eAAA;OACZ,SAAS,eAAA;OACV,aAAY;OACX,OAAG,OAAA,OAAA,OAAA,MAAA,WAAE,MAAA,mBAAkB,CAAC,MAAI;OAC5B,uBAAmB;;OAWT,QAAM,SAM+C,EAN3C,QAAQ,eAAQ;sBACnC,YAK8D,wBAJvD,MAAA,4BAA2B,CAAC,OAAO,QAAQ,KAAI,EAAA;SACnD,cAAY,MAAA,4BAA2B,CAAC,OAAO,QAAQ;SACxD,OAAK,eAAA,CAAC,mBACE,MAAA,4BAA2B,CAAC,OAAO,QAAQ,MAAK,CAAA;SACvD,OAAO,MAAA,4BAA2B,CAAC,OAAO,QAAQ;;;;;;QACrD,mBAIO,QAAA,EAHL,OAAK,eAAA,CAAC,oCAAkC,EAAA,eACf,UAAQ,CAAA,CAAA,EAAA,EAAA,gBAC9B,OAAO,MAAK,EAAA,EAAA;QAGT,OAAO,YAAA,WAAA,EADf,mBAIO,QAJP,YAEyC,WAEzC,IAAA,mBAAA,IAAA,KAAA;;OAQS,KAAG,cACyC,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAArD,mBAAqD,QAAA,EAA/C,OAAM,wBAAsB,EAAC,eAAW,GAAA,CAAA,EAAA,CAAA;8BA1BvC,CATT,mBASS,UAAA;QARP,cAAW;QACX,OAAM;QACL,UAAU,UAAA;QACX,MAAK;WACL,mBAA+C,QAAA,MAAA,gBAAtC,MAAA,cAAa,EAAE,WAAO,GAAA,EAAA,EAAA,EAC/B,YAEkB,MAAA,oBAAA,EAAA;QADhB,OAAM;QACN,QAAO;;;;MA+BL,UAAA,SAAA,WAAA,EADR,mBAIO,QAJP,YAEgC,aAEhC,IAAA,mBAAA,IAAA,KAAA;;;IAGJ,YAIkC,4BAAA;KAH/B,kBAAkB,qBAAA;KAClB,eAAe,MAAA,cAAa,EAAE;KAC9B,OAAO,MAAA,mBAAkB;KACzB,UAAQ"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { AppState } from '../../../../v2/features/app/app-state.js';
|
|
2
|
-
import type { RegistryDocumentsState } from '../../../../v2/types/configuration';
|
|
3
|
-
type __VLS_Props = {
|
|
4
|
-
/** App state used to read the active document and registry meta. */
|
|
5
|
-
app: AppState;
|
|
6
|
-
/**
|
|
7
|
-
* Registry documents state. Mirrors the prop accepted by
|
|
8
|
-
* `DocumentBreadcrumb` so both header surfaces resolve the same active
|
|
9
|
-
* document group.
|
|
10
|
-
*/
|
|
11
|
-
registryDocuments?: RegistryDocumentsState;
|
|
12
|
-
};
|
|
13
|
-
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
-
declare const _default: typeof __VLS_export;
|
|
15
|
-
export default _default;
|
|
16
|
-
//# sourceMappingURL=DocumentSyncIndicator.vue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentSyncIndicator.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/features/app/components/DocumentSyncIndicator.vue"],"names":[],"mappings":"AA0DA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAG3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAEtE,KAAK,WAAW,GAAG;IACf,oEAAoE;IACpE,GAAG,EAAE,QAAQ,CAAA;IACb;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,sBAAsB,CAAA;CAC3C,CAAC;AAqEJ,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { type ModalState } from '@scalar/components';
|
|
2
|
-
import type { RegistryNamespacesState } from '../../../../v2/types/configuration';
|
|
3
|
-
/**
|
|
4
|
-
* Modal that walks the user through publishing a brand-new document to
|
|
5
|
-
* the registry.
|
|
6
|
-
*
|
|
7
|
-
* The component is purely presentational: it owns the form state, the
|
|
8
|
-
* loading / error indicator and the validation rules, and delegates the
|
|
9
|
-
* actual publish call to the parent through `submit`. The parent
|
|
10
|
-
* resolves `submit` with `{ ok: true }` to close the modal or
|
|
11
|
-
* `{ ok: false, message }` to surface the error inline so the user can
|
|
12
|
-
* fix the input and retry without losing what they typed.
|
|
13
|
-
*/
|
|
14
|
-
declare const _default: typeof __VLS_export;
|
|
15
|
-
export default _default;
|
|
16
|
-
declare const __VLS_export: import("vue").DefineComponent<{
|
|
17
|
-
/** Modal control returned by `useModal()`. */
|
|
18
|
-
state: ModalState;
|
|
19
|
-
/** Namespaces the user can publish into, with loading status. */
|
|
20
|
-
namespaces: RegistryNamespacesState;
|
|
21
|
-
/**
|
|
22
|
-
* Initial slug to seed the slug input with. The parent typically
|
|
23
|
-
* computes this from the active document's title. Falls back to an
|
|
24
|
-
* empty string so the placeholder is visible.
|
|
25
|
-
*/
|
|
26
|
-
defaultSlug?: string;
|
|
27
|
-
/**
|
|
28
|
-
* Initial version. Defaults to `1.0.0` when the active document does
|
|
29
|
-
* not advertise an `info.version` yet.
|
|
30
|
-
*/
|
|
31
|
-
defaultVersion?: string;
|
|
32
|
-
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
33
|
-
submit: (payload: {
|
|
34
|
-
input: {
|
|
35
|
-
namespace: string;
|
|
36
|
-
slug: string;
|
|
37
|
-
version: string;
|
|
38
|
-
};
|
|
39
|
-
done: (outcome: {
|
|
40
|
-
ok: true;
|
|
41
|
-
} | {
|
|
42
|
-
ok: false;
|
|
43
|
-
message: string;
|
|
44
|
-
}) => void;
|
|
45
|
-
}) => any;
|
|
46
|
-
}, string, import("vue").PublicProps, Readonly<{
|
|
47
|
-
/** Modal control returned by `useModal()`. */
|
|
48
|
-
state: ModalState;
|
|
49
|
-
/** Namespaces the user can publish into, with loading status. */
|
|
50
|
-
namespaces: RegistryNamespacesState;
|
|
51
|
-
/**
|
|
52
|
-
* Initial slug to seed the slug input with. The parent typically
|
|
53
|
-
* computes this from the active document's title. Falls back to an
|
|
54
|
-
* empty string so the placeholder is visible.
|
|
55
|
-
*/
|
|
56
|
-
defaultSlug?: string;
|
|
57
|
-
/**
|
|
58
|
-
* Initial version. Defaults to `1.0.0` when the active document does
|
|
59
|
-
* not advertise an `info.version` yet.
|
|
60
|
-
*/
|
|
61
|
-
defaultVersion?: string;
|
|
62
|
-
}> & Readonly<{
|
|
63
|
-
onSubmit?: ((payload: {
|
|
64
|
-
input: {
|
|
65
|
-
namespace: string;
|
|
66
|
-
slug: string;
|
|
67
|
-
version: string;
|
|
68
|
-
};
|
|
69
|
-
done: (outcome: {
|
|
70
|
-
ok: true;
|
|
71
|
-
} | {
|
|
72
|
-
ok: false;
|
|
73
|
-
message: string;
|
|
74
|
-
}) => void;
|
|
75
|
-
}) => any) | undefined;
|
|
76
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
77
|
-
//# sourceMappingURL=PublishDocumentModal.vue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PublishDocumentModal.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/features/app/components/PublishDocumentModal.vue"],"names":[],"mappings":"AAsVA,OAAO,EAKL,KAAK,UAAU,EAEhB,MAAM,oBAAoB,CAAA;AAK3B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAGvE;;;;;;;;;;GAUG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAEhB,8CAA8C;WACvC,UAAU;IACjB,iEAAiE;gBACrD,uBAAuB;IACnC;;;;OAIG;kBACW,MAAM;IACpB;;;OAGG;qBACc,MAAM;;;eAoBZ;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE;cACrD,CAAC,OAAO,EAAE;YAAE,EAAE,EAAE,IAAI,CAAA;SAAE,GAAG;YAAE,EAAE,EAAE,KAAK,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI;;;IAnC1E,8CAA8C;WACvC,UAAU;IACjB,iEAAiE;gBACrD,uBAAuB;IACnC;;;;OAIG;kBACW,MAAM;IACpB;;;OAGG;qBACc,MAAM;;;eAoBZ;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE;cACrD,CAAC,OAAO,EAAE;YAAE,EAAE,EAAE,IAAI,CAAA;SAAE,GAAG;YAAE,EAAE,EAAE,KAAK,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI;;kFAwgBxE,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import PublishDocumentModal_vue_vue_type_script_setup_true_lang_default from "./PublishDocumentModal.vue.script.js";
|
|
2
|
-
//#region src/v2/features/app/components/PublishDocumentModal.vue
|
|
3
|
-
var PublishDocumentModal_default = PublishDocumentModal_vue_vue_type_script_setup_true_lang_default;
|
|
4
|
-
//#endregion
|
|
5
|
-
export { PublishDocumentModal_default as default };
|
|
6
|
-
|
|
7
|
-
//# sourceMappingURL=PublishDocumentModal.vue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PublishDocumentModal.vue.js","names":[],"sources":["../../../../../src/v2/features/app/components/PublishDocumentModal.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Modal that walks the user through publishing a brand-new document to\n * the registry.\n *\n * The component is purely presentational: it owns the form state, the\n * loading / error indicator and the validation rules, and delegates the\n * actual publish call to the parent through `submit`. The parent\n * resolves `submit` with `{ ok: true }` to close the modal or\n * `{ ok: false, message }` to surface the error inline so the user can\n * fix the input and retry without losing what they typed.\n */\nexport default {}\n</script>\n\n<script setup lang=\"ts\">\nimport {\n ScalarButton,\n ScalarListbox,\n ScalarModal,\n useLoadingState,\n type ModalState,\n type ScalarListboxOption,\n} from '@scalar/components'\nimport { slugify } from '@scalar/helpers/string/slugify'\nimport { ScalarIconBuildings, ScalarIconCaretDown } from '@scalar/icons'\nimport { computed, ref, watch } from 'vue'\n\nimport type { RegistryNamespacesState } from '@/v2/types/configuration'\n\nconst {\n state,\n namespaces,\n defaultSlug = '',\n defaultVersion = '1.0.0',\n} = defineProps<{\n /** Modal control returned by `useModal()`. */\n state: ModalState\n /** Namespaces the user can publish into, with loading status. */\n namespaces: RegistryNamespacesState\n /**\n * Initial slug to seed the slug input with. The parent typically\n * computes this from the active document's title. Falls back to an\n * empty string so the placeholder is visible.\n */\n defaultSlug?: string\n /**\n * Initial version. Defaults to `1.0.0` when the active document does\n * not advertise an `info.version` yet.\n */\n defaultVersion?: string\n}>()\n\nconst emit = defineEmits<{\n /**\n * Fired when the user submits a valid form. The parent must resolve\n * the returned promise with either `{ ok: true }` (modal closes) or\n * `{ ok: false, message }` (message is rendered inline so the user\n * can retry).\n */\n (\n event: 'submit',\n payload: {\n input: { namespace: string; slug: string; version: string }\n done: (outcome: { ok: true } | { ok: false; message: string }) => void\n },\n ): void\n}>()\n\nconst namespaceOptions = computed<ScalarListboxOption[]>(() =>\n (namespaces.status === 'success'\n ? namespaces.namespaces\n : (namespaces.namespaces ?? [])\n ).map((entry) => ({\n id: entry.namespace,\n label: entry.title?.trim() || entry.namespace,\n })),\n)\n\nconst isNamespacesLoading = computed(() => namespaces.status === 'loading')\n\n/**\n * The picker component is only rendered when there is more than one\n * namespace to choose between. Single-namespace setups read as a static\n * label so the user does not have to interact with a one-item dropdown.\n */\nconst hasMultipleNamespaces = computed(() => namespaceOptions.value.length > 1)\n\nconst selectedNamespace = ref<ScalarListboxOption | undefined>(undefined)\nconst slug = ref('')\nconst version = ref('')\nconst errorMessage = ref<string | null>(null)\nconst loader = useLoadingState()\n\n/**\n * Resets the form whenever the modal opens. Keeping this scoped to the\n * `open` flag (and not to every prop change) preserves user input\n * across reactive updates while the modal is already on screen.\n */\nwatch(\n () => state.open,\n (isOpen) => {\n if (!isOpen) {\n return\n }\n slug.value = slugify(defaultSlug)\n version.value = defaultVersion\n errorMessage.value = null\n selectedNamespace.value = namespaceOptions.value[0]\n void loader.clear()\n },\n)\n\n/** Keep the listbox selection in sync when the namespace list arrives. */\nwatch(namespaceOptions, (options) => {\n if (selectedNamespace.value) {\n return\n }\n selectedNamespace.value = options[0]\n})\n\nconst trimmedSlug = computed(() => slug.value.trim())\nconst trimmedVersion = computed(() => version.value.trim())\n\n/**\n * Human-friendly preview of the resulting registry coordinate\n * (`namespace/slug@version`). Returns `null` while any of the three\n * pieces is still missing so we never show a half-rendered path.\n * Mirrors the same fields submitted to the publish call so the user\n * sees exactly what will land on the registry.\n */\nconst publishPreview = computed<string | null>(() => {\n const namespace = selectedNamespace.value?.id\n if (!namespace || !trimmedSlug.value || !trimmedVersion.value) {\n return null\n }\n return `${namespace}/${trimmedSlug.value}@${trimmedVersion.value}`\n})\n\nconst isSubmitDisabled = computed(\n () =>\n !selectedNamespace.value ||\n trimmedSlug.value.length === 0 ||\n trimmedVersion.value.length === 0 ||\n loader.isLoading,\n)\n\nconst handleSubmit = (): void => {\n errorMessage.value = null\n\n const namespace = selectedNamespace.value?.id\n if (!namespace || !trimmedSlug.value || !trimmedVersion.value) {\n return\n }\n\n loader.start()\n\n emit('submit', {\n input: {\n namespace: String(namespace),\n slug: trimmedSlug.value,\n version: trimmedVersion.value,\n },\n done: (outcome) => {\n if (outcome.ok) {\n void loader.clear()\n state.hide()\n return\n }\n errorMessage.value = outcome.message\n void loader.invalidate()\n },\n })\n}\n</script>\n\n<template>\n <ScalarModal\n size=\"sm\"\n :state=\"state\"\n title=\"Publish to registry\"\n variant=\"form\">\n <form\n class=\"flex flex-col gap-4\"\n @submit.prevent=\"handleSubmit\">\n <!--\n Namespace picker.\n\n All three states (single namespace, multiple namespaces, loading)\n render into a bordered field of the same height as the inputs\n below so the modal reads as one cohesive form. A leading\n `Buildings` icon anchors the namespace context visually so the\n single-value state does not look like loose plain text.\n\n - One namespace -> read-only field with the namespace label and\n a \"fixed\" hint, so the user understands there is nothing to\n pick without staring at a one-item dropdown.\n - Multiple namespaces -> dropdown listbox.\n - Loading -> the same field shape with a skeleton-style label\n so layout does not shift once the list arrives.\n -->\n <div class=\"flex flex-col gap-1.5\">\n <label class=\"text-c-1 text-xs font-medium\">Namespace</label>\n <template v-if=\"isNamespacesLoading && namespaceOptions.length === 0\">\n <div\n class=\"border-border bg-b-2 flex h-8 items-center gap-2 rounded border px-3 text-sm\">\n <ScalarIconBuildings\n class=\"text-c-3 size-3.5 shrink-0\"\n size=\"sm\"\n thickness=\"1.5\" />\n <span class=\"text-c-3\">Loading namespaces…</span>\n </div>\n </template>\n <template v-else-if=\"hasMultipleNamespaces\">\n <ScalarListbox\n v-model=\"selectedNamespace\"\n :options=\"namespaceOptions\"\n teleport>\n <ScalarButton\n class=\"border-border text-c-1 hover:bg-b-2 flex h-8 w-full items-center justify-between gap-2 rounded border px-3 font-normal\"\n fullWidth\n type=\"button\"\n variant=\"outlined\">\n <span class=\"flex min-w-0 items-center gap-2\">\n <ScalarIconBuildings\n class=\"text-c-2 size-3.5 shrink-0\"\n size=\"sm\"\n thickness=\"1.5\" />\n <span class=\"truncate\">{{\n selectedNamespace?.label ?? 'Select a namespace'\n }}</span>\n </span>\n <ScalarIconCaretDown\n class=\"text-c-2 size-3.5 shrink-0\"\n size=\"sm\"\n thickness=\"1.5\" />\n </ScalarButton>\n </ScalarListbox>\n </template>\n <template v-else>\n <div\n class=\"border-border bg-b-2 text-c-1 flex h-8 items-center gap-2 rounded border px-3 text-sm\"\n :title=\"\n selectedNamespace\n ? `Publishing to ${selectedNamespace.label}`\n : undefined\n \">\n <ScalarIconBuildings\n class=\"text-c-2 size-3.5 shrink-0\"\n size=\"sm\"\n thickness=\"1.5\" />\n <span class=\"truncate\">\n {{ selectedNamespace?.label ?? '—' }}\n </span>\n </div>\n </template>\n </div>\n\n <!-- Slug input. Pre-filled with a slugified version of the document title. -->\n <div class=\"flex flex-col gap-1.5\">\n <label\n class=\"text-c-1 text-xs font-medium\"\n for=\"publish-document-slug\">\n Slug\n </label>\n <input\n id=\"publish-document-slug\"\n v-model=\"slug\"\n autocomplete=\"off\"\n class=\"border-border bg-b-1 text-c-1 placeholder:text-c-3 focus:border-c-accent h-8 rounded border px-3 text-sm outline-none\"\n placeholder=\"pets-api\"\n type=\"text\" />\n </div>\n\n <!--\n Version input. The string lives on `info.version` after a\n successful publish so the local document and the registry stay\n in sync without an extra edit.\n -->\n <div class=\"flex flex-col gap-1.5\">\n <label\n class=\"text-c-1 text-xs font-medium\"\n for=\"publish-document-version\">\n Version\n </label>\n <input\n id=\"publish-document-version\"\n v-model=\"version\"\n autocomplete=\"off\"\n class=\"border-border bg-b-1 text-c-1 placeholder:text-c-3 focus:border-c-accent h-8 rounded border px-3 text-sm outline-none\"\n placeholder=\"1.0.0\"\n type=\"text\" />\n </div>\n\n <!--\n Live preview of the published identity. Reading the modal\n top-down the user types a slug + version and sees the resulting\n coordinate update in place, which is more reassuring than\n decoding three separate fields. Hidden until enough fields\n resolve so we never render half a path.\n -->\n <div\n v-if=\"publishPreview\"\n class=\"text-c-2 -mt-1 text-xs\">\n Publishing as\n <span class=\"text-c-1 font-mono\">{{ publishPreview }}</span>\n </div>\n\n <!--\n Inline error region. Stays mounted when present so the user can\n read the message while they are correcting the form rather than\n having it disappear after a toast timeout.\n -->\n <p\n v-if=\"errorMessage\"\n class=\"text-red bg-b-2 rounded p-2 text-xs\"\n role=\"alert\">\n {{ errorMessage }}\n </p>\n\n <div class=\"flex justify-end gap-2 pt-1\">\n <ScalarButton\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n @click=\"state.hide()\">\n Cancel\n </ScalarButton>\n <ScalarButton\n :disabled=\"isSubmitDisabled\"\n :loader=\"loader\"\n size=\"sm\"\n type=\"submit\">\n Publish\n </ScalarButton>\n </div>\n </form>\n </ScalarModal>\n</template>\n"],"mappings":""}
|