{"version":3,"file":"date-table.mjs","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n  <table\n    :class=\"{\n      'calendar-table': true,\n      'is-range': isInRange\n    }\"\n    cellspacing=\"0\"\n    cellpadding=\"0\"\n  >\n    <thead v-if=\"!hideHeader\">\n      <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n    </thead>\n    <tbody>\n      <tr\n        v-for=\"(row, index) in rows\"\n        :key=\"index\"\n        :class=\"{\n          'calendar-table-row': true,\n          'calendar-table-row-hide-border': index === 0 && hideHeader\n        }\"\n      >\n        <td\n          v-for=\"(cell, key) in row\"\n          :key=\"key\"\n          :class=\"getCellClass(cell)\"\n          @click=\"handlePickDay(cell)\"\n        >\n          <div class=\"calendar-day\">\n            <slot\n              name=\"date-cell\"\n              :data=\"getSlotData(cell)\"\n            >\n              <span>{{ cell.text }}</span>\n            </slot>\n          </div>\n        </td>\n      </tr>\n    </tbody>\n  </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { dateTableEmits, dateTableProps } from './date-table'\nimport { useDateTable } from './use-date-table'\nimport type { CalendarDateCell } from './date-table'\n\ndefineOptions({\n  name: 'DateTable',\n})\n\nconst props = defineProps(dateTableProps)\nconst emit = defineEmits(dateTableEmits)\n\nconst {\n  isInRange,\n  now,\n  rows,\n  weekDays,\n  getFormattedDate,\n  handlePickDay,\n  getSlotData,\n} = useDateTable(props, emit)\n\nconst getCellClass = ({ text, type }: CalendarDateCell) => {\n  const classes: string[] = [type]\n  if (type === 'current') {\n    const date = getFormattedDate(text, type)\n    if (date.isSame(props.selectedDay, 'day')) {\n      classes.push('is-selected')\n    }\n    if (date.isSame(now, 'day')) {\n      classes.push('is-today')\n    }\n  }\n  return classes\n}\n\ndefineExpose({\n  /** @description toggle date panel */\n  getFormattedDate,\n})\n</script>\n"],"names":[],"mappings":";;;;oCA8Cc;AAAA,EACZ,MAAM;AACR;;;;;;;AAKA,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE,aAAa,OAAO,IAAI;AAE5B,UAAM,eAAe,CAAC,EAAE,MAAM,WAA6B;AACzD,YAAM,UAAoB,CAAC,IAAI;AAC/B,UAAI,SAAS,WAAW;AACtB,cAAM,OAAO,iBAAiB,MAAM,IAAI;AACxC,YAAI,KAAK,OAAO,MAAM,aAAa,KAAK,GAAG;AACzC,kBAAQ,KAAK,aAAa;AAAA;AAE5B,YAAI,KAAK,OAAO,KAAK,KAAK,GAAG;AAC3B,kBAAQ,KAAK,UAAU;AAAA;AACzB;AAEF,aAAO;AAAA;AAGT,WAAa;AAAA,MAEX;AAAA,KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}