@scalar/api-reference 1.64.0 → 1.65.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 (630) hide show
  1. package/CHANGELOG.md +62 -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.script.js +1 -1
  4. package/dist/blocks/scalar-asyncapi-server-selector-block/components/AsyncApiServerSelector.vue.script.js.map +1 -1
  5. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.d.ts.map +1 -1
  6. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.script.js +1 -1
  7. package/dist/blocks/scalar-asyncapi-server-selector-block/components/Selector.vue.script.js.map +1 -1
  8. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.script.js +2 -2
  9. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/AsyncApiSidebarFilters.vue.script.js.map +1 -1
  10. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.d.ts.map +1 -1
  11. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.script.js +1 -1
  12. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/components/SidebarFilter.vue.script.js.map +1 -1
  13. package/dist/blocks/scalar-asyncapi-sidebar-filters-block/helpers/filter-async-api-navigation.js.map +1 -1
  14. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.d.ts +1 -3
  15. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.d.ts.map +1 -1
  16. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.js +1 -1
  17. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.js.map +1 -1
  18. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.script.js +13 -27
  19. package/dist/blocks/scalar-client-selector-block/components/ClientDropdown.vue.script.js.map +1 -1
  20. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.d.ts.map +1 -1
  21. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.js +1 -1
  22. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.js.map +1 -1
  23. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.script.js +37 -25
  24. package/dist/blocks/scalar-client-selector-block/components/ClientSelector.vue.script.js.map +1 -1
  25. package/dist/blocks/scalar-client-selector-block/helpers/featured-clients.js.map +1 -1
  26. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.d.ts.map +1 -1
  27. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.js +1 -1
  28. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.js.map +1 -1
  29. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.script.js +10 -4
  30. package/dist/blocks/scalar-info-block/components/DownloadLink.vue.script.js.map +1 -1
  31. package/dist/blocks/scalar-info-block/components/InfoBlock.vue.script.js +1 -1
  32. package/dist/blocks/scalar-info-block/components/InfoBlock.vue.script.js.map +1 -1
  33. package/dist/blocks/scalar-info-block/components/InfoDescription.vue.js +1 -1
  34. package/dist/blocks/scalar-info-block/components/InfoDescription.vue.script.js +1 -1
  35. package/dist/blocks/scalar-info-block/components/InfoDescription.vue.script.js.map +1 -1
  36. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.script.js +1 -1
  37. package/dist/blocks/scalar-info-block/components/InfoLinks.vue.script.js.map +1 -1
  38. package/dist/blocks/scalar-info-block/components/InfoMarkdownSection.vue.script.js +1 -1
  39. package/dist/blocks/scalar-info-block/components/InfoMarkdownSection.vue.script.js.map +1 -1
  40. package/dist/blocks/scalar-info-block/components/InfoVersion.vue.script.js +1 -1
  41. package/dist/blocks/scalar-info-block/components/InfoVersion.vue.script.js.map +1 -1
  42. package/dist/blocks/scalar-info-block/components/IntroductionCard.vue.js +1 -1
  43. package/dist/blocks/scalar-info-block/components/IntroductionCard.vue.script.js +1 -1
  44. package/dist/blocks/scalar-info-block/components/IntroductionCard.vue.script.js.map +1 -1
  45. package/dist/blocks/scalar-info-block/components/IntroductionCardItem.vue.js +1 -1
  46. package/dist/blocks/scalar-info-block/components/IntroductionCardItem.vue.js.map +1 -1
  47. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.d.ts.map +1 -1
  48. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.js +1 -1
  49. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.script.js +1 -1
  50. package/dist/blocks/scalar-info-block/components/IntroductionLayout.vue.script.js.map +1 -1
  51. package/dist/blocks/scalar-info-block/components/IntroductionLoading.vue.js +1 -1
  52. package/dist/blocks/scalar-info-block/components/IntroductionLoading.vue.script.js +1 -1
  53. package/dist/blocks/scalar-info-block/components/IntroductionLoading.vue.script.js.map +1 -1
  54. package/dist/blocks/scalar-info-block/components/SpecificationVersion.vue.script.js +1 -1
  55. package/dist/blocks/scalar-info-block/components/SpecificationVersion.vue.script.js.map +1 -1
  56. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.d.ts.map +1 -1
  57. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.js +1 -1
  58. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.js.map +1 -1
  59. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.script.js +16 -9
  60. package/dist/blocks/scalar-sdk-installation-instructions/components/SdkInstallationInstructions.vue.script.js.map +1 -1
  61. package/dist/blocks/scalar-sdk-installation-instructions/helpers/language-icon.js.map +1 -1
  62. package/dist/blocks/scalar-sdk-installation-instructions/helpers/renderable-sdks.js.map +1 -1
  63. package/dist/blocks/scalar-sdk-installation-instructions/helpers/visible-tab-count.js.map +1 -1
  64. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.d.ts.map +1 -1
  65. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.script.js +1 -1
  66. package/dist/blocks/scalar-server-selector-block/components/Selector.vue.script.js.map +1 -1
  67. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.d.ts.map +1 -1
  68. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.script.js +1 -1
  69. package/dist/blocks/scalar-server-selector-block/components/ServerSelector.vue.script.js.map +1 -1
  70. package/dist/browser/chunks/AgentScalarChatInterface-2lNB6wO-.js +27 -0
  71. package/dist/browser/chunks/ScalarTextInput.vue-DVmXRWbS.js +27 -0
  72. package/dist/browser/chunks/{basic-shape-diamond.svg-BTEOT1FL.js → basic-shape-diamond.svg-o5eiY2I7.js} +2 -2
  73. package/dist/browser/chunks/{basic-shape-hexagon.svg-BSPzaCgF.js → basic-shape-hexagon.svg-CGuS7mbd.js} +2 -2
  74. package/dist/browser/chunks/{basic-shape-primary-circle-ellipse-round.svg-DKmZ8UUU.js → basic-shape-primary-circle-ellipse-round.svg-DDIpXiBm.js} +2 -2
  75. package/dist/browser/chunks/{basic-shape-primary-square-rectangle.svg-n2YRykHD.js → basic-shape-primary-square-rectangle.svg-DzVEJHMB.js} +2 -2
  76. package/dist/browser/chunks/{basic-shape-shield.svg-Bec9cJDA.js → basic-shape-shield.svg-BZzapRqv.js} +2 -2
  77. package/dist/browser/chunks/browser-CTPPEMEL.js +129 -0
  78. package/dist/browser/chunks/{computer-device-desktop-monitor.svg-m6j893Hb.js → computer-device-desktop-monitor.svg-OSM05r1I.js} +2 -2
  79. package/dist/browser/chunks/{computer-device-desktop.svg-Dk1VVO7k.js → computer-device-desktop.svg-BMFzGZ27.js} +2 -2
  80. package/dist/browser/chunks/{computer-device-laptop.svg-BNGVUCYS.js → computer-device-laptop.svg-CMAjzuB-.js} +2 -2
  81. package/dist/browser/chunks/{computer-device-mobile-phone-android-samsung-back.svg-CC4UUTFw.js → computer-device-mobile-phone-android-samsung-back.svg-D4xBONmL.js} +2 -2
  82. package/dist/browser/chunks/{computer-device-mobile-phone-android-samsung.svg-D8ExpMpL.js → computer-device-mobile-phone-android-samsung.svg-gbMJLjJw.js} +2 -2
  83. package/dist/browser/chunks/{computer-device-mobile-phone-iphone-x-back.svg-CLm7sgMM.js → computer-device-mobile-phone-iphone-x-back.svg-Bl1rmdKA.js} +2 -2
  84. package/dist/browser/chunks/{computer-device-mobile-phone-iphone-x.svg-Xrttg6_7.js → computer-device-mobile-phone-iphone-x.svg-DVetP0aa.js} +2 -2
  85. package/dist/browser/chunks/{computer-device-mobile-tablet-touch.svg-DQ2oTvOG.js → computer-device-mobile-tablet-touch.svg-Zi88BP4L.js} +2 -2
  86. package/dist/browser/chunks/{computer-device-mobile-tablet.svg-DCr0XlRc.js → computer-device-mobile-tablet.svg-C1ggisWP.js} +2 -2
  87. package/dist/browser/chunks/{computer-device-network-ethernet-cat6.svg-AK9l0iOl.js → computer-device-network-ethernet-cat6.svg-BIUymdC1.js} +2 -2
  88. package/dist/browser/chunks/{computer-device-network-lan-www.svg-gUIdFBlE.js → computer-device-network-lan-www.svg-CoFUlIVO.js} +2 -2
  89. package/dist/browser/chunks/{computer-device-network-wifi-connection.svg-Be-EMm4e.js → computer-device-network-wifi-connection.svg-DeWsacxI.js} +2 -2
  90. package/dist/browser/chunks/{computer-device-network-wifi-router.svg-Dc2VzyqK.js → computer-device-network-wifi-router.svg-BjpZEot4.js} +2 -2
  91. package/dist/browser/chunks/{ecology-science-erlenmeyer-flask.svg-DHgy7Jfd.js → ecology-science-erlenmeyer-flask.svg-ftjGGirE.js} +2 -2
  92. package/dist/browser/chunks/{image-flash-lightning.svg-EETR_y1q.js → image-flash-lightning.svg-DYQ0W4Fi.js} +2 -2
  93. package/dist/browser/chunks/{image-picture-flower.svg-DN1AYzJU.js → image-picture-flower.svg-Bfe5SVDf.js} +2 -2
  94. package/dist/browser/chunks/{interface-alert-exclamation-diamond.svg-C5NozMV_.js → interface-alert-exclamation-diamond.svg-D1HePDNM.js} +2 -2
  95. package/dist/browser/chunks/{interface-alert-exclamation-triangle-warning.svg-DaAg2fF5.js → interface-alert-exclamation-triangle-warning.svg-CILUsxBC.js} +2 -2
  96. package/dist/browser/chunks/{interface-alert-information-circle.svg-ckkkt9Mv.js → interface-alert-information-circle.svg-9LrbJM5J.js} +2 -2
  97. package/dist/browser/chunks/{interface-award-crown.svg-pjvn9hY-.js → interface-award-crown.svg-DllWgiU1.js} +2 -2
  98. package/dist/browser/chunks/{interface-bookmark.svg-BK9HKQBT.js → interface-bookmark-tag.svg-Dc-JL-Kc.js} +2 -2
  99. package/dist/browser/chunks/{interface-bookmark-tag.svg-r2r-lQq4.js → interface-bookmark.svg-Dc-JL-Kc.js} +2 -2
  100. package/dist/browser/chunks/{interface-calendar-date-one.svg-DNnF0M1I.js → interface-calendar-date-one.svg-DO2jelhF.js} +2 -2
  101. package/dist/browser/chunks/{interface-content-book-open-pages.svg-CQj_w9Vp.js → interface-content-book-open-pages.svg-BJjMjIgA.js} +2 -2
  102. package/dist/browser/chunks/{interface-content-book-page.svg-DppoeJRe.js → interface-content-book-page.svg-C6rKB2fs.js} +2 -2
  103. package/dist/browser/chunks/{interface-content-file.svg-CvcD7OiY.js → interface-content-file.svg-CS0q2FKx.js} +2 -2
  104. package/dist/browser/chunks/{interface-content-folder.svg-BmtS5I9A.js → interface-content-folder.svg-CThTWsJX.js} +2 -2
  105. package/dist/browser/chunks/{interface-copy-clipboard.svg-Be6EI50X.js → interface-copy-clipboard.svg-DdN67cLv.js} +2 -2
  106. package/dist/browser/chunks/{interface-edit-attachment.svg-G5TKzpWX.js → interface-edit-attachment.svg-Ciizphuh.js} +2 -2
  107. package/dist/browser/chunks/{interface-edit-binocular.svg-jzL-DvGB.js → interface-edit-binocular.svg-Dw1nDqmL.js} +2 -2
  108. package/dist/browser/chunks/{interface-edit-magic-wand.svg-BOTlymvp.js → interface-edit-magic-wand.svg-BYS0jm_E.js} +2 -2
  109. package/dist/browser/chunks/{interface-edit-tool-paint-roller.svg-s9dwryx7.js → interface-edit-tool-paint-roller.svg-NioSHZC2.js} +2 -2
  110. package/dist/browser/chunks/{interface-edit-tool-pencil.svg-C7v0dbB3.js → interface-edit-tool-pencil.svg-P87QFlat.js} +2 -2
  111. package/dist/browser/chunks/{interface-favorite-award.svg-CYHUgUG0.js → interface-favorite-award.svg-DBBAChSi.js} +2 -2
  112. package/dist/browser/chunks/{interface-favorite-flag.svg-C10zlKOb.js → interface-favorite-flag.svg-HlhPomHY.js} +2 -2
  113. package/dist/browser/chunks/{interface-favorite-heart.svg-eoduXxlz.js → interface-favorite-heart.svg-Cqu2GYDo.js} +2 -2
  114. package/dist/browser/chunks/{interface-favorite-star.svg-BSmxJetr.js → interface-favorite-star.svg-BD4JY_J2.js} +2 -2
  115. package/dist/browser/chunks/{interface-favorite-stars-sparkles.svg-JTFLj3Ls.js → interface-favorite-stars-sparkles.svg-BXi6aO8q.js} +2 -2
  116. package/dist/browser/chunks/{interface-hierarchy-flowchart.svg-Cg_Wy0kN.js → interface-hierarchy-flowchart.svg-CDEVSsD4.js} +2 -2
  117. package/dist/browser/chunks/{interface-home-house.svg-DytoGRnv.js → interface-home-house.svg-DJetUjwj.js} +2 -2
  118. package/dist/browser/chunks/{interface-hyperlink.svg-CuEfmmQI.js → interface-hyperlink.svg-DJ1LREmz.js} +2 -2
  119. package/dist/browser/chunks/{interface-lighting-brightness.svg-DSK0h_Pa.js → interface-lighting-brightness.svg-TGKAaHYV.js} +2 -2
  120. package/dist/browser/chunks/{interface-lock-closed.svg-Cn6TaLYv.js → interface-lock-closed.svg-3hehWr3i.js} +2 -2
  121. package/dist/browser/chunks/{interface-lock-open-unlock.svg-CVkG5-9W.js → interface-lock-open-unlock.svg-CuXKcv1m.js} +2 -2
  122. package/dist/browser/chunks/{interface-login-key.svg-y-cwwXjN.js → interface-login-key.svg-Chwvvywd.js} +2 -2
  123. package/dist/browser/chunks/{interface-search.svg-S-puVFJB.js → interface-search.svg-JDE3fk0u.js} +2 -2
  124. package/dist/browser/chunks/{interface-setting-cog.svg-CTH4_lLg.js → interface-setting-cog.svg-BBCkeh4K.js} +2 -2
  125. package/dist/browser/chunks/{interface-share-megaphone-bullhorn.svg-Pbp39MyC.js → interface-share-megaphone-bullhorn.svg-CDdxF-4y.js} +2 -2
  126. package/dist/browser/chunks/{interface-share-rocket.svg-BgCsIRZO.js → interface-share-rocket.svg-DSbdn_o7.js} +2 -2
  127. package/dist/browser/chunks/{interface-share-satellite.svg-DAMN9d5G.js → interface-share-satellite.svg-CefBVZvY.js} +2 -2
  128. package/dist/browser/chunks/{interface-share-space-ship.svg-Dt-Mejxk.js → interface-share-space-ship.svg-tFA2dsSU.js} +2 -2
  129. package/dist/browser/chunks/{interface-share.svg-vFYTXSti.js → interface-share.svg-BpOGopyv.js} +2 -2
  130. package/dist/browser/chunks/{interface-signal-square.svg-DNG4LpAe.js → interface-signal-square.svg-BcX_BoaC.js} +2 -2
  131. package/dist/browser/chunks/{interface-time-clock-circle.svg-Bpz-nLxo.js → interface-time-clock-circle.svg-C8B_L_RM.js} +2 -2
  132. package/dist/browser/chunks/{interface-time-hour-glass.svg-D7agfKsH.js → interface-time-hour-glass.svg-qw-oeoVn.js} +2 -2
  133. package/dist/browser/chunks/{interface-users-multiple.svg-CkPJBBnG.js → interface-users-multiple.svg-Cs13Eewq.js} +2 -2
  134. package/dist/browser/chunks/{interface-weather-moon.svg-CaTZFMPO.js → interface-weather-moon.svg-CV-oDTae.js} +2 -2
  135. package/dist/browser/chunks/{mail-chat-bubble-square.svg-DC8RIihp.js → mail-chat-bubble-square.svg-dpauJhin.js} +2 -2
  136. package/dist/browser/chunks/{mail-send-email-paper-airplane.svg-D8OLs9jz.js → mail-send-email-paper-airplane.svg-BBofxojL.js} +2 -2
  137. package/dist/browser/chunks/{mail-send-envelope.svg-CV33h5Sx.js → mail-send-envelope.svg-DyENgYOI.js} +2 -2
  138. package/dist/browser/chunks/modal-70ibkEHi.js +102 -0
  139. package/dist/browser/chunks/{money-cashier-receipt.svg-CJL8C2gs.js → money-cashier-receipt.svg-dNTr5aio.js} +2 -2
  140. package/dist/browser/chunks/{money-currency-dollar-pay.svg-VdBplCTx.js → money-currency-dollar-pay.svg-1ZESPtFY.js} +2 -2
  141. package/dist/browser/chunks/{money-graph-arrow-increase.svg-DcRov3zk.js → money-graph-arrow-increase.svg-kEZ2u2z2.js} +2 -2
  142. package/dist/browser/chunks/{money-graph-bar-chart-increase.svg-Cc7KxjX-.js → money-graph-bar-chart-increase.svg-B-t2UWB3.js} +2 -2
  143. package/dist/browser/chunks/{nature-ecology-leaf.svg-DR3cTZxt.js → nature-ecology-leaf.svg-DZ2GJV8m.js} +2 -2
  144. package/dist/browser/chunks/{phone-telephone.svg-DyY0gUlk.js → phone-telephone.svg-C12QjpN7.js} +2 -2
  145. package/dist/browser/chunks/{programming-bug.svg-BHLT-Qhp.js → programming-bug.svg-wLTsruN9.js} +2 -2
  146. package/dist/browser/chunks/{programming-cloud.svg-B6YW33ba.js → programming-cloud.svg-3XU6dNUg.js} +2 -2
  147. package/dist/browser/chunks/{programming-computer-database-server.svg-B6o5Sdn-.js → programming-computer-database-server.svg-B1JrHSPd.js} +2 -2
  148. package/dist/browser/chunks/{programming-computer-database.svg-Cl7OVtpJ.js → programming-computer-database.svg-BxHSuFl7.js} +2 -2
  149. package/dist/browser/chunks/{programming-module-four-layout.svg-BQrerL1x.js → programming-module-four-layout.svg-CeV35q45.js} +2 -2
  150. package/dist/browser/chunks/{programming-module-three.svg-B2KTQzBM.js → programming-module-three.svg-YIBpLt45.js} +2 -2
  151. package/dist/browser/chunks/{programming-module.svg-CiID7kPm.js → programming-module.svg-CU_pEibI.js} +2 -2
  152. package/dist/browser/chunks/{programming-script-code.svg-D1M5rtkN.js → programming-script-code.svg-CLzinmHT.js} +2 -2
  153. package/dist/browser/chunks/runtime-core.esm-bundler-CqqEw5ds.js +17 -0
  154. package/dist/browser/chunks/{shopping-cart.svg-BEegiIR9.js → shopping-cart.svg-Brzddu3K.js} +2 -2
  155. package/dist/browser/chunks/{shopping-gift-present.svg-BUHwuLix.js → shopping-gift-present.svg-l2K48g7L.js} +2 -2
  156. package/dist/browser/chunks/{shopping-shipping-box-parcel-package.svg-D6fxWdYx.js → shopping-shipping-box-parcel-package.svg-DesGopPo.js} +2 -2
  157. package/dist/browser/chunks/{tag-new-circle.svg-jsg1bGs0.js → tag-new-circle.svg-DE-VaLZU.js} +2 -2
  158. package/dist/browser/chunks/{travel-map-earth-globe.svg-ClbMiU-f.js → travel-map-earth-globe.svg-DLaOMzx6.js} +2 -2
  159. package/dist/browser/chunks/vendor-BcTep96u.js +306 -0
  160. package/dist/browser/standalone.esm.js +22 -20
  161. package/dist/browser/standalone.js +256 -254
  162. package/dist/components/AgentScalar/AgentScalarButton.vue.script.js +1 -1
  163. package/dist/components/AgentScalar/AgentScalarButton.vue.script.js.map +1 -1
  164. package/dist/components/AgentScalar/AgentScalarChatInterface.vue.script.js +1 -1
  165. package/dist/components/AgentScalar/AgentScalarChatInterface.vue.script.js.map +1 -1
  166. package/dist/components/AgentScalar/AgentScalarDrawer.vue.d.ts.map +1 -1
  167. package/dist/components/AgentScalar/AgentScalarDrawer.vue.js +1 -1
  168. package/dist/components/AgentScalar/AgentScalarDrawer.vue.script.js +1 -1
  169. package/dist/components/AgentScalar/AgentScalarDrawer.vue.script.js.map +1 -1
  170. package/dist/components/AgentScalar/OpenMCPButton.vue.d.ts.map +1 -1
  171. package/dist/components/AgentScalar/OpenMCPButton.vue.js +1 -1
  172. package/dist/components/AgentScalar/OpenMCPButton.vue.js.map +1 -1
  173. package/dist/components/AgentScalar/OpenMCPButton.vue.script.js +47 -32
  174. package/dist/components/AgentScalar/OpenMCPButton.vue.script.js.map +1 -1
  175. package/dist/components/Anchor/Anchor.vue.d.ts.map +1 -1
  176. package/dist/components/Anchor/Anchor.vue.script.js +1 -1
  177. package/dist/components/Anchor/Anchor.vue.script.js.map +1 -1
  178. package/dist/components/Anchor/WithBreadcrumb.vue.script.js +2 -2
  179. package/dist/components/Anchor/WithBreadcrumb.vue.script.js.map +1 -1
  180. package/dist/components/ApiReference.vue.d.ts.map +1 -1
  181. package/dist/components/ApiReference.vue.js +1 -1
  182. package/dist/components/ApiReference.vue.js.map +1 -1
  183. package/dist/components/ApiReference.vue.script.js +55 -22
  184. package/dist/components/ApiReference.vue.script.js.map +1 -1
  185. package/dist/components/Badge/Badge.vue.js +1 -1
  186. package/dist/components/Badge/Badge.vue.script.js +1 -1
  187. package/dist/components/Badge/Badge.vue.script.js.map +1 -1
  188. package/dist/components/ClassicHeader.vue.js +1 -1
  189. package/dist/components/ClassicHeader.vue.js.map +1 -1
  190. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.js +1 -1
  191. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.script.js +1 -1
  192. package/dist/components/Content/AsyncApi/AsyncApiLabels.vue.script.js.map +1 -1
  193. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.script.js +1 -1
  194. package/dist/components/Content/AsyncApi/AsyncApiTraversedEntry.vue.script.js.map +1 -1
  195. package/dist/components/Content/AsyncApi/Channel.vue.d.ts.map +1 -1
  196. package/dist/components/Content/AsyncApi/Channel.vue.js +1 -1
  197. package/dist/components/Content/AsyncApi/Channel.vue.script.js +1 -1
  198. package/dist/components/Content/AsyncApi/Channel.vue.script.js.map +1 -1
  199. package/dist/components/Content/AsyncApi/ChannelsList.vue.js +1 -1
  200. package/dist/components/Content/AsyncApi/ChannelsList.vue.script.js +1 -1
  201. package/dist/components/Content/AsyncApi/ChannelsList.vue.script.js.map +1 -1
  202. package/dist/components/Content/AsyncApi/Message.vue.d.ts.map +1 -1
  203. package/dist/components/Content/AsyncApi/Message.vue.js +1 -1
  204. package/dist/components/Content/AsyncApi/Message.vue.script.js +2 -2
  205. package/dist/components/Content/AsyncApi/Message.vue.script.js.map +1 -1
  206. package/dist/components/Content/AsyncApi/Operation.vue.d.ts.map +1 -1
  207. package/dist/components/Content/AsyncApi/Operation.vue.js +1 -1
  208. package/dist/components/Content/AsyncApi/Operation.vue.script.js +1 -1
  209. package/dist/components/Content/AsyncApi/Operation.vue.script.js.map +1 -1
  210. package/dist/components/Content/AsyncApi/helpers/adapt-async-api-parameters.js.map +1 -1
  211. package/dist/components/Content/AsyncApi/helpers/async-api-render-options.js.map +1 -1
  212. package/dist/components/Content/AsyncApi/helpers/filter-children-by-type.js.map +1 -1
  213. package/dist/components/Content/AsyncApi/helpers/get-async-api-labels.js.map +1 -1
  214. package/dist/components/Content/AsyncApi/helpers/get-async-api-required-security.js.map +1 -1
  215. package/dist/components/Content/AsyncApi/helpers/pick-heading.js.map +1 -1
  216. package/dist/components/Content/AsyncApi/helpers/resolve-async-api-nodes.js.map +1 -1
  217. package/dist/components/Content/AsyncApi/index.d.ts +3 -0
  218. package/dist/components/Content/AsyncApi/index.d.ts.map +1 -1
  219. package/dist/components/Content/Auth/Auth.vue.script.js +1 -1
  220. package/dist/components/Content/Auth/Auth.vue.script.js.map +1 -1
  221. package/dist/components/Content/Content.vue.script.js +1 -1
  222. package/dist/components/Content/Content.vue.script.js.map +1 -1
  223. package/dist/components/Content/Models/Model.vue.script.js +1 -1
  224. package/dist/components/Content/Models/Model.vue.script.js.map +1 -1
  225. package/dist/components/Content/Models/ModelTag.vue.d.ts.map +1 -1
  226. package/dist/components/Content/Models/ModelTag.vue.script.js +2 -2
  227. package/dist/components/Content/Models/ModelTag.vue.script.js.map +1 -1
  228. package/dist/components/Content/Models/components/ClassicLayout.vue.d.ts.map +1 -1
  229. package/dist/components/Content/Models/components/ClassicLayout.vue.js +1 -1
  230. package/dist/components/Content/Models/components/ClassicLayout.vue.script.js +1 -1
  231. package/dist/components/Content/Models/components/ClassicLayout.vue.script.js.map +1 -1
  232. package/dist/components/Content/Models/components/ModernLayout.vue.d.ts.map +1 -1
  233. package/dist/components/Content/Models/components/ModernLayout.vue.script.js +1 -1
  234. package/dist/components/Content/Models/components/ModernLayout.vue.script.js.map +1 -1
  235. package/dist/components/Content/Operations/TraversedEntry.vue.script.js +1 -1
  236. package/dist/components/Content/Operations/TraversedEntry.vue.script.js.map +1 -1
  237. package/dist/components/Content/Schema/LinkButton.vue.js +1 -1
  238. package/dist/components/Content/Schema/LinkButton.vue.js.map +1 -1
  239. package/dist/components/Content/Schema/RenderString.vue.script.js +1 -1
  240. package/dist/components/Content/Schema/RenderString.vue.script.js.map +1 -1
  241. package/dist/components/Content/Schema/Schema.vue.d.ts.map +1 -1
  242. package/dist/components/Content/Schema/Schema.vue.js +1 -1
  243. package/dist/components/Content/Schema/Schema.vue.js.map +1 -1
  244. package/dist/components/Content/Schema/Schema.vue.script.js +5 -13
  245. package/dist/components/Content/Schema/Schema.vue.script.js.map +1 -1
  246. package/dist/components/Content/Schema/SchemaComposition.vue.d.ts.map +1 -1
  247. package/dist/components/Content/Schema/SchemaComposition.vue.script.js +1 -1
  248. package/dist/components/Content/Schema/SchemaComposition.vue.script.js.map +1 -1
  249. package/dist/components/Content/Schema/SchemaEnumPropertyItem.vue.js +1 -1
  250. package/dist/components/Content/Schema/SchemaEnumPropertyItem.vue.script.js +1 -1
  251. package/dist/components/Content/Schema/SchemaEnumPropertyItem.vue.script.js.map +1 -1
  252. package/dist/components/Content/Schema/SchemaEnums.vue.d.ts.map +1 -1
  253. package/dist/components/Content/Schema/SchemaEnums.vue.js +1 -1
  254. package/dist/components/Content/Schema/SchemaEnums.vue.script.js +1 -1
  255. package/dist/components/Content/Schema/SchemaEnums.vue.script.js.map +1 -1
  256. package/dist/components/Content/Schema/SchemaHeading.vue.js +1 -1
  257. package/dist/components/Content/Schema/SchemaHeading.vue.script.js +1 -1
  258. package/dist/components/Content/Schema/SchemaHeading.vue.script.js.map +1 -1
  259. package/dist/components/Content/Schema/SchemaObjectExampleCodeBlock.vue.script.js +1 -1
  260. package/dist/components/Content/Schema/SchemaObjectExampleCodeBlock.vue.script.js.map +1 -1
  261. package/dist/components/Content/Schema/SchemaObjectProperties.vue.script.js +1 -1
  262. package/dist/components/Content/Schema/SchemaObjectProperties.vue.script.js.map +1 -1
  263. package/dist/components/Content/Schema/SchemaProperty.vue.d.ts.map +1 -1
  264. package/dist/components/Content/Schema/SchemaProperty.vue.js +1 -1
  265. package/dist/components/Content/Schema/SchemaProperty.vue.js.map +1 -1
  266. package/dist/components/Content/Schema/SchemaProperty.vue.script.js +9 -3
  267. package/dist/components/Content/Schema/SchemaProperty.vue.script.js.map +1 -1
  268. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.js +1 -1
  269. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.script.js +1 -1
  270. package/dist/components/Content/Schema/SchemaPropertyDefault.vue.script.js.map +1 -1
  271. package/dist/components/Content/Schema/SchemaPropertyDetail.vue.js +1 -1
  272. package/dist/components/Content/Schema/SchemaPropertyDetail.vue.script.js +1 -1
  273. package/dist/components/Content/Schema/SchemaPropertyDetail.vue.script.js.map +1 -1
  274. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.js +1 -1
  275. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.script.js +1 -1
  276. package/dist/components/Content/Schema/SchemaPropertyExamples.vue.script.js.map +1 -1
  277. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.d.ts +6 -0
  278. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.d.ts.map +1 -1
  279. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.js +1 -1
  280. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.js.map +1 -1
  281. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.script.js +6 -2
  282. package/dist/components/Content/Schema/SchemaPropertyHeading.vue.script.js.map +1 -1
  283. package/dist/components/Content/Schema/helpers/dynamic-scope.js.map +1 -1
  284. package/dist/components/Content/Schema/helpers/format-example.js.map +1 -1
  285. package/dist/components/Content/Schema/helpers/format-value.js.map +1 -1
  286. package/dist/components/Content/Schema/helpers/get-compositions-to-render.js.map +1 -1
  287. package/dist/components/Content/Schema/helpers/get-enum-values.js.map +1 -1
  288. package/dist/components/Content/Schema/helpers/get-property-description.js.map +1 -1
  289. package/dist/components/Content/Schema/helpers/get-ref-name.d.ts +16 -0
  290. package/dist/components/Content/Schema/helpers/get-ref-name.d.ts.map +1 -1
  291. package/dist/components/Content/Schema/helpers/get-ref-name.js +28 -1
  292. package/dist/components/Content/Schema/helpers/get-ref-name.js.map +1 -1
  293. package/dist/components/Content/Schema/helpers/get-schema-type.js.map +1 -1
  294. package/dist/components/Content/Schema/helpers/has-complex-array-items.js.map +1 -1
  295. package/dist/components/Content/Schema/helpers/is-empty-schema-object.js.map +1 -1
  296. package/dist/components/Content/Schema/helpers/is-model-linkable.d.ts +15 -0
  297. package/dist/components/Content/Schema/helpers/is-model-linkable.d.ts.map +1 -0
  298. package/dist/components/Content/Schema/helpers/is-model-linkable.js +22 -0
  299. package/dist/components/Content/Schema/helpers/is-model-linkable.js.map +1 -0
  300. package/dist/components/Content/Schema/helpers/is-type-object.js.map +1 -1
  301. package/dist/components/Content/Schema/helpers/merge-all-of-schemas.js +3 -3
  302. package/dist/components/Content/Schema/helpers/merge-all-of-schemas.js.map +1 -1
  303. package/dist/components/Content/Schema/helpers/optimize-value-for-display.js.map +1 -1
  304. package/dist/components/Content/Schema/helpers/partition-all-of-compositions.js.map +1 -1
  305. package/dist/components/Content/Schema/helpers/schema-composition.js.map +1 -1
  306. package/dist/components/Content/Schema/helpers/schema-cycle.js.map +1 -1
  307. package/dist/components/Content/Schema/helpers/schema-name.d.ts +6 -1
  308. package/dist/components/Content/Schema/helpers/schema-name.d.ts.map +1 -1
  309. package/dist/components/Content/Schema/helpers/schema-name.js +5 -4
  310. package/dist/components/Content/Schema/helpers/schema-name.js.map +1 -1
  311. package/dist/components/Content/Schema/helpers/should-display-description.js.map +1 -1
  312. package/dist/components/Content/Schema/helpers/should-display-heading.js.map +1 -1
  313. package/dist/components/Content/Schema/helpers/should-render-array-item-composition.js.map +1 -1
  314. package/dist/components/Content/Schema/helpers/sort-property-names.js.map +1 -1
  315. package/dist/components/Content/Schema/types.d.ts +7 -0
  316. package/dist/components/Content/Schema/types.d.ts.map +1 -1
  317. package/dist/components/Content/Tags/Tag.vue.script.js +1 -1
  318. package/dist/components/Content/Tags/Tag.vue.script.js.map +1 -1
  319. package/dist/components/Content/Tags/components/ClassicLayout.vue.d.ts.map +1 -1
  320. package/dist/components/Content/Tags/components/ClassicLayout.vue.js +1 -1
  321. package/dist/components/Content/Tags/components/ClassicLayout.vue.script.js +1 -1
  322. package/dist/components/Content/Tags/components/ClassicLayout.vue.script.js.map +1 -1
  323. package/dist/components/Content/Tags/components/ModernLayout.vue.d.ts.map +1 -1
  324. package/dist/components/Content/Tags/components/ModernLayout.vue.js +1 -1
  325. package/dist/components/Content/Tags/components/ModernLayout.vue.script.js +1 -1
  326. package/dist/components/Content/Tags/components/ModernLayout.vue.script.js.map +1 -1
  327. package/dist/components/Content/Tags/components/TagSection.vue.d.ts.map +1 -1
  328. package/dist/components/Content/Tags/components/TagSection.vue.script.js +1 -1
  329. package/dist/components/Content/Tags/components/TagSection.vue.script.js.map +1 -1
  330. package/dist/components/GettingStarted.vue.d.ts.map +1 -1
  331. package/dist/components/GettingStarted.vue.js +1 -1
  332. package/dist/components/GettingStarted.vue.js.map +1 -1
  333. package/dist/components/GettingStarted.vue.script.js +4 -3
  334. package/dist/components/GettingStarted.vue.script.js.map +1 -1
  335. package/dist/components/HttpMethod/HttpMethod.vue.script.js +1 -1
  336. package/dist/components/HttpMethod/HttpMethod.vue.script.js.map +1 -1
  337. package/dist/components/IntersectionObserver.vue.script.js +10 -7
  338. package/dist/components/IntersectionObserver.vue.script.js.map +1 -1
  339. package/dist/components/Lazy/Lazy.vue.script.js +2 -2
  340. package/dist/components/Lazy/Lazy.vue.script.js.map +1 -1
  341. package/dist/components/LinkList/LinkList.vue.js +1 -1
  342. package/dist/components/LinkList/LinkList.vue.script.js +1 -1
  343. package/dist/components/LinkList/LinkList.vue.script.js.map +1 -1
  344. package/dist/components/MobileHeader.vue.d.ts.map +1 -1
  345. package/dist/components/MobileHeader.vue.script.js +4 -4
  346. package/dist/components/MobileHeader.vue.script.js.map +1 -1
  347. package/dist/components/OperationPath.vue.d.ts.map +1 -1
  348. package/dist/components/OperationPath.vue.js +1 -1
  349. package/dist/components/OperationPath.vue.script.js +1 -1
  350. package/dist/components/OperationPath.vue.script.js.map +1 -1
  351. package/dist/components/OperationsList/OperationsList.vue.js +1 -1
  352. package/dist/components/OperationsList/OperationsList.vue.script.js +1 -1
  353. package/dist/components/OperationsList/OperationsList.vue.script.js.map +1 -1
  354. package/dist/components/OperationsList/OperationsListItem.vue.js +1 -1
  355. package/dist/components/OperationsList/OperationsListItem.vue.script.js +1 -1
  356. package/dist/components/OperationsList/OperationsListItem.vue.script.js.map +1 -1
  357. package/dist/components/RenderPlugins/RenderPluginView.vue.script.js +1 -1
  358. package/dist/components/RenderPlugins/RenderPluginView.vue.script.js.map +1 -1
  359. package/dist/components/RenderPlugins/RenderPlugins.vue.script.js +1 -1
  360. package/dist/components/RenderPlugins/RenderPlugins.vue.script.js.map +1 -1
  361. package/dist/components/ScreenReader.vue.js +1 -1
  362. package/dist/components/ScreenReader.vue.script.js +2 -2
  363. package/dist/components/ScreenReader.vue.script.js.map +1 -1
  364. package/dist/components/Section/CompactSection.vue.d.ts.map +1 -1
  365. package/dist/components/Section/CompactSection.vue.js +1 -1
  366. package/dist/components/Section/CompactSection.vue.script.js +1 -1
  367. package/dist/components/Section/CompactSection.vue.script.js.map +1 -1
  368. package/dist/components/Section/Section.vue.js +1 -1
  369. package/dist/components/Section/Section.vue.script.js +1 -1
  370. package/dist/components/Section/Section.vue.script.js.map +1 -1
  371. package/dist/components/Section/SectionAccordion.vue.d.ts.map +1 -1
  372. package/dist/components/Section/SectionAccordion.vue.js +1 -1
  373. package/dist/components/Section/SectionAccordion.vue.script.js +1 -1
  374. package/dist/components/Section/SectionAccordion.vue.script.js.map +1 -1
  375. package/dist/components/Section/SectionColumn.vue.js +1 -1
  376. package/dist/components/Section/SectionColumn.vue.js.map +1 -1
  377. package/dist/components/Section/SectionColumns.vue.js +1 -1
  378. package/dist/components/Section/SectionColumns.vue.js.map +1 -1
  379. package/dist/components/Section/SectionContainer.vue.js +1 -1
  380. package/dist/components/Section/SectionContainer.vue.script.js +2 -2
  381. package/dist/components/Section/SectionContainer.vue.script.js.map +1 -1
  382. package/dist/components/Section/SectionContainerAccordion.vue.d.ts.map +1 -1
  383. package/dist/components/Section/SectionContainerAccordion.vue.js +1 -1
  384. package/dist/components/Section/SectionContainerAccordion.vue.script.js +1 -1
  385. package/dist/components/Section/SectionContainerAccordion.vue.script.js.map +1 -1
  386. package/dist/components/Section/SectionContent.vue.js +1 -1
  387. package/dist/components/Section/SectionContent.vue.js.map +1 -1
  388. package/dist/components/Section/SectionHeader.vue.js +1 -1
  389. package/dist/components/Section/SectionHeader.vue.script.js +2 -2
  390. package/dist/components/Section/SectionHeader.vue.script.js.map +1 -1
  391. package/dist/components/Section/SectionHeaderTag.vue.js +1 -1
  392. package/dist/components/Section/SectionHeaderTag.vue.script.js +1 -1
  393. package/dist/components/Section/SectionHeaderTag.vue.script.js.map +1 -1
  394. package/dist/components/SectionFlare/SectionFlare.vue.js +1 -1
  395. package/dist/components/SectionFlare/SectionFlare.vue.js.map +1 -1
  396. package/dist/components/ShowMoreButton.vue.js +1 -1
  397. package/dist/components/ShowMoreButton.vue.script.js +1 -1
  398. package/dist/components/ShowMoreButton.vue.script.js.map +1 -1
  399. package/dist/components/index.d.ts +1 -0
  400. package/dist/components/index.d.ts.map +1 -1
  401. package/dist/components/index.js +5 -1
  402. package/dist/features/Operation/Operation.vue.script.js +1 -1
  403. package/dist/features/Operation/Operation.vue.script.js.map +1 -1
  404. package/dist/features/Operation/components/ContentTypeSelect.vue.d.ts.map +1 -1
  405. package/dist/features/Operation/components/ContentTypeSelect.vue.script.js +2 -2
  406. package/dist/features/Operation/components/ContentTypeSelect.vue.script.js.map +1 -1
  407. package/dist/features/Operation/components/Header.vue.d.ts +2 -0
  408. package/dist/features/Operation/components/Header.vue.d.ts.map +1 -1
  409. package/dist/features/Operation/components/Header.vue.js.map +1 -1
  410. package/dist/features/Operation/components/Header.vue.script.js +4 -2
  411. package/dist/features/Operation/components/Header.vue.script.js.map +1 -1
  412. package/dist/features/Operation/components/Headers.vue.d.ts +2 -0
  413. package/dist/features/Operation/components/Headers.vue.d.ts.map +1 -1
  414. package/dist/features/Operation/components/Headers.vue.js +1 -1
  415. package/dist/features/Operation/components/Headers.vue.js.map +1 -1
  416. package/dist/features/Operation/components/Headers.vue.script.js +5 -2
  417. package/dist/features/Operation/components/Headers.vue.script.js.map +1 -1
  418. package/dist/features/Operation/components/OperationParameters.vue.d.ts.map +1 -1
  419. package/dist/features/Operation/components/OperationParameters.vue.js.map +1 -1
  420. package/dist/features/Operation/components/OperationParameters.vue.script.js +4 -4
  421. package/dist/features/Operation/components/OperationParameters.vue.script.js.map +1 -1
  422. package/dist/features/Operation/components/OperationResponses.vue.script.js +1 -1
  423. package/dist/features/Operation/components/OperationResponses.vue.script.js.map +1 -1
  424. package/dist/features/Operation/components/OperationScopes.vue.script.js +1 -1
  425. package/dist/features/Operation/components/OperationScopes.vue.script.js.map +1 -1
  426. package/dist/features/Operation/components/ParameterList.vue.script.js +1 -1
  427. package/dist/features/Operation/components/ParameterList.vue.script.js.map +1 -1
  428. package/dist/features/Operation/components/ParameterListItem.vue.d.ts.map +1 -1
  429. package/dist/features/Operation/components/ParameterListItem.vue.js +1 -1
  430. package/dist/features/Operation/components/ParameterListItem.vue.js.map +1 -1
  431. package/dist/features/Operation/components/ParameterListItem.vue.script.js +4 -1
  432. package/dist/features/Operation/components/ParameterListItem.vue.script.js.map +1 -1
  433. package/dist/features/Operation/components/RequestBody.vue.d.ts.map +1 -1
  434. package/dist/features/Operation/components/RequestBody.vue.js +1 -1
  435. package/dist/features/Operation/components/RequestBody.vue.js.map +1 -1
  436. package/dist/features/Operation/components/RequestBody.vue.script.js +12 -3
  437. package/dist/features/Operation/components/RequestBody.vue.script.js.map +1 -1
  438. package/dist/features/Operation/components/SecurityRequirementBadge.vue.script.js +1 -1
  439. package/dist/features/Operation/components/SecurityRequirementBadge.vue.script.js.map +1 -1
  440. package/dist/features/Operation/components/SecurityRequirementBadgeScheme.vue.script.js +1 -1
  441. package/dist/features/Operation/components/SecurityRequirementBadgeScheme.vue.script.js.map +1 -1
  442. package/dist/features/Operation/components/callbacks/Callback.vue.js +1 -1
  443. package/dist/features/Operation/components/callbacks/Callback.vue.script.js +1 -1
  444. package/dist/features/Operation/components/callbacks/Callback.vue.script.js.map +1 -1
  445. package/dist/features/Operation/components/callbacks/Callbacks.vue.script.js +1 -1
  446. package/dist/features/Operation/components/callbacks/Callbacks.vue.script.js.map +1 -1
  447. package/dist/features/Operation/components/helpers/get-parameter-examples.js.map +1 -1
  448. package/dist/features/Operation/helpers/filter-selected-security.js.map +1 -1
  449. package/dist/features/Operation/helpers/flatten-deep-object-query-parameter.js.map +1 -1
  450. package/dist/features/Operation/helpers/get-required-security.js.map +1 -1
  451. package/dist/features/Operation/helpers/operation-stability.js.map +1 -1
  452. package/dist/features/Operation/layouts/ClassicLayout.vue.d.ts.map +1 -1
  453. package/dist/features/Operation/layouts/ClassicLayout.vue.js +1 -1
  454. package/dist/features/Operation/layouts/ClassicLayout.vue.script.js +1 -1
  455. package/dist/features/Operation/layouts/ClassicLayout.vue.script.js.map +1 -1
  456. package/dist/features/Operation/layouts/ModernLayout.vue.d.ts.map +1 -1
  457. package/dist/features/Operation/layouts/ModernLayout.vue.js +1 -1
  458. package/dist/features/Operation/layouts/ModernLayout.vue.script.js +1 -1
  459. package/dist/features/Operation/layouts/ModernLayout.vue.script.js.map +1 -1
  460. package/dist/features/Operation/request-body-composition-index.js.map +1 -1
  461. package/dist/features/Search/components/SearchButton.vue.d.ts.map +1 -1
  462. package/dist/features/Search/components/SearchButton.vue.script.js +1 -1
  463. package/dist/features/Search/components/SearchButton.vue.script.js.map +1 -1
  464. package/dist/features/Search/components/SearchModal.vue.d.ts.map +1 -1
  465. package/dist/features/Search/components/SearchModal.vue.js +1 -1
  466. package/dist/features/Search/components/SearchModal.vue.script.js +1 -1
  467. package/dist/features/Search/components/SearchModal.vue.script.js.map +1 -1
  468. package/dist/features/Search/components/SearchResult.vue.d.ts.map +1 -1
  469. package/dist/features/Search/components/SearchResult.vue.js.map +1 -1
  470. package/dist/features/Search/components/SearchResult.vue.script.js +3 -3
  471. package/dist/features/Search/components/SearchResult.vue.script.js.map +1 -1
  472. package/dist/features/Search/helpers/create-fuse-instance.js.map +1 -1
  473. package/dist/features/Search/helpers/create-search-index.js.map +1 -1
  474. package/dist/features/Search/hooks/useSearchIndex.js.map +1 -1
  475. package/dist/features/ask-agent-button/AskAgentButton.vue.js +1 -1
  476. package/dist/features/ask-agent-button/AskAgentButton.vue.script.js +1 -1
  477. package/dist/features/ask-agent-button/AskAgentButton.vue.script.js.map +1 -1
  478. package/dist/features/developer-tools/DeveloperTools.vue.script.js +2 -2
  479. package/dist/features/developer-tools/DeveloperTools.vue.script.js.map +1 -1
  480. package/dist/features/developer-tools/components/ApiReferenceToolbarBlurb.vue.js +1 -1
  481. package/dist/features/developer-tools/components/ApiReferenceToolbarBlurb.vue.js.map +1 -1
  482. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.script.js +1 -1
  483. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayout.vue.script.js.map +1 -1
  484. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.d.ts.map +1 -1
  485. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.js.map +1 -1
  486. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.script.js +3 -3
  487. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigLayoutOptions.vue.script.js.map +1 -1
  488. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigTheme.vue.script.js +1 -1
  489. package/dist/features/developer-tools/components/ApiReferenceToolbarConfigTheme.vue.script.js.map +1 -1
  490. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.script.js +1 -1
  491. package/dist/features/developer-tools/components/ApiReferenceToolbarPopover.vue.script.js.map +1 -1
  492. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.d.ts.map +1 -1
  493. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.script.js +4 -3
  494. package/dist/features/developer-tools/components/ApiReferenceToolbarRegisterButton.vue.script.js.map +1 -1
  495. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.d.ts.map +1 -1
  496. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.js.map +1 -1
  497. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.script.js +2 -1
  498. package/dist/features/developer-tools/components/ApiReferenceToolbarShareRegister.vue.script.js.map +1 -1
  499. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.d.ts.map +1 -1
  500. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.script.js +4 -3
  501. package/dist/features/developer-tools/components/ApiReferenceToolbarShareTemporary.vue.script.js.map +1 -1
  502. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.d.ts.map +1 -1
  503. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.script.js +1 -1
  504. package/dist/features/developer-tools/components/ApiReferenceToolbarTitle.vue.script.js.map +1 -1
  505. package/dist/features/developer-tools/components/DeployApiReference.vue.script.js +1 -1
  506. package/dist/features/developer-tools/components/DeployApiReference.vue.script.js.map +1 -1
  507. package/dist/features/developer-tools/components/ModifyConfiguration.vue.script.js +2 -2
  508. package/dist/features/developer-tools/components/ModifyConfiguration.vue.script.js.map +1 -1
  509. package/dist/features/developer-tools/components/ShareApiReference.vue.script.js +1 -1
  510. package/dist/features/developer-tools/components/ShareApiReference.vue.script.js.map +1 -1
  511. package/dist/features/example-responses/ExampleResponse.vue.js +1 -1
  512. package/dist/features/example-responses/ExampleResponse.vue.script.js +1 -1
  513. package/dist/features/example-responses/ExampleResponse.vue.script.js.map +1 -1
  514. package/dist/features/example-responses/ExampleResponseTab.vue.js +1 -1
  515. package/dist/features/example-responses/ExampleResponseTab.vue.script.js +1 -1
  516. package/dist/features/example-responses/ExampleResponseTab.vue.script.js.map +1 -1
  517. package/dist/features/example-responses/ExampleResponseTabList.vue.d.ts.map +1 -1
  518. package/dist/features/example-responses/ExampleResponseTabList.vue.js +1 -1
  519. package/dist/features/example-responses/ExampleResponseTabList.vue.script.js +1 -1
  520. package/dist/features/example-responses/ExampleResponseTabList.vue.script.js.map +1 -1
  521. package/dist/features/example-responses/ExampleResponses.vue.d.ts.map +1 -1
  522. package/dist/features/example-responses/ExampleResponses.vue.js +1 -1
  523. package/dist/features/example-responses/ExampleResponses.vue.script.js +1 -1
  524. package/dist/features/example-responses/ExampleResponses.vue.script.js.map +1 -1
  525. package/dist/features/example-responses/ExampleSchema.vue.script.js +1 -1
  526. package/dist/features/example-responses/ExampleSchema.vue.script.js.map +1 -1
  527. package/dist/features/example-responses/helpers/has-response-content.js.map +1 -1
  528. package/dist/features/example-responses/helpers/normalize-mime-type-object.js.map +1 -1
  529. package/dist/features/example-responses/helpers/normalize-mime-type.js.map +1 -1
  530. package/dist/features/external-docs/ExternalDocs.vue.d.ts.map +1 -1
  531. package/dist/features/external-docs/ExternalDocs.vue.js.map +1 -1
  532. package/dist/features/external-docs/ExternalDocs.vue.script.js +25 -13
  533. package/dist/features/external-docs/ExternalDocs.vue.script.js.map +1 -1
  534. package/dist/features/info-object/Contact.vue.d.ts.map +1 -1
  535. package/dist/features/info-object/Contact.vue.js.map +1 -1
  536. package/dist/features/info-object/Contact.vue.script.js +10 -4
  537. package/dist/features/info-object/Contact.vue.script.js.map +1 -1
  538. package/dist/features/info-object/InfoLink.vue.d.ts.map +1 -1
  539. package/dist/features/info-object/InfoLink.vue.js.map +1 -1
  540. package/dist/features/info-object/InfoLink.vue.script.js +17 -5
  541. package/dist/features/info-object/InfoLink.vue.script.js.map +1 -1
  542. package/dist/features/info-object/License.vue.d.ts.map +1 -1
  543. package/dist/features/info-object/License.vue.js.map +1 -1
  544. package/dist/features/info-object/License.vue.script.js +11 -5
  545. package/dist/features/info-object/License.vue.script.js.map +1 -1
  546. package/dist/features/info-object/TermsOfService.vue.d.ts.map +1 -1
  547. package/dist/features/info-object/TermsOfService.vue.js.map +1 -1
  548. package/dist/features/info-object/TermsOfService.vue.script.js +10 -4
  549. package/dist/features/info-object/TermsOfService.vue.script.js.map +1 -1
  550. package/dist/features/localization/locales/ar.js.map +1 -1
  551. package/dist/features/localization/locales/de.js.map +1 -1
  552. package/dist/features/localization/locales/en.js.map +1 -1
  553. package/dist/features/localization/locales/es.js.map +1 -1
  554. package/dist/features/localization/locales/fr.js.map +1 -1
  555. package/dist/features/localization/locales/pt.d.ts +229 -0
  556. package/dist/features/localization/locales/pt.d.ts.map +1 -0
  557. package/dist/features/localization/locales/pt.js +227 -0
  558. package/dist/features/localization/locales/pt.js.map +1 -0
  559. package/dist/features/localization/locales/ru.js.map +1 -1
  560. package/dist/features/localization/locales/zh-cn.js.map +1 -1
  561. package/dist/features/localization/translations.d.ts +228 -0
  562. package/dist/features/localization/translations.d.ts.map +1 -1
  563. package/dist/features/localization/translations.js +4 -2
  564. package/dist/features/localization/translations.js.map +1 -1
  565. package/dist/features/localization/use-localization.js.map +1 -1
  566. package/dist/features/multiple-documents/DocumentSelector.vue.d.ts.map +1 -1
  567. package/dist/features/multiple-documents/DocumentSelector.vue.script.js +1 -1
  568. package/dist/features/multiple-documents/DocumentSelector.vue.script.js.map +1 -1
  569. package/dist/features/specification-extension/SpecificationExtension.vue.script.js +1 -1
  570. package/dist/features/specification-extension/SpecificationExtension.vue.script.js.map +1 -1
  571. package/dist/features/specification-extension/helpers.js.map +1 -1
  572. package/dist/features/test-request-button/TestRequestButton.vue.js +1 -1
  573. package/dist/features/test-request-button/TestRequestButton.vue.script.js +1 -1
  574. package/dist/features/test-request-button/TestRequestButton.vue.script.js.map +1 -1
  575. package/dist/features/x-badges/XBadges.vue.d.ts.map +1 -1
  576. package/dist/features/x-badges/XBadges.vue.script.js +1 -1
  577. package/dist/features/x-badges/XBadges.vue.script.js.map +1 -1
  578. package/dist/helpers/build-models-index.d.ts +15 -0
  579. package/dist/helpers/build-models-index.d.ts.map +1 -0
  580. package/dist/helpers/build-models-index.js +28 -0
  581. package/dist/helpers/build-models-index.js.map +1 -0
  582. package/dist/helpers/color-mode.js.map +1 -1
  583. package/dist/helpers/download.js.map +1 -1
  584. package/dist/helpers/get-async-api-message-payload-schema.js.map +1 -1
  585. package/dist/helpers/get-async-api-model-schema.js.map +1 -1
  586. package/dist/helpers/id-routing.d.ts +18 -4
  587. package/dist/helpers/id-routing.d.ts.map +1 -1
  588. package/dist/helpers/id-routing.js +67 -20
  589. package/dist/helpers/id-routing.js.map +1 -1
  590. package/dist/helpers/is-introduction-entry.js.map +1 -1
  591. package/dist/helpers/lazy-bus.js.map +1 -1
  592. package/dist/helpers/load-from-perssistance.js.map +1 -1
  593. package/dist/helpers/map-config-plugins.js.map +1 -1
  594. package/dist/helpers/map-config-to-workspace-store.js.map +1 -1
  595. package/dist/helpers/normalize-configurations.js +1 -1
  596. package/dist/helpers/normalize-configurations.js.map +1 -1
  597. package/dist/helpers/openapi.d.ts +6 -1
  598. package/dist/helpers/openapi.d.ts.map +1 -1
  599. package/dist/helpers/openapi.js +37 -6
  600. package/dist/helpers/openapi.js.map +1 -1
  601. package/dist/helpers/safe-deep-clone.js.map +1 -1
  602. package/dist/helpers/storage.d.ts +16 -0
  603. package/dist/helpers/storage.d.ts.map +1 -1
  604. package/dist/helpers/storage.js +14 -0
  605. package/dist/helpers/storage.js.map +1 -1
  606. package/dist/helpers/upload-temp-document.js.map +1 -1
  607. package/dist/hooks/use-agent.js.map +1 -1
  608. package/dist/hooks/use-intersection.js.map +1 -1
  609. package/dist/plugins/hooks/usePluginManager.js.map +1 -1
  610. package/dist/plugins/persistence-plugin.js +6 -1
  611. package/dist/plugins/persistence-plugin.js.map +1 -1
  612. package/dist/plugins/plugin-manager.js +35 -0
  613. package/dist/plugins/plugin-manager.js.map +1 -1
  614. package/dist/plugins/posthog/index.js.map +1 -1
  615. package/dist/standalone/lib/html-api.js.map +1 -1
  616. package/dist/standalone/lib/load-plugins-from-urls.js.map +1 -1
  617. package/dist/style.css +1419 -1316
  618. package/dist/vue-styles.css +918 -831
  619. package/package.json +27 -27
  620. package/dist/browser/chunks/AgentScalarChatInterface-C8lX3RCo.js +0 -27
  621. package/dist/browser/chunks/ScalarTextInput.vue-Xf60Nwf-.js +0 -27
  622. package/dist/browser/chunks/browser-67K6wmG9.js +0 -129
  623. package/dist/browser/chunks/modal-B8Opb61-.js +0 -15
  624. package/dist/browser/chunks/modal-Dcl-Y2Zk.js +0 -99
  625. package/dist/browser/chunks/runtime-core.esm-bundler-Byrbbu5Q.js +0 -17
  626. package/dist/browser/chunks/vendor-CBP43oHJ.js +0 -306
  627. package/dist/features/Operation/helpers/should-ignore-entity.d.ts +0 -8
  628. package/dist/features/Operation/helpers/should-ignore-entity.d.ts.map +0 -1
  629. package/dist/features/Operation/helpers/should-ignore-entity.js +0 -9
  630. package/dist/features/Operation/helpers/should-ignore-entity.js.map +0 -1
