@stytch/react 20.0.2 → 20.0.3

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 (44) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cjs/adminPortal/index.cjs +4 -2
  3. package/dist/cjs/adminPortal/index.cjs.map +1 -1
  4. package/dist/cjs/b2b/index.cjs +21 -29
  5. package/dist/cjs/b2b/index.cjs.map +1 -1
  6. package/dist/cjs/index.cjs +1 -1
  7. package/dist/cjs/{shadcn-DhFLwrw_.js → shadcn-CLGNjm4Z.js} +4 -35
  8. package/dist/cjs/shadcn-CLGNjm4Z.js.map +1 -0
  9. package/dist/cjs-dev/adminPortal/index.cjs +4 -2
  10. package/dist/cjs-dev/adminPortal/index.cjs.map +1 -1
  11. package/dist/cjs-dev/b2b/index.cjs +21 -29
  12. package/dist/cjs-dev/b2b/index.cjs.map +1 -1
  13. package/dist/cjs-dev/index.cjs +1 -1
  14. package/dist/cjs-dev/{shadcn-_aqkqkH3.js → shadcn-BDx_oy_4.js} +4 -35
  15. package/dist/cjs-dev/shadcn-BDx_oy_4.js.map +1 -0
  16. package/dist/esm/packages/web/src/adminPortal/components/Autocomplete.mjs +4 -2
  17. package/dist/esm/packages/web/src/adminPortal/components/Autocomplete.mjs.map +1 -1
  18. package/dist/esm/packages/web/src/ui/b2b/MfaState.mjs +0 -2
  19. package/dist/esm/packages/web/src/ui/b2b/MfaState.mjs.map +1 -1
  20. package/dist/esm/packages/web/src/ui/b2b/reducer/mfa.mjs +0 -29
  21. package/dist/esm/packages/web/src/ui/b2b/reducer/mfa.mjs.map +1 -1
  22. package/dist/esm/packages/web/src/ui/b2b/screens/Discovery.mjs +1 -0
  23. package/dist/esm/packages/web/src/ui/b2b/screens/Discovery.mjs.map +1 -1
  24. package/dist/esm/packages/web/src/ui/b2b/screens/TOTPEnrollQRScreen.mjs +23 -31
  25. package/dist/esm/packages/web/src/ui/b2b/screens/TOTPEnrollQRScreen.mjs.map +1 -1
  26. package/dist/esm/packages/web/src/ui/components/atoms/Watermark.mjs +1 -1
  27. package/dist/esm/packages/web/src/ui/components/atoms/Watermark.mjs.map +1 -1
  28. package/dist/esm/packages/web/src/ui/components/atoms/Watermark.module.css.mjs +2 -2
  29. package/dist/esm-dev/packages/web/src/adminPortal/components/Autocomplete.mjs +4 -2
  30. package/dist/esm-dev/packages/web/src/adminPortal/components/Autocomplete.mjs.map +1 -1
  31. package/dist/esm-dev/packages/web/src/ui/b2b/MfaState.mjs +0 -2
  32. package/dist/esm-dev/packages/web/src/ui/b2b/MfaState.mjs.map +1 -1
  33. package/dist/esm-dev/packages/web/src/ui/b2b/reducer/mfa.mjs +0 -29
  34. package/dist/esm-dev/packages/web/src/ui/b2b/reducer/mfa.mjs.map +1 -1
  35. package/dist/esm-dev/packages/web/src/ui/b2b/screens/Discovery.mjs +1 -0
  36. package/dist/esm-dev/packages/web/src/ui/b2b/screens/Discovery.mjs.map +1 -1
  37. package/dist/esm-dev/packages/web/src/ui/b2b/screens/TOTPEnrollQRScreen.mjs +23 -31
  38. package/dist/esm-dev/packages/web/src/ui/b2b/screens/TOTPEnrollQRScreen.mjs.map +1 -1
  39. package/dist/esm-dev/packages/web/src/ui/components/atoms/Watermark.mjs +1 -1
  40. package/dist/esm-dev/packages/web/src/ui/components/atoms/Watermark.mjs.map +1 -1
  41. package/dist/esm-dev/packages/web/src/ui/components/atoms/Watermark.module.css.mjs +2 -2
  42. package/package.json +1 -1
  43. package/dist/cjs/shadcn-DhFLwrw_.js.map +0 -1
  44. package/dist/cjs-dev/shadcn-_aqkqkH3.js.map +0 -1
@@ -4,7 +4,7 @@ var b2b_index_headless = require('./index.headless.cjs');
4
4
  var React = require('react');
5
5
  var StytchB2BContext = require('../StytchB2BContext-CD6mLKq3.js');
6
6
  var StytchSSRProxy = require('../StytchSSRProxy-D0nfqCWX.js');
