import { defineComponent, resolveComponent, openBlock, createElementBlock, createElementVNode, createVNode, withCtx, createTextVNode, toDisplayString, renderSlot, createCommentVNode, normalizeClass } from 'vue';
import { s as script$1 } from './headerText-0fd3adc1.mjs';
import { s as script$2 } from './paragraphText-9913c76e.mjs';
import script$3 from './TsIcon.mjs';
import script$4 from './TsAvatar.mjs';
import { s as script$5 } from './normalText-66005fcf.mjs';
import './TsImageLoader.mjs';

var script = defineComponent({
    components: {
        TsHeaderText: script$1,
        TsParagraphText: script$2,
        TsIcon: script$3,
        TsAvatar: script$4,
        TsNormalText: script$5,
    },
    props: {
        bgColor: {
            type: String,
            default: "bg-primaryPurple",
        },
        textColor: {
            type: String,
            default: "text-white",
        },
        customClass: {
            type: String,
            default: "",
        },
        padding: {
            type: String,
            default: "py-2 px-4 ",
        },
        data: {
            type: Object,
        },
    },
    name: "TsSessionInfo",
});

const _hoisted_1 = {
  key: 0,
  class: "w-full flex flex-col justify-start items-start space-y-3 pt-2 mdlg:!px-5 mdlg:!py-5 py-3 px-3 border-[1px] rounded"
};
const _hoisted_2 = { class: "w-full flex flex-col space-y-2 items-start" };
const _hoisted_3 = { class: "w-full flex flex-row items-center space-x-2 justify-start pt-3" };
const _hoisted_4 = /*#__PURE__*/createElementVNode("span", {
  class: /*#__PURE__*/normalizeClass(`h-[4px] w-[4px] bg-paragraphText rounded-full`)
}, null, -1 /* HOISTED */);
const _hoisted_5 = /*#__PURE__*/createTextVNode(" Private Session ");
const _hoisted_6 = { class: "w-full flex flex-row items-center space-x-2 justify-start" };
const _hoisted_7 = /*#__PURE__*/createElementVNode("span", {
  class: /*#__PURE__*/normalizeClass(`h-[4px] w-[4px] bg-paragraphText rounded-full`)
}, null, -1 /* HOISTED */);
const _hoisted_8 = /*#__PURE__*/createTextVNode(" 11am - 12pm ");
const _hoisted_9 = { class: "w-full flex flex-row items-center space-x-2 justify-start" };
const _hoisted_10 = { class: "w-full flex flex-row items-center space-x-2 justify-start" };
const _hoisted_11 = { class: "w-full flex flex-row items-center space-x-2 justify-start" };

function render(_ctx, _cache, $props, $setup, $data, $options) {
  const _component_ts_header_text = resolveComponent("ts-header-text");
  const _component_ts_paragraph_text = resolveComponent("ts-paragraph-text");
  const _component_ts_icon = resolveComponent("ts-icon");
  const _component_ts_avatar = resolveComponent("ts-avatar");
  const _component_ts_normal_text = resolveComponent("ts-normal-text");

  return (_ctx.data)
    ? (openBlock(), createElementBlock("div", _hoisted_1, [
        createElementVNode("div", _hoisted_2, [
          createVNode(_component_ts_header_text, { size: 'base' }, {
            default: withCtx(() => [
              createTextVNode(toDisplayString(_ctx.data.topic), 1 /* TEXT */)
            ]),
            _: 1 /* STABLE */
          }),
          createVNode(_component_ts_paragraph_text, { customClass: 'text-left' }, {
            default: withCtx(() => [
              createTextVNode(toDisplayString(_ctx.data.description), 1 /* TEXT */)
            ]),
            _: 1 /* STABLE */
          })
        ]),
        createElementVNode("div", _hoisted_3, [
          createVNode(_component_ts_icon, {
            name: 'tutors_active',
            customClass: 'h-[16px]'
          }),
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              renderSlot(_ctx.$slots, "subject")
            ]),
            _: 3 /* FORWARDED */
          }),
          _hoisted_4,
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              _hoisted_5
            ]),
            _: 1 /* STABLE */
          })
        ]),
        createElementVNode("div", _hoisted_6, [
          createVNode(_component_ts_icon, {
            name: 'calender',
            customClass: 'h-[18px]'
          }),
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              renderSlot(_ctx.$slots, "date")
            ]),
            _: 3 /* FORWARDED */
          }),
          _hoisted_7,
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              _hoisted_8,
              renderSlot(_ctx.$slots, "time-from-to")
            ]),
            _: 3 /* FORWARDED */
          })
        ]),
        createElementVNode("div", _hoisted_9, [
          createVNode(_component_ts_icon, {
            name: 'attachment',
            customClass: 'h-[12px]'
          }),
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              createTextVNode(toDisplayString(_ctx.data.attachments.length) + " attachments ", 1 /* TEXT */)
            ]),
            _: 1 /* STABLE */
          })
        ]),
        createElementVNode("div", _hoisted_10, [
          createVNode(_component_ts_avatar, {
            size: "20",
            photoUrl: _ctx.data.tutor.bio.photo?.link || ''
          }, null, 8 /* PROPS */, ["photoUrl"]),
          createVNode(_component_ts_paragraph_text, null, {
            default: withCtx(() => [
              createTextVNode(toDisplayString(_ctx.data.tutor.bio.name.full), 1 /* TEXT */)
            ]),
            _: 1 /* STABLE */
          })
        ]),
        createElementVNode("div", _hoisted_11, [
          createVNode(_component_ts_icon, {
            name: 'money-green',
            customClass: 'h-[16px]'
          }),
          createVNode(_component_ts_normal_text, { color: 'text-primaryGreen' }, {
            default: withCtx(() => [
              createTextVNode(" $" + toDisplayString(_ctx.data.price), 1 /* TEXT */)
            ]),
            _: 1 /* STABLE */
          })
        ]),
        renderSlot(_ctx.$slots, "extras")
      ]))
    : createCommentVNode("v-if", true)
}

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

export { script as default };
