added a lot of logic fore foreground color calculation, based on luminance of foreground, background and selectedAnsi colors
fixed fallback when opening the first session
fixed text of unselected tabs being unreadable
added tint var to hostsmanager to get accentcolor
reduced ios version to ios 16
removed the green one idk what to do w it
improved teh lights themselves, they have equal spacing on all sides, including padding
fixed background of the titlebar/trafffic light header
hide the session title in the tab if its active
if not active show it
ANIMATIONS!
fix light themes having unreadable text
added a luminance property to calculate the brighness of the bg color
if its > 0.5, choose a light theme to get black text
improved ui for tab selector, uses theme colours and close button is in the tab
made sshhandler optional for shelltabview
implemented the tabbed terminal to sessionlistview in home
added selectedAnsi to select an accent color from the 16 ansi colors
remove toolbar and navbar in shellview, fix the wierd input issue
added shelltabview
it basically puts tabs at the top, and when tapped the id is updated and so is the shellView var to have a new handler (corresponding to that session)
remove @State var shellView from connectionview &other stuff
using trimmingchars whitespaces and newlines to remove any trailing "\n"s
added padding to the button
publickey data uses a switch now
reorganised keymanager and used //MARKs
added header into KeyType for easier expansion of key types in the future
improved default key comment to use "at" between chunks and exclude time
added codingkeys, omitting the sensitive ones like privatekey and keypair
added init from decoder to skip privatekey and passphrase
removed keyTypes and keyNames, vastly simplifying logic
add set(keypair, onHost) to set a keypair on host
remove getkeys it always returns []
add delete button to
remove rsa from keytype
rename symbolpreview ->hostsymbolpreview
added removefromkeychain
added renamekey
added deletekey
updatekymanagerview to add deleting and ui uodates
remove publickey and passphrase from host
remove key related texboxes in connectionview
added a passwordstore instance
made keytypes and names published
added savekeypairs
updatedsavetokeychain to remove and readd if it exists in the keychain
update getkeys
remove authwithbiometrics from hostmanager
trying to add key renaming support
remove Key (unused)
cleanup
added importkey to import keys and save to keychain
added a picker to select a key id in connection view
fix publickey and opensshpublickey returning a pubkey when privatekey is empty
added generate key button and import button
change HostManager.makeLabel() to a computed property on Host
load and save yk
added savetokeychain to save a key to the keychain
added getfromkeycahin to get a key from the keychain
fix generatekey
added apple's cryptokit in the keychain sample code (keychain layer dir)
addd makesshpubkey to return data for .pub and for installing to hosts
generate rsa just returns seckey
simplify generateEd25519
add helper encode{str,int,data} functions to return Data with a 4 byte lenght count before it
add more buttons
added generateKy to generate a key, currently only rsa
update generateRSA to return the Data for pub and priv, and take a custom size
bell animation better, slightly longer in total and easeinout
added new generate button hardcoded to a rsa 4096
added keytype to define key types (duh)
update getKeys to use the new keypair structure