@thunderid/react 0.3.0 → 0.3.4

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 (672) hide show
  1. package/dist/ThunderIDReactClient.d.ts +4 -8
  2. package/dist/ThunderIDReactClient.d.ts.map +1 -1
  3. package/dist/ThunderIDReactClient.js +6 -73
  4. package/dist/ThunderIDReactClient.js.map +1 -1
  5. package/dist/cjs/ThunderIDReactClient.cjs +5 -72
  6. package/dist/cjs/ThunderIDReactClient.cjs.map +1 -1
  7. package/dist/cjs/components/actions/SignInButton/SignInButton.cjs.map +1 -1
  8. package/dist/cjs/components/adapters/Consent.cjs.map +1 -1
  9. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs +1 -1
  10. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs.map +1 -1
  11. package/dist/cjs/components/auth/Callback/Callback.cjs +1 -1
  12. package/dist/cjs/components/auth/Callback/Callback.cjs.map +1 -1
  13. package/dist/cjs/components/auth/Callback/TokenCallback.cjs +3 -3
  14. package/dist/cjs/components/auth/Callback/TokenCallback.cjs.map +1 -1
  15. package/dist/cjs/components/factories/FieldFactory.cjs +2 -2
  16. package/dist/cjs/components/factories/FieldFactory.cjs.map +1 -1
  17. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs +1 -1
  18. package/dist/cjs/components/presentation/UserAvatar/BaseUserAvatar.cjs +57 -0
  19. package/dist/cjs/components/presentation/UserAvatar/BaseUserAvatar.cjs.map +1 -0
  20. package/dist/cjs/components/presentation/UserAvatar/UserAvatar.cjs +36 -0
  21. package/dist/cjs/components/presentation/UserAvatar/UserAvatar.cjs.map +1 -0
  22. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs +6 -5
  23. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -1
  24. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs +3 -3
  25. package/dist/cjs/components/presentation/auth/AcceptInvite/{v2/AcceptInvite.cjs → AcceptInvite.cjs} +2 -2
  26. package/dist/cjs/components/presentation/auth/AcceptInvite/AcceptInvite.cjs.map +1 -0
  27. package/dist/cjs/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.cjs → BaseAcceptInvite.cjs} +47 -18
  28. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.cjs.map +1 -0
  29. package/dist/cjs/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.styles.cjs → BaseAcceptInvite.styles.cjs} +2 -2
  30. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.cjs.map +1 -0
  31. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs +49 -43
  32. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -1
  33. package/dist/cjs/components/presentation/auth/InviteUser/{v2/BaseInviteUser.cjs → BaseInviteUser.cjs} +44 -15
  34. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.cjs.map +1 -0
  35. package/dist/cjs/components/presentation/auth/InviteUser/{v2/BaseInviteUser.styles.cjs → BaseInviteUser.styles.cjs} +2 -2
  36. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.styles.cjs.map +1 -0
  37. package/dist/cjs/components/presentation/auth/InviteUser/{v2/InviteUser.cjs → InviteUser.cjs} +3 -3
  38. package/dist/cjs/components/presentation/auth/InviteUser/InviteUser.cjs.map +1 -0
  39. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs +389 -8
  40. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs.map +1 -1
  41. package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs +51 -22
  42. package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs.map +1 -1
  43. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs +346 -8
  44. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs.map +1 -1
  45. package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs +547 -36
  46. package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs.map +1 -1
  47. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs +691 -8
  48. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs.map +1 -1
  49. package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs +66 -76
  50. package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs.map +1 -1
  51. package/dist/cjs/components/primitives/Alert/Alert.cjs +1 -1
  52. package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs +1 -1
  53. package/dist/cjs/components/primitives/FormControl/FormControl.cjs +1 -1
  54. package/dist/cjs/components/primitives/Toggle/Toggle.cjs +1 -1
  55. package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs.map +1 -1
  56. package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs +5 -7
  57. package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs.map +1 -1
  58. package/dist/cjs/contexts/Theme/ThemeContext.cjs.map +1 -1
  59. package/dist/cjs/contexts/Theme/ThemeProvider.cjs +73 -37
  60. package/dist/cjs/contexts/Theme/ThemeProvider.cjs.map +1 -1
  61. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +0 -3
  62. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -1
  63. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +14 -93
  64. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -1
  65. package/dist/cjs/hooks/{v2/useOAuthCallback.cjs → useOAuthCallback.cjs} +2 -2
  66. package/dist/cjs/hooks/useOAuthCallback.cjs.map +1 -0
  67. package/dist/cjs/index.cjs +51 -99
  68. package/dist/cjs/utils/{v2/buildThemeConfigFromFlowMeta.cjs → buildThemeConfigFromFlowMeta.cjs} +1 -1
  69. package/dist/cjs/utils/buildThemeConfigFromFlowMeta.cjs.map +1 -0
  70. package/dist/cjs/utils/{v2/flowTransformer.cjs → flowTransformer.cjs} +1 -1
  71. package/dist/cjs/utils/flowTransformer.cjs.map +1 -0
  72. package/dist/cjs/utils/{v2/getAuthComponentHeadings.cjs → getAuthComponentHeadings.cjs} +1 -1
  73. package/dist/cjs/utils/getAuthComponentHeadings.cjs.map +1 -0
  74. package/dist/cjs/utils/{v2/passkey.cjs → passkey.cjs} +2 -2
  75. package/dist/cjs/utils/passkey.cjs.map +1 -0
  76. package/dist/cjs/utils/{v2/resolveTranslationsInArray.cjs → resolveTranslationsInArray.cjs} +1 -1
  77. package/dist/cjs/utils/resolveTranslationsInArray.cjs.map +1 -0
  78. package/dist/cjs/utils/{v2/resolveTranslationsInObject.cjs → resolveTranslationsInObject.cjs} +2 -2
  79. package/dist/cjs/utils/resolveTranslationsInObject.cjs.map +1 -0
  80. package/dist/components/actions/SignInButton/SignInButton.d.ts.map +1 -1
  81. package/dist/components/actions/SignInButton/SignInButton.js.map +1 -1
  82. package/dist/components/adapters/Consent.d.ts +1 -1
  83. package/dist/components/adapters/Consent.d.ts.map +1 -1
  84. package/dist/components/adapters/Consent.js.map +1 -1
  85. package/dist/components/adapters/ConsentCheckboxList.d.ts +1 -1
  86. package/dist/components/adapters/ConsentCheckboxList.d.ts.map +1 -1
  87. package/dist/components/adapters/ConsentCheckboxList.js +1 -1
  88. package/dist/components/adapters/ConsentCheckboxList.js.map +1 -1
  89. package/dist/components/auth/Callback/Callback.d.ts +1 -1
  90. package/dist/components/auth/Callback/Callback.js +1 -1
  91. package/dist/components/auth/Callback/Callback.js.map +1 -1
  92. package/dist/components/auth/Callback/TokenCallback.js +4 -4
  93. package/dist/components/auth/Callback/TokenCallback.js.map +1 -1
  94. package/dist/components/factories/FieldFactory.d.ts +2 -2
  95. package/dist/components/factories/FieldFactory.js +2 -2
  96. package/dist/components/factories/FieldFactory.js.map +1 -1
  97. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js +1 -1
  98. package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts +50 -0
  99. package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts.map +1 -0
  100. package/dist/components/presentation/UserAvatar/BaseUserAvatar.js +55 -0
  101. package/dist/components/presentation/UserAvatar/BaseUserAvatar.js.map +1 -0
  102. package/dist/components/presentation/UserAvatar/UserAvatar.d.ts +46 -0
  103. package/dist/components/presentation/UserAvatar/UserAvatar.d.ts.map +1 -0
  104. package/dist/components/presentation/UserAvatar/UserAvatar.js +34 -0
  105. package/dist/components/presentation/UserAvatar/UserAvatar.js.map +1 -0
  106. package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
  107. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js +6 -5
  108. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -1
  109. package/dist/components/presentation/UserProfile/BaseUserProfile.js +3 -3
  110. package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.d.ts.map +1 -0
  111. package/dist/components/presentation/auth/AcceptInvite/{v2/AcceptInvite.js → AcceptInvite.js} +1 -1
  112. package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.js.map +1 -0
  113. package/dist/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.d.ts → BaseAcceptInvite.d.ts} +3 -2
  114. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.d.ts.map +1 -0
  115. package/dist/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.js → BaseAcceptInvite.js} +45 -17
  116. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.js.map +1 -0
  117. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.d.ts.map +1 -0
  118. package/dist/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.styles.js → BaseAcceptInvite.styles.js} +1 -1
  119. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.js.map +1 -0
  120. package/dist/components/presentation/auth/AcceptInvite/index.d.ts +4 -4
  121. package/dist/components/presentation/auth/AcceptInvite/index.d.ts.map +1 -1
  122. package/dist/components/presentation/auth/AuthOptionFactory.d.ts +2 -2
  123. package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
  124. package/dist/components/presentation/auth/AuthOptionFactory.js +50 -44
  125. package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -1
  126. package/dist/components/presentation/auth/InviteUser/{v2/BaseInviteUser.d.ts → BaseInviteUser.d.ts} +3 -2
  127. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.d.ts.map +1 -0
  128. package/dist/components/presentation/auth/InviteUser/{v2/BaseInviteUser.js → BaseInviteUser.js} +44 -15
  129. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.js.map +1 -0
  130. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.d.ts.map +1 -0
  131. package/dist/components/presentation/auth/InviteUser/{v2/BaseInviteUser.styles.js → BaseInviteUser.styles.js} +1 -1
  132. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.js.map +1 -0
  133. package/dist/components/presentation/auth/InviteUser/InviteUser.d.ts.map +1 -0
  134. package/dist/components/presentation/auth/InviteUser/{v2/InviteUser.js → InviteUser.js} +2 -2
  135. package/dist/components/presentation/auth/InviteUser/InviteUser.js.map +1 -0
  136. package/dist/components/presentation/auth/InviteUser/index.d.ts +4 -4
  137. package/dist/components/presentation/auth/InviteUser/index.d.ts.map +1 -1
  138. package/dist/components/presentation/auth/Recovery/BaseRecovery.d.ts +63 -4
  139. package/dist/components/presentation/auth/Recovery/BaseRecovery.d.ts.map +1 -1
  140. package/dist/components/presentation/auth/Recovery/BaseRecovery.js +389 -10
  141. package/dist/components/presentation/auth/Recovery/BaseRecovery.js.map +1 -1
  142. package/dist/components/presentation/auth/Recovery/Recovery.d.ts +21 -22
  143. package/dist/components/presentation/auth/Recovery/Recovery.d.ts.map +1 -1
  144. package/dist/components/presentation/auth/Recovery/Recovery.js +51 -23
  145. package/dist/components/presentation/auth/Recovery/Recovery.js.map +1 -1
  146. package/dist/components/presentation/auth/SignIn/BaseSignIn.d.ts +213 -6
  147. package/dist/components/presentation/auth/SignIn/BaseSignIn.d.ts.map +1 -1
  148. package/dist/components/presentation/auth/SignIn/BaseSignIn.js +346 -10
  149. package/dist/components/presentation/auth/SignIn/BaseSignIn.js.map +1 -1
  150. package/dist/components/presentation/auth/SignIn/SignIn.d.ts +122 -13
  151. package/dist/components/presentation/auth/SignIn/SignIn.d.ts.map +1 -1
  152. package/dist/components/presentation/auth/SignIn/SignIn.js +548 -38
  153. package/dist/components/presentation/auth/SignIn/SignIn.js.map +1 -1
  154. package/dist/components/presentation/auth/SignUp/BaseSignUp.d.ts +164 -6
  155. package/dist/components/presentation/auth/SignUp/BaseSignUp.d.ts.map +1 -1
  156. package/dist/components/presentation/auth/SignUp/BaseSignUp.js +691 -10
  157. package/dist/components/presentation/auth/SignUp/BaseSignUp.js.map +1 -1
  158. package/dist/components/presentation/auth/SignUp/SignUp.d.ts +15 -74
  159. package/dist/components/presentation/auth/SignUp/SignUp.d.ts.map +1 -1
  160. package/dist/components/presentation/auth/SignUp/SignUp.js +67 -77
  161. package/dist/components/presentation/auth/SignUp/SignUp.js.map +1 -1
  162. package/dist/components/primitives/Alert/Alert.js +1 -1
  163. package/dist/components/primitives/Checkbox/Checkbox.js +1 -1
  164. package/dist/components/primitives/FormControl/FormControl.js +1 -1
  165. package/dist/components/primitives/Toggle/Toggle.js +1 -1
  166. package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts +1 -1
  167. package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts.map +1 -1
  168. package/dist/contexts/ComponentRenderer/ComponentRendererContext.js.map +1 -1
  169. package/dist/contexts/FlowMeta/FlowMetaProvider.d.ts.map +1 -1
  170. package/dist/contexts/FlowMeta/FlowMetaProvider.js +6 -8
  171. package/dist/contexts/FlowMeta/FlowMetaProvider.js.map +1 -1
  172. package/dist/contexts/Theme/ThemeContext.d.ts +0 -12
  173. package/dist/contexts/Theme/ThemeContext.d.ts.map +1 -1
  174. package/dist/contexts/Theme/ThemeContext.js.map +1 -1
  175. package/dist/contexts/Theme/ThemeProvider.d.ts +17 -41
  176. package/dist/contexts/Theme/ThemeProvider.d.ts.map +1 -1
  177. package/dist/contexts/Theme/ThemeProvider.js +73 -38
  178. package/dist/contexts/Theme/ThemeProvider.js.map +1 -1
  179. package/dist/contexts/ThunderID/ThunderIDContext.d.ts +2 -4
  180. package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
  181. package/dist/contexts/ThunderID/ThunderIDContext.js +0 -3
  182. package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -1
  183. package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
  184. package/dist/contexts/ThunderID/ThunderIDProvider.js +15 -94
  185. package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -1
  186. package/dist/hooks/useOAuthCallback.d.ts.map +1 -0
  187. package/dist/hooks/{v2/useOAuthCallback.js → useOAuthCallback.js} +1 -1
  188. package/dist/hooks/useOAuthCallback.js.map +1 -0
  189. package/dist/index.d.ts +7 -49
  190. package/dist/index.d.ts.map +1 -1
  191. package/dist/index.js +30 -59
  192. package/dist/utils/buildThemeConfigFromFlowMeta.d.ts.map +1 -0
  193. package/dist/utils/{v2/buildThemeConfigFromFlowMeta.js → buildThemeConfigFromFlowMeta.js} +1 -1
  194. package/dist/utils/buildThemeConfigFromFlowMeta.js.map +1 -0
  195. package/dist/utils/{v2/flowTransformer.d.ts → flowTransformer.d.ts} +3 -3
  196. package/dist/utils/flowTransformer.d.ts.map +1 -0
  197. package/dist/utils/{v2/flowTransformer.js → flowTransformer.js} +1 -1
  198. package/dist/utils/flowTransformer.js.map +1 -0
  199. package/dist/utils/{v2/getAuthComponentHeadings.d.ts → getAuthComponentHeadings.d.ts} +1 -1
  200. package/dist/utils/getAuthComponentHeadings.d.ts.map +1 -0
  201. package/dist/utils/{v2/getAuthComponentHeadings.js → getAuthComponentHeadings.js} +1 -1
  202. package/dist/utils/getAuthComponentHeadings.js.map +1 -0
  203. package/dist/utils/passkey.d.ts.map +1 -0
  204. package/dist/utils/{v2/passkey.js → passkey.js} +1 -1
  205. package/dist/utils/passkey.js.map +1 -0
  206. package/dist/utils/{v2/resolveTranslationsInArray.d.ts → resolveTranslationsInArray.d.ts} +1 -1
  207. package/dist/utils/resolveTranslationsInArray.d.ts.map +1 -0
  208. package/dist/utils/{v2/resolveTranslationsInArray.js → resolveTranslationsInArray.js} +1 -1
  209. package/dist/utils/resolveTranslationsInArray.js.map +1 -0
  210. package/dist/utils/{v2/resolveTranslationsInObject.d.ts → resolveTranslationsInObject.d.ts} +1 -1
  211. package/dist/utils/resolveTranslationsInObject.d.ts.map +1 -0
  212. package/dist/utils/{v2/resolveTranslationsInObject.js → resolveTranslationsInObject.js} +1 -1
  213. package/dist/utils/resolveTranslationsInObject.js.map +1 -0
  214. package/package.json +10 -10
  215. package/dist/api/createOrganization.d.ts +0 -86
  216. package/dist/api/createOrganization.d.ts.map +0 -1
  217. package/dist/api/createOrganization.js +0 -80
  218. package/dist/api/createOrganization.js.map +0 -1
  219. package/dist/api/getAllOrganizations.d.ts +0 -78
  220. package/dist/api/getAllOrganizations.d.ts.map +0 -1
  221. package/dist/api/getAllOrganizations.js +0 -71
  222. package/dist/api/getAllOrganizations.js.map +0 -1
  223. package/dist/api/getMeOrganizations.d.ts +0 -82
  224. package/dist/api/getMeOrganizations.d.ts.map +0 -1
  225. package/dist/api/getMeOrganizations.js +0 -75
  226. package/dist/api/getMeOrganizations.js.map +0 -1
  227. package/dist/api/getOrganization.d.ts +0 -74
  228. package/dist/api/getOrganization.d.ts.map +0 -1
  229. package/dist/api/getOrganization.js +0 -67
  230. package/dist/api/getOrganization.js.map +0 -1
  231. package/dist/api/getSchemas.d.ts +0 -72
  232. package/dist/api/getSchemas.d.ts.map +0 -1
  233. package/dist/api/getSchemas.js +0 -65
  234. package/dist/api/getSchemas.js.map +0 -1
  235. package/dist/api/updateOrganization.d.ts +0 -81
  236. package/dist/api/updateOrganization.d.ts.map +0 -1
  237. package/dist/api/updateOrganization.js +0 -74
  238. package/dist/api/updateOrganization.js.map +0 -1
  239. package/dist/cjs/api/createOrganization.cjs +0 -82
  240. package/dist/cjs/api/createOrganization.cjs.map +0 -1
  241. package/dist/cjs/api/getAllOrganizations.cjs +0 -73
  242. package/dist/cjs/api/getAllOrganizations.cjs.map +0 -1
  243. package/dist/cjs/api/getMeOrganizations.cjs +0 -77
  244. package/dist/cjs/api/getMeOrganizations.cjs.map +0 -1
  245. package/dist/cjs/api/getOrganization.cjs +0 -69
  246. package/dist/cjs/api/getOrganization.cjs.map +0 -1
  247. package/dist/cjs/api/getSchemas.cjs +0 -67
  248. package/dist/cjs/api/getSchemas.cjs.map +0 -1
  249. package/dist/cjs/api/updateOrganization.cjs +0 -76
  250. package/dist/cjs/api/updateOrganization.cjs.map +0 -1
  251. package/dist/cjs/components/adapters/CheckboxInput.cjs +0 -30
  252. package/dist/cjs/components/adapters/CheckboxInput.cjs.map +0 -1
  253. package/dist/cjs/components/adapters/DateInput.cjs +0 -30
  254. package/dist/cjs/components/adapters/DateInput.cjs.map +0 -1
  255. package/dist/cjs/components/adapters/DividerComponent.cjs +0 -24
  256. package/dist/cjs/components/adapters/DividerComponent.cjs.map +0 -1
  257. package/dist/cjs/components/adapters/EmailInput.cjs +0 -30
  258. package/dist/cjs/components/adapters/EmailInput.cjs.map +0 -1
  259. package/dist/cjs/components/adapters/FormContainer.cjs +0 -36
  260. package/dist/cjs/components/adapters/FormContainer.cjs.map +0 -1
  261. package/dist/cjs/components/adapters/NumberInput.cjs +0 -30
  262. package/dist/cjs/components/adapters/NumberInput.cjs.map +0 -1
  263. package/dist/cjs/components/adapters/PasswordInput.cjs +0 -52
  264. package/dist/cjs/components/adapters/PasswordInput.cjs.map +0 -1
  265. package/dist/cjs/components/adapters/SelectInput.cjs +0 -36
  266. package/dist/cjs/components/adapters/SelectInput.cjs.map +0 -1
  267. package/dist/cjs/components/adapters/SubmitButton.cjs +0 -61
  268. package/dist/cjs/components/adapters/SubmitButton.cjs.map +0 -1
  269. package/dist/cjs/components/adapters/TelephoneInput.cjs +0 -32
  270. package/dist/cjs/components/adapters/TelephoneInput.cjs.map +0 -1
  271. package/dist/cjs/components/adapters/TextInput.cjs +0 -30
  272. package/dist/cjs/components/adapters/TextInput.cjs.map +0 -1
  273. package/dist/cjs/components/adapters/Typography.cjs +0 -60
  274. package/dist/cjs/components/adapters/Typography.cjs.map +0 -1
  275. package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs +0 -34
  276. package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs.map +0 -1
  277. package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs +0 -58
  278. package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs.map +0 -1
  279. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs +0 -183
  280. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs.map +0 -1
  281. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs +0 -150
  282. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs.map +0 -1
  283. package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs +0 -90
  284. package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs.map +0 -1
  285. package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs +0 -41
  286. package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs.map +0 -1
  287. package/dist/cjs/components/presentation/Organization/Organization.cjs +0 -49
  288. package/dist/cjs/components/presentation/Organization/Organization.cjs.map +0 -1
  289. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs +0 -257
  290. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs.map +0 -1
  291. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs +0 -236
  292. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs.map +0 -1
  293. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs +0 -86
  294. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs.map +0 -1
  295. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs +0 -75
  296. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs.map +0 -1
  297. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs +0 -328
  298. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs.map +0 -1
  299. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs +0 -166
  300. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs.map +0 -1
  301. package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs +0 -126
  302. package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs.map +0 -1
  303. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs +0 -288
  304. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs.map +0 -1
  305. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs +0 -237
  306. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs.map +0 -1
  307. package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs +0 -127
  308. package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs.map +0 -1
  309. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/AcceptInvite.cjs.map +0 -1
  310. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.cjs.map +0 -1
  311. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.cjs.map +0 -1
  312. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.cjs.map +0 -1
  313. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.cjs.map +0 -1
  314. package/dist/cjs/components/presentation/auth/InviteUser/v2/InviteUser.cjs.map +0 -1
  315. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs +0 -183
  316. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs.map +0 -1
  317. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs +0 -128
  318. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs.map +0 -1
  319. package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs +0 -293
  320. package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs.map +0 -1
  321. package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs +0 -43
  322. package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs.map +0 -1
  323. package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs +0 -163
  324. package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs.map +0 -1
  325. package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs +0 -378
  326. package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs.map +0 -1
  327. package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs +0 -78
  328. package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs.map +0 -1
  329. package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs +0 -734
  330. package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs.map +0 -1
  331. package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs +0 -68
  332. package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs.map +0 -1
  333. package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs +0 -59
  334. package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs.map +0 -1
  335. package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs +0 -139
  336. package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs.map +0 -1
  337. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs +0 -147
  338. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs.map +0 -1
  339. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs +0 -68
  340. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs.map +0 -1
  341. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs +0 -38
  342. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs.map +0 -1
  343. package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs +0 -68
  344. package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs.map +0 -1
  345. package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs +0 -60
  346. package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs.map +0 -1
  347. package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs +0 -330
  348. package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs.map +0 -1
  349. package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs +0 -560
  350. package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs.map +0 -1
  351. package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs +0 -451
  352. package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs.map +0 -1
  353. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs +0 -54
  354. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs.map +0 -1
  355. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs +0 -164
  356. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs.map +0 -1
  357. package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs +0 -679
  358. package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs.map +0 -1
  359. package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs +0 -80
  360. package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs.map +0 -1
  361. package/dist/cjs/components/primitives/Icons/Building.cjs +0 -75
  362. package/dist/cjs/components/primitives/Icons/Building.cjs.map +0 -1
  363. package/dist/cjs/contexts/Branding/BrandingContext.cjs +0 -12
  364. package/dist/cjs/contexts/Branding/BrandingContext.cjs.map +0 -1
  365. package/dist/cjs/contexts/Branding/BrandingProvider.cjs +0 -96
  366. package/dist/cjs/contexts/Branding/BrandingProvider.cjs.map +0 -1
  367. package/dist/cjs/contexts/Branding/useBrandingContext.cjs +0 -40
  368. package/dist/cjs/contexts/Branding/useBrandingContext.cjs.map +0 -1
  369. package/dist/cjs/contexts/Organization/OrganizationContext.cjs +0 -27
  370. package/dist/cjs/contexts/Organization/OrganizationContext.cjs.map +0 -1
  371. package/dist/cjs/contexts/Organization/OrganizationProvider.cjs +0 -97
  372. package/dist/cjs/contexts/Organization/OrganizationProvider.cjs.map +0 -1
  373. package/dist/cjs/contexts/Organization/useOrganization.cjs +0 -100
  374. package/dist/cjs/contexts/Organization/useOrganization.cjs.map +0 -1
  375. package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs +0 -190
  376. package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs.map +0 -1
  377. package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs +0 -108
  378. package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs.map +0 -1
  379. package/dist/cjs/hooks/useBranding.cjs +0 -71
  380. package/dist/cjs/hooks/useBranding.cjs.map +0 -1
  381. package/dist/cjs/hooks/v2/useOAuthCallback.cjs.map +0 -1
  382. package/dist/cjs/utils/v2/buildThemeConfigFromFlowMeta.cjs.map +0 -1
  383. package/dist/cjs/utils/v2/flowTransformer.cjs.map +0 -1
  384. package/dist/cjs/utils/v2/getAuthComponentHeadings.cjs.map +0 -1
  385. package/dist/cjs/utils/v2/passkey.cjs.map +0 -1
  386. package/dist/cjs/utils/v2/resolveTranslationsInArray.cjs.map +0 -1
  387. package/dist/cjs/utils/v2/resolveTranslationsInObject.cjs.map +0 -1
  388. package/dist/components/adapters/CheckboxInput.d.ts +0 -25
  389. package/dist/components/adapters/CheckboxInput.d.ts.map +0 -1
  390. package/dist/components/adapters/CheckboxInput.js +0 -28
  391. package/dist/components/adapters/CheckboxInput.js.map +0 -1
  392. package/dist/components/adapters/DateInput.d.ts +0 -25
  393. package/dist/components/adapters/DateInput.d.ts.map +0 -1
  394. package/dist/components/adapters/DateInput.js +0 -28
  395. package/dist/components/adapters/DateInput.js.map +0 -1
  396. package/dist/components/adapters/DividerComponent.d.ts +0 -25
  397. package/dist/components/adapters/DividerComponent.d.ts.map +0 -1
  398. package/dist/components/adapters/DividerComponent.js +0 -22
  399. package/dist/components/adapters/DividerComponent.js.map +0 -1
  400. package/dist/components/adapters/EmailInput.d.ts +0 -25
  401. package/dist/components/adapters/EmailInput.d.ts.map +0 -1
  402. package/dist/components/adapters/EmailInput.js +0 -28
  403. package/dist/components/adapters/EmailInput.js.map +0 -1
  404. package/dist/components/adapters/FormContainer.d.ts +0 -25
  405. package/dist/components/adapters/FormContainer.d.ts.map +0 -1
  406. package/dist/components/adapters/FormContainer.js +0 -34
  407. package/dist/components/adapters/FormContainer.js.map +0 -1
  408. package/dist/components/adapters/NumberInput.d.ts +0 -25
  409. package/dist/components/adapters/NumberInput.d.ts.map +0 -1
  410. package/dist/components/adapters/NumberInput.js +0 -28
  411. package/dist/components/adapters/NumberInput.js.map +0 -1
  412. package/dist/components/adapters/PasswordInput.d.ts +0 -25
  413. package/dist/components/adapters/PasswordInput.d.ts.map +0 -1
  414. package/dist/components/adapters/PasswordInput.js +0 -50
  415. package/dist/components/adapters/PasswordInput.js.map +0 -1
  416. package/dist/components/adapters/SelectInput.d.ts +0 -25
  417. package/dist/components/adapters/SelectInput.d.ts.map +0 -1
  418. package/dist/components/adapters/SelectInput.js +0 -34
  419. package/dist/components/adapters/SelectInput.js.map +0 -1
  420. package/dist/components/adapters/SocialButton.d.ts +0 -25
  421. package/dist/components/adapters/SocialButton.d.ts.map +0 -1
  422. package/dist/components/adapters/SubmitButton.d.ts +0 -25
  423. package/dist/components/adapters/SubmitButton.d.ts.map +0 -1
  424. package/dist/components/adapters/SubmitButton.js +0 -59
  425. package/dist/components/adapters/SubmitButton.js.map +0 -1
  426. package/dist/components/adapters/TelephoneInput.d.ts +0 -25
  427. package/dist/components/adapters/TelephoneInput.d.ts.map +0 -1
  428. package/dist/components/adapters/TelephoneInput.js +0 -30
  429. package/dist/components/adapters/TelephoneInput.js.map +0 -1
  430. package/dist/components/adapters/TextInput.d.ts +0 -25
  431. package/dist/components/adapters/TextInput.d.ts.map +0 -1
  432. package/dist/components/adapters/TextInput.js +0 -28
  433. package/dist/components/adapters/TextInput.js.map +0 -1
  434. package/dist/components/adapters/Typography.d.ts +0 -25
  435. package/dist/components/adapters/Typography.d.ts.map +0 -1
  436. package/dist/components/adapters/Typography.js +0 -58
  437. package/dist/components/adapters/Typography.js.map +0 -1
  438. package/dist/components/control/OrganizationContext/OrganizationContext.d.ts +0 -40
  439. package/dist/components/control/OrganizationContext/OrganizationContext.d.ts.map +0 -1
  440. package/dist/components/control/OrganizationContext/OrganizationContext.js +0 -32
  441. package/dist/components/control/OrganizationContext/OrganizationContext.js.map +0 -1
  442. package/dist/components/control/OrganizationContext/OrganizationContextController.d.ts +0 -35
  443. package/dist/components/control/OrganizationContext/OrganizationContextController.d.ts.map +0 -1
  444. package/dist/components/control/OrganizationContext/OrganizationContextController.js +0 -55
  445. package/dist/components/control/OrganizationContext/OrganizationContextController.js.map +0 -1
  446. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.d.ts +0 -60
  447. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.d.ts.map +0 -1
  448. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js +0 -178
  449. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js.map +0 -1
  450. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.d.ts +0 -27
  451. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.d.ts.map +0 -1
  452. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js +0 -147
  453. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js.map +0 -1
  454. package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts +0 -68
  455. package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts.map +0 -1
  456. package/dist/components/presentation/CreateOrganization/CreateOrganization.js +0 -87
  457. package/dist/components/presentation/CreateOrganization/CreateOrganization.js.map +0 -1
  458. package/dist/components/presentation/Organization/BaseOrganization.d.ts +0 -67
  459. package/dist/components/presentation/Organization/BaseOrganization.d.ts.map +0 -1
  460. package/dist/components/presentation/Organization/BaseOrganization.js +0 -39
  461. package/dist/components/presentation/Organization/BaseOrganization.js.map +0 -1
  462. package/dist/components/presentation/Organization/Organization.d.ts +0 -67
  463. package/dist/components/presentation/Organization/Organization.d.ts.map +0 -1
  464. package/dist/components/presentation/Organization/Organization.js +0 -47
  465. package/dist/components/presentation/Organization/Organization.js.map +0 -1
  466. package/dist/components/presentation/OrganizationList/BaseOrganizationList.d.ts +0 -135
  467. package/dist/components/presentation/OrganizationList/BaseOrganizationList.d.ts.map +0 -1
  468. package/dist/components/presentation/OrganizationList/BaseOrganizationList.js +0 -252
  469. package/dist/components/presentation/OrganizationList/BaseOrganizationList.js.map +0 -1
  470. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.d.ts +0 -27
  471. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.d.ts.map +0 -1
  472. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js +0 -233
  473. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js.map +0 -1
  474. package/dist/components/presentation/OrganizationList/OrganizationList.d.ts +0 -93
  475. package/dist/components/presentation/OrganizationList/OrganizationList.d.ts.map +0 -1
  476. package/dist/components/presentation/OrganizationList/OrganizationList.js +0 -82
  477. package/dist/components/presentation/OrganizationList/OrganizationList.js.map +0 -1
  478. package/dist/components/presentation/OrganizationList/OrganizationList.styles.d.ts +0 -27
  479. package/dist/components/presentation/OrganizationList/OrganizationList.styles.d.ts.map +0 -1
  480. package/dist/components/presentation/OrganizationList/OrganizationList.styles.js +0 -72
  481. package/dist/components/presentation/OrganizationList/OrganizationList.styles.js.map +0 -1
  482. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts +0 -160
  483. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts.map +0 -1
  484. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js +0 -323
  485. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js.map +0 -1
  486. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.d.ts +0 -27
  487. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.d.ts.map +0 -1
  488. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js +0 -163
  489. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js.map +0 -1
  490. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.d.ts +0 -120
  491. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.d.ts.map +0 -1
  492. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js +0 -122
  493. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js.map +0 -1
  494. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts +0 -149
  495. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts.map +0 -1
  496. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js +0 -282
  497. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js.map +0 -1
  498. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.d.ts +0 -27
  499. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.d.ts.map +0 -1
  500. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js +0 -234
  501. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js.map +0 -1
  502. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts +0 -71
  503. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts.map +0 -1
  504. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js +0 -124
  505. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js.map +0 -1
  506. package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.d.ts.map +0 -1
  507. package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.js.map +0 -1
  508. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.d.ts.map +0 -1
  509. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.js.map +0 -1
  510. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.d.ts.map +0 -1
  511. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.js.map +0 -1
  512. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.d.ts.map +0 -1
  513. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.js.map +0 -1
  514. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.d.ts.map +0 -1
  515. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.js.map +0 -1
  516. package/dist/components/presentation/auth/InviteUser/v2/InviteUser.d.ts.map +0 -1
  517. package/dist/components/presentation/auth/InviteUser/v2/InviteUser.js.map +0 -1
  518. package/dist/components/presentation/auth/OrganizationUnitPicker/index.d.ts +0 -20
  519. package/dist/components/presentation/auth/OrganizationUnitPicker/index.d.ts.map +0 -1
  520. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.d.ts +0 -30
  521. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.d.ts.map +0 -1
  522. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js +0 -179
  523. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js.map +0 -1
  524. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.d.ts +0 -21
  525. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.d.ts.map +0 -1
  526. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js +0 -125
  527. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js.map +0 -1
  528. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.d.ts +0 -74
  529. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.d.ts.map +0 -1
  530. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js +0 -288
  531. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js.map +0 -1
  532. package/dist/components/presentation/auth/Recovery/v1/Recovery.d.ts +0 -26
  533. package/dist/components/presentation/auth/Recovery/v1/Recovery.d.ts.map +0 -1
  534. package/dist/components/presentation/auth/Recovery/v1/Recovery.js +0 -40
  535. package/dist/components/presentation/auth/Recovery/v1/Recovery.js.map +0 -1
  536. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.d.ts +0 -46
  537. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.d.ts.map +0 -1
  538. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js +0 -160
  539. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js.map +0 -1
  540. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts +0 -83
  541. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts.map +0 -1
  542. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js +0 -373
  543. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js.map +0 -1
  544. package/dist/components/presentation/auth/Recovery/v2/Recovery.d.ts +0 -56
  545. package/dist/components/presentation/auth/Recovery/v2/Recovery.d.ts.map +0 -1
  546. package/dist/components/presentation/auth/Recovery/v2/Recovery.js +0 -74
  547. package/dist/components/presentation/auth/Recovery/v2/Recovery.js.map +0 -1
  548. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.d.ts +0 -131
  549. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.d.ts.map +0 -1
  550. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js +0 -729
  551. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js.map +0 -1
  552. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.d.ts +0 -26
  553. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.d.ts.map +0 -1
  554. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js +0 -64
  555. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js.map +0 -1
  556. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.d.ts +0 -26
  557. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.d.ts.map +0 -1
  558. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js +0 -55
  559. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js.map +0 -1
  560. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.d.ts +0 -27
  561. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.d.ts.map +0 -1
  562. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js +0 -136
  563. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js.map +0 -1
  564. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.d.ts +0 -77
  565. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.d.ts.map +0 -1
  566. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js +0 -143
  567. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js.map +0 -1
  568. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.d.ts +0 -26
  569. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.d.ts.map +0 -1
  570. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js +0 -64
  571. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js.map +0 -1
  572. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.d.ts +0 -26
  573. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.d.ts.map +0 -1
  574. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js +0 -36
  575. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js.map +0 -1
  576. package/dist/components/presentation/auth/SignIn/v1/options/Totp.d.ts +0 -26
  577. package/dist/components/presentation/auth/SignIn/v1/options/Totp.d.ts.map +0 -1
  578. package/dist/components/presentation/auth/SignIn/v1/options/Totp.js +0 -64
  579. package/dist/components/presentation/auth/SignIn/v1/options/Totp.js.map +0 -1
  580. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.d.ts +0 -26
  581. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.d.ts.map +0 -1
  582. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js +0 -56
  583. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js.map +0 -1
  584. package/dist/components/presentation/auth/SignIn/v1/types.d.ts +0 -125
  585. package/dist/components/presentation/auth/SignIn/v1/types.d.ts.map +0 -1
  586. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts +0 -222
  587. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts.map +0 -1
  588. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js +0 -325
  589. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js.map +0 -1
  590. package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts +0 -165
  591. package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts.map +0 -1
  592. package/dist/components/presentation/auth/SignIn/v2/SignIn.js +0 -556
  593. package/dist/components/presentation/auth/SignIn/v2/SignIn.js.map +0 -1
  594. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.d.ts +0 -174
  595. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.d.ts.map +0 -1
  596. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js +0 -446
  597. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js.map +0 -1
  598. package/dist/components/presentation/auth/SignUp/v1/SignUp.d.ts +0 -39
  599. package/dist/components/presentation/auth/SignUp/v1/SignUp.d.ts.map +0 -1
  600. package/dist/components/presentation/auth/SignUp/v1/SignUp.js +0 -51
  601. package/dist/components/presentation/auth/SignUp/v1/SignUp.js.map +0 -1
  602. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.d.ts +0 -46
  603. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.d.ts.map +0 -1
  604. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js +0 -160
  605. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js.map +0 -1
  606. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts +0 -186
  607. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts.map +0 -1
  608. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js +0 -674
  609. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js.map +0 -1
  610. package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts +0 -39
  611. package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts.map +0 -1
  612. package/dist/components/presentation/auth/SignUp/v2/SignUp.js +0 -77
  613. package/dist/components/presentation/auth/SignUp/v2/SignUp.js.map +0 -1
  614. package/dist/components/primitives/Icons/Building.js +0 -73
  615. package/dist/components/primitives/Icons/Building.js.map +0 -1
  616. package/dist/contexts/Branding/BrandingContext.d.ts +0 -53
  617. package/dist/contexts/Branding/BrandingContext.d.ts.map +0 -1
  618. package/dist/contexts/Branding/BrandingContext.js +0 -10
  619. package/dist/contexts/Branding/BrandingContext.js.map +0 -1
  620. package/dist/contexts/Branding/BrandingProvider.d.ts +0 -89
  621. package/dist/contexts/Branding/BrandingProvider.d.ts.map +0 -1
  622. package/dist/contexts/Branding/BrandingProvider.js +0 -92
  623. package/dist/contexts/Branding/BrandingProvider.js.map +0 -1
  624. package/dist/contexts/Branding/useBrandingContext.d.ts +0 -45
  625. package/dist/contexts/Branding/useBrandingContext.d.ts.map +0 -1
  626. package/dist/contexts/Branding/useBrandingContext.js +0 -38
  627. package/dist/contexts/Branding/useBrandingContext.js.map +0 -1
  628. package/dist/contexts/Organization/OrganizationContext.d.ts +0 -41
  629. package/dist/contexts/Organization/OrganizationContext.d.ts.map +0 -1
  630. package/dist/contexts/Organization/OrganizationContext.js +0 -25
  631. package/dist/contexts/Organization/OrganizationContext.js.map +0 -1
  632. package/dist/contexts/Organization/OrganizationProvider.d.ts +0 -94
  633. package/dist/contexts/Organization/OrganizationProvider.d.ts.map +0 -1
  634. package/dist/contexts/Organization/OrganizationProvider.js +0 -93
  635. package/dist/contexts/Organization/OrganizationProvider.js.map +0 -1
  636. package/dist/contexts/Organization/useOrganization.d.ts +0 -105
  637. package/dist/contexts/Organization/useOrganization.d.ts.map +0 -1
  638. package/dist/contexts/Organization/useOrganization.js +0 -98
  639. package/dist/contexts/Organization/useOrganization.js.map +0 -1
  640. package/dist/contexts/Theme/v1/ThemeProvider.d.ts +0 -89
  641. package/dist/contexts/Theme/v1/ThemeProvider.d.ts.map +0 -1
  642. package/dist/contexts/Theme/v1/ThemeProvider.js +0 -186
  643. package/dist/contexts/Theme/v1/ThemeProvider.js.map +0 -1
  644. package/dist/contexts/Theme/v2/ThemeProvider.d.ts +0 -58
  645. package/dist/contexts/Theme/v2/ThemeProvider.d.ts.map +0 -1
  646. package/dist/contexts/Theme/v2/ThemeProvider.js +0 -104
  647. package/dist/contexts/Theme/v2/ThemeProvider.js.map +0 -1
  648. package/dist/hooks/useBranding.d.ts +0 -128
  649. package/dist/hooks/useBranding.d.ts.map +0 -1
  650. package/dist/hooks/useBranding.js +0 -69
  651. package/dist/hooks/useBranding.js.map +0 -1
  652. package/dist/hooks/v2/useOAuthCallback.d.ts.map +0 -1
  653. package/dist/hooks/v2/useOAuthCallback.js.map +0 -1
  654. package/dist/utils/v2/buildThemeConfigFromFlowMeta.d.ts.map +0 -1
  655. package/dist/utils/v2/buildThemeConfigFromFlowMeta.js.map +0 -1
  656. package/dist/utils/v2/flowTransformer.d.ts.map +0 -1
  657. package/dist/utils/v2/flowTransformer.js.map +0 -1
  658. package/dist/utils/v2/getAuthComponentHeadings.d.ts.map +0 -1
  659. package/dist/utils/v2/getAuthComponentHeadings.js.map +0 -1
  660. package/dist/utils/v2/passkey.d.ts.map +0 -1
  661. package/dist/utils/v2/passkey.js.map +0 -1
  662. package/dist/utils/v2/resolveTranslationsInArray.d.ts.map +0 -1
  663. package/dist/utils/v2/resolveTranslationsInArray.js.map +0 -1
  664. package/dist/utils/v2/resolveTranslationsInObject.d.ts.map +0 -1
  665. package/dist/utils/v2/resolveTranslationsInObject.js.map +0 -1
  666. /package/dist/components/presentation/auth/AcceptInvite/{v2/AcceptInvite.d.ts → AcceptInvite.d.ts} +0 -0
  667. /package/dist/components/presentation/auth/AcceptInvite/{v2/BaseAcceptInvite.styles.d.ts → BaseAcceptInvite.styles.d.ts} +0 -0
  668. /package/dist/components/presentation/auth/InviteUser/{v2/BaseInviteUser.styles.d.ts → BaseInviteUser.styles.d.ts} +0 -0
  669. /package/dist/components/presentation/auth/InviteUser/{v2/InviteUser.d.ts → InviteUser.d.ts} +0 -0
  670. /package/dist/hooks/{v2/useOAuthCallback.d.ts → useOAuthCallback.d.ts} +0 -0
  671. /package/dist/utils/{v2/buildThemeConfigFromFlowMeta.d.ts → buildThemeConfigFromFlowMeta.d.ts} +0 -0
  672. /package/dist/utils/{v2/passkey.d.ts → passkey.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseSignIn.cjs","names":["logger: ReturnType<typeof createPackageComponentLogger>","ApplicationNativeAuthenticationConstants","EmbeddedSignInFlowAuthenticatorPromptType","HIDDEN_AUTHENTICATORS: string[]","BaseSignInContent: FC<BaseSignInProps>","useTheme","useTranslation","useFlow","styles: ReturnType<typeof useStyles>","useStyles","isLoading: boolean","reRenderCheckRef: RefObject<boolean>","useForm","setupFormFields: any","initialValues: Record<string, string>","EmbeddedSignInFlowStepType","responseAuthenticator: any","redirectUrl: string","popup: Window | null","messageHandler: any","popupMonitor: any","expectedOrigin: string","popupUrl: string","url: URL","code: string | null","state: string | null","submitResponse: any","EmbeddedSignInFlowStatus","response: any","nextStepResponse: any","nextAuthenticator: any","ThunderIDAPIError","challengeData: any","tokenResponse: any","errorMessage: string","formResponse: any","hasMultipleOptions: any","getAvailableAuthenticators: any","containerClasses: string","inputClasses: string","buttonClasses: string","errorClasses: string","messageClasses: string","authenticator: any","CardPrimitive","Spinner","Typography","availableAuthenticators: EmbeddedSignInFlowAuthenticator[]","userPromptAuthenticators: any[]","optionAuthenticators: any[]","AlertPrimitive","messageVariant: AlertVariant","lowerType: string","Divider","formData: Record<string, string>","createSignInOptionFromAuthenticator","BaseSignIn: FC<BaseSignInProps>","Logo","FlowProvider"],"sources":["../../../../../../../src/components/presentation/auth/SignIn/v1/BaseSignIn.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {cx} from '@emotion/css';\nimport {\n EmbeddedSignInFlowAuthenticator,\n EmbeddedSignInFlowInitiateResponse,\n EmbeddedSignInFlowHandleResponse,\n EmbeddedSignInFlowStepType,\n EmbeddedSignInFlowStatus,\n EmbeddedSignInFlowAuthenticatorPromptType,\n ApplicationNativeAuthenticationConstants,\n ThunderIDAPIError,\n withVendorCSSClassPrefix,\n EmbeddedSignInFlowHandleRequestPayload,\n EmbeddedFlowExecuteRequestConfig,\n handleWebAuthnAuthentication,\n createPackageComponentLogger,\n} from '@thunderid/browser';\nimport {FC, FormEvent, RefObject, useEffect, useState, useCallback, useRef, ReactElement} from 'react';\nimport {createSignInOptionFromAuthenticator} from './options/SignInOptionFactory';\nimport FlowProvider from '../../../../../contexts/Flow/FlowProvider';\nimport useFlow from '../../../../../contexts/Flow/useFlow';\nimport useTheme from '../../../../../contexts/Theme/useTheme';\nimport {useForm, FormField} from '../../../../../hooks/useForm';\nimport useTranslation from '../../../../../hooks/useTranslation';\nimport AlertPrimitive, {AlertVariant} from '../../../../primitives/Alert/Alert';\nimport CardPrimitive, {CardProps} from '../../../../primitives/Card/Card';\nimport Divider from '../../../../primitives/Divider/Divider';\nimport Logo from '../../../../primitives/Logo/Logo';\nimport Spinner from '../../../../primitives/Spinner/Spinner';\nimport Typography from '../../../../primitives/Typography/Typography';\nimport useStyles from '../BaseSignIn.styles';\n\nconst logger: ReturnType<typeof createPackageComponentLogger> = createPackageComponentLogger(\n '@thunderid/react',\n 'BaseSignIn',\n);\n\n/**\n * Check if the authenticator is a passkey/FIDO authenticator\n */\nconst isPasskeyAuthenticator = (authenticator: EmbeddedSignInFlowAuthenticator): boolean =>\n authenticator.authenticatorId === ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Passkey &&\n authenticator.metadata?.promptType === EmbeddedSignInFlowAuthenticatorPromptType.InternalPrompt &&\n (authenticator.metadata as any)?.additionalData?.challengeData;\n\n/**\n * Props for the BaseSignIn component.\n */\nexport interface BaseSignInProps {\n afterSignInUrl?: string;\n\n /**\n * Custom CSS class name for the submit button.\n */\n buttonClassName?: string;\n\n /**\n * Custom CSS class name for the form container.\n */\n className?: string;\n\n /**\n * Custom CSS class name for error messages.\n */\n errorClassName?: string;\n\n /**\n * Custom CSS class name for form inputs.\n */\n inputClassName?: string;\n\n /**\n * Flag to determine the component is ready to be rendered.\n */\n isLoading?: boolean;\n\n /**\n * Custom CSS class name for info messages.\n */\n messageClassName?: string;\n\n /**\n * Callback function called when authentication fails.\n * @param error - The error that occurred during authentication.\n */\n onError?: (error: Error) => void;\n\n /**\n * Callback function called when authentication flow status changes.\n * @param response - The current authentication response.\n */\n onFlowChange?: (response: EmbeddedSignInFlowInitiateResponse | EmbeddedSignInFlowHandleResponse) => void;\n\n /**\n * Function to initialize authentication flow.\n * @returns Promise resolving to the initial authentication response.\n */\n onInitialize?: () => Promise<EmbeddedSignInFlowInitiateResponse>;\n\n /**\n * Function to handle authentication steps.\n * @param payload - The authentication payload.\n * @returns Promise resolving to the authentication response.\n */\n onSubmit?: (\n payload: EmbeddedSignInFlowHandleRequestPayload,\n request: EmbeddedFlowExecuteRequestConfig,\n ) => Promise<EmbeddedSignInFlowHandleResponse>;\n\n /**\n * Callback function called when authentication is successful.\n * @param authData - The authentication data returned upon successful completion.\n */\n onSuccess?: (authData: Record<string, any>) => void;\n\n /**\n * Whether to show the logo.\n */\n showLogo?: boolean;\n /**\n * Whether to show the subtitle.\n */\n showSubtitle?: boolean;\n\n /**\n * Whether to show the title.\n */\n showTitle?: boolean;\n\n /**\n * Size variant for the component.\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Theme variant for the component.\n */\n variant?: CardProps['variant'];\n}\n\n/**\n * `T3JnYW5pemF0aW9uQXV0aGVudGljYXRvcjpTU08` - OrganizationSSO\n * Currently, `App-Native Authentication` doesn't support organization SSO.\n * Tracker: TODO: Create `product-is` issue for this.\n */\nconst HIDDEN_AUTHENTICATORS: string[] = ['T3JnYW5pemF0aW9uQXV0aGVudGljYXRvcjpTU08'];\n\n/**\n * Internal component that consumes FlowContext and renders the sign-in UI.\n */\nconst BaseSignInContent: FC<BaseSignInProps> = ({\n afterSignInUrl,\n onInitialize,\n isLoading: externalIsLoading,\n onSubmit,\n onSuccess,\n onError,\n onFlowChange,\n className = '',\n inputClassName = '',\n buttonClassName = '',\n errorClassName = '',\n messageClassName = '',\n size = 'medium',\n variant = 'outlined',\n showTitle = true,\n showSubtitle = true,\n}: BaseSignInProps): ReactElement => {\n const {theme} = useTheme();\n const {t} = useTranslation();\n const {subtitle: flowSubtitle, title: flowTitle, messages: flowMessages} = useFlow();\n const styles: ReturnType<typeof useStyles> = useStyles(theme, theme.vars.colors.text.primary);\n\n const [isSignInInitializationRequestLoading, setIsSignInInitializationRequestLoading] = useState(false);\n const [isInitialized, setIsInitialized] = useState(false);\n const [currentFlow, setCurrentFlow] = useState<EmbeddedSignInFlowInitiateResponse | null>(null);\n const [currentAuthenticator, setCurrentAuthenticator] = useState<EmbeddedSignInFlowAuthenticator | null>(null);\n const [error, setError] = useState<string | null>(null);\n const [messages, setMessages] = useState<{message: string; type: string}[]>([]);\n\n const isLoading: boolean = externalIsLoading || isSignInInitializationRequestLoading;\n\n const reRenderCheckRef: RefObject<boolean> = useRef<boolean>(false);\n\n const formFields: FormField[] =\n currentAuthenticator?.metadata?.params?.map((param: any) => ({\n initialValue: '',\n name: param.param,\n required: currentAuthenticator.requiredParams.includes(param.param),\n validator: (value: string): string | null => {\n if (currentAuthenticator.requiredParams.includes(param.param) && (!value || value.trim() === '')) {\n return t('validations.required.field.error');\n }\n return null;\n },\n })) || [];\n\n const form: any = useForm<Record<string, string>>({\n fields: formFields,\n initialValues: {},\n requiredMessage: t('validations.required.field.error'),\n validateOnBlur: true,\n validateOnChange: false,\n });\n\n const {\n values: formValues,\n touched: touchedFields,\n setValue: setFormValue,\n setTouched: setFormTouched,\n validateForm,\n touchAllFields,\n reset: resetForm,\n } = form;\n\n /**\n * Setup form fields based on the current authenticator.\n */\n const setupFormFields: any = useCallback(\n (authenticator: EmbeddedSignInFlowAuthenticator): void => {\n const initialValues: Record<string, string> = {};\n authenticator.metadata?.params?.forEach((param: any) => {\n initialValues[param.param] = '';\n });\n\n // Reset form with new values\n resetForm();\n\n // Set initial values for all fields\n Object.keys(initialValues).forEach((key: string) => {\n setFormValue(key, initialValues[key]);\n });\n },\n [resetForm, setFormValue],\n );\n\n /**\n * Check if the response contains a redirection URL and perform the redirect if necessary.\n * @param response - The authentication response\n * @returns true if a redirect was performed, false otherwise\n */\n const handleRedirectionIfNeeded = (response: EmbeddedSignInFlowHandleResponse): boolean => {\n if (\n response &&\n 'nextStep' in response &&\n response.nextStep &&\n (response.nextStep as any).stepType === EmbeddedSignInFlowStepType.AuthenticatorPrompt &&\n (response.nextStep as any).authenticators?.length === 1\n ) {\n const responseAuthenticator: any = (response.nextStep as any).authenticators[0];\n if (\n responseAuthenticator.metadata?.promptType === EmbeddedSignInFlowAuthenticatorPromptType.RedirectionPrompt &&\n responseAuthenticator.metadata?.additionalData?.redirectUrl\n ) {\n /**\n * Open a popup window to handle redirection prompts\n */\n const redirectUrl: string = responseAuthenticator.metadata?.additionalData?.redirectUrl;\n const popup: Window | null = window.open(\n redirectUrl,\n 'oauth_popup',\n 'width=500,height=600,scrollbars=yes,resizable=yes',\n );\n\n if (!popup) {\n logger.error('Failed to open popup window');\n return false;\n }\n\n /**\n * Forward declarations for mutually referencing variables.\n * `messageHandler`, `cleanup`, and `popupMonitor` reference each other,\n * so they are declared with `let` first and assigned below.\n */\n let messageHandler: any;\n let popupMonitor: any;\n\n const cleanup = (): void => {\n window.removeEventListener('message', messageHandler);\n if (popupMonitor) {\n clearInterval(popupMonitor);\n }\n };\n\n /**\n * Add an event listener to the window to capture the message from the popup\n */\n messageHandler = async function messageEventHandler(event: MessageEvent): Promise<void> {\n /**\n * Check if the message is from our popup window\n */\n if (event.source !== popup) {\n // Don't log every message rejection to reduce noise\n if (event.source !== window && event.source !== window.parent) {\n // TODO: Add logs\n }\n return;\n }\n\n /**\n * Check the origin of the message to ensure it's from a trusted source\n */\n const expectedOrigin: string = afterSignInUrl ? new URL(afterSignInUrl).origin : window.location.origin;\n if (event.origin !== expectedOrigin && event.origin !== window.location.origin) {\n return;\n }\n\n const {code, state} = event.data;\n\n if (code && state) {\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow!.flowId,\n selectedAuthenticator: {\n authenticatorId: responseAuthenticator.authenticatorId,\n params: {\n code,\n state,\n },\n },\n };\n\n await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n\n popup.close();\n cleanup();\n } else {\n // TODO: Add logs\n }\n };\n\n window.addEventListener('message', messageHandler);\n\n /**\n * Monitor popup for closure and URL changes\n */\n let hasProcessedCallback = false; // Prevent multiple processing\n popupMonitor = setInterval(async (): Promise<void> => {\n try {\n if (popup.closed) {\n cleanup();\n\n return;\n }\n\n // Skip if we've already processed a callback\n if (hasProcessedCallback) {\n return;\n }\n\n // Try to access popup URL to check for callback\n try {\n const popupUrl: string = popup.location.href;\n\n // Check if we've been redirected to the callback URL\n if (popupUrl && (popupUrl.includes('code=') || popupUrl.includes('error='))) {\n hasProcessedCallback = true; // Set flag to prevent multiple processing\n\n // Parse the URL for OAuth parameters\n const url: URL = new URL(popupUrl);\n const code: string | null = url.searchParams.get('code');\n const state: string | null = url.searchParams.get('state');\n const oauthError: string | null = url.searchParams.get('error');\n\n if (oauthError) {\n logger.error('OAuth error:');\n popup.close();\n cleanup();\n return;\n }\n\n if (code && state) {\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow!.flowId,\n selectedAuthenticator: {\n authenticatorId: responseAuthenticator.authenticatorId,\n params: {\n code,\n state,\n },\n },\n };\n\n const submitResponse: any = await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n\n popup.close();\n\n onFlowChange?.(submitResponse);\n\n if (submitResponse?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(submitResponse.authData);\n }\n }\n }\n } catch (e) {\n // Cross-origin error is expected when popup navigates to OAuth provider\n // This is normal and we can ignore it\n }\n } catch (e) {\n logger.error('Error monitoring popup:');\n }\n }, 1000);\n\n return true;\n }\n }\n return false;\n };\n\n /**\n * Handle form submission.\n */\n const handleSubmit = async (submittedValues: Record<string, string>): Promise<void> => {\n if (!currentFlow || !currentAuthenticator) {\n return;\n }\n\n // Mark all fields as touched before validation\n touchAllFields();\n\n const validation: any = validateForm();\n if (!validation.isValid) {\n return;\n }\n\n setIsSignInInitializationRequestLoading(true);\n setError(null);\n setMessages([]);\n\n try {\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow.flowId,\n selectedAuthenticator: {\n authenticatorId: currentAuthenticator.authenticatorId,\n params: submittedValues,\n },\n };\n\n const response: any = await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n onFlowChange?.(response);\n\n if (response?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(response.authData);\n return;\n }\n\n if (\n response?.flowStatus === EmbeddedSignInFlowStatus.FailCompleted ||\n response?.flowStatus === EmbeddedSignInFlowStatus.FailIncomplete\n ) {\n setError(t('errors.signin.flow.completion.failure'));\n return;\n }\n\n // Check if the response contains a redirection URL and redirect if needed\n if (handleRedirectionIfNeeded(response)) {\n return;\n }\n\n if (response && 'flowId' in response && 'nextStep' in response) {\n const nextStepResponse: any = response;\n setCurrentFlow(nextStepResponse);\n\n if (nextStepResponse.nextStep?.authenticators?.length > 0) {\n if (\n nextStepResponse.nextStep.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n nextStepResponse.nextStep.authenticators.length > 1\n ) {\n setCurrentAuthenticator(null);\n } else {\n const nextAuthenticator: any = nextStepResponse.nextStep.authenticators[0];\n setCurrentAuthenticator(nextAuthenticator);\n setupFormFields(nextAuthenticator);\n }\n }\n\n if (nextStepResponse.nextStep?.messages) {\n setMessages(\n nextStepResponse.nextStep.messages.map((msg: any) => ({\n message: msg.message || '',\n type: msg.type || 'INFO',\n })),\n );\n }\n }\n } catch (err) {\n const errorMessage: string = err instanceof ThunderIDAPIError ? err.message : t('errors.signin.flow.failure');\n setError(errorMessage);\n onError?.(err as Error);\n } finally {\n setIsSignInInitializationRequestLoading(false);\n }\n };\n\n /**\n * Handle authenticator selection for multi-option prompts.\n */\n const handleAuthenticatorSelection = async (\n authenticator: EmbeddedSignInFlowAuthenticator,\n formData?: Record<string, string>,\n ): Promise<void> => {\n if (!currentFlow) {\n return;\n }\n\n // Mark all fields as touched if we have form data (i.e., this is a submission)\n if (formData) {\n touchAllFields();\n }\n\n setIsSignInInitializationRequestLoading(true);\n setError(null);\n setMessages([]);\n\n try {\n // Handle passkey/FIDO authentication\n if (isPasskeyAuthenticator(authenticator)) {\n try {\n const challengeData: any = (authenticator.metadata as any)?.additionalData?.challengeData;\n if (!challengeData) {\n throw new Error('Missing challenge data for passkey authentication');\n }\n\n const tokenResponse: any = await handleWebAuthnAuthentication(challengeData);\n\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow.flowId,\n selectedAuthenticator: {\n authenticatorId: authenticator.authenticatorId,\n params: {\n tokenResponse,\n },\n },\n };\n\n const response: any = await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n onFlowChange?.(response);\n\n if (response?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(response.authData);\n return;\n }\n\n if (\n response?.flowStatus === EmbeddedSignInFlowStatus.FailCompleted ||\n response?.flowStatus === EmbeddedSignInFlowStatus.FailIncomplete\n ) {\n setError(t('errors.signin.flow.passkeys.completion.failure'));\n return;\n }\n\n // Handle next step if authentication is not complete\n if (response && 'flowId' in response && 'nextStep' in response) {\n const nextStepResponse: any = response;\n setCurrentFlow(nextStepResponse);\n\n if (nextStepResponse.nextStep?.authenticators?.length > 0) {\n if (\n nextStepResponse.nextStep.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n nextStepResponse.nextStep.authenticators.length > 1\n ) {\n setCurrentAuthenticator(null);\n } else {\n const nextAuthenticator: any = nextStepResponse.nextStep.authenticators[0];\n\n // Check if the next authenticator is also a passkey - if so, auto-trigger it\n if (isPasskeyAuthenticator(nextAuthenticator)) {\n // Recursively handle the passkey authenticator without showing UI\n handleAuthenticatorSelection(nextAuthenticator);\n return;\n }\n setCurrentAuthenticator(nextAuthenticator);\n setupFormFields(nextAuthenticator);\n }\n }\n\n if (nextStepResponse.nextStep?.messages) {\n setMessages(\n nextStepResponse.nextStep.messages.map((msg: any) => ({\n message: msg.message || '',\n type: msg.type || 'INFO',\n })),\n );\n }\n }\n } catch (passkeyError) {\n logger.error('Passkey authentication error:');\n\n // Provide more context for common errors\n let errorMessage: string =\n passkeyError instanceof Error ? passkeyError.message : t('errors.signin.flow.passkeys.failure');\n\n // Add additional context for security errors\n if (passkeyError instanceof Error && passkeyError.message.includes('security')) {\n errorMessage +=\n ' This may be due to browser security settings, an insecure connection, or device restrictions.';\n }\n\n setError(errorMessage);\n }\n } else if (authenticator.metadata?.promptType === EmbeddedSignInFlowAuthenticatorPromptType.RedirectionPrompt) {\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow.flowId,\n selectedAuthenticator: {\n authenticatorId: authenticator.authenticatorId,\n params: {},\n },\n };\n\n const response: any = await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n onFlowChange?.(response);\n\n if (response?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(response.authData);\n return;\n }\n\n // Check if the response contains a redirection URL and redirect if needed\n if (handleRedirectionIfNeeded(response)) {\n /* empty - redirect handled */\n }\n } else if (formData) {\n const validation: any = validateForm();\n if (!validation.isValid) {\n return;\n }\n\n const formPayload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow.flowId,\n selectedAuthenticator: {\n authenticatorId: authenticator.authenticatorId,\n params: formData,\n },\n };\n\n const formResponse: any = await onSubmit!(formPayload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n onFlowChange?.(formResponse);\n\n if (formResponse?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(formResponse.authData);\n return;\n }\n\n if (\n formResponse?.flowStatus === EmbeddedSignInFlowStatus.FailCompleted ||\n formResponse?.flowStatus === EmbeddedSignInFlowStatus.FailIncomplete\n ) {\n setError('Authentication failed. Please check your credentials and try again.');\n return;\n }\n\n // Check if the response contains a redirection URL and redirect if needed\n if (handleRedirectionIfNeeded(formResponse)) {\n return;\n }\n\n if (formResponse && 'flowId' in formResponse && 'nextStep' in formResponse) {\n const nextStepResponse: any = formResponse;\n setCurrentFlow(nextStepResponse);\n\n if (nextStepResponse.nextStep?.authenticators?.length > 0) {\n if (\n nextStepResponse.nextStep.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n nextStepResponse.nextStep.authenticators.length > 1\n ) {\n setCurrentAuthenticator(null);\n } else {\n const nextAuthenticator: any = nextStepResponse.nextStep.authenticators[0];\n\n // Check if the next authenticator is a passkey - if so, auto-trigger it\n if (isPasskeyAuthenticator(nextAuthenticator)) {\n // Recursively handle the passkey authenticator without showing UI\n handleAuthenticatorSelection(nextAuthenticator);\n return;\n }\n setCurrentAuthenticator(nextAuthenticator);\n setupFormFields(nextAuthenticator);\n }\n }\n\n if (nextStepResponse.nextStep?.messages) {\n setMessages(\n nextStepResponse.nextStep.messages.map((msg: any) => ({\n message: msg.message || '',\n type: msg.type || 'INFO',\n })),\n );\n }\n }\n } else {\n // Check if the authenticator requires user input\n const hasParams: boolean = authenticator.metadata?.params && authenticator.metadata.params.length > 0;\n\n if (!hasParams) {\n // If no parameters are required, directly authenticate\n const payload: EmbeddedSignInFlowHandleRequestPayload = {\n flowId: currentFlow.flowId,\n selectedAuthenticator: {\n authenticatorId: authenticator.authenticatorId,\n params: {},\n },\n };\n\n const response: any = await onSubmit!(payload, {\n method: currentFlow?.links[0].method,\n url: currentFlow?.links[0].href,\n });\n onFlowChange?.(response);\n\n if (response?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(response.authData);\n return;\n }\n\n if (\n response?.flowStatus === EmbeddedSignInFlowStatus.FailCompleted ||\n response?.flowStatus === EmbeddedSignInFlowStatus.FailIncomplete\n ) {\n setError('Authentication failed. Please try again.');\n return;\n }\n\n // Check if the response contains a redirection URL and redirect if needed\n if (handleRedirectionIfNeeded(response)) {\n return;\n }\n\n if (response && 'flowId' in response && 'nextStep' in response) {\n const nextStepResponse: any = response;\n setCurrentFlow(nextStepResponse);\n\n if (nextStepResponse.nextStep?.authenticators?.length > 0) {\n if (\n nextStepResponse.nextStep.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n nextStepResponse.nextStep.authenticators.length > 1\n ) {\n setCurrentAuthenticator(null);\n } else {\n const nextAuthenticator: any = nextStepResponse.nextStep.authenticators[0];\n\n // Check if the next authenticator is a passkey - if so, auto-trigger it\n if (isPasskeyAuthenticator(nextAuthenticator)) {\n // Recursively handle the passkey authenticator without showing UI\n handleAuthenticatorSelection(nextAuthenticator);\n return;\n }\n setCurrentAuthenticator(nextAuthenticator);\n setupFormFields(nextAuthenticator);\n }\n }\n\n if (nextStepResponse.nextStep?.messages) {\n setMessages(\n nextStepResponse.nextStep.messages.map((msg: any) => ({\n message: msg.message || '',\n type: msg.type || 'INFO',\n })),\n );\n }\n }\n } else {\n // If parameters are required, show the form\n setCurrentAuthenticator(authenticator);\n setupFormFields(authenticator);\n }\n }\n } catch (err) {\n const errorMessage: string = err instanceof ThunderIDAPIError ? err?.message : 'Authenticator selection failed';\n setError(errorMessage);\n onError?.(err as Error);\n } finally {\n setIsSignInInitializationRequestLoading(false);\n }\n };\n\n /**\n * Handle input value changes.\n */\n const handleInputChange = (param: string, value: string): void => {\n setFormValue(param, value);\n setFormTouched(param, true);\n };\n\n /**\n * Check if current flow has multiple authenticator options.\n */\n const hasMultipleOptions: any = useCallback(\n (): boolean =>\n !!(\n currentFlow &&\n 'nextStep' in currentFlow &&\n currentFlow.nextStep?.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n currentFlow.nextStep?.authenticators &&\n currentFlow.nextStep.authenticators.length > 1\n ),\n [currentFlow],\n );\n\n /**\n * Get available authenticators for selection.\n */\n const getAvailableAuthenticators: any = useCallback((): EmbeddedSignInFlowAuthenticator[] => {\n if (!currentFlow || !('nextStep' in currentFlow) || !currentFlow.nextStep?.authenticators) {\n return [];\n }\n return currentFlow.nextStep.authenticators;\n }, [currentFlow]);\n\n // Generate CSS classes\n const containerClasses: string = cx(\n [\n withVendorCSSClassPrefix('signin'),\n withVendorCSSClassPrefix(`signin--${size}`),\n withVendorCSSClassPrefix(`signin--${variant}`),\n ],\n className,\n );\n\n const inputClasses: string = cx(\n [\n withVendorCSSClassPrefix('signin__input'),\n size === 'small' && withVendorCSSClassPrefix('signin__input--small'),\n size === 'large' && withVendorCSSClassPrefix('signin__input--large'),\n ],\n inputClassName,\n );\n\n const buttonClasses: string = cx(\n [\n withVendorCSSClassPrefix('signin__button'),\n size === 'small' && withVendorCSSClassPrefix('signin__button--small'),\n size === 'large' && withVendorCSSClassPrefix('signin__button--large'),\n ],\n buttonClassName,\n );\n\n const errorClasses: string = cx([withVendorCSSClassPrefix('signin__error')], errorClassName);\n\n const messageClasses: string = cx([withVendorCSSClassPrefix('signin__messages')], messageClassName); // Initialize the flow on component mount\n\n useEffect(() => {\n if (isLoading) {\n return;\n }\n\n // React 18.x Strict.Mode has a new check for `Ensuring reusable state` to facilitate an upcoming react feature.\n // https://reactjs.org/docs/strict-mode.html#ensuring-reusable-state\n // This will remount all the useEffects to ensure that there are no unexpected side effects.\n // When react remounts the SignIn, it will send two authorize requests.\n // https://github.com/reactwg/react-18/discussions/18#discussioncomment-795623\n if (reRenderCheckRef.current) {\n return;\n }\n\n reRenderCheckRef.current = true;\n\n (async (): Promise<void> => {\n setIsSignInInitializationRequestLoading(true);\n setError(null);\n\n try {\n const response: any = await onInitialize?.();\n\n setCurrentFlow(response);\n setIsInitialized(true);\n onFlowChange?.(response);\n\n if (response?.flowStatus === EmbeddedSignInFlowStatus.SuccessCompleted) {\n onSuccess?.(response.authData || {});\n return;\n }\n\n if (response?.nextStep?.authenticators?.length > 0) {\n if (\n response.nextStep.stepType === EmbeddedSignInFlowStepType.MultiOptionsPrompt &&\n response.nextStep.authenticators.length > 1\n ) {\n setCurrentAuthenticator(null);\n } else {\n const authenticator: any = response.nextStep.authenticators[0];\n setCurrentAuthenticator(authenticator);\n setupFormFields(authenticator);\n }\n }\n\n if (response && 'nextStep' in response && response.nextStep && 'messages' in response.nextStep) {\n const stepMessages: any[] = response.nextStep.messages || [];\n setMessages(\n stepMessages.map((msg: any) => ({\n message: msg.message || '',\n type: msg.type || 'INFO',\n })),\n );\n }\n } catch (err) {\n const errorMessage: string = err instanceof ThunderIDAPIError ? err.message : t('errors.signin.initialization');\n setError(errorMessage);\n onError?.(err as Error);\n } finally {\n setIsSignInInitializationRequestLoading(false);\n }\n })();\n }, [isLoading]);\n\n if (!isInitialized && isLoading) {\n return (\n <CardPrimitive className={cx(containerClasses, styles['card'])} data-testid=\"thunderid-signin\" variant={variant}>\n <CardPrimitive.Content>\n <div className={styles['loadingContainer']}>\n <Spinner size=\"medium\" />\n <Typography variant=\"body1\" className={styles['loadingText']}>\n {t('messages.loading.placeholder')}\n </Typography>\n </div>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n if (hasMultipleOptions() && !currentAuthenticator) {\n const availableAuthenticators: EmbeddedSignInFlowAuthenticator[] = getAvailableAuthenticators();\n\n const userPromptAuthenticators: any[] = availableAuthenticators.filter(\n (auth: any) =>\n auth.metadata?.promptType === EmbeddedSignInFlowAuthenticatorPromptType.UserPrompt ||\n // Fallback: LOCAL authenticators with params are typically user prompts\n (auth.idp === 'LOCAL' && auth.metadata?.params && auth.metadata.params.length > 0),\n );\n\n const optionAuthenticators: any[] = availableAuthenticators\n .filter((auth: any) => !userPromptAuthenticators.includes(auth))\n .filter((authenticator: any) => !HIDDEN_AUTHENTICATORS.includes(authenticator.authenticatorId));\n\n return (\n <CardPrimitive className={cx(containerClasses, styles['card'])} data-testid=\"thunderid-signin\" variant={variant}>\n {(showTitle || showSubtitle) && (\n <CardPrimitive.Header className={styles['header']}>\n {showTitle && (\n <CardPrimitive.Title level={2} className={styles['title']}>\n {flowTitle || t('signin.heading')}\n </CardPrimitive.Title>\n )}\n {showSubtitle && (\n <Typography variant=\"body1\" className={styles['subtitle']}>\n {flowSubtitle || t('signin.subheading')}\n </Typography>\n )}\n </CardPrimitive.Header>\n )}\n <CardPrimitive.Content>\n {flowMessages && flowMessages.length > 0 && (\n <div className={styles['flowMessagesContainer']}>\n {flowMessages.map((flowMessage: any, index: number) => (\n <AlertPrimitive\n key={flowMessage.id || index}\n variant={flowMessage.type}\n className={cx(styles['flowMessageItem'], messageClasses)}\n >\n <AlertPrimitive.Description>{flowMessage.message}</AlertPrimitive.Description>\n </AlertPrimitive>\n ))}\n </div>\n )}\n {messages.length > 0 && (\n <div className={styles['messagesContainer']}>\n {messages.map((message: any, index: number) => {\n let messageVariant: AlertVariant;\n const lowerType: string = message.type.toLowerCase();\n if (lowerType === 'error') {\n messageVariant = 'error';\n } else if (lowerType === 'warning') {\n messageVariant = 'warning';\n } else if (lowerType === 'success') {\n messageVariant = 'success';\n } else {\n messageVariant = 'info';\n }\n\n return (\n <AlertPrimitive\n key={index}\n variant={messageVariant}\n className={cx(styles['messageItem'], messageClasses)}\n >\n <AlertPrimitive.Description>{message.message}</AlertPrimitive.Description>\n </AlertPrimitive>\n );\n })}\n </div>\n )}\n {error && (\n <AlertPrimitive variant=\"error\" className={cx(styles['errorContainer'], errorClasses)}>\n <AlertPrimitive.Title>Error</AlertPrimitive.Title>\n <AlertPrimitive.Description>{error}</AlertPrimitive.Description>\n </AlertPrimitive>\n )}\n\n <div className={styles['contentContainer']}>\n {/* Render USER_PROMPT authenticators as form fields */}\n {userPromptAuthenticators.map((authenticator: any, index: number) => (\n <div key={authenticator.authenticatorId} className={styles['authenticatorItem']}>\n {index > 0 && <Divider className={styles['divider']}>OR</Divider>}\n <form\n className={styles['form']}\n onSubmit={(e: FormEvent): void => {\n e.preventDefault();\n const formData: Record<string, string> = {};\n authenticator.metadata?.params?.forEach((param: any) => {\n formData[param.param] = formValues[param.param] || '';\n });\n handleAuthenticatorSelection(authenticator, formData);\n }}\n >\n {createSignInOptionFromAuthenticator(\n authenticator,\n formValues,\n touchedFields,\n isLoading,\n handleInputChange,\n (auth: any, formData: any) => handleAuthenticatorSelection(auth, formData),\n {\n buttonClassName: buttonClasses,\n error,\n inputClassName: inputClasses,\n },\n )}\n </form>\n </div>\n ))}\n\n {/* Add divider between user prompts and option authenticators if both exist */}\n {userPromptAuthenticators.length > 0 && optionAuthenticators.length > 0 && (\n <Divider className={styles['divider']}>OR</Divider>\n )}\n\n {/* Render all other authenticators (REDIRECTION_PROMPT, multi-option buttons, etc.) */}\n {optionAuthenticators.map((authenticator: any) => (\n <div key={authenticator.authenticatorId} className={styles['authenticatorItem']}>\n {createSignInOptionFromAuthenticator(\n authenticator,\n formValues,\n touchedFields,\n isLoading,\n handleInputChange,\n (auth: any, formData: any) => handleAuthenticatorSelection(auth, formData),\n {\n buttonClassName: buttonClasses,\n error,\n inputClassName: inputClasses,\n },\n )}\n </div>\n ))}\n </div>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n if (!currentAuthenticator) {\n return (\n <CardPrimitive\n className={cx(containerClasses, styles['noAuthenticatorCard'])}\n data-testid=\"thunderid-signin\"\n variant={variant}\n >\n <CardPrimitive.Content>\n {error && (\n <AlertPrimitive variant=\"error\" className={styles['errorAlert']}>\n <AlertPrimitive.Title>{t('errors.heading') || 'Error'}</AlertPrimitive.Title>\n <AlertPrimitive.Description>{error}</AlertPrimitive.Description>\n </AlertPrimitive>\n )}\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n // If the current authenticator is a passkey, auto-trigger it instead of showing a form\n if (isPasskeyAuthenticator(currentAuthenticator) && !isLoading) {\n // Auto-trigger passkey authentication\n useEffect(() => {\n handleAuthenticatorSelection(currentAuthenticator);\n }, [currentAuthenticator]);\n\n // Show loading state while passkey authentication is in progress\n return (\n <CardPrimitive className={cx(containerClasses, styles['card'])} data-testid=\"thunderid-signin\" variant={variant}>\n <CardPrimitive.Content>\n <div className={styles['centeredContainer']}>\n <div className={styles['passkeyContainer']}>\n <Spinner size=\"large\" />\n </div>\n <Typography variant=\"body1\">{t('passkey.authenticating') || 'Authenticating with passkey...'}</Typography>\n <Typography variant=\"body2\" className={styles['passkeyText']}>\n {t('passkey.instruction') || 'Please use your fingerprint, face, or security key to authenticate.'}\n </Typography>\n </div>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n return (\n <CardPrimitive className={cx(containerClasses, styles['card'])} data-testid=\"thunderid-signin\" variant={variant}>\n <CardPrimitive.Header className={styles['header']}>\n <CardPrimitive.Title level={2} className={styles['title']}>\n {flowTitle || t('signin.heading')}\n </CardPrimitive.Title>\n <Typography variant=\"body1\" className={styles['subtitle']}>\n {flowSubtitle || t('signin.subheading')}\n </Typography>\n {flowMessages && flowMessages.length > 0 && (\n <div className={styles['flowMessagesContainer']}>\n {flowMessages.map((flowMessage: any, index: number) => (\n <AlertPrimitive\n key={flowMessage.id || index}\n variant={flowMessage.type}\n className={cx(styles['flowMessageItem'], messageClasses)}\n >\n <AlertPrimitive.Description>{flowMessage.message}</AlertPrimitive.Description>\n </AlertPrimitive>\n ))}\n </div>\n )}\n {messages.length > 0 && (\n <div className={styles['messagesContainer']}>\n {messages.map((message: any, index: number) => {\n const messageTypeToVariant: Record<string, AlertVariant> = {\n error: 'error',\n success: 'success',\n warning: 'warning',\n };\n const alertVariant: AlertVariant = messageTypeToVariant[message.type.toLowerCase()] || 'info';\n\n return (\n <AlertPrimitive\n key={index}\n variant={alertVariant}\n className={cx(styles['messageItem'], messageClasses)}\n >\n <AlertPrimitive.Description>{message.message}</AlertPrimitive.Description>\n </AlertPrimitive>\n );\n })}\n </div>\n )}\n </CardPrimitive.Header>\n\n <CardPrimitive.Content>\n {error && (\n <AlertPrimitive variant=\"error\" className={cx(styles['errorContainer'], errorClasses)}>\n <AlertPrimitive.Title>{t('errors.heading')}</AlertPrimitive.Title>\n <AlertPrimitive.Description>{error}</AlertPrimitive.Description>\n </AlertPrimitive>\n )}\n\n <form\n className={styles['form']}\n onSubmit={(e: FormEvent<HTMLFormElement>): void => {\n e.preventDefault();\n const formData: Record<string, string> = {};\n currentAuthenticator.metadata?.params?.forEach((param: any) => {\n formData[param.param] = formValues[param.param] || '';\n });\n handleSubmit(formData);\n }}\n >\n {createSignInOptionFromAuthenticator(\n currentAuthenticator,\n formValues,\n touchedFields,\n isLoading,\n handleInputChange,\n (authenticator: any, formData: any) => handleSubmit(formData || formValues),\n {\n buttonClassName: buttonClasses,\n error,\n inputClassName: inputClasses,\n },\n )}\n </form>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n};\n\n/**\n * Base SignIn component that provides native authentication flow.\n * This component handles both the presentation layer and authentication flow logic.\n * It accepts API functions as props to maintain framework independence.\n *\n * @example\n * ```tsx\n * import { BaseSignIn } from '@thunderid/react';\n *\n * const MySignIn = () => {\n * return (\n * <BaseSignIn\n * onInitialize={async () => {\n * // Your API call to initialize authentication\n * return await initializeAuth();\n * }}\n * onSubmit={async (payload) => {\n * // Your API call to handle authentication\n * return await handleAuth(payload);\n * }}\n * onSuccess={(authData) => {\n * console.log('Success:', authData);\n * }}\n * onError={(error) => {\n * console.error('Error:', error);\n * }}\n * className=\"max-w-md mx-auto\"\n * />\n * );\n * };\n * ```\n */\nconst BaseSignIn: FC<BaseSignInProps> = ({showLogo = true, ...rest}: BaseSignInProps): ReactElement => {\n const {theme} = useTheme();\n const styles: ReturnType<typeof useStyles> = useStyles(theme, theme.vars.colors.text.primary);\n\n return (\n <div>\n {showLogo && (\n <div className={styles['logoContainer']}>\n <Logo size=\"large\" />\n </div>\n )}\n <FlowProvider>\n <BaseSignInContent showLogo={showLogo} {...rest} />\n </FlowProvider>\n </div>\n );\n};\n\nexport default BaseSignIn;\n"],"mappings":"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"}
@@ -1,68 +0,0 @@
1
- const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_useFlow = require('../../../../../../contexts/Flow/useFlow.cjs');
3
- const require_useTheme = require('../../../../../../contexts/Theme/useTheme.cjs');
4
- const require_useTranslation = require('../../../../../../hooks/useTranslation.cjs');
5
- const require_Button = require('../../../../../primitives/Button/Button.cjs');
6
- const require_OtpField = require('../../../../../primitives/OtpField/OtpField.cjs');
7
- const require_FieldFactory = require('../../../../../factories/FieldFactory.cjs');
8
- let __thunderid_browser = require("@thunderid/browser");
9
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
10
- let react = require("react");
11
- react = require_rolldown_runtime.__toESM(react);
12
- let react_jsx_runtime = require("react/jsx-runtime");
13
- react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
14
-
15
- //#region src/components/presentation/auth/SignIn/v1/options/EmailOtp.tsx
16
- /**
17
- * Email OTP Sign-In Option Component.
18
- * Handles email-based OTP authentication.
19
- */
20
- const EmailOtp = ({ authenticator, formValues, touchedFields, isLoading, onInputChange, inputClassName = "", buttonClassName = "", preferences }) => {
21
- const { theme } = require_useTheme.default();
22
- const { t } = require_useTranslation.default(preferences?.i18n);
23
- const { setTitle, setSubtitle } = require_useFlow.default();
24
- const formFields = authenticator.metadata?.params?.sort((a, b) => a.order - b.order) || [];
25
- (0, react.useEffect)(() => {
26
- setTitle(t("email.otp.heading"));
27
- setSubtitle(t("email.otp.subheading"));
28
- }, [
29
- setTitle,
30
- setSubtitle,
31
- t
32
- ]);
33
- const hasOtpField = formFields.some((param) => param.param.toLowerCase().includes("otp") || param.param.toLowerCase().includes("code"));
34
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [formFields.map((param) => {
35
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: (param.param.toLowerCase().includes("otp") || param.param.toLowerCase().includes("code")) && hasOtpField ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_OtpField.default, {
36
- length: 6,
37
- value: formValues[param.param] || "",
38
- onChange: (event) => onInputChange(param.param, event.target.value),
39
- disabled: isLoading,
40
- className: inputClassName
41
- }) : require_FieldFactory.createField({
42
- className: inputClassName,
43
- disabled: isLoading,
44
- label: param.displayName,
45
- name: param.param,
46
- onChange: (value) => onInputChange(param.param, value),
47
- required: authenticator.requiredParams.includes(param.param),
48
- touched: touchedFields[param.param] || false,
49
- type: param.type === __thunderid_browser.EmbeddedSignInFlowAuthenticatorParamType.String && param.confidential ? __thunderid_browser.FieldType.Password : __thunderid_browser.FieldType.Text,
50
- value: formValues[param.param] || ""
51
- }) }, param.param);
52
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.default, {
53
- fullWidth: true,
54
- type: "submit",
55
- color: "primary",
56
- variant: "solid",
57
- disabled: isLoading,
58
- loading: isLoading,
59
- className: buttonClassName,
60
- style: { marginBottom: `calc(${theme.vars.spacing.unit} * 2)` },
61
- children: t("email.otp.buttons.submit.text")
62
- })] });
63
- };
64
- var EmailOtp_default = EmailOtp;
65
-
66
- //#endregion
67
- exports.default = EmailOtp_default;
68
- //# sourceMappingURL=EmailOtp.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmailOtp.cjs","names":["EmailOtp: FC<BaseSignInOptionProps>","useTheme","useTranslation","useFlow","formFields: any","hasOtpField: any","OtpField","createField","EmbeddedSignInFlowAuthenticatorParamType","FieldType","Button"],"sources":["../../../../../../../../src/components/presentation/auth/SignIn/v1/options/EmailOtp.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {EmbeddedSignInFlowAuthenticatorParamType, FieldType} from '@thunderid/browser';\nimport {FC, ReactElement, useEffect} from 'react';\n// eslint-disable-next-line import/no-cycle\nimport {BaseSignInOptionProps} from './SignInOptionFactory';\nimport useFlow from '../../../../../../contexts/Flow/useFlow';\nimport useTheme from '../../../../../../contexts/Theme/useTheme';\nimport useTranslation from '../../../../../../hooks/useTranslation';\nimport {createField} from '../../../../../factories/FieldFactory';\nimport Button from '../../../../../primitives/Button/Button';\nimport OtpField from '../../../../../primitives/OtpField/OtpField';\n\n/**\n * Email OTP Sign-In Option Component.\n * Handles email-based OTP authentication.\n */\nconst EmailOtp: FC<BaseSignInOptionProps> = ({\n authenticator,\n formValues,\n touchedFields,\n isLoading,\n onInputChange,\n inputClassName = '',\n buttonClassName = '',\n preferences,\n}: BaseSignInOptionProps): ReactElement => {\n const {theme} = useTheme();\n const {t} = useTranslation(preferences?.i18n);\n const {setTitle, setSubtitle} = useFlow();\n\n const formFields: any = authenticator!.metadata?.params?.sort((a: any, b: any) => a.order - b.order) || [];\n\n useEffect(() => {\n setTitle(t('email.otp.heading'));\n setSubtitle(t('email.otp.subheading'));\n }, [setTitle, setSubtitle, t]);\n\n // Check if this is an OTP field (typically has 'otpCode' or similar parameter)\n const hasOtpField: any = formFields.some(\n (param: any) => param.param.toLowerCase().includes('otp') || param.param.toLowerCase().includes('code'),\n );\n\n return (\n <>\n {formFields.map((param: any) => {\n const isOtpParam: any = param.param.toLowerCase().includes('otp') || param.param.toLowerCase().includes('code');\n\n return (\n <div key={param.param}>\n {isOtpParam && hasOtpField ? (\n <OtpField\n length={6}\n value={formValues[param.param] || ''}\n onChange={(event: any): void => onInputChange(param.param, event.target.value)}\n disabled={isLoading}\n className={inputClassName}\n />\n ) : (\n createField({\n className: inputClassName,\n disabled: isLoading,\n label: param.displayName,\n name: param.param,\n onChange: (value: any) => onInputChange(param.param, value),\n required: authenticator!.requiredParams.includes(param.param),\n touched: touchedFields[param.param] || false,\n type:\n param.type === EmbeddedSignInFlowAuthenticatorParamType.String && param.confidential\n ? FieldType.Password\n : FieldType.Text,\n value: formValues[param.param] || '',\n })\n )}\n </div>\n );\n })}\n\n <Button\n fullWidth\n type=\"submit\"\n color=\"primary\"\n variant=\"solid\"\n disabled={isLoading}\n loading={isLoading}\n className={buttonClassName}\n style={{marginBottom: `calc(${theme.vars.spacing.unit} * 2)`}}\n >\n {t('email.otp.buttons.submit.text')}\n </Button>\n </>\n );\n};\n\nexport default EmailOtp;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAiCA,MAAMA,YAAuC,EAC3C,eACA,YACA,eACA,WACA,eACA,iBAAiB,IACjB,kBAAkB,IAClB,kBACyC;CACzC,MAAM,EAAC,UAASC,0BAAU;CAC1B,MAAM,EAAC,MAAKC,+BAAe,aAAa,KAAK;CAC7C,MAAM,EAAC,UAAU,gBAAeC,yBAAS;CAEzC,MAAMC,aAAkB,cAAe,UAAU,QAAQ,MAAM,GAAQ,MAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE;AAE1G,4BAAgB;AACd,WAAS,EAAE,oBAAoB,CAAC;AAChC,cAAY,EAAE,uBAAuB,CAAC;IACrC;EAAC;EAAU;EAAa;EAAE,CAAC;CAG9B,MAAMC,cAAmB,WAAW,MACjC,UAAe,MAAM,MAAM,aAAa,CAAC,SAAS,MAAM,IAAI,MAAM,MAAM,aAAa,CAAC,SAAS,OAAO,CACxG;AAED,QACE,qFACG,WAAW,KAAK,UAAe;AAG9B,SACE,2CAAC,oBAHqB,MAAM,MAAM,aAAa,CAAC,SAAS,MAAM,IAAI,MAAM,MAAM,aAAa,CAAC,SAAS,OAAO,KAI5F,cACb,2CAACC;GACC,QAAQ;GACR,OAAO,WAAW,MAAM,UAAU;GAClC,WAAW,UAAqB,cAAc,MAAM,OAAO,MAAM,OAAO,MAAM;GAC9E,UAAU;GACV,WAAW;IACX,GAEFC,iCAAY;GACV,WAAW;GACX,UAAU;GACV,OAAO,MAAM;GACb,MAAM,MAAM;GACZ,WAAW,UAAe,cAAc,MAAM,OAAO,MAAM;GAC3D,UAAU,cAAe,eAAe,SAAS,MAAM,MAAM;GAC7D,SAAS,cAAc,MAAM,UAAU;GACvC,MACE,MAAM,SAASC,6DAAyC,UAAU,MAAM,eACpEC,8BAAU,WACVA,8BAAU;GAChB,OAAO,WAAW,MAAM,UAAU;GACnC,CAAC,IAvBI,MAAM,MAyBV;GAER,EAEF,2CAACC;EACC;EACA,MAAK;EACL,OAAM;EACN,SAAQ;EACR,UAAU;EACV,SAAS;EACT,WAAW;EACX,OAAO,EAAC,cAAc,QAAQ,MAAM,KAAK,QAAQ,KAAK,QAAO;YAE5D,EAAE,gCAAgC;GAC5B,IACR;;AAIP,uBAAe"}
@@ -1,59 +0,0 @@
1
- const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_useFlow = require('../../../../../../contexts/Flow/useFlow.cjs');
3
- const require_useTheme = require('../../../../../../contexts/Theme/useTheme.cjs');
4
- const require_useTranslation = require('../../../../../../hooks/useTranslation.cjs');
5
- const require_Button = require('../../../../../primitives/Button/Button.cjs');
6
- const require_FieldFactory = require('../../../../../factories/FieldFactory.cjs');
7
- let __thunderid_browser = require("@thunderid/browser");
8
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
9
- let react = require("react");
10
- react = require_rolldown_runtime.__toESM(react);
11
- let react_jsx_runtime = require("react/jsx-runtime");
12
- react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
13
-
14
- //#region src/components/presentation/auth/SignIn/v1/options/IdentifierFirst.tsx
15
- /**
16
- * Identifier First Sign-In Option Component.
17
- * Handles identifier-first authentication flow (username first, then password).
18
- */
19
- const IdentifierFirst = ({ authenticator, formValues, touchedFields, isLoading, onInputChange, inputClassName = "", buttonClassName = "", preferences }) => {
20
- const { theme } = require_useTheme.default();
21
- const { t } = require_useTranslation.default(preferences?.i18n);
22
- const { setTitle, setSubtitle } = require_useFlow.default();
23
- const formFields = authenticator.metadata?.params?.sort((a, b) => a.order - b.order) || [];
24
- (0, react.useEffect)(() => {
25
- setTitle(t("identifier.first.heading"));
26
- setSubtitle(t("identifier.first.subheading"));
27
- }, [
28
- setTitle,
29
- setSubtitle,
30
- t
31
- ]);
32
- return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [formFields.map((param) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: require_FieldFactory.createField({
33
- className: inputClassName,
34
- disabled: isLoading,
35
- label: param.displayName,
36
- name: param.param,
37
- onChange: (value) => onInputChange(param.param, value),
38
- placeholder: t(`elements.fields.generic.placeholder`, { field: (param.displayName || param.param).toLowerCase() }),
39
- required: authenticator.requiredParams.includes(param.param),
40
- touched: touchedFields[param.param] || false,
41
- type: param.type === __thunderid_browser.EmbeddedSignInFlowAuthenticatorParamType.String && param.confidential ? __thunderid_browser.FieldType.Password : __thunderid_browser.FieldType.Text,
42
- value: formValues[param.param] || ""
43
- }) }, param.param)), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.default, {
44
- fullWidth: true,
45
- type: "submit",
46
- color: "primary",
47
- variant: "solid",
48
- disabled: isLoading,
49
- loading: isLoading,
50
- className: buttonClassName,
51
- style: { marginBottom: `calc(${theme.vars.spacing.unit} * 2)` },
52
- children: t("identifier.first.buttons.submit.text")
53
- })] });
54
- };
55
- var IdentifierFirst_default = IdentifierFirst;
56
-
57
- //#endregion
58
- exports.default = IdentifierFirst_default;
59
- //# sourceMappingURL=IdentifierFirst.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IdentifierFirst.cjs","names":["IdentifierFirst: FC<BaseSignInOptionProps>","useTheme","useTranslation","useFlow","formFields: any","createField","EmbeddedSignInFlowAuthenticatorParamType","FieldType","Button"],"sources":["../../../../../../../../src/components/presentation/auth/SignIn/v1/options/IdentifierFirst.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {EmbeddedSignInFlowAuthenticatorParamType, FieldType} from '@thunderid/browser';\nimport {FC, ReactElement, useEffect} from 'react';\n// eslint-disable-next-line import/no-cycle\nimport {BaseSignInOptionProps} from './SignInOptionFactory';\nimport useFlow from '../../../../../../contexts/Flow/useFlow';\nimport useTheme from '../../../../../../contexts/Theme/useTheme';\nimport useTranslation from '../../../../../../hooks/useTranslation';\nimport {createField} from '../../../../../factories/FieldFactory';\nimport Button from '../../../../../primitives/Button/Button';\n\n/**\n * Identifier First Sign-In Option Component.\n * Handles identifier-first authentication flow (username first, then password).\n */\nconst IdentifierFirst: FC<BaseSignInOptionProps> = ({\n authenticator,\n formValues,\n touchedFields,\n isLoading,\n onInputChange,\n inputClassName = '',\n buttonClassName = '',\n preferences,\n}: BaseSignInOptionProps): ReactElement => {\n const {theme} = useTheme();\n const {t} = useTranslation(preferences?.i18n);\n const {setTitle, setSubtitle} = useFlow();\n\n const formFields: any = authenticator!.metadata?.params?.sort((a: any, b: any) => a.order - b.order) || [];\n\n useEffect(() => {\n setTitle(t('identifier.first.heading'));\n setSubtitle(t('identifier.first.subheading'));\n }, [setTitle, setSubtitle, t]);\n\n return (\n <>\n {formFields.map((param: any) => (\n <div key={param.param}>\n {createField({\n className: inputClassName,\n disabled: isLoading,\n label: param.displayName,\n name: param.param,\n onChange: (value: any) => onInputChange(param.param, value),\n placeholder: t(`elements.fields.generic.placeholder`, {\n field: (param.displayName || param.param).toLowerCase(),\n }),\n required: authenticator!.requiredParams.includes(param.param),\n touched: touchedFields[param.param] || false,\n type:\n param.type === EmbeddedSignInFlowAuthenticatorParamType.String && param.confidential\n ? FieldType.Password\n : FieldType.Text,\n value: formValues[param.param] || '',\n })}\n </div>\n ))}\n\n <Button\n fullWidth\n type=\"submit\"\n color=\"primary\"\n variant=\"solid\"\n disabled={isLoading}\n loading={isLoading}\n className={buttonClassName}\n style={{marginBottom: `calc(${theme.vars.spacing.unit} * 2)`}}\n >\n {t('identifier.first.buttons.submit.text')}\n </Button>\n </>\n );\n};\n\nexport default IdentifierFirst;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAgCA,MAAMA,mBAA8C,EAClD,eACA,YACA,eACA,WACA,eACA,iBAAiB,IACjB,kBAAkB,IAClB,kBACyC;CACzC,MAAM,EAAC,UAASC,0BAAU;CAC1B,MAAM,EAAC,MAAKC,+BAAe,aAAa,KAAK;CAC7C,MAAM,EAAC,UAAU,gBAAeC,yBAAS;CAEzC,MAAMC,aAAkB,cAAe,UAAU,QAAQ,MAAM,GAAQ,MAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE;AAE1G,4BAAgB;AACd,WAAS,EAAE,2BAA2B,CAAC;AACvC,cAAY,EAAE,8BAA8B,CAAC;IAC5C;EAAC;EAAU;EAAa;EAAE,CAAC;AAE9B,QACE,qFACG,WAAW,KAAK,UACf,2CAAC,mBACEC,iCAAY;EACX,WAAW;EACX,UAAU;EACV,OAAO,MAAM;EACb,MAAM,MAAM;EACZ,WAAW,UAAe,cAAc,MAAM,OAAO,MAAM;EAC3D,aAAa,EAAE,uCAAuC,EACpD,QAAQ,MAAM,eAAe,MAAM,OAAO,aAAa,EACxD,CAAC;EACF,UAAU,cAAe,eAAe,SAAS,MAAM,MAAM;EAC7D,SAAS,cAAc,MAAM,UAAU;EACvC,MACE,MAAM,SAASC,6DAAyC,UAAU,MAAM,eACpEC,8BAAU,WACVA,8BAAU;EAChB,OAAO,WAAW,MAAM,UAAU;EACnC,CAAC,IAjBM,MAAM,MAkBV,CACN,EAEF,2CAACC;EACC;EACA,MAAK;EACL,OAAM;EACN,SAAQ;EACR,UAAU;EACV,SAAS;EACT,WAAW;EACX,OAAO,EAAC,cAAc,QAAQ,MAAM,KAAK,QAAQ,KAAK,QAAO;YAE5D,EAAE,uCAAuC;GACnC,IACR;;AAIP,8BAAe"}
@@ -1,139 +0,0 @@
1
- const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_useTranslation = require('../../../../../../hooks/useTranslation.cjs');
3
- const require_Button = require('../../../../../primitives/Button/Button.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
- let react_jsx_runtime = require("react/jsx-runtime");
7
- react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
8
-
9
- //#region src/components/presentation/auth/SignIn/v1/options/MultiOptionButton.tsx
10
- /**
11
- * Multi Option Button Component.
12
- * Renders authenticators as selectable buttons for multi-option prompts.
13
- * Used when authenticators don't require immediate user input but need to be selected first.
14
- */
15
- const MultiOptionButton = ({ authenticator, isLoading, onSubmit, buttonClassName = "", preferences }) => {
16
- const { t } = require_useTranslation.default(preferences?.i18n);
17
- /**
18
- * Get display name for the authenticator.
19
- */
20
- const getDisplayName = () => {
21
- let authenticatorName = authenticator.authenticator;
22
- if (authenticator.idp !== __thunderid_browser.EmbeddedSignInFlowAuthenticatorKnownIdPType.Local) authenticatorName = authenticator.idp;
23
- switch (authenticatorName) {
24
- default: return t("elements.buttons.multi.option.text", { connection: authenticatorName });
25
- }
26
- };
27
- /**
28
- * Get appropriate icon for the authenticator type.
29
- */
30
- const getIcon = () => {
31
- const { authenticatorId } = authenticator;
32
- switch (authenticatorId) {
33
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.SmsOtp: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
34
- width: "18",
35
- height: "18",
36
- viewBox: "0 0 24 24",
37
- xmlns: "http://www.w3.org/2000/svg",
38
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
39
- fill: "currentColor",
40
- d: "M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.074 15.074 0 0 1-6.59-6.59l2.2-2.2c.27-.27.35-.67.24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1M12 3v10l3-3h6V3z"
41
- })
42
- });
43
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.EmailOtp: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
44
- width: "18",
45
- height: "18",
46
- viewBox: "0 0 24 24",
47
- xmlns: "http://www.w3.org/2000/svg",
48
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
49
- fill: "currentColor",
50
- d: "M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4l-8 5l-8-5V6l8 5l8-5z"
51
- })
52
- });
53
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Totp: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
54
- width: "18",
55
- height: "18",
56
- viewBox: "0 0 24 24",
57
- xmlns: "http://www.w3.org/2000/svg",
58
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
59
- fill: "currentColor",
60
- d: "M12 1L3 5v6c0 5.55 3.84 10.74 9 12c5.16-1.26 9-6.45 9-12V5z"
61
- })
62
- });
63
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.PushNotification: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
64
- width: "18",
65
- height: "18",
66
- viewBox: "0 0 24 24",
67
- xmlns: "http://www.w3.org/2000/svg",
68
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
69
- fill: "currentColor",
70
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8s8 3.59 8 8s-3.59 8-8 8m1-13h-2v6h2zm0 8h-2v2h2z"
71
- })
72
- });
73
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Passkey: return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
74
- fill: "currentColor",
75
- width: "18",
76
- height: "18",
77
- viewBox: "0 0 32 32",
78
- xmlns: "http://www.w3.org/2000/svg",
79
- children: [
80
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("g", {
81
- id: "SVGRepo_bgCarrier",
82
- strokeWidth: "0"
83
- }),
84
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)("g", {
85
- id: "SVGRepo_tracerCarrier",
86
- strokeLinecap: "round",
87
- strokeLinejoin: "round"
88
- }),
89
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("g", {
90
- id: "SVGRepo_iconCarrier",
91
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M7.7 4.7C9.36 3.07 12.68 2 16.17 2S23 3.06 24.6 4.7A1 1 0 0 0 26 3.3C23.6.86 19.34 0 16.16 0S8.72.87 6.3 3.3a1 1 0 0 0 1.4 1.4zM29.2 12.55C26.38 6.88 22 4 16.17 4s-10.22 2.88-13 8.55a1 1 0 0 0 .44 1.34 1 1 0 0 0 1.35-.45C7.4 8.45 11.08 6 16.15 6s8.77 2.44 11.27 7.45a1 1 0 0 0 .9.55.87.87 0 0 0 .44-.1 1 1 0 0 0 .45-1.35zM19.4 28.08c-4.13-1.77-5.8-4.5-6-6.5a2.87 2.87 0 0 1 1.13-2.75c.85-.57 2.1.24 3.87 1.52s4.13 3 6.17 1.45c1.8-1.35 2.34-3.76 1.45-6.44A10.85 10.85 0 0 0 16.16 8C7.2 8 4 15.75 4 23a1 1 0 0 0 2 0c0-3 .73-13 10.16-13 3.9 0 7 3.1 8 6 .3.87.8 3-.75 4.2-.8.6-2-.2-3.8-1.47s-4.07-2.94-6.14-1.56a4.87 4.87 0 0 0-2 4.6c.24 2.56 2.24 6 7.18 8.15A1 1 0 0 0 19 30a1 1 0 0 0 .4-1.92zM10 19.24a7.06 7.06 0 0 1 5.2-4.65c2.24-.43 4.32.6 6 3a1 1 0 1 0 1.62-1.17c-2.9-4.07-6.27-4.12-8-3.8A9.1 9.1 0 0 0 8 18.77c-1 3.94.43 8.27 4.2 12.87a1 1 0 0 0 .8.37.94.94 0 0 0 .63-.23 1 1 0 0 0 .14-1.4c-3.34-4.1-4.62-7.83-3.77-11.13zM25.3 24.3a3 3 0 0 1-3.06.63c-2.4-.57-4.78-2.7-5.3-4.25a1 1 0 1 0-1.9.64c.8 2.33 3.87 4.88 6.74 5.56a6.84 6.84 0 0 0 1.52.18 4.7 4.7 0 0 0 3.4-1.35 1 1 0 0 0-1.4-1.4z" }), " "]
92
- })
93
- ]
94
- });
95
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.MagicLink: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
96
- width: "18",
97
- height: "18",
98
- viewBox: "0 0 24 24",
99
- xmlns: "http://www.w3.org/2000/svg",
100
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
101
- fill: "currentColor",
102
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8s8 3.59 8 8s-3.59 8-8 8m1-13h-2v6h2zm0 8h-2v2h2z"
103
- })
104
- });
105
- default: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
106
- width: "18",
107
- height: "18",
108
- viewBox: "0 0 24 24",
109
- xmlns: "http://www.w3.org/2000/svg",
110
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
111
- fill: "currentColor",
112
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m-2 15l-5-5l1.41-1.41L10 14.17l7.59-7.59L19 8z"
113
- })
114
- });
115
- }
116
- };
117
- /**
118
- * Handle button click.
119
- */
120
- const handleClick = () => {
121
- onSubmit(authenticator);
122
- };
123
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.default, {
124
- fullWidth: true,
125
- type: "button",
126
- color: "secondary",
127
- variant: "solid",
128
- disabled: isLoading,
129
- onClick: handleClick,
130
- className: buttonClassName,
131
- startIcon: getIcon(),
132
- children: getDisplayName()
133
- });
134
- };
135
- var MultiOptionButton_default = MultiOptionButton;
136
-
137
- //#endregion
138
- exports.default = MultiOptionButton_default;
139
- //# sourceMappingURL=MultiOptionButton.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiOptionButton.cjs","names":["MultiOptionButton: FC<BaseSignInOptionProps>","useTranslation","authenticatorName: any","EmbeddedSignInFlowAuthenticatorKnownIdPType","ApplicationNativeAuthenticationConstants","Button"],"sources":["../../../../../../../../src/components/presentation/auth/SignIn/v1/options/MultiOptionButton.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {\n ApplicationNativeAuthenticationConstants,\n EmbeddedSignInFlowAuthenticatorKnownIdPType,\n} from '@thunderid/browser';\nimport {FC, ReactElement} from 'react';\n// eslint-disable-next-line import/no-cycle\nimport {BaseSignInOptionProps} from './SignInOptionFactory';\nimport useTranslation from '../../../../../../hooks/useTranslation';\nimport Button from '../../../../../primitives/Button/Button';\n\n/**\n * Multi Option Button Component.\n * Renders authenticators as selectable buttons for multi-option prompts.\n * Used when authenticators don't require immediate user input but need to be selected first.\n */\nconst MultiOptionButton: FC<BaseSignInOptionProps> = ({\n authenticator,\n isLoading,\n onSubmit,\n buttonClassName = '',\n preferences,\n}: BaseSignInOptionProps): ReactElement => {\n const {t} = useTranslation(preferences?.i18n);\n\n /**\n * Get display name for the authenticator.\n */\n const getDisplayName = (): string => {\n let authenticatorName: any = authenticator!.authenticator;\n\n if (authenticator!.idp !== EmbeddedSignInFlowAuthenticatorKnownIdPType.Local) {\n authenticatorName = authenticator!.idp;\n }\n\n switch (authenticatorName) {\n default:\n return t('elements.buttons.multi.option.text', {connection: authenticatorName});\n }\n };\n\n /**\n * Get appropriate icon for the authenticator type.\n */\n const getIcon = (): ReactElement | null => {\n const {authenticatorId} = authenticator!;\n\n switch (authenticatorId) {\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.SmsOtp:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill=\"currentColor\"\n d=\"M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.074 15.074 0 0 1-6.59-6.59l2.2-2.2c.27-.27.35-.67.24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1M12 3v10l3-3h6V3z\"\n />\n </svg>\n );\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.EmailOtp:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill=\"currentColor\"\n d=\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4l-8 5l-8-5V6l8 5l8-5z\"\n />\n </svg>\n );\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Totp:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"currentColor\" d=\"M12 1L3 5v6c0 5.55 3.84 10.74 9 12c5.16-1.26 9-6.45 9-12V5z\" />\n </svg>\n );\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.PushNotification:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill=\"currentColor\"\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8s8 3.59 8 8s-3.59 8-8 8m1-13h-2v6h2zm0 8h-2v2h2z\"\n />\n </svg>\n );\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Passkey:\n return (\n <svg fill=\"currentColor\" width=\"18\" height=\"18\" viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\">\n <g id=\"SVGRepo_bgCarrier\" strokeWidth=\"0\"></g>\n <g id=\"SVGRepo_tracerCarrier\" strokeLinecap=\"round\" strokeLinejoin=\"round\"></g>\n <g id=\"SVGRepo_iconCarrier\">\n <path d=\"M7.7 4.7C9.36 3.07 12.68 2 16.17 2S23 3.06 24.6 4.7A1 1 0 0 0 26 3.3C23.6.86 19.34 0 16.16 0S8.72.87 6.3 3.3a1 1 0 0 0 1.4 1.4zM29.2 12.55C26.38 6.88 22 4 16.17 4s-10.22 2.88-13 8.55a1 1 0 0 0 .44 1.34 1 1 0 0 0 1.35-.45C7.4 8.45 11.08 6 16.15 6s8.77 2.44 11.27 7.45a1 1 0 0 0 .9.55.87.87 0 0 0 .44-.1 1 1 0 0 0 .45-1.35zM19.4 28.08c-4.13-1.77-5.8-4.5-6-6.5a2.87 2.87 0 0 1 1.13-2.75c.85-.57 2.1.24 3.87 1.52s4.13 3 6.17 1.45c1.8-1.35 2.34-3.76 1.45-6.44A10.85 10.85 0 0 0 16.16 8C7.2 8 4 15.75 4 23a1 1 0 0 0 2 0c0-3 .73-13 10.16-13 3.9 0 7 3.1 8 6 .3.87.8 3-.75 4.2-.8.6-2-.2-3.8-1.47s-4.07-2.94-6.14-1.56a4.87 4.87 0 0 0-2 4.6c.24 2.56 2.24 6 7.18 8.15A1 1 0 0 0 19 30a1 1 0 0 0 .4-1.92zM10 19.24a7.06 7.06 0 0 1 5.2-4.65c2.24-.43 4.32.6 6 3a1 1 0 1 0 1.62-1.17c-2.9-4.07-6.27-4.12-8-3.8A9.1 9.1 0 0 0 8 18.77c-1 3.94.43 8.27 4.2 12.87a1 1 0 0 0 .8.37.94.94 0 0 0 .63-.23 1 1 0 0 0 .14-1.4c-3.34-4.1-4.62-7.83-3.77-11.13zM25.3 24.3a3 3 0 0 1-3.06.63c-2.4-.57-4.78-2.7-5.3-4.25a1 1 0 1 0-1.9.64c.8 2.33 3.87 4.88 6.74 5.56a6.84 6.84 0 0 0 1.52.18 4.7 4.7 0 0 0 3.4-1.35 1 1 0 0 0-1.4-1.4z\"></path>{' '}\n </g>\n </svg>\n );\n case ApplicationNativeAuthenticationConstants.SupportedAuthenticators.MagicLink:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill=\"currentColor\"\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8s8 3.59 8 8s-3.59 8-8 8m1-13h-2v6h2zm0 8h-2v2h2z\"\n />\n </svg>\n );\n default:\n return (\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill=\"currentColor\"\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10s10-4.48 10-10S17.52 2 12 2m-2 15l-5-5l1.41-1.41L10 14.17l7.59-7.59L19 8z\"\n />\n </svg>\n );\n }\n };\n\n /**\n * Handle button click.\n */\n const handleClick = (): any => {\n // For multi-option buttons, we call onSubmit without form data\n // This will trigger the authenticator selection and likely move to the next step\n onSubmit!(authenticator!);\n };\n\n return (\n <Button\n fullWidth\n type=\"button\"\n color=\"secondary\"\n variant=\"solid\"\n disabled={isLoading}\n onClick={handleClick}\n className={buttonClassName}\n startIcon={getIcon()}\n >\n {getDisplayName()}\n </Button>\n );\n};\n\nexport default MultiOptionButton;\n"],"mappings":";;;;;;;;;;;;;;AAiCA,MAAMA,qBAAgD,EACpD,eACA,WACA,UACA,kBAAkB,IAClB,kBACyC;CACzC,MAAM,EAAC,MAAKC,+BAAe,aAAa,KAAK;;;;CAK7C,MAAM,uBAA+B;EACnC,IAAIC,oBAAyB,cAAe;AAE5C,MAAI,cAAe,QAAQC,gEAA4C,MACrE,qBAAoB,cAAe;AAGrC,UAAQ,mBAAR;GACE,QACE,QAAO,EAAE,sCAAsC,EAAC,YAAY,mBAAkB,CAAC;;;;;;CAOrF,MAAM,gBAAqC;EACzC,MAAM,EAAC,oBAAmB;AAE1B,UAAQ,iBAAR;GACE,KAAKC,6DAAyC,wBAAwB,OACpE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KACC,MAAK;KACL,GAAE;MACF;KACE;GAEV,KAAKA,6DAAyC,wBAAwB,SACpE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KACC,MAAK;KACL,GAAE;MACF;KACE;GAEV,KAAKA,6DAAyC,wBAAwB,KACpE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KAAK,MAAK;KAAe,GAAE;MAAgE;KACxF;GAEV,KAAKA,6DAAyC,wBAAwB,iBACpE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KACC,MAAK;KACL,GAAE;MACF;KACE;GAEV,KAAKA,6DAAyC,wBAAwB,QACpE,QACE,4CAAC;IAAI,MAAK;IAAe,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;;KACxE,2CAAC;MAAE,IAAG;MAAoB,aAAY;OAAQ;KAC9C,2CAAC;MAAE,IAAG;MAAwB,eAAc;MAAQ,gBAAe;OAAY;KAC/E,4CAAC;MAAE,IAAG;iBACJ,2CAAC,UAAK,GAAE,ukCAA4kC,EAAC;OACnlC;;KACA;GAEV,KAAKA,6DAAyC,wBAAwB,UACpE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KACC,MAAK;KACL,GAAE;MACF;KACE;GAEV,QACE,QACE,2CAAC;IAAI,OAAM;IAAK,QAAO;IAAK,SAAQ;IAAY,OAAM;cACpD,2CAAC;KACC,MAAK;KACL,GAAE;MACF;KACE;;;;;;CAQd,MAAM,oBAAyB;AAG7B,WAAU,cAAe;;AAG3B,QACE,2CAACC;EACC;EACA,MAAK;EACL,OAAM;EACN,SAAQ;EACR,UAAU;EACV,SAAS;EACT,WAAW;EACX,WAAW,SAAS;YAEnB,gBAAgB;GACV;;AAIb,gCAAe"}
@@ -1,147 +0,0 @@
1
- const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_EmailOtp = require('./EmailOtp.cjs');
3
- const require_IdentifierFirst = require('./IdentifierFirst.cjs');
4
- const require_MultiOptionButton = require('./MultiOptionButton.cjs');
5
- const require_SmsOtp = require('./SmsOtp.cjs');
6
- const require_SocialButton = require('./SocialButton.cjs');
7
- const require_Totp = require('./Totp.cjs');
8
- const require_UsernamePassword = require('./UsernamePassword.cjs');
9
- const require_FacebookButton = require('../../../../../adapters/FacebookButton.cjs');
10
- const require_GitHubButton = require('../../../../../adapters/GitHubButton.cjs');
11
- const require_GoogleButton = require('../../../../../adapters/GoogleButton.cjs');
12
- const require_LinkedInButton = require('../../../../../adapters/LinkedInButton.cjs');
13
- const require_MicrosoftButton = require('../../../../../adapters/MicrosoftButton.cjs');
14
- const require_SignInWithEthereumButton = require('../../../../../adapters/SignInWithEthereumButton.cjs');
15
- let __thunderid_browser = require("@thunderid/browser");
16
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
17
- let react_jsx_runtime = require("react/jsx-runtime");
18
- react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
19
-
20
- //#region src/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.tsx
21
- /**
22
- * Creates the appropriate sign-in option component based on the authenticator's ID.
23
- */
24
- const createSignInOption = ({ authenticator, onSubmit, buttonClassName, preferences,...rest }) => {
25
- const hasParams = authenticator.metadata?.params && authenticator.metadata.params.length > 0;
26
- switch (authenticator.authenticatorId) {
27
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.UsernamePassword: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UsernamePassword.default, {
28
- authenticator,
29
- preferences,
30
- onSubmit,
31
- ...rest
32
- });
33
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.IdentifierFirst: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_IdentifierFirst.default, {
34
- authenticator,
35
- preferences,
36
- onSubmit,
37
- ...rest
38
- });
39
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Google: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_GoogleButton.default, {
40
- className: buttonClassName,
41
- onClick: () => onSubmit(authenticator),
42
- preferences,
43
- ...rest
44
- });
45
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.GitHub: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_GitHubButton.default, {
46
- preferences,
47
- className: buttonClassName,
48
- onClick: () => onSubmit(authenticator),
49
- ...rest
50
- });
51
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Microsoft: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MicrosoftButton.default, {
52
- preferences,
53
- className: buttonClassName,
54
- onClick: () => onSubmit(authenticator),
55
- ...rest
56
- });
57
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Facebook: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_FacebookButton.default, {
58
- preferences,
59
- className: buttonClassName,
60
- onClick: () => onSubmit(authenticator),
61
- ...rest
62
- });
63
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.LinkedIn: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_LinkedInButton.default, {
64
- preferences,
65
- className: buttonClassName,
66
- onClick: () => onSubmit(authenticator),
67
- ...rest
68
- });
69
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.SignInWithEthereum: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_SignInWithEthereumButton.default, {
70
- preferences,
71
- className: buttonClassName,
72
- onClick: () => onSubmit(authenticator),
73
- ...rest
74
- });
75
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.EmailOtp: return hasParams ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_EmailOtp.default, {
76
- authenticator,
77
- preferences,
78
- onSubmit,
79
- ...rest
80
- }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MultiOptionButton.default, {
81
- authenticator,
82
- preferences,
83
- onSubmit,
84
- ...rest
85
- });
86
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.Totp: return hasParams ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Totp.default, {
87
- authenticator,
88
- preferences,
89
- onSubmit,
90
- ...rest
91
- }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MultiOptionButton.default, {
92
- authenticator,
93
- preferences,
94
- onSubmit,
95
- ...rest
96
- });
97
- case __thunderid_browser.ApplicationNativeAuthenticationConstants.SupportedAuthenticators.SmsOtp: return hasParams ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_SmsOtp.default, {
98
- authenticator,
99
- preferences,
100
- onSubmit,
101
- ...rest
102
- }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MultiOptionButton.default, {
103
- authenticator,
104
- preferences,
105
- onSubmit,
106
- ...rest
107
- });
108
- default:
109
- if (authenticator.idp !== __thunderid_browser.EmbeddedSignInFlowAuthenticatorKnownIdPType.Local) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_SocialButton.default, {
110
- authenticator,
111
- preferences,
112
- className: buttonClassName,
113
- onClick: () => onSubmit(authenticator),
114
- ...rest,
115
- children: authenticator.idp
116
- });
117
- if (hasParams) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UsernamePassword.default, {
118
- authenticator,
119
- preferences,
120
- onSubmit,
121
- ...rest
122
- });
123
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MultiOptionButton.default, {
124
- authenticator,
125
- preferences,
126
- onSubmit,
127
- ...rest
128
- });
129
- }
130
- };
131
- /**
132
- * Convenience function that creates the appropriate sign-in option component from an authenticator.
133
- */
134
- const createSignInOptionFromAuthenticator = (authenticator, formValues, touchedFields, isLoading, onInputChange, onSubmit, options) => createSignInOption({
135
- authenticator,
136
- formValues,
137
- isLoading,
138
- onInputChange,
139
- onSubmit,
140
- touchedFields,
141
- ...options
142
- });
143
-
144
- //#endregion
145
- exports.createSignInOption = createSignInOption;
146
- exports.createSignInOptionFromAuthenticator = createSignInOptionFromAuthenticator;
147
- //# sourceMappingURL=SignInOptionFactory.cjs.map