UNPKG

@mee4dy/crud

Version:

Create a backend and frontend in 5 minutes! With our powerful full stack crud system, customize it to suit you.

1 lines 2 kB
{"version":3,"file":"Number.vue.cjs","sources":["../../../../../../ui/vue/components/Table/Td/Number.vue"],"sourcesContent":["<template>\n <div class=\"crud-ui-table-td-number\">\n <template v-if=\"data.value\">\n {{ data.value | number(' ', precision) }}\n </template>\n <template v-else>0</template>\n <span v-if=\"percent !== undefined\" class=\"percent\">{{ percent }}%</span>\n </div>\n</template>\n\n<script>\nexport default {\n props: {\n data: {\n type: Object,\n },\n },\n computed: {\n percent() {\n const { field, item, value } = this.data;\n\n if (!field?.percent?.from) {\n return;\n }\n\n const valueFrom = item[field.percent.from];\n\n return valueFrom > 0 && value > 0 ? ((+value / +valueFrom) * 100).toFixed(2) : 0;\n },\n precision() {\n return this.data?.field?.precision;\n },\n },\n filters: {\n number(value, delimiter = ' ', precision = 0) {\n return (Math.round(parseFloat(value) * 100) / 100)\n .toFixed(precision)\n .toString()\n .replace(/,/g, '')\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, delimiter);\n },\n },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.crud-ui-table-td-number {\n .percent {\n font-weight: 100;\n color: #444;\n margin-left: 5px;\n }\n}\n</style>\n"],"names":["_sfc_main","field","item","value","_a","valueFrom","_b","delimiter","precision"],"mappings":"iHAWAA,EAAA,CACA,MAAA,CACA,KAAA,CACA,KAAA,MACA,CACA,EACA,SAAA,CACA,SAAA,OACA,KAAA,CAAA,MAAAC,EAAA,KAAAC,EAAA,MAAAC,CAAA,EAAA,KAAA,KAEA,GAAA,GAAAC,EAAAH,GAAA,YAAAA,EAAA,UAAA,MAAAG,EAAA,MACA,OAGA,MAAAC,EAAAH,EAAAD,EAAA,QAAA,IAAA,EAEA,OAAAI,EAAA,GAAAF,EAAA,GAAA,CAAAA,EAAA,CAAAE,EAAA,KAAA,QAAA,CAAA,EAAA,CACA,EACA,WAAA,SACA,OAAAC,GAAAF,EAAA,KAAA,OAAA,YAAAA,EAAA,QAAA,YAAAE,EAAA,SACA,CACA,EACA,QAAA,CACA,OAAAH,EAAAI,EAAA,IAAAC,EAAA,EAAA,CACA,OAAA,KAAA,MAAA,WAAAL,CAAA,EAAA,GAAA,EAAA,KACA,QAAAK,CAAA,EACA,SAAA,EACA,QAAA,KAAA,EAAA,EACA,QAAA,wBAAAD,CAAA,CACA,CACA,CACA"}