@thunderid/react 0.1.0 → 0.3.0

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 (930) hide show
  1. package/dist/ThunderIDReactClient.d.ts.map +1 -1
  2. package/dist/ThunderIDReactClient.js +233 -0
  3. package/dist/ThunderIDReactClient.js.map +1 -0
  4. package/dist/api/createOrganization.d.ts +2 -2
  5. package/dist/api/createOrganization.js +80 -0
  6. package/dist/api/createOrganization.js.map +1 -0
  7. package/dist/api/getAllOrganizations.d.ts +2 -2
  8. package/dist/api/getAllOrganizations.js +71 -0
  9. package/dist/api/getAllOrganizations.js.map +1 -0
  10. package/dist/api/getMeOrganizations.d.ts +2 -2
  11. package/dist/api/getMeOrganizations.js +75 -0
  12. package/dist/api/getMeOrganizations.js.map +1 -0
  13. package/dist/api/getOrganization.d.ts +2 -2
  14. package/dist/api/getOrganization.js +67 -0
  15. package/dist/api/getOrganization.js.map +1 -0
  16. package/dist/api/getSchemas.d.ts +2 -2
  17. package/dist/api/getSchemas.js +65 -0
  18. package/dist/api/getSchemas.js.map +1 -0
  19. package/dist/api/getScim2Me.d.ts +2 -2
  20. package/dist/api/getScim2Me.js +65 -0
  21. package/dist/api/getScim2Me.js.map +1 -0
  22. package/dist/api/updateMeProfile.d.ts +2 -2
  23. package/dist/api/updateMeProfile.js +54 -0
  24. package/dist/api/updateMeProfile.js.map +1 -0
  25. package/dist/api/updateOrganization.d.ts +3 -3
  26. package/dist/api/updateOrganization.js +74 -0
  27. package/dist/api/updateOrganization.js.map +1 -0
  28. package/dist/cjs/ThunderIDReactClient.cjs +235 -0
  29. package/dist/cjs/ThunderIDReactClient.cjs.map +1 -0
  30. package/dist/cjs/_virtual/rolldown_runtime.cjs +25 -0
  31. package/dist/cjs/api/createOrganization.cjs +82 -0
  32. package/dist/cjs/api/createOrganization.cjs.map +1 -0
  33. package/dist/cjs/api/getAllOrganizations.cjs +73 -0
  34. package/dist/cjs/api/getAllOrganizations.cjs.map +1 -0
  35. package/dist/cjs/api/getMeOrganizations.cjs +77 -0
  36. package/dist/cjs/api/getMeOrganizations.cjs.map +1 -0
  37. package/dist/cjs/api/getOrganization.cjs +69 -0
  38. package/dist/cjs/api/getOrganization.cjs.map +1 -0
  39. package/dist/cjs/api/getSchemas.cjs +67 -0
  40. package/dist/cjs/api/getSchemas.cjs.map +1 -0
  41. package/dist/cjs/api/getScim2Me.cjs +67 -0
  42. package/dist/cjs/api/getScim2Me.cjs.map +1 -0
  43. package/dist/cjs/api/updateMeProfile.cjs +56 -0
  44. package/dist/cjs/api/updateMeProfile.cjs.map +1 -0
  45. package/dist/cjs/api/updateOrganization.cjs +76 -0
  46. package/dist/cjs/api/updateOrganization.cjs.map +1 -0
  47. package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs +54 -0
  48. package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs.map +1 -0
  49. package/dist/cjs/components/actions/SignInButton/SignInButton.cjs +88 -0
  50. package/dist/cjs/components/actions/SignInButton/SignInButton.cjs.map +1 -0
  51. package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs +54 -0
  52. package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs.map +1 -0
  53. package/dist/cjs/components/actions/SignOutButton/SignOutButton.cjs +84 -0
  54. package/dist/cjs/components/actions/SignOutButton/SignOutButton.cjs.map +1 -0
  55. package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs +56 -0
  56. package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs.map +1 -0
  57. package/dist/cjs/components/actions/SignUpButton/SignUpButton.cjs +86 -0
  58. package/dist/cjs/components/actions/SignUpButton/SignUpButton.cjs.map +1 -0
  59. package/dist/cjs/components/adapters/CheckboxInput.cjs +30 -0
  60. package/dist/cjs/components/adapters/CheckboxInput.cjs.map +1 -0
  61. package/dist/cjs/components/adapters/Consent.cjs +69 -0
  62. package/dist/cjs/components/adapters/Consent.cjs.map +1 -0
  63. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs +81 -0
  64. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs.map +1 -0
  65. package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs +46 -0
  66. package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs.map +1 -0
  67. package/dist/cjs/components/adapters/DateInput.cjs +30 -0
  68. package/dist/cjs/components/adapters/DateInput.cjs.map +1 -0
  69. package/dist/cjs/components/adapters/DividerComponent.cjs +24 -0
  70. package/dist/cjs/components/adapters/DividerComponent.cjs.map +1 -0
  71. package/dist/cjs/components/adapters/EmailInput.cjs +30 -0
  72. package/dist/cjs/components/adapters/EmailInput.cjs.map +1 -0
  73. package/dist/cjs/components/adapters/FacebookButton.cjs +41 -0
  74. package/dist/cjs/components/adapters/FacebookButton.cjs.map +1 -0
  75. package/dist/cjs/components/adapters/FlowTimer.cjs +52 -0
  76. package/dist/cjs/components/adapters/FlowTimer.cjs.map +1 -0
  77. package/dist/cjs/components/adapters/FormContainer.cjs +36 -0
  78. package/dist/cjs/components/adapters/FormContainer.cjs.map +1 -0
  79. package/dist/cjs/components/adapters/GitHubButton.cjs +41 -0
  80. package/dist/cjs/components/adapters/GitHubButton.cjs.map +1 -0
  81. package/dist/cjs/components/adapters/GoogleButton.cjs +59 -0
  82. package/dist/cjs/components/adapters/GoogleButton.cjs.map +1 -0
  83. package/dist/cjs/components/adapters/ImageComponent.cjs +77 -0
  84. package/dist/cjs/components/adapters/ImageComponent.cjs.map +1 -0
  85. package/dist/cjs/components/adapters/LinkedInButton.cjs +38 -0
  86. package/dist/cjs/components/adapters/LinkedInButton.cjs.map +1 -0
  87. package/dist/cjs/components/adapters/MicrosoftButton.cjs +56 -0
  88. package/dist/cjs/components/adapters/MicrosoftButton.cjs.map +1 -0
  89. package/dist/cjs/components/adapters/NumberInput.cjs +30 -0
  90. package/dist/cjs/components/adapters/NumberInput.cjs.map +1 -0
  91. package/dist/cjs/components/adapters/PasswordInput.cjs +52 -0
  92. package/dist/cjs/components/adapters/PasswordInput.cjs.map +1 -0
  93. package/dist/cjs/components/adapters/SelectInput.cjs +36 -0
  94. package/dist/cjs/components/adapters/SelectInput.cjs.map +1 -0
  95. package/dist/cjs/components/adapters/SignInWithEthereumButton.cjs +38 -0
  96. package/dist/cjs/components/adapters/SignInWithEthereumButton.cjs.map +1 -0
  97. package/dist/cjs/components/adapters/SmsOtpButton.cjs +38 -0
  98. package/dist/cjs/components/adapters/SmsOtpButton.cjs.map +1 -0
  99. package/dist/cjs/components/adapters/SubmitButton.cjs +61 -0
  100. package/dist/cjs/components/adapters/SubmitButton.cjs.map +1 -0
  101. package/dist/cjs/components/adapters/TelephoneInput.cjs +32 -0
  102. package/dist/cjs/components/adapters/TelephoneInput.cjs.map +1 -0
  103. package/dist/cjs/components/adapters/TextInput.cjs +30 -0
  104. package/dist/cjs/components/adapters/TextInput.cjs.map +1 -0
  105. package/dist/cjs/components/adapters/Typography.cjs +60 -0
  106. package/dist/cjs/components/adapters/Typography.cjs.map +1 -0
  107. package/dist/cjs/components/auth/Callback/Callback.cjs +26 -0
  108. package/dist/cjs/components/auth/Callback/Callback.cjs.map +1 -0
  109. package/dist/cjs/components/auth/Callback/OAuthCallback.cjs +104 -0
  110. package/dist/cjs/components/auth/Callback/OAuthCallback.cjs.map +1 -0
  111. package/dist/cjs/components/auth/Callback/TokenCallback.cjs +134 -0
  112. package/dist/cjs/components/auth/Callback/TokenCallback.cjs.map +1 -0
  113. package/dist/cjs/components/control/Loading.cjs +35 -0
  114. package/dist/cjs/components/control/Loading.cjs.map +1 -0
  115. package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs +34 -0
  116. package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs.map +1 -0
  117. package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs +58 -0
  118. package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs.map +1 -0
  119. package/dist/cjs/components/control/SignedIn.cjs +35 -0
  120. package/dist/cjs/components/control/SignedIn.cjs.map +1 -0
  121. package/dist/cjs/components/control/SignedOut.cjs +35 -0
  122. package/dist/cjs/components/control/SignedOut.cjs.map +1 -0
  123. package/dist/cjs/components/factories/FieldFactory.cjs +142 -0
  124. package/dist/cjs/components/factories/FieldFactory.cjs.map +1 -0
  125. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs +183 -0
  126. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs.map +1 -0
  127. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs +150 -0
  128. package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs.map +1 -0
  129. package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs +90 -0
  130. package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs.map +1 -0
  131. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs +118 -0
  132. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs.map +1 -0
  133. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs +118 -0
  134. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs.map +1 -0
  135. package/dist/cjs/components/presentation/LanguageSwitcher/LanguageSwitcher.cjs +76 -0
  136. package/dist/cjs/components/presentation/LanguageSwitcher/LanguageSwitcher.cjs.map +1 -0
  137. package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs +41 -0
  138. package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs.map +1 -0
  139. package/dist/cjs/components/presentation/Organization/Organization.cjs +49 -0
  140. package/dist/cjs/components/presentation/Organization/Organization.cjs.map +1 -0
  141. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs +257 -0
  142. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs.map +1 -0
  143. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs +236 -0
  144. package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs.map +1 -0
  145. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs +86 -0
  146. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs.map +1 -0
  147. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs +75 -0
  148. package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs.map +1 -0
  149. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs +328 -0
  150. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs.map +1 -0
  151. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs +166 -0
  152. package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs.map +1 -0
  153. package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs +126 -0
  154. package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs.map +1 -0
  155. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs +288 -0
  156. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs.map +1 -0
  157. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs +237 -0
  158. package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs.map +1 -0
  159. package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs +127 -0
  160. package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs.map +1 -0
  161. package/dist/cjs/components/presentation/User/BaseUser.cjs +41 -0
  162. package/dist/cjs/components/presentation/User/BaseUser.cjs.map +1 -0
  163. package/dist/cjs/components/presentation/User/User.cjs +45 -0
  164. package/dist/cjs/components/presentation/User/User.cjs.map +1 -0
  165. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs +191 -0
  166. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -0
  167. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs +201 -0
  168. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs.map +1 -0
  169. package/dist/cjs/components/presentation/UserDropdown/UserDropdown.cjs +111 -0
  170. package/dist/cjs/components/presentation/UserDropdown/UserDropdown.cjs.map +1 -0
  171. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs +460 -0
  172. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs.map +1 -0
  173. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs +217 -0
  174. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs.map +1 -0
  175. package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs +81 -0
  176. package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs.map +1 -0
  177. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/AcceptInvite.cjs +109 -0
  178. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/AcceptInvite.cjs.map +1 -0
  179. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.cjs +504 -0
  180. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.cjs.map +1 -0
  181. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.cjs +52 -0
  182. package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.cjs.map +1 -0
  183. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs +454 -0
  184. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -0
  185. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.cjs +419 -0
  186. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.cjs.map +1 -0
  187. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.cjs +52 -0
  188. package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.cjs.map +1 -0
  189. package/dist/cjs/components/presentation/auth/InviteUser/v2/InviteUser.cjs +118 -0
  190. package/dist/cjs/components/presentation/auth/InviteUser/v2/InviteUser.cjs.map +1 -0
  191. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs +183 -0
  192. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs.map +1 -0
  193. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs +128 -0
  194. package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs.map +1 -0
  195. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs +20 -0
  196. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs.map +1 -0
  197. package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs +49 -0
  198. package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs.map +1 -0
  199. package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs +293 -0
  200. package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs.map +1 -0
  201. package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs +43 -0
  202. package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs.map +1 -0
  203. package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs +163 -0
  204. package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs.map +1 -0
  205. package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs +378 -0
  206. package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs.map +1 -0
  207. package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs +78 -0
  208. package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs.map +1 -0
  209. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs +20 -0
  210. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs.map +1 -0
  211. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs +154 -0
  212. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs.map +1 -0
  213. package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs +86 -0
  214. package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs.map +1 -0
  215. package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs +734 -0
  216. package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs.map +1 -0
  217. package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs +68 -0
  218. package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs.map +1 -0
  219. package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs +59 -0
  220. package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs.map +1 -0
  221. package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs +139 -0
  222. package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs.map +1 -0
  223. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs +147 -0
  224. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs.map +1 -0
  225. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs +68 -0
  226. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs.map +1 -0
  227. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs +38 -0
  228. package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs.map +1 -0
  229. package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs +68 -0
  230. package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs.map +1 -0
  231. package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs +60 -0
  232. package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs.map +1 -0
  233. package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs +330 -0
  234. package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs.map +1 -0
  235. package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs +560 -0
  236. package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs.map +1 -0
  237. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs +20 -0
  238. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs.map +1 -0
  239. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs +150 -0
  240. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs.map +1 -0
  241. package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs +90 -0
  242. package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs.map +1 -0
  243. package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs +451 -0
  244. package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs.map +1 -0
  245. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs +54 -0
  246. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs.map +1 -0
  247. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs +164 -0
  248. package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs.map +1 -0
  249. package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs +679 -0
  250. package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs.map +1 -0
  251. package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs +80 -0
  252. package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs.map +1 -0
  253. package/dist/cjs/components/primitives/Alert/Alert.cjs +107 -0
  254. package/dist/cjs/components/primitives/Alert/Alert.cjs.map +1 -0
  255. package/dist/cjs/components/primitives/Alert/Alert.styles.cjs +89 -0
  256. package/dist/cjs/components/primitives/Alert/Alert.styles.cjs.map +1 -0
  257. package/dist/cjs/components/primitives/Avatar/Avatar.cjs +65 -0
  258. package/dist/cjs/components/primitives/Avatar/Avatar.cjs.map +1 -0
  259. package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs +87 -0
  260. package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs.map +1 -0
  261. package/dist/cjs/components/primitives/Button/Button.cjs +97 -0
  262. package/dist/cjs/components/primitives/Button/Button.cjs.map +1 -0
  263. package/dist/cjs/components/primitives/Button/Button.styles.cjs +347 -0
  264. package/dist/cjs/components/primitives/Button/Button.styles.cjs.map +1 -0
  265. package/dist/cjs/components/primitives/Card/Card.cjs +178 -0
  266. package/dist/cjs/components/primitives/Card/Card.cjs.map +1 -0
  267. package/dist/cjs/components/primitives/Card/Card.styles.cjs +100 -0
  268. package/dist/cjs/components/primitives/Card/Card.styles.cjs.map +1 -0
  269. package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs +46 -0
  270. package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs.map +1 -0
  271. package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs +79 -0
  272. package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs.map +1 -0
  273. package/dist/cjs/components/primitives/CopyableText/CopyableText.cjs +63 -0
  274. package/dist/cjs/components/primitives/CopyableText/CopyableText.cjs.map +1 -0
  275. package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs +48 -0
  276. package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs.map +1 -0
  277. package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs +47 -0
  278. package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs.map +1 -0
  279. package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs +87 -0
  280. package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs.map +1 -0
  281. package/dist/cjs/components/primitives/Dialog/Dialog.cjs +200 -0
  282. package/dist/cjs/components/primitives/Dialog/Dialog.cjs.map +1 -0
  283. package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs +75 -0
  284. package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs.map +1 -0
  285. package/dist/cjs/components/primitives/Divider/Divider.cjs +71 -0
  286. package/dist/cjs/components/primitives/Divider/Divider.cjs.map +1 -0
  287. package/dist/cjs/components/primitives/Divider/Divider.styles.cjs +72 -0
  288. package/dist/cjs/components/primitives/Divider/Divider.styles.cjs.map +1 -0
  289. package/dist/cjs/components/primitives/FormControl/FormControl.cjs +33 -0
  290. package/dist/cjs/components/primitives/FormControl/FormControl.cjs.map +1 -0
  291. package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs +43 -0
  292. package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs.map +1 -0
  293. package/dist/cjs/components/primitives/Icons/ArrowLeftRight.cjs +31 -0
  294. package/dist/cjs/components/primitives/Icons/ArrowLeftRight.cjs.map +1 -0
  295. package/dist/cjs/components/primitives/Icons/ArrowRightLeft.cjs +31 -0
  296. package/dist/cjs/components/primitives/Icons/ArrowRightLeft.cjs.map +1 -0
  297. package/dist/cjs/components/primitives/Icons/Building.cjs +75 -0
  298. package/dist/cjs/components/primitives/Icons/Building.cjs.map +1 -0
  299. package/dist/cjs/components/primitives/Icons/BuildingAlt.cjs +37 -0
  300. package/dist/cjs/components/primitives/Icons/BuildingAlt.cjs.map +1 -0
  301. package/dist/cjs/components/primitives/Icons/Check.cjs +31 -0
  302. package/dist/cjs/components/primitives/Icons/Check.cjs.map +1 -0
  303. package/dist/cjs/components/primitives/Icons/ChevronDown.cjs +31 -0
  304. package/dist/cjs/components/primitives/Icons/ChevronDown.cjs.map +1 -0
  305. package/dist/cjs/components/primitives/Icons/CircleAlert.cjs +44 -0
  306. package/dist/cjs/components/primitives/Icons/CircleAlert.cjs.map +1 -0
  307. package/dist/cjs/components/primitives/Icons/CircleCheck.cjs +30 -0
  308. package/dist/cjs/components/primitives/Icons/CircleCheck.cjs.map +1 -0
  309. package/dist/cjs/components/primitives/Icons/Eye.cjs +30 -0
  310. package/dist/cjs/components/primitives/Icons/Eye.cjs.map +1 -0
  311. package/dist/cjs/components/primitives/Icons/EyeOff.cjs +31 -0
  312. package/dist/cjs/components/primitives/Icons/EyeOff.cjs.map +1 -0
  313. package/dist/cjs/components/primitives/Icons/Info.cjs +34 -0
  314. package/dist/cjs/components/primitives/Icons/Info.cjs.map +1 -0
  315. package/dist/cjs/components/primitives/Icons/LogOut.cjs +30 -0
  316. package/dist/cjs/components/primitives/Icons/LogOut.cjs.map +1 -0
  317. package/dist/cjs/components/primitives/Icons/Plus.cjs +26 -0
  318. package/dist/cjs/components/primitives/Icons/Plus.cjs.map +1 -0
  319. package/dist/cjs/components/primitives/Icons/TriangleAlert.cjs +30 -0
  320. package/dist/cjs/components/primitives/Icons/TriangleAlert.cjs.map +1 -0
  321. package/dist/cjs/components/primitives/Icons/User.cjs +30 -0
  322. package/dist/cjs/components/primitives/Icons/User.cjs.map +1 -0
  323. package/dist/cjs/components/primitives/Icons/X.cjs +26 -0
  324. package/dist/cjs/components/primitives/Icons/X.cjs.map +1 -0
  325. package/dist/cjs/components/primitives/Icons/flowIconRegistry.cjs +17 -0
  326. package/dist/cjs/components/primitives/Icons/flowIconRegistry.cjs.map +1 -0
  327. package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs +32 -0
  328. package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs.map +1 -0
  329. package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs +58 -0
  330. package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs.map +1 -0
  331. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs +215 -0
  332. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs.map +1 -0
  333. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs +175 -0
  334. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs.map +1 -0
  335. package/dist/cjs/components/primitives/Logo/Logo.cjs +37 -0
  336. package/dist/cjs/components/primitives/Logo/Logo.cjs.map +1 -0
  337. package/dist/cjs/components/primitives/Logo/Logo.styles.cjs +53 -0
  338. package/dist/cjs/components/primitives/Logo/Logo.styles.cjs.map +1 -0
  339. package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs +142 -0
  340. package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs.map +1 -0
  341. package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs +115 -0
  342. package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs.map +1 -0
  343. package/dist/cjs/components/primitives/OtpField/OtpField.cjs +129 -0
  344. package/dist/cjs/components/primitives/OtpField/OtpField.cjs.map +1 -0
  345. package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs +85 -0
  346. package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs.map +1 -0
  347. package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs +49 -0
  348. package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs.map +1 -0
  349. package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs +49 -0
  350. package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs.map +1 -0
  351. package/dist/cjs/components/primitives/Select/Select.cjs +50 -0
  352. package/dist/cjs/components/primitives/Select/Select.cjs.map +1 -0
  353. package/dist/cjs/components/primitives/Select/Select.styles.cjs +98 -0
  354. package/dist/cjs/components/primitives/Select/Select.styles.cjs.map +1 -0
  355. package/dist/cjs/components/primitives/Spinner/Spinner.cjs +41 -0
  356. package/dist/cjs/components/primitives/Spinner/Spinner.cjs.map +1 -0
  357. package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs +67 -0
  358. package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs.map +1 -0
  359. package/dist/cjs/components/primitives/TextField/TextField.cjs +66 -0
  360. package/dist/cjs/components/primitives/TextField/TextField.cjs.map +1 -0
  361. package/dist/cjs/components/primitives/TextField/TextField.styles.cjs +132 -0
  362. package/dist/cjs/components/primitives/TextField/TextField.styles.cjs.map +1 -0
  363. package/dist/cjs/components/primitives/Toggle/Toggle.cjs +64 -0
  364. package/dist/cjs/components/primitives/Toggle/Toggle.cjs.map +1 -0
  365. package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs +101 -0
  366. package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs.map +1 -0
  367. package/dist/cjs/components/primitives/Typography/Typography.cjs +64 -0
  368. package/dist/cjs/components/primitives/Typography/Typography.cjs.map +1 -0
  369. package/dist/cjs/components/primitives/Typography/Typography.styles.cjs +276 -0
  370. package/dist/cjs/components/primitives/Typography/Typography.styles.cjs.map +1 -0
  371. package/dist/cjs/contexts/Branding/BrandingContext.cjs +12 -0
  372. package/dist/cjs/contexts/Branding/BrandingContext.cjs.map +1 -0
  373. package/dist/cjs/contexts/Branding/BrandingProvider.cjs +96 -0
  374. package/dist/cjs/contexts/Branding/BrandingProvider.cjs.map +1 -0
  375. package/dist/cjs/contexts/Branding/useBrandingContext.cjs +40 -0
  376. package/dist/cjs/contexts/Branding/useBrandingContext.cjs.map +1 -0
  377. package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs +11 -0
  378. package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs.map +1 -0
  379. package/dist/cjs/contexts/ComponentRenderer/ComponentRendererProvider.cjs +15 -0
  380. package/dist/cjs/contexts/ComponentRenderer/ComponentRendererProvider.cjs.map +1 -0
  381. package/dist/cjs/contexts/Flow/FlowContext.cjs +17 -0
  382. package/dist/cjs/contexts/Flow/FlowContext.cjs.map +1 -0
  383. package/dist/cjs/contexts/Flow/FlowProvider.cjs +135 -0
  384. package/dist/cjs/contexts/Flow/FlowProvider.cjs.map +1 -0
  385. package/dist/cjs/contexts/Flow/useFlow.cjs +44 -0
  386. package/dist/cjs/contexts/Flow/useFlow.cjs.map +1 -0
  387. package/dist/cjs/contexts/FlowMeta/FlowMetaContext.cjs +12 -0
  388. package/dist/cjs/contexts/FlowMeta/FlowMetaContext.cjs.map +1 -0
  389. package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs +154 -0
  390. package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs.map +1 -0
  391. package/dist/cjs/contexts/FlowMeta/useFlowMeta.cjs +16 -0
  392. package/dist/cjs/contexts/FlowMeta/useFlowMeta.cjs.map +1 -0
  393. package/dist/cjs/contexts/I18n/ComponentPreferencesContext.cjs +16 -0
  394. package/dist/cjs/contexts/I18n/ComponentPreferencesContext.cjs.map +1 -0
  395. package/dist/cjs/contexts/I18n/I18nContext.cjs +12 -0
  396. package/dist/cjs/contexts/I18n/I18nContext.cjs.map +1 -0
  397. package/dist/cjs/contexts/I18n/I18nProvider.cjs +217 -0
  398. package/dist/cjs/contexts/I18n/I18nProvider.cjs.map +1 -0
  399. package/dist/cjs/contexts/I18n/useI18n.cjs +23 -0
  400. package/dist/cjs/contexts/I18n/useI18n.cjs.map +1 -0
  401. package/dist/cjs/contexts/Organization/OrganizationContext.cjs +27 -0
  402. package/dist/cjs/contexts/Organization/OrganizationContext.cjs.map +1 -0
  403. package/dist/cjs/contexts/Organization/OrganizationProvider.cjs +97 -0
  404. package/dist/cjs/contexts/Organization/OrganizationProvider.cjs.map +1 -0
  405. package/dist/cjs/contexts/Organization/useOrganization.cjs +100 -0
  406. package/dist/cjs/contexts/Organization/useOrganization.cjs.map +1 -0
  407. package/dist/cjs/contexts/Theme/ThemeContext.cjs +12 -0
  408. package/dist/cjs/contexts/Theme/ThemeContext.cjs.map +1 -0
  409. package/dist/cjs/contexts/Theme/ThemeProvider.cjs +69 -0
  410. package/dist/cjs/contexts/Theme/ThemeProvider.cjs.map +1 -0
  411. package/dist/cjs/contexts/Theme/useTheme.cjs +16 -0
  412. package/dist/cjs/contexts/Theme/useTheme.cjs.map +1 -0
  413. package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs +190 -0
  414. package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs.map +1 -0
  415. package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs +108 -0
  416. package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs.map +1 -0
  417. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +52 -0
  418. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -0
  419. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +407 -0
  420. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -0
  421. package/dist/cjs/contexts/ThunderID/useThunderID.cjs +32 -0
  422. package/dist/cjs/contexts/ThunderID/useThunderID.cjs.map +1 -0
  423. package/dist/cjs/contexts/User/UserContext.cjs +22 -0
  424. package/dist/cjs/contexts/User/UserContext.cjs.map +1 -0
  425. package/dist/cjs/contexts/User/UserProvider.cjs +60 -0
  426. package/dist/cjs/contexts/User/UserProvider.cjs.map +1 -0
  427. package/dist/cjs/contexts/User/useUser.cjs +90 -0
  428. package/dist/cjs/contexts/User/useUser.cjs.map +1 -0
  429. package/dist/cjs/hooks/useBranding.cjs +71 -0
  430. package/dist/cjs/hooks/useBranding.cjs.map +1 -0
  431. package/dist/cjs/hooks/useBrowserUrl.cjs +33 -0
  432. package/dist/cjs/hooks/useBrowserUrl.cjs.map +1 -0
  433. package/dist/cjs/hooks/useForm.cjs +217 -0
  434. package/dist/cjs/hooks/useForm.cjs.map +1 -0
  435. package/dist/cjs/hooks/useTranslation.cjs +79 -0
  436. package/dist/cjs/hooks/useTranslation.cjs.map +1 -0
  437. package/dist/cjs/hooks/v2/useOAuthCallback.cjs +86 -0
  438. package/dist/cjs/hooks/v2/useOAuthCallback.cjs.map +1 -0
  439. package/dist/cjs/index.cjs +375 -0
  440. package/dist/cjs/utils/applyThemeToDOM.cjs +16 -0
  441. package/dist/cjs/utils/applyThemeToDOM.cjs.map +1 -0
  442. package/dist/cjs/utils/getDisplayName.cjs +50 -0
  443. package/dist/cjs/utils/getDisplayName.cjs.map +1 -0
  444. package/dist/cjs/utils/getMappedUserProfileValue.cjs +61 -0
  445. package/dist/cjs/utils/getMappedUserProfileValue.cjs.map +1 -0
  446. package/dist/cjs/utils/normalizeThemeConfig.cjs +43 -0
  447. package/dist/cjs/utils/normalizeThemeConfig.cjs.map +1 -0
  448. package/dist/cjs/utils/oauth.cjs +28 -0
  449. package/dist/cjs/utils/oauth.cjs.map +1 -0
  450. package/dist/cjs/utils/v2/buildThemeConfigFromFlowMeta.cjs +48 -0
  451. package/dist/cjs/utils/v2/buildThemeConfigFromFlowMeta.cjs.map +1 -0
  452. package/dist/cjs/utils/v2/flowTransformer.cjs +153 -0
  453. package/dist/cjs/utils/v2/flowTransformer.cjs.map +1 -0
  454. package/dist/cjs/utils/v2/getAuthComponentHeadings.cjs +103 -0
  455. package/dist/cjs/utils/v2/getAuthComponentHeadings.cjs.map +1 -0
  456. package/dist/cjs/utils/v2/passkey.cjs +93 -0
  457. package/dist/cjs/utils/v2/passkey.cjs.map +1 -0
  458. package/dist/cjs/utils/v2/resolveTranslationsInArray.cjs +21 -0
  459. package/dist/cjs/utils/v2/resolveTranslationsInArray.cjs.map +1 -0
  460. package/dist/cjs/utils/v2/resolveTranslationsInObject.cjs +33 -0
  461. package/dist/cjs/utils/v2/resolveTranslationsInObject.cjs.map +1 -0
  462. package/dist/components/actions/SignInButton/BaseSignInButton.js +49 -0
  463. package/dist/components/actions/SignInButton/BaseSignInButton.js.map +1 -0
  464. package/dist/components/actions/SignInButton/SignInButton.d.ts +6 -0
  465. package/dist/components/actions/SignInButton/SignInButton.d.ts.map +1 -1
  466. package/dist/components/actions/SignInButton/SignInButton.js +84 -0
  467. package/dist/components/actions/SignInButton/SignInButton.js.map +1 -0
  468. package/dist/components/actions/SignOutButton/BaseSignOutButton.js +49 -0
  469. package/dist/components/actions/SignOutButton/BaseSignOutButton.js.map +1 -0
  470. package/dist/components/actions/SignOutButton/SignOutButton.js +80 -0
  471. package/dist/components/actions/SignOutButton/SignOutButton.js.map +1 -0
  472. package/dist/components/actions/SignUpButton/BaseSignUpButton.js +51 -0
  473. package/dist/components/actions/SignUpButton/BaseSignUpButton.js.map +1 -0
  474. package/dist/components/actions/SignUpButton/SignUpButton.js +82 -0
  475. package/dist/components/actions/SignUpButton/SignUpButton.js.map +1 -0
  476. package/dist/components/adapters/CheckboxInput.js +28 -0
  477. package/dist/components/adapters/CheckboxInput.js.map +1 -0
  478. package/dist/components/adapters/Consent.js +67 -0
  479. package/dist/components/adapters/Consent.js.map +1 -0
  480. package/dist/components/adapters/ConsentCheckboxList.js +76 -0
  481. package/dist/components/adapters/ConsentCheckboxList.js.map +1 -0
  482. package/dist/components/adapters/ConsentCheckboxList.styles.js +43 -0
  483. package/dist/components/adapters/ConsentCheckboxList.styles.js.map +1 -0
  484. package/dist/components/adapters/DateInput.js +28 -0
  485. package/dist/components/adapters/DateInput.js.map +1 -0
  486. package/dist/components/adapters/DividerComponent.js +22 -0
  487. package/dist/components/adapters/DividerComponent.js.map +1 -0
  488. package/dist/components/adapters/EmailInput.js +28 -0
  489. package/dist/components/adapters/EmailInput.js.map +1 -0
  490. package/dist/components/adapters/FacebookButton.js +39 -0
  491. package/dist/components/adapters/FacebookButton.js.map +1 -0
  492. package/dist/components/adapters/FlowTimer.js +49 -0
  493. package/dist/components/adapters/FlowTimer.js.map +1 -0
  494. package/dist/components/adapters/FormContainer.js +34 -0
  495. package/dist/components/adapters/FormContainer.js.map +1 -0
  496. package/dist/components/adapters/GitHubButton.js +39 -0
  497. package/dist/components/adapters/GitHubButton.js.map +1 -0
  498. package/dist/components/adapters/GoogleButton.js +57 -0
  499. package/dist/components/adapters/GoogleButton.js.map +1 -0
  500. package/dist/components/adapters/ImageComponent.js +74 -0
  501. package/dist/components/adapters/ImageComponent.js.map +1 -0
  502. package/dist/components/adapters/LinkedInButton.js +36 -0
  503. package/dist/components/adapters/LinkedInButton.js.map +1 -0
  504. package/dist/components/adapters/MicrosoftButton.js +54 -0
  505. package/dist/components/adapters/MicrosoftButton.js.map +1 -0
  506. package/dist/components/adapters/NumberInput.js +28 -0
  507. package/dist/components/adapters/NumberInput.js.map +1 -0
  508. package/dist/components/adapters/PasswordInput.js +50 -0
  509. package/dist/components/adapters/PasswordInput.js.map +1 -0
  510. package/dist/components/adapters/SelectInput.js +34 -0
  511. package/dist/components/adapters/SelectInput.js.map +1 -0
  512. package/dist/components/adapters/SignInWithEthereumButton.js +36 -0
  513. package/dist/components/adapters/SignInWithEthereumButton.js.map +1 -0
  514. package/dist/components/adapters/SmsOtpButton.js +36 -0
  515. package/dist/components/adapters/SmsOtpButton.js.map +1 -0
  516. package/dist/components/adapters/SubmitButton.js +59 -0
  517. package/dist/components/adapters/SubmitButton.js.map +1 -0
  518. package/dist/components/adapters/TelephoneInput.js +30 -0
  519. package/dist/components/adapters/TelephoneInput.js.map +1 -0
  520. package/dist/components/adapters/TextInput.js +28 -0
  521. package/dist/components/adapters/TextInput.js.map +1 -0
  522. package/dist/components/adapters/Typography.js +58 -0
  523. package/dist/components/adapters/Typography.js.map +1 -0
  524. package/dist/components/auth/Callback/Callback.d.ts +6 -44
  525. package/dist/components/auth/Callback/Callback.d.ts.map +1 -1
  526. package/dist/components/auth/Callback/Callback.js +23 -0
  527. package/dist/components/auth/Callback/Callback.js.map +1 -0
  528. package/dist/components/auth/Callback/OAuthCallback.d.ts +52 -0
  529. package/dist/components/auth/Callback/OAuthCallback.d.ts.map +1 -0
  530. package/dist/components/auth/Callback/OAuthCallback.js +101 -0
  531. package/dist/components/auth/Callback/OAuthCallback.js.map +1 -0
  532. package/dist/components/auth/Callback/TokenCallback.d.ts +44 -0
  533. package/dist/components/auth/Callback/TokenCallback.d.ts.map +1 -0
  534. package/dist/components/auth/Callback/TokenCallback.js +131 -0
  535. package/dist/components/auth/Callback/TokenCallback.js.map +1 -0
  536. package/dist/components/control/Loading.js +33 -0
  537. package/dist/components/control/Loading.js.map +1 -0
  538. package/dist/components/control/OrganizationContext/OrganizationContext.js +32 -0
  539. package/dist/components/control/OrganizationContext/OrganizationContext.js.map +1 -0
  540. package/dist/components/control/OrganizationContext/OrganizationContextController.js +55 -0
  541. package/dist/components/control/OrganizationContext/OrganizationContextController.js.map +1 -0
  542. package/dist/components/control/SignedIn.js +33 -0
  543. package/dist/components/control/SignedIn.js.map +1 -0
  544. package/dist/components/control/SignedOut.js +33 -0
  545. package/dist/components/control/SignedOut.js.map +1 -0
  546. package/dist/components/factories/FieldFactory.js +137 -0
  547. package/dist/components/factories/FieldFactory.js.map +1 -0
  548. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js +178 -0
  549. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js.map +1 -0
  550. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js +147 -0
  551. package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js.map +1 -0
  552. package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts +1 -1
  553. package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts.map +1 -1
  554. package/dist/components/presentation/CreateOrganization/CreateOrganization.js +87 -0
  555. package/dist/components/presentation/CreateOrganization/CreateOrganization.js.map +1 -0
  556. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js +113 -0
  557. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js.map +1 -0
  558. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js +115 -0
  559. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js.map +1 -0
  560. package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.js +72 -0
  561. package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.js.map +1 -0
  562. package/dist/components/presentation/Organization/BaseOrganization.js +39 -0
  563. package/dist/components/presentation/Organization/BaseOrganization.js.map +1 -0
  564. package/dist/components/presentation/Organization/Organization.js +47 -0
  565. package/dist/components/presentation/Organization/Organization.js.map +1 -0
  566. package/dist/components/presentation/OrganizationList/BaseOrganizationList.js +252 -0
  567. package/dist/components/presentation/OrganizationList/BaseOrganizationList.js.map +1 -0
  568. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js +233 -0
  569. package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js.map +1 -0
  570. package/dist/components/presentation/OrganizationList/OrganizationList.js +82 -0
  571. package/dist/components/presentation/OrganizationList/OrganizationList.js.map +1 -0
  572. package/dist/components/presentation/OrganizationList/OrganizationList.styles.js +72 -0
  573. package/dist/components/presentation/OrganizationList/OrganizationList.styles.js.map +1 -0
  574. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts +1 -1
  575. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts.map +1 -1
  576. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js +323 -0
  577. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js.map +1 -0
  578. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js +163 -0
  579. package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js.map +1 -0
  580. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js +122 -0
  581. package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js.map +1 -0
  582. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts +1 -1
  583. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts.map +1 -1
  584. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js +282 -0
  585. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js.map +1 -0
  586. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js +234 -0
  587. package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js.map +1 -0
  588. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts +1 -1
  589. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts.map +1 -1
  590. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js +124 -0
  591. package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js.map +1 -0
  592. package/dist/components/presentation/User/BaseUser.js +39 -0
  593. package/dist/components/presentation/User/BaseUser.js.map +1 -0
  594. package/dist/components/presentation/User/User.js +43 -0
  595. package/dist/components/presentation/User/User.js.map +1 -0
  596. package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts +1 -1
  597. package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
  598. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js +184 -0
  599. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -0
  600. package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js +198 -0
  601. package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js.map +1 -0
  602. package/dist/components/presentation/UserDropdown/UserDropdown.js +108 -0
  603. package/dist/components/presentation/UserDropdown/UserDropdown.js.map +1 -0
  604. package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts +1 -1
  605. package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts.map +1 -1
  606. package/dist/components/presentation/UserProfile/BaseUserProfile.js +455 -0
  607. package/dist/components/presentation/UserProfile/BaseUserProfile.js.map +1 -0
  608. package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js +213 -0
  609. package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js.map +1 -0
  610. package/dist/components/presentation/UserProfile/UserProfile.js +77 -0
  611. package/dist/components/presentation/UserProfile/UserProfile.js.map +1 -0
  612. package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.js +106 -0
  613. package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.js.map +1 -0
  614. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.d.ts +7 -3
  615. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.d.ts.map +1 -1
  616. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.js +500 -0
  617. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.js.map +1 -0
  618. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.js +49 -0
  619. package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.js.map +1 -0
  620. package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
  621. package/dist/components/presentation/auth/AuthOptionFactory.js +445 -0
  622. package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -0
  623. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.d.ts +3 -3
  624. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.d.ts.map +1 -1
  625. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.js +414 -0
  626. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.js.map +1 -0
  627. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.js +49 -0
  628. package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.js.map +1 -0
  629. package/dist/components/presentation/auth/InviteUser/v2/InviteUser.js +114 -0
  630. package/dist/components/presentation/auth/InviteUser/v2/InviteUser.js.map +1 -0
  631. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js +179 -0
  632. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js.map +1 -0
  633. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js +125 -0
  634. package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js.map +1 -0
  635. package/dist/components/presentation/auth/Recovery/BaseRecovery.js +17 -0
  636. package/dist/components/presentation/auth/Recovery/BaseRecovery.js.map +1 -0
  637. package/dist/components/presentation/auth/Recovery/Recovery.js +46 -0
  638. package/dist/components/presentation/auth/Recovery/Recovery.js.map +1 -0
  639. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js +288 -0
  640. package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js.map +1 -0
  641. package/dist/components/presentation/auth/Recovery/v1/Recovery.js +40 -0
  642. package/dist/components/presentation/auth/Recovery/v1/Recovery.js.map +1 -0
  643. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js +160 -0
  644. package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js.map +1 -0
  645. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts +5 -5
  646. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts.map +1 -1
  647. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js +373 -0
  648. package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js.map +1 -0
  649. package/dist/components/presentation/auth/Recovery/v2/Recovery.d.ts.map +1 -1
  650. package/dist/components/presentation/auth/Recovery/v2/Recovery.js +74 -0
  651. package/dist/components/presentation/auth/Recovery/v2/Recovery.js.map +1 -0
  652. package/dist/components/presentation/auth/SignIn/BaseSignIn.js +17 -0
  653. package/dist/components/presentation/auth/SignIn/BaseSignIn.js.map +1 -0
  654. package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js +151 -0
  655. package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js.map +1 -0
  656. package/dist/components/presentation/auth/SignIn/SignIn.js +83 -0
  657. package/dist/components/presentation/auth/SignIn/SignIn.js.map +1 -0
  658. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.d.ts.map +1 -1
  659. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js +729 -0
  660. package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js.map +1 -0
  661. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js +64 -0
  662. package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js.map +1 -0
  663. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js +55 -0
  664. package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js.map +1 -0
  665. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js +136 -0
  666. package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js.map +1 -0
  667. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js +143 -0
  668. package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js.map +1 -0
  669. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js +64 -0
  670. package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js.map +1 -0
  671. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js +36 -0
  672. package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js.map +1 -0
  673. package/dist/components/presentation/auth/SignIn/v1/options/Totp.js +64 -0
  674. package/dist/components/presentation/auth/SignIn/v1/options/Totp.js.map +1 -0
  675. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js +56 -0
  676. package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js.map +1 -0
  677. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts +1 -1
  678. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts.map +1 -1
  679. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js +325 -0
  680. package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js.map +1 -0
  681. package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts +1 -1
  682. package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts.map +1 -1
  683. package/dist/components/presentation/auth/SignIn/v2/SignIn.js +556 -0
  684. package/dist/components/presentation/auth/SignIn/v2/SignIn.js.map +1 -0
  685. package/dist/components/presentation/auth/SignUp/BaseSignUp.js +17 -0
  686. package/dist/components/presentation/auth/SignUp/BaseSignUp.js.map +1 -0
  687. package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js +147 -0
  688. package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js.map +1 -0
  689. package/dist/components/presentation/auth/SignUp/SignUp.js +87 -0
  690. package/dist/components/presentation/auth/SignUp/SignUp.js.map +1 -0
  691. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js +446 -0
  692. package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js.map +1 -0
  693. package/dist/components/presentation/auth/SignUp/v1/SignUp.js +51 -0
  694. package/dist/components/presentation/auth/SignUp/v1/SignUp.js.map +1 -0
  695. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js +160 -0
  696. package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js.map +1 -0
  697. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts +6 -6
  698. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts.map +1 -1
  699. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js +674 -0
  700. package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js.map +1 -0
  701. package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts +1 -1
  702. package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts.map +1 -1
  703. package/dist/components/presentation/auth/SignUp/v2/SignUp.js +77 -0
  704. package/dist/components/presentation/auth/SignUp/v2/SignUp.js.map +1 -0
  705. package/dist/components/primitives/Alert/Alert.js +102 -0
  706. package/dist/components/primitives/Alert/Alert.js.map +1 -0
  707. package/dist/components/primitives/Alert/Alert.styles.js +86 -0
  708. package/dist/components/primitives/Alert/Alert.styles.js.map +1 -0
  709. package/dist/components/primitives/Avatar/Avatar.js +60 -0
  710. package/dist/components/primitives/Avatar/Avatar.js.map +1 -0
  711. package/dist/components/primitives/Avatar/Avatar.styles.js +84 -0
  712. package/dist/components/primitives/Avatar/Avatar.styles.js.map +1 -0
  713. package/dist/components/primitives/Button/Button.js +92 -0
  714. package/dist/components/primitives/Button/Button.js.map +1 -0
  715. package/dist/components/primitives/Button/Button.styles.js +344 -0
  716. package/dist/components/primitives/Button/Button.styles.js.map +1 -0
  717. package/dist/components/primitives/Card/Card.js +173 -0
  718. package/dist/components/primitives/Card/Card.js.map +1 -0
  719. package/dist/components/primitives/Card/Card.styles.js +97 -0
  720. package/dist/components/primitives/Card/Card.styles.js.map +1 -0
  721. package/dist/components/primitives/Checkbox/Checkbox.js +42 -0
  722. package/dist/components/primitives/Checkbox/Checkbox.js.map +1 -0
  723. package/dist/components/primitives/Checkbox/Checkbox.styles.js +76 -0
  724. package/dist/components/primitives/Checkbox/Checkbox.styles.js.map +1 -0
  725. package/dist/components/primitives/CopyableText/CopyableText.js +60 -0
  726. package/dist/components/primitives/CopyableText/CopyableText.js.map +1 -0
  727. package/dist/components/primitives/CopyableText/CopyableText.styles.js +45 -0
  728. package/dist/components/primitives/CopyableText/CopyableText.styles.js.map +1 -0
  729. package/dist/components/primitives/DatePicker/DatePicker.js +43 -0
  730. package/dist/components/primitives/DatePicker/DatePicker.js.map +1 -0
  731. package/dist/components/primitives/DatePicker/DatePicker.styles.js +84 -0
  732. package/dist/components/primitives/DatePicker/DatePicker.styles.js.map +1 -0
  733. package/dist/components/primitives/Dialog/Dialog.js +194 -0
  734. package/dist/components/primitives/Dialog/Dialog.js.map +1 -0
  735. package/dist/components/primitives/Dialog/Dialog.styles.js +72 -0
  736. package/dist/components/primitives/Dialog/Dialog.styles.js.map +1 -0
  737. package/dist/components/primitives/Divider/Divider.js +67 -0
  738. package/dist/components/primitives/Divider/Divider.js.map +1 -0
  739. package/dist/components/primitives/Divider/Divider.styles.js +69 -0
  740. package/dist/components/primitives/Divider/Divider.styles.js.map +1 -0
  741. package/dist/components/primitives/FormControl/FormControl.js +29 -0
  742. package/dist/components/primitives/FormControl/FormControl.js.map +1 -0
  743. package/dist/components/primitives/FormControl/FormControl.styles.js +40 -0
  744. package/dist/components/primitives/FormControl/FormControl.styles.js.map +1 -0
  745. package/dist/components/primitives/Icons/ArrowLeftRight.js +29 -0
  746. package/dist/components/primitives/Icons/ArrowLeftRight.js.map +1 -0
  747. package/dist/components/primitives/Icons/ArrowRightLeft.js +29 -0
  748. package/dist/components/primitives/Icons/ArrowRightLeft.js.map +1 -0
  749. package/dist/components/primitives/Icons/Building.js +73 -0
  750. package/dist/components/primitives/Icons/Building.js.map +1 -0
  751. package/dist/components/primitives/Icons/BuildingAlt.js +35 -0
  752. package/dist/components/primitives/Icons/BuildingAlt.js.map +1 -0
  753. package/dist/components/primitives/Icons/Check.js +29 -0
  754. package/dist/components/primitives/Icons/Check.js.map +1 -0
  755. package/dist/components/primitives/Icons/ChevronDown.js +29 -0
  756. package/dist/components/primitives/Icons/ChevronDown.js.map +1 -0
  757. package/dist/components/primitives/Icons/CircleAlert.js +42 -0
  758. package/dist/components/primitives/Icons/CircleAlert.js.map +1 -0
  759. package/dist/components/primitives/Icons/CircleCheck.js +28 -0
  760. package/dist/components/primitives/Icons/CircleCheck.js.map +1 -0
  761. package/dist/components/primitives/Icons/Eye.js +28 -0
  762. package/dist/components/primitives/Icons/Eye.js.map +1 -0
  763. package/dist/components/primitives/Icons/EyeOff.js +29 -0
  764. package/dist/components/primitives/Icons/EyeOff.js.map +1 -0
  765. package/dist/components/primitives/Icons/Info.js +32 -0
  766. package/dist/components/primitives/Icons/Info.js.map +1 -0
  767. package/dist/components/primitives/Icons/LogOut.js +28 -0
  768. package/dist/components/primitives/Icons/LogOut.js.map +1 -0
  769. package/dist/components/primitives/Icons/Plus.js +24 -0
  770. package/dist/components/primitives/Icons/Plus.js.map +1 -0
  771. package/dist/components/primitives/Icons/TriangleAlert.js +28 -0
  772. package/dist/components/primitives/Icons/TriangleAlert.js.map +1 -0
  773. package/dist/components/primitives/Icons/User.js +28 -0
  774. package/dist/components/primitives/Icons/User.js.map +1 -0
  775. package/dist/components/primitives/Icons/X.js +24 -0
  776. package/dist/components/primitives/Icons/X.js.map +1 -0
  777. package/dist/components/primitives/Icons/flowIconRegistry.js +17 -0
  778. package/dist/components/primitives/Icons/flowIconRegistry.js.map +1 -0
  779. package/dist/components/primitives/InputLabel/InputLabel.js +28 -0
  780. package/dist/components/primitives/InputLabel/InputLabel.js.map +1 -0
  781. package/dist/components/primitives/InputLabel/InputLabel.styles.js +55 -0
  782. package/dist/components/primitives/InputLabel/InputLabel.styles.js.map +1 -0
  783. package/dist/components/primitives/KeyValueInput/KeyValueInput.js +210 -0
  784. package/dist/components/primitives/KeyValueInput/KeyValueInput.js.map +1 -0
  785. package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js +172 -0
  786. package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js.map +1 -0
  787. package/dist/components/primitives/Logo/Logo.js +33 -0
  788. package/dist/components/primitives/Logo/Logo.js.map +1 -0
  789. package/dist/components/primitives/Logo/Logo.styles.js +50 -0
  790. package/dist/components/primitives/Logo/Logo.styles.js.map +1 -0
  791. package/dist/components/primitives/MultiInput/MultiInput.js +137 -0
  792. package/dist/components/primitives/MultiInput/MultiInput.js.map +1 -0
  793. package/dist/components/primitives/MultiInput/MultiInput.styles.js +112 -0
  794. package/dist/components/primitives/MultiInput/MultiInput.styles.js.map +1 -0
  795. package/dist/components/primitives/OtpField/OtpField.js +124 -0
  796. package/dist/components/primitives/OtpField/OtpField.js.map +1 -0
  797. package/dist/components/primitives/OtpField/OtpField.styles.js +82 -0
  798. package/dist/components/primitives/OtpField/OtpField.styles.js.map +1 -0
  799. package/dist/components/primitives/PasswordField/PasswordField.js +44 -0
  800. package/dist/components/primitives/PasswordField/PasswordField.js.map +1 -0
  801. package/dist/components/primitives/PasswordField/PasswordField.styles.js +46 -0
  802. package/dist/components/primitives/PasswordField/PasswordField.styles.js.map +1 -0
  803. package/dist/components/primitives/Select/Select.js +46 -0
  804. package/dist/components/primitives/Select/Select.js.map +1 -0
  805. package/dist/components/primitives/Select/Select.styles.js +95 -0
  806. package/dist/components/primitives/Select/Select.styles.js.map +1 -0
  807. package/dist/components/primitives/Spinner/Spinner.js +37 -0
  808. package/dist/components/primitives/Spinner/Spinner.js.map +1 -0
  809. package/dist/components/primitives/Spinner/Spinner.styles.js +64 -0
  810. package/dist/components/primitives/Spinner/Spinner.styles.js.map +1 -0
  811. package/dist/components/primitives/TextField/TextField.d.ts.map +1 -1
  812. package/dist/components/primitives/TextField/TextField.js +62 -0
  813. package/dist/components/primitives/TextField/TextField.js.map +1 -0
  814. package/dist/components/primitives/TextField/TextField.styles.js +129 -0
  815. package/dist/components/primitives/TextField/TextField.styles.js.map +1 -0
  816. package/dist/components/primitives/Toggle/Toggle.js +60 -0
  817. package/dist/components/primitives/Toggle/Toggle.js.map +1 -0
  818. package/dist/components/primitives/Toggle/Toggle.styles.js +98 -0
  819. package/dist/components/primitives/Toggle/Toggle.styles.js.map +1 -0
  820. package/dist/components/primitives/Typography/Typography.js +60 -0
  821. package/dist/components/primitives/Typography/Typography.js.map +1 -0
  822. package/dist/components/primitives/Typography/Typography.styles.js +273 -0
  823. package/dist/components/primitives/Typography/Typography.styles.js.map +1 -0
  824. package/dist/contexts/Branding/BrandingContext.js +10 -0
  825. package/dist/contexts/Branding/BrandingContext.js.map +1 -0
  826. package/dist/contexts/Branding/BrandingProvider.js +92 -0
  827. package/dist/contexts/Branding/BrandingProvider.js.map +1 -0
  828. package/dist/contexts/Branding/useBrandingContext.js +38 -0
  829. package/dist/contexts/Branding/useBrandingContext.js.map +1 -0
  830. package/dist/contexts/ComponentRenderer/ComponentRendererContext.js +9 -0
  831. package/dist/contexts/ComponentRenderer/ComponentRendererContext.js.map +1 -0
  832. package/dist/contexts/ComponentRenderer/ComponentRendererProvider.js +13 -0
  833. package/dist/contexts/ComponentRenderer/ComponentRendererProvider.js.map +1 -0
  834. package/dist/contexts/Flow/FlowContext.js +15 -0
  835. package/dist/contexts/Flow/FlowContext.js.map +1 -0
  836. package/dist/contexts/Flow/FlowProvider.js +132 -0
  837. package/dist/contexts/Flow/FlowProvider.js.map +1 -0
  838. package/dist/contexts/Flow/useFlow.js +42 -0
  839. package/dist/contexts/Flow/useFlow.js.map +1 -0
  840. package/dist/contexts/FlowMeta/FlowMetaContext.js +10 -0
  841. package/dist/contexts/FlowMeta/FlowMetaContext.js.map +1 -0
  842. package/dist/contexts/FlowMeta/FlowMetaProvider.d.ts.map +1 -1
  843. package/dist/contexts/FlowMeta/FlowMetaProvider.js +150 -0
  844. package/dist/contexts/FlowMeta/FlowMetaProvider.js.map +1 -0
  845. package/dist/contexts/FlowMeta/useFlowMeta.js +14 -0
  846. package/dist/contexts/FlowMeta/useFlowMeta.js.map +1 -0
  847. package/dist/contexts/I18n/ComponentPreferencesContext.js +14 -0
  848. package/dist/contexts/I18n/ComponentPreferencesContext.js.map +1 -0
  849. package/dist/contexts/I18n/I18nContext.js +10 -0
  850. package/dist/contexts/I18n/I18nContext.js.map +1 -0
  851. package/dist/contexts/I18n/I18nProvider.js +213 -0
  852. package/dist/contexts/I18n/I18nProvider.js.map +1 -0
  853. package/dist/contexts/I18n/useI18n.js +21 -0
  854. package/dist/contexts/I18n/useI18n.js.map +1 -0
  855. package/dist/contexts/Organization/OrganizationContext.js +25 -0
  856. package/dist/contexts/Organization/OrganizationContext.js.map +1 -0
  857. package/dist/contexts/Organization/OrganizationProvider.d.ts.map +1 -1
  858. package/dist/contexts/Organization/OrganizationProvider.js +93 -0
  859. package/dist/contexts/Organization/OrganizationProvider.js.map +1 -0
  860. package/dist/contexts/Organization/useOrganization.js +98 -0
  861. package/dist/contexts/Organization/useOrganization.js.map +1 -0
  862. package/dist/contexts/Theme/ThemeContext.js +10 -0
  863. package/dist/contexts/Theme/ThemeContext.js.map +1 -0
  864. package/dist/contexts/Theme/ThemeProvider.js +66 -0
  865. package/dist/contexts/Theme/ThemeProvider.js.map +1 -0
  866. package/dist/contexts/Theme/useTheme.js +14 -0
  867. package/dist/contexts/Theme/useTheme.js.map +1 -0
  868. package/dist/contexts/Theme/v1/ThemeProvider.js +186 -0
  869. package/dist/contexts/Theme/v1/ThemeProvider.js.map +1 -0
  870. package/dist/contexts/Theme/v2/ThemeProvider.js +104 -0
  871. package/dist/contexts/Theme/v2/ThemeProvider.js.map +1 -0
  872. package/dist/contexts/ThunderID/ThunderIDContext.d.ts +12 -2
  873. package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
  874. package/dist/contexts/ThunderID/ThunderIDContext.js +50 -0
  875. package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -0
  876. package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
  877. package/dist/contexts/ThunderID/ThunderIDProvider.js +403 -0
  878. package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -0
  879. package/dist/contexts/ThunderID/useThunderID.js +29 -0
  880. package/dist/contexts/ThunderID/useThunderID.js.map +1 -0
  881. package/dist/contexts/User/UserContext.js +20 -0
  882. package/dist/contexts/User/UserContext.js.map +1 -0
  883. package/dist/contexts/User/UserProvider.js +57 -0
  884. package/dist/contexts/User/UserProvider.js.map +1 -0
  885. package/dist/contexts/User/useUser.js +88 -0
  886. package/dist/contexts/User/useUser.js.map +1 -0
  887. package/dist/hooks/useBranding.d.ts +1 -1
  888. package/dist/hooks/useBranding.js +69 -0
  889. package/dist/hooks/useBranding.js.map +1 -0
  890. package/dist/hooks/useBrowserUrl.js +31 -0
  891. package/dist/hooks/useBrowserUrl.js.map +1 -0
  892. package/dist/hooks/useForm.js +214 -0
  893. package/dist/hooks/useForm.js.map +1 -0
  894. package/dist/hooks/useTranslation.js +76 -0
  895. package/dist/hooks/useTranslation.js.map +1 -0
  896. package/dist/hooks/v2/useOAuthCallback.js +84 -0
  897. package/dist/hooks/v2/useOAuthCallback.js.map +1 -0
  898. package/dist/index.d.ts +4 -1
  899. package/dist/index.d.ts.map +1 -1
  900. package/dist/index.js +123 -19542
  901. package/dist/utils/applyThemeToDOM.js +15 -0
  902. package/dist/utils/applyThemeToDOM.js.map +1 -0
  903. package/dist/utils/getDisplayName.d.ts.map +1 -1
  904. package/dist/utils/getDisplayName.js +50 -0
  905. package/dist/utils/getDisplayName.js.map +1 -0
  906. package/dist/utils/getMappedUserProfileValue.js +59 -0
  907. package/dist/utils/getMappedUserProfileValue.js.map +1 -0
  908. package/dist/utils/normalizeThemeConfig.js +42 -0
  909. package/dist/utils/normalizeThemeConfig.js.map +1 -0
  910. package/dist/utils/oauth.js +26 -0
  911. package/dist/utils/oauth.js.map +1 -0
  912. package/dist/utils/v2/buildThemeConfigFromFlowMeta.js +47 -0
  913. package/dist/utils/v2/buildThemeConfigFromFlowMeta.js.map +1 -0
  914. package/dist/utils/v2/flowTransformer.d.ts +17 -8
  915. package/dist/utils/v2/flowTransformer.d.ts.map +1 -1
  916. package/dist/utils/v2/flowTransformer.js +152 -0
  917. package/dist/utils/v2/flowTransformer.js.map +1 -0
  918. package/dist/utils/v2/getAuthComponentHeadings.d.ts.map +1 -1
  919. package/dist/utils/v2/getAuthComponentHeadings.js +102 -0
  920. package/dist/utils/v2/getAuthComponentHeadings.js.map +1 -0
  921. package/dist/utils/v2/passkey.js +90 -0
  922. package/dist/utils/v2/passkey.js.map +1 -0
  923. package/dist/utils/v2/resolveTranslationsInArray.js +21 -0
  924. package/dist/utils/v2/resolveTranslationsInArray.js.map +1 -0
  925. package/dist/utils/v2/resolveTranslationsInObject.js +31 -0
  926. package/dist/utils/v2/resolveTranslationsInObject.js.map +1 -0
  927. package/package.json +8 -7
  928. package/dist/cjs/index.js +0 -19819
  929. package/dist/cjs/index.js.map +0 -1
  930. package/dist/index.js.map +0 -1
