@scalar/api-reference
Version:
Generate beautiful API references from OpenAPI documents
58 lines (57 loc) • 1.94 kB
JavaScript
import { defineComponent, computed, createBlock, openBlock, withCtx, createVNode, renderSlot } from "vue";
import DownloadLink from "./DownloadLink.vue.js";
import IntroductionCard from "./IntroductionCard.vue.js";
import IntroductionLayout from "./IntroductionLayout.vue.js";
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "InfoBlock",
props: {
id: {},
oasVersion: {},
info: {},
externalDocs: {},
documentExtensions: {},
infoExtensions: {},
eventBus: {},
headingSlugGenerator: { type: Function },
layout: {},
documentDownloadType: { default: "both" }
},
setup(__props) {
const introCardsSlot = computed(
() => __props.layout === "classic" ? "after" : "aside"
);
return (_ctx, _cache) => {
return openBlock(), createBlock(IntroductionLayout, {
id: __props.id,
documentExtensions: __props.documentExtensions,
eventBus: __props.eventBus,
externalDocs: __props.externalDocs,
headingSlugGenerator: __props.headingSlugGenerator,
info: __props.info,
infoExtensions: __props.infoExtensions,
oasVersion: __props.oasVersion
}, {
[introCardsSlot.value]: withCtx(() => [
createVNode(IntroductionCard, {
row: __props.layout === "classic"
}, {
default: withCtx(() => [
renderSlot(_ctx.$slots, "selectors")
]),
_: 3
}, 8, ["row"])
]),
"download-link": withCtx(() => [
createVNode(DownloadLink, {
documentDownloadType: __props.documentDownloadType,
eventBus: __props.eventBus
}, null, 8, ["documentDownloadType", "eventBus"])
]),
_: 2
}, 1032, ["id", "documentExtensions", "eventBus", "externalDocs", "headingSlugGenerator", "info", "infoExtensions", "oasVersion"]);
};
}
});
export {
_sfc_main as default
};