@scalar/api-client 2.38.1 → 2.38.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1162) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/AddressBar-B4xnl66I.js +302 -0
  3. package/dist/AddressBar-B4xnl66I.js.map +1 -0
  4. package/dist/App-BVH4lIe8.js +533 -0
  5. package/dist/App-BVH4lIe8.js.map +1 -0
  6. package/dist/App-CvClwSlM.js +2510 -0
  7. package/dist/App-CvClwSlM.js.map +1 -0
  8. package/dist/CodeInput-C-igR77V.js +694 -0
  9. package/dist/CodeInput-C-igR77V.js.map +1 -0
  10. package/dist/CodeSnippet-D7Heh1nd.js +218 -0
  11. package/dist/CodeSnippet-D7Heh1nd.js.map +1 -0
  12. package/dist/Collection-4MT9WmDD.js +219 -0
  13. package/dist/Collection-4MT9WmDD.js.map +1 -0
  14. package/dist/CollectionAuthentication-MHWQpw74.js +56 -0
  15. package/dist/CollectionAuthentication-MHWQpw74.js.map +1 -0
  16. package/dist/CollectionCookies-DyjPPMdt.js +19 -0
  17. package/dist/CollectionCookies-DyjPPMdt.js.map +1 -0
  18. package/dist/CollectionEnvironment-Dw35vIqo.js +514 -0
  19. package/dist/CollectionEnvironment-Dw35vIqo.js.map +1 -0
  20. package/dist/CollectionOverview-TUdDIu5f.js +131 -0
  21. package/dist/CollectionOverview-TUdDIu5f.js.map +1 -0
  22. package/dist/CollectionScripts-CMNlBlby.js +19 -0
  23. package/dist/CollectionScripts-CMNlBlby.js.map +1 -0
  24. package/dist/CollectionServers-BrjTCfDe.js +168 -0
  25. package/dist/CollectionServers-BrjTCfDe.js.map +1 -0
  26. package/dist/CollectionSettings-HVSlp2Gv.js +87 -0
  27. package/dist/CollectionSettings-HVSlp2Gv.js.map +1 -0
  28. package/dist/CollectionSync-CAflc5yW.js +19 -0
  29. package/dist/CollectionSync-CAflc5yW.js.map +1 -0
  30. package/dist/CommandActionInput-TkcAx6E8.js +97 -0
  31. package/dist/CommandActionInput-TkcAx6E8.js.map +1 -0
  32. package/dist/CommandPalette-CL8k4CoN.js +964 -0
  33. package/dist/CommandPalette-CL8k4CoN.js.map +1 -0
  34. package/dist/CommandPaletteImport-Diu5dDIY.js +622 -0
  35. package/dist/CommandPaletteImport-Diu5dDIY.js.map +1 -0
  36. package/dist/Cookies-DbOKTi1f.js +284 -0
  37. package/dist/Cookies-DbOKTi1f.js.map +1 -0
  38. package/dist/DataTable-BqbZKW3K.js +62 -0
  39. package/dist/DataTable-BqbZKW3K.js.map +1 -0
  40. package/dist/DataTableHeader-DJVB0jCZ.js +21 -0
  41. package/dist/DataTableHeader-DJVB0jCZ.js.map +1 -0
  42. package/dist/DataTableInput-yaU5g-kP.js +166 -0
  43. package/dist/DataTableInput-yaU5g-kP.js.map +1 -0
  44. package/dist/DataTableRow-c3XveEUO.js +57 -0
  45. package/dist/DataTableRow-c3XveEUO.js.map +1 -0
  46. package/dist/DeleteSidebarListElement-C-p87d03.js +78 -0
  47. package/dist/DeleteSidebarListElement-C-p87d03.js.map +1 -0
  48. package/dist/EditSidebarListElement-CodWPnM6.js +32 -0
  49. package/dist/EditSidebarListElement-CodWPnM6.js.map +1 -0
  50. package/dist/Editor-BomsGWHx.js +909 -0
  51. package/dist/Editor-BomsGWHx.js.map +1 -0
  52. package/dist/EmptyState-Cnm7hGW5.js +46 -0
  53. package/dist/EmptyState-Cnm7hGW5.js.map +1 -0
  54. package/dist/Environment-DJatRQIg.js +416 -0
  55. package/dist/Environment-DJatRQIg.js.map +1 -0
  56. package/dist/EnvironmentModal-DBEJ4Kzj.js +288 -0
  57. package/dist/EnvironmentModal-DBEJ4Kzj.js.map +1 -0
  58. package/dist/Form-CSKzyHGO.js +83 -0
  59. package/dist/Form-CSKzyHGO.js.map +1 -0
  60. package/dist/HttpMethod-rnWEgC3T.js +78 -0
  61. package/dist/HttpMethod-rnWEgC3T.js.map +1 -0
  62. package/dist/IconSelector-BDC_GQXv.js +67 -0
  63. package/dist/IconSelector-BDC_GQXv.js.map +1 -0
  64. package/dist/ImportCollection-DfX1UQ5u.js +804 -0
  65. package/dist/ImportCollection-DfX1UQ5u.js.map +1 -0
  66. package/dist/IntegrationLogo-B9EDW8db.js +51 -0
  67. package/dist/IntegrationLogo-B9EDW8db.js.map +1 -0
  68. package/dist/MainLayout-BEFMl1ud.js +281 -0
  69. package/dist/MainLayout-BEFMl1ud.js.map +1 -0
  70. package/dist/Modal-sQ9vH6MN.js +67 -0
  71. package/dist/Modal-sQ9vH6MN.js.map +1 -0
  72. package/dist/ModalClientContainer-qHsZi4wQ.js +65 -0
  73. package/dist/ModalClientContainer-qHsZi4wQ.js.map +1 -0
  74. package/dist/Request-gscRsGQ8.js +212 -0
  75. package/dist/Request-gscRsGQ8.js.map +1 -0
  76. package/dist/RequestAuth-BzBfIysT.js +989 -0
  77. package/dist/RequestAuth-BzBfIysT.js.map +1 -0
  78. package/dist/RequestRoot-3Bj8JZD-.js +1611 -0
  79. package/dist/RequestRoot-3Bj8JZD-.js.map +1 -0
  80. package/dist/RequestSection-HhdJj9hW.js +1582 -0
  81. package/dist/RequestSection-HhdJj9hW.js.map +1 -0
  82. package/dist/ResponseSection-DMJ0tw8E.js +949 -0
  83. package/dist/ResponseSection-DMJ0tw8E.js.map +1 -0
  84. package/dist/ScalarAsciiArt-BjuSnj8e.js +45 -0
  85. package/dist/ScalarAsciiArt-BjuSnj8e.js.map +1 -0
  86. package/dist/SectionFilter-hrtoRLwj.js +99 -0
  87. package/dist/SectionFilter-hrtoRLwj.js.map +1 -0
  88. package/dist/Server-DnA_BzPS.js +303 -0
  89. package/dist/Server-DnA_BzPS.js.map +1 -0
  90. package/dist/ServerVariablesForm-BRZ9XC8o.js +145 -0
  91. package/dist/ServerVariablesForm-BRZ9XC8o.js.map +1 -0
  92. package/dist/Settings-CYZzdJPO.js +347 -0
  93. package/dist/Settings-CYZzdJPO.js.map +1 -0
  94. package/dist/Sidebar-C6AdX6-N.js +73 -0
  95. package/dist/Sidebar-C6AdX6-N.js.map +1 -0
  96. package/dist/SidebarButton-BAagdMDe.js +37 -0
  97. package/dist/SidebarButton-BAagdMDe.js.map +1 -0
  98. package/dist/SidebarListElement-BfTPiihc.js +232 -0
  99. package/dist/SidebarListElement-BfTPiihc.js.map +1 -0
  100. package/dist/TheCommandPalette-Dl9TAeke.js +204 -0
  101. package/dist/TheCommandPalette-Dl9TAeke.js.map +1 -0
  102. package/dist/ValueEmitter-QYkZ9Hdc.js +20 -0
  103. package/dist/ValueEmitter-QYkZ9Hdc.js.map +1 -0
  104. package/dist/ViewLayout-BOXN0IYo.js +17 -0
  105. package/dist/ViewLayout-BOXN0IYo.js.map +1 -0
  106. package/dist/ViewLayoutCollapse-CiTb-Uml.js +86 -0
  107. package/dist/ViewLayoutCollapse-CiTb-Uml.js.map +1 -0
  108. package/dist/ViewLayoutContent-CvMoJYPF.js +13 -0
  109. package/dist/ViewLayoutContent-CvMoJYPF.js.map +1 -0
  110. package/dist/ViewLayoutSection-mUqKbQry.js +23 -0
  111. package/dist/ViewLayoutSection-mUqKbQry.js.map +1 -0
  112. package/dist/WatchModeToggle-D_eAiTWJ.js +41 -0
  113. package/dist/WatchModeToggle-D_eAiTWJ.js.map +1 -0
  114. package/dist/_plugin-vue_export-helper-BmmBcIzD.js +8 -0
  115. package/dist/analytics-BZimCWcw.js +7 -0
  116. package/dist/analytics-BZimCWcw.js.map +1 -0
  117. package/dist/build-request-security-BQjNr2MD.js +41 -0
  118. package/dist/build-request-security-BQjNr2MD.js.map +1 -0
  119. package/dist/code-input-iq-moLxi.js +775 -0
  120. package/dist/code-input-iq-moLxi.js.map +1 -0
  121. package/dist/components/AddressBar/AddressBar.vue.d.ts +1 -1
  122. package/dist/components/AddressBar/index.d.ts +1 -1
  123. package/dist/components/AddressBar/index.js +5 -4
  124. package/dist/components/CodeInput/CodeInput.vue.d.ts +1 -1
  125. package/dist/components/CodeInput/codeVariableWidget.d.ts +1 -1
  126. package/dist/components/CodeInput/index.d.ts +1 -1
  127. package/dist/components/CodeInput/index.js +2 -4
  128. package/dist/components/CommandPalette/index.d.ts +1 -1
  129. package/dist/components/CommandPalette/index.js +3 -4
  130. package/dist/components/DataTable/DataTableInput.vue.d.ts +2 -2
  131. package/dist/components/DataTable/index.d.ts +8 -8
  132. package/dist/components/DataTable/index.js +6 -18
  133. package/dist/components/Form/LabelInput.vue.d.ts +1 -1
  134. package/dist/components/HttpMethod/index.d.ts +1 -1
  135. package/dist/components/HttpMethod/index.js +2 -4
  136. package/dist/components/ImportCollection/index.d.ts +1 -1
  137. package/dist/components/ImportCollection/index.js +2 -4
  138. package/dist/components/ImportCollection/utils/import-collection.d.ts +1 -1
  139. package/dist/components/ImportCollection/utils/workspace-store-is-empty.d.ts +1 -1
  140. package/dist/components/Server/ServerVariablesForm.vue.d.ts +1 -1
  141. package/dist/components/Server/index.d.ts +3 -3
  142. package/dist/components/Server/index.js +3 -8
  143. package/dist/components/Sidebar/index.d.ts +1 -1
  144. package/dist/components/Sidebar/index.js +2 -4
  145. package/dist/components/ViewLayout/index.d.ts +1 -1
  146. package/dist/components/ViewLayout/index.js +2 -4
  147. package/dist/components/index.d.ts +3 -3
  148. package/dist/components/index.js +7 -8
  149. package/dist/components-CSxJTn6F.js +183 -0
  150. package/dist/components-CSxJTn6F.js.map +1 -0
  151. package/dist/components-ChixwQhN.js +61 -0
  152. package/dist/components-ChixwQhN.js.map +1 -0
  153. package/dist/computer-D7VW3Ruy.js +562 -0
  154. package/dist/computer-D7VW3Ruy.js.map +1 -0
  155. package/dist/consts-CyGRb9dl.js +318 -0
  156. package/dist/consts-CyGRb9dl.js.map +1 -0
  157. package/dist/curl-nbw1OxbV.js +54 -0
  158. package/dist/curl-nbw1OxbV.js.map +1 -0
  159. package/dist/data-table-PL7e8NRO.js +282 -0
  160. package/dist/data-table-PL7e8NRO.js.map +1 -0
  161. package/dist/editor-BZ_J0eze.js +466 -0
  162. package/dist/editor-BZ_J0eze.js.map +1 -0
  163. package/dist/environments-ByLK9lnC.js +592 -0
  164. package/dist/environments-ByLK9lnC.js.map +1 -0
  165. package/dist/formatters-DOGXZq9R.js +36 -0
  166. package/dist/formatters-DOGXZq9R.js.map +1 -0
  167. package/dist/forms-CZX6cFDS.js +42 -0
  168. package/dist/forms-CZX6cFDS.js.map +1 -0
  169. package/dist/get-active-environment-CkxyQ1dM.js +19 -0
  170. package/dist/get-active-environment-CkxyQ1dM.js.map +1 -0
  171. package/dist/get-resolved-url-BUCwrBzc.js +30 -0
  172. package/dist/get-resolved-url-BUCwrBzc.js.map +1 -0
  173. package/dist/get-server-url-o3On8CEr.js +32 -0
  174. package/dist/get-server-url-o3On8CEr.js.map +1 -0
  175. package/dist/get-servers-B_WNlQWB.js +106 -0
  176. package/dist/get-servers-B_WNlQWB.js.map +1 -0
  177. package/dist/get-snippet-DBRUSfZ2.js +39 -0
  178. package/dist/get-snippet-DBRUSfZ2.js.map +1 -0
  179. package/dist/global-cookies-D3ZS9ON3.js +184 -0
  180. package/dist/global-cookies-D3ZS9ON3.js.map +1 -0
  181. package/dist/hooks/index.d.ts +4 -4
  182. package/dist/hooks/index.js +3 -11
  183. package/dist/hooks/useSidebar.d.ts +1 -1
  184. package/dist/hooks-BvZxH4XB.js +80 -0
  185. package/dist/hooks-BvZxH4XB.js.map +1 -0
  186. package/dist/index.d.ts +3 -3
  187. package/dist/index.js +8 -12
  188. package/dist/layout-BWiL7dfb.js +81 -0
  189. package/dist/layout-BWiL7dfb.js.map +1 -0
  190. package/dist/layouts/App/create-api-client-app.d.ts +9 -9
  191. package/dist/layouts/App/index.d.ts +2 -2
  192. package/dist/layouts/App/index.js +5 -7
  193. package/dist/layouts/Modal/create-api-client-modal.d.ts +1 -1
  194. package/dist/layouts/Modal/index.d.ts +2 -2
  195. package/dist/layouts/Modal/index.js +3 -4
  196. package/dist/layouts/Web/create-api-client-web.d.ts +9 -9
  197. package/dist/layouts/Web/index.d.ts +2 -2
  198. package/dist/layouts/Web/index.js +101 -6
  199. package/dist/layouts/Web/index.js.map +1 -0
  200. package/dist/libs/create-client.d.ts +9 -9
  201. package/dist/libs/create-client.d.ts.map +1 -1
  202. package/dist/libs/environment-parser.d.ts +1 -1
  203. package/dist/libs/get-request-uid-by-path-method.d.ts +1 -1
  204. package/dist/libs/hot-keys.d.ts +1 -1
  205. package/dist/libs/importers/index.d.ts +1 -1
  206. package/dist/libs/importers/index.js +2 -4
  207. package/dist/libs/index.d.ts +15 -15
  208. package/dist/libs/index.js +6 -45
  209. package/dist/libs/local-storage.d.ts +1 -1
  210. package/dist/libs/send-request/create-request-operation.d.ts +3 -3
  211. package/dist/libs/send-request/index.d.ts +3 -3
  212. package/dist/libs/send-request/index.js +3 -8
  213. package/dist/libs-spbv4P0g.js +249 -0
  214. package/dist/libs-spbv4P0g.js.map +1 -0
  215. package/dist/monacoeditorwork/json.worker.bundle.js +8 -8
  216. package/dist/monacoeditorwork/yaml.worker.bundle.js +151 -151
  217. package/dist/operation-block-BnMIKAOh.js +1624 -0
  218. package/dist/operation-block-BnMIKAOh.js.map +1 -0
  219. package/dist/operation-code-sample-ZUTueV3v.js +1726 -0
  220. package/dist/operation-code-sample-ZUTueV3v.js.map +1 -0
  221. package/dist/parse-curl-BtypQT3D.js +106 -0
  222. package/dist/parse-curl-BtypQT3D.js.map +1 -0
  223. package/dist/plugins/hooks/usePluginManager.d.ts +1 -1
  224. package/dist/plugins/index.d.ts +2 -2
  225. package/dist/plugins/index.js +2 -7
  226. package/dist/plugins/plugin-manager.d.ts +10 -4
  227. package/dist/plugins/plugin-manager.d.ts.map +1 -1
  228. package/dist/plugins-B52hCIyZ.js +50 -0
  229. package/dist/plugins-B52hCIyZ.js.map +1 -0
  230. package/dist/rabbitjump-CMZXAR6d.js +9 -0
  231. package/dist/rabbitjump-CMZXAR6d.js.map +1 -0
  232. package/dist/request-block-DwsGy64Q.js +1466 -0
  233. package/dist/request-block-DwsGy64Q.js.map +1 -0
  234. package/dist/resize-D2IYvVdh.js +114 -0
  235. package/dist/resize-D2IYvVdh.js.map +1 -0
  236. package/dist/response-block-DmkaDZYs.js +1188 -0
  237. package/dist/response-block-DmkaDZYs.js.map +1 -0
  238. package/dist/scalar-address-bar-block--Vs6IBU1.js +425 -0
  239. package/dist/scalar-address-bar-block--Vs6IBU1.js.map +1 -0
  240. package/dist/scalar-auth-selector-block-DI3DLag9.js +1886 -0
  241. package/dist/scalar-auth-selector-block-DI3DLag9.js.map +1 -0
  242. package/dist/search-CmsQQkjn.js +151 -0
  243. package/dist/search-CmsQQkjn.js.map +1 -0
  244. package/dist/send-request-BsTfRiBC.js +348 -0
  245. package/dist/send-request-BsTfRiBC.js.map +1 -0
  246. package/dist/server-tcI-OCyx.js +140 -0
  247. package/dist/server-tcI-OCyx.js.map +1 -0
  248. package/dist/set-request-cookies-BJJhsU4A.js +88 -0
  249. package/dist/set-request-cookies-BJJhsU4A.js.map +1 -0
  250. package/dist/settings-BKk_1lcH.js +455 -0
  251. package/dist/settings-BKk_1lcH.js.map +1 -0
  252. package/dist/sidebar-ceSbYmnt.js +217 -0
  253. package/dist/sidebar-ceSbYmnt.js.map +1 -0
  254. package/dist/store/collections.d.ts +1 -1
  255. package/dist/store/environment.d.ts +1 -1
  256. package/dist/store/events.d.ts +8 -8
  257. package/dist/store/import-spec.d.ts +2 -2
  258. package/dist/store/index.d.ts +2 -2
  259. package/dist/store/index.js +2 -10
  260. package/dist/store/request-example.d.ts +1 -1
  261. package/dist/store/requests.d.ts +1 -1
  262. package/dist/store/security-schemes.d.ts +1 -1
  263. package/dist/store/servers.d.ts +1 -1
  264. package/dist/store/store.d.ts +7 -7
  265. package/dist/store/tags.d.ts +1 -1
  266. package/dist/store/workspace.d.ts +1 -1
  267. package/dist/store-DpSUVhjp.js +1512 -0
  268. package/dist/store-DpSUVhjp.js.map +1 -0
  269. package/dist/string-template-sS5PtY6T.js +64 -0
  270. package/dist/string-template-sS5PtY6T.js.map +1 -0
  271. package/dist/style.css +10372 -1
  272. package/dist/types/index.js +0 -1
  273. package/dist/use-global-hot-keys-D8Ai8Qbm.js +274 -0
  274. package/dist/use-global-hot-keys-D8Ai8Qbm.js.map +1 -0
  275. package/dist/useSidebar-DLTwHDI-.js +45 -0
  276. package/dist/useSidebar-DLTwHDI-.js.map +1 -0
  277. package/dist/v2/blocks/operation-block/OperationBlock.vue.d.ts +3 -3
  278. package/dist/v2/blocks/operation-block/components/Header.vue.d.ts +2 -2
  279. package/dist/v2/blocks/operation-block/helpers/build-request-security.d.ts +2 -2
  280. package/dist/v2/blocks/operation-block/helpers/build-request.d.ts +2 -2
  281. package/dist/v2/blocks/operation-block/helpers/build-request.d.ts.map +1 -1
  282. package/dist/v2/blocks/operation-block/helpers/har-to-fetch-response.d.ts +1 -1
  283. package/dist/v2/blocks/operation-block/helpers/send-request.d.ts +1 -1
  284. package/dist/v2/blocks/operation-block/index.d.ts +4 -4
  285. package/dist/v2/blocks/operation-block/index.js +20 -11
  286. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.d.ts +2 -2
  287. package/dist/v2/blocks/operation-code-sample/helpers/find-client.d.ts +1 -1
  288. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.d.ts +1 -1
  289. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.d.ts +2 -2
  290. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.d.ts +2 -2
  291. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.d.ts +1 -1
  292. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.d.ts +1 -1
  293. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.d.ts +1 -1
  294. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.d.ts +1 -1
  295. package/dist/v2/blocks/operation-code-sample/index.d.ts +6 -6
  296. package/dist/v2/blocks/operation-code-sample/index.js +2 -16
  297. package/dist/v2/blocks/request-block/RequestBlock.vue.d.ts +4 -4
  298. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.d.ts +1 -1
  299. package/dist/v2/blocks/request-block/components/RequestParams.vue.d.ts +1 -1
  300. package/dist/v2/blocks/request-block/components/RequestTable.vue.d.ts +1 -1
  301. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.d.ts +1 -1
  302. package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts +3 -2
  303. package/dist/v2/blocks/request-block/helpers/get-default-headers.d.ts.map +1 -1
  304. package/dist/v2/blocks/request-block/helpers/get-form-body-rows.d.ts +1 -1
  305. package/dist/v2/blocks/request-block/index.d.ts +1 -1
  306. package/dist/v2/blocks/request-block/index.js +9 -4
  307. package/dist/v2/blocks/response-block/ResponseBlock.vue.d.ts +1 -1
  308. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.d.ts +1 -1
  309. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.d.ts +1 -1
  310. package/dist/v2/blocks/response-block/index.d.ts +1 -1
  311. package/dist/v2/blocks/response-block/index.js +6 -4
  312. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.d.ts +2 -2
  313. package/dist/v2/blocks/scalar-address-bar-block/index.d.ts +2 -2
  314. package/dist/v2/blocks/scalar-address-bar-block/index.js +5 -4
  315. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.d.ts +3 -3
  316. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.d.ts +1 -1
  317. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.d.ts +2 -2
  318. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue.d.ts +1 -1
  319. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.d.ts +1 -1
  320. package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.d.ts +1 -1
  321. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.d.ts +2 -2
  322. package/dist/v2/blocks/scalar-auth-selector-block/helpers/openid-discovery-to-flows.d.ts +1 -1
  323. package/dist/v2/blocks/scalar-auth-selector-block/index.d.ts +4 -4
  324. package/dist/v2/blocks/scalar-auth-selector-block/index.js +6 -8
  325. package/dist/v2/components/code-input/CodeInput.vue.d.ts +1 -1
  326. package/dist/v2/components/code-input/index.d.ts +1 -1
  327. package/dist/v2/components/code-input/index.js +2 -4
  328. package/dist/v2/components/data-table/DataTableInput.vue.d.ts +1 -1
  329. package/dist/v2/components/data-table/DataTableInputSelect.vue.d.ts +1 -1
  330. package/dist/v2/components/data-table/index.d.ts +8 -8
  331. package/dist/v2/components/data-table/index.js +3 -18
  332. package/dist/v2/components/forms/index.d.ts +1 -1
  333. package/dist/v2/components/forms/index.js +2 -4
  334. package/dist/v2/components/layout/index.d.ts +1 -1
  335. package/dist/v2/components/layout/index.js +2 -4
  336. package/dist/v2/components/modals/index.d.ts +1 -1
  337. package/dist/v2/components/modals/index.js +37 -3
  338. package/dist/v2/components/modals/index.js.map +1 -0
  339. package/dist/v2/components/resize/index.d.ts +2 -2
  340. package/dist/v2/components/resize/index.js +2 -6
  341. package/dist/v2/components/server/ServerDropdown.vue.d.ts +1 -1
  342. package/dist/v2/components/server/index.d.ts +1 -1
  343. package/dist/v2/components/server/index.js +2 -4
  344. package/dist/v2/components/sidebar/Sidebar.vue.d.ts +1 -1
  345. package/dist/v2/components/sidebar/index.d.ts +3 -3
  346. package/dist/v2/components/sidebar/index.js +3 -8
  347. package/dist/v2/features/app/App.vue.d.ts +4 -4
  348. package/dist/v2/features/app/components/AppSidebar.vue.d.ts +1 -1
  349. package/dist/v2/features/app/components/index.d.ts +1 -1
  350. package/dist/v2/features/app/components/index.js +10 -5
  351. package/dist/v2/features/app/helpers/create-api-client-app.d.ts +3 -3
  352. package/dist/v2/features/app/helpers/get-route-param.d.ts +1 -1
  353. package/dist/v2/features/app/helpers/routes.d.ts +5 -5
  354. package/dist/v2/features/app/hooks/use-theme.d.ts +1 -1
  355. package/dist/v2/features/app/index.d.ts +8 -8
  356. package/dist/v2/features/app/index.js +3161 -19
  357. package/dist/v2/features/app/index.js.map +1 -0
  358. package/dist/v2/features/collection/DocumentCollection.vue.d.ts +1 -1
  359. package/dist/v2/features/collection/OperationCollection.vue.d.ts +1 -1
  360. package/dist/v2/features/collection/WorkspaceCollection.vue.d.ts +1 -1
  361. package/dist/v2/features/collection/components/Authentication.vue.d.ts +4 -4
  362. package/dist/v2/features/collection/components/Cookies.vue.d.ts +4 -4
  363. package/dist/v2/features/collection/components/Editor/Editor.vue.d.ts +4 -4
  364. package/dist/v2/features/collection/components/Editor/index.d.ts +1 -1
  365. package/dist/v2/features/collection/components/Editor/index.js +2 -4
  366. package/dist/v2/features/collection/components/Environment.vue.d.ts +4 -4
  367. package/dist/v2/features/collection/components/Overview.vue.d.ts +4 -4
  368. package/dist/v2/features/collection/components/Servers.vue.d.ts +4 -4
  369. package/dist/v2/features/collection/components/Settings.vue.d.ts +4 -4
  370. package/dist/v2/features/collection/components/Tabs.vue.d.ts +1 -1
  371. package/dist/v2/features/command-palette/TheCommandPalette.vue.d.ts +1 -1
  372. package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts +10 -45
  373. package/dist/v2/features/command-palette/hooks/use-command-palette-state.d.ts.map +1 -1
  374. package/dist/v2/features/command-palette/index.d.ts +2 -2
  375. package/dist/v2/features/command-palette/index.js +3 -6
  376. package/dist/v2/features/editor/helpers/json/create-json-model.d.ts +1 -1
  377. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.d.ts +1 -1
  378. package/dist/v2/features/editor/helpers/json/json-pointer-path.d.ts +1 -1
  379. package/dist/v2/features/editor/helpers/yaml/create-yaml-model.d.ts +1 -1
  380. package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.d.ts +1 -1
  381. package/dist/v2/features/editor/hooks/use-editor.d.ts +1 -1
  382. package/dist/v2/features/editor/hooks/use-json-pointer-link-support.d.ts +1 -1
  383. package/dist/v2/features/editor/index.d.ts +4 -4
  384. package/dist/v2/features/editor/index.js +2 -10
  385. package/dist/v2/features/environments/index.d.ts +1 -1
  386. package/dist/v2/features/environments/index.js +4 -4
  387. package/dist/v2/features/global-cookies/index.d.ts +1 -1
  388. package/dist/v2/features/global-cookies/index.js +4 -4
  389. package/dist/v2/features/modal/Modal.vue.d.ts +1 -1
  390. package/dist/v2/features/modal/helpers/create-api-client-modal.d.ts +2 -2
  391. package/dist/v2/features/modal/hooks/use-modal-sidebar.d.ts +1 -1
  392. package/dist/v2/features/modal/index.d.ts +3 -3
  393. package/dist/v2/features/modal/index.js +639 -7
  394. package/dist/v2/features/modal/index.js.map +1 -0
  395. package/dist/v2/features/modal/modal-events.d.ts +1 -1
  396. package/dist/v2/features/operation/Operation.vue.d.ts +2 -2
  397. package/dist/v2/features/operation/index.d.ts +5 -5
  398. package/dist/v2/features/operation/index.js +19 -12
  399. package/dist/v2/features/search/helpers/create-fuse-instance.d.ts +1 -1
  400. package/dist/v2/features/search/helpers/create-search-index.d.ts +1 -1
  401. package/dist/v2/features/search/index.d.ts +1 -1
  402. package/dist/v2/features/search/index.js +2 -4
  403. package/dist/v2/features/settings/index.d.ts +2 -2
  404. package/dist/v2/features/settings/index.js +2 -6
  405. package/dist/v2/helpers/get-active-proxy-url.d.ts +1 -1
  406. package/dist/v2/helpers/get-tab-details.d.ts +1 -1
  407. package/dist/v2/helpers/handle-hotkeys.d.ts +1 -1
  408. package/dist/v2/helpers/index.d.ts +2 -2
  409. package/dist/v2/helpers/index.js +3 -6
  410. package/dist/v2/hooks/use-global-hot-keys.d.ts +1 -1
  411. package/dist/views/Collection/components/EnvironmentForm.vue.d.ts +1 -1
  412. package/dist/views/Collection/components/MarkdownInput.vue.d.ts +1 -1
  413. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.d.ts +1 -1
  414. package/dist/views/Components/CodeSnippet/helpers/get-har-request.d.ts +1 -1
  415. package/dist/views/Components/CodeSnippet/helpers/get-snippet.d.ts +1 -1
  416. package/dist/views/Components/CodeSnippet/index.d.ts +4 -4
  417. package/dist/views/Components/CodeSnippet/index.js +3 -10
  418. package/dist/views/Environment/EnvironmentVariableDropdown.vue.d.ts +1 -1
  419. package/dist/views/Environment/handle-drag.d.ts +1 -1
  420. package/dist/views/Request/Request.vue.d.ts +1 -1
  421. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.d.ts +1 -1
  422. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.d.ts +1 -1
  423. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.d.ts +1 -1
  424. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.d.ts +1 -1
  425. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.d.ts +2 -2
  426. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.d.ts +1 -1
  427. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.d.ts +1 -1
  428. package/dist/views/Request/RequestSection/RequestAuth/index.d.ts +3 -3
  429. package/dist/views/Request/RequestSection/RequestAuth/index.js +4 -8
  430. package/dist/views/Request/RequestSection/RequestBody.vue.d.ts +1 -1
  431. package/dist/views/Request/RequestSection/RequestCodeExample.vue.d.ts +1 -1
  432. package/dist/views/Request/RequestSection/RequestParams.vue.d.ts +1 -1
  433. package/dist/views/Request/RequestSection/RequestPathParams.vue.d.ts +1 -1
  434. package/dist/views/Request/RequestSection/RequestSection.vue.d.ts +1 -1
  435. package/dist/views/Request/RequestSection/RequestTable.vue.d.ts +1 -1
  436. package/dist/views/Request/RequestSection/helpers/update-scheme.d.ts +1 -1
  437. package/dist/views/Request/RequestSection/index.d.ts +2 -2
  438. package/dist/views/Request/RequestSection/index.js +42 -5
  439. package/dist/views/Request/RequestSection/index.js.map +1 -0
  440. package/dist/views/Request/RequestSidebarItem.vue.d.ts +1 -1
  441. package/dist/views/Request/RequestSidebarItemMenu.vue.d.ts +3 -3
  442. package/dist/views/Request/RequestSubpageHeader.vue.d.ts +1 -1
  443. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.d.ts +1 -1
  444. package/dist/views/Request/ResponseSection/ResponseSection.vue.d.ts +1 -1
  445. package/dist/views/Request/ResponseSection/index.d.ts +2 -2
  446. package/dist/views/Request/ResponseSection/index.js +7 -6
  447. package/dist/views/Request/components/index.d.ts +1 -1
  448. package/dist/views/Request/components/index.js +2 -4
  449. package/dist/views/Request/consts/index.d.ts +2 -2
  450. package/dist/views/Request/consts/index.js +2 -10
  451. package/dist/views/Request/handle-drag.d.ts +2 -2
  452. package/dist/views/Request/libs/auth.d.ts +1 -1
  453. package/dist/views/Request/libs/index.d.ts +3 -3
  454. package/dist/views/Request/libs/index.js +3 -22
  455. package/dist/views/Request/libs/oauth2.d.ts +1 -1
  456. package/dist/views/Request/libs/watch-mode.d.ts +2 -2
  457. package/dist/views/Request/types/index.js +0 -1
  458. package/dist/watch-mode-Dbaqd9bG.js +375 -0
  459. package/dist/watch-mode-Dbaqd9bG.js.map +1 -0
  460. package/package.json +29 -33
  461. package/dist/_virtual/_plugin-vue_export-helper.js +0 -9
  462. package/dist/analytics.js +0 -9
  463. package/dist/assets/computer.ascii.js +0 -34
  464. package/dist/assets/keycap.ascii.js +0 -25
  465. package/dist/assets/rabbit.ascii.js +0 -11
  466. package/dist/assets/rabbitjump.ascii.js +0 -11
  467. package/dist/components/AddressBar/AddressBar.vue.js +0 -7
  468. package/dist/components/AddressBar/AddressBar.vue2.js +0 -160
  469. package/dist/components/AddressBar/AddressBarHistory.vue.js +0 -7
  470. package/dist/components/AddressBar/AddressBarHistory.vue2.js +0 -98
  471. package/dist/components/AddressBar/httpStatusCodeColors.js +0 -38
  472. package/dist/components/CodeInput/CodeInput.vue.js +0 -8
  473. package/dist/components/CodeInput/CodeInput.vue2.js +0 -209
  474. package/dist/components/CodeInput/codeVariableWidget.js +0 -111
  475. package/dist/components/CommandPalette/CommandActionForm.vue.js +0 -44
  476. package/dist/components/CommandPalette/CommandActionForm.vue2.js +0 -4
  477. package/dist/components/CommandPalette/CommandActionInput.vue.js +0 -52
  478. package/dist/components/CommandPalette/CommandActionInput.vue2.js +0 -4
  479. package/dist/components/CommandPalette/CommandPaletteCollection.vue.js +0 -80
  480. package/dist/components/CommandPalette/CommandPaletteCollection.vue2.js +0 -4
  481. package/dist/components/CommandPalette/CommandPaletteExample.vue.js +0 -116
  482. package/dist/components/CommandPalette/CommandPaletteExample.vue2.js +0 -4
  483. package/dist/components/CommandPalette/CommandPaletteImport.vue.js +0 -217
  484. package/dist/components/CommandPalette/CommandPaletteImport.vue2.js +0 -4
  485. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue.js +0 -7
  486. package/dist/components/CommandPalette/CommandPaletteImportCurl.vue2.js +0 -136
  487. package/dist/components/CommandPalette/CommandPaletteServer.vue.js +0 -123
  488. package/dist/components/CommandPalette/CommandPaletteServer.vue2.js +0 -4
  489. package/dist/components/CommandPalette/CommandPaletteTag.vue.js +0 -84
  490. package/dist/components/CommandPalette/CommandPaletteTag.vue2.js +0 -4
  491. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue.js +0 -48
  492. package/dist/components/CommandPalette/CommandPaletteWorkspace.vue2.js +0 -4
  493. package/dist/components/CommandPalette/TheCommandPalette.vue.js +0 -7
  494. package/dist/components/CommandPalette/TheCommandPalette.vue2.js +0 -305
  495. package/dist/components/CommandPalette/WatchModeToggle.vue.js +0 -39
  496. package/dist/components/CommandPalette/WatchModeToggle.vue2.js +0 -4
  497. package/dist/components/DataTable/DataTable.vue.js +0 -38
  498. package/dist/components/DataTable/DataTable.vue2.js +0 -4
  499. package/dist/components/DataTable/DataTableCell.vue.js +0 -26
  500. package/dist/components/DataTable/DataTableCell.vue2.js +0 -4
  501. package/dist/components/DataTable/DataTableCheckbox.vue.js +0 -53
  502. package/dist/components/DataTable/DataTableCheckbox.vue2.js +0 -4
  503. package/dist/components/DataTable/DataTableHeader.vue.js +0 -18
  504. package/dist/components/DataTable/DataTableHeader.vue2.js +0 -4
  505. package/dist/components/DataTable/DataTableInput.vue.js +0 -7
  506. package/dist/components/DataTable/DataTableInput.vue2.js +0 -124
  507. package/dist/components/DataTable/DataTableInputSelect.vue.js +0 -146
  508. package/dist/components/DataTable/DataTableInputSelect.vue2.js +0 -4
  509. package/dist/components/DataTable/DataTableRow.vue.js +0 -12
  510. package/dist/components/DataTable/DataTableText.vue.js +0 -23
  511. package/dist/components/DataTable/DataTableText.vue2.js +0 -4
  512. package/dist/components/EmptyState.vue.js +0 -7
  513. package/dist/components/EmptyState.vue2.js +0 -42
  514. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue.js +0 -113
  515. package/dist/components/EnvironmentSelector/EnvironmentSelector.vue2.js +0 -4
  516. package/dist/components/Form/Form.vue.js +0 -83
  517. package/dist/components/Form/Form.vue2.js +0 -4
  518. package/dist/components/Form/LabelInput.vue.js +0 -7
  519. package/dist/components/Form/LabelInput.vue2.js +0 -42
  520. package/dist/components/HelpfulLink.vue.js +0 -20
  521. package/dist/components/HelpfulLink.vue2.js +0 -4
  522. package/dist/components/HttpMethod/HttpMethod.vue.js +0 -7
  523. package/dist/components/HttpMethod/HttpMethod.vue2.js +0 -62
  524. package/dist/components/IconSelector.vue.js +0 -75
  525. package/dist/components/IconSelector.vue2.js +0 -4
  526. package/dist/components/ImportCollection/DropEventListener.vue.js +0 -81
  527. package/dist/components/ImportCollection/DropEventListener.vue2.js +0 -4
  528. package/dist/components/ImportCollection/ImportCollectionListener.vue.js +0 -77
  529. package/dist/components/ImportCollection/ImportCollectionListener.vue2.js +0 -4
  530. package/dist/components/ImportCollection/ImportCollectionModal.vue.js +0 -208
  531. package/dist/components/ImportCollection/ImportCollectionModal.vue3.js +0 -5
  532. package/dist/components/ImportCollection/ImportNowButton.vue.js +0 -73
  533. package/dist/components/ImportCollection/ImportNowButton.vue2.js +0 -4
  534. package/dist/components/ImportCollection/IntegrationLogo.vue.js +0 -44
  535. package/dist/components/ImportCollection/IntegrationLogo.vue2.js +0 -4
  536. package/dist/components/ImportCollection/PasteEventListener.vue.js +0 -24
  537. package/dist/components/ImportCollection/PasteEventListener.vue2.js +0 -4
  538. package/dist/components/ImportCollection/PrefetchError.vue.js +0 -27
  539. package/dist/components/ImportCollection/PrefetchError.vue2.js +0 -4
  540. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue.js +0 -20
  541. package/dist/components/ImportCollection/UrlQueryParameterChecker.vue2.js +0 -4
  542. package/dist/components/ImportCollection/WorkspaceSelector.vue.js +0 -134
  543. package/dist/components/ImportCollection/WorkspaceSelector.vue2.js +0 -4
  544. package/dist/components/ImportCollection/hooks/useUrlPrefetcher.js +0 -106
  545. package/dist/components/ImportCollection/utils/get-openapi-version.js +0 -20
  546. package/dist/components/ImportCollection/utils/import-collection.js +0 -29
  547. package/dist/components/ImportCollection/utils/is-document.js +0 -9
  548. package/dist/components/ImportCollection/utils/is-url.js +0 -9
  549. package/dist/components/ImportCollection/utils/workspace-store-is-empty.js +0 -7
  550. package/dist/components/OpenApiClientButton.vue.js +0 -7
  551. package/dist/components/OpenApiClientButton.vue2.js +0 -48
  552. package/dist/components/ScalarAsciiArt.vue.js +0 -7
  553. package/dist/components/ScalarAsciiArt.vue2.js +0 -37
  554. package/dist/components/Search/useSearch.js +0 -78
  555. package/dist/components/SectionFilter.vue.js +0 -7
  556. package/dist/components/SectionFilter.vue2.js +0 -64
  557. package/dist/components/SectionFilterButton.vue.js +0 -23
  558. package/dist/components/SectionFilterButton.vue2.js +0 -4
  559. package/dist/components/Server/ServerDropdown.vue.js +0 -132
  560. package/dist/components/Server/ServerDropdown.vue2.js +0 -4
  561. package/dist/components/Server/ServerDropdownItem.vue.js +0 -7
  562. package/dist/components/Server/ServerDropdownItem.vue2.js +0 -84
  563. package/dist/components/Server/ServerSelector.vue.js +0 -82
  564. package/dist/components/Server/ServerSelector.vue2.js +0 -4
  565. package/dist/components/Server/ServerVariablesForm.vue.js +0 -49
  566. package/dist/components/Server/ServerVariablesForm.vue2.js +0 -4
  567. package/dist/components/Server/ServerVariablesSelect.vue.js +0 -54
  568. package/dist/components/Server/ServerVariablesSelect.vue2.js +0 -4
  569. package/dist/components/Server/ServerVariablesTextbox.vue.js +0 -29
  570. package/dist/components/Server/ServerVariablesTextbox.vue2.js +0 -4
  571. package/dist/components/SideNav/DownloadAppButton.vue.js +0 -7
  572. package/dist/components/SideNav/DownloadAppButton.vue2.js +0 -33
  573. package/dist/components/SideNav/SideHelp.vue.js +0 -127
  574. package/dist/components/SideNav/SideHelp.vue2.js +0 -4
  575. package/dist/components/SideNav/SideNav.vue.js +0 -96
  576. package/dist/components/SideNav/SideNav.vue2.js +0 -4
  577. package/dist/components/SideNav/SideNavGroup.vue.js +0 -16
  578. package/dist/components/SideNav/SideNavGroup.vue2.js +0 -4
  579. package/dist/components/SideNav/SideNavLink.vue.js +0 -39
  580. package/dist/components/SideNav/SideNavLink.vue2.js +0 -4
  581. package/dist/components/SideNav/SideNavRouterLink.vue.js +0 -27
  582. package/dist/components/SideNav/SideNavRouterLink.vue2.js +0 -4
  583. package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue.js +0 -30
  584. package/dist/components/Sidebar/Actions/DeleteSidebarListElement.vue2.js +0 -4
  585. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue.js +0 -58
  586. package/dist/components/Sidebar/Actions/EditSidebarListCollection.vue2.js +0 -4
  587. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue.js +0 -29
  588. package/dist/components/Sidebar/Actions/EditSidebarListElement.vue2.js +0 -4
  589. package/dist/components/Sidebar/Actions/SidebarListElementForm.vue.js +0 -46
  590. package/dist/components/Sidebar/Actions/SidebarListElementForm.vue2.js +0 -4
  591. package/dist/components/Sidebar/Sidebar.vue.js +0 -7
  592. package/dist/components/Sidebar/Sidebar.vue2.js +0 -63
  593. package/dist/components/Sidebar/SidebarButton.vue.js +0 -33
  594. package/dist/components/Sidebar/SidebarButton.vue2.js +0 -4
  595. package/dist/components/Sidebar/SidebarList.vue.js +0 -12
  596. package/dist/components/Sidebar/SidebarListElement.vue.js +0 -8
  597. package/dist/components/Sidebar/SidebarListElement.vue2.js +0 -94
  598. package/dist/components/Sidebar/SidebarListElementActions.vue.js +0 -86
  599. package/dist/components/Sidebar/SidebarListElementActions.vue2.js +0 -4
  600. package/dist/components/Sidebar/SidebarToggle.vue.js +0 -49
  601. package/dist/components/Sidebar/SidebarToggle.vue2.js +0 -4
  602. package/dist/components/TopNav/TopNav.vue.js +0 -210
  603. package/dist/components/TopNav/TopNav.vue2.js +0 -4
  604. package/dist/components/TopNav/TopNavItem.vue.js +0 -7
  605. package/dist/components/TopNav/TopNavItem.vue2.js +0 -138
  606. package/dist/components/ViewLayout/ViewLayout.vue.js +0 -18
  607. package/dist/components/ViewLayout/ViewLayout.vue2.js +0 -4
  608. package/dist/components/ViewLayout/ViewLayoutCollapse.vue.js +0 -92
  609. package/dist/components/ViewLayout/ViewLayoutCollapse.vue2.js +0 -4
  610. package/dist/components/ViewLayout/ViewLayoutContent.vue.js +0 -12
  611. package/dist/components/ViewLayout/ViewLayoutSection.vue.js +0 -23
  612. package/dist/components/ViewLayout/ViewLayoutSection.vue2.js +0 -4
  613. package/dist/constants.js +0 -40
  614. package/dist/data/httpHeaders.js +0 -537
  615. package/dist/hooks/useAnalytics.js +0 -11
  616. package/dist/hooks/useClientConfig.js +0 -7
  617. package/dist/hooks/useFileDialog.js +0 -21
  618. package/dist/hooks/useLayout.js +0 -8
  619. package/dist/hooks/useResponseBody.js +0 -20
  620. package/dist/hooks/useSidebar.js +0 -28
  621. package/dist/layouts/App/ApiClientApp.vue.js +0 -70
  622. package/dist/layouts/App/ApiClientApp.vue3.js +0 -5
  623. package/dist/layouts/App/MainLayout.vue.js +0 -26
  624. package/dist/layouts/App/MainLayout.vue2.js +0 -4
  625. package/dist/layouts/App/create-api-client-app.js +0 -35
  626. package/dist/layouts/App/hotkeys.js +0 -21
  627. package/dist/layouts/Modal/ApiClientModal.vue.js +0 -30
  628. package/dist/layouts/Modal/ApiClientModal.vue2.js +0 -4
  629. package/dist/layouts/Modal/create-api-client-modal.js +0 -32
  630. package/dist/layouts/Web/ApiClientWeb.vue.js +0 -64
  631. package/dist/layouts/Web/ApiClientWeb.vue3.js +0 -5
  632. package/dist/layouts/Web/create-api-client-web.js +0 -32
  633. package/dist/libs/create-client.js +0 -189
  634. package/dist/libs/electron.js +0 -4
  635. package/dist/libs/env-helpers.js +0 -6
  636. package/dist/libs/environment-parser.js +0 -18
  637. package/dist/libs/errors.js +0 -16
  638. package/dist/libs/event-bus.js +0 -32
  639. package/dist/libs/extractAttachmentFilename.js +0 -18
  640. package/dist/libs/find-request.js +0 -23
  641. package/dist/libs/formatters.js +0 -10
  642. package/dist/libs/get-request-uid-by-path-method.js +0 -18
  643. package/dist/libs/getOpenApiDocumentDetails.js +0 -40
  644. package/dist/libs/hot-keys.js +0 -44
  645. package/dist/libs/importers/curl.js +0 -53
  646. package/dist/libs/isUrl.js +0 -7
  647. package/dist/libs/local-storage.js +0 -41
  648. package/dist/libs/normalize-headers.js +0 -27
  649. package/dist/libs/parse-curl.js +0 -59
  650. package/dist/libs/postman.js +0 -37
  651. package/dist/libs/send-request/build-request-security.js +0 -35
  652. package/dist/libs/send-request/create-fetch-body.js +0 -25
  653. package/dist/libs/send-request/create-fetch-headers.js +0 -11
  654. package/dist/libs/send-request/create-fetch-query-params.js +0 -33
  655. package/dist/libs/send-request/create-request-operation.js +0 -140
  656. package/dist/libs/send-request/decode-buffer.js +0 -9
  657. package/dist/libs/send-request/set-request-cookies.js +0 -58
  658. package/dist/libs/string-template.js +0 -42
  659. package/dist/libs/validate-parameters.js +0 -16
  660. package/dist/plugins/hooks/usePluginManager.js +0 -10
  661. package/dist/plugins/plugin-manager.js +0 -26
  662. package/dist/routes.js +0 -210
  663. package/dist/store/active-entities.js +0 -118
  664. package/dist/store/collections.js +0 -73
  665. package/dist/store/cookies.js +0 -13
  666. package/dist/store/environment.js +0 -32
  667. package/dist/store/events.js +0 -35
  668. package/dist/store/import-spec.js +0 -55
  669. package/dist/store/request-example.js +0 -43
  670. package/dist/store/requests.js +0 -97
  671. package/dist/store/router-params.js +0 -22
  672. package/dist/store/security-schemes.js +0 -55
  673. package/dist/store/servers.js +0 -39
  674. package/dist/store/store.js +0 -144
  675. package/dist/store/tags.js +0 -45
  676. package/dist/store/workspace.js +0 -52
  677. package/dist/v2/blocks/operation-block/OperationBlock.vue.js +0 -242
  678. package/dist/v2/blocks/operation-block/OperationBlock.vue2.js +0 -4
  679. package/dist/v2/blocks/operation-block/components/Header.vue.js +0 -7
  680. package/dist/v2/blocks/operation-block/components/Header.vue2.js +0 -100
  681. package/dist/v2/blocks/operation-block/helpers/build-request-body.js +0 -40
  682. package/dist/v2/blocks/operation-block/helpers/build-request-cookie-header.js +0 -31
  683. package/dist/v2/blocks/operation-block/helpers/build-request-parameters.js +0 -107
  684. package/dist/v2/blocks/operation-block/helpers/build-request-security.js +0 -46
  685. package/dist/v2/blocks/operation-block/helpers/build-request.js +0 -70
  686. package/dist/v2/blocks/operation-block/helpers/de-serialize-parameter.js +0 -25
  687. package/dist/v2/blocks/operation-block/helpers/decode-buffer.js +0 -9
  688. package/dist/v2/blocks/operation-block/helpers/filter-global-cookies.js +0 -14
  689. package/dist/v2/blocks/operation-block/helpers/get-cookie-header-keys.js +0 -4
  690. package/dist/v2/blocks/operation-block/helpers/get-environment-variables.js +0 -7
  691. package/dist/v2/blocks/operation-block/helpers/get-example.js +0 -36
  692. package/dist/v2/blocks/operation-block/helpers/get-resolved-url.js +0 -17
  693. package/dist/v2/blocks/operation-block/helpers/get-selected-body-content-type.js +0 -4
  694. package/dist/v2/blocks/operation-block/helpers/get-server-url.js +0 -12
  695. package/dist/v2/blocks/operation-block/helpers/har-to-fetch-request.js +0 -31
  696. package/dist/v2/blocks/operation-block/helpers/har-to-fetch-response.js +0 -43
  697. package/dist/v2/blocks/operation-block/helpers/response-cache.js +0 -12
  698. package/dist/v2/blocks/operation-block/helpers/send-request.js +0 -122
  699. package/dist/v2/blocks/operation-block/helpers/serialize-parameter.js +0 -49
  700. package/dist/v2/blocks/operation-block/helpers/validate-path-parameters.js +0 -17
  701. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue.js +0 -56
  702. package/dist/v2/blocks/operation-code-sample/components/ExamplePicker.vue2.js +0 -4
  703. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue.js +0 -30
  704. package/dist/v2/blocks/operation-code-sample/components/HttpMethod.vue2.js +0 -4
  705. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue.js +0 -7
  706. package/dist/v2/blocks/operation-code-sample/components/OperationCodeSample.vue2.js +0 -227
  707. package/dist/v2/blocks/operation-code-sample/helpers/find-client.js +0 -22
  708. package/dist/v2/blocks/operation-code-sample/helpers/generate-client-options.js +0 -27
  709. package/dist/v2/blocks/operation-code-sample/helpers/generate-code-snippet.js +0 -40
  710. package/dist/v2/blocks/operation-code-sample/helpers/get-clients.js +0 -20
  711. package/dist/v2/blocks/operation-code-sample/helpers/get-custom-code-samples.js +0 -4
  712. package/dist/v2/blocks/operation-code-sample/helpers/get-example-from-schema.js +0 -302
  713. package/dist/v2/blocks/operation-code-sample/helpers/get-resolved-ref-deep.js +0 -28
  714. package/dist/v2/blocks/operation-code-sample/helpers/get-secrets.js +0 -10
  715. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/operation-to-har.js +0 -67
  716. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-body.js +0 -66
  717. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-parameters.js +0 -172
  718. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-security-schemes.js +0 -55
  719. package/dist/v2/blocks/operation-code-sample/helpers/operation-to-har/process-server-url.js +0 -18
  720. package/dist/v2/blocks/request-block/RequestBlock.vue.js +0 -7
  721. package/dist/v2/blocks/request-block/RequestBlock.vue2.js +0 -347
  722. package/dist/v2/blocks/request-block/components/RequestBody.vue.js +0 -7
  723. package/dist/v2/blocks/request-block/components/RequestBody.vue2.js +0 -191
  724. package/dist/v2/blocks/request-block/components/RequestBodyForm.vue.js +0 -84
  725. package/dist/v2/blocks/request-block/components/RequestBodyForm.vue2.js +0 -4
  726. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue.js +0 -135
  727. package/dist/v2/blocks/request-block/components/RequestCodeSnippet.vue2.js +0 -4
  728. package/dist/v2/blocks/request-block/components/RequestParams.vue.js +0 -78
  729. package/dist/v2/blocks/request-block/components/RequestParams.vue2.js +0 -4
  730. package/dist/v2/blocks/request-block/components/RequestTable.vue.js +0 -7
  731. package/dist/v2/blocks/request-block/components/RequestTable.vue2.js +0 -74
  732. package/dist/v2/blocks/request-block/components/RequestTableRow.vue.js +0 -204
  733. package/dist/v2/blocks/request-block/components/RequestTableRow.vue2.js +0 -4
  734. package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue.js +0 -7
  735. package/dist/v2/blocks/request-block/components/RequestTableTooltip.vue2.js +0 -63
  736. package/dist/v2/blocks/request-block/helpers/create-parameter-handlers.js +0 -55
  737. package/dist/v2/blocks/request-block/helpers/files.js +0 -7
  738. package/dist/v2/blocks/request-block/helpers/get-default-headers.js +0 -26
  739. package/dist/v2/blocks/request-block/helpers/get-form-body-rows.js +0 -29
  740. package/dist/v2/blocks/request-block/helpers/get-parameter-content.js +0 -9
  741. package/dist/v2/blocks/request-block/helpers/get-parameter-schema.js +0 -6
  742. package/dist/v2/blocks/request-block/helpers/get-request-body-example.js +0 -16
  743. package/dist/v2/blocks/request-block/helpers/group-by.js +0 -10
  744. package/dist/v2/blocks/request-block/helpers/is-param-disabled.js +0 -7
  745. package/dist/v2/blocks/request-block/helpers/validate-parameter.js +0 -32
  746. package/dist/v2/blocks/response-block/ResponseBlock.vue.js +0 -7
  747. package/dist/v2/blocks/response-block/ResponseBlock.vue2.js +0 -180
  748. package/dist/v2/blocks/response-block/components/Headers.vue.js +0 -96
  749. package/dist/v2/blocks/response-block/components/Headers.vue2.js +0 -4
  750. package/dist/v2/blocks/response-block/components/ResponseBody.vue.js +0 -7
  751. package/dist/v2/blocks/response-block/components/ResponseBody.vue2.js +0 -87
  752. package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue.js +0 -36
  753. package/dist/v2/blocks/response-block/components/ResponseBodyDownload.vue2.js +0 -4
  754. package/dist/v2/blocks/response-block/components/ResponseBodyInfo.vue.js +0 -14
  755. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue.js +0 -7
  756. package/dist/v2/blocks/response-block/components/ResponseBodyPreview.vue2.js +0 -63
  757. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue.js +0 -7
  758. package/dist/v2/blocks/response-block/components/ResponseBodyRaw.vue2.js +0 -41
  759. package/dist/v2/blocks/response-block/components/ResponseBodyStreaming.vue.js +0 -94
  760. package/dist/v2/blocks/response-block/components/ResponseBodyStreaming.vue2.js +0 -4
  761. package/dist/v2/blocks/response-block/components/ResponseBodyToggle.vue.js +0 -25
  762. package/dist/v2/blocks/response-block/components/ResponseBodyToggle.vue2.js +0 -4
  763. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue.js +0 -52
  764. package/dist/v2/blocks/response-block/components/ResponseBodyVirtual.vue3.js +0 -5
  765. package/dist/v2/blocks/response-block/components/ResponseCookies.vue.js +0 -54
  766. package/dist/v2/blocks/response-block/components/ResponseCookies.vue2.js +0 -4
  767. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue.js +0 -7
  768. package/dist/v2/blocks/response-block/components/ResponseEmpty.vue2.js +0 -79
  769. package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue.js +0 -7
  770. package/dist/v2/blocks/response-block/components/ResponseLoadingOverlay.vue2.js +0 -46
  771. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue.js +0 -67
  772. package/dist/v2/blocks/response-block/components/ResponseMetaInformation.vue2.js +0 -4
  773. package/dist/v2/blocks/response-block/helpers/extract-filename.js +0 -18
  774. package/dist/v2/blocks/response-block/helpers/get-content-length.js +0 -12
  775. package/dist/v2/blocks/response-block/helpers/media-types.js +0 -126
  776. package/dist/v2/blocks/response-block/helpers/parse-set-cookie.js +0 -12
  777. package/dist/v2/blocks/response-block/helpers/process-response-body.js +0 -16
  778. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue.js +0 -7
  779. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBar.vue2.js +0 -208
  780. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue.js +0 -7
  781. package/dist/v2/blocks/scalar-address-bar-block/components/AddressBarHistory.vue2.js +0 -95
  782. package/dist/v2/blocks/scalar-address-bar-block/components/EnvironmentSelector.vue.js +0 -145
  783. package/dist/v2/blocks/scalar-address-bar-block/components/EnvironmentSelector.vue2.js +0 -4
  784. package/dist/v2/blocks/scalar-address-bar-block/components/httpStatusCodeColors.js +0 -38
  785. package/dist/v2/blocks/scalar-address-bar-block/hooks/use-loading-animation.js +0 -25
  786. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue.js +0 -184
  787. package/dist/v2/blocks/scalar-auth-selector-block/components/AuthSelector.vue2.js +0 -4
  788. package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue.js +0 -51
  789. package/dist/v2/blocks/scalar-auth-selector-block/components/DeleteRequestAuthModal.vue2.js +0 -4
  790. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue.js +0 -330
  791. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuth2.vue2.js +0 -4
  792. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue.js +0 -7
  793. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesAddModal.vue2.js +0 -76
  794. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue.js +0 -165
  795. package/dist/v2/blocks/scalar-auth-selector-block/components/OAuthScopesInput.vue3.js +0 -5
  796. package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue.js +0 -91
  797. package/dist/v2/blocks/scalar-auth-selector-block/components/OpenIDConnect.vue2.js +0 -4
  798. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue.js +0 -83
  799. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTable.vue2.js +0 -4
  800. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue.js +0 -46
  801. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthDataTableInput.vue2.js +0 -4
  802. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue.js +0 -244
  803. package/dist/v2/blocks/scalar-auth-selector-block/components/RequestAuthTab.vue2.js +0 -4
  804. package/dist/v2/blocks/scalar-auth-selector-block/helpers/auth-options.js +0 -97
  805. package/dist/v2/blocks/scalar-auth-selector-block/helpers/extract-security-scheme-secrets.js +0 -135
  806. package/dist/v2/blocks/scalar-auth-selector-block/helpers/fetch-openid-connect-discovery.js +0 -35
  807. package/dist/v2/blocks/scalar-auth-selector-block/helpers/is-auth-optional.js +0 -7
  808. package/dist/v2/blocks/scalar-auth-selector-block/helpers/merge-security.js +0 -23
  809. package/dist/v2/blocks/scalar-auth-selector-block/helpers/oauth.js +0 -139
  810. package/dist/v2/blocks/scalar-auth-selector-block/helpers/openid-discovery-to-flows.js +0 -27
  811. package/dist/v2/blocks/scalar-auth-selector-block/helpers/security-scheme.js +0 -64
  812. package/dist/v2/components/callout/Callout.vue.js +0 -7
  813. package/dist/v2/components/callout/Callout.vue2.js +0 -43
  814. package/dist/v2/components/code-input/CodeInput.vue.js +0 -8
  815. package/dist/v2/components/code-input/CodeInput.vue2.js +0 -213
  816. package/dist/v2/components/code-input/code-variable-widget.js +0 -106
  817. package/dist/v2/components/data-table/DataTable.vue.js +0 -38
  818. package/dist/v2/components/data-table/DataTable.vue2.js +0 -4
  819. package/dist/v2/components/data-table/DataTableCell.vue.js +0 -26
  820. package/dist/v2/components/data-table/DataTableCell.vue2.js +0 -4
  821. package/dist/v2/components/data-table/DataTableCheckbox.vue.js +0 -53
  822. package/dist/v2/components/data-table/DataTableCheckbox.vue2.js +0 -4
  823. package/dist/v2/components/data-table/DataTableHeader.vue.js +0 -18
  824. package/dist/v2/components/data-table/DataTableHeader.vue2.js +0 -4
  825. package/dist/v2/components/data-table/DataTableInput.vue.js +0 -7
  826. package/dist/v2/components/data-table/DataTableInput.vue2.js +0 -121
  827. package/dist/v2/components/data-table/DataTableInputSelect.vue.js +0 -149
  828. package/dist/v2/components/data-table/DataTableInputSelect.vue2.js +0 -4
  829. package/dist/v2/components/data-table/DataTableRow.vue.js +0 -12
  830. package/dist/v2/components/data-table/DataTableText.vue.js +0 -23
  831. package/dist/v2/components/data-table/DataTableText.vue2.js +0 -4
  832. package/dist/v2/components/forms/ConfirmationForm.vue.js +0 -45
  833. package/dist/v2/components/forms/ConfirmationForm.vue2.js +0 -4
  834. package/dist/v2/components/layout/CollapsibleSection.vue.js +0 -89
  835. package/dist/v2/components/layout/CollapsibleSection.vue2.js +0 -4
  836. package/dist/v2/components/layout/ValueEmitter.vue.js +0 -21
  837. package/dist/v2/components/layout/ValueEmitter.vue2.js +0 -4
  838. package/dist/v2/components/modals/DeleteModal.vue.js +0 -31
  839. package/dist/v2/components/modals/DeleteModal.vue2.js +0 -4
  840. package/dist/v2/components/modals/ModalClientContainer.vue.js +0 -7
  841. package/dist/v2/components/modals/ModalClientContainer.vue2.js +0 -60
  842. package/dist/v2/components/resize/Resize.vue.js +0 -8
  843. package/dist/v2/components/resize/Resize.vue2.js +0 -36
  844. package/dist/v2/components/resize/use-split-resize.js +0 -57
  845. package/dist/v2/components/server/ServerDropdown.vue.js +0 -91
  846. package/dist/v2/components/server/ServerDropdown.vue2.js +0 -4
  847. package/dist/v2/components/server/ServerDropdownItem.vue.js +0 -7
  848. package/dist/v2/components/server/ServerDropdownItem.vue2.js +0 -49
  849. package/dist/v2/components/sidebar/Sidebar.vue.js +0 -115
  850. package/dist/v2/components/sidebar/Sidebar.vue2.js +0 -4
  851. package/dist/v2/components/sidebar/SidebarMenu.vue.js +0 -52
  852. package/dist/v2/components/sidebar/SidebarMenu.vue2.js +0 -4
  853. package/dist/v2/components/sidebar/SidebarToggle.vue.js +0 -52
  854. package/dist/v2/components/sidebar/SidebarToggle.vue2.js +0 -4
  855. package/dist/v2/features/app/App.vue.js +0 -152
  856. package/dist/v2/features/app/App.vue3.js +0 -5
  857. package/dist/v2/features/app/app-events.js +0 -251
  858. package/dist/v2/features/app/app-state.js +0 -415
  859. package/dist/v2/features/app/components/AppSidebar.vue.js +0 -7
  860. package/dist/v2/features/app/components/AppSidebar.vue2.js +0 -304
  861. package/dist/v2/features/app/components/CreateWorkspaceModal.vue.js +0 -56
  862. package/dist/v2/features/app/components/CreateWorkspaceModal.vue2.js +0 -4
  863. package/dist/v2/features/app/components/DesktopTab.vue.js +0 -7
  864. package/dist/v2/features/app/components/DesktopTab.vue2.js +0 -134
  865. package/dist/v2/features/app/components/DesktopTabs.vue.js +0 -56
  866. package/dist/v2/features/app/components/DesktopTabs.vue2.js +0 -4
  867. package/dist/v2/features/app/components/DownloadAppButton.vue.js +0 -7
  868. package/dist/v2/features/app/components/DownloadAppButton.vue2.js +0 -19
  869. package/dist/v2/features/app/components/SidebarItemMenu.vue.js +0 -185
  870. package/dist/v2/features/app/components/SidebarItemMenu.vue2.js +0 -4
  871. package/dist/v2/features/app/components/SplashScreen.vue.js +0 -7
  872. package/dist/v2/features/app/components/SplashScreen.vue2.js +0 -18
  873. package/dist/v2/features/app/helpers/create-api-client-app.js +0 -36
  874. package/dist/v2/features/app/helpers/filter-workspaces.js +0 -5
  875. package/dist/v2/features/app/helpers/get-route-param.js +0 -9
  876. package/dist/v2/features/app/helpers/group-workspaces.js +0 -23
  877. package/dist/v2/features/app/helpers/routes.js +0 -157
  878. package/dist/v2/features/app/hooks/use-document-watcher.js +0 -66
  879. package/dist/v2/features/app/hooks/use-theme.js +0 -48
  880. package/dist/v2/features/collection/DocumentCollection.vue.js +0 -336
  881. package/dist/v2/features/collection/DocumentCollection.vue3.js +0 -5
  882. package/dist/v2/features/collection/OperationCollection.vue.js +0 -86
  883. package/dist/v2/features/collection/OperationCollection.vue2.js +0 -4
  884. package/dist/v2/features/collection/WorkspaceCollection.vue.js +0 -68
  885. package/dist/v2/features/collection/WorkspaceCollection.vue2.js +0 -4
  886. package/dist/v2/features/collection/components/Authentication.vue.js +0 -7
  887. package/dist/v2/features/collection/components/Authentication.vue2.js +0 -154
  888. package/dist/v2/features/collection/components/Cookies.vue.js +0 -52
  889. package/dist/v2/features/collection/components/Cookies.vue2.js +0 -4
  890. package/dist/v2/features/collection/components/Editor/Editor.vue.js +0 -7
  891. package/dist/v2/features/collection/components/Editor/Editor.vue2.js +0 -344
  892. package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue.js +0 -78
  893. package/dist/v2/features/collection/components/Editor/components/EditorDiagnosticsPanel.vue2.js +0 -4
  894. package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue.js +0 -83
  895. package/dist/v2/features/collection/components/Editor/components/EditorSavePanel.vue2.js +0 -4
  896. package/dist/v2/features/collection/components/Editor/helpers/get-diagnostic-counts.js +0 -10
  897. package/dist/v2/features/collection/components/Editor/helpers/get-operation-context.js +0 -5
  898. package/dist/v2/features/collection/components/Editor/helpers/get-visible-diagnostics.js +0 -5
  899. package/dist/v2/features/collection/components/Editor/helpers/parse-editor-object.js +0 -21
  900. package/dist/v2/features/collection/components/Editor/helpers/stringify-document.js +0 -5
  901. package/dist/v2/features/collection/components/Editor/hooks/use-editor-state.js +0 -25
  902. package/dist/v2/features/collection/components/Environment.vue.js +0 -54
  903. package/dist/v2/features/collection/components/Environment.vue2.js +0 -4
  904. package/dist/v2/features/collection/components/Form.vue.js +0 -78
  905. package/dist/v2/features/collection/components/Form.vue2.js +0 -4
  906. package/dist/v2/features/collection/components/LabelInput.vue.js +0 -7
  907. package/dist/v2/features/collection/components/LabelInput.vue2.js +0 -35
  908. package/dist/v2/features/collection/components/Overview.vue.js +0 -7
  909. package/dist/v2/features/collection/components/Overview.vue2.js +0 -208
  910. package/dist/v2/features/collection/components/Servers.vue.js +0 -210
  911. package/dist/v2/features/collection/components/Servers.vue2.js +0 -4
  912. package/dist/v2/features/collection/components/Settings.vue.js +0 -61
  913. package/dist/v2/features/collection/components/Settings.vue2.js +0 -4
  914. package/dist/v2/features/collection/components/SyncConflictResolutionEditor.vue.js +0 -7
  915. package/dist/v2/features/collection/components/SyncConflictResolutionEditor.vue2.js +0 -136
  916. package/dist/v2/features/collection/components/Tabs.vue.js +0 -44
  917. package/dist/v2/features/collection/components/Tabs.vue2.js +0 -4
  918. package/dist/v2/features/collection/helpers/get-default-operation-security-toggle.js +0 -13
  919. package/dist/v2/features/command-palette/TheCommandPalette.vue.js +0 -7
  920. package/dist/v2/features/command-palette/TheCommandPalette.vue2.js +0 -152
  921. package/dist/v2/features/command-palette/components/CommandActionForm.vue.js +0 -48
  922. package/dist/v2/features/command-palette/components/CommandActionForm.vue2.js +0 -4
  923. package/dist/v2/features/command-palette/components/CommandActionInput.vue.js +0 -52
  924. package/dist/v2/features/command-palette/components/CommandActionInput.vue2.js +0 -4
  925. package/dist/v2/features/command-palette/components/CommandPaletteExample.vue.js +0 -211
  926. package/dist/v2/features/command-palette/components/CommandPaletteExample.vue2.js +0 -4
  927. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue.js +0 -182
  928. package/dist/v2/features/command-palette/components/CommandPaletteImport.vue2.js +0 -4
  929. package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue.js +0 -7
  930. package/dist/v2/features/command-palette/components/CommandPaletteImportCurl.vue2.js +0 -115
  931. package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue.js +0 -78
  932. package/dist/v2/features/command-palette/components/CommandPaletteOpenApiDocument.vue2.js +0 -4
  933. package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue.js +0 -221
  934. package/dist/v2/features/command-palette/components/CommandPaletteRequest.vue2.js +0 -4
  935. package/dist/v2/features/command-palette/components/CommandPaletteTag.vue.js +0 -114
  936. package/dist/v2/features/command-palette/components/CommandPaletteTag.vue2.js +0 -4
  937. package/dist/v2/features/command-palette/components/WatchModeToggle.vue.js +0 -40
  938. package/dist/v2/features/command-palette/components/WatchModeToggle.vue2.js +0 -4
  939. package/dist/v2/features/command-palette/helpers/generate-unique-slug.js +0 -11
  940. package/dist/v2/features/command-palette/helpers/get-openapi-document-details.js +0 -31
  941. package/dist/v2/features/command-palette/helpers/get-openapi-from-postman.js +0 -11
  942. package/dist/v2/features/command-palette/helpers/get-operation-from-curl.js +0 -76
  943. package/dist/v2/features/command-palette/helpers/get-postman-document-details.js +0 -18
  944. package/dist/v2/features/command-palette/helpers/import-document-to-workspace.js +0 -33
  945. package/dist/v2/features/command-palette/helpers/is-postman-collection.js +0 -11
  946. package/dist/v2/features/command-palette/helpers/load-document-from-source.js +0 -52
  947. package/dist/v2/features/command-palette/hooks/use-command-palette-state.js +0 -139
  948. package/dist/v2/features/editor/config.js +0 -16
  949. package/dist/v2/features/editor/helpers/configure-language-support.js +0 -39
  950. package/dist/v2/features/editor/helpers/ensure-monaco-environment.js +0 -20
  951. package/dist/v2/features/editor/helpers/json/create-json-model.js +0 -19
  952. package/dist/v2/features/editor/helpers/json/get-json-ast-node-from-path.js +0 -9
  953. package/dist/v2/features/editor/helpers/json/json-ast.js +0 -24
  954. package/dist/v2/features/editor/helpers/json/json-pointer-links.js +0 -72
  955. package/dist/v2/features/editor/helpers/json/json-pointer-path.js +0 -21
  956. package/dist/v2/features/editor/helpers/range-to-whole-line.js +0 -8
  957. package/dist/v2/features/editor/helpers/theme/apply-scalar-theme.js +0 -56
  958. package/dist/v2/features/editor/helpers/theme/load-css-variables.js +0 -21
  959. package/dist/v2/features/editor/helpers/yaml/create-yaml-model.js +0 -19
  960. package/dist/v2/features/editor/helpers/yaml/get-yaml-node-range-from-path.js +0 -50
  961. package/dist/v2/features/editor/hooks/use-editor-markers.js +0 -34
  962. package/dist/v2/features/editor/hooks/use-editor.js +0 -107
  963. package/dist/v2/features/editor/hooks/use-json-pointer-link-support.js +0 -27
  964. package/dist/v2/features/editor/hooks/use-three-way-merge-editor.js +0 -316
  965. package/dist/v2/features/editor/schemas/openapi-3.1-schema.json.js +0 -25
  966. package/dist/v2/features/environments/EnvironmentsList.vue.js +0 -68
  967. package/dist/v2/features/environments/EnvironmentsList.vue2.js +0 -4
  968. package/dist/v2/features/environments/components/Environment.vue.js +0 -66
  969. package/dist/v2/features/environments/components/Environment.vue2.js +0 -4
  970. package/dist/v2/features/environments/components/EnvironmentColors.vue.js +0 -121
  971. package/dist/v2/features/environments/components/EnvironmentColors.vue2.js +0 -4
  972. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue.js +0 -85
  973. package/dist/v2/features/environments/components/EnvironmentCreateModal.vue2.js +0 -4
  974. package/dist/v2/features/environments/components/EnvironmentDeleteModal.vue.js +0 -53
  975. package/dist/v2/features/environments/components/EnvironmentDeleteModal.vue2.js +0 -4
  976. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue.js +0 -109
  977. package/dist/v2/features/environments/components/EnvironmentVariablesDropdown.vue2.js +0 -4
  978. package/dist/v2/features/environments/components/EnvironmentVariablesTable.vue.js +0 -7
  979. package/dist/v2/features/environments/components/EnvironmentVariablesTable.vue2.js +0 -136
  980. package/dist/v2/features/global-cookies/components/CookiesTable.vue.js +0 -7
  981. package/dist/v2/features/global-cookies/components/CookiesTable.vue2.js +0 -189
  982. package/dist/v2/features/modal/Modal.vue.js +0 -122
  983. package/dist/v2/features/modal/Modal.vue2.js +0 -4
  984. package/dist/v2/features/modal/helpers/create-api-client-modal.js +0 -89
  985. package/dist/v2/features/modal/helpers/map-hidden-clients-config.js +0 -36
  986. package/dist/v2/features/modal/helpers/resolve-route-parameters.js +0 -29
  987. package/dist/v2/features/modal/helpers/restore-workspace-state.js +0 -36
  988. package/dist/v2/features/modal/hooks/use-modal-sidebar.js +0 -93
  989. package/dist/v2/features/modal/modal-events.js +0 -44
  990. package/dist/v2/features/operation/Operation.vue.js +0 -126
  991. package/dist/v2/features/operation/Operation.vue2.js +0 -4
  992. package/dist/v2/features/operation/helpers/combine-params.js +0 -14
  993. package/dist/v2/features/operation/helpers/get-security-requirements.js +0 -4
  994. package/dist/v2/features/operation/helpers/get-selected-security.js +0 -18
  995. package/dist/v2/features/operation/helpers/get-selected-server.js +0 -4
  996. package/dist/v2/features/search/helpers/create-fuse-instance.js +0 -43
  997. package/dist/v2/features/search/helpers/create-search-index.js +0 -63
  998. package/dist/v2/features/search/hooks/use-search-index.js +0 -18
  999. package/dist/v2/features/settings/CollectionSettings.vue.js +0 -275
  1000. package/dist/v2/features/settings/CollectionSettings.vue2.js +0 -4
  1001. package/dist/v2/features/settings/DocumentSettings.vue.js +0 -115
  1002. package/dist/v2/features/settings/DocumentSettings.vue2.js +0 -4
  1003. package/dist/v2/features/settings/components/Appearance.vue.js +0 -88
  1004. package/dist/v2/features/settings/components/Appearance.vue2.js +0 -4
  1005. package/dist/v2/features/settings/components/Section.vue.js +0 -35
  1006. package/dist/v2/features/settings/components/Section.vue2.js +0 -4
  1007. package/dist/v2/features/settings/helpers/get-theme-colors.js +0 -16
  1008. package/dist/v2/helpers/drag-handle-factory.js +0 -120
  1009. package/dist/v2/helpers/generate-location-id.js +0 -10
  1010. package/dist/v2/helpers/get-active-environment.js +0 -22
  1011. package/dist/v2/helpers/get-active-proxy-url.js +0 -5
  1012. package/dist/v2/helpers/get-servers.js +0 -66
  1013. package/dist/v2/helpers/get-tab-details.js +0 -34
  1014. package/dist/v2/helpers/handle-hotkeys.js +0 -54
  1015. package/dist/v2/helpers/is-url.js +0 -5
  1016. package/dist/v2/helpers/slugify.js +0 -4
  1017. package/dist/v2/helpers/storage.js +0 -16
  1018. package/dist/v2/hooks/use-color-mode.js +0 -24
  1019. package/dist/v2/hooks/use-global-hot-keys.js +0 -11
  1020. package/dist/v2/hooks/use-scroll-lock.js +0 -21
  1021. package/dist/v2/workspace-events.js +0 -252
  1022. package/dist/views/Collection/Collection.vue.js +0 -4
  1023. package/dist/views/Collection/Collection.vue2.js +0 -49
  1024. package/dist/views/Collection/CollectionAuthentication.vue.js +0 -7
  1025. package/dist/views/Collection/CollectionAuthentication.vue2.js +0 -56
  1026. package/dist/views/Collection/CollectionCookies.vue.js +0 -4
  1027. package/dist/views/Collection/CollectionCookies.vue2.js +0 -16
  1028. package/dist/views/Collection/CollectionEnvironment.vue.js +0 -5
  1029. package/dist/views/Collection/CollectionEnvironment.vue2.js +0 -229
  1030. package/dist/views/Collection/CollectionInfoForm.vue.js +0 -7
  1031. package/dist/views/Collection/CollectionInfoForm.vue2.js +0 -63
  1032. package/dist/views/Collection/CollectionNavigation.vue.js +0 -133
  1033. package/dist/views/Collection/CollectionNavigation.vue2.js +0 -4
  1034. package/dist/views/Collection/CollectionOverview.vue.js +0 -4
  1035. package/dist/views/Collection/CollectionOverview.vue2.js +0 -34
  1036. package/dist/views/Collection/CollectionScripts.vue.js +0 -4
  1037. package/dist/views/Collection/CollectionScripts.vue2.js +0 -16
  1038. package/dist/views/Collection/CollectionServerForm.vue.js +0 -75
  1039. package/dist/views/Collection/CollectionServerForm.vue2.js +0 -4
  1040. package/dist/views/Collection/CollectionServers.vue.js +0 -4
  1041. package/dist/views/Collection/CollectionServers.vue2.js +0 -94
  1042. package/dist/views/Collection/CollectionSettings.vue.js +0 -4
  1043. package/dist/views/Collection/CollectionSettings.vue2.js +0 -118
  1044. package/dist/views/Collection/CollectionSync.vue.js +0 -4
  1045. package/dist/views/Collection/CollectionSync.vue2.js +0 -16
  1046. package/dist/views/Collection/components/EnvironmentForm.vue.js +0 -7
  1047. package/dist/views/Collection/components/EnvironmentForm.vue2.js +0 -270
  1048. package/dist/views/Collection/components/MarkdownInput.vue.js +0 -7
  1049. package/dist/views/Collection/components/MarkdownInput.vue2.js +0 -100
  1050. package/dist/views/Components/CodeSnippet/CodeSnippet.vue.js +0 -50
  1051. package/dist/views/Components/CodeSnippet/CodeSnippet.vue2.js +0 -4
  1052. package/dist/views/Components/CodeSnippet/helpers/convert-to-har-request.js +0 -62
  1053. package/dist/views/Components/CodeSnippet/helpers/get-har-request.js +0 -82
  1054. package/dist/views/Components/CodeSnippet/helpers/get-snippet.js +0 -30
  1055. package/dist/views/Cookies/CookieForm.vue.js +0 -34
  1056. package/dist/views/Cookies/CookieForm.vue2.js +0 -4
  1057. package/dist/views/Cookies/CookieModal.vue.js +0 -7
  1058. package/dist/views/Cookies/CookieModal.vue2.js +0 -88
  1059. package/dist/views/Cookies/Cookies.vue.js +0 -4
  1060. package/dist/views/Cookies/Cookies.vue2.js +0 -162
  1061. package/dist/views/Environment/Environment.vue.js +0 -4
  1062. package/dist/views/Environment/Environment.vue2.js +0 -402
  1063. package/dist/views/Environment/EnvironmentColorModal.vue.js +0 -42
  1064. package/dist/views/Environment/EnvironmentColorModal.vue2.js +0 -4
  1065. package/dist/views/Environment/EnvironmentColors.vue.js +0 -118
  1066. package/dist/views/Environment/EnvironmentColors.vue2.js +0 -4
  1067. package/dist/views/Environment/EnvironmentModal.vue.js +0 -131
  1068. package/dist/views/Environment/EnvironmentModal.vue2.js +0 -4
  1069. package/dist/views/Environment/EnvironmentVariableDropdown.vue.js +0 -129
  1070. package/dist/views/Environment/EnvironmentVariableDropdown.vue2.js +0 -4
  1071. package/dist/views/Environment/handle-drag.js +0 -32
  1072. package/dist/views/Request/Request.vue.js +0 -7
  1073. package/dist/views/Request/Request.vue2.js +0 -105
  1074. package/dist/views/Request/RequestRoot.vue.js +0 -7
  1075. package/dist/views/Request/RequestRoot.vue2.js +0 -123
  1076. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue.js +0 -52
  1077. package/dist/views/Request/RequestSection/RequestAuth/DeleteRequestAuthModal.vue2.js +0 -4
  1078. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue.js +0 -246
  1079. package/dist/views/Request/RequestSection/RequestAuth/OAuth2.vue2.js +0 -4
  1080. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue.js +0 -135
  1081. package/dist/views/Request/RequestSection/RequestAuth/OAuthScopesInput.vue2.js +0 -4
  1082. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue.js +0 -7
  1083. package/dist/views/Request/RequestSection/RequestAuth/RequestAuth.vue2.js +0 -209
  1084. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue.js +0 -7
  1085. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTable.vue2.js +0 -116
  1086. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue.js +0 -50
  1087. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthDataTableInput.vue2.js +0 -4
  1088. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue.js +0 -219
  1089. package/dist/views/Request/RequestSection/RequestAuth/RequestAuthTab.vue2.js +0 -4
  1090. package/dist/views/Request/RequestSection/RequestAuth/helpers/restore-auth-from-local-storage.js +0 -28
  1091. package/dist/views/Request/RequestSection/RequestBody.vue.js +0 -7
  1092. package/dist/views/Request/RequestSection/RequestBody.vue2.js +0 -451
  1093. package/dist/views/Request/RequestSection/RequestCodeExample.vue.js +0 -7
  1094. package/dist/views/Request/RequestSection/RequestCodeExample.vue2.js +0 -170
  1095. package/dist/views/Request/RequestSection/RequestParams.vue.js +0 -162
  1096. package/dist/views/Request/RequestSection/RequestParams.vue2.js +0 -4
  1097. package/dist/views/Request/RequestSection/RequestPathParams.vue.js +0 -96
  1098. package/dist/views/Request/RequestSection/RequestPathParams.vue2.js +0 -4
  1099. package/dist/views/Request/RequestSection/RequestSection.vue.js +0 -7
  1100. package/dist/views/Request/RequestSection/RequestSection.vue2.js +0 -247
  1101. package/dist/views/Request/RequestSection/RequestTable.vue.js +0 -7
  1102. package/dist/views/Request/RequestSection/RequestTable.vue2.js +0 -227
  1103. package/dist/views/Request/RequestSection/RequestTableTooltip.vue.js +0 -7
  1104. package/dist/views/Request/RequestSection/RequestTableTooltip.vue2.js +0 -61
  1105. package/dist/views/Request/RequestSection/helpers/filter-security-requirements.js +0 -29
  1106. package/dist/views/Request/RequestSection/helpers/getting-started.js +0 -13
  1107. package/dist/views/Request/RequestSection/helpers/update-scheme.js +0 -16
  1108. package/dist/views/Request/RequestSidebar.vue.js +0 -7
  1109. package/dist/views/Request/RequestSidebar.vue2.js +0 -341
  1110. package/dist/views/Request/RequestSidebarItem.vue.js +0 -8
  1111. package/dist/views/Request/RequestSidebarItem.vue2.js +0 -464
  1112. package/dist/views/Request/RequestSidebarItemMenu.vue.js +0 -7
  1113. package/dist/views/Request/RequestSidebarItemMenu.vue2.js +0 -236
  1114. package/dist/views/Request/RequestSubpageHeader.vue.js +0 -7
  1115. package/dist/views/Request/RequestSubpageHeader.vue2.js +0 -79
  1116. package/dist/views/Request/ResponseSection/RequestHeaders.vue.js +0 -96
  1117. package/dist/views/Request/ResponseSection/RequestHeaders.vue2.js +0 -4
  1118. package/dist/views/Request/ResponseSection/ResponseBody.vue.js +0 -7
  1119. package/dist/views/Request/ResponseSection/ResponseBody.vue2.js +0 -83
  1120. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue.js +0 -36
  1121. package/dist/views/Request/ResponseSection/ResponseBodyDownload.vue2.js +0 -4
  1122. package/dist/views/Request/ResponseSection/ResponseBodyInfo.vue.js +0 -14
  1123. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue.js +0 -7
  1124. package/dist/views/Request/ResponseSection/ResponseBodyPreview.vue2.js +0 -63
  1125. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue.js +0 -7
  1126. package/dist/views/Request/ResponseSection/ResponseBodyRaw.vue2.js +0 -42
  1127. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue.js +0 -74
  1128. package/dist/views/Request/ResponseSection/ResponseBodyStreaming.vue2.js +0 -4
  1129. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue.js +0 -25
  1130. package/dist/views/Request/ResponseSection/ResponseBodyToggle.vue2.js +0 -4
  1131. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue.js +0 -50
  1132. package/dist/views/Request/ResponseSection/ResponseBodyVirtual.vue3.js +0 -5
  1133. package/dist/views/Request/ResponseSection/ResponseCookies.vue.js +0 -51
  1134. package/dist/views/Request/ResponseSection/ResponseCookies.vue2.js +0 -4
  1135. package/dist/views/Request/ResponseSection/ResponseEmpty.vue.js +0 -7
  1136. package/dist/views/Request/ResponseSection/ResponseEmpty.vue2.js +0 -103
  1137. package/dist/views/Request/ResponseSection/ResponseHeaders.vue.js +0 -96
  1138. package/dist/views/Request/ResponseSection/ResponseHeaders.vue2.js +0 -4
  1139. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue.js +0 -7
  1140. package/dist/views/Request/ResponseSection/ResponseLoadingOverlay.vue2.js +0 -38
  1141. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue.js +0 -67
  1142. package/dist/views/Request/ResponseSection/ResponseMetaInformation.vue2.js +0 -4
  1143. package/dist/views/Request/ResponseSection/ResponseSection.vue.js +0 -7
  1144. package/dist/views/Request/ResponseSection/ResponseSection.vue2.js +0 -189
  1145. package/dist/views/Request/components/WorkspaceDropdown.vue.js +0 -182
  1146. package/dist/views/Request/components/WorkspaceDropdown.vue2.js +0 -4
  1147. package/dist/views/Request/consts/mediaTypes.js +0 -131
  1148. package/dist/views/Request/consts/new-auth-options.js +0 -100
  1149. package/dist/views/Request/handle-drag.js +0 -42
  1150. package/dist/views/Request/hooks/useOpenApiWatcher.js +0 -57
  1151. package/dist/views/Request/libs/auth.js +0 -52
  1152. package/dist/views/Request/libs/oauth2.js +0 -127
  1153. package/dist/views/Request/libs/request.js +0 -40
  1154. package/dist/views/Request/libs/watch-mode.js +0 -337
  1155. package/dist/views/Settings/Settings.vue.js +0 -4
  1156. package/dist/views/Settings/Settings.vue2.js +0 -29
  1157. package/dist/views/Settings/SettingsGeneral.vue.js +0 -286
  1158. package/dist/views/Settings/SettingsGeneral.vue2.js +0 -4
  1159. package/dist/views/Settings/components/SettingsAppearance.vue.js +0 -85
  1160. package/dist/views/Settings/components/SettingsAppearance.vue2.js +0 -4
  1161. package/dist/views/Settings/components/SettingsSection.vue.js +0 -24
  1162. package/dist/views/Settings/components/SettingsSection.vue2.js +0 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environments-ByLK9lnC.js","names":[],"sources":["../src/v2/features/environments/components/EnvironmentColors.vue","../src/v2/features/environments/components/EnvironmentColors.vue","../src/v2/features/environments/components/EnvironmentCreateModal.vue","../src/v2/features/environments/components/EnvironmentCreateModal.vue","../src/v2/features/environments/components/EnvironmentDeleteModal.vue","../src/v2/features/environments/components/EnvironmentDeleteModal.vue","../src/v2/features/environments/components/EnvironmentVariablesTable.vue","../src/v2/features/environments/components/EnvironmentVariablesTable.vue","../src/v2/features/environments/components/Environment.vue","../src/v2/features/environments/components/Environment.vue","../src/v2/features/environments/EnvironmentsList.vue","../src/v2/features/environments/EnvironmentsList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIcon } from '@scalar/components'\nimport { computed, nextTick, ref } from 'vue'\n\nconst { activeColor } = defineProps<{\n activeColor: string\n}>()\n\nconst emit = defineEmits<{\n (e: 'select', color: string): void\n}>()\n\nconst customColor = ref('')\nconst customColorInputRef = ref<HTMLInputElement | null>(null)\nconst showCustomInput = ref(false)\nconst showSelector = ref(false)\n\n/**\n * Predefined color options available in the color picker.\n * Each option provides a standard color choice for the environment.\n */\nconst colorOptions = [\n '#FFFFFF',\n '#EF0006',\n '#EDBE20',\n '#069061',\n '#FB892C',\n '#0082D0',\n '#5203D1',\n '#FFC0CB',\n] as const\n\n/** Default gradient shown when no custom color is selected. */\nconst DEFAULT_GRADIENT =\n 'linear-gradient(to right, rgb(235, 87, 87), rgb(242, 201, 76), rgb(76, 183, 130), rgb(78, 167, 252), rgb(250, 96, 122))'\n\n/** Check if the active color is one of the preset options. */\nconst isPresetColor = computed(() =>\n colorOptions.includes(activeColor as (typeof colorOptions)[number]),\n)\n\n/** Check if a custom color is being used (not in the preset list). */\nconst isCustomColor = computed(\n () => activeColor && !isPresetColor.value && !showCustomInput.value,\n)\n\n/** Check if the given color matches the currently active color. */\nconst isActiveColor = (color: string): boolean => activeColor === color\n\n/**\n * Style for the custom color button.\n * Shows the actual color if custom, otherwise shows a gradient.\n */\nconst customButtonStyle = computed(() => {\n const displayColor = customColor.value || activeColor\n return isCustomColor.value || customColor.value\n ? `background-color: ${displayColor};`\n : `background: ${DEFAULT_GRADIENT};`\n})\n\n/**\n * Toggle the custom color input visibility.\n * Focuses the input after it becomes visible.\n */\nconst toggleCustomInput = async () => {\n showCustomInput.value = !showCustomInput.value\n showSelector.value = false\n\n if (!showCustomInput.value) {\n return\n }\n\n await nextTick()\n customColorInputRef.value?.focus()\n}\n\n/** Toggle the color selector visibility. */\nconst toggleSelector = (): void => {\n showSelector.value = !showSelector.value\n}\n\n/**\n * Select a color and emit the selection event.\n * Ensures the color value has a # prefix for hex colors.\n */\nconst selectColor = (color: string): void => {\n const formattedColor = color && !color.startsWith('#') ? `#${color}` : color\n emit('select', formattedColor)\n showSelector.value = false\n}\n\n/**\n * Handle custom color input changes.\n * Formats the color and emits the selection.\n */\nconst handleCustomColorInput = (): void => {\n if (!customColor.value) {\n return\n }\n\n const formattedColor = customColor.value.startsWith('#')\n ? customColor.value\n : `#${customColor.value}`\n\n customColor.value = formattedColor\n selectColor(formattedColor)\n}\n</script>\n<template>\n <div>\n <!-- Collapsed view: single color dot -->\n <div\n v-if=\"!showCustomInput && !showSelector\"\n class=\"flex h-4 w-4 cursor-pointer items-center justify-center rounded-full\"\n :style=\"{ backgroundColor: activeColor }\"\n @click=\"toggleSelector\">\n <ScalarIcon\n v-if=\"activeColor\"\n class=\"text-c-btn p-0.5\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </div>\n\n <!-- Expanded view: color palette selector -->\n <div\n v-if=\"!showCustomInput && showSelector\"\n class=\"color-selector flex h-4 flex-row items-center justify-between gap-1.5 space-x-1\">\n <!-- Preset color options -->\n <div\n v-for=\"option in colorOptions\"\n :key=\"option\"\n class=\"flex h-4 w-4 cursor-pointer items-center justify-center rounded-full\"\n :style=\"{ backgroundColor: option }\"\n @click=\"selectColor(option)\">\n <ScalarIcon\n v-if=\"isActiveColor(option)\"\n class=\"text-c-btn p-0.5\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </div>\n\n <!-- Divider -->\n <hr class=\"border-ghost h-5 w-0.5 border-l\" />\n\n <!-- Custom color button -->\n <button\n class=\"z-10 flex h-4 w-4 cursor-pointer flex-row items-center justify-center gap-2 rounded-full\"\n :style=\"customButtonStyle\"\n type=\"button\"\n @click=\"toggleCustomInput\">\n <ScalarIcon\n v-if=\"isCustomColor\"\n class=\"text-c-btn\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </button>\n </div>\n\n <!-- Custom color input view -->\n <div\n v-if=\"showCustomInput\"\n class=\"color-selector flex h-4 flex-1 items-center gap-2 rounded\">\n <span class=\"absolute h-4 w-4 rounded-full border border-dashed\" />\n <span\n class=\"z-[1] h-4 w-4 rounded-full\"\n :style=\"customButtonStyle\" />\n <input\n ref=\"customColorInputRef\"\n v-model=\"customColor\"\n class=\"w-full flex-1 border-transparent text-sm outline-none\"\n :placeholder=\"activeColor || '#000000'\"\n type=\"text\"\n @input=\"handleCustomColorInput\" />\n <button\n class=\"text-c-3 hover:bg-b-2 rounded-lg p-1.5\"\n type=\"button\"\n @click=\"toggleCustomInput\">\n <ScalarIcon\n icon=\"Checkmark\"\n size=\"xs\" />\n </button>\n </div>\n </div>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarIcon } from '@scalar/components'\nimport { computed, nextTick, ref } from 'vue'\n\nconst { activeColor } = defineProps<{\n activeColor: string\n}>()\n\nconst emit = defineEmits<{\n (e: 'select', color: string): void\n}>()\n\nconst customColor = ref('')\nconst customColorInputRef = ref<HTMLInputElement | null>(null)\nconst showCustomInput = ref(false)\nconst showSelector = ref(false)\n\n/**\n * Predefined color options available in the color picker.\n * Each option provides a standard color choice for the environment.\n */\nconst colorOptions = [\n '#FFFFFF',\n '#EF0006',\n '#EDBE20',\n '#069061',\n '#FB892C',\n '#0082D0',\n '#5203D1',\n '#FFC0CB',\n] as const\n\n/** Default gradient shown when no custom color is selected. */\nconst DEFAULT_GRADIENT =\n 'linear-gradient(to right, rgb(235, 87, 87), rgb(242, 201, 76), rgb(76, 183, 130), rgb(78, 167, 252), rgb(250, 96, 122))'\n\n/** Check if the active color is one of the preset options. */\nconst isPresetColor = computed(() =>\n colorOptions.includes(activeColor as (typeof colorOptions)[number]),\n)\n\n/** Check if a custom color is being used (not in the preset list). */\nconst isCustomColor = computed(\n () => activeColor && !isPresetColor.value && !showCustomInput.value,\n)\n\n/** Check if the given color matches the currently active color. */\nconst isActiveColor = (color: string): boolean => activeColor === color\n\n/**\n * Style for the custom color button.\n * Shows the actual color if custom, otherwise shows a gradient.\n */\nconst customButtonStyle = computed(() => {\n const displayColor = customColor.value || activeColor\n return isCustomColor.value || customColor.value\n ? `background-color: ${displayColor};`\n : `background: ${DEFAULT_GRADIENT};`\n})\n\n/**\n * Toggle the custom color input visibility.\n * Focuses the input after it becomes visible.\n */\nconst toggleCustomInput = async () => {\n showCustomInput.value = !showCustomInput.value\n showSelector.value = false\n\n if (!showCustomInput.value) {\n return\n }\n\n await nextTick()\n customColorInputRef.value?.focus()\n}\n\n/** Toggle the color selector visibility. */\nconst toggleSelector = (): void => {\n showSelector.value = !showSelector.value\n}\n\n/**\n * Select a color and emit the selection event.\n * Ensures the color value has a # prefix for hex colors.\n */\nconst selectColor = (color: string): void => {\n const formattedColor = color && !color.startsWith('#') ? `#${color}` : color\n emit('select', formattedColor)\n showSelector.value = false\n}\n\n/**\n * Handle custom color input changes.\n * Formats the color and emits the selection.\n */\nconst handleCustomColorInput = (): void => {\n if (!customColor.value) {\n return\n }\n\n const formattedColor = customColor.value.startsWith('#')\n ? customColor.value\n : `#${customColor.value}`\n\n customColor.value = formattedColor\n selectColor(formattedColor)\n}\n</script>\n<template>\n <div>\n <!-- Collapsed view: single color dot -->\n <div\n v-if=\"!showCustomInput && !showSelector\"\n class=\"flex h-4 w-4 cursor-pointer items-center justify-center rounded-full\"\n :style=\"{ backgroundColor: activeColor }\"\n @click=\"toggleSelector\">\n <ScalarIcon\n v-if=\"activeColor\"\n class=\"text-c-btn p-0.5\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </div>\n\n <!-- Expanded view: color palette selector -->\n <div\n v-if=\"!showCustomInput && showSelector\"\n class=\"color-selector flex h-4 flex-row items-center justify-between gap-1.5 space-x-1\">\n <!-- Preset color options -->\n <div\n v-for=\"option in colorOptions\"\n :key=\"option\"\n class=\"flex h-4 w-4 cursor-pointer items-center justify-center rounded-full\"\n :style=\"{ backgroundColor: option }\"\n @click=\"selectColor(option)\">\n <ScalarIcon\n v-if=\"isActiveColor(option)\"\n class=\"text-c-btn p-0.5\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </div>\n\n <!-- Divider -->\n <hr class=\"border-ghost h-5 w-0.5 border-l\" />\n\n <!-- Custom color button -->\n <button\n class=\"z-10 flex h-4 w-4 cursor-pointer flex-row items-center justify-center gap-2 rounded-full\"\n :style=\"customButtonStyle\"\n type=\"button\"\n @click=\"toggleCustomInput\">\n <ScalarIcon\n v-if=\"isCustomColor\"\n class=\"text-c-btn\"\n icon=\"Checkmark\"\n size=\"xs\" />\n </button>\n </div>\n\n <!-- Custom color input view -->\n <div\n v-if=\"showCustomInput\"\n class=\"color-selector flex h-4 flex-1 items-center gap-2 rounded\">\n <span class=\"absolute h-4 w-4 rounded-full border border-dashed\" />\n <span\n class=\"z-[1] h-4 w-4 rounded-full\"\n :style=\"customButtonStyle\" />\n <input\n ref=\"customColorInputRef\"\n v-model=\"customColor\"\n class=\"w-full flex-1 border-transparent text-sm outline-none\"\n :placeholder=\"activeColor || '#000000'\"\n type=\"text\"\n @input=\"handleCustomColorInput\" />\n <button\n class=\"text-c-3 hover:bg-b-2 rounded-lg p-1.5\"\n type=\"button\"\n @click=\"toggleCustomInput\">\n <ScalarIcon\n icon=\"Checkmark\"\n size=\"xs\" />\n </button>\n </div>\n </div>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarModal, type ModalState } from '@scalar/components'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironments } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { computed, ref, watch } from 'vue'\n\nimport CommandActionForm from '@/components/CommandPalette/CommandActionForm.vue'\nimport CommandActionInput from '@/components/CommandPalette/CommandActionInput.vue'\n\nimport EnvironmentColors from './EnvironmentColors.vue'\n\nconst {\n state,\n eventBus,\n collectionType,\n environments,\n selectedEnvironmentName,\n} = defineProps<\n {\n environments: NonNullable<XScalarEnvironments['x-scalar-environments']>\n selectedEnvironmentName: string | null\n state: ModalState\n eventBus: WorkspaceEventBus\n } & CollectionType\n>()\n\n/** Default color for new environments. */\nconst DEFAULT_COLOR = '#FFFFFF'\n\nconst name = ref('')\nconst selectedColor = ref(DEFAULT_COLOR)\n\n/** Ensure [re]set the form on open */\nwatch(\n () => state.open,\n (isOpen) => {\n if (isOpen) {\n const environment = environments[selectedEnvironmentName ?? '']\n\n // We are editing so lets fill in the form with the existing data\n if (selectedEnvironmentName && environment) {\n name.value = selectedEnvironmentName\n selectedColor.value = environment.color\n }\n\n // We are adding a new environment so lets clear the form\n else {\n name.value = ''\n selectedColor.value = DEFAULT_COLOR\n }\n }\n },\n)\n\n/**\n * Handle color selection from the color picker.\n * Updates the selected color for the new environment.\n */\nconst handleColorSelect = (color: string): void => {\n selectedColor.value = color\n}\n\n/** Emits an event to create the environment with the provided name and color. */\nconst handleSubmit = (): void => {\n // Editing an existing environment\n if (selectedEnvironmentName) {\n eventBus.emit('environment:upsert:environment', {\n oldEnvironmentName: selectedEnvironmentName,\n payload: {\n color: selectedColor.value,\n },\n environmentName: name.value.trim(),\n collectionType,\n })\n }\n // Adding a new environment\n else {\n eventBus.emit('environment:upsert:environment', {\n environmentName: name.value.trim(),\n payload: {\n color: selectedColor.value,\n },\n collectionType,\n })\n }\n\n state.hide()\n}\n\n/** Check if the environment name is a duplicate */\nconst isDuplicateName = computed(() => {\n if (selectedEnvironmentName) {\n return (\n name.value !== selectedEnvironmentName &&\n Object.keys(environments).includes(name.value)\n )\n }\n\n return Object.keys(environments).includes(name.value)\n})\n</script>\n\n<template>\n <ScalarModal\n bodyClass=\"border-t-0 rounded-t-lg\"\n size=\"xs\"\n :state=\"state\">\n <CommandActionForm\n :disabled=\"!name.trim() || isDuplicateName\"\n @submit=\"handleSubmit\">\n <div class=\"flex items-start gap-2\">\n <!-- Color picker for environment -->\n <EnvironmentColors\n :activeColor=\"selectedColor\"\n class=\"peer\"\n @select=\"handleColorSelect\" />\n\n <!-- Environment name input, hidden when color selector is expanded -->\n <CommandActionInput\n v-model=\"name\"\n class=\"-mt-[.5px] !p-0 peer-has-[.color-selector]:hidden\"\n placeholder=\"Environment name\" />\n </div>\n\n <!-- Error message -->\n <div\n v-if=\"isDuplicateName\"\n class=\"text-red text-xs\">\n This environment name is already in use.\n </div>\n\n <!-- Submit button -->\n <template #submit>\n {{ selectedEnvironmentName ? 'Update' : 'Add' }} Environment\n </template>\n </CommandActionForm>\n </ScalarModal>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarModal, type ModalState } from '@scalar/components'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironments } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { computed, ref, watch } from 'vue'\n\nimport CommandActionForm from '@/components/CommandPalette/CommandActionForm.vue'\nimport CommandActionInput from '@/components/CommandPalette/CommandActionInput.vue'\n\nimport EnvironmentColors from './EnvironmentColors.vue'\n\nconst {\n state,\n eventBus,\n collectionType,\n environments,\n selectedEnvironmentName,\n} = defineProps<\n {\n environments: NonNullable<XScalarEnvironments['x-scalar-environments']>\n selectedEnvironmentName: string | null\n state: ModalState\n eventBus: WorkspaceEventBus\n } & CollectionType\n>()\n\n/** Default color for new environments. */\nconst DEFAULT_COLOR = '#FFFFFF'\n\nconst name = ref('')\nconst selectedColor = ref(DEFAULT_COLOR)\n\n/** Ensure [re]set the form on open */\nwatch(\n () => state.open,\n (isOpen) => {\n if (isOpen) {\n const environment = environments[selectedEnvironmentName ?? '']\n\n // We are editing so lets fill in the form with the existing data\n if (selectedEnvironmentName && environment) {\n name.value = selectedEnvironmentName\n selectedColor.value = environment.color\n }\n\n // We are adding a new environment so lets clear the form\n else {\n name.value = ''\n selectedColor.value = DEFAULT_COLOR\n }\n }\n },\n)\n\n/**\n * Handle color selection from the color picker.\n * Updates the selected color for the new environment.\n */\nconst handleColorSelect = (color: string): void => {\n selectedColor.value = color\n}\n\n/** Emits an event to create the environment with the provided name and color. */\nconst handleSubmit = (): void => {\n // Editing an existing environment\n if (selectedEnvironmentName) {\n eventBus.emit('environment:upsert:environment', {\n oldEnvironmentName: selectedEnvironmentName,\n payload: {\n color: selectedColor.value,\n },\n environmentName: name.value.trim(),\n collectionType,\n })\n }\n // Adding a new environment\n else {\n eventBus.emit('environment:upsert:environment', {\n environmentName: name.value.trim(),\n payload: {\n color: selectedColor.value,\n },\n collectionType,\n })\n }\n\n state.hide()\n}\n\n/** Check if the environment name is a duplicate */\nconst isDuplicateName = computed(() => {\n if (selectedEnvironmentName) {\n return (\n name.value !== selectedEnvironmentName &&\n Object.keys(environments).includes(name.value)\n )\n }\n\n return Object.keys(environments).includes(name.value)\n})\n</script>\n\n<template>\n <ScalarModal\n bodyClass=\"border-t-0 rounded-t-lg\"\n size=\"xs\"\n :state=\"state\">\n <CommandActionForm\n :disabled=\"!name.trim() || isDuplicateName\"\n @submit=\"handleSubmit\">\n <div class=\"flex items-start gap-2\">\n <!-- Color picker for environment -->\n <EnvironmentColors\n :activeColor=\"selectedColor\"\n class=\"peer\"\n @select=\"handleColorSelect\" />\n\n <!-- Environment name input, hidden when color selector is expanded -->\n <CommandActionInput\n v-model=\"name\"\n class=\"-mt-[.5px] !p-0 peer-has-[.color-selector]:hidden\"\n placeholder=\"Environment name\" />\n </div>\n\n <!-- Error message -->\n <div\n v-if=\"isDuplicateName\"\n class=\"text-red text-xs\">\n This environment name is already in use.\n </div>\n\n <!-- Submit button -->\n <template #submit>\n {{ selectedEnvironmentName ? 'Update' : 'Add' }} Environment\n </template>\n </CommandActionForm>\n </ScalarModal>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton, ScalarModal, type ModalState } from '@scalar/components'\n\nconst { state, name = 'unknown' } = defineProps<{\n state: ModalState\n name: string | null\n}>()\n\nconst emit = defineEmits<{\n (event: 'cancel'): void\n (event: 'submit'): void\n}>()\n</script>\n\n<template>\n <ScalarModal\n bodyClass=\"border-t-0 rounded-t-lg flex flex-col gap-4\"\n size=\"xxs\"\n :state=\"state\"\n :title=\"`Delete ${name}`\">\n <p class=\"text-c-2 text-sm leading-normal text-pretty\">\n Are you sure you want to delete this environment? This action cannot be\n undone.\n </p>\n <div class=\"flex justify-between\">\n <ScalarButton\n size=\"sm\"\n variant=\"outlined\"\n @click=\"\n () => {\n emit('cancel')\n state.hide()\n }\n \">\n Cancel\n </ScalarButton>\n <ScalarButton\n size=\"sm\"\n variant=\"danger\"\n @click=\"\n () => {\n emit('submit')\n state.hide()\n }\n \">\n Delete Environment\n </ScalarButton>\n </div>\n </ScalarModal>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton, ScalarModal, type ModalState } from '@scalar/components'\n\nconst { state, name = 'unknown' } = defineProps<{\n state: ModalState\n name: string | null\n}>()\n\nconst emit = defineEmits<{\n (event: 'cancel'): void\n (event: 'submit'): void\n}>()\n</script>\n\n<template>\n <ScalarModal\n bodyClass=\"border-t-0 rounded-t-lg flex flex-col gap-4\"\n size=\"xxs\"\n :state=\"state\"\n :title=\"`Delete ${name}`\">\n <p class=\"text-c-2 text-sm leading-normal text-pretty\">\n Are you sure you want to delete this environment? This action cannot be\n undone.\n </p>\n <div class=\"flex justify-between\">\n <ScalarButton\n size=\"sm\"\n variant=\"outlined\"\n @click=\"\n () => {\n emit('cancel')\n state.hide()\n }\n \">\n Cancel\n </ScalarButton>\n <ScalarButton\n size=\"sm\"\n variant=\"danger\"\n @click=\"\n () => {\n emit('submit')\n state.hide()\n }\n \">\n Delete Environment\n </ScalarButton>\n </div>\n </ScalarModal>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components'\nimport { ScalarIconTrash } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { computed } from 'vue'\n\nimport { CodeInput } from '@/v2/components/code-input'\nimport {\n DataTable,\n DataTableCell,\n DataTableHeader,\n DataTableRow,\n} from '@/v2/components/data-table'\n\nconst { environment, environmentName, eventBus, collectionType } = defineProps<\n {\n environment: XScalarEnvironment\n environmentName: string\n eventBus: WorkspaceEventBus\n } & CollectionType\n>()\n\n/** Column widths: Name, Value, Actions (delete button) */\nconst COLUMNS = ['1fr', '1fr', '36px']\n\n/** Adds an empty row at the end for creating new variables */\nconst displayRows = computed<\n {\n name: string\n value: string\n }[]\n>(() => {\n /** Normalize the variables to have a name and value */\n const variableRows = environment.variables.map((v) => ({\n name: v.name,\n value: typeof v.value === 'string' ? v.value : v.value.default,\n }))\n\n const lastRow = environment.variables.at(-1)\n const hasContentInLastRow =\n lastRow && (lastRow.name !== '' || lastRow.value !== '')\n\n // Add the extra row at the end\n if (!lastRow || hasContentInLastRow) {\n return [...variableRows, { name: '', value: '' }]\n }\n\n return variableRows\n})\n\n/** Updates an existing variable or creates a new one */\nconst handleVariableChange = (\n name: string,\n value: string,\n index: number,\n): void => {\n const isNewVariable = index >= environment.variables.length\n\n /**\n * Do not allow adding a new variable with an empty name on the last row,\n * we allow it on other rows as it will delete the row\n */\n if (!name && isNewVariable) {\n return\n }\n\n // Adding a new variable\n if (index >= environment.variables.length) {\n eventBus.emit('environment:upsert:environment-variable', {\n environmentName,\n variable: { name, value },\n collectionType,\n })\n return\n }\n\n // Updating\n eventBus.emit('environment:upsert:environment-variable', {\n environmentName,\n variable: { name, value },\n index,\n collectionType,\n })\n}\n\n/** Deletes a variable by index */\nconst handleVariableDelete = (index: number): void =>\n eventBus.emit('environment:delete:environment-variable', {\n environmentName,\n index,\n collectionType,\n })\n</script>\n<template>\n <!-- Environment variables table -->\n <DataTable\n class=\"group/table data-table h-min flex-1 rounded\"\n :columns=\"COLUMNS\">\n <!-- Accessibility header row -->\n <DataTableRow class=\"sr-only !block\">\n <DataTableHeader>Name</DataTableHeader>\n <DataTableHeader>Value</DataTableHeader>\n <DataTableHeader>Actions</DataTableHeader>\n </DataTableRow>\n\n <!-- Variable rows -->\n <DataTableRow\n v-for=\"(row, index) in displayRows\"\n :key=\"index\"\n class=\"group/row\">\n <!-- Name -->\n <DataTableCell>\n <CodeInput\n aria-label=\"Environment Variable Name\"\n disableCloseBrackets\n disableTabIndent\n :environment=\"undefined\"\n lineWrapping\n :modelValue=\"row.name\"\n placeholder=\"Name\"\n @update:modelValue=\"\n (name) => handleVariableChange(name, row.value, index)\n \" />\n </DataTableCell>\n\n <!-- Value -->\n <DataTableCell>\n <CodeInput\n aria-label=\"Environment Variable Value\"\n disableTabIndent\n :environment=\"undefined\"\n lineWrapping\n :modelValue=\"row.value\"\n placeholder=\"Value\"\n @update:modelValue=\"\n (value) => handleVariableChange(row.name, value, index)\n \" />\n </DataTableCell>\n\n <!-- Delete button -->\n <DataTableCell class=\"flex items-center justify-center\">\n <ScalarButton\n v-if=\"index < environment.variables.length\"\n class=\"text-c-2 hover:text-c-1 hover:bg-b-2 hidden h-fit rounded p-1 group-focus-within:flex group-hover/row:flex\"\n size=\"sm\"\n variant=\"ghost\"\n @click=\"handleVariableDelete(index)\">\n <ScalarIconTrash class=\"size-3.5\" />\n </ScalarButton>\n </DataTableCell>\n </DataTableRow>\n </DataTable>\n</template>\n<style scoped>\n:deep(.cm-editor) {\n padding: 0;\n}\n:deep(.cm-content) {\n align-items: center;\n background-color: transparent;\n display: flex;\n font-family: var(--scalar-font);\n font-size: var(--scalar-small);\n padding: 5px 8px;\n width: 100%;\n}\n:deep(.cm-content):has(.cm-pill) {\n padding: 5px 8px;\n}\n:deep(.cm-content .cm-pill:not(:last-of-type)) {\n margin-right: 0.5px;\n}\n:deep(.cm-content .cm-pill:not(:first-of-type)) {\n margin-left: 0.5px;\n}\n:deep(.cm-line) {\n overflow: hidden;\n padding: 0;\n text-overflow: ellipsis;\n}\n</style>\n","<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components'\nimport { ScalarIconTrash } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { computed } from 'vue'\n\nimport { CodeInput } from '@/v2/components/code-input'\nimport {\n DataTable,\n DataTableCell,\n DataTableHeader,\n DataTableRow,\n} from '@/v2/components/data-table'\n\nconst { environment, environmentName, eventBus, collectionType } = defineProps<\n {\n environment: XScalarEnvironment\n environmentName: string\n eventBus: WorkspaceEventBus\n } & CollectionType\n>()\n\n/** Column widths: Name, Value, Actions (delete button) */\nconst COLUMNS = ['1fr', '1fr', '36px']\n\n/** Adds an empty row at the end for creating new variables */\nconst displayRows = computed<\n {\n name: string\n value: string\n }[]\n>(() => {\n /** Normalize the variables to have a name and value */\n const variableRows = environment.variables.map((v) => ({\n name: v.name,\n value: typeof v.value === 'string' ? v.value : v.value.default,\n }))\n\n const lastRow = environment.variables.at(-1)\n const hasContentInLastRow =\n lastRow && (lastRow.name !== '' || lastRow.value !== '')\n\n // Add the extra row at the end\n if (!lastRow || hasContentInLastRow) {\n return [...variableRows, { name: '', value: '' }]\n }\n\n return variableRows\n})\n\n/** Updates an existing variable or creates a new one */\nconst handleVariableChange = (\n name: string,\n value: string,\n index: number,\n): void => {\n const isNewVariable = index >= environment.variables.length\n\n /**\n * Do not allow adding a new variable with an empty name on the last row,\n * we allow it on other rows as it will delete the row\n */\n if (!name && isNewVariable) {\n return\n }\n\n // Adding a new variable\n if (index >= environment.variables.length) {\n eventBus.emit('environment:upsert:environment-variable', {\n environmentName,\n variable: { name, value },\n collectionType,\n })\n return\n }\n\n // Updating\n eventBus.emit('environment:upsert:environment-variable', {\n environmentName,\n variable: { name, value },\n index,\n collectionType,\n })\n}\n\n/** Deletes a variable by index */\nconst handleVariableDelete = (index: number): void =>\n eventBus.emit('environment:delete:environment-variable', {\n environmentName,\n index,\n collectionType,\n })\n</script>\n<template>\n <!-- Environment variables table -->\n <DataTable\n class=\"group/table data-table h-min flex-1 rounded\"\n :columns=\"COLUMNS\">\n <!-- Accessibility header row -->\n <DataTableRow class=\"sr-only !block\">\n <DataTableHeader>Name</DataTableHeader>\n <DataTableHeader>Value</DataTableHeader>\n <DataTableHeader>Actions</DataTableHeader>\n </DataTableRow>\n\n <!-- Variable rows -->\n <DataTableRow\n v-for=\"(row, index) in displayRows\"\n :key=\"index\"\n class=\"group/row\">\n <!-- Name -->\n <DataTableCell>\n <CodeInput\n aria-label=\"Environment Variable Name\"\n disableCloseBrackets\n disableTabIndent\n :environment=\"undefined\"\n lineWrapping\n :modelValue=\"row.name\"\n placeholder=\"Name\"\n @update:modelValue=\"\n (name) => handleVariableChange(name, row.value, index)\n \" />\n </DataTableCell>\n\n <!-- Value -->\n <DataTableCell>\n <CodeInput\n aria-label=\"Environment Variable Value\"\n disableTabIndent\n :environment=\"undefined\"\n lineWrapping\n :modelValue=\"row.value\"\n placeholder=\"Value\"\n @update:modelValue=\"\n (value) => handleVariableChange(row.name, value, index)\n \" />\n </DataTableCell>\n\n <!-- Delete button -->\n <DataTableCell class=\"flex items-center justify-center\">\n <ScalarButton\n v-if=\"index < environment.variables.length\"\n class=\"text-c-2 hover:text-c-1 hover:bg-b-2 hidden h-fit rounded p-1 group-focus-within:flex group-hover/row:flex\"\n size=\"sm\"\n variant=\"ghost\"\n @click=\"handleVariableDelete(index)\">\n <ScalarIconTrash class=\"size-3.5\" />\n </ScalarButton>\n </DataTableCell>\n </DataTableRow>\n </DataTable>\n</template>\n<style scoped>\n:deep(.cm-editor) {\n padding: 0;\n}\n:deep(.cm-content) {\n align-items: center;\n background-color: transparent;\n display: flex;\n font-family: var(--scalar-font);\n font-size: var(--scalar-small);\n padding: 5px 8px;\n width: 100%;\n}\n:deep(.cm-content):has(.cm-pill) {\n padding: 5px 8px;\n}\n:deep(.cm-content .cm-pill:not(:last-of-type)) {\n margin-right: 0.5px;\n}\n:deep(.cm-content .cm-pill:not(:first-of-type)) {\n margin-left: 0.5px;\n}\n:deep(.cm-line) {\n overflow: hidden;\n padding: 0;\n text-overflow: ellipsis;\n}\n</style>\n","<script lang=\"ts\" setup>\nimport { ScalarIconButton } from '@scalar/components'\nimport { ScalarIconNotePencil, ScalarIconTrash } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\n\nimport EnvironmentVariablesTable from '@/v2/features/environments/components/EnvironmentVariablesTable.vue'\n\nconst {\n environmentName,\n environment,\n eventBus,\n collectionType,\n isActive = false,\n} = defineProps<\n {\n environment: XScalarEnvironment\n environmentName: string\n eventBus: WorkspaceEventBus\n isActive?: boolean\n } & CollectionType\n>()\n\nconst emit = defineEmits<{\n (e: 'edit'): void\n (e: 'delete'): void\n}>()\n</script>\n<template>\n <div\n class=\"group relative rounded-lg border transition-colors\"\n :class=\"isActive ? 'border-c-accent bg-c-accent/5' : ''\">\n <!-- Info -->\n <div\n class=\"flex justify-between rounded-t-lg px-1 py-1 text-sm\"\n :class=\"isActive ? 'bg-c-accent/10' : 'bg-b-2'\">\n <div class=\"flex items-center gap-1.5\">\n <div class=\"flex h-6 w-6 items-center justify-center p-1\">\n <span\n class=\"h-2.5 w-2.5 rounded-full\"\n :style=\"{ backgroundColor: environment.color }\"></span>\n </div>\n <span class=\"px-1 py-0.5 text-sm font-medium\">\n {{ environmentName }}\n </span>\n <!-- Active badge -->\n <span\n v-if=\"isActive\"\n class=\"bg-c-accent text-b-1 flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium\"\n title=\"This is the active environment\">\n <span class=\"size-1.5 rounded-full bg-current\"></span>\n Active\n </span>\n </div>\n\n <!-- Actions -->\n <div class=\"hidden flex-row items-center gap-1 group-hover:flex\">\n <ScalarIconButton\n :icon=\"ScalarIconNotePencil\"\n label=\"Edit Environment\"\n size=\"sm\"\n @click=\"emit('edit')\" />\n\n <ScalarIconButton\n :icon=\"ScalarIconTrash\"\n label=\"Delete Environment\"\n size=\"sm\"\n @click=\"emit('delete')\" />\n </div>\n </div>\n\n <!-- Variables Table -->\n <EnvironmentVariablesTable\n :collectionType\n :environment\n :environmentName\n :eventBus />\n </div>\n</template>\n","<script lang=\"ts\" setup>\nimport { ScalarIconButton } from '@scalar/components'\nimport { ScalarIconNotePencil, ScalarIconTrash } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\n\nimport EnvironmentVariablesTable from '@/v2/features/environments/components/EnvironmentVariablesTable.vue'\n\nconst {\n environmentName,\n environment,\n eventBus,\n collectionType,\n isActive = false,\n} = defineProps<\n {\n environment: XScalarEnvironment\n environmentName: string\n eventBus: WorkspaceEventBus\n isActive?: boolean\n } & CollectionType\n>()\n\nconst emit = defineEmits<{\n (e: 'edit'): void\n (e: 'delete'): void\n}>()\n</script>\n<template>\n <div\n class=\"group relative rounded-lg border transition-colors\"\n :class=\"isActive ? 'border-c-accent bg-c-accent/5' : ''\">\n <!-- Info -->\n <div\n class=\"flex justify-between rounded-t-lg px-1 py-1 text-sm\"\n :class=\"isActive ? 'bg-c-accent/10' : 'bg-b-2'\">\n <div class=\"flex items-center gap-1.5\">\n <div class=\"flex h-6 w-6 items-center justify-center p-1\">\n <span\n class=\"h-2.5 w-2.5 rounded-full\"\n :style=\"{ backgroundColor: environment.color }\"></span>\n </div>\n <span class=\"px-1 py-0.5 text-sm font-medium\">\n {{ environmentName }}\n </span>\n <!-- Active badge -->\n <span\n v-if=\"isActive\"\n class=\"bg-c-accent text-b-1 flex items-center gap-1 rounded px-1.5 py-0.5 text-xs font-medium\"\n title=\"This is the active environment\">\n <span class=\"size-1.5 rounded-full bg-current\"></span>\n Active\n </span>\n </div>\n\n <!-- Actions -->\n <div class=\"hidden flex-row items-center gap-1 group-hover:flex\">\n <ScalarIconButton\n :icon=\"ScalarIconNotePencil\"\n label=\"Edit Environment\"\n size=\"sm\"\n @click=\"emit('edit')\" />\n\n <ScalarIconButton\n :icon=\"ScalarIconTrash\"\n label=\"Delete Environment\"\n size=\"sm\"\n @click=\"emit('delete')\" />\n </div>\n </div>\n\n <!-- Variables Table -->\n <EnvironmentVariablesTable\n :collectionType\n :environment\n :environmentName\n :eventBus />\n </div>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton, useModal } from '@scalar/components'\nimport { ScalarIconPlus } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironments } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { ref } from 'vue'\n\nimport EnvironmentCreateModal from '@/v2/features/environments/components/EnvironmentCreateModal.vue'\nimport EnvironmentDeleteModal from '@/v2/features/environments/components/EnvironmentDeleteModal.vue'\n\nimport EnvironmentComponent from './components/Environment.vue'\n\nconst { environments, eventBus, collectionType, activeEnvironment } =\n defineProps<\n {\n /** List of environments, ensured to be non-nullable for safety */\n environments: NonNullable<XScalarEnvironments['x-scalar-environments']>\n /** Event bus to handle workspace-related events */\n eventBus: WorkspaceEventBus\n /** The currently active environment name */\n activeEnvironment?: string\n } & CollectionType\n >()\n\nconst createEnvironmentModalState = useModal()\nconst deleteEnvironmentModalState = useModal()\n\n/** Track the currently selected environment for editing or deleting */\nconst selectedEnvironmentName = ref<string | null>(null)\n\n/** Opens the delete modal */\nconst openDeleteModal = (name: string) => {\n selectedEnvironmentName.value = name\n deleteEnvironmentModalState.show()\n}\n\n/** Deletes the selected environment */\nconst deleteEnvironment = () => {\n if (!selectedEnvironmentName.value) {\n return\n }\n eventBus.emit('environment:delete:environment', {\n environmentName: selectedEnvironmentName.value,\n collectionType,\n })\n}\n\n/** Opens the upsert modal, leave name empty for add */\nconst openUpsertModal = (name?: string) => {\n selectedEnvironmentName.value = name ?? null\n createEnvironmentModalState.show()\n}\n</script>\n\n<template>\n <EnvironmentComponent\n v-for=\"[environmentName, environment] in Object.entries(environments)\"\n :key=\"environmentName\"\n :collectionType=\"collectionType\"\n :environment\n :environmentName\n :eventBus=\"eventBus\"\n :isActive=\"activeEnvironment === environmentName\"\n @delete=\"() => openDeleteModal(environmentName)\"\n @edit=\"() => openUpsertModal(environmentName)\" />\n\n <!-- Add Environment CTA -->\n <div\n class=\"text-c-3 flex h-full items-center justify-center rounded-lg border p-4\">\n <ScalarButton\n class=\"hover:bg-b-2 hover:text-c-1 flex items-center gap-2\"\n size=\"xs\"\n variant=\"ghost\"\n @click=\"() => openUpsertModal()\">\n <ScalarIconPlus />\n Add Environment\n </ScalarButton>\n </div>\n\n <!-- Upsert Modal -->\n <EnvironmentCreateModal\n :collectionType=\"collectionType\"\n :environments\n :eventBus\n :selectedEnvironmentName\n :state=\"createEnvironmentModalState\" />\n\n <!-- Delete Modal -->\n <EnvironmentDeleteModal\n :name=\"selectedEnvironmentName\"\n :state=\"deleteEnvironmentModalState\"\n @submit=\"deleteEnvironment\" />\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton, useModal } from '@scalar/components'\nimport { ScalarIconPlus } from '@scalar/icons'\nimport type {\n CollectionType,\n WorkspaceEventBus,\n} from '@scalar/workspace-store/events'\nimport type { XScalarEnvironments } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { ref } from 'vue'\n\nimport EnvironmentCreateModal from '@/v2/features/environments/components/EnvironmentCreateModal.vue'\nimport EnvironmentDeleteModal from '@/v2/features/environments/components/EnvironmentDeleteModal.vue'\n\nimport EnvironmentComponent from './components/Environment.vue'\n\nconst { environments, eventBus, collectionType, activeEnvironment } =\n defineProps<\n {\n /** List of environments, ensured to be non-nullable for safety */\n environments: NonNullable<XScalarEnvironments['x-scalar-environments']>\n /** Event bus to handle workspace-related events */\n eventBus: WorkspaceEventBus\n /** The currently active environment name */\n activeEnvironment?: string\n } & CollectionType\n >()\n\nconst createEnvironmentModalState = useModal()\nconst deleteEnvironmentModalState = useModal()\n\n/** Track the currently selected environment for editing or deleting */\nconst selectedEnvironmentName = ref<string | null>(null)\n\n/** Opens the delete modal */\nconst openDeleteModal = (name: string) => {\n selectedEnvironmentName.value = name\n deleteEnvironmentModalState.show()\n}\n\n/** Deletes the selected environment */\nconst deleteEnvironment = () => {\n if (!selectedEnvironmentName.value) {\n return\n }\n eventBus.emit('environment:delete:environment', {\n environmentName: selectedEnvironmentName.value,\n collectionType,\n })\n}\n\n/** Opens the upsert modal, leave name empty for add */\nconst openUpsertModal = (name?: string) => {\n selectedEnvironmentName.value = name ?? null\n createEnvironmentModalState.show()\n}\n</script>\n\n<template>\n <EnvironmentComponent\n v-for=\"[environmentName, environment] in Object.entries(environments)\"\n :key=\"environmentName\"\n :collectionType=\"collectionType\"\n :environment\n :environmentName\n :eventBus=\"eventBus\"\n :isActive=\"activeEnvironment === environmentName\"\n @delete=\"() => openDeleteModal(environmentName)\"\n @edit=\"() => openUpsertModal(environmentName)\" />\n\n <!-- Add Environment CTA -->\n <div\n class=\"text-c-3 flex h-full items-center justify-center rounded-lg border p-4\">\n <ScalarButton\n class=\"hover:bg-b-2 hover:text-c-1 flex items-center gap-2\"\n size=\"xs\"\n variant=\"ghost\"\n @click=\"() => openUpsertModal()\">\n <ScalarIconPlus />\n Add Environment\n </ScalarButton>\n </div>\n\n <!-- Upsert Modal -->\n <EnvironmentCreateModal\n :collectionType=\"collectionType\"\n :environments\n :eventBus\n :selectedEnvironmentName\n :state=\"createEnvironmentModalState\" />\n\n <!-- Delete Modal -->\n <EnvironmentDeleteModal\n :name=\"selectedEnvironmentName\"\n :state=\"deleteEnvironmentModalState\"\n @submit=\"deleteEnvironment\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;ACiCA,IAAM,mBACJ;;;;;;;;EA1BF,MAAM,OAAO;EAIb,MAAM,cAAc,IAAI,GAAE;EAC1B,MAAM,sBAAsB,IAA6B,KAAI;EAC7D,MAAM,kBAAkB,IAAI,MAAK;EACjC,MAAM,eAAe,IAAI,MAAK;;;;;EAM9B,MAAM,eAAe;GACnB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD;;EAOD,MAAM,gBAAgB,eACpB,aAAa,SAAS,QAAA,YAA6C,CACrE;;EAGA,MAAM,gBAAgB,eACd,QAAA,eAAe,CAAC,cAAc,SAAS,CAAC,gBAAgB,MAChE;;EAGA,MAAM,iBAAiB,UAA2B,QAAA,gBAAgB;;;;;EAMlE,MAAM,oBAAoB,eAAe;GACvC,MAAM,eAAe,YAAY,SAAS,QAAA;AAC1C,UAAO,cAAc,SAAS,YAAY,QACtC,qBAAqB,aAAa,KAClC,eAAe,iBAAiB;IACrC;;;;;EAMD,MAAM,oBAAoB,YAAY;AACpC,mBAAgB,QAAQ,CAAC,gBAAgB;AACzC,gBAAa,QAAQ;AAErB,OAAI,CAAC,gBAAgB,MACnB;AAGF,SAAM,UAAS;AACf,uBAAoB,OAAO,OAAM;;;EAInC,MAAM,uBAA6B;AACjC,gBAAa,QAAQ,CAAC,aAAa;;;;;;EAOrC,MAAM,eAAe,UAAwB;AAE3C,QAAK,UADkB,SAAS,CAAC,MAAM,WAAW,IAAI,GAAG,IAAI,UAAU,MAC1C;AAC7B,gBAAa,QAAQ;;;;;;EAOvB,MAAM,+BAAqC;AACzC,OAAI,CAAC,YAAY,MACf;GAGF,MAAM,iBAAiB,YAAY,MAAM,WAAW,IAAG,GACnD,YAAY,QACZ,IAAI,YAAY;AAEpB,eAAY,QAAQ;AACpB,eAAY,eAAc;;;uBAI1B,mBAyEM,OAAA,MAAA;KAtEK,gBAAA,SAAe,CAAK,aAAA,SAAA,WAAA,EAD7B,mBAUM,OAAA;;KARJ,OAAM;KACL,OAAK,eAAA,EAAA,iBAAqB,QAAA,aAAW,CAAA;KACrC,SAAO;QAEA,QAAA,eAAA,WAAA,EADR,YAIc,MAAA,WAAA,EAAA;;KAFZ,OAAM;KACN,MAAK;KACL,MAAK;;KAKA,gBAAA,SAAmB,aAAA,SAAA,WAAA,EAD5B,mBAgCM,OAhCN,cAgCM;mBA5BJ,mBAWM,UAAA,MAAA,WAVa,eAAV,WAAM;aADf,mBAWM,OAAA;OATH,KAAK;OACN,OAAM;OACL,OAAK,eAAA,EAAA,iBAAqB,QAAM,CAAA;OAChC,UAAK,WAAE,YAAY,OAAM;UAElB,cAAc,OAAM,IAAA,WAAA,EAD5B,YAIc,MAAA,WAAA,EAAA;;OAFZ,OAAM;OACN,MAAK;OACL,MAAK;;;+BAIT,mBAA8C,MAAA,EAA1C,OAAM,mCAAiC,EAAA,MAAA,GAAA;KAG3C,mBAUS,UAAA;MATP,OAAM;MACL,OAAK,eAAE,kBAAA,MAAiB;MACzB,MAAK;MACJ,SAAO;SAEA,cAAA,SAAA,WAAA,EADR,YAIc,MAAA,WAAA,EAAA;;MAFZ,OAAM;MACN,MAAK;MACL,MAAK;;;IAMH,gBAAA,SAAA,WAAA,EADR,mBAsBM,OAtBN,cAsBM;+BAnBJ,mBAAmE,QAAA,EAA7D,OAAM,sDAAoD,EAAA,MAAA,GAAA;KAChE,mBAE+B,QAAA;MAD7B,OAAM;MACL,OAAK,eAAE,kBAAA,MAAiB;;oBAC3B,mBAMoC,SAAA;eAL9B;MAAJ,KAAI;+EACgB,QAAA;MACpB,OAAM;MACL,aAAa,QAAA,eAAW;MACzB,MAAK;MACJ,SAAO;+CAJC,YAAA,MAAW,CAAA,CAAA;KAKtB,mBAOS,UAAA;MANP,OAAM;MACN,MAAK;MACJ,SAAO;SACR,YAEc,MAAA,WAAA,EAAA;MADZ,MAAK;MACL,MAAK;;;;;;;;;;;;;;AErJf,IAAM,gBAAgB;;;;;;;;;;;;;;EAEtB,MAAM,OAAO,IAAI,GAAE;EACnB,MAAM,gBAAgB,IAAI,cAAa;;AAGvC,cACQ,QAAA,MAAM,OACX,WAAW;AACV,OAAI,QAAQ;IACV,MAAM,cAAc,QAAA,aAAa,QAAA,2BAA2B;AAG5D,QAAI,QAAA,2BAA2B,aAAa;AAC1C,UAAK,QAAQ,QAAA;AACb,mBAAc,QAAQ,YAAY;WAI/B;AACH,UAAK,QAAQ;AACb,mBAAc,QAAQ;;;IAI9B;;;;;EAMA,MAAM,qBAAqB,UAAwB;AACjD,iBAAc,QAAQ;;;EAIxB,MAAM,qBAA2B;AAE/B,OAAI,QAAA,wBACF,SAAA,SAAS,KAAK,kCAAkC;IAC9C,oBAAoB,QAAA;IACpB,SAAS,EACP,OAAO,cAAc,OACtB;IACD,iBAAiB,KAAK,MAAM,MAAM;IAClC,gBAAa,QAAA;IACd,CAAA;OAID,SAAA,SAAS,KAAK,kCAAkC;IAC9C,iBAAiB,KAAK,MAAM,MAAM;IAClC,SAAS,EACP,OAAO,cAAc,OACtB;IACD,gBAAa,QAAA;IACd,CAAA;AAGH,WAAA,MAAM,MAAK;;;EAIb,MAAM,kBAAkB,eAAe;AACrC,OAAI,QAAA,wBACF,QACE,KAAK,UAAU,QAAA,2BACf,OAAO,KAAK,QAAA,aAAa,CAAC,SAAS,KAAK,MAAK;AAIjD,UAAO,OAAO,KAAK,QAAA,aAAa,CAAC,SAAS,KAAK,MAAK;IACrD;;uBAIC,YAiCc,MAAA,YAAA,EAAA;IAhCZ,WAAU;IACV,MAAK;IACJ,OAAO,QAAA;;2BA6BY,CA5BpB,YA4BoB,2BAAA;KA3BjB,UAAQ,CAAG,KAAA,MAAK,MAAI,IAAM,gBAAA;KAC1B,UAAQ;;KAuBE,QAAM,cACiC,CAAA,gBAAA,gBAA7C,QAAA,0BAAuB,WAAA,MAAA,GAAsB,iBAClD,EAAA,CAAA,CAAA;4BAZM,CAZN,mBAYM,OAZN,cAYM,CAVJ,YAGgC,2BAAA;MAF7B,aAAa,cAAA;MACd,OAAM;MACL,UAAQ;mCAGX,YAGmC,4BAAA;kBAFxB,KAAA;wEAAI,QAAA;MACb,OAAM;MACN,aAAY;oCAKR,gBAAA,SAAA,WAAA,EADR,mBAIM,OAJN,cAE2B,6CAE3B,IAAA,mBAAA,IAAA,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;EE5HN,MAAM,OAAO;;uBAOX,YAiCc,MAAA,YAAA,EAAA;IAhCZ,WAAU;IACV,MAAK;IACJ,OAAO,QAAA;IACP,OAAK,UAAY,QAAA;;2BAId,CAAA,OAAA,OAAA,OAAA,KAHJ,mBAGI,KAAA,EAHD,OAAM,+CAA6C,EAAC,qFAGvD,GAAA,GACA,mBAuBM,OAvBN,cAuBM,CAtBJ,YAUe,MAAA,aAAA,EAAA;KATb,MAAK;KACL,SAAQ;KACP,SAAK,OAAA,OAAA,OAAA,WAAA;AAAiC,WAAI,SAAA;AAAuB,cAAA,MAAM,MAAI;;;4BAO9E,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,YAEJ,GAAA,CAAA,EAAA,CAAA;;QACA,YAUe,MAAA,aAAA,EAAA;KATb,MAAK;KACL,SAAQ;KACP,SAAK,OAAA,OAAA,OAAA,WAAA;AAAiC,WAAI,SAAA;AAAuB,cAAA,MAAM,MAAI;;;4BAO9E,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFI,wBAEJ,GAAA,CAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;EEnBN,MAAM,UAAU;GAAC;GAAO;GAAO;GAAM;;EAGrC,MAAM,cAAc,eAKZ;;GAEN,MAAM,eAAe,QAAA,YAAY,UAAU,KAAK,OAAO;IACrD,MAAM,EAAE;IACR,OAAO,OAAO,EAAE,UAAU,WAAW,EAAE,QAAQ,EAAE,MAAM;IACxD,EAAC;GAEF,MAAM,UAAU,QAAA,YAAY,UAAU,GAAG,GAAE;GAC3C,MAAM,sBACJ,YAAY,QAAQ,SAAS,MAAM,QAAQ,UAAU;AAGvD,OAAI,CAAC,WAAW,oBACd,QAAO,CAAC,GAAG,cAAc;IAAE,MAAM;IAAI,OAAO;IAAI,CAAA;AAGlD,UAAO;IACR;;EAGD,MAAM,wBACJ,MACA,OACA,UACS;GACT,MAAM,gBAAgB,SAAS,QAAA,YAAY,UAAU;;;;;AAMrD,OAAI,CAAC,QAAQ,cACX;AAIF,OAAI,SAAS,QAAA,YAAY,UAAU,QAAQ;AACzC,YAAA,SAAS,KAAK,2CAA2C;KACvD,iBAAc,QAAA;KACd,UAAU;MAAE;MAAM;MAAO;KACzB,gBAAa,QAAA;KACd,CAAA;AACD;;AAIF,WAAA,SAAS,KAAK,2CAA2C;IACvD,iBAAc,QAAA;IACd,UAAU;KAAE;KAAM;KAAO;IACzB;IACA,gBAAa,QAAA;IACd,CAAA;;;EAIH,MAAM,wBAAwB,UAC5B,QAAA,SAAS,KAAK,2CAA2C;GACvD,iBAAc,QAAA;GACd;GACA,gBAAa,QAAA;GACd,CAAA;;uBAID,YAwDY,MAAA,kBAAA,EAAA;IAvDV,OAAM;IACL,SAAS;;2BAMK,CAJf,YAIe,MAAA,qBAAA,EAAA,EAJD,OAAM,kBAAgB,EAAA;4BACK;MAAvC,YAAuC,MAAA,wBAAA,EAAA,MAAA;8BAAlB,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAAJ,QAAI,GAAA,CAAA,EAAA,CAAA;;;MACrB,YAAwC,MAAA,wBAAA,EAAA,MAAA;8BAAlB,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAAL,SAAK,GAAA,CAAA,EAAA,CAAA;;;MACtB,YAA0C,MAAA,wBAAA,EAAA,MAAA;8BAAlB,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAAP,WAAO,GAAA,CAAA,EAAA,CAAA;;;;;0BAI1B,mBA4Ce,UAAA,MAAA,WA3CU,YAAA,QAAf,KAAK,UAAK;yBADpB,YA4Ce,MAAA,qBAAA,EAAA;MA1CZ,KAAK;MACN,OAAM;;6BAcU;OAZhB,YAYgB,MAAA,sBAAA,EAAA,MAAA;+BADR,CAVN,YAUM,MAAA,kBAAA,EAAA;SATJ,cAAW;SACX,sBAAA;SACA,kBAAA;SACC,aAAa,KAAA;SACd,cAAA;SACC,YAAY,IAAI;SACjB,aAAY;SACX,wBAAiC,SAAS,qBAAqB,MAAM,IAAI,OAAO,MAAK;;;;OAM1F,YAWgB,MAAA,sBAAA,EAAA,MAAA;+BADR,CATN,YASM,MAAA,kBAAA,EAAA;SARJ,cAAW;SACX,kBAAA;SACC,aAAa,KAAA;SACd,cAAA;SACC,YAAY,IAAI;SACjB,aAAY;SACX,wBAAiC,UAAU,qBAAqB,IAAI,MAAM,OAAO,MAAK;;;;OAM3F,YASgB,MAAA,sBAAA,EAAA,EATD,OAAM,oCAAkC,EAAA;+BAQtC,CANP,QAAQ,QAAA,YAAY,UAAU,UAAA,WAAA,EADtC,YAOe,MAAA,aAAA,EAAA;;SALb,OAAM;SACN,MAAK;SACL,SAAQ;SACP,UAAK,WAAE,qBAAqB,MAAK;;gCACE,CAApC,YAAoC,MAAA,gBAAA,EAAA,EAAnB,OAAM,YAAU,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EE7H3C,MAAM,OAAO;;uBAMX,mBAgDM,OAAA,EA/CJ,OAAK,eAAA,CAAC,sDACE,QAAA,WAAQ,kCAAA,GAAA,CAAA,EAAA,EAAA,CAEhB,mBAoCM,OAAA,EAnCJ,OAAK,eAAA,CAAC,uDACE,QAAA,WAAQ,mBAAA,SAAA,CAAA,EAAA,EAAA,CAChB,mBAiBM,OAjBN,cAiBM;IAhBJ,mBAIM,OAJN,YAIM,CAHJ,mBAEyD,QAAA;KADvD,OAAM;KACL,OAAK,eAAA,EAAA,iBAAqB,QAAA,YAAY,OAAK,CAAA;;IAEhD,mBAEO,QAFP,YAEO,gBADF,QAAA,gBAAe,EAAA,EAAA;IAIZ,QAAA,YAAA,WAAA,EADR,mBAMO,QANP,YAMO,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAFL,mBAAsD,QAAA,EAAhD,OAAM,oCAAkC,EAAA,MAAA,GAAA,EAAA,gBAAQ,YAExD,GAAA,CAAA,EAAA,CAAA,IAAA,mBAAA,IAAA,KAAA;OAIF,mBAYM,OAZN,YAYM,CAXJ,YAI0B,MAAA,iBAAA,EAAA;IAHvB,MAAM,MAAA,qBAAoB;IAC3B,OAAM;IACN,MAAK;IACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,OAAA;0BAEd,YAI4B,MAAA,iBAAA,EAAA;IAHzB,MAAM,MAAA,gBAAe;IACtB,OAAM;IACN,MAAK;IACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,SAAA;iCAKlB,YAIc,mCAAA;IAHX,gBAAA,QAAA;IACA,aAAA,QAAA;IACA,iBAAA,QAAA;IACA,UAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;EEpDP,MAAM,8BAA8B,UAAS;EAC7C,MAAM,8BAA8B,UAAS;;EAG7C,MAAM,0BAA0B,IAAmB,KAAI;;EAGvD,MAAM,mBAAmB,SAAiB;AACxC,2BAAwB,QAAQ;AAChC,+BAA4B,MAAK;;;EAInC,MAAM,0BAA0B;AAC9B,OAAI,CAAC,wBAAwB,MAC3B;AAEF,WAAA,SAAS,KAAK,kCAAkC;IAC9C,iBAAiB,wBAAwB;IACzC,gBAAa,QAAA;IACd,CAAA;;;EAIH,MAAM,mBAAmB,SAAkB;AACzC,2BAAwB,QAAQ,QAAQ;AACxC,+BAA4B,MAAK;;;;sBAKjC,mBASmD,UAAA,MAAA,WARR,OAAO,QAAQ,QAAA,aAAY,GAAA,CAA5D,iBAAiB,iBAAW;yBADtC,YASmD,qBAAA;MAPhD,KAAK;MACL,gBAAgB,QAAA;MAChB;MACA;MACA,UAAU,QAAA;MACV,UAAU,QAAA,sBAAsB;MAChC,gBAAc,gBAAgB,gBAAe;MAC7C,cAAY,gBAAgB,gBAAe;;;;;;;;;;;IAG9C,mBAUM,OAVN,YAUM,CARJ,YAOe,MAAA,aAAA,EAAA;KANb,OAAM;KACN,MAAK;KACL,SAAQ;KACP,SAAK,OAAA,OAAA,OAAA,WAAQ,iBAAe;;4BACX,CAAlB,YAAkB,MAAA,eAAA,CAAA,EAAA,OAAA,OAAA,OAAA,KAAA,gBAAA,qBAEpB,GAAA,EAAA,CAAA;;;IAIF,YAKyC,gCAAA;KAJtC,gBAAgB,QAAA;KAChB,cAAA,QAAA;KACA,UAAA,QAAA;KACA,yBAAA,wBAAA;KACA,OAAO,MAAA,4BAA2B;;;;;;;;IAGrC,YAGgC,gCAAA;KAF7B,MAAM,wBAAA;KACN,OAAO,MAAA,4BAA2B;KAClC,UAAQ"}
