Skip to content
Snippets Groups Projects
core-classes.pu 1.44 KiB
@startuml

package core {
	class App {
	-- Signals --
	current_account_changed(str : account_name)
	data_changed()
	-- Slots --
	-- Properties --
	current_account
	accounts
	-- Methods --
	}
	App --* Account : accounts

	class Account {
	-- Signals --
	wallets_changed(int : nb_wallets)
	community_added(int : index)
	community_removed(int : index)
	data_changed()
	-- Slots --
	-- Properties --
	communities
	wallets
	-- Methods --
	}
	Account "1" --* "*" Wallet
	Account "1" --* "*" Community

	class Wallet {
		-- Signals --
	money_received(Transfer)
	money_sent(Transfer)
	name_changed(str : new_name
	data_changed()
	-- Slots --
	-- Properties --
	transfers
	-- Methods --
	}
	Wallet "1" --* "*" Transfer

	class Transfer {
	-- Signals --
	state_changed(int : new_state)
	-- Slots --
	-- Properties --
	-- Methods --
	}

	class Community {
	-- Signals --
	members_changed()
	data_changed()
	-- Slots --
	-- Properties --
	network
	-- Methods --

	}
	App --> Identity
	class Identity {
		{static} _identities
		{static} load(data : dict)
		{static} lookup(search : str)
	}

}

package net {
	class Network {
	-- Signals --
	node_found(int : index)
	node_removed(int : index)
	block_found(int : block_number)
	-- Slots --
	-- Properties --
	nodes
	root_nodes
	-- Methods --
	}
	Community "1" --* "1" Network
	Network "1" --* "*" Node

	class Node {
	-- Signals --
	changed()
	-- Slots --
	-- Properties --
	endpoints
	pubkey
	uid
	block
	state
	-- Methods --
	}

}
@enduml