Skip to content
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

Add GA event tracking for the "Top content" metric area of an Audience Tile #9542

Open
wants to merge 13 commits into
base: develop
Choose a base branch
from

Conversation

techanvil
Copy link
Collaborator

@techanvil techanvil commented Oct 21, 2024

Summary

Addresses issue:

Relevant technical choices

I didn't include tests for the auth_error, insufficient_permissions_error and setup_error GA events, due to difficulties getting the Dialog component's onOpen callback to run, it's wrapped in requestAnimationFrame(), and even when mocking requestAnimationFrame() to invoke its callback, I ran into problems with FocusTrap. It didn't seem worth pushing the issue over the estimate in order to pursue the coverage for these events.

For reference see:

PR Author Checklist

  • My code is tested and passes existing unit tests.
  • My code has an appropriate set of unit tests which all pass.
  • My code is backward-compatible with WordPress 5.2 and PHP 7.4.
  • My code follows the WordPress coding standards.
  • My code has proper inline documentation.
  • I have added a QA Brief on the issue linked above.
  • I have signed the Contributor License Agreement (see https://cla.developers.google.com/).

Do not alter or remove anything below. The following sections will be managed by moderators only.

Code Reviewer Checklist

  • Run the code.
  • Ensure the acceptance criteria are satisfied.
  • Reassess the implementation with the IB.
  • Ensure no unrelated changes are included.
  • Ensure CI checks pass.
  • Check Storybook where applicable.
  • Ensure there is a QA Brief.
  • Ensure there are no unexpected significant changes to file sizes.

Merge Reviewer Checklist

  • Ensure the PR has the correct target branch.
  • Double-check that the PR is okay to be merged.
  • Ensure the corresponding issue has a ZenHub release assigned.
  • Add a changelog message to the issue.

Copy link

github-actions bot commented Oct 21, 2024

Build files for 78747fb are ready:

Copy link

github-actions bot commented Oct 21, 2024

Size Change: +3.38 kB (+0.18%)

Total Size: 1.83 MB

Filename Size Change
./dist/assets/js/googlesitekit-activation-********************.js 24 kB +35 B (+0.15%)
./dist/assets/js/googlesitekit-ad-blocking-recovery-********************.js 54.8 kB +28 B (+0.05%)
./dist/assets/js/googlesitekit-adminbar-********************.js 34.5 kB +56 B (+0.16%)
./dist/assets/js/googlesitekit-api-********************.js 10.1 kB -2 B (-0.02%)
./dist/assets/js/googlesitekit-components-gm2-********************.js 6.04 kB +1 B (+0.02%)
./dist/assets/js/googlesitekit-components-gm3-********************.js 10.1 kB -1 B (-0.01%)
./dist/assets/js/googlesitekit-data-********************.js 2.37 kB +2 B (+0.08%)
./dist/assets/js/googlesitekit-datastore-forms-********************.js 8.94 kB +1 B (+0.01%)
./dist/assets/js/googlesitekit-datastore-location-********************.js 2.08 kB -1 B (-0.05%)
./dist/assets/js/googlesitekit-datastore-site-********************.js 20.5 kB +4 B (+0.02%)
./dist/assets/js/googlesitekit-datastore-user-********************.js 26.8 kB +11 B (+0.04%)
./dist/assets/js/googlesitekit-entity-dashboard-********************.js 81.3 kB +47 B (+0.06%)
./dist/assets/js/googlesitekit-main-dashboard-********************.js 157 kB +858 B (+0.55%)
./dist/assets/js/googlesitekit-modules-********************.js 22.3 kB -5 B (-0.02%)
./dist/assets/js/googlesitekit-modules-ads-********************.js 33.4 kB +5 B (+0.01%)
./dist/assets/js/googlesitekit-modules-adsense-********************.js 111 kB +50 B (+0.04%)
./dist/assets/js/googlesitekit-modules-analytics-4-********************.js 178 kB +558 B (+0.31%)
./dist/assets/js/googlesitekit-modules-pagespeed-insights-********************.js 22.6 kB -153 B (-0.67%)
./dist/assets/js/googlesitekit-modules-reader-revenue-manager-********************.js 40.7 kB +21 B (+0.05%)
./dist/assets/js/googlesitekit-modules-search-console-********************.js 59.6 kB +38 B (+0.06%)
./dist/assets/js/googlesitekit-modules-sign-in-with-google-********************.js 16.3 kB -1 B (-0.01%)
./dist/assets/js/googlesitekit-modules-tagmanager-********************.js 32.1 kB -9 B (-0.03%)
./dist/assets/js/googlesitekit-notifications-********************.js 22.7 kB -5 B (-0.02%)
./dist/assets/js/googlesitekit-polyfills-********************.js 377 B -1 B (-0.26%)
./dist/assets/js/googlesitekit-settings-********************.js 119 kB +868 B (+0.74%)
./dist/assets/js/googlesitekit-splash-********************.js 68.9 kB +39 B (+0.06%)
./dist/assets/js/googlesitekit-user-input-********************.js 43.7 kB +50 B (+0.11%)
./dist/assets/js/googlesitekit-vendor-********************.js 321 kB +19 B (+0.01%)
./dist/assets/js/googlesitekit-widgets-********************.js 90.8 kB +826 B (+0.92%)
./dist/assets/js/googlesitekit-wp-dashboard-********************.js 62.5 kB +46 B (+0.07%)
./dist/assets/js/runtime-********************.js 1.4 kB -2 B (-0.14%)
ℹ️ View Unchanged
Filename Size
./dist/assets/css/googlesitekit-admin-css-********************.min.css 58.9 kB
./dist/assets/css/googlesitekit-adminbar-css-********************.min.css 11.8 kB
./dist/assets/css/googlesitekit-authorize-application-css-********************.min.css 846 B
./dist/assets/css/googlesitekit-wp-dashboard-css-********************.min.css 8.2 kB
./dist/assets/js/32-********************.js 2.76 kB
./dist/assets/js/33-********************.js 2.25 kB
./dist/assets/js/34-********************.js 3.64 kB
./dist/assets/js/35-********************.js 936 B
./dist/assets/js/36-********************.js 893 B
./dist/assets/js/37-********************.js 1.61 kB
./dist/assets/js/38-********************.js 1.57 kB
./dist/assets/js/39-********************.js 1.61 kB
./dist/assets/js/40-********************.js 1.59 kB
./dist/assets/js/41-********************.js 1.64 kB
./dist/assets/js/42-********************.js 3.11 kB
./dist/assets/js/analytics-advanced-tracking-********************.js 901 B
./dist/assets/js/googlesitekit-consent-mode-********************.js 25.6 kB
./dist/assets/js/googlesitekit-datastore-ui-********************.js 10 kB
./dist/assets/js/googlesitekit-events-provider-contact-form-7-********************.js 646 B
./dist/assets/js/googlesitekit-events-provider-easy-digital-downloads-********************.js 624 B
./dist/assets/js/googlesitekit-events-provider-mailchimp-********************.js 630 B
./dist/assets/js/googlesitekit-events-provider-ninja-forms-********************.js 712 B
./dist/assets/js/googlesitekit-events-provider-optin-monster-********************.js 675 B
./dist/assets/js/googlesitekit-events-provider-popup-maker-********************.js 634 B
./dist/assets/js/googlesitekit-events-provider-woocommerce-********************.js 657 B
./dist/assets/js/googlesitekit-events-provider-wpforms-********************.js 633 B
./dist/assets/js/googlesitekit-i18n-********************.js 3.93 kB

compressed-size-action

@@ -77,6 +83,7 @@ export default function AudienceTilePagesMetric( {

const redirectURL = addQueryArgs( global.location.href, {
notification: 'audience_segmentation',
widgetArea: AREA_MAIN_DASHBOARD_TRAFFIC_AUDIENCE_SEGMENTATION,
Copy link
Collaborator Author

@techanvil techanvil Oct 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This fixes a bug I noticed where the custom dimension creation wasn't auto-continued when returning to Site Kit from the OAuth flow if the Audiences Widget Area isn't currently in view. The fix is to scroll to the widget area upon returning to the dashboard, as we do for the error case (see errorRedirectURL below).

).toBeInTheDocument();
} );

it( 'should track an event when the Retry button is clicked', async () => {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't include tests for the auth_error, insufficient_permissions_error and setup_error events, see Relevant technical choices for the reason behind this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant