Skip to content

Conversation

@louisescher
Copy link
Member

@louisescher louisescher commented Oct 30, 2025

Description

  • This PR refactors the select components from using normal scripts into web components.

@louisescher louisescher requested a review from a team as a code owner October 30, 2025 09:16
@changeset-bot
Copy link

changeset-bot bot commented Oct 30, 2025

🦋 Changeset detected

Latest commit: a0a320f

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

This PR includes changesets to release 1 package
Name Type
@studiocms/ui 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

@louisescher louisescher self-assigned this Oct 30, 2025
@louisescher louisescher changed the base branch from main to v1.0.0 October 30, 2025 09:17
@coderabbitai
Copy link

coderabbitai bot commented Oct 30, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/select-refactor

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@pkg-pr-new
Copy link

pkg-pr-new bot commented Oct 30, 2025

Open in StackBlitz

npm i https://pkg.pr.new/@studiocms/ui@136

commit: a0a320f

@codecov
Copy link

codecov bot commented Oct 30, 2025

Codecov Report

❌ Patch coverage is 66.66667% with 1 line in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...es/studiocms_ui/src/components/Select/Select.astro 50.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@github-actions
Copy link
Contributor

github-actions bot commented Oct 30, 2025

Test Results

passed 284 passed

Details

tests 284 tests
clock 704ms
tool playwright
build Run Tests arrow-right playwright-test-report link #189
pull-request feat: Refactor selects into web components link #136

Suites

284 passed, 0 failed, and 0 other

Suite Passed Failed Other Duration
✅ packages/studiocms_ui/test/components/Accordion.e2e.ts
        ✅ Test Functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 14.7s
✅ packages/studiocms_ui/test/components/Badge.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Colors Styling (Dark Mode)
        ✅ Test Accessibility - Colors Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Colors Styling (Dark Mode)
        ✅ Test Accessibility - Colors Styling (Light Mode)
✅ 14 ❌ 0 ⏭️ 0 17.8s
✅ packages/studiocms_ui/test/components/Breadcrumbs.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.5s
✅ packages/studiocms_ui/test/components/Button.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Polymorphic Styling (Dark Mode)
        ✅ Test Accessibility - Polymorphic Styling (Light Mode)
        ✅ Test Accessibility - Colors Styling (Dark Mode)
        ✅ Test Accessibility - Colors Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Polymorphic Styling (Dark Mode)
        ✅ Test Accessibility - Polymorphic Styling (Light Mode)
        ✅ Test Accessibility - Colors Styling (Dark Mode)
        ✅ Test Accessibility - Colors Styling (Light Mode)
✅ 18 ❌ 0 ⏭️ 0 24.8s
✅ packages/studiocms_ui/test/components/Card.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Slot Styling (Dark Mode)
        ✅ Test Accessibility - Slot Styling (Light Mode)
        ✅ Test Accessibility - Polymorphic Styling (Dark Mode)
        ✅ Test Accessibility - Polymorphic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Slot Styling (Dark Mode)
        ✅ Test Accessibility - Slot Styling (Light Mode)
        ✅ Test Accessibility - Polymorphic Styling (Dark Mode)
        ✅ Test Accessibility - Polymorphic Styling (Light Mode)
✅ 18 ❌ 0 ⏭️ 0 25.4s
✅ packages/studiocms_ui/test/components/Center.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.1s
✅ packages/studiocms_ui/test/components/Checkbox.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 14.0s
✅ packages/studiocms_ui/test/components/Divider.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.3s
✅ packages/studiocms_ui/test/components/Dropdown.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.8s
✅ packages/studiocms_ui/test/components/Footer.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.3s
✅ packages/studiocms_ui/test/components/Group.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Button Group Styling (Dark Mode)
        ✅ Test Accessibility - Button Group Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Button Group Styling (Dark Mode)
        ✅ Test Accessibility - Button Group Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 12.0s
✅ packages/studiocms_ui/test/components/Icon.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.3s
✅ packages/studiocms_ui/test/components/Input.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - With Icon Styling (Dark Mode)
        ✅ Test Accessibility - With Icon Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - With Icon Styling (Dark Mode)
        ✅ Test Accessibility - With Icon Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 12.7s
✅ packages/studiocms_ui/test/components/Modal.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.1s
✅ packages/studiocms_ui/test/components/Progress.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 13.8s
✅ packages/studiocms_ui/test/components/RadioGroup.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 15.8s
✅ packages/studiocms_ui/test/components/Row.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.4s
✅ packages/studiocms_ui/test/components/SearchSelect.e2e.ts
        ✅ Basic functionality
        ✅ Multi-Select functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Multi-Select Styling (Dark Mode)
        ✅ Test Accessibility - Multi-Select Styling (Light Mode)
        ✅ Basic functionality
        ✅ Multi-Select functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Multi-Select Styling (Dark Mode)
        ✅ Test Accessibility - Multi-Select Styling (Light Mode)
