@passflow/react 0.15.0 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +8 -8
  3. package/dist/index.cjs +1 -1
  4. package/dist/index.cjs.map +1 -1
  5. package/dist/index.es.js +143 -146
  6. package/dist/index.es.js.map +1 -1
  7. package/dist/src/components/flow/index.d.cts +1 -1
  8. package/dist/src/components/flow/index.d.ts +1 -1
  9. package/dist/src/components/flow/index.d.ts.map +1 -1
  10. package/dist/src/components/flow/passflow/index.d.ts.map +1 -1
  11. package/dist/src/components/form/forgot-password/forgot-password-success.d.ts.map +1 -1
  12. package/dist/src/components/form/forgot-password/forgot-password.d.ts.map +1 -1
  13. package/dist/src/components/form/reset-password/index.d.ts.map +1 -1
  14. package/dist/src/components/form/signin/index.d.ts.map +1 -1
  15. package/dist/src/components/form/signup/index.d.ts.map +1 -1
  16. package/dist/src/components/form/two-factor-verify/two-factor-verify-form.d.ts.map +1 -1
  17. package/dist/src/components/form/verify-challenge/verify-challenge-magic-link.d.ts.map +1 -1
  18. package/dist/src/components/form/verify-challenge/verify-challenge-otp-manual.d.ts.map +1 -1
  19. package/dist/src/components/ui/fields/field-otp.d.cts +19 -6
  20. package/dist/src/components/ui/fields/field-otp.d.ts +19 -6
  21. package/dist/src/components/ui/fields/field-otp.d.ts.map +1 -1
  22. package/dist/src/components/ui/fields/field-password.d.ts.map +1 -1
  23. package/dist/src/components/ui/fields/field-phone.d.ts.map +1 -1
  24. package/dist/src/hooks/use-app-settings.d.ts.map +1 -1
  25. package/dist/src/utils/cn.d.ts.map +1 -1
  26. package/dist/src/utils/get-auth-methods.d.ts.map +1 -1
  27. package/dist/src/utils/get-form-labels.d.ts.map +1 -1
  28. package/dist/src/utils/validation-schemas/index.d.ts.map +1 -1
  29. package/dist/style.css +1 -1
  30. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  All notable changes to `@passflow/react` are documented in this file.
4
4
 
5
+ ## [0.15.1] - 2026-11-02
6
+
7
+ ### Fixed
8
+
9
+ - `PassflowFlow` navigates through its own router whatever the provider's `router` prop says. With the default value, every step inside the flow did a full page load through `window.location` to an unprefixed path, leaving a memory, hash or host router. Hosts that pass `router="react-router"` were not affected.
10
+ - A navigation asked for with `replace: true` inside `PassflowFlow` replaces the history entry. It pushed a new one, because `replace` was handed to React Router as part of the destination.
11
+ - The passwordless OTP screen and the 2FA verify form name the code field with a visible "Verification code" label. They used hidden text only, which fails WCAG labelling (axe `label-title-only`) once a wrong code shows an error.
12
+
13
+ ### Added
14
+
15
+ - `FieldOtp` takes an optional `label`: the field then draws its own visible label above the boxes. `labelledBy` still works; a field takes one or the other. New stories: With label, With label error.
16
+ - `PassflowProps`, the props of `PassflowFlow`, is exported from the package root.
17
+
18
+ ### Changed
19
+
20
+ - `lodash` and `tailwind-merge` are no longer dependencies. lodash is CommonJS, so it could not be tree-shaken and added about 70 KB minified to an app's bundle; tailwind-merge resolved Tailwind class conflicts in a library that styles only with `passflow-*` classes.
21
+
22
+ ### Internal
23
+
24
+ - CI loads the packed package in plain Node through both `require` and `import`, and fails if either throws or the two expose different exports.
25
+ - README examples import from `@passflow/react` instead of the old package name.
26
+ - Two flaky UI tests fixed: the Storybook audits wait for the theme to settle, and the FieldOtp length test no longer depends on keystroke timing.
27
+
5
28
  ## [0.15.0] - 2026-11-02
6
29
 
7
30
  ### Breaking
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
- # @passflow/passflow-react-sdk
1
+ # @passflow/react
2
2
 
3
3
  This is a SDK for react application.
4
4
 
5
5
  ## Table of Contents
6
6
 
7
- - [@passflow/passflow-react-sdk](#passflowpassflow-react-sdk)
7
+ - [@passflow/react](#passflowreact)
8
8
  - [Table of Contents](#table-of-contents)
9
9
  - [Local Development](#local-development)
10
10
  - [Using Local Passflow JS SDK](#using-local-passflow-js-sdk)
@@ -273,7 +273,7 @@ import {
273
273
  SignUp,
274
274
  ForgotPassword,
275
275
  ForgotPasswordSuccess,
276
- } from "@passflow/passflow-react-sdk";
276
+ } from "@passflow/react";
277
277
  import { BrowserRouter, Routes, Route, useNavigate } from "react-router";
278
278
 
279
279
  const passflowConfig = {
@@ -344,7 +344,7 @@ import {
344
344
  SignUp,
345
345
  ForgotPassword,
346
346
  ForgotPasswordSuccess,
347
- } from "@passflow/passflow-react-sdk";
347
+ } from "@passflow/react";
348
348
  import { Switch, Route, useLocation } from "wouter";
349
349
 
350
350
  const passflowConfig = {
@@ -410,7 +410,7 @@ export const App = () => (
410
410
  );
411
411
 
412
412
  // PassflowProviderWrapper.tsx
413
- import { PassflowProvider } from '@passflow/passflow-react-sdk';
413
+ import { PassflowProvider } from '@passflow/react';
414
414
 
415
415
  const passflowConfig = {
416
416
  url: import.meta.env.VITE_PASSFLOW_URL,
@@ -432,7 +432,7 @@ export const PassflowProviderWrapper = ({ children }) => (
432
432
  );
433
433
 
434
434
  // router/root.tsx
435
- import { useNavigation } from '@passflow/passflow-react-sdk';
435
+ import { useNavigation } from '@passflow/react';
436
436
  import { Outlet, useNavigate } from '@tanstack/react-router';
437
437
 
438
438
  export const Root = () => {
@@ -451,7 +451,7 @@ import { QueryClient } from '@tanstack/react-query';
451
451
  import { createRouter } from '@tanstack/react-router';
452
452
  import { queryClient } from '../query';
453
453
  import { routerTree } from './routes';
454
- import { Passflow } from '@passflow/passflow-react-sdk';
454
+ import { Passflow } from '@passflow/react';
455
455
 
456
456
  export interface RouterContext {
457
457
  queryClient: QueryClient;
@@ -479,7 +479,7 @@ import { Outlet, createRootRouteWithContext, createRoute, redirect } from '@tans
479
479
  import { RouterContext } from './router';
480
480
  import { Root } from './root';
481
481
  import { About, Home } from '@/pages';
482
- import { ForgotPassword, ForgotPasswordSuccess, SignIn, SignUp } from '@passflow/passflow-react-sdk';
482
+ import { ForgotPassword, ForgotPasswordSuccess, SignIn, SignUp } from '@passflow/react';
483
483
  import { RootLayout } from '@/layouts';
484
484
 
485
485
  const redirectToSignin = () => {