@scalar/api-reference 1.60.0 → 1.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/blocks/scalar-asyncapi-server-selector-block/components/AsyncApiServerSelector.vue.d.ts.map +1 -1
  3. package/dist/blocks/scalar-asyncapi-server-selector-block/components/AsyncApiServerSelector.vue.js.map +1 -1
  4. package/dist/blocks/scalar-asyncapi-server-selector-block/components/AsyncApiServerSelector.vue.script.js +8 -5
  5. package/dist/blocks/scalar-asyncapi-server-selector-block/components/AsyncApiServerSelector.vue.script.js.map +1 -1
  6. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.d.ts.map +1 -1
  7. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.js.map +1 -1
  8. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.script.js +11 -7
  9. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.script.js.map +1 -1
  10. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.d.ts +36 -0
  11. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.d.ts.map +1 -0
  12. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.js +7 -0
  13. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.js.map +1 -0
  14. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.script.js +69 -0
  15. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.script.js.map +1 -0
  16. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.d.ts +28 -0
  17. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.d.ts.map +1 -0
  18. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.js +7 -0
  19. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.js.map +1 -0
  20. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.script.js +62 -0
  21. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.script.js.map +1 -0
  22. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/helpers/filter-async-api-navigation.d.ts +18 -0
  23. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/helpers/filter-async-api-navigation.d.ts.map +1 -0
  24. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/helpers/filter-async-api-navigation.js +59 -0
  25. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/helpers/filter-async-api-navigation.js.map +1 -0
  26. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/index.d.ts +3 -0
  27. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/index.d.ts.map +1 -0
  28. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.d.ts +1 -1
  29. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.d.ts.map +1 -1
  30. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.js +1 -1
  31. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.js.map +1 -1
  32. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.script.js +6 -3
  33. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.script.js.map +1 -1
  34. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.d.ts +2 -2
  35. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.d.ts.map +1 -1
  36. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.js +1 -1
  37. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.js.map +1 -1
  38. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.script.js +4 -2
  39. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.script.js.map +1 -1
  40. package/dist/blocks/scalar-client-selector-block/helpers/featured-clients.d.ts +1 -1
  41. package/dist/blocks/scalar-client-selector-block/helpers/featured-clients.d.ts.map +1 -1
  42. package/dist/blocks/scalar-client-selector-block/helpers/featured-clients.js.map +1 -1
  43. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.d.ts.map +1 -1
  44. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.js +1 -1
  45. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.js.map +1 -1
  46. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.script.js +3 -1
  47. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.script.js.map +1 -1
  48. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.d.ts.map +1 -1
  49. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.js.map +1 -1
  50. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.script.js +17 -3
  51. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.script.js.map +1 -1
  52. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.d.ts.map +1 -1
  53. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.js +1 -1
  54. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.js.map +1 -1
  55. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.script.js +4 -2
  56. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.script.js.map +1 -1
  57. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.d.ts.map +1 -1
  58. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.js +1 -1
  59. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.js.map +1 -1
  60. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.script.js +16 -12
  61. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.script.js.map +1 -1
  62. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.d.ts.map +1 -1
  63. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.js.map +1 -1
  64. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.script.js +11 -7
  65. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.script.js.map +1 -1
  66. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.d.ts.map +1 -1
  67. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.js.map +1 -1
  68. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.script.js +7 -4
  69. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.script.js.map +1 -1
  70. package/dist/browser/chunks/AgentScalarChatInterface-C3QiXv0S.js +27 -0
  71. package/dist/browser/chunks/ScalarTextInput.vue-CysYmeeN.js +27 -0
  72. package/dist/browser/chunks/basic-shape-diamond.svg-BTEOT1FL.js +1 -1
  73. package/dist/browser/chunks/basic-shape-hexagon.svg-BSPzaCgF.js +1 -1
  74. package/dist/browser/chunks/basic-shape-primary-circle-ellipse-round.svg-DKmZ8UUU.js +1 -1
  75. package/dist/browser/chunks/basic-shape-primary-square-rectangle.svg-n2YRykHD.js +1 -1
  76. package/dist/browser/chunks/basic-shape-shield.svg-Bec9cJDA.js +1 -1
  77. package/dist/browser/chunks/browser-67K6wmG9.js +1 -1
  78. package/dist/browser/chunks/computer-device-desktop-monitor.svg-m6j893Hb.js +1 -1
  79. package/dist/browser/chunks/computer-device-desktop.svg-Dk1VVO7k.js +1 -1
  80. package/dist/browser/chunks/computer-device-laptop.svg-BNGVUCYS.js +1 -1
  81. package/dist/browser/chunks/computer-device-mobile-phone-android-samsung-back.svg-CC4UUTFw.js +1 -1
  82. package/dist/browser/chunks/computer-device-mobile-phone-android-samsung.svg-D8ExpMpL.js +1 -1
  83. package/dist/browser/chunks/computer-device-mobile-phone-iphone-x-back.svg-CLm7sgMM.js +1 -1
  84. package/dist/browser/chunks/computer-device-mobile-phone-iphone-x.svg-Xrttg6_7.js +1 -1
  85. package/dist/browser/chunks/computer-device-mobile-tablet-touch.svg-DQ2oTvOG.js +1 -1
  86. package/dist/browser/chunks/computer-device-mobile-tablet.svg-DCr0XlRc.js +1 -1
  87. package/dist/browser/chunks/computer-device-network-ethernet-cat6.svg-AK9l0iOl.js +1 -1
  88. package/dist/browser/chunks/computer-device-network-lan-www.svg-gUIdFBlE.js +1 -1
  89. package/dist/browser/chunks/computer-device-network-wifi-connection.svg-Be-EMm4e.js +1 -1
  90. package/dist/browser/chunks/computer-device-network-wifi-router.svg-Dc2VzyqK.js +1 -1
  91. package/dist/browser/chunks/ecology-science-erlenmeyer-flask.svg-DHgy7Jfd.js +1 -1
  92. package/dist/browser/chunks/image-flash-lightning.svg-EETR_y1q.js +1 -1
  93. package/dist/browser/chunks/image-picture-flower.svg-DN1AYzJU.js +1 -1
  94. package/dist/browser/chunks/interface-alert-exclamation-diamond.svg-C5NozMV_.js +1 -1
  95. package/dist/browser/chunks/interface-alert-exclamation-triangle-warning.svg-DaAg2fF5.js +1 -1
  96. package/dist/browser/chunks/interface-alert-information-circle.svg-ckkkt9Mv.js +1 -1
  97. package/dist/browser/chunks/interface-award-crown.svg-pjvn9hY-.js +1 -1
  98. package/dist/browser/chunks/interface-bookmark-tag.svg-r2r-lQq4.js +1 -1
  99. package/dist/browser/chunks/interface-bookmark.svg-BK9HKQBT.js +1 -1
  100. package/dist/browser/chunks/interface-calendar-date-one.svg-DNnF0M1I.js +1 -1
  101. package/dist/browser/chunks/interface-content-book-open-pages.svg-CQj_w9Vp.js +1 -1
  102. package/dist/browser/chunks/interface-content-book-page.svg-DppoeJRe.js +1 -1
  103. package/dist/browser/chunks/interface-content-file.svg-CvcD7OiY.js +1 -1
  104. package/dist/browser/chunks/interface-content-folder.svg-BmtS5I9A.js +1 -1
  105. package/dist/browser/chunks/interface-copy-clipboard.svg-Be6EI50X.js +1 -1
  106. package/dist/browser/chunks/interface-edit-attachment.svg-G5TKzpWX.js +1 -1
  107. package/dist/browser/chunks/interface-edit-binocular.svg-jzL-DvGB.js +1 -1
  108. package/dist/browser/chunks/interface-edit-magic-wand.svg-BOTlymvp.js +1 -1
  109. package/dist/browser/chunks/interface-edit-tool-paint-roller.svg-s9dwryx7.js +1 -1
  110. package/dist/browser/chunks/interface-edit-tool-pencil.svg-C7v0dbB3.js +1 -1
  111. package/dist/browser/chunks/interface-favorite-award.svg-CYHUgUG0.js +1 -1
  112. package/dist/browser/chunks/interface-favorite-flag.svg-C10zlKOb.js +1 -1
  113. package/dist/browser/chunks/interface-favorite-heart.svg-eoduXxlz.js +1 -1
  114. package/dist/browser/chunks/interface-favorite-star.svg-BSmxJetr.js +1 -1
  115. package/dist/browser/chunks/interface-favorite-stars-sparkles.svg-JTFLj3Ls.js +1 -1
  116. package/dist/browser/chunks/interface-hierarchy-flowchart.svg-Cg_Wy0kN.js +1 -1
  117. package/dist/browser/chunks/interface-home-house.svg-DytoGRnv.js +1 -1
  118. package/dist/browser/chunks/interface-hyperlink.svg-CuEfmmQI.js +1 -1
  119. package/dist/browser/chunks/interface-lighting-brightness.svg-DSK0h_Pa.js +1 -1
  120. package/dist/browser/chunks/interface-lock-closed.svg-Cn6TaLYv.js +1 -1
  121. package/dist/browser/chunks/interface-lock-open-unlock.svg-CVkG5-9W.js +1 -1
  122. package/dist/browser/chunks/interface-login-key.svg-y-cwwXjN.js +1 -1
  123. package/dist/browser/chunks/interface-search.svg-S-puVFJB.js +1 -1
  124. package/dist/browser/chunks/interface-setting-cog.svg-CTH4_lLg.js +1 -1
  125. package/dist/browser/chunks/interface-share-megaphone-bullhorn.svg-Pbp39MyC.js +1 -1
  126. package/dist/browser/chunks/interface-share-rocket.svg-BgCsIRZO.js +1 -1
  127. package/dist/browser/chunks/interface-share-satellite.svg-DAMN9d5G.js +1 -1
  128. package/dist/browser/chunks/interface-share-space-ship.svg-Dt-Mejxk.js +1 -1
  129. package/dist/browser/chunks/interface-share.svg-vFYTXSti.js +1 -1
  130. package/dist/browser/chunks/interface-signal-square.svg-DNG4LpAe.js +1 -1
  131. package/dist/browser/chunks/interface-time-clock-circle.svg-Bpz-nLxo.js +1 -1
  132. package/dist/browser/chunks/interface-time-hour-glass.svg-D7agfKsH.js +1 -1
  133. package/dist/browser/chunks/interface-users-multiple.svg-CkPJBBnG.js +1 -1
  134. package/dist/browser/chunks/interface-weather-moon.svg-CaTZFMPO.js +1 -1
  135. package/dist/browser/chunks/mail-chat-bubble-square.svg-DC8RIihp.js +1 -1
  136. package/dist/browser/chunks/mail-send-email-paper-airplane.svg-D8OLs9jz.js +1 -1
  137. package/dist/browser/chunks/mail-send-envelope.svg-CV33h5Sx.js +1 -1
  138. package/dist/browser/chunks/{modal-LBDjZSmM.js → modal-CMytT4BZ.js} +2 -2
  139. package/dist/browser/chunks/modal-wI0tG53V.js +99 -0
  140. package/dist/browser/chunks/money-cashier-receipt.svg-CJL8C2gs.js +1 -1
  141. package/dist/browser/chunks/money-currency-dollar-pay.svg-VdBplCTx.js +1 -1
  142. package/dist/browser/chunks/money-graph-arrow-increase.svg-DcRov3zk.js +1 -1
  143. package/dist/browser/chunks/money-graph-bar-chart-increase.svg-Cc7KxjX-.js +1 -1
  144. package/dist/browser/chunks/nature-ecology-leaf.svg-DR3cTZxt.js +1 -1
  145. package/dist/browser/chunks/phone-telephone.svg-DyY0gUlk.js +1 -1
  146. package/dist/browser/chunks/programming-bug.svg-BHLT-Qhp.js +1 -1
  147. package/dist/browser/chunks/programming-cloud.svg-B6YW33ba.js +1 -1
  148. package/dist/browser/chunks/programming-computer-database-server.svg-B6o5Sdn-.js +1 -1
  149. package/dist/browser/chunks/programming-computer-database.svg-Cl7OVtpJ.js +1 -1
  150. package/dist/browser/chunks/programming-module-four-layout.svg-BQrerL1x.js +1 -1
  151. package/dist/browser/chunks/programming-module-three.svg-B2KTQzBM.js +1 -1
  152. package/dist/browser/chunks/programming-module.svg-CiID7kPm.js +1 -1
  153. package/dist/browser/chunks/programming-script-code.svg-D1M5rtkN.js +1 -1
  154. package/dist/browser/chunks/runtime-core.esm-bundler-Byrbbu5Q.js +1 -1
  155. package/dist/browser/chunks/shopping-cart.svg-BEegiIR9.js +1 -1
  156. package/dist/browser/chunks/shopping-gift-present.svg-BUHwuLix.js +1 -1
  157. package/dist/browser/chunks/shopping-shipping-box-parcel-package.svg-D6fxWdYx.js +1 -1
  158. package/dist/browser/chunks/tag-new-circle.svg-jsg1bGs0.js +1 -1
  159. package/dist/browser/chunks/travel-map-earth-globe.svg-ClbMiU-f.js +1 -1
  160. package/dist/browser/chunks/vendor-BPQqqkn-.js +306 -0
  161. package/dist/browser/standalone.esm.js +20 -20
  162. package/dist/browser/standalone.js +294 -294
  163. package/dist/components/AgentScalar/AgentScalarButton.vue.d.ts.map +1 -1
  164. package/dist/components/AgentScalar/AgentScalarButton.vue.js.map +1 -1
  165. package/dist/components/AgentScalar/AgentScalarButton.vue.script.js +4 -2
  166. package/dist/components/AgentScalar/AgentScalarButton.vue.script.js.map +1 -1
  167. package/dist/components/AgentScalar/AgentScalarDrawer.vue.d.ts.map +1 -1
  168. package/dist/components/AgentScalar/AgentScalarDrawer.vue.js +1 -1
  169. package/dist/components/AgentScalar/AgentScalarDrawer.vue.js.map +1 -1
  170. package/dist/components/AgentScalar/AgentScalarDrawer.vue.script.js +4 -2
  171. package/dist/components/AgentScalar/AgentScalarDrawer.vue.script.js.map +1 -1
  172. package/dist/components/AgentScalar/OpenMCPButton.vue.d.ts.map +1 -1
  173. package/dist/components/AgentScalar/OpenMCPButton.vue.js +1 -1
  174. package/dist/components/AgentScalar/OpenMCPButton.vue.js.map +1 -1
  175. package/dist/components/AgentScalar/OpenMCPButton.vue.script.js +8 -6
  176. package/dist/components/AgentScalar/OpenMCPButton.vue.script.js.map +1 -1
  177. package/dist/components/Anchor/Anchor.vue.d.ts.map +1 -1
  178. package/dist/components/Anchor/Anchor.vue.js.map +1 -1
  179. package/dist/components/Anchor/Anchor.vue.script.js +5 -3
  180. package/dist/components/Anchor/Anchor.vue.script.js.map +1 -1
  181. package/dist/components/Anchor/WithBreadcrumb.vue.d.ts +1 -3
  182. package/dist/components/Anchor/WithBreadcrumb.vue.d.ts.map +1 -1
  183. package/dist/components/Anchor/WithBreadcrumb.vue.js.map +1 -1
  184. package/dist/components/Anchor/WithBreadcrumb.vue.script.js +6 -2
  185. package/dist/components/Anchor/WithBreadcrumb.vue.script.js.map +1 -1
  186. package/dist/components/ApiReference.vue.d.ts.map +1 -1
  187. package/dist/components/ApiReference.vue.js +1 -1
  188. package/dist/components/ApiReference.vue.js.map +1 -1
  189. package/dist/components/ApiReference.vue.script.js +181 -46
  190. package/dist/components/ApiReference.vue.script.js.map +1 -1
  191. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.d.ts +10 -0
  192. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.d.ts.map +1 -0
  193. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.js +9 -0
  194. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.js.map +1 -0
  195. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.script.js +47 -0
  196. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.script.js.map +1 -0
  197. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.d.ts.map +1 -1
  198. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.js.map +1 -1
  199. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.script.js +2 -0
  200. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.script.js.map +1 -1
  201. package/dist/components/Content/AsyncApi/Channel.vue.d.ts +4 -1
  202. package/dist/components/Content/AsyncApi/Channel.vue.d.ts.map +1 -1
  203. package/dist/components/Content/AsyncApi/Channel.vue.js +1 -1
  204. package/dist/components/Content/AsyncApi/Channel.vue.js.map +1 -1
  205. package/dist/components/Content/AsyncApi/Channel.vue.script.js +98 -44
  206. package/dist/components/Content/AsyncApi/Channel.vue.script.js.map +1 -1
  207. package/dist/components/Content/AsyncApi/Message.vue.d.ts +18 -0
  208. package/dist/components/Content/AsyncApi/Message.vue.d.ts.map +1 -0
  209. package/dist/components/Content/AsyncApi/Message.vue.js +9 -0
  210. package/dist/components/Content/AsyncApi/Message.vue.js.map +1 -0
  211. package/dist/components/Content/AsyncApi/Message.vue.script.js +159 -0
  212. package/dist/components/Content/AsyncApi/Message.vue.script.js.map +1 -0
  213. package/dist/components/Content/AsyncApi/Operation.vue.d.ts +18 -0
  214. package/dist/components/Content/AsyncApi/Operation.vue.d.ts.map +1 -0
  215. package/dist/components/Content/AsyncApi/Operation.vue.js +9 -0
  216. package/dist/components/Content/AsyncApi/Operation.vue.js.map +1 -0
  217. package/dist/components/Content/AsyncApi/Operation.vue.script.js +84 -0
  218. package/dist/components/Content/AsyncApi/Operation.vue.script.js.map +1 -0
  219. package/dist/components/Content/AsyncApi/helpers/async-api-render-options.d.ts +14 -0
  220. package/dist/components/Content/AsyncApi/helpers/async-api-render-options.d.ts.map +1 -0
  221. package/dist/components/Content/AsyncApi/helpers/async-api-render-options.js +14 -0
  222. package/dist/components/Content/AsyncApi/helpers/async-api-render-options.js.map +1 -0
  223. package/dist/components/Content/AsyncApi/helpers/filter-children-by-type.d.ts +9 -0
  224. package/dist/components/Content/AsyncApi/helpers/filter-children-by-type.d.ts.map +1 -0
  225. package/dist/components/Content/AsyncApi/helpers/filter-children-by-type.js +12 -0
  226. package/dist/components/Content/AsyncApi/helpers/filter-children-by-type.js.map +1 -0
  227. package/dist/components/Content/AsyncApi/helpers/get-async-api-labels.d.ts +13 -0
  228. package/dist/components/Content/AsyncApi/helpers/get-async-api-labels.d.ts.map +1 -0
  229. package/dist/components/Content/AsyncApi/helpers/get-async-api-labels.js +23 -0
  230. package/dist/components/Content/AsyncApi/helpers/get-async-api-labels.js.map +1 -0
  231. package/dist/components/Content/AsyncApi/helpers/pick-heading.d.ts +10 -0
  232. package/dist/components/Content/AsyncApi/helpers/pick-heading.d.ts.map +1 -0
  233. package/dist/components/Content/AsyncApi/helpers/pick-heading.js +20 -0
  234. package/dist/components/Content/AsyncApi/helpers/pick-heading.js.map +1 -0
  235. package/dist/components/Content/AsyncApi/helpers/resolve-async-api-nodes.d.ts +21 -0
  236. package/dist/components/Content/AsyncApi/helpers/resolve-async-api-nodes.d.ts.map +1 -0
  237. package/dist/components/Content/AsyncApi/helpers/resolve-async-api-nodes.js +35 -0
  238. package/dist/components/Content/AsyncApi/helpers/resolve-async-api-nodes.js.map +1 -0
  239. package/dist/components/Content/Auth/Auth.vue.d.ts.map +1 -1
  240. package/dist/components/Content/Auth/Auth.vue.js.map +1 -1
  241. package/dist/components/Content/Auth/Auth.vue.script.js +5 -2
  242. package/dist/components/Content/Auth/Auth.vue.script.js.map +1 -1
  243. package/dist/components/Content/Content.vue.d.ts +1 -0
  244. package/dist/components/Content/Content.vue.d.ts.map +1 -1
  245. package/dist/components/Content/Content.vue.js.map +1 -1
  246. package/dist/components/Content/Content.vue.script.js +4 -1
  247. package/dist/components/Content/Content.vue.script.js.map +1 -1
  248. package/dist/components/Content/Operations/TraversedEntry.vue.d.ts +3 -1
  249. package/dist/components/Content/Operations/TraversedEntry.vue.d.ts.map +1 -1
  250. package/dist/components/Content/Operations/TraversedEntry.vue.js.map +1 -1
  251. package/dist/components/Content/Operations/TraversedEntry.vue.script.js +9 -0
  252. package/dist/components/Content/Operations/TraversedEntry.vue.script.js.map +1 -1
  253. package/dist/components/Content/Schema/Schema.vue.d.ts.map +1 -1
  254. package/dist/components/Content/Schema/Schema.vue.js +1 -1
  255. package/dist/components/Content/Schema/Schema.vue.js.map +1 -1
  256. package/dist/components/Content/Schema/Schema.vue.script.js +10 -6
  257. package/dist/components/Content/Schema/Schema.vue.script.js.map +1 -1
  258. package/dist/components/Content/Schema/SchemaComposition.vue.d.ts.map +1 -1
  259. package/dist/components/Content/Schema/SchemaComposition.vue.js.map +1 -1
  260. package/dist/components/Content/Schema/SchemaComposition.vue.script.js +25 -12
  261. package/dist/components/Content/Schema/SchemaComposition.vue.script.js.map +1 -1
  262. package/dist/components/Content/Schema/SchemaEnums.vue.d.ts.map +1 -1
  263. package/dist/components/Content/Schema/SchemaEnums.vue.js +1 -1
  264. package/dist/components/Content/Schema/SchemaEnums.vue.js.map +1 -1
  265. package/dist/components/Content/Schema/SchemaEnums.vue.script.js +4 -2
  266. package/dist/components/Content/Schema/SchemaEnums.vue.script.js.map +1 -1
  267. package/dist/components/Content/Schema/SchemaHeading.vue.d.ts.map +1 -1
  268. package/dist/components/Content/Schema/SchemaHeading.vue.js +1 -1
  269. package/dist/components/Content/Schema/SchemaHeading.vue.js.map +1 -1
  270. package/dist/components/Content/Schema/SchemaHeading.vue.script.js +6 -4
  271. package/dist/components/Content/Schema/SchemaHeading.vue.script.js.map +1 -1
  272. package/dist/components/Content/Schema/SchemaObjectExampleCodeBlock.vue.js.map +1 -1
  273. package/dist/components/Content/Schema/SchemaObjectExampleCodeBlock.vue.script.js +1 -1
  274. package/dist/components/Content/Schema/SchemaObjectExampleCodeBlock.vue.script.js.map +1 -1
  275. package/dist/components/Content/Schema/SchemaObjectProperties.vue.d.ts.map +1 -1
  276. package/dist/components/Content/Schema/SchemaObjectProperties.vue.js.map +1 -1
  277. package/dist/components/Content/Schema/SchemaObjectProperties.vue.script.js +12 -0
  278. package/dist/components/Content/Schema/SchemaObjectProperties.vue.script.js.map +1 -1
  279. package/dist/components/Content/Schema/SchemaProperty.vue.d.ts +3 -1
  280. package/dist/components/Content/Schema/SchemaProperty.vue.d.ts.map +1 -1
  281. package/dist/components/Content/Schema/SchemaProperty.vue.js +1 -1
  282. package/dist/components/Content/Schema/SchemaProperty.vue.js.map +1 -1
  283. package/dist/components/Content/Schema/SchemaProperty.vue.script.js +24 -6
  284. package/dist/components/Content/Schema/SchemaProperty.vue.script.js.map +1 -1
  285. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.d.ts.map +1 -1
  286. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.js +1 -1
  287. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.js.map +1 -1
  288. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.script.js +8 -5
  289. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.script.js.map +1 -1
  290. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.d.ts.map +1 -1
  291. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.js +1 -1
  292. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.js.map +1 -1
  293. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.script.js +5 -3
  294. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.script.js.map +1 -1
  295. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.d.ts +3 -1
  296. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.d.ts.map +1 -1
  297. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.js +1 -1
  298. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.js.map +1 -1
  299. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.script.js +47 -22
  300. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.script.js.map +1 -1
  301. package/dist/components/Content/Schema/helpers/merge-all-of-schemas.d.ts.map +1 -1
  302. package/dist/components/Content/Schema/helpers/merge-all-of-schemas.js +10 -9
  303. package/dist/components/Content/Schema/helpers/merge-all-of-schemas.js.map +1 -1
  304. package/dist/components/Content/Tags/components/ModernLayout.vue.d.ts.map +1 -1
  305. package/dist/components/Content/Tags/components/ModernLayout.vue.js +1 -1
  306. package/dist/components/Content/Tags/components/ModernLayout.vue.js.map +1 -1
  307. package/dist/components/Content/Tags/components/ModernLayout.vue.script.js +3 -1
  308. package/dist/components/Content/Tags/components/ModernLayout.vue.script.js.map +1 -1
  309. package/dist/components/Content/Tags/components/TagSection.vue.d.ts.map +1 -1
  310. package/dist/components/Content/Tags/components/TagSection.vue.js.map +1 -1
  311. package/dist/components/Content/Tags/components/TagSection.vue.script.js +3 -1
  312. package/dist/components/Content/Tags/components/TagSection.vue.script.js.map +1 -1
  313. package/dist/components/GettingStarted.vue.d.ts.map +1 -1
  314. package/dist/components/GettingStarted.vue.js +1 -1
  315. package/dist/components/GettingStarted.vue.js.map +1 -1
  316. package/dist/components/GettingStarted.vue.script.js +58 -21
  317. package/dist/components/GettingStarted.vue.script.js.map +1 -1
  318. package/dist/components/MobileHeader.vue.d.ts.map +1 -1
  319. package/dist/components/MobileHeader.vue.js.map +1 -1
  320. package/dist/components/MobileHeader.vue.script.js +3 -1
  321. package/dist/components/MobileHeader.vue.script.js.map +1 -1
  322. package/dist/components/OperationsList/OperationsList.vue.d.ts.map +1 -1
  323. package/dist/components/OperationsList/OperationsList.vue.js +1 -1
  324. package/dist/components/OperationsList/OperationsList.vue.js.map +1 -1
  325. package/dist/components/OperationsList/OperationsList.vue.script.js +4 -2
  326. package/dist/components/OperationsList/OperationsList.vue.script.js.map +1 -1
  327. package/dist/components/ShowMoreButton.vue.d.ts.map +1 -1
  328. package/dist/components/ShowMoreButton.vue.js +1 -1
  329. package/dist/components/ShowMoreButton.vue.js.map +1 -1
  330. package/dist/components/ShowMoreButton.vue.script.js +4 -2
  331. package/dist/components/ShowMoreButton.vue.script.js.map +1 -1
  332. package/dist/features/Operation/Operation.vue.d.ts +3 -1
  333. package/dist/features/Operation/Operation.vue.d.ts.map +1 -1
  334. package/dist/features/Operation/Operation.vue.js.map +1 -1
  335. package/dist/features/Operation/Operation.vue.script.js +6 -1
  336. package/dist/features/Operation/Operation.vue.script.js.map +1 -1
  337. package/dist/features/Operation/components/ContentTypeSelect.vue.d.ts.map +1 -1
  338. package/dist/features/Operation/components/ContentTypeSelect.vue.js.map +1 -1
  339. package/dist/features/Operation/components/ContentTypeSelect.vue.script.js +4 -2
  340. package/dist/features/Operation/components/ContentTypeSelect.vue.script.js.map +1 -1
  341. package/dist/features/Operation/components/Headers.vue.d.ts.map +1 -1
  342. package/dist/features/Operation/components/Headers.vue.js +1 -1
  343. package/dist/features/Operation/components/Headers.vue.js.map +1 -1
  344. package/dist/features/Operation/components/Headers.vue.script.js +8 -6
  345. package/dist/features/Operation/components/Headers.vue.script.js.map +1 -1
  346. package/dist/features/Operation/components/OperationParameters.vue.d.ts.map +1 -1
  347. package/dist/features/Operation/components/OperationParameters.vue.js.map +1 -1
  348. package/dist/features/Operation/components/OperationParameters.vue.script.js +8 -6
  349. package/dist/features/Operation/components/OperationParameters.vue.script.js.map +1 -1
  350. package/dist/features/Operation/components/OperationResponses.vue.d.ts.map +1 -1
  351. package/dist/features/Operation/components/OperationResponses.vue.js.map +1 -1
  352. package/dist/features/Operation/components/OperationResponses.vue.script.js +10 -7
  353. package/dist/features/Operation/components/OperationResponses.vue.script.js.map +1 -1
  354. package/dist/features/Operation/components/ParameterListItem.vue.script.js +1 -1
  355. package/dist/features/Operation/components/RequestBody.vue.d.ts.map +1 -1
  356. package/dist/features/Operation/components/RequestBody.vue.js +1 -1
  357. package/dist/features/Operation/components/RequestBody.vue.js.map +1 -1
  358. package/dist/features/Operation/components/RequestBody.vue.script.js +18 -13
  359. package/dist/features/Operation/components/RequestBody.vue.script.js.map +1 -1
  360. package/dist/features/Operation/components/SecurityRequirementBadge.vue.d.ts.map +1 -1
  361. package/dist/features/Operation/components/SecurityRequirementBadge.vue.js.map +1 -1
  362. package/dist/features/Operation/components/SecurityRequirementBadge.vue.script.js +5 -3
  363. package/dist/features/Operation/components/SecurityRequirementBadge.vue.script.js.map +1 -1
  364. package/dist/features/Operation/components/callbacks/Callbacks.vue.d.ts.map +1 -1
  365. package/dist/features/Operation/components/callbacks/Callbacks.vue.js.map +1 -1
  366. package/dist/features/Operation/components/callbacks/Callbacks.vue.script.js +11 -8
  367. package/dist/features/Operation/components/callbacks/Callbacks.vue.script.js.map +1 -1
  368. package/dist/features/Operation/layouts/ClassicLayout.vue.d.ts.map +1 -1
  369. package/dist/features/Operation/layouts/ClassicLayout.vue.js +1 -1
  370. package/dist/features/Operation/layouts/ClassicLayout.vue.js.map +1 -1
  371. package/dist/features/Operation/layouts/ClassicLayout.vue.script.js +37 -17
  372. package/dist/features/Operation/layouts/ClassicLayout.vue.script.js.map +1 -1
  373. package/dist/features/Operation/layouts/ModernLayout.vue.d.ts.map +1 -1
  374. package/dist/features/Operation/layouts/ModernLayout.vue.js +1 -1
  375. package/dist/features/Operation/layouts/ModernLayout.vue.js.map +1 -1
  376. package/dist/features/Operation/layouts/ModernLayout.vue.script.js +22 -7
  377. package/dist/features/Operation/layouts/ModernLayout.vue.script.js.map +1 -1
  378. package/dist/features/Search/components/SearchButton.vue.d.ts.map +1 -1
  379. package/dist/features/Search/components/SearchButton.vue.js.map +1 -1
  380. package/dist/features/Search/components/SearchButton.vue.script.js +15 -8
  381. package/dist/features/Search/components/SearchButton.vue.script.js.map +1 -1
  382. package/dist/features/Search/components/SearchModal.vue.d.ts.map +1 -1
  383. package/dist/features/Search/components/SearchModal.vue.js +1 -1
  384. package/dist/features/Search/components/SearchModal.vue.js.map +1 -1
  385. package/dist/features/Search/components/SearchModal.vue.script.js +29 -10
  386. package/dist/features/Search/components/SearchModal.vue.script.js.map +1 -1
  387. package/dist/features/Search/components/SearchResult.vue.d.ts.map +1 -1
  388. package/dist/features/Search/components/SearchResult.vue.js.map +1 -1
  389. package/dist/features/Search/components/SearchResult.vue.script.js +12 -8
  390. package/dist/features/Search/components/SearchResult.vue.script.js.map +1 -1
  391. package/dist/features/Search/helpers/create-search-index.d.ts +8 -0
  392. package/dist/features/Search/helpers/create-search-index.d.ts.map +1 -1
  393. package/dist/features/Search/helpers/create-search-index.js +18 -9
  394. package/dist/features/Search/helpers/create-search-index.js.map +1 -1
  395. package/dist/features/Search/hooks/useSearchIndex.d.ts +7 -1
  396. package/dist/features/Search/hooks/useSearchIndex.d.ts.map +1 -1
  397. package/dist/features/Search/hooks/useSearchIndex.js +11 -2
  398. package/dist/features/Search/hooks/useSearchIndex.js.map +1 -1
  399. package/dist/features/ask-agent-button/AskAgentButton.vue.d.ts.map +1 -1
  400. package/dist/features/ask-agent-button/AskAgentButton.vue.js +1 -1
  401. package/dist/features/ask-agent-button/AskAgentButton.vue.js.map +1 -1
  402. package/dist/features/ask-agent-button/AskAgentButton.vue.script.js +10 -6
  403. package/dist/features/ask-agent-button/AskAgentButton.vue.script.js.map +1 -1
  404. package/dist/features/developer-tools/DeveloperTools.vue.d.ts.map +1 -1
  405. package/dist/features/developer-tools/DeveloperTools.vue.js.map +1 -1
  406. package/dist/features/developer-tools/DeveloperTools.vue.script.js +10 -8
  407. package/dist/features/developer-tools/DeveloperTools.vue.script.js.map +1 -1
  408. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.d.ts.map +1 -1
  409. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.js.map +1 -1
  410. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.script.js +11 -11
  411. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.script.js.map +1 -1
  412. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.d.ts.map +1 -1
  413. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.js.map +1 -1
  414. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.script.js +15 -11
  415. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.script.js.map +1 -1
  416. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigTheme.vue.script.js +1 -1
  417. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.d.ts +1 -3
  418. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.d.ts.map +1 -1
  419. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.js.map +1 -1
  420. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.script.js +4 -6
  421. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.script.js.map +1 -1
  422. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.d.ts.map +1 -1
  423. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.js.map +1 -1
  424. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.script.js +6 -4
  425. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.script.js.map +1 -1
  426. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.d.ts.map +1 -1
  427. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.js.map +1 -1
  428. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.script.js +23 -22
  429. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.script.js.map +1 -1
  430. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.d.ts.map +1 -1
  431. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.js.map +1 -1
  432. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.script.js +7 -5
  433. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.script.js.map +1 -1
  434. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.d.ts.map +1 -1
  435. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.js.map +1 -1
  436. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.script.js +9 -7
  437. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.script.js.map +1 -1
  438. package/dist/features/developer-tools/components/DeployApiReference.vue.d.ts.map +1 -1
  439. package/dist/features/developer-tools/components/DeployApiReference.vue.js.map +1 -1
  440. package/dist/features/developer-tools/components/DeployApiReference.vue.script.js +7 -4
  441. package/dist/features/developer-tools/components/DeployApiReference.vue.script.js.map +1 -1
  442. package/dist/features/developer-tools/components/ModifyConfiguration.vue.d.ts.map +1 -1
  443. package/dist/features/developer-tools/components/ModifyConfiguration.vue.js.map +1 -1
  444. package/dist/features/developer-tools/components/ModifyConfiguration.vue.script.js +8 -6
  445. package/dist/features/developer-tools/components/ModifyConfiguration.vue.script.js.map +1 -1
  446. package/dist/features/developer-tools/components/ShareApiReference.vue.d.ts.map +1 -1
  447. package/dist/features/developer-tools/components/ShareApiReference.vue.js.map +1 -1
  448. package/dist/features/developer-tools/components/ShareApiReference.vue.script.js +7 -4
  449. package/dist/features/developer-tools/components/ShareApiReference.vue.script.js.map +1 -1
  450. package/dist/features/example-responses/ExampleResponse.vue.d.ts.map +1 -1
  451. package/dist/features/example-responses/ExampleResponse.vue.js +1 -1
  452. package/dist/features/example-responses/ExampleResponse.vue.js.map +1 -1
  453. package/dist/features/example-responses/ExampleResponse.vue.script.js +5 -3
  454. package/dist/features/example-responses/ExampleResponse.vue.script.js.map +1 -1
  455. package/dist/features/example-responses/ExampleResponses.vue.d.ts +9 -0
  456. package/dist/features/example-responses/ExampleResponses.vue.d.ts.map +1 -1
  457. package/dist/features/example-responses/ExampleResponses.vue.js +1 -1
  458. package/dist/features/example-responses/ExampleResponses.vue.js.map +1 -1
  459. package/dist/features/example-responses/ExampleResponses.vue.script.js +42 -23
  460. package/dist/features/example-responses/ExampleResponses.vue.script.js.map +1 -1
  461. package/dist/features/example-responses/ExampleSchema.vue.js.map +1 -1
  462. package/dist/features/example-responses/ExampleSchema.vue.script.js +1 -1
  463. package/dist/features/example-responses/ExampleSchema.vue.script.js.map +1 -1
  464. package/dist/features/info-object/Contact.vue.d.ts.map +1 -1
  465. package/dist/features/info-object/Contact.vue.js.map +1 -1
  466. package/dist/features/info-object/Contact.vue.script.js +14 -11
  467. package/dist/features/info-object/Contact.vue.script.js.map +1 -1
  468. package/dist/features/info-object/InfoLink.vue.d.ts +8 -0
  469. package/dist/features/info-object/InfoLink.vue.d.ts.map +1 -0
  470. package/dist/features/info-object/InfoLink.vue.js +7 -0
  471. package/dist/features/info-object/InfoLink.vue.js.map +1 -0
  472. package/dist/features/info-object/InfoLink.vue.script.js +30 -0
  473. package/dist/features/info-object/InfoLink.vue.script.js.map +1 -0
  474. package/dist/features/info-object/TermsOfService.vue.d.ts.map +1 -1
  475. package/dist/features/info-object/TermsOfService.vue.js.map +1 -1
  476. package/dist/features/info-object/TermsOfService.vue.script.js +9 -6
  477. package/dist/features/info-object/TermsOfService.vue.script.js.map +1 -1
  478. package/dist/features/info-object/index.d.ts +1 -0
  479. package/dist/features/info-object/index.d.ts.map +1 -1
  480. package/dist/features/localization/index.d.ts +2 -0
  481. package/dist/features/localization/index.d.ts.map +1 -0
  482. package/dist/features/localization/locales/ar.d.ts +227 -0
  483. package/dist/features/localization/locales/ar.d.ts.map +1 -0
  484. package/dist/features/localization/locales/ar.js +225 -0
  485. package/dist/features/localization/locales/ar.js.map +1 -0
  486. package/dist/features/localization/locales/de.d.ts +227 -0
  487. package/dist/features/localization/locales/de.d.ts.map +1 -0
  488. package/dist/features/localization/locales/de.js +225 -0
  489. package/dist/features/localization/locales/de.js.map +1 -0
  490. package/dist/features/localization/locales/en.d.ts +227 -0
  491. package/dist/features/localization/locales/en.d.ts.map +1 -0
  492. package/dist/features/localization/locales/en.js +225 -0
  493. package/dist/features/localization/locales/en.js.map +1 -0
  494. package/dist/features/localization/locales/es.d.ts +227 -0
  495. package/dist/features/localization/locales/es.d.ts.map +1 -0
  496. package/dist/features/localization/locales/es.js +225 -0
  497. package/dist/features/localization/locales/es.js.map +1 -0
  498. package/dist/features/localization/locales/fr.d.ts +227 -0
  499. package/dist/features/localization/locales/fr.d.ts.map +1 -0
  500. package/dist/features/localization/locales/fr.js +225 -0
  501. package/dist/features/localization/locales/fr.js.map +1 -0
  502. package/dist/features/localization/locales/ru.d.ts +227 -0
  503. package/dist/features/localization/locales/ru.d.ts.map +1 -0
  504. package/dist/features/localization/locales/ru.js +225 -0
  505. package/dist/features/localization/locales/ru.js.map +1 -0
  506. package/dist/features/localization/locales/zh-cn.d.ts +227 -0
  507. package/dist/features/localization/locales/zh-cn.d.ts.map +1 -0
  508. package/dist/features/localization/locales/zh-cn.js +225 -0
  509. package/dist/features/localization/locales/zh-cn.js.map +1 -0
  510. package/dist/features/localization/translations.d.ts +1588 -0
  511. package/dist/features/localization/translations.d.ts.map +1 -0
  512. package/dist/features/localization/translations.js +27 -0
  513. package/dist/features/localization/translations.js.map +1 -0
  514. package/dist/features/localization/use-localization.d.ts +18 -0
  515. package/dist/features/localization/use-localization.d.ts.map +1 -0
  516. package/dist/features/localization/use-localization.js +58 -0
  517. package/dist/features/localization/use-localization.js.map +1 -0
  518. package/dist/features/multiple-documents/DocumentSelector.vue.script.js +1 -1
  519. package/dist/features/test-request-button/TestRequestButton.vue.d.ts.map +1 -1
  520. package/dist/features/test-request-button/TestRequestButton.vue.js +1 -1
  521. package/dist/features/test-request-button/TestRequestButton.vue.js.map +1 -1
  522. package/dist/features/test-request-button/TestRequestButton.vue.script.js +3 -1
  523. package/dist/features/test-request-button/TestRequestButton.vue.script.js.map +1 -1
  524. package/dist/helpers/get-async-api-message-payload-schema.d.ts +18 -0
  525. package/dist/helpers/get-async-api-message-payload-schema.d.ts.map +1 -0
  526. package/dist/helpers/get-async-api-message-payload-schema.js +33 -0
  527. package/dist/helpers/get-async-api-message-payload-schema.js.map +1 -0
  528. package/dist/helpers/get-async-api-model-schema.d.ts.map +1 -1
  529. package/dist/helpers/get-async-api-model-schema.js +2 -11
  530. package/dist/helpers/get-async-api-model-schema.js.map +1 -1
  531. package/dist/helpers/is-introduction-entry.d.ts +16 -0
  532. package/dist/helpers/is-introduction-entry.d.ts.map +1 -0
  533. package/dist/helpers/is-introduction-entry.js +17 -0
  534. package/dist/helpers/is-introduction-entry.js.map +1 -0
  535. package/dist/helpers/load-from-perssistance.js +1 -1
  536. package/dist/helpers/load-from-perssistance.js.map +1 -1
  537. package/dist/helpers/map-config-plugins.d.ts +8 -3
  538. package/dist/helpers/map-config-plugins.d.ts.map +1 -1
  539. package/dist/helpers/map-config-plugins.js +22 -4
  540. package/dist/helpers/map-config-plugins.js.map +1 -1
  541. package/dist/helpers/map-config-to-workspace-store.js +1 -1
  542. package/dist/helpers/map-config-to-workspace-store.js.map +1 -1
  543. package/dist/helpers/storage.d.ts +14 -14
  544. package/dist/style.css +783 -666
  545. package/dist/styles/tailwind.config.css +1 -0
  546. package/dist/vue-styles.css +700 -597
  547. package/package.json +18 -17
  548. package/dist/browser/chunks/AgentScalarChatInterface-CesFQ_Ax.js +0 -27
  549. package/dist/browser/chunks/ScalarTextInput.vue-C14zmVNI.js +0 -27
  550. package/dist/browser/chunks/modal-BZzcBkVp.js +0 -99
  551. package/dist/browser/chunks/vendor-wW8jg8wN.js +0 -306
  552. package/dist/features/Operation/helpers/get-first-server.d.ts +0 -9
  553. package/dist/features/Operation/helpers/get-first-server.d.ts.map +0 -1
  554. package/dist/features/Operation/helpers/get-first-server.js +0 -27
  555. package/dist/features/Operation/helpers/get-first-server.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TagSection.vue.js","names":[],"sources":["../../../../../src/components/Content/Tags/components/TagSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdown } from '@scalar/components/markdown'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\n\nimport { Anchor } from '@/components/Anchor'\nimport { OperationsList } from '@/components/OperationsList'\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport {\n Section,\n SectionColumn,\n SectionColumns,\n SectionContent,\n SectionHeader,\n SectionHeaderTag,\n} from '@/components/Section'\nimport { SpecificationExtension } from '@/features/specification-extension'\n\nconst { tag, headerId, isCollapsed } = defineProps<{\n tag: TraversedTag\n headerId?: string\n isCollapsed?: boolean\n eventBus: WorkspaceEventBus | null\n}>()\n</script>\n<template>\n <Section\n v-if=\"tag\"\n :id=\"tag.id\"\n role=\"none\"\n @intersecting=\"\n () => eventBus?.emit('intersecting:nav-item', { id: tag.id })\n \">\n <SectionHeader>\n <Anchor\n @copyAnchorUrl=\"\n () => eventBus?.emit('copy-url:nav-item', { id: tag.id })\n \">\n <SectionHeaderTag\n :id=\"headerId\"\n :level=\"2\">\n {{ tag.title }}\n <ScreenReader v-if=\"isCollapsed\"> (Collapsed)</ScreenReader>\n </SectionHeaderTag>\n </Anchor>\n </SectionHeader>\n <SectionContent>\n <SectionColumns>\n <SectionColumn>\n <ScalarMarkdown\n :clamp=\"isCollapsed ? 7 : undefined\"\n :value=\"tag?.description ?? ''\"\n withImages />\n </SectionColumn>\n <SectionColumn>\n <OperationsList\n :eventBus=\"eventBus\"\n :tag=\"tag\" />\n </SectionColumn>\n </SectionColumns>\n </SectionContent>\n <SpecificationExtension :value=\"tag.xKeys\" />\n </Section>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"TagSection.vue.js","names":[],"sources":["../../../../../src/components/Content/Tags/components/TagSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdown } from '@scalar/components/markdown'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\n\nimport { Anchor } from '@/components/Anchor'\nimport { OperationsList } from '@/components/OperationsList'\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport {\n Section,\n SectionColumn,\n SectionColumns,\n SectionContent,\n SectionHeader,\n SectionHeaderTag,\n} from '@/components/Section'\nimport { useLocalization } from '@/features/localization'\nimport { SpecificationExtension } from '@/features/specification-extension'\n\nconst { tag, headerId, isCollapsed } = defineProps<{\n tag: TraversedTag\n headerId?: string\n isCollapsed?: boolean\n eventBus: WorkspaceEventBus | null\n}>()\nconst { translate } = useLocalization()\n</script>\n<template>\n <Section\n v-if=\"tag\"\n :id=\"tag.id\"\n role=\"none\"\n @intersecting=\"\n () => eventBus?.emit('intersecting:nav-item', { id: tag.id })\n \">\n <SectionHeader>\n <Anchor\n @copyAnchorUrl=\"\n () => eventBus?.emit('copy-url:nav-item', { id: tag.id })\n \">\n <SectionHeaderTag\n :id=\"headerId\"\n :level=\"2\">\n {{ tag.title }}\n <ScreenReader v-if=\"isCollapsed\">\n ({{ translate('navigation.collapsed') }})\n </ScreenReader>\n </SectionHeaderTag>\n </Anchor>\n </SectionHeader>\n <SectionContent>\n <SectionColumns>\n <SectionColumn>\n <ScalarMarkdown\n :clamp=\"isCollapsed ? 7 : undefined\"\n :value=\"tag?.description ?? ''\"\n withImages />\n </SectionColumn>\n <SectionColumn>\n <OperationsList\n :eventBus=\"eventBus\"\n :tag=\"tag\" />\n </SectionColumn>\n </SectionColumns>\n </SectionContent>\n <SpecificationExtension :value=\"tag.xKeys\" />\n </Section>\n</template>\n"],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { useLocalization } from "../../../../features/localization/use-localization.js";