✅ 12 ❌ 0 ⏭️ 0 15.0s
✅ packages/studiocms_ui/test/components/Select.e2e.ts
        ✅ Basic functionality
        ✅ Multiple functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Multiple Styling (Dark Mode)
        ✅ Test Accessibility - Multiple Styling (Light Mode)
        ✅ Basic functionality
        ✅ Multiple functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Multiple Styling (Dark Mode)
        ✅ Test Accessibility - Multiple Styling (Light Mode)
✅ 12 ❌ 0 ⏭️ 0 15.1s
✅ packages/studiocms_ui/test/components/Sidebar-double.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.8s
✅ packages/studiocms_ui/test/components/Sidebar-single.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.3s
✅ packages/studiocms_ui/test/components/Skeleton.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Width/Height Styling (Dark Mode)
        ✅ Test Accessibility - Width/Height Styling (Light Mode)
        ✅ Test Accessibility - Radius Styling (Dark Mode)
        ✅ Test Accessibility - Radius Styling (Light Mode)
        ✅ Test Accessibility - Direction Styling (Dark Mode)
        ✅ Test Accessibility - Direction Styling (Light Mode)
        ✅ Test Accessibility - Horizontal Alignment Styling (Dark Mode)
        ✅ Test Accessibility - Horizontal Alignment Styling (Light Mode)
        ✅ Test Accessibility - Vertical Alignment Styling (Dark Mode)
        ✅ Test Accessibility - Vertical Alignment Styling (Light Mode)
        ✅ Test Accessibility - Gap Styling (Dark Mode)
        ✅ Test Accessibility - Gap Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Test Accessibility - Width/Height Styling (Dark Mode)
        ✅ Test Accessibility - Width/Height Styling (Light Mode)
        ✅ Test Accessibility - Radius Styling (Dark Mode)
        ✅ Test Accessibility - Radius Styling (Light Mode)
        ✅ Test Accessibility - Direction Styling (Dark Mode)
        ✅ Test Accessibility - Direction Styling (Light Mode)
        ✅ Test Accessibility - Horizontal Alignment Styling (Dark Mode)
        ✅ Test Accessibility - Horizontal Alignment Styling (Light Mode)
        ✅ Test Accessibility - Vertical Alignment Styling (Dark Mode)
        ✅ Test Accessibility - Vertical Alignment Styling (Light Mode)
        ✅ Test Accessibility - Gap Styling (Dark Mode)
        ✅ Test Accessibility - Gap Styling (Light Mode)
✅ 34 ❌ 0 ⏭️ 0 55.9s
✅ packages/studiocms_ui/test/components/Tabs.e2e.ts
        ✅ Basic functionality
        ✅ Sync functionality
        ✅ Nested functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Sync Styling (Dark Mode)
        ✅ Test Accessibility - Sync Styling (Light Mode)
        ✅ Test Accessibility - Nested Styling (Dark Mode)
        ✅ Test Accessibility - Nested Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
        ✅ Basic functionality
        ✅ Sync functionality
        ✅ Nested functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Sync Styling (Dark Mode)
        ✅ Test Accessibility - Sync Styling (Light Mode)
        ✅ Test Accessibility - Nested Styling (Dark Mode)
        ✅ Test Accessibility - Nested Styling (Light Mode)
        ✅ Test Accessibility - Variant Styling (Dark Mode)
        ✅ Test Accessibility - Variant Styling (Light Mode)
✅ 22 ❌ 0 ⏭️ 0 28.9s
✅ packages/studiocms_ui/test/components/Textarea.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.2s
✅ packages/studiocms_ui/test/components/Toast.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.6s
✅ packages/studiocms_ui/test/components/Toggle.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Test Accessibility - Color Styling (Dark Mode)
        ✅ Test Accessibility - Color Styling (Light Mode)
✅ 10 ❌ 0 ⏭️ 0 15.1s
✅ packages/studiocms_ui/test/components/Tooltip.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 6.9s
✅ packages/studiocms_ui/test/components/User.e2e.ts
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
        ✅ Basic functionality
        ✅ Test Accessibility - Basic Styling (Dark Mode)
        ✅ Test Accessibility - Basic Styling (Light Mode)
✅ 6 ❌ 0 ⏭️ 0 7.0s

Github Test Reporter by CTRF 💚

🔄 This comment has been updated

Copy link
Member

@Adammatthiesen Adammatthiesen left a comment

Choose a reason for hiding this comment

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

Something weird is going on when i set to this version on StudioCMS further investigation needed. (getting a HTMLElement is not defined pointing to the client code.... for the select, but only one 1 of the pages... weird)

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.

5 participants