Conversation
Right-align all toolbar actions and update controls to the S2 design: - Replace the All/My tab toggle with a view dropdown - Add a My Sessions bulk schedule download button (multi-event .ics) - Restyle the Filter button to an outline pill with an active state - Make search collapsible (icon button expands to a pill field with clear) - Map new toolbar colours to --color-* tokens with Figma hex fallbacks Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Heading "You are registered for a session at this time" + new subheading - Pre-select the already-registered session with a blue "Registered" badge; the new session is the unselected radio option above it - Add a Cancel button alongside the "Confirm session" CTA - Badge uses a block-scoped --sh-badge-info token (Spectrum 2 informative blue) since no Milo page token exists; focus ring uses --color-accent Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Two-column filter overlay: category nav (Session type/Audience/Product) on the left, option-pill grid on the right, with Apply + Reset all - Filtering is deferred — selections stage in the panel and commit on Apply (Reset all clears); reopening re-syncs checkboxes to applied filters - Active filter tags render inline below the toolbar; each ✕ removes a single filter, with a Clear all action; row hides when empty - Colours use --color-* tokens with Figma hex fallbacks; desktop/tablet two-column with a small-screen stack (mobile drill-in not implemented) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
avoidStreamEndFlag was reusing stream-ended early-advance paths, causing the schedule to skip to the last timed fragment. Only disable MR blocking; natural underrun and liveStreamEnd still apply when streams actually end. Co-authored-by: Cursor <cursoragent@cursor.com>
Port fast schedule init, validateSchedulePosition, monotonic Akamai time cache with drift detection, and MR underrun toggleTime guard so chrono-box (production path) matches worker.js behavior without blocking on API at init. Co-authored-by: Cursor <cursoragent@cursor.com>
On <=600px the filter panel becomes a drill-in: the category list shows full-width rows with chevrons; tapping a category opens a detail screen (back arrow + title + full-width option pills). Back returns to the list; Apply/Reset all stay in the list footer. Desktop/tablet two-column layout is unchanged (drill-in CSS is scoped under the mobile media query). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… set When avoidStreamEndFlag=true the timing framework already bypasses MR session checks. This change makes the mobile-rider block consistent: the streamend listener that disposes the player is not attached, so the player stays visible for testing even when the session is inactive. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace "Clear all" with a count indicator + See all/See less, matching the Figma Tag group layout: count label row above the chips, See all chip at the end of the tag row. Count + See all appear only once the active filter count exceeds the collapsed threshold (3); at or below it, just the removable chips show. Tighter positioning (8px 32px 0) and S2 chip styling via tokens. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
.sh-tab-toggle was replaced with .sh-view-dropdown in the toolbar redesign; update the two tests that checked hidden/visible state. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Cover the new sessions-hub features introduced in this PR: - View dropdown: hidden for unregistered, visible for registered, contains All/My options, toggle opens/closes the menu - Download button: hidden by default, appears on My sessions, hides on All - Collapsible search: expanded class toggled by search toggle click, clear collapses it - Filter panel: two-column structure rendered, Apply/Reset buttons present, hidden on init and shown on filter button click, category nav switches the active option grid - Staged filtering: checkbox does not filter until Apply; Apply commits and closes panel; Reset all restores all cards; reopen syncs checkboxes to applied state - Active filter tags: row hidden when empty, chips appear after Apply, ✕ removes a chip and re-filters, count + See all gated on threshold, See all expands and See less collapses - Conflict modal: heading, subtitle, pre-selected registered session, Registered badge, unselected new session, Cancel + Confirm session footer, radio selection switching - filterSessions: My sessions tab filters to registered IDs; All shows all Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove the Jira ticket reference from the describe block name; use a plain functional label instead. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…haviour only Replace CSS-class and DOM-existence checks with assertions on observable outcomes: visible card counts, hidden state of the filter row, chip counts, See all/See less text, search filtering sessions by title. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
LintError fix.
Add padding-inline-end to collapsible agenda-title-detail-container so text doesn't run under the absolutely-positioned agenda-toggle. A combined .collapsible.background selector is needed because the background variant's shorthand padding overrides the collapsible rule. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The 'all' keyword is removed — an empty type cell is the correct way to show all speakers, matching standard UX filtering behaviour where no filter selected means no restriction. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When sessionTimes[0].isFull is true and the user is not already registered or waitlisted for that session, the Register button is rendered disabled so users cannot attempt registration that would fail silently. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-196040] : [Speaker hub] Support all speakers in profile cards
[MWPW-197632 ] fix(event-agenda): prevent title text overlapping toggle button
…timed schedule position A null-toggleTime item appearing between two timed entries (e.g. a transition slot interleaved mid-schedule) unconditionally overwrote the `start` pointer in getStartScheduleItemByToggleTime. With serverTime inside the first XF's period, the function returned the transition item instead of the first timed XF, causing the wrong fragment to load immediately. Track lastTimedStart separately and return it (over any trailing null item) when a future-timed entry stops traversal. When the list ends naturally the final item — timed or null (post-event) — is still returned correctly. Also fix validateSchedulePosition to compare by pathToFragment instead of object reference; currentScheduleItem is always a spread copy so the reference check was always true, causing a needless nextScheduleItem reset on every validation cycle. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ig row Add asc/desc class-driven sorting by any speaker field. Config rows are now parsed as a position-independent key/value map so type and order rows can appear in any order. Falls back to ordinal sort when no order row is present. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
fix(timing-framework): avoidStreamEndFlag and traditional worker alignment
Pass explicit sensitivity option to localeCompare so sort order is consistent across runtime locales. Add tests for unknown order field and type filter matching zero speakers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…n tablet/mobile viewports - Anchor filter panel to sh-toolbar-inner (position: relative) instead of sh-filter-wrap, so panel width is bounded by the toolbar container at all viewports without a custom breakpoint - Change panel width from calc(100vw - 48px) to min(1133px, 100%) to respect toolbar-inner bounds - Fix mobile bottom-sheet: add z-index: 1 to sh-filter-sidebar and sh-filter-options so they sit above the absolute-positioned backdrop, fixing unclickable rows and options incorrectly closing the modal - Remove 1180px custom breakpoint Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-196656] fix(sessions-hub): disable Register button when session time is full
Adds a sticky Save button at the bottom of the mobile drill-in options view that applies filters and closes the panel, matching the Figma spec and mirroring the behaviour of the desktop Apply button. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…r drill-in Add missing display:block override so the Save footer renders at ≤600px, and use margin-top:auto so it sticks to the bottom of the flex column regardless of content height. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-195684] : Session Catalog Enhancements - Filter Panel, Bulk Schedule Download & Conflict Modal
[MWPW-196040] feat(profile-cards): support explicit field-based sort
T3-26.25 Stage Release
… Figma spec - Search input moved to sh-search-row (sibling of sh-search-wrap) so the toggle stays visible in the top row while the pill expands onto a new row on mobile - Desktop: pill appears inline in the actions row; toggle hides when expanded - Mobile: actions row stretches full width; dropdown grows to fill space; search row wraps to a full-width row below on expand - Unregistered mobile: filter button grows to fill remaining space and shows Filter label; search toggle stays at right - Removed grey border from search toggle (not in Figma spec) - Fixed blue focus ring on filter items: :focus-within → :has(input:focus-visible) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…nment - Stretch sh-view-toggle to fill the growing dropdown container on mobile - Add justify-content: space-between so the chevron sits at the trailing edge Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ter panel - Add Enter/Space key handling to drill into filter categories, with focus moved to the first checkbox on keyboard activation - Expand keydown handler to handle both Escape (close panel, return focus to filter button) and Enter/Space (drill-in) - Fix aria-hidden: remove attribute entirely when panel is shown (aria-hidden="false" is invalid; absent is correct) - Refactor category click into activateCategoryDrillIn() shared by click and keyboard handlers - Simplify updateActiveFilters() — remove unused listEl/state params - Move sidebar actions append after optionsWrap build to fix DOM ordering for Save button visibility - Fix drawer.css: remove -webkit- prefix from display:box (non-standard prefixed form was a no-op) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Reverts an unintended change from the previous commit that removed the -webkit- prefix from display:box, which broke line-clamp in WebKit browsers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-195684] fix(sessions-hub): fix mobile toolbar layout and search
T3-26.25 - Stage Release - Cut 2
|
Hello, I'm the AEM Code Sync Bot and I will run some actions to deploy your branch and validate page speed.
Commits
|
qiyundai
approved these changes
Jun 18, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
This release includes enhancements and bug fixes across several blocks and utilities:
Sessions Hub
Profile Cards
typefilter; empty type shows allorderconfig rowlocaleComparesort with edge-case test coverageSpeaker Hub
Sessions Catalogue
Timing Framework
toggleTimewhenavoidStreamEndFlagis settoggleTimeitems from overriding timed schedule positiontoggleTimeitemsEvent Agenda
Mobile Rider
streamendlistener whenavoidStreamEndFlagis setRepo / Lint
Test plan
orderrowavoidStreamEndFlagandtoggleTimeedge casesnpm test— all unit tests passnpm run lint— no lint errors🤖 Generated with Claude Code