@thunderid/react 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. package/dist/cjs/components/account/UserProfile/BaseUserProfile.cjs +1 -1
  2. package/dist/cjs/components/admin/AgentCreate/AgentCreate.cjs +15 -4
  3. package/dist/cjs/components/admin/AgentCreate/AgentCreate.cjs.map +1 -1
  4. package/dist/cjs/components/admin/AgentDetails/AgentDetails.cjs +49 -10
  5. package/dist/cjs/components/admin/AgentDetails/AgentDetails.cjs.map +1 -1
  6. package/dist/cjs/components/admin/AgentDetails/BaseAgentDetails.cjs +25 -7
  7. package/dist/cjs/components/admin/AgentDetails/BaseAgentDetails.cjs.map +1 -1
  8. package/dist/cjs/components/admin/AgentList/AgentList.cjs +13 -4
  9. package/dist/cjs/components/admin/AgentList/AgentList.cjs.map +1 -1
  10. package/dist/cjs/components/admin/ApplicationCreate/ApplicationCreate.cjs +70 -0
  11. package/dist/cjs/components/admin/ApplicationCreate/ApplicationCreate.cjs.map +1 -0
  12. package/dist/cjs/components/admin/ApplicationCreate/BaseApplicationCreate.cjs +135 -0
  13. package/dist/cjs/components/admin/ApplicationCreate/BaseApplicationCreate.cjs.map +1 -0
  14. package/dist/cjs/components/admin/ApplicationDetails/ApplicationDetails.cjs +95 -0
  15. package/dist/cjs/components/admin/ApplicationDetails/ApplicationDetails.cjs.map +1 -0
  16. package/dist/cjs/components/admin/ApplicationDetails/BaseApplicationDetails.cjs +255 -0
  17. package/dist/cjs/components/admin/ApplicationDetails/BaseApplicationDetails.cjs.map +1 -0
  18. package/dist/cjs/components/admin/ApplicationList/ApplicationList.cjs +55 -0
  19. package/dist/cjs/components/admin/ApplicationList/ApplicationList.cjs.map +1 -0
  20. package/dist/cjs/components/admin/ApplicationList/BaseApplicationList.cjs +95 -0
  21. package/dist/cjs/components/admin/ApplicationList/BaseApplicationList.cjs.map +1 -0
  22. package/dist/cjs/components/admin/GroupCreate/GroupCreate.cjs +8 -2
  23. package/dist/cjs/components/admin/GroupCreate/GroupCreate.cjs.map +1 -1
  24. package/dist/cjs/components/admin/GroupList/GroupList.cjs +10 -3
  25. package/dist/cjs/components/admin/GroupList/GroupList.cjs.map +1 -1
  26. package/dist/cjs/components/admin/GroupMembers/GroupMembers.cjs +49 -11
  27. package/dist/cjs/components/admin/GroupMembers/GroupMembers.cjs.map +1 -1
  28. package/dist/cjs/components/admin/RoleAssignments/RoleAssignments.cjs +50 -15
  29. package/dist/cjs/components/admin/RoleAssignments/RoleAssignments.cjs.map +1 -1
  30. package/dist/cjs/components/admin/RoleCreate/RoleCreate.cjs +8 -2
  31. package/dist/cjs/components/admin/RoleCreate/RoleCreate.cjs.map +1 -1
  32. package/dist/cjs/components/admin/RoleList/RoleList.cjs +10 -3
  33. package/dist/cjs/components/admin/RoleList/RoleList.cjs.map +1 -1
  34. package/dist/cjs/components/admin/RolePermissions/RolePermissions.cjs +8 -2
  35. package/dist/cjs/components/admin/RolePermissions/RolePermissions.cjs.map +1 -1
  36. package/dist/cjs/components/admin/UserCreate/UserCreate.cjs +15 -4
  37. package/dist/cjs/components/admin/UserCreate/UserCreate.cjs.map +1 -1
  38. package/dist/cjs/components/admin/UserDetails/BaseUserDetails.cjs +32 -14
  39. package/dist/cjs/components/admin/UserDetails/BaseUserDetails.cjs.map +1 -1
  40. package/dist/cjs/components/admin/UserDetails/UserDetails.cjs +45 -10
  41. package/dist/cjs/components/admin/UserDetails/UserDetails.cjs.map +1 -1
  42. package/dist/cjs/components/admin/UserList/UserList.cjs +13 -4
  43. package/dist/cjs/components/admin/UserList/UserList.cjs.map +1 -1
  44. package/dist/cjs/components/admin/shared/AccountLifecycleParts.cjs +105 -0
  45. package/dist/cjs/components/admin/shared/AccountLifecycleParts.cjs.map +1 -0
  46. package/dist/cjs/components/admin/shared/ApplicationFormFields.cjs +62 -0
  47. package/dist/cjs/components/admin/shared/ApplicationFormFields.cjs.map +1 -0
  48. package/dist/cjs/components/admin/shared/ClientSecretNotice.cjs +49 -0
  49. package/dist/cjs/components/admin/shared/ClientSecretNotice.cjs.map +1 -0
  50. package/dist/cjs/components/auth/AcceptInvite/BaseAcceptInvite.cjs +4 -5
  51. package/dist/cjs/components/auth/AcceptInvite/BaseAcceptInvite.cjs.map +1 -1
  52. package/dist/cjs/components/auth/InviteUser/InviteUser.cjs +1 -1
  53. package/dist/cjs/components/auth/SignIn/SignIn.cjs +5 -5
  54. package/dist/cjs/components/auth/SignIn/SignIn.cjs.map +1 -1
  55. package/dist/cjs/components/auth/flow/AuthOptionFactory.cjs +4 -5
  56. package/dist/cjs/components/auth/flow/AuthOptionFactory.cjs.map +1 -1
  57. package/dist/cjs/components/auth/flow/Consent.cjs +53 -28
  58. package/dist/cjs/components/auth/flow/Consent.cjs.map +1 -1
  59. package/dist/cjs/components/auth/flow/ConsentAuthorizationDetail.cjs +104 -0
  60. package/dist/cjs/components/auth/flow/ConsentAuthorizationDetail.cjs.map +1 -0
  61. package/dist/cjs/components/auth/flow/ConsentAuthorizationDetail.styles.cjs +59 -0
  62. package/dist/cjs/components/auth/flow/ConsentAuthorizationDetail.styles.cjs.map +1 -0
  63. package/dist/cjs/components/auth/flow/ConsentDetailField.cjs +171 -0
  64. package/dist/cjs/components/auth/flow/ConsentDetailField.cjs.map +1 -0
  65. package/dist/cjs/components/auth/flow/ConsentDetailField.styles.cjs +85 -0
  66. package/dist/cjs/components/auth/flow/ConsentDetailField.styles.cjs.map +1 -0
  67. package/dist/cjs/components/auth/flow/ConsentDetailText.cjs +63 -0
  68. package/dist/cjs/components/auth/flow/ConsentDetailText.cjs.map +1 -0
  69. package/dist/cjs/components/auth/flow/ConsentDetailText.styles.cjs +83 -0
  70. package/dist/cjs/components/auth/flow/ConsentDetailText.styles.cjs.map +1 -0
  71. package/dist/cjs/components/auth/flow/FieldFactory.cjs +1 -1
  72. package/dist/cjs/components/auth/flow/resolveConsentText.cjs +25 -0
  73. package/dist/cjs/components/auth/flow/resolveConsentText.cjs.map +1 -0
  74. package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs +1 -1
  75. package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs +1 -1
  76. package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs +1 -1
  77. package/dist/cjs/hooks/auth/useConsentDetailField.cjs +357 -0
  78. package/dist/cjs/hooks/auth/useConsentDetailField.cjs.map +1 -0
  79. package/dist/cjs/hooks/management/useAccountLifecycle.cjs +59 -0
  80. package/dist/cjs/hooks/management/useAccountLifecycle.cjs.map +1 -0
  81. package/dist/cjs/hooks/management/useManagementEndpoint.cjs.map +1 -1
  82. package/dist/cjs/hooks/management/useManagementRequestConfig.cjs +41 -0
  83. package/dist/cjs/hooks/management/useManagementRequestConfig.cjs.map +1 -0
  84. package/dist/cjs/index.cjs +1130 -187
  85. package/dist/cjs/utils/formatConsentDetailValue.cjs +26 -0
  86. package/dist/cjs/utils/formatConsentDetailValue.cjs.map +1 -0
  87. package/dist/cjs/utils/getConsentDetailLayout.cjs +44 -0
  88. package/dist/cjs/utils/getConsentDetailLayout.cjs.map +1 -0
  89. package/dist/cjs/utils/getConsentDetailListDisplay.cjs +30 -0
  90. package/dist/cjs/utils/getConsentDetailListDisplay.cjs.map +1 -0
  91. package/dist/cjs/utils/isConsentApprovalBlocked.cjs +41 -0
  92. package/dist/cjs/utils/isConsentApprovalBlocked.cjs.map +1 -0
  93. package/dist/cjs/utils/isConsentDetailPlainList.cjs +24 -0
  94. package/dist/cjs/utils/isConsentDetailPlainList.cjs.map +1 -0
  95. package/dist/cjs/utils/isConsentDetailStructured.cjs +15 -0
  96. package/dist/cjs/utils/isConsentDetailStructured.cjs.map +1 -0
  97. package/dist/cjs/utils/isConsentDetailTextClamped.cjs +25 -0
  98. package/dist/cjs/utils/isConsentDetailTextClamped.cjs.map +1 -0
  99. package/dist/components/account/UserProfile/BaseUserProfile.js +1 -1
  100. package/dist/components/admin/AgentCreate/AgentCreate.d.ts.map +1 -1
  101. package/dist/components/admin/AgentCreate/AgentCreate.js +16 -5
  102. package/dist/components/admin/AgentCreate/AgentCreate.js.map +1 -1
  103. package/dist/components/admin/AgentDetails/AgentDetails.d.ts +8 -1
  104. package/dist/components/admin/AgentDetails/AgentDetails.d.ts.map +1 -1
  105. package/dist/components/admin/AgentDetails/AgentDetails.js +50 -11
  106. package/dist/components/admin/AgentDetails/AgentDetails.js.map +1 -1
  107. package/dist/components/admin/AgentDetails/BaseAgentDetails.d.ts +21 -1
  108. package/dist/components/admin/AgentDetails/BaseAgentDetails.d.ts.map +1 -1
  109. package/dist/components/admin/AgentDetails/BaseAgentDetails.js +25 -7
  110. package/dist/components/admin/AgentDetails/BaseAgentDetails.js.map +1 -1
  111. package/dist/components/admin/AgentList/AgentList.d.ts.map +1 -1
  112. package/dist/components/admin/AgentList/AgentList.js +14 -5
  113. package/dist/components/admin/AgentList/AgentList.js.map +1 -1
  114. package/dist/components/admin/ApplicationCreate/ApplicationCreate.d.ts +30 -0
  115. package/dist/components/admin/ApplicationCreate/ApplicationCreate.d.ts.map +1 -0
  116. package/dist/components/admin/ApplicationCreate/ApplicationCreate.js +66 -0
  117. package/dist/components/admin/ApplicationCreate/ApplicationCreate.js.map +1 -0
  118. package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.d.ts +80 -0
  119. package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.d.ts.map +1 -0
  120. package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.js +131 -0
  121. package/dist/components/admin/ApplicationCreate/BaseApplicationCreate.js.map +1 -0
  122. package/dist/components/admin/ApplicationDetails/ApplicationDetails.d.ts +64 -0
  123. package/dist/components/admin/ApplicationDetails/ApplicationDetails.d.ts.map +1 -0
  124. package/dist/components/admin/ApplicationDetails/ApplicationDetails.js +92 -0
  125. package/dist/components/admin/ApplicationDetails/ApplicationDetails.js.map +1 -0
  126. package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.d.ts +111 -0
  127. package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.d.ts.map +1 -0
  128. package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.js +251 -0
  129. package/dist/components/admin/ApplicationDetails/BaseApplicationDetails.js.map +1 -0
  130. package/dist/components/admin/ApplicationList/ApplicationList.d.ts +18 -0
  131. package/dist/components/admin/ApplicationList/ApplicationList.d.ts.map +1 -0
  132. package/dist/components/admin/ApplicationList/ApplicationList.js +51 -0
  133. package/dist/components/admin/ApplicationList/ApplicationList.js.map +1 -0
  134. package/dist/components/admin/ApplicationList/BaseApplicationList.d.ts +55 -0
  135. package/dist/components/admin/ApplicationList/BaseApplicationList.d.ts.map +1 -0
  136. package/dist/components/admin/ApplicationList/BaseApplicationList.js +93 -0
  137. package/dist/components/admin/ApplicationList/BaseApplicationList.js.map +1 -0
  138. package/dist/components/admin/GroupCreate/GroupCreate.d.ts.map +1 -1
  139. package/dist/components/admin/GroupCreate/GroupCreate.js +9 -3
  140. package/dist/components/admin/GroupCreate/GroupCreate.js.map +1 -1
  141. package/dist/components/admin/GroupList/GroupList.d.ts.map +1 -1
  142. package/dist/components/admin/GroupList/GroupList.js +11 -4
  143. package/dist/components/admin/GroupList/GroupList.js.map +1 -1
  144. package/dist/components/admin/GroupMembers/GroupMembers.d.ts +7 -0
  145. package/dist/components/admin/GroupMembers/GroupMembers.d.ts.map +1 -1
  146. package/dist/components/admin/GroupMembers/GroupMembers.js +50 -12
  147. package/dist/components/admin/GroupMembers/GroupMembers.js.map +1 -1
  148. package/dist/components/admin/RoleAssignments/RoleAssignments.d.ts +7 -0
  149. package/dist/components/admin/RoleAssignments/RoleAssignments.d.ts.map +1 -1
  150. package/dist/components/admin/RoleAssignments/RoleAssignments.js +51 -16
  151. package/dist/components/admin/RoleAssignments/RoleAssignments.js.map +1 -1
  152. package/dist/components/admin/RoleCreate/RoleCreate.d.ts.map +1 -1
  153. package/dist/components/admin/RoleCreate/RoleCreate.js +9 -3
  154. package/dist/components/admin/RoleCreate/RoleCreate.js.map +1 -1
  155. package/dist/components/admin/RoleList/RoleList.d.ts.map +1 -1
  156. package/dist/components/admin/RoleList/RoleList.js +11 -4
  157. package/dist/components/admin/RoleList/RoleList.js.map +1 -1
  158. package/dist/components/admin/RolePermissions/RolePermissions.d.ts.map +1 -1
  159. package/dist/components/admin/RolePermissions/RolePermissions.js +9 -3
  160. package/dist/components/admin/RolePermissions/RolePermissions.js.map +1 -1
  161. package/dist/components/admin/UserCreate/UserCreate.d.ts.map +1 -1
  162. package/dist/components/admin/UserCreate/UserCreate.js +16 -5
  163. package/dist/components/admin/UserCreate/UserCreate.js.map +1 -1
  164. package/dist/components/admin/UserDetails/BaseUserDetails.d.ts +22 -1
  165. package/dist/components/admin/UserDetails/BaseUserDetails.d.ts.map +1 -1
  166. package/dist/components/admin/UserDetails/BaseUserDetails.js +32 -14
  167. package/dist/components/admin/UserDetails/BaseUserDetails.js.map +1 -1
  168. package/dist/components/admin/UserDetails/UserDetails.d.ts +15 -1
  169. package/dist/components/admin/UserDetails/UserDetails.d.ts.map +1 -1
  170. package/dist/components/admin/UserDetails/UserDetails.js +46 -11
  171. package/dist/components/admin/UserDetails/UserDetails.js.map +1 -1
  172. package/dist/components/admin/UserList/UserList.d.ts.map +1 -1
  173. package/dist/components/admin/UserList/UserList.js +14 -5
  174. package/dist/components/admin/UserList/UserList.js.map +1 -1
  175. package/dist/components/admin/shared/AccountLifecycleParts.d.ts +32 -0
  176. package/dist/components/admin/shared/AccountLifecycleParts.d.ts.map +1 -0
  177. package/dist/components/admin/shared/AccountLifecycleParts.js +101 -0
  178. package/dist/components/admin/shared/AccountLifecycleParts.js.map +1 -0
  179. package/dist/components/admin/shared/ApplicationFormFields.d.ts +35 -0
  180. package/dist/components/admin/shared/ApplicationFormFields.d.ts.map +1 -0
  181. package/dist/components/admin/shared/ApplicationFormFields.js +59 -0
  182. package/dist/components/admin/shared/ApplicationFormFields.js.map +1 -0
  183. package/dist/components/admin/shared/ClientSecretNotice.d.ts +16 -0
  184. package/dist/components/admin/shared/ClientSecretNotice.d.ts.map +1 -0
  185. package/dist/components/admin/shared/ClientSecretNotice.js +47 -0
  186. package/dist/components/admin/shared/ClientSecretNotice.js.map +1 -0
  187. package/dist/components/auth/AcceptInvite/BaseAcceptInvite.d.ts.map +1 -1
  188. package/dist/components/auth/AcceptInvite/BaseAcceptInvite.js +5 -6
  189. package/dist/components/auth/AcceptInvite/BaseAcceptInvite.js.map +1 -1
  190. package/dist/components/auth/InviteUser/InviteUser.js +1 -1
  191. package/dist/components/auth/SignIn/SignIn.d.ts.map +1 -1
  192. package/dist/components/auth/SignIn/SignIn.js +6 -6
  193. package/dist/components/auth/SignIn/SignIn.js.map +1 -1
  194. package/dist/components/auth/flow/AuthOptionFactory.d.ts.map +1 -1
  195. package/dist/components/auth/flow/AuthOptionFactory.js +5 -6
  196. package/dist/components/auth/flow/AuthOptionFactory.js.map +1 -1
  197. package/dist/components/auth/flow/Consent.d.ts +6 -0
  198. package/dist/components/auth/flow/Consent.d.ts.map +1 -1
  199. package/dist/components/auth/flow/Consent.js +54 -29
  200. package/dist/components/auth/flow/Consent.js.map +1 -1
  201. package/dist/components/auth/flow/ConsentAuthorizationDetail.d.ts +68 -0
  202. package/dist/components/auth/flow/ConsentAuthorizationDetail.d.ts.map +1 -0
  203. package/dist/components/auth/flow/ConsentAuthorizationDetail.js +100 -0
  204. package/dist/components/auth/flow/ConsentAuthorizationDetail.js.map +1 -0
  205. package/dist/components/auth/flow/ConsentAuthorizationDetail.styles.d.ts +10 -0
  206. package/dist/components/auth/flow/ConsentAuthorizationDetail.styles.d.ts.map +1 -0
  207. package/dist/components/auth/flow/ConsentAuthorizationDetail.styles.js +57 -0
  208. package/dist/components/auth/flow/ConsentAuthorizationDetail.styles.js.map +1 -0
  209. package/dist/components/auth/flow/ConsentDetailField.d.ts +39 -0
  210. package/dist/components/auth/flow/ConsentDetailField.d.ts.map +1 -0
  211. package/dist/components/auth/flow/ConsentDetailField.js +168 -0
  212. package/dist/components/auth/flow/ConsentDetailField.js.map +1 -0
  213. package/dist/components/auth/flow/ConsentDetailField.styles.d.ts +11 -0
  214. package/dist/components/auth/flow/ConsentDetailField.styles.d.ts.map +1 -0
  215. package/dist/components/auth/flow/ConsentDetailField.styles.js +83 -0
  216. package/dist/components/auth/flow/ConsentDetailField.styles.js.map +1 -0
  217. package/dist/components/auth/flow/ConsentDetailText.d.ts +53 -0
  218. package/dist/components/auth/flow/ConsentDetailText.d.ts.map +1 -0
  219. package/dist/components/auth/flow/ConsentDetailText.js +58 -0
  220. package/dist/components/auth/flow/ConsentDetailText.js.map +1 -0
  221. package/dist/components/auth/flow/ConsentDetailText.styles.d.ts +20 -0
  222. package/dist/components/auth/flow/ConsentDetailText.styles.d.ts.map +1 -0
  223. package/dist/components/auth/flow/ConsentDetailText.styles.js +80 -0
  224. package/dist/components/auth/flow/ConsentDetailText.styles.js.map +1 -0
  225. package/dist/components/auth/flow/FieldFactory.js +1 -1
  226. package/dist/components/auth/flow/resolveConsentText.d.ts +13 -0
  227. package/dist/components/auth/flow/resolveConsentText.d.ts.map +1 -0
  228. package/dist/components/auth/flow/resolveConsentText.js +23 -0
  229. package/dist/components/auth/flow/resolveConsentText.js.map +1 -0
  230. package/dist/components/primitives/KeyValueInput/KeyValueInput.js +1 -1
  231. package/dist/components/primitives/MultiInput/MultiInput.js +1 -1
  232. package/dist/components/primitives/PasswordField/PasswordField.js +1 -1
  233. package/dist/hooks/auth/useConsentDetailField.d.ts +130 -0
  234. package/dist/hooks/auth/useConsentDetailField.d.ts.map +1 -0
  235. package/dist/hooks/auth/useConsentDetailField.js +354 -0
  236. package/dist/hooks/auth/useConsentDetailField.js.map +1 -0
  237. package/dist/hooks/management/useAccountLifecycle.d.ts +49 -0
  238. package/dist/hooks/management/useAccountLifecycle.d.ts.map +1 -0
  239. package/dist/hooks/management/useAccountLifecycle.js +56 -0
  240. package/dist/hooks/management/useAccountLifecycle.js.map +1 -0
  241. package/dist/hooks/management/useManagementEndpoint.d.ts +5 -1
  242. package/dist/hooks/management/useManagementEndpoint.d.ts.map +1 -1
  243. package/dist/hooks/management/useManagementEndpoint.js.map +1 -1
  244. package/dist/hooks/management/useManagementRequestConfig.d.ts +22 -0
  245. package/dist/hooks/management/useManagementRequestConfig.d.ts.map +1 -0
  246. package/dist/hooks/management/useManagementRequestConfig.js +39 -0
  247. package/dist/hooks/management/useManagementRequestConfig.js.map +1 -0
  248. package/dist/index.d.ts +35 -56
  249. package/dist/index.d.ts.map +1 -1
  250. package/dist/index.js +21 -42
  251. package/dist/models/config.d.ts +3 -4
  252. package/dist/models/config.d.ts.map +1 -1
  253. package/dist/utils/formatConsentDetailValue.d.ts +16 -0
  254. package/dist/utils/formatConsentDetailValue.d.ts.map +1 -0
  255. package/dist/utils/formatConsentDetailValue.js +25 -0
  256. package/dist/utils/formatConsentDetailValue.js.map +1 -0
  257. package/dist/utils/getConsentDetailLayout.d.ts +32 -0
  258. package/dist/utils/getConsentDetailLayout.d.ts.map +1 -0
  259. package/dist/utils/getConsentDetailLayout.js +43 -0
  260. package/dist/utils/getConsentDetailLayout.js.map +1 -0
  261. package/dist/utils/getConsentDetailListDisplay.d.ts +30 -0
  262. package/dist/utils/getConsentDetailListDisplay.d.ts.map +1 -0
  263. package/dist/utils/getConsentDetailListDisplay.js +30 -0
  264. package/dist/utils/getConsentDetailListDisplay.js.map +1 -0
  265. package/dist/utils/isConsentApprovalBlocked.d.ts +17 -0
  266. package/dist/utils/isConsentApprovalBlocked.d.ts.map +1 -0
  267. package/dist/utils/isConsentApprovalBlocked.js +39 -0
  268. package/dist/utils/isConsentApprovalBlocked.js.map +1 -0
  269. package/dist/utils/isConsentDetailPlainList.d.ts +15 -0
  270. package/dist/utils/isConsentDetailPlainList.d.ts.map +1 -0
  271. package/dist/utils/isConsentDetailPlainList.js +23 -0
  272. package/dist/utils/isConsentDetailPlainList.js.map +1 -0
  273. package/dist/utils/isConsentDetailStructured.d.ts +10 -0
  274. package/dist/utils/isConsentDetailStructured.d.ts.map +1 -0
  275. package/dist/utils/isConsentDetailStructured.js +14 -0
  276. package/dist/utils/isConsentDetailStructured.js.map +1 -0
  277. package/dist/utils/isConsentDetailTextClamped.d.ts +20 -0
  278. package/dist/utils/isConsentDetailTextClamped.d.ts.map +1 -0
  279. package/dist/utils/isConsentDetailTextClamped.js +24 -0
  280. package/dist/utils/isConsentDetailTextClamped.js.map +1 -0
  281. package/package.json +2 -2
  282. package/dist/cjs/hooks/management/agents/useCreateAgent.cjs +0 -26
  283. package/dist/cjs/hooks/management/agents/useCreateAgent.cjs.map +0 -1
  284. package/dist/cjs/hooks/management/agents/useDeleteAgent.cjs +0 -26
  285. package/dist/cjs/hooks/management/agents/useDeleteAgent.cjs.map +0 -1
  286. package/dist/cjs/hooks/management/agents/useGetAgent.cjs +0 -30
  287. package/dist/cjs/hooks/management/agents/useGetAgent.cjs.map +0 -1
  288. package/dist/cjs/hooks/management/agents/useGetAgentGroups.cjs +0 -41
  289. package/dist/cjs/hooks/management/agents/useGetAgentGroups.cjs.map +0 -1
  290. package/dist/cjs/hooks/management/agents/useGetAgentRoles.cjs +0 -42
  291. package/dist/cjs/hooks/management/agents/useGetAgentRoles.cjs.map +0 -1
  292. package/dist/cjs/hooks/management/agents/useGetAgentTypes.cjs +0 -31
  293. package/dist/cjs/hooks/management/agents/useGetAgentTypes.cjs.map +0 -1
  294. package/dist/cjs/hooks/management/agents/useGetAgents.cjs +0 -33
  295. package/dist/cjs/hooks/management/agents/useGetAgents.cjs.map +0 -1
  296. package/dist/cjs/hooks/management/agents/useUpdateAgent.cjs +0 -27
  297. package/dist/cjs/hooks/management/agents/useUpdateAgent.cjs.map +0 -1
  298. package/dist/cjs/hooks/management/applications/useCreateApplication.cjs +0 -31
  299. package/dist/cjs/hooks/management/applications/useCreateApplication.cjs.map +0 -1
  300. package/dist/cjs/hooks/management/applications/useDeleteApplication.cjs +0 -26
  301. package/dist/cjs/hooks/management/applications/useDeleteApplication.cjs.map +0 -1
  302. package/dist/cjs/hooks/management/applications/useGetApplication.cjs +0 -35
  303. package/dist/cjs/hooks/management/applications/useGetApplication.cjs.map +0 -1
  304. package/dist/cjs/hooks/management/applications/useGetApplications.cjs +0 -36
  305. package/dist/cjs/hooks/management/applications/useGetApplications.cjs.map +0 -1
  306. package/dist/cjs/hooks/management/applications/useUpdateApplication.cjs +0 -27
  307. package/dist/cjs/hooks/management/applications/useUpdateApplication.cjs.map +0 -1
  308. package/dist/cjs/hooks/management/groups/useAddGroupMembers.cjs +0 -32
  309. package/dist/cjs/hooks/management/groups/useAddGroupMembers.cjs.map +0 -1
  310. package/dist/cjs/hooks/management/groups/useCreateGroup.cjs +0 -26
  311. package/dist/cjs/hooks/management/groups/useCreateGroup.cjs.map +0 -1
  312. package/dist/cjs/hooks/management/groups/useDeleteGroup.cjs +0 -30
  313. package/dist/cjs/hooks/management/groups/useDeleteGroup.cjs.map +0 -1
  314. package/dist/cjs/hooks/management/groups/useGetGroup.cjs +0 -30
  315. package/dist/cjs/hooks/management/groups/useGetGroup.cjs.map +0 -1
  316. package/dist/cjs/hooks/management/groups/useGetGroupMembers.cjs +0 -40
  317. package/dist/cjs/hooks/management/groups/useGetGroupMembers.cjs.map +0 -1
  318. package/dist/cjs/hooks/management/groups/useGetGroups.cjs +0 -31
  319. package/dist/cjs/hooks/management/groups/useGetGroups.cjs.map +0 -1
  320. package/dist/cjs/hooks/management/groups/useRemoveGroupMembers.cjs +0 -32
  321. package/dist/cjs/hooks/management/groups/useRemoveGroupMembers.cjs.map +0 -1
  322. package/dist/cjs/hooks/management/groups/useUpdateGroup.cjs +0 -31
  323. package/dist/cjs/hooks/management/groups/useUpdateGroup.cjs.map +0 -1
  324. package/dist/cjs/hooks/management/roles/useAddRoleAssignments.cjs +0 -27
  325. package/dist/cjs/hooks/management/roles/useAddRoleAssignments.cjs.map +0 -1
  326. package/dist/cjs/hooks/management/roles/useCreateRole.cjs +0 -26
  327. package/dist/cjs/hooks/management/roles/useCreateRole.cjs.map +0 -1
  328. package/dist/cjs/hooks/management/roles/useDeleteRole.cjs +0 -26
  329. package/dist/cjs/hooks/management/roles/useDeleteRole.cjs.map +0 -1
  330. package/dist/cjs/hooks/management/roles/useGetRole.cjs +0 -30
  331. package/dist/cjs/hooks/management/roles/useGetRole.cjs.map +0 -1
  332. package/dist/cjs/hooks/management/roles/useGetRoleAssignments.cjs +0 -42
  333. package/dist/cjs/hooks/management/roles/useGetRoleAssignments.cjs.map +0 -1
  334. package/dist/cjs/hooks/management/roles/useGetRoles.cjs +0 -31
  335. package/dist/cjs/hooks/management/roles/useGetRoles.cjs.map +0 -1
  336. package/dist/cjs/hooks/management/roles/useRemoveRoleAssignments.cjs +0 -27
  337. package/dist/cjs/hooks/management/roles/useRemoveRoleAssignments.cjs.map +0 -1
  338. package/dist/cjs/hooks/management/roles/useUpdateRole.cjs +0 -27
  339. package/dist/cjs/hooks/management/roles/useUpdateRole.cjs.map +0 -1
  340. package/dist/cjs/hooks/management/users/useCreateUser.cjs +0 -26
  341. package/dist/cjs/hooks/management/users/useCreateUser.cjs.map +0 -1
  342. package/dist/cjs/hooks/management/users/useDeleteUser.cjs +0 -26
  343. package/dist/cjs/hooks/management/users/useDeleteUser.cjs.map +0 -1
  344. package/dist/cjs/hooks/management/users/useGetUser.cjs +0 -30
  345. package/dist/cjs/hooks/management/users/useGetUser.cjs.map +0 -1
  346. package/dist/cjs/hooks/management/users/useGetUserGroups.cjs +0 -41
  347. package/dist/cjs/hooks/management/users/useGetUserGroups.cjs.map +0 -1
  348. package/dist/cjs/hooks/management/users/useGetUserTypes.cjs +0 -31
  349. package/dist/cjs/hooks/management/users/useGetUserTypes.cjs.map +0 -1
  350. package/dist/cjs/hooks/management/users/useGetUsers.cjs +0 -38
  351. package/dist/cjs/hooks/management/users/useGetUsers.cjs.map +0 -1
  352. package/dist/cjs/hooks/management/users/useUpdateUser.cjs +0 -27
  353. package/dist/cjs/hooks/management/users/useUpdateUser.cjs.map +0 -1
  354. package/dist/hooks/management/agents/useCreateAgent.d.ts +0 -11
  355. package/dist/hooks/management/agents/useCreateAgent.d.ts.map +0 -1
  356. package/dist/hooks/management/agents/useCreateAgent.js +0 -24
  357. package/dist/hooks/management/agents/useCreateAgent.js.map +0 -1
  358. package/dist/hooks/management/agents/useDeleteAgent.d.ts +0 -10
  359. package/dist/hooks/management/agents/useDeleteAgent.d.ts.map +0 -1
  360. package/dist/hooks/management/agents/useDeleteAgent.js +0 -24
  361. package/dist/hooks/management/agents/useDeleteAgent.js.map +0 -1
  362. package/dist/hooks/management/agents/useGetAgent.d.ts +0 -12
  363. package/dist/hooks/management/agents/useGetAgent.d.ts.map +0 -1
  364. package/dist/hooks/management/agents/useGetAgent.js +0 -28
  365. package/dist/hooks/management/agents/useGetAgent.js.map +0 -1
  366. package/dist/hooks/management/agents/useGetAgentGroups.d.ts +0 -16
  367. package/dist/hooks/management/agents/useGetAgentGroups.d.ts.map +0 -1
  368. package/dist/hooks/management/agents/useGetAgentGroups.js +0 -39
  369. package/dist/hooks/management/agents/useGetAgentGroups.js.map +0 -1
  370. package/dist/hooks/management/agents/useGetAgentRoles.d.ts +0 -17
  371. package/dist/hooks/management/agents/useGetAgentRoles.d.ts.map +0 -1
  372. package/dist/hooks/management/agents/useGetAgentRoles.js +0 -40
  373. package/dist/hooks/management/agents/useGetAgentRoles.js.map +0 -1
  374. package/dist/hooks/management/agents/useGetAgentTypes.d.ts +0 -15
  375. package/dist/hooks/management/agents/useGetAgentTypes.d.ts.map +0 -1
  376. package/dist/hooks/management/agents/useGetAgentTypes.js +0 -29
  377. package/dist/hooks/management/agents/useGetAgentTypes.js.map +0 -1
  378. package/dist/hooks/management/agents/useGetAgents.d.ts +0 -23
  379. package/dist/hooks/management/agents/useGetAgents.d.ts.map +0 -1
  380. package/dist/hooks/management/agents/useGetAgents.js +0 -31
  381. package/dist/hooks/management/agents/useGetAgents.js.map +0 -1
  382. package/dist/hooks/management/agents/useUpdateAgent.d.ts +0 -18
  383. package/dist/hooks/management/agents/useUpdateAgent.d.ts.map +0 -1
  384. package/dist/hooks/management/agents/useUpdateAgent.js +0 -25
  385. package/dist/hooks/management/agents/useUpdateAgent.js.map +0 -1
  386. package/dist/hooks/management/applications/useCreateApplication.d.ts +0 -16
  387. package/dist/hooks/management/applications/useCreateApplication.d.ts.map +0 -1
  388. package/dist/hooks/management/applications/useCreateApplication.js +0 -29
  389. package/dist/hooks/management/applications/useCreateApplication.js.map +0 -1
  390. package/dist/hooks/management/applications/useDeleteApplication.d.ts +0 -10
  391. package/dist/hooks/management/applications/useDeleteApplication.d.ts.map +0 -1
  392. package/dist/hooks/management/applications/useDeleteApplication.js +0 -24
  393. package/dist/hooks/management/applications/useDeleteApplication.js.map +0 -1
  394. package/dist/hooks/management/applications/useGetApplication.d.ts +0 -17
  395. package/dist/hooks/management/applications/useGetApplication.d.ts.map +0 -1
  396. package/dist/hooks/management/applications/useGetApplication.js +0 -33
  397. package/dist/hooks/management/applications/useGetApplication.js.map +0 -1
  398. package/dist/hooks/management/applications/useGetApplications.d.ts +0 -24
  399. package/dist/hooks/management/applications/useGetApplications.d.ts.map +0 -1
  400. package/dist/hooks/management/applications/useGetApplications.js +0 -34
  401. package/dist/hooks/management/applications/useGetApplications.js.map +0 -1
  402. package/dist/hooks/management/applications/useUpdateApplication.d.ts +0 -18
  403. package/dist/hooks/management/applications/useUpdateApplication.d.ts.map +0 -1
  404. package/dist/hooks/management/applications/useUpdateApplication.js +0 -25
  405. package/dist/hooks/management/applications/useUpdateApplication.js.map +0 -1
  406. package/dist/hooks/management/groups/useAddGroupMembers.d.ts +0 -24
  407. package/dist/hooks/management/groups/useAddGroupMembers.d.ts.map +0 -1
  408. package/dist/hooks/management/groups/useAddGroupMembers.js +0 -30
  409. package/dist/hooks/management/groups/useAddGroupMembers.js.map +0 -1
  410. package/dist/hooks/management/groups/useCreateGroup.d.ts +0 -11
  411. package/dist/hooks/management/groups/useCreateGroup.d.ts.map +0 -1
  412. package/dist/hooks/management/groups/useCreateGroup.js +0 -24
  413. package/dist/hooks/management/groups/useCreateGroup.js.map +0 -1
  414. package/dist/hooks/management/groups/useDeleteGroup.d.ts +0 -10
  415. package/dist/hooks/management/groups/useDeleteGroup.d.ts.map +0 -1
  416. package/dist/hooks/management/groups/useDeleteGroup.js +0 -28
  417. package/dist/hooks/management/groups/useDeleteGroup.js.map +0 -1
  418. package/dist/hooks/management/groups/useGetGroup.d.ts +0 -12
  419. package/dist/hooks/management/groups/useGetGroup.d.ts.map +0 -1
  420. package/dist/hooks/management/groups/useGetGroup.js +0 -28
  421. package/dist/hooks/management/groups/useGetGroup.js.map +0 -1
  422. package/dist/hooks/management/groups/useGetGroupMembers.d.ts +0 -20
  423. package/dist/hooks/management/groups/useGetGroupMembers.d.ts.map +0 -1
  424. package/dist/hooks/management/groups/useGetGroupMembers.js +0 -38
  425. package/dist/hooks/management/groups/useGetGroupMembers.js.map +0 -1
  426. package/dist/hooks/management/groups/useGetGroups.d.ts +0 -19
  427. package/dist/hooks/management/groups/useGetGroups.d.ts.map +0 -1
  428. package/dist/hooks/management/groups/useGetGroups.js +0 -29
  429. package/dist/hooks/management/groups/useGetGroups.js.map +0 -1
  430. package/dist/hooks/management/groups/useRemoveGroupMembers.d.ts +0 -12
  431. package/dist/hooks/management/groups/useRemoveGroupMembers.d.ts.map +0 -1
  432. package/dist/hooks/management/groups/useRemoveGroupMembers.js +0 -30
  433. package/dist/hooks/management/groups/useRemoveGroupMembers.js.map +0 -1
  434. package/dist/hooks/management/groups/useUpdateGroup.d.ts +0 -24
  435. package/dist/hooks/management/groups/useUpdateGroup.d.ts.map +0 -1
  436. package/dist/hooks/management/groups/useUpdateGroup.js +0 -29
  437. package/dist/hooks/management/groups/useUpdateGroup.js.map +0 -1
  438. package/dist/hooks/management/roles/useAddRoleAssignments.d.ts +0 -24
  439. package/dist/hooks/management/roles/useAddRoleAssignments.d.ts.map +0 -1
  440. package/dist/hooks/management/roles/useAddRoleAssignments.js +0 -25
  441. package/dist/hooks/management/roles/useAddRoleAssignments.js.map +0 -1
  442. package/dist/hooks/management/roles/useCreateRole.d.ts +0 -11
  443. package/dist/hooks/management/roles/useCreateRole.d.ts.map +0 -1
  444. package/dist/hooks/management/roles/useCreateRole.js +0 -24
  445. package/dist/hooks/management/roles/useCreateRole.js.map +0 -1
  446. package/dist/hooks/management/roles/useDeleteRole.d.ts +0 -10
  447. package/dist/hooks/management/roles/useDeleteRole.d.ts.map +0 -1
  448. package/dist/hooks/management/roles/useDeleteRole.js +0 -24
  449. package/dist/hooks/management/roles/useDeleteRole.js.map +0 -1
  450. package/dist/hooks/management/roles/useGetRole.d.ts +0 -12
  451. package/dist/hooks/management/roles/useGetRole.d.ts.map +0 -1
  452. package/dist/hooks/management/roles/useGetRole.js +0 -28
  453. package/dist/hooks/management/roles/useGetRole.js.map +0 -1
  454. package/dist/hooks/management/roles/useGetRoleAssignments.d.ts +0 -24
  455. package/dist/hooks/management/roles/useGetRoleAssignments.d.ts.map +0 -1
  456. package/dist/hooks/management/roles/useGetRoleAssignments.js +0 -40
  457. package/dist/hooks/management/roles/useGetRoleAssignments.js.map +0 -1
  458. package/dist/hooks/management/roles/useGetRoles.d.ts +0 -19
  459. package/dist/hooks/management/roles/useGetRoles.d.ts.map +0 -1
  460. package/dist/hooks/management/roles/useGetRoles.js +0 -29
  461. package/dist/hooks/management/roles/useGetRoles.js.map +0 -1
  462. package/dist/hooks/management/roles/useRemoveRoleAssignments.d.ts +0 -11
  463. package/dist/hooks/management/roles/useRemoveRoleAssignments.d.ts.map +0 -1
  464. package/dist/hooks/management/roles/useRemoveRoleAssignments.js +0 -25
  465. package/dist/hooks/management/roles/useRemoveRoleAssignments.js.map +0 -1
  466. package/dist/hooks/management/roles/useUpdateRole.d.ts +0 -24
  467. package/dist/hooks/management/roles/useUpdateRole.d.ts.map +0 -1
  468. package/dist/hooks/management/roles/useUpdateRole.js +0 -25
  469. package/dist/hooks/management/roles/useUpdateRole.js.map +0 -1
  470. package/dist/hooks/management/users/useCreateUser.d.ts +0 -11
  471. package/dist/hooks/management/users/useCreateUser.d.ts.map +0 -1
  472. package/dist/hooks/management/users/useCreateUser.js +0 -24
  473. package/dist/hooks/management/users/useCreateUser.js.map +0 -1
  474. package/dist/hooks/management/users/useDeleteUser.d.ts +0 -10
  475. package/dist/hooks/management/users/useDeleteUser.d.ts.map +0 -1
  476. package/dist/hooks/management/users/useDeleteUser.js +0 -24
  477. package/dist/hooks/management/users/useDeleteUser.js.map +0 -1
  478. package/dist/hooks/management/users/useGetUser.d.ts +0 -12
  479. package/dist/hooks/management/users/useGetUser.d.ts.map +0 -1
  480. package/dist/hooks/management/users/useGetUser.js +0 -28
  481. package/dist/hooks/management/users/useGetUser.js.map +0 -1
  482. package/dist/hooks/management/users/useGetUserGroups.d.ts +0 -16
  483. package/dist/hooks/management/users/useGetUserGroups.d.ts.map +0 -1
  484. package/dist/hooks/management/users/useGetUserGroups.js +0 -39
  485. package/dist/hooks/management/users/useGetUserGroups.js.map +0 -1
  486. package/dist/hooks/management/users/useGetUserTypes.d.ts +0 -15
  487. package/dist/hooks/management/users/useGetUserTypes.d.ts.map +0 -1
  488. package/dist/hooks/management/users/useGetUserTypes.js +0 -29
  489. package/dist/hooks/management/users/useGetUserTypes.js.map +0 -1
  490. package/dist/hooks/management/users/useGetUsers.d.ts +0 -17
  491. package/dist/hooks/management/users/useGetUsers.d.ts.map +0 -1
  492. package/dist/hooks/management/users/useGetUsers.js +0 -36
  493. package/dist/hooks/management/users/useGetUsers.js.map +0 -1
  494. package/dist/hooks/management/users/useUpdateUser.d.ts +0 -18
  495. package/dist/hooks/management/users/useUpdateUser.d.ts.map +0 -1
  496. package/dist/hooks/management/users/useUpdateUser.js +0 -25
  497. package/dist/hooks/management/users/useUpdateUser.js.map +0 -1
