-
Notifications
You must be signed in to change notification settings - Fork 881
Activity Log: Port AL into wp-admin as a native page #48244
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
Merged
Merged
Changes from all commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
e00e00e
Activity Log: Phase 0 package scaffold
keoshi 9ec5f21
Activity Log: Phase 1 menu swap
keoshi a543e4f
Activity Log: Phase 2 REST surface
keoshi 8dcfc8f
Activity Log: Sign REST proxies as the user, not the blog
keoshi a54e051
Activity Log: Phase 3 — port the DataViews UI
keoshi a68aa38
Activity Log: Polish — AdminPage header, full-bleed table, 32px icons
keoshi 4c79bad
Activity Log: Tweak event-icon fill, hide footer, tighten columns
keoshi 93bc44a
Activity Log: Widen date and event minimum column widths
keoshi fc8fd5d
Activity Log: Let the Event column absorb remaining width
keoshi 4e26ae3
Activity Log: Use the real Jetpack logo for the "Jetpack" actor
keoshi d12f570
Activity Log: wire Reset view + persist view options
keoshi 4a88512
Activity Log: document the UI primitives preference order
keoshi 6ac9c44
Activity Log: adopt --wpds-* design tokens in SCSS
keoshi 778d4c5
Activity Log: link event-description entities to wp-admin screens
keoshi ff954f1
Activity Log: route entity tokens to wp-admin, not wordpress.com
keoshi 0ca1cd4
Activity Log: link entities that don't surface as typed ranges
keoshi a60f995
Activity Log: Phase 4 — tier gating and upsell
keoshi 50d0a9f
Activity Log: retarget upsell callout copy at the wp-admin context
keoshi bb63561
Activity Log: drop the access cache on return from checkout
keoshi f5d5036
Activity Log: stop pre-marking the view as modified on load
keoshi 11938cd
Activity Log: add a date-range picker above the table
keoshi 6b220bf
Activity Log: move date-range picker into the AdminPage header
keoshi d8c3779
Activity Log: add tracks events for user interactions
keoshi 1479735
Activity Log: fix CI — stub CHANGELOG.md, changelog/.gitkeep, TS error
keoshi 134e462
Activity Log: stop the prod i18n check flagging @automattic/ui strings
keoshi 2f93827
Activity Log: address engineering-review findings from #48244
keoshi 289119e
Activity Log: offer DataViews' Activity layout alongside Table
keoshi 561fac6
Activity Log: wire the Activity layout's media/title/description slots
keoshi 210f360
Activity Log: address layout-review feedback from #48244
keoshi 412f9ca
Activity Log: center the Activity-layout meta row and anchor the acto…
keoshi 5f1c9da
Activity Log: track layout toggles between Table and Activity
keoshi 902cea1
Activity Log: address package-structure review feedback from #48244
ilonagl 423a2af
Activity Log: default to the Activity timeline layout
ilonagl cad524f
Activity Log: hide the cog's "modified" indicator dot
ilonagl 7fd7db1
Activity Log: tooltip the disabled "Manage backup" action
ilonagl 1c7131f
Activity Log: collapse empty description rows
ilonagl 34fe8e3
Merge remote-tracking branch 'origin/trunk' into try-jetpack-activity…
CGastrell b0f7824
Activity Log: collapse changelog entries to single end-user-facing notes
CGastrell db5c2ce
admin-page-layout mixin: extend flex chain into AdminPage's Container…
CGastrell d1ed8f0
Activity Log: harden the free-tier server-side gate
dhasilva f646f6e
Activity Log: use esc_url_raw for the JSON-bound adminUrl
dhasilva b8ff7e0
Activity Log: tidy two React hook side-effects
dhasilva 6613a01
Activity Log: mark the Manage-backup tooltip hack as #48236 follow-up
dhasilva 16d2066
Activity Log: align tanstack range; bump my-jetpack changelog
dhasilva e5320ad
AdminPage: add `unwrapped` prop for full-bleed pages
CGastrell File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 4 additions & 0 deletions
4
projects/js-packages/base-styles/changelog/admin-page-layout-flex-children
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| Significance: patch | ||
| Type: changed | ||
|
|
||
| admin-page-layout mixin: extend the flex chain into AdminPage's outer Container/Col so DataViews-style consumers can fill their bounded slot and let their own internal scroll handle the table body. |
4 changes: 4 additions & 0 deletions
4
projects/js-packages/components/changelog/admin-page-add-unwrapped-prop
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| Significance: minor | ||
| Type: added | ||
|
|
||
| AdminPage: add `unwrapped` prop to render children directly inside the admin-ui Page, skipping the default Container/Col grid wrap. Use for full-bleed pages (DataViews-based admin surfaces) that own their own scroll/layout model. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| # Files not needed to be distributed. | ||
| .babelrc export-ignore | ||
| .gitattributes export-ignore | ||
| .github/ export-ignore | ||
| .gitignore export-ignore | ||
|
|
||
| # Files not needed in the production build. | ||
| .phpcs.dir.xml production-exclude | ||
| /changelog/** production-exclude | ||
| /tests/** production-exclude | ||
| types.d.ts production-exclude | ||
| /src/js/** production-exclude | ||
|
|
||
| # Files needed in the production build. | ||
| build/** production-include |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| wordpress | ||
| node_modules | ||
| vendor | ||
| jetpack_vendor | ||
| .cache | ||
| build |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| <?php | ||
| /** | ||
| * This configuration will be read and overlaid on top of the | ||
| * default configuration. Command-line arguments will be applied | ||
| * after this file is read. | ||
| * | ||
| * @package automattic/jetpack-activity-log | ||
| */ | ||
|
|
||
| // Require base config. | ||
| require __DIR__ . '/../../../../.phan/config.base.php'; | ||
|
|
||
| return make_phan_config( dirname( __DIR__ ) ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| <?xml version="1.0"?> | ||
| <ruleset> | ||
|
|
||
| <rule ref="WordPress.WP.I18n"> | ||
| <properties> | ||
| <property name="text_domain" type="array"> | ||
| <element value="jetpack-activity-log" /> | ||
| </property> | ||
| </properties> | ||
| </rule> | ||
| <rule ref="Jetpack.Functions.I18n"> | ||
| <properties> | ||
| <property name="text_domain" value="jetpack-activity-log" /> | ||
| </properties> | ||
| </rule> | ||
|
|
||
| <rule ref="WordPress.Utils.I18nTextDomainFixer"> | ||
| <properties> | ||
| <property name="old_text_domain" type="array" /> | ||
| <property name="new_text_domain" value="jetpack-activity-log" /> | ||
| </properties> | ||
| </rule> | ||
|
|
||
| </ruleset> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| # Activity Log | ||
|
|
||
| ## UI primitives | ||
|
|
||
| When adding React UI in this package, prefer the WordPress Design System | ||
| packages in this order: | ||
|
|
||
| 1. **`@wordpress/ui`** — foundational primitives. Check each component's | ||
| Storybook "Status" badge (anything other than "stable" is still in | ||
| flux); avoid experimental APIs here. | ||
| 2. **`@wordpress/components`** — general-purpose legacy library. | ||
| Predates the design system. Use only when `@wordpress/ui` doesn't | ||
| have a stable equivalent, and still check Status in Storybook. | ||
| 3. **`@wordpress/dataviews`** — higher-level data presentation (tables, | ||
| lists, grids). Already the backbone here. Extend via its | ||
| sub-components (`DataViews.Search`, `DataViews.FiltersToggle`, | ||
| `DataViews.Layout`, `DataViews.Footer`) before reaching for lower- | ||
| level primitives. | ||
| 4. **`@wordpress/admin-ui`** — page layout primitives, accessed via | ||
| `AdminPage` from `@automattic/jetpack-components` (which wraps | ||
| admin-ui's `Page`). | ||
|
|
||
| Rationale: WordPress is moving new work to `@wordpress/ui`; | ||
| `@wordpress/components` is being kept as a legacy fallback. Guidance | ||
| from the WordPress Design System P2 (April 2026). | ||
|
|
||
| ## Design-system lookup | ||
|
|
||
| A dedicated MCP server is wired into this project's local Claude Code | ||
| config: `@wordpress/design-system-mcp`. It exposes the authoritative | ||
| list of stable `@wordpress/ui` + `@wordpress/components` components and | ||
| `--wpds-*` design tokens. Prefer querying it over spelunking through | ||
| `node_modules/@wordpress/components/src/**` for component metadata. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| # Changelog | ||
|
|
||
| All notable changes to this project will be documented in this file. | ||
|
|
||
| The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) | ||
| and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
|
||
| ## 0.1.0-alpha - unreleased | ||
|
|
||
| Initial release. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| # Activity Log | ||
|
|
||
| Activity Log UI for the Jetpack plugin in wp-admin. | ||
|
|
||
| ## Using this package in your WordPress plugin | ||
|
|
||
| If you plan on using this package in your WordPress plugin, we would recommend that you use [Jetpack Autoloader](https://packagist.org/packages/automattic/jetpack-autoloader) as your autoloader. This will allow for maximum interoperability with other plugins that use this package as well. | ||
|
|
||
| ## Security | ||
|
|
||
| Need to report a security vulnerability? Go to [https://automattic.com/security/](https://automattic.com/security/) or directly to our security bug bounty site [https://hackerone.com/automattic](https://hackerone.com/automattic). | ||
|
|
||
| ## License | ||
|
|
||
| jetpack-activity-log is licensed under [GNU General Public License v2 (or later)](./LICENSE.txt) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| const config = { | ||
| presets: [ | ||
| [ | ||
| '@automattic/jetpack-webpack-config/babel/preset', | ||
| { pluginReplaceTextdomain: { textdomain: 'jetpack-activity-log' } }, | ||
| ], | ||
| ], | ||
| }; | ||
|
|
||
| module.exports = config; |
Empty file.
4 changes: 4 additions & 0 deletions
4
projects/packages/activity-log/changelog/add-package-scaffold
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| Significance: minor | ||
| Type: added | ||
|
|
||
| Initial release of the Activity Log package: hosts the in-wp-admin Activity Log UI and its REST endpoints. |
4 changes: 4 additions & 0 deletions
4
projects/packages/activity-log/changelog/use-adminpage-unwrapped
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| Significance: patch | ||
| Type: changed | ||
|
|
||
| Activity Log: opt into `<AdminPage unwrapped>` so DataViews can fill the bounded content slot and scroll its table body internally. Header, date picker, and DataViews toolbar stay pinned on short viewports. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
BTW this will all break with next admin-ui update: we can't rely on the core admin-ui-page CSS selectors as a stable API, and indeed they'll be gone in the next update which moves Page component to use CSS modules instead of CSS selectors:
visualprop for Jetpack logo #48410There 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.
What's the recommended approach here, @simison ?
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.
@CGastrell I think is on it