@@ -5,7 +5,7 @@ import { ScalarVirtualCodeBlock } from "@scalar/components/virtual-code-block";
5
5
  import { prettyPrintJson } from "@scalar/helpers/json/pretty-print-json";
6
6
  //#region src/features/example-responses/ExampleSchema.vue?vue&type=script&setup=true&lang.ts
7
7
  var VIRTUALIZATION_THRESHOLD = 2e4;
8
- var ExampleSchema_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
8
+ var ExampleSchema_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
9
9
  __name: "ExampleSchema",
10
10
  props: {
11
11
  id: {},
@@ -1 +1 @@
1
- {"version":3,"file":"ExampleSchema.vue.script.js","names":[],"sources":["../../../src/features/example-responses/ExampleSchema.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getResolvedRefDeep } from '@scalar/blocks/code-example'\nimport { ScalarCodeBlock } from '@scalar/components/code-block'\nimport { ScalarVirtualCodeBlock } from '@scalar/components/virtual-code-block'\nimport { prettyPrintJson } from '@scalar/helpers/json/pretty-print-json'\nimport type { ReferenceType } from '@scalar/workspace-store/schemas/v3.1/strict/reference'\nimport type { SchemaObject } from '@scalar/workspace-store/schemas/v3.1/strict/schema'\nimport { computed } from 'vue'\n\nconst { id, schema } = defineProps<{\n id: string\n schema: ReferenceType<SchemaObject>\n}>()\n\nconst schemaContent = computed(() => {\n if (!schema) {\n return undefined\n }\n\n return prettyPrintJson(getResolvedRefDeep(schema))\n})\n\nconst VIRTUALIZATION_THRESHOLD = 20_000\n\nconst shouldVirtualizeSchema = computed(() => {\n return (schemaContent.value?.length ?? 0) > VIRTUALIZATION_THRESHOLD\n})\n</script>\n\n<template>\n <ScalarCodeBlock\n v-if=\"!shouldVirtualizeSchema\"\n :id=\"id\"\n class=\"bg-b-2\"\n lang=\"json\"\n :prettyPrintedContent=\"schemaContent ?? ''\" />\n <ScalarVirtualCodeBlock\n v-else\n :id=\"id\"\n class=\"bg-b-2\"\n :content=\"schemaContent ?? ''\"\n lang=\"json\" />\n</template>\n"],"mappings":";;;;;;AAsBA,IAAM,2BAA2B;;;;;;;;EARjC,MAAM,gBAAgB,eAAe;AACnC,OAAI,CAAC,QAAA,OACH;AAGF,UAAO,gBAAgB,mBAAmB,QAAA,OAAO,CAAA;IAClD;EAID,MAAM,yBAAyB,eAAe;AAC5C,WAAQ,cAAc,OAAO,UAAU,KAAK;IAC7C;;WAKU,uBAAA,SAAA,WAAA,EADT,YAKgD,MAAA,gBAAA,EAAA;;IAH7C,IAAI,QAAA;IACL,OAAM;IACN,MAAK;IACJ,sBAAsB,cAAA,SAAa;gEACtC,YAKgB,MAAA,uBAAA,EAAA;;IAHb,IAAI,QAAA;IACL,OAAM;IACL,SAAS,cAAA,SAAa;IACvB,MAAK"}
1
+ {"version":3,"file":"ExampleSchema.vue.script.js","names":[],"sources":["../../../src/features/example-responses/ExampleSchema.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getResolvedRefDeep } from '@scalar/blocks/code-example'\nimport { ScalarCodeBlock } from '@scalar/components/code-block'\nimport { ScalarVirtualCodeBlock } from '@scalar/components/virtual-code-block'\nimport { prettyPrintJson } from '@scalar/helpers/json/pretty-print-json'\nimport type { ReferenceType } from '@scalar/workspace-store/schemas/v3.1/strict/reference'\nimport type { SchemaObject } from '@scalar/workspace-store/schemas/v3.1/strict/schema'\nimport { computed } from 'vue'\n\nconst { id, schema } = defineProps<{\n id: string\n schema: ReferenceType<SchemaObject>\n}>()\n\nconst schemaContent = computed(() => {\n if (!schema) {\n return undefined\n }\n\n return prettyPrintJson(getResolvedRefDeep(schema))\n})\n\nconst VIRTUALIZATION_THRESHOLD = 20_000\n\nconst shouldVirtualizeSchema = computed(() => {\n return (schemaContent.value?.length ?? 0) > VIRTUALIZATION_THRESHOLD\n})\n</script>\n\n<template>\n <ScalarCodeBlock\n v-if=\"!shouldVirtualizeSchema\"\n :id=\"id\"\n class=\"bg-b-2\"\n lang=\"json\"\n :prettyPrintedContent=\"schemaContent ?? ''\" />\n <ScalarVirtualCodeBlock\n v-else\n :id=\"id\"\n class=\"bg-b-2\"\n :content=\"schemaContent ?? ''\"\n lang=\"json\" />\n</template>\n"],"mappings":";;;;;;AAsBA,IAAM,2BAA2B;;;;;;;;EARjC,MAAM,gBAAgB,eAAe;GACnC,IAAI,CAAC,QAAA,QACH;GAGF,OAAO,gBAAgB,mBAAmB,QAAA,MAAM,CAAC;EACnD,CAAC;EAID,MAAM,yBAAyB,eAAe;GAC5C,QAAQ,cAAc,OAAO,UAAU,KAAK;EAC9C,CAAC;;WAKU,uBAAA,SAAA,UAAA,GADT,YAKgD,MAAA,eAAA,GAAA;;IAH7C,IAAI,QAAA;IACL,OAAM;IACN,MAAK;IACJ,sBAAsB,cAAA,SAAa;gEACtC,YAKgB,MAAA,sBAAA,GAAA;;IAHb,IAAI,QAAA;IACL,OAAM;IACL,SAAS,cAAA,SAAa;IACvB,MAAK"}
@@ -1 +1 @@
1
- {"version":3,"file":"has-response-content.js","names":[],"sources":["../../../../src/features/example-responses/helpers/has-response-content.ts"],"sourcesContent":["import { objectKeys } from '@scalar/helpers/object/object-keys'\nimport type { MediaTypeObject, ResponseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { normalizeMimeTypeObject } from './normalize-mime-type-object'\n\n/**\n * Checks if a media type object has any displayable content.\n * This includes having a schema, a single example, or multiple examples.\n *\n * Note: We use explicit property checks for `example` because falsy values\n * like `0`, `false`, and `\"\"` are valid JSON examples that should be displayed.\n * We still treat `null` as \"no content\" since it explicitly indicates absence.\n */\nfunction hasMediaTypeContent(mediaType: MediaTypeObject | undefined): boolean {\n if (!mediaType) {\n return false\n }\n\n const hasSchema = Boolean(mediaType.schema)\n const hasExample = 'example' in mediaType && mediaType.example !== null\n const hasExamples = Boolean(mediaType.examples)\n\n return hasSchema || hasExample || hasExamples\n}\n\nfunction isResponseKey(responseKey: string): boolean {\n return responseKey === 'default' || /^[1-5][0-9]{2}$/.test(responseKey) || /^[1-5]XX$/.test(responseKey)\n}\n\n/**\n * Checks if a response object has body content (schema, example, or examples).\n * Looks through common media types in priority order.\n */\nexport function hasResponseContent(response: ResponseObject | undefined, responseKey?: string): boolean {\n if (responseKey !== undefined) {\n if (!isResponseKey(responseKey)) {\n return false\n }\n\n return Boolean(response)\n }\n\n const normalizedContent = normalizeMimeTypeObject(response?.content)\n const keys = objectKeys(normalizedContent ?? {})\n\n const mediaType =\n normalizedContent?.['application/json'] ??\n normalizedContent?.['application/xml'] ??\n normalizedContent?.['text/plain'] ??\n normalizedContent?.['text/html'] ??\n normalizedContent?.['*/*'] ??\n normalizedContent?.[keys[0] ?? '']\n\n return hasMediaTypeContent(mediaType)\n}\n"],"mappings":";;;;;;;;;;;AAaA,SAAS,oBAAoB,WAAiD;AAC5E,KAAI,CAAC,UACH,QAAO;CAGT,MAAM,YAAY,QAAQ,UAAU,OAAO;CAC3C,MAAM,aAAa,aAAa,aAAa,UAAU,YAAY;CACnE,MAAM,cAAc,QAAQ,UAAU,SAAS;AAE/C,QAAO,aAAa,cAAc;;AAGpC,SAAS,cAAc,aAA8B;AACnD,QAAO,gBAAgB,aAAa,kBAAkB,KAAK,YAAY,IAAI,YAAY,KAAK,YAAY;;;;;;AAO1G,SAAgB,mBAAmB,UAAsC,aAA+B;AACtG,KAAI,gBAAgB,KAAA,GAAW;AAC7B,MAAI,CAAC,cAAc,YAAY,CAC7B,QAAO;AAGT,SAAO,QAAQ,SAAS;;CAG1B,MAAM,oBAAoB,wBAAwB,UAAU,QAAQ;CACpE,MAAM,OAAO,WAAW,qBAAqB,EAAE,CAAC;AAUhD,QAAO,oBAPL,oBAAoB,uBACpB,oBAAoB,sBACpB,oBAAoB,iBACpB,oBAAoB,gBACpB,oBAAoB,UACpB,oBAAoB,KAAK,MAAM,IAEI"}
1
+ {"version":3,"file":"has-response-content.js","names":[],"sources":["../../../../src/features/example-responses/helpers/has-response-content.ts"],"sourcesContent":["import { objectKeys } from '@scalar/helpers/object/object-keys'\nimport type { MediaTypeObject, ResponseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { normalizeMimeTypeObject } from './normalize-mime-type-object'\n\n/**\n * Checks if a media type object has any displayable content.\n * This includes having a schema, a single example, or multiple examples.\n *\n * Note: We use explicit property checks for `example` because falsy values\n * like `0`, `false`, and `\"\"` are valid JSON examples that should be displayed.\n * We still treat `null` as \"no content\" since it explicitly indicates absence.\n */\nfunction hasMediaTypeContent(mediaType: MediaTypeObject | undefined): boolean {\n if (!mediaType) {\n return false\n }\n\n const hasSchema = Boolean(mediaType.schema)\n const hasExample = 'example' in mediaType && mediaType.example !== null\n const hasExamples = Boolean(mediaType.examples)\n\n return hasSchema || hasExample || hasExamples\n}\n\nfunction isResponseKey(responseKey: string): boolean {\n return responseKey === 'default' || /^[1-5][0-9]{2}$/.test(responseKey) || /^[1-5]XX$/.test(responseKey)\n}\n\n/**\n * Checks if a response object has body content (schema, example, or examples).\n * Looks through common media types in priority order.\n */\nexport function hasResponseContent(response: ResponseObject | undefined, responseKey?: string): boolean {\n if (responseKey !== undefined) {\n if (!isResponseKey(responseKey)) {\n return false\n }\n\n return Boolean(response)\n }\n\n const normalizedContent = normalizeMimeTypeObject(response?.content)\n const keys = objectKeys(normalizedContent ?? {})\n\n const mediaType =\n normalizedContent?.['application/json'] ??\n normalizedContent?.['application/xml'] ??\n normalizedContent?.['text/plain'] ??\n normalizedContent?.['text/html'] ??\n normalizedContent?.['*/*'] ??\n normalizedContent?.[keys[0] ?? '']\n\n return hasMediaTypeContent(mediaType)\n}\n"],"mappings":";;;;;;;;;;;AAaA,SAAS,oBAAoB,WAAiD;CAC5E,IAAI,CAAC,WACH,OAAO;CAGT,MAAM,YAAY,QAAQ,UAAU,MAAM;CAC1C,MAAM,aAAa,aAAa,aAAa,UAAU,YAAY;CACnE,MAAM,cAAc,QAAQ,UAAU,QAAQ;CAE9C,OAAO,aAAa,cAAc;AACpC;AAEA,SAAS,cAAc,aAA8B;CACnD,OAAO,gBAAgB,aAAa,kBAAkB,KAAK,WAAW,KAAK,YAAY,KAAK,WAAW;AACzG;;;;;AAMA,SAAgB,mBAAmB,UAAsC,aAA+B;CACtG,IAAI,gBAAgB,KAAA,GAAW;EAC7B,IAAI,CAAC,cAAc,WAAW,GAC5B,OAAO;EAGT,OAAO,QAAQ,QAAQ;CACzB;CAEA,MAAM,oBAAoB,wBAAwB,UAAU,OAAO;CACnE,MAAM,OAAO,WAAW,qBAAqB,CAAC,CAAC;CAU/C,OAAO,oBAPL,oBAAoB,uBACpB,oBAAoB,sBACpB,oBAAoB,iBACpB,oBAAoB,gBACpB,oBAAoB,UACpB,oBAAoB,KAAK,MAAM,GAEG;AACtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-mime-type-object.js","names":[],"sources":["../../../../src/features/example-responses/helpers/normalize-mime-type-object.ts"],"sourcesContent":["import type { ResponseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { normalizeMimeType } from './normalize-mime-type'\n\n/**\n * Remove charset from content types\n *\n * Example: `application/json; charset=utf-8` -> `application/json`\n */\nexport function normalizeMimeTypeObject(content?: ResponseObject['content']): ResponseObject['content'] {\n if (!content) {\n return content\n }\n\n const newContent: ResponseObject['content'] = {\n ...content,\n }\n\n Object.entries(newContent).forEach(([key, value]) => {\n const normalizedKey = normalizeMimeType(key)\n if (normalizedKey) {\n newContent[normalizedKey] = value\n }\n })\n\n return newContent\n}\n"],"mappings":";;;;;;;AASA,SAAgB,wBAAwB,SAAgE;AACtG,KAAI,CAAC,QACH,QAAO;CAGT,MAAM,aAAwC,EAC5C,GAAG,SACJ;AAED,QAAO,QAAQ,WAAW,CAAC,SAAS,CAAC,KAAK,WAAW;EACnD,MAAM,gBAAgB,kBAAkB,IAAI;AAC5C,MAAI,cACF,YAAW,iBAAiB;GAE9B;AAEF,QAAO"}
1
+ {"version":3,"file":"normalize-mime-type-object.js","names":[],"sources":["../../../../src/features/example-responses/helpers/normalize-mime-type-object.ts"],"sourcesContent":["import type { ResponseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { normalizeMimeType } from './normalize-mime-type'\n\n/**\n * Remove charset from content types\n *\n * Example: `application/json; charset=utf-8` -> `application/json`\n */\nexport function normalizeMimeTypeObject(content?: ResponseObject['content']): ResponseObject['content'] {\n if (!content) {\n return content\n }\n\n const newContent: ResponseObject['content'] = {\n ...content,\n }\n\n Object.entries(newContent).forEach(([key, value]) => {\n const normalizedKey = normalizeMimeType(key)\n if (normalizedKey) {\n newContent[normalizedKey] = value\n }\n })\n\n return newContent\n}\n"],"mappings":";;;;;;;AASA,SAAgB,wBAAwB,SAAgE;CACtG,IAAI,CAAC,SACH,OAAO;CAGT,MAAM,aAAwC,EAC5C,GAAG,QACL;CAEA,OAAO,QAAQ,UAAU,CAAC,CAAC,SAAS,CAAC,KAAK,WAAW;EACnD,MAAM,gBAAgB,kBAAkB,GAAG;EAC3C,IAAI,eACF,WAAW,iBAAiB;CAEhC,CAAC;CAED,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-mime-type.js","names":[],"sources":["../../../../src/features/example-responses/helpers/normalize-mime-type.ts"],"sourcesContent":["import type { ContentType } from '@scalar/types/legacy'\n\n/**\n * Normalizes a MIME type to a standard format.\n *\n * Input: application/problem+json; charset=utf-8\n * Output: application/json\n */\nexport function normalizeMimeType(contentType: undefined): undefined\nexport function normalizeMimeType(contentType: string): ContentType\nexport function normalizeMimeType(contentType: string | undefined): ContentType | undefined {\n if (typeof contentType !== 'string') {\n return undefined\n }\n\n return (\n contentType\n // Remove '; charset=utf-8'\n .replace(/;.*$/, '')\n // Remove 'problem+' but keep vendor-specific vnd and fhir mime types\n .replace(/\\/(?!.*vnd\\.|fhir\\+).*\\+/, '/')\n // Remove whitespace\n .trim() as ContentType\n )\n}\n"],"mappings":";AAUA,SAAgB,kBAAkB,aAA0D;AAC1F,KAAI,OAAO,gBAAgB,SACzB;AAGF,QACE,YAEG,QAAQ,QAAQ,GAAG,CAEnB,QAAQ,4BAA4B,IAAI,CAExC,MAAM"}
1
+ {"version":3,"file":"normalize-mime-type.js","names":[],"sources":["../../../../src/features/example-responses/helpers/normalize-mime-type.ts"],"sourcesContent":["import type { ContentType } from '@scalar/types/legacy'\n\n/**\n * Normalizes a MIME type to a standard format.\n *\n * Input: application/problem+json; charset=utf-8\n * Output: application/json\n */\nexport function normalizeMimeType(contentType: undefined): undefined\nexport function normalizeMimeType(contentType: string): ContentType\nexport function normalizeMimeType(contentType: string | undefined): ContentType | undefined {\n if (typeof contentType !== 'string') {\n return undefined\n }\n\n return (\n contentType\n // Remove '; charset=utf-8'\n .replace(/;.*$/, '')\n // Remove 'problem+' but keep vendor-specific vnd and fhir mime types\n .replace(/\\/(?!.*vnd\\.|fhir\\+).*\\+/, '/')\n // Remove whitespace\n .trim() as ContentType\n )\n}\n"],"mappings":";AAUA,SAAgB,kBAAkB,aAA0D;CAC1F,IAAI,OAAO,gBAAgB,UACzB;CAGF,OACE,YAEG,QAAQ,QAAQ,EAAE,CAAC,CAEnB,QAAQ,4BAA4B,GAAG,CAAC,CAExC,KAAK;AAEZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalDocs.vue.d.ts","sourceRoot":"","sources":["../../../src/features/external-docs/ExternalDocs.vue"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAA;AAE/G,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,2BAA2B,CAAA;CACpC,CAAC;AAsFF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ExternalDocs.vue.d.ts","sourceRoot":"","sources":["../../../src/features/external-docs/ExternalDocs.vue"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAA;AAG/G,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,2BAA2B,CAAA;CACpC,CAAC;AA0GF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalDocs.vue.js","names":[],"sources":["../../../src/features/external-docs/ExternalDocs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconBook } from '@scalar/icons'\nimport type { ExternalDocumentationObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: ExternalDocumentationObject\n}>()\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconBook\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span\n v-if=\"value.description\"\n class=\"ml-1 empty:hidden\">\n {{ value.description }}\n </span>\n <span\n v-else\n class=\"ml-1 empty:hidden\">\n {{ value.url }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"ExternalDocs.vue.js","names":[],"sources":["../../../src/features/external-docs/ExternalDocs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconBook } from '@scalar/icons'\nimport type { ExternalDocumentationObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: ExternalDocumentationObject\n}>()\n\n/**\n * The external docs URL comes from the OpenAPI document, which is untrusted input, so a protocol\n * like `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <component\n :is=\"url ? 'a' : 'span'\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n :rel=\"url ? 'noopener noreferrer' : undefined\"\n :target=\"url ? '_blank' : undefined\">\n <ScalarIconBook\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span\n v-if=\"value.description\"\n class=\"ml-1 empty:hidden\">\n {{ value.description }}\n </span>\n <span\n v-else\n class=\"ml-1 empty:hidden\">\n {{ value.url }}\n </span>\n </component>\n </div>\n </template>\n</template>\n"],"mappings":""}
@@ -1,33 +1,45 @@
1
- import { createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
1
+ import { computed, createBlock, createCommentVNode, createElementBlock, createVNode, defineComponent, openBlock, resolveDynamicComponent, toDisplayString, unref, withCtx } from "vue";
2
2
  import { ScalarIconBook } from "@scalar/icons";
3
+ import { sanitizeUrl } from "@scalar/helpers/url/is-safe-url";
3
4
  //#region src/features/external-docs/ExternalDocs.vue?vue&type=script&setup=true&lang.ts
4
5
  var _hoisted_1 = {
5
6
  key: 0,
6
7
  class: "group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0"
7
8
  };
8
- var _hoisted_2 = ["href"];
9
- var _hoisted_3 = {
9
+ var _hoisted_2 = {
10
10
  key: 0,
11
11
  class: "ml-1 empty:hidden"
12
12
  };
13
- var _hoisted_4 = {
13
+ var _hoisted_3 = {
14
14
  key: 1,
15
15
  class: "ml-1 empty:hidden"
16
16
  };
17
- var ExternalDocs_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
17
+ var ExternalDocs_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
18
18
  __name: "ExternalDocs",
19
19
  props: { value: {} },
20
20
  setup(__props) {
21
+ /**
22
+ * The external docs URL comes from the OpenAPI document, which is untrusted input, so a protocol
23
+ * like `javascript:` would execute script on click. Fall back to the plain text label in that case.
24
+ */
25
+ const url = computed(() => sanitizeUrl(__props.value?.url));
21
26
  return (_ctx, _cache) => {
22
- return __props.value ? (openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("a", {
27
+ return __props.value ? (openBlock(), createElementBlock("div", _hoisted_1, [(openBlock(), createBlock(resolveDynamicComponent(url.value ? "a" : "span"), {
23
28
  class: "text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0",
24
- href: __props.value.url,
25
- rel: "noopener noreferrer",
26
- target: "_blank"
27
- }, [createVNode(unref(ScalarIconBook), {
28
- class: "size-3 text-current",
29
- weight: "bold"
30
- }), __props.value.description ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.value.description), 1)) : (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString(__props.value.url), 1))], 8, _hoisted_2)])) : createCommentVNode("", true);
29
+ href: url.value,
30
+ rel: url.value ? "noopener noreferrer" : void 0,
31
+ target: url.value ? "_blank" : void 0
32
+ }, {
33
+ default: withCtx(() => [createVNode(unref(ScalarIconBook), {
34
+ class: "size-3 text-current",
35
+ weight: "bold"
36
+ }), __props.value.description ? (openBlock(), createElementBlock("span", _hoisted_2, toDisplayString(__props.value.description), 1)) : (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.value.url), 1))]),
37
+ _: 1
38
+ }, 8, [
39
+ "href",
40
+ "rel",
41
+ "target"
42
+ ]))])) : createCommentVNode("", true);
31
43
  };
