import { s as script$1 } from './headerText-0fd3adc1.mjs';
import { s as script$2 } from './normalText-66005fcf.mjs';
import script$3 from './TsButton.mjs';
import { defineComponent, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createVNode, withCtx, renderSlot } from 'vue';

var script = defineComponent({
    components: {
        TsHeaderText: script$1,
        TsNormalText: script$2,
        TsButton: script$3,
    },
    props: {
        avatarSize: {
            type: String,
            default: "h-[40px]",
        },
        avatarUrl: {
            type: String,
            required: true,
        },
        customClass: {
            type: String,
            default: "",
        },
        ctaUrl: {
            type: String,
            default: "",
        },
    },
    name: "TsEmptyState",
});

const _hoisted_1 = ["src"];

function render(_ctx, _cache, $props, $setup, $data, $options) {
  const _component_ts_header_text = resolveComponent("ts-header-text");
  const _component_ts_normal_text = resolveComponent("ts-normal-text");
  const _component_ts_button = resolveComponent("ts-button");
  const _component_router_link = resolveComponent("router-link");

  return (openBlock(), createElementBlock("div", {
    class: normalizeClass(`w-full col-span-full flex flex-col space-y-2 items-center justify-center ${_ctx.customClass} `)
  }, [
    createElementVNode("img", {
      src: _ctx.avatarUrl,
      class: normalizeClass(_ctx.avatarSize)
    }, null, 10 /* CLASS, PROPS */, _hoisted_1),
    createVNode(_component_ts_header_text, null, {
      default: withCtx(() => [
        renderSlot(_ctx.$slots, "title")
      ]),
      _: 3 /* FORWARDED */
    }),
    createVNode(_component_ts_normal_text, {
      color: 'text-paragraphTextLight',
      customClass: 'px-3'
    }, {
      default: withCtx(() => [
        renderSlot(_ctx.$slots, "subtext")
      ]),
      _: 3 /* FORWARDED */
    }),
    createVNode(_component_router_link, { to: _ctx.ctaUrl }, {
      default: withCtx(() => [
        createVNode(_component_ts_button, {
          customClass: 'border-[1px] border-paragraphTextLight',
          bgColor: 'bg-white',
          textColor: 'text-paragraphTextLight'
        }, {
          default: withCtx(() => [
            renderSlot(_ctx.$slots, "cta-text")
          ]),
          _: 3 /* FORWARDED */
        })
      ]),
      _: 3 /* FORWARDED */
    }, 8 /* PROPS */, ["to"])
  ], 2 /* CLASS */))
}

script.render = render;
script.__file = "src/components/TsEmptyState/index.vue";

export { script as default };