1
2
  import Section_default from "../../../Section/Section.vue.js";
2
3
  import SectionColumn_default from "../../../Section/SectionColumn.vue.js";
3
4
  import SectionColumns_default from "../../../Section/SectionColumns.vue.js";
@@ -20,6 +21,7 @@ var TagSection_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
20
21
  eventBus: {}
21
22
  },
22
23
  setup(__props) {
24
+ const { translate } = useLocalization();
23
25
  return (_ctx, _cache) => {
24
26
  return __props.tag ? (openBlock(), createBlock(unref(Section_default), {
25
27
  key: 0,
@@ -35,7 +37,7 @@ var TagSection_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
35
37
  level: 2
36
38
  }, {
37
39
  default: withCtx(() => [createTextVNode(toDisplayString(__props.tag.title) + " ", 1), __props.isCollapsed ? (openBlock(), createBlock(ScreenReader_default, { key: 0 }, {
38
- default: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" (Collapsed)", -1)])]),
40
+ default: withCtx(() => [createTextVNode(" (" + toDisplayString(unref(translate)("navigation.collapsed")) + ") ", 1)]),
39
41
  _: 1
40
42
  })) : createCommentVNode("", true)]),
41
43
  _: 1
@@ -1 +1 @@
1
- {"version":3,"file":"TagSection.vue.script.js","names":[],"sources":["../../../../../src/components/Content/Tags/components/TagSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdown } from '@scalar/components/markdown'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\n\nimport { Anchor } from '@/components/Anchor'\nimport { OperationsList } from '@/components/OperationsList'\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport {\n Section,\n SectionColumn,\n SectionColumns,\n SectionContent,\n SectionHeader,\n SectionHeaderTag,\n} from '@/components/Section'\nimport { SpecificationExtension } from '@/features/specification-extension'\n\nconst { tag, headerId, isCollapsed } = defineProps<{\n tag: TraversedTag\n headerId?: string\n isCollapsed?: boolean\n eventBus: WorkspaceEventBus | null\n}>()\n</script>\n<template>\n <Section\n v-if=\"tag\"\n :id=\"tag.id\"\n role=\"none\"\n @intersecting=\"\n () => eventBus?.emit('intersecting:nav-item', { id: tag.id })\n \">\n <SectionHeader>\n <Anchor\n @copyAnchorUrl=\"\n () => eventBus?.emit('copy-url:nav-item', { id: tag.id })\n \">\n <SectionHeaderTag\n :id=\"headerId\"\n :level=\"2\">\n {{ tag.title }}\n <ScreenReader v-if=\"isCollapsed\"> (Collapsed)</ScreenReader>\n </SectionHeaderTag>\n </Anchor>\n </SectionHeader>\n <SectionContent>\n <SectionColumns>\n <SectionColumn>\n <ScalarMarkdown\n :clamp=\"isCollapsed ? 7 : undefined\"\n :value=\"tag?.description ?? ''\"\n withImages />\n </SectionColumn>\n <SectionColumn>\n <OperationsList\n :eventBus=\"eventBus\"\n :tag=\"tag\" />\n </SectionColumn>\n </SectionColumns>\n </SectionContent>\n <SpecificationExtension :value=\"tag.xKeys\" />\n </Section>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;UA2BU,QAAA,OAAA,WAAA,EADR,YAoCU,MAAA,gBAAA,EAAA;;IAlCP,IAAI,QAAA,IAAI;IACT,MAAK;IACJ,gBAAY,OAAA,OAAA,OAAA,WAAe,QAAA,UAAU,KAAI,yBAAA,EAAA,IAAgC,QAAA,IAAI,IAAE,CAAA;;2BAehE;KAZhB,YAYgB,MAAA,sBAAA,EAAA,MAAA;6BADL,CAVT,YAUS,MAAA,eAAA,EAAA,EATN,iBAAa,OAAA,OAAA,OAAA,WAAmB,QAAA,UAAU,KAAI,qBAAA,EAAA,IAA4B,QAAA,IAAI,IAAE,CAAA,GAAA,EAAA;8BAQ9D,CALnB,YAKmB,MAAA,yBAAA,EAAA;QAJhB,IAAI,QAAA;QACJ,OAAO;;+BACO,CAAA,gBAAA,gBAAZ,QAAA,IAAI,MAAK,GAAG,KACf,EAAA,EAAoB,QAAA,eAAA,WAAA,EAApB,YAA4D,sBAAA,EAAA,KAAA,GAAA,EAAA;gCAAf,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAAZ,gBAAY,GAAA,CAAA,EAAA,CAAA;;;;;;;;;KAInD,YAciB,MAAA,uBAAA,EAAA,MAAA;6BADE,CAZjB,YAYiB,MAAA,uBAAA,EAAA,MAAA;8BANC,CALhB,YAKgB,MAAA,sBAAA,EAAA,MAAA;+BADC,CAHf,YAGe,MAAA,eAAA,EAAA;SAFZ,OAAO,QAAA,cAAW,IAAO,KAAA;SACzB,OAAO,QAAA,KAAK,eAAW;SACxB,YAAA;;;WAEJ,YAIgB,MAAA,sBAAA,EAAA,MAAA;+BADC,CAFf,YAEe,MAAA,uBAAA,EAAA;SADZ,UAAU,QAAA;SACV,KAAK,QAAA;;;;;;;;KAId,YAA6C,MAAA,+BAAA,EAAA,EAApB,OAAO,QAAA,IAAI,OAAA,EAAA,MAAA,GAAA,CAAA,QAAA,CAAA"}
1
+ {"version":3,"file":"TagSection.vue.script.js","names":[],"sources":["../../../../../src/components/Content/Tags/components/TagSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarMarkdown } from '@scalar/components/markdown'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\n\nimport { Anchor } from '@/components/Anchor'\nimport { OperationsList } from '@/components/OperationsList'\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport {\n Section,\n SectionColumn,\n SectionColumns,\n SectionContent,\n SectionHeader,\n SectionHeaderTag,\n} from '@/components/Section'\nimport { useLocalization } from '@/features/localization'\nimport { SpecificationExtension } from '@/features/specification-extension'\n\nconst { tag, headerId, isCollapsed } = defineProps<{\n tag: TraversedTag\n headerId?: string\n isCollapsed?: boolean\n eventBus: WorkspaceEventBus | null\n}>()\nconst { translate } = useLocalization()\n</script>\n<template>\n <Section\n v-if=\"tag\"\n :id=\"tag.id\"\n role=\"none\"\n @intersecting=\"\n () => eventBus?.emit('intersecting:nav-item', { id: tag.id })\n \">\n <SectionHeader>\n <Anchor\n @copyAnchorUrl=\"\n () => eventBus?.emit('copy-url:nav-item', { id: tag.id })\n \">\n <SectionHeaderTag\n :id=\"headerId\"\n :level=\"2\">\n {{ tag.title }}\n <ScreenReader v-if=\"isCollapsed\">\n ({{ translate('navigation.collapsed') }})\n </ScreenReader>\n </SectionHeaderTag>\n </Anchor>\n </SectionHeader>\n <SectionContent>\n <SectionColumns>\n <SectionColumn>\n <ScalarMarkdown\n :clamp=\"isCollapsed ? 7 : undefined\"\n :value=\"tag?.description ?? ''\"\n withImages />\n </SectionColumn>\n <SectionColumn>\n <OperationsList\n :eventBus=\"eventBus\"\n :tag=\"tag\" />\n </SectionColumn>\n </SectionColumns>\n </SectionContent>\n <SpecificationExtension :value=\"tag.xKeys\" />\n </Section>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,EAAE,cAAc,iBAAgB;;UAI5B,QAAA,OAAA,WAAA,EADR,YAsCU,MAAA,gBAAA,EAAA;;IApCP,IAAI,QAAA,IAAI;IACT,MAAK;IACJ,gBAAY,OAAA,OAAA,OAAA,WAAe,QAAA,UAAU,KAAI,yBAAA,EAAA,IAAgC,QAAA,IAAI,IAAE,CAAA;;2BAiBhE;KAdhB,YAcgB,MAAA,sBAAA,EAAA,MAAA;6BADL,CAZT,YAYS,MAAA,eAAA,EAAA,EAXN,iBAAa,OAAA,OAAA,OAAA,WAAmB,QAAA,UAAU,KAAI,qBAAA,EAAA,IAA4B,QAAA,IAAI,IAAE,CAAA,GAAA,EAAA;8BAU9D,CAPnB,YAOmB,MAAA,yBAAA,EAAA;QANhB,IAAI,QAAA;QACJ,OAAO;;+BACO,CAAA,gBAAA,gBAAZ,QAAA,IAAI,MAAK,GAAG,KACf,EAAA,EAAoB,QAAA,eAAA,WAAA,EAApB,YAEe,sBAAA,EAAA,KAAA,GAAA,EAAA;gCADZ,CAAA,gBAD8B,OAC9B,gBAAG,MAAA,UAAS,CAAA,uBAAA,CAAA,GAA2B,MAC1C,EAAA,CAAA,CAAA;;;;;;;;;KAIN,YAciB,MAAA,uBAAA,EAAA,MAAA;6BADE,CAZjB,YAYiB,MAAA,uBAAA,EAAA,MAAA;8BANC,CALhB,YAKgB,MAAA,sBAAA,EAAA,MAAA;+BADC,CAHf,YAGe,MAAA,eAAA,EAAA;SAFZ,OAAO,QAAA,cAAW,IAAO,KAAA;SACzB,OAAO,QAAA,KAAK,eAAW;SACxB,YAAA;;;WAEJ,YAIgB,MAAA,sBAAA,EAAA,MAAA;+BADC,CAFf,YAEe,MAAA,uBAAA,EAAA;SADZ,UAAU,QAAA;SACV,KAAK,QAAA;;;;;;;;KAId,YAA6C,MAAA,+BAAA,EAAA,EAApB,OAAO,QAAA,IAAI,OAAA,EAAA,MAAA,GAAA,CAAA,QAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"GettingStarted.vue.d.ts","sourceRoot":"","sources":["../../src/components/GettingStarted.vue"],"names":[],"mappings":"AA6cA,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE1D,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,OAAO,CAAA;CACf,CAAC;AA+YF,QAAA,MAAM,YAAY;;YA3YwB,OAAO;eAAS,MAAM;;;;;;;YAAtB,OAAO;eAAS,MAAM;;;;;kFA8Y9D,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"GettingStarted.vue.d.ts","sourceRoot":"","sources":["../../src/components/GettingStarted.vue"],"names":[],"mappings":"AAsdA,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAI1D,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,OAAO,CAAA;CACf,CAAC;AAoaF,QAAA,MAAM,YAAY;;YAjawB,OAAO;eAAS,MAAM;;;;;;;YAAtB,OAAO;eAAS,MAAM;;;;;kFAoa9D,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -2,7 +2,7 @@ import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-he
2
2
  import GettingStarted_vue_vue_type_script_setup_true_lang_default from "./GettingStarted.vue.script.js";
3
3
  /* empty css */
4
4
  //#region src/components/GettingStarted.vue
5
- var GettingStarted_default = /* @__PURE__ */ _plugin_vue_export_helper_default(GettingStarted_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-68d4d91b"]]);
5
+ var GettingStarted_default = /* @__PURE__ */ _plugin_vue_export_helper_default(GettingStarted_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-c592502d"]]);
6
6
  //#endregion
7
7
  export { GettingStarted_default as default };
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"GettingStarted.vue.js","names":[],"sources":["../../src/components/GettingStarted.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport { themeLabels, type ThemeId } from '@scalar/themes'\n\ndefineProps<{\n theme: ThemeId\n}>()\n\nconst emits = defineEmits<{\n (e: 'changeTheme', { id, label }: { id: ThemeId; label: string }): void\n (e: 'loadSwaggerFile'): void\n (e: 'linkSwaggerFile'): void\n (e: 'updateContent', value: string): void\n}>()\n\nconst themeIds: ThemeId[] = [\n 'default',\n 'alternate',\n 'moon',\n 'purple',\n 'solarized',\n 'bluePlanet',\n 'saturn',\n 'kepler',\n 'mars',\n 'deepSpace',\n]\n\nasync function fetchExampleSpecification() {\n const response = await fetch(\n 'https://registry.scalar.com/@scalar/apis/galaxy?format=yaml',\n )\n\n emits('updateContent', await response.text())\n}\n</script>\n<template>\n <div class=\"custom-scroll start\">\n <div class=\"start-copy\">\n <div class=\"start-logo\">\n <svg\n height=\"36\"\n viewBox=\"0 0 36 36\"\n width=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n </div>\n <h1 class=\"start-h1\">Swagger Editor</h1>\n <p class=\"start-p\">\n Welcome to the Scalar API References + Swagger Editor, a Free &\n Open-Source tool that takes your Swagger/OAS file and generates\n Beautiful API references.\n </p>\n <div class=\"start-cta\">\n <ScalarButton\n class=\"w-full\"\n @click=\"fetchExampleSpecification\">\n Show Example\n </ScalarButton>\n <ScalarButton\n class=\"w-full\"\n variant=\"outlined\"\n @click=\"$emit('loadSwaggerFile')\">\n Upload File\n </ScalarButton>\n </div>\n </div>\n <div class=\"start-row\">\n <div class=\"start-section start-section-integrations\">\n <div class=\"start-h2\">INTEGRATIONS</div>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n height=\"16\"\n viewBox=\"0 0 19 16\"\n width=\"19\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\" />\n </svg>\n <span>Fastify</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n <path\n d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n </g>\n </svg>\n <span>CDN</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\"\n target=\"_blank\">\n <svg\n height=\"170\"\n viewBox=\"0 0 196.3 170\"\n width=\"196.3\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"currentColor\"\n fill-rule=\"nonzero\">\n <polygon\n points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" />\n <polygon\n points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" />\n </g>\n </svg>\n <span>Vue</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\"\n target=\"_blank\">\n <svg\n height=\"23.3\"\n viewBox=\"0 0 22 23.3\"\n width=\"22\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"none\"\n fill-rule=\"evenodd\">\n <circle\n cx=\"11\"\n cy=\"11.6\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n r=\"2\" />\n <g stroke=\"currentColor\">\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(60 11 11.6)\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(120 11 11.6)\" />\n </g>\n </g>\n </svg>\n <span>React</span>\n </a>\n </div>\n <div class=\"start-section start-section-colors\">\n <p class=\"start-h2\">THEMING</p>\n <div\n v-for=\"themeId in themeIds\"\n :key=\"themeId\"\n class=\"start-item\"\n :class=\"{ 'start-item-active': themeId === theme }\"\n @click=\"\n $emit('changeTheme', { id: themeId, label: themeLabels[themeId] })\n \">\n {{ themeLabels[themeId] }}\n </div>\n </div>\n </div>\n <p class=\"start-h1\">Features</p>\n <ul class=\"start-ul\">\n <li>\n <p class=\"start-h3\">Customize</p>\n Bring your typography & color palettes, or use our themes!\n </li>\n <li>\n <p class=\"start-h3\">Testing</p>\n A deeply integrated Rest API Client (Also Free & Open-Source)\n </li>\n <li>\n <p class=\"start-h3\">Search</p>\n Fully integrated Search (Using fuse.js)\n </li>\n <li>\n <p class=\"start-h3\">Hosting</p>\n Free subdomain hosting on https://apidocumentation.com\n </li>\n <li>\n <p class=\"start-h3\">OpenAPI & Swagger</p>\n Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0\n </li>\n <li>\n <p class=\"start-h3\">Code Samples</p>\n Code samples to show off your API in most popular languages\n </li>\n </ul>\n </div>\n</template>\n<style scoped>\n.start {\n padding: 24px;\n display: flex;\n flex-flow: wrap;\n justify-content: space-between;\n position: relative;\n z-index: 0;\n}\n.swagger-editor .start {\n padding-top: 24px;\n}\n.start-h1 {\n font-size: var(--scalar-heading-2);\n margin-top: 0;\n line-height: 1.45;\n margin-bottom: 0;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n position: relative;\n}\n.start-h3 {\n font-size: var(--scalar-paragraph);\n margin-top: 0;\n margin-bottom: 6px;\n display: block;\n line-height: 1.45;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n}\n.start-h1:not(:first-of-type) {\n margin-top: 24px;\n}\n.start-p {\n font-size: var(--scalar-paragraph);\n color: var(--scalar-color-2);\n line-height: 1.5;\n width: 100%;\n margin-top: 12px;\n}\n.start-ul {\n margin-top: 12px;\n font-size: var(--scalar-paragraph);\n line-height: 1.5;\n padding-left: 0;\n list-style: initial;\n display: flex;\n flex-flow: wrap;\n gap: 24px;\n}\n.start-ul li {\n margin: 0;\n padding: 0;\n list-style: none;\n width: calc(50% - 24px);\n color: var(--scalar-color-2);\n}\n.start-ul li:first-of-type {\n margin-top: 0;\n}\n.start-section {\n width: 100%;\n margin-bottom: 12px;\n display: flex;\n flex-flow: wrap;\n}\n.start-section:last-of-type {\n margin-bottom: 48px;\n}\n.start-h2 {\n background: var(--scalar-background-2);\n border-top-left-radius: var(--scalar-radius-lg);\n border-top-right-radius: var(--scalar-radius-lg);\n border: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-3);\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n width: 100%;\n}\n.start-item {\n align-items: center;\n background: var(--scalar-background-2);\n border-right: 1px solid var(--scalar-border-color);\n border-bottom: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-1);\n cursor: pointer;\n display: flex;\n flex: 1;\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n text-transform: capitalize;\n user-select: none;\n}\n.start-section-integrations .start-item:first-of-type {\n border-bottom-left-radius: var(--scalar-radius-lg);\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-integrations .start-item:last-of-type {\n border-bottom-right-radius: var(--scalar-radius-lg);\n}\n.start-section-colors .start-item {\n min-width: 33.33%;\n}\n.start-section-colors .start-item:nth-child(3n + 2) {\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-colors .start-item:last-of-type,\n.start-section-colors .start-item-active:last-of-type::before {\n border-radius: 0 0 var(--scalar-radius-lg) var(--scalar-radius-lg);\n}\n.start-item:empty {\n pointer-events: none;\n}\n.start-item svg {\n width: 14px;\n height: 14px;\n margin-right: 6px;\n}\n.start-item:hover {\n background: var(--scalar-background-3);\n}\n.start-item-active {\n z-index: 10;\n position: relative;\n color: var(--scalar-color-1);\n}\n.start-item-active::before {\n border: 1px solid var(--scalar-color-1);\n content: '';\n inset: -1px -1px -1px -1px;\n pointer-events: none;\n position: absolute;\n}\n.start-section-color .start-item {\n text-transform: capitalize;\n}\n.start-cta {\n display: flex;\n gap: 12px;\n width: 100%;\n margin-top: 24px;\n margin-bottom: 0;\n}\n.start-row {\n width: 100%;\n margin-top: 12px;\n overflow: hidden;\n}\n.start-hero-copy {\n background: var(--scalar-background-2);\n padding: 12px;\n border-radius: var(--scalar-radius-lg);\n}\n.start-p-small {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-mini);\n color: var(--scalar-color-2);\n margin-bottom: 12px;\n line-height: 1.4;\n}\n.start-cta {\n margin-bottom: 12px;\n width: fit-content;\n white-space: nowrap;\n}\n.start-copy {\n padding: 76px 48px 48px 48px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n text-align: center;\n}\n.start-logo {\n color: var(--scalar-color-1);\n margin-bottom: 24px;\n width: 72px;\n aspect-ratio: 1;\n position: relative;\n box-shadow: var(--scalar-shadow-2);\n border-radius: 50%;\n}\n.start-logo:before {\n content: '';\n width: 300%;\n aspect-ratio: 1;\n left: -100%;\n top: -100%;\n position: absolute;\n z-index: -1;\n border-radius: 50%;\n background-size: 24px 24px;\n box-shadow:\n inset 0 0 50px var(--scalar-background-1),\n inset 0 0 50px var(--scalar-background-1);\n background-image:\n linear-gradient(to right, var(--scalar-border-color) 1px, transparent 1px),\n linear-gradient(to bottom, var(--scalar-border-color) 1px, transparent 1px);\n}\n.start-logo svg {\n width: 100%;\n height: auto;\n background: var(--scalar-background-1);\n padding: 3px;\n border-radius: 50%;\n position: relative;\n}\n@media screen and (max-width: 600px) {\n .start-section-colors .start-item,\n .start-item {\n width: 100%;\n border-radius: 0;\n border-right: none;\n border-top: 1px solid var(--scalar-border-color);\n }\n .start-item:empty {\n display: none;\n }\n .start-h2 {\n border-bottom: none;\n }\n .start li {\n width: 100%;\n }\n .start-copy {\n padding: 48px 0 24px 0;\n }\n}\n@media screen and (max-width: 1000px) {\n .start {\n padding: 0;\n overflow: auto;\n }\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"GettingStarted.vue.js","names":[],"sources":["../../src/components/GettingStarted.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport { themeLabels, type ThemeId } from '@scalar/themes'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n theme: ThemeId\n}>()\nconst emits = defineEmits<{\n (e: 'changeTheme', { id, label }: { id: ThemeId; label: string }): void\n (e: 'loadSwaggerFile'): void\n (e: 'linkSwaggerFile'): void\n (e: 'updateContent', value: string): void\n}>()\n\nconst { translate } = useLocalization()\n\nconst themeIds: ThemeId[] = [\n 'default',\n 'alternate',\n 'moon',\n 'purple',\n 'solarized',\n 'bluePlanet',\n 'saturn',\n 'kepler',\n 'mars',\n 'deepSpace',\n]\n\nasync function fetchExampleSpecification() {\n const response = await fetch(\n 'https://registry.scalar.com/@scalar/apis/galaxy?format=yaml',\n )\n\n emits('updateContent', await response.text())\n}\n</script>\n<template>\n <div class=\"custom-scroll start\">\n <div class=\"start-copy\">\n <div class=\"start-logo\">\n <svg\n height=\"36\"\n viewBox=\"0 0 36 36\"\n width=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n </div>\n <h1 class=\"start-h1\">\n {{ translate('gettingStarted.swaggerEditor') }}\n </h1>\n <p class=\"start-p\">\n {{ translate('gettingStarted.description') }}\n </p>\n <div class=\"start-cta\">\n <ScalarButton\n class=\"w-full\"\n @click=\"fetchExampleSpecification\">\n {{ translate('gettingStarted.showExample') }}\n </ScalarButton>\n <ScalarButton\n class=\"w-full\"\n variant=\"outlined\"\n @click=\"$emit('loadSwaggerFile')\">\n {{ translate('gettingStarted.uploadFile') }}\n </ScalarButton>\n </div>\n </div>\n <div class=\"start-row\">\n <div class=\"start-section start-section-integrations\">\n <div class=\"start-h2\">\n {{ translate('gettingStarted.integrations') }}\n </div>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n height=\"16\"\n viewBox=\"0 0 19 16\"\n width=\"19\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\" />\n </svg>\n <span>Fastify</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n <path\n d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n </g>\n </svg>\n <span>CDN</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\"\n target=\"_blank\">\n <svg\n height=\"170\"\n viewBox=\"0 0 196.3 170\"\n width=\"196.3\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"currentColor\"\n fill-rule=\"nonzero\">\n <polygon\n points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" />\n <polygon\n points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" />\n </g>\n </svg>\n <span>Vue</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\"\n target=\"_blank\">\n <svg\n height=\"23.3\"\n viewBox=\"0 0 22 23.3\"\n width=\"22\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"none\"\n fill-rule=\"evenodd\">\n <circle\n cx=\"11\"\n cy=\"11.6\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n r=\"2\" />\n <g stroke=\"currentColor\">\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(60 11 11.6)\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(120 11 11.6)\" />\n </g>\n </g>\n </svg>\n <span>React</span>\n </a>\n </div>\n <div class=\"start-section start-section-colors\">\n <p class=\"start-h2\">\n {{ translate('gettingStarted.theming') }}\n </p>\n <div\n v-for=\"themeId in themeIds\"\n :key=\"themeId\"\n class=\"start-item\"\n :class=\"{ 'start-item-active': themeId === theme }\"\n @click=\"\n $emit('changeTheme', { id: themeId, label: themeLabels[themeId] })\n \">\n {{ themeLabels[themeId] }}\n </div>\n </div>\n </div>\n <p class=\"start-h1\">{{ translate('gettingStarted.features') }}</p>\n <ul class=\"start-ul\">\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.customize') }}</p>\n {{ translate('gettingStarted.customizeDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.testing') }}</p>\n {{ translate('gettingStarted.testingDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.search') }}</p>\n {{ translate('gettingStarted.searchDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.hosting') }}</p>\n {{ translate('gettingStarted.hostingDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">\n {{ translate('gettingStarted.openApiSwagger') }}\n </p>\n {{ translate('gettingStarted.openApiSwaggerDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.codeSamples') }}</p>\n {{ translate('gettingStarted.codeSamplesDescription') }}\n </li>\n </ul>\n </div>\n</template>\n<style scoped>\n.start {\n padding: 24px;\n display: flex;\n flex-flow: wrap;\n justify-content: space-between;\n position: relative;\n z-index: 0;\n}\n.swagger-editor .start {\n padding-top: 24px;\n}\n.start-h1 {\n font-size: var(--scalar-heading-2);\n margin-top: 0;\n line-height: 1.45;\n margin-bottom: 0;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n position: relative;\n}\n.start-h3 {\n font-size: var(--scalar-paragraph);\n margin-top: 0;\n margin-bottom: 6px;\n display: block;\n line-height: 1.45;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n}\n.start-h1:not(:first-of-type) {\n margin-top: 24px;\n}\n.start-p {\n font-size: var(--scalar-paragraph);\n color: var(--scalar-color-2);\n line-height: 1.5;\n width: 100%;\n margin-top: 12px;\n}\n.start-ul {\n margin-top: 12px;\n font-size: var(--scalar-paragraph);\n line-height: 1.5;\n padding-left: 0;\n list-style: initial;\n display: flex;\n flex-flow: wrap;\n gap: 24px;\n}\n.start-ul li {\n margin: 0;\n padding: 0;\n list-style: none;\n width: calc(50% - 24px);\n color: var(--scalar-color-2);\n}\n.start-ul li:first-of-type {\n margin-top: 0;\n}\n.start-section {\n width: 100%;\n margin-bottom: 12px;\n display: flex;\n flex-flow: wrap;\n}\n.start-section:last-of-type {\n margin-bottom: 48px;\n}\n.start-h2 {\n background: var(--scalar-background-2);\n border-top-left-radius: var(--scalar-radius-lg);\n border-top-right-radius: var(--scalar-radius-lg);\n border: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-3);\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n width: 100%;\n}\n.start-item {\n align-items: center;\n background: var(--scalar-background-2);\n border-right: 1px solid var(--scalar-border-color);\n border-bottom: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-1);\n cursor: pointer;\n display: flex;\n flex: 1;\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n text-transform: capitalize;\n user-select: none;\n}\n.start-section-integrations .start-item:first-of-type {\n border-bottom-left-radius: var(--scalar-radius-lg);\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-integrations .start-item:last-of-type {\n border-bottom-right-radius: var(--scalar-radius-lg);\n}\n.start-section-colors .start-item {\n min-width: 33.33%;\n}\n.start-section-colors .start-item:nth-child(3n + 2) {\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-colors .start-item:last-of-type,\n.start-section-colors .start-item-active:last-of-type::before {\n border-radius: 0 0 var(--scalar-radius-lg) var(--scalar-radius-lg);\n}\n.start-item:empty {\n pointer-events: none;\n}\n.start-item svg {\n width: 14px;\n height: 14px;\n margin-right: 6px;\n}\n.start-item:hover {\n background: var(--scalar-background-3);\n}\n.start-item-active {\n z-index: 10;\n position: relative;\n color: var(--scalar-color-1);\n}\n.start-item-active::before {\n border: 1px solid var(--scalar-color-1);\n content: '';\n inset: -1px -1px -1px -1px;\n pointer-events: none;\n position: absolute;\n}\n.start-section-color .start-item {\n text-transform: capitalize;\n}\n.start-cta {\n display: flex;\n gap: 12px;\n width: 100%;\n margin-top: 24px;\n margin-bottom: 0;\n}\n.start-row {\n width: 100%;\n margin-top: 12px;\n overflow: hidden;\n}\n.start-hero-copy {\n background: var(--scalar-background-2);\n padding: 12px;\n border-radius: var(--scalar-radius-lg);\n}\n.start-p-small {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-mini);\n color: var(--scalar-color-2);\n margin-bottom: 12px;\n line-height: 1.4;\n}\n.start-cta {\n margin-bottom: 12px;\n width: fit-content;\n white-space: nowrap;\n}\n.start-copy {\n padding: 76px 48px 48px 48px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n text-align: center;\n}\n.start-logo {\n color: var(--scalar-color-1);\n margin-bottom: 24px;\n width: 72px;\n aspect-ratio: 1;\n position: relative;\n box-shadow: var(--scalar-shadow-2);\n border-radius: 50%;\n}\n.start-logo:before {\n content: '';\n width: 300%;\n aspect-ratio: 1;\n left: -100%;\n top: -100%;\n position: absolute;\n z-index: -1;\n border-radius: 50%;\n background-size: 24px 24px;\n box-shadow:\n inset 0 0 50px var(--scalar-background-1),\n inset 0 0 50px var(--scalar-background-1);\n background-image:\n linear-gradient(to right, var(--scalar-border-color) 1px, transparent 1px),\n linear-gradient(to bottom, var(--scalar-border-color) 1px, transparent 1px);\n}\n.start-logo svg {\n width: 100%;\n height: auto;\n background: var(--scalar-background-1);\n padding: 3px;\n border-radius: 50%;\n position: relative;\n}\n@media screen and (max-width: 600px) {\n .start-section-colors .start-item,\n .start-item {\n width: 100%;\n border-radius: 0;\n border-right: none;\n border-top: 1px solid var(--scalar-border-color);\n }\n .start-item:empty {\n display: none;\n }\n .start-h2 {\n border-bottom: none;\n }\n .start li {\n width: 100%;\n }\n .start-copy {\n padding: 48px 0 24px 0;\n }\n}\n@media screen and (max-width: 1000px) {\n .start {\n padding: 0;\n overflow: auto;\n }\n}\n</style>\n"],"mappings":""}
@@ -1,13 +1,27 @@
1
+ import { useLocalization } from "../features/localization/use-localization.js";
1
2
  import { Fragment, createElementBlock, createElementVNode, createStaticVNode, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, renderList, toDisplayString, unref, withCtx } from "vue";
2
3
  import { themeLabels } from "@scalar/themes";
3
4
  import { ScalarButton } from "@scalar/components/button";
4
5
  //#region src/components/GettingStarted.vue?vue&type=script&setup=true&lang.ts
5
6
  var _hoisted_1 = { class: "custom-scroll start" };
6
7
  var _hoisted_2 = { class: "start-copy" };
7
- var _hoisted_3 = { class: "start-cta" };
8
- var _hoisted_4 = { class: "start-row" };
9
- var _hoisted_5 = { class: "start-section start-section-colors" };
10
- var _hoisted_6 = ["onClick"];
8
+ var _hoisted_3 = { class: "start-h1" };
9
+ var _hoisted_4 = { class: "start-p" };
10
+ var _hoisted_5 = { class: "start-cta" };
11
+ var _hoisted_6 = { class: "start-row" };
12
+ var _hoisted_7 = { class: "start-section start-section-integrations" };
13
+ var _hoisted_8 = { class: "start-h2" };
14
+ var _hoisted_9 = { class: "start-section start-section-colors" };
15
+ var _hoisted_10 = { class: "start-h2" };
16
+ var _hoisted_11 = ["onClick"];
17
+ var _hoisted_12 = { class: "start-h1" };
18
+ var _hoisted_13 = { class: "start-ul" };
19
+ var _hoisted_14 = { class: "start-h3" };
20
+ var _hoisted_15 = { class: "start-h3" };
21
+ var _hoisted_16 = { class: "start-h3" };
22
+ var _hoisted_17 = { class: "start-h3" };
23
+ var _hoisted_18 = { class: "start-h3" };
24
+ var _hoisted_19 = { class: "start-h3" };
11
25
  var GettingStarted_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
12
26
  __name: "GettingStarted",
13
27
  props: { theme: {} },
@@ -19,6 +33,7 @@ var GettingStarted_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
19
33
  ],
20
34
  setup(__props, { emit: __emit }) {
21
35
  const emits = __emit;
36
+ const { translate } = useLocalization();
22
37
  const themeIds = [
23
38
  "default",
24
39
  "alternate",
@@ -36,21 +51,35 @@ var GettingStarted_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
36
51
  }
37
52
  return (_ctx, _cache) => {
38
53
  return openBlock(), createElementBlock("div", _hoisted_1, [
39
- createElementVNode("div", _hoisted_2, [_cache[3] || (_cache[3] = createStaticVNode("<div class=\"start-logo\" data-v-68d4d91b><svg height=\"36\" viewBox=\"0 0 36 36\" width=\"36\" xmlns=\"http://www.w3.org/2000/svg\" data-v-68d4d91b><path d=\"M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z\" fill=\"currentColor\" fill-rule=\"evenodd\" data-v-68d4d91b></path></svg></div><h1 class=\"start-h1\" data-v-68d4d91b>Swagger Editor</h1><p class=\"start-p\" data-v-68d4d91b> Welcome to the Scalar API References + Swagger Editor, a Free &amp; Open-Source tool that takes your Swagger/OAS file and generates Beautiful API references. </p>", 3)), createElementVNode("div", _hoisted_3, [createVNode(unref(ScalarButton), {
40
- class: "w-full",
41
- onClick: fetchExampleSpecification
42
- }, {
43
- default: withCtx(() => [..._cache[1] || (_cache[1] = [createTextVNode(" Show Example ", -1)])]),
44
- _: 1
45
- }), createVNode(unref(ScalarButton), {
46
- class: "w-full",
47
- variant: "outlined",
48
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("loadSwaggerFile"))
49
- }, {
50
- default: withCtx(() => [..._cache[2] || (_cache[2] = [createTextVNode(" Upload File ", -1)])]),
51
- _: 1
52
- })])]),
53
- createElementVNode("div", _hoisted_4, [_cache[5] || (_cache[5] = createStaticVNode("<div class=\"start-section start-section-integrations\" data-v-68d4d91b><div class=\"start-h2\" data-v-68d4d91b>INTEGRATIONS</div><a class=\"start-item\" href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\" target=\"_blank\" data-v-68d4d91b><svg fill=\"currentColor\" height=\"16\" viewBox=\"0 0 19 16\" width=\"19\" xmlns=\"http://www.w3.org/2000/svg\" data-v-68d4d91b><path d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\" fill=\"currentColor\" fill-rule=\"nonzero\" data-v-68d4d91b></path></svg><span data-v-68d4d91b>Fastify</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\" target=\"_blank\" data-v-68d4d91b><svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" data-v-68d4d91b><g data-v-68d4d91b><path d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\" fill=\"currentColor\" data-v-68d4d91b></path><path d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\" fill=\"currentColor\" data-v-68d4d91b></path><path d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\" fill=\"currentColor\" data-v-68d4d91b></path></g></svg><span data-v-68d4d91b>CDN</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\" target=\"_blank\" data-v-68d4d91b><svg height=\"170\" viewBox=\"0 0 196.3 170\" width=\"196.3\" xmlns=\"http://www.w3.org/2000/svg\" data-v-68d4d91b><g fill=\"currentColor\" fill-rule=\"nonzero\" data-v-68d4d91b><polygon points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" data-v-68d4d91b></polygon><polygon points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" data-v-68d4d91b></polygon></g></svg><span data-v-68d4d91b>Vue</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\" target=\"_blank\" data-v-68d4d91b><svg height=\"23.3\" viewBox=\"0 0 22 23.3\" width=\"22\" xmlns=\"http://www.w3.org/2000/svg\" data-v-68d4d91b><g fill=\"none\" fill-rule=\"evenodd\" data-v-68d4d91b><circle cx=\"11\" cy=\"11.6\" fill=\"currentColor\" fill-rule=\"nonzero\" r=\"2\" data-v-68d4d91b></circle><g stroke=\"currentColor\" data-v-68d4d91b><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" data-v-68d4d91b></ellipse><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" transform=\"rotate(60 11 11.6)\" data-v-68d4d91b></ellipse><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" transform=\"rotate(120 11 11.6)\" data-v-68d4d91b></ellipse></g></g></svg><span data-v-68d4d91b>React</span></a></div>", 1)), createElementVNode("div", _hoisted_5, [_cache[4] || (_cache[4] = createElementVNode("p", { class: "start-h2" }, "THEMING", -1)), (openBlock(), createElementBlock(Fragment, null, renderList(themeIds, (themeId) => {
54
+ createElementVNode("div", _hoisted_2, [
55
+ _cache[1] || (_cache[1] = createElementVNode("div", { class: "start-logo" }, [createElementVNode("svg", {
56
+ height: "36",
57
+ viewBox: "0 0 36 36",
58
+ width: "36",
59
+ xmlns: "http://www.w3.org/2000/svg"
60
+ }, [createElementVNode("path", {
61
+ d: "M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z",
62
+ fill: "currentColor",
63
+ "fill-rule": "evenodd"
64
+ })])], -1)),
65
+ createElementVNode("h1", _hoisted_3, toDisplayString(unref(translate)("gettingStarted.swaggerEditor")), 1),
66
+ createElementVNode("p", _hoisted_4, toDisplayString(unref(translate)("gettingStarted.description")), 1),
67
+ createElementVNode("div", _hoisted_5, [createVNode(unref(ScalarButton), {
68
+ class: "w-full",
69
+ onClick: fetchExampleSpecification
70
+ }, {
71
+ default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("gettingStarted.showExample")), 1)]),
72
+ _: 1
73
+ }), createVNode(unref(ScalarButton), {
74
+ class: "w-full",
75
+ variant: "outlined",
76
+ onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("loadSwaggerFile"))
77
+ }, {
78
+ default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("gettingStarted.uploadFile")), 1)]),
79
+ _: 1
80
+ })])
81
+ ]),
82
+ createElementVNode("div", _hoisted_6, [createElementVNode("div", _hoisted_7, [createElementVNode("div", _hoisted_8, toDisplayString(unref(translate)("gettingStarted.integrations")), 1), _cache[2] || (_cache[2] = createStaticVNode("<a class=\"start-item\" href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\" target=\"_blank\" data-v-c592502d><svg fill=\"currentColor\" height=\"16\" viewBox=\"0 0 19 16\" width=\"19\" xmlns=\"http://www.w3.org/2000/svg\" data-v-c592502d><path d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\" fill=\"currentColor\" fill-rule=\"nonzero\" data-v-c592502d></path></svg><span data-v-c592502d>Fastify</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\" target=\"_blank\" data-v-c592502d><svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" data-v-c592502d><g data-v-c592502d><path d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\" fill=\"currentColor\" data-v-c592502d></path><path d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\" fill=\"currentColor\" data-v-c592502d></path><path d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\" fill=\"currentColor\" data-v-c592502d></path></g></svg><span data-v-c592502d>CDN</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\" target=\"_blank\" data-v-c592502d><svg height=\"170\" viewBox=\"0 0 196.3 170\" width=\"196.3\" xmlns=\"http://www.w3.org/2000/svg\" data-v-c592502d><g fill=\"currentColor\" fill-rule=\"nonzero\" data-v-c592502d><polygon points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" data-v-c592502d></polygon><polygon points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" data-v-c592502d></polygon></g></svg><span data-v-c592502d>Vue</span></a><a class=\"start-item\" href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\" target=\"_blank\" data-v-c592502d><svg height=\"23.3\" viewBox=\"0 0 22 23.3\" width=\"22\" xmlns=\"http://www.w3.org/2000/svg\" data-v-c592502d><g fill=\"none\" fill-rule=\"evenodd\" data-v-c592502d><circle cx=\"11\" cy=\"11.6\" fill=\"currentColor\" fill-rule=\"nonzero\" r=\"2\" data-v-c592502d></circle><g stroke=\"currentColor\" data-v-c592502d><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" data-v-c592502d></ellipse><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" transform=\"rotate(60 11 11.6)\" data-v-c592502d></ellipse><ellipse cx=\"11\" cy=\"11.6\" rx=\"11\" ry=\"4.2\" transform=\"rotate(120 11 11.6)\" data-v-c592502d></ellipse></g></g></svg><span data-v-c592502d>React</span></a>", 4))]), createElementVNode("div", _hoisted_9, [createElementVNode("p", _hoisted_10, toDisplayString(unref(translate)("gettingStarted.theming")), 1), (openBlock(), createElementBlock(Fragment, null, renderList(themeIds, (themeId) => {
54
83
  return createElementVNode("div", {
55
84
  key: themeId,
56
85
  class: normalizeClass(["start-item", { "start-item-active": themeId === __props.theme }]),
@@ -58,9 +87,17 @@ var GettingStarted_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
58
87
  id: themeId,
59
88
  label: unref(themeLabels)[themeId]
60
89
  })
61
- }, toDisplayString(unref(themeLabels)[themeId]), 11, _hoisted_6);
90
+ }, toDisplayString(unref(themeLabels)[themeId]), 11, _hoisted_11);
62
91
  }), 64))])]),
63
- _cache[6] || (_cache[6] = createStaticVNode("<p class=\"start-h1\" data-v-68d4d91b>Features</p><ul class=\"start-ul\" data-v-68d4d91b><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>Customize</p> Bring your typography &amp; color palettes, or use our themes! </li><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>Testing</p> A deeply integrated Rest API Client (Also Free &amp; Open-Source) </li><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>Search</p> Fully integrated Search (Using fuse.js) </li><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>Hosting</p> Free subdomain hosting on https://apidocumentation.com </li><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>OpenAPI &amp; Swagger</p> Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0 </li><li data-v-68d4d91b><p class=\"start-h3\" data-v-68d4d91b>Code Samples</p> Code samples to show off your API in most popular languages </li></ul>", 2))
92
+ createElementVNode("p", _hoisted_12, toDisplayString(unref(translate)("gettingStarted.features")), 1),
93
+ createElementVNode("ul", _hoisted_13, [
94
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_14, toDisplayString(unref(translate)("gettingStarted.customize")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.customizeDescription")), 1)]),
95
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_15, toDisplayString(unref(translate)("gettingStarted.testing")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.testingDescription")), 1)]),
96
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_16, toDisplayString(unref(translate)("gettingStarted.search")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.searchDescription")), 1)]),
97
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_17, toDisplayString(unref(translate)("gettingStarted.hosting")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.hostingDescription")), 1)]),
98
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_18, toDisplayString(unref(translate)("gettingStarted.openApiSwagger")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.openApiSwaggerDescription")), 1)]),
99
+ createElementVNode("li", null, [createElementVNode("p", _hoisted_19, toDisplayString(unref(translate)("gettingStarted.codeSamples")), 1), createTextVNode(" " + toDisplayString(unref(translate)("gettingStarted.codeSamplesDescription")), 1)])
100
+ ])
64
101
  ]);
65
102
  };
66
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GettingStarted.vue.script.js","names":["$emit"],"sources":["../../src/components/GettingStarted.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport { themeLabels, type ThemeId } from '@scalar/themes'\n\ndefineProps<{\n theme: ThemeId\n}>()\n\nconst emits = defineEmits<{\n (e: 'changeTheme', { id, label }: { id: ThemeId; label: string }): void\n (e: 'loadSwaggerFile'): void\n (e: 'linkSwaggerFile'): void\n (e: 'updateContent', value: string): void\n}>()\n\nconst themeIds: ThemeId[] = [\n 'default',\n 'alternate',\n 'moon',\n 'purple',\n 'solarized',\n 'bluePlanet',\n 'saturn',\n 'kepler',\n 'mars',\n 'deepSpace',\n]\n\nasync function fetchExampleSpecification() {\n const response = await fetch(\n 'https://registry.scalar.com/@scalar/apis/galaxy?format=yaml',\n )\n\n emits('updateContent', await response.text())\n}\n</script>\n<template>\n <div class=\"custom-scroll start\">\n <div class=\"start-copy\">\n <div class=\"start-logo\">\n <svg\n height=\"36\"\n viewBox=\"0 0 36 36\"\n width=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n </div>\n <h1 class=\"start-h1\">Swagger Editor</h1>\n <p class=\"start-p\">\n Welcome to the Scalar API References + Swagger Editor, a Free &\n Open-Source tool that takes your Swagger/OAS file and generates\n Beautiful API references.\n </p>\n <div class=\"start-cta\">\n <ScalarButton\n class=\"w-full\"\n @click=\"fetchExampleSpecification\">\n Show Example\n </ScalarButton>\n <ScalarButton\n class=\"w-full\"\n variant=\"outlined\"\n @click=\"$emit('loadSwaggerFile')\">\n Upload File\n </ScalarButton>\n </div>\n </div>\n <div class=\"start-row\">\n <div class=\"start-section start-section-integrations\">\n <div class=\"start-h2\">INTEGRATIONS</div>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n height=\"16\"\n viewBox=\"0 0 19 16\"\n width=\"19\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\" />\n </svg>\n <span>Fastify</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n <path\n d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n </g>\n </svg>\n <span>CDN</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\"\n target=\"_blank\">\n <svg\n height=\"170\"\n viewBox=\"0 0 196.3 170\"\n width=\"196.3\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"currentColor\"\n fill-rule=\"nonzero\">\n <polygon\n points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" />\n <polygon\n points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" />\n </g>\n </svg>\n <span>Vue</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\"\n target=\"_blank\">\n <svg\n height=\"23.3\"\n viewBox=\"0 0 22 23.3\"\n width=\"22\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"none\"\n fill-rule=\"evenodd\">\n <circle\n cx=\"11\"\n cy=\"11.6\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n r=\"2\" />\n <g stroke=\"currentColor\">\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(60 11 11.6)\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(120 11 11.6)\" />\n </g>\n </g>\n </svg>\n <span>React</span>\n </a>\n </div>\n <div class=\"start-section start-section-colors\">\n <p class=\"start-h2\">THEMING</p>\n <div\n v-for=\"themeId in themeIds\"\n :key=\"themeId\"\n class=\"start-item\"\n :class=\"{ 'start-item-active': themeId === theme }\"\n @click=\"\n $emit('changeTheme', { id: themeId, label: themeLabels[themeId] })\n \">\n {{ themeLabels[themeId] }}\n </div>\n </div>\n </div>\n <p class=\"start-h1\">Features</p>\n <ul class=\"start-ul\">\n <li>\n <p class=\"start-h3\">Customize</p>\n Bring your typography & color palettes, or use our themes!\n </li>\n <li>\n <p class=\"start-h3\">Testing</p>\n A deeply integrated Rest API Client (Also Free & Open-Source)\n </li>\n <li>\n <p class=\"start-h3\">Search</p>\n Fully integrated Search (Using fuse.js)\n </li>\n <li>\n <p class=\"start-h3\">Hosting</p>\n Free subdomain hosting on https://apidocumentation.com\n </li>\n <li>\n <p class=\"start-h3\">OpenAPI & Swagger</p>\n Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0\n </li>\n <li>\n <p class=\"start-h3\">Code Samples</p>\n Code samples to show off your API in most popular languages\n </li>\n </ul>\n </div>\n</template>\n<style scoped>\n.start {\n padding: 24px;\n display: flex;\n flex-flow: wrap;\n justify-content: space-between;\n position: relative;\n z-index: 0;\n}\n.swagger-editor .start {\n padding-top: 24px;\n}\n.start-h1 {\n font-size: var(--scalar-heading-2);\n margin-top: 0;\n line-height: 1.45;\n margin-bottom: 0;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n position: relative;\n}\n.start-h3 {\n font-size: var(--scalar-paragraph);\n margin-top: 0;\n margin-bottom: 6px;\n display: block;\n line-height: 1.45;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n}\n.start-h1:not(:first-of-type) {\n margin-top: 24px;\n}\n.start-p {\n font-size: var(--scalar-paragraph);\n color: var(--scalar-color-2);\n line-height: 1.5;\n width: 100%;\n margin-top: 12px;\n}\n.start-ul {\n margin-top: 12px;\n font-size: var(--scalar-paragraph);\n line-height: 1.5;\n padding-left: 0;\n list-style: initial;\n display: flex;\n flex-flow: wrap;\n gap: 24px;\n}\n.start-ul li {\n margin: 0;\n padding: 0;\n list-style: none;\n width: calc(50% - 24px);\n color: var(--scalar-color-2);\n}\n.start-ul li:first-of-type {\n margin-top: 0;\n}\n.start-section {\n width: 100%;\n margin-bottom: 12px;\n display: flex;\n flex-flow: wrap;\n}\n.start-section:last-of-type {\n margin-bottom: 48px;\n}\n.start-h2 {\n background: var(--scalar-background-2);\n border-top-left-radius: var(--scalar-radius-lg);\n border-top-right-radius: var(--scalar-radius-lg);\n border: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-3);\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n width: 100%;\n}\n.start-item {\n align-items: center;\n background: var(--scalar-background-2);\n border-right: 1px solid var(--scalar-border-color);\n border-bottom: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-1);\n cursor: pointer;\n display: flex;\n flex: 1;\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n text-transform: capitalize;\n user-select: none;\n}\n.start-section-integrations .start-item:first-of-type {\n border-bottom-left-radius: var(--scalar-radius-lg);\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-integrations .start-item:last-of-type {\n border-bottom-right-radius: var(--scalar-radius-lg);\n}\n.start-section-colors .start-item {\n min-width: 33.33%;\n}\n.start-section-colors .start-item:nth-child(3n + 2) {\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-colors .start-item:last-of-type,\n.start-section-colors .start-item-active:last-of-type::before {\n border-radius: 0 0 var(--scalar-radius-lg) var(--scalar-radius-lg);\n}\n.start-item:empty {\n pointer-events: none;\n}\n.start-item svg {\n width: 14px;\n height: 14px;\n margin-right: 6px;\n}\n.start-item:hover {\n background: var(--scalar-background-3);\n}\n.start-item-active {\n z-index: 10;\n position: relative;\n color: var(--scalar-color-1);\n}\n.start-item-active::before {\n border: 1px solid var(--scalar-color-1);\n content: '';\n inset: -1px -1px -1px -1px;\n pointer-events: none;\n position: absolute;\n}\n.start-section-color .start-item {\n text-transform: capitalize;\n}\n.start-cta {\n display: flex;\n gap: 12px;\n width: 100%;\n margin-top: 24px;\n margin-bottom: 0;\n}\n.start-row {\n width: 100%;\n margin-top: 12px;\n overflow: hidden;\n}\n.start-hero-copy {\n background: var(--scalar-background-2);\n padding: 12px;\n border-radius: var(--scalar-radius-lg);\n}\n.start-p-small {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-mini);\n color: var(--scalar-color-2);\n margin-bottom: 12px;\n line-height: 1.4;\n}\n.start-cta {\n margin-bottom: 12px;\n width: fit-content;\n white-space: nowrap;\n}\n.start-copy {\n padding: 76px 48px 48px 48px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n text-align: center;\n}\n.start-logo {\n color: var(--scalar-color-1);\n margin-bottom: 24px;\n width: 72px;\n aspect-ratio: 1;\n position: relative;\n box-shadow: var(--scalar-shadow-2);\n border-radius: 50%;\n}\n.start-logo:before {\n content: '';\n width: 300%;\n aspect-ratio: 1;\n left: -100%;\n top: -100%;\n position: absolute;\n z-index: -1;\n border-radius: 50%;\n background-size: 24px 24px;\n box-shadow:\n inset 0 0 50px var(--scalar-background-1),\n inset 0 0 50px var(--scalar-background-1);\n background-image:\n linear-gradient(to right, var(--scalar-border-color) 1px, transparent 1px),\n linear-gradient(to bottom, var(--scalar-border-color) 1px, transparent 1px);\n}\n.start-logo svg {\n width: 100%;\n height: auto;\n background: var(--scalar-background-1);\n padding: 3px;\n border-radius: 50%;\n position: relative;\n}\n@media screen and (max-width: 600px) {\n .start-section-colors .start-item,\n .start-item {\n width: 100%;\n border-radius: 0;\n border-right: none;\n border-top: 1px solid var(--scalar-border-color);\n }\n .start-item:empty {\n display: none;\n }\n .start-h2 {\n border-bottom: none;\n }\n .start li {\n width: 100%;\n }\n .start-copy {\n padding: 48px 0 24px 0;\n }\n}\n@media screen and (max-width: 1000px) {\n .start {\n padding: 0;\n overflow: auto;\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAQA,MAAM,QAAQ;EAOd,MAAM,WAAsB;GAC1B;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACF;EAEA,eAAe,4BAA4B;AAKzC,SAAM,iBAAiB,OAJN,MAAM,MACrB,8DACF,EAEsC,MAAM,CAAA;;;uBAI5C,mBAmLM,OAnLN,YAmLM;IAlLJ,mBAgCM,OAhCN,YAgCM,CAAA,OAAA,OAAA,OAAA,KAAA,kBAAA,4rBAAA,EAAA,GAbJ,mBAYM,OAZN,YAYM,CAXJ,YAIe,MAAA,aAAA,EAAA;KAHb,OAAM;KACL,SAAO;;4BAEV,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFqC,kBAErC,GAAA,CAAA,EAAA,CAAA;;QACA,YAKe,MAAA,aAAA,EAAA;KAJb,OAAM;KACN,SAAQ;KACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAEA,KAAAA,MAAK,kBAAA;;4BAEf,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CAAA,gBAFoC,iBAEpC,GAAA,CAAA,EAAA,CAAA;;;IAGJ,mBAqHM,OArHN,YAqHM,CAAA,OAAA,OAAA,OAAA,KAAA,kBAAA,inHAAA,EAAA,GAbJ,mBAYM,OAZN,YAYM,CAAA,OAAA,OAAA,OAAA,KAXJ,mBAA+B,KAAA,EAA5B,OAAM,YAAU,EAAC,WAAO,GAAA,IAAA,WAAA,EAC3B,mBASM,UAAA,MAAA,WARc,WAAX,YAAO;YADhB,mBASM,OAAA;MAPH,KAAK;MACN,OAAK,eAAA,CAAC,cAAY,EAAA,qBACa,YAAY,QAAA,OAAK,CAAA,CAAA;MAC/C,UAAK,WAAeA,KAAAA,MAAK,eAAA;OAAA,IAAsB;OAAO,OAAS,MAAA,YAAW,CAAC;OAAO,CAAA;wBAGhF,MAAA,YAAW,CAAC,SAAO,EAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"GettingStarted.vue.script.js","names":["$emit"],"sources":["../../src/components/GettingStarted.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarButton } from '@scalar/components/button'\nimport { themeLabels, type ThemeId } from '@scalar/themes'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n theme: ThemeId\n}>()\nconst emits = defineEmits<{\n (e: 'changeTheme', { id, label }: { id: ThemeId; label: string }): void\n (e: 'loadSwaggerFile'): void\n (e: 'linkSwaggerFile'): void\n (e: 'updateContent', value: string): void\n}>()\n\nconst { translate } = useLocalization()\n\nconst themeIds: ThemeId[] = [\n 'default',\n 'alternate',\n 'moon',\n 'purple',\n 'solarized',\n 'bluePlanet',\n 'saturn',\n 'kepler',\n 'mars',\n 'deepSpace',\n]\n\nasync function fetchExampleSpecification() {\n const response = await fetch(\n 'https://registry.scalar.com/@scalar/apis/galaxy?format=yaml',\n )\n\n emits('updateContent', await response.text())\n}\n</script>\n<template>\n <div class=\"custom-scroll start\">\n <div class=\"start-copy\">\n <div class=\"start-logo\">\n <svg\n height=\"36\"\n viewBox=\"0 0 36 36\"\n width=\"36\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M18 0a18 18 0 1 1 0 36 18 18 0 0 1 0-36Zm11.2 6.5c-3.3-3.3-11.1-1-17.4 5.3-6.2 6.3-8.6 14-5.3 17.4 3.3 3.3 11 .9 17.3-5.4 6.3-6.2 8.7-14 5.4-17.3ZM17.6 12a6.3 6.3 0 1 1 0 12.7 6.3 6.3 0 0 1 0-12.7Z\"\n fill=\"currentColor\"\n fill-rule=\"evenodd\" />\n </svg>\n </div>\n <h1 class=\"start-h1\">\n {{ translate('gettingStarted.swaggerEditor') }}\n </h1>\n <p class=\"start-p\">\n {{ translate('gettingStarted.description') }}\n </p>\n <div class=\"start-cta\">\n <ScalarButton\n class=\"w-full\"\n @click=\"fetchExampleSpecification\">\n {{ translate('gettingStarted.showExample') }}\n </ScalarButton>\n <ScalarButton\n class=\"w-full\"\n variant=\"outlined\"\n @click=\"$emit('loadSwaggerFile')\">\n {{ translate('gettingStarted.uploadFile') }}\n </ScalarButton>\n </div>\n </div>\n <div class=\"start-row\">\n <div class=\"start-section start-section-integrations\">\n <div class=\"start-h2\">\n {{ translate('gettingStarted.integrations') }}\n </div>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/tree/main/integrations/fastify#readme\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n height=\"16\"\n viewBox=\"0 0 19 16\"\n width=\"19\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"m18.2 3.1.8-2V.9l-4.7 1.3C15.2 1 15 0 15 0s-2.5 1.6-4.3 1.5c-2 0-3.6.8-4 1-1.8 1.2-2.5 3.3-3.2 3.8L0 8.9 2.3 8l-2 2.5c.2.3 1.2 1.6 2.1 1.3l.4-.1 1.6.5-.7-1 .2-.2.9.3-.1-.8.9.3-.1-.8.3-.1 1-3.5 3.7-2.6-.3.7A4 4 0 0 1 8 7l-.6.2c-.5.5-.7.7-.8 2.5a2 2 0 0 1 1 0c1.6.4 2.2 2.3 1.7 2.9l-.7.6H8v.6h-.7v.5l-.2.2c-.7 0-1.4-.6-1.4-.6 0 .5.4 1.3.4 1.3s1.7 1.1 2.7.7c1-.4.7-2.3 2.8-3.2l3.3-.9.8-2.2-1.7.5v-2l2.5-.6.9-2.2-3.4.9v-2l4.2-1.1Z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\" />\n </svg>\n <span>Fastify</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/documentation/integrations/html-js.md#html\"\n target=\"_blank\">\n <svg\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g>\n <path\n d=\"M22.5 1.5h-21A1.5 1.5 0 0 0 0 3v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 6V3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3A1.25 1.25 0 1 1 4.5 5.75 1.25 1.25 0 0 1 3.25 4.5ZM8.5 5.75A1.25 1.25 0 1 1 9.75 4.5 1.25 1.25 0 0 1 8.5 5.75Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 9h-21A1.5 1.5 0 0 0 0 10.5v3A1.5 1.5 0 0 0 1.5 15h21a1.5 1.5 0 0 0 1.5-1.5v-3A1.5 1.5 0 0 0 22.5 9ZM3.25 12a1.25 1.25 0 1 1 1.25 1.25A1.25 1.25 0 0 1 3.25 12Zm5.25 1.25A1.25 1.25 0 1 1 9.75 12a1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n <path\n d=\"M22.5 16.5h-21A1.5 1.5 0 0 0 0 18v3a1.5 1.5 0 0 0 1.5 1.5h21A1.5 1.5 0 0 0 24 21v-3a1.5 1.5 0 0 0-1.5-1.5Zm-19.25 3a1.25 1.25 0 1 1 1.25 1.25 1.25 1.25 0 0 1-1.25-1.25Zm5.25 1.25a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25Z\"\n fill=\"currentColor\" />\n </g>\n </svg>\n <span>CDN</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference/README.md#vuejs\"\n target=\"_blank\">\n <svg\n height=\"170\"\n viewBox=\"0 0 196.3 170\"\n width=\"196.3\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"currentColor\"\n fill-rule=\"nonzero\">\n <polygon\n points=\"39.23 0 0 0 2.9450761 5.1010782 98.16 170.02 196.32 0 157.06 0 98.16 102.01 42.175701 5.0991171\" />\n <polygon\n points=\"75.5 2.009956e-14 0 2.009956e-14 2.94 5.1 78.44871 5.1 98.16 39.26 117.87937 5.1 193.38 5.1 196.325 0 120.82 7.8065636e-15 114.97322 2.009956e-14 98.16 29.037153 81.35 2.009956e-14\" />\n </g>\n </svg>\n <span>Vue</span>\n </a>\n <a\n class=\"start-item\"\n href=\"https://github.com/scalar/scalar/blob/main/packages/api-reference-react/README.md#usage\"\n target=\"_blank\">\n <svg\n height=\"23.3\"\n viewBox=\"0 0 22 23.3\"\n width=\"22\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <g\n fill=\"none\"\n fill-rule=\"evenodd\">\n <circle\n cx=\"11\"\n cy=\"11.6\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n r=\"2\" />\n <g stroke=\"currentColor\">\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(60 11 11.6)\" />\n <ellipse\n cx=\"11\"\n cy=\"11.6\"\n rx=\"11\"\n ry=\"4.2\"\n transform=\"rotate(120 11 11.6)\" />\n </g>\n </g>\n </svg>\n <span>React</span>\n </a>\n </div>\n <div class=\"start-section start-section-colors\">\n <p class=\"start-h2\">\n {{ translate('gettingStarted.theming') }}\n </p>\n <div\n v-for=\"themeId in themeIds\"\n :key=\"themeId\"\n class=\"start-item\"\n :class=\"{ 'start-item-active': themeId === theme }\"\n @click=\"\n $emit('changeTheme', { id: themeId, label: themeLabels[themeId] })\n \">\n {{ themeLabels[themeId] }}\n </div>\n </div>\n </div>\n <p class=\"start-h1\">{{ translate('gettingStarted.features') }}</p>\n <ul class=\"start-ul\">\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.customize') }}</p>\n {{ translate('gettingStarted.customizeDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.testing') }}</p>\n {{ translate('gettingStarted.testingDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.search') }}</p>\n {{ translate('gettingStarted.searchDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.hosting') }}</p>\n {{ translate('gettingStarted.hostingDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">\n {{ translate('gettingStarted.openApiSwagger') }}\n </p>\n {{ translate('gettingStarted.openApiSwaggerDescription') }}\n </li>\n <li>\n <p class=\"start-h3\">{{ translate('gettingStarted.codeSamples') }}</p>\n {{ translate('gettingStarted.codeSamplesDescription') }}\n </li>\n </ul>\n </div>\n</template>\n<style scoped>\n.start {\n padding: 24px;\n display: flex;\n flex-flow: wrap;\n justify-content: space-between;\n position: relative;\n z-index: 0;\n}\n.swagger-editor .start {\n padding-top: 24px;\n}\n.start-h1 {\n font-size: var(--scalar-heading-2);\n margin-top: 0;\n line-height: 1.45;\n margin-bottom: 0;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n position: relative;\n}\n.start-h3 {\n font-size: var(--scalar-paragraph);\n margin-top: 0;\n margin-bottom: 6px;\n display: block;\n line-height: 1.45;\n font-weight: var(--scalar-bold);\n color: var(--scalar-color-1);\n width: 100%;\n}\n.start-h1:not(:first-of-type) {\n margin-top: 24px;\n}\n.start-p {\n font-size: var(--scalar-paragraph);\n color: var(--scalar-color-2);\n line-height: 1.5;\n width: 100%;\n margin-top: 12px;\n}\n.start-ul {\n margin-top: 12px;\n font-size: var(--scalar-paragraph);\n line-height: 1.5;\n padding-left: 0;\n list-style: initial;\n display: flex;\n flex-flow: wrap;\n gap: 24px;\n}\n.start-ul li {\n margin: 0;\n padding: 0;\n list-style: none;\n width: calc(50% - 24px);\n color: var(--scalar-color-2);\n}\n.start-ul li:first-of-type {\n margin-top: 0;\n}\n.start-section {\n width: 100%;\n margin-bottom: 12px;\n display: flex;\n flex-flow: wrap;\n}\n.start-section:last-of-type {\n margin-bottom: 48px;\n}\n.start-h2 {\n background: var(--scalar-background-2);\n border-top-left-radius: var(--scalar-radius-lg);\n border-top-right-radius: var(--scalar-radius-lg);\n border: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-3);\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n width: 100%;\n}\n.start-item {\n align-items: center;\n background: var(--scalar-background-2);\n border-right: 1px solid var(--scalar-border-color);\n border-bottom: 1px solid var(--scalar-border-color);\n color: var(--scalar-color-1);\n cursor: pointer;\n display: flex;\n flex: 1;\n font-size: var(--scalar-mini);\n font-weight: var(--scalar-semibold);\n padding: 9px;\n text-transform: capitalize;\n user-select: none;\n}\n.start-section-integrations .start-item:first-of-type {\n border-bottom-left-radius: var(--scalar-radius-lg);\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-integrations .start-item:last-of-type {\n border-bottom-right-radius: var(--scalar-radius-lg);\n}\n.start-section-colors .start-item {\n min-width: 33.33%;\n}\n.start-section-colors .start-item:nth-child(3n + 2) {\n border-left: 1px solid var(--scalar-border-color);\n}\n.start-section-colors .start-item:last-of-type,\n.start-section-colors .start-item-active:last-of-type::before {\n border-radius: 0 0 var(--scalar-radius-lg) var(--scalar-radius-lg);\n}\n.start-item:empty {\n pointer-events: none;\n}\n.start-item svg {\n width: 14px;\n height: 14px;\n margin-right: 6px;\n}\n.start-item:hover {\n background: var(--scalar-background-3);\n}\n.start-item-active {\n z-index: 10;\n position: relative;\n color: var(--scalar-color-1);\n}\n.start-item-active::before {\n border: 1px solid var(--scalar-color-1);\n content: '';\n inset: -1px -1px -1px -1px;\n pointer-events: none;\n position: absolute;\n}\n.start-section-color .start-item {\n text-transform: capitalize;\n}\n.start-cta {\n display: flex;\n gap: 12px;\n width: 100%;\n margin-top: 24px;\n margin-bottom: 0;\n}\n.start-row {\n width: 100%;\n margin-top: 12px;\n overflow: hidden;\n}\n.start-hero-copy {\n background: var(--scalar-background-2);\n padding: 12px;\n border-radius: var(--scalar-radius-lg);\n}\n.start-p-small {\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-mini);\n color: var(--scalar-color-2);\n margin-bottom: 12px;\n line-height: 1.4;\n}\n.start-cta {\n margin-bottom: 12px;\n width: fit-content;\n white-space: nowrap;\n}\n.start-copy {\n padding: 76px 48px 48px 48px;\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n text-align: center;\n}\n.start-logo {\n color: var(--scalar-color-1);\n margin-bottom: 24px;\n width: 72px;\n aspect-ratio: 1;\n position: relative;\n box-shadow: var(--scalar-shadow-2);\n border-radius: 50%;\n}\n.start-logo:before {\n content: '';\n width: 300%;\n aspect-ratio: 1;\n left: -100%;\n top: -100%;\n position: absolute;\n z-index: -1;\n border-radius: 50%;\n background-size: 24px 24px;\n box-shadow:\n inset 0 0 50px var(--scalar-background-1),\n inset 0 0 50px var(--scalar-background-1);\n background-image:\n linear-gradient(to right, var(--scalar-border-color) 1px, transparent 1px),\n linear-gradient(to bottom, var(--scalar-border-color) 1px, transparent 1px);\n}\n.start-logo svg {\n width: 100%;\n height: auto;\n background: var(--scalar-background-1);\n padding: 3px;\n border-radius: 50%;\n position: relative;\n}\n@media screen and (max-width: 600px) {\n .start-section-colors .start-item,\n .start-item {\n width: 100%;\n border-radius: 0;\n border-right: none;\n border-top: 1px solid var(--scalar-border-color);\n }\n .start-item:empty {\n display: none;\n }\n .start-h2 {\n border-bottom: none;\n }\n .start li {\n width: 100%;\n }\n .start-copy {\n padding: 48px 0 24px 0;\n }\n}\n@media screen and (max-width: 1000px) {\n .start {\n padding: 0;\n overflow: auto;\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASA,MAAM,QAAQ;EAOd,MAAM,EAAE,cAAc,iBAAgB;EAEtC,MAAM,WAAsB;GAC1B;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACF;EAEA,eAAe,4BAA4B;AAKzC,SAAM,iBAAiB,OAJN,MAAM,MACrB,8DACF,EAEsC,MAAM,CAAA;;;uBAI5C,mBAyLM,OAzLN,YAyLM;IAxLJ,mBAgCM,OAhCN,YAgCM;+BA/BJ,mBAWM,OAAA,EAXD,OAAM,cAAY,EAAA,CACrB,mBASM,OAAA;MARJ,QAAO;MACP,SAAQ;MACR,OAAM;MACN,OAAM;SACN,mBAGwB,QAAA;MAFtB,GAAE;MACF,MAAK;MACL,aAAU;;KAGhB,mBAEK,MAFL,YAEK,gBADA,MAAA,UAAS,CAAA,+BAAA,CAAA,EAAA,EAAA;KAEd,mBAEI,KAFJ,YAEI,gBADC,MAAA,UAAS,CAAA,6BAAA,CAAA,EAAA,EAAA;KAEd,mBAYM,OAZN,YAYM,CAXJ,YAIe,MAAA,aAAA,EAAA;MAHb,OAAM;MACL,SAAO;;6BACqC,CAAA,gBAAA,gBAA1C,MAAA,UAAS,CAAA,6BAAA,CAAA,EAAA,EAAA,CAAA,CAAA;;SAEd,YAKe,MAAA,aAAA,EAAA;MAJb,OAAM;MACN,SAAQ;MACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAEA,KAAAA,MAAK,kBAAA;;6BAC+B,CAAA,gBAAA,gBAAzC,MAAA,UAAS,CAAA,4BAAA,CAAA,EAAA,EAAA,CAAA,CAAA;;;;IAIlB,mBAyHM,OAzHN,YAyHM,CAxHJ,mBAwGM,OAxGN,YAwGM,CAvGJ,mBAEM,OAFN,YAEM,gBADD,MAAA,UAAS,CAAA,8BAAA,CAAA,EAAA,EAAA,EAAA,OAAA,OAAA,OAAA,KAAA,kBAAA,y+GAAA,EAAA,EAAA,CAAA,EAuGhB,mBAcM,OAdN,YAcM,CAbJ,mBAEI,KAFJ,aAEI,gBADC,MAAA,UAAS,CAAA,yBAAA,CAAA,EAAA,EAAA,GAAA,WAAA,EAEd,mBASM,UAAA,MAAA,WARc,WAAX,YAAO;YADhB,mBASM,OAAA;MAPH,KAAK;MACN,OAAK,eAAA,CAAC,cAAY,EAAA,qBACa,YAAY,QAAA,OAAK,CAAA,CAAA;MAC/C,UAAK,WAAeA,KAAAA,MAAK,eAAA;OAAA,IAAsB;OAAO,OAAS,MAAA,YAAW,CAAC;OAAO,CAAA;wBAGhF,MAAA,YAAW,CAAC,SAAO,EAAA,IAAA,YAAA;;IAI5B,mBAAkE,KAAlE,aAAkE,gBAA3C,MAAA,UAAS,CAAA,0BAAA,CAAA,EAAA,EAAA;IAChC,mBA2BK,MA3BL,aA2BK;KA1BH,mBAGK,MAAA,MAAA,CAFH,mBAAmE,KAAnE,aAAmE,gBAA5C,MAAA,UAAS,CAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,gBAAmC,MACnE,gBAAG,MAAA,UAAS,CAAA,sCAAA,CAAA,EAAA,EAAA,CAAA,CAAA;KAEd,mBAGK,MAAA,MAAA,CAFH,mBAAiE,KAAjE,aAAiE,gBAA1C,MAAA,UAAS,CAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,gBAAiC,MACjE,gBAAG,MAAA,UAAS,CAAA,oCAAA,CAAA,EAAA,EAAA,CAAA,CAAA;KAEd,mBAGK,MAAA,MAAA,CAFH,mBAAgE,KAAhE,aAAgE,gBAAzC,MAAA,UAAS,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,gBAAgC,MAChE,gBAAG,MAAA,UAAS,CAAA,mCAAA,CAAA,EAAA,EAAA,CAAA,CAAA;KAEd,mBAGK,MAAA,MAAA,CAFH,mBAAiE,KAAjE,aAAiE,gBAA1C,MAAA,UAAS,CAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,gBAAiC,MACjE,gBAAG,MAAA,UAAS,CAAA,oCAAA,CAAA,EAAA,EAAA,CAAA,CAAA;KAEd,mBAKK,MAAA,MAAA,CAJH,mBAEI,KAFJ,aAEI,gBADC,MAAA,UAAS,CAAA,gCAAA,CAAA,EAAA,EAAA,EAAA,gBACV,MACJ,gBAAG,MAAA,UAAS,CAAA,2CAAA,CAAA,EAAA,EAAA,CAAA,CAAA;KAEd,mBAGK,MAAA,MAAA,CAFH,mBAAqE,KAArE,aAAqE,gBAA9C,MAAA,UAAS,CAAA,6BAAA,CAAA,EAAA,EAAA,EAAA,gBAAqC,MACrE,gBAAG,MAAA,UAAS,CAAA,wCAAA,CAAA,EAAA,EAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"MobileHeader.vue.d.ts","sourceRoot":"","sources":["../../src/components/MobileHeader.vue"],"names":[],"mappings":"AAgFA,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,OAAO,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;CACrB,CAAC;AAQF,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,IAAI,KAAK,CAAA;IACjB,OAAO,CAAC,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAA;IAClD,MAAM,CAAC,IAAI,KAAK,CAAA;CACjB,CAAC;AAuHF,QAAA,MAAM,UAAU;;;;kFAGd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"MobileHeader.vue.d.ts","sourceRoot":"","sources":["../../src/components/MobileHeader.vue"],"names":[],"mappings":"AAyFA,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,OAAO,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;CACrB,CAAC;AASF,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,IAAI,KAAK,CAAA;IACjB,OAAO,CAAC,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAA;IAClD,MAAM,CAAC,IAAI,KAAK,CAAA;CACjB,CAAC;AAgIF,QAAA,MAAM,UAAU;;;;kFAGd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MobileHeader.vue.js","names":[],"sources":["../../src/components/MobileHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconButton } from '@scalar/components/icon-button'\nimport { ScalarIconList, ScalarIconX } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\n\ndefineProps<{\n breadcrumb: string\n isSidebarOpen: boolean\n showSidebar: boolean\n}>()\n\nconst emit = defineEmits<{\n (e: 'toggleSidebar'): void\n}>()\n\ndefineSlots<{\n actions?(): never\n sidebar?(props: { sidebarClasses: string }): never\n search?(): never\n}>()\n\nconst variants = cva({\n base: 'lg:hidden items-center bg-b-1 sticky top-(--scalar-custom-header-height,0) z-10 [grid-area:header]',\n variants: {\n open: {\n true: 'h-(--refs-sidebar-height) custom-scrollbar flex flex-col z-50',\n },\n },\n})\n</script>\n<template>\n <!-- Always render the desktop sidebar slot and let CSS handle breakpoints -->\n <slot\n v-bind=\"{\n sidebarClasses:\n 'hidden lg:flex sticky top-(--refs-header-height) h-(--refs-sidebar-height) w-(--refs-sidebar-width) [grid-area:navigation]',\n }\"\n name=\"sidebar\" />\n <div\n class=\"t-doc__header\"\n :class=\"variants({ open: isSidebarOpen })\">\n <header\n class=\"flex h-(--scalar-header-height) w-full items-center border-b bg-inherit px-2\">\n <ScalarIconButton\n v-if=\"showSidebar\"\n :icon=\"isSidebarOpen ? ScalarIconX : ScalarIconList\"\n :label=\"isSidebarOpen ? 'Close Menu' : 'Open Menu'\"\n size=\"md\"\n @click=\"emit('toggleSidebar')\" />\n\n <span\n v-if=\"showSidebar\"\n class=\"flex-1 text-sm font-medium whitespace-nowrap\">\n {{ breadcrumb }}\n </span>\n <slot\n v-else\n name=\"search\" />\n\n <div class=\"flex h-6 items-center gap-1 pl-1\">\n <slot name=\"actions\" />\n </div>\n </header>\n <!-- In mobile layout, render the sidebar slot into the header panel -->\n <slot\n v-if=\"isSidebarOpen\"\n v-bind=\"{\n sidebarClasses:\n 'overflow-y-auto custom-scrollbar min-h-0 flex-1 w-full border-none',\n }\"\n name=\"sidebar\" />\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"MobileHeader.vue.js","names":[],"sources":["../../src/components/MobileHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconButton } from '@scalar/components/icon-button'\nimport { ScalarIconList, ScalarIconX } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n breadcrumb: string\n isSidebarOpen: boolean\n showSidebar: boolean\n}>()\nconst { translate } = useLocalization()\n\nconst emit = defineEmits<{\n (e: 'toggleSidebar'): void\n}>()\n\ndefineSlots<{\n actions?(): never\n sidebar?(props: { sidebarClasses: string }): never\n search?(): never\n}>()\n\nconst variants = cva({\n base: 'lg:hidden items-center bg-b-1 sticky top-(--scalar-custom-header-height,0) z-10 [grid-area:header]',\n variants: {\n open: {\n true: 'h-(--refs-sidebar-height) custom-scrollbar flex flex-col z-50',\n },\n },\n})\n</script>\n<template>\n <!-- Always render the desktop sidebar slot and let CSS handle breakpoints -->\n <slot\n v-bind=\"{\n sidebarClasses:\n 'hidden lg:flex sticky top-(--refs-header-height) h-(--refs-sidebar-height) w-(--refs-sidebar-width) [grid-area:navigation]',\n }\"\n name=\"sidebar\" />\n <div\n class=\"t-doc__header\"\n :class=\"variants({ open: isSidebarOpen })\">\n <header\n class=\"flex h-(--scalar-header-height) w-full items-center border-b bg-inherit px-2\">\n <ScalarIconButton\n v-if=\"showSidebar\"\n :icon=\"isSidebarOpen ? ScalarIconX : ScalarIconList\"\n :label=\"\n isSidebarOpen\n ? translate('navigation.closeMenu')\n : translate('navigation.openMenu')\n \"\n size=\"md\"\n @click=\"emit('toggleSidebar')\" />\n\n <span\n v-if=\"showSidebar\"\n class=\"flex-1 text-sm font-medium whitespace-nowrap\">\n {{ breadcrumb }}\n </span>\n <slot\n v-else\n name=\"search\" />\n\n <div class=\"flex h-6 items-center gap-1 pl-1\">\n <slot name=\"actions\" />\n </div>\n </header>\n <!-- In mobile layout, render the sidebar slot into the header panel -->\n <slot\n v-if=\"isSidebarOpen\"\n v-bind=\"{\n sidebarClasses:\n 'overflow-y-auto custom-scrollbar min-h-0 flex-1 w-full border-none',\n }\"\n name=\"sidebar\" />\n </div>\n</template>\n"],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { useLocalization } from "../features/localization/use-localization.js";
1
2
  import { Fragment, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, guardReactiveProps, mergeProps, normalizeClass, normalizeProps, openBlock, renderSlot, toDisplayString, unref } from "vue";
