@thunderid/react 0.12.0 → 0.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/dist/api/getUsersMeMeta.d.ts +22 -0
  2. package/dist/api/getUsersMeMeta.d.ts.map +1 -0
  3. package/dist/api/getUsersMeMeta.js +32 -0
  4. package/dist/api/getUsersMeMeta.js.map +1 -0
  5. package/dist/cjs/api/getUsersMeMeta.cjs +34 -0
  6. package/dist/cjs/api/getUsersMeMeta.cjs.map +1 -0
  7. package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs +2 -3
  8. package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs.map +1 -1
  9. package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs +2 -3
  10. package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs.map +1 -1
  11. package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs +2 -3
  12. package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs.map +1 -1
  13. package/dist/cjs/components/adapters/Consent.cjs +34 -27
  14. package/dist/cjs/components/adapters/Consent.cjs.map +1 -1
  15. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs +7 -8
  16. package/dist/cjs/components/adapters/ConsentCheckboxList.cjs.map +1 -1
  17. package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs +8 -9
  18. package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs.map +1 -1
  19. package/dist/cjs/components/adapters/GoogleButton.cjs +425 -31
  20. package/dist/cjs/components/adapters/GoogleButton.cjs.map +1 -1
  21. package/dist/cjs/components/adapters/ImageComponent.cjs +13 -9
  22. package/dist/cjs/components/adapters/ImageComponent.cjs.map +1 -1
  23. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs +3 -4
  24. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs.map +1 -1
  25. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs +11 -12
  26. package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs.map +1 -1
  27. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs +12 -16
  28. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -1
  29. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs +18 -15
  30. package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs.map +1 -1
  31. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs +96 -41
  32. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs.map +1 -1
  33. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs +25 -26
  34. package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs.map +1 -1
  35. package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs +4 -2
  36. package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs.map +1 -1
  37. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.cjs +10 -31
  38. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.cjs.map +1 -1
  39. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.cjs +41 -9
  40. package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.cjs.map +1 -1
  41. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs +75 -71
  42. package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -1
  43. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.cjs +9 -22
  44. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.cjs.map +1 -1
  45. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.styles.cjs +22 -9
  46. package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.styles.cjs.map +1 -1
  47. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs +11 -12
  48. package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs.map +1 -1
  49. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs +11 -16
  50. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs.map +1 -1
  51. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs +32 -27
  52. package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs.map +1 -1
  53. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs +11 -12
  54. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs.map +1 -1
  55. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs +25 -26
  56. package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs.map +1 -1
  57. package/dist/cjs/components/primitives/AffixedField/AffixedField.cjs +6 -7
  58. package/dist/cjs/components/primitives/AffixedField/AffixedField.cjs.map +1 -1
  59. package/dist/cjs/components/primitives/AffixedField/AffixedField.styles.cjs +9 -10
  60. package/dist/cjs/components/primitives/AffixedField/AffixedField.styles.cjs.map +1 -1
  61. package/dist/cjs/components/primitives/Alert/Alert.cjs +6 -7
  62. package/dist/cjs/components/primitives/Alert/Alert.cjs.map +1 -1
  63. package/dist/cjs/components/primitives/Alert/Alert.styles.cjs +10 -11
  64. package/dist/cjs/components/primitives/Alert/Alert.styles.cjs.map +1 -1
  65. package/dist/cjs/components/primitives/Avatar/Avatar.cjs +5 -6
  66. package/dist/cjs/components/primitives/Avatar/Avatar.cjs.map +1 -1
  67. package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs +7 -8
  68. package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs.map +1 -1
  69. package/dist/cjs/components/primitives/Button/Button.cjs +8 -12
  70. package/dist/cjs/components/primitives/Button/Button.cjs.map +1 -1
  71. package/dist/cjs/components/primitives/Button/Button.styles.cjs +23 -24
  72. package/dist/cjs/components/primitives/Button/Button.styles.cjs.map +1 -1
  73. package/dist/cjs/components/primitives/Card/Card.cjs +8 -9
  74. package/dist/cjs/components/primitives/Card/Card.cjs.map +1 -1
  75. package/dist/cjs/components/primitives/Card/Card.styles.cjs +12 -13
  76. package/dist/cjs/components/primitives/Card/Card.styles.cjs.map +1 -1
  77. package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs +5 -6
  78. package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs.map +1 -1
  79. package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs +7 -8
  80. package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs.map +1 -1
  81. package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs +6 -7
  82. package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs.map +1 -1
  83. package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs +4 -5
  84. package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs.map +1 -1
  85. package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs +5 -6
  86. package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs.map +1 -1
  87. package/dist/cjs/components/primitives/Dialog/Dialog.cjs +7 -8
  88. package/dist/cjs/components/primitives/Dialog/Dialog.cjs.map +1 -1
  89. package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs +8 -9
  90. package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs.map +1 -1
  91. package/dist/cjs/components/primitives/Divider/Divider.cjs +7 -8
  92. package/dist/cjs/components/primitives/Divider/Divider.cjs.map +1 -1
  93. package/dist/cjs/components/primitives/Divider/Divider.styles.cjs +7 -8
  94. package/dist/cjs/components/primitives/Divider/Divider.styles.cjs.map +1 -1
  95. package/dist/cjs/components/primitives/FormControl/FormControl.cjs +3 -4
  96. package/dist/cjs/components/primitives/FormControl/FormControl.cjs.map +1 -1
  97. package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs +4 -5
  98. package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs.map +1 -1
  99. package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs +3 -4
  100. package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs.map +1 -1
  101. package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs +6 -7
  102. package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs.map +1 -1
  103. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs +19 -20
  104. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs.map +1 -1
  105. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs +16 -17
  106. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs.map +1 -1
  107. package/dist/cjs/components/primitives/Logo/Logo.cjs +3 -4
  108. package/dist/cjs/components/primitives/Logo/Logo.cjs.map +1 -1
  109. package/dist/cjs/components/primitives/Logo/Logo.styles.cjs +9 -10
  110. package/dist/cjs/components/primitives/Logo/Logo.styles.cjs.map +1 -1
  111. package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs +11 -12
  112. package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs.map +1 -1
  113. package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs +10 -11
  114. package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs.map +1 -1
  115. package/dist/cjs/components/primitives/OtpField/OtpField.cjs +4 -5
  116. package/dist/cjs/components/primitives/OtpField/OtpField.cjs.map +1 -1
  117. package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs +5 -6
  118. package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs.map +1 -1
  119. package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs +3 -4
  120. package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs.map +1 -1
  121. package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs +4 -5
  122. package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs.map +1 -1
  123. package/dist/cjs/components/primitives/Select/Select.cjs +3 -4
  124. package/dist/cjs/components/primitives/Select/Select.cjs.map +1 -1
  125. package/dist/cjs/components/primitives/Select/Select.styles.cjs +5 -6
  126. package/dist/cjs/components/primitives/Select/Select.styles.cjs.map +1 -1
  127. package/dist/cjs/components/primitives/Spinner/Spinner.cjs +4 -6
  128. package/dist/cjs/components/primitives/Spinner/Spinner.cjs.map +1 -1
  129. package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs +20 -12
  130. package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs.map +1 -1
  131. package/dist/cjs/components/primitives/TextField/TextField.cjs +6 -7
  132. package/dist/cjs/components/primitives/TextField/TextField.cjs.map +1 -1
  133. package/dist/cjs/components/primitives/TextField/TextField.styles.cjs +8 -9
  134. package/dist/cjs/components/primitives/TextField/TextField.styles.cjs.map +1 -1
  135. package/dist/cjs/components/primitives/Toggle/Toggle.cjs +7 -8
  136. package/dist/cjs/components/primitives/Toggle/Toggle.cjs.map +1 -1
  137. package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs +7 -8
  138. package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs.map +1 -1
  139. package/dist/cjs/components/primitives/Tooltip/Tooltip.cjs +4 -5
  140. package/dist/cjs/components/primitives/Tooltip/Tooltip.cjs.map +1 -1
  141. package/dist/cjs/components/primitives/Tooltip/Tooltip.styles.cjs +13 -14
  142. package/dist/cjs/components/primitives/Tooltip/Tooltip.styles.cjs.map +1 -1
  143. package/dist/cjs/components/primitives/Typography/Typography.cjs +2 -3
  144. package/dist/cjs/components/primitives/Typography/Typography.cjs.map +1 -1
  145. package/dist/cjs/components/primitives/Typography/Typography.styles.cjs +18 -19
  146. package/dist/cjs/components/primitives/Typography/Typography.styles.cjs.map +1 -1
  147. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +1 -0
  148. package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -1
  149. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +36 -14
  150. package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -1
  151. package/dist/cjs/contexts/User/UserContext.cjs +2 -1
  152. package/dist/cjs/contexts/User/UserContext.cjs.map +1 -1
  153. package/dist/cjs/contexts/User/UserProvider.cjs +5 -3
  154. package/dist/cjs/contexts/User/UserProvider.cjs.map +1 -1
  155. package/dist/cjs/index.cjs +2 -0
  156. package/dist/cjs/styles/emotion.cjs +64 -0
  157. package/dist/cjs/styles/emotion.cjs.map +1 -0
  158. package/dist/components/actions/SignInButton/BaseSignInButton.d.ts.map +1 -1
  159. package/dist/components/actions/SignInButton/BaseSignInButton.js +1 -1
  160. package/dist/components/actions/SignInButton/BaseSignInButton.js.map +1 -1
  161. package/dist/components/actions/SignOutButton/BaseSignOutButton.d.ts.map +1 -1
  162. package/dist/components/actions/SignOutButton/BaseSignOutButton.js +1 -1
  163. package/dist/components/actions/SignOutButton/BaseSignOutButton.js.map +1 -1
  164. package/dist/components/actions/SignUpButton/BaseSignUpButton.d.ts.map +1 -1
  165. package/dist/components/actions/SignUpButton/BaseSignUpButton.js +1 -1
  166. package/dist/components/actions/SignUpButton/BaseSignUpButton.js.map +1 -1
  167. package/dist/components/adapters/Consent.d.ts.map +1 -1
  168. package/dist/components/adapters/Consent.js +34 -27
  169. package/dist/components/adapters/Consent.js.map +1 -1
  170. package/dist/components/adapters/ConsentCheckboxList.d.ts.map +1 -1
  171. package/dist/components/adapters/ConsentCheckboxList.js +1 -1
  172. package/dist/components/adapters/ConsentCheckboxList.js.map +1 -1
  173. package/dist/components/adapters/ConsentCheckboxList.styles.d.ts.map +1 -1
  174. package/dist/components/adapters/ConsentCheckboxList.styles.js +1 -1
  175. package/dist/components/adapters/ConsentCheckboxList.styles.js.map +1 -1
  176. package/dist/components/adapters/GoogleButton.d.ts.map +1 -1
  177. package/dist/components/adapters/GoogleButton.js +425 -31
  178. package/dist/components/adapters/GoogleButton.js.map +1 -1
  179. package/dist/components/adapters/ImageComponent.d.ts.map +1 -1
  180. package/dist/components/adapters/ImageComponent.js +13 -9
  181. package/dist/components/adapters/ImageComponent.js.map +1 -1
  182. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.d.ts.map +1 -1
  183. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js +1 -1
  184. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js.map +1 -1
  185. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.d.ts.map +1 -1
  186. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js +1 -1
  187. package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js.map +1 -1
  188. package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
  189. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js +5 -8
  190. package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -1
  191. package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.d.ts.map +1 -1
  192. package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js +5 -1
  193. package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js.map +1 -1
  194. package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts +2 -1
  195. package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts.map +1 -1
  196. package/dist/components/presentation/UserProfile/BaseUserProfile.js +92 -36
  197. package/dist/components/presentation/UserProfile/BaseUserProfile.js.map +1 -1
  198. package/dist/components/presentation/UserProfile/BaseUserProfile.styles.d.ts.map +1 -1
  199. package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js +1 -1
  200. package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js.map +1 -1
  201. package/dist/components/presentation/UserProfile/UserProfile.d.ts.map +1 -1
  202. package/dist/components/presentation/UserProfile/UserProfile.js +5 -3
  203. package/dist/components/presentation/UserProfile/UserProfile.js.map +1 -1
  204. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.d.ts.map +1 -1
  205. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.js +7 -27
  206. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.js.map +1 -1
  207. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.d.ts.map +1 -1
  208. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.js +38 -5
  209. package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.js.map +1 -1
  210. package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
  211. package/dist/components/presentation/auth/AuthOptionFactory.js +68 -63
  212. package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -1
  213. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.d.ts.map +1 -1
  214. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.js +5 -17
  215. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.js.map +1 -1
  216. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.d.ts.map +1 -1
  217. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.js +19 -5
  218. package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.js.map +1 -1
  219. package/dist/components/presentation/auth/Recovery/BaseRecovery.d.ts.map +1 -1
  220. package/dist/components/presentation/auth/Recovery/BaseRecovery.js +1 -1
  221. package/dist/components/presentation/auth/Recovery/BaseRecovery.js.map +1 -1
  222. package/dist/components/presentation/auth/SignIn/BaseSignIn.d.ts.map +1 -1
  223. package/dist/components/presentation/auth/SignIn/BaseSignIn.js +2 -6
  224. package/dist/components/presentation/auth/SignIn/BaseSignIn.js.map +1 -1
  225. package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.d.ts.map +1 -1
  226. package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js +7 -1
  227. package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js.map +1 -1
  228. package/dist/components/presentation/auth/SignUp/BaseSignUp.d.ts.map +1 -1
  229. package/dist/components/presentation/auth/SignUp/BaseSignUp.js +1 -1
  230. package/dist/components/presentation/auth/SignUp/BaseSignUp.js.map +1 -1
  231. package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.d.ts.map +1 -1
  232. package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js +1 -1
  233. package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js.map +1 -1
  234. package/dist/components/primitives/AffixedField/AffixedField.d.ts.map +1 -1
  235. package/dist/components/primitives/AffixedField/AffixedField.js +1 -1
  236. package/dist/components/primitives/AffixedField/AffixedField.js.map +1 -1
  237. package/dist/components/primitives/AffixedField/AffixedField.styles.d.ts.map +1 -1
  238. package/dist/components/primitives/AffixedField/AffixedField.styles.js +1 -1
  239. package/dist/components/primitives/AffixedField/AffixedField.styles.js.map +1 -1
  240. package/dist/components/primitives/Alert/Alert.d.ts.map +1 -1
  241. package/dist/components/primitives/Alert/Alert.js +1 -1
  242. package/dist/components/primitives/Alert/Alert.js.map +1 -1
  243. package/dist/components/primitives/Alert/Alert.styles.d.ts.map +1 -1
  244. package/dist/components/primitives/Alert/Alert.styles.js +1 -1
  245. package/dist/components/primitives/Alert/Alert.styles.js.map +1 -1
  246. package/dist/components/primitives/Avatar/Avatar.d.ts.map +1 -1
  247. package/dist/components/primitives/Avatar/Avatar.js +1 -1
  248. package/dist/components/primitives/Avatar/Avatar.js.map +1 -1
  249. package/dist/components/primitives/Avatar/Avatar.styles.d.ts.map +1 -1
  250. package/dist/components/primitives/Avatar/Avatar.styles.js +1 -1
  251. package/dist/components/primitives/Avatar/Avatar.styles.js.map +1 -1
  252. package/dist/components/primitives/Button/Button.d.ts.map +1 -1
  253. package/dist/components/primitives/Button/Button.js +2 -5
  254. package/dist/components/primitives/Button/Button.js.map +1 -1
  255. package/dist/components/primitives/Button/Button.styles.d.ts.map +1 -1
  256. package/dist/components/primitives/Button/Button.styles.js +1 -1
  257. package/dist/components/primitives/Button/Button.styles.js.map +1 -1
  258. package/dist/components/primitives/Card/Card.d.ts.map +1 -1
  259. package/dist/components/primitives/Card/Card.js +1 -1
  260. package/dist/components/primitives/Card/Card.js.map +1 -1
  261. package/dist/components/primitives/Card/Card.styles.d.ts.map +1 -1
  262. package/dist/components/primitives/Card/Card.styles.js +1 -1
  263. package/dist/components/primitives/Card/Card.styles.js.map +1 -1
  264. package/dist/components/primitives/Checkbox/Checkbox.d.ts.map +1 -1
  265. package/dist/components/primitives/Checkbox/Checkbox.js +1 -1
  266. package/dist/components/primitives/Checkbox/Checkbox.js.map +1 -1
  267. package/dist/components/primitives/Checkbox/Checkbox.styles.d.ts.map +1 -1
  268. package/dist/components/primitives/Checkbox/Checkbox.styles.js +1 -1
  269. package/dist/components/primitives/Checkbox/Checkbox.styles.js.map +1 -1
  270. package/dist/components/primitives/CopyableText/CopyableText.styles.d.ts.map +1 -1
  271. package/dist/components/primitives/CopyableText/CopyableText.styles.js +1 -1
  272. package/dist/components/primitives/CopyableText/CopyableText.styles.js.map +1 -1
  273. package/dist/components/primitives/DatePicker/DatePicker.d.ts.map +1 -1
  274. package/dist/components/primitives/DatePicker/DatePicker.js +1 -1
  275. package/dist/components/primitives/DatePicker/DatePicker.js.map +1 -1
  276. package/dist/components/primitives/DatePicker/DatePicker.styles.d.ts.map +1 -1
  277. package/dist/components/primitives/DatePicker/DatePicker.styles.js +1 -1
  278. package/dist/components/primitives/DatePicker/DatePicker.styles.js.map +1 -1
  279. package/dist/components/primitives/Dialog/Dialog.d.ts.map +1 -1
  280. package/dist/components/primitives/Dialog/Dialog.js +1 -1
  281. package/dist/components/primitives/Dialog/Dialog.js.map +1 -1
  282. package/dist/components/primitives/Dialog/Dialog.styles.d.ts.map +1 -1
  283. package/dist/components/primitives/Dialog/Dialog.styles.js +1 -1
  284. package/dist/components/primitives/Dialog/Dialog.styles.js.map +1 -1
  285. package/dist/components/primitives/Divider/Divider.d.ts.map +1 -1
  286. package/dist/components/primitives/Divider/Divider.js +1 -1
  287. package/dist/components/primitives/Divider/Divider.js.map +1 -1
  288. package/dist/components/primitives/Divider/Divider.styles.d.ts.map +1 -1
  289. package/dist/components/primitives/Divider/Divider.styles.js +1 -1
  290. package/dist/components/primitives/Divider/Divider.styles.js.map +1 -1
  291. package/dist/components/primitives/FormControl/FormControl.d.ts.map +1 -1
  292. package/dist/components/primitives/FormControl/FormControl.js +1 -1
  293. package/dist/components/primitives/FormControl/FormControl.js.map +1 -1
  294. package/dist/components/primitives/FormControl/FormControl.styles.d.ts.map +1 -1
  295. package/dist/components/primitives/FormControl/FormControl.styles.js +1 -1
  296. package/dist/components/primitives/FormControl/FormControl.styles.js.map +1 -1
  297. package/dist/components/primitives/InputLabel/InputLabel.d.ts.map +1 -1
  298. package/dist/components/primitives/InputLabel/InputLabel.js +1 -1
  299. package/dist/components/primitives/InputLabel/InputLabel.js.map +1 -1
  300. package/dist/components/primitives/InputLabel/InputLabel.styles.d.ts.map +1 -1
  301. package/dist/components/primitives/InputLabel/InputLabel.styles.js +1 -1
  302. package/dist/components/primitives/InputLabel/InputLabel.styles.js.map +1 -1
  303. package/dist/components/primitives/KeyValueInput/KeyValueInput.d.ts.map +1 -1
  304. package/dist/components/primitives/KeyValueInput/KeyValueInput.js +1 -1
  305. package/dist/components/primitives/KeyValueInput/KeyValueInput.js.map +1 -1
  306. package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.d.ts.map +1 -1
  307. package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js +1 -1
  308. package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js.map +1 -1
  309. package/dist/components/primitives/Logo/Logo.d.ts.map +1 -1
  310. package/dist/components/primitives/Logo/Logo.js +1 -1
  311. package/dist/components/primitives/Logo/Logo.js.map +1 -1
  312. package/dist/components/primitives/Logo/Logo.styles.d.ts.map +1 -1
  313. package/dist/components/primitives/Logo/Logo.styles.js +1 -1
  314. package/dist/components/primitives/Logo/Logo.styles.js.map +1 -1
  315. package/dist/components/primitives/MultiInput/MultiInput.d.ts.map +1 -1
  316. package/dist/components/primitives/MultiInput/MultiInput.js +1 -1
  317. package/dist/components/primitives/MultiInput/MultiInput.js.map +1 -1
  318. package/dist/components/primitives/MultiInput/MultiInput.styles.d.ts.map +1 -1
  319. package/dist/components/primitives/MultiInput/MultiInput.styles.js +1 -1
  320. package/dist/components/primitives/MultiInput/MultiInput.styles.js.map +1 -1
  321. package/dist/components/primitives/OtpField/OtpField.d.ts.map +1 -1
  322. package/dist/components/primitives/OtpField/OtpField.js +1 -1
  323. package/dist/components/primitives/OtpField/OtpField.js.map +1 -1
  324. package/dist/components/primitives/OtpField/OtpField.styles.d.ts.map +1 -1
  325. package/dist/components/primitives/OtpField/OtpField.styles.js +1 -1
  326. package/dist/components/primitives/OtpField/OtpField.styles.js.map +1 -1
  327. package/dist/components/primitives/PasswordField/PasswordField.d.ts.map +1 -1
  328. package/dist/components/primitives/PasswordField/PasswordField.js +1 -1
  329. package/dist/components/primitives/PasswordField/PasswordField.js.map +1 -1
  330. package/dist/components/primitives/PasswordField/PasswordField.styles.d.ts.map +1 -1
  331. package/dist/components/primitives/PasswordField/PasswordField.styles.js +1 -1
  332. package/dist/components/primitives/PasswordField/PasswordField.styles.js.map +1 -1
  333. package/dist/components/primitives/Select/Select.d.ts.map +1 -1
  334. package/dist/components/primitives/Select/Select.js +1 -1
  335. package/dist/components/primitives/Select/Select.js.map +1 -1
  336. package/dist/components/primitives/Select/Select.styles.d.ts.map +1 -1
  337. package/dist/components/primitives/Select/Select.styles.js +1 -1
  338. package/dist/components/primitives/Select/Select.styles.js.map +1 -1
  339. package/dist/components/primitives/Spinner/Spinner.d.ts +5 -3
  340. package/dist/components/primitives/Spinner/Spinner.d.ts.map +1 -1
  341. package/dist/components/primitives/Spinner/Spinner.js +4 -5
  342. package/dist/components/primitives/Spinner/Spinner.js.map +1 -1
  343. package/dist/components/primitives/Spinner/Spinner.styles.d.ts +4 -1
  344. package/dist/components/primitives/Spinner/Spinner.styles.d.ts.map +1 -1
  345. package/dist/components/primitives/Spinner/Spinner.styles.js +16 -7
  346. package/dist/components/primitives/Spinner/Spinner.styles.js.map +1 -1
  347. package/dist/components/primitives/TextField/TextField.d.ts.map +1 -1
  348. package/dist/components/primitives/TextField/TextField.js +1 -1
  349. package/dist/components/primitives/TextField/TextField.js.map +1 -1
  350. package/dist/components/primitives/TextField/TextField.styles.d.ts.map +1 -1
  351. package/dist/components/primitives/TextField/TextField.styles.js +1 -1
  352. package/dist/components/primitives/TextField/TextField.styles.js.map +1 -1
  353. package/dist/components/primitives/Toggle/Toggle.d.ts.map +1 -1
  354. package/dist/components/primitives/Toggle/Toggle.js +1 -1
  355. package/dist/components/primitives/Toggle/Toggle.js.map +1 -1
  356. package/dist/components/primitives/Toggle/Toggle.styles.d.ts.map +1 -1
  357. package/dist/components/primitives/Toggle/Toggle.styles.js +1 -1
  358. package/dist/components/primitives/Toggle/Toggle.styles.js.map +1 -1
  359. package/dist/components/primitives/Tooltip/Tooltip.d.ts.map +1 -1
  360. package/dist/components/primitives/Tooltip/Tooltip.js +1 -1
  361. package/dist/components/primitives/Tooltip/Tooltip.js.map +1 -1
  362. package/dist/components/primitives/Tooltip/Tooltip.styles.d.ts.map +1 -1
  363. package/dist/components/primitives/Tooltip/Tooltip.styles.js +1 -1
  364. package/dist/components/primitives/Tooltip/Tooltip.styles.js.map +1 -1
  365. package/dist/components/primitives/Typography/Typography.d.ts.map +1 -1
  366. package/dist/components/primitives/Typography/Typography.js +1 -1
  367. package/dist/components/primitives/Typography/Typography.js.map +1 -1
  368. package/dist/components/primitives/Typography/Typography.styles.d.ts.map +1 -1
  369. package/dist/components/primitives/Typography/Typography.styles.js +1 -1
  370. package/dist/components/primitives/Typography/Typography.styles.js.map +1 -1
  371. package/dist/contexts/ThunderID/ThunderIDContext.d.ts +5 -1
  372. package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
  373. package/dist/contexts/ThunderID/ThunderIDContext.js +1 -0
  374. package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -1
  375. package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
  376. package/dist/contexts/ThunderID/ThunderIDProvider.js +36 -14
  377. package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -1
  378. package/dist/contexts/User/UserContext.d.ts +2 -1
  379. package/dist/contexts/User/UserContext.d.ts.map +1 -1
  380. package/dist/contexts/User/UserContext.js +2 -1
  381. package/dist/contexts/User/UserContext.js.map +1 -1
  382. package/dist/contexts/User/UserProvider.d.ts +5 -2
  383. package/dist/contexts/User/UserProvider.d.ts.map +1 -1
  384. package/dist/contexts/User/UserProvider.js +5 -3
  385. package/dist/contexts/User/UserProvider.js.map +1 -1
  386. package/dist/index.d.ts +2 -0
  387. package/dist/index.d.ts.map +1 -1
  388. package/dist/index.js +2 -1
  389. package/dist/models/config.d.ts +10 -1
  390. package/dist/models/config.d.ts.map +1 -1
  391. package/dist/styles/emotion.d.ts +36 -0
  392. package/dist/styles/emotion.d.ts.map +1 -0
  393. package/dist/styles/emotion.js +58 -0
  394. package/dist/styles/emotion.js.map +1 -0
  395. package/package.json +2 -2
