diff --git a/src/views/DIDView.vue b/src/views/DIDView.vue index e2a41e77..4a793d0e 100644 --- a/src/views/DIDView.vue +++ b/src/views/DIDView.vue @@ -71,22 +71,22 @@ contactFromDid?.seesMe && contactFromDid.did !== activeDid " class="text-sm uppercase bg-gradient-to-b from-slate-400 to-slate-700 shadow-[inset_0_-1px_0_0_rgba(0,0,0,0.5)] text-white mx-0.5 my-0.5 px-2 py-1.5 rounded-md" - title="They can see you" + title="They can see your activity" @click="confirmSetVisibility(contactFromDid, false)" > - + - + - + - + {{ claimCountWithHiddenText }} - so if you expected but do not see details from someone then ask them to - check that their activity is visible to you on their Contacts - - page. + If you don't see expected info above for someone, ask them to check that + their activity is visible to you ( + + + ) on + + this page . @@ -120,10 +127,11 @@ import { DateTime } from "luxon"; import * as R from "ramda"; import { Component, Vue } from "vue-facing-decorator"; import { Router } from "vue-router"; +import { useClipboard } from "@vueuse/core"; import QuickNav from "../components/QuickNav.vue"; import TopMessage from "../components/TopMessage.vue"; -import { NotificationIface } from "../constants/app"; +import { NotificationIface, APP_SERVER } from "../constants/app"; import { Contact } from "../db/tables/contacts"; import { GenericCredWrapper, @@ -148,6 +156,7 @@ import { NOTIFY_ALL_CONFIRMATIONS_ERROR, NOTIFY_GIVE_SEND_ERROR, NOTIFY_CLAIMS_SEND_ERROR, + NOTIFY_COPIED_TO_CLIPBOARD, createConfirmationSuccessMessage, createCombinedSuccessMessage, } from "@/constants/notifications"; @@ -195,8 +204,8 @@ export default class QuickActionBvcEndView extends Vue { get claimCountWithHiddenText() { if (this.claimCountWithHidden === 0) return ""; return this.claimCountWithHidden === 1 - ? "There is 1 other claim with hidden details," - : `There are ${this.claimCountWithHidden} other claims with hidden details,`; + ? "There is 1 other claim with hidden details." + : `There are ${this.claimCountWithHidden} other claims with hidden details.`; } get claimCountByUserText() { @@ -296,6 +305,25 @@ export default class QuickActionBvcEndView extends Vue { (this.$router as Router).push(route); } + copyContactsLinkToClipboard() { + const deepLinkUrl = `${APP_SERVER}/deep-link/did/${this.activeDid}`; + useClipboard() + .copy(deepLinkUrl) + .then(() => { + this.notify.success( + NOTIFY_COPIED_TO_CLIPBOARD.message("Your info link"), + TIMEOUTS.SHORT, + ); + }) + .catch((error) => { + logger.error("Failed to copy to clipboard:", error); + this.notify.error( + "Failed to copy link to clipboard. Please try again.", + TIMEOUTS.SHORT, + ); + }); + } + async record() { try { if (this.claimsToConfirmSelected.length > 0) {