-
Notifications
You must be signed in to change notification settings - Fork 174
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
[MWPW-154969] Performance consent #2714
Conversation
|
Co-authored-by: Narcis Radu <github@narcisradu.ro>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## stage #2714 +/- ##
=======================================
Coverage 95.74% 95.74%
=======================================
Files 173 173
Lines 45600 45665 +65
=======================================
+ Hits 43661 43724 +63
- Misses 1939 1941 +2 ☔ View full report in Codecov by Sentry. |
Reminder to set the |
d424c80
to
b9d8f7c
Compare
libs/utils/logWebVitals.js
Outdated
|
||
function handleEvent() { | ||
const performanceConsent = window.adobePrivacy.activeCookieGroups().indexOf('C0002') !== -1; | ||
if (!performanceConsent) return; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Similar comment to my previous one, why define functions and event listeners when they might not be used? I'd suggest returning early
function handleEvent() { | |
const performanceConsent = window.adobePrivacy.activeCookieGroups().indexOf('C0002') !== -1; | |
if (!performanceConsent) return; | |
const performanceConsent = window.adobePrivacy.activeCookieGroups().indexOf('C0002') !== -1; | |
if (!performanceConsent) return; | |
function handleEvent() { | |
const lanaData = {}; | |
// ... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
adobePrivacy
object will be made available later in the waterfall, while the needs to execute sooner. I think the approach is correct.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did notice we load this quite late, so @overmyheadandbody has a point in the sense of - maybe privacy is already available in which case we would have missed the events // don't need the listeners.
I added support for this case as well
libs/utils/logWebVitals.js
Outdated
|
||
function handleEvent() { | ||
const performanceConsent = window.adobePrivacy.activeCookieGroups().indexOf('C0002') !== -1; | ||
if (!performanceConsent) return; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
adobePrivacy
object will be made available later in the waterfall, while the needs to execute sooner. I think the approach is correct.
This pull request is not passing all required checks. Please see this discussion for information on how to get all checks passing. Inconsistent checks can be manually retried. If a test absolutely can not pass for a good reason, please add a comment with an explanation to the PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Verified , testing details https://jira.corp.adobe.com/browse/MWPW-156343
Revert "MWPW-147867 - [marquee] support RTL for loc" (#2662) Revert "MWPW-147867 - [marquee] support RTL for loc (#2640)" This reverts commit 49df5f7. Revert "[MWPW-145131] Send locale and language code to analytics" (#2661) Revert "[MWPW-145131] Send locale and language code to analytics (#2600)" This reverts commit 04e687f. MWPW-155079 [MILO][MEP] Manifests not changing domains (#2626) * replace overridePersonalizationVariant function * Fix chaining * Move parseMepParam * add additional optional chaining operator Co-authored-by: Vivian A Goodrich <101133187+vgoodric@users.noreply.github.com> * Refactor personalization.js * Remove comment * Add TargetManifestId * Remove comment * Add targetManifestId test * Refactor addMepHighlightAndTargetManifestIdGnav * Remove console.log from test * Shorten function name * Limits targetManifestId to target exp and adds missing name to manifestId * Fix test * Handle default selectedVariant issue * Mostly done * Merging in prop display update * Unit tests fixed * Add targetmanifestid to useblockcode * refactor to remove unnecessary import * Remove commented code * Removing unused functions * Update tests, not including replacePage * Shorten Function Name * move insert inline back to fragment.js * additional cleanup and unit tests * Fix adobeTargetTestId issues * add optional chaining * Update condition for addAnalyticsForUseBlockCode * Refactor to handle analytics for updatemetadata * Fix useBlockCode test * Fix merged merged test * Remove applyPers from preload fragments test * Fix martech init post-merge * Fix tests and martech merge cleanup * Dynamically import personalization.js * add 2 ignore comments * add conditional chaining * Remove mwpw-146528 temp files * MWPW-152275 Move manifest.json request up while waiting on sstats / etc. (#2608) * add preload * shorten if and and conditional chaining * run loop even if Target is off * Add nullish coalescing assignment suggestion * MWPW-154998 [MEP][MILO] Manifests do not execute in the right order when there is a disabled manifest (#2616) * add default execution order * unit test * normalizePath * add normalizePath back into preload * MWPW-155568 [MILO][MEP] If MEP is completely off, mep param should still show button (#2658) don't return if param is present but empty --------- Co-authored-by: markpadbe <markp@adobe.com> Co-authored-by: Mark Perry <124626043+markpadbe@users.noreply.github.com> MWPW-146030 and MWPW-143704 Add fresco-any and cc-paid-no-stock (#2657) add entitlements Attaching loadblock to window to provide alternative way of loading the script (#2660) Attaching loadblock to window MWPW-155316 - Fixing Pill Notification edge cases (#2639) * handling pill edge cases * pill edge case styles * update tests to fix coverage * correction to previous commit * updates based on PR feedback * more simplifying * adding an additional filter * style tweak * change inline size for desktop pills * revert of icon sizing * revert of ribbon revert Correctly pass on the dataset (#2651) MWPW-155289: Fixed filtering and sorting in catalog sidenav (#2653) handled empty hash case in deeplink MWPW-154124: use preview index (#2654) * MWPW-154124: use preview index * should remove both links [AUTOMATED-PR] Update imslib.min.js dependency (#2659) Update self hosted dependency Co-authored-by: GitHub Action <action@github.com> [MWPW-152181] Tabbing gets "stuck" after second instance of merch-card CTAs, within a segment blade (#2650) * Allow the default tab action to proceed if the current focused element is from the last merch card * ran "npm run build" * Updated readme * fix vulnerability * Revert "fix vulnerability" This reverts commit e34d131. * allow tabbing across section for merch cards --------- Co-authored-by: Rohit Sahu <rosahu@adobe.com> [MWPW-145131] Send locale and language code to analytics (#2670) MWPW-147867 - [marquee] support RTL for loc - RePost (#2676) added `support-rtl` selectors MWPW-155691 [MILO][MEP] Also use region in placeholders decision (#2680) * use region for placeholders * move region to it's own line * move value to last and add other MWPW-154901 Set debug=true on categories container (#2624) * MWPW-154901: enables debug=true based on container type * Update libs/blocks/caas/utils.js Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: milo-pr-merge[bot] <169241390+milo-pr-merge[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> [MWPW-136406] Tabs block enhancement: deep linking (#2652) * query param for focused tab * addressed feedback add lockup support lockup improvements updating button defaults fix button size logic update default btn size for banners MWPW-154981: adds a new Created Date option to details text (#2685) Co-authored-by: milo-pr-merge[bot] <169241390+milo-pr-merge[bot]@users.noreply.github.com> MWPW-155781 [MILO] Geo Modal Tracking on BACOM - Missing custom link (#2694) add analytic MWPW-154898 No wait for modal fragment (#2607) No wait for modal fragment MWPW-154191: Ability to have green promo text on merch-card to bottom of the card (under description) (#2663) added promo-text slot to all merch cards MWPW-155654 Open TWP modal with preselected tab (#2691) * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab * Trigger Build * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab * MWPW-155654 Open TWP modal with preselected tab --------- Co-authored-by: Bozo Jovicic <bozo@hitthecode.com> MWPW-154893 - [editorial-card] bugs (#2656) * added .support-rtl variant for easier rtl loc support * moved support-rtl to tablet up selector * remove right * removed margin-top bottom tablet styles * added empty class and updated has-footer to equal-height to expose that as a variant * s spacing gap default * action column-gap * no footer test coverage * PR feedback * revert marquee changes * updated .footer class to .card-footer to prevent naming colision * updated test ref * linting whitespace, test label clarity * revert icon block changes derp ENB-6995 Query Params update & sendTargetResponse function update Resubmit for #2664 (#2682) * Query Parms update & sendTargetResponse function update (#2664) * Query Parms update & sendTargetResponse function update - sendTargetResponse: Added Check for window._satellite and changed direct alloy call to _satellite call - Added additional parameter as marketingtech to disable analytics calls * Query Parms update & sendTargetResponse function update - Updated conditional chaining --------- Co-authored-by: milo-pr-merge[bot] <169241390+milo-pr-merge[bot]@users.noreply.github.com> * Update martech.js * not caching values --------- Co-authored-by: theankit-sinha <ankitsinha@adobe.com> Co-authored-by: milo-pr-merge[bot] <169241390+milo-pr-merge[bot]@users.noreply.github.com> MWPW-153810 media image is seen loaded twice in product page urls in desktop (#2647) * placeholderChanges * placeholderChanges * Update utils.js * Update utils.js * Update utils.js * lint errors * Update utils.js * Update utils.js * Adding promise.all * Update utils.js * Update utils.js --------- Co-authored-by: Suhani <suhjain@suhanis-mbp.corp.adobe.com> [MWPW-155627] Merch Callout feature: Missing font cascade (#2679) add fallback to "Adobe Clean" font for callout text Co-authored-by: Rohit Sahu <rosahu@adobe.com> MWPW-153955 [PEP ] dismiss tool tip text is seen chopped in RTL locale in ipad and iphone in landscape mode (#2687) * Fixed pep dismissal tooltip in rtl locales * Update libs/features/webapp-prompt/webapp-prompt.css Co-authored-by: Rares Munteanu <overmyheadandbody@gmail.com> --------- Co-authored-by: Rares Munteanu <overmyheadandbody@gmail.com> MWPW-154969 Log LCP and key user attributes (#2686) * MWPW-154969 Log LCP and key user attributes This adds the ability to log performance data back to Lana. To enable the feature, metadata `pageperf = ‘on’ ` must be set for the page. This feature only works in Chrome browsers. Additionally `pageperf-rate` can be set to determine what percentage of pages will send data. E.g `pageperf-rate=15` would have 15% of the pages send perf data. The default rate is `50`%. The sending of the data to Lana is delayed so as to not affect any parts of the page load. Data sent: * Chrome Version * CLS Score * Country (only if georouting is enabled via geo2) * Downlink: Mbps - Chrome caps value at `10` * LCP Score * LCP Element Type * LCP URL * If there is no identifying url, the element html will be used. * Adobe IMS Logged In Status * OS * URL of page * Window Width & Height * MEP Manifest Data * Manifest(s) Used (only the ones that have been applied to the page) * Selected Target in the manifest * Update logWebVitalsUtils.test.js * Address PR feedback --------- Co-authored-by: Okan Sahin <osahin@adobe.com> [MWPW-150579] Update supported browser list (#2696) MWPW-152952 Allow message for Marketo form success (#2545) MWPW-146237: Repurpose seotech-structured-data feature for arbitrary JSON-LD (#2578) * Add necessary helper functions * Fix two checks * Replace getStructuredData * Move things around * Fix regex? * Add env * Support localhost * Update paths * Fix test * Use seotech api instead * Update env/subdomain * Fix test properly * Update endoint * Add homepage * Update README * Rework endpoint handling * Add class to script tags * More doc updates revert PR of placeholder function as placeholder value is seen displayed with additional nbsp text in locale product pages in stage (#2709) Update utils.js Standalone GNav for Non-Milo Consumers (#2669) * Adding configuration for header component * Adding test cases * Adding css changes * Updated for css * Setting the origin to federal * Removing promise array * Adding redirect uri in meta * Updating meta insert function * Lint fix * Making error message descriptive --------- Co-authored-by: Snehal Sonawane <sonawane@Snehals-MacBook-Pro.local> Making new GNAV experience default (#2689) Fix: Load gnav search files only if it is authored (#2700) [MWPW-154102] Accordion RTL alignment (#2704) [MWPW-156163] Send additional Slack notifications for high impact PRs (#2713) MWPW-156388 [MILO][MEP] fix for martech=off when page has manifest with enablements (#2720) * initial fix * Update libs/features/personalization/personalization.js Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * move where martech=off is used * move logic to handleEntitlements function --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> MWPW-156220: Support pa code and product code for (#2712) * MWPW-156220: Support pa code and product code for checkout link configuration in addition to product family. * optimize perf * PR feedback * PR feedback Added download and open-in spectrum icons (#2595) adde download and open-in spectrum icons Co-authored-by: Dragana Trajkovic <dragana.trajkovic@lilly021.com> MWPW-142166 One Page Gated (#2673) * MWPW-142166 One Page Gated * PR Changes MWPW-153987 [MILO][MEP] looks in wrong location for MEP test block code on stage (#2693) * calculate even on stage, find miloLibs and origin outside of loop * MWPW-155314 [MEP] Enable Entitlements + Operator (#2638) port over fixes --------- Co-authored-by: Jingle Huang <32369333+JingleH@users.noreply.github.com> [MWPW-154969] Performance consent (#2714) * Require consent * Improve the check * Apply suggestions from code review Co-authored-by: Narcis Radu <github@narcisradu.ro> * Fix linting issues * Fix linting and unit tests * Return faster * Track once consent is given * Fix unit tests * Remove defaults * Only listen to privacy once. --------- Co-authored-by: Narcis Radu <github@narcisradu.ro>
Require performance consent before tracking performance related data.
Resolves: MWPW-154969
Test URLs: