By using an array, not a set, we stop deduplicating our group index,
pushing redundant information instead. When searching, this prevents a
component fail state where it cannot search a non-existent index for
matches.
Across every OS1 module (including the launch/home screen context) I edited some padding/margin/sizing for navigational elements for consistency across paging.
This commit introduces some refactoring of localStorage logic, copy
changes and a rearrangement of the launch welcome message to the top
of the screen.
When you were looking at your own card in another group,
it would say "Remove from" group. This is from an arbitrarily strict
ternary check that adminOpt catches
for us, so we just check if the ship is us.
Before we saw if window.ship was in the path of the group.
If you're a star or higher, you'll match many group paths that you don't
own. This strengthens the check.
* origin/m/chat-groupify-extra:
chat-view: %delete even without association
frontend: apply ec6c2ed69 to link, publish, groups
chat fe: clarify copy
chat fe: support adding chat to existing group
chat fe: invite search with/out ships
chat-view: allow %groupify into existing group
chat-view: add docs for %create action
Signed-off-by: Jared Tobin <jared@tlon.io>
Previously, this removed the 'back' link if it was your
root identity. But on mobile, this removed that flow
entirely -- so this just conditionally sets the href
and keeps the back arrow showing in all cards.
Previously, we only passed classes as properties to actual sigils.
When we were using passed classes to line up sigils,
having a blank sigil would also turn the display askew.
When accepting an invite, the sidebar would crash the application
because we were accessing 'metadata' of undefined -- accessing
too many nested property levels without enough safety.
This commit just adds a check for the intermediate property.