Skip to content

Commit 53ace0e

Browse files
committed
Merge remote-tracking branch 'origin/main' into manovotny/github-issue-9405-2acfc2
# Conflicts: # packages/nextjs/src/app-router/client/ClerkProvider.tsx
2 parents 7221dc4 + e21ae9a commit 53ace0e

542 files changed

Lines changed: 26650 additions & 12771 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.changeset/applied-discount-duration-cycles.md‎

Lines changed: 0 additions & 8 deletions
This file was deleted.

‎.changeset/mosaic-avatar-skeleton-fallback.md‎

Lines changed: 0 additions & 2 deletions
This file was deleted.

‎.changeset/mosaic-user-button-headless-row.md‎

Lines changed: 0 additions & 2 deletions
This file was deleted.

‎.changeset/olive-jars-shout.md‎

Lines changed: 0 additions & 2 deletions
This file was deleted.

‎.changeset/quiet-fields-compose.md‎

Lines changed: 0 additions & 2 deletions
This file was deleted.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
'@clerk/clerk-js': minor
3+
'@clerk/react': patch
4+
'@clerk/shared': minor
5+
'@clerk/ui': patch
6+
---
7+
8+
Fixes an issue where OAuth account transfers that needed additional verification were returned to the beginning of sign-in.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@clerk/shared': patch
3+
'@clerk/ui': patch
4+
---
5+
6+
Fix an issue where sign-ups that used an enterprise SSO connection did not correctly forward redirect URLs.

‎.claude/skills/mosaic/SKILL.md‎

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
---
22
name: mosaic
33
description: >-
4-
Work on Mosaic UI: styling a component with slot recipes (`defineSlotRecipe` /
5-
`useRecipe` / slots / variants), or building a flow — authoring a state machine
4+
Work on Mosaic UI: styling a component with StyleX (`stylex.create`, `--cl-*`
5+
tokens, `themeProps`), or building a flow — authoring a state machine
66
(`setup`, states/guards/`invoke`, wiring to React with `useMachine`/`useActor`/
77
`useSelector`), writing the controller (Clerk adapter) or view (rendering) layer,
88
testing any of those layers, or migrating a legacy / pre-Mosaic component into the
@@ -15,9 +15,10 @@ description: >-
1515

1616
Two things live under Mosaic, and this skill covers the how-to for both:
1717

18-
- **Styled components** are authored with **slot recipes** — one recipe owns a
19-
part's slot identity (`data-cl-slot`), variants, state, and appearance
20-
cascade; `useRecipe` resolves it and hands back per-slot props to spread.
18+
- **Styled components** are authored with **StyleX** — `stylex.create` declares
19+
the styles, `themeProps` emits the part's public identity (the `.cl-<slot>`
20+
class plus `data-<axis>` attrs), and `mergeStyleProps` fuses the two with the
21+
consumer's `className`/`style`.
2122
- **Flows** follow a **machine → controller → view** split that keeps Clerk
2223
resource logic out of visual components and makes behavior testable without a
2324
running Clerk app:
@@ -35,25 +36,24 @@ view Rendering only: receives a snapshot plus explicit props, renders UI,
3536
```
3637

3738
`references/mosaic-architecture.md` (repo root, read by all agents) is the
38-
canonical contract for the whole design system — tokens, theme delivery, the
39-
`data-cl-*` styling API, slot recipes, appearance/cascade/scope, and the "Flow
40-
and data architecture" section that defines the split. Read it for the _what_;
41-
this skill is the _how-to_.
39+
canonical contract for the whole design system — the `--cl-*` tokens, the
40+
`.cl-<slot>` + `data-<axis>` styling API, the CSS build, and the "Flow and data
41+
architecture" section that defines the split. Read it for the _what_; this skill
42+
is the _how-to_.
4243

4344
## Which reference to read
4445

45-
| You are… | Read |
46-
| -------------------------------------------------------------------- | ------------------------------------------------------ |
47-
| Building on / authoring a headless primitive (`@clerk/headless`) | `references/headless.md` |
48-
| Styling a component with StyleX (tokens, `stylex.create`, CSS build) | `references/stylex.md` |
49-
| Building an enter/exit transition, or any motion that reads as wrong | `references/motion.md` |
50-
| Styling a component the legacy way (slot recipes, `useRecipe`) | `references/styling.md` |
51-
| Authoring or debugging a state machine, or wiring one to React | `references/machines.md` → in-tree `machine/README.md` |
52-
| Writing the controller (Clerk adapter, permissions, revalidate) | `references/controllers.md` |
53-
| Writing the view (rendering a snapshot, sending events) | `references/views.md` |
54-
| Testing a machine, controller, or view | `references/testing.md` |
55-
| Migrating a legacy component into Mosaic (the end-to-end workflow) | `references/migration.md` |
56-
| Running the parity audit that guards a migration | `references/parity-audit.md` |
46+
| You are… | Read |
47+
| ---------------------------------------------------------------------- | ------------------------------------------------------ |
48+
| Building on / authoring a headless primitive (`@clerk/headless`) | `references/headless.md` |
49+
| Styling a component (tokens, `stylex.create`, `themeProps`, CSS build) | `references/stylex.md` |
50+
| Building an enter/exit transition, or any motion that reads as wrong | `references/motion.md` |
51+
| Authoring or debugging a state machine, or wiring one to React | `references/machines.md` → in-tree `machine/README.md` |
52+
| Writing the controller (Clerk adapter, permissions, revalidate) | `references/controllers.md` |
53+
| Writing the view (rendering a snapshot, sending events) | `references/views.md` |
54+
| Testing a machine, controller, or view | `references/testing.md` |
55+
| Migrating a legacy component into Mosaic (the end-to-end workflow) | `references/migration.md` |
56+
| Running the parity audit that guards a migration | `references/parity-audit.md` |
5757

5858
The migration workflow (`migration.md`) ties the flow references together: it
5959
treats the legacy component as the spec and drives you through the machine,

‎.claude/skills/mosaic/references/stylex.md‎

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
# Styling a component with StyleX
22

3-
Mosaic styling is migrating off the Emotion slot-recipe engine (`styling.md`)
4-
onto **StyleX** (`@stylexjs/stylex` 0.19). StyleX is compile-time atomic CSS: the
5-
style objects become hashed atom classes plus one static stylesheet, with zero
6-
runtime. This file is the authoring model for the StyleX layer; read it against
7-
the pilot, `packages/ui/src/mosaic/components/button/`.
8-
9-
The public contract is unchanged from the recipe era — consumers still target
10-
`--cl-*` vars, the `.cl-<slot>` class, and `data-<axis>` attrs, never StyleX's
11-
hashed `x…` atoms. What changes is how a component is authored internally.
3+
Mosaic is styled with **StyleX** (`@stylexjs/stylex` 0.19). StyleX is
4+
compile-time atomic CSS: the style objects become hashed atom classes plus one
5+
static stylesheet, with zero runtime. This file is the authoring model; read it
6+
against the reference component, `packages/ui/src/mosaic/components/button/`.
7+
8+
Consumers target `--cl-*` vars, the `.cl-<slot>` class, and `data-<axis>` attrs,
9+
never StyleX's hashed `x…` atoms. That public contract is fixed; everything
10+
below is how a component is authored internally to produce it.
1211

1312
The guidance below is opinionated and evidence-backed: it codifies patterns
1413
proven out across a full StyleX component library (tokens, ~100 components,

‎.claude/skills/mosaic/references/styling.md‎

Lines changed: 0 additions & 197 deletions
This file was deleted.

0 commit comments

Comments
 (0)