@@ -0,0 +1,36 @@
1
+ //#region src/libs/formatters.ts
2
+ /**
3
+ * Formats bytes to a more readable format
4
+ *
5
+ * @see https://stackoverflow.com/a/18650828/1624255
6
+ */
7
+ var formatBytes = (bytes, decimals = 2) => {
8
+ if (!+bytes) return "0 Bytes";
9
+ const k = 1024;
10
+ const dm = decimals < 0 ? 0 : decimals;
11
+ const sizes = [
12
+ "B",
13
+ "KiB",
14
+ "MiB",
15
+ "GiB",
16
+ "TiB",
17
+ "PiB",
18
+ "EiB",
19
+ "ZiB",
20
+ "YiB"
21
+ ];
22
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
23
+ return `${Number.parseFloat((bytes / Math.pow(k, i)).toFixed(dm))}${sizes[i]}`;
24
+ };
25
+ /**
26
+ * Formats milliseconds to seconds and appends an "s" if more than one second
27
+ * else returns ms appended to the number
28
+ */
29
+ var formatMs = (ms, decimals = 2) => {
30
+ if (ms > 1e3) return (ms / 1e3).toFixed(decimals) + "s";
31
+ return ms + "ms";
32
+ };
33
+ //#endregion
34
+ export { formatMs as n, formatBytes as t };
35
+
36
+ //# sourceMappingURL=formatters-DOGXZq9R.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters-DOGXZq9R.js","names":[],"sources":["../src/libs/formatters.ts"],"sourcesContent":["/**\n * Formats bytes to a more readable format\n *\n * @see https://stackoverflow.com/a/18650828/1624255\n */\nexport const formatBytes = (bytes: number, decimals = 2) => {\n if (!+bytes) {\n return '0 Bytes'\n }\n\n const k = 1024\n const dm = decimals < 0 ? 0 : decimals\n const sizes = ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']\n const i = Math.floor(Math.log(bytes) / Math.log(k))\n\n return `${Number.parseFloat((bytes / Math.pow(k, i)).toFixed(dm))}${sizes[i]}`\n}\n\n/**\n * Formats milliseconds to seconds and appends an \"s\" if more than one second\n * else returns ms appended to the number\n */\nexport const formatMs = (ms: number, decimals = 2): string => {\n if (ms > 1000) {\n return (ms / 1000).toFixed(decimals) + 's'\n }\n return ms + 'ms'\n}\n"],"mappings":";;;;;;AAKA,IAAa,eAAe,OAAe,WAAW,MAAM;AAC1D,KAAI,CAAC,CAAC,MACJ,QAAO;CAGT,MAAM,IAAI;CACV,MAAM,KAAK,WAAW,IAAI,IAAI;CAC9B,MAAM,QAAQ;EAAC;EAAK;EAAO;EAAO;EAAO;EAAO;EAAO;EAAO;EAAO;EAAM;CAC3E,MAAM,IAAI,KAAK,MAAM,KAAK,IAAI,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;AAEnD,QAAO,GAAG,OAAO,YAAY,QAAQ,KAAK,IAAI,GAAG,EAAE,EAAE,QAAQ,GAAG,CAAC,GAAG,MAAM;;;;;;AAO5E,IAAa,YAAY,IAAY,WAAW,MAAc;AAC5D,KAAI,KAAK,IACP,SAAQ,KAAK,KAAM,QAAQ,SAAS,GAAG;AAEzC,QAAO,KAAK"}
@@ -0,0 +1,42 @@
1
+ import { createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, openBlock, renderSlot, toDisplayString, unref, withCtx, withModifiers } from "vue";
2
+ import { ScalarButton } from "@scalar/components";
3
+ //#region src/v2/components/forms/ConfirmationForm.vue?vue&type=script&setup=true&lang.ts
4
+ var _hoisted_1 = { class: "flex justify-between gap-10" };
5
+ //#endregion
6
+ //#region src/v2/components/forms/ConfirmationForm.vue
7
+ var ConfirmationForm_default = /* @__PURE__ */ defineComponent({
8
+ __name: "ConfirmationForm",
9
+ props: {
10
+ label: { default: "Save" },
11
+ variant: { default: "solid" }
12
+ },
13
+ emits: ["cancel", "submit"],
14
+ setup(__props, { emit: __emit }) {
15
+ const emit = __emit;
16
+ return (_ctx, _cache) => {
17
+ return openBlock(), createElementBlock("form", {
18
+ class: "flex flex-col gap-4 text-base",
19
+ onSubmit: _cache[1] || (_cache[1] = withModifiers(($event) => emit("submit"), ["prevent"]))
20
+ }, [renderSlot(_ctx.$slots, "default"), createElementVNode("div", _hoisted_1, [createVNode(unref(ScalarButton), {
21
+ size: "sm",
22
+ type: "button",
23
+ variant: "outlined",
24
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("cancel"))
25
+ }, {
26
+ default: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Cancel ", -1)])]),
27
+ _: 1
28
+ }), createVNode(unref(ScalarButton), {
29
+ size: "sm",
30
+ type: "submit",
31
+ variant: __props.variant
32
+ }, {
33
+ default: withCtx(() => [createTextVNode(toDisplayString(__props.label), 1)]),
34
+ _: 1
35
+ }, 8, ["variant"])])], 32);
36
+ };
37
+ }
38
+ });
39
+ //#endregion
40
+ export { ConfirmationForm_default as t };
41
+
42
+ //# sourceMappingURL=forms-CZX6cFDS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forms-CZX6cFDS.js","names":[],"sources":["../src/v2/components/forms/ConfirmationForm.vue","../src/v2/components/forms/ConfirmationForm.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components'\n\nconst { label = 'Save', variant = 'solid' } = defineProps<{\n /** The label of the submit button */\n label?: string\n /** Sets the style of the submit button */\n variant?: 'danger' | 'solid'\n}>()\n\nconst emit = defineEmits<{\n (e: 'cancel'): void\n (e: 'submit'): void\n}>()\n</script>\n<template>\n <form\n class=\"flex flex-col gap-4 text-base\"\n @submit.prevent=\"emit('submit')\">\n <slot />\n\n <div class=\"flex justify-between gap-10\">\n <!-- Cancel -->\n <ScalarButton\n size=\"sm\"\n type=\"button\"\n variant=\"outlined\"\n @click=\"emit('cancel')\">\n Cancel\n </ScalarButton>\n\n <!-- Submit -->\n <ScalarButton\n size=\"sm\"\n type=\"submit\"\n :variant=\"variant\">\n {{ label }}\n </ScalarButton>\n </div>\n </form>\n</template>\n","<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components'\n\nconst { label = 'Save', variant = 'solid' } = defineProps<{\n /** The label of the submit button */\n label?: string\n /** Sets the style of the submit button */\n variant?: 'danger' | 'solid'\n}>()\n\nconst emit = defineEmits<{\n (e: 'cancel'): void\n (e: 'submit'): void\n}>()\n</script>\n<template>\n <form\n class=\"flex flex-col gap-4 text-base\"\n @submit.prevent=\"emit('submit')\">\n <slot />\n\n <div class=\"flex justify-between gap-10\">\n <!-- Cancel -->\n <ScalarButton\n size=\"sm\"\n type=\"button\"\n variant=\"outlined\"\n @click=\"emit('cancel')\">\n Cancel\n </ScalarButton>\n\n <!-- Submit -->\n <ScalarButton\n size=\"sm\"\n type=\"submit\"\n :variant=\"variant\">\n {{ label }}\n </ScalarButton>\n </div>\n </form>\n</template>\n"],"mappings":";;;;;;;;;;;;;;ECUA,MAAM,OAAO;;uBAMX,mBAuBO,QAAA;IAtBL,OAAM;IACL,UAAM,OAAA,OAAA,OAAA,KAAA,eAAA,WAAU,KAAI,SAAA,EAAA,CAAA,UAAA,CAAA;OACrB,WAAQ,KAAA,QAAA,UAAA,EAER,mBAiBM,OAjBN,YAiBM,CAfJ,YAMe,MAAA,aAAA,EAAA;IALb,MAAK;IACL,MAAK;IACL,SAAQ;IACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,SAAA;;2BAEd,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAF0B,YAE1B,GAAA,CAAA,EAAA,CAAA;;OAGA,YAKe,MAAA,aAAA,EAAA;IAJb,MAAK;IACL,MAAK;IACJ,SAAS,QAAA;;2BACC,CAAA,gBAAA,gBAAR,QAAA,MAAK,EAAA,EAAA,CAAA,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { coerceValue } from "@scalar/workspace-store/schemas/typebox-coerce";
2
+ import { xScalarEnvironmentSchema } from "@scalar/workspace-store/schemas/extensions/document/x-scalar-environments";
3
+ //#region src/v2/helpers/get-active-environment.ts
4
+ var getActiveEnvironment = (workspace, document) => {
5
+ if (workspace === null) return coerceValue(xScalarEnvironmentSchema, {});
6
+ const activeEnv = workspace.workspace["x-scalar-active-environment"];
7
+ if (!activeEnv) return coerceValue(xScalarEnvironmentSchema, {});
8
+ const workspaceEnv = workspace.workspace["x-scalar-environments"]?.[activeEnv] ?? { variables: [] };
9
+ const documentEnv = document?.["x-scalar-environments"]?.[activeEnv] ?? { variables: [] };
10
+ return coerceValue(xScalarEnvironmentSchema, {
11
+ ...workspaceEnv,
12
+ ...documentEnv,
13
+ variables: [...workspaceEnv.variables, ...documentEnv.variables]
14
+ });
15
+ };
16
+ //#endregion
17
+ export { getActiveEnvironment as t };
18
+
19
+ //# sourceMappingURL=get-active-environment-CkxyQ1dM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-active-environment-CkxyQ1dM.js","names":[],"sources":["../src/v2/helpers/get-active-environment.ts"],"sourcesContent":["import type { WorkspaceStore } from '@scalar/workspace-store/client'\nimport type { WorkspaceDocument } from '@scalar/workspace-store/schemas'\nimport {\n type XScalarEnvironment,\n xScalarEnvironmentSchema,\n} from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport { coerceValue } from '@scalar/workspace-store/schemas/typebox-coerce'\n\nexport const getActiveEnvironment = (\n workspace: WorkspaceStore | null,\n document: WorkspaceDocument | null,\n): XScalarEnvironment => {\n if (workspace === null) {\n return coerceValue(xScalarEnvironmentSchema, {})\n }\n const activeEnv = workspace.workspace['x-scalar-active-environment']\n\n if (!activeEnv) {\n return coerceValue(xScalarEnvironmentSchema, {})\n }\n\n const workspaceEnv = workspace.workspace['x-scalar-environments']?.[activeEnv] ?? {\n variables: [],\n }\n const documentEnv = document?.['x-scalar-environments']?.[activeEnv] ?? {\n variables: [],\n }\n\n return coerceValue(xScalarEnvironmentSchema, {\n ...workspaceEnv,\n ...documentEnv,\n variables: [...workspaceEnv.variables, ...documentEnv.variables],\n })\n}\n"],"mappings":";;;AAQA,IAAa,wBACX,WACA,aACuB;AACvB,KAAI,cAAc,KAChB,QAAO,YAAY,0BAA0B,EAAE,CAAC;CAElD,MAAM,YAAY,UAAU,UAAU;AAEtC,KAAI,CAAC,UACH,QAAO,YAAY,0BAA0B,EAAE,CAAC;CAGlD,MAAM,eAAe,UAAU,UAAU,2BAA2B,cAAc,EAChF,WAAW,EAAE,EACd;CACD,MAAM,cAAc,WAAW,2BAA2B,cAAc,EACtE,WAAW,EAAE,EACd;AAED,QAAO,YAAY,0BAA0B;EAC3C,GAAG;EACH,GAAG;EACH,WAAW,CAAC,GAAG,aAAa,WAAW,GAAG,YAAY,UAAU;EACjE,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { n as getEnvironmentVariables, t as getServerUrl } from "./get-server-url-o3On8CEr.js";
2
+ import { mergeUrls } from "@scalar/helpers/url/merge-urls";
3
+ import { replaceVariables } from "@scalar/helpers/regex/replace-variables";
4
+ //#region src/v2/blocks/operation-block/helpers/get-resolved-url.ts
5
+ /**
6
+ * Resolves and constructs the final request URL using the provided environment, server, path,
7
+ * path variables, and optional query parameters.
8
+ *
9
+ * - Environment variables and path variables are used to replace placeholders in the path string.
10
+ * - The server URL is dynamically resolved (may apply env variables).
11
+ * - urlParams are optionally appended as the query string.
12
+ *
13
+ * @param environment The current environment containing variable values.
14
+ * @param server The selected server object; can be null.
15
+ * @param path The raw path string from the OpenAPI document (may contain variables).
16
+ * @param pathVariables Map of path variable values (e.g., { petId: '5' }).
17
+ * @param urlParams Optional query parameters as URLSearchParams.
18
+ * @returns Fully resolved URL as a string.
19
+ */
20
+ var getResolvedUrl = ({ environment, server, path, pathVariables, urlParams }) => {
21
+ const environmentVariables = getEnvironmentVariables(environment);
22
+ return mergeUrls(getServerUrl(server, environmentVariables), replaceVariables(path, {
23
+ ...environmentVariables,
24
+ ...pathVariables
25
+ }), urlParams);
26
+ };
27
+ //#endregion
28
+ export { getResolvedUrl as t };
29
+
30
+ //# sourceMappingURL=get-resolved-url-BUCwrBzc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-resolved-url-BUCwrBzc.js","names":[],"sources":["../src/v2/blocks/operation-block/helpers/get-resolved-url.ts"],"sourcesContent":["import { replaceVariables } from '@scalar/helpers/regex/replace-variables'\nimport { mergeUrls } from '@scalar/helpers/url/merge-urls'\nimport type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/server'\n\nimport { getEnvironmentVariables } from '@/v2/blocks/operation-block/helpers/get-environment-variables'\nimport { getServerUrl } from '@/v2/blocks/operation-block/helpers/get-server-url'\n\n/**\n * Resolves and constructs the final request URL using the provided environment, server, path,\n * path variables, and optional query parameters.\n *\n * - Environment variables and path variables are used to replace placeholders in the path string.\n * - The server URL is dynamically resolved (may apply env variables).\n * - urlParams are optionally appended as the query string.\n *\n * @param environment The current environment containing variable values.\n * @param server The selected server object; can be null.\n * @param path The raw path string from the OpenAPI document (may contain variables).\n * @param pathVariables Map of path variable values (e.g., { petId: '5' }).\n * @param urlParams Optional query parameters as URLSearchParams.\n * @returns Fully resolved URL as a string.\n */\nexport const getResolvedUrl = ({\n environment,\n server,\n path,\n pathVariables,\n urlParams,\n}: {\n environment: XScalarEnvironment\n server: ServerObject | null\n path: string\n pathVariables: Record<string, string>\n urlParams?: URLSearchParams\n}) => {\n const environmentVariables = getEnvironmentVariables(environment)\n const serverUrl = getServerUrl(server, environmentVariables)\n const pathWithVariables = replaceVariables(path, { ...environmentVariables, ...pathVariables })\n return mergeUrls(serverUrl, pathWithVariables, urlParams)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAuBA,IAAa,kBAAkB,EAC7B,aACA,QACA,MACA,eACA,gBAOI;CACJ,MAAM,uBAAuB,wBAAwB,YAAY;AAGjE,QAAO,UAFW,aAAa,QAAQ,qBAAqB,EAClC,iBAAiB,MAAM;EAAE,GAAG;EAAsB,GAAG;EAAe,CAAC,EAChD,UAAU"}
@@ -0,0 +1,32 @@
1
+ import { objectEntries } from "@vueuse/core";
2
+ import { replaceVariables } from "@scalar/helpers/regex/replace-variables";
3
+ //#region src/v2/blocks/operation-block/helpers/get-environment-variables.ts
4
+ /**
5
+ * Flattens the environment variables array into a key-value object.
6
+ * If a variable value is a string, use it directly; otherwise, use its default value.
7
+ *
8
+ * @returns An object mapping variable names to their resolved values.
9
+ */
10
+ var getEnvironmentVariables = (environment) => {
11
+ return environment.variables.reduce((acc, curr) => {
12
+ acc[curr.name] = typeof curr.value === "string" ? curr.value : curr.value.default;
13
+ return acc;
14
+ }, {});
15
+ };
16
+ //#endregion
17
+ //#region src/v2/blocks/operation-block/helpers/get-server-url.ts
18
+ var getServerUrl = (server, environmentVariables) => {
19
+ /** Extract the server variables default values*/
20
+ const serverVariables = objectEntries(server?.variables ?? {}).reduce((acc, [name, variable]) => {
21
+ if (variable.default) acc[name] = variable.default;
22
+ return acc;
23
+ }, {});
24
+ return replaceVariables(server?.url ?? "", {
25
+ ...environmentVariables,
26
+ ...serverVariables
27
+ });
28
+ };
29
+ //#endregion
30
+ export { getEnvironmentVariables as n, getServerUrl as t };
31
+
32
+ //# sourceMappingURL=get-server-url-o3On8CEr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-server-url-o3On8CEr.js","names":[],"sources":["../src/v2/blocks/operation-block/helpers/get-environment-variables.ts","../src/v2/blocks/operation-block/helpers/get-server-url.ts"],"sourcesContent":["import type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'\n\n/**\n * Flattens the environment variables array into a key-value object.\n * If a variable value is a string, use it directly; otherwise, use its default value.\n *\n * @returns An object mapping variable names to their resolved values.\n */\nexport const getEnvironmentVariables = (environment: XScalarEnvironment) => {\n return environment.variables.reduce(\n (acc, curr) => {\n acc[curr.name] = typeof curr.value === 'string' ? curr.value : curr.value.default\n return acc\n },\n {} as Record<string, string>,\n )\n}\n","import { replaceVariables } from '@scalar/helpers/regex/replace-variables'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/server'\nimport { objectEntries } from '@vueuse/core'\n\nexport const getServerUrl = (server: ServerObject | null, environmentVariables: Record<string, string>) => {\n /** Extract the server variables default values*/\n const serverVariables = objectEntries(server?.variables ?? {}).reduce(\n (acc, [name, variable]) => {\n if (variable.default) {\n acc[name] = variable.default\n }\n return acc\n },\n {} as Record<string, string>,\n )\n\n return replaceVariables(server?.url ?? '', { ...environmentVariables, ...serverVariables })\n}\n"],"mappings":";;;;;;;;;AAQA,IAAa,2BAA2B,gBAAoC;AAC1E,QAAO,YAAY,UAAU,QAC1B,KAAK,SAAS;AACb,MAAI,KAAK,QAAQ,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,KAAK,MAAM;AAC1E,SAAO;IAET,EAAE,CACH;;;;ACXH,IAAa,gBAAgB,QAA6B,yBAAiD;;CAEzG,MAAM,kBAAkB,cAAc,QAAQ,aAAa,EAAE,CAAC,CAAC,QAC5D,KAAK,CAAC,MAAM,cAAc;AACzB,MAAI,SAAS,QACX,KAAI,QAAQ,SAAS;AAEvB,SAAO;IAET,EAAE,CACH;AAED,QAAO,iBAAiB,QAAQ,OAAO,IAAI;EAAE,GAAG;EAAsB,GAAG;EAAiB,CAAC"}
@@ -0,0 +1,106 @@
1
+ import { combineUrlAndPath } from "@scalar/helpers/url/merge-urls";
2
+ //#region src/v2/helpers/get-servers.ts
3
+ /**
4
+ * Retrieves and processes servers from an OpenAPI document.
5
+ *
6
+ * This function handles several scenarios:
7
+ * 1. No servers provided - creates a default server from document URL or fallback
8
+ * 2. Invalid server configurations - filters them out with warnings
9
+ * 3. Relative URLs - resolves them to absolute URLs using available base URLs
10
+ *
11
+ * @param servers - Array of OpenAPI server objects from the document
12
+ * @param options - Configuration options for server processing
13
+ * @returns Array of validated Server entities
14
+ */
15
+ function getServers(servers, options = {}) {
16
+ if (!servers?.length) {
17
+ const fallbackServer = createFallbackServer(options);
18
+ return fallbackServer ? [fallbackServer] : [];
19
+ }
20
+ if (!Array.isArray(servers)) return [];
21
+ const validServers = servers.map((server) => processServerObject(server, options));
22
+ if (validServers.length === 0) {
23
+ const fallbackServer = createFallbackServer(options);
24
+ return fallbackServer ? [fallbackServer] : [];
25
+ }
26
+ return validServers;
27
+ }
28
+ /**
29
+ * Extracts the base URL (protocol + hostname) from a document URL.
30
+ * Returns undefined if the URL is invalid.
31
+ */
32
+ function extractBaseUrlFromDocumentUrl(documentUrl) {
33
+ try {
34
+ const url = new URL(documentUrl);
35
+ const port = url.port ? `:${url.port}` : "";
36
+ return `${url.protocol}//${url.hostname}${port}`;
37
+ } catch {
38
+ return;
39
+ }
40
+ }
41
+ /**
42
+ * Gets the fallback URL from window.location.origin if available.
43
+ */
44
+ function getFallbackUrl() {
45
+ if (typeof window === "undefined" || typeof window?.location?.origin !== "string") return;
46
+ return window.location.origin;
47
+ }
48
+ /**
49
+ * Creates a server object from a URL string, with error handling.
50
+ */
51
+ function createServerFromUrl(url) {
52
+ return { url };
53
+ }
54
+ /**
55
+ * Creates a default server using the document URL as the base.
56
+ */
57
+ function createDefaultServerFromDocumentUrl(documentUrl) {
58
+ const baseUrl = extractBaseUrlFromDocumentUrl(documentUrl);
59
+ if (!baseUrl) return;
60
+ return createServerFromUrl(baseUrl);
61
+ }
62
+ /**
63
+ * Creates a default server using the fallback URL (window.location.origin).
64
+ */
65
+ function createDefaultServerFromFallback() {
66
+ const fallbackUrl = getFallbackUrl();
67
+ if (!fallbackUrl) return;
68
+ return createServerFromUrl(fallbackUrl);
69
+ }
70
+ /**
71
+ * Resolves a relative server URL to an absolute URL using available base URLs.
72
+ * Uses a priority system: baseServerURL > documentUrl > fallbackUrl.
73
+ */
74
+ function resolveRelativeServerUrl(serverUrl, options) {
75
+ const { baseServerUrl: baseServerURL, documentUrl } = options;
76
+ if (baseServerURL) return combineUrlAndPath(baseServerURL, serverUrl);
77
+ if (documentUrl) {
78
+ const baseUrl = extractBaseUrlFromDocumentUrl(documentUrl);
79
+ if (baseUrl) return combineUrlAndPath(baseUrl, serverUrl);
80
+ }
81
+ const fallbackUrl = getFallbackUrl();
82
+ if (fallbackUrl) return combineUrlAndPath(fallbackUrl, serverUrl);
83
+ return serverUrl;
84
+ }
85
+ /**
86
+ * Processes a single server object, handling validation and URL resolution.
87
+ */
88
+ function processServerObject(server, options) {
89
+ if (server.url?.startsWith("/")) server.url = resolveRelativeServerUrl(server.url, options);
90
+ return server;
91
+ }
92
+ /**
93
+ * Creates a fallback server when no valid servers are available.
94
+ * Uses document URL first, then fallback URL.
95
+ */
96
+ function createFallbackServer(options) {
97
+ if (options.documentUrl) {
98
+ const defaultServer = createDefaultServerFromDocumentUrl(options.documentUrl);
99
+ if (defaultServer) return defaultServer;
100
+ }
101
+ return createDefaultServerFromFallback();
102
+ }
103
+ //#endregion
104
+ export { getServers as t };
105
+
106
+ //# sourceMappingURL=get-servers-B_WNlQWB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-servers-B_WNlQWB.js","names":[],"sources":["../src/v2/helpers/get-servers.ts"],"sourcesContent":["import { combineUrlAndPath } from '@scalar/helpers/url/merge-urls'\nimport type { ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\n/**\n * Server processing options containing base URLs for resolving relative server URLs.\n */\ntype ServerProcessingOptions = {\n baseServerUrl?: string\n documentUrl?: string\n}\n\n/**\n * Retrieves and processes servers from an OpenAPI document.\n *\n * This function handles several scenarios:\n * 1. No servers provided - creates a default server from document URL or fallback\n * 2. Invalid server configurations - filters them out with warnings\n * 3. Relative URLs - resolves them to absolute URLs using available base URLs\n *\n * @param servers - Array of OpenAPI server objects from the document\n * @param options - Configuration options for server processing\n * @returns Array of validated Server entities\n */\nexport function getServers(servers: ServerObject[] | undefined, options: ServerProcessingOptions = {}): ServerObject[] {\n // Handle case where no servers are provided\n if (!servers?.length) {\n const fallbackServer = createFallbackServer(options)\n return fallbackServer ? [fallbackServer] : []\n }\n\n // Handle invalid server array\n if (!Array.isArray(servers)) {\n return []\n }\n\n // Process each server and filter out invalid ones\n const validServers = servers.map((server) => processServerObject(server, options))\n\n // If all servers were invalid, provide a fallback\n if (validServers.length === 0) {\n const fallbackServer = createFallbackServer(options)\n return fallbackServer ? [fallbackServer] : []\n }\n\n return validServers\n}\n\n/**\n * Extracts the base URL (protocol + hostname) from a document URL.\n * Returns undefined if the URL is invalid.\n */\nfunction extractBaseUrlFromDocumentUrl(documentUrl: string): string | undefined {\n try {\n const url = new URL(documentUrl)\n const port = url.port ? `:${url.port}` : ''\n return `${url.protocol}//${url.hostname}${port}`\n } catch {\n return undefined\n }\n}\n\n/**\n * Gets the fallback URL from window.location.origin if available.\n */\nfunction getFallbackUrl(): string | undefined {\n if (typeof window === 'undefined' || typeof window?.location?.origin !== 'string') {\n return undefined\n }\n return window.location.origin\n}\n\n/**\n * Creates a server object from a URL string, with error handling.\n */\nfunction createServerFromUrl(url: string): ServerObject | undefined {\n return { url }\n}\n\n/**\n * Creates a default server using the document URL as the base.\n */\nfunction createDefaultServerFromDocumentUrl(documentUrl: string): ServerObject | undefined {\n const baseUrl = extractBaseUrlFromDocumentUrl(documentUrl)\n if (!baseUrl) {\n return undefined\n }\n\n return createServerFromUrl(baseUrl)\n}\n\n/**\n * Creates a default server using the fallback URL (window.location.origin).\n */\nfunction createDefaultServerFromFallback(): ServerObject | undefined {\n const fallbackUrl = getFallbackUrl()\n if (!fallbackUrl) {\n return undefined\n }\n\n return createServerFromUrl(fallbackUrl)\n}\n\n/**\n * Resolves a relative server URL to an absolute URL using available base URLs.\n * Uses a priority system: baseServerURL > documentUrl > fallbackUrl.\n */\nfunction resolveRelativeServerUrl(serverUrl: string, options: ServerProcessingOptions): string {\n const { baseServerUrl: baseServerURL, documentUrl } = options\n\n // Priority 1: Use provided base server URL\n if (baseServerURL) {\n return combineUrlAndPath(baseServerURL, serverUrl)\n }\n\n // Priority 2: Extract base URL from document URL\n if (documentUrl) {\n const baseUrl = extractBaseUrlFromDocumentUrl(documentUrl)\n if (baseUrl) {\n return combineUrlAndPath(baseUrl, serverUrl)\n }\n }\n\n // Priority 3: Use fallback URL (window.location.origin)\n const fallbackUrl = getFallbackUrl()\n if (fallbackUrl) {\n return combineUrlAndPath(fallbackUrl, serverUrl)\n }\n\n // If no base URL is available, return the original URL\n return serverUrl\n}\n\n/**\n * Processes a single server object, handling validation and URL resolution.\n */\nfunction processServerObject(server: ServerObject, options: ServerProcessingOptions): ServerObject {\n // Resolve relative URLs to absolute URLs\n if (server.url?.startsWith('/')) {\n server.url = resolveRelativeServerUrl(server.url, options)\n }\n\n return server\n}\n\n/**\n * Creates a fallback server when no valid servers are available.\n * Uses document URL first, then fallback URL.\n */\nfunction createFallbackServer(options: ServerProcessingOptions): ServerObject | undefined {\n // Priority 1: Try to create default server from document URL\n if (options.documentUrl) {\n const defaultServer = createDefaultServerFromDocumentUrl(options.documentUrl)\n\n if (defaultServer) {\n return defaultServer\n }\n }\n\n // Priority 2: Try to create default server from fallback URL\n return createDefaultServerFromFallback()\n}\n"],"mappings":";;;;;;;;;;;;;;AAuBA,SAAgB,WAAW,SAAqC,UAAmC,EAAE,EAAkB;AAErH,KAAI,CAAC,SAAS,QAAQ;EACpB,MAAM,iBAAiB,qBAAqB,QAAQ;AACpD,SAAO,iBAAiB,CAAC,eAAe,GAAG,EAAE;;AAI/C,KAAI,CAAC,MAAM,QAAQ,QAAQ,CACzB,QAAO,EAAE;CAIX,MAAM,eAAe,QAAQ,KAAK,WAAW,oBAAoB,QAAQ,QAAQ,CAAC;AAGlF,KAAI,aAAa,WAAW,GAAG;EAC7B,MAAM,iBAAiB,qBAAqB,QAAQ;AACpD,SAAO,iBAAiB,CAAC,eAAe,GAAG,EAAE;;AAG/C,QAAO;;;;;;AAOT,SAAS,8BAA8B,aAAyC;AAC9E,KAAI;EACF,MAAM,MAAM,IAAI,IAAI,YAAY;EAChC,MAAM,OAAO,IAAI,OAAO,IAAI,IAAI,SAAS;AACzC,SAAO,GAAG,IAAI,SAAS,IAAI,IAAI,WAAW;SACpC;AACN;;;;;;AAOJ,SAAS,iBAAqC;AAC5C,KAAI,OAAO,WAAW,eAAe,OAAO,QAAQ,UAAU,WAAW,SACvE;AAEF,QAAO,OAAO,SAAS;;;;;AAMzB,SAAS,oBAAoB,KAAuC;AAClE,QAAO,EAAE,KAAK;;;;;AAMhB,SAAS,mCAAmC,aAA+C;CACzF,MAAM,UAAU,8BAA8B,YAAY;AAC1D,KAAI,CAAC,QACH;AAGF,QAAO,oBAAoB,QAAQ;;;;;AAMrC,SAAS,kCAA4D;CACnE,MAAM,cAAc,gBAAgB;AACpC,KAAI,CAAC,YACH;AAGF,QAAO,oBAAoB,YAAY;;;;;;AAOzC,SAAS,yBAAyB,WAAmB,SAA0C;CAC7F,MAAM,EAAE,eAAe,eAAe,gBAAgB;AAGtD,KAAI,cACF,QAAO,kBAAkB,eAAe,UAAU;AAIpD,KAAI,aAAa;EACf,MAAM,UAAU,8BAA8B,YAAY;AAC1D,MAAI,QACF,QAAO,kBAAkB,SAAS,UAAU;;CAKhD,MAAM,cAAc,gBAAgB;AACpC,KAAI,YACF,QAAO,kBAAkB,aAAa,UAAU;AAIlD,QAAO;;;;;AAMT,SAAS,oBAAoB,QAAsB,SAAgD;AAEjG,KAAI,OAAO,KAAK,WAAW,IAAI,CAC7B,QAAO,MAAM,yBAAyB,OAAO,KAAK,QAAQ;AAG5D,QAAO;;;;;;AAOT,SAAS,qBAAqB,SAA4D;AAExF,KAAI,QAAQ,aAAa;EACvB,MAAM,gBAAgB,mCAAmC,QAAQ,YAAY;AAE7E,MAAI,cACF,QAAO;;AAKX,QAAO,iCAAiC"}
@@ -0,0 +1,39 @@
1
+ import { snippetz } from "@scalar/snippetz";
2
+ //#region src/views/Components/CodeSnippet/helpers/get-snippet.ts
3
+ /** Key used to hack around the invalid urls */
4
+ var INVALID_URLS_PREFIX = "ws://replace.me";
5
+ /**
6
+ * Returns a code example for given operation
7
+ */
8
+ var getSnippet = (target, client, harRequest) => {
9
+ try {
10
+ if (!harRequest.url) return [/* @__PURE__ */ new Error("Please enter a URL to see a code snippet"), null];
11
+ const separator = harRequest.url.startsWith("/") ? "" : "/";
12
+ try {
13
+ new URL(harRequest.url);
14
+ } catch (error) {
15
+ console.error("[getSnippet] Invalid URL", error);
16
+ harRequest.url = `${INVALID_URLS_PREFIX}${separator}${harRequest.url}`;
17
+ }
18
+ if (harRequest.postData?.mimeType === "application/json") try {
19
+ JSON.parse(harRequest.postData.text || "{}");
20
+ } catch (error) {
21
+ console.error("[getSnippet] Invalid JSON body", error);
22
+ return [/* @__PURE__ */ new Error("Invalid JSON body"), null];
23
+ }
24
+ const snippetzTargetKey = target.replace("javascript", "js");
25
+ if (snippetz().hasPlugin(snippetzTargetKey, client)) {
26
+ const payload = snippetz().print(snippetzTargetKey, client, harRequest);
27
+ if (!payload) return [/* @__PURE__ */ new Error("Error generating snippet"), null];
28
+ return [null, payload.replace(`${INVALID_URLS_PREFIX}${separator}`, "")];
29
+ }
30
+ } catch (error) {
31
+ console.error("[getSnippet] Error generating snippet", error);
32
+ return [/* @__PURE__ */ new Error("Error generating snippet"), null];
33
+ }
34
+ return [/* @__PURE__ */ new Error("No snippet found"), null];
35
+ };
36
+ //#endregion
37
+ export { getSnippet as t };
38
+
39
+ //# sourceMappingURL=get-snippet-DBRUSfZ2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-snippet-DBRUSfZ2.js","names":[],"sources":["../src/views/Components/CodeSnippet/helpers/get-snippet.ts"],"sourcesContent":["import { type ClientId, type TargetId, snippetz } from '@scalar/snippetz'\nimport type { Request as HarRequest } from 'har-format'\n\nimport type { ErrorResponse } from '@/libs/errors'\n\n/** Key used to hack around the invalid urls */\nconst INVALID_URLS_PREFIX = 'ws://replace.me'\n\n/**\n * Returns a code example for given operation\n */\nexport const getSnippet = <T extends TargetId>(\n target: T | 'javascript',\n client: ClientId<T>,\n harRequest: HarRequest,\n): ErrorResponse<string> => {\n try {\n if (!harRequest.url) {\n return [new Error('Please enter a URL to see a code snippet'), null]\n }\n\n const separator = harRequest.url.startsWith('/') ? '' : '/'\n\n // Hack to get around invalid URLS until we update the snippets lib\n try {\n new URL(harRequest.url)\n } catch (error) {\n console.error('[getSnippet] Invalid URL', error)\n harRequest.url = `${INVALID_URLS_PREFIX}${separator}${harRequest.url}`\n }\n\n // Ensure we have valid JSON\n if (harRequest.postData?.mimeType === 'application/json') {\n try {\n JSON.parse(harRequest.postData.text || '{}')\n } catch (error) {\n console.error('[getSnippet] Invalid JSON body', error)\n return [new Error('Invalid JSON body'), null]\n }\n }\n // TODO: Fix this, use js (instead of javascript) everywhere\n const snippetzTargetKey = target.replace('javascript', 'js') as TargetId\n\n if (snippetz().hasPlugin(snippetzTargetKey, client)) {\n const payload = snippetz().print(snippetzTargetKey, client as ClientId<TargetId>, harRequest)\n if (!payload) {\n return [new Error('Error generating snippet'), null]\n }\n\n return [null, payload.replace(`${INVALID_URLS_PREFIX}${separator}`, '')]\n }\n } catch (error) {\n console.error('[getSnippet] Error generating snippet', error)\n return [new Error('Error generating snippet'), null]\n }\n\n return [new Error('No snippet found'), null]\n}\n"],"mappings":";;;AAMA,IAAM,sBAAsB;;;;AAK5B,IAAa,cACX,QACA,QACA,eAC0B;AAC1B,KAAI;AACF,MAAI,CAAC,WAAW,IACd,QAAO,iBAAC,IAAI,MAAM,2CAA2C,EAAE,KAAK;EAGtE,MAAM,YAAY,WAAW,IAAI,WAAW,IAAI,GAAG,KAAK;AAGxD,MAAI;AACF,OAAI,IAAI,WAAW,IAAI;WAChB,OAAO;AACd,WAAQ,MAAM,4BAA4B,MAAM;AAChD,cAAW,MAAM,GAAG,sBAAsB,YAAY,WAAW;;AAInE,MAAI,WAAW,UAAU,aAAa,mBACpC,KAAI;AACF,QAAK,MAAM,WAAW,SAAS,QAAQ,KAAK;WACrC,OAAO;AACd,WAAQ,MAAM,kCAAkC,MAAM;AACtD,UAAO,iBAAC,IAAI,MAAM,oBAAoB,EAAE,KAAK;;EAIjD,MAAM,oBAAoB,OAAO,QAAQ,cAAc,KAAK;AAE5D,MAAI,UAAU,CAAC,UAAU,mBAAmB,OAAO,EAAE;GACnD,MAAM,UAAU,UAAU,CAAC,MAAM,mBAAmB,QAA8B,WAAW;AAC7F,OAAI,CAAC,QACH,QAAO,iBAAC,IAAI,MAAM,2BAA2B,EAAE,KAAK;AAGtD,UAAO,CAAC,MAAM,QAAQ,QAAQ,GAAG,sBAAsB,aAAa,GAAG,CAAC;;UAEnE,OAAO;AACd,UAAQ,MAAM,yCAAyC,MAAM;AAC7D,SAAO,iBAAC,IAAI,MAAM,2BAA2B,EAAE,KAAK;;AAGtD,QAAO,iBAAC,IAAI,MAAM,mBAAmB,EAAE,KAAK"}