@shopware-ag/meteor-component-library
Version:
The meteor component library is a Vue component library developed by Shopware. It is based on the [Meteor Design System](https://shopware.design/).
62 lines (61 loc) • 1.89 kB
JavaScript
"use strict";
const vue = require("vue");
const MtColorBadge = require("./MtColorBadge.js");
const _pluginVue_exportHelper = require("../_plugin-vue_export-helper-9c783a34.js");
const _sfc_main = vue.defineComponent({
name: "MtDataTableBadgeRenderer",
components: {
"mt-color-badge": MtColorBadge
},
props: {
columnDefinition: {
type: Object,
required: true
},
data: {
type: void 0,
required: true
}
},
setup(props) {
const badgeProps = vue.computed(() => {
var _a, _b, _c;
if (((_a = props.columnDefinition) == null ? void 0 : _a.renderer) !== "badge") {
return {
label: "Renderer is not badge",
variant: "critical"
};
}
if (!((_c = (_b = props.columnDefinition) == null ? void 0 : _b.rendererOptions) == null ? void 0 : _c.renderItemBadge)) {
return {
label: '"renderItemBadge" method is not defined',
variant: "critical"
};
}
const result = props.columnDefinition.rendererOptions.renderItemBadge(
props.data,
props.columnDefinition
);
return result;
});
return {
badgeProps
};
}
});
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
const _component_mt_color_badge = vue.resolveComponent("mt-color-badge");
return vue.openBlock(), vue.createBlock(_component_mt_color_badge, {
class: "mt-data-table-badge-renderer",
"has-text": "",
variant: _ctx.badgeProps.variant
}, {
default: vue.withCtx(() => [
vue.createTextVNode(vue.toDisplayString(_ctx.badgeProps.label), 1)
]),
_: 1
}, 8, ["variant"]);
}
const MtDataTableBadgeRenderer = /* @__PURE__ */ _pluginVue_exportHelper._export_sfc(_sfc_main, [["render", _sfc_render]]);
module.exports = MtDataTableBadgeRenderer;
//# sourceMappingURL=MtDataTableBadgeRenderer.js.map