@@ -1,6 +1,7 @@
1
1
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_ThunderIDContext = require('./ThunderIDContext.cjs');
3
3
  const require_useBrowserUrl = require('../../hooks/useBrowserUrl.cjs');
4
+ const require_emotion = require('../../styles/emotion.cjs');
4
5
  const require_ThunderIDReactClient = require('../../ThunderIDReactClient.cjs');
5
6
  const require_ComponentRendererProvider = require('../ComponentRenderer/ComponentRendererProvider.cjs');
6
7
  const require_FlowProvider = require('../Flow/FlowProvider.cjs');
@@ -9,6 +10,7 @@ const require_I18nProvider = require('../I18n/I18nProvider.cjs');
9
10
  const require_ThemeProvider = require('../Theme/ThemeProvider.cjs');
10
11
  const require_UserProvider = require('../User/UserProvider.cjs');
11
12
  const require_getUsersMe = require('../../api/getUsersMe.cjs');
13
+ const require_getUsersMeMeta = require('../../api/getUsersMeMeta.cjs');
12
14
  let __thunderid_browser = require("@thunderid/browser");
13
15
  __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
14
16
  let react = require("react");
@@ -18,7 +20,8 @@ react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
18
20
 
19
21
  //#region src/contexts/ThunderID/ThunderIDProvider.tsx