@@ -0,0 +1,50 @@
1
+ import { useMemo } from "react";
2
+ import { css } from "@emotion/css";
3
+
4
+ //#region src/components/primitives/Logo/Logo.styles.ts
5
+ /**
6
+ * Creates styles for the Logo component using BEM methodology
7
+ * @param theme - The theme object containing design tokens
8
+ * @param colorScheme - The current color scheme (used for memoization)
9
+ * @param size - The size of the logo
10
+ * @returns Object containing CSS class names for component styling
11
+ */
12
+ const useStyles = (theme, colorScheme, size) => useMemo(() => {
13
+ const baseLogo = css`
14
+ width: auto;
15
+ object-fit: contain;
16
+ display: block;
17
+ `;
18
+ const smallLogo = css`
19
+ height: 32px;
20
+ max-width: 120px;
21
+ `;
22
+ const mediumLogo = css`
23
+ height: 48px;
24
+ max-width: 180px;
25
+ `;
26
+ const largeLogo = css`
27
+ height: 64px;
28
+ max-width: 240px;
29
+ `;
30
+ return {
31
+ large: largeLogo,
32
+ logo: baseLogo,
33
+ medium: mediumLogo,
34
+ size: {
35
+ large: largeLogo,
36
+ medium: mediumLogo,
37
+ small: smallLogo
38
+ }[size],
39
+ small: smallLogo
40
+ };
41
+ }, [
42
+ theme,
43
+ colorScheme,
44
+ size
45
+ ]);
46
+ var Logo_styles_default = useStyles;
47
+
48
+ //#endregion
49
+ export { Logo_styles_default as default };
50
+ //# sourceMappingURL=Logo.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logo.styles.js","names":["baseLogo: string","smallLogo: string","mediumLogo: string","largeLogo: string"],"sources":["../../../../src/components/primitives/Logo/Logo.styles.ts"],"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 {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\nexport type LogoSize = 'small' | 'medium' | 'large';\n\n/**\n * Creates styles for the Logo component using BEM methodology\n * @param theme - The theme object containing design tokens\n * @param colorScheme - The current color scheme (used for memoization)\n * @param size - The size of the logo\n * @returns Object containing CSS class names for component styling\n */\nconst useStyles = (theme: Theme, colorScheme: string, size: LogoSize): Record<string, string> =>\n useMemo(() => {\n const baseLogo: string = css`\n width: auto;\n object-fit: contain;\n display: block;\n `;\n\n const smallLogo: string = css`\n height: 32px;\n max-width: 120px;\n `;\n\n const mediumLogo: string = css`\n height: 48px;\n max-width: 180px;\n `;\n\n const largeLogo: string = css`\n height: 64px;\n max-width: 240px;\n `;\n\n const sizeStyles: Record<string, string> = {\n large: largeLogo,\n medium: mediumLogo,\n small: smallLogo,\n };\n\n return {\n large: largeLogo,\n logo: baseLogo,\n medium: mediumLogo,\n size: sizeStyles[size],\n small: smallLogo,\n };\n }, [theme, colorScheme, size]);\n\nexport default useStyles;\n"],"mappings":";;;;;;;;;;;AA+BA,MAAM,aAAa,OAAc,aAAqB,SACpD,cAAc;CACZ,MAAMA,WAAmB,GAAG;;;;;CAM5B,MAAMC,YAAoB,GAAG;;;;CAK7B,MAAMC,aAAqB,GAAG;;;;CAK9B,MAAMC,YAAoB,GAAG;;;;AAW7B,QAAO;EACL,OAAO;EACP,MAAM;EACN,QAAQ;EACR,MAVyC;GACzC,OAAO;GACP,QAAQ;GACR,OAAO;GACR,CAMkB;EACjB,OAAO;EACR;GACA;CAAC;CAAO;CAAa;CAAK,CAAC;AAEhC,0BAAe"}
@@ -0,0 +1,137 @@
1
+ import useTheme_default from "../../../contexts/Theme/useTheme.js";
2
+ import FormControl_default from "../FormControl/FormControl.js";
3
+ import InputLabel_default from "../InputLabel/InputLabel.js";
4
+ import Checkbox_default from "../Checkbox/Checkbox.js";
5
+ import DatePicker_default from "../DatePicker/DatePicker.js";
6
+ import TextField_default from "../TextField/TextField.js";
7
+ import MultiInput_styles_default from "./MultiInput.styles.js";
8
+ import { bem, withVendorCSSClassPrefix } from "@thunderid/browser";
9
+ import { useCallback, useState } from "react";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
11
+ import { cx } from "@emotion/css";
12
+
13
+ //#region src/components/primitives/MultiInput/MultiInput.tsx
14
+ const MultiInput = ({ label, error, required, className, disabled, helperText, placeholder = "Enter value", values = [], onChange, type = "text", fieldType = "STRING", startIcon, endIcon, minFields = 1, maxFields, style = {} }) => {
15
+ const { theme, colorScheme } = useTheme_default();
16
+ const canAddMore = !maxFields || values.length < maxFields;
17
+ const canRemove = values.length > minFields;
18
+ const styles = MultiInput_styles_default(theme, colorScheme, !!disabled, !!error, canAddMore, canRemove);
19
+ const PlusIcon = ({ iconClassName }) => /* @__PURE__ */ jsx("svg", {
20
+ width: "16",
21
+ height: "16",
22
+ viewBox: "0 0 24 24",
23
+ className: cx(styles["icon"], iconClassName),
24
+ children: /* @__PURE__ */ jsx("path", { d: "M12 5v14M5 12h14" })
25
+ });
26
+ const BinIcon = ({ iconClassName }) => /* @__PURE__ */ jsx("svg", {
27
+ width: "16",
28
+ height: "16",
29
+ viewBox: "0 0 24 24",
30
+ className: cx(styles["icon"], iconClassName),
31
+ children: /* @__PURE__ */ jsx("path", { d: "M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m3 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14ZM10 11v6M14 11v6" })
32
+ });
33
+ const handleAddValue = useCallback((newValue) => {
34
+ if (newValue.trim() !== "" && (!maxFields || values.length < maxFields)) onChange([...values, newValue.trim()]);
35
+ }, [
36
+ values,
37
+ onChange,
38
+ maxFields
39
+ ]);
40
+ const handleRemoveValue = useCallback((index) => {
41
+ if (values.length > minFields) onChange(values.filter((_, i) => i !== index));
42
+ }, [
43
+ values,
44
+ onChange,
45
+ minFields
46
+ ]);
47
+ const renderInputField = useCallback((value, onValueChange, attachedEndIcon, onEndIconClick) => {
48
+ const handleInputChange = (e) => {
49
+ onValueChange(e.target ? e.target.value : e);
50
+ };
51
+ const handleKeyDown = (e) => {
52
+ if (e.key === "Enter" && onEndIconClick) {
53
+ e.preventDefault();
54
+ onEndIconClick();
55
+ }
56
+ };
57
+ const commonProps = {
58
+ disabled,
59
+ endIcon: attachedEndIcon || endIcon,
60
+ error,
61
+ onChange: handleInputChange,
62
+ onEndIconClick,
63
+ onKeyDown: handleKeyDown,
64
+ placeholder,
65
+ startIcon,
66
+ value
67
+ };
68
+ switch (fieldType) {
69
+ case "DATE_TIME": return /* @__PURE__ */ jsx(DatePicker_default, { ...commonProps });
70
+ case "BOOLEAN": return /* @__PURE__ */ jsx(Checkbox_default, {
71
+ ...commonProps,
72
+ checked: value === "true" || Boolean(value),
73
+ onChange: (e) => onValueChange(e.target.checked ? "true" : "false")
74
+ });
75
+ default: return /* @__PURE__ */ jsx(TextField_default, {
76
+ ...commonProps,
77
+ type
78
+ });
79
+ }
80
+ }, [
81
+ placeholder,
82
+ disabled,
83
+ startIcon,
84
+ endIcon,
85
+ error,
86
+ fieldType,
87
+ type
88
+ ]);
89
+ const [currentInputValue, setCurrentInputValue] = useState("");
90
+ const handleInputSubmit = useCallback(() => {
91
+ if (currentInputValue.trim() !== "") {
92
+ handleAddValue(currentInputValue);
93
+ setCurrentInputValue("");
94
+ }
95
+ }, [currentInputValue, handleAddValue]);
96
+ return /* @__PURE__ */ jsxs(FormControl_default, {
97
+ error,
98
+ helperText,
99
+ className: cx(withVendorCSSClassPrefix(bem("multi-input")), className),
100
+ style,
101
+ children: [label && /* @__PURE__ */ jsx(InputLabel_default, {
102
+ required,
103
+ error: !!error,
104
+ children: label
105
+ }), /* @__PURE__ */ jsxs("div", {
106
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "container")), styles["container"]),
107
+ children: [/* @__PURE__ */ jsx("div", {
108
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "input-row")), styles["inputRow"]),
109
+ children: /* @__PURE__ */ jsx("div", {
110
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "input-wrapper")), styles["inputWrapper"]),
111
+ children: renderInputField(currentInputValue, setCurrentInputValue, canAddMore ? /* @__PURE__ */ jsx(PlusIcon, { iconClassName: styles["plusIcon"] }) : void 0, canAddMore ? handleInputSubmit : void 0)
112
+ })
113
+ }), values.length > 0 && /* @__PURE__ */ jsx("div", {
114
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "list-container")), styles["listContainer"]),
115
+ children: values.map((value, index) => /* @__PURE__ */ jsxs("div", {
116
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "list-item")), styles["listItem"]),
117
+ children: [/* @__PURE__ */ jsx("span", {
118
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "list-item-text")), styles["listItemText"]),
119
+ children: value
120
+ }), canRemove && /* @__PURE__ */ jsx("button", {
121
+ type: "button",
122
+ onClick: () => handleRemoveValue(index),
123
+ disabled,
124
+ className: cx(withVendorCSSClassPrefix(bem("multi-input", "remove-button")), styles["removeButton"]),
125
+ title: "Remove value",
126
+ children: /* @__PURE__ */ jsx(BinIcon, { iconClassName: styles["icon"] })
127
+ })]
128
+ }, index))
129
+ })]
130
+ })]
131
+ });
132
+ };
133
+ var MultiInput_default = MultiInput;
134
+
135
+ //#endregion
136
+ export { MultiInput_default as default };
137
+ //# sourceMappingURL=MultiInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiInput.js","names":["MultiInput: FC<MultiInputProps>","useTheme","canAddMore: boolean","canRemove: boolean","styles: Record<string, string>","useStyles","PlusIcon: FC<IconProps>","BinIcon: FC<IconProps>","handleAddValue: ReturnType<typeof useCallback>","handleRemoveValue: ReturnType<typeof useCallback>","renderInputField: ReturnType<typeof useCallback>","commonProps: Record<string, unknown>","DatePicker","Checkbox","TextField","handleInputSubmit: ReturnType<typeof useCallback>","FormControl","InputLabel"],"sources":["../../../../src/components/primitives/MultiInput/MultiInput.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 {withVendorCSSClassPrefix, bem} from '@thunderid/browser';\nimport {CSSProperties, FC, KeyboardEvent, ReactElement, ReactNode, useCallback, useState} from 'react';\nimport useStyles from './MultiInput.styles';\nimport useTheme from '../../../contexts/Theme/useTheme';\nimport Checkbox from '../Checkbox/Checkbox';\nimport DatePicker from '../DatePicker/DatePicker';\nimport FormControl from '../FormControl/FormControl';\nimport InputLabel from '../InputLabel/InputLabel';\nimport TextField from '../TextField/TextField';\n\nexport type MultiInputType = 'text' | 'email' | 'tel' | 'url' | 'password' | 'date' | 'boolean';\nexport type MultiInputFieldType = 'STRING' | 'DATE_TIME' | 'BOOLEAN';\n\nexport interface MultiInputProps {\n /**\n * Additional CSS class names\n */\n className?: string;\n /**\n * Whether the field is disabled\n */\n disabled?: boolean;\n /**\n * Icon to display at the end (right) of each input (in addition to add/remove buttons)\n */\n endIcon?: ReactNode;\n /**\n * Error message to display below the inputs\n */\n error?: string;\n /**\n * Field type for different input components\n */\n fieldType?: MultiInputFieldType;\n /**\n * Helper text to display below the inputs\n */\n helperText?: string;\n /**\n * Label text to display above the inputs\n */\n label?: string;\n /**\n * Maximum number of fields to allow (default: unlimited)\n */\n maxFields?: number;\n /**\n * Minimum number of fields to show (default: 1)\n */\n minFields?: number;\n /**\n * Callback when values change\n */\n onChange: (values: string[]) => void;\n /**\n * Placeholder text for input fields\n */\n placeholder?: string;\n /**\n * Whether the field is required\n */\n required?: boolean;\n /**\n * Icon to display at the start (left) of each input\n */\n startIcon?: ReactNode;\n /**\n * Custom style object\n */\n style?: CSSProperties;\n /**\n * Input type\n */\n type?: MultiInputType;\n /**\n * Array of values\n */\n values: string[];\n}\n\ninterface IconProps {\n iconClassName?: string;\n}\n\nconst MultiInput: FC<MultiInputProps> = ({\n label,\n error,\n required,\n className,\n disabled,\n helperText,\n placeholder = 'Enter value',\n values = [],\n onChange,\n type = 'text',\n fieldType = 'STRING',\n startIcon,\n endIcon,\n minFields = 1,\n maxFields,\n style = {},\n}: MultiInputProps) => {\n const {theme, colorScheme}: ReturnType<typeof useTheme> = useTheme();\n const canAddMore: boolean = !maxFields || values.length < maxFields;\n const canRemove: boolean = values.length > minFields;\n const styles: Record<string, string> = useStyles(theme, colorScheme, !!disabled, !!error, canAddMore, canRemove);\n\n const PlusIcon: FC<IconProps> = ({iconClassName}: IconProps): ReactElement => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" className={cx(styles['icon'], iconClassName)}>\n <path d=\"M12 5v14M5 12h14\" />\n </svg>\n );\n\n const BinIcon: FC<IconProps> = ({iconClassName}: IconProps): ReactElement => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" className={cx(styles['icon'], iconClassName)}>\n <path d=\"M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m3 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14ZM10 11v6M14 11v6\" />\n </svg>\n );\n\n const handleAddValue: ReturnType<typeof useCallback> = useCallback(\n (newValue: string) => {\n if (newValue.trim() !== '' && (!maxFields || values.length < maxFields)) {\n onChange([...values, newValue.trim()]);\n }\n },\n [values, onChange, maxFields],\n );\n\n const handleRemoveValue: ReturnType<typeof useCallback> = useCallback(\n (index: number) => {\n if (values.length > minFields) {\n const updatedValues: string[] = values.filter((_: string, i: number) => i !== index);\n onChange(updatedValues);\n }\n },\n [values, onChange, minFields],\n );\n\n const renderInputField: ReturnType<typeof useCallback> = useCallback(\n (\n value: string,\n onValueChange: (value: string) => void,\n attachedEndIcon?: ReactNode,\n onEndIconClick?: () => void,\n ): ReactElement => {\n const handleInputChange = (e: any): void => {\n const newValue: string = e.target ? e.target.value : e;\n onValueChange(newValue);\n };\n\n const handleKeyDown = (e: KeyboardEvent): void => {\n if (e.key === 'Enter' && onEndIconClick) {\n e.preventDefault();\n onEndIconClick();\n }\n };\n\n const finalEndIcon: ReactNode = attachedEndIcon || endIcon;\n\n const commonProps: Record<string, unknown> = {\n disabled,\n endIcon: finalEndIcon,\n error,\n onChange: handleInputChange,\n onEndIconClick,\n onKeyDown: handleKeyDown,\n placeholder,\n startIcon,\n value,\n };\n\n switch (fieldType) {\n case 'DATE_TIME':\n return <DatePicker {...commonProps} />;\n case 'BOOLEAN':\n return (\n <Checkbox\n {...commonProps}\n checked={value === 'true' || Boolean(value)}\n onChange={(e: any): void => onValueChange(e.target.checked ? 'true' : 'false')}\n />\n );\n default:\n return <TextField {...commonProps} type={type} />;\n }\n },\n [placeholder, disabled, startIcon, endIcon, error, fieldType, type],\n );\n\n // State for the current input value\n const [currentInputValue, setCurrentInputValue] = useState('');\n\n const handleInputSubmit: ReturnType<typeof useCallback> = useCallback((): void => {\n if (currentInputValue.trim() !== '') {\n handleAddValue(currentInputValue);\n setCurrentInputValue('');\n }\n }, [currentInputValue, handleAddValue]);\n\n return (\n <FormControl\n error={error}\n helperText={helperText}\n className={cx(withVendorCSSClassPrefix(bem('multi-input')), className)}\n style={style}\n >\n {label && (\n <InputLabel required={required} error={!!error}>\n {label}\n </InputLabel>\n )}\n <div className={cx(withVendorCSSClassPrefix(bem('multi-input', 'container')), styles['container'])}>\n {/* Input field at the top */}\n <div className={cx(withVendorCSSClassPrefix(bem('multi-input', 'input-row')), styles['inputRow'])}>\n <div className={cx(withVendorCSSClassPrefix(bem('multi-input', 'input-wrapper')), styles['inputWrapper'])}>\n {renderInputField(\n currentInputValue,\n setCurrentInputValue,\n canAddMore ? <PlusIcon iconClassName={styles['plusIcon']} /> : undefined,\n canAddMore ? handleInputSubmit : undefined,\n )}\n </div>\n </div>\n\n {/* List of added items */}\n {values.length > 0 && (\n <div className={cx(withVendorCSSClassPrefix(bem('multi-input', 'list-container')), styles['listContainer'])}>\n {values.map((value: string, index: number) => (\n <div\n key={index}\n className={cx(withVendorCSSClassPrefix(bem('multi-input', 'list-item')), styles['listItem'])}\n >\n <span\n className={cx(withVendorCSSClassPrefix(bem('multi-input', 'list-item-text')), styles['listItemText'])}\n >\n {value}\n </span>\n {canRemove && (\n <button\n type=\"button\"\n onClick={(): void => handleRemoveValue(index)}\n disabled={disabled}\n className={cx(\n withVendorCSSClassPrefix(bem('multi-input', 'remove-button')),\n styles['removeButton'],\n )}\n title=\"Remove value\"\n >\n <BinIcon iconClassName={styles['icon']} />\n </button>\n )}\n </div>\n ))}\n </div>\n )}\n </div>\n </FormControl>\n );\n};\n\nexport default MultiInput;\n"],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ import { useMemo } from "react";
2
+ import { css } from "@emotion/css";
3
+
4
+ //#region src/components/primitives/MultiInput/MultiInput.styles.ts
5
+ /**
6
+ * Creates styles for the MultiInput component using BEM methodology
7
+ * @param theme - The theme object containing design tokens
8
+ * @param colorScheme - The current color scheme (used for memoization)
9
+ * @param disabled - Whether the component is disabled
10
+ * @param hasError - Whether the component has an error
11
+ * @param canAddMore - Whether more items can be added
12
+ * @param canRemove - Whether items can be removed
13
+ * @returns Object containing CSS class names for component styling
14
+ */
15
+ const useStyles = (theme, colorScheme, disabled, hasError, canAddMore, canRemove) => useMemo(() => {
16
+ const container = css`
17
+ display: flex;
18
+ flex-direction: column;
19
+ gap: ${theme.vars.spacing.unit};
20
+ `;
21
+ const inputRow = css`
22
+ display: flex;
23
+ align-items: center;
24
+ gap: ${theme.vars.spacing.unit};
25
+ position: relative;
26
+ `;
27
+ const inputWrapper = css`
28
+ flex: 1;
29
+ `;
30
+ const plusIcon = css`
31
+ background: ${theme.vars.colors.secondary.main};
32
+ border-radius: 50%;
33
+ outline: 4px ${theme.vars.colors.secondary.main} auto;
34
+ color: ${theme.vars.colors.secondary.contrastText};
35
+ `;
36
+ const listContainer = css`
37
+ display: flex;
38
+ flex-direction: column;
39
+ gap: 0;
40
+ `;
41
+ const listItem = css`
42
+ display: flex;
43
+ align-items: center;
44
+ justify-content: space-between;
45
+ padding: ${theme.vars.spacing.unit} calc(${theme.vars.spacing.unit} * 1.5);
46
+ background-color: ${theme.vars.colors.background.surface};
47
+ border-radius: ${theme.vars.borderRadius.medium};
48
+ font-size: 1rem;
49
+ font-family: ${theme.vars.typography.fontFamily};
50
+ color: ${theme.vars.colors.text.primary};
51
+ margin-bottom: calc(${theme.vars.spacing.unit} / 2);
52
+
53
+ &:last-child {
54
+ margin-bottom: 0;
55
+ }
56
+ `;
57
+ const listItemText = css`
58
+ flex: 1;
59
+ word-break: break-word;
60
+ `;
61
+ const removeButton = css`
62
+ padding: calc(${theme.vars.spacing.unit} / 2);
63
+ min-width: auto;
64
+ color: ${theme.vars.colors.error.main};
65
+ background: transparent;
66
+ border: none;
67
+ border-radius: ${theme.vars.borderRadius.small};
68
+ cursor: ${disabled ? "not-allowed" : "pointer"};
69
+ display: flex;
70
+ align-items: center;
71
+ justify-content: center;
72
+
73
+ &:hover:not(:disabled) {
74
+ background-color: ${theme.vars.colors.action.hover};
75
+ }
76
+
77
+ &:disabled {
78
+ opacity: 0.6;
79
+ }
80
+ `;
81
+ return {
82
+ container,
83
+ icon: css`
84
+ width: 16px;
85
+ height: 16px;
86
+ stroke: currentColor;
87
+ stroke-width: 2;
88
+ stroke-linecap: round;
89
+ stroke-linejoin: round;
90
+ fill: none;
91
+ `,
92
+ inputRow,
93
+ inputWrapper,
94
+ listContainer,
95
+ listItem,
96
+ listItemText,
97
+ plusIcon,
98
+ removeButton
99
+ };
100
+ }, [
101
+ theme,
102
+ colorScheme,
103
+ disabled,
104
+ hasError,
105
+ canAddMore,
106
+ canRemove
107
+ ]);
108
+ var MultiInput_styles_default = useStyles;
109
+
110
+ //#endregion
111
+ export { MultiInput_styles_default as default };
112
+ //# sourceMappingURL=MultiInput.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiInput.styles.js","names":["container: string","inputRow: string","inputWrapper: string","plusIcon: string","listContainer: string","listItem: string","listItemText: string","removeButton: string"],"sources":["../../../../src/components/primitives/MultiInput/MultiInput.styles.ts"],"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 {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\nexport type MultiInputType = 'text' | 'email' | 'tel' | 'url' | 'password' | 'date' | 'boolean';\nexport type MultiInputFieldType = 'STRING' | 'DATE_TIME' | 'BOOLEAN';\n\n/**\n * Creates styles for the MultiInput component using BEM methodology\n * @param theme - The theme object containing design tokens\n * @param colorScheme - The current color scheme (used for memoization)\n * @param disabled - Whether the component is disabled\n * @param hasError - Whether the component has an error\n * @param canAddMore - Whether more items can be added\n * @param canRemove - Whether items can be removed\n * @returns Object containing CSS class names for component styling\n */\nconst useStyles = (\n theme: Theme,\n colorScheme: string,\n disabled: boolean,\n hasError: boolean,\n canAddMore: boolean,\n canRemove: boolean,\n): Record<string, string> =>\n useMemo(() => {\n const container: string = css`\n display: flex;\n flex-direction: column;\n gap: ${theme.vars.spacing.unit};\n `;\n\n const inputRow: string = css`\n display: flex;\n align-items: center;\n gap: ${theme.vars.spacing.unit};\n position: relative;\n `;\n\n const inputWrapper: string = css`\n flex: 1;\n `;\n\n const plusIcon: string = css`\n background: ${theme.vars.colors.secondary.main};\n border-radius: 50%;\n outline: 4px ${theme.vars.colors.secondary.main} auto;\n color: ${theme.vars.colors.secondary.contrastText};\n `;\n\n const listContainer: string = css`\n display: flex;\n flex-direction: column;\n gap: 0;\n `;\n\n const listItem: string = css`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: ${theme.vars.spacing.unit} calc(${theme.vars.spacing.unit} * 1.5);\n background-color: ${theme.vars.colors.background.surface};\n border-radius: ${theme.vars.borderRadius.medium};\n font-size: 1rem;\n font-family: ${theme.vars.typography.fontFamily};\n color: ${theme.vars.colors.text.primary};\n margin-bottom: calc(${theme.vars.spacing.unit} / 2);\n\n &:last-child {\n margin-bottom: 0;\n }\n `;\n\n const listItemText: string = css`\n flex: 1;\n word-break: break-word;\n `;\n\n const removeButton: string = css`\n padding: calc(${theme.vars.spacing.unit} / 2);\n min-width: auto;\n color: ${theme.vars.colors.error.main};\n background: transparent;\n border: none;\n border-radius: ${theme.vars.borderRadius.small};\n cursor: ${disabled ? 'not-allowed' : 'pointer'};\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:hover:not(:disabled) {\n background-color: ${theme.vars.colors.action.hover};\n }\n\n &:disabled {\n opacity: 0.6;\n }\n `;\n\n const icon: string = css`\n width: 16px;\n height: 16px;\n stroke: currentColor;\n stroke-width: 2;\n stroke-linecap: round;\n stroke-linejoin: round;\n fill: none;\n `;\n\n return {\n container,\n icon,\n inputRow,\n inputWrapper,\n listContainer,\n listItem,\n listItemText,\n plusIcon,\n removeButton,\n };\n }, [theme, colorScheme, disabled, hasError, canAddMore, canRemove]);\n\nexport default useStyles;\n"],"mappings":";;;;;;;;;;;;;;AAmCA,MAAM,aACJ,OACA,aACA,UACA,UACA,YACA,cAEA,cAAc;CACZ,MAAMA,YAAoB,GAAG;;;aAGpB,MAAM,KAAK,QAAQ,KAAK;;CAGjC,MAAMC,WAAmB,GAAG;;;aAGnB,MAAM,KAAK,QAAQ,KAAK;;;CAIjC,MAAMC,eAAuB,GAAG;;;CAIhC,MAAMC,WAAmB,GAAG;oBACZ,MAAM,KAAK,OAAO,UAAU,KAAK;;qBAEhC,MAAM,KAAK,OAAO,UAAU,KAAK;eACvC,MAAM,KAAK,OAAO,UAAU,aAAa;;CAGpD,MAAMC,gBAAwB,GAAG;;;;;CAMjC,MAAMC,WAAmB,GAAG;;;;iBAIf,MAAM,KAAK,QAAQ,KAAK,QAAQ,MAAM,KAAK,QAAQ,KAAK;0BAC/C,MAAM,KAAK,OAAO,WAAW,QAAQ;uBACxC,MAAM,KAAK,aAAa,OAAO;;qBAEjC,MAAM,KAAK,WAAW,WAAW;eACvC,MAAM,KAAK,OAAO,KAAK,QAAQ;4BAClB,MAAM,KAAK,QAAQ,KAAK;;;;;;CAOhD,MAAMC,eAAuB,GAAG;;;;CAKhC,MAAMC,eAAuB,GAAG;sBACd,MAAM,KAAK,QAAQ,KAAK;;eAE/B,MAAM,KAAK,OAAO,MAAM,KAAK;;;uBAGrB,MAAM,KAAK,aAAa,MAAM;gBACrC,WAAW,gBAAgB,UAAU;;;;;;4BAMzB,MAAM,KAAK,OAAO,OAAO,MAAM;;;;;;;AAkBvD,QAAO;EACL;EACA,MAZmB,GAAG;;;;;;;;;EAatB;EACA;EACA;EACA;EACA;EACA;EACA;EACD;GACA;CAAC;CAAO;CAAa;CAAU;CAAU;CAAY;CAAU,CAAC;AAErE,gCAAe"}
@@ -0,0 +1,124 @@
1
+ import useTheme_default from "../../../contexts/Theme/useTheme.js";
2
+ import FormControl_default from "../FormControl/FormControl.js";
3
+ import InputLabel_default from "../InputLabel/InputLabel.js";
4
+ import OtpField_styles_default from "./OtpField.styles.js";
5
+ import { bem, withVendorCSSClassPrefix } from "@thunderid/browser";
6
+ import { useEffect, useRef, useState } from "react";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+ import { cx } from "@emotion/css";
9
+
10
+ //#region src/components/primitives/OtpField/OtpField.tsx
11
+ const OtpField = ({ label, error, className, required, disabled, helperText, length = 6, value = "", onChange, onComplete, type = "text", placeholder = "", style = {}, autoFocus = false, pattern }) => {
12
+ const { theme, colorScheme } = useTheme_default();
13
+ const styles = OtpField_styles_default(theme, colorScheme, !!disabled, !!error, length);
14
+ const [otp, setOtp] = useState(Array(length).fill(""));
15
+ const inputRefs = useRef([]);
16
+ useEffect(() => {
17
+ inputRefs.current = inputRefs.current.slice(0, length);
18
+ }, [length]);
19
+ useEffect(() => {
20
+ if (value) {
21
+ const newOtp = value.split("").slice(0, length);
22
+ while (newOtp.length < length) newOtp.push("");
23
+ setOtp(newOtp);
24
+ } else setOtp(Array(length).fill(""));
25
+ }, [value, length]);
26
+ useEffect(() => {
27
+ if (autoFocus && inputRefs.current[0]) inputRefs.current[0].focus();
28
+ }, [autoFocus]);
29
+ const handleChange = (index, event) => {
30
+ const newValue = event.target.value;
31
+ if (newValue.length > 1) return;
32
+ if (type === "number" && newValue && !/^\d$/.test(newValue)) return;
33
+ if (pattern && newValue && !new RegExp(pattern).test(newValue)) return;
34
+ const newOtp = [...otp];
35
+ newOtp[index] = newValue;
36
+ setOtp(newOtp);
37
+ const otpValue = newOtp.join("");
38
+ onChange?.({ target: { value: otpValue } });
39
+ if (newValue && index < length - 1) inputRefs.current[index + 1]?.focus();
40
+ if (newOtp.every((digit) => digit !== "") && onComplete) onComplete(otpValue);
41
+ };
42
+ const handleKeyDown = (index, event) => {
43
+ if (event.key === "Backspace") {
44
+ if (!otp[index] && index > 0) {
45
+ const newOtp = [...otp];
46
+ newOtp[index - 1] = "";
47
+ setOtp(newOtp);
48
+ inputRefs.current[index - 1]?.focus();
49
+ onChange?.({ target: { value: newOtp.join("") } });
50
+ } else if (otp[index]) {
51
+ const newOtp = [...otp];
52
+ newOtp[index] = "";
53
+ setOtp(newOtp);
54
+ onChange?.({ target: { value: newOtp.join("") } });
55
+ }
56
+ } else if (event.key === "ArrowLeft" && index > 0) inputRefs.current[index - 1]?.focus();
57
+ else if (event.key === "ArrowRight" && index < length - 1) inputRefs.current[index + 1]?.focus();
58
+ else if (event.key === "Enter") {
59
+ event.preventDefault();
60
+ if (otp.every((digit) => digit !== "") && onComplete) onComplete(otp.join(""));
61
+ }
62
+ };
63
+ const handlePaste = (event) => {
64
+ event.preventDefault();
65
+ const pastedData = event.clipboardData.getData("text").slice(0, length);
66
+ let validData = "";
67
+ Array.from(pastedData).forEach((char) => {
68
+ if (type === "number" && !/^\d$/.test(char)) return;
69
+ if (pattern && !new RegExp(pattern).test(char)) return;
70
+ validData += char;
71
+ });
72
+ const newOtp = Array(length).fill("");
73
+ for (let i = 0; i < Math.min(validData.length, length); i += 1) newOtp[i] = validData[i];
74
+ setOtp(newOtp);
75
+ onChange?.({ target: { value: newOtp.join("") } });
76
+ const nextEmptyIndex = newOtp.findIndex((digit) => digit === "");
77
+ const focusIndex = nextEmptyIndex !== -1 ? nextEmptyIndex : length - 1;
78
+ inputRefs.current[focusIndex]?.focus();
79
+ if (newOtp.every((digit) => digit !== "") && onComplete) onComplete(newOtp.join(""));
80
+ };
81
+ return /* @__PURE__ */ jsxs(FormControl_default, {
82
+ error,
83
+ helperText,
84
+ className: cx(withVendorCSSClassPrefix(bem("otp-field")), className),
85
+ helperTextAlign: "center",
86
+ style,
87
+ children: [label && /* @__PURE__ */ jsx(InputLabel_default, {
88
+ required,
89
+ error: !!error,
90
+ children: label
91
+ }), /* @__PURE__ */ jsx("div", {
92
+ className: cx(withVendorCSSClassPrefix(bem("otp-field", "input-container")), styles["inputContainer"]),
93
+ children: Array.from({ length }, (_, index) => /* @__PURE__ */ jsx("input", {
94
+ ref: (el) => {
95
+ if (el) inputRefs.current[index] = el;
96
+ },
97
+ type: type === "password" ? "password" : "text",
98
+ inputMode: type === "number" ? "numeric" : "text",
99
+ value: otp[index] || "",
100
+ onChange: (event) => handleChange(index, event),
101
+ onKeyDown: (event) => handleKeyDown(index, event),
102
+ onPaste: handlePaste,
103
+ className: cx(withVendorCSSClassPrefix(bem("otp-field", "input")), styles["input"], {
104
+ [withVendorCSSClassPrefix(bem("otp-field", "input", "error"))]: !!error,
105
+ [styles["inputError"]]: !!error,
106
+ [withVendorCSSClassPrefix(bem("otp-field", "input", "disabled"))]: !!disabled,
107
+ [styles["inputDisabled"]]: !!disabled
108
+ }),
109
+ maxLength: 1,
110
+ placeholder,
111
+ disabled,
112
+ "aria-label": `${label || "OTP"} digit ${index + 1}`,
113
+ "aria-invalid": !!error,
114
+ "aria-required": required,
115
+ autoComplete: "one-time-code"
116
+ }, index))
117
+ })]
118
+ });
119
+ };
120
+ var OtpField_default = OtpField;
121
+
122
+ //#endregion
123
+ export { OtpField_default as default };
124
+ //# sourceMappingURL=OtpField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OtpField.js","names":["OtpField: FC<OtpInputProps>","useTheme","styles: Record<string, string>","useStyles","inputRefs: MutableRefObject<HTMLInputElement[]>","newOtp: string[]","newValue: string","otpValue: string","pastedData: string","nextEmptyIndex: number","focusIndex: number","FormControl","InputLabel"],"sources":["../../../../src/components/primitives/OtpField/OtpField.tsx"],"sourcesContent":["/**\n * Copyright (c) 2024, 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 {withVendorCSSClassPrefix, bem} from '@thunderid/browser';\nimport {\n ClipboardEvent,\n FC,\n KeyboardEvent,\n ChangeEvent,\n MutableRefObject,\n useRef,\n useEffect,\n useState,\n CSSProperties,\n} from 'react';\nimport useStyles from './OtpField.styles';\nimport useTheme from '../../../contexts/Theme/useTheme';\nimport FormControl from '../FormControl/FormControl';\nimport InputLabel from '../InputLabel/InputLabel';\n\nexport type OtpFieldType = 'text' | 'number' | 'password';\n\nexport interface OtpInputProps {\n /**\n * Auto focus the first input on mount\n */\n autoFocus?: boolean;\n /**\n * Additional CSS class names\n */\n className?: string;\n /**\n * Whether the field is disabled\n */\n disabled?: boolean;\n /**\n * Error message to display below the OTP input\n */\n error?: string;\n /**\n * Helper text to display below the OTP input\n */\n helperText?: string;\n /**\n * Label text to display above the OTP input\n */\n label?: string;\n /**\n * Number of OTP input fields\n */\n length?: number;\n /**\n * Callback function called when OTP value changes\n */\n onChange?: (event: {target: {value: string}}) => void;\n /**\n * Callback function called when OTP input is complete\n */\n onComplete?: (value: string) => void;\n /**\n * Pattern for numeric input validation\n */\n pattern?: string;\n /**\n * Placeholder character for each input field\n */\n placeholder?: string;\n /**\n * Whether the field is required\n */\n required?: boolean;\n /**\n * Custom container style\n */\n style?: CSSProperties;\n /**\n * Type of input (text, number, password)\n */\n type?: OtpFieldType;\n /**\n * Current OTP value\n */\n value?: string;\n}\n\nconst OtpField: FC<OtpInputProps> = ({\n label,\n error,\n className,\n required,\n disabled,\n helperText,\n length = 6,\n value = '',\n onChange,\n onComplete,\n type = 'text',\n placeholder = '',\n style = {},\n autoFocus = false,\n pattern,\n}: OtpInputProps) => {\n const {theme, colorScheme}: ReturnType<typeof useTheme> = useTheme();\n const styles: Record<string, string> = useStyles(theme, colorScheme, !!disabled, !!error, length);\n const [otp, setOtp] = useState<string[]>(Array(length).fill(''));\n const inputRefs: MutableRefObject<HTMLInputElement[]> = useRef<HTMLInputElement[]>([]);\n\n useEffect(() => {\n inputRefs.current = inputRefs.current.slice(0, length);\n }, [length]);\n\n useEffect(() => {\n if (value) {\n const newOtp: string[] = value.split('').slice(0, length);\n while (newOtp.length < length) {\n newOtp.push('');\n }\n setOtp(newOtp);\n } else {\n setOtp(Array(length).fill(''));\n }\n }, [value, length]);\n\n useEffect(() => {\n if (autoFocus && inputRefs.current[0]) {\n inputRefs.current[0].focus();\n }\n }, [autoFocus]);\n\n const handleChange = (index: number, event: ChangeEvent<HTMLInputElement>): void => {\n const newValue: string = event.target.value;\n\n if (newValue.length > 1) return;\n\n if (type === 'number' && newValue && !/^\\d$/.test(newValue)) return;\n\n if (pattern && newValue && !new RegExp(pattern).test(newValue)) return;\n\n const newOtp: string[] = [...otp];\n newOtp[index] = newValue;\n setOtp(newOtp);\n\n const otpValue: string = newOtp.join('');\n\n onChange?.({target: {value: otpValue}});\n\n if (newValue && index < length - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n if (newOtp.every((digit: string) => digit !== '') && onComplete) {\n onComplete(otpValue);\n }\n };\n\n const handleKeyDown = (index: number, event: KeyboardEvent<HTMLInputElement>): void => {\n if (event.key === 'Backspace') {\n if (!otp[index] && index > 0) {\n const newOtp: string[] = [...otp];\n\n newOtp[index - 1] = '';\n setOtp(newOtp);\n inputRefs.current[index - 1]?.focus();\n onChange?.({target: {value: newOtp.join('')}});\n } else if (otp[index]) {\n const newOtp: string[] = [...otp];\n\n newOtp[index] = '';\n setOtp(newOtp);\n onChange?.({target: {value: newOtp.join('')}});\n }\n } else if (event.key === 'ArrowLeft' && index > 0) {\n inputRefs.current[index - 1]?.focus();\n } else if (event.key === 'ArrowRight' && index < length - 1) {\n inputRefs.current[index + 1]?.focus();\n } else if (event.key === 'Enter') {\n event.preventDefault();\n\n if (otp.every((digit: string) => digit !== '') && onComplete) {\n onComplete(otp.join(''));\n }\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>): void => {\n event.preventDefault();\n\n const pastedData: string = event.clipboardData.getData('text').slice(0, length);\n\n let validData = '';\n\n Array.from(pastedData).forEach((char: string) => {\n if (type === 'number' && !/^\\d$/.test(char)) return;\n if (pattern && !new RegExp(pattern).test(char)) return;\n validData += char;\n });\n\n const newOtp: string[] = Array(length).fill('');\n\n for (let i = 0; i < Math.min(validData.length, length); i += 1) {\n newOtp[i] = validData[i];\n }\n\n setOtp(newOtp);\n onChange?.({target: {value: newOtp.join('')}});\n\n const nextEmptyIndex: number = newOtp.findIndex((digit: string) => digit === '');\n const focusIndex: number = nextEmptyIndex !== -1 ? nextEmptyIndex : length - 1;\n\n inputRefs.current[focusIndex]?.focus();\n\n if (newOtp.every((digit: string) => digit !== '') && onComplete) {\n onComplete(newOtp.join(''));\n }\n };\n\n return (\n <FormControl\n error={error}\n helperText={helperText}\n className={cx(withVendorCSSClassPrefix(bem('otp-field')), className)}\n helperTextAlign=\"center\"\n style={style}\n >\n {label && (\n <InputLabel required={required} error={!!error}>\n {label}\n </InputLabel>\n )}\n <div className={cx(withVendorCSSClassPrefix(bem('otp-field', 'input-container')), styles['inputContainer'])}>\n {Array.from({length}, (_: unknown, index: number) => (\n <input\n key={index}\n ref={(el: HTMLInputElement | null): void => {\n if (el) inputRefs.current[index] = el;\n }}\n type={type === 'password' ? 'password' : 'text'}\n inputMode={type === 'number' ? 'numeric' : 'text'}\n value={otp[index] || ''}\n onChange={(event: ChangeEvent<HTMLInputElement>): void => handleChange(index, event)}\n onKeyDown={(event: KeyboardEvent<HTMLInputElement>): void => handleKeyDown(index, event)}\n onPaste={handlePaste}\n className={cx(withVendorCSSClassPrefix(bem('otp-field', 'input')), styles['input'], {\n [withVendorCSSClassPrefix(bem('otp-field', 'input', 'error'))]: !!error,\n [styles['inputError']]: !!error,\n [withVendorCSSClassPrefix(bem('otp-field', 'input', 'disabled'))]: !!disabled,\n [styles['inputDisabled']]: !!disabled,\n })}\n maxLength={1}\n placeholder={placeholder}\n disabled={disabled}\n aria-label={`${label || 'OTP'} digit ${index + 1}`}\n aria-invalid={!!error}\n aria-required={required}\n autoComplete=\"one-time-code\"\n />\n ))}\n </div>\n </FormControl>\n );\n};\n\nexport default OtpField;\n"],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import { useMemo } from "react";
2
+ import { css } from "@emotion/css";
3
+
4
+ //#region src/components/primitives/OtpField/OtpField.styles.ts
5
+ /**
6
+ * Creates styles for the OtpField component using BEM methodology
7
+ * @param theme - The theme object containing design tokens
8
+ * @param colorScheme - The current color scheme (used for memoization)
9
+ * @param disabled - Whether the component is disabled
10
+ * @param hasError - Whether the component has an error
11
+ * @param length - Number of OTP input fields
12
+ * @returns Object containing CSS class names for component styling
13
+ */
14
+ const useStyles = (theme, colorScheme, disabled, hasError, length) => useMemo(() => {
15
+ const inputContainer = css`
16
+ display: flex;
17
+ gap: ${theme.vars.spacing.unit};
18
+ justify-content: space-between;
19
+ align-items: center;
20
+ flex-wrap: wrap;
21
+ `;
22
+ const input = css`
23
+ width: calc(${theme.vars.spacing.unit} * 6);
24
+ height: calc(${theme.vars.spacing.unit} * 6);
25
+ text-align: center;
26
+ font-size: ${theme.vars.typography.fontSizes.xl};
27
+ font-family: ${theme.vars.typography.fontFamily};
28
+ font-weight: 500;
29
+ border: 2px solid ${hasError ? theme.vars.colors.error.main : theme.vars.colors.border};
30
+ border-radius: ${theme.vars.components?.Field?.root?.borderRadius || theme.vars.borderRadius.medium};
31
+ color: ${theme.vars.colors.text.primary};
32
+ background-color: ${disabled ? theme.vars.colors.background.disabled : theme.vars.colors.background.surface};
33
+ outline: none;
34
+ transition:
35
+ border-color 0.2s ease,
36
+ box-shadow 0.2s ease;
37
+
38
+ &:focus {
39
+ border-color: ${hasError ? theme.vars.colors.error.main : theme.vars.colors.primary.main};
40
+ box-shadow: 0 0 0 2px ${hasError ? `${theme.vars.colors.error.main}20` : `${theme.vars.colors.primary.main}20`};
41
+ }
42
+
43
+ &:disabled {
44
+ cursor: not-allowed;
45
+ opacity: 0.6;
46
+ }
47
+
48
+ &::placeholder {
49
+ color: ${theme.vars.colors.text.secondary};
50
+ opacity: 0.7;
51
+ }
52
+ `;
53
+ const inputError = css`
54
+ border-color: ${theme.vars.colors.error.main};
55
+
56
+ &:focus {
57
+ border-color: ${theme.vars.colors.error.main};
58
+ box-shadow: 0 0 0 2px ${theme.vars.colors.error.main}20;
59
+ }
60
+ `;
61
+ return {
62
+ input,
63
+ inputContainer,
64
+ inputDisabled: css`
65
+ background-color: ${theme.vars.colors.background.disabled};
66
+ cursor: not-allowed;
67
+ opacity: 0.6;
68
+ `,
69
+ inputError
70
+ };
71
+ }, [
72
+ theme,
73
+ colorScheme,
74
+ disabled,
75
+ hasError,
76
+ length
77
+ ]);
78
+ var OtpField_styles_default = useStyles;
79
+
80
+ //#endregion
81
+ export { OtpField_styles_default as default };
82
+ //# sourceMappingURL=OtpField.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OtpField.styles.js","names":["inputContainer: string","input: string","inputError: string"],"sources":["../../../../src/components/primitives/OtpField/OtpField.styles.ts"],"sourcesContent":["/**\n * Copyright (c) 2024, 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 {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\nexport type OtpFieldType = 'text' | 'number' | 'password';\n\n/**\n * Creates styles for the OtpField component using BEM methodology\n * @param theme - The theme object containing design tokens\n * @param colorScheme - The current color scheme (used for memoization)\n * @param disabled - Whether the component is disabled\n * @param hasError - Whether the component has an error\n * @param length - Number of OTP input fields\n * @returns Object containing CSS class names for component styling\n */\nconst useStyles = (\n theme: Theme,\n colorScheme: string,\n disabled: boolean,\n hasError: boolean,\n length: number,\n): Record<string, string> =>\n useMemo(() => {\n const inputContainer: string = css`\n display: flex;\n gap: ${theme.vars.spacing.unit};\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n `;\n\n const input: string = css`\n width: calc(${theme.vars.spacing.unit} * 6);\n height: calc(${theme.vars.spacing.unit} * 6);\n text-align: center;\n font-size: ${theme.vars.typography.fontSizes.xl};\n font-family: ${theme.vars.typography.fontFamily};\n font-weight: 500;\n border: 2px solid ${hasError ? theme.vars.colors.error.main : theme.vars.colors.border};\n border-radius: ${theme.vars.components?.Field?.root?.borderRadius || theme.vars.borderRadius.medium};\n color: ${theme.vars.colors.text.primary};\n background-color: ${disabled ? theme.vars.colors.background.disabled : theme.vars.colors.background.surface};\n outline: none;\n transition:\n border-color 0.2s ease,\n box-shadow 0.2s ease;\n\n &:focus {\n border-color: ${hasError ? theme.vars.colors.error.main : theme.vars.colors.primary.main};\n box-shadow: 0 0 0 2px ${hasError ? `${theme.vars.colors.error.main}20` : `${theme.vars.colors.primary.main}20`};\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.6;\n }\n\n &::placeholder {\n color: ${theme.vars.colors.text.secondary};\n opacity: 0.7;\n }\n `;\n\n const inputError: string = css`\n border-color: ${theme.vars.colors.error.main};\n\n &:focus {\n border-color: ${theme.vars.colors.error.main};\n box-shadow: 0 0 0 2px ${theme.vars.colors.error.main}20;\n }\n `;\n\n const inputDisabled: string = css`\n background-color: ${theme.vars.colors.background.disabled};\n cursor: not-allowed;\n opacity: 0.6;\n `;\n\n return {\n input,\n inputContainer,\n inputDisabled,\n inputError,\n };\n }, [theme, colorScheme, disabled, hasError, length]);\n\nexport default useStyles;\n"],"mappings":";;;;;;;;;;;;;AAiCA,MAAM,aACJ,OACA,aACA,UACA,UACA,WAEA,cAAc;CACZ,MAAMA,iBAAyB,GAAG;;aAEzB,MAAM,KAAK,QAAQ,KAAK;;;;;CAMjC,MAAMC,QAAgB,GAAG;oBACT,MAAM,KAAK,QAAQ,KAAK;qBACvB,MAAM,KAAK,QAAQ,KAAK;;mBAE1B,MAAM,KAAK,WAAW,UAAU,GAAG;qBACjC,MAAM,KAAK,WAAW,WAAW;;0BAE5B,WAAW,MAAM,KAAK,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,OAAO;uBACtE,MAAM,KAAK,YAAY,OAAO,MAAM,gBAAgB,MAAM,KAAK,aAAa,OAAO;eAC3F,MAAM,KAAK,OAAO,KAAK,QAAQ;0BACpB,WAAW,MAAM,KAAK,OAAO,WAAW,WAAW,MAAM,KAAK,OAAO,WAAW,QAAQ;;;;;;;wBAO1F,WAAW,MAAM,KAAK,OAAO,MAAM,OAAO,MAAM,KAAK,OAAO,QAAQ,KAAK;gCACjE,WAAW,GAAG,MAAM,KAAK,OAAO,MAAM,KAAK,MAAM,GAAG,MAAM,KAAK,OAAO,QAAQ,KAAK,IAAI;;;;;;;;;iBAStG,MAAM,KAAK,OAAO,KAAK,UAAU;;;;CAK9C,MAAMC,aAAqB,GAAG;sBACZ,MAAM,KAAK,OAAO,MAAM,KAAK;;;wBAG3B,MAAM,KAAK,OAAO,MAAM,KAAK;gCACrB,MAAM,KAAK,OAAO,MAAM,KAAK;;;AAUzD,QAAO;EACL;EACA;EACA,eAT4B,GAAG;0BACX,MAAM,KAAK,OAAO,WAAW,SAAS;;;;EAS1D;EACD;GACA;CAAC;CAAO;CAAa;CAAU;CAAU;CAAO,CAAC;AAEtD,8BAAe"}
@@ -0,0 +1,44 @@
1
+ import useTheme_default from "../../../contexts/Theme/useTheme.js";
2
+ import PasswordField_styles_default from "./PasswordField.styles.js";
3
+ import Eye_default from "../Icons/Eye.js";
4
+ import EyeOff_default from "../Icons/EyeOff.js";
5
+ import TextField_default from "../TextField/TextField.js";
6
+ import { bem, withVendorCSSClassPrefix } from "@thunderid/browser";
7
+ import { useState } from "react";
8
+ import { jsx } from "react/jsx-runtime";
9
+ import { cx } from "@emotion/css";
10
+
11
+ //#region src/components/primitives/PasswordField/PasswordField.tsx
12
+ /**
13
+ * Password field component with show/hide toggle functionality.
14
+ * This component extends TextField and adds password visibility toggle functionality.
15
+ */
16
+ const PasswordField = ({ onChange, className, disabled, error,...textFieldProps }) => {
17
+ const { theme, colorScheme } = useTheme_default();
18
+ const [showPassword, setShowPassword] = useState(false);
19
+ const styles = PasswordField_styles_default(theme, colorScheme, showPassword, !!disabled, !!error);
20
+ const togglePasswordVisibility = () => {
21
+ if (!disabled) setShowPassword(!showPassword);
22
+ };
23
+ const IconComponent = showPassword ? EyeOff_default : Eye_default;
24
+ return /* @__PURE__ */ jsx(TextField_default, {
25
+ ...textFieldProps,
26
+ className: cx(withVendorCSSClassPrefix(bem("password-field")), className),
27
+ type: showPassword ? "text" : "password",
28
+ onChange: (e) => onChange(e.target.value),
29
+ autoComplete: "current-password",
30
+ disabled,
31
+ error,
32
+ endIcon: /* @__PURE__ */ jsx(IconComponent, {
33
+ width: 16,
34
+ height: 16,
35
+ className: cx(withVendorCSSClassPrefix(bem("password-field", "toggle-icon")), styles["toggleIcon"], showPassword ? styles["visibleIcon"] : styles["hiddenIcon"])
36
+ }),
37
+ onEndIconClick: togglePasswordVisibility
38
+ });
39
+ };
40
+ var PasswordField_default = PasswordField;
41
+
42
+ //#endregion
43
+ export { PasswordField_default as default };
44
+ //# sourceMappingURL=PasswordField.js.map