summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/projects/pipelines/charts/components/ci_cd_analytics_area_chart.vue
blob: ad3e6713e45b620daac8ae971b58ffe4452b790a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<script>
import { GlAreaChart } from '@gitlab/ui/dist/charts';
import ResizableChartContainer from '~/vue_shared/components/resizable_chart/resizable_chart_container.vue';
import { CHART_CONTAINER_HEIGHT } from '../constants';

export default {
  name: 'CiCdAnalyticsAreaChart',
  components: {
    GlAreaChart,
    ResizableChartContainer,
  },
  props: {
    chartData: {
      type: Array,
      required: true,
    },
    areaChartOptions: {
      type: Object,
      required: true,
    },
  },
  chartContainerHeight: CHART_CONTAINER_HEIGHT,
};
</script>
<template>
  <div class="gl-mt-3">
    <p>
      <slot></slot>
    </p>
    <resizable-chart-container>
      <gl-area-chart
        slot-scope="{ width }"
        v-bind="$attrs"
        :width="width"
        :height="$options.chartContainerHeight"
        :data="chartData"
        :include-legend-avg-max="false"
        :option="areaChartOptions"
      >
        <slot slot="tooltip-title" name="tooltip-title"></slot>
        <slot slot="tooltip-content" name="tooltip-content"></slot>
      </gl-area-chart>
    </resizable-chart-container>
  </div>
</template>