feat(activity-feed-v2): add resin fileid and task modal instrumentation#4687
feat(activity-feed-v2): add resin fileid and task modal instrumentation#4687jackiejou wants to merge 5 commits into
Conversation
Tag the feed wrapper with data-resin-fileid so descendant events carry the file id. Anchor the portaled task modal with its own feature and fileid attributes. Restore the task datepicker resin target from V1.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
WalkthroughActivity Feed v2 now exposes resin metadata for the current file, forwards its identifier to ChangesActivity Feed Resin Metadata
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Improves resin instrumentation for the V2 activity feed so click events can be attributed to the file and surface they occurred on.
ActivityFeedV2wrapper div now carriesdata-resin-fileidalongside the existingdata-resin-feature="activityfeedv2". Resin resolves events by walking DOM ancestors and collectingdata-resin-*attributes, so every event fired from inside the feed (comment post, reply, resolve, task actions, version/profile/mention links) now inherits the file id.document.body, severing it from the feed wrapper in the DOM.Modal.Contentnow carries its owndata-resin-feature="activityfeedv2"anddata-resin-fileid(threaded via a new optionalfileIdprop) so modal events (post, cancel, datepicker) are fully attributed.TaskFormV2DatePicker now carriesdata-resin-targetwith the sameactivityfeed-taskdatepickervalue its V1 counterpart used, restoring that signal. The blueprint DatePicker spreads unknown props onto its rendered root, so the attribute lands in the DOM without any blueprint change.Also adds
idto the localActivityFeedV2Filetype; the full file object is already passed fromActivitySidebar.Known limitation
Dropdown menus rendered by the feed's inner components portal outside this wrapper and carry only their own component/feature attributes; they do not inherit
fileidfrom this change. That will be addressed separately in the packages that own those portal roots.Tests
fileid, the modal content feature/fileid, thefileIdprop forwarding, and the datepicker targetyarn test --watchAll=false --testPathPattern="activity-feed-v2": 343 tests passingtscand ESLint cleanSummary by CodeRabbit