Skip to content

Commit 7bbab4d

Browse files
authored
feat: update navigation rail (#442)
Closes #420 Towards #424 and #425 - Participants can no longer access the project settings pages. - For tools page, only removes the collaborators link item. Other design changes will be handled in #425 - Notable differences from design: - Desired behavior of labeled nav links (team, tools, settings) when hovered or active was surprisingly difficult, where we basically want just the icons reacting and not the text labels. Became too much of a time sink so opted to preserve existing behavior for now.
1 parent c899492 commit 7bbab4d

17 files changed

Lines changed: 807 additions & 573 deletions

File tree

messages/renderer/en.json

Lines changed: 31 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -579,18 +579,6 @@
579579
"description": "Text for item that navigates to project categories set page.",
580580
"message": "Categories Set"
581581
},
582-
"routes.app.projects.$projectId_.settings.index.collaborators": {
583-
"description": "Text for item that navigates to project collaborators page.",
584-
"message": "Collaborators"
585-
},
586-
"routes.app.projects.$projectId_.settings.index.deviceIsCoordinator": {
587-
"description": "Indicates that device is a coordinator on the current project.",
588-
"message": "This device is a coordinator on this project."
589-
},
590-
"routes.app.projects.$projectId_.settings.index.deviceIsParticpant": {
591-
"description": "Indicates that device is a participant on the current project.",
592-
"message": "This device is a participant on this project."
593-
},
594582
"routes.app.projects.$projectId_.settings.index.editInfo": {
595583
"description": "Text for link that navigates to page for editing project settings.",
596584
"message": "Edit Info"
@@ -603,10 +591,6 @@
603591
"description": "Title of the project settings page.",
604592
"message": "Project Settings"
605593
},
606-
"routes.app.projects.$projectId_.settings.index.noProjectDescription": {
607-
"description": "Indicates that the project does not have a description.",
608-
"message": "No project description."
609-
},
610594
"routes.app.projects.$projectId_.settings.index.unnamedProject": {
611595
"description": "Fallback for when current project is missing a name.",
612596
"message": "Unnamed Project"
@@ -615,10 +599,6 @@
615599
"description": "Text for link that navigates to project categories set page.",
616600
"message": "Update Set"
617601
},
618-
"routes.app.projects.$projectId_.settings.index.viewTeam": {
619-
"description": "Text for link that navigates to project team page.",
620-
"message": "View Team"
621-
},
622602
"routes.app.projects.$projectId_.settings.info.cancel": {
623603
"description": "Label for cancel button.",
624604
"message": "Cancel"
@@ -679,79 +659,79 @@
679659
"description": "Label for save button.",
680660
"message": "Save"
681661
},
682-
"routes.app.projects.$projectId_.settings.team.$deviceId.addedOn": {
662+
"routes.app.projects.$projectId_.team.$deviceId.addedOn": {
683663
"description": "Text indicating date collaborator was added to the project.",
684664
"message": "Added on {value}"
685665
},
686-
"routes.app.projects.$projectId_.settings.team.$deviceId.collaboratorNavTitle": {
666+
"routes.app.projects.$projectId_.team.$deviceId.collaboratorNavTitle": {
687667
"description": "Title of the team collaborator info page.",
688668
"message": "Collaborator Info"
689669
},
690-
"routes.app.projects.$projectId_.settings.team.$deviceId.confirmButton": {
670+
"routes.app.projects.$projectId_.team.$deviceId.confirmButton": {
691671
"description": "Button text to confirm leaving project.",
692672
"message": "Confirm"
693673
},
694-
"routes.app.projects.$projectId_.settings.team.$deviceId.coordinator": {
674+
"routes.app.projects.$projectId_.team.$deviceId.coordinator": {
695675
"description": "Text indicating collaborator is a coordinator.",
696676
"message": "Coordinator"
697677
},
698-
"routes.app.projects.$projectId_.settings.team.$deviceId.lastCoordinatorWarning": {
678+
"routes.app.projects.$projectId_.team.$deviceId.lastCoordinatorWarning": {
699679
"description": "Warning text about leaving the project as the last coordinator.",
700680
"message": "You're the last coordinator. Consider making another device a coordinator before leaving the project."
701681
},
702-
"routes.app.projects.$projectId_.settings.team.$deviceId.leaveProjectButton": {
682+
"routes.app.projects.$projectId_.team.$deviceId.leaveProjectButton": {
703683
"description": "Button text to initiate leave project flow.",
704684
"message": "Leave Project"
705685
},
706-
"routes.app.projects.$projectId_.settings.team.$deviceId.leaveProjectExplainerDescription": {
686+
"routes.app.projects.$projectId_.team.$deviceId.leaveProjectExplainerDescription": {
707687
"description": "Description for leave project explanation.",
708688
"message": "<b>{name}</b> will no longer be able to add or exchange observations."
709689
},
710-
"routes.app.projects.$projectId_.settings.team.$deviceId.leaveProjectExplainerTitle": {
690+
"routes.app.projects.$projectId_.team.$deviceId.leaveProjectExplainerTitle": {
711691
"description": "Title text for leave project explanation.",
712692
"message": "Leave Project?"
713693
},
714-
"routes.app.projects.$projectId_.settings.team.$deviceId.leaveProjectNavTitle": {
694+
"routes.app.projects.$projectId_.team.$deviceId.leaveProjectNavTitle": {
715695
"description": "Title of the team collaborator info page when the leave project flow is initiated.",
716696
"message": "Leave Project"
717697
},
718-
"routes.app.projects.$projectId_.settings.team.$deviceId.participant": {
698+
"routes.app.projects.$projectId_.team.$deviceId.participant": {
719699
"description": "Text indicating collaborator is a participant.",
720700
"message": "Participant"
721701
},
722-
"routes.app.projects.$projectId_.settings.team.$deviceId.thisDevice": {
702+
"routes.app.projects.$projectId_.team.$deviceId.thisDevice": {
723703
"description": "Text indicating that user is viewing itslef.",
724704
"message": "This Device!"
725705
},
726-
"routes.app.projects.$projectId_.settings.team.index.coordinatorsSectionDescription": {
706+
"routes.app.projects.$projectId_.team.index.coordinatorsSectionDescription": {
727707
"description": "Description of the coordinators section in the team page.",
728708
"message": "Coordinators can invite devices, edit and delete data, and manage project details."
729709
},
730-
"routes.app.projects.$projectId_.settings.team.index.coordinatorsSectionTitle": {
710+
"routes.app.projects.$projectId_.team.index.coordinatorsSectionTitle": {
731711
"description": "Title of the coordinators section in the team page.",
732712
"message": "Coordinators"
733713
},
734-
"routes.app.projects.$projectId_.settings.team.index.inviteDevice": {
714+
"routes.app.projects.$projectId_.team.index.inviteDevice": {
735715
"description": "Text for button that initiates steps for inviting device to project.",
736716
"message": "Invite Device"
737717
},
738-
"routes.app.projects.$projectId_.settings.team.index.navTitle": {
718+
"routes.app.projects.$projectId_.team.index.navTitle": {
739719
"description": "Title of the project settings team page.",
740720
"message": "Team"
741721
},
742-
"routes.app.projects.$projectId_.settings.team.index.noParticipants": {
722+
"routes.app.projects.$projectId_.team.index.noParticipants": {
743723
"description": "Text indicating that no participants are part of the project yet.",
744724
"message": "No Participants have been added to this project."
745725
},
746-
"routes.app.projects.$projectId_.settings.team.index.participantsSectionDescription": {
726+
"routes.app.projects.$projectId_.team.index.participantsSectionDescription": {
747727
"description": "Description of the participants section in the team page.",
748728
"message": "Participants can take and share observations. They cannot manage users or project details."
749729
},
750-
"routes.app.projects.$projectId_.settings.team.index.participantsSectionTitle": {
730+
"routes.app.projects.$projectId_.team.index.participantsSectionTitle": {
751731
"description": "Title of the participants section in the team page.",
752732
"message": "Participants"
753733
},
754-
"routes.app.projects.$projectId_.settings.team.index.thisDevice": {
734+
"routes.app.projects.$projectId_.team.index.thisDevice": {
755735
"description": "Text indicating that the listed device refers to the one currently being used.",
756736
"message": "This Device"
757737
},
@@ -784,15 +764,25 @@
784764
"message": "Wi-Fi info unavailable."
785765
},
786766
"routes.app.route.appSettingsTabLabel": {
767+
"description": "Label for CoMapeo settings tab link in navigation.",
787768
"message": "Settings"
788769
},
789-
"routes.app.route.exchangeTabLabel": {
790-
"message": "Exchange"
770+
"routes.app.route.exchangeTabAccessibleLabel": {
771+
"description": "Accessible label for exchange tab link in navigation.",
772+
"message": "View exchange."
791773
},
792774
"routes.app.route.projectTabAccessibleLabel": {
793775
"description": "Accessible label for project tab link in navigation.",
794776
"message": "View project."
795777
},
778+
"routes.app.route.teamTabLabel": {
779+
"description": "Label for team tab link in navigation.",
780+
"message": "Team"
781+
},
782+
"routes.app.route.toolsTabLabel": {
783+
"description": "Label for tools tab link in navigation.",
784+
"message": "Tools"
785+
},
796786
"routes.app.settings.-data-and-pritvacy-section.diagnosticInformationPersonalInfo": {
797787
"message": "This never includes any of your data or personal information."
798788
},

src/renderer/icons/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,7 @@
66

77
- Icons with names starting with `material-` designed by [Google Material Icons](https://fonts.google.com/icons?icon.set=Material+Icons). License: [Apache License Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.html)
88

9+
- Icons with name starting with `noun-project-` sourced from [Noun Project](https://thenounproject.com).
10+
- ["Notebook" icon by Nursila](./noun-project-notebook.svg) from [Noun Project](https://thenounproject.com/browse/icons/term/notebook/) CC BY 3.0
11+
912
- Optimizations done via [SVGOMG](https://optimize.svgomg.net/)
Lines changed: 1 addition & 0 deletions
Loading

src/renderer/icons/material-offline-bolt.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Loading

src/renderer/src/generated/icons.generated.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ export const iconNames = [
1010
'openmoji-handshake-medium-skin-tone',
1111
'openmoji-bust-in-silhouette',
1212
'openmoji-bar-chart',
13+
'noun-project-notebook',
1314
'material-wifi',
1415
'material-wifi-off',
1516
'material-warning-rounded',
@@ -30,7 +31,7 @@ export const iconNames = [
3031
'material-phone-android',
3132
'material-person-add',
3233
'material-people-filled',
33-
'material-offline-bolt',
34+
'material-offline-bolt-filled',
3435
'material-map-filled',
3536
'material-manage-accounts-filled',
3637
'material-logout',

0 commit comments

Comments
 (0)