summaryrefslogtreecommitdiffstats
path: root/src/components/CertificateInfo.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/CertificateInfo.vue')
-rw-r--r--src/components/CertificateInfo.vue54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/components/CertificateInfo.vue b/src/components/CertificateInfo.vue
new file mode 100644
index 0000000..cb1a829
--- /dev/null
+++ b/src/components/CertificateInfo.vue
@@ -0,0 +1,54 @@
+<template>
+ <div>
+ <h4>{{ $t("Certificate Info") }}</h4>
+ {{ $t("Certificate Chain") }}:
+ <div
+ v-if="valid"
+ class="rounded d-inline-flex ms-2 text-white tag-valid"
+ >
+ {{ $t("Valid") }}
+ </div>
+ <div
+ v-if="!valid"
+ class="rounded d-inline-flex ms-2 text-white tag-invalid"
+ >
+ {{ $t("Invalid") }}
+ </div>
+ <certificate-info-row :cert="certInfo" />
+ </div>
+</template>
+
+<script>
+import CertificateInfoRow from "./CertificateInfoRow.vue";
+export default {
+ components: {
+ CertificateInfoRow,
+ },
+ props: {
+ /** Object representing certificate */
+ certInfo: {
+ type: Object,
+ required: true,
+ },
+ /** Is the TLS certificate valid? */
+ valid: {
+ type: Boolean,
+ required: true,
+ },
+ },
+};
+</script>
+
+<style lang="scss" scoped>
+@import "../assets/vars.scss";
+
+.tag-valid {
+ padding: 2px 25px;
+ background-color: $primary;
+}
+
+.tag-invalid {
+ padding: 2px 25px;
+ background-color: $danger;
+}
+</style>