32
44
  }
33
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalDocs.vue.script.js","names":[],"sources":["../../../src/features/external-docs/ExternalDocs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconBook } from '@scalar/icons'\nimport type { ExternalDocumentationObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: ExternalDocumentationObject\n}>()\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconBook\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span\n v-if=\"value.description\"\n class=\"ml-1 empty:hidden\">\n {{ value.description }}\n </span>\n <span\n v-else\n class=\"ml-1 empty:hidden\">\n {{ value.url }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;UAUkB,QAAA,SAAA,WAAA,EACd,mBAqBM,OArBN,YAqBM,CAnBJ,mBAkBI,KAAA;IAjBF,OAAM;IACL,MAAM,QAAA,MAAM;IACb,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,eAAA,EAAA;IADhB,OAAM;IACN,QAAO;OAED,QAAA,MAAM,eAAA,WAAA,EADd,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAM,YAAW,EAAA,EAAA,KAAA,WAAA,EAEtB,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAM,IAAG,EAAA,EAAA,EAAA,EAAA,GAAA,WAAA,CAAA,CAAA,IAAA,mBAAA,IAAA,KAAA"}
1
+ {"version":3,"file":"ExternalDocs.vue.script.js","names":[],"sources":["../../../src/features/external-docs/ExternalDocs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconBook } from '@scalar/icons'\nimport type { ExternalDocumentationObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: ExternalDocumentationObject\n}>()\n\n/**\n * The external docs URL comes from the OpenAPI document, which is untrusted input, so a protocol\n * like `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <component\n :is=\"url ? 'a' : 'span'\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n :rel=\"url ? 'noopener noreferrer' : undefined\"\n :target=\"url ? '_blank' : undefined\">\n <ScalarIconBook\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span\n v-if=\"value.description\"\n class=\"ml-1 empty:hidden\">\n {{ value.description }}\n </span>\n <span\n v-else\n class=\"ml-1 empty:hidden\">\n {{ value.url }}\n </span>\n </component>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;EAcA,MAAM,MAAM,eAAe,YAAY,QAAA,OAAO,GAAG,CAAC;;UAIhC,QAAA,SAAA,UAAA,GACd,mBAsBM,OAtBN,YAsBM,EAAA,UAAA,GApBJ,YAmBY,wBAlBL,IAAA,QAAG,MAAA,MAAA,GAAA;IACR,OAAM;IACL,MAAM,IAAA;IACN,KAAK,IAAA,QAAG,wBAA2B,KAAA;IACnC,QAAQ,IAAA,QAAG,WAAc,KAAA;;2BAGR,CAFlB,YAEkB,MAAA,cAAA,GAAA;KADhB,OAAM;KACN,QAAO;QAED,QAAA,MAAM,eAAA,UAAA,GADd,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAM,WAAW,GAAA,CAAA,MAAA,UAAA,GAEtB,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAM,GAAG,GAAA,CAAA,EAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Contact.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/Contact.vue"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAEjG,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAC;AAkIF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"Contact.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/Contact.vue"],"names":[],"mappings":"AA0EA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAGjG,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAC;AA0IF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Contact.vue.js","names":[],"sources":["../../../src/features/info-object/Contact.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconEnvelopeSimple, ScalarIconLink } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\nimport type { ContactObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: ContactObject\n}>()\n\nconst variants = cva({\n base: 'text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 group-last:mr-0 narrow:border',\n variants: {\n link: {\n true: 'no-underline hover:bg-b-2',\n },\n },\n})\n</script>\n\n<template>\n <template v-if=\"value\">\n <!-- Each link gets its own wrapper so the dividers render between them -->\n <div\n v-if=\"value.email\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"`mailto:${value.email}`\">\n <ScalarIconEnvelopeSimple\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value.name }}</span>\n </a>\n </div>\n <div\n v-if=\"value.url\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <!-- Avoid repeating the name when the email link already shows it -->\n <span class=\"ml-1 empty:hidden\">{{\n value.email ? '' : value.name\n }}</span>\n </a>\n </div>\n <div\n v-else-if=\"!value.email && value.name\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <span :class=\"variants({ link: false })\">\n {{ value.name }}\n </span>\n </div>\n </template>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"Contact.vue.js","names":[],"sources":["../../../src/features/info-object/Contact.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconEnvelopeSimple, ScalarIconLink } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\nimport type { ContactObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: ContactObject\n}>()\n\n/**\n * The contact URL comes from the OpenAPI document, which is untrusted input, so a protocol like\n * `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n\nconst variants = cva({\n base: 'text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 group-last:mr-0 narrow:border',\n variants: {\n link: {\n true: 'no-underline hover:bg-b-2',\n },\n },\n})\n</script>\n\n<template>\n <template v-if=\"value\">\n <!-- Each link gets its own wrapper so the dividers render between them -->\n <div\n v-if=\"value.email\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"`mailto:${value.email}`\">\n <ScalarIconEnvelopeSimple\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value.name }}</span>\n </a>\n </div>\n <div\n v-if=\"url\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <!-- Avoid repeating the name when the email link already shows it -->\n <span class=\"ml-1 empty:hidden\">{{\n value.email ? '' : value.name\n }}</span>\n </a>\n </div>\n <div\n v-else-if=\"!value.email && value.name\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <span :class=\"variants({ link: false })\">\n {{ value.name }}\n </span>\n </div>\n </template>\n</template>\n"],"mappings":""}
@@ -1,5 +1,6 @@
1
- import { Fragment, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, toDisplayString, unref } from "vue";
1
+ import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, toDisplayString, unref } from "vue";
2
2
  import { ScalarIconEnvelopeSimple, ScalarIconLink } from "@scalar/icons";
3
+ import { sanitizeUrl } from "@scalar/helpers/url/is-safe-url";
3
4
  import { cva } from "@scalar/use-hooks/useBindCx";
4
5
  //#region src/features/info-object/Contact.vue?vue&type=script&setup=true&lang.ts
5
6
  var _hoisted_1 = {
@@ -18,10 +19,15 @@ var _hoisted_7 = {
18
19
  key: 2,
19
20
  class: "group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0"
20
21
  };
21
- var Contact_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
22
+ var Contact_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
22
23
  __name: "Contact",
23
24
  props: { value: {} },
24
25
  setup(__props) {
26
+ /**
27
+ * The contact URL comes from the OpenAPI document, which is untrusted input, so a protocol like
28
+ * `javascript:` would execute script on click. Fall back to the plain text label in that case.
29
+ */
30
+ const url = computed(() => sanitizeUrl(__props.value?.url));
25
31
  const variants = cva({
26
32
  base: "text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 group-last:mr-0 narrow:border",
27
33
  variants: { link: { true: "no-underline hover:bg-b-2" } }
@@ -33,9 +39,9 @@ var Contact_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ define
33
39
  }, [createVNode(unref(ScalarIconEnvelopeSimple), {
34
40
  class: "size-3 text-current",
35
41
  weight: "bold"
36
- }), createElementVNode("span", _hoisted_3, toDisplayString(__props.value.name), 1)], 10, _hoisted_2)])) : createCommentVNode("", true), __props.value.url ? (openBlock(), createElementBlock("div", _hoisted_4, [createElementVNode("a", {
42
+ }), createElementVNode("span", _hoisted_3, toDisplayString(__props.value.name), 1)], 10, _hoisted_2)])) : createCommentVNode("", true), url.value ? (openBlock(), createElementBlock("div", _hoisted_4, [createElementVNode("a", {
37
43
  class: normalizeClass(unref(variants)({ link: true })),
38
- href: __props.value.url,
44
+ href: url.value,
39
45
  rel: "noopener noreferrer",
40
46
  target: "_blank"
41
47
  }, [createVNode(unref(ScalarIconLink), {
@@ -1 +1 @@
1
- {"version":3,"file":"Contact.vue.script.js","names":[],"sources":["../../../src/features/info-object/Contact.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconEnvelopeSimple, ScalarIconLink } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\nimport type { ContactObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: ContactObject\n}>()\n\nconst variants = cva({\n base: 'text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 group-last:mr-0 narrow:border',\n variants: {\n link: {\n true: 'no-underline hover:bg-b-2',\n },\n },\n})\n</script>\n\n<template>\n <template v-if=\"value\">\n <!-- Each link gets its own wrapper so the dividers render between them -->\n <div\n v-if=\"value.email\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"`mailto:${value.email}`\">\n <ScalarIconEnvelopeSimple\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value.name }}</span>\n </a>\n </div>\n <div\n v-if=\"value.url\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <!-- Avoid repeating the name when the email link already shows it -->\n <span class=\"ml-1 empty:hidden\">{{\n value.email ? '' : value.name\n }}</span>\n </a>\n </div>\n <div\n v-else-if=\"!value.email && value.name\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <span :class=\"variants({ link: false })\">\n {{ value.name }}\n </span>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;EASA,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,MAAM,EACJ,MAAM,6BACP,EACF;GACF,CAAA;;UAIiB,QAAA,SAAA,WAAA,EAAhB,mBAsCW,UAAA,EAAA,KAAA,GAAA,EAAA,CAnCD,QAAA,MAAM,SAAA,WAAA,EADd,mBAWM,OAXN,YAWM,CARJ,mBAOI,KAAA;IAND,OAAK,eAAE,MAAA,SAAQ,CAAA,EAAA,MAAA,MAAA,CAAA,CAAA;IACf,MAAI,UAAY,QAAA,MAAM;OACvB,YAEkB,MAAA,yBAAA,EAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAuD,QAAvD,YAAuD,gBAApB,QAAA,MAAM,KAAI,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA,CAAA,CAAA,IAAA,mBAAA,IAAA,KAAA,EAIzC,QAAA,MAAM,OAAA,WAAA,EADd,mBAgBM,OAhBN,YAgBM,CAbJ,mBAYI,KAAA;IAXD,OAAK,eAAE,MAAA,SAAQ,CAAA,EAAA,MAAA,MAAA,CAAA,CAAA;IACf,MAAM,QAAA,MAAM;IACb,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,eAAA,EAAA;IADhB,OAAM;IACN,QAAO;OAET,mBAES,QAFT,YAES,gBADP,QAAA,MAAM,QAAK,KAAQ,QAAA,MAAM,KAAI,EAAA,EAAA,CAAA,EAAA,IAAA,WAAA,CAAA,CAAA,IAAA,CAKrB,QAAA,MAAM,SAAS,QAAA,MAAM,QAAA,WAAA,EADnC,mBAMM,OANN,YAMM,CAHJ,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,SAAQ,CAAA,EAAA,MAAA,OAAA,CAAA,CAAA,EAAA,EAAA,gBACjB,QAAA,MAAM,KAAI,EAAA,EAAA,CAAA,CAAA,IAAA,mBAAA,IAAA,KAAA,CAAA,EAAA,GAAA,IAAA,mBAAA,IAAA,KAAA"}
1
+ {"version":3,"file":"Contact.vue.script.js","names":[],"sources":["../../../src/features/info-object/Contact.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconEnvelopeSimple, ScalarIconLink } from '@scalar/icons'\nimport { cva } from '@scalar/use-hooks/useBindCx'\nimport type { ContactObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: ContactObject\n}>()\n\n/**\n * The contact URL comes from the OpenAPI document, which is untrusted input, so a protocol like\n * `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n\nconst variants = cva({\n base: 'text-c-1 mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 group-last:mr-0 narrow:border',\n variants: {\n link: {\n true: 'no-underline hover:bg-b-2',\n },\n },\n})\n</script>\n\n<template>\n <template v-if=\"value\">\n <!-- Each link gets its own wrapper so the dividers render between them -->\n <div\n v-if=\"value.email\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"`mailto:${value.email}`\">\n <ScalarIconEnvelopeSimple\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value.name }}</span>\n </a>\n </div>\n <div\n v-if=\"url\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n :class=\"variants({ link: true })\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <!-- Avoid repeating the name when the email link already shows it -->\n <span class=\"ml-1 empty:hidden\">{{\n value.email ? '' : value.name\n }}</span>\n </a>\n </div>\n <div\n v-else-if=\"!value.email && value.name\"\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <span :class=\"variants({ link: false })\">\n {{ value.name }}\n </span>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAeA,MAAM,MAAM,eAAe,YAAY,QAAA,OAAO,GAAG,CAAC;EAElD,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,MAAM,EACJ,MAAM,4BACR,EACF;EACF,CAAC;;UAIiB,QAAA,SAAA,UAAA,GAAhB,mBAsCW,UAAA,EAAA,KAAA,EAAA,GAAA,CAnCD,QAAA,MAAM,SAAA,UAAA,GADd,mBAWM,OAXN,YAWM,CARJ,mBAOI,KAAA;IAND,OAAK,eAAE,MAAA,QAAA,CAAQ,CAAA,EAAA,MAAA,KAAA,CAAA,CAAA;IACf,MAAI,UAAY,QAAA,MAAM;OACvB,YAEkB,MAAA,wBAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAuD,QAAvD,YAAuD,gBAApB,QAAA,MAAM,IAAI,GAAA,CAAA,CAAA,GAAA,IAAA,UAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA,GAIzC,IAAA,SAAA,UAAA,GADR,mBAgBM,OAhBN,YAgBM,CAbJ,mBAYI,KAAA;IAXD,OAAK,eAAE,MAAA,QAAA,CAAQ,CAAA,EAAA,MAAA,KAAA,CAAA,CAAA;IACf,MAAM,IAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,cAAA,GAAA;IADhB,OAAM;IACN,QAAO;OAET,mBAES,QAFT,YAES,gBADP,QAAA,MAAM,QAAK,KAAQ,QAAA,MAAM,IAAI,GAAA,CAAA,CAAA,GAAA,IAAA,UAAA,CAAA,CAAA,KAAA,CAKrB,QAAA,MAAM,SAAS,QAAA,MAAM,QAAA,UAAA,GADnC,mBAMM,OANN,YAMM,CAHJ,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,QAAA,CAAQ,CAAA,EAAA,MAAA,MAAA,CAAA,CAAA,EAAA,GAAA,gBACjB,QAAA,MAAM,IAAI,GAAA,CAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA,CAAA,GAAA,EAAA,KAAA,mBAAA,IAAA,IAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"InfoLink.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/InfoLink.vue"],"names":[],"mappings":"AA6BA,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ,CAAC;AA0EF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"InfoLink.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/InfoLink.vue"],"names":[],"mappings":"AA+CA,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ,CAAC;AA2GF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"InfoLink.vue.js","names":[],"sources":["../../../src/features/info-object/InfoLink.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconLink } from '@scalar/icons'\n\ndefineProps<{\n name: string\n url: string\n}>()\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </a>\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"InfoLink.vue.js","names":[],"sources":["../../../src/features/info-object/InfoLink.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconLink } from '@scalar/icons'\nimport { computed } from 'vue'\n\nconst { url } = defineProps<{\n name: string\n url: string\n}>()\n\n/**\n * The link URL comes from the `x-scalar-links` extension of the OpenAPI document, which is\n * untrusted input, so a protocol like `javascript:` would execute script on click. Fall back to\n * the plain text label in that case.\n */\nconst safeUrl = computed(() => sanitizeUrl(url))\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"safeUrl\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"safeUrl\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </a>\n <template v-else>\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":""}
@@ -1,26 +1,38 @@
1
- import { createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
1
+ import { Fragment, computed, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
2
2
  import { ScalarIconLink } from "@scalar/icons";
3
+ import { sanitizeUrl } from "@scalar/helpers/url/is-safe-url";
3
4
  //#region src/features/info-object/InfoLink.vue?vue&type=script&setup=true&lang.ts
4
5
  var _hoisted_1 = { class: "group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0" };
5
6
  var _hoisted_2 = ["href"];
6
7
  var _hoisted_3 = { class: "ml-1 empty:hidden" };
7
- var InfoLink_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
8
+ var _hoisted_4 = { class: "ml-1 empty:hidden" };
9
+ var InfoLink_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
8
10
  __name: "InfoLink",
9
11
  props: {
10
12
  name: {},
11
13
  url: {}
12
14
  },
13
15
  setup(__props) {
16
+ /**
17
+ * The link URL comes from the `x-scalar-links` extension of the OpenAPI document, which is
18
+ * untrusted input, so a protocol like `javascript:` would execute script on click. Fall back to
19
+ * the plain text label in that case.
20
+ */
21
+ const safeUrl = computed(() => sanitizeUrl(__props.url));
14
22
  return (_ctx, _cache) => {
15
- return openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("a", {
23
+ return openBlock(), createElementBlock("div", _hoisted_1, [safeUrl.value ? (openBlock(), createElementBlock("a", {
24
+ key: 0,
16
25
  class: "text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0",
17
- href: __props.url,
26
+ href: safeUrl.value,
18
27
  rel: "noopener noreferrer",
19
28
  target: "_blank"
20
29
  }, [createVNode(unref(ScalarIconLink), {
21
30
  class: "size-3 text-current",
22
31
  weight: "bold"
23
- }), createElementVNode("span", _hoisted_3, toDisplayString(__props.name), 1)], 8, _hoisted_2)]);
32
+ }), createElementVNode("span", _hoisted_3, toDisplayString(__props.name), 1)], 8, _hoisted_2)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createVNode(unref(ScalarIconLink), {
33
+ class: "size-3 text-current",
34
+ weight: "bold"
35
+ }), createElementVNode("span", _hoisted_4, toDisplayString(__props.name), 1)], 64))]);
24
36
  };
25
37
  }
26
38
  });
@@ -1 +1 @@
1
- {"version":3,"file":"InfoLink.vue.script.js","names":[],"sources":["../../../src/features/info-object/InfoLink.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconLink } from '@scalar/icons'\n\ndefineProps<{\n name: string\n url: string\n}>()\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </a>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;uBAUE,mBAYM,OAZN,YAYM,CAVJ,mBASI,KAAA;IARF,OAAM;IACL,MAAM,QAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,eAAA,EAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAiD,QAAjD,YAAiD,gBAAd,QAAA,KAAI,EAAA,EAAA,CAAA,EAAA,GAAA,WAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"InfoLink.vue.script.js","names":[],"sources":["../../../src/features/info-object/InfoLink.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconLink } from '@scalar/icons'\nimport { computed } from 'vue'\n\nconst { url } = defineProps<{\n name: string\n url: string\n}>()\n\n/**\n * The link URL comes from the `x-scalar-links` extension of the OpenAPI document, which is\n * untrusted input, so a protocol like `javascript:` would execute script on click. Fall back to\n * the plain text label in that case.\n */\nconst safeUrl = computed(() => sanitizeUrl(url))\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"safeUrl\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"safeUrl\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </a>\n <template v-else>\n <ScalarIconLink\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAeA,MAAM,UAAU,eAAe,YAAY,QAAA,GAAG,CAAC;;uBAI7C,mBAmBM,OAnBN,YAmBM,CAhBI,QAAA,SAAA,UAAA,GADR,mBAUI,KAAA;;IARF,OAAM;IACL,MAAM,QAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,cAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAiD,QAAjD,YAAiD,gBAAd,QAAA,IAAI,GAAA,CAAA,CAAA,GAAA,GAAA,UAAA,MAAA,UAAA,GAEzC,mBAKW,UAAA,EAAA,KAAA,EAAA,GAAA,CAJT,YAEkB,MAAA,cAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAiD,QAAjD,YAAiD,gBAAd,QAAA,IAAI,GAAA,CAAA,CAAA,GAAA,EAAA,EAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"License.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/License.vue"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAEjG,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,aAAa,GAAG,qBAAqB,CAAA;CAC9C,CAAC;AAqGF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"License.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/License.vue"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAGjG,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,aAAa,GAAG,qBAAqB,CAAA;CAC9C,CAAC;AA+GF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"License.vue.js","names":[],"sources":["../../../src/features/info-object/License.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconGavel } from '@scalar/icons'\nimport type { AsyncApiLicenseObject } from '@scalar/types/asyncapi/3.1'\nimport type { LicenseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: LicenseObject | AsyncApiLicenseObject\n}>()\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex h-fit items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"value?.url\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{\n value?.name || ('identifier' in value && value.identifier) || value.url\n }}</span>\n </a>\n <template v-else>\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value?.name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"License.vue.js","names":[],"sources":["../../../src/features/info-object/License.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconGavel } from '@scalar/icons'\nimport type { AsyncApiLicenseObject } from '@scalar/types/asyncapi/3.1'\nimport type { LicenseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: LicenseObject | AsyncApiLicenseObject\n}>()\n\n/**\n * The license URL comes from the OpenAPI document, which is untrusted input, so a protocol like\n * `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex h-fit items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"url\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{\n value?.name ||\n (value && 'identifier' in value && value.identifier) ||\n url\n }}</span>\n </a>\n <template v-else>\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value?.name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":""}
@@ -1,25 +1,31 @@
1
- import { Fragment, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
1
+ import { Fragment, computed, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
2
2
  import { ScalarIconGavel } from "@scalar/icons";
3
+ import { sanitizeUrl } from "@scalar/helpers/url/is-safe-url";
3
4
  //#region src/features/info-object/License.vue?vue&type=script&setup=true&lang.ts
4
5
  var _hoisted_1 = { class: "group narrow:border-r-0 narrow:first:ml-0 flex h-fit items-center border-r first:ml-auto last:border-r-0" };
5
6
  var _hoisted_2 = ["href"];
6
7
  var _hoisted_3 = { class: "ml-1 empty:hidden" };
7
8
  var _hoisted_4 = { class: "ml-1 empty:hidden" };
8
- var License_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
9
+ var License_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
9
10
  __name: "License",
10
11
  props: { value: {} },
11
12
  setup(__props) {
13
+ /**
14
+ * The license URL comes from the OpenAPI document, which is untrusted input, so a protocol like
15
+ * `javascript:` would execute script on click. Fall back to the plain text label in that case.
16
+ */
17
+ const url = computed(() => sanitizeUrl(__props.value?.url));
12
18
  return (_ctx, _cache) => {
13
- return openBlock(), createElementBlock("div", _hoisted_1, [__props.value?.url ? (openBlock(), createElementBlock("a", {
19
+ return openBlock(), createElementBlock("div", _hoisted_1, [url.value ? (openBlock(), createElementBlock("a", {
14
20
  key: 0,
15
21
  class: "text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0",
16
- href: __props.value.url,
22
+ href: url.value,
17
23
  rel: "noopener noreferrer",
18
24
  target: "_blank"
19
25
  }, [createVNode(unref(ScalarIconGavel), {
20
26
  class: "size-3 text-current",
21
27
  weight: "bold"
22
- }), createElementVNode("span", _hoisted_3, toDisplayString(__props.value?.name || "identifier" in __props.value && __props.value.identifier || __props.value.url), 1)], 8, _hoisted_2)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createVNode(unref(ScalarIconGavel), {
28
+ }), createElementVNode("span", _hoisted_3, toDisplayString(__props.value?.name || __props.value && "identifier" in __props.value && __props.value.identifier || url.value), 1)], 8, _hoisted_2)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createVNode(unref(ScalarIconGavel), {
23
29
  class: "size-3 text-current",
24
30
  weight: "bold"
25
31
  }), createElementVNode("span", _hoisted_4, toDisplayString(__props.value?.name), 1)], 64))]);
@@ -1 +1 @@
1
- {"version":3,"file":"License.vue.script.js","names":[],"sources":["../../../src/features/info-object/License.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconGavel } from '@scalar/icons'\nimport type { AsyncApiLicenseObject } from '@scalar/types/asyncapi/3.1'\nimport type { LicenseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\ndefineProps<{\n value?: LicenseObject | AsyncApiLicenseObject\n}>()\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex h-fit items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"value?.url\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value.url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{\n value?.name || ('identifier' in value && value.identifier) || value.url\n }}</span>\n </a>\n <template v-else>\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value?.name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;uBAWE,mBAqBM,OArBN,YAqBM,CAlBI,QAAA,OAAO,OAAA,WAAA,EADf,mBAYI,KAAA;;IAVF,OAAM;IACL,MAAM,QAAA,MAAM;IACb,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,gBAAA,EAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAES,QAFT,YAES,gBADP,QAAA,OAAO,QAAI,gBAAqB,QAAA,SAAS,QAAA,MAAM,cAAe,QAAA,MAAM,IAAG,EAAA,EAAA,CAAA,EAAA,GAAA,WAAA,KAAA,WAAA,EAG3E,mBAKW,UAAA,EAAA,KAAA,GAAA,EAAA,CAJT,YAEkB,MAAA,gBAAA,EAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAwD,QAAxD,YAAwD,gBAArB,QAAA,OAAO,KAAI,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
1
+ {"version":3,"file":"License.vue.script.js","names":[],"sources":["../../../src/features/info-object/License.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconGavel } from '@scalar/icons'\nimport type { AsyncApiLicenseObject } from '@scalar/types/asyncapi/3.1'\nimport type { LicenseObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nconst { value } = defineProps<{\n value?: LicenseObject | AsyncApiLicenseObject\n}>()\n\n/**\n * The license URL comes from the OpenAPI document, which is untrusted input, so a protocol like\n * `javascript:` would execute script on click. Fall back to the plain text label in that case.\n */\nconst url = computed(() => sanitizeUrl(value?.url))\n</script>\n\n<template>\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex h-fit items-center border-r first:ml-auto last:border-r-0\">\n <a\n v-if=\"url\"\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{\n value?.name ||\n (value && 'identifier' in value && value.identifier) ||\n url\n }}</span>\n </a>\n <template v-else>\n <ScalarIconGavel\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">{{ value?.name }}</span>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAeA,MAAM,MAAM,eAAe,YAAY,QAAA,OAAO,GAAG,CAAC;;uBAIhD,mBAuBM,OAvBN,YAuBM,CApBI,IAAA,SAAA,UAAA,GADR,mBAcI,KAAA;;IAZF,OAAM;IACL,MAAM,IAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,eAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAIS,QAJT,YAIS,gBAHP,QAAA,OAAO,QAAiB,QAAA,SAAK,gBAAoB,QAAA,SAAS,QAAA,MAAM,cAAuB,IAAA,KAAG,GAAA,CAAA,CAAA,GAAA,GAAA,UAAA,MAAA,UAAA,GAK9F,mBAKW,UAAA,EAAA,KAAA,EAAA,GAAA,CAJT,YAEkB,MAAA,eAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAAwD,QAAxD,YAAwD,gBAArB,QAAA,OAAO,IAAI,GAAA,CAAA,CAAA,GAAA,EAAA,EAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"TermsOfService.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/TermsOfService.vue"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAA;AAI9F,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAA;CACrC,CAAC;AA8EF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"TermsOfService.vue.d.ts","sourceRoot":"","sources":["../../../src/features/info-object/TermsOfService.vue"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAA;AAK9F,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAA;CACrC,CAAC;AAsFF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TermsOfService.vue.js","names":[],"sources":["../../../src/features/info-object/TermsOfService.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconScroll } from '@scalar/icons'\nimport type { InfoObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n value?: InfoObject['termsOfService']\n}>()\nconst { translate } = useLocalization()\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconScroll\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">\n {{ translate('info.termsOfService') }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"TermsOfService.vue.js","names":[],"sources":["../../../src/features/info-object/TermsOfService.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconScroll } from '@scalar/icons'\nimport type { InfoObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport { useLocalization } from '@/features/localization'\n\nconst { value } = defineProps<{\n value?: InfoObject['termsOfService']\n}>()\nconst { translate } = useLocalization()\n\n/**\n * The terms of service URL comes from the OpenAPI document, which is untrusted input, so a\n * protocol like `javascript:` would execute script on click. Hide the link in that case.\n */\nconst url = computed(() => sanitizeUrl(value))\n</script>\n\n<template>\n <template v-if=\"url\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconScroll\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">\n {{ translate('info.termsOfService') }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":""}
@@ -1,6 +1,7 @@
1
1
  import { useLocalization } from "../localization/use-localization.js";
2
- import { createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
2
+ import { computed, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, toDisplayString, unref } from "vue";
3
3
  import { ScalarIconScroll } from "@scalar/icons";
4
+ import { sanitizeUrl } from "@scalar/helpers/url/is-safe-url";
4
5
  //#region src/features/info-object/TermsOfService.vue?vue&type=script&setup=true&lang.ts
5
6
  var _hoisted_1 = {
6
7
  key: 0,
@@ -8,15 +9,20 @@ var _hoisted_1 = {
8
9
  };
9
10
  var _hoisted_2 = ["href"];
10
11
  var _hoisted_3 = { class: "ml-1 empty:hidden" };
11
- var TermsOfService_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
12
+ var TermsOfService_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
12
13
  __name: "TermsOfService",
13
14
  props: { value: {} },
14
15
  setup(__props) {
15
16
  const { translate } = useLocalization();
17
+ /**
18
+ * The terms of service URL comes from the OpenAPI document, which is untrusted input, so a
19
+ * protocol like `javascript:` would execute script on click. Hide the link in that case.
20
+ */
21
+ const url = computed(() => sanitizeUrl(__props.value));
16
22
  return (_ctx, _cache) => {
17
- return __props.value ? (openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("a", {
23
+ return url.value ? (openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("a", {
18
24
  class: "text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0",
19
- href: __props.value,
25
+ href: url.value,
20
26
  rel: "noopener noreferrer",
21
27
  target: "_blank"
22
28
  }, [createVNode(unref(ScalarIconScroll), {
@@ -1 +1 @@
1
- {"version":3,"file":"TermsOfService.vue.script.js","names":[],"sources":["../../../src/features/info-object/TermsOfService.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ScalarIconScroll } from '@scalar/icons'\nimport type { InfoObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\n\nimport { useLocalization } from '@/features/localization'\n\ndefineProps<{\n value?: InfoObject['termsOfService']\n}>()\nconst { translate } = useLocalization()\n</script>\n\n<template>\n <template v-if=\"value\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"value\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconScroll\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">\n {{ translate('info.termsOfService') }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;EASA,MAAM,EAAE,cAAc,iBAAgB;;UAIpB,QAAA,SAAA,WAAA,EACd,mBAcM,OAdN,YAcM,CAZJ,mBAWI,KAAA;IAVF,OAAM;IACL,MAAM,QAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,iBAAA,EAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAEO,QAFP,YAEO,gBADF,MAAA,UAAS,CAAA,sBAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,WAAA,CAAA,CAAA,IAAA,mBAAA,IAAA,KAAA"}
1
+ {"version":3,"file":"TermsOfService.vue.script.js","names":[],"sources":["../../../src/features/info-object/TermsOfService.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { sanitizeUrl } from '@scalar/helpers/url/is-safe-url'\nimport { ScalarIconScroll } from '@scalar/icons'\nimport type { InfoObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'\nimport { computed } from 'vue'\n\nimport { useLocalization } from '@/features/localization'\n\nconst { value } = defineProps<{\n value?: InfoObject['termsOfService']\n}>()\nconst { translate } = useLocalization()\n\n/**\n * The terms of service URL comes from the OpenAPI document, which is untrusted input, so a\n * protocol like `javascript:` would execute script on click. Hide the link in that case.\n */\nconst url = computed(() => sanitizeUrl(value))\n</script>\n\n<template>\n <template v-if=\"url\">\n <div\n class=\"group narrow:border-r-0 narrow:first:ml-0 flex items-center border-r first:ml-auto last:border-r-0\">\n <a\n class=\"text-c-1 hover:bg-b-2 narrow:border mr-2 flex min-h-7 min-w-7 items-center rounded-lg px-2 py-1 no-underline group-last:mr-0\"\n :href=\"url\"\n rel=\"noopener noreferrer\"\n target=\"_blank\">\n <ScalarIconScroll\n class=\"size-3 text-current\"\n weight=\"bold\" />\n <span class=\"ml-1 empty:hidden\">\n {{ translate('info.termsOfService') }}\n </span>\n </a>\n </div>\n </template>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EAWA,MAAM,EAAE,cAAc,gBAAgB;;;;;EAMtC,MAAM,MAAM,eAAe,YAAY,QAAA,KAAK,CAAC;;UAI3B,IAAA,SAAA,UAAA,GACd,mBAcM,OAdN,YAcM,CAZJ,mBAWI,KAAA;IAVF,OAAM;IACL,MAAM,IAAA;IACP,KAAI;IACJ,QAAO;OACP,YAEkB,MAAA,gBAAA,GAAA;IADhB,OAAM;IACN,QAAO;OACT,mBAEO,QAFP,YAEO,gBADF,MAAA,SAAA,CAAS,CAAA,qBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,GAAA,UAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ar.js","names":[],"sources":["../../../../src/features/localization/locales/ar.ts"],"sourcesContent":["import type { ApiReferenceTranslations } from '@scalar/types/api-reference'\n\nexport const ar = {\n common: {\n additionalProperties: 'خصائص إضافية',\n const: 'ثابت',\n deprecated: 'مهمل',\n description: 'الوصف',\n discriminator: 'المميّز',\n enum: 'تعداد',\n format: 'التنسيق',\n greaterThan: 'أكبر من',\n httpMethod: 'طريقة HTTP',\n keys: 'المفاتيح',\n lessThan: 'أقل من',\n max: 'الحد الأقصى',\n min: 'الحد الأدنى',\n maxLength: 'أقصى طول',\n minLength: 'أدنى طول',\n multipleOf: 'مضاعف لـ',\n nullable: 'يقبل null',\n path: 'المسار',\n propertyNames: 'أسماء الخصائص',\n pattern: 'النمط',\n readOnly: 'قراءة فقط',\n required: 'مطلوب',\n hideValues: 'إخفاء القيم',\n showAllValues: 'عرض كل القيم',\n type: 'النوع',\n unique: 'فريد',\n values: 'القيم',\n writeOnly: 'كتابة فقط',\n },\n search: {\n label: 'بحث',\n inputLabel: 'أدخل استعلام البحث',\n open: 'فتح البحث',\n placeholder: 'بحث...',\n clear: 'مسح البحث',\n keyboardShortcut: 'اختصار لوحة المفاتيح:',\n command: 'مفتاح الأوامر',\n control: 'مفتاح التحكم',\n results: 'نتائج البحث في المرجع',\n navigate: 'تنقّل',\n select: 'اختيار',\n instructions: 'اضغط السهم للأعلى أو للأسفل للتنقل، Enter للاختيار، واكتب لتصفية النتائج',\n entryHeading: 'عنوان',\n entryOperation: 'عملية',\n entryTag: 'وسم',\n entryTagGroup: 'مجموعة وسوم',\n entryWebhook: 'خطاف ويب',\n },\n navigation: {\n introduction: 'المقدمة',\n closeGroup: 'إغلاق المجموعة',\n closeMenu: 'إغلاق القائمة',\n openGroup: 'فتح المجموعة',\n openMenu: 'فتح القائمة',\n operations: 'العمليات',\n endpoints: 'نقاط نهاية {name}',\n showAllEndpoints: 'إظهار كل نقاط نهاية {name}',\n sidebarFor: 'الشريط الجانبي لـ {name}',\n mainContent: 'وثائق واجهة برمجة التطبيقات لـ {name}',\n collapsed: 'مطوي',\n webhooks: 'خطافات الويب',\n channels: 'القنوات',\n },\n server: {\n label: 'الخادم',\n select: 'اختر خادماً',\n },\n info: {\n termsOfService: 'شروط الخدمة',\n },\n asyncapi: {\n servers: 'الخوادم',\n protocols: 'البروتوكولات',\n },\n clientLibraries: {\n heading: 'مكتبات العملاء',\n more: 'المزيد',\n selectAll: 'اختر من جميع العملاء',\n },\n operation: {\n body: 'الجسم',\n cookies: 'ملفات تعريف الارتباط',\n headers: 'الرؤوس',\n pathParameters: 'معاملات المسار',\n queryParameters: 'معاملات الاستعلام',\n requestBody: 'جسم الطلب',\n responses: 'الاستجابات',\n testRequest: 'اختبار الطلب',\n webhook: 'خطاف ويب',\n selectedContentType: 'نوع المحتوى المحدد',\n hideHeaders: 'إخفاء الرؤوس',\n showHeaders: 'إظهار الرؤوس',\n callbacks: 'عمليات الاستدعاء',\n },\n response: {\n exampleResponses: 'أمثلة الاستجابات',\n noBody: 'لا يوجد جسم',\n showSchema: 'عرض المخطط',\n status: 'الحالة',\n },\n schema: {\n example: 'مثال',\n examples: 'أمثلة',\n default: 'الافتراضي',\n schema: 'المخطط',\n emptyObject: 'كائن فارغ',\n showAdditionalProperties: 'إظهار الخصائص الإضافية',\n childAttributes: 'السمات الفرعية',\n hideChildAttributes: 'إخفاء {name}',\n showChildAttributes: 'إظهار {name}',\n forName: 'لـ {name}',\n showSchemaDetails: 'إظهار تفاصيل المخطط',\n oneOf: 'واحد من',\n anyOf: 'أي من',\n allOf: 'كل من',\n not: 'ليس',\n unknownType: 'نوع غير معروف',\n },\n download: {\n openapi: 'تنزيل مستند OpenAPI',\n asyncapi: 'تنزيل مستند AsyncAPI',\n },\n models: {\n label: 'النماذج',\n },\n actions: {\n copyLink: 'نسخ الرابط',\n copyLinkTo: 'نسخ الرابط إلى {name}',\n copyToClipboard: 'نسخ الرابط إلى الحافظة',\n copyEndpointUrl: 'نسخ رابط endpoint',\n showMore: 'عرض المزيد',\n },\n agent: {\n askAi: 'اسأل الذكاء الاصطناعي',\n askAiAgent: 'اسأل وكيل الذكاء الاصطناعي',\n close: 'إغلاق العميل',\n },\n mcp: {\n generate: 'إنشاء MCP',\n connect: 'ربط MCP',\n },\n developerTools: {\n title: 'أدوات المطورين',\n configure: 'الإعداد',\n share: 'مشاركة',\n deploy: 'نشر',\n scalarConfiguration: 'إعدادات Scalar',\n theme: 'السمة',\n layout: 'التخطيط',\n layoutOptions: 'خيارات التخطيط',\n intro: 'تتيح لك أدوات المطورين تخصيص مظهر الوثائق وسلوكها. يمكنك أيضًا مشاركة وثائقك باستخدام Scalar Registry.',\n disableToolbarBefore: 'لتعطيل شريط الأدوات، عيّن',\n disableToolbarAfter: 'في الإعدادات.',\n localhostOnly: 'لن تظهر أدوات المطورين إلا عند التشغيل على localhost.',\n layoutModern: 'حديث',\n layoutClassic: 'كلاسيكي',\n showSidebar: 'إظهار الشريط الجانبي',\n defaultOpenFirstTag: 'فتح أول وسم افتراضيًا',\n defaultOpenAllTags: 'فتح كل الوسوم افتراضيًا',\n expandAll: 'توسيع كل {label}',\n expandAllResponses: 'توسيع كل الاستجابات',\n hideClientButton: 'إخفاء زر العميل',\n hideDarkModeToggle: 'إخفاء مفتاح الوضع الداكن',\n hideModels: 'إخفاء {label}',\n hideSearch: 'إخفاء البحث',\n showOperationId: 'إظهار معرّف العملية',\n hideTestRequestButton: 'إخفاء زر طلب الاختبار',\n scalarDocs: 'Scalar Docs',\n deployDescription: 'انشر وثائقك على Scalar، منصة الوثائق الحديثة لواجهة API الخاصة بك وكل شيء آخر.',\n shareTitle: 'مشاركة API Reference',\n shareDescription: 'حمّل مستند OpenAPI لمشاركة API Reference مع الآخرين. الأمر بسيط كضغط زر.',\n uploadDocument: 'تحميل المستند',\n temporaryLinkExpiration: 'سيتم حذف المستند تلقائيًا بعد 7 أيام.',\n deployOnScalar: 'النشر على Scalar',\n deployFree: 'انشر وثائقك مجانًا.',\n additionalFeaturesMightRequire: 'قد تتطلب الميزات الإضافية',\n generate: 'إنشاء',\n passwordProtection: 'الحماية بكلمة مرور',\n customDomains: 'نطاقات مخصصة',\n freeFormContent: 'محتوى حر',\n cdnInfrastructure: 'بنية CDN التحتية',\n pullFromGitHub: 'السحب من GitHub',\n markdownMdx: 'Markdown/MDX',\n spectralLinting: 'فحص Spectral',\n jsonSchemaHosting: 'استضافة JSON Schema',\n askAi: 'اسأل الذكاء الاصطناعي',\n mcpServers: 'خوادم MCP',\n unableToExportDocument: 'تعذر تصدير المستند النشط',\n unknownError: 'حدث خطأ غير معروف',\n },\n gettingStarted: {\n swaggerEditor: 'Swagger Editor',\n description:\n 'مرحبًا بك في Scalar API References + Swagger Editor، أداة مجانية ومفتوحة المصدر تأخذ ملف Swagger/OAS الخاص بك وتنشئ API References جميلة.',\n showExample: 'إظهار مثال',\n uploadFile: 'تحميل ملف',\n integrations: 'التكاملات',\n theming: 'السمات',\n features: 'الميزات',\n customize: 'التخصيص',\n customizeDescription: 'استخدم الخطوط ولوحات الألوان الخاصة بك، أو استخدم سماتنا!',\n testing: 'الاختبار',\n testingDescription: 'REST API Client مدمج بعمق (مجاني ومفتوح المصدر أيضًا)',\n search: 'البحث',\n searchDescription: 'بحث مدمج بالكامل (باستخدام fuse.js)',\n hosting: 'الاستضافة',\n hostingDescription: 'استضافة مجانية لنطاق فرعي على https://apidocumentation.com',\n openApiSwagger: 'OpenAPI و Swagger',\n openApiSwaggerDescription: 'دعم OpenAPI 3.1 و OpenAPI 3.0 و Swagger 2.0',\n codeSamples: 'أمثلة التعليمات البرمجية',\n codeSamplesDescription: 'أمثلة تعليمات برمجية لعرض API الخاص بك بأشهر اللغات',\n },\n footer: {\n poweredByScalar: 'مدعوم من Scalar',\n },\n authentication: {\n title: 'المصادقة',\n accepts: 'يقبل',\n allOf: 'كل ما يلي:',\n authentication: 'المصادقة',\n optional: 'المصادقة اختيارية',\n oneOf: 'واحد من:',\n required: 'المصادقة مطلوبة',\n requires: 'يتطلب',\n scopes: 'نطاقات OAuth',\n },\n} satisfies ApiReferenceTranslations\n"],"mappings":";AAEA,IAAa,KAAK;CAChB,QAAQ;EACN,sBAAsB;EACtB,OAAO;EACP,YAAY;EACZ,aAAa;EACb,eAAe;EACf,MAAM;EACN,QAAQ;EACR,aAAa;EACb,YAAY;EACZ,MAAM;EACN,UAAU;EACV,KAAK;EACL,KAAK;EACL,WAAW;EACX,WAAW;EACX,YAAY;EACZ,UAAU;EACV,MAAM;EACN,eAAe;EACf,SAAS;EACT,UAAU;EACV,UAAU;EACV,YAAY;EACZ,eAAe;EACf,MAAM;EACN,QAAQ;EACR,QAAQ;EACR,WAAW;EACZ;CACD,QAAQ;EACN,OAAO;EACP,YAAY;EACZ,MAAM;EACN,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,SAAS;EACT,SAAS;EACT,SAAS;EACT,UAAU;EACV,QAAQ;EACR,cAAc;EACd,cAAc;EACd,gBAAgB;EAChB,UAAU;EACV,eAAe;EACf,cAAc;EACf;CACD,YAAY;EACV,cAAc;EACd,YAAY;EACZ,WAAW;EACX,WAAW;EACX,UAAU;EACV,YAAY;EACZ,WAAW;EACX,kBAAkB;EAClB,YAAY;EACZ,aAAa;EACb,WAAW;EACX,UAAU;EACV,UAAU;EACX;CACD,QAAQ;EACN,OAAO;EACP,QAAQ;EACT;CACD,MAAM,EACJ,gBAAgB,eACjB;CACD,UAAU;EACR,SAAS;EACT,WAAW;EACZ;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACN,WAAW;EACZ;CACD,WAAW;EACT,MAAM;EACN,SAAS;EACT,SAAS;EACT,gBAAgB;EAChB,iBAAiB;EACjB,aAAa;EACb,WAAW;EACX,aAAa;EACb,SAAS;EACT,qBAAqB;EACrB,aAAa;EACb,aAAa;EACb,WAAW;EACZ;CACD,UAAU;EACR,kBAAkB;EAClB,QAAQ;EACR,YAAY;EACZ,QAAQ;EACT;CACD,QAAQ;EACN,SAAS;EACT,UAAU;EACV,SAAS;EACT,QAAQ;EACR,aAAa;EACb,0BAA0B;EAC1B,iBAAiB;EACjB,qBAAqB;EACrB,qBAAqB;EACrB,SAAS;EACT,mBAAmB;EACnB,OAAO;EACP,OAAO;EACP,OAAO;EACP,KAAK;EACL,aAAa;EACd;CACD,UAAU;EACR,SAAS;EACT,UAAU;EACX;CACD,QAAQ,EACN,OAAO,WACR;CACD,SAAS;EACP,UAAU;EACV,YAAY;EACZ,iBAAiB;EACjB,iBAAiB;EACjB,UAAU;EACX;CACD,OAAO;EACL,OAAO;EACP,YAAY;EACZ,OAAO;EACR;CACD,KAAK;EACH,UAAU;EACV,SAAS;EACV;CACD,gBAAgB;EACd,OAAO;EACP,WAAW;EACX,OAAO;EACP,QAAQ;EACR,qBAAqB;EACrB,OAAO;EACP,QAAQ;EACR,eAAe;EACf,OAAO;EACP,sBAAsB;EACtB,qBAAqB;EACrB,eAAe;EACf,cAAc;EACd,eAAe;EACf,aAAa;EACb,qBAAqB;EACrB,oBAAoB;EACpB,WAAW;EACX,oBAAoB;EACpB,kBAAkB;EAClB,oBAAoB;EACpB,YAAY;EACZ,YAAY;EACZ,iBAAiB;EACjB,uBAAuB;EACvB,YAAY;EACZ,mBAAmB;EACnB,YAAY;EACZ,kBAAkB;EAClB,gBAAgB;EAChB,yBAAyB;EACzB,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,UAAU;EACV,oBAAoB;EACpB,eAAe;EACf,iBAAiB;EACjB,mBAAmB;EACnB,gBAAgB;EAChB,aAAa;EACb,iBAAiB;EACjB,mBAAmB;EACnB,OAAO;EACP,YAAY;EACZ,wBAAwB;EACxB,cAAc;EACf;CACD,gBAAgB;EACd,eAAe;EACf,aACE;EACF,aAAa;EACb,YAAY;EACZ,cAAc;EACd,SAAS;EACT,UAAU;EACV,WAAW;EACX,sBAAsB;EACtB,SAAS;EACT,oBAAoB;EACpB,QAAQ;EACR,mBAAmB;EACnB,SAAS;EACT,oBAAoB;EACpB,gBAAgB;EAChB,2BAA2B;EAC3B,aAAa;EACb,wBAAwB;EACzB;CACD,QAAQ,EACN,iBAAiB,mBAClB;CACD,gBAAgB;EACd,OAAO;EACP,SAAS;EACT,OAAO;EACP,gBAAgB;EAChB,UAAU;EACV,OAAO;EACP,UAAU;EACV,UAAU;EACV,QAAQ;EACT;CACF"}
1
+ {"version":3,"file":"ar.js","names":[],"sources":["../../../../src/features/localization/locales/ar.ts"],"sourcesContent":["import type { ApiReferenceTranslations } from '@scalar/types/api-reference'\n\nexport const ar = {\n common: {\n additionalProperties: 'خصائص إضافية',\n const: 'ثابت',\n deprecated: 'مهمل',\n description: 'الوصف',\n discriminator: 'المميّز',\n enum: 'تعداد',\n format: 'التنسيق',\n greaterThan: 'أكبر من',\n httpMethod: 'طريقة HTTP',\n keys: 'المفاتيح',\n lessThan: 'أقل من',\n max: 'الحد الأقصى',\n min: 'الحد الأدنى',\n maxLength: 'أقصى طول',\n minLength: 'أدنى طول',\n multipleOf: 'مضاعف لـ',\n nullable: 'يقبل null',\n path: 'المسار',\n propertyNames: 'أسماء الخصائص',\n pattern: 'النمط',\n readOnly: 'قراءة فقط',\n required: 'مطلوب',\n hideValues: 'إخفاء القيم',\n showAllValues: 'عرض كل القيم',\n type: 'النوع',\n unique: 'فريد',\n values: 'القيم',\n writeOnly: 'كتابة فقط',\n },\n search: {\n label: 'بحث',\n inputLabel: 'أدخل استعلام البحث',\n open: 'فتح البحث',\n placeholder: 'بحث...',\n clear: 'مسح البحث',\n keyboardShortcut: 'اختصار لوحة المفاتيح:',\n command: 'مفتاح الأوامر',\n control: 'مفتاح التحكم',\n results: 'نتائج البحث في المرجع',\n navigate: 'تنقّل',\n select: 'اختيار',\n instructions: 'اضغط السهم للأعلى أو للأسفل للتنقل، Enter للاختيار، واكتب لتصفية النتائج',\n entryHeading: 'عنوان',\n entryOperation: 'عملية',\n entryTag: 'وسم',\n entryTagGroup: 'مجموعة وسوم',\n entryWebhook: 'خطاف ويب',\n },\n navigation: {\n introduction: 'المقدمة',\n closeGroup: 'إغلاق المجموعة',\n closeMenu: 'إغلاق القائمة',\n openGroup: 'فتح المجموعة',\n openMenu: 'فتح القائمة',\n operations: 'العمليات',\n endpoints: 'نقاط نهاية {name}',\n showAllEndpoints: 'إظهار كل نقاط نهاية {name}',\n sidebarFor: 'الشريط الجانبي لـ {name}',\n mainContent: 'وثائق واجهة برمجة التطبيقات لـ {name}',\n collapsed: 'مطوي',\n webhooks: 'خطافات الويب',\n channels: 'القنوات',\n },\n server: {\n label: 'الخادم',\n select: 'اختر خادماً',\n },\n info: {\n termsOfService: 'شروط الخدمة',\n },\n asyncapi: {\n servers: 'الخوادم',\n protocols: 'البروتوكولات',\n },\n clientLibraries: {\n heading: 'مكتبات العملاء',\n more: 'المزيد',\n selectAll: 'اختر من جميع العملاء',\n },\n operation: {\n body: 'الجسم',\n cookies: 'ملفات تعريف الارتباط',\n headers: 'الرؤوس',\n pathParameters: 'معاملات المسار',\n queryParameters: 'معاملات الاستعلام',\n requestBody: 'جسم الطلب',\n responses: 'الاستجابات',\n testRequest: 'اختبار الطلب',\n webhook: 'خطاف ويب',\n selectedContentType: 'نوع المحتوى المحدد',\n hideHeaders: 'إخفاء الرؤوس',\n showHeaders: 'إظهار الرؤوس',\n callbacks: 'عمليات الاستدعاء',\n },\n response: {\n exampleResponses: 'أمثلة الاستجابات',\n noBody: 'لا يوجد جسم',\n showSchema: 'عرض المخطط',\n status: 'الحالة',\n },\n schema: {\n example: 'مثال',\n examples: 'أمثلة',\n default: 'الافتراضي',\n schema: 'المخطط',\n emptyObject: 'كائن فارغ',\n showAdditionalProperties: 'إظهار الخصائص الإضافية',\n childAttributes: 'السمات الفرعية',\n hideChildAttributes: 'إخفاء {name}',\n showChildAttributes: 'إظهار {name}',\n forName: 'لـ {name}',\n showSchemaDetails: 'إظهار تفاصيل المخطط',\n oneOf: 'واحد من',\n anyOf: 'أي من',\n allOf: 'كل من',\n not: 'ليس',\n unknownType: 'نوع غير معروف',\n },\n download: {\n openapi: 'تنزيل مستند OpenAPI',\n asyncapi: 'تنزيل مستند AsyncAPI',\n },\n models: {\n label: 'النماذج',\n },\n actions: {\n copyLink: 'نسخ الرابط',\n copyLinkTo: 'نسخ الرابط إلى {name}',\n copyToClipboard: 'نسخ الرابط إلى الحافظة',\n copyEndpointUrl: 'نسخ رابط endpoint',\n showMore: 'عرض المزيد',\n },\n agent: {\n askAi: 'اسأل الذكاء الاصطناعي',\n askAiAgent: 'اسأل وكيل الذكاء الاصطناعي',\n close: 'إغلاق العميل',\n },\n mcp: {\n generate: 'إنشاء MCP',\n connect: 'ربط MCP',\n },\n developerTools: {\n title: 'أدوات المطورين',\n configure: 'الإعداد',\n share: 'مشاركة',\n deploy: 'نشر',\n scalarConfiguration: 'إعدادات Scalar',\n theme: 'السمة',\n layout: 'التخطيط',\n layoutOptions: 'خيارات التخطيط',\n intro: 'تتيح لك أدوات المطورين تخصيص مظهر الوثائق وسلوكها. يمكنك أيضًا مشاركة وثائقك باستخدام Scalar Registry.',\n disableToolbarBefore: 'لتعطيل شريط الأدوات، عيّن',\n disableToolbarAfter: 'في الإعدادات.',\n localhostOnly: 'لن تظهر أدوات المطورين إلا عند التشغيل على localhost.',\n layoutModern: 'حديث',\n layoutClassic: 'كلاسيكي',\n showSidebar: 'إظهار الشريط الجانبي',\n defaultOpenFirstTag: 'فتح أول وسم افتراضيًا',\n defaultOpenAllTags: 'فتح كل الوسوم افتراضيًا',\n expandAll: 'توسيع كل {label}',\n expandAllResponses: 'توسيع كل الاستجابات',\n hideClientButton: 'إخفاء زر العميل',\n hideDarkModeToggle: 'إخفاء مفتاح الوضع الداكن',\n hideModels: 'إخفاء {label}',\n hideSearch: 'إخفاء البحث',\n showOperationId: 'إظهار معرّف العملية',\n hideTestRequestButton: 'إخفاء زر طلب الاختبار',\n scalarDocs: 'Scalar Docs',\n deployDescription: 'انشر وثائقك على Scalar، منصة الوثائق الحديثة لواجهة API الخاصة بك وكل شيء آخر.',\n shareTitle: 'مشاركة API Reference',\n shareDescription: 'حمّل مستند OpenAPI لمشاركة API Reference مع الآخرين. الأمر بسيط كضغط زر.',\n uploadDocument: 'تحميل المستند',\n temporaryLinkExpiration: 'سيتم حذف المستند تلقائيًا بعد 7 أيام.',\n deployOnScalar: 'النشر على Scalar',\n deployFree: 'انشر وثائقك مجانًا.',\n additionalFeaturesMightRequire: 'قد تتطلب الميزات الإضافية',\n generate: 'إنشاء',\n passwordProtection: 'الحماية بكلمة مرور',\n customDomains: 'نطاقات مخصصة',\n freeFormContent: 'محتوى حر',\n cdnInfrastructure: 'بنية CDN التحتية',\n pullFromGitHub: 'السحب من GitHub',\n markdownMdx: 'Markdown/MDX',\n spectralLinting: 'فحص Spectral',\n jsonSchemaHosting: 'استضافة JSON Schema',\n askAi: 'اسأل الذكاء الاصطناعي',\n mcpServers: 'خوادم MCP',\n unableToExportDocument: 'تعذر تصدير المستند النشط',\n unknownError: 'حدث خطأ غير معروف',\n },\n gettingStarted: {\n swaggerEditor: 'Swagger Editor',\n description:\n 'مرحبًا بك في Scalar API References + Swagger Editor، أداة مجانية ومفتوحة المصدر تأخذ ملف Swagger/OAS الخاص بك وتنشئ API References جميلة.',\n showExample: 'إظهار مثال',\n uploadFile: 'تحميل ملف',\n integrations: 'التكاملات',\n theming: 'السمات',\n features: 'الميزات',\n customize: 'التخصيص',\n customizeDescription: 'استخدم الخطوط ولوحات الألوان الخاصة بك، أو استخدم سماتنا!',\n testing: 'الاختبار',\n testingDescription: 'REST API Client مدمج بعمق (مجاني ومفتوح المصدر أيضًا)',\n search: 'البحث',\n searchDescription: 'بحث مدمج بالكامل (باستخدام fuse.js)',\n hosting: 'الاستضافة',\n hostingDescription: 'استضافة مجانية لنطاق فرعي على https://apidocumentation.com',\n openApiSwagger: 'OpenAPI و Swagger',\n openApiSwaggerDescription: 'دعم OpenAPI 3.1 و OpenAPI 3.0 و Swagger 2.0',\n codeSamples: 'أمثلة التعليمات البرمجية',\n codeSamplesDescription: 'أمثلة تعليمات برمجية لعرض API الخاص بك بأشهر اللغات',\n },\n footer: {\n poweredByScalar: 'مدعوم من Scalar',\n },\n authentication: {\n title: 'المصادقة',\n accepts: 'يقبل',\n allOf: 'كل ما يلي:',\n authentication: 'المصادقة',\n optional: 'المصادقة اختيارية',\n oneOf: 'واحد من:',\n required: 'المصادقة مطلوبة',\n requires: 'يتطلب',\n scopes: 'نطاقات OAuth',\n },\n} satisfies ApiReferenceTranslations\n"],"mappings":";AAEA,IAAa,KAAK;CAChB,QAAQ;EACN,sBAAsB;EACtB,OAAO;EACP,YAAY;EACZ,aAAa;EACb,eAAe;EACf,MAAM;EACN,QAAQ;EACR,aAAa;EACb,YAAY;EACZ,MAAM;EACN,UAAU;EACV,KAAK;EACL,KAAK;EACL,WAAW;EACX,WAAW;EACX,YAAY;EACZ,UAAU;EACV,MAAM;EACN,eAAe;EACf,SAAS;EACT,UAAU;EACV,UAAU;EACV,YAAY;EACZ,eAAe;EACf,MAAM;EACN,QAAQ;EACR,QAAQ;EACR,WAAW;CACb;CACA,QAAQ;EACN,OAAO;EACP,YAAY;EACZ,MAAM;EACN,aAAa;EACb,OAAO;EACP,kBAAkB;EAClB,SAAS;EACT,SAAS;EACT,SAAS;EACT,UAAU;EACV,QAAQ;EACR,cAAc;EACd,cAAc;EACd,gBAAgB;EAChB,UAAU;EACV,eAAe;EACf,cAAc;CAChB;CACA,YAAY;EACV,cAAc;EACd,YAAY;EACZ,WAAW;EACX,WAAW;EACX,UAAU;EACV,YAAY;EACZ,WAAW;EACX,kBAAkB;EAClB,YAAY;EACZ,aAAa;EACb,WAAW;EACX,UAAU;EACV,UAAU;CACZ;CACA,QAAQ;EACN,OAAO;EACP,QAAQ;CACV;CACA,MAAM,EACJ,gBAAgB,cAClB;CACA,UAAU;EACR,SAAS;EACT,WAAW;CACb;CACA,iBAAiB;EACf,SAAS;EACT,MAAM;EACN,WAAW;CACb;CACA,WAAW;EACT,MAAM;EACN,SAAS;EACT,SAAS;EACT,gBAAgB;EAChB,iBAAiB;EACjB,aAAa;EACb,WAAW;EACX,aAAa;EACb,SAAS;EACT,qBAAqB;EACrB,aAAa;EACb,aAAa;EACb,WAAW;CACb;CACA,UAAU;EACR,kBAAkB;EAClB,QAAQ;EACR,YAAY;EACZ,QAAQ;CACV;CACA,QAAQ;EACN,SAAS;EACT,UAAU;EACV,SAAS;EACT,QAAQ;EACR,aAAa;EACb,0BAA0B;EAC1B,iBAAiB;EACjB,qBAAqB;EACrB,qBAAqB;EACrB,SAAS;EACT,mBAAmB;EACnB,OAAO;EACP,OAAO;EACP,OAAO;EACP,KAAK;EACL,aAAa;CACf;CACA,UAAU;EACR,SAAS;EACT,UAAU;CACZ;CACA,QAAQ,EACN,OAAO,UACT;CACA,SAAS;EACP,UAAU;EACV,YAAY;EACZ,iBAAiB;EACjB,iBAAiB;EACjB,UAAU;CACZ;CACA,OAAO;EACL,OAAO;EACP,YAAY;EACZ,OAAO;CACT;CACA,KAAK;EACH,UAAU;EACV,SAAS;CACX;CACA,gBAAgB;EACd,OAAO;EACP,WAAW;EACX,OAAO;EACP,QAAQ;EACR,qBAAqB;EACrB,OAAO;EACP,QAAQ;EACR,eAAe;EACf,OAAO;EACP,sBAAsB;EACtB,qBAAqB;EACrB,eAAe;EACf,cAAc;EACd,eAAe;EACf,aAAa;EACb,qBAAqB;EACrB,oBAAoB;EACpB,WAAW;EACX,oBAAoB;EACpB,kBAAkB;EAClB,oBAAoB;EACpB,YAAY;EACZ,YAAY;EACZ,iBAAiB;EACjB,uBAAuB;EACvB,YAAY;EACZ,mBAAmB;EACnB,YAAY;EACZ,kBAAkB;EAClB,gBAAgB;EAChB,yBAAyB;EACzB,gBAAgB;EAChB,YAAY;EACZ,gCAAgC;EAChC,UAAU;EACV,oBAAoB;EACpB,eAAe;EACf,iBAAiB;EACjB,mBAAmB;EACnB,gBAAgB;EAChB,aAAa;EACb,iBAAiB;EACjB,mBAAmB;EACnB,OAAO;EACP,YAAY;EACZ,wBAAwB;EACxB,cAAc;CAChB;CACA,gBAAgB;EACd,eAAe;EACf,aACE;EACF,aAAa;EACb,YAAY;EACZ,cAAc;EACd,SAAS;EACT,UAAU;EACV,WAAW;EACX,sBAAsB;EACtB,SAAS;EACT,oBAAoB;EACpB,QAAQ;EACR,mBAAmB;EACnB,SAAS;EACT,oBAAoB;EACpB,gBAAgB;EAChB,2BAA2B;EAC3B,aAAa;EACb,wBAAwB;CAC1B;CACA,QAAQ,EACN,iBAAiB,kBACnB;CACA,gBAAgB;EACd,OAAO;EACP,SAAS;EACT,OAAO;EACP,gBAAgB;EAChB,UAAU;EACV,OAAO;EACP,UAAU;EACV,UAAU;EACV,QAAQ;CACV;AACF"}