{"version":3,"file":"data-table-footer-cell.mjs","sources":["../../../../../packages/components/data-table/src/data-table-footer-cell.tsx"],"sourcesContent":["import { defineComponent, inject, PropType } from 'vue'\nimport { dataFooterToken, dataTableToken } from './token'\nimport type { FixedColumn, StaticColumn } from './utils'\n\nconst buildCell = <\n  Name extends 'LeftCell' | 'CenterCell' | 'RightCell',\n  Column = Name extends 'CenterCell' ? StaticColumn : FixedColumn\n>(\n  name: Name\n) => {\n  const useClassName = {\n    LeftCell() {\n      const { cellClass, leftCellClass } = inject(dataFooterToken)!\n      return [cellClass, leftCellClass]\n    },\n    CenterCell() {\n      const { cellClass, centerCellClass } = inject(dataFooterToken)!\n      return [cellClass, centerCellClass]\n    },\n    RightCell() {\n      const { cellClass, rightCellClass } = inject(dataFooterToken)!\n      return [cellClass, rightCellClass]\n    }\n  }[name]\n\n  const getStyle = {\n    LeftCell: (column: FixedColumn) => ({ left: column.left + 'px' }),\n    CenterCell: (column: StaticColumn) => ({}),\n    RightCell: (column: FixedColumn) => ({ right: column.right + 'px' })\n  }[name]\n\n  return defineComponent({\n    name,\n\n    props: {\n      column: {\n        type: Object as PropType<Column>,\n        required: true\n      },\n      value: {\n        type: [String, Number],\n        required: true\n      }\n    },\n\n    setup(props) {\n      const className = useClassName()\n      const { itemSize } = inject(dataTableToken)!\n\n      return () => {\n        let column = props.column as FixedColumn\n        return (\n          <td\n            class={className}\n            style={{\n              ...getStyle(column),\n              'text-align': column.align,\n              height: itemSize.value + 'px'\n            }}\n          >\n            <div>\n              {props.value}\n            </div>\n          </td>\n        )\n      }\n    }\n  })\n}\n\nexport const LeftCell = buildCell('LeftCell')\n\nexport const CenterCell = buildCell('CenterCell')\n\nexport const RightCell = buildCell('RightCell')\n"],"names":["buildCell","name","useClassName","LeftCell","cellClass","leftCellClass","inject","dataFooterToken","CenterCell","centerCellClass","RightCell","rightCellClass","getStyle","column","left","right","props","type","Object","required","value","String","Number","setup","className","itemSize","dataTableToken","_createVNode","align","height"],"mappings":";;;AAIA,MAAMA,YAIJC,CACG,IAAA,KAAA;AACH,EAAA,MAAMC,YAAe,GAAA;AAAA,IACnBC,QAAW,GAAA;AACT,MAAM,MAAA;AAAA,QAAEC,SAAAA;AAAAA,QAAWC,aAAAA;AAAAA,OAAc,GAAIC,OAAOC,eAAe,CAAA,CAAA;AAC3D,MAAO,OAAA,CAACH,WAAWC,aAAa,CAAA,CAAA;AAAA,KAClC;AAAA,IACAG,UAAa,GAAA;AACX,MAAM,MAAA;AAAA,QAAEJ,SAAAA;AAAAA,QAAWK,eAAAA;AAAAA,OAAgB,GAAIH,OAAOC,eAAe,CAAA,CAAA;AAC7D,MAAO,OAAA,CAACH,WAAWK,eAAe,CAAA,CAAA;AAAA,KACpC;AAAA,IACAC,SAAY,GAAA;AACV,MAAM,MAAA;AAAA,QAAEN,SAAAA;AAAAA,QAAWO,cAAAA;AAAAA,OAAe,GAAIL,OAAOC,eAAe,CAAA,CAAA;AAC5D,MAAO,OAAA,CAACH,WAAWO,cAAc,CAAA,CAAA;AAAA,KACnC;AAAA,IACAV,IAAI,CAAA,CAAA;AAEN,EAAA,MAAMW,QAAW,GAAA;AAAA,IACfT,UAAWU,CAAyB,MAAA,MAAA;AAAA,MAAEC,IAAAA,EAAMD,OAAOC,IAAO,GAAA,IAAA;AAAA,KAAK,CAAA;AAAA,IAC/DN,UAAAA,EAAaK,aAA0B,EAAC,CAAA;AAAA,IACxCH,WAAYG,CAAyB,MAAA,MAAA;AAAA,MAAEE,KAAAA,EAAOF,OAAOE,KAAQ,GAAA,IAAA;AAAA,KAAK,CAAA;AAAA,IAClEd,IAAI,CAAA,CAAA;AAEN,EAAA,uBAAuB,eAAA,CAAA;AAAA,IACrBA,IAAAA;AAAAA,IAEAe,KAAO,EAAA;AAAA,MACLH,MAAQ,EAAA;AAAA,QACNI,IAAMC,EAAAA,MAAAA;AAAAA,QACNC,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACAC,KAAO,EAAA;AAAA,QACLH,IAAAA,EAAM,CAACI,MAAAA,EAAQC,MAAM,CAAA;AAAA,QACrBH,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,KACF;AAAA,IAEAI,MAAMP,KAAO,EAAA;AACX,MAAA,MAAMQ,YAAYtB,YAAa,EAAA,CAAA;AAC/B,MAAM,MAAA;AAAA,QAAEuB,QAAAA;AAAAA,OAAS,GAAInB,OAAOoB,cAAc,CAAA,CAAA;AAE1C,MAAA,OAAO,MAAM;AACX,QAAA,IAAIb,SAASG,KAAMH,CAAAA,MAAAA,CAAAA;AACnB,QAAA,OAAAc,YAAA,IAAA,EAAA;AAAA,UAAA,OAEWH,EAAAA,SAAAA;AAAAA,UAAS,OACT,EAAA;AAAA,YACL,GAAGZ,SAASC,MAAM,CAAA;AAAA,YAClB,cAAcA,MAAOe,CAAAA,KAAAA;AAAAA,YACrBC,MAAAA,EAAQJ,SAASL,KAAQ,GAAA,IAAA;AAAA,WAC3B;AAAA,SAAC,EAAA,CAAAO,WAAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAGEX,KAAMI,CAAAA,KAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,OAIpB,CAAA;AAAA,KACF;AAAA,GACD,CAAA,CAAA;AACH,CAAA,CAAA;AAEajB,MAAAA,QAAAA,GAAWH,UAAU,UAAU,EAAA;AAE/BQ,MAAAA,UAAAA,GAAaR,UAAU,YAAY,EAAA;AAEnCU,MAAAA,SAAAA,GAAYV,UAAU,WAAW;;;;"}