<script>
import { ref, setDefaultContextKey } from '../utils/vnode';

export default {
  name: 'Table',
  functional: true,
  render(h, context) {
    const props = context.props || {};
    if (Object.prototype.hasOwnProperty.call(props, 'editable') && props.editable !== false) {
      setDefaultContextKey(context, 'editable');
      return h('z-table-editable', { props, scopedSlots: context.scopedSlots, on: context.listeners });
    }
    if (Object.prototype.hasOwnProperty.call(props, 'editor') && props.editor) {
      setDefaultContextKey(context, 'editor');
      return ref('z-table-editor', context);
    }
    setDefaultContextKey(context, 'normal');
    return ref('z-table-normal', context);
  },
};
</script>
