-
Notifications
You must be signed in to change notification settings - Fork 229
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Navigation Integration #4571
Milestone
Comments
tochwill
added
Refinement Needed
This is ready for refinement. It shouldn't be worked on until it has been refined by Dev & Test.
ws-frontpage-stream
labels
Nov 6, 2019
Blocked on BBC-archive/psammead#2557 |
tochwill
added
the
blocked
This issue should not be worked on until another internal issue is completed - see desc for details
label
Nov 6, 2019
1 task
ghost
mentioned this issue
Nov 14, 2019
3 tasks
tochwill
removed
the
Refinement Needed
This is ready for refinement. It shouldn't be worked on until it has been refined by Dev & Test.
label
Nov 18, 2019
The same drowndown list components and scrollable navigation are going to be used for canonical and for AMP, with the only difference being the wrapper component and state management. I think it would be worth pairing on these tasks and doing a swarm review to try and avoid the back and forth across the board that we had with the nav components? |
AlistairGempf
removed
the
blocked
This issue should not be worked on until another internal issue is completed - see desc for details
label
Nov 29, 2019
tochwill
changed the title
Navigation: Canonical dropdown integration and dropdown toggling
Navigation Integration
Dec 19, 2019
6 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is your feature request related to a problem? Please describe.
The new navigation designs contain a dropdown menu that is toggleable using a burger menu and a cross icon. The methods of achieving this are different from AMP to the canonical page.
Screenshots of the components in open/closed state can be seen here: BBC-archive/psammead#2557
Describe the solution you'd like
The Canonical navigation should use state to keep track of whether or not the dropdown should be displayed, and render the component accordingly.
The Psammead navigation package will export canonical presentational components for the menu toggle and dropdown components. When composing the Canonical navigation in Simorgh, include logic to toggle the dropdown state. The Psammead components will accept click handlers, which can be used to update the state of the navigation. This is described here: BBC-archive/psammead#2557
With AMP, we need to add a 'hidden' attribute, and use the AMP specific tap event. To see an example, the ConsentBanner in Simorgh contains an interaction that uses the AMP tap event.
The Psammead navigation package will export AMP presentational components for the menu toggle and dropdown components. When composing the AMP navigation in Simorgh, include logic to toggle the dropdown state. The Psammead components will accept click handlers, which can be used to update the state of the navigation. This is described here: BBC-archive/psammead#2557
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Subtasks
Subtasks:
index.js
isScrollable
is set, the difference between server and client render.id
,ampOpenClass
props to Navigation BBC-archive/psammead#2785 (comment)translations
object, and just call it 'section'.Testing notes
Cypress tests will need to be updated to reflect the changes in navigation. We currently check for visible nav, with a skiplink to h1, and check that no links 404. We will now have the scrollable navigation and dropdown navigation to consider - and the dropdown links will not be visible until the burger menu has been selected.
We will need to manually test state management, and write a new E2E test to cover AMP state management and click handling works correctly.
Dev insight: Will there be any potential regression? etc
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: