Skip to content
Merged
Show file tree
Hide file tree
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
12 changes: 0 additions & 12 deletions .changeset/nextjs-client-support.md

This file was deleted.

12 changes: 0 additions & 12 deletions .changeset/oauth-cutover.md

This file was deleted.

18 changes: 18 additions & 0 deletions packages/client/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# @seamless-auth/client

## 0.2.0

### Minor Changes

- 419025e: Support the Next.js App Router.
- Every module in `@seamless-auth/react` now ships with a `'use client'` directive, so `AuthProvider` renders straight from a server layout. The build fails if the directive goes missing from any emitted file.
- **Breaking:** `AuthRoutes` moved to `@seamless-auth/react/routes`, and `react-router-dom` is now an optional peer. Change `import { AuthRoutes } from '@seamless-auth/react'` to `import { AuthRoutes } from '@seamless-auth/react/routes'`. Applications that do not render the bundled screens no longer need react-router installed.
- Fixed a hydration mismatch for returning users. `hasSignedInBefore` was read from `localStorage` on the client's first render, which the server could not match. The store now exposes `getServerState()`, and the provider hydrates from it.
- `AuthProvider` and `createAuthSession` accept `initialSession`, a session the server already resolved (or `null`). The first paint renders it settled instead of loading, and the session then revalidates in the background.
- `refreshSession({ background: true })` revalidates without reporting `loading`.

- 0dfe622: Support signing in through a legacy identity provider during a migration cutover (fells-code/seamless-auth-api#337).
- `getOAuthErrorCode` recognises `oauth_provider_retired` (the user's organization no longer signs in with that provider) and `oauth_invalid_id_token`.
- The bundled OAuth callback sends the user to passkey enrollment when the sign-in response carries `nextStep: 'enroll_passkey'`, and the passkey screen then continues to the `returnTo` the flow asked for instead of always going home.
- The callback shows a specific message for both new codes.

Requires `@seamless-auth/types` 0.25.0.

## 0.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@seamless-auth/client",
"version": "0.1.0",
"version": "0.2.0",
"description": "Framework-agnostic client core for Seamless Auth: the HTTP client, session store, and result types the framework bindings share.",
"type": "module",
"exports": {
Expand Down
8 changes: 8 additions & 0 deletions packages/react-native/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# @seamless-auth/react-native

## 0.1.1

### Patch Changes

- Updated dependencies [419025e]
- Updated dependencies [0dfe622]
- @seamless-auth/client@0.2.0

## 0.1.0

### Minor Changes
Expand Down
4 changes: 2 additions & 2 deletions packages/react-native/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@seamless-auth/react-native",
"version": "0.1.0",
"version": "0.1.1",
"description": "Headless React Native binding for Seamless Auth: provider, hooks, and the native ports for passkeys, secure token storage, and in-app browser OAuth.",
"type": "module",
"exports": {
Expand Down Expand Up @@ -45,7 +45,7 @@
"react": "^18.0.0 || ^19.0.0"
},
"dependencies": {
"@seamless-auth/client": "^0.1.0",
"@seamless-auth/client": "^0.2.0",
"@seamless-auth/types": "^0.25.0"
},
"sideEffects": false
Expand Down
24 changes: 24 additions & 0 deletions packages/react/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
# @seamless-auth/react

## 0.14.0

### Minor Changes

- 419025e: Support the Next.js App Router.
- Every module in `@seamless-auth/react` now ships with a `'use client'` directive, so `AuthProvider` renders straight from a server layout. The build fails if the directive goes missing from any emitted file.
- **Breaking:** `AuthRoutes` moved to `@seamless-auth/react/routes`, and `react-router-dom` is now an optional peer. Change `import { AuthRoutes } from '@seamless-auth/react'` to `import { AuthRoutes } from '@seamless-auth/react/routes'`. Applications that do not render the bundled screens no longer need react-router installed.
- Fixed a hydration mismatch for returning users. `hasSignedInBefore` was read from `localStorage` on the client's first render, which the server could not match. The store now exposes `getServerState()`, and the provider hydrates from it.
- `AuthProvider` and `createAuthSession` accept `initialSession`, a session the server already resolved (or `null`). The first paint renders it settled instead of loading, and the session then revalidates in the background.
- `refreshSession({ background: true })` revalidates without reporting `loading`.

- 0dfe622: Support signing in through a legacy identity provider during a migration cutover (fells-code/seamless-auth-api#337).
- `getOAuthErrorCode` recognises `oauth_provider_retired` (the user's organization no longer signs in with that provider) and `oauth_invalid_id_token`.
- The bundled OAuth callback sends the user to passkey enrollment when the sign-in response carries `nextStep: 'enroll_passkey'`, and the passkey screen then continues to the `returnTo` the flow asked for instead of always going home.
- The callback shows a specific message for both new codes.

Requires `@seamless-auth/types` 0.25.0.

### Patch Changes

- Updated dependencies [419025e]
- Updated dependencies [0dfe622]
- @seamless-auth/client@0.2.0

## 0.13.0

### Minor Changes
Expand Down
4 changes: 2 additions & 2 deletions packages/react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@seamless-auth/react",
"version": "0.13.0",
"version": "0.14.0",
"description": "A drop-in authentication solution for modern React applications.",
"type": "module",
"exports": {
Expand Down Expand Up @@ -56,7 +56,7 @@
}
},
"dependencies": {
"@seamless-auth/client": "^0.1.0",
"@seamless-auth/client": "^0.2.0",
"@seamless-auth/types": "^0.25.0",
"@simplewebauthn/browser": "^13.1.0",
"libphonenumber-js": "^1.12.7"
Expand Down