import { defineComponent as r, createElementBlock as l, openBlock as c, createElementVNode as s, createVNode as a, unref as t, createTextVNode as n, toDisplayString as o } from "vue";
import { ScalarIconCaretRight as m } from "@scalar/icons";
import i from "../OperationParameters.vue.js";
import p from "../OperationResponses.vue.js";
import d from "../../../../components/HttpMethod/HttpMethod.vue.js";
const u = { class: "group callback-list-item" }, f = { class: "font-code bg-b-1 callback-sticky-offset callback-list-item-title sticky flex cursor-pointer flex-row items-start gap-2 border-t py-3 text-sm group-open:flex-wrap" }, h = { class: "text-c-1 min-w-0 flex-1 truncate leading-3 group-open:whitespace-normal" }, b = { class: "text-c-2" }, _ = { class: "callback-operation-container flex flex-col gap-2" }, v = /* @__PURE__ */ r({
  __name: "Callback",
  props: {
    callback: {},
    method: {},
    path: {},
    operationMethod: {},
    name: {},
    schemas: {},
    url: {},
    breadcrumb: {}
  },
  setup(k) {
    return (e, g) => (c(), l("details", u, [
      s("summary", f, [
        a(t(m), { class: "callback-list-item-icon text-c-3 group-hover:text-c-1 absolute top-3.5 -left-5 size-4 transition-transform duration-100 group-open:rotate-90" }),
        a(t(d), {
          as: "span",
          class: "request-method py-0.75",
          method: e.method
        }, null, 8, ["method"]),
        s("div", h, [
          n(o(e.name) + " ", 1),
          s("span", b, o(e.url), 1)
        ])
      ]),
      s("div", _, [
        a(i, {
          requestBody: e.callback.requestBody,
          parameters: e.callback.parameters,
          schemas: e.schemas
        }, null, 8, ["requestBody", "parameters", "schemas"]),
        a(p, {
          collapsableItems: !1,
          responses: e.callback.responses,
          schemas: e.schemas
        }, null, 8, ["responses", "schemas"])
      ])
    ]));
  }
});
export {
  v as default
};