2
3
  import { ScalarIconList, ScalarIconX } from "@scalar/icons";
3
4
  import { ScalarIconButton } from "@scalar/components/icon-button";
@@ -18,6 +19,7 @@ var MobileHeader_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
18
19
  },
19
20
  emits: ["toggleSidebar"],
20
21
  setup(__props, { emit: __emit }) {
22
+ const { translate } = useLocalization();
21
23
  const emit = __emit;
22
24
  const variants = cva({
23
25
  base: "lg:hidden items-center bg-b-1 sticky top-(--scalar-custom-header-height,0) z-10 [grid-area:header]",
@@ -28,7 +30,7 @@ var MobileHeader_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
28
30
  __props.showSidebar ? (openBlock(), createBlock(unref(ScalarIconButton), {
29
31
  key: 0,
30
32
  icon: __props.isSidebarOpen ? unref(ScalarIconX) : unref(ScalarIconList),
31
- label: __props.isSidebarOpen ? "Close Menu" : "Open Menu",
33
+ label: __props.isSidebarOpen ? unref(translate)("navigation.closeMenu") : unref(translate)("navigation.openMenu"),
32
34
  size: "md",
33
35
  onClick: _cache[0] || (_cache[0] = ($event) => emit("toggleSidebar"))
34
36
  }, null, 8, ["icon", "label"])) : createCommentVNode("", true),
@@ -1 +1 @@
1
- {"version":3,"file":"MobileHeader.vue.script.js","names":[],"sources":["../../src/components/MobileHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconButton } from '@scalar/components/icon-button'\nimport { ScalarIconList, ScalarIconX } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\n\ndefineProps<{\n breadcrumb: string\n isSidebarOpen: boolean\n showSidebar: boolean\n}>()\n\nconst emit = defineEmits<{\n (e: 'toggleSidebar'): void\n}>()\n\ndefineSlots<{\n actions?(): never\n sidebar?(props: { sidebarClasses: string }): never\n search?(): never\n}>()\n\nconst variants = cva({\n base: 'lg:hidden items-center bg-b-1 sticky top-(--scalar-custom-header-height,0) z-10 [grid-area:header]',\n variants: {\n open: {\n true: 'h-(--refs-sidebar-height) custom-scrollbar flex flex-col z-50',\n },\n },\n})\n</script>\n<template>\n <!-- Always render the desktop sidebar slot and let CSS handle breakpoints -->\n <slot\n v-bind=\"{\n sidebarClasses:\n 'hidden lg:flex sticky top-(--refs-header-height) h-(--refs-sidebar-height) w-(--refs-sidebar-width) [grid-area:navigation]',\n }\"\n name=\"sidebar\" />\n <div\n class=\"t-doc__header\"\n :class=\"variants({ open: isSidebarOpen })\">\n <header\n class=\"flex h-(--scalar-header-height) w-full items-center border-b bg-inherit px-2\">\n <ScalarIconButton\n v-if=\"showSidebar\"\n :icon=\"isSidebarOpen ? ScalarIconX : ScalarIconList\"\n :label=\"isSidebarOpen ? 'Close Menu' : 'Open Menu'\"\n size=\"md\"\n @click=\"emit('toggleSidebar')\" />\n\n <span\n v-if=\"showSidebar\"\n class=\"flex-1 text-sm font-medium whitespace-nowrap\">\n {{ breadcrumb }}\n </span>\n <slot\n v-else\n name=\"search\" />\n\n <div class=\"flex h-6 items-center gap-1 pl-1\">\n <slot name=\"actions\" />\n </div>\n </header>\n <!-- In mobile layout, render the sidebar slot into the header panel -->\n <slot\n v-if=\"isSidebarOpen\"\n v-bind=\"{\n sidebarClasses:\n 'overflow-y-auto custom-scrollbar min-h-0 flex-1 w-full border-none',\n }\"\n name=\"sidebar\" />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAWA,MAAM,OAAO;EAUb,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,MAAM,EACJ,MAAM,iEACP,EACF;GACF,CAAA;;2DAIC,WAKmB,KAAA,QAAA,WAAA,eAAA,mBAJT,EAAA,gBAAA,8HAGP,CAAA,CAAA,CAAA,EAEH,mBAiCM,OAAA,EAhCJ,OAAK,eAAA,CAAC,iBACE,MAAA,SAAQ,CAAA,EAAA,MAAS,QAAA,eAAa,CAAA,CAAA,CAAA,EAAA,EAAA,CACtC,mBAqBS,UArBT,YAqBS;IAlBC,QAAA,eAAA,WAAA,EADR,YAKmC,MAAA,iBAAA,EAAA;;KAHhC,MAAM,QAAA,gBAAgB,MAAA,YAAW,GAAG,MAAA,eAAc;KAClD,OAAO,QAAA,gBAAa,eAAA;KACrB,MAAK;KACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,gBAAA;;IAGN,QAAA,eAAA,WAAA,EADR,mBAIO,QAJP,YAIO,gBADF,QAAA,WAAU,EAAA,EAAA,IAEf,WAEkB,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA;IAElB,mBAEM,OAFN,YAEM,CADJ,WAAuB,KAAA,QAAA,UAAA,CAAA,CAAA;OAKnB,QAAA,gBADR,WAMmB,KAAA,QAAA,WAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAJT,EAAA,gBAAA,sEAGP,CAAA,CAAA,CAAA,GAAA,mBAAA,IAAA,KAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA"}
1
+ {"version":3,"file":"MobileHeader.vue.script.js","names":[],"sources":["../../src/components/MobileHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconButton } from '@scalar/components/icon-button'\nimport { ScalarIconList, ScalarIconX } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n breadcrumb: string\n isSidebarOpen: boolean\n showSidebar: boolean\n}>()\nconst { translate } = useLocalization()\n\nconst emit = defineEmits<{\n (e: 'toggleSidebar'): void\n}>()\n\ndefineSlots<{\n actions?(): never\n sidebar?(props: { sidebarClasses: string }): never\n search?(): never\n}>()\n\nconst variants = cva({\n base: 'lg:hidden items-center bg-b-1 sticky top-(--scalar-custom-header-height,0) z-10 [grid-area:header]',\n variants: {\n open: {\n true: 'h-(--refs-sidebar-height) custom-scrollbar flex flex-col z-50',\n },\n },\n})\n</script>\n<template>\n <!-- Always render the desktop sidebar slot and let CSS handle breakpoints -->\n <slot\n v-bind=\"{\n sidebarClasses:\n 'hidden lg:flex sticky top-(--refs-header-height) h-(--refs-sidebar-height) w-(--refs-sidebar-width) [grid-area:navigation]',\n }\"\n name=\"sidebar\" />\n <div\n class=\"t-doc__header\"\n :class=\"variants({ open: isSidebarOpen })\">\n <header\n class=\"flex h-(--scalar-header-height) w-full items-center border-b bg-inherit px-2\">\n <ScalarIconButton\n v-if=\"showSidebar\"\n :icon=\"isSidebarOpen ? ScalarIconX : ScalarIconList\"\n :label=\"\n isSidebarOpen\n ? translate('navigation.closeMenu')\n : translate('navigation.openMenu')\n \"\n size=\"md\"\n @click=\"emit('toggleSidebar')\" />\n\n <span\n v-if=\"showSidebar\"\n class=\"flex-1 text-sm font-medium whitespace-nowrap\">\n {{ breadcrumb }}\n </span>\n <slot\n v-else\n name=\"search\" />\n\n <div class=\"flex h-6 items-center gap-1 pl-1\">\n <slot name=\"actions\" />\n </div>\n </header>\n <!-- In mobile layout, render the sidebar slot into the header panel -->\n <slot\n v-if=\"isSidebarOpen\"\n v-bind=\"{\n sidebarClasses:\n 'overflow-y-auto custom-scrollbar min-h-0 flex-1 w-full border-none',\n }\"\n name=\"sidebar\" />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,EAAE,cAAc,iBAAgB;EAEtC,MAAM,OAAO;EAUb,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,MAAM,EACJ,MAAM,iEACP,EACF;GACF,CAAA;;2DAIC,WAKmB,KAAA,QAAA,WAAA,eAAA,mBAJT,EAAA,gBAAA,8HAGP,CAAA,CAAA,CAAA,EAEH,mBAqCM,OAAA,EApCJ,OAAK,eAAA,CAAC,iBACE,MAAA,SAAQ,CAAA,EAAA,MAAS,QAAA,eAAa,CAAA,CAAA,CAAA,EAAA,EAAA,CACtC,mBAyBS,UAzBT,YAyBS;IAtBC,QAAA,eAAA,WAAA,EADR,YASmC,MAAA,iBAAA,EAAA;;KAPhC,MAAM,QAAA,gBAAgB,MAAA,YAAW,GAAG,MAAA,eAAc;KAClD,OAAkB,QAAA,gBAA4B,MAAA,UAAS,CAAA,uBAAA,GAAuC,MAAA,UAAS,CAAA,sBAAA;KAKxG,MAAK;KACJ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,gBAAA;;IAGN,QAAA,eAAA,WAAA,EADR,mBAIO,QAJP,YAIO,gBADF,QAAA,WAAU,EAAA,EAAA,IAEf,WAEkB,KAAA,QAAA,UAAA,EAAA,KAAA,GAAA,CAAA;IAElB,mBAEM,OAFN,YAEM,CADJ,WAAuB,KAAA,QAAA,UAAA,CAAA,CAAA;OAKnB,QAAA,gBADR,WAMmB,KAAA,QAAA,WAAA,eAAA,WAAA,EAAA,KAAA,GAAA,EAJT,EAAA,gBAAA,sEAGP,CAAA,CAAA,CAAA,GAAA,mBAAA,IAAA,KAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/OperationsList/OperationsList.vue"],"names":[],"mappings":"AAuEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAA;AAO9E,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,YAAY,CAAA;IACjB,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAA;CACnC,CAAC;AAoHF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"OperationsList.vue.d.ts","sourceRoot":"","sources":["../../../src/components/OperationsList/OperationsList.vue"],"names":[],"mappings":"AA6EA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAA;AAQ9E,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,YAAY,CAAA;IACjB,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAA;CACnC,CAAC;AA4HF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -2,7 +2,7 @@ import _plugin_vue_export_helper_default from "../../_virtual/_plugin-vue_export
2
2
  import OperationsList_vue_vue_type_script_setup_true_lang_default from "./OperationsList.vue.script.js";
3
3
  /* empty css */
4
4
  //#region src/components/OperationsList/OperationsList.vue
5
- var OperationsList_default = /* @__PURE__ */ _plugin_vue_export_helper_default(OperationsList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-b8cb97c7"]]);
5
+ var OperationsList_default = /* @__PURE__ */ _plugin_vue_export_helper_default(OperationsList_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-0315c99b"]]);
6
6
  //#endregion
7
7
  export { OperationsList_default as default };
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsList.vue.js","names":[],"sources":["../../../src/components/OperationsList/OperationsList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCard,\n ScalarCardHeader,\n ScalarCardSection,\n} from '@scalar/components/card'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\nimport { computed } from 'vue'\n\nimport ScreenReader from '@/components/ScreenReader.vue'\n\nimport OperationsListItem from './OperationsListItem.vue'\n\nconst { tag } = defineProps<{\n tag: TraversedTag\n eventBus: WorkspaceEventBus | null\n}>()\n\nconst operationsAndWebhooks = computed(() => {\n return (\n tag.children?.filter(\n (child) => child.type === 'operation' || child.type === 'webhook',\n ) ?? []\n )\n})\n</script>\n\n<template>\n <template v-if=\"tag.children && tag.children?.length > 0\">\n <ScalarCard class=\"endpoints-card\">\n <ScalarCardHeader muted>\n <ScreenReader>{{ tag.title }}</ScreenReader>\n {{ tag.isWebhooks ? 'Webhooks' : 'Operations' }}\n </ScalarCardHeader>\n <ScalarCardSection class=\"custom-scroll max-h-[60vh]\">\n <ul\n :aria-label=\"`${tag.title} endpoints`\"\n class=\"endpoints\">\n <OperationsListItem\n v-for=\"operationOrWebhook in operationsAndWebhooks\"\n :key=\"operationOrWebhook.id\"\n :eventBus=\"eventBus\"\n :operation=\"operationOrWebhook\" />\n </ul>\n </ScalarCardSection>\n </ScalarCard>\n </template>\n</template>\n\n<style scoped>\n.endpoints-card {\n position: sticky;\n top: calc(var(--refs-viewport-offset) + 24px);\n font-size: var(--scalar-font-size-3);\n}\n.endpoints {\n overflow: auto;\n background: var(--scalar-background-2);\n padding: 10px 12px;\n width: 100%;\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"OperationsList.vue.js","names":[],"sources":["../../../src/components/OperationsList/OperationsList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCard,\n ScalarCardHeader,\n ScalarCardSection,\n} from '@scalar/components/card'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\nimport { computed } from 'vue'\n\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport { useLocalization } from '@/features/localization'\n\nimport OperationsListItem from './OperationsListItem.vue'\n\nconst { tag } = defineProps<{\n tag: TraversedTag\n eventBus: WorkspaceEventBus | null\n}>()\nconst { translate } = useLocalization()\n\nconst operationsAndWebhooks = computed(() => {\n return (\n tag.children?.filter(\n (child) => child.type === 'operation' || child.type === 'webhook',\n ) ?? []\n )\n})\n</script>\n\n<template>\n <template v-if=\"tag.children && tag.children?.length > 0\">\n <ScalarCard class=\"endpoints-card\">\n <ScalarCardHeader muted>\n <ScreenReader>{{ tag.title }}</ScreenReader>\n {{\n tag.isWebhooks\n ? translate('navigation.webhooks')\n : translate('navigation.operations')\n }}\n </ScalarCardHeader>\n <ScalarCardSection class=\"custom-scroll max-h-[60vh]\">\n <ul\n :aria-label=\"translate('navigation.endpoints', { name: tag.title })\"\n class=\"endpoints\">\n <OperationsListItem\n v-for=\"operationOrWebhook in operationsAndWebhooks\"\n :key=\"operationOrWebhook.id\"\n :eventBus=\"eventBus\"\n :operation=\"operationOrWebhook\" />\n </ul>\n </ScalarCardSection>\n </ScalarCard>\n </template>\n</template>\n\n<style scoped>\n.endpoints-card {\n position: sticky;\n top: calc(var(--refs-viewport-offset) + 24px);\n font-size: var(--scalar-font-size-3);\n}\n.endpoints {\n overflow: auto;\n background: var(--scalar-background-2);\n padding: 10px 12px;\n width: 100%;\n}\n</style>\n"],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { useLocalization } from "../../features/localization/use-localization.js";
1
2
  import ScreenReader_default from "../ScreenReader.vue.js";
2
3
  import OperationsListItem_default from "./OperationsListItem.vue.js";
3
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, openBlock, renderList, toDisplayString, unref, withCtx } from "vue";
@@ -11,6 +12,7 @@ var OperationsList_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
11
12
  eventBus: {}
12
13
  },
13
14
  setup(__props) {
15
+ const { translate } = useLocalization();
14
16
  const operationsAndWebhooks = computed(() => {
15
17
  return __props.tag.children?.filter((child) => child.type === "operation" || child.type === "webhook") ?? [];
16
18
  });
@@ -23,11 +25,11 @@ var OperationsList_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
23
25
  default: withCtx(() => [createVNode(ScreenReader_default, null, {
24
26
  default: withCtx(() => [createTextVNode(toDisplayString(__props.tag.title), 1)]),
25
27
  _: 1
26
- }), createTextVNode(" " + toDisplayString(__props.tag.isWebhooks ? "Webhooks" : "Operations"), 1)]),
28
+ }), createTextVNode(" " + toDisplayString(__props.tag.isWebhooks ? unref(translate)("navigation.webhooks") : unref(translate)("navigation.operations")), 1)]),
27
29
  _: 1
