Plugins can be created to add more functionality to FireWallet Browser
They are created in python and use the format:
info = {
"name": "Plugin Name",
"description": "Plugin Description",
"version": "Version number",
"author": "Your Name",
}
functions = {
"internalName":{
"name": "Human readable name",
"type": "Type of plugin",
"description": "Function description",
"params": { # For plugins other than default use {} for no params
"paramName": {
"name":"Human readable paramiter name",
"type":"type of paramiter",
}
},
"returns": {
"returnName":
{
"name": "Human readable return name",
"type": "type of return"
}
}
}
}
def internalName(params, authentication): # This should always have the same inputs
paramName = params["paramName"]
wallet = authentication.split(":")[0]
# Do stuff
output = "Return value of stuff: " + paramName
return {"returnName": output}
Type: default
This is the default type and is used when no type is specified.
This type is displayed in the plugin page only.
This is the onlu type of plugin that takes user input
For manage page use type: domain
For search page use type: search
This type is used for domain plugins. It shows in the manage domain page or the search page.
It gets the domain
paramater as the only input (in addition to authentication)
Type: dashboard
This type is used for dashboard plugins.
It shows in the dashboard page. It doesn't get any inputs other than the authentication
Type: text
Type: longText
Type: number
Type: checkbox
Type: address
This will handle hip2 resolution for you so the function will always receive a valid address
Type: dns
This isn't done yet but use it over text as it includes parsing
Type: text
Type: list
This is a list if text items (or HTML items)
Type: tx
This will display the hash and links to explorers
Type: dns
This will display DNS in a table format