Skip to content
This repository has been archived by the owner on Dec 10, 2024. It is now read-only.

implement delta header #166

Open
ramboz opened this issue Aug 21, 2023 · 0 comments
Open

implement delta header #166

ramboz opened this issue Aug 21, 2023 · 0 comments

Comments

@ramboz
Copy link
Collaborator

ramboz commented Aug 21, 2023

After several back and forth and a deep-dive on the current implementation of the live header, here are the main constraints we operate with:

A hybrid approach is thus the only real option we have.

We also had a few technical blockers that were slowing us down quite a bit:

  • delta header can only loaded from the *.delta.com domains (CORS reasons), and we were given st.delta.com as a playground, but this requires manually clearing the CDN cache for any modified files 1 by 1 for any update we did… This creates an unnecessary second layer of caching on top of the Franklin CDN and we need a solution from their IT to avoid breaking the dev flow for Franklin.
  • Various scripts are injected at the CDN level and they also impact the score significantly and we'll have to work with the IT Delta team to get those removed in that context and/or deferred. See: https://adobe-dx-support.slack.com/archives/C04JGUPQAPM/p1681506519678259 and remove scripts injected by Akamai #148

The proposal we have is:

  • revive the initial header PR feat: extract the header into a custom element #102
  • make this a mock header that we load on the page initially
    • do not implement the widget dropdowns/tabs, and only do "loading" animations until the actual header is loaded
    • fully implement the dropdown menus since these are static
    • do not implement the flyout menus on the notifications, logins, etc. and also only do "loading" animations
  • load the delta header in the delayed phase and swap it out silently for our mock header
  • cache all user events related to the "loading" elements and replay them on the final header when it is loaded
  • finally, defer/delay the scripts injected by the CDN so they don't impact the performance that much
@ramboz ramboz added this to the Phase 3 - Header integration milestone Aug 21, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant