{"version":3,"file":"table.mjs","sources":["../../../../../../packages/components/table/src/table.vue"],"sourcesContent":["<template>\n  <div\n    ref=\"tableWrapper\"\n    :class=\"[\n      {\n        [ns.m('fit')]: fit,\n        [ns.m('striped')]: stripe,\n        [ns.m('border')]: border,\n        [ns.m('hidden')]: isHidden,\n        [ns.m('group')]: isGroup,\n        [ns.m('fluid-height')]: maxHeight,\n        [ns.m('scrollable-x')]: layout.scrollX.value,\n        [ns.m('scrollable-y')]: layout.scrollY.value,\n        [ns.m('enable-row-hover')]: !store.states.isComplex.value,\n        [ns.m('enable-row-transition')]:\n          (store.states.data.value || []).length !== 0 &&\n          (store.states.data.value || []).length < 100,\n        'has-footer': showSummary,\n      },\n      ns.m(tableSize),\n      className,\n      ns.b(),\n      ns.m(`layout-${tableLayout}`),\n    ]\"\n    :style=\"style\"\n    :data-prefix=\"ns.namespace.value\"\n    data-test-name=\"table\"\n    data-test-variant=\"\"\n    data-test-state=\"\"\n    @mouseleave=\"handleMouseLeave()\"\n  >\n    <div :class=\"ns.e('inner-wrapper')\" :style=\"tableInnerStyle\">\n      <div ref=\"hiddenColumns\" class=\"hidden-columns\">\n        <slot />\n      </div>\n      <div\n        v-if=\"showHeader && tableLayout === 'fixed'\"\n        ref=\"headerWrapper\"\n        v-mousewheel=\"handleHeaderFooterMousewheel\"\n        :class=\"ns.e('header-wrapper')\"\n      >\n        <table\n          ref=\"tableHeader\"\n          :class=\"ns.e('header')\"\n          :style=\"tableBodyStyles\"\n          border=\"0\"\n          cellpadding=\"0\"\n          cellspacing=\"0\"\n        >\n          <hColgroup\n            :columns=\"store.states.columns.value\"\n            :table-layout=\"tableLayout\"\n          />\n          <table-header\n            ref=\"tableHeaderRef\"\n            :border=\"border\"\n            :default-sort=\"defaultSort\"\n            :store=\"store\"\n            @set-drag-visible=\"setDragVisible\"\n          />\n        </table>\n      </div>\n      <div ref=\"bodyWrapper\" :class=\"ns.e('body-wrapper')\">\n        <b-scrollbar\n          ref=\"scrollBarRef\"\n          :view-style=\"scrollbarViewStyle\"\n          :wrap-style=\"scrollbarStyle\"\n          :always=\"scrollbarAlwaysOn\"\n        >\n          <table\n            ref=\"tableBody\"\n            :class=\"ns.e('body')\"\n            cellspacing=\"0\"\n            cellpadding=\"0\"\n            border=\"0\"\n            :style=\"{\n              width: bodyWidth,\n              tableLayout,\n            }\"\n          >\n            <hColgroup\n              :columns=\"store.states.columns.value\"\n              :table-layout=\"tableLayout\"\n            />\n            <table-header\n              v-if=\"showHeader && tableLayout === 'auto'\"\n              ref=\"tableHeaderRef\"\n              :border=\"border\"\n              :default-sort=\"defaultSort\"\n              :store=\"store\"\n              @set-drag-visible=\"setDragVisible\"\n            />\n            <table-body\n              :context=\"context\"\n              :highlight=\"highlightCurrentRow\"\n              :row-class-name=\"rowClassName\"\n              :tooltip-effect=\"tooltipEffect\"\n              :row-style=\"rowStyle\"\n              :store=\"store\"\n              :stripe=\"stripe\"\n            />\n          </table>\n          <div\n            v-if=\"isEmpty\"\n            ref=\"emptyBlock\"\n            :style=\"emptyBlockStyle\"\n            :class=\"ns.e('empty-block')\"\n          >\n            <span :class=\"ns.e('empty-text')\">\n              <slot name=\"empty\">{{ computedEmptyText }}</slot>\n            </span>\n          </div>\n          <div\n            v-if=\"$slots.append\"\n            ref=\"appendWrapper\"\n            :class=\"ns.e('append-wrapper')\"\n          >\n            <slot name=\"append\" />\n          </div>\n        </b-scrollbar>\n      </div>\n      <div\n        v-if=\"showSummary\"\n        v-show=\"!isEmpty\"\n        ref=\"footerWrapper\"\n        v-mousewheel=\"handleHeaderFooterMousewheel\"\n        :class=\"ns.e('footer-wrapper')\"\n      >\n        <table-footer\n          :border=\"border\"\n          :default-sort=\"defaultSort\"\n          :store=\"store\"\n          :style=\"tableBodyStyles\"\n          :sum-text=\"computedSumText\"\n          :summary-method=\"summaryMethod\"\n        />\n      </div>\n      <div v-if=\"border || isGroup\" :class=\"ns.e('border-left-patch')\" />\n    </div>\n    <div\n      v-show=\"resizeProxyVisible\"\n      ref=\"resizeProxy\"\n      :class=\"ns.e('column-resize-proxy')\"\n    />\n  </div>\n</template>\n\n<script lang=\"ts\">\n// @ts-nocheck\nimport { computed, defineComponent, getCurrentInstance, provide } from 'vue'\nimport { debounce } from 'lodash-unified'\nimport { Mousewheel } from '@bigin/directives'\nimport { useLocale, useNamespace } from '@bigin/hooks'\nimport BScrollbar from '@bigin/components/scrollbar'\nimport { createStore } from './store/helper'\nimport TableLayout from './table-layout'\nimport TableHeader from './table-header'\nimport TableBody from './table-body'\nimport TableFooter from './table-footer'\nimport useUtils from './table/utils-helper'\nimport useStyle from './table/style-helper'\nimport defaultProps from './table/defaults'\nimport { TABLE_INJECTION_KEY } from './tokens'\nimport { hColgroup } from './h-helper'\nimport { useScrollbar } from './composables/use-scrollbar'\n\nimport type { Table } from './table/defaults'\n\nlet tableIdSeed = 1\nexport default defineComponent({\n  name: 'BTable',\n  directives: {\n    Mousewheel,\n  },\n  components: {\n    TableHeader,\n    TableBody,\n    TableFooter,\n    BScrollbar,\n    hColgroup,\n  },\n  props: defaultProps,\n  emits: [\n    'select',\n    'select-all',\n    'selection-change',\n    'cell-mouse-enter',\n    'cell-mouse-leave',\n    'cell-contextmenu',\n    'cell-click',\n    'cell-dblclick',\n    'row-click',\n    'row-contextmenu',\n    'row-dblclick',\n    'header-click',\n    'header-contextmenu',\n    'sort-change',\n    'filter-change',\n    'current-change',\n    'header-dragend',\n    'expand-change',\n  ],\n  setup(props) {\n    type Row = typeof props.data[number]\n    const { t } = useLocale()\n    const ns = useNamespace('table')\n    const table = getCurrentInstance() as Table<Row>\n    provide(TABLE_INJECTION_KEY, table)\n    const store = createStore<Row>(table, props)\n    table.store = store\n    const layout = new TableLayout<Row>({\n      store: table.store,\n      table,\n      fit: props.fit,\n      showHeader: props.showHeader,\n    })\n    table.layout = layout\n\n    const isEmpty = computed(() => (store.states.data.value || []).length === 0)\n\n    /**\n     * open functions\n     */\n    const {\n      setCurrentRow,\n      getSelectionRows,\n      toggleRowSelection,\n      clearSelection,\n      clearFilter,\n      toggleAllSelection,\n      toggleRowExpansion,\n      clearSort,\n      sort,\n    } = useUtils<Row>(store)\n    const {\n      isHidden,\n      renderExpanded,\n      setDragVisible,\n      isGroup,\n      handleMouseLeave,\n      handleHeaderFooterMousewheel,\n      tableSize,\n      emptyBlockStyle,\n      handleFixedMousewheel,\n      resizeProxyVisible,\n      bodyWidth,\n      resizeState,\n      doLayout,\n      tableBodyStyles,\n      tableLayout,\n      scrollbarViewStyle,\n      tableInnerStyle,\n      scrollbarStyle,\n    } = useStyle<Row>(props, layout, store, table)\n\n    const { scrollBarRef, scrollTo, setScrollLeft, setScrollTop } =\n      useScrollbar()\n\n    const debouncedUpdateLayout = debounce(doLayout, 50)\n\n    const tableId = `${ns.namespace.value}-table_${tableIdSeed++}`\n    table.tableId = tableId\n    table.state = {\n      isGroup,\n      resizeState,\n      doLayout,\n      debouncedUpdateLayout,\n    }\n    const computedSumText = computed(\n      () => props.sumText || t('b.table.sumText')\n    )\n\n    const computedEmptyText = computed(() => {\n      return props.emptyText || t('b.table.emptyText')\n    })\n\n    return {\n      ns,\n      layout,\n      store,\n      handleHeaderFooterMousewheel,\n      handleMouseLeave,\n      tableId,\n      tableSize,\n      isHidden,\n      isEmpty,\n      renderExpanded,\n      resizeProxyVisible,\n      resizeState,\n      isGroup,\n      bodyWidth,\n      tableBodyStyles,\n      emptyBlockStyle,\n      debouncedUpdateLayout,\n      handleFixedMousewheel,\n      setCurrentRow,\n      getSelectionRows,\n      toggleRowSelection,\n      clearSelection,\n      clearFilter,\n      toggleAllSelection,\n      toggleRowExpansion,\n      clearSort,\n      doLayout,\n      sort,\n      t,\n      setDragVisible,\n      context: table,\n      computedSumText,\n      computedEmptyText,\n      tableLayout,\n      scrollbarViewStyle,\n      tableInnerStyle,\n      scrollbarStyle,\n      scrollBarRef,\n      scrollTo,\n      setScrollLeft,\n      setScrollTop,\n    }\n  },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode","_renderSlot","_createVNode","_createCommentVNode","_createBlock","_openBlock","_createTextVNode","_toDisplayString","_withDirectives"],"mappings":"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"}