20
22
  const logger = (0, __thunderid_browser.createPackageComponentLogger)("@thunderid/react", "ThunderIDProvider");
21
- const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBaseUrl, clientId, children, extensions, scopes, preferences, signInUrl, signUpUrl, organizationHandle, applicationId, signInOptions, tokenRequest, syncSession, instanceId = 0, organizationChain,...rest }) => {
23
+ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBaseUrl, clientId, children, extensions, scopes, preferences, signInUrl, signUpUrl, organizationHandle, applicationId, signInOptions, tokenRequest, syncSession, instanceId = 0, organizationChain, cspNonce, vendor,...rest }) => {
24
+ require_emotion.configureEmotionNonce(cspNonce, vendor);
22
25
  const reRenderCheckRef = (0, react.useRef)(false);
23
26
  const client = (0, react.useMemo)(() => new require_ThunderIDReactClient.default(instanceId), [instanceId]);
24
27
  const storageManagerRef = (0, react.useRef)(null);
@@ -28,6 +31,7 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
28
31
  const [isInitializedSync, setIsInitializedSync] = (0, react.useState)(false);
29
32
  const [isLoadingSync, setIsLoadingSync] = (0, react.useState)(true);
30
33
  const [userProfile, setUserProfile] = (0, react.useState)(null);
34
+ const [userSchema, setUserSchema] = (0, react.useState)(null);
31
35
  const [baseUrl, setBaseUrl] = (0, react.useState)(initialBaseUrl ?? "");
32
36
  const [config, setConfig] = (0, react.useState)({
33
37
  afterSignInUrl: afterSignInUrl ?? window.location.origin,
@@ -43,6 +47,7 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
43
47
  signInUrl,
44
48
  signUpUrl,
45
49
  syncSession,
50
+ vendor,
46
51
  ...rest
47
52
  });
48
53
  const [isUpdatingSession, setIsUpdatingSession] = (0, react.useState)(false);
@@ -72,19 +77,33 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
72
77
  const claims = (0, __thunderid_browser.extractUserClaimsFromIdToken)(decodedToken);
73
78
  let profileData = claims;
74
79
  const currentSignInStatus = await client.isSignedIn();
75
- if (currentSignInStatus && shouldFetchProfile) try {
76
- const fetchedProfile = await require_getUsersMe.default({
77
- baseUrl: resolvedBaseUrl,
78
- url: (0, __thunderid_browser.resolveResourceEndpoint)("usersMe", config),
79
- instanceId
80
- });
81
- profileData = {
82
- ...claims,
83
- ...fetchedProfile
84
- };
85
- } catch (err) {
86
- logger.warn("Failed to fetch user profile from /users/me:", err);
87
- }
80
+ if (currentSignInStatus && shouldFetchProfile) {
81
+ try {
82
+ const fetchedProfile = await require_getUsersMe.default({
83
+ baseUrl: resolvedBaseUrl,
84
+ url: (0, __thunderid_browser.resolveResourceEndpoint)("usersMe", config),
85
+ instanceId
86
+ });
87
+ profileData = {
88
+ ...claims,
89
+ ...fetchedProfile
90
+ };
91
+ } catch (err) {
92
+ logger.warn("Failed to fetch user profile from /users/me:", err);
93
+ }
94
+ try {
95
+ const metaRes = await require_getUsersMeMeta.default({
96
+ baseUrl: resolvedBaseUrl,
97
+ url: (0, __thunderid_browser.resolveResourceEndpoint)("usersMeMeta", config),
98
+ instanceId
99
+ });
100
+ if (metaRes?.schema) setUserSchema(metaRes.schema);
101
+ else setUserSchema(null);
102
+ } catch (err) {
103
+ setUserSchema(null);
104
+ logger.warn("Failed to fetch user schema metadata from /users/me/meta:", err);
105
+ }
106
+ } else setUserSchema(null);
88
107
  setUser(profileData);
89
108
  setUserProfile({
90
109
  flattenedProfile: (0, __thunderid_browser.generateFlattenedUserProfile)(profileData, []),
@@ -293,6 +312,7 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
293
312
  signUpUrl,
294
313
  syncSession,
295
314
  user,
315
+ userSchema,
296
316
  vendor: (0, __thunderid_browser.getVendorPrefix)(config.vendor)
297
317
  }), [
298
318
  applicationId,
@@ -312,6 +332,7 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
312
332
  signIn,
313
333
  signInSilently,
314
334
  user,
335
+ userSchema,
315
336
  client,
316
337
  signInOptions,
317
338
  tokenRequest,
@@ -345,6 +366,7 @@ const ThunderIDProvider = ({ afterSignInUrl, afterSignOutUrl, baseUrl: initialBa
345
366
  },
346
367
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_FlowProvider.default, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UserProvider.default, {
347
368
  profile: userProfile,
369
+ userSchema,
348
370
  onUpdateProfile: handleProfileUpdate,
349
371
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_ComponentRendererProvider.default, {
350
372
  renderers: extensions?.components?.renderers ?? {},
@@ -1 +1 @@
1
- {"version":3,"file":"ThunderIDProvider.cjs","names":["logger: ReturnType<typeof createPackageComponentLogger>","ThunderIDProvider: FC<PropsWithChildren<ThunderIDProviderProps>>","reRenderCheckRef: RefObject<boolean>","client: ThunderIDReactClient","ThunderIDReactClient","storageManagerRef: any","useBrowserUrl","pendingSessionUpdateRef: RefObject<Promise<void> | null>","resolvedBaseUrl: string","decodedToken: IdToken","shouldFetchProfile: boolean","claims: User","currentSignInStatus: boolean","getUsersMe","arg1: any","isV2FlowRequest: boolean","ThunderIDRuntimeError","currentUrl: URL","urlParams: URLSearchParams","code: string | null","executionIdFromUrl: string | null","storedExecutionId: string | null","interval: NodeJS.Timeout","status: boolean","getDecodedIdToken: () => Promise<IdToken>","getIdToken: () => Promise<string>","getAccessToken: () => Promise<string>","getStorageManager: () => Promise<any>","storageManager: any","request: (...args: any[]) => Promise<any>","requestAll: (...args: any[]) => Promise<any>","exchangeToken: (exchangeConfig: any) => Promise<any>","signOut: (...args: any[]) => Promise<any>","recover: (payload: any) => Promise<any>","signUp: (...args: any[]) => Promise<any>","clearSession: (...args: any[]) => Promise<any>","reInitialize: (reInitConfig: any) => Promise<any>","result: any","reinitializedConfig: ThunderIDReactConfig","value: any","ThunderIDContext","I18nProvider","FlowMetaProvider","ThemeProvider","FlowProvider","UserProvider","ComponentRendererProvider"],"sources":["../../../../src/contexts/ThunderID/ThunderIDProvider.tsx"],"sourcesContent":["// Copyright 2025-2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n ThunderIDRuntimeError,\n generateFlattenedUserProfile,\n OIDCDiscoveryApiResponse,\n SignInOptions,\n User,\n UserProfile,\n IdToken,\n extractUserClaimsFromIdToken,\n EmbeddedSignInFlowResponse,\n createPackageComponentLogger,\n getVendorPrefix,\n resolveResourceEndpoint,\n} from '@thunderid/browser';\nimport {FC, RefObject, PropsWithChildren, ReactElement, useEffect, useMemo, useRef, useState, useCallback} from 'react';\nimport ThunderIDContext from './ThunderIDContext';\nimport useBrowserUrl from '../../hooks/useBrowserUrl';\nimport {ThunderIDReactConfig} from '../../models/config';\nimport ThunderIDReactClient from '../../ThunderIDReactClient';\nimport ComponentRendererProvider from '../ComponentRenderer/ComponentRendererProvider';\nimport FlowProvider from '../Flow/FlowProvider';\nimport FlowMetaProvider from '../FlowMeta/FlowMetaProvider';\nimport I18nProvider from '../I18n/I18nProvider';\nimport ThemeProvider from '../Theme/ThemeProvider';\nimport UserProvider from '../User/UserProvider';\nimport getUsersMe from '../../api/getUsersMe';\n\nconst logger: ReturnType<typeof createPackageComponentLogger> = createPackageComponentLogger(\n '@thunderid/react',\n 'ThunderIDProvider',\n);\n\n/**\n * Props interface of {@link ThunderIDProvider}\n */\nexport type ThunderIDProviderProps = ThunderIDReactConfig;\n\nconst ThunderIDProvider: FC<PropsWithChildren<ThunderIDProviderProps>> = ({\n afterSignInUrl,\n afterSignOutUrl,\n baseUrl: initialBaseUrl,\n clientId,\n children,\n extensions,\n scopes,\n preferences,\n signInUrl,\n signUpUrl,\n organizationHandle,\n applicationId,\n signInOptions,\n tokenRequest,\n syncSession,\n instanceId = 0,\n organizationChain,\n ...rest\n}: PropsWithChildren<ThunderIDProviderProps>): ReactElement => {\n const reRenderCheckRef: RefObject<boolean> = useRef(false);\n const client: ThunderIDReactClient = useMemo(() => new ThunderIDReactClient(instanceId), [instanceId]);\n const storageManagerRef: any = useRef<any>(null);\n const {hasAuthParams, hasCalledForThisInstance} = useBrowserUrl();\n const [user, setUser] = useState<any | null>(null);\n const [isSignedInSync, setIsSignedInSync] = useState<boolean>(false);\n const [isInitializedSync, setIsInitializedSync] = useState<boolean>(false);\n const [isLoadingSync, setIsLoadingSync] = useState<boolean>(true);\n\n const [userProfile, setUserProfile] = useState<UserProfile | null>(null);\n const [baseUrl, setBaseUrl] = useState<string>(initialBaseUrl ?? '');\n const [config, setConfig] = useState<ThunderIDReactConfig>({\n afterSignInUrl: afterSignInUrl ?? window.location.origin,\n afterSignOutUrl: afterSignOutUrl ?? window.location.origin,\n applicationId,\n baseUrl,\n clientId,\n organizationChain,\n organizationHandle,\n scopes,\n signInOptions,\n tokenRequest,\n signInUrl,\n signUpUrl,\n syncSession,\n ...rest,\n });\n\n const [isUpdatingSession, setIsUpdatingSession] = useState<boolean>(false);\n const [wellKnown, setWellKnown] = useState<OIDCDiscoveryApiResponse | null>(null);\n\n // Holds the in-flight `updateSession()` promise so concurrent callers coalesce onto a single\n // `/users/me` request instead of issuing one each.\n const pendingSessionUpdateRef: RefObject<Promise<void> | null> = useRef<Promise<void> | null>(null);\n\n useEffect(() => {\n setBaseUrl(initialBaseUrl ?? '');\n }, [initialBaseUrl]);\n\n useEffect(() => {\n (async (): Promise<void> => {\n await client.initialize(config);\n const initializedConfig: ThunderIDReactConfig = await client.getConfiguration();\n setConfig(initializedConfig);\n setWellKnown(await client.getDiscoveryResponse());\n })();\n }, []);\n\n async function performSessionUpdate(): Promise<void> {\n try {\n // Set flag to prevent loading state tracking from interfering\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n let resolvedBaseUrl: string = baseUrl;\n\n const decodedToken: IdToken = await client.getDecodedIdToken();\n\n // If there's a `user_org` claim in the ID token,\n // Treat this login as a organization login.\n if (decodedToken?.['user_org']) {\n resolvedBaseUrl = `${(await client.getConfiguration()).baseUrl}/o`;\n setBaseUrl(resolvedBaseUrl);\n }\n\n const shouldFetchProfile: boolean = preferences?.user?.fetchUserProfile !== false;\n const claims: User = extractUserClaimsFromIdToken(decodedToken) as User;\n let profileData = claims;\n const currentSignInStatus: boolean = await client.isSignedIn();\n\n if (currentSignInStatus && shouldFetchProfile) {\n try {\n const fetchedProfile = await getUsersMe({\n baseUrl: resolvedBaseUrl,\n url: resolveResourceEndpoint('usersMe', config),\n instanceId,\n });\n profileData = {...claims, ...fetchedProfile};\n } catch (err) {\n logger.warn('Failed to fetch user profile from /users/me:', err);\n }\n }\n\n setUser(profileData);\n setUserProfile({\n flattenedProfile: generateFlattenedUserProfile(profileData, []),\n profile: profileData,\n });\n\n // CRITICAL: Update sign-in status BEFORE setting loading to false\n // This prevents the race condition where ProtectedRoute sees isLoading=false but isSignedIn=false\n setIsSignedInSync(currentSignInStatus);\n } catch (error) {\n // TODO: Add an error log.\n } finally {\n // Clear the flag and set final loading state\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n }\n\n /**\n * Single-flight wrapper around {@link performSessionUpdate}.\n *\n * Concurrent callers share the in-flight request instead of each issuing their own `/users/me`.\n * This is not a cache: once the request settles the ref is cleared, so a later caller (e.g.\n * revalidation after a profile update) fetches again.\n */\n async function updateSession(): Promise<void> {\n if (pendingSessionUpdateRef.current) {\n return pendingSessionUpdateRef.current;\n }\n\n pendingSessionUpdateRef.current = performSessionUpdate().finally(() => {\n pendingSessionUpdateRef.current = null;\n });\n\n return pendingSessionUpdateRef.current;\n }\n\n async function signIn(...args: any): Promise<User | EmbeddedSignInFlowResponse> {\n // Check if this is a V2 embedded flow request BEFORE calling signIn\n // This allows us to skip session checks entirely for V2 flows\n const arg1: any = args[0];\n const isV2FlowRequest: boolean =\n typeof arg1 === 'object' && arg1 !== null && ('executionId' in arg1 || 'applicationId' in arg1);\n\n try {\n if (!isV2FlowRequest) {\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n }\n\n return await client.signIn(...args);\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Sign in failed: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signIn-Error',\n 'react',\n 'An error occurred while trying to sign in.',\n );\n } finally {\n if (!isV2FlowRequest) {\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n }\n }\n\n /**\n * Try signing in when the component is mounted.\n */\n useEffect(() => {\n // React 18.x Strict.Mode has a new check for `Ensuring reusable state` to facilitate an upcoming react feature.\n // https://reactjs.org/docs/strict-mode.html#ensuring-reusable-state\n // This will remount all the useEffects to ensure that there are no unexpected side effects.\n // When react remounts the signIn hook of the AuthProvider, it will cause a race condition. Hence, we have to\n // prevent the re-render of this hook as suggested in the following discussion.\n // https://github.com/reactwg/react-18/discussions/18#discussioncomment-795623\n if (reRenderCheckRef.current) {\n return;\n }\n\n reRenderCheckRef.current = true;\n\n (async (): Promise<void> => {\n // Sync session state whenever sign-in completes (both redirect and embedded V2 flows).\n // Pass the user returned by the SDK's sign-in flow so users/me result is not discarded.\n await client.on('sign-in', async () => {\n await updateSession();\n });\n\n // Start auto-refresh with a soft failure. This also covers the case where the access token\n // expired while the refresh token is still valid — startAutoRefreshToken() calls\n // refreshAccessToken() immediately when timeUntilRefresh <= 0 — so the sign-in check below\n // sees the refreshed state.\n try {\n await client.startAutoRefreshToken();\n } catch (error) {\n logger.warn('Failed to schedule automatic token refresh.', error);\n }\n\n // User is already authenticated. Restore the session and skip the sign-in path.\n if (await client.isSignedIn()) {\n await updateSession();\n\n return;\n }\n\n const currentUrl: URL = new URL(window.location.href);\n const hasAuthParamsResult: boolean =\n hasAuthParams(currentUrl, config.afterSignInUrl!) && hasCalledForThisInstance(currentUrl, instanceId ?? 0);\n\n if (hasAuthParamsResult) {\n try {\n const urlParams: URLSearchParams = currentUrl.searchParams;\n const code: string | null = urlParams.get('code');\n const executionIdFromUrl: string | null = urlParams.get('executionId');\n const storedExecutionId: string | null = sessionStorage.getItem(\n `${getVendorPrefix(config.vendor)}_execution_id`,\n );\n\n if (code && !executionIdFromUrl && !storedExecutionId) {\n await signIn();\n }\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Sign in failed: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signIn-Error',\n 'react',\n 'An error occurred while trying to sign in.',\n );\n }\n }\n })();\n }, []);\n\n /**\n * Check if the user is signed in and update the state accordingly.\n * This will also set an interval to check for the sign-in status every second\n * until the user is signed in.\n */\n useEffect(() => {\n let interval: NodeJS.Timeout;\n\n (async (): Promise<void> => {\n try {\n const status: boolean = await client.isSignedIn();\n\n setIsSignedInSync(status);\n\n if (!status) {\n interval = setInterval(async () => {\n const newStatus: boolean = await client.isSignedIn();\n\n if (newStatus) {\n setIsSignedInSync(true);\n clearInterval(interval);\n }\n }, 1000);\n } else {\n // TODO: Add a debug log to indicate that the user is already signed in.\n }\n } catch (error) {\n setIsSignedInSync(false);\n }\n })();\n\n return (): void => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [client]);\n\n useEffect(() => {\n (async (): Promise<void> => {\n try {\n const status: boolean = await client.isInitialized();\n\n setIsInitializedSync(status);\n } catch (error) {\n setIsInitializedSync(false);\n }\n })();\n }, [client]);\n\n /**\n * Track loading state changes from the ThunderID client\n */\n useEffect(() => {\n const checkLoadingState = (): void => {\n // Don't override loading state during critical session updates\n if (isUpdatingSession) {\n return;\n }\n\n // Don't set loading=false while auth params are in the URL and user isn't signed in yet.\n // This prevents ProtectedRoute from redirecting before the sign-in effect processes the auth code.\n const currentUrl: URL = new URL(window.location.href);\n if (!isSignedInSync && hasAuthParams(currentUrl, config.afterSignInUrl!)) {\n return;\n }\n\n setIsLoadingSync(client.isLoading());\n };\n\n // Initial check\n checkLoadingState();\n\n // Set up an interval to check for loading state changes\n const interval: NodeJS.Timeout = setInterval(checkLoadingState, 100);\n\n return (): void => {\n clearInterval(interval);\n };\n }, [client, isLoadingSync, isSignedInSync, isUpdatingSession]);\n\n const signInSilently = async (options?: SignInOptions): Promise<User | boolean> => {\n try {\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n return await client.signInSilently(options);\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Error while signing in silently: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signInSilently-Error',\n 'react',\n 'An error occurred while trying to sign in silently.',\n );\n } finally {\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n };\n\n const handleProfileUpdate = (payload: User): void => {\n setUser(payload);\n setUserProfile((prev: UserProfile | null) => ({\n flattenedProfile: generateFlattenedUserProfile(payload),\n profile: payload,\n }));\n };\n\n const getDecodedIdToken: () => Promise<IdToken> = useCallback(\n async (): Promise<IdToken> => client.getDecodedIdToken(),\n [client],\n );\n\n const getIdToken: () => Promise<string> = useCallback(async (): Promise<string> => client.getIdToken(), [client]);\n\n const getAccessToken: () => Promise<string> = useCallback(\n async (): Promise<string> => client.getAccessToken(),\n [client],\n );\n\n const getStorageManager: () => Promise<any> = useCallback(async (): Promise<any> => {\n const storageManager: any = storageManagerRef.current ?? (await client.getStorageManager());\n if (storageManager) {\n storageManagerRef.current = storageManager;\n }\n return storageManager;\n }, [client]);\n\n const request: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.request(...args),\n [client],\n );\n\n const requestAll: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.requestAll(...args),\n [client],\n );\n\n const exchangeToken: (exchangeConfig: any) => Promise<any> = useCallback(\n async (exchangeConfig: any): Promise<any> => client.exchangeToken(exchangeConfig),\n [client],\n );\n\n const signOut: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.signOut(...args),\n [client],\n );\n\n const recover: (payload: any) => Promise<any> = useCallback(\n async (payload: any): Promise<any> => client.recover(payload),\n [client],\n );\n\n const signUp: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.signUp(...args),\n [client],\n );\n\n const clearSession: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.clearSession(...args),\n [client],\n );\n\n const reInitialize: (reInitConfig: any) => Promise<any> = useCallback(\n async (reInitConfig: any): Promise<any> => {\n const result: any = await client.reInitialize(reInitConfig);\n\n // Refresh React state from the reinitialized client so the context (config.endpoints,\n // baseUrl, discovery) reflects the new configuration instead of the pre-reinitialization state.\n const reinitializedConfig: ThunderIDReactConfig = await client.getConfiguration();\n setConfig(reinitializedConfig);\n setBaseUrl(reinitializedConfig.baseUrl ?? '');\n setWellKnown(await client.getDiscoveryResponse());\n\n return result;\n },\n [client],\n );\n\n const value: any = useMemo(\n () => ({\n afterSignInUrl: config.afterSignInUrl,\n applicationId: config.applicationId,\n baseUrl,\n endpoints: config.endpoints,\n scopes: config.scopes,\n clearSession,\n clientId,\n discovery: {\n wellKnown,\n },\n exchangeToken,\n getAccessToken,\n getDecodedIdToken,\n getIdToken,\n getStorageManager,\n http: {\n request,\n requestAll,\n },\n instanceId,\n isInitialized: isInitializedSync,\n isLoading: isLoadingSync,\n isSignedIn: isSignedInSync,\n organizationChain,\n organizationHandle: config?.organizationHandle,\n preferences,\n reInitialize,\n recover,\n signIn,\n signInOptions,\n tokenRequest,\n signInSilently,\n signInUrl,\n signOut,\n signUp,\n signUpUrl,\n syncSession,\n user,\n vendor: getVendorPrefix(config.vendor),\n }),\n [\n applicationId,\n config?.organizationHandle,\n config.vendor,\n config.afterSignInUrl,\n config.endpoints,\n config.scopes,\n signInUrl,\n signUpUrl,\n baseUrl,\n clientId,\n wellKnown,\n isInitializedSync,\n isLoadingSync,\n isSignedInSync,\n signIn,\n signInSilently,\n user,\n client,\n signInOptions,\n tokenRequest,\n syncSession,\n getDecodedIdToken,\n clearSession,\n exchangeToken,\n getAccessToken,\n getStorageManager,\n instanceId,\n organizationChain,\n preferences,\n recover,\n reInitialize,\n request,\n requestAll,\n signOut,\n signUp,\n ],\n );\n\n return (\n <ThunderIDContext.Provider value={value}>\n <I18nProvider preferences={preferences?.i18n} vendor={getVendorPrefix(config.vendor)}>\n <FlowMetaProvider enabled={preferences?.resolveFromMeta !== false}>\n <ThemeProvider\n theme={{\n ...preferences?.theme?.overrides,\n direction: preferences?.theme?.direction,\n }}\n >\n <FlowProvider>\n <UserProvider profile={userProfile!} onUpdateProfile={handleProfileUpdate}>\n <ComponentRendererProvider renderers={(extensions?.components?.renderers ?? {}) as any}>\n {children}\n </ComponentRendererProvider>\n </UserProvider>\n </FlowProvider>\n </ThemeProvider>\n </FlowMetaProvider>\n </I18nProvider>\n </ThunderIDContext.Provider>\n );\n};\n\nexport default ThunderIDProvider;\n"],"mappings":"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C,SAAc,MAAM,OAAO,aAAa,aAAa;EAI3D,MAAMC,sBAA4C,MAAM,OAAO,kBAAkB;AACjF,YAAU,oBAAoB;AAC9B,aAAW,oBAAoB,WAAW,GAAG;AAC7C,eAAa,MAAM,OAAO,sBAAsB,CAAC;AAEjD,SAAO;IAET,CAAC,OAAO,CACT;CAED,MAAMC,kCACG;EACL,gBAAgB,OAAO;EACvB,eAAe,OAAO;EACtB;EACA,WAAW,OAAO;EAClB,QAAQ,OAAO;EACf;EACA;EACA,WAAW,EACT,WACD;EACD;EACA;EACA;EACA;EACA;EACA,MAAM;GACJ;GACA;GACD;EACD;EACA,eAAe;EACf,WAAW;EACX,YAAY;EACZ;EACA,oBAAoB,QAAQ;EAC5B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,iDAAwB,OAAO,OAAO;EACvC,GACD;EACE;EACA,QAAQ;EACR,OAAO;EACP,OAAO;EACP,OAAO;EACP,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAED,QACE,2CAACC,iCAAiB;EAAgB;YAChC,2CAACC;GAAa,aAAa,aAAa;GAAM,iDAAwB,OAAO,OAAO;aAClF,2CAACC;IAAiB,SAAS,aAAa,oBAAoB;cAC1D,2CAACC;KACC,OAAO;MACL,GAAG,aAAa,OAAO;MACvB,WAAW,aAAa,OAAO;MAChC;eAED,2CAACC,0CACC,2CAACC;MAAa,SAAS;MAAc,iBAAiB;gBACpD,2CAACC;OAA0B,WAAY,YAAY,YAAY,aAAa,EAAE;OAC3E;QACyB;OACf,GACF;MACD;KACC;IACN;GACW;;AAIhC,gCAAe"}
1
+ {"version":3,"file":"ThunderIDProvider.cjs","names":["logger: ReturnType<typeof createPackageComponentLogger>","ThunderIDProvider: FC<PropsWithChildren<ThunderIDProviderProps>>","reRenderCheckRef: RefObject<boolean>","client: ThunderIDReactClient","ThunderIDReactClient","storageManagerRef: any","useBrowserUrl","pendingSessionUpdateRef: RefObject<Promise<void> | null>","resolvedBaseUrl: string","decodedToken: IdToken","shouldFetchProfile: boolean","claims: User","currentSignInStatus: boolean","getUsersMe","getUsersMeMeta","arg1: any","isV2FlowRequest: boolean","ThunderIDRuntimeError","currentUrl: URL","urlParams: URLSearchParams","code: string | null","executionIdFromUrl: string | null","storedExecutionId: string | null","interval: NodeJS.Timeout","status: boolean","getDecodedIdToken: () => Promise<IdToken>","getIdToken: () => Promise<string>","getAccessToken: () => Promise<string>","getStorageManager: () => Promise<any>","storageManager: any","request: (...args: any[]) => Promise<any>","requestAll: (...args: any[]) => Promise<any>","exchangeToken: (exchangeConfig: any) => Promise<any>","signOut: (...args: any[]) => Promise<any>","recover: (payload: any) => Promise<any>","signUp: (...args: any[]) => Promise<any>","clearSession: (...args: any[]) => Promise<any>","reInitialize: (reInitConfig: any) => Promise<any>","result: any","reinitializedConfig: ThunderIDReactConfig","value: any","ThunderIDContext","I18nProvider","FlowMetaProvider","ThemeProvider","FlowProvider","UserProvider","ComponentRendererProvider"],"sources":["../../../../src/contexts/ThunderID/ThunderIDProvider.tsx"],"sourcesContent":["// Copyright 2025-2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n ThunderIDRuntimeError,\n generateFlattenedUserProfile,\n OIDCDiscoveryApiResponse,\n SignInOptions,\n User,\n UserProfile,\n IdToken,\n extractUserClaimsFromIdToken,\n EmbeddedSignInFlowResponse,\n createPackageComponentLogger,\n getVendorPrefix,\n resolveResourceEndpoint,\n AttributeSchema,\n} from '@thunderid/browser';\nimport {FC, RefObject, PropsWithChildren, ReactElement, useEffect, useMemo, useRef, useState, useCallback} from 'react';\nimport ThunderIDContext from './ThunderIDContext';\nimport useBrowserUrl from '../../hooks/useBrowserUrl';\nimport {ThunderIDReactConfig} from '../../models/config';\nimport {configureEmotionNonce} from '../../styles/emotion';\nimport ThunderIDReactClient from '../../ThunderIDReactClient';\nimport ComponentRendererProvider from '../ComponentRenderer/ComponentRendererProvider';\nimport FlowProvider from '../Flow/FlowProvider';\nimport FlowMetaProvider from '../FlowMeta/FlowMetaProvider';\nimport I18nProvider from '../I18n/I18nProvider';\nimport ThemeProvider from '../Theme/ThemeProvider';\nimport UserProvider from '../User/UserProvider';\nimport getUsersMe from '../../api/getUsersMe';\nimport getUsersMeMeta from '../../api/getUsersMeMeta';\n\nconst logger: ReturnType<typeof createPackageComponentLogger> = createPackageComponentLogger(\n '@thunderid/react',\n 'ThunderIDProvider',\n);\n\n/**\n * Props interface of {@link ThunderIDProvider}\n */\nexport type ThunderIDProviderProps = ThunderIDReactConfig;\n\nconst ThunderIDProvider: FC<PropsWithChildren<ThunderIDProviderProps>> = ({\n afterSignInUrl,\n afterSignOutUrl,\n baseUrl: initialBaseUrl,\n clientId,\n children,\n extensions,\n scopes,\n preferences,\n signInUrl,\n signUpUrl,\n organizationHandle,\n applicationId,\n signInOptions,\n tokenRequest,\n syncSession,\n instanceId = 0,\n organizationChain,\n cspNonce,\n vendor,\n ...rest\n}: PropsWithChildren<ThunderIDProviderProps>): ReactElement => {\n // Must run synchronously here, in the render body, before any descendant's css()/cx()/\n // keyframes() calls execute during this same render pass - see the doc comment on\n // `configureEmotionNonce` for why a `useEffect` would be too late.\n configureEmotionNonce(cspNonce, vendor);\n\n const reRenderCheckRef: RefObject<boolean> = useRef(false);\n const client: ThunderIDReactClient = useMemo(() => new ThunderIDReactClient(instanceId), [instanceId]);\n const storageManagerRef: any = useRef<any>(null);\n const {hasAuthParams, hasCalledForThisInstance} = useBrowserUrl();\n const [user, setUser] = useState<any | null>(null);\n const [isSignedInSync, setIsSignedInSync] = useState<boolean>(false);\n const [isInitializedSync, setIsInitializedSync] = useState<boolean>(false);\n const [isLoadingSync, setIsLoadingSync] = useState<boolean>(true);\n\n const [userProfile, setUserProfile] = useState<UserProfile | null>(null);\n const [userSchema, setUserSchema] = useState<Record<string, AttributeSchema> | null>(null);\n const [baseUrl, setBaseUrl] = useState<string>(initialBaseUrl ?? '');\n const [config, setConfig] = useState<ThunderIDReactConfig>({\n afterSignInUrl: afterSignInUrl ?? window.location.origin,\n afterSignOutUrl: afterSignOutUrl ?? window.location.origin,\n applicationId,\n baseUrl,\n clientId,\n organizationChain,\n organizationHandle,\n scopes,\n signInOptions,\n tokenRequest,\n signInUrl,\n signUpUrl,\n syncSession,\n vendor,\n ...rest,\n });\n\n const [isUpdatingSession, setIsUpdatingSession] = useState<boolean>(false);\n const [wellKnown, setWellKnown] = useState<OIDCDiscoveryApiResponse | null>(null);\n\n // Holds the in-flight `updateSession()` promise so concurrent callers coalesce onto a single\n // `/users/me` request instead of issuing one each.\n const pendingSessionUpdateRef: RefObject<Promise<void> | null> = useRef<Promise<void> | null>(null);\n\n useEffect(() => {\n setBaseUrl(initialBaseUrl ?? '');\n }, [initialBaseUrl]);\n\n useEffect(() => {\n (async (): Promise<void> => {\n await client.initialize(config);\n const initializedConfig: ThunderIDReactConfig = await client.getConfiguration();\n setConfig(initializedConfig);\n setWellKnown(await client.getDiscoveryResponse());\n })();\n }, []);\n\n async function performSessionUpdate(): Promise<void> {\n try {\n // Set flag to prevent loading state tracking from interfering\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n let resolvedBaseUrl: string = baseUrl;\n\n const decodedToken: IdToken = await client.getDecodedIdToken();\n\n // If there's a `user_org` claim in the ID token,\n // Treat this login as a organization login.\n if (decodedToken?.['user_org']) {\n resolvedBaseUrl = `${(await client.getConfiguration()).baseUrl}/o`;\n setBaseUrl(resolvedBaseUrl);\n }\n\n const shouldFetchProfile: boolean = preferences?.user?.fetchUserProfile !== false;\n const claims: User = extractUserClaimsFromIdToken(decodedToken) as User;\n let profileData = claims;\n const currentSignInStatus: boolean = await client.isSignedIn();\n\n if (currentSignInStatus && shouldFetchProfile) {\n try {\n const fetchedProfile = await getUsersMe({\n baseUrl: resolvedBaseUrl,\n url: resolveResourceEndpoint('usersMe', config),\n instanceId,\n });\n profileData = {...claims, ...fetchedProfile};\n } catch (err) {\n logger.warn('Failed to fetch user profile from /users/me:', err);\n }\n\n try {\n const metaRes = await getUsersMeMeta({\n baseUrl: resolvedBaseUrl,\n url: resolveResourceEndpoint('usersMeMeta', config),\n instanceId,\n });\n if (metaRes?.schema) {\n setUserSchema(metaRes.schema);\n } else {\n setUserSchema(null);\n }\n } catch (err) {\n setUserSchema(null);\n logger.warn('Failed to fetch user schema metadata from /users/me/meta:', err);\n }\n } else {\n setUserSchema(null);\n }\n\n setUser(profileData);\n setUserProfile({\n flattenedProfile: generateFlattenedUserProfile(profileData, []),\n profile: profileData,\n });\n\n // CRITICAL: Update sign-in status BEFORE setting loading to false\n // This prevents the race condition where ProtectedRoute sees isLoading=false but isSignedIn=false\n setIsSignedInSync(currentSignInStatus);\n } catch (error) {\n // TODO: Add an error log.\n } finally {\n // Clear the flag and set final loading state\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n }\n\n /**\n * Single-flight wrapper around {@link performSessionUpdate}.\n *\n * Concurrent callers share the in-flight request instead of each issuing their own `/users/me`.\n * This is not a cache: once the request settles the ref is cleared, so a later caller (e.g.\n * revalidation after a profile update) fetches again.\n */\n async function updateSession(): Promise<void> {\n if (pendingSessionUpdateRef.current) {\n return pendingSessionUpdateRef.current;\n }\n\n pendingSessionUpdateRef.current = performSessionUpdate().finally(() => {\n pendingSessionUpdateRef.current = null;\n });\n\n return pendingSessionUpdateRef.current;\n }\n\n async function signIn(...args: any): Promise<User | EmbeddedSignInFlowResponse> {\n // Check if this is a V2 embedded flow request BEFORE calling signIn\n // This allows us to skip session checks entirely for V2 flows\n const arg1: any = args[0];\n const isV2FlowRequest: boolean =\n typeof arg1 === 'object' && arg1 !== null && ('executionId' in arg1 || 'applicationId' in arg1);\n\n try {\n if (!isV2FlowRequest) {\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n }\n\n return await client.signIn(...args);\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Sign in failed: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signIn-Error',\n 'react',\n 'An error occurred while trying to sign in.',\n );\n } finally {\n if (!isV2FlowRequest) {\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n }\n }\n\n /**\n * Try signing in when the component is mounted.\n */\n useEffect(() => {\n // React 18.x Strict.Mode has a new check for `Ensuring reusable state` to facilitate an upcoming react feature.\n // https://reactjs.org/docs/strict-mode.html#ensuring-reusable-state\n // This will remount all the useEffects to ensure that there are no unexpected side effects.\n // When react remounts the signIn hook of the AuthProvider, it will cause a race condition. Hence, we have to\n // prevent the re-render of this hook as suggested in the following discussion.\n // https://github.com/reactwg/react-18/discussions/18#discussioncomment-795623\n if (reRenderCheckRef.current) {\n return;\n }\n\n reRenderCheckRef.current = true;\n\n (async (): Promise<void> => {\n // Sync session state whenever sign-in completes (both redirect and embedded V2 flows).\n // Pass the user returned by the SDK's sign-in flow so users/me result is not discarded.\n await client.on('sign-in', async () => {\n await updateSession();\n });\n\n // Start auto-refresh with a soft failure. This also covers the case where the access token\n // expired while the refresh token is still valid — startAutoRefreshToken() calls\n // refreshAccessToken() immediately when timeUntilRefresh <= 0 — so the sign-in check below\n // sees the refreshed state.\n try {\n await client.startAutoRefreshToken();\n } catch (error) {\n logger.warn('Failed to schedule automatic token refresh.', error);\n }\n\n // User is already authenticated. Restore the session and skip the sign-in path.\n if (await client.isSignedIn()) {\n await updateSession();\n\n return;\n }\n\n const currentUrl: URL = new URL(window.location.href);\n const hasAuthParamsResult: boolean =\n hasAuthParams(currentUrl, config.afterSignInUrl!) && hasCalledForThisInstance(currentUrl, instanceId ?? 0);\n\n if (hasAuthParamsResult) {\n try {\n const urlParams: URLSearchParams = currentUrl.searchParams;\n const code: string | null = urlParams.get('code');\n const executionIdFromUrl: string | null = urlParams.get('executionId');\n const storedExecutionId: string | null = sessionStorage.getItem(\n `${getVendorPrefix(config.vendor)}_execution_id`,\n );\n\n if (code && !executionIdFromUrl && !storedExecutionId) {\n await signIn();\n }\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Sign in failed: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signIn-Error',\n 'react',\n 'An error occurred while trying to sign in.',\n );\n }\n }\n })();\n }, []);\n\n /**\n * Check if the user is signed in and update the state accordingly.\n * This will also set an interval to check for the sign-in status every second\n * until the user is signed in.\n */\n useEffect(() => {\n let interval: NodeJS.Timeout;\n\n (async (): Promise<void> => {\n try {\n const status: boolean = await client.isSignedIn();\n\n setIsSignedInSync(status);\n\n if (!status) {\n interval = setInterval(async () => {\n const newStatus: boolean = await client.isSignedIn();\n\n if (newStatus) {\n setIsSignedInSync(true);\n clearInterval(interval);\n }\n }, 1000);\n } else {\n // TODO: Add a debug log to indicate that the user is already signed in.\n }\n } catch (error) {\n setIsSignedInSync(false);\n }\n })();\n\n return (): void => {\n if (interval) {\n clearInterval(interval);\n }\n };\n }, [client]);\n\n useEffect(() => {\n (async (): Promise<void> => {\n try {\n const status: boolean = await client.isInitialized();\n\n setIsInitializedSync(status);\n } catch (error) {\n setIsInitializedSync(false);\n }\n })();\n }, [client]);\n\n /**\n * Track loading state changes from the ThunderID client\n */\n useEffect(() => {\n const checkLoadingState = (): void => {\n // Don't override loading state during critical session updates\n if (isUpdatingSession) {\n return;\n }\n\n // Don't set loading=false while auth params are in the URL and user isn't signed in yet.\n // This prevents ProtectedRoute from redirecting before the sign-in effect processes the auth code.\n const currentUrl: URL = new URL(window.location.href);\n if (!isSignedInSync && hasAuthParams(currentUrl, config.afterSignInUrl!)) {\n return;\n }\n\n setIsLoadingSync(client.isLoading());\n };\n\n // Initial check\n checkLoadingState();\n\n // Set up an interval to check for loading state changes\n const interval: NodeJS.Timeout = setInterval(checkLoadingState, 100);\n\n return (): void => {\n clearInterval(interval);\n };\n }, [client, isLoadingSync, isSignedInSync, isUpdatingSession]);\n\n const signInSilently = async (options?: SignInOptions): Promise<User | boolean> => {\n try {\n setIsUpdatingSession(true);\n setIsLoadingSync(true);\n return await client.signInSilently(options);\n } catch (error) {\n throw new ThunderIDRuntimeError(\n `Error while signing in silently: ${error instanceof Error ? error.message : String(JSON.stringify(error))}`,\n 'thunderid-signInSilently-Error',\n 'react',\n 'An error occurred while trying to sign in silently.',\n );\n } finally {\n setIsUpdatingSession(false);\n setIsLoadingSync(client.isLoading());\n }\n };\n\n const handleProfileUpdate = (payload: User): void => {\n setUser(payload);\n setUserProfile((prev: UserProfile | null) => ({\n flattenedProfile: generateFlattenedUserProfile(payload),\n profile: payload,\n }));\n };\n\n const getDecodedIdToken: () => Promise<IdToken> = useCallback(\n async (): Promise<IdToken> => client.getDecodedIdToken(),\n [client],\n );\n\n const getIdToken: () => Promise<string> = useCallback(async (): Promise<string> => client.getIdToken(), [client]);\n\n const getAccessToken: () => Promise<string> = useCallback(\n async (): Promise<string> => client.getAccessToken(),\n [client],\n );\n\n const getStorageManager: () => Promise<any> = useCallback(async (): Promise<any> => {\n const storageManager: any = storageManagerRef.current ?? (await client.getStorageManager());\n if (storageManager) {\n storageManagerRef.current = storageManager;\n }\n return storageManager;\n }, [client]);\n\n const request: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.request(...args),\n [client],\n );\n\n const requestAll: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.requestAll(...args),\n [client],\n );\n\n const exchangeToken: (exchangeConfig: any) => Promise<any> = useCallback(\n async (exchangeConfig: any): Promise<any> => client.exchangeToken(exchangeConfig),\n [client],\n );\n\n const signOut: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.signOut(...args),\n [client],\n );\n\n const recover: (payload: any) => Promise<any> = useCallback(\n async (payload: any): Promise<any> => client.recover(payload),\n [client],\n );\n\n const signUp: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.signUp(...args),\n [client],\n );\n\n const clearSession: (...args: any[]) => Promise<any> = useCallback(\n async (...args: any[]): Promise<any> => client.clearSession(...args),\n [client],\n );\n\n const reInitialize: (reInitConfig: any) => Promise<any> = useCallback(\n async (reInitConfig: any): Promise<any> => {\n const result: any = await client.reInitialize(reInitConfig);\n\n // Refresh React state from the reinitialized client so the context (config.endpoints,\n // baseUrl, discovery) reflects the new configuration instead of the pre-reinitialization state.\n const reinitializedConfig: ThunderIDReactConfig = await client.getConfiguration();\n setConfig(reinitializedConfig);\n setBaseUrl(reinitializedConfig.baseUrl ?? '');\n setWellKnown(await client.getDiscoveryResponse());\n\n return result;\n },\n [client],\n );\n\n const value: any = useMemo(\n () => ({\n afterSignInUrl: config.afterSignInUrl,\n applicationId: config.applicationId,\n baseUrl,\n endpoints: config.endpoints,\n scopes: config.scopes,\n clearSession,\n clientId,\n discovery: {\n wellKnown,\n },\n exchangeToken,\n getAccessToken,\n getDecodedIdToken,\n getIdToken,\n getStorageManager,\n http: {\n request,\n requestAll,\n },\n instanceId,\n isInitialized: isInitializedSync,\n isLoading: isLoadingSync,\n isSignedIn: isSignedInSync,\n organizationChain,\n organizationHandle: config?.organizationHandle,\n preferences,\n reInitialize,\n recover,\n signIn,\n signInOptions,\n tokenRequest,\n signInSilently,\n signInUrl,\n signOut,\n signUp,\n signUpUrl,\n syncSession,\n user,\n userSchema,\n vendor: getVendorPrefix(config.vendor),\n }),\n [\n applicationId,\n config?.organizationHandle,\n config.vendor,\n config.afterSignInUrl,\n config.endpoints,\n config.scopes,\n signInUrl,\n signUpUrl,\n baseUrl,\n clientId,\n wellKnown,\n isInitializedSync,\n isLoadingSync,\n isSignedInSync,\n signIn,\n signInSilently,\n user,\n userSchema,\n client,\n signInOptions,\n tokenRequest,\n syncSession,\n getDecodedIdToken,\n clearSession,\n exchangeToken,\n getAccessToken,\n getStorageManager,\n instanceId,\n organizationChain,\n preferences,\n recover,\n reInitialize,\n request,\n requestAll,\n signOut,\n signUp,\n ],\n );\n\n return (\n <ThunderIDContext.Provider value={value}>\n <I18nProvider preferences={preferences?.i18n} vendor={getVendorPrefix(config.vendor)}>\n <FlowMetaProvider enabled={preferences?.resolveFromMeta !== false}>\n <ThemeProvider\n theme={{\n ...preferences?.theme?.overrides,\n direction: preferences?.theme?.direction,\n }}\n >\n <FlowProvider>\n <UserProvider\n profile={userProfile as UserProfile}\n userSchema={userSchema}\n onUpdateProfile={handleProfileUpdate}\n >\n <ComponentRendererProvider renderers={(extensions?.components?.renderers ?? {}) as any}>\n {children}\n </ComponentRendererProvider>\n </UserProvider>\n </FlowProvider>\n </ThemeProvider>\n </FlowMetaProvider>\n </I18nProvider>\n </ThunderIDContext.Provider>\n );\n};\n\nexport default ThunderIDProvider;\n"],"mappings":"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"}
@@ -11,7 +11,8 @@ const UserContext = (0, react.createContext)({
11
11
  onUpdateProfile: () => null,
12
12
  profile: null,
13
13
  revalidateProfile: () => null,
14
- updateProfile: () => null
14
+ updateProfile: () => null,
15
+ userSchema: null
15
16
  });
16
17
  UserContext.displayName = "UserContext";
17
18
  var UserContext_default = UserContext;
@@ -1 +1 @@
1
- {"version":3,"file":"UserContext.cjs","names":["UserContext: Context<UserContextProps | null>"],"sources":["../../../../src/contexts/User/UserContext.ts"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {User, UpdateMeProfileConfig} from '@thunderid/browser';\nimport {Context, createContext} from 'react';\n\n/**\n * Props interface of {@link UserContext}\n */\nexport interface UserContextProps {\n flattenedProfile: User | null;\n onUpdateProfile: (payload: User) => void;\n profile: User | null;\n revalidateProfile: () => Promise<void>;\n updateProfile: (\n requestConfig: UpdateMeProfileConfig,\n sessionId?: string,\n ) => Promise<{data: {user: User}; error: string; success: boolean}>;\n}\n\n/**\n * Context object for managing user profile data and related operations.\n */\nconst UserContext: Context<UserContextProps | null> = createContext<null | UserContextProps>({\n flattenedProfile: null,\n onUpdateProfile: () => null,\n profile: null,\n revalidateProfile: () => null as unknown as Promise<void>,\n updateProfile: () => null as unknown as Promise<{data: {user: User}; error: string; success: boolean}>,\n});\n\nUserContext.displayName = 'UserContext';\n\nexport default UserContext;\n"],"mappings":";;;;;;;;AAuBA,MAAMA,uCAAuF;CAC3F,kBAAkB;CAClB,uBAAuB;CACvB,SAAS;CACT,yBAAyB;CACzB,qBAAqB;CACtB,CAAC;AAEF,YAAY,cAAc;AAE1B,0BAAe"}
1
+ {"version":3,"file":"UserContext.cjs","names":["UserContext: Context<UserContextProps | null>"],"sources":["../../../../src/contexts/User/UserContext.ts"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {User, UpdateMeProfileConfig, AttributeSchema} from '@thunderid/browser';\nimport {Context, createContext} from 'react';\n\n/**\n * Props interface of {@link UserContext}\n */\nexport interface UserContextProps {\n flattenedProfile: User | null;\n onUpdateProfile: (payload: User) => void;\n profile: User | null;\n revalidateProfile: () => Promise<void>;\n updateProfile: (\n requestConfig: UpdateMeProfileConfig,\n sessionId?: string,\n ) => Promise<{data: {user: User}; error: string; success: boolean}>;\n userSchema?: Record<string, AttributeSchema> | null;\n}\n\n/**\n * Context object for managing user profile data and related operations.\n */\nconst UserContext: Context<UserContextProps | null> = createContext<null | UserContextProps>({\n flattenedProfile: null,\n onUpdateProfile: () => null,\n profile: null,\n revalidateProfile: () => null as unknown as Promise<void>,\n updateProfile: () => null as unknown as Promise<{data: {user: User}; error: string; success: boolean}>,\n userSchema: null,\n});\n\nUserContext.displayName = 'UserContext';\n\nexport default UserContext;\n"],"mappings":";;;;;;;;AAwBA,MAAMA,uCAAuF;CAC3F,kBAAkB;CAClB,uBAAuB;CACvB,SAAS;CACT,yBAAyB;CACzB,qBAAqB;CACrB,YAAY;CACb,CAAC;AAEF,YAAY,cAAc;AAE1B,0BAAe"}
@@ -33,18 +33,20 @@ react_jsx_runtime = require_rolldown_runtime.__toESM(react_jsx_runtime);
33
33
  * </UserProvider>
34
34
  * ```
35
35
  */
36
- const UserProvider = ({ children, profile, revalidateProfile, onUpdateProfile, updateProfile }) => {
36
+ const UserProvider = ({ children, profile, revalidateProfile, onUpdateProfile, updateProfile, userSchema }) => {
37
37
  const contextValue = (0, react.useMemo)(() => ({
38
38
  flattenedProfile: profile?.flattenedProfile,
39
39
  onUpdateProfile,
40
40
  profile: profile?.profile,
41
41
  revalidateProfile,
42
- updateProfile
42
+ updateProfile,
43
+ userSchema: profile?.userSchema ?? userSchema ?? null
43
44
  }), [
44
45
  profile,
45
46
  onUpdateProfile,
46
47
  revalidateProfile,
47
- updateProfile
48
+ updateProfile,
49
+ userSchema
48
50
  ]);
49
51
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UserContext.default.Provider, {
50
52
  value: contextValue,
@@ -1 +1 @@
1
- {"version":3,"file":"UserProvider.cjs","names":["UserProvider: FC<PropsWithChildren<UserProviderProps>>","contextValue: any","UserContext"],"sources":["../../../../src/contexts/User/UserProvider.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {UpdateMeProfileConfig, User, UserProfile} from '@thunderid/browser';\nimport {FC, PropsWithChildren, ReactElement, useMemo} from 'react';\nimport UserContext from './UserContext';\n\n/**\n * Props interface of {@link UserProvider}\n */\nexport interface UserProviderProps {\n onUpdateProfile?: (payload: User) => void;\n profile: UserProfile;\n revalidateProfile?: () => Promise<void>;\n updateProfile?: (\n requestConfig: UpdateMeProfileConfig,\n sessionId?: string,\n ) => Promise<{data: {user: User}; error: string; success: boolean}>;\n}\n\n/**\n * UserProvider component that manages user profile data and provides it through UserContext.\n *\n * This provider:\n * - Fetches user profile data from the ME endpoint\n * - Generates both nested and flattened user profiles\n * - Provides functions for refreshing and updating user data\n * - Handles loading states and errors\n *\n * @example\n * ```tsx\n * // Basic usage\n * <UserProvider>\n * <App />\n * </UserProvider>\n *\n * // With custom error handling\n * <UserProvider onError={(error) => console.error('User error:', error)}>\n * <App />\n * </UserProvider>\n *\n * // Disable auto-fetch (fetch manually using refreshUser)\n * <UserProvider autoFetch={false}>\n * <App />\n * </UserProvider>\n * ```\n */\nconst UserProvider: FC<PropsWithChildren<UserProviderProps>> = ({\n children,\n profile,\n revalidateProfile,\n onUpdateProfile,\n updateProfile,\n}: PropsWithChildren<UserProviderProps>): ReactElement => {\n const contextValue: any = useMemo(\n () => ({\n flattenedProfile: profile?.flattenedProfile,\n onUpdateProfile,\n profile: profile?.profile,\n revalidateProfile,\n updateProfile,\n }),\n [profile, onUpdateProfile, revalidateProfile, updateProfile],\n );\n\n return <UserContext.Provider value={contextValue}>{children}</UserContext.Provider>;\n};\n\nexport default UserProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,MAAMA,gBAA0D,EAC9D,UACA,SACA,mBACA,iBACA,oBACwD;CACxD,MAAMC,yCACG;EACL,kBAAkB,SAAS;EAC3B;EACA,SAAS,SAAS;EAClB;EACA;EACD,GACD;EAAC;EAAS;EAAiB;EAAmB;EAAc,CAC7D;AAED,QAAO,2CAACC,4BAAY;EAAS,OAAO;EAAe;GAAgC;;AAGrF,2BAAe"}
1
+ {"version":3,"file":"UserProvider.cjs","names":["UserProvider: FC<PropsWithChildren<UserProviderProps>>","contextValue: any","UserContext"],"sources":["../../../../src/contexts/User/UserProvider.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {UpdateMeProfileConfig, User, UserProfile, AttributeSchema} from '@thunderid/browser';\nimport {FC, PropsWithChildren, ReactElement, useMemo} from 'react';\nimport UserContext from './UserContext';\n\n/**\n * Props interface of {@link UserProvider}\n */\nexport interface UserProviderProps {\n onUpdateProfile?: (payload: User) => void;\n profile: UserProfile & {userSchema?: Record<string, AttributeSchema> | null};\n revalidateProfile?: () => Promise<void>;\n updateProfile?: (\n requestConfig: UpdateMeProfileConfig,\n sessionId?: string,\n ) => Promise<{data: {user: User}; error: string; success: boolean}>;\n userSchema?: Record<string, AttributeSchema> | null;\n}\n\n/**\n * UserProvider component that manages user profile data and provides it through UserContext.\n *\n * This provider:\n * - Fetches user profile data from the ME endpoint\n * - Generates both nested and flattened user profiles\n * - Provides functions for refreshing and updating user data\n * - Handles loading states and errors\n *\n * @example\n * ```tsx\n * // Basic usage\n * <UserProvider>\n * <App />\n * </UserProvider>\n *\n * // With custom error handling\n * <UserProvider onError={(error) => console.error('User error:', error)}>\n * <App />\n * </UserProvider>\n *\n * // Disable auto-fetch (fetch manually using refreshUser)\n * <UserProvider autoFetch={false}>\n * <App />\n * </UserProvider>\n * ```\n */\nconst UserProvider: FC<PropsWithChildren<UserProviderProps>> = ({\n children,\n profile,\n revalidateProfile,\n onUpdateProfile,\n updateProfile,\n userSchema,\n}: PropsWithChildren<UserProviderProps>): ReactElement => {\n const contextValue: any = useMemo(\n () => ({\n flattenedProfile: profile?.flattenedProfile,\n onUpdateProfile,\n profile: profile?.profile,\n revalidateProfile,\n updateProfile,\n userSchema: profile?.userSchema ?? userSchema ?? null,\n }),\n [profile, onUpdateProfile, revalidateProfile, updateProfile, userSchema],\n );\n\n return <UserContext.Provider value={contextValue}>{children}</UserContext.Provider>;\n};\n\nexport default UserProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,MAAMA,gBAA0D,EAC9D,UACA,SACA,mBACA,iBACA,eACA,iBACwD;CACxD,MAAMC,yCACG;EACL,kBAAkB,SAAS;EAC3B;EACA,SAAS,SAAS;EAClB;EACA;EACA,YAAY,SAAS,cAAc,cAAc;EAClD,GACD;EAAC;EAAS;EAAiB;EAAmB;EAAe;EAAW,CACzE;AAED,QAAO,2CAACC,4BAAY;EAAS,OAAO;EAAe;GAAgC;;AAGrF,2BAAe"}
@@ -13,6 +13,7 @@ const require_ThemeProvider = require('./contexts/Theme/ThemeProvider.cjs');
13
13
  const require_UserContext = require('./contexts/User/UserContext.cjs');
14
14
  const require_UserProvider = require('./contexts/User/UserProvider.cjs');
15
15
  const require_getUsersMe = require('./api/getUsersMe.cjs');
16
+ const require_getUsersMeMeta = require('./api/getUsersMeMeta.cjs');
16
17
  const require_ThunderIDProvider = require('./contexts/ThunderID/ThunderIDProvider.cjs');
17
18
  const require_useUser = require('./contexts/User/useUser.cjs');
18
19
  const require_useFlow = require('./contexts/Flow/useFlow.cjs');
@@ -316,6 +317,7 @@ Object.defineProperty(exports, 'getActiveTheme', {
316
317
  });
317
318
  exports.getConsentOptionalKey = require_ConsentCheckboxList.getConsentOptionalKey;
318
319
  exports.getMeProfile = require_getUsersMe.default;
320
+ exports.getUsersMeMeta = require_getUsersMeMeta.default;
319
321
  Object.defineProperty(exports, 'http', {
320
322
  enumerable: true,
321
323
  get: function () {
@@ -0,0 +1,64 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ let __thunderid_browser = require("@thunderid/browser");
3
+ __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
4
+ let __emotion_css_create_instance = require("@emotion/css/create-instance");
5
+ __emotion_css_create_instance = require_rolldown_runtime.__toESM(__emotion_css_create_instance);
6
+
7
+ //#region src/styles/emotion.ts
8
+ /**
9
+ * The vendor/nonce this module was last configured with, tracked so repeated calls with the
10
+ * same values (e.g. on every render of {@link ThunderIDProvider}) are cheap no-ops instead of
11
+ * recreating the Emotion cache - and the `<style>` tags it owns - on every render.
12
+ */
13
+ let configuredVendor;
14
+ let configuredNonce;
15
+ /**
16
+ * Module-level, mutable Emotion instance. Recreated only when {@link configureEmotionNonce}
17
+ * is called with a vendor or nonce different from the ones currently configured.
18
+ */
19
+ let instance = (0, __emotion_css_create_instance.default)({ key: (0, __thunderid_browser.getVendorPrefix)(configuredVendor) });
20
+ /**
21
+ * (Re)configures the shared Emotion instance to inject styles under the given vendor's cache
22
+ * key (emitted as the `data-emotion` attribute on its `<style>` tags, so a white-labeled
23
+ * consumer's generated styles stay under their own namespace rather than `thunderid`) and
24
+ * with the given CSP nonce.
25
+ *
26
+ * This must be called synchronously from a component's render body - never from inside a
27
+ * `useEffect`/`useLayoutEffect` - and as early as possible in the render tree (e.g. as the
28
+ * first statement in `ThunderIDProvider`). React's render phase calls function components
29
+ * synchronously and depth-first: a top-level call here runs, and returns, before any
30
+ * descendant component's `css()`/`cx()`/`keyframes()` calls execute during that same render
31
+ * pass. That ordering is what lets the very first paint's injected `<style>` tags already
32
+ * carry the nonce. A `useEffect` runs after commit, once the first (un-nonced) `<style>`
33
+ * tags have already been inserted into `<head>` - by the time the effect fires it is too
34
+ * late to protect that initial paint.
35
+ *
36
+ * Calling this repeatedly with the same vendor/nonce (e.g. once per render) is a cheap no-op:
37
+ * the underlying Emotion cache/instance is only recreated when either actually changes.
38
+ *
39
+ * @param nonce - The CSP nonce to apply to runtime-injected `<style>` tags, or `undefined`
40
+ * to use no nonce.
41
+ * @param vendor - The configured vendor/brand namespace (defaults to the ThunderID vendor
42
+ * prefix, same as every other vendor-scoped key in the SDK).
43
+ */
44
+ function configureEmotionNonce(nonce, vendor) {
45
+ if (nonce === configuredNonce && vendor === configuredVendor) return;
46
+ configuredNonce = nonce;
47
+ configuredVendor = vendor;
48
+ instance = (0, __emotion_css_create_instance.default)({
49
+ key: (0, __thunderid_browser.getVendorPrefix)(vendor),
50
+ nonce
51
+ });
52
+ }
53
+ const css = (...args) => instance.css(...args);
54
+ function cx(...classNames) {
55
+ return instance.cx(...classNames);
56
+ }
57
+ const keyframes = (...args) => instance.keyframes(...args);
58
+
59
+ //#endregion
60
+ exports.configureEmotionNonce = configureEmotionNonce;
61
+ exports.css = css;
62
+ exports.cx = cx;
63
+ exports.keyframes = keyframes;
64
+ //# sourceMappingURL=emotion.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emotion.cjs","names":["configuredVendor: string | undefined","configuredNonce: string | undefined","instance: ReturnType<typeof createEmotion>","css: {\n (template: TemplateStringsArray, ...args: CSSInterpolation[]): string;\n (...args: CSSInterpolation[]): string;\n}","keyframes: {\n (template: TemplateStringsArray, ...args: CSSInterpolation[]): string;\n (...args: CSSInterpolation[]): string;\n}"],"sources":["../../../src/styles/emotion.ts"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport createEmotion, {ClassNamesArg, CSSInterpolation} from '@emotion/css/create-instance';\nimport {getVendorPrefix} from '@thunderid/browser';\n\n/**\n * The vendor/nonce this module was last configured with, tracked so repeated calls with the\n * same values (e.g. on every render of {@link ThunderIDProvider}) are cheap no-ops instead of\n * recreating the Emotion cache - and the `<style>` tags it owns - on every render.\n */\nlet configuredVendor: string | undefined;\nlet configuredNonce: string | undefined;\n\n/**\n * Module-level, mutable Emotion instance. Recreated only when {@link configureEmotionNonce}\n * is called with a vendor or nonce different from the ones currently configured.\n */\nlet instance: ReturnType<typeof createEmotion> = createEmotion({key: getVendorPrefix(configuredVendor)});\n\n/**\n * (Re)configures the shared Emotion instance to inject styles under the given vendor's cache\n * key (emitted as the `data-emotion` attribute on its `<style>` tags, so a white-labeled\n * consumer's generated styles stay under their own namespace rather than `thunderid`) and\n * with the given CSP nonce.\n *\n * This must be called synchronously from a component's render body - never from inside a\n * `useEffect`/`useLayoutEffect` - and as early as possible in the render tree (e.g. as the\n * first statement in `ThunderIDProvider`). React's render phase calls function components\n * synchronously and depth-first: a top-level call here runs, and returns, before any\n * descendant component's `css()`/`cx()`/`keyframes()` calls execute during that same render\n * pass. That ordering is what lets the very first paint's injected `<style>` tags already\n * carry the nonce. A `useEffect` runs after commit, once the first (un-nonced) `<style>`\n * tags have already been inserted into `<head>` - by the time the effect fires it is too\n * late to protect that initial paint.\n *\n * Calling this repeatedly with the same vendor/nonce (e.g. once per render) is a cheap no-op:\n * the underlying Emotion cache/instance is only recreated when either actually changes.\n *\n * @param nonce - The CSP nonce to apply to runtime-injected `<style>` tags, or `undefined`\n * to use no nonce.\n * @param vendor - The configured vendor/brand namespace (defaults to the ThunderID vendor\n * prefix, same as every other vendor-scoped key in the SDK).\n */\nexport function configureEmotionNonce(nonce?: string, vendor?: string): void {\n if (nonce === configuredNonce && vendor === configuredVendor) {\n return;\n }\n\n configuredNonce = nonce;\n configuredVendor = vendor;\n instance = createEmotion({key: getVendorPrefix(vendor), nonce});\n}\n\nexport const css: {\n (template: TemplateStringsArray, ...args: CSSInterpolation[]): string;\n (...args: CSSInterpolation[]): string;\n} = (...args: [TemplateStringsArray | CSSInterpolation, ...CSSInterpolation[]]): string =>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (instance.css as (...cssArgs: any[]) => string)(...args);\n\nexport function cx(...classNames: ClassNamesArg[]): string {\n return instance.cx(...classNames);\n}\n\nexport const keyframes: {\n (template: TemplateStringsArray, ...args: CSSInterpolation[]): string;\n (...args: CSSInterpolation[]): string;\n} = (...args: [TemplateStringsArray | CSSInterpolation, ...CSSInterpolation[]]): string =>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (instance.keyframes as (...keyframesArgs: any[]) => string)(...args);\n"],"mappings":";;;;;;;;;;;;AAWA,IAAIA;AACJ,IAAIC;;;;;AAMJ,IAAIC,sDAA2D,EAAC,8CAAqB,iBAAiB,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;AA0BxG,SAAgB,sBAAsB,OAAgB,QAAuB;AAC3E,KAAI,UAAU,mBAAmB,WAAW,iBAC1C;AAGF,mBAAkB;AAClB,oBAAmB;AACnB,uDAAyB;EAAC,8CAAqB,OAAO;EAAE;EAAM,CAAC;;AAGjE,MAAaC,OAGR,GAAG,SAEL,SAAS,IAAsC,GAAG,KAAK;AAE1D,SAAgB,GAAG,GAAG,YAAqC;AACzD,QAAO,SAAS,GAAG,GAAG,WAAW;;AAGnC,MAAaC,aAGR,GAAG,SAEL,SAAS,UAAkD,GAAG,KAAK"}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignInButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignInButton/BaseSignInButton.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EACL,oBAAoB,EAEpB,yBAAyB,EAEzB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,qBACf,SAAQ,OAAO,CAAC,2BAA2B,CAAC,EAC1C,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,2BAA2B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,gBAAgB,EAAE,yBAAyB,CAAC,qBAAqB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAwBvG,CAAC;AAIJ,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"BaseSignInButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignInButton/BaseSignInButton.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EACL,oBAAoB,EAEpB,yBAAyB,EAEzB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAIf;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,qBACf,SAAQ,OAAO,CAAC,2BAA2B,CAAC,EAC1C,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,2BAA2B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,gBAAgB,EAAE,yBAAyB,CAAC,qBAAqB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAwBvG,CAAC;AAIJ,eAAe,gBAAgB,CAAC"}
@@ -1,8 +1,8 @@
1
+ import { cx } from "../../../styles/emotion.js";
1
2
  import Button_default from "../../primitives/Button/Button.js";
2
3
  import { withVendorCSSClassPrefix } from "@thunderid/browser";
3
4
  import { forwardRef } from "react";
4
5
  import { Fragment, jsx } from "react/jsx-runtime";
5
- import { cx } from "@emotion/css";
6
6
 
7
7
  //#region src/components/actions/SignInButton/BaseSignInButton.tsx
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignInButton.js","names":["BaseSignInButton: ForwardRefExoticComponent<BaseSignInButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignInButton/BaseSignInButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {cx} from '@emotion/css';\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n ButtonHTMLAttributes,\n forwardRef,\n ForwardRefExoticComponent,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignInButton} components.\n */\nexport interface CommonBaseSignInButtonProps {\n /**\n * Loading state during sign-in process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-in process\n */\n signIn: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignInButton}\n */\nexport type BaseSignInButtonRenderProps = CommonBaseSignInButtonProps;\n\n/**\n * Props interface of {@link BaseSignInButton}\n */\nexport interface BaseSignInButtonProps\n extends Partial<CommonBaseSignInButtonProps>,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-in props, or traditional ReactNode children\n */\n children?: ((props: BaseSignInButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignInButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignInButton>\n * {({signIn, isLoading}) => (\n * <button onClick={signIn} disabled={isLoading}>\n * {isLoading ? 'Signing in...' : 'Sign In'}\n * </button>\n * )}\n * </BaseSignInButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignInButton className=\"custom-button\">Sign In</BaseSignInButton>\n * ```\n */\nconst BaseSignInButton: ForwardRefExoticComponent<BaseSignInButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignInButtonProps>(\n (\n {children, className, style, signIn, isLoading, meta, preferences, ...rest}: BaseSignInButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signIn: signIn!})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-in-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignInButton.displayName = 'BaseSignInButton';\n\nexport default BaseSignInButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,mBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,QAAQ,WAAW,MAAM,YAAa,GAAG,QACtE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAc;EAAQ,CAAC,GAAI;AAG5D,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,iBAAiB,EAAE,UAAU;EAC7D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,GAAI;EAEH;GACM;EAGd;AAEH,iBAAiB,cAAc;AAE/B,+BAAe"}
1
+ {"version":3,"file":"BaseSignInButton.js","names":["BaseSignInButton: ForwardRefExoticComponent<BaseSignInButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignInButton/BaseSignInButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n ButtonHTMLAttributes,\n forwardRef,\n ForwardRefExoticComponent,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport {cx} from '../../../styles/emotion';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignInButton} components.\n */\nexport interface CommonBaseSignInButtonProps {\n /**\n * Loading state during sign-in process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-in process\n */\n signIn: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignInButton}\n */\nexport type BaseSignInButtonRenderProps = CommonBaseSignInButtonProps;\n\n/**\n * Props interface of {@link BaseSignInButton}\n */\nexport interface BaseSignInButtonProps\n extends Partial<CommonBaseSignInButtonProps>,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-in props, or traditional ReactNode children\n */\n children?: ((props: BaseSignInButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignInButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignInButton>\n * {({signIn, isLoading}) => (\n * <button onClick={signIn} disabled={isLoading}>\n * {isLoading ? 'Signing in...' : 'Sign In'}\n * </button>\n * )}\n * </BaseSignInButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignInButton className=\"custom-button\">Sign In</BaseSignInButton>\n * ```\n */\nconst BaseSignInButton: ForwardRefExoticComponent<BaseSignInButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignInButtonProps>(\n (\n {children, className, style, signIn, isLoading, meta, preferences, ...rest}: BaseSignInButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signIn: signIn!})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-in-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignInButton.displayName = 'BaseSignInButton';\n\nexport default BaseSignInButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,mBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,QAAQ,WAAW,MAAM,YAAa,GAAG,QACtE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAc;EAAQ,CAAC,GAAI;AAG5D,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,iBAAiB,EAAE,UAAU;EAC7D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,GAAI;EAEH;GACM;EAGd;AAEH,iBAAiB,cAAc;AAE/B,+BAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignOutButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignOutButton/BaseSignOutButton.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAEL,yBAAyB,EACzB,oBAAoB,EAEpB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,4BAA4B,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,sBACf,SAAQ,OAAO,CAAC,4BAA4B,CAAC,EAC3C,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,4BAA4B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,iBAAiB,EAAE,yBAAyB,CAAC,sBAAsB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAwBzG,CAAC;AAIJ,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"BaseSignOutButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignOutButton/BaseSignOutButton.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAEL,yBAAyB,EACzB,oBAAoB,EAEpB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAIf;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,4BAA4B,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,sBACf,SAAQ,OAAO,CAAC,4BAA4B,CAAC,EAC3C,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,4BAA4B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,iBAAiB,EAAE,yBAAyB,CAAC,sBAAsB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAwBzG,CAAC;AAIJ,eAAe,iBAAiB,CAAC"}
@@ -1,8 +1,8 @@
1
+ import { cx } from "../../../styles/emotion.js";
1
2
  import Button_default from "../../primitives/Button/Button.js";
2
3
  import { withVendorCSSClassPrefix } from "@thunderid/browser";
3
4
  import { forwardRef } from "react";
4
5
  import { Fragment, jsx } from "react/jsx-runtime";
5
- import { cx } from "@emotion/css";
6
6
 
7
7
  //#region src/components/actions/SignOutButton/BaseSignOutButton.tsx
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignOutButton.js","names":["BaseSignOutButton: ForwardRefExoticComponent<BaseSignOutButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignOutButton/BaseSignOutButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {cx} from '@emotion/css';\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n forwardRef,\n ForwardRefExoticComponent,\n ButtonHTMLAttributes,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignOutButton} components.\n */\nexport interface CommonBaseSignOutButtonProps {\n /**\n * Loading state during sign-out process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-out process\n */\n signOut: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignOutButton}\n */\nexport type BaseSignOutButtonRenderProps = CommonBaseSignOutButtonProps;\n\n/**\n * Props interface of {@link BaseSignOutButton}\n */\nexport interface BaseSignOutButtonProps\n extends Partial<CommonBaseSignOutButtonProps>,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-out props, or traditional ReactNode children\n */\n children?: ((props: BaseSignOutButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignOutButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignOutButton>\n * {({signOut, isLoading}) => (\n * <button onClick={signOut} disabled={isLoading}>\n * {isLoading ? 'Signing out...' : 'Sign Out'}\n * </button>\n * )}\n * </BaseSignOutButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignOutButton className=\"custom-button\">Sign Out</BaseSignOutButton>\n * ```\n */\nconst BaseSignOutButton: ForwardRefExoticComponent<BaseSignOutButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignOutButtonProps>(\n (\n {children, className, style, signOut, isLoading, meta, preferences, ...rest}: BaseSignOutButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signOut: signOut!})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-out-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignOutButton.displayName = 'BaseSignOutButton';\n\nexport default BaseSignOutButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,oBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,SAAS,WAAW,MAAM,YAAa,GAAG,QACvE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAe;EAAS,CAAC,GAAI;AAG9D,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,kBAAkB,EAAE,UAAU;EAC9D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,GAAI;EAEH;GACM;EAGd;AAEH,kBAAkB,cAAc;AAEhC,gCAAe"}
1
+ {"version":3,"file":"BaseSignOutButton.js","names":["BaseSignOutButton: ForwardRefExoticComponent<BaseSignOutButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignOutButton/BaseSignOutButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n forwardRef,\n ForwardRefExoticComponent,\n ButtonHTMLAttributes,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport {cx} from '../../../styles/emotion';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignOutButton} components.\n */\nexport interface CommonBaseSignOutButtonProps {\n /**\n * Loading state during sign-out process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-out process\n */\n signOut: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignOutButton}\n */\nexport type BaseSignOutButtonRenderProps = CommonBaseSignOutButtonProps;\n\n/**\n * Props interface of {@link BaseSignOutButton}\n */\nexport interface BaseSignOutButtonProps\n extends Partial<CommonBaseSignOutButtonProps>,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-out props, or traditional ReactNode children\n */\n children?: ((props: BaseSignOutButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignOutButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignOutButton>\n * {({signOut, isLoading}) => (\n * <button onClick={signOut} disabled={isLoading}>\n * {isLoading ? 'Signing out...' : 'Sign Out'}\n * </button>\n * )}\n * </BaseSignOutButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignOutButton className=\"custom-button\">Sign Out</BaseSignOutButton>\n * ```\n */\nconst BaseSignOutButton: ForwardRefExoticComponent<BaseSignOutButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignOutButtonProps>(\n (\n {children, className, style, signOut, isLoading, meta, preferences, ...rest}: BaseSignOutButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signOut: signOut!})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-out-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignOutButton.displayName = 'BaseSignOutButton';\n\nexport default BaseSignOutButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,oBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,SAAS,WAAW,MAAM,YAAa,GAAG,QACvE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAe;EAAS,CAAC,GAAI;AAG9D,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,kBAAkB,EAAE,UAAU;EAC9D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,GAAI;EAEH;GACM;EAGd;AAEH,kBAAkB,cAAc;AAEhC,gCAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignUpButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignUpButton/BaseSignUpButton.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAEL,yBAAyB,EACzB,oBAAoB,EAEpB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAGf;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,qBACf,SAAQ,2BAA2B,EACjC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,2BAA2B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,gBAAgB,EAAE,yBAAyB,CAAC,qBAAqB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CA0BvG,CAAC;AAIJ,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"BaseSignUpButton.d.ts","sourceRoot":"","sources":["../../../../src/components/actions/SignUpButton/BaseSignUpButton.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,oBAAoB,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAEL,yBAAyB,EACzB,oBAAoB,EAEpB,SAAS,EAET,aAAa,EACd,MAAM,OAAO,CAAC;AAIf;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,qBACf,SAAQ,2BAA2B,EACjC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,EACzD,eAAe;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,2BAA2B,KAAK,SAAS,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,gBAAgB,EAAE,yBAAyB,CAAC,qBAAqB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CA0BvG,CAAC;AAIJ,eAAe,gBAAgB,CAAC"}
@@ -1,8 +1,8 @@
1
+ import { cx } from "../../../styles/emotion.js";
1
2
  import Button_default from "../../primitives/Button/Button.js";
2
3
  import { withVendorCSSClassPrefix } from "@thunderid/browser";
3
4
  import { forwardRef } from "react";
4
5
  import { Fragment, jsx } from "react/jsx-runtime";
5
- import { cx } from "@emotion/css";
6
6
 
7
7
  //#region src/components/actions/SignUpButton/BaseSignUpButton.tsx
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSignUpButton.js","names":["BaseSignUpButton: ForwardRefExoticComponent<BaseSignUpButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignUpButton/BaseSignUpButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {cx} from '@emotion/css';\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n forwardRef,\n ForwardRefExoticComponent,\n ButtonHTMLAttributes,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignUpButton} components.\n */\nexport interface CommonBaseSignUpButtonProps {\n /**\n * Loading state during sign-up process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-up process\n */\n signUp?: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignUpButton}\n */\nexport type BaseSignUpButtonRenderProps = CommonBaseSignUpButtonProps;\n\n/**\n * Props interface of {@link BaseSignUpButton}\n */\nexport interface BaseSignUpButtonProps\n extends CommonBaseSignUpButtonProps,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-up props, or traditional ReactNode children\n */\n children?: ((props: BaseSignUpButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignUpButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignUpButton>\n * {({ signUp, isLoading }) => (\n * <button onClick={signUp} disabled={isLoading}>\n * {isLoading ? 'Creating account...' : 'Create Account'}\n * </button>\n * )}\n * </BaseSignUpButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignUpButton className=\"custom-button\">Create Account</BaseSignUpButton>\n * ```\n */\nconst BaseSignUpButton: ForwardRefExoticComponent<BaseSignUpButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignUpButtonProps>(\n (\n {children, className, style, signUp, isLoading, meta, preferences, ...rest}: BaseSignUpButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signUp})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-up-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n color=\"primary\"\n variant=\"solid\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignUpButton.displayName = 'BaseSignUpButton';\n\nexport default BaseSignUpButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,mBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,QAAQ,WAAW,MAAM,YAAa,GAAG,QACtE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAM;EAAO,CAAC,GAAI;AAGnD,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,iBAAiB,EAAE,UAAU;EAC7D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,OAAM;EACN,SAAQ;EACR,GAAI;EAEH;GACM;EAGd;AAEH,iBAAiB,cAAc;AAE/B,+BAAe"}
1
+ {"version":3,"file":"BaseSignUpButton.js","names":["BaseSignUpButton: ForwardRefExoticComponent<BaseSignUpButtonProps & RefAttributes<HTMLButtonElement>>","Button"],"sources":["../../../../src/components/actions/SignUpButton/BaseSignUpButton.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {FlowMetadataResponse, WithPreferences, withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {\n forwardRef,\n ForwardRefExoticComponent,\n ButtonHTMLAttributes,\n ReactElement,\n ReactNode,\n Ref,\n RefAttributes,\n} from 'react';\nimport {cx} from '../../../styles/emotion';\nimport Button from '../../primitives/Button/Button';\n\n/**\n * Common props shared by all {@link BaseSignUpButton} components.\n */\nexport interface CommonBaseSignUpButtonProps {\n /**\n * Loading state during sign-up process\n */\n isLoading?: boolean;\n /**\n * Flow metadata returned by the platform (v2 only). `null` while loading or unavailable.\n */\n meta?: FlowMetadataResponse | null;\n /**\n * Function to initiate the sign-up process\n */\n signUp?: () => Promise<void>;\n}\n\n/**\n * Props passed to the render function of {@link BaseSignUpButton}\n */\nexport type BaseSignUpButtonRenderProps = CommonBaseSignUpButtonProps;\n\n/**\n * Props interface of {@link BaseSignUpButton}\n */\nexport interface BaseSignUpButtonProps\n extends CommonBaseSignUpButtonProps,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>,\n WithPreferences {\n /**\n * Render prop function that receives sign-up props, or traditional ReactNode children\n */\n children?: ((props: BaseSignUpButtonRenderProps) => ReactNode) | ReactNode;\n}\n\n/**\n * Base SignUpButton component that supports both render props and traditional props patterns.\n *\n * @example Using render props\n * ```tsx\n * <BaseSignUpButton>\n * {({ signUp, isLoading }) => (\n * <button onClick={signUp} disabled={isLoading}>\n * {isLoading ? 'Creating account...' : 'Create Account'}\n * </button>\n * )}\n * </BaseSignUpButton>\n * ```\n *\n * @example Using traditional props\n * ```tsx\n * <BaseSignUpButton className=\"custom-button\">Create Account</BaseSignUpButton>\n * ```\n */\nconst BaseSignUpButton: ForwardRefExoticComponent<BaseSignUpButtonProps & RefAttributes<HTMLButtonElement>> =\n forwardRef<HTMLButtonElement, BaseSignUpButtonProps>(\n (\n {children, className, style, signUp, isLoading, meta, preferences, ...rest}: BaseSignUpButtonProps,\n ref: Ref<HTMLButtonElement>,\n ): ReactElement => {\n if (typeof children === 'function') {\n return <>{children({isLoading, meta, signUp})}</>;\n }\n\n return (\n <Button\n ref={ref}\n className={cx(withVendorCSSClassPrefix('sign-up-button'), className)}\n style={style}\n disabled={isLoading}\n loading={isLoading}\n type=\"button\"\n color=\"primary\"\n variant=\"solid\"\n {...rest}\n >\n {children}\n </Button>\n );\n },\n );\n\nBaseSignUpButton.displayName = 'BaseSignUpButton';\n\nexport default BaseSignUpButton;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,MAAMA,mBACJ,YAEI,EAAC,UAAU,WAAW,OAAO,QAAQ,WAAW,MAAM,YAAa,GAAG,QACtE,QACiB;AACjB,KAAI,OAAO,aAAa,WACtB,QAAO,0CAAG,SAAS;EAAC;EAAW;EAAM;EAAO,CAAC,GAAI;AAGnD,QACE,oBAACC;EACM;EACL,WAAW,GAAG,yBAAyB,iBAAiB,EAAE,UAAU;EAC7D;EACP,UAAU;EACV,SAAS;EACT,MAAK;EACL,OAAM;EACN,SAAQ;EACR,GAAI;EAEH;GACM;EAGd;AAEH,iBAAiB,cAAc;AAE/B,+BAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"Consent.d.ts","sourceRoot":"","sources":["../../../src/components/adapters/Consent.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,kBAAkB,EACvB,oBAAoB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAmB,EAAE,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AAMtD,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAE1D;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,kEAAkE;IAClE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,uEAAuE;IACvE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,SAAS,CAAC;IACpD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,EAAE,GAAG;QAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAA;KAAC,CAAC;IAC/E;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;CACzB;AAOD;;;;GAIG;AACH,QAAA,MAAM,OAAO,EAAE,EAAE,CAAC,YAAY,CA6I7B,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Consent.d.ts","sourceRoot":"","sources":["../../../src/components/adapters/Consent.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,kBAAkB,EACvB,oBAAoB,EAGrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAmB,EAAE,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AAMtD,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAC;AAG1D;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,kEAAkE;IAClE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,uEAAuE;IACvE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,SAAS,CAAC;IACpD;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,EAAE,GAAG;QAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAA;KAAC,CAAC;IAC/E;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC;;OAEG;IACH,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;CACzB;AAOD;;;;GAIG;AACH,QAAA,MAAM,OAAO,EAAE,EAAE,CAAC,YAAY,CA2J7B,CAAC;AAEF,eAAe,OAAO,CAAC"}