Skip to content

Milestone3m [WiP]#739

Merged
bourgeoa merged 60 commits intomainfrom
milestone3m
Apr 23, 2026
Merged

Milestone3m [WiP]#739
bourgeoa merged 60 commits intomainfrom
milestone3m

Conversation

@timea-solid
Copy link
Copy Markdown
Member

@timea-solid timea-solid commented Apr 13, 2026

This is for solid symposium

Copilot AI review requested due to automatic review settings April 13, 2026 07:31
Copy link
Copy Markdown
Contributor

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

This PR introduces a new set of Lit-based “v2” Web Components (header + auth buttons) and wires them into the build/test pipeline so they can be consumed via package subpath exports (solid-ui/components/*).

Changes:

  • Add Lit Web Components: <solid-ui-header>, <solid-ui-login-button>, <solid-ui-signup-button> plus READMEs and unit tests.
  • Update webpack to emit per-component bundles under dist/components/<component>/index.* and update package.json subpath exports accordingly.
  • Adjust Jest/TypeScript test configuration and update existing unit snapshots.

Reviewed changes

Copilot reviewed 25 out of 26 changed files in this pull request and generated 15 comments.

Show a summary per file
File Description
webpack.config.mjs Builds multiple entrypoints and emits component bundles under dist/components/*.
tsconfig.test.json Includes src/**/*.test.ts in the test TS project.
test/unit/index.test.ts Updates index export contract test.
test/unit/header/snapshots/index.test.ts.snap Snapshot updates for legacy header DOM output.
test/helpers/setup.ts Minor cleanup in test setup.
src/v2/components/header/Header.ts New Lit-based header component implementation.
src/v2/components/header/index.ts Registers <solid-ui-header> and exports types.
src/v2/components/header/README.md Documents header component usage and API.
src/v2/components/header/header.test.ts Adds unit tests for the new header component.
src/v2/components/loginButton/LoginButton.ts New Lit-based login button with popup flow.
src/v2/components/loginButton/index.ts Registers <solid-ui-login-button>.
src/v2/components/loginButton/README.md Documents login button component usage and API.
src/v2/components/signupButton/SignupButton.ts New Lit-based signup button.
src/v2/components/signupButton/index.ts Registers <solid-ui-signup-button>.
src/v2/components/signupButton/README.md Documents signup button component usage and API.
src/utils/headerFooterHelpers.ts Changes ns import and tweaks getPod() behavior.
src/pad.ts Formatting / string quoting adjustments.
src/footer/index.ts Refactors footer link creation and styling placement.
src/acl/access-groups.ts Minor string concatenation tweak.
scripts/build-component-dts.mjs Adds a postbuild script to generate dist/components/* type wrappers.
README.md Adds top-level documentation for Web Components and build pipeline.
package.json Adds subpath exports for components and adjusts build scripts/deps.
jest.config.mjs Expands transform ignore patterns for Lit packages + CSS mock mapping.
babel.config.mjs Enables allowDeclareFields for TS preset (needed for declare).
mocks/styleMock.js Adds Jest mock for CSS imports.
Comments suppressed due to low confidence (1)

webpack.config.mjs:33

  • With multiple new entrypoints (header, loginButton, signupButton) sharing the same output.library.name: 'UI', loading more than one of the emitted UMD bundles via script tags will overwrite window.UI (last bundle wins). Consider omitting the global name for component bundles or using a per-entry library name to avoid clobbering the main UI global.
const common = {
  entry: {
    main: './src/index.ts',
    header: './src/v2/components/header/index.ts',
    loginButton: './src/v2/components/loginButton/index.ts',
    signupButton: './src/v2/components/signupButton/index.ts'
  },
  output: {
    path: path.resolve(process.cwd(), 'dist'),
    library: {
      name: 'UI',
      type: 'umd'
    },

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

Comment thread scripts/build-component-dts.mjs Outdated
Comment thread src/utils/headerFooterHelpers.ts Outdated
Comment thread test/unit/index.test.ts Outdated
Comment thread src/v2/components/header/header.test.ts
Comment thread src/v2/components/header/header.test.ts
Comment thread test/unit/header/__snapshots__/index.test.ts.snap
Comment thread package.json
Comment thread package.json
Comment on lines 4 to 8
"description": "UI library for Solid applications",
"main": "dist/solid-ui.js",
"types": "dist/index.d.ts",
"sideEffects": false,
"exports": {
".": {
Copy link

Copilot AI Apr 13, 2026

Choose a reason for hiding this comment

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

Removing "sideEffects": false disables tree-shaking for the entire package. If this was done to preserve custom-element registration side effects, consider using a sideEffects allowlist (e.g. only the component entrypoints) so consumers can still tree-shake the rest of the library.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

we take this out until we have a better solution for components.

Comment thread src/v2/components/loginButton/LoginButton.ts
Comment thread src/v2/components/signupButton/SignupButton.ts
timea-solid and others added 3 commits April 13, 2026 10:48
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@timea-solid timea-solid changed the title Milestone3m Milestone3m [WiP] Apr 13, 2026
timea-solid and others added 9 commits April 13, 2026 11:05
@bourgeoa bourgeoa enabled auto-merge April 23, 2026 17:07
@bourgeoa bourgeoa merged commit 284600d into main Apr 23, 2026
7 checks passed
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