@@ -0,0 +1,43 @@
1
+ import formatConsentDetailValue_default from "./formatConsentDetailValue.js";
2
+ import isConsentDetailStructured_default from "./isConsentDetailStructured.js";
3
+
4
+ //#region src/utils/getConsentDetailLayout.ts
5
+ /**
6
+ * Limits a consent screen applies to authorization detail content so that a long or large value never
7
+ * crowds the layout. Text longer than a `*Chars` limit is clamped to its `*Lines` limit behind a toggle,
8
+ * and a list longer than `listItems` shows that many items behind a toggle.
9
+ */
10
+ const CONSENT_DETAIL_DISPLAY_LIMITS = Object.freeze({
11
+ inlineLabelChars: 32,
12
+ inlineValueChars: 32,
13
+ listItems: 8,
14
+ structuredLines: 8,
15
+ summaryChars: 160,
16
+ summaryLines: 3,
17
+ valueChars: 160,
18
+ valueLines: 4
19
+ });
20
+ /**
21
+ * Chooses how a consent screen lays out one authorization detail field. A short label and a short value
22
+ * sit side by side; a long label, a long value, a long list or a structured value is stacked, the label
23
+ * above the value, so neither squeezes the other.
24
+ *
25
+ * @param row - Field to lay out.
26
+ * @returns `inline` or `stacked`.
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * getConsentDetailLayout({label: 'Pay to', path: 'creditorName', value: 'Merchant A'}) // returns 'inline'
31
+ * ```
32
+ */
33
+ const getConsentDetailLayout = (row) => {
34
+ if ((row.label || row.path).length > CONSENT_DETAIL_DISPLAY_LIMITS.inlineLabelChars || isConsentDetailStructured_default(row.value)) return "stacked";
35
+ const items = Array.isArray(row.value) ? [...row.value] : [row.value];
36
+ if (row.modification === "addItems" && Array.isArray(row.options)) items.push(...row.options);
37
+ return formatConsentDetailValue_default(items).length > CONSENT_DETAIL_DISPLAY_LIMITS.inlineValueChars ? "stacked" : "inline";
38
+ };
39
+ var getConsentDetailLayout_default = getConsentDetailLayout;
40
+
41
+ //#endregion
42
+ export { CONSENT_DETAIL_DISPLAY_LIMITS, getConsentDetailLayout_default as default };
43
+ //# sourceMappingURL=getConsentDetailLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConsentDetailLayout.js","names":["CONSENT_DETAIL_DISPLAY_LIMITS: Readonly<{\n inlineLabelChars: number;\n inlineValueChars: number;\n listItems: number;\n structuredLines: number;\n summaryChars: number;\n summaryLines: number;\n valueChars: number;\n valueLines: number;\n}>","isConsentDetailStructured","items: unknown[]","formatConsentDetailValue"],"sources":["../../src/utils/getConsentDetailLayout.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {type ConsentDetailRow} from '@thunderid/browser';\nimport formatConsentDetailValue from './formatConsentDetailValue';\nimport isConsentDetailStructured from './isConsentDetailStructured';\n\n/**\n * Limits a consent screen applies to authorization detail content so that a long or large value never\n * crowds the layout. Text longer than a `*Chars` limit is clamped to its `*Lines` limit behind a toggle,\n * and a list longer than `listItems` shows that many items behind a toggle.\n */\nexport const CONSENT_DETAIL_DISPLAY_LIMITS: Readonly<{\n inlineLabelChars: number;\n inlineValueChars: number;\n listItems: number;\n structuredLines: number;\n summaryChars: number;\n summaryLines: number;\n valueChars: number;\n valueLines: number;\n}> = Object.freeze({\n inlineLabelChars: 32,\n inlineValueChars: 32,\n listItems: 8,\n structuredLines: 8,\n summaryChars: 160,\n summaryLines: 3,\n valueChars: 160,\n valueLines: 4,\n});\n\n/**\n * Chooses how a consent screen lays out one authorization detail field. A short label and a short value\n * sit side by side; a long label, a long value, a long list or a structured value is stacked, the label\n * above the value, so neither squeezes the other.\n *\n * @param row - Field to lay out.\n * @returns `inline` or `stacked`.\n *\n * @example\n * ```typescript\n * getConsentDetailLayout({label: 'Pay to', path: 'creditorName', value: 'Merchant A'}) // returns 'inline'\n * ```\n */\nconst getConsentDetailLayout = (row: ConsentDetailRow): 'inline' | 'stacked' => {\n const label: string = row.label || row.path;\n if (label.length > CONSENT_DETAIL_DISPLAY_LIMITS.inlineLabelChars || isConsentDetailStructured(row.value)) {\n return 'stacked';\n }\n\n const items: unknown[] = Array.isArray(row.value) ? [...(row.value as unknown[])] : [row.value];\n if (row.modification === 'addItems' && Array.isArray(row.options)) {\n items.push(...row.options);\n }\n const text: string = formatConsentDetailValue(items);\n\n return text.length > CONSENT_DETAIL_DISPLAY_LIMITS.inlineValueChars ? 'stacked' : 'inline';\n};\n\nexport default getConsentDetailLayout;\n"],"mappings":";;;;;;;;;AAYA,MAAaA,gCASR,OAAO,OAAO;CACjB,kBAAkB;CAClB,kBAAkB;CAClB,WAAW;CACX,iBAAiB;CACjB,cAAc;CACd,cAAc;CACd,YAAY;CACZ,YAAY;CACb,CAAC;;;;;;;;;;;;;;AAeF,MAAM,0BAA0B,QAAgD;AAE9E,MADsB,IAAI,SAAS,IAAI,MAC7B,SAAS,8BAA8B,oBAAoBC,kCAA0B,IAAI,MAAM,CACvG,QAAO;CAGT,MAAMC,QAAmB,MAAM,QAAQ,IAAI,MAAM,GAAG,CAAC,GAAI,IAAI,MAAoB,GAAG,CAAC,IAAI,MAAM;AAC/F,KAAI,IAAI,iBAAiB,cAAc,MAAM,QAAQ,IAAI,QAAQ,CAC/D,OAAM,KAAK,GAAG,IAAI,QAAQ;AAI5B,QAFqBC,iCAAyB,MAAM,CAExC,SAAS,8BAA8B,mBAAmB,YAAY;;AAGpF,qCAAe"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * How a consent screen shows a list of authorization detail items, given the
3
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.listItems` limit.
4
+ *
5
+ * @experimental This interface may change in future versions
6
+ */
7
+ export interface ConsentDetailListDisplay {
8
+ /** Number of items hidden behind the toggle; `0` while expanded or when the list fits. */
9
+ hiddenCount: number;
10
+ /** Whether the list is longer than the limit, so it is shown behind a toggle. */
11
+ isCollapsible: boolean;
12
+ /** Number of items to show. */
13
+ visibleCount: number;
14
+ }
15
+ /**
16
+ * Tells how many items of an authorization detail list a consent screen shows. A list longer than
17
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.listItems` shows that many items while collapsed, the rest behind a toggle.
18
+ *
19
+ * @param itemCount - Number of items in the list.
20
+ * @param expanded - Whether the user expanded the list.
21
+ * @returns The items to show and hide.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * getConsentDetailListDisplay(10, false) // returns {hiddenCount: 2, isCollapsible: true, visibleCount: 8}
26
+ * ```
27
+ */
28
+ declare const getConsentDetailListDisplay: (itemCount: number, expanded: boolean) => ConsentDetailListDisplay;
29
+ export default getConsentDetailListDisplay;
30
+ //# sourceMappingURL=getConsentDetailListDisplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConsentDetailListDisplay.d.ts","sourceRoot":"","sources":["../../src/utils/getConsentDetailListDisplay.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,0FAA0F;IAC1F,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,aAAa,EAAE,OAAO,CAAC;IACvB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,2BAA2B,GAAI,WAAW,MAAM,EAAE,UAAU,OAAO,KAAG,wBAK3E,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { CONSENT_DETAIL_DISPLAY_LIMITS } from "./getConsentDetailLayout.js";
2
+
3
+ //#region src/utils/getConsentDetailListDisplay.ts
4
+ /**
5
+ * Tells how many items of an authorization detail list a consent screen shows. A list longer than
6
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.listItems` shows that many items while collapsed, the rest behind a toggle.
7
+ *
8
+ * @param itemCount - Number of items in the list.
9
+ * @param expanded - Whether the user expanded the list.
10
+ * @returns The items to show and hide.
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * getConsentDetailListDisplay(10, false) // returns {hiddenCount: 2, isCollapsible: true, visibleCount: 8}
15
+ * ```
16
+ */
17
+ const getConsentDetailListDisplay = (itemCount, expanded) => {
18
+ const isCollapsible = itemCount > CONSENT_DETAIL_DISPLAY_LIMITS.listItems;
19
+ const visibleCount = isCollapsible && !expanded ? CONSENT_DETAIL_DISPLAY_LIMITS.listItems : itemCount;
20
+ return {
21
+ hiddenCount: itemCount - visibleCount,
22
+ isCollapsible,
23
+ visibleCount
24
+ };
25
+ };
26
+ var getConsentDetailListDisplay_default = getConsentDetailListDisplay;
27
+
28
+ //#endregion
29
+ export { getConsentDetailListDisplay_default as default };
30
+ //# sourceMappingURL=getConsentDetailListDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConsentDetailListDisplay.js","names":["isCollapsible: boolean","visibleCount: number"],"sources":["../../src/utils/getConsentDetailListDisplay.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {CONSENT_DETAIL_DISPLAY_LIMITS} from './getConsentDetailLayout';\n\n/**\n * How a consent screen shows a list of authorization detail items, given the\n * `CONSENT_DETAIL_DISPLAY_LIMITS.listItems` limit.\n *\n * @experimental This interface may change in future versions\n */\nexport interface ConsentDetailListDisplay {\n /** Number of items hidden behind the toggle; `0` while expanded or when the list fits. */\n hiddenCount: number;\n /** Whether the list is longer than the limit, so it is shown behind a toggle. */\n isCollapsible: boolean;\n /** Number of items to show. */\n visibleCount: number;\n}\n\n/**\n * Tells how many items of an authorization detail list a consent screen shows. A list longer than\n * `CONSENT_DETAIL_DISPLAY_LIMITS.listItems` shows that many items while collapsed, the rest behind a toggle.\n *\n * @param itemCount - Number of items in the list.\n * @param expanded - Whether the user expanded the list.\n * @returns The items to show and hide.\n *\n * @example\n * ```typescript\n * getConsentDetailListDisplay(10, false) // returns {hiddenCount: 2, isCollapsible: true, visibleCount: 8}\n * ```\n */\nconst getConsentDetailListDisplay = (itemCount: number, expanded: boolean): ConsentDetailListDisplay => {\n const isCollapsible: boolean = itemCount > CONSENT_DETAIL_DISPLAY_LIMITS.listItems;\n const visibleCount: number = isCollapsible && !expanded ? CONSENT_DETAIL_DISPLAY_LIMITS.listItems : itemCount;\n\n return {hiddenCount: itemCount - visibleCount, isCollapsible, visibleCount};\n};\n\nexport default getConsentDetailListDisplay;\n"],"mappings":";;;;;;;;;;;;;;;;AAiCA,MAAM,+BAA+B,WAAmB,aAAgD;CACtG,MAAMA,gBAAyB,YAAY,8BAA8B;CACzE,MAAMC,eAAuB,iBAAiB,CAAC,WAAW,8BAA8B,YAAY;AAEpG,QAAO;EAAC,aAAa,YAAY;EAAc;EAAe;EAAa;;AAG7E,0CAAe"}
@@ -0,0 +1,17 @@
1
+ import { type ConsentPurposeData } from '@thunderid/browser';
2
+ /**
3
+ * Reports whether the consent cannot be approved yet: an authorization detail the user has not declined
4
+ * shows, in a field the user may modify, text that cannot be submitted. Denying stays possible.
5
+ *
6
+ * @param purposes - The consent purposes on the screen.
7
+ * @param formValues - Form values, holding each element's approval and each field's invalid marker.
8
+ * @returns Whether approval must wait until the user corrects the field.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * isConsentApprovalBlocked(purposes, {'__consent_invalid__p1__d-1__amount': 'true'}) // returns true
13
+ * ```
14
+ */
15
+ declare const isConsentApprovalBlocked: (purposes: ConsentPurposeData[], formValues: Record<string, unknown>) => boolean;
16
+ export default isConsentApprovalBlocked;
17
+ //# sourceMappingURL=isConsentApprovalBlocked.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentApprovalBlocked.d.ts","sourceRoot":"","sources":["../../src/utils/isConsentApprovalBlocked.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,oBAAoB,CAAC;AA4B5B;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,wBAAwB,GAAI,UAAU,kBAAkB,EAAE,EAAE,YAAY,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAOrG,CAAC;AAEJ,eAAe,wBAAwB,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { getConsentOptionalKey } from "../components/auth/flow/ConsentCheckboxList.js";
2
+ import { getConsentInvalidKey } from "@thunderid/browser";
3
+
4
+ //#region src/utils/isConsentApprovalBlocked.ts
5
+ /**
6
+ * Reports whether any field the user may modify on an authorization detail element shows text that cannot
7
+ * be submitted. The element must not be approved while this holds, since its decision would not carry what
8
+ * the user sees.
9
+ *
10
+ * @param purposeId - The identifier of the consent purpose the element belongs to.
11
+ * @param element - The authorization detail element.
12
+ * @param inputs - Form values, holding the invalid marker of each field under its invalid key.
13
+ * @returns Whether a field of the element is invalid.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * hasInvalidConsentModification('p1', element, {'__consent_invalid__p1__d-1__amount': 'true'}) // returns true
18
+ * ```
19
+ */
20
+ const hasInvalidConsentModification = (purposeId, element, inputs) => (element.rows ?? []).some((row) => Boolean(row.modification) && inputs[getConsentInvalidKey(purposeId, element.name, row.path)] === "true");
21
+ /**
22
+ * Reports whether the consent cannot be approved yet: an authorization detail the user has not declined
23
+ * shows, in a field the user may modify, text that cannot be submitted. Denying stays possible.
24
+ *
25
+ * @param purposes - The consent purposes on the screen.
26
+ * @param formValues - Form values, holding each element's approval and each field's invalid marker.
27
+ * @returns Whether approval must wait until the user corrects the field.
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * isConsentApprovalBlocked(purposes, {'__consent_invalid__p1__d-1__amount': 'true'}) // returns true
32
+ * ```
33
+ */
34
+ const isConsentApprovalBlocked = (purposes, formValues) => purposes.some((purpose) => (purpose.optional ?? []).some((element) => formValues[getConsentOptionalKey(purpose.purposeId, element.name)] !== "false" && hasInvalidConsentModification(purpose.purposeId, element, formValues)));
35
+ var isConsentApprovalBlocked_default = isConsentApprovalBlocked;
36
+
37
+ //#endregion
38
+ export { isConsentApprovalBlocked_default as default };
39
+ //# sourceMappingURL=isConsentApprovalBlocked.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentApprovalBlocked.js","names":[],"sources":["../../src/utils/isConsentApprovalBlocked.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n type ConsentDetailRow,\n type ConsentPurposeData,\n getConsentInvalidKey,\n type PromptElement,\n} from '@thunderid/browser';\nimport {getConsentOptionalKey} from '../components/auth/flow/ConsentCheckboxList';\n\n/**\n * Reports whether any field the user may modify on an authorization detail element shows text that cannot\n * be submitted. The element must not be approved while this holds, since its decision would not carry what\n * the user sees.\n *\n * @param purposeId - The identifier of the consent purpose the element belongs to.\n * @param element - The authorization detail element.\n * @param inputs - Form values, holding the invalid marker of each field under its invalid key.\n * @returns Whether a field of the element is invalid.\n *\n * @example\n * ```typescript\n * hasInvalidConsentModification('p1', element, {'__consent_invalid__p1__d-1__amount': 'true'}) // returns true\n * ```\n */\nconst hasInvalidConsentModification = (\n purposeId: string,\n element: PromptElement,\n inputs: Record<string, unknown>,\n): boolean =>\n (element.rows ?? []).some(\n (row: ConsentDetailRow) =>\n Boolean(row.modification) && inputs[getConsentInvalidKey(purposeId, element.name, row.path)] === 'true',\n );\n\n/**\n * Reports whether the consent cannot be approved yet: an authorization detail the user has not declined\n * shows, in a field the user may modify, text that cannot be submitted. Denying stays possible.\n *\n * @param purposes - The consent purposes on the screen.\n * @param formValues - Form values, holding each element's approval and each field's invalid marker.\n * @returns Whether approval must wait until the user corrects the field.\n *\n * @example\n * ```typescript\n * isConsentApprovalBlocked(purposes, {'__consent_invalid__p1__d-1__amount': 'true'}) // returns true\n * ```\n */\nconst isConsentApprovalBlocked = (purposes: ConsentPurposeData[], formValues: Record<string, unknown>): boolean =>\n purposes.some((purpose: ConsentPurposeData) =>\n (purpose.optional ?? []).some(\n (element: PromptElement) =>\n formValues[getConsentOptionalKey(purpose.purposeId, element.name)] !== 'false' &&\n hasInvalidConsentModification(purpose.purposeId, element, formValues),\n ),\n );\n\nexport default isConsentApprovalBlocked;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BA,MAAM,iCACJ,WACA,SACA,YAEC,QAAQ,QAAQ,EAAE,EAAE,MAClB,QACC,QAAQ,IAAI,aAAa,IAAI,OAAO,qBAAqB,WAAW,QAAQ,MAAM,IAAI,KAAK,MAAM,OACpG;;;;;;;;;;;;;;AAeH,MAAM,4BAA4B,UAAgC,eAChE,SAAS,MAAM,aACZ,QAAQ,YAAY,EAAE,EAAE,MACtB,YACC,WAAW,sBAAsB,QAAQ,WAAW,QAAQ,KAAK,MAAM,WACvE,8BAA8B,QAAQ,WAAW,SAAS,WAAW,CACxE,CACF;AAEH,uCAAe"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Whether a field value is a list of plain values, strings, numbers or booleans, which a consent screen shows
3
+ * as a list rather than as structured JSON.
4
+ *
5
+ * @param value - Field value.
6
+ * @returns `true` when the value is a list of plain values.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * isConsentDetailPlainList(['initiate', 'status']) // returns true
11
+ * ```
12
+ */
13
+ declare const isConsentDetailPlainList: (value: unknown) => value is (string | number | boolean)[];
14
+ export default isConsentDetailPlainList;
15
+ //# sourceMappingURL=isConsentDetailPlainList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailPlainList.d.ts","sourceRoot":"","sources":["../../src/utils/isConsentDetailPlainList.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EACwB,CAAC;AAEhH,eAAe,wBAAwB,CAAC"}
@@ -0,0 +1,23 @@
1
+ //#region src/utils/isConsentDetailPlainList.ts
2
+ /**
3
+ * Whether a field value is a list of plain values, strings, numbers or booleans, which a consent screen shows
4
+ * as a list rather than as structured JSON.
5
+ *
6
+ * @param value - Field value.
7
+ * @returns `true` when the value is a list of plain values.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * isConsentDetailPlainList(['initiate', 'status']) // returns true
12
+ * ```
13
+ */
14
+ const isConsentDetailPlainList = (value) => Array.isArray(value) && value.every((item) => [
15
+ "string",
16
+ "number",
17
+ "boolean"
18
+ ].includes(typeof item));
19
+ var isConsentDetailPlainList_default = isConsentDetailPlainList;
20
+
21
+ //#endregion
22
+ export { isConsentDetailPlainList_default as default };
23
+ //# sourceMappingURL=isConsentDetailPlainList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailPlainList.js","names":[],"sources":["../../src/utils/isConsentDetailPlainList.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * Whether a field value is a list of plain values, strings, numbers or booleans, which a consent screen shows\n * as a list rather than as structured JSON.\n *\n * @param value - Field value.\n * @returns `true` when the value is a list of plain values.\n *\n * @example\n * ```typescript\n * isConsentDetailPlainList(['initiate', 'status']) // returns true\n * ```\n */\nconst isConsentDetailPlainList = (value: unknown): value is (string | number | boolean)[] =>\n Array.isArray(value) && value.every((item: unknown) => ['string', 'number', 'boolean'].includes(typeof item));\n\nexport default isConsentDetailPlainList;\n"],"mappings":";;;;;;;;;;;;;AAeA,MAAM,4BAA4B,UAChC,MAAM,QAAQ,MAAM,IAAI,MAAM,OAAO,SAAkB;CAAC;CAAU;CAAU;CAAU,CAAC,SAAS,OAAO,KAAK,CAAC;AAE/G,uCAAe"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Whether a field value is structured JSON, an object or a list holding objects, rather than a plain
3
+ * value or a list of plain values.
4
+ *
5
+ * @param value - Field value.
6
+ * @returns `true` when the value is shown as a formatted JSON block.
7
+ */
8
+ declare const isConsentDetailStructured: (value: unknown) => boolean;
9
+ export default isConsentDetailStructured;
10
+ //# sourceMappingURL=isConsentDetailStructured.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailStructured.d.ts","sourceRoot":"","sources":["../../src/utils/isConsentDetailStructured.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,QAAA,MAAM,yBAAyB,GAAI,OAAO,OAAO,KAAG,OAEgD,CAAC;AAErG,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,14 @@
1
+ //#region src/utils/isConsentDetailStructured.ts
2
+ /**
3
+ * Whether a field value is structured JSON, an object or a list holding objects, rather than a plain
4
+ * value or a list of plain values.
5
+ *
6
+ * @param value - Field value.
7
+ * @returns `true` when the value is shown as a formatted JSON block.
8
+ */
9
+ const isConsentDetailStructured = (value) => typeof value === "object" && value !== null && !Array.isArray(value) || Array.isArray(value) && value.some((item) => typeof item === "object" && item !== null);
10
+ var isConsentDetailStructured_default = isConsentDetailStructured;
11
+
12
+ //#endregion
13
+ export { isConsentDetailStructured_default as default };
14
+ //# sourceMappingURL=isConsentDetailStructured.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailStructured.js","names":[],"sources":["../../src/utils/isConsentDetailStructured.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * Whether a field value is structured JSON, an object or a list holding objects, rather than a plain\n * value or a list of plain values.\n *\n * @param value - Field value.\n * @returns `true` when the value is shown as a formatted JSON block.\n */\nconst isConsentDetailStructured = (value: unknown): boolean =>\n (typeof value === 'object' && value !== null && !Array.isArray(value)) ||\n (Array.isArray(value) && value.some((item: unknown) => typeof item === 'object' && item !== null));\n\nexport default isConsentDetailStructured;\n"],"mappings":";;;;;;;;AAUA,MAAM,6BAA6B,UAChC,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,MAAM,IACpE,MAAM,QAAQ,MAAM,IAAI,MAAM,MAAM,SAAkB,OAAO,SAAS,YAAY,SAAS,KAAK;AAEnG,wCAAe"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Whether authorization detail text is long enough to be clamped behind a toggle: longer than `maxChars`, or
3
+ * spanning more than `maxLines` lines.
4
+ *
5
+ * @param text - Text to show.
6
+ * @param maxChars - Number of characters above which the text is clamped, such as
7
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.valueChars`.
8
+ * @param maxLines - Number of lines above which the text is clamped, such as
9
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.valueLines`.
10
+ * @returns `true` when the text is clamped while collapsed.
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * isConsentDetailTextClamped('Merchant A', CONSENT_DETAIL_DISPLAY_LIMITS.valueChars, CONSENT_DETAIL_DISPLAY_LIMITS.valueLines)
15
+ * // returns false
16
+ * ```
17
+ */
18
+ declare const isConsentDetailTextClamped: (text: string, maxChars: number, maxLines: number) => boolean;
19
+ export default isConsentDetailTextClamped;
20
+ //# sourceMappingURL=isConsentDetailTextClamped.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailTextClamped.d.ts","sourceRoot":"","sources":["../../src/utils/isConsentDetailTextClamped.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;GAgBG;AACH,QAAA,MAAM,0BAA0B,GAAI,MAAM,MAAM,EAAE,UAAU,MAAM,EAAE,UAAU,MAAM,KAAG,OACzB,CAAC;AAE/D,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,24 @@
1
+ //#region src/utils/isConsentDetailTextClamped.ts
2
+ /**
3
+ * Whether authorization detail text is long enough to be clamped behind a toggle: longer than `maxChars`, or
4
+ * spanning more than `maxLines` lines.
5
+ *
6
+ * @param text - Text to show.
7
+ * @param maxChars - Number of characters above which the text is clamped, such as
8
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.valueChars`.
9
+ * @param maxLines - Number of lines above which the text is clamped, such as
10
+ * `CONSENT_DETAIL_DISPLAY_LIMITS.valueLines`.
11
+ * @returns `true` when the text is clamped while collapsed.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * isConsentDetailTextClamped('Merchant A', CONSENT_DETAIL_DISPLAY_LIMITS.valueChars, CONSENT_DETAIL_DISPLAY_LIMITS.valueLines)
16
+ * // returns false
17
+ * ```
18
+ */
19
+ const isConsentDetailTextClamped = (text, maxChars, maxLines) => text.length > maxChars || text.split("\n").length > maxLines;
20
+ var isConsentDetailTextClamped_default = isConsentDetailTextClamped;
21
+
22
+ //#endregion
23
+ export { isConsentDetailTextClamped_default as default };
24
+ //# sourceMappingURL=isConsentDetailTextClamped.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isConsentDetailTextClamped.js","names":[],"sources":["../../src/utils/isConsentDetailTextClamped.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * Whether authorization detail text is long enough to be clamped behind a toggle: longer than `maxChars`, or\n * spanning more than `maxLines` lines.\n *\n * @param text - Text to show.\n * @param maxChars - Number of characters above which the text is clamped, such as\n * `CONSENT_DETAIL_DISPLAY_LIMITS.valueChars`.\n * @param maxLines - Number of lines above which the text is clamped, such as\n * `CONSENT_DETAIL_DISPLAY_LIMITS.valueLines`.\n * @returns `true` when the text is clamped while collapsed.\n *\n * @example\n * ```typescript\n * isConsentDetailTextClamped('Merchant A', CONSENT_DETAIL_DISPLAY_LIMITS.valueChars, CONSENT_DETAIL_DISPLAY_LIMITS.valueLines)\n * // returns false\n * ```\n */\nconst isConsentDetailTextClamped = (text: string, maxChars: number, maxLines: number): boolean =>\n text.length > maxChars || text.split('\\n').length > maxLines;\n\nexport default isConsentDetailTextClamped;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAoBA,MAAM,8BAA8B,MAAc,UAAkB,aAClE,KAAK,SAAS,YAAY,KAAK,MAAM,KAAK,CAAC,SAAS;AAEtD,yCAAe"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thunderid/react",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "description": "React SDK for ThunderID",
5
5
  "keywords": [
6
6
  "thunderid",
@@ -60,7 +60,7 @@
60
60
  "dependencies": {
61
61
  "@emotion/css": "11.13.5",
62
62
  "@floating-ui/react": "0.27.12",
63
- "@thunderid/browser": "^1.5.0",
63
+ "@thunderid/browser": "^1.7.0",
64
64
  "dompurify": "3.4.17",
65
65
  "tslib": "2.8.1"
66
66
  },
@@ -1,26 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceMutation = require('../useResourceMutation.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useCreateAgent.ts
8
- /**
9
- * Creates an agent, then refetches any mounted agent lists.
10
- *
11
- * @param options - Mutation options, including `onSuccess`, `onError`, and a per-hook `fetcher`.
12
- * @returns The mutation state. Call `mutate(payload)` to create.
13
- */
14
- const useCreateAgent = (options) => {
15
- const endpoint = require_useManagementEndpoint.default("agents");
16
- return require_useResourceMutation.default((payload, fetcher) => (0, __thunderid_browser.createAgent)({
17
- ...endpoint,
18
- fetcher,
19
- payload
20
- }), () => [[__thunderid_browser.AgentQueryKeys.AGENTS]], options);
21
- };
22
- var useCreateAgent_default = useCreateAgent;
23
-
24
- //#endregion
25
- exports.default = useCreateAgent_default;
26
- //# sourceMappingURL=useCreateAgent.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCreateAgent.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceMutation","AgentQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useCreateAgent.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {Agent, AgentQueryKeys, CreateAgentRequest, createAgent} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceMutation, {ResourceMutationOptions, ResourceMutationResult} from '../useResourceMutation';\n\n/**\n * Creates an agent, then refetches any mounted agent lists.\n *\n * @param options - Mutation options, including `onSuccess`, `onError`, and a per-hook `fetcher`.\n * @returns The mutation state. Call `mutate(payload)` to create.\n */\nconst useCreateAgent = (\n options?: ResourceMutationOptions<Agent, CreateAgentRequest>,\n): ResourceMutationResult<Agent, CreateAgentRequest> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agents');\n\n return useResourceMutation(\n (payload: CreateAgentRequest, fetcher) => createAgent({...endpoint, fetcher, payload}),\n () => [[AgentQueryKeys.AGENTS]],\n options,\n );\n};\n\nexport default useCreateAgent;\n"],"mappings":";;;;;;;;;;;;;AAaA,MAAM,kBACJ,YACsD;CACtD,MAAMA,WAA+BC,sCAAsB,SAAS;AAEpE,QAAOC,qCACJ,SAA6B,iDAAwB;EAAC,GAAG;EAAU;EAAS;EAAQ,CAAC,QAChF,CAAC,CAACC,mCAAe,OAAO,CAAC,EAC/B,QACD;;AAGH,6BAAe"}
@@ -1,26 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceMutation = require('../useResourceMutation.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useDeleteAgent.ts
8
- /**
9
- * Deletes an agent, then refetches any mounted agent lists.
10
- *
11
- * @param options - Mutation options, including `onSuccess`, `onError`, and a per-hook `fetcher`.
12
- * @returns The mutation state. Call `mutate(agentId)` to delete.
13
- */
14
- const useDeleteAgent = (options) => {
15
- const endpoint = require_useManagementEndpoint.default("agents");
16
- return require_useResourceMutation.default((agentId, fetcher) => (0, __thunderid_browser.deleteAgent)({
17
- ...endpoint,
18
- agentId,
19
- fetcher
20
- }), () => [[__thunderid_browser.AgentQueryKeys.AGENTS]], options);
21
- };
22
- var useDeleteAgent_default = useDeleteAgent;
23
-
24
- //#endregion
25
- exports.default = useDeleteAgent_default;
26
- //# sourceMappingURL=useDeleteAgent.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDeleteAgent.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceMutation","AgentQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useDeleteAgent.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {AgentQueryKeys, deleteAgent} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceMutation, {ResourceMutationOptions, ResourceMutationResult} from '../useResourceMutation';\n\n/**\n * Deletes an agent, then refetches any mounted agent lists.\n *\n * @param options - Mutation options, including `onSuccess`, `onError`, and a per-hook `fetcher`.\n * @returns The mutation state. Call `mutate(agentId)` to delete.\n */\nconst useDeleteAgent = (options?: ResourceMutationOptions<void, string>): ResourceMutationResult<void, string> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agents');\n\n return useResourceMutation(\n (agentId: string, fetcher) => deleteAgent({...endpoint, agentId, fetcher}),\n () => [[AgentQueryKeys.AGENTS]],\n options,\n );\n};\n\nexport default useDeleteAgent;\n"],"mappings":";;;;;;;;;;;;;AAaA,MAAM,kBAAkB,YAA0F;CAChH,MAAMA,WAA+BC,sCAAsB,SAAS;AAEpE,QAAOC,qCACJ,SAAiB,iDAAwB;EAAC,GAAG;EAAU;EAAS;EAAQ,CAAC,QACpE,CAAC,CAACC,mCAAe,OAAO,CAAC,EAC/B,QACD;;AAGH,6BAAe"}
@@ -1,30 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceQuery = require('../useResourceQuery.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useGetAgent.ts
8
- /**
9
- * Fetches a single agent. Does nothing until `agentId` is set.
10
- *
11
- * @param agentId - Identifier of the agent.
12
- * @param options - Query options, including a per-hook `fetcher`.
13
- * @returns The query state.
14
- */
15
- const useGetAgent = (agentId, options) => {
16
- const endpoint = require_useManagementEndpoint.default("agents");
17
- return require_useResourceQuery.default([__thunderid_browser.AgentQueryKeys.AGENT, agentId], (fetcher) => (0, __thunderid_browser.getAgent)({
18
- ...endpoint,
19
- agentId,
20
- fetcher
21
- }), {
22
- ...options,
23
- enabled: Boolean(agentId) && options?.enabled !== false
24
- });
25
- };
26
- var useGetAgent_default = useGetAgent;
27
-
28
- //#endregion
29
- exports.default = useGetAgent_default;
30
- //# sourceMappingURL=useGetAgent.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGetAgent.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceQuery","AgentQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useGetAgent.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {Agent, AgentQueryKeys, getAgent} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceQuery, {ResourceQueryOptions, ResourceQueryResult} from '../useResourceQuery';\n\n/**\n * Fetches a single agent. Does nothing until `agentId` is set.\n *\n * @param agentId - Identifier of the agent.\n * @param options - Query options, including a per-hook `fetcher`.\n * @returns The query state.\n */\nconst useGetAgent = (agentId: string | undefined, options?: ResourceQueryOptions): ResourceQueryResult<Agent> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agents');\n\n return useResourceQuery(\n [AgentQueryKeys.AGENT, agentId],\n (fetcher) => getAgent({...endpoint, agentId: agentId!, fetcher}),\n {...options, enabled: Boolean(agentId) && options?.enabled !== false},\n );\n};\n\nexport default useGetAgent;\n"],"mappings":";;;;;;;;;;;;;;AAcA,MAAM,eAAe,SAA6B,YAA+D;CAC/G,MAAMA,WAA+BC,sCAAsB,SAAS;AAEpE,QAAOC,iCACL,CAACC,mCAAe,OAAO,QAAQ,GAC9B,8CAAqB;EAAC,GAAG;EAAmB;EAAU;EAAQ,CAAC,EAChE;EAAC,GAAG;EAAS,SAAS,QAAQ,QAAQ,IAAI,SAAS,YAAY;EAAM,CACtE;;AAGH,0BAAe"}
@@ -1,41 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceQuery = require('../useResourceQuery.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useGetAgentGroups.ts
8
- /**
9
- * Fetches a page of the groups an agent belongs to.
10
- *
11
- * @param agentId - Identifier of the agent. Fetching waits until it is defined.
12
- * @param params - Pagination parameters.
13
- * @param options - Query options, including a per-hook `fetcher`.
14
- * @returns The query state.
15
- */
16
- const useGetAgentGroups = (agentId, { limit, offset } = {}, options) => {
17
- const endpoint = require_useManagementEndpoint.default("agents");
18
- return require_useResourceQuery.default([
19
- __thunderid_browser.GroupQueryKeys.MEMBERSHIPS,
20
- "agent",
21
- agentId,
22
- {
23
- limit,
24
- offset
25
- }
26
- ], (fetcher) => (0, __thunderid_browser.getAgentGroups)({
27
- ...endpoint,
28
- fetcher,
29
- limit,
30
- offset,
31
- agentId
32
- }), {
33
- ...options,
34
- enabled: Boolean(agentId) && options?.enabled !== false
35
- });
36
- };
37
- var useGetAgentGroups_default = useGetAgentGroups;
38
-
39
- //#endregion
40
- exports.default = useGetAgentGroups_default;
41
- //# sourceMappingURL=useGetAgentGroups.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGetAgentGroups.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceQuery","GroupQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useGetAgentGroups.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {GroupQueryKeys, MembershipGroupListResponse, getAgentGroups} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceQuery, {ResourceQueryOptions, ResourceQueryResult} from '../useResourceQuery';\n\n/**\n * Fetches a page of the groups an agent belongs to.\n *\n * @param agentId - Identifier of the agent. Fetching waits until it is defined.\n * @param params - Pagination parameters.\n * @param options - Query options, including a per-hook `fetcher`.\n * @returns The query state.\n */\nconst useGetAgentGroups = (\n agentId: string | undefined,\n {limit, offset}: {limit?: number; offset?: number} = {},\n options?: ResourceQueryOptions,\n): ResourceQueryResult<MembershipGroupListResponse> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agents');\n\n return useResourceQuery(\n [GroupQueryKeys.MEMBERSHIPS, 'agent', agentId, {limit, offset}],\n (fetcher) => getAgentGroups({...endpoint, fetcher, limit, offset, agentId: agentId!}),\n {...options, enabled: Boolean(agentId) && options?.enabled !== false},\n );\n};\n\nexport default useGetAgentGroups;\n"],"mappings":";;;;;;;;;;;;;;;AAeA,MAAM,qBACJ,SACA,EAAC,OAAO,WAA6C,EAAE,EACvD,YACqD;CACrD,MAAMA,WAA+BC,sCAAsB,SAAS;AAEpE,QAAOC,iCACL;EAACC,mCAAe;EAAa;EAAS;EAAS;GAAC;GAAO;GAAO;EAAC,GAC9D,oDAA2B;EAAC,GAAG;EAAU;EAAS;EAAO;EAAiB;EAAS,CAAC,EACrF;EAAC,GAAG;EAAS,SAAS,QAAQ,QAAQ,IAAI,SAAS,YAAY;EAAM,CACtE;;AAGH,gCAAe"}
@@ -1,42 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceQuery = require('../useResourceQuery.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useGetAgentRoles.ts
8
- /**
9
- * Fetches a page of the role names assigned to an agent, directly or through its groups. Refetches
10
- * whenever a role assignment or a group membership changes.
11
- *
12
- * @param agentId - Identifier of the agent. Fetching waits until it is defined.
13
- * @param params - Pagination parameters.
14
- * @param options - Query options, including a per-hook `fetcher`.
15
- * @returns The query state.
16
- */
17
- const useGetAgentRoles = (agentId, { limit, offset } = {}, options) => {
18
- const endpoint = require_useManagementEndpoint.default("agents");
19
- return require_useResourceQuery.default([
20
- __thunderid_browser.RoleQueryKeys.ROLE_ASSIGNMENTS,
21
- "agent",
22
- agentId,
23
- {
24
- limit,
25
- offset
26
- }
27
- ], (fetcher) => (0, __thunderid_browser.getAgentRoles)({
28
- ...endpoint,
29
- agentId,
30
- fetcher,
31
- limit,
32
- offset
33
- }), {
34
- ...options,
35
- enabled: Boolean(agentId) && options?.enabled !== false
36
- });
37
- };
38
- var useGetAgentRoles_default = useGetAgentRoles;
39
-
40
- //#endregion
41
- exports.default = useGetAgentRoles_default;
42
- //# sourceMappingURL=useGetAgentRoles.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGetAgentRoles.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceQuery","RoleQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useGetAgentRoles.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {AgentRoleListResponse, RoleQueryKeys, getAgentRoles} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceQuery, {ResourceQueryOptions, ResourceQueryResult} from '../useResourceQuery';\n\n/**\n * Fetches a page of the role names assigned to an agent, directly or through its groups. Refetches\n * whenever a role assignment or a group membership changes.\n *\n * @param agentId - Identifier of the agent. Fetching waits until it is defined.\n * @param params - Pagination parameters.\n * @param options - Query options, including a per-hook `fetcher`.\n * @returns The query state.\n */\nconst useGetAgentRoles = (\n agentId: string | undefined,\n {limit, offset}: {limit?: number; offset?: number} = {},\n options?: ResourceQueryOptions,\n): ResourceQueryResult<AgentRoleListResponse> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agents');\n\n return useResourceQuery(\n [RoleQueryKeys.ROLE_ASSIGNMENTS, 'agent', agentId, {limit, offset}],\n (fetcher) => getAgentRoles({...endpoint, agentId: agentId!, fetcher, limit, offset}),\n {...options, enabled: Boolean(agentId) && options?.enabled !== false},\n );\n};\n\nexport default useGetAgentRoles;\n"],"mappings":";;;;;;;;;;;;;;;;AAgBA,MAAM,oBACJ,SACA,EAAC,OAAO,WAA6C,EAAE,EACvD,YAC+C;CAC/C,MAAMA,WAA+BC,sCAAsB,SAAS;AAEpE,QAAOC,iCACL;EAACC,kCAAc;EAAkB;EAAS;EAAS;GAAC;GAAO;GAAO;EAAC,GAClE,mDAA0B;EAAC,GAAG;EAAmB;EAAU;EAAS;EAAO;EAAO,CAAC,EACpF;EAAC,GAAG;EAAS,SAAS,QAAQ,QAAQ,IAAI,SAAS,YAAY;EAAM,CACtE;;AAGH,+BAAe"}
@@ -1,31 +0,0 @@
1
- const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
- const require_useManagementEndpoint = require('../useManagementEndpoint.cjs');
3
- const require_useResourceQuery = require('../useResourceQuery.cjs');
4
- let __thunderid_browser = require("@thunderid/browser");
5
- __thunderid_browser = require_rolldown_runtime.__toESM(__thunderid_browser);
6
-
7
- //#region src/hooks/management/agents/useGetAgentTypes.ts
8
- /**
9
- * Fetches a page of agent types.
10
- *
11
- * @param params - Pagination parameters.
12
- * @param options - Query options, including a per-hook `fetcher`.
13
- * @returns The query state.
14
- */
15
- const useGetAgentTypes = ({ limit, offset } = {}, options) => {
16
- const endpoint = require_useManagementEndpoint.default("agentTypes");
17
- return require_useResourceQuery.default([__thunderid_browser.AgentQueryKeys.AGENT_TYPES, {
18
- limit,
19
- offset
20
- }], (fetcher) => (0, __thunderid_browser.getAgentTypes)({
21
- ...endpoint,
22
- fetcher,
23
- limit,
24
- offset
25
- }), options);
26
- };
27
- var useGetAgentTypes_default = useGetAgentTypes;
28
-
29
- //#endregion
30
- exports.default = useGetAgentTypes_default;
31
- //# sourceMappingURL=useGetAgentTypes.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useGetAgentTypes.cjs","names":["endpoint: ManagementEndpoint","useManagementEndpoint","useResourceQuery","AgentQueryKeys"],"sources":["../../../../../src/hooks/management/agents/useGetAgentTypes.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {AgentQueryKeys, AgentTypeListResponse, getAgentTypes} from '@thunderid/browser';\nimport useManagementEndpoint, {ManagementEndpoint} from '../useManagementEndpoint';\nimport useResourceQuery, {ResourceQueryOptions, ResourceQueryResult} from '../useResourceQuery';\n\n/**\n * Fetches a page of agent types.\n *\n * @param params - Pagination parameters.\n * @param options - Query options, including a per-hook `fetcher`.\n * @returns The query state.\n */\nconst useGetAgentTypes = (\n {limit, offset}: {limit?: number; offset?: number} = {},\n options?: ResourceQueryOptions,\n): ResourceQueryResult<AgentTypeListResponse> => {\n const endpoint: ManagementEndpoint = useManagementEndpoint('agentTypes');\n\n return useResourceQuery(\n [AgentQueryKeys.AGENT_TYPES, {limit, offset}],\n (fetcher) => getAgentTypes({...endpoint, fetcher, limit, offset}),\n options,\n );\n};\n\nexport default useGetAgentTypes;\n"],"mappings":";;;;;;;;;;;;;;AAcA,MAAM,oBACJ,EAAC,OAAO,WAA6C,EAAE,EACvD,YAC+C;CAC/C,MAAMA,WAA+BC,sCAAsB,aAAa;AAExE,QAAOC,iCACL,CAACC,mCAAe,aAAa;EAAC;EAAO;EAAO,CAAC,GAC5C,mDAA0B;EAAC,GAAG;EAAU;EAAS;EAAO;EAAO,CAAC,EACjE,QACD;;AAGH,+BAAe"}