import { AddressSpace } from '@/ua/AddressSpace' import { UABaseNode } from '@/ua/UABaseNode' import type { UANodeSet } from '@/ua/UANodeSet' import { defineStore } from 'pinia' import { ref } from 'vue' import type { DynamicNode } from '@/ua/DynamicNode' import type { ServerConfig } from './sconfig' export const useStore = defineStore('user', { state: () => ({ addressSpace: null as AddressSpace | null, rootNode: ref(null), selectedNode: ref(null), dynNode: ref(null), sConfig: null as ServerConfig | null }), actions: { setAddressSpace(as: AddressSpace) { this.addressSpace=as; this.rootNode=as.findNode("ns=0;i=84")||null; this.selectedNode=null; }, addNodeset(nodeset: UANodeSet) { this.addressSpace?.addNodeset(nodeset); this.rootNode=this.addressSpace?.findNode("ns=0;i=84")||null; } } })