28
30
  }), createVNode(unref(ScalarCardSection), { class: "custom-scroll max-h-[60vh]" }, {
29
31
  default: withCtx(() => [createElementVNode("ul", {
30
- "aria-label": `${__props.tag.title} endpoints`,
32
+ "aria-label": unref(translate)("navigation.endpoints", { name: __props.tag.title }),
31
33
  class: "endpoints"
32
34
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(operationsAndWebhooks.value, (operationOrWebhook) => {
33
35
  return openBlock(), createBlock(OperationsListItem_default, {
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsList.vue.script.js","names":[],"sources":["../../../src/components/OperationsList/OperationsList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCard,\n ScalarCardHeader,\n ScalarCardSection,\n} from '@scalar/components/card'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\nimport { computed } from 'vue'\n\nimport ScreenReader from '@/components/ScreenReader.vue'\n\nimport OperationsListItem from './OperationsListItem.vue'\n\nconst { tag } = defineProps<{\n tag: TraversedTag\n eventBus: WorkspaceEventBus | null\n}>()\n\nconst operationsAndWebhooks = computed(() => {\n return (\n tag.children?.filter(\n (child) => child.type === 'operation' || child.type === 'webhook',\n ) ?? []\n )\n})\n</script>\n\n<template>\n <template v-if=\"tag.children && tag.children?.length > 0\">\n <ScalarCard class=\"endpoints-card\">\n <ScalarCardHeader muted>\n <ScreenReader>{{ tag.title }}</ScreenReader>\n {{ tag.isWebhooks ? 'Webhooks' : 'Operations' }}\n </ScalarCardHeader>\n <ScalarCardSection class=\"custom-scroll max-h-[60vh]\">\n <ul\n :aria-label=\"`${tag.title} endpoints`\"\n class=\"endpoints\">\n <OperationsListItem\n v-for=\"operationOrWebhook in operationsAndWebhooks\"\n :key=\"operationOrWebhook.id\"\n :eventBus=\"eventBus\"\n :operation=\"operationOrWebhook\" />\n </ul>\n </ScalarCardSection>\n </ScalarCard>\n </template>\n</template>\n\n<style scoped>\n.endpoints-card {\n position: sticky;\n top: calc(var(--refs-viewport-offset) + 24px);\n font-size: var(--scalar-font-size-3);\n}\n.endpoints {\n overflow: auto;\n background: var(--scalar-background-2);\n padding: 10px 12px;\n width: 100%;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;EAmBA,MAAM,wBAAwB,eAAe;AAC3C,UACE,QAAA,IAAI,UAAU,QACX,UAAU,MAAM,SAAS,eAAe,MAAM,SAAS,UACzD,IAAI,EAAC;IAET;;UAIiB,QAAA,IAAI,YAAY,QAAA,IAAI,UAAU,SAAM,KAAA,WAAA,EAClD,YAgBa,MAAA,WAAA,EAAA;;IAhBD,OAAM;;2BAIG,CAHnB,YAGmB,MAAA,iBAAA,EAAA,EAHD,OAAA,IAAK,EAAA;4BACuB,CAA5C,YAA4C,sBAAA,MAAA;6BAAf,CAAA,gBAAA,gBAAZ,QAAA,IAAI,MAAK,EAAA,EAAA,CAAA,CAAA;;yBAAkB,MAC5C,gBAAG,QAAA,IAAI,aAAU,aAAA,aAAA,EAAA,EAAA,CAAA,CAAA;;QAEnB,YAUoB,MAAA,kBAAA,EAAA,EAVD,OAAM,8BAA4B,EAAA;4BAS9C,CARL,mBAQK,MAAA;MAPF,cAAU,GAAK,QAAA,IAAI,MAAK;MACzB,OAAM;2BACN,mBAIoC,UAAA,MAAA,WAHL,sBAAA,QAAtB,uBAAkB;0BAD3B,YAIoC,4BAAA;OAFjC,KAAK,mBAAmB;OACxB,UAAU,QAAA;OACV,WAAW"}
1
+ {"version":3,"file":"OperationsList.vue.script.js","names":[],"sources":["../../../src/components/OperationsList/OperationsList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n ScalarCard,\n ScalarCardHeader,\n ScalarCardSection,\n} from '@scalar/components/card'\nimport type { WorkspaceEventBus } from '@scalar/workspace-store/events'\nimport type { TraversedTag } from '@scalar/workspace-store/schemas/navigation'\nimport { computed } from 'vue'\n\nimport ScreenReader from '@/components/ScreenReader.vue'\nimport { useLocalization } from '@/features/localization'\n\nimport OperationsListItem from './OperationsListItem.vue'\n\nconst { tag } = defineProps<{\n tag: TraversedTag\n eventBus: WorkspaceEventBus | null\n}>()\nconst { translate } = useLocalization()\n\nconst operationsAndWebhooks = computed(() => {\n return (\n tag.children?.filter(\n (child) => child.type === 'operation' || child.type === 'webhook',\n ) ?? []\n )\n})\n</script>\n\n<template>\n <template v-if=\"tag.children && tag.children?.length > 0\">\n <ScalarCard class=\"endpoints-card\">\n <ScalarCardHeader muted>\n <ScreenReader>{{ tag.title }}</ScreenReader>\n {{\n tag.isWebhooks\n ? translate('navigation.webhooks')\n : translate('navigation.operations')\n }}\n </ScalarCardHeader>\n <ScalarCardSection class=\"custom-scroll max-h-[60vh]\">\n <ul\n :aria-label=\"translate('navigation.endpoints', { name: tag.title })\"\n class=\"endpoints\">\n <OperationsListItem\n v-for=\"operationOrWebhook in operationsAndWebhooks\"\n :key=\"operationOrWebhook.id\"\n :eventBus=\"eventBus\"\n :operation=\"operationOrWebhook\" />\n </ul>\n </ScalarCardSection>\n </ScalarCard>\n </template>\n</template>\n\n<style scoped>\n.endpoints-card {\n position: sticky;\n top: calc(var(--refs-viewport-offset) + 24px);\n font-size: var(--scalar-font-size-3);\n}\n.endpoints {\n overflow: auto;\n background: var(--scalar-background-2);\n padding: 10px 12px;\n width: 100%;\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;EAmBA,MAAM,EAAE,cAAc,iBAAgB;EAEtC,MAAM,wBAAwB,eAAe;AAC3C,UACE,QAAA,IAAI,UAAU,QACX,UAAU,MAAM,SAAS,eAAe,MAAM,SAAS,UACzD,IAAI,EAAC;IAET;;UAIiB,QAAA,IAAI,YAAY,QAAA,IAAI,UAAU,SAAM,KAAA,WAAA,EAClD,YAoBa,MAAA,WAAA,EAAA;;IApBD,OAAM;;2BAQG,CAPnB,YAOmB,MAAA,iBAAA,EAAA,EAPD,OAAA,IAAK,EAAA;4BACuB,CAA5C,YAA4C,sBAAA,MAAA;6BAAf,CAAA,gBAAA,gBAAZ,QAAA,IAAI,MAAK,EAAA,EAAA,CAAA,CAAA;;yBAAkB,MAC5C,gBACE,QAAA,IAAI,aAAyB,MAAA,UAAS,CAAA,sBAAA,GAAsC,MAAA,UAAS,CAAA,wBAAA,CAAA,EAAA,EAAA,CAAA,CAAA;;QAKzF,YAUoB,MAAA,kBAAA,EAAA,EAVD,OAAM,8BAA4B,EAAA;4BAS9C,CARL,mBAQK,MAAA;MAPF,cAAY,MAAA,UAAS,CAAA,wBAAA,EAAA,MAAiC,QAAA,IAAI,OAAK,CAAA;MAChE,OAAM;2BACN,mBAIoC,UAAA,MAAA,WAHL,sBAAA,QAAtB,uBAAkB;0BAD3B,YAIoC,4BAAA;OAFjC,KAAK,mBAAmB;OACxB,UAAU,QAAA;OACV,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"ShowMoreButton.vue.d.ts","sourceRoot":"","sources":["../../src/components/ShowMoreButton.vue"],"names":[],"mappings":"AA+FA,QAAA,MAAM,YAAY,+QAChB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ShowMoreButton.vue.d.ts","sourceRoot":"","sources":["../../src/components/ShowMoreButton.vue"],"names":[],"mappings":"AA2GA,QAAA,MAAM,YAAY,+QAChB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -2,7 +2,7 @@ import _plugin_vue_export_helper_default from "../_virtual/_plugin-vue_export-he
2
2
  import ShowMoreButton_vue_vue_type_script_setup_true_lang_default from "./ShowMoreButton.vue.script.js";
3
3
  /* empty css */
4
4
  //#region src/components/ShowMoreButton.vue
5
- var ShowMoreButton_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ShowMoreButton_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-d1c2b649"]]);
5
+ var ShowMoreButton_default = /* @__PURE__ */ _plugin_vue_export_helper_default(ShowMoreButton_vue_vue_type_script_setup_true_lang_default, [["__scopeId", "data-v-8d844cc7"]]);
6
6
  //#endregion
7
7
  export { ShowMoreButton_default as default };
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"ShowMoreButton.vue.js","names":[],"sources":["../../src/components/ShowMoreButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconCaretDown } from '@scalar/icons'\n</script>\n\n<template>\n <button\n class=\"show-more\"\n type=\"button\">\n Show More\n <ScalarIconCaretDown\n class=\"text-c-2 mt-0.25 size-3\"\n weight=\"bold\" />\n </button>\n</template>\n\n<style scoped>\n.show-more {\n appearance: none;\n border: none;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n margin: auto;\n padding: 8px 12px 8px 16px;\n border-radius: 30px;\n color: var(--scalar-color-1);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-small);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n gap: 6px;\n top: -48px;\n}\n\n.show-more:hover {\n background: var(--scalar-background-2);\n cursor: pointer;\n}\n\n.show-more:active {\n box-shadow: 0 0 0 1px var(--scalar-border-color);\n}\n\n@container narrow-references-container (max-width: 900px) {\n .show-more {\n top: -24px;\n }\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"ShowMoreButton.vue.js","names":[],"sources":["../../src/components/ShowMoreButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconCaretDown } from '@scalar/icons'\n\nimport { useLocalization } from '@/features/localization'\n\nconst { translate } = useLocalization()\n</script>\n\n<template>\n <button\n class=\"show-more\"\n type=\"button\">\n {{ translate('actions.showMore') }}\n <ScalarIconCaretDown\n class=\"text-c-2 mt-0.25 size-3\"\n weight=\"bold\" />\n </button>\n</template>\n\n<style scoped>\n.show-more {\n appearance: none;\n border: none;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n margin: auto;\n padding: 8px 12px 8px 16px;\n border-radius: 30px;\n color: var(--scalar-color-1);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-small);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n gap: 6px;\n top: -48px;\n}\n\n.show-more:hover {\n background: var(--scalar-background-2);\n cursor: pointer;\n}\n\n.show-more:active {\n box-shadow: 0 0 0 1px var(--scalar-border-color);\n}\n\n@container narrow-references-container (max-width: 900px) {\n .show-more {\n top: -24px;\n }\n}\n</style>\n"],"mappings":""}
@@ -1,4 +1,5 @@
1
- import { createElementBlock, createTextVNode, createVNode, defineComponent, openBlock, unref } from "vue";
1
+ import { useLocalization } from "../features/localization/use-localization.js";
2
+ import { createElementBlock, createTextVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
2
3
  import { ScalarIconCaretDown } from "@scalar/icons";
3
4
  //#region src/components/ShowMoreButton.vue?vue&type=script&setup=true&lang.ts
4
5
  var _hoisted_1 = {
@@ -8,8 +9,9 @@ var _hoisted_1 = {
8
9
  var ShowMoreButton_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
9
10
  __name: "ShowMoreButton",
10
11
  setup(__props) {
12
+ const { translate } = useLocalization();
11
13
  return (_ctx, _cache) => {
12
- return openBlock(), createElementBlock("button", _hoisted_1, [_cache[0] || (_cache[0] = createTextVNode(" Show More ", -1)), createVNode(unref(ScalarIconCaretDown), {
14
+ return openBlock(), createElementBlock("button", _hoisted_1, [createTextVNode(toDisplayString(unref(translate)("actions.showMore")) + " ", 1), createVNode(unref(ScalarIconCaretDown), {
13
15
  class: "text-c-2 mt-0.25 size-3",
14
16
  weight: "bold"
15
17
  })]);
@@ -1 +1 @@
1
- {"version":3,"file":"ShowMoreButton.vue.script.js","names":[],"sources":["../../src/components/ShowMoreButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconCaretDown } from '@scalar/icons'\n</script>\n\n<template>\n <button\n class=\"show-more\"\n type=\"button\">\n Show More\n <ScalarIconCaretDown\n class=\"text-c-2 mt-0.25 size-3\"\n weight=\"bold\" />\n </button>\n</template>\n\n<style scoped>\n.show-more {\n appearance: none;\n border: none;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n margin: auto;\n padding: 8px 12px 8px 16px;\n border-radius: 30px;\n color: var(--scalar-color-1);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-small);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n gap: 6px;\n top: -48px;\n}\n\n.show-more:hover {\n background: var(--scalar-background-2);\n cursor: pointer;\n}\n\n.show-more:active {\n box-shadow: 0 0 0 1px var(--scalar-border-color);\n}\n\n@container narrow-references-container (max-width: 900px) {\n .show-more {\n top: -24px;\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;uBAKE,mBAOS,UAPT,YAOS,CAAA,OAAA,OAAA,OAAA,KAAA,gBALO,eAEd,GAAA,GAAA,YAEkB,MAAA,oBAAA,EAAA;IADhB,OAAM;IACN,QAAO"}
1
+ {"version":3,"file":"ShowMoreButton.vue.script.js","names":[],"sources":["../../src/components/ShowMoreButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconCaretDown } from '@scalar/icons'\n\nimport { useLocalization } from '@/features/localization'\n\nconst { translate } = useLocalization()\n</script>\n\n<template>\n <button\n class=\"show-more\"\n type=\"button\">\n {{ translate('actions.showMore') }}\n <ScalarIconCaretDown\n class=\"text-c-2 mt-0.25 size-3\"\n weight=\"bold\" />\n </button>\n</template>\n\n<style scoped>\n.show-more {\n appearance: none;\n border: none;\n border: var(--scalar-border-width) solid var(--scalar-border-color);\n margin: auto;\n padding: 8px 12px 8px 16px;\n border-radius: 30px;\n color: var(--scalar-color-1);\n font-weight: var(--scalar-semibold);\n font-size: var(--scalar-small);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n gap: 6px;\n top: -48px;\n}\n\n.show-more:hover {\n background: var(--scalar-background-2);\n cursor: pointer;\n}\n\n.show-more:active {\n box-shadow: 0 0 0 1px var(--scalar-border-color);\n}\n\n@container narrow-references-container (max-width: 900px) {\n .show-more {\n top: -24px;\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;EAKA,MAAM,EAAE,cAAc,iBAAgB;;uBAIpC,mBAOS,UAPT,YAOS,CAAA,gBAAA,gBAJJ,MAAA,UAAS,CAAA,mBAAA,CAAA,GAAuB,KACnC,EAAA,EAAA,YAEkB,MAAA,oBAAA,EAAA;IADhB,OAAM;IACN,QAAO"}