@@ -43,6 +43,7 @@ import VueUiVerticalBar from "./vue-ui-vertical-bar.vue";
4343import VueUiWaffle from " ./vue-ui-waffle.vue" ;
4444import VueUiWheel from " ./vue-ui-wheel.vue" ;
4545import VueUiXy from " ./vue-ui-xy.vue" ;
46+ import VueUiTableHeatmap from " ./vue-ui-table-heatmap.vue" ;
4647
4748const props = defineProps ({
4849 component: { type: String },
@@ -51,7 +52,7 @@ const props = defineProps({
5152})
5253
5354const isError = computed (() => {
54- return ! [" VueUi3dBar" , " VueUiAgePyramid" , " VueUiAnnotator" , " VueUiCandlestick" , " VueUiChestnut" , " VueUiDashboard" , " VueUiDigits" , " VueUiDonutEvolution" , " VueUiDonut" , " VueUiGauge" , " VueUiGalaxy" , " VueUiHeatmap" , " VueUiKpi" , " VueUiMiniLoader" , " VueUiMolecule" , " VueUiMoodRadar" , " VueUiNestedDonuts" , " VueUiOnion" , " VueUiQuadrant" , " VueUiRadar" , " VueUiRating" , " VueUiRelationCircle" , " VueUiRings" , " VueUiScatter" , " VueUiScreenshot" , " VueUiSkeleton" , " VueUiSmiley" , " VueUiSparkbar" , " VueUiSparkgauge" , " VueUiSparkHistogram" , " VueUiSparkline" , " VueUiSparkStackbar" , " VueUiTableSparkline" , " VueUiTable" , " VueUiThermometer" , " VueUiTiremarks" , " VueUiVerticalBar" , " VueUiWaffle" , " VueUiWheel" , " VueUiXy" , " VueUiTreemap" ].includes (props .component )
55+ return ! [" VueUi3dBar" , " VueUiAgePyramid" , " VueUiAnnotator" , " VueUiCandlestick" , " VueUiChestnut" , " VueUiDashboard" , " VueUiDigits" , " VueUiDonutEvolution" , " VueUiDonut" , " VueUiGauge" , " VueUiGalaxy" , " VueUiHeatmap" , " VueUiKpi" , " VueUiMiniLoader" , " VueUiMolecule" , " VueUiMoodRadar" , " VueUiNestedDonuts" , " VueUiOnion" , " VueUiQuadrant" , " VueUiRadar" , " VueUiRating" , " VueUiRelationCircle" , " VueUiRings" , " VueUiScatter" , " VueUiScreenshot" , " VueUiSkeleton" , " VueUiSmiley" , " VueUiSparkbar" , " VueUiSparkgauge" , " VueUiSparkHistogram" , " VueUiSparkline" , " VueUiSparkStackbar" , " VueUiTableSparkline" , " VueUiTable" , " VueUiThermometer" , " VueUiTiremarks" , " VueUiVerticalBar" , " VueUiWaffle" , " VueUiWheel" , " VueUiXy" , " VueUiTreemap" , " VueUiTableHeatmap " ].includes (props .component )
5556});
5657
5758const vue_ui_3d_bar = ref (null );
@@ -95,6 +96,7 @@ const vue_ui_vertical_bar = ref(null);
9596const vue_ui_waffle = ref (null );
9697const vue_ui_wheel = ref (null );
9798const vue_ui_xy = ref (null );
99+ const vue_ui_table_heatmap = ref (null );
98100
99101const emit = defineEmits ([
100102 ' selectLegend' ,
@@ -126,12 +128,18 @@ const recalculateHeight = ref(() => null);
126128
127129onMounted (() => {
128130 if (isError .value ) {
129- throw new Error (` \n\n Vue Data UI exception:\n The provided component "${ props .component } " does not exist. Check the spelling.\n\n Available components:\n\n . VueUi3dBar\n . VueUiAgePyramid\n . VueUiAnnotator\n . VueUiCandlestick\n . VueUiChestnut\n . VueUiDashboard\n . VueUiDigits\n . VueUiDonutEvolution\n . VueUiDonut\n . VueUiGauge\n . VueUiHeatmap\n . VueUiMiniLoadar\n . VueUiKpi\n . VueUiMolecule\n . VueUiMoodRadar\n . VueUiNestedDonuts\n . VueUiOnion\n . VueUiQuadrant\n . VueUiRadar\n . VueUiRating\n . VueUiRelationCircle\n . VueUiRings\n . VueUiScatter\n . VueUiScreenshot\n . VueUiSkeleton\n . VueUiSmiley\n . VueUiSparkbar\n . VueUiSparkgauge\n . VueUiSparkHistogram\n . VueUiSparkline\n . VueUiSparkStackbar\n . VueUiTableSparkline\n . VueUiTable\n . VueUiThermometer\n . VueUiTiremarks\n . VueUiVerticalBar\n . VueUiWaffle\n . VueUiWheel\n . VueUiXy\n\n ` )
131+ throw new Error (` \n\n Vue Data UI exception:\n The provided component "${ props .component } " does not exist. Check the spelling.\n\n Available components:\n\n . VueUi3dBar\n . VueUiAgePyramid\n . VueUiAnnotator\n . VueUiCandlestick\n . VueUiChestnut\n . VueUiDashboard\n . VueUiDigits\n . VueUiDonutEvolution\n . VueUiDonut\n . VueUiGauge\n . VueUiHeatmap\n . VueUiMiniLoadar\n . VueUiKpi\n . VueUiMolecule\n . VueUiMoodRadar\n . VueUiNestedDonuts\n . VueUiOnion\n . VueUiQuadrant\n . VueUiRadar\n . VueUiRating\n . VueUiRelationCircle\n . VueUiRings\n . VueUiScatter\n . VueUiScreenshot\n . VueUiSkeleton\n . VueUiSmiley\n . VueUiSparkbar\n . VueUiSparkgauge\n . VueUiSparkHistogram\n . VueUiSparkline\n . VueUiSparkStackbar\n . VueUiTableHeatmap\n . VueUiTableSparkline\n . VueUiTable\n . VueUiThermometer\n . VueUiTiremarks\n . VueUiVerticalBar\n . VueUiWaffle\n . VueUiWheel\n . VueUiXy\n\n ` )
132+ }
133+
134+ if (vue_ui_table_heatmap .value ) {
135+ generatePdf .value = vue_ui_table_heatmap .value .generatePdf ;
136+ generateCsv .value = vue_ui_table_heatmap .value .generateCsv ;
137+ generateImage .value = vue_ui_table_heatmap .value .generateImage ;
130138 }
131139
132140 if (vue_ui_3d_bar .value ) {
133141 generatePdf .value = vue_ui_3d_bar .value .generatePdf ;
134- generateImage .value = vue_ui_3d_bar .generateImage ;
142+ generateImage .value = vue_ui_3d_bar .value . generateImage ;
135143 }
136144
137145 if (vue_ui_age_pyramid .value ) {
@@ -341,6 +349,35 @@ defineExpose({
341349 The provided component "{{ component }}" does not exist
342350 </div >
343351
352+ <VueUiTableHeatmap
353+ v-if =" component === 'VueUiTableHeatmap'"
354+ ref =" vue_ui_table_heatmap"
355+ :config =" config"
356+ :dataset =" dataset"
357+ >
358+ <template #caption >
359+ <slot name =" caption" />
360+ </template >
361+ <template #head =" { value , rowIndex , type } " >
362+ <slot name =" head" v-bind =" { value, rowIndex, type }" />
363+ </template >
364+ <template #rowTitle =" { value , rowIndex , colIndex , type , isResponsive } " >
365+ <slot name =" rowTitle" v-bind =" { value, rowIndex, colIndex, type, isResponsive }" />
366+ </template >
367+ <template #cell =" { value , rowIndex , colIndex , type , color , textColor , isResponsive } " >
368+ <slot name =" cell" v-bind =" { value, rowIndex, colIndex, type, color, textColor, isResponsive }" />
369+ </template >
370+ <template #sum =" { value , rowIndex , isResponsive } " >
371+ <slot name =" sum" v-bind =" { value, rowIndex, isResponsive }" />
372+ </template >
373+ <template #average =" { value , rowIndex , isResponsive } " >
374+ <slot name =" average" v-bind =" { value, rowIndex, isResponsive }" />
375+ </template >
376+ <template #median =" { value , rowIndex , isResponsive } " >
377+ <slot name =" median" v-bind =" { value, rowIndex, isResponsive }" />
378+ </template >
379+ </VueUiTableHeatmap >
380+
344381 <VueUi3dBar
345382 v-if =" component === 'VueUi3dBar'"
346383 :config =" config"
0 commit comments