VDataTableColumn.mjs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { createVNode as _createVNode } from "vue";
  2. // Utilities
  3. import { convertToUnit, defineFunctionalComponent } from "../../util/index.mjs"; // Types
  4. export const VDataTableColumn = defineFunctionalComponent({
  5. align: {
  6. type: String,
  7. default: 'start'
  8. },
  9. fixed: Boolean,
  10. fixedOffset: [Number, String],
  11. height: [Number, String],
  12. lastFixed: Boolean,
  13. noPadding: Boolean,
  14. tag: String,
  15. width: [Number, String],
  16. maxWidth: [Number, String],
  17. nowrap: Boolean
  18. }, (props, _ref) => {
  19. let {
  20. slots
  21. } = _ref;
  22. const Tag = props.tag ?? 'td';
  23. return _createVNode(Tag, {
  24. "class": ['v-data-table__td', {
  25. 'v-data-table-column--fixed': props.fixed,
  26. 'v-data-table-column--last-fixed': props.lastFixed,
  27. 'v-data-table-column--no-padding': props.noPadding,
  28. 'v-data-table-column--nowrap': props.nowrap
  29. }, `v-data-table-column--align-${props.align}`],
  30. "style": {
  31. height: convertToUnit(props.height),
  32. width: convertToUnit(props.width),
  33. maxWidth: convertToUnit(props.maxWidth),
  34. left: convertToUnit(props.fixedOffset || null)
  35. }
  36. }, {
  37. default: () => [slots.default?.()]
  38. });
  39. });
  40. //# sourceMappingURL=VDataTableColumn.mjs.map