feat: History log in content library components and containers [FC-0123]#2948
feat: History log in content library components and containers [FC-0123]#2948ChrisChV merged 13 commits intoopenedx:masterfrom
Conversation
|
Thanks for the pull request, @ChrisChV! This repository is currently maintained by Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
🔘 Provide contextTo help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
🔘 Get a green buildIf one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. DetailsWhere can I find more information?If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources: When can I expect my changes to be merged?Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #2948 +/- ##
==========================================
+ Coverage 95.47% 95.48% +0.01%
==========================================
Files 1383 1392 +9
Lines 32642 32899 +257
Branches 7498 7585 +87
==========================================
+ Hits 31165 31415 +250
- Misses 1408 1415 +7
Partials 69 69 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
625d241 to
0ad4c1a
Compare
|
Hi @ChrisChV! I had a component from the last test. Then I created a Unit, added the component to the unit and published it. It makes sense to show the unit creation first, but the timeline is not in order. Not sure if this is expected. |
|
Hi @ChrisChV! Everything worked as expected! Good work here! Note: I had to make a small change to fix |
|
Hi @bradenmacdonald, it's ready for your review |
@rpenido @bradenmacdonald fixed in b80e89f |
|
LGTM 👍
|
bradenmacdonald
left a comment
There was a problem hiding this comment.
Oooh this is awesome!
I have a lot of minor suggestions, but nothing that's blocking. Feel free to incorporate any of them now or later or never.
| return !Array.from(el.children).some( | ||
| (child) => pattern.test(((child as Element).textContent ?? '').replace(/\s+/g, ' ').trim()), | ||
| ); | ||
| }); |
There was a problem hiding this comment.
This findByDeepTextContent helper looks nice! 😎
| size={size} | ||
| src={imgError ? undefined : src} | ||
| alt={username || intl.formatMessage(messages.historyEntryDefaultUser)} | ||
| onError={() => setImgError(true)} |
There was a problem hiding this comment.
For a future follow-up: This imgError handling seems like it should be contained within the <Avatar component already, and you shouldn't have to wrap it in ContributorAvatar just to get proper error handling and default values.
…atars.tsx and HistoryLogGroupEntries.tsx
|
Thanks for those changes based on my feedback! Ready to merge anytime 🚀 |
|
@ChrisChV: Congrats on getting this in! |

Description
See openedx/openedx-platform#38178 to understand the Pre-Verawood and Post-Verawood logic.
HistoryCreatedLogGroup: Group for the create event.HistoryDraftLogGroup: Group and entries for draft changes (collapsible).HistoryPublishLogGroup: Group and entries for published changes (lazy-loaded on expand).HistoryComponentLog: Renders the full history for a library component.HistoryContainerLog: Renders the full history for a library container (unit/section/subsection).ContainerDetails: New "Details" tab in the container sidebar that shows the container history log.Supporting information
history logapi functions [FC-0123] openedx-core#501Testing instructions
Follow the instructions in order:
Pre-Verawood setup
mainbranch.Test Components: Pre-Verawood
history logapi functions [FC-0123] openedx-core#501Detailstab of the sidebar.** Test Containers: Pre-Verawood**
Detailstab of the sidebar.Post-Verawood setup
Test Components: Post-Verawood
Detailstab of the sidebar.Test Containers: Post-Verawood
Detailstab of the sidebar.To test with more contributors
Other information
Missing features
Note: The basics have been implemented to meet the Verawood cut on time.
Best Practices Checklist
We're trying to move away from some deprecated patterns in this codebase. Please
check if your PR meets these recommendations before asking for a review:
.ts,.tsx).propTypesanddefaultPropsin any new or modified code.src/testUtils.tsx(specificallyinitializeMocks)apiHooks.tsin this repo for examples.messages.tsfiles have adescriptionfor translators to use.../in import paths. To import from parent folders, use@src, e.g.import { initializeMocks } from '@src/testUtils';instead offrom '../../../../testUtils'