Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add lab docs #411

Merged
merged 1 commit into from
Jul 11, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 26 additions & 1 deletion packages/web-ui/docs/web-ui/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -105,9 +105,34 @@ All other components can be used without being wrapped in a `ThemeProvider`,
and will nnot be affected if wrapped in a `ThemeProvider` from another
component library, including the deprecated `customer-ui-material`.

## The `lab` submodule

In an effort to avoid blocking the UX team, at the same time as avoiding
forcing breaking changes on dev teams, we use the `lab` submodule to add
component updates when necessary. for instance, if significant design updates,
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
component updates when necessary. for instance, if significant design updates,
component updates when necessary. For instance, if significant design updates,

required by product, also incur breaking api changes, or a complete refactor,
we can introduce them via the `lab` import path, alongside the existing
component. components introduced in this way can then replace the existing
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
component. components introduced in this way can then replace the existing
component. Components introduced in this way can then replace the existing

component in the next major release.

After being released, components within `lab` will still be subject to semantic
releasing, so any breaking changes will be considered as just that and will
require a major release.

```tsx
import { Button } from '@utilitywarehouse/web-ui/dist/lab';

[...]

<Button>New button</Button>
```

## ES modules

In an effort to provide a tree-shakeable library we export bundles for both ES modules and CommonJS. This however may cause issues with Webpack based applications as they default to expecting ES module files to be referenced with a file extension.
In an effort to provide a tree-shakeable library we export bundles for both ES
modules and CommonJS. This however may cause issues with Webpack based
applications as they default to expecting ES module files to be referenced with
a file extension.

### Plain React App

Expand Down