@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/).
63 lines (62 loc) • 1.92 kB
JavaScript
import { defineComponent, computed, resolveComponent, openBlock, createBlock, withCtx, createTextVNode, toDisplayString } from "vue";
import MtColorBadge from "./MtColorBadge.js";
import { _ as _export_sfc } from "../_plugin-vue_export-helper-cc2b3d55.mjs";
const _sfc_main = defineComponent({
name: "MtDataTableBadgeRenderer",
components: {
"mt-color-badge": MtColorBadge
},
props: {
columnDefinition: {
type: Object,
required: true
},
data: {
type: void 0,
required: true
}
},
setup(props) {
const badgeProps = 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 = resolveComponent("mt-color-badge");
return openBlock(), createBlock(_component_mt_color_badge, {
class: "mt-data-table-badge-renderer",
"has-text": "",
variant: _ctx.badgeProps.variant
}, {
default: withCtx(() => [
createTextVNode(toDisplayString(_ctx.badgeProps.label), 1)
]),
_: 1
}, 8, ["variant"]);
}
const MtDataTableBadgeRenderer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
export {
MtDataTableBadgeRenderer as default
};
//# sourceMappingURL=MtDataTableBadgeRenderer.js.map