Skip to content

Conversation

@matthewhardern
Copy link
Contributor

@matthewhardern matthewhardern commented Jun 9, 2025

Describe your changes (can list changeset entries if preferable)

Implements the initial version of the pie-list and pie-list-item components with basic functionality:

pie-list component:

  • Added variant prop supporting 'default' and 'compact' layouts
  • Added dividers prop to show separators between list items
  • Implemented proper semantic HTML with <ul role="list">
  • Integrated with PIE design system using CSS custom properties

pie-list-item component:

  • Added primaryText prop for text content
  • Added selected and disabled state props
  • Implemented proper accessibility with ARIA attributes
  • Applied PIE typography using font helpers

Additional changes:

  • Created Storybook stories with 4 variants (Default, Compact, WithDividers, CompactWithDividers)
  • Added test helpers and page objects for component testing
  • Implemented RTL support via RtlMixin
  • Added proper data-test-id attributes for testing

Author Checklist (complete before requesting a review, do not delete any)

  • I have performed a self-review of my code.
  • I have added thorough tests where applicable (unit / component / visual).
  • I have reviewed the PIE Storybook/PIE Docs PR preview.
  • I have reviewed visual test updates properly before approving.
  • If changes will affect consumers of the package, I have created a changeset entry.
  • If a changeset file has been created, I have tested these changes in PIE Aperture using the /test-aperture command.
  • I have filled out the DS Review Tracker checklist (Moving PR to "Ready to Review")

Not-applicable Checklist items

  • Visual test updates (none in this PR)
Task Link
Aperture PR 🔗
NextJS 14 deployment 🔗
Nuxt 3 deployment 🔗
Vanilla deployment 🔗

Reviewer checklists (complete before approving)

Mark items as [-] N/A if not applicable.

Reviewer 1 - @jamieomaguire

  • I have reviewed the PIE Storybook/PIE Docs PR preview.
  • I have verified that all acceptance criteria for this ticket have been completed.
  • I have reviewed the Aperture changes (if added)
  • If there are visual test updates, I have reviewed them.

Reviewer 2 - @ashleynolan

  • I have reviewed the PIE Storybook/PIE Docs PR preview.
  • I have verified that all acceptance criteria for this ticket have been completed.
  • I have reviewed the Aperture changes (if added)
  • If there are visual test updates, I have reviewed them.

@changeset-bot
Copy link

changeset-bot bot commented Jun 9, 2025

🦋 Changeset detected

Latest commit: 77203c3

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 4 packages
Name Type
@justeattakeaway/pie-list Minor
@justeattakeaway/pie-storybook Patch
@justeattakeaway/pie-webc Patch
@justeattakeaway/pie-docs Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 9, 2025 09:01 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 9, 2025 09:02 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 9, 2025 12:44 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 9, 2025 12:44 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 9, 2025 13:51 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 9, 2025 13:52 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 10, 2025 08:00 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 10, 2025 08:01 Inactive
@matthewhardern matthewhardern marked this pull request as ready for review June 10, 2025 08:12
@matthewhardern matthewhardern requested review from a team as code owners June 10, 2025 08:12
@matthewhardern matthewhardern changed the title feat(pie-list): implement list + list item component and tests feat(pie-list): DS2960 implement list + list item component and tests Jun 10, 2025
@matthewhardern matthewhardern changed the title feat(pie-list): DS2960 implement list + list item component and tests feat(pie-list): DSW-2960 implement list + list item component and tests Jun 10, 2025
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 10, 2025 08:16 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 10, 2025 08:17 Inactive
@matthewhardern matthewhardern force-pushed the dsw-2960-basic-list branch 4 times, most recently from cea6f8e to a482147 Compare June 11, 2025 07:59
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 11, 2025 08:04 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 June 11, 2025 08:04 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 June 16, 2025 08:38 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 October 21, 2025 12:12 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 October 21, 2025 12:12 Inactive
ashleynolan
ashleynolan previously approved these changes Nov 5, 2025
jamieomaguire
jamieomaguire previously approved these changes Nov 5, 2025
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 November 5, 2025 11:16 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 November 5, 2025 11:16 Inactive
@github-actions github-actions bot temporarily deployed to storybook-testing-pr-2404 November 6, 2025 08:41 Inactive
@github-actions github-actions bot temporarily deployed to storybook-pr-2404 November 6, 2025 08:41 Inactive

@property({
type: Boolean,
attribute: 'has-dividers',
Copy link
Member

@raoufswe raoufswe Nov 7, 2025

Choose a reason for hiding this comment

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

i think we don't need this line anymore as we can use hasDividers as a css selector.

}

// Dividers between items
:host([has-dividers]) ::slotted(pie-list-item:not(:last-child)),
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
:host([has-dividers]) ::slotted(pie-list-item:not(:last-child)),
:host([hasDividers]) ::slotted(pie-list-item:not(:last-child)),

// Dividers between items
:host([has-dividers]) ::slotted(pie-list-item:not(:last-child)),
// Allow bespoke markup that renders native `<li>` elements.
:host([has-dividers]) ::slotted(li:not(:last-child)) {
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
:host([has-dividers]) ::slotted(li:not(:last-child)) {
:host([hasDividers]) ::slotted(li:not(:last-child)) {

private readonly headerLocator: Locator;
private readonly descriptionLocator: Locator;
readonly footerLocator: Locator;
private readonly page: Page;
Copy link
Member

Choose a reason for hiding this comment

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

is there a reason of this change or just a rebase issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants