Improve page loading and theme system
- The sidebar is visible while loading with css
There was an apparent problem when switching pages with the new switcher
- css variables are now used
- Theme color is applied to several buttons and texts
where previously Plan color was used
Affects issues:
- Implements #2357
- Fixed / opening "Redirecting.." view due to wrong whoAmI replacement
- Fixed page not opening because sidebar contained undefined items (static site can't have everything)
- Fixed some sidebar links being anchors instead of react-router links
- Fixed network page not opening due to missing extensionData json
- Fixed server page not opening due to missing extensionData and serverIdentifier json
- Added visual icon to the page when it is exported rather than dynamic for my own sanity
- Removed query page links from exported pages
Join addresses were missing
- Implemented new group visualizer that allows viewing group data as column/bar/pie/table
- Implemented latest join address pie on server page (was missing)
- Implemented join addresses per day graph on new Join addresses tab
- Made playerbase overview use the group visualizer
Affects issues:
- Close#2362
When using ServerWidePluginData component for two different plugins that had a DataTablesTable
React reused the component, which lead to issues of DataTables trying to remount on the same
component with a different ID, with both jQuery and React trying to remove elements from DOM.
- Added div around table in DataTablesTable to allow React properly unmount the element after
jQuery already removed the table element
- Added extra layer in ServerWidePluginData that re-renders the tab when plugin changes
- Sorted extensions in the endpoints
- Added /v1/networkMetadata endpoint for implementing server list navigation later
- Added network page to App.js with plugins and players tabs already implemented
Sidebar items not being rendered caused the currentTab to be undefined,
until the sidebar is opened, and then currentTab is set - which then
caused a useEffect that closes sidebar to fire.
This lead to the sidebar closing right away on the first click.
To fix this the sidebar item state was moved to navigationHook,
and changing the list of items on a sidebar updates currentTab
at the same time to prevent sidebar rendering setting it again.
Server name came from metadata endpoint, but it is incorrect if viewing a server page on a network
Added a new endpoint /v1/serverIdentity?server=... to get the identifiable name of the server.