7
- var shadcn = require('../shadcn-_aqkqkH3.js');
7
+ var shadcn = require('../shadcn-BDx_oy_4.js');
8
8
  var uniqueId = require('../uniqueId-CrAScvCS.js');
9
9
  var dev = require('../dev-DaCGDI6V.js');
10
10
  var logger = require('../logger-CvOATP4R.js');
@@ -3600,6 +3600,7 @@ const Discovery = ()=>{
3600
3600
  message: "Accept Invite"
3601
3601
  });
3602
3602
  return /*#__PURE__*/ React__namespace.default.createElement(OrganizationRow, {
3603
+ key: organization.organization_id,
3603
3604
  organization: organization,
3604
3605
  action: action,
3605
3606
  onClick: ()=>handleDiscoveryOrganizationStart(discoveredOrganization)
@@ -4504,21 +4505,29 @@ var modules_b00e876f = {"qr":"TOTPEnrollQRScreen_module_qr__ae8d607c"};
4504
4505
  const TOTPEnrollQRScreen = ()=>{
4505
4506
  const stytchClient = shadcn.useStytch();
4506
4507
  const [state, dispatch] = shadcn.useGlobalReducer();
4508
+ const onEvent = shadcn.useEventCallback();
4509
+ const onError = shadcn.useErrorCallback();
4507
4510
  const { i18n: $__i18n, _: $__ } = uniqueId.useLingui();
4508
- const { mfa: { totp: { createError, enrollment, isCreating } } } = state;
4509
4511
  // This screen should only be shown if primary info and TOTP enrollment are
4510
4512
  // available
4511
4513
  const { memberId, organizationId } = state.mfa.primaryInfo;
4512
- const { trigger: createTotp } = useMutate('stytch.totp.create', (_, { arg: { memberId, organizationId } })=>{
4513
- dispatch({
4514
- type: 'totp/create'
4515
- });
4516
- return stytchClient.totp.create({
4514
+ const { data } = StytchB2BContext.useSWR([
4515
+ 'stytch.totp.create',
4516
+ memberId,
4517
+ organizationId
4518
+ ], ()=>stytchClient.totp.create({
4517
4519
  member_id: memberId,
4518
4520
  organization_id: organizationId
4519
- });
4520
- }, {
4521
+ }), {
4522
+ revalidateOnFocus: false,
4523
+ revalidateOnReconnect: false,
4524
+ revalidateIfStale: false,
4521
4525
  onSuccess: (response)=>{
4526
+ onEvent({
4527
+ type: StytchSSRProxy.StytchEventType.B2BTOTPCreate,
4528
+ data: response
4529
+ });
4530
+ // Store the enrollment object so we can show recovery code after authenticating
4522
4531
  dispatch({
4523
4532
  type: 'totp/create_success',
4524
4533
  response,
@@ -4533,26 +4542,9 @@ const TOTPEnrollQRScreen = ()=>{
4533
4542
  message
4534
4543
  });
4535
4544
  }
4536
- dispatch({
4537
- type: 'totp/create_error',
4538
- error
4539
- });
4545
+ onError(error);
4540
4546
  }
4541
4547
  });
4542
- const shouldCreate = !enrollment && !isCreating && !createError;
4543
- React.useEffect(()=>{
4544
- if (shouldCreate) {
4545
- createTotp({
4546
- memberId,
4547
- organizationId
4548
- });
4549
- }
4550
- }, [
4551
- createTotp,
4552
- memberId,
4553
- organizationId,
4554
- shouldCreate
4555
- ]);
4556
4548
  const handleShowManualCode = ()=>{
4557
4549
  dispatch({
4558
4550
  type: 'totp/show_code',
@@ -4578,12 +4570,12 @@ const TOTPEnrollQRScreen = ()=>{
4578
4570
  }, $__i18n._({
4579
4571
  id: "totp.setupQr.content",
4580
4572
  message: "Your organization requires an additional form of verification to make your account more secure. If you don’t have an authenticator app, you’ll need to install one first."
4581
- })), enrollment ? /*#__PURE__*/ React__namespace.default.createElement(React__namespace.default.Fragment, null, /*#__PURE__*/ React__namespace.default.createElement("img", {
4573
+ })), data ? /*#__PURE__*/ React__namespace.default.createElement(React__namespace.default.Fragment, null, /*#__PURE__*/ React__namespace.default.createElement("img", {
4582
4574
  alt: $__i18n._({
4583
4575
  id: "mfaTotpEnrollment.qrAltText",
4584
4576
  message: "QR code for TOTP enrollment"
4585
4577
  }),
4586
- src: enrollment.qrCode,
4578
+ src: data.qr_code,
4587
4579
  className: modules_b00e876f.qr
4588
4580
  }), /*#__PURE__*/ React__namespace.default.createElement(shadcn.ButtonColumn, null, /*#__PURE__*/ React__namespace.default.createElement(shadcn.Button, {
4589
4581
  variant: "primary",