@@ -5,6 +5,7 @@ import { useDevToolsBridgeRpc } from '@vue/devtools-core'
55import { type InspectorNodeTag , type InspectorState } from ' @vue/devtools-kit'
66import { Pane , Splitpanes } from ' splitpanes'
77
8+ const inspectorId = ' pinia'
89const bridgeRpc = useDevToolsBridgeRpc ()
910
1011const selected = ref (' ' )
@@ -16,7 +17,7 @@ const state = ref<{
1617}>({})
1718
1819function getPiniaState(nodeId : string ) {
19- bridgeRpc .getInspectorState ({ inspectorId: ' pinia ' , nodeId }).then (({ data }) => {
20+ bridgeRpc .getInspectorState ({ inspectorId , nodeId }).then (({ data }) => {
2021 state .value = data
2122 })
2223}
@@ -33,12 +34,22 @@ watch(selected, () => {
3334createCollapseContext (' inspector-state' )
3435
3536onDevToolsClientConnected (() => {
36- bridgeRpc .getInspectorTree ({ inspectorId: ' pinia' , filter: ' ' }).then (({ data }) => {
37- tree .value = data
38- if (! selected .value && data .length ) {
39- selected .value = data [0 ].id
37+ const getPiniaInspectorTree = () => {
38+ bridgeRpc .getInspectorTree ({ inspectorId , filter: ' ' }).then (({ data }) => {
39+ tree .value = data
40+ if (! selected .value && data .length )
41+ selected .value = data [0 ].id
4042 getPiniaState (data [0 ].id )
41- }
43+ })
44+ }
45+ getPiniaInspectorTree ()
46+
47+ bridgeRpc .on .componentUpdated ((id ) => {
48+ if (id !== inspectorId )
49+ return
50+ getPiniaInspectorTree ()
51+ }, {
52+ inspectorId ,
4253 })
4354
4455 bridgeRpc .on .inspectorTreeUpdated ((data ) => {
@@ -50,7 +61,7 @@ onDevToolsClientConnected(() => {
5061 getPiniaState (data .data [0 ].id )
5162 }
5263 }, {
53- inspectorId: ' pinia ' ,
64+ inspectorId ,
5465 })
5566
5667 bridgeRpc .on .inspectorStateUpdated ((data ) => {
@@ -59,7 +70,7 @@ onDevToolsClientConnected(() => {
5970
6071 state .value = data
6172 }, {
62- inspectorId: ' pinia ' ,
73+ inspectorId ,
6374 })
6475})
6576 </script >
@@ -77,7 +88,7 @@ onDevToolsClientConnected(() => {
7788 <InspectorState
7889 v-for =" (item, key) in state" :id =" key"
7990 :key =" key"
80- inspector-id =" pinia "
91+ : inspector-id =" inspectorId "
8192 :node-id =" selected" :data =" item" :name =" `${key}`"
8293 />
8394 </div >
0 commit comments