{"version":3,"file":"sortable.mjs","sources":["../../../../../../packages/components/simple-table/src/sortable.vue"],"sourcesContent":["<template>\n  <span v-if=\"shouldShow\" :class=\"['caret-wrapper', active]\">\n    <i class=\"sort-caret ascending\" @click=\"sort('ascending')\"></i>\n    <i class=\"sort-caret descending\" @click=\"sort('descending')\"></i>\n  </span>\n</template>\n<script lang=\"ts\">\nimport { computed, ref, watch, defineComponent } from 'vue'\n\nimport type { PropType } from 'vue'\n\nexport default defineComponent({\n  name: 'SimpleTableSortableIcon',\n  props: {\n    sortable: [Boolean, String] as PropType<boolean | 'descending' | 'ascending'>,\n  },\n  emits: ['sort-change'],\n  setup(props, { emit }) {\n    const active = ref(getActive())\n    const shouldShow = computed(() => {\n      return typeof props.sortable === 'boolean' ? props.sortable : !!props.sortable\n    })\n\n    const sort = (which: string) => {\n      if (active.value !== which) {\n        active.value = which\n      } else {\n        active.value = ''\n      }\n      emit('sort-change', active.value)\n    }\n\n    function getActive() {\n      return typeof props.sortable !== 'boolean' && props.sortable ? props.sortable : ''\n    }\n\n    watch(() => props.sortable, () => {\n      active.value = getActive()\n    })\n\n    return {\n      active,\n      shouldShow,\n      sort,\n    }\n  },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode"],"mappings":";;;AAWA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,UAAU,CAAC,SAAS,MAAM;AAAA;AAC5B,EACA,OAAO,CAAC,aAAa;AAAA,EACrB,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,SAAS,IAAI,WAAW;AAC9B,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,OAAO,MAAM,aAAa,YAAY,MAAM,WAAW,CAAC,CAAC,MAAM;AAAA,KACvE;AAED,UAAM,OAAO,CAAC,UAAkB;AAC9B,UAAI,OAAO,UAAU,OAAO;AAC1B,eAAO,QAAQ;AAAA,aACV;AACL,eAAO,QAAQ;AAAA;AAEjB,WAAK,eAAe,OAAO,KAAK;AAAA;AAGlC,yBAAqB;AACnB,aAAO,OAAO,MAAM,aAAa,aAAa,MAAM,WAAW,MAAM,WAAW;AAAA;AAGlF,UAAM,MAAM,MAAM,UAAU,MAAM;AAChC,aAAO,QAAQ;AAAU,KAC1B;AAED,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;SA7Ca,gCAAZA,mBAGO;AAAA;IAHkB,OAAKC,iCAAoB,WAAM;AAAA;IACtDC,mBAA+D;AAAA,MAA5D,OAAM;AAAA,MAAwB,SAAK,YAAE,UAAI;AAAA;IAC5CA,mBAAiE;AAAA,MAA9D,OAAM;AAAA,MAAyB,SAAK,YAAE,UAAI;AAAA;;;;;;;"}