@scalar/api-client 2.43.0 → 3.0.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 (1485) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +82 -74
  3. package/dist/components/HttpMethod/HttpMethod.vue.d.ts +3 -3
  4. package/dist/components/HttpMethod/HttpMethod.vue.d.ts.map +1 -1
  5. package/dist/components/HttpMethod/HttpMethod.vue.js +1 -1
  6. package/dist/components/HttpMethod/HttpMethod.vue.js.map +1 -1
  7. package/dist/components/HttpMethod/HttpMethod.vue.script.js +3 -2
  8. package/dist/components/HttpMethod/HttpMethod.vue.script.js.map +1 -1
  9. package/dist/components/IconSelector.vue.script.js +1 -1
  10. package/dist/components/Server/index.d.ts +0 -2
  11. package/dist/components/Server/index.d.ts.map +1 -1
  12. package/dist/components/Server/index.js +1 -3
  13. package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue.d.ts +2 -2
  14. package/dist/hooks/{useFileDialog.d.ts → use-file-dialog.d.ts} +3 -2
  15. package/dist/hooks/use-file-dialog.d.ts.map +1 -0
  16. package/dist/hooks/{useFileDialog.js → use-file-dialog.js} +2 -2
  17. package/dist/hooks/use-file-dialog.js.map +1 -0
  18. package/dist/index.d.ts +0 -3
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +0 -5
  21. package/dist/monacoeditorwork/editor.worker.bundle.js +222 -366
  22. package/dist/monacoeditorwork/json.worker.bundle.js +388 -501
  23. package/dist/monacoeditorwork/yaml.worker.bundle.js +14567 -22937
  24. package/dist/style.css +6031 -7687
  25. package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts +4 -1
  26. package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts.map +1 -1
  27. package/dist/v2/blocks/operation-block/OperationBlock.vue.js.map +1 -1
  28. package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js +13 -10
  29. package/dist/v2/blocks/operation-block/OperationBlock.vue.script.js.map +1 -1
  30. package/dist/v2/blocks/operation-block/components/Header.vue.d.ts +1 -1
  31. package/dist/v2/blocks/operation-block/components/Header.vue.d.ts.map +1 -1
  32. package/dist/v2/blocks/operation-block/components/Header.vue.js +1 -1
  33. package/dist/v2/blocks/operation-block/components/Header.vue.js.map +1 -1
  34. package/dist/v2/blocks/operation-block/components/Header.vue.script.js +2 -2
  35. package/dist/v2/blocks/operation-block/components/Header.vue.script.js.map +1 -1
  36. package/dist/v2/blocks/operation-block/components/OpenApiClientButton.vue.d.ts.map +1 -0
  37. package/dist/{components → v2/blocks/operation-block/components}/OpenApiClientButton.vue.js +3 -3
  38. package/dist/v2/blocks/operation-block/components/OpenApiClientButton.vue.js.map +1 -0
  39. package/dist/{components → v2/blocks/operation-block/components}/OpenApiClientButton.vue.script.js +6 -7
  40. package/dist/v2/blocks/operation-block/components/OpenApiClientButton.vue.script.js.map +1 -0
  41. package/dist/v2/blocks/operation-block/helpers/decode-buffer.js +3 -3
  42. package/dist/v2/blocks/operation-block/helpers/decode-buffer.js.map +1 -1
  43. package/dist/v2/blocks/operation-block/helpers/response-cache.d.ts +1 -1
  44. package/dist/v2/blocks/operation-block/helpers/response-cache.d.ts.map +1 -1
  45. package/dist/v2/blocks/operation-block/helpers/response-cache.js.map +1 -1
  46. package/dist/v2/blocks/operation-block/helpers/send-request.d.ts +1 -1
  47. package/dist/v2/blocks/operation-block/helpers/send-request.d.ts.map +1 -1
  48. package/dist/v2/blocks/operation-block/helpers/send-request.js +2 -2
  49. package/dist/v2/blocks/operation-block/helpers/send-request.js.map +1 -1
  50. package/dist/v2/blocks/operation-block/index.d.ts +1 -0
  51. package/dist/v2/blocks/operation-block/index.d.ts.map +1 -1
  52. package/dist/v2/blocks/operation-block/index.js +2 -1
  53. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.d.ts.map +1 -1
  54. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js +1 -1
  55. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js.map +1 -1
  56. package/dist/{views/Components/CodeSnippet → v2/blocks/operation-code-sample}/helpers/get-snippet.d.ts +1 -1
  57. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.d.ts.map +1 -0
  58. package/dist/{views/Components/CodeSnippet → v2/blocks/operation-code-sample}/helpers/get-snippet.js +2 -3
  59. package/dist/v2/blocks/operation-code-sample/helpers/get-snippet.js.map +1 -0
  60. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.js +1 -1
  61. package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts +4 -1
  62. package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts.map +1 -1
  63. package/dist/v2/blocks/request-block/RequestBlock.vue.js +1 -1
  64. package/dist/v2/blocks/request-block/RequestBlock.vue.js.map +1 -1
  65. package/dist/v2/blocks/request-block/RequestBlock.vue.script.js +4 -1
  66. package/dist/v2/blocks/request-block/RequestBlock.vue.script.js.map +1 -1
  67. package/dist/v2/blocks/request-block/components/RequestBody.vue.js +1 -1
  68. package/dist/v2/blocks/request-block/components/RequestBody.vue.js.map +1 -1
  69. package/dist/v2/blocks/request-block/components/RequestBody.vue.script.js +2 -2
  70. package/dist/v2/blocks/request-block/components/RequestBody.vue.script.js.map +1 -1
  71. package/dist/v2/blocks/request-block/components/RequestBodyForm.vue.js.map +1 -1
  72. package/dist/v2/blocks/request-block/components/RequestBodyForm.vue.script.js +1 -1
  73. package/dist/v2/blocks/request-block/components/RequestBodyForm.vue.script.js.map +1 -1
  74. package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts +6 -6
  75. package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts.map +1 -1
  76. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts +6 -6
  77. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.d.ts.map +1 -1
  78. package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts.map +1 -1
  79. package/dist/v2/blocks/request-block/helpers/get-default-headers.js +1 -1
  80. package/dist/v2/blocks/request-block/helpers/get-default-headers.js.map +1 -1
  81. package/dist/v2/blocks/response-block/ResponseBlock.vue.d.ts +2 -2
  82. package/dist/v2/blocks/response-block/ResponseBlock.vue.d.ts.map +1 -1
  83. package/dist/v2/blocks/response-block/ResponseBlock.vue.js +1 -1
  84. package/dist/v2/blocks/response-block/ResponseBlock.vue.js.map +1 -1
  85. package/dist/v2/blocks/response-block/ResponseBlock.vue.script.js +1 -1
  86. package/dist/v2/blocks/response-block/ResponseBlock.vue.script.js.map +1 -1
  87. package/dist/v2/blocks/response-block/components/Headers.vue.d.ts.map +1 -1
  88. package/dist/v2/blocks/response-block/components/Headers.vue.js.map +1 -1
  89. package/dist/v2/blocks/response-block/components/Headers.vue.script.js +11 -13
  90. package/dist/v2/blocks/response-block/components/Headers.vue.script.js.map +1 -1
  91. package/dist/v2/blocks/response-block/components/ResponseBody.vue.script.js +1 -1
  92. package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue.js.map +1 -1
  93. package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue.script.js +1 -1
  94. package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue.script.js.map +1 -1
  95. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts +1 -1
  96. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts.map +1 -1
  97. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js +1 -1
  98. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js.map +1 -1
  99. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.script.js.map +1 -1
  100. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.script.js +1 -1
  101. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.d.ts.map +1 -1
  102. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.js.map +1 -1
  103. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.script.js +2 -1
  104. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.script.js.map +1 -1
  105. package/dist/v2/blocks/response-block/components/ResponseCookies.vue.d.ts.map +1 -1
  106. package/dist/v2/blocks/response-block/components/ResponseCookies.vue.js.map +1 -1
  107. package/dist/v2/blocks/response-block/components/ResponseCookies.vue.script.js +9 -9
  108. package/dist/v2/blocks/response-block/components/ResponseCookies.vue.script.js.map +1 -1
  109. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts +3 -3
  110. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts.map +1 -1
  111. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js +1 -1
  112. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js.map +1 -1
  113. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.script.js.map +1 -1
  114. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.d.ts +1 -1
  115. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.d.ts.map +1 -1
  116. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.js.map +1 -1
  117. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.script.js +1 -1
  118. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.script.js.map +1 -1
  119. package/dist/v2/blocks/response-block/helpers/get-content-length.d.ts +1 -1
  120. package/dist/v2/blocks/response-block/helpers/get-content-length.d.ts.map +1 -1
  121. package/dist/v2/blocks/response-block/helpers/get-content-length.js.map +1 -1
  122. package/dist/v2/blocks/response-block/helpers/media-types.d.ts +1 -1
  123. package/dist/v2/blocks/response-block/helpers/media-types.d.ts.map +1 -1
  124. package/dist/v2/blocks/response-block/helpers/media-types.js +10 -1
  125. package/dist/v2/blocks/response-block/helpers/media-types.js.map +1 -1
  126. package/dist/v2/blocks/response-block/helpers/process-response-body.d.ts +1 -2
  127. package/dist/v2/blocks/response-block/helpers/process-response-body.d.ts.map +1 -1
  128. package/dist/v2/blocks/response-block/helpers/process-response-body.js +2 -2
  129. package/dist/v2/blocks/response-block/helpers/process-response-body.js.map +1 -1
  130. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts +2 -2
  131. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts.map +1 -1
  132. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js +1 -1
  133. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js.map +1 -1
  134. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.script.js +8 -3
  135. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.script.js.map +1 -1
  136. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.js +1 -1
  137. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.js.map +1 -1
  138. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.script.js +2 -2
  139. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.script.js.map +1 -1
  140. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.d.ts +3 -0
  141. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.d.ts.map +1 -1
  142. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.js.map +1 -1
  143. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.script.js +4 -1
  144. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.script.js.map +1 -1
  145. package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue.d.ts +2 -2
  146. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts +31 -6
  147. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts.map +1 -1
  148. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.js.map +1 -1
  149. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.script.js +6 -8
  150. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.script.js.map +1 -1
  151. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.d.ts.map +1 -1
  152. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js +1 -1
  153. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js.map +1 -1
  154. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.script.js +5 -5
  155. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.script.js.map +1 -1
  156. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.js.map +1 -1
  157. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.script.js +3 -3
  158. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.script.js.map +1 -1
  159. package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue.js.map +1 -1
  160. package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue.script.js +1 -1
  161. package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue.script.js.map +1 -1
  162. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts +3 -0
  163. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts.map +1 -1
  164. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.js.map +1 -1
  165. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js +6 -3
  166. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.script.js.map +1 -1
  167. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue.d.ts +1 -1
  168. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts +3 -0
  169. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts.map +1 -1
  170. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.js.map +1 -1
  171. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.script.js +4 -1
  172. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.script.js.map +1 -1
  173. package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.d.ts +1 -1
  174. package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.d.ts.map +1 -1
  175. package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.js.map +1 -1
  176. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.d.ts +1 -1
  177. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.d.ts.map +1 -1
  178. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js +3 -3
  179. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js.map +1 -1
  180. package/dist/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.d.ts +11 -0
  181. package/dist/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.d.ts.map +1 -0
  182. package/dist/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.js +18 -0
  183. package/dist/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.js.map +1 -0
  184. package/dist/v2/components/code-input/CodeInput.vue.d.ts +4 -3
  185. package/dist/v2/components/code-input/CodeInput.vue.d.ts.map +1 -1
  186. package/dist/v2/components/code-input/CodeInput.vue.js +1 -1
  187. package/dist/v2/components/code-input/CodeInput.vue.js.map +1 -1
  188. package/dist/v2/components/code-input/CodeInput.vue.script.js +8 -0
  189. package/dist/v2/components/code-input/CodeInput.vue.script.js.map +1 -1
  190. package/dist/{views/Collection/CollectionNavigation.vue.d.ts → v2/components/code-input/PillTooltipHost.vue.d.ts} +3 -2
  191. package/dist/v2/components/code-input/PillTooltipHost.vue.d.ts.map +1 -0
  192. package/dist/v2/components/code-input/PillTooltipHost.vue.js +7 -0
  193. package/dist/v2/components/code-input/PillTooltipHost.vue.js.map +1 -0
  194. package/dist/v2/components/code-input/PillTooltipHost.vue.script.js +40 -0
  195. package/dist/v2/components/code-input/PillTooltipHost.vue.script.js.map +1 -0
  196. package/dist/v2/components/code-input/code-variable-widget.d.ts +1 -0
  197. package/dist/v2/components/code-input/code-variable-widget.d.ts.map +1 -1
  198. package/dist/v2/components/code-input/code-variable-widget.js +33 -20
  199. package/dist/v2/components/code-input/code-variable-widget.js.map +1 -1
  200. package/dist/v2/components/code-input/pill-context.d.ts +11 -0
  201. package/dist/v2/components/code-input/pill-context.d.ts.map +1 -0
  202. package/dist/v2/components/data-table/DataTableInput.vue.d.ts +3 -3
  203. package/dist/v2/components/data-table/DataTableInput.vue.d.ts.map +1 -1
  204. package/dist/v2/components/layout/CollapsibleSection.vue.d.ts.map +1 -1
  205. package/dist/v2/components/layout/CollapsibleSection.vue.js.map +1 -1
  206. package/dist/v2/components/layout/CollapsibleSection.vue.script.js +5 -2
  207. package/dist/v2/components/layout/CollapsibleSection.vue.script.js.map +1 -1
  208. package/dist/v2/components/modals/DeleteModal.vue.d.ts +2 -2
  209. package/dist/v2/components/modals/ModalClientContainer.vue.d.ts +2 -2
  210. package/dist/v2/components/server/ServerDropdown.vue.d.ts +1 -1
  211. package/dist/v2/components/server/ServerDropdown.vue.d.ts.map +1 -1
  212. package/dist/v2/components/server/ServerDropdown.vue.js.map +1 -1
  213. package/dist/v2/components/server/ServerDropdown.vue.script.js.map +1 -1
  214. package/dist/v2/components/sidebar/Sidebar.vue.d.ts.map +1 -1
  215. package/dist/v2/components/sidebar/Sidebar.vue.js.map +1 -1
  216. package/dist/v2/components/sidebar/Sidebar.vue.script.js +1 -1
  217. package/dist/v2/components/sidebar/Sidebar.vue.script.js.map +1 -1
  218. package/dist/v2/constants.js +1 -1
  219. package/dist/v2/features/app/App.vue.script.js +1 -1
  220. package/dist/v2/features/app/app-state.js +6 -6
  221. package/dist/v2/features/app/components/AppSidebar.vue.script.js +2 -2
  222. package/dist/v2/features/app/components/CreateWorkspaceModal.vue.d.ts.map +1 -1
  223. package/dist/v2/features/app/components/CreateWorkspaceModal.vue.js.map +1 -1
  224. package/dist/v2/features/app/components/CreateWorkspaceModal.vue.script.js +4 -4
  225. package/dist/v2/features/app/components/CreateWorkspaceModal.vue.script.js.map +1 -1
  226. package/dist/v2/features/app/components/DesktopTab.vue.d.ts +4 -4
  227. package/dist/v2/features/app/components/DesktopTab.vue.d.ts.map +1 -1
  228. package/dist/v2/features/app/components/DesktopTab.vue.js +1 -1
  229. package/dist/v2/features/app/components/DesktopTab.vue.js.map +1 -1
  230. package/dist/v2/features/app/components/DesktopTab.vue.script.js +2 -2
  231. package/dist/v2/features/app/components/DesktopTab.vue.script.js.map +1 -1
  232. package/dist/v2/features/app/helpers/routes.d.ts +2 -2
  233. package/dist/v2/features/app/helpers/routes.d.ts.map +1 -1
  234. package/dist/v2/features/app/helpers/routes.js +11 -5
  235. package/dist/v2/features/app/helpers/routes.js.map +1 -1
  236. package/dist/v2/features/app/index.js +2 -2
  237. package/dist/v2/features/collection/DocumentCollection.vue.script.js +1 -1
  238. package/dist/v2/features/collection/OperationCollection.vue.script.js +1 -1
  239. package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.js +1 -1
  240. package/dist/v2/features/collection/components/Runner/components/Runner.vue.d.ts +16 -0
  241. package/dist/v2/features/collection/components/Runner/components/Runner.vue.d.ts.map +1 -0
  242. package/dist/v2/features/collection/components/Runner/components/Runner.vue.js +7 -0
  243. package/dist/v2/features/collection/components/Runner/components/Runner.vue.js.map +1 -0
  244. package/dist/v2/features/collection/components/Runner/components/Runner.vue.script.js +220 -0
  245. package/dist/v2/features/collection/components/Runner/components/Runner.vue.script.js.map +1 -0
  246. package/dist/{components/Sidebar/SidebarButton.vue.d.ts → v2/features/collection/components/Runner/components/RunnerCard.vue.d.ts} +8 -6
  247. package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.d.ts.map +1 -0
  248. package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.js +7 -0
  249. package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.js.map +1 -0
  250. package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.script.js +45 -0
  251. package/dist/v2/features/collection/components/Runner/components/RunnerCard.vue.script.js.map +1 -0
  252. package/dist/{components/Form/LabelInput.vue.d.ts → v2/features/collection/components/Runner/components/RunnerOrderItem.vue.d.ts} +12 -8
  253. package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.d.ts.map +1 -0
  254. package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.js +7 -0
  255. package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.js.map +1 -0
  256. package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.script.js +73 -0
  257. package/dist/v2/features/collection/components/Runner/components/RunnerOrderItem.vue.script.js.map +1 -0
  258. package/dist/{components/AddressBar/AddressBarHistory.vue.d.ts → v2/features/collection/components/Runner/components/RunnerResultRow.vue.d.ts} +11 -5
  259. package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.d.ts.map +1 -0
  260. package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.js +7 -0
  261. package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.js.map +1 -0
  262. package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.script.js +124 -0
  263. package/dist/v2/features/collection/components/Runner/components/RunnerResultRow.vue.script.js.map +1 -0
  264. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.d.ts +17 -0
  265. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.d.ts.map +1 -0
  266. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.js +7 -0
  267. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.js.map +1 -0
  268. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.script.js +126 -0
  269. package/dist/v2/features/collection/components/Runner/components/RunnerResults.vue.script.js.map +1 -0
  270. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.d.ts +18 -0
  271. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.d.ts.map +1 -0
  272. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.js +7 -0
  273. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.js.map +1 -0
  274. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.script.js +180 -0
  275. package/dist/v2/features/collection/components/Runner/components/RunnerTree.vue.script.js.map +1 -0
  276. package/dist/{components/Sidebar/Actions/EditSidebarListElement.vue.d.ts → v2/features/collection/components/Runner/components/RunnerTreeExample.vue.d.ts} +6 -5
  277. package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.d.ts.map +1 -0
  278. package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.js +7 -0
  279. package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.js.map +1 -0
  280. package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.script.js +44 -0
  281. package/dist/v2/features/collection/components/Runner/components/RunnerTreeExample.vue.script.js.map +1 -0
  282. package/dist/{components/DataTable/DataTableText.vue.d.ts → v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.d.ts} +6 -4
  283. package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.d.ts.map +1 -0
  284. package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.js +7 -0
  285. package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.js.map +1 -0
  286. package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.script.js +53 -0
  287. package/dist/v2/features/collection/components/Runner/components/RunnerTreeGroup.vue.script.js.map +1 -0
  288. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.d.ts +23 -0
  289. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.d.ts.map +1 -0
  290. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.js +7 -0
  291. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.js.map +1 -0
  292. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.script.js +75 -0
  293. package/dist/v2/features/collection/components/Runner/components/RunnerTreeOperation.vue.script.js.map +1 -0
  294. package/dist/v2/features/collection/components/Runner/hooks/index.d.ts +3 -0
  295. package/dist/v2/features/collection/components/Runner/hooks/index.d.ts.map +1 -0
  296. package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.d.ts +73 -0
  297. package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.d.ts.map +1 -0
  298. package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.js +190 -0
  299. package/dist/v2/features/collection/components/Runner/hooks/use-runner-execution.js.map +1 -0
  300. package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.d.ts +46 -0
  301. package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.d.ts.map +1 -0
  302. package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.js +114 -0
  303. package/dist/v2/features/collection/components/Runner/hooks/use-runner-selection.js.map +1 -0
  304. package/dist/v2/features/collection/components/Runner/index.d.ts +2 -0
  305. package/dist/v2/features/collection/components/Runner/index.d.ts.map +1 -0
  306. package/dist/v2/features/collection/components/Tabs.vue.d.ts.map +1 -1
  307. package/dist/v2/features/collection/components/Tabs.vue.js.map +1 -1
  308. package/dist/v2/features/collection/components/Tabs.vue.script.js +3 -2
  309. package/dist/v2/features/collection/components/Tabs.vue.script.js.map +1 -1
  310. package/dist/v2/features/command-palette/TheCommandPalette.vue.script.js +2 -2
  311. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js.map +1 -1
  312. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.script.js +3 -3
  313. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.script.js.map +1 -1
  314. package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.script.js +1 -1
  315. package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js +1 -1
  316. package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js.map +1 -1
  317. package/dist/{libs → v2/features/command-palette/helpers}/parse-curl.d.ts +2 -2
  318. package/dist/v2/features/command-palette/helpers/parse-curl.d.ts.map +1 -0
  319. package/dist/{libs → v2/features/command-palette/helpers}/parse-curl.js +1 -1
  320. package/dist/v2/features/command-palette/helpers/parse-curl.js.map +1 -0
  321. package/dist/v2/features/command-palette/hooks/use-command-palette-state.js +1 -1
  322. package/dist/v2/features/command-palette/index.d.ts +2 -0
  323. package/dist/v2/features/command-palette/index.d.ts.map +1 -1
  324. package/dist/v2/features/command-palette/index.js +3 -1
  325. package/dist/v2/features/editor/helpers/configure-language-support.js +3 -3
  326. package/dist/v2/features/editor/helpers/configure-language-support.js.map +1 -1
  327. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts +1 -1
  328. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts.map +1 -1
  329. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js +1 -1
  330. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js.map +1 -1
  331. package/dist/v2/features/editor/helpers/json/json-ast.d.ts +1 -1
  332. package/dist/v2/features/editor/helpers/json/json-ast.d.ts.map +1 -1
  333. package/dist/v2/features/editor/helpers/json/json-ast.js +1 -1
  334. package/dist/v2/features/editor/helpers/json/json-ast.js.map +1 -1
  335. package/dist/v2/features/editor/helpers/theme/load-css-variables.d.ts +1 -1
  336. package/dist/v2/features/editor/hooks/use-editor-markers.d.ts.map +1 -1
  337. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.d.ts.map +1 -1
  338. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.js.map +1 -1
  339. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.script.js +4 -4
  340. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.script.js.map +1 -1
  341. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.d.ts +5 -0
  342. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.d.ts.map +1 -1
  343. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.js.map +1 -1
  344. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.script.js +70 -13
  345. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.script.js.map +1 -1
  346. package/dist/v2/features/modal/Modal.vue.d.ts +8 -3
  347. package/dist/v2/features/modal/Modal.vue.d.ts.map +1 -1
  348. package/dist/v2/features/modal/Modal.vue.js.map +1 -1
  349. package/dist/v2/features/modal/Modal.vue.script.js +1 -1
  350. package/dist/v2/features/modal/Modal.vue.script.js.map +1 -1
  351. package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts +4 -3
  352. package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts.map +1 -1
  353. package/dist/v2/features/modal/helpers/create-api-client-modal.js +12 -3
  354. package/dist/v2/features/modal/helpers/create-api-client-modal.js.map +1 -1
  355. package/dist/v2/features/modal/helpers/types.d.ts +8 -0
  356. package/dist/v2/features/modal/helpers/types.d.ts.map +1 -0
  357. package/dist/v2/features/modal/index.d.ts +1 -0
  358. package/dist/v2/features/modal/index.d.ts.map +1 -1
  359. package/dist/v2/features/operation/Operation.vue.d.ts +3 -3
  360. package/dist/v2/features/operation/Operation.vue.d.ts.map +1 -1
  361. package/dist/v2/features/operation/Operation.vue.js.map +1 -1
  362. package/dist/v2/features/operation/Operation.vue.script.js +3 -1
  363. package/dist/v2/features/operation/Operation.vue.script.js.map +1 -1
  364. package/dist/v2/features/settings/CollectionSettings.vue.script.js +1 -1
  365. package/dist/v2/features/settings/components/Appearance.vue.d.ts +2 -2
  366. package/dist/v2/helpers/safe-run.d.ts +10 -0
  367. package/dist/v2/helpers/safe-run.d.ts.map +1 -0
  368. package/dist/v2/helpers/safe-run.js +19 -0
  369. package/dist/v2/helpers/safe-run.js.map +1 -0
  370. package/package.json +146 -169
  371. package/dist/assets/keycap.ascii.virtual.js +0 -6
  372. package/dist/assets/keycap.ascii.virtual.js.map +0 -1
  373. package/dist/components/AddressBar/AddressBar.vue.d.ts +0 -20
  374. package/dist/components/AddressBar/AddressBar.vue.d.ts.map +0 -1
  375. package/dist/components/AddressBar/AddressBar.vue.js +0 -9
  376. package/dist/components/AddressBar/AddressBar.vue.js.map +0 -1
  377. package/dist/components/AddressBar/AddressBar.vue.script.js +0 -204
  378. package/dist/components/AddressBar/AddressBar.vue.script.js.map +0 -1
  379. package/dist/components/AddressBar/AddressBarHistory.vue.d.ts.map +0 -1
  380. package/dist/components/AddressBar/AddressBarHistory.vue.js +0 -9
  381. package/dist/components/AddressBar/AddressBarHistory.vue.js.map +0 -1
  382. package/dist/components/AddressBar/AddressBarHistory.vue.script.js +0 -85
  383. package/dist/components/AddressBar/AddressBarHistory.vue.script.js.map +0 -1
  384. package/dist/components/AddressBar/httpStatusCodeColors.d.ts +0 -22
  385. package/dist/components/AddressBar/httpStatusCodeColors.d.ts.map +0 -1
  386. package/dist/components/AddressBar/httpStatusCodeColors.js +0 -20
  387. package/dist/components/AddressBar/httpStatusCodeColors.js.map +0 -1
  388. package/dist/components/AddressBar/index.d.ts +0 -2
  389. package/dist/components/AddressBar/index.d.ts.map +0 -1
  390. package/dist/components/AddressBar/index.js +0 -2
  391. package/dist/components/CodeInput/CodeInput.vue.d.ts +0 -101
  392. package/dist/components/CodeInput/CodeInput.vue.d.ts.map +0 -1
  393. package/dist/components/CodeInput/CodeInput.vue.js +0 -10
  394. package/dist/components/CodeInput/CodeInput.vue.js.map +0 -1
  395. package/dist/components/CodeInput/CodeInput.vue.script.js +0 -294
  396. package/dist/components/CodeInput/CodeInput.vue.script.js.map +0 -1
  397. package/dist/components/CodeInput/codeVariableWidget.d.ts +0 -17
  398. package/dist/components/CodeInput/codeVariableWidget.d.ts.map +0 -1
  399. package/dist/components/CodeInput/codeVariableWidget.js +0 -135
  400. package/dist/components/CodeInput/codeVariableWidget.js.map +0 -1
  401. package/dist/components/CodeInput/index.d.ts +0 -2
  402. package/dist/components/CodeInput/index.d.ts.map +0 -1
  403. package/dist/components/CodeInput/index.js +0 -2
  404. package/dist/components/CommandPalette/CommandActionForm.vue.d.ts +0 -31
  405. package/dist/components/CommandPalette/CommandActionForm.vue.d.ts.map +0 -1
  406. package/dist/components/CommandPalette/CommandActionForm.vue.js +0 -7
  407. package/dist/components/CommandPalette/CommandActionForm.vue.js.map +0 -1
  408. package/dist/components/CommandPalette/CommandActionForm.vue.script.js +0 -42
  409. package/dist/components/CommandPalette/CommandActionForm.vue.script.js.map +0 -1
  410. package/dist/components/CommandPalette/CommandActionInput.vue.d.ts +0 -15
  411. package/dist/components/CommandPalette/CommandActionInput.vue.d.ts.map +0 -1
  412. package/dist/components/CommandPalette/CommandActionInput.vue.js +0 -7
  413. package/dist/components/CommandPalette/CommandActionInput.vue.js.map +0 -1
  414. package/dist/components/CommandPalette/CommandActionInput.vue.script.js +0 -55
  415. package/dist/components/CommandPalette/CommandActionInput.vue.script.js.map +0 -1
  416. package/dist/components/CommandPalette/CommandPaletteCollection.vue.d.ts +0 -10
  417. package/dist/components/CommandPalette/CommandPaletteCollection.vue.d.ts.map +0 -1
  418. package/dist/components/CommandPalette/CommandPaletteCollection.vue.js +0 -7
  419. package/dist/components/CommandPalette/CommandPaletteCollection.vue.js.map +0 -1
  420. package/dist/components/CommandPalette/CommandPaletteCollection.vue.script.js +0 -78
  421. package/dist/components/CommandPalette/CommandPaletteCollection.vue.script.js.map +0 -1
  422. package/dist/components/CommandPalette/CommandPaletteExample.vue.d.ts +0 -16
  423. package/dist/components/CommandPalette/CommandPaletteExample.vue.d.ts.map +0 -1
  424. package/dist/components/CommandPalette/CommandPaletteExample.vue.js +0 -7
  425. package/dist/components/CommandPalette/CommandPaletteExample.vue.js.map +0 -1
  426. package/dist/components/CommandPalette/CommandPaletteExample.vue.script.js +0 -104
  427. package/dist/components/CommandPalette/CommandPaletteExample.vue.script.js.map +0 -1
  428. package/dist/components/CommandPalette/CommandPaletteImport.vue.d.ts +0 -10
  429. package/dist/components/CommandPalette/CommandPaletteImport.vue.d.ts.map +0 -1
  430. package/dist/components/CommandPalette/CommandPaletteImport.vue.js +0 -7
  431. package/dist/components/CommandPalette/CommandPaletteImport.vue.js.map +0 -1
  432. package/dist/components/CommandPalette/CommandPaletteImport.vue.script.js +0 -181
  433. package/dist/components/CommandPalette/CommandPaletteImport.vue.script.js.map +0 -1
  434. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.d.ts +0 -20
  435. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.d.ts.map +0 -1
  436. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.js +0 -9
  437. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.js.map +0 -1
  438. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.script.js +0 -108
  439. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.script.js.map +0 -1
  440. package/dist/components/CommandPalette/CommandPaletteServer.vue.d.ts +0 -16
  441. package/dist/components/CommandPalette/CommandPaletteServer.vue.d.ts.map +0 -1
  442. package/dist/components/CommandPalette/CommandPaletteServer.vue.js +0 -7
  443. package/dist/components/CommandPalette/CommandPaletteServer.vue.js.map +0 -1
  444. package/dist/components/CommandPalette/CommandPaletteServer.vue.script.js +0 -108
  445. package/dist/components/CommandPalette/CommandPaletteServer.vue.script.js.map +0 -1
  446. package/dist/components/CommandPalette/CommandPaletteTag.vue.d.ts +0 -10
  447. package/dist/components/CommandPalette/CommandPaletteTag.vue.d.ts.map +0 -1
  448. package/dist/components/CommandPalette/CommandPaletteTag.vue.js +0 -7
  449. package/dist/components/CommandPalette/CommandPaletteTag.vue.js.map +0 -1
  450. package/dist/components/CommandPalette/CommandPaletteTag.vue.script.js +0 -70
  451. package/dist/components/CommandPalette/CommandPaletteTag.vue.script.js.map +0 -1
  452. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.d.ts +0 -10
  453. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.d.ts.map +0 -1
  454. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.js +0 -7
  455. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.js.map +0 -1
  456. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.script.js +0 -49
  457. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.script.js.map +0 -1
  458. package/dist/components/CommandPalette/TheCommandPalette.vue.d.ts +0 -217
  459. package/dist/components/CommandPalette/TheCommandPalette.vue.d.ts.map +0 -1
  460. package/dist/components/CommandPalette/TheCommandPalette.vue.js +0 -9
  461. package/dist/components/CommandPalette/TheCommandPalette.vue.js.map +0 -1
  462. package/dist/components/CommandPalette/TheCommandPalette.vue.script.js +0 -323
  463. package/dist/components/CommandPalette/TheCommandPalette.vue.script.js.map +0 -1
  464. package/dist/components/CommandPalette/WatchModeToggle.vue.d.ts +0 -14
  465. package/dist/components/CommandPalette/WatchModeToggle.vue.d.ts.map +0 -1
  466. package/dist/components/CommandPalette/WatchModeToggle.vue.js +0 -7
  467. package/dist/components/CommandPalette/WatchModeToggle.vue.js.map +0 -1
  468. package/dist/components/CommandPalette/WatchModeToggle.vue.script.js +0 -40
  469. package/dist/components/CommandPalette/WatchModeToggle.vue.script.js.map +0 -1
  470. package/dist/components/CommandPalette/index.d.ts +0 -2
  471. package/dist/components/CommandPalette/index.d.ts.map +0 -1
  472. package/dist/components/CommandPalette/index.js +0 -2
  473. package/dist/components/DataTable/DataTable.vue.d.ts +0 -23
  474. package/dist/components/DataTable/DataTable.vue.d.ts.map +0 -1
  475. package/dist/components/DataTable/DataTable.vue.js +0 -7
  476. package/dist/components/DataTable/DataTable.vue.js.map +0 -1
  477. package/dist/components/DataTable/DataTable.vue.script.js +0 -30
  478. package/dist/components/DataTable/DataTable.vue.script.js.map +0 -1
  479. package/dist/components/DataTable/DataTableCell.vue.d.ts +0 -20
  480. package/dist/components/DataTable/DataTableCell.vue.d.ts.map +0 -1
  481. package/dist/components/DataTable/DataTableCell.vue.js +0 -7
  482. package/dist/components/DataTable/DataTableCell.vue.js.map +0 -1
  483. package/dist/components/DataTable/DataTableCell.vue.script.js +0 -21
  484. package/dist/components/DataTable/DataTableCell.vue.script.js.map +0 -1
  485. package/dist/components/DataTable/DataTableCheckbox.vue.d.ts +0 -15
  486. package/dist/components/DataTable/DataTableCheckbox.vue.d.ts.map +0 -1
  487. package/dist/components/DataTable/DataTableCheckbox.vue.js +0 -7
  488. package/dist/components/DataTable/DataTableCheckbox.vue.js.map +0 -1
  489. package/dist/components/DataTable/DataTableCheckbox.vue.script.js +0 -43
  490. package/dist/components/DataTable/DataTableCheckbox.vue.script.js.map +0 -1
  491. package/dist/components/DataTable/DataTableHeader.vue.d.ts +0 -14
  492. package/dist/components/DataTable/DataTableHeader.vue.d.ts.map +0 -1
  493. package/dist/components/DataTable/DataTableHeader.vue.js +0 -7
  494. package/dist/components/DataTable/DataTableHeader.vue.js.map +0 -1
  495. package/dist/components/DataTable/DataTableHeader.vue.script.js +0 -20
  496. package/dist/components/DataTable/DataTableHeader.vue.script.js.map +0 -1
  497. package/dist/components/DataTable/DataTableInput.vue.d.ts +0 -54
  498. package/dist/components/DataTable/DataTableInput.vue.d.ts.map +0 -1
  499. package/dist/components/DataTable/DataTableInput.vue.js +0 -9
  500. package/dist/components/DataTable/DataTableInput.vue.js.map +0 -1
  501. package/dist/components/DataTable/DataTableInput.vue.script.js +0 -164
  502. package/dist/components/DataTable/DataTableInput.vue.script.js.map +0 -1
  503. package/dist/components/DataTable/DataTableInputSelect.vue.d.ts +0 -17
  504. package/dist/components/DataTable/DataTableInputSelect.vue.d.ts.map +0 -1
  505. package/dist/components/DataTable/DataTableInputSelect.vue.js +0 -7
  506. package/dist/components/DataTable/DataTableInputSelect.vue.js.map +0 -1
  507. package/dist/components/DataTable/DataTableInputSelect.vue.script.js +0 -150
  508. package/dist/components/DataTable/DataTableInputSelect.vue.script.js.map +0 -1
  509. package/dist/components/DataTable/DataTableRow.vue.d.ts +0 -14
  510. package/dist/components/DataTable/DataTableRow.vue.d.ts.map +0 -1
  511. package/dist/components/DataTable/DataTableRow.vue.js +0 -13
  512. package/dist/components/DataTable/DataTableRow.vue.js.map +0 -1
  513. package/dist/components/DataTable/DataTableText.vue.d.ts.map +0 -1
  514. package/dist/components/DataTable/DataTableText.vue.js +0 -7
  515. package/dist/components/DataTable/DataTableText.vue.js.map +0 -1
  516. package/dist/components/DataTable/DataTableText.vue.script.js +0 -20
  517. package/dist/components/DataTable/DataTableText.vue.script.js.map +0 -1
  518. package/dist/components/DataTable/index.d.ts +0 -9
  519. package/dist/components/DataTable/index.d.ts.map +0 -1
  520. package/dist/components/DataTable/index.js +0 -9
  521. package/dist/components/EmptyState.vue.d.ts +0 -4
  522. package/dist/components/EmptyState.vue.d.ts.map +0 -1
  523. package/dist/components/EmptyState.vue.js +0 -9
  524. package/dist/components/EmptyState.vue.js.map +0 -1
  525. package/dist/components/EmptyState.vue.script.js +0 -41
  526. package/dist/components/EmptyState.vue.script.js.map +0 -1
  527. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.d.ts +0 -4
  528. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.d.ts.map +0 -1
  529. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.js +0 -7
  530. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.js.map +0 -1
  531. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.script.js +0 -111
  532. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.script.js.map +0 -1
  533. package/dist/components/Form/Form.vue.d.ts +0 -26
  534. package/dist/components/Form/Form.vue.d.ts.map +0 -1
  535. package/dist/components/Form/Form.vue.js +0 -7
  536. package/dist/components/Form/Form.vue.js.map +0 -1
  537. package/dist/components/Form/Form.vue.script.js +0 -82
  538. package/dist/components/Form/Form.vue.script.js.map +0 -1
  539. package/dist/components/Form/LabelInput.vue.d.ts.map +0 -1
  540. package/dist/components/Form/LabelInput.vue.js +0 -9
  541. package/dist/components/Form/LabelInput.vue.js.map +0 -1
  542. package/dist/components/Form/LabelInput.vue.script.js +0 -39
  543. package/dist/components/Form/LabelInput.vue.script.js.map +0 -1
  544. package/dist/components/HttpMethod/index.js +0 -2
  545. package/dist/components/ImportCollection/DropEventListener.vue.d.ts +0 -8
  546. package/dist/components/ImportCollection/DropEventListener.vue.d.ts.map +0 -1
  547. package/dist/components/ImportCollection/DropEventListener.vue.js +0 -7
  548. package/dist/components/ImportCollection/DropEventListener.vue.js.map +0 -1
  549. package/dist/components/ImportCollection/DropEventListener.vue.script.js +0 -91
  550. package/dist/components/ImportCollection/DropEventListener.vue.script.js.map +0 -1
  551. package/dist/components/ImportCollection/ImportCollectionListener.vue.d.ts +0 -14
  552. package/dist/components/ImportCollection/ImportCollectionListener.vue.d.ts.map +0 -1
  553. package/dist/components/ImportCollection/ImportCollectionListener.vue.js +0 -7
  554. package/dist/components/ImportCollection/ImportCollectionListener.vue.js.map +0 -1
  555. package/dist/components/ImportCollection/ImportCollectionListener.vue.script.js +0 -102
  556. package/dist/components/ImportCollection/ImportCollectionListener.vue.script.js.map +0 -1
  557. package/dist/components/ImportCollection/ImportCollectionModal.vue.d.ts +0 -13
  558. package/dist/components/ImportCollection/ImportCollectionModal.vue.d.ts.map +0 -1
  559. package/dist/components/ImportCollection/ImportCollectionModal.vue.js +0 -8
  560. package/dist/components/ImportCollection/ImportCollectionModal.vue.js.map +0 -1
  561. package/dist/components/ImportCollection/ImportCollectionModal.vue.script.js +0 -206
  562. package/dist/components/ImportCollection/ImportCollectionModal.vue.script.js.map +0 -1
  563. package/dist/components/ImportCollection/ImportNowButton.vue.d.ts +0 -13
  564. package/dist/components/ImportCollection/ImportNowButton.vue.d.ts.map +0 -1
  565. package/dist/components/ImportCollection/ImportNowButton.vue.js +0 -7
  566. package/dist/components/ImportCollection/ImportNowButton.vue.js.map +0 -1
  567. package/dist/components/ImportCollection/ImportNowButton.vue.script.js +0 -82
  568. package/dist/components/ImportCollection/ImportNowButton.vue.script.js.map +0 -1
  569. package/dist/components/ImportCollection/PasteEventListener.vue.d.ts +0 -8
  570. package/dist/components/ImportCollection/PasteEventListener.vue.d.ts.map +0 -1
  571. package/dist/components/ImportCollection/PasteEventListener.vue.js +0 -7
  572. package/dist/components/ImportCollection/PasteEventListener.vue.js.map +0 -1
  573. package/dist/components/ImportCollection/PasteEventListener.vue.script.js +0 -31
  574. package/dist/components/ImportCollection/PasteEventListener.vue.script.js.map +0 -1
  575. package/dist/components/ImportCollection/PrefetchError.vue.d.ts +0 -7
  576. package/dist/components/ImportCollection/PrefetchError.vue.d.ts.map +0 -1
  577. package/dist/components/ImportCollection/PrefetchError.vue.js +0 -7
  578. package/dist/components/ImportCollection/PrefetchError.vue.js.map +0 -1
  579. package/dist/components/ImportCollection/PrefetchError.vue.script.js +0 -32
  580. package/dist/components/ImportCollection/PrefetchError.vue.script.js.map +0 -1
  581. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.d.ts +0 -8
  582. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.d.ts.map +0 -1
  583. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.js +0 -7
  584. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.js.map +0 -1
  585. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.script.js +0 -21
  586. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.script.js.map +0 -1
  587. package/dist/components/ImportCollection/WorkspaceSelector.vue.d.ts +0 -4
  588. package/dist/components/ImportCollection/WorkspaceSelector.vue.d.ts.map +0 -1
  589. package/dist/components/ImportCollection/WorkspaceSelector.vue.js +0 -7
  590. package/dist/components/ImportCollection/WorkspaceSelector.vue.js.map +0 -1
  591. package/dist/components/ImportCollection/WorkspaceSelector.vue.script.js +0 -114
  592. package/dist/components/ImportCollection/WorkspaceSelector.vue.script.js.map +0 -1
  593. package/dist/components/ImportCollection/hooks/useUrlPrefetcher.d.ts +0 -39
  594. package/dist/components/ImportCollection/hooks/useUrlPrefetcher.d.ts.map +0 -1
  595. package/dist/components/ImportCollection/hooks/useUrlPrefetcher.js +0 -109
  596. package/dist/components/ImportCollection/hooks/useUrlPrefetcher.js.map +0 -1
  597. package/dist/components/ImportCollection/index.d.ts +0 -2
  598. package/dist/components/ImportCollection/index.d.ts.map +0 -1
  599. package/dist/components/ImportCollection/index.js +0 -2
  600. package/dist/components/ImportCollection/utils/get-openapi-version.d.ts +0 -5
  601. package/dist/components/ImportCollection/utils/get-openapi-version.d.ts.map +0 -1
  602. package/dist/components/ImportCollection/utils/get-openapi-version.js +0 -26
  603. package/dist/components/ImportCollection/utils/get-openapi-version.js.map +0 -1
  604. package/dist/components/ImportCollection/utils/import-collection.d.ts +0 -12
  605. package/dist/components/ImportCollection/utils/import-collection.d.ts.map +0 -1
  606. package/dist/components/ImportCollection/utils/import-collection.js +0 -23
  607. package/dist/components/ImportCollection/utils/import-collection.js.map +0 -1
  608. package/dist/components/ImportCollection/utils/is-document.d.ts +0 -3
  609. package/dist/components/ImportCollection/utils/is-document.d.ts.map +0 -1
  610. package/dist/components/ImportCollection/utils/is-document.js +0 -12
  611. package/dist/components/ImportCollection/utils/is-document.js.map +0 -1
  612. package/dist/components/ImportCollection/utils/is-url.d.ts +0 -5
  613. package/dist/components/ImportCollection/utils/is-url.d.ts.map +0 -1
  614. package/dist/components/ImportCollection/utils/is-url.js +0 -14
  615. package/dist/components/ImportCollection/utils/is-url.js.map +0 -1
  616. package/dist/components/ImportCollection/utils/workspace-store-is-empty.d.ts +0 -6
  617. package/dist/components/ImportCollection/utils/workspace-store-is-empty.d.ts.map +0 -1
  618. package/dist/components/ImportCollection/utils/workspace-store-is-empty.js +0 -13
  619. package/dist/components/ImportCollection/utils/workspace-store-is-empty.js.map +0 -1
  620. package/dist/components/OpenApiClientButton.vue.d.ts.map +0 -1
  621. package/dist/components/OpenApiClientButton.vue.js.map +0 -1
  622. package/dist/components/OpenApiClientButton.vue.script.js.map +0 -1
  623. package/dist/components/Search/useSearch.d.ts +0 -33
  624. package/dist/components/Search/useSearch.d.ts.map +0 -1
  625. package/dist/components/Search/useSearch.js +0 -110
  626. package/dist/components/Search/useSearch.js.map +0 -1
  627. package/dist/components/Server/ServerDropdown.vue.d.ts +0 -12
  628. package/dist/components/Server/ServerDropdown.vue.d.ts.map +0 -1
  629. package/dist/components/Server/ServerDropdown.vue.js +0 -7
  630. package/dist/components/Server/ServerDropdown.vue.js.map +0 -1
  631. package/dist/components/Server/ServerDropdown.vue.script.js +0 -133
  632. package/dist/components/Server/ServerDropdown.vue.script.js.map +0 -1
  633. package/dist/components/Server/ServerDropdownItem.vue.d.ts +0 -19
  634. package/dist/components/Server/ServerDropdownItem.vue.d.ts.map +0 -1
  635. package/dist/components/Server/ServerDropdownItem.vue.js +0 -9
  636. package/dist/components/Server/ServerDropdownItem.vue.js.map +0 -1
  637. package/dist/components/Server/ServerDropdownItem.vue.script.js +0 -90
  638. package/dist/components/Server/ServerDropdownItem.vue.script.js.map +0 -1
  639. package/dist/components/Server/ServerSelector.vue.d.ts +0 -17
  640. package/dist/components/Server/ServerSelector.vue.d.ts.map +0 -1
  641. package/dist/components/Server/ServerSelector.vue.js +0 -7
  642. package/dist/components/Server/ServerSelector.vue.js.map +0 -1
  643. package/dist/components/Server/ServerSelector.vue.script.js +0 -87
  644. package/dist/components/Server/ServerSelector.vue.script.js.map +0 -1
  645. package/dist/components/SideNav/DownloadAppButton.vue.d.ts +0 -4
  646. package/dist/components/SideNav/DownloadAppButton.vue.d.ts.map +0 -1
  647. package/dist/components/SideNav/DownloadAppButton.vue.js +0 -9
  648. package/dist/components/SideNav/DownloadAppButton.vue.js.map +0 -1
  649. package/dist/components/SideNav/DownloadAppButton.vue.script.js +0 -31
  650. package/dist/components/SideNav/DownloadAppButton.vue.script.js.map +0 -1
  651. package/dist/components/SideNav/SideHelp.vue.d.ts +0 -4
  652. package/dist/components/SideNav/SideHelp.vue.d.ts.map +0 -1
  653. package/dist/components/SideNav/SideHelp.vue.js +0 -7
  654. package/dist/components/SideNav/SideHelp.vue.js.map +0 -1
  655. package/dist/components/SideNav/SideHelp.vue.script.js +0 -102
  656. package/dist/components/SideNav/SideHelp.vue.script.js.map +0 -1
  657. package/dist/components/SideNav/SideNav.vue.d.ts +0 -4
  658. package/dist/components/SideNav/SideNav.vue.d.ts.map +0 -1
  659. package/dist/components/SideNav/SideNav.vue.js +0 -7
  660. package/dist/components/SideNav/SideNav.vue.js.map +0 -1
  661. package/dist/components/SideNav/SideNav.vue.script.js +0 -80
  662. package/dist/components/SideNav/SideNav.vue.script.js.map +0 -1
  663. package/dist/components/SideNav/SideNavGroup.vue.d.ts +0 -14
  664. package/dist/components/SideNav/SideNavGroup.vue.d.ts.map +0 -1
  665. package/dist/components/SideNav/SideNavGroup.vue.js +0 -7
  666. package/dist/components/SideNav/SideNavGroup.vue.js.map +0 -1
  667. package/dist/components/SideNav/SideNavGroup.vue.script.js +0 -16
  668. package/dist/components/SideNav/SideNavGroup.vue.script.js.map +0 -1
  669. package/dist/components/SideNav/SideNavLink.vue.d.ts +0 -23
  670. package/dist/components/SideNav/SideNavLink.vue.d.ts.map +0 -1
  671. package/dist/components/SideNav/SideNavLink.vue.js +0 -7
  672. package/dist/components/SideNav/SideNavLink.vue.js.map +0 -1
  673. package/dist/components/SideNav/SideNavLink.vue.script.js +0 -32
  674. package/dist/components/SideNav/SideNavLink.vue.script.js.map +0 -1
  675. package/dist/components/SideNav/SideNavRouterLink.vue.d.ts +0 -21
  676. package/dist/components/SideNav/SideNavRouterLink.vue.d.ts.map +0 -1
  677. package/dist/components/SideNav/SideNavRouterLink.vue.js +0 -7
  678. package/dist/components/SideNav/SideNavRouterLink.vue.js.map +0 -1
  679. package/dist/components/SideNav/SideNavRouterLink.vue.script.js +0 -34
  680. package/dist/components/SideNav/SideNavRouterLink.vue.script.js.map +0 -1
  681. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.d.ts +0 -14
  682. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.d.ts.map +0 -1
  683. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.js +0 -7
  684. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.js.map +0 -1
  685. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.script.js +0 -56
  686. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.script.js.map +0 -1
  687. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.d.ts.map +0 -1
  688. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.js +0 -7
  689. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.js.map +0 -1
  690. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.script.js +0 -31
  691. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.script.js.map +0 -1
  692. package/dist/components/Sidebar/Sidebar.vue.d.ts +0 -23
  693. package/dist/components/Sidebar/Sidebar.vue.d.ts.map +0 -1
  694. package/dist/components/Sidebar/Sidebar.vue.js +0 -9
  695. package/dist/components/Sidebar/Sidebar.vue.js.map +0 -1
  696. package/dist/components/Sidebar/Sidebar.vue.script.js +0 -71
  697. package/dist/components/Sidebar/Sidebar.vue.script.js.map +0 -1
  698. package/dist/components/Sidebar/SidebarButton.vue.d.ts.map +0 -1
  699. package/dist/components/Sidebar/SidebarButton.vue.js +0 -7
  700. package/dist/components/Sidebar/SidebarButton.vue.js.map +0 -1
  701. package/dist/components/Sidebar/SidebarButton.vue.script.js +0 -36
  702. package/dist/components/Sidebar/SidebarButton.vue.script.js.map +0 -1
  703. package/dist/components/Sidebar/SidebarList.vue.d.ts +0 -14
  704. package/dist/components/Sidebar/SidebarList.vue.d.ts.map +0 -1
  705. package/dist/components/Sidebar/SidebarList.vue.js +0 -13
  706. package/dist/components/Sidebar/SidebarList.vue.js.map +0 -1
  707. package/dist/components/Sidebar/SidebarListElement.vue.d.ts +0 -44
  708. package/dist/components/Sidebar/SidebarListElement.vue.d.ts.map +0 -1
  709. package/dist/components/Sidebar/SidebarListElement.vue.js +0 -10
  710. package/dist/components/Sidebar/SidebarListElement.vue.js.map +0 -1
  711. package/dist/components/Sidebar/SidebarListElement.vue.script.js +0 -128
  712. package/dist/components/Sidebar/SidebarListElement.vue.script.js.map +0 -1
  713. package/dist/components/Sidebar/SidebarListElementActions.vue.d.ts +0 -21
  714. package/dist/components/Sidebar/SidebarListElementActions.vue.d.ts.map +0 -1
  715. package/dist/components/Sidebar/SidebarListElementActions.vue.js +0 -7
  716. package/dist/components/Sidebar/SidebarListElementActions.vue.js.map +0 -1
  717. package/dist/components/Sidebar/SidebarListElementActions.vue.script.js +0 -97
  718. package/dist/components/Sidebar/SidebarListElementActions.vue.script.js.map +0 -1
  719. package/dist/components/Sidebar/SidebarToggle.vue.d.ts +0 -4
  720. package/dist/components/Sidebar/SidebarToggle.vue.d.ts.map +0 -1
  721. package/dist/components/Sidebar/SidebarToggle.vue.js +0 -7
  722. package/dist/components/Sidebar/SidebarToggle.vue.js.map +0 -1
  723. package/dist/components/Sidebar/SidebarToggle.vue.script.js +0 -47
  724. package/dist/components/Sidebar/SidebarToggle.vue.script.js.map +0 -1
  725. package/dist/components/Sidebar/index.d.ts +0 -2
  726. package/dist/components/Sidebar/index.d.ts.map +0 -1
  727. package/dist/components/Sidebar/index.js +0 -2
  728. package/dist/components/TopNav/TopNav.vue.d.ts +0 -10
  729. package/dist/components/TopNav/TopNav.vue.d.ts.map +0 -1
  730. package/dist/components/TopNav/TopNav.vue.js +0 -7
  731. package/dist/components/TopNav/TopNav.vue.js.map +0 -1
  732. package/dist/components/TopNav/TopNav.vue.script.js +0 -232
  733. package/dist/components/TopNav/TopNav.vue.script.js.map +0 -1
  734. package/dist/components/TopNav/TopNavItem.vue.d.ts +0 -24
  735. package/dist/components/TopNav/TopNavItem.vue.d.ts.map +0 -1
  736. package/dist/components/TopNav/TopNavItem.vue.js +0 -9
  737. package/dist/components/TopNav/TopNavItem.vue.js.map +0 -1
  738. package/dist/components/TopNav/TopNavItem.vue.script.js +0 -129
  739. package/dist/components/TopNav/TopNavItem.vue.script.js.map +0 -1
  740. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.d.ts +0 -33
  741. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.d.ts.map +0 -1
  742. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.js +0 -7
  743. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.js.map +0 -1
  744. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.script.js +0 -84
  745. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.script.js.map +0 -1
  746. package/dist/components/ViewLayout/index.d.ts +0 -2
  747. package/dist/components/ViewLayout/index.d.ts.map +0 -1
  748. package/dist/components/ViewLayout/index.js +0 -2
  749. package/dist/components/index.d.ts +0 -4
  750. package/dist/components/index.d.ts.map +0 -1
  751. package/dist/components/index.js +0 -4
  752. package/dist/constants.d.ts +0 -26
  753. package/dist/constants.d.ts.map +0 -1
  754. package/dist/constants.js +0 -27
  755. package/dist/constants.js.map +0 -1
  756. package/dist/data/httpHeaders.d.ts +0 -7
  757. package/dist/data/httpHeaders.d.ts.map +0 -1
  758. package/dist/data/httpHeaders.js +0 -539
  759. package/dist/data/httpHeaders.js.map +0 -1
  760. package/dist/hooks/index.d.ts +0 -5
  761. package/dist/hooks/index.d.ts.map +0 -1
  762. package/dist/hooks/index.js +0 -5
  763. package/dist/hooks/useClientConfig.d.ts +0 -198
  764. package/dist/hooks/useClientConfig.d.ts.map +0 -1
  765. package/dist/hooks/useClientConfig.js +0 -23
  766. package/dist/hooks/useClientConfig.js.map +0 -1
  767. package/dist/hooks/useFileDialog.d.ts.map +0 -1
  768. package/dist/hooks/useFileDialog.js.map +0 -1
  769. package/dist/hooks/useLayout.d.ts +0 -17
  770. package/dist/hooks/useLayout.d.ts.map +0 -1
  771. package/dist/hooks/useLayout.js +0 -13
  772. package/dist/hooks/useLayout.js.map +0 -1
  773. package/dist/hooks/useResponseBody.d.ts +0 -19
  774. package/dist/hooks/useResponseBody.d.ts.map +0 -1
  775. package/dist/hooks/useResponseBody.js +0 -32
  776. package/dist/hooks/useResponseBody.js.map +0 -1
  777. package/dist/hooks/useSidebar.d.ts +0 -26
  778. package/dist/hooks/useSidebar.d.ts.map +0 -1
  779. package/dist/hooks/useSidebar.js +0 -36
  780. package/dist/hooks/useSidebar.js.map +0 -1
  781. package/dist/layouts/App/ApiClientApp.vue.d.ts +0 -14
  782. package/dist/layouts/App/ApiClientApp.vue.d.ts.map +0 -1
  783. package/dist/layouts/App/ApiClientApp.vue.js +0 -8
  784. package/dist/layouts/App/ApiClientApp.vue.js.map +0 -1
  785. package/dist/layouts/App/ApiClientApp.vue.script.js +0 -80
  786. package/dist/layouts/App/ApiClientApp.vue.script.js.map +0 -1
  787. package/dist/layouts/App/MainLayout.vue.d.ts +0 -14
  788. package/dist/layouts/App/MainLayout.vue.d.ts.map +0 -1
  789. package/dist/layouts/App/MainLayout.vue.js +0 -7
  790. package/dist/layouts/App/MainLayout.vue.js.map +0 -1
  791. package/dist/layouts/App/MainLayout.vue.script.js +0 -22
  792. package/dist/layouts/App/MainLayout.vue.script.js.map +0 -1
  793. package/dist/layouts/App/create-api-client-app.d.ts +0 -4059
  794. package/dist/layouts/App/create-api-client-app.d.ts.map +0 -1
  795. package/dist/layouts/App/create-api-client-app.js +0 -36
  796. package/dist/layouts/App/create-api-client-app.js.map +0 -1
  797. package/dist/layouts/App/hotkeys.d.ts +0 -6
  798. package/dist/layouts/App/hotkeys.d.ts.map +0 -1
  799. package/dist/layouts/App/hotkeys.js +0 -74
  800. package/dist/layouts/App/hotkeys.js.map +0 -1
  801. package/dist/layouts/App/index.d.ts +0 -3
  802. package/dist/layouts/App/index.d.ts.map +0 -1
  803. package/dist/layouts/App/index.js +0 -3
  804. package/dist/layouts/Modal/ApiClientModal.vue.d.ts +0 -4
  805. package/dist/layouts/Modal/ApiClientModal.vue.d.ts.map +0 -1
  806. package/dist/layouts/Modal/ApiClientModal.vue.js +0 -7
  807. package/dist/layouts/Modal/ApiClientModal.vue.js.map +0 -1
  808. package/dist/layouts/Modal/ApiClientModal.vue.script.js +0 -41
  809. package/dist/layouts/Modal/ApiClientModal.vue.script.js.map +0 -1
  810. package/dist/layouts/Modal/create-api-client-modal.d.ts +0 -12
  811. package/dist/layouts/Modal/create-api-client-modal.d.ts.map +0 -1
  812. package/dist/layouts/Modal/create-api-client-modal.js +0 -34
  813. package/dist/layouts/Modal/create-api-client-modal.js.map +0 -1
  814. package/dist/layouts/Modal/index.d.ts +0 -3
  815. package/dist/layouts/Modal/index.d.ts.map +0 -1
  816. package/dist/layouts/Modal/index.js +0 -2
  817. package/dist/layouts/Web/ApiClientWeb.vue.d.ts +0 -4
  818. package/dist/layouts/Web/ApiClientWeb.vue.d.ts.map +0 -1
  819. package/dist/layouts/Web/ApiClientWeb.vue.js +0 -8
  820. package/dist/layouts/Web/ApiClientWeb.vue.js.map +0 -1
  821. package/dist/layouts/Web/ApiClientWeb.vue.script.js +0 -68
  822. package/dist/layouts/Web/ApiClientWeb.vue.script.js.map +0 -1
  823. package/dist/layouts/Web/create-api-client-web.d.ts +0 -4056
  824. package/dist/layouts/Web/create-api-client-web.d.ts.map +0 -1
  825. package/dist/layouts/Web/create-api-client-web.js +0 -33
  826. package/dist/layouts/Web/create-api-client-web.js.map +0 -1
  827. package/dist/layouts/Web/index.d.ts +0 -3
  828. package/dist/layouts/Web/index.d.ts.map +0 -1
  829. package/dist/layouts/Web/index.js +0 -3
  830. package/dist/libs/create-client.d.ts +0 -4127
  831. package/dist/libs/create-client.d.ts.map +0 -1
  832. package/dist/libs/create-client.js +0 -178
  833. package/dist/libs/create-client.js.map +0 -1
  834. package/dist/libs/electron.d.ts +0 -5
  835. package/dist/libs/electron.d.ts.map +0 -1
  836. package/dist/libs/electron.js +0 -9
  837. package/dist/libs/electron.js.map +0 -1
  838. package/dist/libs/env-helpers.d.ts +0 -17
  839. package/dist/libs/env-helpers.d.ts.map +0 -1
  840. package/dist/libs/env-helpers.js +0 -9
  841. package/dist/libs/env-helpers.js.map +0 -1
  842. package/dist/libs/environment-parser.d.ts +0 -8
  843. package/dist/libs/environment-parser.d.ts.map +0 -1
  844. package/dist/libs/environment-parser.js +0 -19
  845. package/dist/libs/environment-parser.js.map +0 -1
  846. package/dist/libs/errors.d.ts +0 -23
  847. package/dist/libs/errors.d.ts.map +0 -1
  848. package/dist/libs/errors.js +0 -34
  849. package/dist/libs/errors.js.map +0 -1
  850. package/dist/libs/event-bus.d.ts +0 -41
  851. package/dist/libs/event-bus.d.ts.map +0 -1
  852. package/dist/libs/event-bus.js +0 -43
  853. package/dist/libs/event-bus.js.map +0 -1
  854. package/dist/libs/extractAttachmentFilename.d.ts +0 -5
  855. package/dist/libs/extractAttachmentFilename.d.ts.map +0 -1
  856. package/dist/libs/extractAttachmentFilename.js +0 -23
  857. package/dist/libs/extractAttachmentFilename.js.map +0 -1
  858. package/dist/libs/find-request.d.ts +0 -75
  859. package/dist/libs/find-request.d.ts.map +0 -1
  860. package/dist/libs/find-request.js +0 -40
  861. package/dist/libs/find-request.js.map +0 -1
  862. package/dist/libs/get-request-uid-by-path-method.d.ts +0 -7
  863. package/dist/libs/get-request-uid-by-path-method.d.ts.map +0 -1
  864. package/dist/libs/get-request-uid-by-path-method.js +0 -19
  865. package/dist/libs/get-request-uid-by-path-method.js.map +0 -1
  866. package/dist/libs/getOpenApiDocumentDetails.d.ts +0 -10
  867. package/dist/libs/getOpenApiDocumentDetails.d.ts.map +0 -1
  868. package/dist/libs/getOpenApiDocumentDetails.js +0 -45
  869. package/dist/libs/getOpenApiDocumentDetails.js.map +0 -1
  870. package/dist/libs/hot-keys.d.ts +0 -35
  871. package/dist/libs/hot-keys.d.ts.map +0 -1
  872. package/dist/libs/hot-keys.js +0 -92
  873. package/dist/libs/hot-keys.js.map +0 -1
  874. package/dist/libs/importers/curl.d.ts +0 -27
  875. package/dist/libs/importers/curl.d.ts.map +0 -1
  876. package/dist/libs/importers/curl.js +0 -54
  877. package/dist/libs/importers/curl.js.map +0 -1
  878. package/dist/libs/importers/index.d.ts +0 -2
  879. package/dist/libs/importers/index.d.ts.map +0 -1
  880. package/dist/libs/importers/index.js +0 -2
  881. package/dist/libs/index.d.ts +0 -15
  882. package/dist/libs/index.d.ts.map +0 -1
  883. package/dist/libs/index.js +0 -17
  884. package/dist/libs/isUrl.d.ts +0 -3
  885. package/dist/libs/isUrl.d.ts.map +0 -1
  886. package/dist/libs/isUrl.js +0 -12
  887. package/dist/libs/isUrl.js.map +0 -1
  888. package/dist/libs/local-storage.d.ts +0 -9
  889. package/dist/libs/local-storage.d.ts.map +0 -1
  890. package/dist/libs/local-storage.js +0 -40
  891. package/dist/libs/local-storage.js.map +0 -1
  892. package/dist/libs/normalize-headers.d.ts +0 -14
  893. package/dist/libs/normalize-headers.d.ts.map +0 -1
  894. package/dist/libs/normalize-headers.js +0 -56
  895. package/dist/libs/normalize-headers.js.map +0 -1
  896. package/dist/libs/parse-curl.d.ts.map +0 -1
  897. package/dist/libs/parse-curl.js.map +0 -1
  898. package/dist/libs/postman.d.ts +0 -11
  899. package/dist/libs/postman.d.ts.map +0 -1
  900. package/dist/libs/postman.js +0 -40
  901. package/dist/libs/postman.js.map +0 -1
  902. package/dist/libs/send-request/build-request-security.d.ts +0 -19
  903. package/dist/libs/send-request/build-request-security.d.ts.map +0 -1
  904. package/dist/libs/send-request/build-request-security.js +0 -41
  905. package/dist/libs/send-request/build-request-security.js.map +0 -1
  906. package/dist/libs/send-request/create-fetch-body.d.ts +0 -18
  907. package/dist/libs/send-request/create-fetch-body.d.ts.map +0 -1
  908. package/dist/libs/send-request/create-fetch-body.js +0 -44
  909. package/dist/libs/send-request/create-fetch-body.js.map +0 -1
  910. package/dist/libs/send-request/create-fetch-headers.d.ts +0 -4
  911. package/dist/libs/send-request/create-fetch-headers.d.ts.map +0 -1
  912. package/dist/libs/send-request/create-fetch-headers.js +0 -15
  913. package/dist/libs/send-request/create-fetch-headers.js.map +0 -1
  914. package/dist/libs/send-request/create-fetch-query-params.d.ts +0 -11
  915. package/dist/libs/send-request/create-fetch-query-params.d.ts.map +0 -1
  916. package/dist/libs/send-request/create-fetch-query-params.js +0 -43
  917. package/dist/libs/send-request/create-fetch-query-params.js.map +0 -1
  918. package/dist/libs/send-request/create-request-operation.d.ts +0 -32
  919. package/dist/libs/send-request/create-request-operation.d.ts.map +0 -1
  920. package/dist/libs/send-request/create-request-operation.js +0 -172
  921. package/dist/libs/send-request/create-request-operation.js.map +0 -1
  922. package/dist/libs/send-request/decode-buffer.d.ts +0 -3
  923. package/dist/libs/send-request/decode-buffer.d.ts.map +0 -1
  924. package/dist/libs/send-request/decode-buffer.js +0 -13
  925. package/dist/libs/send-request/decode-buffer.js.map +0 -1
  926. package/dist/libs/send-request/index.d.ts +0 -4
  927. package/dist/libs/send-request/index.d.ts.map +0 -1
  928. package/dist/libs/send-request/index.js +0 -4
  929. package/dist/libs/send-request/set-request-cookies.d.ts +0 -27
  930. package/dist/libs/send-request/set-request-cookies.d.ts.map +0 -1
  931. package/dist/libs/send-request/set-request-cookies.js +0 -82
  932. package/dist/libs/send-request/set-request-cookies.js.map +0 -1
  933. package/dist/libs/string-template.d.ts +0 -21
  934. package/dist/libs/string-template.d.ts.map +0 -1
  935. package/dist/libs/string-template.js +0 -64
  936. package/dist/libs/string-template.js.map +0 -1
  937. package/dist/libs/validate-parameters.d.ts +0 -14
  938. package/dist/libs/validate-parameters.d.ts.map +0 -1
  939. package/dist/libs/validate-parameters.js +0 -35
  940. package/dist/libs/validate-parameters.js.map +0 -1
  941. package/dist/plugins/hooks/usePluginManager.d.ts +0 -8
  942. package/dist/plugins/hooks/usePluginManager.d.ts.map +0 -1
  943. package/dist/plugins/hooks/usePluginManager.js +0 -16
  944. package/dist/plugins/hooks/usePluginManager.js.map +0 -1
  945. package/dist/plugins/index.d.ts +0 -3
  946. package/dist/plugins/index.d.ts.map +0 -1
  947. package/dist/plugins/index.js +0 -3
  948. package/dist/plugins/plugin-manager.d.ts +0 -34
  949. package/dist/plugins/plugin-manager.d.ts.map +0 -1
  950. package/dist/plugins/plugin-manager.js +0 -38
  951. package/dist/plugins/plugin-manager.js.map +0 -1
  952. package/dist/routes.d.ts +0 -19
  953. package/dist/routes.d.ts.map +0 -1
  954. package/dist/routes.js +0 -225
  955. package/dist/routes.js.map +0 -1
  956. package/dist/store/active-entities.d.ts +0 -387
  957. package/dist/store/active-entities.d.ts.map +0 -1
  958. package/dist/store/active-entities.js +0 -139
  959. package/dist/store/active-entities.js.map +0 -1
  960. package/dist/store/collections.d.ts +0 -625
  961. package/dist/store/collections.d.ts.map +0 -1
  962. package/dist/store/collections.js +0 -76
  963. package/dist/store/collections.js.map +0 -1
  964. package/dist/store/cookies.d.ts +0 -69
  965. package/dist/store/cookies.d.ts.map +0 -1
  966. package/dist/store/cookies.js +0 -16
  967. package/dist/store/cookies.js.map +0 -1
  968. package/dist/store/environment.d.ts +0 -75
  969. package/dist/store/environment.d.ts.map +0 -1
  970. package/dist/store/environment.js +0 -38
  971. package/dist/store/environment.js.map +0 -1
  972. package/dist/store/events.d.ts +0 -35
  973. package/dist/store/events.d.ts.map +0 -1
  974. package/dist/store/events.js +0 -17
  975. package/dist/store/events.js.map +0 -1
  976. package/dist/store/import-spec.d.ts +0 -38
  977. package/dist/store/import-spec.d.ts.map +0 -1
  978. package/dist/store/import-spec.js +0 -56
  979. package/dist/store/import-spec.js.map +0 -1
  980. package/dist/store/index.d.ts +0 -3
  981. package/dist/store/index.d.ts.map +0 -1
  982. package/dist/store/index.js +0 -3
  983. package/dist/store/request-example.d.ts +0 -1022
  984. package/dist/store/request-example.d.ts.map +0 -1
  985. package/dist/store/request-example.js +0 -43
  986. package/dist/store/request-example.js.map +0 -1
  987. package/dist/store/requests.d.ts +0 -675
  988. package/dist/store/requests.d.ts.map +0 -1
  989. package/dist/store/requests.js +0 -104
  990. package/dist/store/requests.js.map +0 -1
  991. package/dist/store/router-params.d.ts +0 -18
  992. package/dist/store/router-params.d.ts.map +0 -1
  993. package/dist/store/router-params.js +0 -27
  994. package/dist/store/router-params.js.map +0 -1
  995. package/dist/store/security-schemes.d.ts +0 -942
  996. package/dist/store/security-schemes.d.ts.map +0 -1
  997. package/dist/store/security-schemes.js +0 -45
  998. package/dist/store/security-schemes.js.map +0 -1
  999. package/dist/store/servers.d.ts +0 -122
  1000. package/dist/store/servers.d.ts.map +0 -1
  1001. package/dist/store/servers.js +0 -41
  1002. package/dist/store/servers.js.map +0 -1
  1003. package/dist/store/store-context.d.ts +0 -26
  1004. package/dist/store/store-context.d.ts.map +0 -1
  1005. package/dist/store/store.d.ts +0 -4055
  1006. package/dist/store/store.d.ts.map +0 -1
  1007. package/dist/store/store.js +0 -180
  1008. package/dist/store/store.js.map +0 -1
  1009. package/dist/store/tags.d.ts +0 -176
  1010. package/dist/store/tags.d.ts.map +0 -1
  1011. package/dist/store/tags.js +0 -54
  1012. package/dist/store/tags.js.map +0 -1
  1013. package/dist/store/workspace.d.ts +0 -232
  1014. package/dist/store/workspace.d.ts.map +0 -1
  1015. package/dist/store/workspace.js +0 -57
  1016. package/dist/store/workspace.js.map +0 -1
  1017. package/dist/types/index.d.ts +0 -2
  1018. package/dist/types/index.d.ts.map +0 -1
  1019. package/dist/types/index.js +0 -0
  1020. package/dist/views/Collection/Collection.vue.d.ts +0 -4
  1021. package/dist/views/Collection/Collection.vue.d.ts.map +0 -1
  1022. package/dist/views/Collection/Collection.vue.js +0 -7
  1023. package/dist/views/Collection/Collection.vue.js.map +0 -1
  1024. package/dist/views/Collection/Collection.vue.script.js +0 -46
  1025. package/dist/views/Collection/Collection.vue.script.js.map +0 -1
  1026. package/dist/views/Collection/CollectionAuthentication.vue.d.ts +0 -4
  1027. package/dist/views/Collection/CollectionAuthentication.vue.d.ts.map +0 -1
  1028. package/dist/views/Collection/CollectionAuthentication.vue.js +0 -9
  1029. package/dist/views/Collection/CollectionAuthentication.vue.js.map +0 -1
  1030. package/dist/views/Collection/CollectionAuthentication.vue.script.js +0 -52
  1031. package/dist/views/Collection/CollectionAuthentication.vue.script.js.map +0 -1
  1032. package/dist/views/Collection/CollectionCookies.vue.d.ts +0 -4
  1033. package/dist/views/Collection/CollectionCookies.vue.d.ts.map +0 -1
  1034. package/dist/views/Collection/CollectionCookies.vue.js +0 -7
  1035. package/dist/views/Collection/CollectionCookies.vue.js.map +0 -1
  1036. package/dist/views/Collection/CollectionCookies.vue.script.js +0 -18
  1037. package/dist/views/Collection/CollectionCookies.vue.script.js.map +0 -1
  1038. package/dist/views/Collection/CollectionEnvironment.vue.d.ts +0 -4
  1039. package/dist/views/Collection/CollectionEnvironment.vue.d.ts.map +0 -1
  1040. package/dist/views/Collection/CollectionEnvironment.vue.js +0 -8
  1041. package/dist/views/Collection/CollectionEnvironment.vue.js.map +0 -1
  1042. package/dist/views/Collection/CollectionEnvironment.vue.script.js +0 -238
  1043. package/dist/views/Collection/CollectionEnvironment.vue.script.js.map +0 -1
  1044. package/dist/views/Collection/CollectionInfoForm.vue.d.ts +0 -4
  1045. package/dist/views/Collection/CollectionInfoForm.vue.d.ts.map +0 -1
  1046. package/dist/views/Collection/CollectionInfoForm.vue.js +0 -9
  1047. package/dist/views/Collection/CollectionInfoForm.vue.js.map +0 -1
  1048. package/dist/views/Collection/CollectionInfoForm.vue.script.js +0 -73
  1049. package/dist/views/Collection/CollectionInfoForm.vue.script.js.map +0 -1
  1050. package/dist/views/Collection/CollectionNavigation.vue.d.ts.map +0 -1
  1051. package/dist/views/Collection/CollectionNavigation.vue.js +0 -7
  1052. package/dist/views/Collection/CollectionNavigation.vue.js.map +0 -1
  1053. package/dist/views/Collection/CollectionNavigation.vue.script.js +0 -75
  1054. package/dist/views/Collection/CollectionNavigation.vue.script.js.map +0 -1
  1055. package/dist/views/Collection/CollectionOverview.vue.d.ts +0 -4
  1056. package/dist/views/Collection/CollectionOverview.vue.d.ts.map +0 -1
  1057. package/dist/views/Collection/CollectionOverview.vue.js +0 -7
  1058. package/dist/views/Collection/CollectionOverview.vue.js.map +0 -1
  1059. package/dist/views/Collection/CollectionOverview.vue.script.js +0 -42
  1060. package/dist/views/Collection/CollectionOverview.vue.script.js.map +0 -1
  1061. package/dist/views/Collection/CollectionScripts.vue.d.ts +0 -4
  1062. package/dist/views/Collection/CollectionScripts.vue.d.ts.map +0 -1
  1063. package/dist/views/Collection/CollectionScripts.vue.js +0 -7
  1064. package/dist/views/Collection/CollectionScripts.vue.js.map +0 -1
  1065. package/dist/views/Collection/CollectionScripts.vue.script.js +0 -18
  1066. package/dist/views/Collection/CollectionScripts.vue.script.js.map +0 -1
  1067. package/dist/views/Collection/CollectionServerForm.vue.d.ts +0 -11
  1068. package/dist/views/Collection/CollectionServerForm.vue.d.ts.map +0 -1
  1069. package/dist/views/Collection/CollectionServerForm.vue.js +0 -7
  1070. package/dist/views/Collection/CollectionServerForm.vue.js.map +0 -1
  1071. package/dist/views/Collection/CollectionServerForm.vue.script.js +0 -76
  1072. package/dist/views/Collection/CollectionServerForm.vue.script.js.map +0 -1
  1073. package/dist/views/Collection/CollectionServers.vue.d.ts +0 -4
  1074. package/dist/views/Collection/CollectionServers.vue.d.ts.map +0 -1
  1075. package/dist/views/Collection/CollectionServers.vue.js +0 -7
  1076. package/dist/views/Collection/CollectionServers.vue.js.map +0 -1
  1077. package/dist/views/Collection/CollectionServers.vue.script.js +0 -95
  1078. package/dist/views/Collection/CollectionServers.vue.script.js.map +0 -1
  1079. package/dist/views/Collection/CollectionSettings.vue.d.ts +0 -4
  1080. package/dist/views/Collection/CollectionSettings.vue.d.ts.map +0 -1
  1081. package/dist/views/Collection/CollectionSettings.vue.js +0 -7
  1082. package/dist/views/Collection/CollectionSettings.vue.js.map +0 -1
  1083. package/dist/views/Collection/CollectionSettings.vue.script.js +0 -87
  1084. package/dist/views/Collection/CollectionSettings.vue.script.js.map +0 -1
  1085. package/dist/views/Collection/CollectionSync.vue.d.ts +0 -4
  1086. package/dist/views/Collection/CollectionSync.vue.d.ts.map +0 -1
  1087. package/dist/views/Collection/CollectionSync.vue.js +0 -7
  1088. package/dist/views/Collection/CollectionSync.vue.js.map +0 -1
  1089. package/dist/views/Collection/CollectionSync.vue.script.js +0 -18
  1090. package/dist/views/Collection/CollectionSync.vue.script.js.map +0 -1
  1091. package/dist/views/Collection/components/EnvironmentForm.vue.d.ts +0 -14
  1092. package/dist/views/Collection/components/EnvironmentForm.vue.d.ts.map +0 -1
  1093. package/dist/views/Collection/components/EnvironmentForm.vue.js +0 -9
  1094. package/dist/views/Collection/components/EnvironmentForm.vue.js.map +0 -1
  1095. package/dist/views/Collection/components/EnvironmentForm.vue.script.js +0 -284
  1096. package/dist/views/Collection/components/EnvironmentForm.vue.script.js.map +0 -1
  1097. package/dist/views/Collection/components/MarkdownInput.vue.d.ts +0 -17
  1098. package/dist/views/Collection/components/MarkdownInput.vue.d.ts.map +0 -1
  1099. package/dist/views/Collection/components/MarkdownInput.vue.js +0 -9
  1100. package/dist/views/Collection/components/MarkdownInput.vue.js.map +0 -1
  1101. package/dist/views/Collection/components/MarkdownInput.vue.script.js +0 -92
  1102. package/dist/views/Collection/components/MarkdownInput.vue.script.js.map +0 -1
  1103. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.d.ts +0 -16
  1104. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.d.ts.map +0 -1
  1105. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.js +0 -7
  1106. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.js.map +0 -1
  1107. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.script.js +0 -74
  1108. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.script.js.map +0 -1
  1109. package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.d.ts +0 -28
  1110. package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.d.ts.map +0 -1
  1111. package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.js +0 -66
  1112. package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.js.map +0 -1
  1113. package/dist/views/Components/CodeSnippet/helpers/get-har-request.d.ts +0 -16
  1114. package/dist/views/Components/CodeSnippet/helpers/get-har-request.d.ts.map +0 -1
  1115. package/dist/views/Components/CodeSnippet/helpers/get-har-request.js +0 -86
  1116. package/dist/views/Components/CodeSnippet/helpers/get-har-request.js.map +0 -1
  1117. package/dist/views/Components/CodeSnippet/helpers/get-snippet.d.ts.map +0 -1
  1118. package/dist/views/Components/CodeSnippet/helpers/get-snippet.js.map +0 -1
  1119. package/dist/views/Components/CodeSnippet/index.d.ts +0 -5
  1120. package/dist/views/Components/CodeSnippet/index.d.ts.map +0 -1
  1121. package/dist/views/Components/CodeSnippet/index.js +0 -5
  1122. package/dist/views/Cookies/CookieForm.vue.d.ts +0 -4
  1123. package/dist/views/Cookies/CookieForm.vue.d.ts.map +0 -1
  1124. package/dist/views/Cookies/CookieForm.vue.js +0 -7
  1125. package/dist/views/Cookies/CookieForm.vue.js.map +0 -1
  1126. package/dist/views/Cookies/CookieForm.vue.script.js +0 -50
  1127. package/dist/views/Cookies/CookieForm.vue.script.js.map +0 -1
  1128. package/dist/views/Cookies/CookieModal.vue.d.ts +0 -22
  1129. package/dist/views/Cookies/CookieModal.vue.d.ts.map +0 -1
  1130. package/dist/views/Cookies/CookieModal.vue.js +0 -9
  1131. package/dist/views/Cookies/CookieModal.vue.js.map +0 -1
  1132. package/dist/views/Cookies/CookieModal.vue.script.js +0 -83
  1133. package/dist/views/Cookies/CookieModal.vue.script.js.map +0 -1
  1134. package/dist/views/Cookies/CookieRaw.vue.d.ts +0 -4
  1135. package/dist/views/Cookies/CookieRaw.vue.d.ts.map +0 -1
  1136. package/dist/views/Cookies/Cookies.vue.d.ts +0 -4
  1137. package/dist/views/Cookies/Cookies.vue.d.ts.map +0 -1
  1138. package/dist/views/Cookies/Cookies.vue.js +0 -7
  1139. package/dist/views/Cookies/Cookies.vue.js.map +0 -1
  1140. package/dist/views/Cookies/Cookies.vue.script.js +0 -156
  1141. package/dist/views/Cookies/Cookies.vue.script.js.map +0 -1
  1142. package/dist/views/Environment/Environment.vue.d.ts +0 -4
  1143. package/dist/views/Environment/Environment.vue.d.ts.map +0 -1
  1144. package/dist/views/Environment/Environment.vue.js +0 -7
  1145. package/dist/views/Environment/Environment.vue.js.map +0 -1
  1146. package/dist/views/Environment/Environment.vue.script.js +0 -384
  1147. package/dist/views/Environment/Environment.vue.script.js.map +0 -1
  1148. package/dist/views/Environment/EnvironmentColorModal.vue.d.ts +0 -15
  1149. package/dist/views/Environment/EnvironmentColorModal.vue.d.ts.map +0 -1
  1150. package/dist/views/Environment/EnvironmentColorModal.vue.js +0 -7
  1151. package/dist/views/Environment/EnvironmentColorModal.vue.js.map +0 -1
  1152. package/dist/views/Environment/EnvironmentColorModal.vue.script.js +0 -47
  1153. package/dist/views/Environment/EnvironmentColorModal.vue.script.js.map +0 -1
  1154. package/dist/views/Environment/EnvironmentColors.vue.d.ts +0 -14
  1155. package/dist/views/Environment/EnvironmentColors.vue.d.ts.map +0 -1
  1156. package/dist/views/Environment/EnvironmentColors.vue.js +0 -7
  1157. package/dist/views/Environment/EnvironmentColors.vue.js.map +0 -1
  1158. package/dist/views/Environment/EnvironmentColors.vue.script.js +0 -126
  1159. package/dist/views/Environment/EnvironmentColors.vue.script.js.map +0 -1
  1160. package/dist/views/Environment/EnvironmentModal.vue.d.ts +0 -27
  1161. package/dist/views/Environment/EnvironmentModal.vue.d.ts.map +0 -1
  1162. package/dist/views/Environment/EnvironmentModal.vue.js +0 -7
  1163. package/dist/views/Environment/EnvironmentModal.vue.js.map +0 -1
  1164. package/dist/views/Environment/EnvironmentModal.vue.script.js +0 -122
  1165. package/dist/views/Environment/EnvironmentModal.vue.script.js.map +0 -1
  1166. package/dist/views/Environment/EnvironmentVariableDropdown.vue.d.ts +0 -22
  1167. package/dist/views/Environment/EnvironmentVariableDropdown.vue.d.ts.map +0 -1
  1168. package/dist/views/Environment/EnvironmentVariableDropdown.vue.js +0 -7
  1169. package/dist/views/Environment/EnvironmentVariableDropdown.vue.js.map +0 -1
  1170. package/dist/views/Environment/EnvironmentVariableDropdown.vue.script.js +0 -133
  1171. package/dist/views/Environment/EnvironmentVariableDropdown.vue.script.js.map +0 -1
  1172. package/dist/views/Environment/handle-drag.d.ts +0 -13
  1173. package/dist/views/Environment/handle-drag.d.ts.map +0 -1
  1174. package/dist/views/Environment/handle-drag.js +0 -38
  1175. package/dist/views/Environment/handle-drag.js.map +0 -1
  1176. package/dist/views/Request/Request.vue.d.ts +0 -21
  1177. package/dist/views/Request/Request.vue.d.ts.map +0 -1
  1178. package/dist/views/Request/Request.vue.js +0 -9
  1179. package/dist/views/Request/Request.vue.js.map +0 -1
  1180. package/dist/views/Request/Request.vue.script.js +0 -117
  1181. package/dist/views/Request/Request.vue.script.js.map +0 -1
  1182. package/dist/views/Request/RequestRoot.vue.d.ts +0 -14
  1183. package/dist/views/Request/RequestRoot.vue.d.ts.map +0 -1
  1184. package/dist/views/Request/RequestRoot.vue.js +0 -9
  1185. package/dist/views/Request/RequestRoot.vue.js.map +0 -1
  1186. package/dist/views/Request/RequestRoot.vue.script.js +0 -158
  1187. package/dist/views/Request/RequestRoot.vue.script.js.map +0 -1
  1188. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.d.ts +0 -22
  1189. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.d.ts.map +0 -1
  1190. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.js +0 -7
  1191. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.js.map +0 -1
  1192. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.script.js +0 -52
  1193. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.script.js.map +0 -1
  1194. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.d.ts +0 -31
  1195. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.d.ts.map +0 -1
  1196. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.js +0 -7
  1197. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.js.map +0 -1
  1198. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.script.js +0 -214
  1199. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.script.js.map +0 -1
  1200. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.d.ts +0 -10
  1201. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.d.ts.map +0 -1
  1202. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.js +0 -7
  1203. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.js.map +0 -1
  1204. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.script.js +0 -106
  1205. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.script.js.map +0 -1
  1206. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.d.ts +0 -222
  1207. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.d.ts.map +0 -1
  1208. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.js +0 -9
  1209. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.js.map +0 -1
  1210. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.script.js +0 -216
  1211. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.script.js.map +0 -1
  1212. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.d.ts +0 -220
  1213. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.d.ts.map +0 -1
  1214. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.js +0 -9
  1215. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.js.map +0 -1
  1216. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.script.js +0 -116
  1217. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.script.js.map +0 -1
  1218. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.d.ts +0 -43
  1219. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.d.ts.map +0 -1
  1220. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.js +0 -7
  1221. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.js.map +0 -1
  1222. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.script.js +0 -73
  1223. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.script.js.map +0 -1
  1224. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.d.ts +0 -31
  1225. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.d.ts.map +0 -1
  1226. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.js +0 -7
  1227. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.js.map +0 -1
  1228. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.script.js +0 -205
  1229. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.script.js.map +0 -1
  1230. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.d.ts +0 -9
  1231. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.d.ts.map +0 -1
  1232. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.js +0 -39
  1233. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.js.map +0 -1
  1234. package/dist/views/Request/RequestSection/RequestAuth/index.d.ts +0 -4
  1235. package/dist/views/Request/RequestSection/RequestAuth/index.d.ts.map +0 -1
  1236. package/dist/views/Request/RequestSection/RequestAuth/index.js +0 -4
  1237. package/dist/views/Request/RequestSection/RequestBody.vue.d.ts +0 -16
  1238. package/dist/views/Request/RequestSection/RequestBody.vue.d.ts.map +0 -1
  1239. package/dist/views/Request/RequestSection/RequestBody.vue.js +0 -9
  1240. package/dist/views/Request/RequestSection/RequestBody.vue.js.map +0 -1
  1241. package/dist/views/Request/RequestSection/RequestBody.vue.script.js +0 -477
  1242. package/dist/views/Request/RequestSection/RequestBody.vue.script.js.map +0 -1
  1243. package/dist/views/Request/RequestSection/RequestCodeExample.vue.d.ts +0 -15
  1244. package/dist/views/Request/RequestSection/RequestCodeExample.vue.d.ts.map +0 -1
  1245. package/dist/views/Request/RequestSection/RequestCodeExample.vue.js +0 -9
  1246. package/dist/views/Request/RequestSection/RequestCodeExample.vue.js.map +0 -1
  1247. package/dist/views/Request/RequestSection/RequestCodeExample.vue.script.js +0 -187
  1248. package/dist/views/Request/RequestSection/RequestCodeExample.vue.script.js.map +0 -1
  1249. package/dist/views/Request/RequestSection/RequestParams.vue.d.ts +0 -25
  1250. package/dist/views/Request/RequestSection/RequestParams.vue.d.ts.map +0 -1
  1251. package/dist/views/Request/RequestSection/RequestParams.vue.js +0 -7
  1252. package/dist/views/Request/RequestSection/RequestParams.vue.js.map +0 -1
  1253. package/dist/views/Request/RequestSection/RequestParams.vue.script.js +0 -180
  1254. package/dist/views/Request/RequestSection/RequestParams.vue.script.js.map +0 -1
  1255. package/dist/views/Request/RequestSection/RequestPathParams.vue.d.ts +0 -18
  1256. package/dist/views/Request/RequestSection/RequestPathParams.vue.d.ts.map +0 -1
  1257. package/dist/views/Request/RequestSection/RequestPathParams.vue.js +0 -7
  1258. package/dist/views/Request/RequestSection/RequestPathParams.vue.js.map +0 -1
  1259. package/dist/views/Request/RequestSection/RequestPathParams.vue.script.js +0 -115
  1260. package/dist/views/Request/RequestSection/RequestPathParams.vue.script.js.map +0 -1
  1261. package/dist/views/Request/RequestSection/RequestSection.vue.d.ts +0 -20
  1262. package/dist/views/Request/RequestSection/RequestSection.vue.d.ts.map +0 -1
  1263. package/dist/views/Request/RequestSection/RequestSection.vue.js +0 -9
  1264. package/dist/views/Request/RequestSection/RequestSection.vue.js.map +0 -1
  1265. package/dist/views/Request/RequestSection/RequestSection.vue.script.js +0 -297
  1266. package/dist/views/Request/RequestSection/RequestSection.vue.script.js.map +0 -1
  1267. package/dist/views/Request/RequestSection/RequestTable.vue.d.ts +0 -47
  1268. package/dist/views/Request/RequestSection/RequestTable.vue.d.ts.map +0 -1
  1269. package/dist/views/Request/RequestSection/RequestTable.vue.js +0 -9
  1270. package/dist/views/Request/RequestSection/RequestTable.vue.js.map +0 -1
  1271. package/dist/views/Request/RequestSection/RequestTable.vue.script.js +0 -266
  1272. package/dist/views/Request/RequestSection/RequestTable.vue.script.js.map +0 -1
  1273. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.d.ts +0 -8
  1274. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.d.ts.map +0 -1
  1275. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.js +0 -9
  1276. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.js.map +0 -1
  1277. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.script.js +0 -64
  1278. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.script.js.map +0 -1
  1279. package/dist/views/Request/RequestSection/helpers/filter-security-requirements.d.ts +0 -6
  1280. package/dist/views/Request/RequestSection/helpers/filter-security-requirements.d.ts.map +0 -1
  1281. package/dist/views/Request/RequestSection/helpers/filter-security-requirements.js +0 -38
  1282. package/dist/views/Request/RequestSection/helpers/filter-security-requirements.js.map +0 -1
  1283. package/dist/views/Request/RequestSection/helpers/getting-started.d.ts +0 -6
  1284. package/dist/views/Request/RequestSection/helpers/getting-started.d.ts.map +0 -1
  1285. package/dist/views/Request/RequestSection/helpers/getting-started.js +0 -17
  1286. package/dist/views/Request/RequestSection/helpers/getting-started.js.map +0 -1
  1287. package/dist/views/Request/RequestSection/helpers/update-scheme.d.ts +0 -8
  1288. package/dist/views/Request/RequestSection/helpers/update-scheme.d.ts.map +0 -1
  1289. package/dist/views/Request/RequestSection/helpers/update-scheme.js +0 -22
  1290. package/dist/views/Request/RequestSection/helpers/update-scheme.js.map +0 -1
  1291. package/dist/views/Request/RequestSection/index.d.ts +0 -3
  1292. package/dist/views/Request/RequestSection/index.d.ts.map +0 -1
  1293. package/dist/views/Request/RequestSection/index.js +0 -3
  1294. package/dist/views/Request/RequestSidebar.vue.d.ts +0 -16
  1295. package/dist/views/Request/RequestSidebar.vue.d.ts.map +0 -1
  1296. package/dist/views/Request/RequestSidebar.vue.js +0 -9
  1297. package/dist/views/Request/RequestSidebar.vue.js.map +0 -1
  1298. package/dist/views/Request/RequestSidebar.vue.script.js +0 -307
  1299. package/dist/views/Request/RequestSidebar.vue.script.js.map +0 -1
  1300. package/dist/views/Request/RequestSidebarItem.vue.d.ts +0 -43
  1301. package/dist/views/Request/RequestSidebarItem.vue.d.ts.map +0 -1
  1302. package/dist/views/Request/RequestSidebarItem.vue.js +0 -10
  1303. package/dist/views/Request/RequestSidebarItem.vue.js.map +0 -1
  1304. package/dist/views/Request/RequestSidebarItem.vue.script.js +0 -475
  1305. package/dist/views/Request/RequestSidebarItem.vue.script.js.map +0 -1
  1306. package/dist/views/Request/RequestSidebarItemMenu.vue.d.ts +0 -16
  1307. package/dist/views/Request/RequestSidebarItemMenu.vue.d.ts.map +0 -1
  1308. package/dist/views/Request/RequestSidebarItemMenu.vue.js +0 -9
  1309. package/dist/views/Request/RequestSidebarItemMenu.vue.js.map +0 -1
  1310. package/dist/views/Request/RequestSidebarItemMenu.vue.script.js +0 -222
  1311. package/dist/views/Request/RequestSidebarItemMenu.vue.script.js.map +0 -1
  1312. package/dist/views/Request/RequestSubpageHeader.vue.d.ts +0 -22
  1313. package/dist/views/Request/RequestSubpageHeader.vue.d.ts.map +0 -1
  1314. package/dist/views/Request/RequestSubpageHeader.vue.js +0 -9
  1315. package/dist/views/Request/RequestSubpageHeader.vue.js.map +0 -1
  1316. package/dist/views/Request/RequestSubpageHeader.vue.script.js +0 -92
  1317. package/dist/views/Request/RequestSubpageHeader.vue.script.js.map +0 -1
  1318. package/dist/views/Request/ResponseSection/RequestHeaders.vue.d.ts +0 -12
  1319. package/dist/views/Request/ResponseSection/RequestHeaders.vue.d.ts.map +0 -1
  1320. package/dist/views/Request/ResponseSection/RequestHeaders.vue.js +0 -7
  1321. package/dist/views/Request/ResponseSection/RequestHeaders.vue.js.map +0 -1
  1322. package/dist/views/Request/ResponseSection/RequestHeaders.vue.script.js +0 -77
  1323. package/dist/views/Request/ResponseSection/RequestHeaders.vue.script.js.map +0 -1
  1324. package/dist/views/Request/ResponseSection/ResponseBody.vue.d.ts +0 -14
  1325. package/dist/views/Request/ResponseSection/ResponseBody.vue.d.ts.map +0 -1
  1326. package/dist/views/Request/ResponseSection/ResponseBody.vue.js +0 -9
  1327. package/dist/views/Request/ResponseSection/ResponseBody.vue.js.map +0 -1
  1328. package/dist/views/Request/ResponseSection/ResponseBody.vue.script.js +0 -91
  1329. package/dist/views/Request/ResponseSection/ResponseBody.vue.script.js.map +0 -1
  1330. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.d.ts +0 -9
  1331. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.d.ts.map +0 -1
  1332. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.js +0 -7
  1333. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.js.map +0 -1
  1334. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.script.js +0 -35
  1335. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.script.js.map +0 -1
  1336. package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.d.ts +0 -14
  1337. package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.d.ts.map +0 -1
  1338. package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.js +0 -14
  1339. package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.js.map +0 -1
  1340. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.d.ts +0 -11
  1341. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.d.ts.map +0 -1
  1342. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.js +0 -9
  1343. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.js.map +0 -1
  1344. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.script.js +0 -64
  1345. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.script.js.map +0 -1
  1346. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.d.ts +0 -9
  1347. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.d.ts.map +0 -1
  1348. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.js +0 -9
  1349. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.js.map +0 -1
  1350. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.script.js +0 -54
  1351. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.script.js.map +0 -1
  1352. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.d.ts +0 -7
  1353. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.d.ts.map +0 -1
  1354. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.js +0 -7
  1355. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.js.map +0 -1
  1356. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.script.js +0 -85
  1357. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.script.js.map +0 -1
  1358. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.d.ts +0 -11
  1359. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.d.ts.map +0 -1
  1360. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.js +0 -7
  1361. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.js.map +0 -1
  1362. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.script.js +0 -25
  1363. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.script.js.map +0 -1
  1364. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.d.ts +0 -13
  1365. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.d.ts.map +0 -1
  1366. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.js +0 -8
  1367. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.js.map +0 -1
  1368. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.script.js +0 -51
  1369. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.script.js.map +0 -1
  1370. package/dist/views/Request/ResponseSection/ResponseCookies.vue.d.ts +0 -11
  1371. package/dist/views/Request/ResponseSection/ResponseCookies.vue.d.ts.map +0 -1
  1372. package/dist/views/Request/ResponseSection/ResponseCookies.vue.js +0 -7
  1373. package/dist/views/Request/ResponseSection/ResponseCookies.vue.js.map +0 -1
  1374. package/dist/views/Request/ResponseSection/ResponseCookies.vue.script.js +0 -39
  1375. package/dist/views/Request/ResponseSection/ResponseCookies.vue.script.js.map +0 -1
  1376. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.d.ts +0 -12
  1377. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.d.ts.map +0 -1
  1378. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.js +0 -9
  1379. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.js.map +0 -1
  1380. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.script.js +0 -98
  1381. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.script.js.map +0 -1
  1382. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.d.ts +0 -12
  1383. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.d.ts.map +0 -1
  1384. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.js +0 -7
  1385. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.js.map +0 -1
  1386. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.script.js +0 -77
  1387. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.script.js.map +0 -1
  1388. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.d.ts +0 -4
  1389. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.d.ts.map +0 -1
  1390. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.js +0 -9
  1391. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.js.map +0 -1
  1392. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.script.js +0 -44
  1393. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.script.js.map +0 -1
  1394. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.d.ts +0 -8
  1395. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.d.ts.map +0 -1
  1396. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.js +0 -7
  1397. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.js.map +0 -1
  1398. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.script.js +0 -64
  1399. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.script.js.map +0 -1
  1400. package/dist/views/Request/ResponseSection/ResponseSection.vue.d.ts +0 -15
  1401. package/dist/views/Request/ResponseSection/ResponseSection.vue.d.ts.map +0 -1
  1402. package/dist/views/Request/ResponseSection/ResponseSection.vue.js +0 -9
  1403. package/dist/views/Request/ResponseSection/ResponseSection.vue.js.map +0 -1
  1404. package/dist/views/Request/ResponseSection/ResponseSection.vue.script.js +0 -206
  1405. package/dist/views/Request/ResponseSection/ResponseSection.vue.script.js.map +0 -1
  1406. package/dist/views/Request/ResponseSection/index.d.ts +0 -3
  1407. package/dist/views/Request/ResponseSection/index.d.ts.map +0 -1
  1408. package/dist/views/Request/ResponseSection/index.js +0 -3
  1409. package/dist/views/Request/components/WorkspaceDropdown.vue.d.ts +0 -4
  1410. package/dist/views/Request/components/WorkspaceDropdown.vue.d.ts.map +0 -1
  1411. package/dist/views/Request/components/WorkspaceDropdown.vue.js +0 -7
  1412. package/dist/views/Request/components/WorkspaceDropdown.vue.js.map +0 -1
  1413. package/dist/views/Request/components/WorkspaceDropdown.vue.script.js +0 -182
  1414. package/dist/views/Request/components/WorkspaceDropdown.vue.script.js.map +0 -1
  1415. package/dist/views/Request/components/index.d.ts +0 -2
  1416. package/dist/views/Request/components/index.d.ts.map +0 -1
  1417. package/dist/views/Request/components/index.js +0 -2
  1418. package/dist/views/Request/consts/index.d.ts +0 -3
  1419. package/dist/views/Request/consts/index.d.ts.map +0 -1
  1420. package/dist/views/Request/consts/index.js +0 -3
  1421. package/dist/views/Request/consts/mediaTypes.d.ts +0 -20
  1422. package/dist/views/Request/consts/mediaTypes.d.ts.map +0 -1
  1423. package/dist/views/Request/consts/mediaTypes.js +0 -231
  1424. package/dist/views/Request/consts/mediaTypes.js.map +0 -1
  1425. package/dist/views/Request/consts/new-auth-options.d.ts +0 -107
  1426. package/dist/views/Request/consts/new-auth-options.d.ts.map +0 -1
  1427. package/dist/views/Request/consts/new-auth-options.js +0 -90
  1428. package/dist/views/Request/consts/new-auth-options.js.map +0 -1
  1429. package/dist/views/Request/handle-drag.d.ts +0 -9
  1430. package/dist/views/Request/handle-drag.d.ts.map +0 -1
  1431. package/dist/views/Request/handle-drag.js +0 -51
  1432. package/dist/views/Request/handle-drag.js.map +0 -1
  1433. package/dist/views/Request/hooks/useOpenApiWatcher.d.ts +0 -9
  1434. package/dist/views/Request/hooks/useOpenApiWatcher.d.ts.map +0 -1
  1435. package/dist/views/Request/hooks/useOpenApiWatcher.js +0 -96
  1436. package/dist/views/Request/hooks/useOpenApiWatcher.js.map +0 -1
  1437. package/dist/views/Request/libs/auth.d.ts +0 -27
  1438. package/dist/views/Request/libs/auth.d.ts.map +0 -1
  1439. package/dist/views/Request/libs/auth.js +0 -74
  1440. package/dist/views/Request/libs/auth.js.map +0 -1
  1441. package/dist/views/Request/libs/index.d.ts +0 -4
  1442. package/dist/views/Request/libs/index.d.ts.map +0 -1
  1443. package/dist/views/Request/libs/index.js +0 -4
  1444. package/dist/views/Request/libs/oauth2.d.ts +0 -43
  1445. package/dist/views/Request/libs/oauth2.d.ts.map +0 -1
  1446. package/dist/views/Request/libs/oauth2.js +0 -178
  1447. package/dist/views/Request/libs/oauth2.js.map +0 -1
  1448. package/dist/views/Request/libs/request.d.ts +0 -21
  1449. package/dist/views/Request/libs/request.d.ts.map +0 -1
  1450. package/dist/views/Request/libs/request.js +0 -46
  1451. package/dist/views/Request/libs/request.js.map +0 -1
  1452. package/dist/views/Request/libs/watch-mode.d.ts +0 -60
  1453. package/dist/views/Request/libs/watch-mode.d.ts.map +0 -1
  1454. package/dist/views/Request/libs/watch-mode.js +0 -375
  1455. package/dist/views/Request/libs/watch-mode.js.map +0 -1
  1456. package/dist/views/Request/types/index.d.ts +0 -2
  1457. package/dist/views/Request/types/index.d.ts.map +0 -1
  1458. package/dist/views/Request/types/index.js +0 -0
  1459. package/dist/views/Request/types/sidebar-item.d.ts +0 -30
  1460. package/dist/views/Request/types/sidebar-item.d.ts.map +0 -1
  1461. package/dist/views/Settings/Settings.vue.d.ts +0 -5
  1462. package/dist/views/Settings/Settings.vue.d.ts.map +0 -1
  1463. package/dist/views/Settings/Settings.vue.js +0 -7
  1464. package/dist/views/Settings/Settings.vue.js.map +0 -1
  1465. package/dist/views/Settings/Settings.vue.script.js +0 -28
  1466. package/dist/views/Settings/Settings.vue.script.js.map +0 -1
  1467. package/dist/views/Settings/SettingsGeneral.vue.d.ts +0 -4
  1468. package/dist/views/Settings/SettingsGeneral.vue.d.ts.map +0 -1
  1469. package/dist/views/Settings/SettingsGeneral.vue.js +0 -7
  1470. package/dist/views/Settings/SettingsGeneral.vue.js.map +0 -1
  1471. package/dist/views/Settings/SettingsGeneral.vue.script.js +0 -241
  1472. package/dist/views/Settings/SettingsGeneral.vue.script.js.map +0 -1
  1473. package/dist/views/Settings/components/SettingsAppearance.vue.d.ts +0 -4
  1474. package/dist/views/Settings/components/SettingsAppearance.vue.d.ts.map +0 -1
  1475. package/dist/views/Settings/components/SettingsAppearance.vue.js +0 -7
  1476. package/dist/views/Settings/components/SettingsAppearance.vue.js.map +0 -1
  1477. package/dist/views/Settings/components/SettingsAppearance.vue.script.js +0 -62
  1478. package/dist/views/Settings/components/SettingsAppearance.vue.script.js.map +0 -1
  1479. package/dist/views/Settings/components/SettingsSection.vue.d.ts +0 -15
  1480. package/dist/views/Settings/components/SettingsSection.vue.d.ts.map +0 -1
  1481. package/dist/views/Settings/components/SettingsSection.vue.js +0 -7
  1482. package/dist/views/Settings/components/SettingsSection.vue.js.map +0 -1
  1483. package/dist/views/Settings/components/SettingsSection.vue.script.js +0 -27
  1484. package/dist/views/Settings/components/SettingsSection.vue.script.js.map +0 -1
  1485. /package/dist/{components → v2/blocks/operation-block/components}/OpenApiClientButton.vue.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"RequestAuthDataTable.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border border-b-0 px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border border-t-0': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"RequestAuthDataTable.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":""}
