@scalar/api-client 3.10.4 → 3.12.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.
Files changed (151) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/plugins/posthog/sanitize-event-payload.d.ts.map +1 -1
  3. package/dist/plugins/posthog/sanitize-event-payload.js +1 -0
  4. package/dist/plugins/posthog/sanitize-event-payload.js.map +1 -1
  5. package/dist/style.css +25 -74
  6. package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts.map +1 -1
  7. package/dist/v2/blocks/operation-block/OperationBlock.vue.js.map +1 -1
  8. package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js +10 -1
  9. package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js.map +1 -1
  10. package/dist/v2/blocks/operation-block/helpers/send-request.d.ts +7 -1
  11. package/dist/v2/blocks/operation-block/helpers/send-request.d.ts.map +1 -1
  12. package/dist/v2/blocks/operation-block/helpers/send-request.js +2 -2
  13. package/dist/v2/blocks/operation-block/helpers/send-request.js.map +1 -1
  14. package/dist/v2/blocks/operation-block/helpers/validate-path-parameters.d.ts.map +1 -1
  15. package/dist/v2/blocks/operation-block/helpers/validate-path-parameters.js +1 -2
  16. package/dist/v2/blocks/operation-block/helpers/validate-path-parameters.js.map +1 -1
  17. package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts +1 -1
  18. package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts.map +1 -1
  19. package/dist/v2/blocks/request-block/RequestBlock.vue.js +1 -1
  20. package/dist/v2/blocks/request-block/RequestBlock.vue.js.map +1 -1
  21. package/dist/v2/blocks/request-block/RequestBlock.vue.script.js +48 -11
  22. package/dist/v2/blocks/request-block/RequestBlock.vue.script.js.map +1 -1
  23. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.d.ts +2 -2
  24. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.d.ts.map +1 -1
  25. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.js.map +1 -1
  26. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.script.js +2 -6
  27. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.script.js.map +1 -1
  28. package/dist/v2/blocks/request-block/components/RequestParams.vue.d.ts +4 -0
  29. package/dist/v2/blocks/request-block/components/RequestParams.vue.d.ts.map +1 -1
  30. package/dist/v2/blocks/request-block/components/RequestParams.vue.js.map +1 -1
  31. package/dist/v2/blocks/request-block/components/RequestParams.vue.script.js.map +1 -1
  32. package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts +3 -11
  33. package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts.map +1 -1
  34. package/dist/v2/blocks/request-block/components/RequestTable.vue.js +1 -1
  35. package/dist/v2/blocks/request-block/components/RequestTable.vue.js.map +1 -1
  36. package/dist/v2/blocks/request-block/components/RequestTable.vue.script.js.map +1 -1
  37. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts +8 -10
  38. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts.map +1 -1
  39. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.js.map +1 -1
  40. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.script.js +27 -11
  41. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.script.js.map +1 -1
  42. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts +9 -6
  43. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts.map +1 -1
  44. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js +45 -4
  45. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js.map +1 -1
  46. package/dist/v2/blocks/request-block/helpers/create-parameter-rows.d.ts +4 -0
  47. package/dist/v2/blocks/request-block/helpers/create-parameter-rows.d.ts.map +1 -1
  48. package/dist/v2/blocks/request-block/helpers/create-parameter-rows.js +94 -10
  49. package/dist/v2/blocks/request-block/helpers/create-parameter-rows.js.map +1 -1
  50. package/dist/v2/blocks/request-block/helpers/get-form-body-rows.js +1 -1
  51. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js +1 -1
  52. package/dist/v2/components/data-table/DataTableInput.vue.d.ts +1 -1
  53. package/dist/v2/components/data-table/DataTableInput.vue.d.ts.map +1 -1
  54. package/dist/v2/constants.js +1 -1
  55. package/dist/v2/features/modal/Modal.vue.js.map +1 -1
  56. package/dist/v2/features/modal/Modal.vue.script.js +1 -1
  57. package/dist/v2/features/modal/Modal.vue.script.js.map +1 -1
  58. package/dist/v2/features/modal/helpers/create-api-client-modal.js +1 -1
  59. package/dist/v2/features/operation/Operation.vue.script.js +1 -1
  60. package/dist/v2/workspace-events.d.ts.map +1 -1
  61. package/dist/v2/workspace-events.js +1 -0
  62. package/dist/v2/workspace-events.js.map +1 -1
  63. package/dist/vue-styles.css +10 -52
  64. package/package.json +13 -24
  65. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.d.ts +0 -16
  66. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.d.ts.map +0 -1
  67. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.js +0 -7
  68. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.js.map +0 -1
  69. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.script.js +0 -53
  70. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.script.js.map +0 -1
  71. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.d.ts +0 -26
  72. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.d.ts.map +0 -1
  73. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.js +0 -7
  74. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.js.map +0 -1
  75. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.script.js +0 -33
  76. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.script.js.map +0 -1
  77. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.d.ts +0 -141
  78. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.d.ts.map +0 -1
  79. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.js +0 -9
  80. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.js.map +0 -1
  81. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.script.js +0 -272
  82. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.script.js.map +0 -1
  83. package/dist/v2/blocks/operation-code-sample/helpers/filter-clients-by-query.d.ts +0 -9
  84. package/dist/v2/blocks/operation-code-sample/helpers/filter-clients-by-query.d.ts.map +0 -1
  85. package/dist/v2/blocks/operation-code-sample/helpers/filter-clients-by-query.js +0 -37
  86. package/dist/v2/blocks/operation-code-sample/helpers/filter-clients-by-query.js.map +0 -1
  87. package/dist/v2/blocks/operation-code-sample/helpers/find-client.d.ts +0 -41
  88. package/dist/v2/blocks/operation-code-sample/helpers/find-client.d.ts.map +0 -1
  89. package/dist/v2/blocks/operation-code-sample/helpers/find-client.js +0 -48
  90. package/dist/v2/blocks/operation-code-sample/helpers/find-client.js.map +0 -1
  91. package/dist/v2/blocks/operation-code-sample/helpers/format-language.d.ts +0 -8
  92. package/dist/v2/blocks/operation-code-sample/helpers/format-language.d.ts.map +0 -1
  93. package/dist/v2/blocks/operation-code-sample/helpers/format-language.js +0 -70
  94. package/dist/v2/blocks/operation-code-sample/helpers/format-language.js.map +0 -1
  95. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.d.ts +0 -30
  96. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.d.ts.map +0 -1
  97. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.js +0 -63
  98. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.js.map +0 -1
  99. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.d.ts +0 -39
  100. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.d.ts.map +0 -1
  101. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js +0 -38
  102. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js.map +0 -1
  103. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.d.ts +0 -13
  104. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.d.ts.map +0 -1
  105. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.js +0 -37
  106. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.js.map +0 -1
  107. package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.d.ts +0 -45
  108. package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.d.ts.map +0 -1
  109. package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.js +0 -84
  110. package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.js.map +0 -1
  111. package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.d.ts +0 -27
  112. package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.d.ts.map +0 -1
  113. package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.js +0 -41
  114. package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.js.map +0 -1
  115. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.d.ts +0 -4
  116. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.d.ts.map +0 -1
  117. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.js +0 -18
  118. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.js.map +0 -1
  119. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.d.ts +0 -8
  120. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.d.ts.map +0 -1
  121. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.js +0 -38
  122. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.js.map +0 -1
  123. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.d.ts +0 -72
  124. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.d.ts.map +0 -1
  125. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js +0 -114
  126. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js.map +0 -1
  127. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.d.ts +0 -13
  128. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.d.ts.map +0 -1
  129. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js +0 -196
  130. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js.map +0 -1
  131. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.d.ts +0 -24
  132. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.d.ts.map +0 -1
  133. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.js +0 -237
  134. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.js.map +0 -1
  135. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.d.ts +0 -15
  136. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.d.ts.map +0 -1
  137. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.js +0 -65
  138. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.js.map +0 -1
  139. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.d.ts +0 -6
  140. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.d.ts.map +0 -1
  141. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.js +0 -19
  142. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.js.map +0 -1
  143. package/dist/v2/blocks/operation-code-sample/index.d.ts +0 -9
  144. package/dist/v2/blocks/operation-code-sample/index.d.ts.map +0 -1
  145. package/dist/v2/blocks/operation-code-sample/index.js +0 -8
  146. package/dist/v2/blocks/operation-code-sample/types.d.ts +0 -46
  147. package/dist/v2/blocks/operation-code-sample/types.d.ts.map +0 -1
  148. package/dist/v2/blocks/request-block/helpers/is-param-disabled.d.ts +0 -13
  149. package/dist/v2/blocks/request-block/helpers/is-param-disabled.d.ts.map +0 -1
  150. package/dist/v2/blocks/request-block/helpers/is-param-disabled.js +0 -21
  151. package/dist/v2/blocks/request-block/helpers/is-param-disabled.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-events.js","names":[],"sources":["../../src/v2/workspace-events.ts"],"sourcesContent":["import type { WorkspaceStore } from '@scalar/workspace-store/client'\nimport type { ApiReferenceEvents, CollectionType, WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport { generateClientMutators } from '@scalar/workspace-store/mutators'\nimport { type Ref, computed } from 'vue'\n\ntype Hook<T extends keyof ApiReferenceEvents> = Partial<{\n onBeforeExecute: (\n payload: ApiReferenceEvents[T],\n ) => void | Promise<void> | ApiReferenceEvents[T] | Promise<ApiReferenceEvents[T]>\n onAfterExecute: (payload: ApiReferenceEvents[T]) => void | Promise<void>\n}>\n\ntype Hooks = {\n [key in keyof ApiReferenceEvents]?: Hook<key>\n}\n\n/**\n * Wraps a given function with optional before/after execution hooks for a specific event.\n * - Calls onBeforeExecute hook before executing the main function.\n * - Calls onAfterExecute hook after executing the main function.\n *\n * @template T The event key from ApiReferenceEvents\n * @param event The event name\n * @param fn The main function to execute\n * @param hooks The hooks object containing before/after hooks for events\n * @returns An async function that runs hooks around the main function\n */\nconst withHook = <T extends keyof ApiReferenceEvents>(\n event: T,\n fn: (args: ApiReferenceEvents[T]) => unknown | Promise<unknown>,\n hooks: Hooks,\n) => {\n return async (args: ApiReferenceEvents[T]) => {\n // Call the before execution hook for this event, if any\n const result = (await hooks[event]?.onBeforeExecute?.(args)) ?? args\n // Execute the main function\n await fn(result)\n // Call the after execution hook for this event, if any\n await hooks[event]?.onAfterExecute?.(result)\n return result\n }\n}\n\n/**\n * Initializes all Workspace Event Handlers by subscribing eventBus listeners\n * to each relevant mutator operation. Hooks are used for before/after execution.\n *\n * @param eventBus The WorkspaceEventBus to subscribe to\n * @param store The WorkspaceStore instance\n * @param hooks Object containing optional before/after hooks for each event\n */\nexport function initializeWorkspaceEventHandlers({\n eventBus,\n store,\n hooks,\n}: {\n eventBus: WorkspaceEventBus\n store: Ref<WorkspaceStore | null>\n hooks: Hooks\n}) {\n // Generate all client mutators for the current workspace store\n const mutators = computed(() => generateClientMutators(store.value))\n\n /**\n * Returns the appropriate mutators depending on the collectionType.\n * If collectionType is 'document', gets the active document mutator,\n * otherwise, gets the workspace mutator.\n */\n const getMutators = ({ collectionType }: CollectionType) => {\n if (collectionType === 'document') {\n return mutators.value.active()\n }\n return mutators.value.workspace()\n }\n\n //------------------------------------------------------------------------------------\n // Workspace Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('workspace:update:active-proxy', (payload) =>\n withHook('workspace:update:active-proxy', mutators.value.workspace().workspace.updateActiveProxy, hooks)(payload),\n )\n eventBus.on('workspace:update:color-mode', (payload) =>\n withHook('workspace:update:color-mode', mutators.value.workspace().workspace.updateColorMode, hooks)(payload),\n )\n eventBus.on('workspace:update:theme', (payload) =>\n withHook('workspace:update:theme', mutators.value.workspace().workspace.updateTheme, hooks)(payload),\n )\n eventBus.on('workspace:update:selected-client', (payload) =>\n withHook(\n 'workspace:update:selected-client',\n mutators.value.workspace().workspace.updateSelectedClient,\n hooks,\n )(payload),\n )\n eventBus.on('workspace:update:active-environment', (payload) =>\n withHook(\n 'workspace:update:active-environment',\n mutators.value.workspace().workspace.updateActiveEnvironment,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Document Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('document:update:extension', (payload) =>\n withHook('document:update:extension', mutators.value.active().document.updateDocumentExtension, hooks)(payload),\n )\n eventBus.on('document:update:icon', (payload) =>\n withHook('document:update:icon', mutators.value.active().document.updateDocumentIcon, hooks)(payload),\n )\n eventBus.on('document:update:info', (payload) =>\n withHook('document:update:info', mutators.value.active().document.updateDocumentInfo, hooks)(payload),\n )\n eventBus.on('document:update:watch-mode', (payload) =>\n withHook('document:update:watch-mode', mutators.value.active().document.updateWatchMode, hooks)(payload),\n )\n eventBus.on('document:create:empty-document', (payload) =>\n withHook('document:create:empty-document', mutators.value.active().document.createEmptyDocument, hooks)(payload),\n )\n eventBus.on('document:delete:document', (payload) =>\n withHook('document:delete:document', mutators.value.active().document.deleteDocument, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Environment Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('environment:upsert:environment', (payload) =>\n withHook('environment:upsert:environment', getMutators(payload).environment.upsertEnvironment, hooks)(payload),\n )\n eventBus.on('environment:delete:environment', (payload) =>\n withHook('environment:delete:environment', getMutators(payload).environment.deleteEnvironment, hooks)(payload),\n )\n eventBus.on('environment:upsert:environment-variable', (payload) =>\n withHook(\n 'environment:upsert:environment-variable',\n getMutators(payload).environment.upsertEnvironmentVariable,\n hooks,\n )(payload),\n )\n eventBus.on('environment:delete:environment-variable', (payload) =>\n withHook(\n 'environment:delete:environment-variable',\n getMutators(payload).environment.deleteEnvironmentVariable,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Cookie Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('cookie:upsert:cookie', async (payload) => {\n await withHook('cookie:upsert:cookie', getMutators(payload).cookie.upsertCookie, hooks)(payload)\n })\n eventBus.on('cookie:delete:cookie', async (payload) => {\n await withHook('cookie:delete:cookie', getMutators(payload).cookie.deleteCookie, hooks)(payload)\n })\n\n //------------------------------------------------------------------------------------\n // Auth Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('auth:delete:security-scheme', (payload) =>\n withHook('auth:delete:security-scheme', mutators.value.active().auth.deleteSecurityScheme, hooks)(payload),\n )\n eventBus.on('auth:update:active-index', (payload) =>\n withHook('auth:update:active-index', mutators.value.active().auth.updateSelectedAuthTab, hooks)(payload),\n )\n eventBus.on('auth:update:security-scheme', (payload) =>\n withHook('auth:update:security-scheme', mutators.value.active().auth.updateSecurityScheme, hooks)(payload),\n )\n eventBus.on('auth:update:selected-scopes', (payload) =>\n withHook('auth:update:selected-scopes', mutators.value.active().auth.updateSelectedScopes, hooks)(payload),\n )\n eventBus.on('auth:upsert:scopes', (payload) =>\n withHook('auth:upsert:scopes', mutators.value.active().auth.upsertScope, hooks)(payload),\n )\n eventBus.on('auth:delete:scopes', (payload) =>\n withHook('auth:delete:scopes', mutators.value.active().auth.deleteScope, hooks)(payload),\n )\n eventBus.on('auth:update:selected-security-schemes', (payload) =>\n withHook(\n 'auth:update:selected-security-schemes',\n mutators.value.active().auth.updateSelectedSecuritySchemes,\n hooks,\n )(payload),\n )\n eventBus.on('auth:clear:selected-security-schemes', (payload) =>\n withHook(\n 'auth:clear:selected-security-schemes',\n mutators.value.active().auth.clearSelectedSecuritySchemes,\n hooks,\n )(payload),\n )\n eventBus.on('auth:update:security-scheme-secrets', (payload) =>\n withHook(\n 'auth:update:security-scheme-secrets',\n mutators.value.active().auth.updateSecuritySchemeSecrets,\n hooks,\n )(payload),\n )\n eventBus.on('auth:clear:security-scheme-secrets', (payload) =>\n withHook(\n 'auth:clear:security-scheme-secrets',\n mutators.value.active().auth.clearSecuritySchemeSecrets,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Server Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('server:initialize:servers', (payload) =>\n withHook('server:initialize:servers', mutators.value.active().server.initializeServers, hooks)(payload),\n )\n eventBus.on('server:add:server', (payload) =>\n withHook('server:add:server', mutators.value.active().server.addServer, hooks)(payload),\n )\n eventBus.on('server:update:server', (payload) =>\n withHook('server:update:server', mutators.value.active().server.updateServer, hooks)(payload),\n )\n eventBus.on('server:delete:server', (payload) =>\n withHook('server:delete:server', mutators.value.active().server.deleteServer, hooks)(payload),\n )\n eventBus.on('server:clear:servers', (payload) =>\n withHook('server:clear:servers', mutators.value.active().server.clearServers, hooks)(payload),\n )\n eventBus.on('server:update:variables', (payload) =>\n withHook('server:update:variables', mutators.value.active().server.updateServerVariables, hooks)(payload),\n )\n eventBus.on('server:update:selected', (payload) =>\n withHook('server:update:selected', mutators.value.active().server.updateSelectedServer, hooks)(payload),\n )\n eventBus.on('asyncapi-server:update:selected', (payload) =>\n withHook(\n 'asyncapi-server:update:selected',\n mutators.value.active().server.updateSelectedAsyncApiServer,\n hooks,\n )(payload),\n )\n eventBus.on('asyncapi-server:update:variables', (payload) =>\n withHook(\n 'asyncapi-server:update:variables',\n mutators.value.active().server.updateAsyncApiServerVariables,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Operation Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('operation:create:operation', (payload) =>\n withHook('operation:create:operation', mutators.value.active().operation.createOperation, hooks)(payload),\n )\n eventBus.on('operation:update:pathMethod', (payload) =>\n withHook(\n 'operation:update:pathMethod',\n mutators.value.active().operation.updateOperationPathMethod,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:meta', (payload) =>\n withHook('operation:update:meta', mutators.value.active().operation.updateOperationMeta, hooks)(payload),\n )\n eventBus.on('operation:delete:operation', (payload) =>\n withHook('operation:delete:operation', mutators.value.active().operation.deleteOperation, hooks)(payload),\n )\n eventBus.on('operation:create:draft-example', (payload) =>\n withHook(\n 'operation:create:draft-example',\n mutators.value.active().operation.createOperationDraftExample,\n hooks,\n )(payload),\n )\n eventBus.on('operation:delete:example', (payload) =>\n withHook('operation:delete:example', mutators.value.active().operation.deleteOperationExample, hooks)(payload),\n )\n eventBus.on('operation:rename:example', (payload) =>\n withHook('operation:rename:example', mutators.value.active().operation.renameOperationExample, hooks)(payload),\n )\n eventBus.on('operation:upsert:parameter', (payload) =>\n withHook('operation:upsert:parameter', mutators.value.active().operation.upsertOperationParameter, hooks)(payload),\n )\n eventBus.on('operation:update:extra-parameters', (payload) =>\n withHook(\n 'operation:update:extra-parameters',\n mutators.value.active().operation.updateOperationExtraParameters,\n hooks,\n )(payload),\n )\n eventBus.on('operation:delete:parameter', (payload) =>\n withHook('operation:delete:parameter', mutators.value.active().operation.deleteOperationParameter, hooks)(payload),\n )\n eventBus.on('operation:delete-all:parameters', (payload) =>\n withHook(\n 'operation:delete-all:parameters',\n mutators.value.active().operation.deleteAllOperationParameters,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:extension', (payload) =>\n withHook('operation:update:extension', mutators.value.active().operation.updateOperationExtension, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Operation Request Body Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('operation:update:requestBody:contentType', (payload) =>\n withHook(\n 'operation:update:requestBody:contentType',\n mutators.value.active().operation.updateOperationRequestBodyContentType,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:requestBody:value', (payload) =>\n withHook(\n 'operation:update:requestBody:value',\n mutators.value.active().operation.updateOperationRequestBodyExample,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:requestBody:formValue', (payload) =>\n withHook(\n 'operation:update:requestBody:formValue',\n mutators.value.active().operation.updateOperationRequestBodyFormValue,\n hooks,\n )(payload),\n )\n eventBus.on('operation:reload:history', (payload) =>\n withHook('operation:reload:history', mutators.value.active().operation.reloadOperationHistory, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Tag Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('tag:create:tag', (payload) =>\n withHook('tag:create:tag', mutators.value.active().tag.createTag, hooks)(payload),\n )\n eventBus.on('tag:edit:tag', (payload) =>\n withHook('tag:edit:tag', mutators.value.active().tag.editTag, hooks)(payload),\n )\n eventBus.on('tag:delete:tag', (payload) =>\n withHook('tag:delete:tag', mutators.value.active().tag.deleteTag, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Tabs Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('tabs:add:tab', (payload) =>\n withHook('tabs:add:tab', mutators.value.workspace().tabs.addTab, hooks)(payload),\n )\n eventBus.on('tabs:close:tab', (payload) =>\n withHook('tabs:close:tab', mutators.value.workspace().tabs.closeTab, hooks)(payload),\n )\n eventBus.on('tabs:close:other-tabs', (payload) =>\n withHook('tabs:close:other-tabs', mutators.value.workspace().tabs.closeOtherTabs, hooks)(payload),\n )\n eventBus.on('tabs:focus:tab', (payload) =>\n withHook('tabs:focus:tab', mutators.value.workspace().tabs.focusTab, hooks)(payload),\n )\n eventBus.on('tabs:focus:tab-last', (payload) =>\n withHook('tabs:focus:tab-last', mutators.value.workspace().tabs.focusLastTab, hooks)(payload),\n )\n eventBus.on('tabs:navigate:previous', (payload) =>\n withHook('tabs:navigate:previous', mutators.value.workspace().tabs.navigatePreviousTab, hooks)(payload),\n )\n eventBus.on('tabs:navigate:next', (payload) =>\n withHook('tabs:navigate:next', mutators.value.workspace().tabs.navigateNextTab, hooks)(payload),\n )\n eventBus.on('tabs:update:tabs', (payload) =>\n withHook('tabs:update:tabs', mutators.value.workspace().tabs.updateTabs, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Hooks Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('hooks:on:request:complete', (payload) =>\n withHook('hooks:on:request:complete', mutators.value.active().operation.addResponseToHistory, hooks)(payload),\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"workspace-events.js","names":[],"sources":["../../src/v2/workspace-events.ts"],"sourcesContent":["import type { WorkspaceStore } from '@scalar/workspace-store/client'\nimport type { ApiReferenceEvents, CollectionType, WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport { generateClientMutators } from '@scalar/workspace-store/mutators'\nimport { type Ref, computed } from 'vue'\n\ntype Hook<T extends keyof ApiReferenceEvents> = Partial<{\n onBeforeExecute: (\n payload: ApiReferenceEvents[T],\n ) => void | Promise<void> | ApiReferenceEvents[T] | Promise<ApiReferenceEvents[T]>\n onAfterExecute: (payload: ApiReferenceEvents[T]) => void | Promise<void>\n}>\n\ntype Hooks = {\n [key in keyof ApiReferenceEvents]?: Hook<key>\n}\n\n/**\n * Wraps a given function with optional before/after execution hooks for a specific event.\n * - Calls onBeforeExecute hook before executing the main function.\n * - Calls onAfterExecute hook after executing the main function.\n *\n * @template T The event key from ApiReferenceEvents\n * @param event The event name\n * @param fn The main function to execute\n * @param hooks The hooks object containing before/after hooks for events\n * @returns An async function that runs hooks around the main function\n */\nconst withHook = <T extends keyof ApiReferenceEvents>(\n event: T,\n fn: (args: ApiReferenceEvents[T]) => unknown | Promise<unknown>,\n hooks: Hooks,\n) => {\n return async (args: ApiReferenceEvents[T]) => {\n // Call the before execution hook for this event, if any\n const result = (await hooks[event]?.onBeforeExecute?.(args)) ?? args\n // Execute the main function\n await fn(result)\n // Call the after execution hook for this event, if any\n await hooks[event]?.onAfterExecute?.(result)\n return result\n }\n}\n\n/**\n * Initializes all Workspace Event Handlers by subscribing eventBus listeners\n * to each relevant mutator operation. Hooks are used for before/after execution.\n *\n * @param eventBus The WorkspaceEventBus to subscribe to\n * @param store The WorkspaceStore instance\n * @param hooks Object containing optional before/after hooks for each event\n */\nexport function initializeWorkspaceEventHandlers({\n eventBus,\n store,\n hooks,\n}: {\n eventBus: WorkspaceEventBus\n store: Ref<WorkspaceStore | null>\n hooks: Hooks\n}) {\n // Generate all client mutators for the current workspace store\n const mutators = computed(() => generateClientMutators(store.value))\n\n /**\n * Returns the appropriate mutators depending on the collectionType.\n * If collectionType is 'document', gets the active document mutator,\n * otherwise, gets the workspace mutator.\n */\n const getMutators = ({ collectionType }: CollectionType) => {\n if (collectionType === 'document') {\n return mutators.value.active()\n }\n return mutators.value.workspace()\n }\n\n //------------------------------------------------------------------------------------\n // Workspace Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('workspace:update:active-proxy', (payload) =>\n withHook('workspace:update:active-proxy', mutators.value.workspace().workspace.updateActiveProxy, hooks)(payload),\n )\n eventBus.on('workspace:update:color-mode', (payload) =>\n withHook('workspace:update:color-mode', mutators.value.workspace().workspace.updateColorMode, hooks)(payload),\n )\n eventBus.on('workspace:update:theme', (payload) =>\n withHook('workspace:update:theme', mutators.value.workspace().workspace.updateTheme, hooks)(payload),\n )\n eventBus.on('workspace:update:selected-client', (payload) =>\n withHook(\n 'workspace:update:selected-client',\n mutators.value.workspace().workspace.updateSelectedClient,\n hooks,\n )(payload),\n )\n eventBus.on('workspace:update:selected-example', (payload) =>\n withHook(\n 'workspace:update:selected-example',\n mutators.value.workspace().workspace.updateSelectedExample,\n hooks,\n )(payload),\n )\n eventBus.on('workspace:update:active-environment', (payload) =>\n withHook(\n 'workspace:update:active-environment',\n mutators.value.workspace().workspace.updateActiveEnvironment,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Document Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('document:update:extension', (payload) =>\n withHook('document:update:extension', mutators.value.active().document.updateDocumentExtension, hooks)(payload),\n )\n eventBus.on('document:update:icon', (payload) =>\n withHook('document:update:icon', mutators.value.active().document.updateDocumentIcon, hooks)(payload),\n )\n eventBus.on('document:update:info', (payload) =>\n withHook('document:update:info', mutators.value.active().document.updateDocumentInfo, hooks)(payload),\n )\n eventBus.on('document:update:watch-mode', (payload) =>\n withHook('document:update:watch-mode', mutators.value.active().document.updateWatchMode, hooks)(payload),\n )\n eventBus.on('document:create:empty-document', (payload) =>\n withHook('document:create:empty-document', mutators.value.active().document.createEmptyDocument, hooks)(payload),\n )\n eventBus.on('document:delete:document', (payload) =>\n withHook('document:delete:document', mutators.value.active().document.deleteDocument, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Environment Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('environment:upsert:environment', (payload) =>\n withHook('environment:upsert:environment', getMutators(payload).environment.upsertEnvironment, hooks)(payload),\n )\n eventBus.on('environment:delete:environment', (payload) =>\n withHook('environment:delete:environment', getMutators(payload).environment.deleteEnvironment, hooks)(payload),\n )\n eventBus.on('environment:upsert:environment-variable', (payload) =>\n withHook(\n 'environment:upsert:environment-variable',\n getMutators(payload).environment.upsertEnvironmentVariable,\n hooks,\n )(payload),\n )\n eventBus.on('environment:delete:environment-variable', (payload) =>\n withHook(\n 'environment:delete:environment-variable',\n getMutators(payload).environment.deleteEnvironmentVariable,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Cookie Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('cookie:upsert:cookie', async (payload) => {\n await withHook('cookie:upsert:cookie', getMutators(payload).cookie.upsertCookie, hooks)(payload)\n })\n eventBus.on('cookie:delete:cookie', async (payload) => {\n await withHook('cookie:delete:cookie', getMutators(payload).cookie.deleteCookie, hooks)(payload)\n })\n\n //------------------------------------------------------------------------------------\n // Auth Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('auth:delete:security-scheme', (payload) =>\n withHook('auth:delete:security-scheme', mutators.value.active().auth.deleteSecurityScheme, hooks)(payload),\n )\n eventBus.on('auth:update:active-index', (payload) =>\n withHook('auth:update:active-index', mutators.value.active().auth.updateSelectedAuthTab, hooks)(payload),\n )\n eventBus.on('auth:update:security-scheme', (payload) =>\n withHook('auth:update:security-scheme', mutators.value.active().auth.updateSecurityScheme, hooks)(payload),\n )\n eventBus.on('auth:update:selected-scopes', (payload) =>\n withHook('auth:update:selected-scopes', mutators.value.active().auth.updateSelectedScopes, hooks)(payload),\n )\n eventBus.on('auth:upsert:scopes', (payload) =>\n withHook('auth:upsert:scopes', mutators.value.active().auth.upsertScope, hooks)(payload),\n )\n eventBus.on('auth:delete:scopes', (payload) =>\n withHook('auth:delete:scopes', mutators.value.active().auth.deleteScope, hooks)(payload),\n )\n eventBus.on('auth:update:selected-security-schemes', (payload) =>\n withHook(\n 'auth:update:selected-security-schemes',\n mutators.value.active().auth.updateSelectedSecuritySchemes,\n hooks,\n )(payload),\n )\n eventBus.on('auth:clear:selected-security-schemes', (payload) =>\n withHook(\n 'auth:clear:selected-security-schemes',\n mutators.value.active().auth.clearSelectedSecuritySchemes,\n hooks,\n )(payload),\n )\n eventBus.on('auth:update:security-scheme-secrets', (payload) =>\n withHook(\n 'auth:update:security-scheme-secrets',\n mutators.value.active().auth.updateSecuritySchemeSecrets,\n hooks,\n )(payload),\n )\n eventBus.on('auth:clear:security-scheme-secrets', (payload) =>\n withHook(\n 'auth:clear:security-scheme-secrets',\n mutators.value.active().auth.clearSecuritySchemeSecrets,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Server Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('server:initialize:servers', (payload) =>\n withHook('server:initialize:servers', mutators.value.active().server.initializeServers, hooks)(payload),\n )\n eventBus.on('server:add:server', (payload) =>\n withHook('server:add:server', mutators.value.active().server.addServer, hooks)(payload),\n )\n eventBus.on('server:update:server', (payload) =>\n withHook('server:update:server', mutators.value.active().server.updateServer, hooks)(payload),\n )\n eventBus.on('server:delete:server', (payload) =>\n withHook('server:delete:server', mutators.value.active().server.deleteServer, hooks)(payload),\n )\n eventBus.on('server:clear:servers', (payload) =>\n withHook('server:clear:servers', mutators.value.active().server.clearServers, hooks)(payload),\n )\n eventBus.on('server:update:variables', (payload) =>\n withHook('server:update:variables', mutators.value.active().server.updateServerVariables, hooks)(payload),\n )\n eventBus.on('server:update:selected', (payload) =>\n withHook('server:update:selected', mutators.value.active().server.updateSelectedServer, hooks)(payload),\n )\n eventBus.on('asyncapi-server:update:selected', (payload) =>\n withHook(\n 'asyncapi-server:update:selected',\n mutators.value.active().server.updateSelectedAsyncApiServer,\n hooks,\n )(payload),\n )\n eventBus.on('asyncapi-server:update:variables', (payload) =>\n withHook(\n 'asyncapi-server:update:variables',\n mutators.value.active().server.updateAsyncApiServerVariables,\n hooks,\n )(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Operation Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('operation:create:operation', (payload) =>\n withHook('operation:create:operation', mutators.value.active().operation.createOperation, hooks)(payload),\n )\n eventBus.on('operation:update:pathMethod', (payload) =>\n withHook(\n 'operation:update:pathMethod',\n mutators.value.active().operation.updateOperationPathMethod,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:meta', (payload) =>\n withHook('operation:update:meta', mutators.value.active().operation.updateOperationMeta, hooks)(payload),\n )\n eventBus.on('operation:delete:operation', (payload) =>\n withHook('operation:delete:operation', mutators.value.active().operation.deleteOperation, hooks)(payload),\n )\n eventBus.on('operation:create:draft-example', (payload) =>\n withHook(\n 'operation:create:draft-example',\n mutators.value.active().operation.createOperationDraftExample,\n hooks,\n )(payload),\n )\n eventBus.on('operation:delete:example', (payload) =>\n withHook('operation:delete:example', mutators.value.active().operation.deleteOperationExample, hooks)(payload),\n )\n eventBus.on('operation:rename:example', (payload) =>\n withHook('operation:rename:example', mutators.value.active().operation.renameOperationExample, hooks)(payload),\n )\n eventBus.on('operation:upsert:parameter', (payload) =>\n withHook('operation:upsert:parameter', mutators.value.active().operation.upsertOperationParameter, hooks)(payload),\n )\n eventBus.on('operation:update:extra-parameters', (payload) =>\n withHook(\n 'operation:update:extra-parameters',\n mutators.value.active().operation.updateOperationExtraParameters,\n hooks,\n )(payload),\n )\n eventBus.on('operation:delete:parameter', (payload) =>\n withHook('operation:delete:parameter', mutators.value.active().operation.deleteOperationParameter, hooks)(payload),\n )\n eventBus.on('operation:delete-all:parameters', (payload) =>\n withHook(\n 'operation:delete-all:parameters',\n mutators.value.active().operation.deleteAllOperationParameters,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:extension', (payload) =>\n withHook('operation:update:extension', mutators.value.active().operation.updateOperationExtension, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Operation Request Body Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('operation:update:requestBody:contentType', (payload) =>\n withHook(\n 'operation:update:requestBody:contentType',\n mutators.value.active().operation.updateOperationRequestBodyContentType,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:requestBody:value', (payload) =>\n withHook(\n 'operation:update:requestBody:value',\n mutators.value.active().operation.updateOperationRequestBodyExample,\n hooks,\n )(payload),\n )\n eventBus.on('operation:update:requestBody:formValue', (payload) =>\n withHook(\n 'operation:update:requestBody:formValue',\n mutators.value.active().operation.updateOperationRequestBodyFormValue,\n hooks,\n )(payload),\n )\n eventBus.on('operation:reload:history', (payload) =>\n withHook('operation:reload:history', mutators.value.active().operation.reloadOperationHistory, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Tag Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('tag:create:tag', (payload) =>\n withHook('tag:create:tag', mutators.value.active().tag.createTag, hooks)(payload),\n )\n eventBus.on('tag:edit:tag', (payload) =>\n withHook('tag:edit:tag', mutators.value.active().tag.editTag, hooks)(payload),\n )\n eventBus.on('tag:delete:tag', (payload) =>\n withHook('tag:delete:tag', mutators.value.active().tag.deleteTag, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Tabs Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('tabs:add:tab', (payload) =>\n withHook('tabs:add:tab', mutators.value.workspace().tabs.addTab, hooks)(payload),\n )\n eventBus.on('tabs:close:tab', (payload) =>\n withHook('tabs:close:tab', mutators.value.workspace().tabs.closeTab, hooks)(payload),\n )\n eventBus.on('tabs:close:other-tabs', (payload) =>\n withHook('tabs:close:other-tabs', mutators.value.workspace().tabs.closeOtherTabs, hooks)(payload),\n )\n eventBus.on('tabs:focus:tab', (payload) =>\n withHook('tabs:focus:tab', mutators.value.workspace().tabs.focusTab, hooks)(payload),\n )\n eventBus.on('tabs:focus:tab-last', (payload) =>\n withHook('tabs:focus:tab-last', mutators.value.workspace().tabs.focusLastTab, hooks)(payload),\n )\n eventBus.on('tabs:navigate:previous', (payload) =>\n withHook('tabs:navigate:previous', mutators.value.workspace().tabs.navigatePreviousTab, hooks)(payload),\n )\n eventBus.on('tabs:navigate:next', (payload) =>\n withHook('tabs:navigate:next', mutators.value.workspace().tabs.navigateNextTab, hooks)(payload),\n )\n eventBus.on('tabs:update:tabs', (payload) =>\n withHook('tabs:update:tabs', mutators.value.workspace().tabs.updateTabs, hooks)(payload),\n )\n\n //------------------------------------------------------------------------------------\n // Hooks Related Event Handlers\n //------------------------------------------------------------------------------------\n eventBus.on('hooks:on:request:complete', (payload) =>\n withHook('hooks:on:request:complete', mutators.value.active().operation.addResponseToHistory, hooks)(payload),\n )\n}\n"],"mappings":"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"}
@@ -514,19 +514,19 @@ to {
514
514
  background: color-mix(in srgb, var(--scalar-background-3), transparent 40%);
515
515
  }
516
516
 
517
- [data-v-e83eb7d0] .code-input-lite__editor {
517
+ [data-v-6b2d7899] .code-input-lite__editor {
518
518
  background-color: transparent;
519
519
  font-family: var(--scalar-font);
520
520
  font-size: var(--scalar-small);
521
521
  padding: 5px 8px;
522
522
  }
523
- [data-v-e83eb7d0] .scalar-pill:not(:last-of-type) {
523
+ [data-v-6b2d7899] .scalar-pill:not(:last-of-type) {
524
524
  margin-right: 0.15em;
525
525
  }
526
- [data-v-e83eb7d0] .scalar-pill:not(:first-of-type) {
526
+ [data-v-6b2d7899] .scalar-pill:not(:first-of-type) {
527
527
  margin-left: 0.5px;
528
528
  }
529
- .filemask[data-v-e83eb7d0] {
529
+ .filemask[data-v-6b2d7899] {
530
530
  mask-image: linear-gradient(
531
531
  to right,
532
532
  transparent 0,
@@ -586,20 +586,20 @@ input[data-v-a6f4752a]::placeholder {
586
586
  -moz-text-security: disc;
587
587
  }
588
588
 
589
- .request-section-content[data-v-9ee5445b] {
589
+ .request-section-content[data-v-f52d9c1f] {
590
590
  --scalar-border-width: 0.5px;
591
591
  }
592
- .request-section-content-filter[data-v-9ee5445b] {
592
+ .request-section-content-filter[data-v-f52d9c1f] {
593
593
  box-shadow: 0 -10px 0 10px var(--scalar-background-1);
594
594
  }
595
- .request-item:focus-within .request-meta-buttons[data-v-9ee5445b] {
595
+ .request-item:focus-within .request-meta-buttons[data-v-f52d9c1f] {
596
596
  opacity: 1;
597
597
  }
598
- .group-hover-input[data-v-9ee5445b] {
598
+ .group-hover-input[data-v-f52d9c1f] {
599
599
  border-width: var(--scalar-border-width);
600
600
  border-color: transparent;
601
601
  }
602
- .group:hover .group-hover-input[data-v-9ee5445b] {
602
+ .group:hover .group-hover-input[data-v-f52d9c1f] {
603
603
  background: color-mix(
604
604
  in srgb,
605
605
  var(--scalar-background-1),
@@ -607,7 +607,7 @@ input[data-v-a6f4752a]::placeholder {
607
607
  );
608
608
  border-color: var(--scalar-border-color);
609
609
  }
610
- .group-hover-input[data-v-9ee5445b]:focus {
610
+ .group-hover-input[data-v-f52d9c1f]:focus {
611
611
  background: transparent !important;
612
612
  border-color: var(--scalar-border-color) !important;
613
613
  }
@@ -712,48 +712,6 @@ to {
712
712
  transform: translateY(0);
713
713
  }
714
714
  }
715
-
716
- .request-card[data-v-70ede25b] {
717
- color: var(--scalar-color-1);
718
- font-size: var(--scalar-font-size-3);
719
- }
720
- .request-method[data-v-70ede25b] {
721
- font-family: var(--scalar-font-code);
722
- text-transform: uppercase;
723
- margin-right: 6px;
724
- }
725
- .request-card-footer[data-v-70ede25b] {
726
- display: flex;
727
- justify-content: flex-end;
728
- padding: 6px;
729
- flex-shrink: 0;
730
- position: relative;
731
- }
732
- .request-card-footer-addon[data-v-70ede25b] {
733
- display: flex;
734
- align-items: center;
735
-
736
- flex: 1;
737
- min-width: 0;
738
- }
739
- .request-editor-section[data-v-70ede25b] {
740
- display: flex;
741
- flex: 1;
742
- }
743
- .request-card-simple[data-v-70ede25b] {
744
- display: flex;
745
- align-items: center;
746
- justify-content: space-between;
747
-
748
- padding: 8px 8px 8px 12px;
749
-
750
- font-size: var(--scalar-small);
751
- }
752
- .code-snippet[data-v-70ede25b] {
753
- display: flex;
754
- flex-direction: column;
755
- width: 100%;
756
- }
757
715
  /*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
758
716
  [data-radix-popper-content-wrapper]:has(.scalar-api-client-context-menu) {
759
717
  z-index: 1000 !important;
package/package.json CHANGED
@@ -18,7 +18,7 @@
18
18
  "rest",
19
19
  "testing"
20
20
  ],
21
- "version": "3.10.4",
21
+ "version": "3.12.0",
22
22
  "engines": {
23
23
  "node": ">=22"
24
24
  },
@@ -87,11 +87,6 @@
87
87
  "types": "./dist/v2/blocks/operation-block/index.d.ts",
88
88
  "default": "./dist/v2/blocks/operation-block/index.js"
89
89
  },
90
- "./v2/blocks/operation-code-sample": {
91
- "import": "./dist/v2/blocks/operation-code-sample/index.js",
92
- "types": "./dist/v2/blocks/operation-code-sample/index.d.ts",
93
- "default": "./dist/v2/blocks/operation-code-sample/index.js"
94
- },
95
90
  "./v2/blocks/request-block": {
96
91
  "import": "./dist/v2/blocks/request-block/index.js",
97
92
  "types": "./dist/v2/blocks/request-block/index.d.ts",
@@ -197,11 +192,6 @@
197
192
  "types": "./dist/v2/blocks/operation-block/index.d.ts",
198
193
  "default": "./dist/v2/blocks/operation-block/index.js"
199
194
  },
200
- "./blocks/operation-code-sample": {
201
- "import": "./dist/v2/blocks/operation-code-sample/index.js",
202
- "types": "./dist/v2/blocks/operation-code-sample/index.d.ts",
203
- "default": "./dist/v2/blocks/operation-code-sample/index.js"
204
- },
205
195
  "./blocks/request-block": {
206
196
  "import": "./dist/v2/blocks/request-block/index.js",
207
197
  "types": "./dist/v2/blocks/request-block/index.d.ts",
@@ -306,7 +296,6 @@
306
296
  "@headlessui/tailwindcss": "^0.2.2",
307
297
  "@headlessui/vue": "1.7.23",
308
298
  "@scalar/typebox": "^0.1.3",
309
- "@types/har-format": "^1.2.16",
310
299
  "@vueuse/core": "13.9.0",
311
300
  "@vueuse/integrations": "13.9.0",
312
301
  "focus-trap": "^7.8.0",
@@ -320,20 +309,20 @@
320
309
  "vue": "^3.5.30",
321
310
  "yaml": "^2.8.3",
322
311
  "zod": "^4.3.5",
323
- "@scalar/components": "0.27.2",
324
- "@scalar/helpers": "0.8.2",
325
- "@scalar/json-magic": "0.12.16",
326
- "@scalar/openapi-types": "0.9.1",
327
- "@scalar/oas-utils": "0.18.5",
312
+ "@scalar/components": "0.27.4",
313
+ "@scalar/helpers": "0.9.0",
314
+ "@scalar/oas-utils": "0.19.1",
328
315
  "@scalar/icons": "0.7.3",
329
- "@scalar/sidebar": "0.9.23",
330
- "@scalar/snippetz": "0.9.17",
331
- "@scalar/themes": "0.16.0",
332
- "@scalar/types": "0.14.0",
333
- "@scalar/use-toasts": "0.10.2",
334
- "@scalar/use-hooks": "0.4.7",
316
+ "@scalar/openapi-types": "0.9.1",
317
+ "@scalar/blocks": "0.1.0",
318
+ "@scalar/snippetz": "0.9.19",
319
+ "@scalar/sidebar": "0.9.25",
320
+ "@scalar/themes": "0.16.2",
321
+ "@scalar/types": "0.16.0",
335
322
  "@scalar/use-codemirror": "0.14.12",
336
- "@scalar/workspace-store": "0.54.4"
323
+ "@scalar/use-hooks": "0.4.7",
324
+ "@scalar/workspace-store": "0.55.0",
325
+ "@scalar/use-toasts": "0.10.2"
337
326
  },
338
327
  "devDependencies": {
339
328
  "@tailwindcss/cli": "^4.2.4",
@@ -1,16 +0,0 @@
1
- import type { MediaTypeObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document';
2
- type __VLS_Props = {
3
- examples?: MediaTypeObject['examples'] | Record<string, string>;
4
- };
5
- type __VLS_ModelProps = {
6
- modelValue: string;
7
- };
8
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
9
- declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
- "update:modelValue": (value: string) => any;
11
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
12
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
13
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
- declare const _default: typeof __VLS_export;
15
- export default _default;
16
- //# sourceMappingURL=ExamplePicker.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExamplePicker.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/operation-code-sample/components/ExamplePicker.vue"],"names":[],"mappings":"AAgEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8DAA8D,CAAA;AAGnG,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,eAAe,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChE,CAAC;AAwBF,KAAK,gBAAgB,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;CAClB,CAAC;AAKF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAyGxD,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1,7 +0,0 @@
1
- import ExamplePicker_vue_vue_type_script_setup_true_lang_default from "./ExamplePicker.vue.script.js";
2
- //#region src/v2/blocks/operation-code-sample/components/ExamplePicker.vue
3
- var ExamplePicker_default = ExamplePicker_vue_vue_type_script_setup_true_lang_default;
4
- //#endregion
5
- export { ExamplePicker_default as default };
6
-
7
- //# sourceMappingURL=ExamplePicker.vue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExamplePicker.vue.js","names":[],"sources":["../../../../../src/v2/blocks/operation-code-sample/components/ExamplePicker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport {\n ScalarListbox,\n type ScalarListboxOption,\n} from '@scalar/components/listbox'\nimport { ScalarIconCaretDown } from '@scalar/icons'\nimport type { MediaTypeObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { examples = {} } = defineProps<{\n examples?: MediaTypeObject['examples'] | Record<string, string>\n}>()\n\nconst selectedExampleKey = defineModel<string>({\n required: true,\n})\n\ndefineOptions({ inheritAttrs: false })\n\nconst exampleOptions = computed<ScalarListboxOption[]>(() =>\n Object.entries(examples).map(([key, example]) => ({\n id: key,\n label: example?.summary ?? key,\n })),\n)\n\nconst selectedExample = computed<ScalarListboxOption | undefined>({\n get: () =>\n exampleOptions.value.find(({ id }) => id === selectedExampleKey.value),\n set: (v) => (selectedExampleKey.value = v?.id ?? ''),\n})\n</script>\n\n<template>\n <ScalarListbox\n v-model=\"selectedExample\"\n class=\"w-fit min-w-32\"\n :options=\"exampleOptions\"\n placement=\"bottom-start\"\n teleport>\n <ScalarButton\n class=\"text-c-2 hover:text-c-1 flex h-full w-fit min-w-0 gap-1.5 px-1.5 py-0.75 text-base font-normal\"\n data-testid=\"example-picker\"\n variant=\"ghost\"\n v-bind=\"$attrs\">\n <div class=\"min-w-0 flex-1 truncate\">\n {{ selectedExample?.label ?? 'Select an example' }}\n </div>\n <ScalarIconCaretDown\n class=\"ui-open:rotate-180 mt-0.25 size-3 transition-transform duration-100\"\n weight=\"bold\" />\n </ScalarButton>\n </ScalarListbox>\n</template>\n"],"mappings":""}
@@ -1,53 +0,0 @@
1
- import { computed, createBlock, createElementVNode, createVNode, defineComponent, mergeModels, mergeProps, openBlock, toDisplayString, unref, useModel, withCtx } from "vue";
2
- import { ScalarButton } from "@scalar/components/button";
3
- import { ScalarListbox } from "@scalar/components/listbox";
4
- import { ScalarIconCaretDown } from "@scalar/icons";
5
- //#region src/v2/blocks/operation-code-sample/components/ExamplePicker.vue?vue&type=script&setup=true&lang.ts
6
- var _hoisted_1 = { class: "min-w-0 flex-1 truncate" };
7
- var ExamplePicker_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
8
- inheritAttrs: false,
9
- __name: "ExamplePicker",
10
- props: /* @__PURE__ */ mergeModels({ examples: { default: () => ({}) } }, {
11
- "modelValue": { required: true },
12
- "modelModifiers": {}
13
- }),
14
- emits: ["update:modelValue"],
15
- setup(__props) {
16
- const selectedExampleKey = useModel(__props, "modelValue");
17
- const exampleOptions = computed(() => Object.entries(__props.examples).map(([key, example]) => ({
18
- id: key,
19
- label: example?.summary ?? key
20
- })));
21
- const selectedExample = computed({
22
- get: () => exampleOptions.value.find(({ id }) => id === selectedExampleKey.value),
23
- set: (v) => selectedExampleKey.value = v?.id ?? ""
24
- });
25
- return (_ctx, _cache) => {
26
- return openBlock(), createBlock(unref(ScalarListbox), {
27
- modelValue: selectedExample.value,
28
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedExample.value = $event),
29
- class: "w-fit min-w-32",
30
- options: exampleOptions.value,
31
- placement: "bottom-start",
32
- teleport: ""
33
- }, {
34
- default: withCtx(() => [createVNode(unref(ScalarButton), mergeProps({
35
- class: "text-c-2 hover:text-c-1 flex h-full w-fit min-w-0 gap-1.5 px-1.5 py-0.75 text-base font-normal",
36
- "data-testid": "example-picker",
37
- variant: "ghost"
38
- }, _ctx.$attrs), {
39
- default: withCtx(() => [createElementVNode("div", _hoisted_1, toDisplayString(selectedExample.value?.label ?? "Select an example"), 1), createVNode(unref(ScalarIconCaretDown), {
40
- class: "ui-open:rotate-180 mt-0.25 size-3 transition-transform duration-100",
41
- weight: "bold"
42
- })]),
43
- _: 1
44
- }, 16)]),
45
- _: 1
46
- }, 8, ["modelValue", "options"]);
47
- };
48
- }
49
- });
50
- //#endregion
51
- export { ExamplePicker_vue_vue_type_script_setup_true_lang_default as default };
52
-
53
- //# sourceMappingURL=ExamplePicker.vue.script.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExamplePicker.vue.script.js","names":["$attrs"],"sources":["../../../../../src/v2/blocks/operation-code-sample/components/ExamplePicker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport {\n ScalarListbox,\n type ScalarListboxOption,\n} from '@scalar/components/listbox'\nimport { ScalarIconCaretDown } from '@scalar/icons'\nimport type { MediaTypeObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { examples = {} } = defineProps<{\n examples?: MediaTypeObject['examples'] | Record<string, string>\n}>()\n\nconst selectedExampleKey = defineModel<string>({\n required: true,\n})\n\ndefineOptions({ inheritAttrs: false })\n\nconst exampleOptions = computed<ScalarListboxOption[]>(() =>\n Object.entries(examples).map(([key, example]) => ({\n id: key,\n label: example?.summary ?? key,\n })),\n)\n\nconst selectedExample = computed<ScalarListboxOption | undefined>({\n get: () =>\n exampleOptions.value.find(({ id }) => id === selectedExampleKey.value),\n set: (v) => (selectedExampleKey.value = v?.id ?? ''),\n})\n</script>\n\n<template>\n <ScalarListbox\n v-model=\"selectedExample\"\n class=\"w-fit min-w-32\"\n :options=\"exampleOptions\"\n placement=\"bottom-start\"\n teleport>\n <ScalarButton\n class=\"text-c-2 hover:text-c-1 flex h-full w-fit min-w-0 gap-1.5 px-1.5 py-0.75 text-base font-normal\"\n data-testid=\"example-picker\"\n variant=\"ghost\"\n v-bind=\"$attrs\">\n <div class=\"min-w-0 flex-1 truncate\">\n {{ selectedExample?.label ?? 'Select an example' }}\n </div>\n <ScalarIconCaretDown\n class=\"ui-open:rotate-180 mt-0.25 size-3 transition-transform duration-100\"\n weight=\"bold\" />\n </ScalarButton>\n </ScalarListbox>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EAcA,MAAM,qBAAqB,SAAmB,SAAA,aAE7C;EAID,MAAM,iBAAiB,eACrB,OAAO,QAAQ,QAAA,SAAS,CAAC,KAAK,CAAC,KAAK,cAAc;GAChD,IAAI;GACJ,OAAO,SAAS,WAAW;GAC5B,EAAE,CACL;EAEA,MAAM,kBAAkB,SAA0C;GAChE,WACE,eAAe,MAAM,MAAM,EAAE,SAAS,OAAO,mBAAmB,MAAM;GACxE,MAAM,MAAO,mBAAmB,QAAQ,GAAG,MAAM;GAClD,CAAA;;uBAIC,YAkBgB,MAAA,cAAA,EAAA;gBAjBL,gBAAA;iFAAe,QAAA;IACxB,OAAM;IACL,SAAS,eAAA;IACV,WAAU;IACV,UAAA;;2BAYe,CAXf,YAWe,MAAA,aAAA,EAXf,WAWe;KAVb,OAAM;KACN,eAAY;KACZ,SAAQ;OACAA,KAAAA,OAAM,EAAA;4BAGR,CAFN,mBAEM,OAFN,YAEM,gBADD,gBAAA,OAAiB,SAAK,oBAAA,EAAA,EAAA,EAE3B,YAEkB,MAAA,oBAAA,EAAA;MADhB,OAAM;MACN,QAAO"}
@@ -1,26 +0,0 @@
1
- import type { HttpMethod } from '@scalar/helpers/http/http-methods';
2
- import { type Component } from 'vue';
3
- type __VLS_Props = {
4
- /** The type of element to render as, defaults to `span` */
5
- as?: Component | string;
6
- /** The css style property or variable that will be set to the request method color, defaults to `color` */
7
- property?: string;
8
- /** Whether or not to abbreviated the slot content */
9
- short?: boolean;
10
- /** The HTTP method to show */
11
- method: HttpMethod | string;
12
- };
13
- declare var __VLS_8: {};
14
- type __VLS_Slots = {} & {
15
- default?: (props: typeof __VLS_8) => any;
16
- };
17
- declare const __VLS_base: 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>;
18
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
19
- declare const _default: typeof __VLS_export;
20
- export default _default;
21
- type __VLS_WithSlots<T, S> = T & {
22
- new (): {
23
- $slots: S;
24
- };
25
- };
26
- //# sourceMappingURL=HttpMethod.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpMethod.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/operation-code-sample/components/HttpMethod.vue"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAEnE,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,KAAK,CAAA;AAE9C,KAAK,WAAW,GAAG;IACjB,2DAA2D;IAC3D,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACvB,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qDAAqD;IACrD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,8BAA8B;IAC9B,MAAM,EAAE,UAAU,GAAG,MAAM,CAAA;CAC5B,CAAC;AAiDF,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAK/C,QAAA,MAAM,UAAU,kSAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,7 +0,0 @@
1
- import HttpMethod_vue_vue_type_script_setup_true_lang_default from "./HttpMethod.vue.script.js";
2
- //#region src/v2/blocks/operation-code-sample/components/HttpMethod.vue
3
- var HttpMethod_default = HttpMethod_vue_vue_type_script_setup_true_lang_default;
4
- //#endregion
5
- export { HttpMethod_default as default };
6
-
7
- //# sourceMappingURL=HttpMethod.vue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpMethod.vue.js","names":[],"sources":["../../../../../src/v2/blocks/operation-code-sample/components/HttpMethod.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getHttpMethodInfo } from '@scalar/helpers/http/http-info'\nimport type { HttpMethod } from '@scalar/helpers/http/http-methods'\nimport { normalizeHttpMethod } from '@scalar/helpers/http/normalize-http-method'\nimport { computed, type Component } from 'vue'\n\nconst props = defineProps<{\n /** The type of element to render as, defaults to `span` */\n as?: Component | string\n /** The css style property or variable that will be set to the request method color, defaults to `color` */\n property?: string\n /** Whether or not to abbreviated the slot content */\n short?: boolean\n /** The HTTP method to show */\n method: HttpMethod | string\n}>()\n\n/** Grabs the method info object which contains abbreviation, color, and background color etc */\nconst httpMethodInfo = computed(() =>\n getHttpMethodInfo(String(props.method || '')),\n)\n\n/** Full method name */\nconst normalized = computed(() => normalizeHttpMethod(props.method))\n</script>\n\n<template>\n <component\n :is=\"as ?? 'span'\"\n class=\"uppercase\"\n :style=\"{ [property || 'color']: httpMethodInfo.colorVar }\">\n <slot />\n {{ short ? httpMethodInfo.short : normalized }}\n </component>\n</template>\n"],"mappings":""}
@@ -1,33 +0,0 @@
1
- import { computed, createBlock, createTextVNode, defineComponent, normalizeStyle, openBlock, renderSlot, resolveDynamicComponent, toDisplayString, withCtx } from "vue";
2
- import { getHttpMethodInfo } from "@scalar/helpers/http/http-info";
3
- import { normalizeHttpMethod } from "@scalar/helpers/http/normalize-http-method";
4
- //#region src/v2/blocks/operation-code-sample/components/HttpMethod.vue?vue&type=script&setup=true&lang.ts
5
- var HttpMethod_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
6
- __name: "HttpMethod",
7
- props: {
8
- as: {},
9
- property: {},
10
- short: { type: Boolean },
11
- method: {}
12
- },
13
- setup(__props) {
14
- const props = __props;
15
- /** Grabs the method info object which contains abbreviation, color, and background color etc */
16
- const httpMethodInfo = computed(() => getHttpMethodInfo(String(props.method || "")));
17
- /** Full method name */
18
- const normalized = computed(() => normalizeHttpMethod(props.method));
19
- return (_ctx, _cache) => {
20
- return openBlock(), createBlock(resolveDynamicComponent(__props.as ?? "span"), {
21
- class: "uppercase",
22
- style: normalizeStyle({ [__props.property || "color"]: httpMethodInfo.value.colorVar })
23
- }, {
24
- default: withCtx(() => [renderSlot(_ctx.$slots, "default"), createTextVNode(" " + toDisplayString(__props.short ? httpMethodInfo.value.short : normalized.value), 1)]),
25
- _: 3
26
- }, 8, ["style"]);
27
- };
28
- }
29
- });
30
- //#endregion
31
- export { HttpMethod_vue_vue_type_script_setup_true_lang_default as default };
32
-
33
- //# sourceMappingURL=HttpMethod.vue.script.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpMethod.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/operation-code-sample/components/HttpMethod.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getHttpMethodInfo } from '@scalar/helpers/http/http-info'\nimport type { HttpMethod } from '@scalar/helpers/http/http-methods'\nimport { normalizeHttpMethod } from '@scalar/helpers/http/normalize-http-method'\nimport { computed, type Component } from 'vue'\n\nconst props = defineProps<{\n /** The type of element to render as, defaults to `span` */\n as?: Component | string\n /** The css style property or variable that will be set to the request method color, defaults to `color` */\n property?: string\n /** Whether or not to abbreviated the slot content */\n short?: boolean\n /** The HTTP method to show */\n method: HttpMethod | string\n}>()\n\n/** Grabs the method info object which contains abbreviation, color, and background color etc */\nconst httpMethodInfo = computed(() =>\n getHttpMethodInfo(String(props.method || '')),\n)\n\n/** Full method name */\nconst normalized = computed(() => normalizeHttpMethod(props.method))\n</script>\n\n<template>\n <component\n :is=\"as ?? 'span'\"\n class=\"uppercase\"\n :style=\"{ [property || 'color']: httpMethodInfo.colorVar }\">\n <slot />\n {{ short ? httpMethodInfo.short : normalized }}\n </component>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAMA,MAAM,QAAQ;;EAYd,MAAM,iBAAiB,eACrB,kBAAkB,OAAO,MAAM,UAAU,GAAG,CAAC,CAC/C;;EAGA,MAAM,aAAa,eAAe,oBAAoB,MAAM,OAAO,CAAA;;uBAIjE,YAMY,wBALL,QAAA,MAAE,OAAA,EAAA;IACP,OAAM;IACL,OAAK,eAAA,GAAK,QAAA,YAAQ,UAAc,eAAA,MAAe,UAAQ,CAAA;;2BAChD,CAAR,WAAQ,KAAA,QAAA,UAAA,EAAA,gBAAA,MACR,gBAAG,QAAA,QAAQ,eAAA,MAAe,QAAQ,WAAA,MAAU,EAAA,EAAA,CAAA,CAAA"}
@@ -1,141 +0,0 @@
1
- import type { HttpMethod as HttpMethodType } from '@scalar/helpers/http/http-methods';
2
- import { type WorkspaceEventBus } from '@scalar/workspace-store/events';
3
- import type { SecuritySchemeObjectSecret } from '@scalar/workspace-store/request-example';
4
- import type { XScalarCookie } from '@scalar/workspace-store/schemas/extensions/general/x-scalar-cookies';
5
- import type { OperationObject, ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document';
6
- import type { ClientOptionGroup } from '../../../../v2/blocks/operation-code-sample/types';
7
- export type OperationCodeSampleProps = {
8
- /**
9
- * Integration type: determines if the code sample is displayed in a client environment
10
- * or in an API reference environment.
11
- */
12
- integration?: 'client' | 'reference';
13
- /**
14
- * List of all http clients formatted into option groups for the client selector
15
- */
16
- clientOptions: ClientOptionGroup[];
17
- /**
18
- * Pre-selected client, this will determine which client is initially selected in the dropdown.
19
- * Either a built-in client id (e.g. `js/fetch`) or a custom sample id (e.g. `custom/python`).
20
- *
21
- * Typed as a plain string: unioning the (large) client-id union with the `custom/...`
22
- * ids overflows TypeScript's union-complexity limit inside this component's `defineProps`.
23
- *
24
- * @defaults to a custom sample if one is available, otherwise shell/curl
25
- */
26
- selectedClient?: string;
27
- /**
28
- * Which server from the spec to use for the code example
29
- */
30
- selectedServer?: ServerObject | null;
31
- /**
32
- * The selected content type from the requestBody.content, this will determine which examples are available
33
- * as well as the content type of the code example
34
- *
35
- * @defaults to the first content type if not provided
36
- */
37
- selectedContentType?: string;
38
- /**
39
- * Example name to use for resolving example values for parameters AND requestBody
40
- *
41
- * @example "limited"
42
- * ```ts
43
- * parameters: {
44
- * name: 'foobar',
45
- * in: 'query',
46
- * examples: {
47
- * limited: {
48
- * dataValue: 10,
49
- * }
50
- * }
51
- * },
52
- * body: {
53
- * content: {
54
- * 'application/json': {
55
- * examples: {
56
- * limited: {
57
- * dataValue: { foo: 'bar' },
58
- * }
59
- * }
60
- * }
61
- * }
62
- * }
63
- *
64
- * ```
65
- */
66
- selectedExample?: string;
67
- /**
68
- * Event bus
69
- */
70
- eventBus: WorkspaceEventBus;
71
- /**
72
- * The security schemes which are applicable to this operation
73
- */
74
- securitySchemes: SecuritySchemeObjectSecret[];
75
- /**
76
- * HTTP method of the operation
77
- */
78
- method: HttpMethodType;
79
- /**
80
- * Path of the operation
81
- */
82
- path: string;
83
- /**
84
- * De-referenced OpenAPI Operation object
85
- */
86
- operation: OperationObject;
87
- /**
88
- * If true and there's no example, we will display a small card with the method and path only
89
- */
90
- fallback?: boolean;
91
- /**
92
- * A method to generate the label of the block, should return an html string
93
- */
94
- generateLabel?: () => string;
95
- /**
96
- * If true, render this as a webhook request example
97
- */
98
- isWebhook?: boolean;
99
- /**
100
- * Workspace + document cookies
101
- */
102
- globalCookies?: XScalarCookie[];
103
- /**
104
- * When the request body schema uses oneOf/anyOf, use these selected variants
105
- * for the example snippet (e.g. from the schema dropdowns in the API reference).
106
- */
107
- requestBodyCompositionSelection?: Record<string, number>;
108
- };
109
- /**
110
- * Request Example
111
- *
112
- * The core component for rendering a request example block,
113
- * this component does not have much of its own state but operates on props and custom events
114
- *
115
- * @event workspace:update:selected-client - Emitted when the selected client changes
116
- * @event scalar-update-selected-example - removed for now, we can bring it back when we need it
117
- */
118
- declare const _default: typeof __VLS_export;
119
- export default _default;
120
- declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<OperationCodeSampleProps & {
121
- /** The currently selected example key with v-model support */
122
- selectedExample?: string;
123
- }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
124
- "update:selectedExample": (value: string) => any;
125
- }, string, import("vue").PublicProps, Readonly<OperationCodeSampleProps & {
126
- /** The currently selected example key with v-model support */
127
- selectedExample?: string;
128
- }> & Readonly<{
129
- "onUpdate:selectedExample"?: ((value: string) => any) | undefined;
130
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
131
- header: () => unknown;
132
- footer: ({ exampleName }: {
133
- exampleName: string;
134
- }) => unknown;
135
- }>;
136
- type __VLS_WithSlots<T, S> = T & {
137
- new (): {
138
- $slots: S;
139
- };
140
- };
141
- //# sourceMappingURL=OperationCodeSample.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OperationCodeSample.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/operation-code-sample/components/OperationCodeSample.vue"],"names":[],"mappings":"AA2gBA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAErF,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAEvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAA;AACxG,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACb,MAAM,8DAA8D,CAAA;AAiBrE,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,yCAAyC,CAAA;AAMhD,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;OAGG;IACH,WAAW,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAA;IACpC;;OAEG;IACH,aAAa,EAAE,iBAAiB,EAAE,CAAA;IAClC;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,cAAc,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IACpC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAA;IAC3B;;OAEG;IACH,eAAe,EAAE,0BAA0B,EAAE,CAAA;IAC7C;;OAEG;IACH,MAAM,EAAE,cAAc,CAAA;IACtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,SAAS,EAAE,eAAe,CAAA;IAC1B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,MAAM,CAAA;IAC5B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,EAAE,CAAA;IAC/B;;;OAGG;IACH,+BAA+B,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACzD,CAAA;AAED;;;;;;;;GAQG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAyMlB,8DAA8D;sBAC1C,MAAM;;;;IAD1B,8DAA8D;sBAC1C,MAAM;;;;YArLhB,MAAM,OAAO;YACb,CAAC,EAAE,WAAW,EAAE,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO;EA6jB3D,CAAC;AACL,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}