summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/reports/grouped_test_report/components/modal.vue
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/reports/grouped_test_report/components/modal.vue')
-rw-r--r--app/assets/javascripts/reports/grouped_test_report/components/modal.vue71
1 files changed, 71 insertions, 0 deletions
diff --git a/app/assets/javascripts/reports/grouped_test_report/components/modal.vue b/app/assets/javascripts/reports/grouped_test_report/components/modal.vue
new file mode 100644
index 00000000000..b0310fd003e
--- /dev/null
+++ b/app/assets/javascripts/reports/grouped_test_report/components/modal.vue
@@ -0,0 +1,71 @@
+<script>
+import { GlModal, GlLink, GlSprintf } from '@gitlab/ui';
+
+import CodeBlock from '~/vue_shared/components/code_block.vue';
+import { fieldTypes } from '../../constants';
+
+export default {
+ components: {
+ CodeBlock,
+ GlModal,
+ GlLink,
+ GlSprintf,
+ },
+ props: {
+ visible: {
+ type: Boolean,
+ required: true,
+ },
+ title: {
+ type: String,
+ required: true,
+ },
+ modalData: {
+ type: Object,
+ required: true,
+ },
+ },
+ fieldTypes,
+};
+</script>
+<template>
+ <gl-modal
+ :visible="visible"
+ modal-id="modal-mrwidget-reports"
+ :title="title"
+ :hide-footer="true"
+ @hide="$emit('hide')"
+ >
+ <div
+ v-for="(field, key, index) in modalData"
+ v-if="field.value"
+ :key="index"
+ class="row gl-mt-3 gl-mb-3"
+ >
+ <strong class="col-sm-3 text-right"> {{ field.text }}: </strong>
+
+ <div class="col-sm-9 text-secondary">
+ <code-block v-if="field.type === $options.fieldTypes.codeBock" :code="field.value" />
+
+ <gl-link
+ v-else-if="field.type === $options.fieldTypes.link"
+ :href="field.value"
+ target="_blank"
+ >
+ {{ field.value }}
+ </gl-link>
+
+ <gl-sprintf
+ v-else-if="field.type === $options.fieldTypes.seconds"
+ :message="__('%{value} s')"
+ >
+ <template #value>{{ field.value }}</template>
+ </gl-sprintf>
+
+ <template v-else-if="field.type === $options.fieldTypes.text">
+ {{ field.value }}
+ </template>
+ </div>
+ </div>
+ </gl-modal>
+</template>