@@ -19,7 +19,8 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
19
19
  securitySchemes: { default: () => ({}) },
20
20
  server: {},
21
21
  eventBus: {},
22
- meta: {}
22
+ meta: {},
23
+ options: {}
23
24
  },
24
25
  setup(__props, { expose: __expose }) {
25
26
  /** Currently selected authentication scheme based on the active tab index */
@@ -46,7 +47,7 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
46
47
  return (_ctx, _cache) => {
47
48
  return openBlock(), createElementBlock("form", { onSubmit: _cache[0] || (_cache[0] = withModifiers(() => {}, ["prevent"])) }, [shouldShowTabs.value ? (openBlock(), createElementBlock("div", {
48
49
  key: 0,
49
- class: normalizeClass(["box-content flex flex-wrap gap-x-2.5 overflow-hidden border border-b-0 px-3", { "border-x-0": !__props.isStatic }]),
50
+ class: normalizeClass(["box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3", { "border-x-0": !__props.isStatic }]),
50
51
  "data-testid": "auth-tabs"
51
52
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.selectedSchemeOptions, (option, index) => {
52
53
  return openBlock(), createElementBlock("div", {
@@ -59,7 +60,7 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
59
60
  }, [createElementVNode("span", _hoisted_2, toDisplayString(option.label), 1)], 10, _hoisted_1), isTabActive(index) ? (openBlock(), createElementBlock("div", _hoisted_3)) : createCommentVNode("", true)]);
60
61
  }), 128))], 2)) : createCommentVNode("", true), activeScheme.value ? (openBlock(), createBlock(unref(DataTable_default), {
61
62
  key: 1,
62
- class: normalizeClass(["flex-1", { "bg-b-1 rounded-b-lg border border-t-0": __props.isStatic }]),
63
+ class: normalizeClass(["flex-1", { "bg-b-1 rounded-b-lg border-x border-b": __props.isStatic }]),
63
64
  columns: [""],
64
65
  presentational: ""
65
66
  }, {
@@ -67,6 +68,7 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
67
68
  environment: __props.environment,
68
69
  eventBus: __props.eventBus,
69
70
  isStatic: __props.isStatic,
71
+ options: __props.options,
70
72
  proxyUrl: __props.proxyUrl,
71
73
  securitySchemes: __props.securitySchemes,
72
74
  selectedSecuritySchemas: activeScheme.value.value,
@@ -76,6 +78,7 @@ var RequestAuthDataTable_vue_vue_type_script_setup_true_lang_default = /* @__PUR
76
78
  "environment",
77
79
  "eventBus",
78
80
  "isStatic",
81
+ "options",
79
82
  "proxyUrl",
80
83
  "securitySchemes",
81
84
  "selectedSecuritySchemas",
@@ -1 +1 @@
1
- {"version":3,"file":"RequestAuthDataTable.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border border-b-0 px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border border-t-0': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;EA+CA,MAAM,eAAe,eACb,QAAA,sBAAsB,QAAA,iBAC9B;;;;;EAMA,MAAM,iBAAiB,eAAwB,QAAA,sBAAsB,SAAS,EAAC;;EAG/E,MAAM,mBAAmB,UACvB,QAAA,SAAS,KAAK,4BAA4B;GACxC;GACA,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,sBACJ,WAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,GAAG;GACH,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,eAAe,UAA2B,QAAA,oBAAoB;;AAGpE,WAAa,EACX,cACD,CAAA;;uBAIC,mBAqDO,QAAA,EArDA,UAAM,OAAA,OAAA,OAAA,KAAA,oBAAP,IAAe,CAAA,UAAA,CAAA,GAAA,EAAA,CAGX,eAAA,SAAA,WAAA,EADR,mBAwBM,OAAA;;IAtBJ,OAAK,eAAA,CAAC,+EAA6E,EAAA,cAAA,CAC1D,QAAA,UAAQ,CAAA,CAAA;IACjC,eAAY;yBACZ,mBAkBM,UAAA,MAAA,WAjBsB,QAAA,wBAAlB,QAAQ,UAAK;wBADvB,mBAkBM,OAAA;KAhBH,KAAK,OAAO;KACb,OAAM;QACN,mBAQS,UAAA;KAPP,OAAK,eAAA,CAAC,8GACE,YAAY,MAAK,GAAA,aAAA,WAAA,CAAA;KACzB,MAAK;KACJ,UAAK,WAAE,gBAAgB,MAAK;QAC7B,mBAEO,QAFP,YAEO,gBADF,OAAO,MAAK,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA,EAMX,YAAY,MAAK,IAAA,WAAA,EADzB,mBAEwH,OAFxH,WAEwH,IAAA,mBAAA,IAAA,KAAA,CAAA,CAAA;mDAMpH,aAAA,SAAA,WAAA,EADR,YAeY,MAAA,kBAAA,EAAA;;IAbV,OAAK,eAAA,CAAC,UAAQ,EAAA,yCACqC,QAAA,UAAQ,CAAA,CAAA;IAC1D,SAAS,CAAA,GAAI;IACd,gBAAA;;2BASgD,CARhD,YAQgD,wBAAA;KAP7C,aAAA,QAAA;KACA,UAAA,QAAA;KACA,UAAA,QAAA;KACA,UAAA,QAAA;KACA,iBAAA,QAAA;KACA,yBAAyB,aAAA,MAAa;KACtC,QAAA,QAAA;KACA,2BAAuB;;;;;;;;;;;qCAI5B,mBAKM,OAAA;;IAHJ,OAAK,eAAA,CAAC,mFAAiF,EAAA,gDAC7B,QAAA,UAAQ,CAAA,CAAA;MAAI,gCAExE,EAAA,EAAA,EAAA,GAAA"}
1
+ {"version":3,"file":"RequestAuthDataTable.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type {\n ApiReferenceEvents,\n AuthMeta,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport type { OAuth2Options } from '@/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue'\nimport type { SecuritySchemeOption } from '@/v2/blocks/scalar-auth-selector-block/helpers/security-scheme'\nimport { DataTable } from '@/v2/components/data-table'\n\nimport RequestAuthTab from './RequestAuthTab.vue'\n\nconst {\n environment,\n isStatic,\n selectedSchemeOptions,\n activeAuthIndex,\n securitySchemes = {},\n server,\n eventBus,\n meta,\n options,\n} = defineProps<{\n /** The current environment configuration */\n environment: XScalarEnvironment\n /** Controls border display for static (non-collapsible) layouts */\n isStatic: boolean\n /** Available authentication scheme options */\n selectedSchemeOptions: SecuritySchemeOption[]\n /** Index of the currently active authentication tab */\n activeAuthIndex: number\n /** Proxy URL */\n proxyUrl: string\n /** OpenAPI security scheme definitions */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Metadata for authentication context */\n meta: AuthMeta\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\n/** Currently selected authentication scheme based on the active tab index */\nconst activeScheme = computed<SecuritySchemeOption | undefined>(\n () => selectedSchemeOptions[activeAuthIndex],\n)\n\n/**\n * Whether to display multiple authentication tabs.\n * Only shows tabs when there are 2 or more schemes available.\n */\nconst shouldShowTabs = computed<boolean>(() => selectedSchemeOptions.length > 1)\n\n/** Handles authentication tab selection */\nconst handleTabChange = (index: number) =>\n eventBus.emit('auth:update:active-index', {\n index,\n meta,\n })\n\n/** Handles updates to OAuth scope selection */\nconst handleScopesUpdate = (\n params: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n): void =>\n eventBus.emit('auth:update:selected-scopes', {\n ...params,\n meta,\n })\n\n/** Determines if a tab is currently active */\nconst isTabActive = (index: number): boolean => activeAuthIndex === index\n\n/** Expose the active scheme for parent component access */\ndefineExpose({\n activeScheme,\n})\n</script>\n\n<template>\n <form @submit.prevent>\n <!-- Authentication Tabs -->\n <div\n v-if=\"shouldShowTabs\"\n class=\"box-content flex flex-wrap gap-x-2.5 overflow-hidden border-x border-t px-3\"\n :class=\"{ 'border-x-0': !isStatic }\"\n data-testid=\"auth-tabs\">\n <div\n v-for=\"(option, index) in selectedSchemeOptions\"\n :key=\"option.id\"\n class=\"relative z-1 -mb-[var(--scalar-border-width)] flex h-8\">\n <button\n class=\"floating-bg relative cursor-pointer border-b border-transparent py-1 text-sm font-medium transition-colors\"\n :class=\"isTabActive(index) ? 'text-c-1' : 'text-c-3'\"\n type=\"button\"\n @click=\"handleTabChange(index)\">\n <span class=\"relative z-10 font-medium whitespace-nowrap\">\n {{ option.label }}\n </span>\n </button>\n\n <!-- Active Tab Indicator -->\n <div\n v-if=\"isTabActive(index)\"\n class=\"absolute inset-x-1 bottom-[var(--scalar-border-width)] left-1/2 z-1 h-px w-full -translate-x-1/2 bg-current\" />\n </div>\n </div>\n\n <!-- Active Authentication Scheme Content -->\n <DataTable\n v-if=\"activeScheme\"\n class=\"flex-1\"\n :class=\"{ 'bg-b-1 rounded-b-lg border-x border-b': isStatic }\"\n :columns=\"['']\"\n presentational>\n <RequestAuthTab\n :environment\n :eventBus\n :isStatic\n :options\n :proxyUrl\n :securitySchemes\n :selectedSecuritySchemas=\"activeScheme.value\"\n :server\n @update:selectedScopes=\"handleScopesUpdate\" />\n </DataTable>\n\n <!-- Empty State -->\n <div\n v-else\n class=\"bg-b-1 text-c-3 flex min-h-16 items-center justify-center border-t px-4 text-sm\"\n :class=\"{ 'min-h-[calc(4rem+0.5px)] rounded-b-lg border': isStatic }\">\n No authentication selected\n </div>\n </form>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAmDA,MAAM,eAAe,eACb,QAAA,sBAAsB,QAAA,iBAC9B;;;;;EAMA,MAAM,iBAAiB,eAAwB,QAAA,sBAAsB,SAAS,EAAC;;EAG/E,MAAM,mBAAmB,UACvB,QAAA,SAAS,KAAK,4BAA4B;GACxC;GACA,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,sBACJ,WAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,GAAG;GACH,MAAG,QAAA;GACJ,CAAA;;EAGH,MAAM,eAAe,UAA2B,QAAA,oBAAoB;;AAGpE,WAAa,EACX,cACD,CAAA;;uBAIC,mBAsDO,QAAA,EAtDA,UAAM,OAAA,OAAA,OAAA,KAAA,oBAAP,IAAe,CAAA,UAAA,CAAA,GAAA,EAAA,CAGX,eAAA,SAAA,WAAA,EADR,mBAwBM,OAAA;;IAtBJ,OAAK,eAAA,CAAC,+EAA6E,EAAA,cAAA,CAC1D,QAAA,UAAQ,CAAA,CAAA;IACjC,eAAY;yBACZ,mBAkBM,UAAA,MAAA,WAjBsB,QAAA,wBAAlB,QAAQ,UAAK;wBADvB,mBAkBM,OAAA;KAhBH,KAAK,OAAO;KACb,OAAM;QACN,mBAQS,UAAA;KAPP,OAAK,eAAA,CAAC,8GACE,YAAY,MAAK,GAAA,aAAA,WAAA,CAAA;KACzB,MAAK;KACJ,UAAK,WAAE,gBAAgB,MAAK;QAC7B,mBAEO,QAFP,YAEO,gBADF,OAAO,MAAK,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA,EAMX,YAAY,MAAK,IAAA,WAAA,EADzB,mBAEwH,OAFxH,WAEwH,IAAA,mBAAA,IAAA,KAAA,CAAA,CAAA;mDAMpH,aAAA,SAAA,WAAA,EADR,YAgBY,MAAA,kBAAA,EAAA;;IAdV,OAAK,eAAA,CAAC,UAAQ,EAAA,yCACqC,QAAA,UAAQ,CAAA,CAAA;IAC1D,SAAS,CAAA,GAAI;IACd,gBAAA;;2BAUgD,CAThD,YASgD,wBAAA;KAR7C,aAAA,QAAA;KACA,UAAA,QAAA;KACA,UAAA,QAAA;KACA,SAAA,QAAA;KACA,UAAA,QAAA;KACA,iBAAA,QAAA;KACA,yBAAyB,aAAA,MAAa;KACtC,QAAA,QAAA;KACA,2BAAuB;;;;;;;;;;;;qCAI5B,mBAKM,OAAA;;IAHJ,OAAK,eAAA,CAAC,mFAAiF,EAAA,gDAC7B,QAAA,UAAQ,CAAA,CAAA;MAAI,gCAExE,EAAA,EAAA,EAAA,GAAA"}
@@ -24,8 +24,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
24
24
  inputFocus: () => any;
25
25
  inputBlur: () => any;
26
26
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
27
- onSelectVariable?: ((value: string) => any) | undefined;
28
27
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
28
+ onSelectVariable?: ((value: string) => any) | undefined;
29
29
  onInputFocus?: (() => any) | undefined;
30
30
  onInputBlur?: (() => any) | undefined;
31
31
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -2,6 +2,7 @@ import type { WorkspaceEventBus } from '@scalar/workspace-store/events';
2
2
  import type { MergedSecuritySchemes } from '@scalar/workspace-store/request-example';
3
3
  import type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments';
4
4
  import type { SecurityRequirementObject, ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document';
5
+ import { type OAuth2Options } from './OAuth2.vue.js';
5
6
  type __VLS_Props = {
6
7
  /** Current environment configuration */
7
8
  environment: XScalarEnvironment;
@@ -17,6 +18,8 @@ type __VLS_Props = {
17
18
  server: ServerObject | null;
18
19
  /** Event bus for authentication updates */
19
20
  eventBus: WorkspaceEventBus;
21
+ /** Any config options required for the OAuth2 flow */
22
+ options?: OAuth2Options;
20
23
  };
21
24
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
22
25
  "update:selectedScopes": (payload: Omit<{
@@ -1 +1 @@
1
- {"version":3,"file":"RequestAuthTab.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"names":[],"mappings":"AA0XA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2EAA2E,CAAA;AACnH,OAAO,KAAK,EAEV,yBAAyB,EACzB,YAAY,EACb,MAAM,8DAA8D,CAAA;AAerE,KAAK,WAAW,GAAG;IACjB,wCAAwC;IACxC,WAAW,EAAE,kBAAkB,CAAA;IAC/B,yFAAyF;IACzF,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,+BAA+B;IAC/B,uBAAuB,EAAE,yBAAyB,CAAA;IAClD,oGAAoG;IACpG,eAAe,EAAE,qBAAqB,CAAA;IACtC,mCAAmC;IACnC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,iBAAiB,CAAA;CAC5B,CAAC;AAsoBF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"RequestAuthTab.vue.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"names":[],"mappings":"AA8XA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2EAA2E,CAAA;AACnH,OAAO,KAAK,EAEV,yBAAyB,EACzB,YAAY,EACb,MAAM,8DAA8D,CAAA;AAKrE,OAAe,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAA;AAUzD,KAAK,WAAW,GAAG;IACjB,wCAAwC;IACxC,WAAW,EAAE,kBAAkB,CAAA;IAC/B,yFAAyF;IACzF,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,+BAA+B;IAC/B,uBAAuB,EAAE,yBAAyB,CAAA;IAClD,oGAAoG;IACpG,eAAe,EAAE,qBAAqB,CAAA;IACtC,mCAAmC;IACnC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,uDAAuD;IACvD,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,CAAC;AAyoBF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RequestAuthTab.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2 from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name=\"name\"\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server=\"server\"\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"RequestAuthTab.vue.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":""}
@@ -26,7 +26,8 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
26
26
  selectedSecuritySchemas: {},
27
27
  securitySchemes: {},
28
28
  server: {},
29
- eventBus: {}
29
+ eventBus: {},
30
+ options: {}
30
31
  },
31
32
  emits: ["update:selectedScopes"],
32
33
  setup(__props, { emit: __emit }) {
@@ -265,6 +266,7 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
265
266
  eventBus: __props.eventBus,
266
267
  flows: scheme.flows,
267
268
  name,
269
+ options: __props.options,
268
270
  proxyUrl: __props.proxyUrl,
269
271
  scheme,
270
272
  selectedScopes: scopes,
@@ -276,6 +278,7 @@ var RequestAuthTab_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
276
278
  "eventBus",
277
279
  "flows",
278
280
  "name",
281
+ "options",
279
282
  "proxyUrl",
280
283
  "scheme",
281
284
  "selectedScopes",
@@ -1 +1 @@
1
- {"version":3,"file":"RequestAuthTab.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2 from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name=\"name\"\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server=\"server\"\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4DA,MAAM,QAAQ;;;;;EAWd,MAAM,WAAW,eACf,OAAO,QAAQ,QAAA,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,EAAE,OAAO;GACpE,QAAQ,eAAe,QAAA,gBAAgB,MAAM;GAC7C;GACA;GACD,EAAE,CACL;;EAGA,MAAM,aAAa,IAAY,GAAE;;EAGjC,MAAM,eAAe,eAAuB;AAS1C,UARqB,SAAS,MAAM,SAAS,EAAE,aAAa;AAC1D,QAAI,QAAQ,SAAS,YAAY,QAAQ,SAAS,gBAChD,QAAO,EAAC;AAGV,WAAO,OAAO,KAAK,OAAO,SAAS,EAAE,CAAA;KACtC,CAEmB,SAAS,WAAW,MAAM,GAAG,WAAW,QAAQ;IACrE;EAED,MAAM,iBAAiB,SAAuB;AAC5C,cAAW,QAAQ;;;EAIrB,MAAM,qBAAqB,eAAwB,SAAS,MAAM,SAAS,EAAC;;;;;;EAO5E,MAAM,iBACJ,MACA,WACW;GACX,MAAM,kBAAkB,WAAW,KAAI;AAEvC,WAAQ,OAAO,MAAf;IACE,KAAK,SACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,KAAK;IACL,KAAK,UAAU;KACb,MAAM,YAAY,OAAO,KAAK,OAAO,SAAS,EAAE,CAAC,CAAC;KAClD,MAAM,cAAc,aAAa,SAAS;AAC1C,SAAI,CAAC,YACH,QAAO;AAET,YAAO,GAAG,gBAAgB,IAAI;;IAGhC,KAAK,OACH,QAAO,GAAG,gBAAgB,IAAI,OAAO;IAEvC,QACE,QAAO;;;;;;;EAQb,MAAM,gBAAgB,SAAiB,UACrC,aAAa,UAAU,WAAY,UAAU,KAAK,CAAC,aAAa;;EAGlE,MAAM,6BAA6C,QAAA,YAAY;EAE/D,MAAM,2BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAQ,GAAG;IAAS;GACrC;GACD,CAAA;EAEH,MAAM,6BACJ,SACA,SAEA,QAAA,SAAS,KAAK,uCAAuC;GACnD,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;EAEH,MAAM,oCACJ,SACA,SAEA,QAAA,SAAS,KAAK,+BAA+B;GAC3C,SAAS;IAAE,MAAM;IAAU,GAAG;IAAS;GACvC;GACD,CAAA;;EAGH,MAAM,sBACJ,MACA,UACS;AACT,SAAM,yBAAyB;IAC7B,IAAI,OAAO,KAAK,QAAA,wBAAwB;IACxC;IACA,GAAG;IACJ,CAAA;;;;;EAMH,MAAM,qBAAqB,SAAiB,UAA0B;GACpE,MAAM,cACJ;AAGF,UAAO,aAAa,SAAS,MAAK,GAC9B,GAAG,YAAY,oDAAoB,QAAA,WAAW,gBAAgB,OAC9D;;;2BAIJ,mBA0KW,UAAA,MAAA,WAzK0B,SAAA,QAAQ,EAAlC,QAAQ,MAAM,aAAM;4DACvB,MAAI,EAAA;KAKU,mBAAA,SAAsB,UAAA,WAAA,EAA1C,YAce,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CAZhB,YAYgB,MAAA,sBAAA,EAAA;OAXb,cAAY,cAAc,MAAM,OAAM;OACvC,OAAM;;8BASA,CARN,mBAQM,OARN,YAQM,CAPJ,mBAEI,KAFJ,YAEI,gBADC,cAAc,MAAM,OAAM,CAAA,EAAA,EAAA,EAGvB,OAAO,eAAA,WAAA,EADf,YAGgC,MAAA,sBAAA,EAAA;;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAMH,QAAQ,eAAW,CAAK,mBAAA,SAAA,WAAA,EAA5C,YAQe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADG,CANhB,YAMgB,MAAA,sBAAA,EAAA;OALb,cAAY,OAAO;OACpB,OAAM;;8BAG0B,CAFhC,YAEgC,MAAA,sBAAA,EAAA;QAD9B,OAAM;QACL,OAAO,OAAO;;;;;;KAKL,QAAQ,SAAI,UAAA,WAAA,EAA5B,mBA8CW,UAAA,EAAA,KAAA,GAAA,EAAA,CA5CW,OAAO,WAAM,YAAA,WAAA,EAAjC,YAYe,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAM,wBAAuB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAItG,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,kBAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;iBAImB,QAAQ,WAAM,WAAA,WAAA,EAAnC,mBA4BW,UAAA,EAAA,KAAA,GAAA,EAAA,CA3BT,YAae,MAAA,qBAAA,EAAA,MAAA;6BADe,CAX5B,YAW4B,mCAAA;OAV1B,OAAM;OACL,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,UAAA;OACC,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAmC,MAAsB,wBAAuB,EAAA,4BAA+B,GAAC,EAAI,KAAI;;8BAK3H,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,cAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;6DAMe,QAAQ,SAAI,YAAA,WAAA,EAAjC,mBA0BW,UAAA,EAAA,KAAA,GAAA,EAAA,CAzBT,YAWe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAT5B,YAS4B,mCAAA;OARzB,gBAAgB,sBAAoB;OACpC,aAAA,QAAA;OACA,YAAY,OAAO;OACpB,aAAY;OACX,wBAAiC,MAAM,iCAAgC,EAAA,MAAS,GAAC,EAAI,KAAI;;8BAI5F,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,UAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;eAEF,YAYe,MAAA,qBAAA,EAAA,MAAA;6BADe,CAV5B,YAU4B,mCAAA;OATzB,aAAA,QAAA;OACA,YAAY,OAAM;OACnB,aAAY;OACZ,MAAK;OACJ,wBAAiC,MAAoB,0BAAyB,EAAA,yBAA4B,GAAC,EAAI,KAAI;;8BAKtH,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,WAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;uBAMS,QAAQ,SAAI,YAAiB,QAAQ,SAAI,mBAAA,WAAA,EADtD,mBAgDW,UAAA,EAAA,KAAA,GAAA,EAAA;MA5CU,QAAQ,SAAI,mBAAA,CAAmC,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,UAAA,WAAA,EADlG,YAUY,uBAAA;;OALT,aAAA,QAAA;OACA,UAAA,QAAA;OACA;OACA;OACA,UAAA,QAAA;OACA;;;;;;;;MAGiB,OAAO,KAAK,OAAO,SAAK,EAAA,CAAA,CAAQ,SAAM,KAAA,WAAA,EAA1D,YAae,MAAA,qBAAA,EAAA,EAAA,KAAA,GAAA,EAAA;8BADP,CAXN,mBAWM,OAXN,YAWM,CAVJ,mBASM,OATN,YASM,EAAA,UAAA,KAAA,EARJ,mBAOS,UAAA,MAAA,WANiB,OAAO,QAAvB,GAAG,KAAK,QAAG;4BADrB,mBAOS,UAAA;SALD;SACL,OAAK,eAAE,kBAAkB,KAAK,IAAG,CAAA;SAClC,MAAK;SACJ,UAAK,WAAE,cAAc,IAAG;YACzB,mBAA4C,QAA5C,YAA4C,gBAAb,IAAG,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA;;;;wBAO1C,mBAeW,UAAA,MAAA,WAdmB,OAAO,QAA3B,OAAO,KAAK,QAAG;0DACjB,KAAG,EAAA,CAED,OAAO,SAAS,aAAa,KAAK,IAAG,IAAA,WAAA,EAD7C,YAWwE,gBAAA;;QATrE,aAAA,QAAA;QACA,UAAA,QAAA;QACA,OAAO,OAAO;QACR;QACN,UAAA,QAAA;QACA;QACA,gBAAgB;QAChB,QAAQ,QAAA;QACR,MAAM;QACN,4BAAwB,UAAU,mBAAmB,MAAM,MAAK;;;;;;;;;;;;;;6BAKvE,mBAKM,OALN,YAEuG,qHAGvG"}
1
+ {"version":3,"file":"RequestAuthTab.vue.script.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdownSummary } from '@scalar/components'\nimport type {\n SecretsApiKey,\n SecretsHttp,\n} from '@scalar/workspace-store/entities/auth'\nimport type {\n ApiReferenceEvents,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport { getResolvedRef } from '@scalar/workspace-store/helpers/get-resolved-ref'\nimport type {\n MergedSecuritySchemes,\n SecuritySchemeObjectSecret,\n} from '@scalar/workspace-store/request-example'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type {\n ApiKeyObject,\n SecurityRequirementObject,\n ServerObject,\n} from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { capitalize, computed, ref } from 'vue'\n\nimport { DataTableCell, DataTableRow } from '@/v2/components/data-table'\n\nimport OAuth2, { type OAuth2Options } from './OAuth2.vue'\nimport OpenIDConnect from './OpenIDConnect.vue'\nimport RequestAuthDataTableInput from './RequestAuthDataTableInput.vue'\n\ntype SecurityItem = {\n scheme: SecuritySchemeObjectSecret | undefined\n name: string\n scopes: string[]\n}\n\nconst {\n environment,\n isStatic,\n proxyUrl,\n selectedSecuritySchemas,\n securitySchemes,\n server,\n eventBus,\n options,\n} = defineProps<{\n /** Current environment configuration */\n environment: XScalarEnvironment\n /** Controls the display of certain borders which are used when we are non-collapsible */\n isStatic: boolean\n /** Proxy URL */\n proxyUrl: string\n /** Selected security schemes*/\n selectedSecuritySchemas: SecurityRequirementObject\n /** Merged security schemes from the document and the config together with the auth store secrets */\n securitySchemes: MergedSecuritySchemes\n /** Current server configuration */\n server: ServerObject | null\n /** Event bus for authentication updates */\n eventBus: WorkspaceEventBus\n /** Any config options required for the OAuth2 flow */\n options?: OAuth2Options\n}>()\n\nconst emits = defineEmits<{\n (\n e: 'update:selectedScopes',\n payload: Omit<ApiReferenceEvents['auth:update:selected-scopes'], 'meta'>,\n ): void\n}>()\n\n/**\n * Resolves security schemes from the OpenAPI document and combines them with their selected scopes.\n * Each item includes the scheme definition, name, and associated scopes.\n */\nconst security = computed<SecurityItem[]>(() =>\n Object.entries(selectedSecuritySchemas).map(([name, scopes = []]) => ({\n scheme: getResolvedRef(securitySchemes[name]),\n name,\n scopes,\n })),\n)\n\n/** Tracks which OAuth2 flow is currently active when multiple flows are available. */\nconst activeFlow = ref<string>('')\n\n/** Keeps the selected flow in sync with currently available flow keys. */\nconst selectedFlow = computed<string>(() => {\n const authFlowKeys = security.value.flatMap(({ scheme }) => {\n if (scheme?.type !== 'oauth2' && scheme?.type !== 'openIdConnect') {\n return []\n }\n\n return Object.keys(scheme.flows ?? {})\n })\n\n return authFlowKeys.includes(activeFlow.value) ? activeFlow.value : ''\n})\n\nconst setActiveFlow = (flow: string): void => {\n activeFlow.value = flow\n}\n\n/** Determines if multiple auth schemes are configured, which affects the UI layout. */\nconst hasMultipleSchemes = computed<boolean>(() => security.value.length > 1)\n\n/**\n * Generates a human-readable label for the security scheme.\n * Intentionally omits the description here — it is rendered separately as\n * rich text via ScalarMarkdownSummary so markdown formatting is preserved.\n */\nconst generateLabel = (\n name: string,\n scheme: SecuritySchemeObjectSecret,\n): string => {\n const capitalizedName = capitalize(name)\n\n switch (scheme.type) {\n case 'apiKey':\n return `${capitalizedName}: ${scheme.in}`\n\n case 'openIdConnect':\n case 'oauth2': {\n const firstFlow = Object.keys(scheme.flows ?? {})[0]\n const currentFlow = selectedFlow.value || firstFlow\n if (!currentFlow) {\n return capitalizedName\n }\n return `${capitalizedName}: ${currentFlow}`\n }\n\n case 'http':\n return `${capitalizedName}: ${scheme.scheme}`\n\n default:\n return capitalizedName\n }\n}\n\n/**\n * Determines if an OAuth2 flow tab should be active.\n * The first flow is active by default if no flow is explicitly selected.\n */\nconst isFlowActive = (flowKey: string, index: number): boolean =>\n selectedFlow.value === flowKey || (index === 0 && !selectedFlow.value)\n\n/** Computes the container class for static display mode. */\nconst getStaticBorderClass = (): string | false => isStatic && 'border-t'\n\nconst handleHttpSecretsUpdate = (\n payload: Omit<Partial<SecretsHttp>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'http', ...payload },\n name,\n })\n\nconst handleApiKeySecretsUpdate = (\n payload: Omit<Partial<SecretsApiKey>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme-secrets', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\nconst handleApiKeySecuritySchemeUpdate = (\n payload: Omit<Partial<ApiKeyObject>, 'type'>,\n name: string,\n): void =>\n eventBus.emit('auth:update:security-scheme', {\n payload: { type: 'apiKey', ...payload },\n name,\n })\n\n/** Handles scope selection updates for OAuth2 */\nconst handleScopesUpdate = (\n name: string,\n event: { scopes: string[] },\n): void => {\n emits('update:selectedScopes', {\n id: Object.keys(selectedSecuritySchemas),\n name,\n ...event,\n })\n}\n\n/**\n * Computes dynamic classes for OAuth2 flow tabs based on active state.\n */\nconst getFlowTabClasses = (flowKey: string, index: number): string => {\n const baseClasses =\n 'floating-bg text-c-3 relative cursor-pointer border-b border-transparent py-1 text-base font-medium'\n const activeClasses = '!text-c-1 !rounded-none border-b !border-current'\n\n return isFlowActive(flowKey, index)\n ? `${baseClasses} ${activeClasses} ${isStatic ? 'opacity-100' : ''}`\n : baseClasses\n}\n</script>\n<template>\n <template\n v-for=\"{ scheme, name, scopes } in security\"\n :key=\"name\">\n <!--\n Header row for AND'ed schemes: label (bold) and description (rich text) are\n combined.\n -->\n <DataTableRow v-if=\"hasMultipleSchemes && scheme\">\n <DataTableCell\n :aria-label=\"generateLabel(name, scheme)\"\n class=\"max-h-[auto]\">\n <div class=\"bg-b-1 min-w-0 flex-1 px-3 py-1.25\">\n <p class=\"text-c-1 leading-5.5 font-medium\">\n {{ generateLabel(name, scheme) }}\n </p>\n <ScalarMarkdownSummary\n v-if=\"scheme.description\"\n class=\"auth-description text-c-2 w-full\"\n :value=\"scheme.description\" />\n </div>\n </DataTableCell>\n </DataTableRow>\n\n <!-- Description: shown for single auth schemes with descriptions -->\n <DataTableRow v-if=\"scheme?.description && !hasMultipleSchemes\">\n <DataTableCell\n :aria-label=\"scheme.description\"\n class=\"max-h-[auto]\">\n <ScalarMarkdownSummary\n class=\"auth-description bg-b-1 text-c-2 min-w-0 flex-1 px-3 py-1.25\"\n :value=\"scheme.description\" />\n </DataTableCell>\n </DataTableRow>\n\n <!-- HTTP Authentication -->\n <template v-if=\"scheme?.type === 'http'\">\n <!-- Bearer Token -->\n <DataTableRow v-if=\"scheme.scheme === 'bearer'\">\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"Token\"\n type=\"password\"\n @update:modelValue=\"\n (v) => handleHttpSecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Bearer Token\n </RequestAuthDataTableInput>\n </DataTableRow>\n\n <!-- HTTP Basic Authentication -->\n <template v-else-if=\"scheme?.scheme === 'basic'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n class=\"text-c-2\"\n :environment\n :modelValue=\"scheme['x-scalar-secret-username']\"\n placeholder=\"janedoe\"\n required\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-username': v }, name)\n \">\n Username\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-password']\"\n placeholder=\"********\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleHttpSecretsUpdate({ 'x-scalar-secret-password': v }, name)\n \">\n Password\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n </template>\n\n <!-- API Key Authentication -->\n <template v-else-if=\"scheme?.type === 'apiKey'\">\n <DataTableRow>\n <RequestAuthDataTableInput\n :containerClass=\"getStaticBorderClass()\"\n :environment\n :modelValue=\"scheme.name\"\n placeholder=\"api-key\"\n @update:modelValue=\"\n (v) => handleApiKeySecuritySchemeUpdate({ name: v }, name)\n \">\n Name\n </RequestAuthDataTableInput>\n </DataTableRow>\n <DataTableRow>\n <RequestAuthDataTableInput\n :environment\n :modelValue=\"scheme['x-scalar-secret-token']\"\n placeholder=\"QUxMIFlPVVIgQkFTRSBBUkUgQkVMT05HIFRPIFVT\"\n type=\"password\"\n @update:modelValue=\"\n (v) =>\n handleApiKeySecretsUpdate({ 'x-scalar-secret-token': v }, name)\n \">\n Value\n </RequestAuthDataTableInput>\n </DataTableRow>\n </template>\n\n <!-- OAuth 2.0 / OpenID Connect Authentication -->\n <template\n v-else-if=\"scheme?.type === 'oauth2' || scheme?.type === 'openIdConnect'\">\n <!-- OpenID Connect -->\n <OpenIDConnect\n v-if=\"\n scheme?.type === 'openIdConnect' &&\n !Object.keys(scheme.flows ?? {}).length\n \"\n :environment\n :eventBus\n :getStaticBorderClass\n :name\n :proxyUrl\n :scheme />\n\n <!-- Flow selector tabs: shown when multiple flows are available -->\n <DataTableRow v-if=\"Object.keys(scheme.flows ?? {}).length > 1\">\n <div class=\"flex min-h-8 border-t text-base\">\n <div class=\"flex h-8 max-w-full gap-2.5 overflow-x-auto px-3\">\n <button\n v-for=\"(_, key, ind) in scheme.flows\"\n :key=\"key\"\n :class=\"getFlowTabClasses(key, ind)\"\n type=\"button\"\n @click=\"setActiveFlow(key)\">\n <span class=\"relative z-10\">{{ key }}</span>\n </button>\n </div>\n </div>\n </DataTableRow>\n\n <!-- OAuth2 flow configuration -->\n <template\n v-for=\"(_flow, key, ind) in scheme.flows\"\n :key=\"key\">\n <OAuth2\n v-if=\"scheme.flows && isFlowActive(key, ind)\"\n :environment\n :eventBus\n :flows=\"scheme.flows\"\n :name\n :options\n :proxyUrl\n :scheme\n :selectedScopes=\"scopes\"\n :server\n :type=\"key\"\n @update:selectedScopes=\"(event) => handleScopesUpdate(name, event)\" />\n </template>\n </template>\n\n <!-- Scheme is missing type -->\n <div\n v-else\n class=\"text-c-3 flex items-center justify-center border-t p-4 px-4 text-center text-xs text-balance\">\n The security scheme is missing a type, please double check your OpenAPI\n document or Authentication Configuration\n </div>\n </template>\n</template>\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
+ import type { ErrorResponse } from '@scalar/helpers/errors/normalize-error';
1
2
  import { type Static } from '@scalar/typebox';
2
- import type { ErrorResponse } from '../../../../libs/errors.js';
3
3
  /**
4
4
  * OpenID Connect Discovery Document (subset)
5
5
  * Represents the metadata fields consumed by the auth selector flow conversion.
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-openid-connect-discovery.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,iBAAiB,CAAA;AAGnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD;;;;;GAKG;AACH,QAAA,MAAM,4BAA4B;IAChC,kDAAkD;;IAElD,0CAA0C;;IAE1C,+DAA+D;;IAE/D,oEAAoE;;IAEpE,uDAAuD;;EAEvD,CAAA;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAA;AAEhF;;;GAGG;AACH,eAAO,MAAM,YAAY,WAAW,CAAA;AAEpC;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GACtC,KAAK,MAAM,EACX,UAAU,MAAM,KACf,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CA2C/C,CAAA"}
1
+ {"version":3,"file":"fetch-openid-connect-discovery.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAE3E,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,iBAAiB,CAAA;AAGnD;;;;;GAKG;AACH,QAAA,MAAM,4BAA4B;IAChC,kDAAkD;;IAElD,0CAA0C;;IAE1C,+DAA+D;;IAE/D,oEAAoE;;IAEpE,uDAAuD;;EAEvD,CAAA;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAA;AAEhF;;;GAGG;AACH,eAAO,MAAM,YAAY,WAAW,CAAA;AAEpC;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GACtC,KAAK,MAAM,EACX,UAAU,MAAM,KACf,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CA2C/C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-openid-connect-discovery.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.ts"],"sourcesContent":["import { redirectToProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport { type Static, Type } from '@scalar/typebox'\nimport { coerceValue } from '@scalar/workspace-store/schemas/typebox-coerce'\n\nimport type { ErrorResponse } from '@/libs/errors'\n\n/**\n * OpenID Connect Discovery Document (subset)\n * Represents the metadata fields consumed by the auth selector flow conversion.\n *\n * @see https://openid.net/specs/openid-connect-discovery-1_0.html\n */\nconst OpenIDConnectDiscoverySchema = Type.Object({\n /** URL of the OAuth 2.0 Authorization Endpoint */\n authorization_endpoint: Type.Optional(Type.String()),\n /** URL of the OAuth 2.0 Token Endpoint */\n token_endpoint: Type.Optional(Type.String()),\n /** List of OAuth 2.0 scope values that this server supports */\n scopes_supported: Type.Optional(Type.Array(Type.String())),\n /** List of OAuth 2.0 grant type values that this server supports */\n grant_types_supported: Type.Optional(Type.Array(Type.String())),\n /** Supported PKCE code challenge methods (RFC 7636) */\n code_challenge_methods_supported: Type.Optional(Type.Array(Type.String())),\n})\n\nexport type OpenIDConnectDiscovery = Static<typeof OpenIDConnectDiscoverySchema>\n\n/**\n * The required scope for OpenID Connect requests.\n * If this scope is present, the request is an OIDC request; otherwise, it is a standard OAuth 2.0 request.\n */\nexport const OPENID_SCOPE = 'openid'\n\n/**\n * Fetches the OpenID Connect discovery document from the specified URL.\n * Supports both full discovery URLs and issuer URLs.\n *\n * @param url - The OpenID Connect discovery URL or issuer URL\n * @returns The discovery document or an error\n */\nexport const fetchOpenIDConnectDiscovery = async (\n url: string,\n proxyUrl: string,\n): Promise<ErrorResponse<OpenIDConnectDiscovery>> => {\n try {\n // If the URL does not end with the well-known path, append it\n let discoveryUrl = url.trim()\n\n if (!discoveryUrl) {\n return [new Error('URL cannot be empty'), null]\n }\n\n // Remove trailing slash if present\n if (discoveryUrl.endsWith('/')) {\n discoveryUrl = discoveryUrl.slice(0, -1)\n }\n\n // If the URL does not already include the well-known path, append it\n if (!discoveryUrl.includes('/.well-known/openid-configuration')) {\n discoveryUrl = `${discoveryUrl}/.well-known/openid-configuration`\n }\n\n const proxiedUrl = redirectToProxy(proxyUrl, discoveryUrl)\n const response = await fetch(proxiedUrl)\n\n if (!response.ok) {\n return [\n new Error(`Failed to fetch OpenID Connect discovery document: ${response.status} ${response.statusText}`),\n null,\n ]\n }\n\n const data = coerceValue(OpenIDConnectDiscoverySchema, await response.json())\n\n // Validate that we have the essential fields\n if (!data.authorization_endpoint && !data.token_endpoint) {\n return [new Error('Invalid OpenID Connect discovery document: missing required endpoints'), null]\n }\n\n return [null, data]\n } catch (error) {\n if (error instanceof Error) {\n return [error, null]\n }\n return [new Error('Failed to fetch OpenID Connect discovery document'), null]\n }\n}\n"],"mappings":";;;;;;;;;;AAYA,IAAM,+BAA+B,KAAK,OAAO;CAE/C,wBAAwB,KAAK,SAAS,KAAK,QAAQ,CAAC;CAEpD,gBAAgB,KAAK,SAAS,KAAK,QAAQ,CAAC;CAE5C,kBAAkB,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAE1D,uBAAuB,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAE/D,kCAAkC,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAC3E,CAAC;;;;;;;;AAiBF,IAAa,8BAA8B,OACzC,KACA,aACmD;AACnD,KAAI;EAEF,IAAI,eAAe,IAAI,MAAM;AAE7B,MAAI,CAAC,aACH,QAAO,iBAAC,IAAI,MAAM,sBAAsB,EAAE,KAAK;AAIjD,MAAI,aAAa,SAAS,IAAI,CAC5B,gBAAe,aAAa,MAAM,GAAG,GAAG;AAI1C,MAAI,CAAC,aAAa,SAAS,oCAAoC,CAC7D,gBAAe,GAAG,aAAa;EAGjC,MAAM,aAAa,gBAAgB,UAAU,aAAa;EAC1D,MAAM,WAAW,MAAM,MAAM,WAAW;AAExC,MAAI,CAAC,SAAS,GACZ,QAAO,iBACL,IAAI,MAAM,sDAAsD,SAAS,OAAO,GAAG,SAAS,aAAa,EACzG,KACD;EAGH,MAAM,OAAO,YAAY,8BAA8B,MAAM,SAAS,MAAM,CAAC;AAG7E,MAAI,CAAC,KAAK,0BAA0B,CAAC,KAAK,eACxC,QAAO,iBAAC,IAAI,MAAM,wEAAwE,EAAE,KAAK;AAGnG,SAAO,CAAC,MAAM,KAAK;UACZ,OAAO;AACd,MAAI,iBAAiB,MACnB,QAAO,CAAC,OAAO,KAAK;AAEtB,SAAO,iBAAC,IAAI,MAAM,oDAAoD,EAAE,KAAK"}
1
+ {"version":3,"file":"fetch-openid-connect-discovery.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.ts"],"sourcesContent":["import type { ErrorResponse } from '@scalar/helpers/errors/normalize-error'\nimport { redirectToProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport { type Static, Type } from '@scalar/typebox'\nimport { coerceValue } from '@scalar/workspace-store/schemas/typebox-coerce'\n\n/**\n * OpenID Connect Discovery Document (subset)\n * Represents the metadata fields consumed by the auth selector flow conversion.\n *\n * @see https://openid.net/specs/openid-connect-discovery-1_0.html\n */\nconst OpenIDConnectDiscoverySchema = Type.Object({\n /** URL of the OAuth 2.0 Authorization Endpoint */\n authorization_endpoint: Type.Optional(Type.String()),\n /** URL of the OAuth 2.0 Token Endpoint */\n token_endpoint: Type.Optional(Type.String()),\n /** List of OAuth 2.0 scope values that this server supports */\n scopes_supported: Type.Optional(Type.Array(Type.String())),\n /** List of OAuth 2.0 grant type values that this server supports */\n grant_types_supported: Type.Optional(Type.Array(Type.String())),\n /** Supported PKCE code challenge methods (RFC 7636) */\n code_challenge_methods_supported: Type.Optional(Type.Array(Type.String())),\n})\n\nexport type OpenIDConnectDiscovery = Static<typeof OpenIDConnectDiscoverySchema>\n\n/**\n * The required scope for OpenID Connect requests.\n * If this scope is present, the request is an OIDC request; otherwise, it is a standard OAuth 2.0 request.\n */\nexport const OPENID_SCOPE = 'openid'\n\n/**\n * Fetches the OpenID Connect discovery document from the specified URL.\n * Supports both full discovery URLs and issuer URLs.\n *\n * @param url - The OpenID Connect discovery URL or issuer URL\n * @returns The discovery document or an error\n */\nexport const fetchOpenIDConnectDiscovery = async (\n url: string,\n proxyUrl: string,\n): Promise<ErrorResponse<OpenIDConnectDiscovery>> => {\n try {\n // If the URL does not end with the well-known path, append it\n let discoveryUrl = url.trim()\n\n if (!discoveryUrl) {\n return [new Error('URL cannot be empty'), null]\n }\n\n // Remove trailing slash if present\n if (discoveryUrl.endsWith('/')) {\n discoveryUrl = discoveryUrl.slice(0, -1)\n }\n\n // If the URL does not already include the well-known path, append it\n if (!discoveryUrl.includes('/.well-known/openid-configuration')) {\n discoveryUrl = `${discoveryUrl}/.well-known/openid-configuration`\n }\n\n const proxiedUrl = redirectToProxy(proxyUrl, discoveryUrl)\n const response = await fetch(proxiedUrl)\n\n if (!response.ok) {\n return [\n new Error(`Failed to fetch OpenID Connect discovery document: ${response.status} ${response.statusText}`),\n null,\n ]\n }\n\n const data = coerceValue(OpenIDConnectDiscoverySchema, await response.json())\n\n // Validate that we have the essential fields\n if (!data.authorization_endpoint && !data.token_endpoint) {\n return [new Error('Invalid OpenID Connect discovery document: missing required endpoints'), null]\n }\n\n return [null, data]\n } catch (error) {\n if (error instanceof Error) {\n return [error, null]\n }\n return [new Error('Failed to fetch OpenID Connect discovery document'), null]\n }\n}\n"],"mappings":";;;;;;;;;;AAWA,IAAM,+BAA+B,KAAK,OAAO;CAE/C,wBAAwB,KAAK,SAAS,KAAK,QAAQ,CAAC;CAEpD,gBAAgB,KAAK,SAAS,KAAK,QAAQ,CAAC;CAE5C,kBAAkB,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAE1D,uBAAuB,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAE/D,kCAAkC,KAAK,SAAS,KAAK,MAAM,KAAK,QAAQ,CAAC,CAAC;CAC3E,CAAC;;;;;;;;AAiBF,IAAa,8BAA8B,OACzC,KACA,aACmD;AACnD,KAAI;EAEF,IAAI,eAAe,IAAI,MAAM;AAE7B,MAAI,CAAC,aACH,QAAO,iBAAC,IAAI,MAAM,sBAAsB,EAAE,KAAK;AAIjD,MAAI,aAAa,SAAS,IAAI,CAC5B,gBAAe,aAAa,MAAM,GAAG,GAAG;AAI1C,MAAI,CAAC,aAAa,SAAS,oCAAoC,CAC7D,gBAAe,GAAG,aAAa;EAGjC,MAAM,aAAa,gBAAgB,UAAU,aAAa;EAC1D,MAAM,WAAW,MAAM,MAAM,WAAW;AAExC,MAAI,CAAC,SAAS,GACZ,QAAO,iBACL,IAAI,MAAM,sDAAsD,SAAS,OAAO,GAAG,SAAS,aAAa,EACzG,KACD;EAGH,MAAM,OAAO,YAAY,8BAA8B,MAAM,SAAS,MAAM,CAAC;AAG7E,MAAI,CAAC,KAAK,0BAA0B,CAAC,KAAK,eACxC,QAAO,iBAAC,IAAI,MAAM,wEAAwE,EAAE,KAAK;AAGnG,SAAO,CAAC,MAAM,KAAK;UACZ,OAAO;AACd,MAAI,iBAAiB,MACnB,QAAO,CAAC,OAAO,KAAK;AAEtB,SAAO,iBAAC,IAAI,MAAM,oDAAoD,EAAE,KAAK"}
@@ -1,6 +1,6 @@
1
+ import type { ErrorResponse } from '@scalar/helpers/errors/normalize-error';
1
2
  import type { OAuthFlowsObjectSecret } from '@scalar/workspace-store/request-example';
2
3
  import type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document';
3
- import type { ErrorResponse } from '../../../../libs/errors.js';
4
4
  export type OAuth2Tokens = {
5
5
  accessToken: string;
6
6
  refreshToken?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAErF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAA;AAGhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAWlD,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AA4DD;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,sBAAsB,EAC7B,MAAM,MAAM,sBAAsB,EAClC,gBAAgB,MAAM,EAAE;AACxB,wEAAwE;AACxE,cAAc,YAAY,GAAG,IAAI;AACjC,kCAAkC;AAClC,UAAU,MAAM;AAChB,6FAA6F;AAC7F,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAwLrC,CAAA"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AAK3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAErF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAA;AAYhG,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AA4DD;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,sBAAsB,EAC7B,MAAM,MAAM,sBAAsB,EAClC,gBAAgB,MAAM,EAAE;AACxB,wEAAwE;AACxE,cAAc,YAAY,GAAG,IAAI;AACjC,kCAAkC;AAClC,UAAU,MAAM;AAChB,6FAA6F;AAC7F,uBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,KAChD,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAwLrC,CAAA"}
@@ -1,9 +1,9 @@
1
- import { encode, fromUint8Array } from "js-base64";
2
- import { shouldUseProxy } from "@scalar/helpers/url/redirect-to-proxy";
1
+ import { makeUrlAbsolute } from "@scalar/helpers/url/make-url-absolute";
3
2
  import { getServerVariables } from "@scalar/workspace-store/request-example";
3
+ import { encode, fromUint8Array } from "js-base64";
4
4
  import { replaceEnvVariables, replacePathVariables } from "@scalar/helpers/regex/replace-variables";
5
5
  import { isRelativePath } from "@scalar/helpers/url/is-relative-path";
6
- import { makeUrlAbsolute } from "@scalar/helpers/url/make-url-absolute";
6
+ import { shouldUseProxy } from "@scalar/helpers/url/redirect-to-proxy";
7
7
  //#region src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts
8
8
  var getServerUrl = (activeServer, environmentVariables = {}) => {
9
9
  return replaceEnvVariables(replacePathVariables(activeServer?.url ?? "", getServerVariables(activeServer)), environmentVariables);
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"sourcesContent":["import { replaceEnvVariables, replacePathVariables } from '@scalar/helpers/regex/replace-variables'\nimport { isRelativePath } from '@scalar/helpers/url/is-relative-path'\nimport { makeUrlAbsolute } from '@scalar/helpers/url/make-url-absolute'\nimport { shouldUseProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport type { OAuthFlowsObjectSecret } from '@scalar/workspace-store/request-example'\nimport { getServerVariables } from '@scalar/workspace-store/request-example'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { encode, fromUint8Array } from 'js-base64'\n\nimport type { ErrorResponse } from '@/libs/errors'\n\n/** Oauth2 security schemes which are not implicit */\ntype NonImplicitFlows = Omit<OAuthFlowsObjectSecret, 'implicit'>\n\ntype PKCEState = {\n codeVerifier: string\n codeChallenge: string\n codeChallengeMethod: string\n}\n\nexport type OAuth2Tokens = {\n accessToken: string\n refreshToken?: string\n}\n\nconst getServerUrl = (activeServer: ServerObject | null, environmentVariables: Record<string, string> = {}) => {\n return replaceEnvVariables(\n replacePathVariables(activeServer?.url ?? '', getServerVariables(activeServer)),\n environmentVariables,\n )\n}\n\nconst getActiveServerBase = (activeServer: ServerObject | null, environmentVariables: Record<string, string> = {}) => {\n const serverUrl = getServerUrl(activeServer, environmentVariables)\n\n if (!serverUrl) {\n return {}\n }\n\n if (isRelativePath(serverUrl)) {\n return typeof window === 'undefined' ? {} : { basePath: serverUrl }\n }\n\n return { baseUrl: serverUrl }\n}\n\n/**\n * Generates a random string for PKCE code verifier\n *\n * @see https://www.rfc-editor.org/rfc/rfc7636#page-8\n */\nconst generateCodeVerifier = (): string => {\n // Generate 32 random bytes\n const buffer = new Uint8Array(32)\n crypto.getRandomValues(buffer)\n\n // Base64URL encode the bytes\n return fromUint8Array(buffer, true)\n}\n\n/**\n * Creates a code challenge from the code verifier\n */\nconst generateCodeChallenge = async (verifier: string, encoding: 'SHA-256' | 'plain'): Promise<string> => {\n if (encoding === 'plain') {\n return verifier\n }\n\n // If crypto.subtle.digest is not a function, we cannot use SHA-256\n if (typeof crypto?.subtle?.digest !== 'function') {\n console.warn('SHA-256 is only supported when using https, using a plain text code challenge instead.')\n return verifier\n }\n\n // ASCII encoding is just taking the lower 8 bits of each character\n const encoder = new TextEncoder()\n const data = encoder.encode(verifier)\n const digest = await crypto.subtle.digest('SHA-256', data)\n\n // Base64URL encode the bytes\n return fromUint8Array(new Uint8Array(digest), true)\n}\n\n/**\n * Authorize oauth2 flow\n *\n * @returns the resolved oauth2 tokens\n */\nexport const authorizeOauth2 = async (\n flows: OAuthFlowsObjectSecret,\n type: keyof OAuthFlowsObjectSecret,\n selectedScopes: string[],\n /** We use the active server to set a base for relative redirect uris */\n activeServer: ServerObject | null,\n /** If we want to use the proxy */\n proxyUrl: string,\n /** Flattened environment variables used to resolve server URL templates like `{protocol}` */\n environmentVariables: Record<string, string> = {},\n): Promise<ErrorResponse<OAuth2Tokens>> => {\n const flow = flows[type]\n\n try {\n if (!flow) {\n return [new Error('Flow not found'), null]\n }\n\n const scopes = selectedScopes.join(' ')\n\n // Client Credentials or Password Flow\n if (type === 'clientCredentials' || type === 'password') {\n return authorizeServers(\n flows,\n type,\n scopes,\n {\n proxyUrl,\n },\n activeServer,\n environmentVariables,\n )\n }\n\n // Generate a random state string with the length of 8 characters\n const state = (Math.random() + 1).toString(36).substring(2, 10)\n\n const authorizationUrl = makeUrlAbsolute(\n flows[type]!['x-scalar-secret-auth-url'] ?? flows[type]!.authorizationUrl,\n getActiveServerBase(activeServer, environmentVariables),\n )\n\n const url = new URL(authorizationUrl)\n\n /** Special PKCE state */\n let pkce: PKCEState | null = null\n\n // Params unique to the flows\n if (type === 'implicit') {\n url.searchParams.set('response_type', 'token')\n } else if (type === 'authorizationCode') {\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n\n url.searchParams.set('response_type', 'code')\n\n // PKCE\n if (typedFlow['x-usePkce'] !== 'no') {\n const codeVerifier = generateCodeVerifier()\n const codeChallenge = await generateCodeChallenge(codeVerifier, typedFlow['x-usePkce'])\n\n // Set state for later verification\n pkce = {\n codeVerifier,\n codeChallenge,\n codeChallengeMethod: typedFlow['x-usePkce'] === 'SHA-256' ? 'S256' : 'plain',\n }\n\n // Set the code challenge and method on the url\n url.searchParams.set('code_challenge', codeChallenge)\n url.searchParams.set('code_challenge_method', pkce.codeChallengeMethod)\n }\n }\n\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n\n // Handle relative redirect uris\n if (typedFlow['x-scalar-secret-redirect-uri'].startsWith('/')) {\n const baseUrl =\n getServerUrl(activeServer, environmentVariables) || window.location.origin + window.location.pathname\n const redirectUri = new URL(typedFlow['x-scalar-secret-redirect-uri'], baseUrl).toString()\n\n url.searchParams.set('redirect_uri', redirectUri)\n } else {\n url.searchParams.set('redirect_uri', typedFlow['x-scalar-secret-redirect-uri'])\n }\n\n if (flow['x-scalar-security-query']) {\n Object.keys(flow['x-scalar-security-query']).forEach((key: string): void => {\n const value = flow['x-scalar-security-query']?.[key]\n if (!value) {\n return\n }\n url.searchParams.set(key, value)\n })\n }\n\n // Common to all flows\n url.searchParams.set('client_id', flow['x-scalar-secret-client-id'])\n url.searchParams.set('state', state)\n if (scopes) {\n url.searchParams.set('scope', scopes)\n }\n\n const windowFeatures = 'left=100,top=100,width=800,height=600'\n const authWindow = window.open(url, 'openAuth2Window', windowFeatures)\n\n // Open up a window and poll until closed or we have the data we want\n if (authWindow) {\n // We need to return a promise here due to the setInterval\n return new Promise<ErrorResponse<OAuth2Tokens>>((resolve) => {\n const checkWindowClosed = setInterval(() => {\n let accessToken: string | null = null\n let refreshToken: string | null = null\n let code: string | null = null\n let error: string | null = null\n let errorDescription: string | null = null\n\n try {\n const urlParams = new URL(authWindow.location.href).searchParams\n const tokenName = flow['x-tokenName'] || 'access_token'\n accessToken = urlParams.get(tokenName)\n refreshToken = urlParams.get('refresh_token')\n code = urlParams.get('code')\n\n error = urlParams.get('error')\n errorDescription = urlParams.get('error_description')\n\n // We may get the properties in a hash\n const hashParams = new URLSearchParams(authWindow.location.href.split('#')[1])\n accessToken ||= hashParams.get(tokenName)\n refreshToken ||= hashParams.get('refresh_token')\n code ||= hashParams.get('code')\n error ||= hashParams.get('error')\n errorDescription ||= hashParams.get('error_description')\n } catch (_e) {\n // Ignore CORS error from popup\n }\n\n // The window has closed OR we have what we are looking for so we stop polling\n if (authWindow.closed || accessToken || code || error) {\n clearInterval(checkWindowClosed)\n authWindow.close()\n\n if (error) {\n resolve([new Error(`OAuth error: ${error}${errorDescription ? ` (${errorDescription})` : ''}`), null])\n }\n\n // Implicit Flow\n else if (accessToken) {\n // State is a hash fragment and cannot be found through search params\n const _state = authWindow.location.href.match(/state=([^&]*)/)?.[1]\n\n if (_state === state) {\n resolve([null, { accessToken, ...(refreshToken ? { refreshToken } : {}) }])\n } else {\n resolve([new Error('State mismatch'), null])\n }\n }\n\n // Authorization Code Server Flow\n else if (code && type === 'authorizationCode') {\n const _state = new URL(authWindow.location.href).searchParams.get('state')\n\n if (_state === state) {\n // biome-ignore lint/nursery/noFloatingPromises: output of authorizeServers must be returned\n authorizeServers(\n flows,\n type,\n scopes,\n {\n code,\n pkce,\n proxyUrl,\n },\n activeServer,\n environmentVariables,\n ).then(resolve)\n } else {\n resolve([new Error('State mismatch'), null])\n }\n }\n // User closed window without authorizing\n else {\n clearInterval(checkWindowClosed)\n resolve([new Error('Window was closed without granting authorization'), null])\n }\n }\n }, 200)\n })\n }\n return [new Error('Failed to open auth window'), null]\n } catch (_) {\n return [new Error('Failed to authorize oauth2 flow'), null]\n }\n}\n\n/**\n * Makes the BE authorization call to grab the token server to server\n * Used for clientCredentials and authorizationCode\n */\nconst authorizeServers = async (\n flows: NonImplicitFlows,\n type: keyof NonImplicitFlows,\n scopes: string,\n {\n code,\n pkce,\n proxyUrl,\n }: {\n code?: string\n pkce?: PKCEState | null\n proxyUrl?: string\n } = {},\n activeServer: ServerObject | null,\n environmentVariables: Record<string, string> = {},\n): Promise<ErrorResponse<OAuth2Tokens>> => {\n const flow = flows[type]\n\n if (!flow) {\n return [new Error('OAuth2 flow was not defined'), null]\n }\n\n const formData = new URLSearchParams()\n\n // Only client credentials and password flows support scopes in the token request\n if (scopes && (type === 'clientCredentials' || type === 'password')) {\n formData.set('scope', scopes)\n }\n\n /** Where to add the credentials */\n const addCredentialsToBody = flow['x-scalar-credentials-location'] === 'body'\n const hasClientSecret = Boolean(flow['x-scalar-secret-client-secret'])\n /**\n * Public authorization-code clients still need client_id in the token body.\n * We only send it implicitly for that case to avoid conflicting with Basic auth.\n */\n const shouldSendClientIdInBody = addCredentialsToBody || (type === 'authorizationCode' && !hasClientSecret)\n\n if (shouldSendClientIdInBody) {\n formData.set('client_id', flow['x-scalar-secret-client-id'])\n }\n if (addCredentialsToBody && hasClientSecret) {\n formData.set('client_secret', flow['x-scalar-secret-client-secret'])\n }\n if ('x-scalar-secret-redirect-uri' in flow && flow['x-scalar-secret-redirect-uri']) {\n formData.set('redirect_uri', flow['x-scalar-secret-redirect-uri'])\n }\n\n // Authorization Code\n if (code) {\n formData.set('code', code)\n formData.set('grant_type', 'authorization_code')\n\n // PKCE\n if (pkce) {\n formData.set('code_verifier', pkce.codeVerifier)\n }\n }\n // Password\n else if (type === 'password') {\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n formData.set('grant_type', 'password')\n formData.set('username', typedFlow['x-scalar-secret-username'])\n formData.set('password', typedFlow['x-scalar-secret-password'])\n }\n // Client Credentials\n else {\n formData.set('grant_type', 'client_credentials')\n }\n\n // Additional request body parameters\n if (flow['x-scalar-security-body']) {\n Object.entries(flow['x-scalar-security-body']).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n formData.set(key, String(value))\n }\n })\n }\n\n try {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/x-www-form-urlencoded',\n }\n\n // Add client id + secret to headers for confidential clients.\n if (!addCredentialsToBody && hasClientSecret) {\n headers.Authorization = `Basic ${encode(`${flow['x-scalar-secret-client-id']}:${flow['x-scalar-secret-client-secret']}`)}`\n }\n\n // Check if we should use the proxy\n const tokenUrl = makeUrlAbsolute(\n flow['x-scalar-secret-token-url'] ?? flow.tokenUrl,\n getActiveServerBase(activeServer, environmentVariables),\n )\n const url = shouldUseProxy(proxyUrl, tokenUrl)\n ? `${proxyUrl}?${new URLSearchParams([['scalar_url', tokenUrl]]).toString()}`\n : tokenUrl\n\n // Make the call\n const resp = await fetch(url, {\n method: 'POST',\n headers,\n body: formData,\n })\n const responseData = await resp.json()\n\n // Use custom token name if specified, otherwise default to access_token\n const tokenName = flow['x-tokenName'] || 'access_token'\n const accessToken = responseData[tokenName]\n const refreshToken = responseData.refresh_token\n\n return [null, { accessToken, ...(typeof refreshToken === 'string' ? { refreshToken } : {}) }]\n } catch {\n return [new Error('Failed to get an access token. Please check your credentials.'), null]\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/oauth.ts"],"sourcesContent":["import type { ErrorResponse } from '@scalar/helpers/errors/normalize-error'\nimport { replaceEnvVariables, replacePathVariables } from '@scalar/helpers/regex/replace-variables'\nimport { isRelativePath } from '@scalar/helpers/url/is-relative-path'\nimport { makeUrlAbsolute } from '@scalar/helpers/url/make-url-absolute'\nimport { shouldUseProxy } from '@scalar/helpers/url/redirect-to-proxy'\nimport type { OAuthFlowsObjectSecret } from '@scalar/workspace-store/request-example'\nimport { getServerVariables } from '@scalar/workspace-store/request-example'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { encode, fromUint8Array } from 'js-base64'\n\n/** Oauth2 security schemes which are not implicit */\ntype NonImplicitFlows = Omit<OAuthFlowsObjectSecret, 'implicit'>\n\ntype PKCEState = {\n codeVerifier: string\n codeChallenge: string\n codeChallengeMethod: string\n}\n\nexport type OAuth2Tokens = {\n accessToken: string\n refreshToken?: string\n}\n\nconst getServerUrl = (activeServer: ServerObject | null, environmentVariables: Record<string, string> = {}) => {\n return replaceEnvVariables(\n replacePathVariables(activeServer?.url ?? '', getServerVariables(activeServer)),\n environmentVariables,\n )\n}\n\nconst getActiveServerBase = (activeServer: ServerObject | null, environmentVariables: Record<string, string> = {}) => {\n const serverUrl = getServerUrl(activeServer, environmentVariables)\n\n if (!serverUrl) {\n return {}\n }\n\n if (isRelativePath(serverUrl)) {\n return typeof window === 'undefined' ? {} : { basePath: serverUrl }\n }\n\n return { baseUrl: serverUrl }\n}\n\n/**\n * Generates a random string for PKCE code verifier\n *\n * @see https://www.rfc-editor.org/rfc/rfc7636#page-8\n */\nconst generateCodeVerifier = (): string => {\n // Generate 32 random bytes\n const buffer = new Uint8Array(32)\n crypto.getRandomValues(buffer)\n\n // Base64URL encode the bytes\n return fromUint8Array(buffer, true)\n}\n\n/**\n * Creates a code challenge from the code verifier\n */\nconst generateCodeChallenge = async (verifier: string, encoding: 'SHA-256' | 'plain'): Promise<string> => {\n if (encoding === 'plain') {\n return verifier\n }\n\n // If crypto.subtle.digest is not a function, we cannot use SHA-256\n if (typeof crypto?.subtle?.digest !== 'function') {\n console.warn('SHA-256 is only supported when using https, using a plain text code challenge instead.')\n return verifier\n }\n\n // ASCII encoding is just taking the lower 8 bits of each character\n const encoder = new TextEncoder()\n const data = encoder.encode(verifier)\n const digest = await crypto.subtle.digest('SHA-256', data)\n\n // Base64URL encode the bytes\n return fromUint8Array(new Uint8Array(digest), true)\n}\n\n/**\n * Authorize oauth2 flow\n *\n * @returns the resolved oauth2 tokens\n */\nexport const authorizeOauth2 = async (\n flows: OAuthFlowsObjectSecret,\n type: keyof OAuthFlowsObjectSecret,\n selectedScopes: string[],\n /** We use the active server to set a base for relative redirect uris */\n activeServer: ServerObject | null,\n /** If we want to use the proxy */\n proxyUrl: string,\n /** Flattened environment variables used to resolve server URL templates like `{protocol}` */\n environmentVariables: Record<string, string> = {},\n): Promise<ErrorResponse<OAuth2Tokens>> => {\n const flow = flows[type]\n\n try {\n if (!flow) {\n return [new Error('Flow not found'), null]\n }\n\n const scopes = selectedScopes.join(' ')\n\n // Client Credentials or Password Flow\n if (type === 'clientCredentials' || type === 'password') {\n return authorizeServers(\n flows,\n type,\n scopes,\n {\n proxyUrl,\n },\n activeServer,\n environmentVariables,\n )\n }\n\n // Generate a random state string with the length of 8 characters\n const state = (Math.random() + 1).toString(36).substring(2, 10)\n\n const authorizationUrl = makeUrlAbsolute(\n flows[type]!['x-scalar-secret-auth-url'] ?? flows[type]!.authorizationUrl,\n getActiveServerBase(activeServer, environmentVariables),\n )\n\n const url = new URL(authorizationUrl)\n\n /** Special PKCE state */\n let pkce: PKCEState | null = null\n\n // Params unique to the flows\n if (type === 'implicit') {\n url.searchParams.set('response_type', 'token')\n } else if (type === 'authorizationCode') {\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n\n url.searchParams.set('response_type', 'code')\n\n // PKCE\n if (typedFlow['x-usePkce'] !== 'no') {\n const codeVerifier = generateCodeVerifier()\n const codeChallenge = await generateCodeChallenge(codeVerifier, typedFlow['x-usePkce'])\n\n // Set state for later verification\n pkce = {\n codeVerifier,\n codeChallenge,\n codeChallengeMethod: typedFlow['x-usePkce'] === 'SHA-256' ? 'S256' : 'plain',\n }\n\n // Set the code challenge and method on the url\n url.searchParams.set('code_challenge', codeChallenge)\n url.searchParams.set('code_challenge_method', pkce.codeChallengeMethod)\n }\n }\n\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n\n // Handle relative redirect uris\n if (typedFlow['x-scalar-secret-redirect-uri'].startsWith('/')) {\n const baseUrl =\n getServerUrl(activeServer, environmentVariables) || window.location.origin + window.location.pathname\n const redirectUri = new URL(typedFlow['x-scalar-secret-redirect-uri'], baseUrl).toString()\n\n url.searchParams.set('redirect_uri', redirectUri)\n } else {\n url.searchParams.set('redirect_uri', typedFlow['x-scalar-secret-redirect-uri'])\n }\n\n if (flow['x-scalar-security-query']) {\n Object.keys(flow['x-scalar-security-query']).forEach((key: string): void => {\n const value = flow['x-scalar-security-query']?.[key]\n if (!value) {\n return\n }\n url.searchParams.set(key, value)\n })\n }\n\n // Common to all flows\n url.searchParams.set('client_id', flow['x-scalar-secret-client-id'])\n url.searchParams.set('state', state)\n if (scopes) {\n url.searchParams.set('scope', scopes)\n }\n\n const windowFeatures = 'left=100,top=100,width=800,height=600'\n const authWindow = window.open(url, 'openAuth2Window', windowFeatures)\n\n // Open up a window and poll until closed or we have the data we want\n if (authWindow) {\n // We need to return a promise here due to the setInterval\n return new Promise<ErrorResponse<OAuth2Tokens>>((resolve) => {\n const checkWindowClosed = setInterval(() => {\n let accessToken: string | null = null\n let refreshToken: string | null = null\n let code: string | null = null\n let error: string | null = null\n let errorDescription: string | null = null\n\n try {\n const urlParams = new URL(authWindow.location.href).searchParams\n const tokenName = flow['x-tokenName'] || 'access_token'\n accessToken = urlParams.get(tokenName)\n refreshToken = urlParams.get('refresh_token')\n code = urlParams.get('code')\n\n error = urlParams.get('error')\n errorDescription = urlParams.get('error_description')\n\n // We may get the properties in a hash\n const hashParams = new URLSearchParams(authWindow.location.href.split('#')[1])\n accessToken ||= hashParams.get(tokenName)\n refreshToken ||= hashParams.get('refresh_token')\n code ||= hashParams.get('code')\n error ||= hashParams.get('error')\n errorDescription ||= hashParams.get('error_description')\n } catch (_e) {\n // Ignore CORS error from popup\n }\n\n // The window has closed OR we have what we are looking for so we stop polling\n if (authWindow.closed || accessToken || code || error) {\n clearInterval(checkWindowClosed)\n authWindow.close()\n\n if (error) {\n resolve([new Error(`OAuth error: ${error}${errorDescription ? ` (${errorDescription})` : ''}`), null])\n }\n\n // Implicit Flow\n else if (accessToken) {\n // State is a hash fragment and cannot be found through search params\n const _state = authWindow.location.href.match(/state=([^&]*)/)?.[1]\n\n if (_state === state) {\n resolve([null, { accessToken, ...(refreshToken ? { refreshToken } : {}) }])\n } else {\n resolve([new Error('State mismatch'), null])\n }\n }\n\n // Authorization Code Server Flow\n else if (code && type === 'authorizationCode') {\n const _state = new URL(authWindow.location.href).searchParams.get('state')\n\n if (_state === state) {\n // biome-ignore lint/nursery/noFloatingPromises: output of authorizeServers must be returned\n authorizeServers(\n flows,\n type,\n scopes,\n {\n code,\n pkce,\n proxyUrl,\n },\n activeServer,\n environmentVariables,\n ).then(resolve)\n } else {\n resolve([new Error('State mismatch'), null])\n }\n }\n // User closed window without authorizing\n else {\n clearInterval(checkWindowClosed)\n resolve([new Error('Window was closed without granting authorization'), null])\n }\n }\n }, 200)\n })\n }\n return [new Error('Failed to open auth window'), null]\n } catch (_) {\n return [new Error('Failed to authorize oauth2 flow'), null]\n }\n}\n\n/**\n * Makes the BE authorization call to grab the token server to server\n * Used for clientCredentials and authorizationCode\n */\nconst authorizeServers = async (\n flows: NonImplicitFlows,\n type: keyof NonImplicitFlows,\n scopes: string,\n {\n code,\n pkce,\n proxyUrl,\n }: {\n code?: string\n pkce?: PKCEState | null\n proxyUrl?: string\n } = {},\n activeServer: ServerObject | null,\n environmentVariables: Record<string, string> = {},\n): Promise<ErrorResponse<OAuth2Tokens>> => {\n const flow = flows[type]\n\n if (!flow) {\n return [new Error('OAuth2 flow was not defined'), null]\n }\n\n const formData = new URLSearchParams()\n\n // Only client credentials and password flows support scopes in the token request\n if (scopes && (type === 'clientCredentials' || type === 'password')) {\n formData.set('scope', scopes)\n }\n\n /** Where to add the credentials */\n const addCredentialsToBody = flow['x-scalar-credentials-location'] === 'body'\n const hasClientSecret = Boolean(flow['x-scalar-secret-client-secret'])\n /**\n * Public authorization-code clients still need client_id in the token body.\n * We only send it implicitly for that case to avoid conflicting with Basic auth.\n */\n const shouldSendClientIdInBody = addCredentialsToBody || (type === 'authorizationCode' && !hasClientSecret)\n\n if (shouldSendClientIdInBody) {\n formData.set('client_id', flow['x-scalar-secret-client-id'])\n }\n if (addCredentialsToBody && hasClientSecret) {\n formData.set('client_secret', flow['x-scalar-secret-client-secret'])\n }\n if ('x-scalar-secret-redirect-uri' in flow && flow['x-scalar-secret-redirect-uri']) {\n formData.set('redirect_uri', flow['x-scalar-secret-redirect-uri'])\n }\n\n // Authorization Code\n if (code) {\n formData.set('code', code)\n formData.set('grant_type', 'authorization_code')\n\n // PKCE\n if (pkce) {\n formData.set('code_verifier', pkce.codeVerifier)\n }\n }\n // Password\n else if (type === 'password') {\n const typedFlow = flows[type]! // Safe to assert due to earlier check\n formData.set('grant_type', 'password')\n formData.set('username', typedFlow['x-scalar-secret-username'])\n formData.set('password', typedFlow['x-scalar-secret-password'])\n }\n // Client Credentials\n else {\n formData.set('grant_type', 'client_credentials')\n }\n\n // Additional request body parameters\n if (flow['x-scalar-security-body']) {\n Object.entries(flow['x-scalar-security-body']).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n formData.set(key, String(value))\n }\n })\n }\n\n try {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/x-www-form-urlencoded',\n }\n\n // Add client id + secret to headers for confidential clients.\n if (!addCredentialsToBody && hasClientSecret) {\n headers.Authorization = `Basic ${encode(`${flow['x-scalar-secret-client-id']}:${flow['x-scalar-secret-client-secret']}`)}`\n }\n\n // Check if we should use the proxy\n const tokenUrl = makeUrlAbsolute(\n flow['x-scalar-secret-token-url'] ?? flow.tokenUrl,\n getActiveServerBase(activeServer, environmentVariables),\n )\n const url = shouldUseProxy(proxyUrl, tokenUrl)\n ? `${proxyUrl}?${new URLSearchParams([['scalar_url', tokenUrl]]).toString()}`\n : tokenUrl\n\n // Make the call\n const resp = await fetch(url, {\n method: 'POST',\n headers,\n body: formData,\n })\n const responseData = await resp.json()\n\n // Use custom token name if specified, otherwise default to access_token\n const tokenName = flow['x-tokenName'] || 'access_token'\n const accessToken = responseData[tokenName]\n const refreshToken = responseData.refresh_token\n\n return [null, { accessToken, ...(typeof refreshToken === 'string' ? { refreshToken } : {}) }]\n } catch {\n return [new Error('Failed to get an access token. Please check your credentials.'), null]\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { ApiClientConfiguration } from '@scalar/types/api-reference';
2
+ /**
3
+ * Resolve the default OAuth2 redirect URI.
4
+ *
5
+ * Priority:
6
+ * 1. Explicit oauth2RedirectUri config override.
7
+ * 2. Empty string in non-browser and file:// contexts.
8
+ * 3. Browser origin + pathname fallback.
9
+ */
10
+ export declare const resolveDefaultOAuth2RedirectUri: (config: Pick<ApiClientConfiguration, "oauth2RedirectUri">) => string;
11
+ //# sourceMappingURL=resolve-default-oauth2-redirect-url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-default-oauth2-redirect-url.d.ts","sourceRoot":"","sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,GAAI,QAAQ,IAAI,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,KAAG,MAU3G,CAAA"}
@@ -0,0 +1,18 @@
1
+ //#region src/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.ts
2
+ /**
3
+ * Resolve the default OAuth2 redirect URI.
4
+ *
5
+ * Priority:
6
+ * 1. Explicit oauth2RedirectUri config override.
7
+ * 2. Empty string in non-browser and file:// contexts.
8
+ * 3. Browser origin + pathname fallback.
9
+ */
10
+ var resolveDefaultOAuth2RedirectUri = (config) => {
11
+ if (config.oauth2RedirectUri) return config.oauth2RedirectUri;
12
+ if (typeof window === "undefined" || window.location.protocol === "file:") return "";
13
+ return window.location.origin + window.location.pathname;
14
+ };
15
+ //#endregion
16
+ export { resolveDefaultOAuth2RedirectUri };
17
+
18
+ //# sourceMappingURL=resolve-default-oauth2-redirect-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-default-oauth2-redirect-url.js","names":[],"sources":["../../../../../src/v2/blocks/scalar-auth-selector-block/helpers/resolve-default-oauth2-redirect-url.ts"],"sourcesContent":["import type { ApiClientConfiguration } from '@scalar/types/api-reference'\n\n/**\n * Resolve the default OAuth2 redirect URI.\n *\n * Priority:\n * 1. Explicit oauth2RedirectUri config override.\n * 2. Empty string in non-browser and file:// contexts.\n * 3. Browser origin + pathname fallback.\n */\nexport const resolveDefaultOAuth2RedirectUri = (config: Pick<ApiClientConfiguration, 'oauth2RedirectUri'>): string => {\n if (config.oauth2RedirectUri) {\n return config.oauth2RedirectUri\n }\n\n if (typeof window === 'undefined' || window.location.protocol === 'file:') {\n return ''\n }\n\n return window.location.origin + window.location.pathname\n}\n"],"mappings":";;;;;;;;;AAUA,IAAa,mCAAmC,WAAsE;AACpH,KAAI,OAAO,kBACT,QAAO,OAAO;AAGhB,KAAI,OAAO,WAAW,eAAe,OAAO,SAAS,aAAa,QAChE,QAAO;AAGT,QAAO,OAAO,SAAS,SAAS,OAAO,SAAS"}
@@ -11,7 +11,8 @@ export type CodeInputModelValue = string | number | boolean | Array<string | num
11
11
  * - Select mode: Dropdown for enums, booleans, or examples
12
12
  * - Editor mode: CodeMirror with environment variable support
13
13
  *
14
- * Type `{{` to trigger environment variable autocomplete when an environment is provided.
14
+ * Type `{{` to trigger autocomplete for environment variables and runtime context functions
15
+ * (for example `{{$guid}}`) when an environment is provided.
15
16
  * It takes in any data but always will emit a string value,
16
17
  * this string should then be parsed in accordance to the schema or content type.
17
18
  *
@@ -102,7 +103,7 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
102
103
  cursorPosition: () => number | undefined;
103
104
  serializeValue: (value: CodeInputModelValue) => string;
104
105
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
105
- submit: (value: string, event: KeyboardEvent | FocusEvent) => any;
106
+ submit: (value: string, event: FocusEvent | KeyboardEvent) => any;
106
107
  "update:modelValue": (value: string) => any;
107
108
  blur: (value: string, event: FocusEvent) => any;
108
109
  navigate: (route: {
@@ -164,7 +165,7 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
164
165
  /** Put a linethrough on the input text */
165
166
  linethrough?: boolean;
166
167
  }> & Readonly<{
167
- onSubmit?: ((value: string, event: KeyboardEvent | FocusEvent) => any) | undefined;
168
+ onSubmit?: ((value: string, event: FocusEvent | KeyboardEvent) => any) | undefined;
168
169
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
169
170
  onBlur?: ((value: string, event: FocusEvent) => any) | undefined;
170
171
  onNavigate?: ((route: {