Skip to content

feat: [COSMO2-821] Add plugin slot for access expiration top banner#46

Merged
santhosh-apphelix-2u merged 1 commit into
release-teakfrom
feature/COSMO2-821-courseware-top-banner-slot
Mar 18, 2026
Merged

feat: [COSMO2-821] Add plugin slot for access expiration top banner#46
santhosh-apphelix-2u merged 1 commit into
release-teakfrom
feature/COSMO2-821-courseware-top-banner-slot

Conversation

@santhosh-apphelix-2u
Copy link
Copy Markdown

Summary

Adds a new PluginSlot in the Learning MFE for the learner-facing "Audit Access Expires" top banner.

What changed

  • Added a new top banner PluginSlot wrapper
  • Mounted the slot in the Learning MFE page shell where the banner should appear
  • Updated plugin slot documentation

Why

The existing AccessExpirationAlert component is present in the MFE but is not wired into the UI.
This change introduces a dedicated PluginSlot so the banner can be rendered through the plugin architecture.

Notes

  • This PR does not render the banner by itself
  • Actual banner UI is provided by the ads plugin
  • Host config wiring is handled separately in edx-internal

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new plugin slot to the courseware page shell so plugin authors can render a banner in the Learning MFE chrome above the sequence content.

Changes:

  • Introduces CoursewareTopBannerSlot (org.openedx.frontend.learning.courseware_top_banner.v1) with a documented alias and expected plugin props.
  • Renders the new slot in src/courseware/course/Course.jsx just above sequence alerts/content.
  • Updates the plugin-slots index README to include the new slot.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/plugin-slots/README.md Adds the new slot to the centralized plugin slot list for discoverability.
src/plugin-slots/CoursewareTopBannerSlot/README.md Documents slot id, alias, props, and intended placement/use case.
src/plugin-slots/CoursewareTopBannerSlot/index.tsx Implements the new PluginSlot wrapper component and exports it.
src/courseware/course/Course.jsx Integrates the slot into the courseware page shell render tree.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@santhosh-apphelix-2u santhosh-apphelix-2u merged commit 974b29d into release-teak Mar 18, 2026
8 checks passed
@santhosh-apphelix-2u santhosh-apphelix-2u deleted the feature/COSMO2-821-courseware-top-banner-slot branch March 18, 2026 07:56
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.

3 participants