UNPKG

@visactor/vue-vtable

Version:

The vue version of VTable

47 lines (43 loc) 2.06 kB
'use strict'; var vue = require('vue'); var vnodeUtils = require('../utils/vnodeUtils.js'); require('@visactor/vtable'); require('@visactor/vutils'); var slotUtils = require('../utils/slotUtils.js'); var baseTable_vue_vue_type_script_setup_true_lang = require('./base-table.vue.js'); var _sfc_main = vue.defineComponent({ __name: 'pivot-chart', props: { options: { type: Object, required: true }, records: { type: Array, required: false }, width: { type: [String, Number], required: false }, height: { type: [String, Number], required: false } }, setup(__props, { expose: __expose }) { const props = __props; const baseTableRef = vue.shallowRef(null); const slots = vue.useSlots(); const computedOptions = vue.computed(() => { var _a; const flattenedSlots = vnodeUtils.flattenVNodes(((_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)) || []); const slotOptions = slotUtils.extractPivotSlotOptions(flattenedSlots); return slotUtils.mergeSlotOptions(props.options, slotOptions); }); __expose({ vTableInstance: vue.computed(() => { var _a; return ((_a = baseTableRef.value) === null || _a === void 0 ? void 0 : _a.vTableInstance) || null; }) }); return (_ctx, _cache) => { return (vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [ vue.createVNode(baseTable_vue_vue_type_script_setup_true_lang, vue.mergeProps({ type: "chart", options: computedOptions.value, records: _ctx.records, width: _ctx.width, height: _ctx.height, ref_key: "baseTableRef", ref: baseTableRef }, _ctx.$attrs), null, 16, ["options", "records", "width", "height"]), vue.renderSlot(_ctx.$slots, "default") ], 64)); }; } }); module.exports = _sfc_main;