@meddleware/dashboard 0.1.24 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +3 -3
  2. package/src/App.vue +19 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meddleware/dashboard",
3
- "version": "0.1.24",
3
+ "version": "0.1.25",
4
4
  "description": "Meddleware tools hub \u2014 Vue 3 SPA listing hosted services (Walrus, Access Gate) with white-label deploy options.",
5
5
  "author": "Meddleware <dev@meddleware.co.uk>",
6
6
  "license": "0BSD",
@@ -29,9 +29,9 @@
29
29
  "@meddleware/access-gate-ui": "^0.1.7",
30
30
  "@meddleware/design-tokens": "^0.1.2",
31
31
  "@meddleware/seal-ui": "^0.0.8",
32
- "@meddleware/ui": "^0.1.9",
32
+ "@meddleware/ui": "^0.1.10",
33
33
  "@meddleware/wallet-adapter": "^0.0.5",
34
- "@meddleware/walrus-ui": "^0.1.18",
34
+ "@meddleware/walrus-ui": "^0.1.19",
35
35
  "pinia": "^4.0.2",
36
36
  "vue": "^3.5.40",
37
37
  "vue-router": "^5.2.0"
package/src/App.vue CHANGED
@@ -3,14 +3,15 @@ import { computed } from 'vue'
3
3
  import { useRoute, RouterView, RouterLink } from 'vue-router'
4
4
  import {
5
5
  AppHeader, AppSidebar,
6
- ColorModeControl, SidebarItem, StatusWidget, CopyableAddress,
7
- useColorMode,
6
+ ColorModeControl, SidebarItem, StatusWidget, CopyableAddress, ExplorerLink,
7
+ suiExplorerUrl, useColorMode,
8
8
  } from '@meddleware/ui'
9
- import { useWallet } from '@meddleware/wallet-adapter'
9
+ import { useWallet, useNetwork } from '@meddleware/wallet-adapter'
10
10
  import NetworkSelector from './components/NetworkSelector.vue'
11
11
 
12
12
  const { mode, set } = useColorMode('dark')
13
13
  const route = useRoute()
14
+ const { network } = useNetwork()
14
15
 
15
16
  const isHome = computed(() => route.path === '/')
16
17
  const isWalrus = computed(() => route.path === '/walrus')
@@ -23,6 +24,14 @@ const isSealedStorage = computed(() => route.path === '/sealed-storage')
23
24
  const { account, disconnect } = useWallet({
24
25
  requiredFeatures: ['sui:signTransaction', 'sui:signPersonalMessage'],
25
26
  })
27
+
28
+ // SuiVision has no localnet explorer, so only build a link for public networks; otherwise the
29
+ // address is shown copy-only.
30
+ const accountExplorerHref = computed(() =>
31
+ account.value && network.value !== 'localnet'
32
+ ? suiExplorerUrl('account', account.value.address, network.value as 'testnet' | 'mainnet' | 'devnet')
33
+ : null,
34
+ )
26
35
  </script>
27
36
 
28
37
  <template>
@@ -61,7 +70,13 @@ const { account, disconnect } = useWallet({
61
70
 
62
71
  <template #foot>
63
72
  <div v-if="account" class="wallet-connected">
64
- <CopyableAddress :address="account.address" />
73
+ <CopyableAddress :address="account.address">
74
+ <ExplorerLink
75
+ v-if="accountExplorerHref"
76
+ :href="accountExplorerHref"
77
+ :value="account.address"
78
+ />
79
+ </CopyableAddress>
65
80
  <button type="button" class="wallet-disconnect" @click="disconnect">Disconnect</button>
66
81
  </div>
67
82
  <div v-else class="wallet-disconnected">