@workos-inc/widgets 1.4.2 → 1.5.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 (866) hide show
  1. package/dist/cjs/admin-portal-domain-verification.client.cjs +115 -0
  2. package/dist/cjs/admin-portal-domain-verification.client.cjs.map +1 -0
  3. package/dist/cjs/admin-portal-domain-verification.client.d.cts +14 -0
  4. package/dist/cjs/admin-portal-sso-connection-client.cjs +269 -0
  5. package/dist/cjs/admin-portal-sso-connection-client.cjs.map +1 -0
  6. package/dist/cjs/admin-portal-sso-connection-client.d.cts +12 -0
  7. package/dist/cjs/api/api-provider.cjs +118 -0
  8. package/dist/cjs/api/api-provider.cjs.map +1 -0
  9. package/dist/cjs/api/api-provider.d.cts +31 -0
  10. package/dist/cjs/api/constants.cjs +29 -0
  11. package/dist/cjs/api/constants.cjs.map +1 -0
  12. package/dist/cjs/api/constants.d.cts +3 -0
  13. package/dist/cjs/api/endpoint.cjs +1648 -0
  14. package/dist/cjs/api/endpoint.cjs.map +1 -0
  15. package/dist/cjs/api/endpoint.d.cts +1687 -0
  16. package/dist/cjs/api/errors.cjs +57 -0
  17. package/dist/cjs/api/errors.cjs.map +1 -0
  18. package/dist/cjs/api/{errors.d.ts → errors.d.cts} +5 -5
  19. package/dist/cjs/api/utils.cjs +68 -0
  20. package/dist/cjs/api/utils.cjs.map +1 -0
  21. package/dist/cjs/api/utils.d.cts +11 -0
  22. package/dist/cjs/api/widgets-api-client.cjs +86 -0
  23. package/dist/cjs/api/widgets-api-client.cjs.map +1 -0
  24. package/dist/cjs/api/{widgets-api-client.d.ts → widgets-api-client.d.cts} +8 -7
  25. package/dist/cjs/api-keys-client.cjs +82 -0
  26. package/dist/cjs/api-keys-client.cjs.map +1 -0
  27. package/dist/cjs/api-keys-client.d.cts +10 -0
  28. package/dist/cjs/card-list.cjs +47 -0
  29. package/dist/cjs/card-list.cjs.map +1 -0
  30. package/dist/cjs/card-list.d.cts +9 -0
  31. package/dist/cjs/index.cjs +67 -0
  32. package/dist/cjs/index.cjs.map +1 -0
  33. package/dist/cjs/index.d.cts +26 -0
  34. package/dist/cjs/lib/add-mfa-dialog.cjs +335 -0
  35. package/dist/cjs/lib/add-mfa-dialog.cjs.map +1 -0
  36. package/dist/cjs/lib/add-mfa-dialog.d.cts +11 -0
  37. package/dist/cjs/lib/admin-portal-domain-verification.cjs +126 -0
  38. package/dist/cjs/lib/admin-portal-domain-verification.cjs.map +1 -0
  39. package/dist/cjs/lib/admin-portal-domain-verification.d.cts +20 -0
  40. package/dist/cjs/lib/admin-portal-sso-connection.cjs +334 -0
  41. package/dist/cjs/lib/admin-portal-sso-connection.cjs.map +1 -0
  42. package/dist/cjs/lib/admin-portal-sso-connection.d.cts +42 -0
  43. package/dist/cjs/lib/api/api-key.cjs +65 -0
  44. package/dist/cjs/lib/api/api-key.cjs.map +1 -0
  45. package/dist/cjs/lib/api/api-key.d.cts +16 -0
  46. package/dist/cjs/lib/api/config.cjs +38 -0
  47. package/dist/cjs/lib/api/config.cjs.map +1 -0
  48. package/dist/cjs/lib/api/{config.d.ts → config.d.cts} +4 -3
  49. package/dist/cjs/lib/api/user.cjs +113 -0
  50. package/dist/cjs/lib/api/user.cjs.map +1 -0
  51. package/dist/cjs/lib/api/user.d.cts +26 -0
  52. package/dist/cjs/lib/api-keys/api-key-details-card.cjs +61 -0
  53. package/dist/cjs/lib/api-keys/api-key-details-card.cjs.map +1 -0
  54. package/dist/cjs/lib/api-keys/api-key-details-card.d.cts +11 -0
  55. package/dist/cjs/lib/api-keys/api-key-details-dialog.cjs +79 -0
  56. package/dist/cjs/lib/api-keys/api-key-details-dialog.cjs.map +1 -0
  57. package/dist/cjs/lib/api-keys/api-key-details-dialog.d.cts +13 -0
  58. package/dist/cjs/lib/api-keys/api-keys-context.cjs +85 -0
  59. package/dist/cjs/lib/api-keys/api-keys-context.cjs.map +1 -0
  60. package/dist/cjs/lib/api-keys/api-keys-context.d.cts +19 -0
  61. package/dist/cjs/lib/api-keys/api-keys-search-provider.cjs +79 -0
  62. package/dist/cjs/lib/api-keys/api-keys-search-provider.cjs.map +1 -0
  63. package/dist/cjs/lib/api-keys/api-keys-search-provider.d.cts +12 -0
  64. package/dist/cjs/lib/api-keys/api-keys-search.cjs +99 -0
  65. package/dist/cjs/lib/api-keys/api-keys-search.cjs.map +1 -0
  66. package/dist/cjs/lib/api-keys/api-keys-search.d.cts +6 -0
  67. package/dist/cjs/lib/api-keys/api-keys-state.cjs +157 -0
  68. package/dist/cjs/lib/api-keys/api-keys-state.cjs.map +1 -0
  69. package/dist/cjs/lib/api-keys/api-keys-state.d.cts +31 -0
  70. package/dist/cjs/lib/api-keys/api-keys-table.cjs +180 -0
  71. package/dist/cjs/lib/api-keys/api-keys-table.cjs.map +1 -0
  72. package/dist/cjs/lib/api-keys/api-keys-table.d.cts +10 -0
  73. package/dist/cjs/lib/api-keys/api-keys.cjs +111 -0
  74. package/dist/cjs/lib/api-keys/api-keys.cjs.map +1 -0
  75. package/dist/cjs/lib/api-keys/api-keys.d.cts +11 -0
  76. package/dist/cjs/lib/api-keys/create-api-key.cjs +365 -0
  77. package/dist/cjs/lib/api-keys/create-api-key.cjs.map +1 -0
  78. package/dist/cjs/lib/api-keys/create-api-key.d.cts +6 -0
  79. package/dist/cjs/lib/api-keys/relative-time.cjs +42 -0
  80. package/dist/cjs/lib/api-keys/relative-time.cjs.map +1 -0
  81. package/dist/cjs/lib/api-keys/relative-time.d.cts +7 -0
  82. package/dist/cjs/lib/api-keys/revoke-api-key-dialog.cjs +86 -0
  83. package/dist/cjs/lib/api-keys/revoke-api-key-dialog.cjs.map +1 -0
  84. package/dist/cjs/lib/api-keys/revoke-api-key-dialog.d.cts +12 -0
  85. package/dist/cjs/lib/api-keys/skeleton-table.cjs +39 -0
  86. package/dist/cjs/lib/api-keys/skeleton-table.cjs.map +1 -0
  87. package/dist/cjs/lib/api-keys/skeleton-table.d.cts +9 -0
  88. package/dist/cjs/lib/change-password-dialog.cjs +238 -0
  89. package/dist/cjs/lib/change-password-dialog.cjs.map +1 -0
  90. package/dist/cjs/lib/change-password-dialog.d.cts +10 -0
  91. package/dist/cjs/lib/constants.cjs +35 -0
  92. package/dist/cjs/lib/constants.cjs.map +1 -0
  93. package/dist/cjs/lib/constants.d.cts +5 -0
  94. package/dist/cjs/lib/copy-button.cjs +74 -0
  95. package/dist/cjs/lib/copy-button.cjs.map +1 -0
  96. package/dist/cjs/lib/copy-button.d.cts +10 -0
  97. package/dist/cjs/lib/delete-domain-dialog.cjs +72 -0
  98. package/dist/cjs/lib/delete-domain-dialog.cjs.map +1 -0
  99. package/dist/cjs/lib/delete-domain-dialog.d.cts +16 -0
  100. package/dist/cjs/lib/delete-user-dialog.cjs +96 -0
  101. package/dist/cjs/lib/delete-user-dialog.cjs.map +1 -0
  102. package/dist/cjs/lib/delete-user-dialog.d.cts +16 -0
  103. package/dist/cjs/lib/domain-actions.cjs +89 -0
  104. package/dist/cjs/lib/domain-actions.cjs.map +1 -0
  105. package/dist/cjs/lib/domain-actions.d.cts +13 -0
  106. package/dist/cjs/lib/domain-item.cjs +86 -0
  107. package/dist/cjs/lib/domain-item.cjs.map +1 -0
  108. package/dist/cjs/lib/domain-item.d.cts +13 -0
  109. package/dist/cjs/lib/edit-user-profile-dialog.cjs +170 -0
  110. package/dist/cjs/lib/edit-user-profile-dialog.cjs.map +1 -0
  111. package/dist/cjs/lib/edit-user-profile-dialog.d.cts +14 -0
  112. package/dist/cjs/lib/edit-user-role-dialog.cjs +321 -0
  113. package/dist/cjs/lib/edit-user-role-dialog.cjs.map +1 -0
  114. package/dist/cjs/lib/edit-user-role-dialog.d.cts +27 -0
  115. package/dist/cjs/lib/elements.cjs +396 -0
  116. package/dist/cjs/lib/elements.cjs.map +1 -0
  117. package/dist/cjs/lib/elements.d.cts +47 -0
  118. package/dist/cjs/lib/elevated-access.cjs +208 -0
  119. package/dist/cjs/lib/elevated-access.cjs.map +1 -0
  120. package/dist/cjs/lib/elevated-access.d.cts +10 -0
  121. package/dist/cjs/lib/empty-state.cjs +39 -0
  122. package/dist/cjs/lib/empty-state.cjs.map +1 -0
  123. package/dist/cjs/lib/empty-state.d.cts +10 -0
  124. package/dist/cjs/lib/error-boundary.cjs +115 -0
  125. package/dist/cjs/lib/error-boundary.cjs.map +1 -0
  126. package/dist/cjs/lib/{error-boundary.d.ts → error-boundary.d.cts} +13 -11
  127. package/dist/cjs/lib/errors.cjs +66 -0
  128. package/dist/cjs/lib/errors.cjs.map +1 -0
  129. package/dist/cjs/lib/{errors.d.ts → errors.d.cts} +6 -6
  130. package/dist/cjs/lib/generic-error.cjs +109 -0
  131. package/dist/cjs/lib/generic-error.cjs.map +1 -0
  132. package/dist/cjs/lib/generic-error.d.cts +7 -0
  133. package/dist/cjs/lib/icon-panel.cjs +53 -0
  134. package/dist/cjs/lib/icon-panel.cjs.map +1 -0
  135. package/dist/cjs/lib/icon-panel.d.cts +8 -0
  136. package/dist/cjs/lib/icons.cjs +51 -0
  137. package/dist/cjs/lib/icons.cjs.map +1 -0
  138. package/dist/cjs/lib/icons.d.cts +6 -0
  139. package/dist/cjs/lib/identity-providers.cjs +111 -0
  140. package/dist/cjs/lib/identity-providers.cjs.map +1 -0
  141. package/dist/cjs/lib/identity-providers.d.cts +7 -0
  142. package/dist/cjs/lib/invite-user-dialog.cjs +277 -0
  143. package/dist/cjs/lib/invite-user-dialog.cjs.map +1 -0
  144. package/dist/cjs/lib/invite-user-dialog.d.cts +9 -0
  145. package/dist/cjs/lib/logout-all-sessions-dialog.cjs +97 -0
  146. package/dist/cjs/lib/logout-all-sessions-dialog.cjs.map +1 -0
  147. package/dist/cjs/lib/logout-all-sessions-dialog.d.cts +11 -0
  148. package/dist/cjs/lib/logout-dialog.cjs +109 -0
  149. package/dist/cjs/lib/logout-dialog.cjs.map +1 -0
  150. package/dist/cjs/lib/logout-dialog.d.cts +14 -0
  151. package/dist/cjs/lib/marker.cjs +56 -0
  152. package/dist/cjs/lib/marker.cjs.map +1 -0
  153. package/dist/cjs/lib/{marker.d.ts → marker.d.cts} +7 -6
  154. package/dist/cjs/lib/name-server-icon.cjs +101 -0
  155. package/dist/cjs/lib/name-server-icon.cjs.map +1 -0
  156. package/dist/cjs/lib/name-server-icon.d.cts +11 -0
  157. package/dist/cjs/lib/oauth-icons.cjs +175 -0
  158. package/dist/cjs/lib/oauth-icons.cjs.map +1 -0
  159. package/dist/cjs/lib/oauth-icons.d.cts +6 -0
  160. package/dist/cjs/lib/organization-switcher.cjs +188 -0
  161. package/dist/cjs/lib/organization-switcher.cjs.map +1 -0
  162. package/dist/cjs/lib/{organization-switcher.d.ts → organization-switcher.d.cts} +12 -8
  163. package/dist/cjs/lib/otp-input.cjs +246 -0
  164. package/dist/cjs/lib/otp-input.cjs.map +1 -0
  165. package/dist/cjs/lib/otp-input.d.cts +22 -0
  166. package/dist/cjs/lib/provider-icon.cjs +69 -0
  167. package/dist/cjs/lib/provider-icon.cjs.map +1 -0
  168. package/dist/cjs/lib/{provider-icon.d.ts → provider-icon.d.cts} +5 -4
  169. package/dist/cjs/lib/resend-invite-dialog.cjs +149 -0
  170. package/dist/cjs/lib/resend-invite-dialog.cjs.map +1 -0
  171. package/dist/cjs/lib/resend-invite-dialog.d.cts +14 -0
  172. package/dist/cjs/lib/reset-mfa-dialog.cjs +111 -0
  173. package/dist/cjs/lib/reset-mfa-dialog.cjs.map +1 -0
  174. package/dist/cjs/lib/reset-mfa-dialog.d.cts +11 -0
  175. package/dist/cjs/lib/revoke-invite-dialog.cjs +103 -0
  176. package/dist/cjs/lib/revoke-invite-dialog.cjs.map +1 -0
  177. package/dist/cjs/lib/revoke-invite-dialog.d.cts +14 -0
  178. package/dist/cjs/lib/save-button.cjs +119 -0
  179. package/dist/cjs/lib/save-button.cjs.map +1 -0
  180. package/dist/cjs/lib/save-button.d.cts +13 -0
  181. package/dist/cjs/lib/search-provider.cjs +79 -0
  182. package/dist/cjs/lib/search-provider.cjs.map +1 -0
  183. package/dist/cjs/lib/search-provider.d.cts +12 -0
  184. package/dist/cjs/lib/set-password-dialog.cjs +165 -0
  185. package/dist/cjs/lib/set-password-dialog.cjs.map +1 -0
  186. package/dist/cjs/lib/set-password-dialog.d.cts +10 -0
  187. package/dist/cjs/lib/status.cjs +72 -0
  188. package/dist/cjs/lib/status.cjs.map +1 -0
  189. package/dist/cjs/lib/status.d.cts +11 -0
  190. package/dist/cjs/lib/use-dialog-close.cjs +53 -0
  191. package/dist/cjs/lib/use-dialog-close.cjs.map +1 -0
  192. package/dist/cjs/lib/use-dialog-close.d.cts +3 -0
  193. package/dist/cjs/lib/use-is-hydrated.cjs +50 -0
  194. package/dist/cjs/lib/use-is-hydrated.cjs.map +1 -0
  195. package/dist/cjs/lib/use-is-hydrated.d.cts +3 -0
  196. package/dist/cjs/lib/use-layout-effect.cjs +31 -0
  197. package/dist/cjs/lib/use-layout-effect.cjs.map +1 -0
  198. package/dist/cjs/lib/{use-layout-effect.d.ts → use-layout-effect.d.cts} +3 -2
  199. package/dist/cjs/lib/use-permissions.cjs +55 -0
  200. package/dist/cjs/lib/use-permissions.cjs.map +1 -0
  201. package/dist/cjs/lib/use-permissions.d.cts +6 -0
  202. package/dist/cjs/lib/use-security-settings.cjs +59 -0
  203. package/dist/cjs/lib/use-security-settings.cjs.map +1 -0
  204. package/dist/cjs/lib/{use-security-settings.d.ts → use-security-settings.d.cts} +3 -3
  205. package/dist/cjs/lib/user-actions-dropdown.cjs +168 -0
  206. package/dist/cjs/lib/user-actions-dropdown.cjs.map +1 -0
  207. package/dist/cjs/lib/user-actions-dropdown.d.cts +13 -0
  208. package/dist/cjs/lib/user-profile.cjs +175 -0
  209. package/dist/cjs/lib/user-profile.cjs.map +1 -0
  210. package/dist/cjs/lib/user-profile.d.cts +15 -0
  211. package/dist/cjs/lib/user-security.cjs +135 -0
  212. package/dist/cjs/lib/user-security.cjs.map +1 -0
  213. package/dist/cjs/lib/user-security.d.cts +15 -0
  214. package/dist/cjs/lib/user-sessions.cjs +178 -0
  215. package/dist/cjs/lib/user-sessions.cjs.map +1 -0
  216. package/dist/cjs/lib/user-sessions.d.cts +16 -0
  217. package/dist/cjs/lib/users-filter.cjs +85 -0
  218. package/dist/cjs/lib/users-filter.cjs.map +1 -0
  219. package/dist/cjs/lib/users-filter.d.cts +13 -0
  220. package/dist/cjs/lib/users-management-context.cjs +81 -0
  221. package/dist/cjs/lib/users-management-context.cjs.map +1 -0
  222. package/dist/cjs/lib/users-management-context.d.cts +19 -0
  223. package/dist/cjs/lib/users-management-state.cjs +154 -0
  224. package/dist/cjs/lib/users-management-state.cjs.map +1 -0
  225. package/dist/cjs/lib/users-management-state.d.cts +26 -0
  226. package/dist/cjs/lib/users-management.cjs +485 -0
  227. package/dist/cjs/lib/users-management.cjs.map +1 -0
  228. package/dist/cjs/lib/users-management.d.cts +22 -0
  229. package/dist/cjs/lib/users-search.cjs +101 -0
  230. package/dist/cjs/lib/users-search.cjs.map +1 -0
  231. package/dist/cjs/lib/users-search.d.cts +6 -0
  232. package/dist/cjs/lib/utils.cjs +148 -0
  233. package/dist/cjs/lib/utils.cjs.map +1 -0
  234. package/dist/cjs/lib/utils.d.cts +31 -0
  235. package/dist/cjs/lib/view-dns-record-dialog.cjs +101 -0
  236. package/dist/cjs/lib/view-dns-record-dialog.cjs.map +1 -0
  237. package/dist/cjs/lib/view-dns-record-dialog.d.cts +16 -0
  238. package/dist/cjs/lib/widgets-context.cjs +59 -0
  239. package/dist/cjs/lib/widgets-context.cjs.map +1 -0
  240. package/dist/cjs/lib/widgets-context.d.cts +15 -0
  241. package/dist/cjs/organization-switcher.client.cjs +81 -0
  242. package/dist/cjs/organization-switcher.client.cjs.map +1 -0
  243. package/dist/cjs/organization-switcher.client.d.cts +15 -0
  244. package/dist/cjs/user-profile.client.cjs +65 -0
  245. package/dist/cjs/user-profile.client.cjs.map +1 -0
  246. package/dist/cjs/user-profile.client.d.cts +14 -0
  247. package/dist/cjs/user-security.client.cjs +67 -0
  248. package/dist/cjs/user-security.client.cjs.map +1 -0
  249. package/dist/cjs/user-security.client.d.cts +14 -0
  250. package/dist/cjs/user-sessions.client.cjs +98 -0
  251. package/dist/cjs/user-sessions.client.cjs.map +1 -0
  252. package/dist/cjs/user-sessions.client.d.cts +18 -0
  253. package/dist/cjs/users-management.client.cjs +88 -0
  254. package/dist/cjs/users-management.client.cjs.map +1 -0
  255. package/dist/cjs/users-management.client.d.cts +14 -0
  256. package/dist/cjs/workos-widgets.client.cjs +106 -0
  257. package/dist/cjs/workos-widgets.client.cjs.map +1 -0
  258. package/dist/cjs/{workos-widgets.client.d.ts → workos-widgets.client.d.cts} +10 -7
  259. package/dist/css/lib/api-keys/api-keys.css +3 -0
  260. package/dist/css/lib/provider-icon.css +87 -9
  261. package/dist/css/styles.css +1 -0
  262. package/dist/esm/admin-portal-domain-verification.client.d.ts +12 -7
  263. package/dist/esm/admin-portal-domain-verification.client.js +87 -53
  264. package/dist/esm/admin-portal-domain-verification.client.js.map +1 -1
  265. package/dist/esm/admin-portal-sso-connection-client.d.ts +10 -7
  266. package/dist/esm/admin-portal-sso-connection-client.js +221 -174
  267. package/dist/esm/admin-portal-sso-connection-client.js.map +1 -1
  268. package/dist/esm/api/api-provider.d.ts +10 -8
  269. package/dist/esm/api/api-provider.js +74 -93
  270. package/dist/esm/api/api-provider.js.map +1 -1
  271. package/dist/esm/api/constants.d.ts +3 -2
  272. package/dist/esm/api/constants.js +4 -1
  273. package/dist/esm/api/constants.js.map +1 -1
  274. package/dist/esm/api/endpoint.d.ts +836 -449
  275. package/dist/esm/api/endpoint.js +1456 -1024
  276. package/dist/esm/api/endpoint.js.map +1 -1
  277. package/dist/esm/api/errors.d.ts +5 -5
  278. package/dist/esm/api/errors.js +27 -30
  279. package/dist/esm/api/errors.js.map +1 -1
  280. package/dist/esm/api/utils.d.ts +6 -5
  281. package/dist/esm/api/utils.js +34 -29
  282. package/dist/esm/api/utils.js.map +1 -1
  283. package/dist/esm/api/widgets-api-client.d.ts +8 -7
  284. package/dist/esm/api/widgets-api-client.js +54 -50
  285. package/dist/esm/api/widgets-api-client.js.map +1 -1
  286. package/dist/esm/api-keys-client.d.ts +10 -0
  287. package/dist/esm/api-keys-client.js +65 -0
  288. package/dist/esm/api-keys-client.js.map +1 -0
  289. package/dist/esm/card-list.d.ts +8 -5
  290. package/dist/esm/card-list.js +18 -5
  291. package/dist/esm/card-list.js.map +1 -1
  292. package/dist/esm/index.d.ts +26 -9
  293. package/dist/esm/index.js +50 -8
  294. package/dist/esm/index.js.map +1 -1
  295. package/dist/esm/lib/add-mfa-dialog.d.ts +7 -5
  296. package/dist/esm/lib/add-mfa-dialog.js +290 -86
  297. package/dist/esm/lib/add-mfa-dialog.js.map +1 -1
  298. package/dist/esm/lib/admin-portal-domain-verification.d.ts +12 -8
  299. package/dist/esm/lib/admin-portal-domain-verification.js +76 -9
  300. package/dist/esm/lib/admin-portal-domain-verification.js.map +1 -1
  301. package/dist/esm/lib/admin-portal-sso-connection.d.ts +14 -12
  302. package/dist/esm/lib/admin-portal-sso-connection.js +277 -150
  303. package/dist/esm/lib/admin-portal-sso-connection.js.map +1 -1
  304. package/dist/esm/lib/api/api-key.d.ts +16 -0
  305. package/dist/esm/lib/api/api-key.js +46 -0
  306. package/dist/esm/lib/api/api-key.js.map +1 -0
  307. package/dist/esm/lib/api/config.d.ts +4 -3
  308. package/dist/esm/lib/api/config.js +11 -7
  309. package/dist/esm/lib/api/config.js.map +1 -1
  310. package/dist/esm/lib/api/user.d.ts +19 -10
  311. package/dist/esm/lib/api/user.js +85 -62
  312. package/dist/esm/lib/api/user.js.map +1 -1
  313. package/dist/esm/lib/api-keys/api-key-details-card.d.ts +11 -0
  314. package/dist/esm/lib/api-keys/api-key-details-card.js +37 -0
  315. package/dist/esm/lib/api-keys/api-key-details-card.js.map +1 -0
  316. package/dist/esm/lib/api-keys/api-key-details-dialog.d.ts +13 -0
  317. package/dist/esm/lib/api-keys/api-key-details-dialog.js +57 -0
  318. package/dist/esm/lib/api-keys/api-key-details-dialog.js.map +1 -0
  319. package/dist/esm/lib/api-keys/api-keys-context.d.ts +19 -0
  320. package/dist/esm/lib/api-keys/api-keys-context.js +52 -0
  321. package/dist/esm/lib/api-keys/api-keys-context.js.map +1 -0
  322. package/dist/esm/lib/api-keys/api-keys-search-provider.d.ts +12 -0
  323. package/dist/esm/lib/api-keys/api-keys-search-provider.js +44 -0
  324. package/dist/esm/lib/api-keys/api-keys-search-provider.js.map +1 -0
  325. package/dist/esm/lib/api-keys/api-keys-search.d.ts +6 -0
  326. package/dist/esm/lib/api-keys/api-keys-search.js +65 -0
  327. package/dist/esm/lib/api-keys/api-keys-search.js.map +1 -0
  328. package/dist/esm/lib/api-keys/api-keys-state.d.ts +31 -0
  329. package/dist/esm/lib/api-keys/api-keys-state.js +123 -0
  330. package/dist/esm/lib/api-keys/api-keys-state.js.map +1 -0
  331. package/dist/esm/lib/api-keys/api-keys-table.d.ts +10 -0
  332. package/dist/esm/lib/api-keys/api-keys-table.js +169 -0
  333. package/dist/esm/lib/api-keys/api-keys-table.js.map +1 -0
  334. package/dist/esm/lib/api-keys/api-keys.d.ts +11 -0
  335. package/dist/esm/lib/api-keys/api-keys.js +74 -0
  336. package/dist/esm/lib/api-keys/api-keys.js.map +1 -0
  337. package/dist/esm/lib/api-keys/create-api-key.d.ts +6 -0
  338. package/dist/esm/lib/api-keys/create-api-key.js +352 -0
  339. package/dist/esm/lib/api-keys/create-api-key.js.map +1 -0
  340. package/dist/esm/lib/api-keys/relative-time.d.ts +7 -0
  341. package/dist/esm/lib/api-keys/relative-time.js +18 -0
  342. package/dist/esm/lib/api-keys/relative-time.js.map +1 -0
  343. package/dist/esm/lib/api-keys/revoke-api-key-dialog.d.ts +12 -0
  344. package/dist/esm/lib/api-keys/revoke-api-key-dialog.js +64 -0
  345. package/dist/esm/lib/api-keys/revoke-api-key-dialog.js.map +1 -0
  346. package/dist/esm/lib/api-keys/skeleton-table.d.ts +9 -0
  347. package/dist/esm/lib/api-keys/skeleton-table.js +15 -0
  348. package/dist/esm/lib/api-keys/skeleton-table.js.map +1 -0
  349. package/dist/esm/lib/change-password-dialog.d.ts +7 -5
  350. package/dist/esm/lib/change-password-dialog.js +197 -58
  351. package/dist/esm/lib/change-password-dialog.js.map +1 -1
  352. package/dist/esm/lib/constants.d.ts +5 -4
  353. package/dist/esm/lib/constants.js +8 -3
  354. package/dist/esm/lib/constants.js.map +1 -1
  355. package/dist/esm/lib/copy-button.d.ts +6 -4
  356. package/dist/esm/lib/copy-button.js +29 -25
  357. package/dist/esm/lib/copy-button.js.map +1 -1
  358. package/dist/esm/lib/delete-domain-dialog.d.ts +9 -5
  359. package/dist/esm/lib/delete-domain-dialog.js +44 -18
  360. package/dist/esm/lib/delete-domain-dialog.js.map +1 -1
  361. package/dist/esm/lib/delete-user-dialog.d.ts +10 -6
  362. package/dist/esm/lib/delete-user-dialog.js +75 -26
  363. package/dist/esm/lib/delete-user-dialog.js.map +1 -1
  364. package/dist/esm/lib/domain-actions.d.ts +8 -4
  365. package/dist/esm/lib/domain-actions.js +57 -10
  366. package/dist/esm/lib/domain-actions.js.map +1 -1
  367. package/dist/esm/lib/domain-item.d.ts +8 -4
  368. package/dist/esm/lib/domain-item.js +49 -21
  369. package/dist/esm/lib/domain-item.js.map +1 -1
  370. package/dist/esm/lib/edit-user-profile-dialog.d.ts +10 -6
  371. package/dist/esm/lib/edit-user-profile-dialog.js +128 -45
  372. package/dist/esm/lib/edit-user-profile-dialog.js.map +1 -1
  373. package/dist/esm/lib/edit-user-role-dialog.d.ts +11 -7
  374. package/dist/esm/lib/edit-user-role-dialog.js +294 -102
  375. package/dist/esm/lib/edit-user-role-dialog.js.map +1 -1
  376. package/dist/esm/lib/elements.d.ts +27 -26
  377. package/dist/esm/lib/elements.js +325 -88
  378. package/dist/esm/lib/elements.js.map +1 -1
  379. package/dist/esm/lib/elevated-access.d.ts +6 -4
  380. package/dist/esm/lib/elevated-access.js +159 -90
  381. package/dist/esm/lib/elevated-access.js.map +1 -1
  382. package/dist/esm/lib/empty-state.d.ts +10 -0
  383. package/dist/esm/lib/empty-state.js +15 -0
  384. package/dist/esm/lib/empty-state.js.map +1 -0
  385. package/dist/esm/lib/error-boundary.d.ts +13 -11
  386. package/dist/esm/lib/error-boundary.js +69 -74
  387. package/dist/esm/lib/error-boundary.js.map +1 -1
  388. package/dist/esm/lib/errors.d.ts +6 -6
  389. package/dist/esm/lib/errors.js +34 -37
  390. package/dist/esm/lib/errors.js.map +1 -1
  391. package/dist/esm/lib/generic-error.d.ts +6 -3
  392. package/dist/esm/lib/generic-error.js +75 -29
  393. package/dist/esm/lib/generic-error.js.map +1 -1
  394. package/dist/esm/lib/icon-panel.d.ts +7 -4
  395. package/dist/esm/lib/icon-panel.js +25 -10
  396. package/dist/esm/lib/icon-panel.js.map +1 -1
  397. package/dist/esm/lib/icons.d.ts +6 -3
  398. package/dist/esm/lib/icons.js +25 -3
  399. package/dist/esm/lib/icons.js.map +1 -1
  400. package/dist/esm/lib/identity-providers.d.ts +6 -6
  401. package/dist/esm/lib/identity-providers.js +82 -63
  402. package/dist/esm/lib/identity-providers.js.map +1 -1
  403. package/dist/esm/lib/invite-user-dialog.d.ts +6 -4
  404. package/dist/esm/lib/invite-user-dialog.js +236 -117
  405. package/dist/esm/lib/invite-user-dialog.js.map +1 -1
  406. package/dist/esm/lib/logout-all-sessions-dialog.d.ts +7 -5
  407. package/dist/esm/lib/logout-all-sessions-dialog.js +59 -18
  408. package/dist/esm/lib/logout-all-sessions-dialog.js.map +1 -1
  409. package/dist/esm/lib/logout-dialog.d.ts +10 -6
  410. package/dist/esm/lib/logout-dialog.js +74 -24
  411. package/dist/esm/lib/logout-dialog.js.map +1 -1
  412. package/dist/esm/lib/marker.d.ts +7 -6
  413. package/dist/esm/lib/marker.js +17 -4
  414. package/dist/esm/lib/marker.js.map +1 -1
  415. package/dist/esm/lib/name-server-icon.d.ts +8 -4
  416. package/dist/esm/lib/name-server-icon.js +60 -4
  417. package/dist/esm/lib/name-server-icon.js.map +1 -1
  418. package/dist/esm/lib/oauth-icons.d.ts +6 -4
  419. package/dist/esm/lib/oauth-icons.js +132 -31
  420. package/dist/esm/lib/oauth-icons.js.map +1 -1
  421. package/dist/esm/lib/organization-switcher.d.ts +12 -8
  422. package/dist/esm/lib/organization-switcher.js +155 -40
  423. package/dist/esm/lib/organization-switcher.js.map +1 -1
  424. package/dist/esm/lib/otp-input.d.ts +9 -7
  425. package/dist/esm/lib/otp-input.js +163 -100
  426. package/dist/esm/lib/otp-input.js.map +1 -1
  427. package/dist/esm/lib/provider-icon.d.ts +5 -4
  428. package/dist/esm/lib/provider-icon.js +29 -8
  429. package/dist/esm/lib/provider-icon.js.map +1 -1
  430. package/dist/esm/lib/resend-invite-dialog.d.ts +10 -6
  431. package/dist/esm/lib/resend-invite-dialog.js +120 -36
  432. package/dist/esm/lib/resend-invite-dialog.js.map +1 -1
  433. package/dist/esm/lib/reset-mfa-dialog.d.ts +7 -5
  434. package/dist/esm/lib/reset-mfa-dialog.js +70 -23
  435. package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
  436. package/dist/esm/lib/revoke-invite-dialog.d.ts +10 -6
  437. package/dist/esm/lib/revoke-invite-dialog.js +82 -26
  438. package/dist/esm/lib/revoke-invite-dialog.js.map +1 -1
  439. package/dist/esm/lib/save-button.d.ts +6 -4
  440. package/dist/esm/lib/save-button.js +92 -35
  441. package/dist/esm/lib/save-button.js.map +1 -1
  442. package/dist/esm/lib/search-provider.d.ts +7 -6
  443. package/dist/esm/lib/search-provider.js +37 -20
  444. package/dist/esm/lib/search-provider.js.map +1 -1
  445. package/dist/esm/lib/set-password-dialog.d.ts +7 -5
  446. package/dist/esm/lib/set-password-dialog.js +122 -39
  447. package/dist/esm/lib/set-password-dialog.js.map +1 -1
  448. package/dist/esm/lib/status.d.ts +7 -6
  449. package/dist/esm/lib/status.js +31 -12
  450. package/dist/esm/lib/status.js.map +1 -1
  451. package/dist/esm/lib/use-dialog-close.d.ts +3 -2
  452. package/dist/esm/lib/use-dialog-close.js +16 -14
  453. package/dist/esm/lib/use-dialog-close.js.map +1 -1
  454. package/dist/esm/lib/use-is-hydrated.d.ts +3 -2
  455. package/dist/esm/lib/use-is-hydrated.js +11 -3
  456. package/dist/esm/lib/use-is-hydrated.js.map +1 -1
  457. package/dist/esm/lib/use-layout-effect.d.ts +3 -2
  458. package/dist/esm/lib/use-layout-effect.js +3 -1
  459. package/dist/esm/lib/use-layout-effect.js.map +1 -1
  460. package/dist/esm/lib/use-permissions.d.ts +6 -4
  461. package/dist/esm/lib/use-permissions.js +25 -25
  462. package/dist/esm/lib/use-permissions.js.map +1 -1
  463. package/dist/esm/lib/use-security-settings.d.ts +3 -3
  464. package/dist/esm/lib/use-security-settings.js +33 -32
  465. package/dist/esm/lib/use-security-settings.js.map +1 -1
  466. package/dist/esm/lib/user-actions-dropdown.d.ts +9 -5
  467. package/dist/esm/lib/user-actions-dropdown.js +126 -42
  468. package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
  469. package/dist/esm/lib/user-profile.d.ts +11 -7
  470. package/dist/esm/lib/user-profile.js +136 -15
  471. package/dist/esm/lib/user-profile.js.map +1 -1
  472. package/dist/esm/lib/user-security.d.ts +12 -8
  473. package/dist/esm/lib/user-security.js +80 -13
  474. package/dist/esm/lib/user-security.js.map +1 -1
  475. package/dist/esm/lib/user-sessions.d.ts +11 -7
  476. package/dist/esm/lib/user-sessions.js +130 -24
  477. package/dist/esm/lib/user-sessions.js.map +1 -1
  478. package/dist/esm/lib/users-filter.d.ts +9 -6
  479. package/dist/esm/lib/users-filter.js +42 -20
  480. package/dist/esm/lib/users-filter.js.map +1 -1
  481. package/dist/esm/lib/users-management-context.d.ts +11 -6
  482. package/dist/esm/lib/users-management-context.js +37 -31
  483. package/dist/esm/lib/users-management-context.js.map +1 -1
  484. package/dist/esm/lib/users-management-state.d.ts +10 -6
  485. package/dist/esm/lib/users-management-state.js +108 -105
  486. package/dist/esm/lib/users-management-state.js.map +1 -1
  487. package/dist/esm/lib/users-management.d.ts +12 -8
  488. package/dist/esm/lib/users-management.js +441 -148
  489. package/dist/esm/lib/users-management.js.map +1 -1
  490. package/dist/esm/lib/users-search.d.ts +6 -3
  491. package/dist/esm/lib/users-search.js +48 -15
  492. package/dist/esm/lib/users-search.js.map +1 -1
  493. package/dist/esm/lib/utils.d.ts +18 -14
  494. package/dist/esm/lib/utils.js +90 -86
  495. package/dist/esm/lib/utils.js.map +1 -1
  496. package/dist/esm/lib/view-dns-record-dialog.d.ts +9 -5
  497. package/dist/esm/lib/view-dns-record-dialog.js +80 -14
  498. package/dist/esm/lib/view-dns-record-dialog.js.map +1 -1
  499. package/dist/esm/lib/widgets-context.d.ts +11 -7
  500. package/dist/esm/lib/widgets-context.js +17 -11
  501. package/dist/esm/lib/widgets-context.js.map +1 -1
  502. package/dist/esm/organization-switcher.client.d.ts +13 -7
  503. package/dist/esm/organization-switcher.client.js +47 -22
  504. package/dist/esm/organization-switcher.client.js.map +1 -1
  505. package/dist/esm/user-profile.client.d.ts +12 -7
  506. package/dist/esm/user-profile.client.js +33 -18
  507. package/dist/esm/user-profile.client.js.map +1 -1
  508. package/dist/esm/user-security.client.d.ts +12 -7
  509. package/dist/esm/user-security.client.js +36 -15
  510. package/dist/esm/user-security.client.js.map +1 -1
  511. package/dist/esm/user-sessions.client.d.ts +11 -6
  512. package/dist/esm/user-sessions.client.js +62 -31
  513. package/dist/esm/user-sessions.client.js.map +1 -1
  514. package/dist/esm/users-management.client.d.ts +12 -7
  515. package/dist/esm/users-management.client.js +53 -28
  516. package/dist/esm/users-management.client.js.map +1 -1
  517. package/dist/esm/workos-widgets.client.d.ts +10 -7
  518. package/dist/esm/workos-widgets.client.js +64 -38
  519. package/dist/esm/workos-widgets.client.js.map +1 -1
  520. package/package.json +16 -15
  521. package/dist/cjs/admin-portal-domain-verification.client.d.ts +0 -9
  522. package/dist/cjs/admin-portal-domain-verification.client.d.ts.map +0 -1
  523. package/dist/cjs/admin-portal-domain-verification.client.js +0 -70
  524. package/dist/cjs/admin-portal-domain-verification.client.js.map +0 -1
  525. package/dist/cjs/admin-portal-sso-connection-client.d.ts +0 -9
  526. package/dist/cjs/admin-portal-sso-connection-client.d.ts.map +0 -1
  527. package/dist/cjs/admin-portal-sso-connection-client.js +0 -222
  528. package/dist/cjs/admin-portal-sso-connection-client.js.map +0 -1
  529. package/dist/cjs/api/api-provider.d.ts +0 -29
  530. package/dist/cjs/api/api-provider.d.ts.map +0 -1
  531. package/dist/cjs/api/api-provider.js +0 -130
  532. package/dist/cjs/api/api-provider.js.map +0 -1
  533. package/dist/cjs/api/constants.d.ts +0 -2
  534. package/dist/cjs/api/constants.d.ts.map +0 -1
  535. package/dist/cjs/api/constants.js +0 -5
  536. package/dist/cjs/api/constants.js.map +0 -1
  537. package/dist/cjs/api/endpoint.d.ts +0 -1300
  538. package/dist/cjs/api/endpoint.d.ts.map +0 -1
  539. package/dist/cjs/api/endpoint.js +0 -1143
  540. package/dist/cjs/api/endpoint.js.map +0 -1
  541. package/dist/cjs/api/errors.d.ts.map +0 -1
  542. package/dist/cjs/api/errors.js +0 -40
  543. package/dist/cjs/api/errors.js.map +0 -1
  544. package/dist/cjs/api/utils.d.ts +0 -10
  545. package/dist/cjs/api/utils.d.ts.map +0 -1
  546. package/dist/cjs/api/utils.js +0 -42
  547. package/dist/cjs/api/utils.js.map +0 -1
  548. package/dist/cjs/api/widgets-api-client.d.ts.map +0 -1
  549. package/dist/cjs/api/widgets-api-client.js +0 -62
  550. package/dist/cjs/api/widgets-api-client.js.map +0 -1
  551. package/dist/cjs/card-list.d.ts +0 -6
  552. package/dist/cjs/card-list.d.ts.map +0 -1
  553. package/dist/cjs/card-list.js +0 -13
  554. package/dist/cjs/card-list.js.map +0 -1
  555. package/dist/cjs/index.d.ts +0 -9
  556. package/dist/cjs/index.d.ts.map +0 -1
  557. package/dist/cjs/index.js +0 -27
  558. package/dist/cjs/index.js.map +0 -1
  559. package/dist/cjs/lib/add-mfa-dialog.d.ts +0 -9
  560. package/dist/cjs/lib/add-mfa-dialog.d.ts.map +0 -1
  561. package/dist/cjs/lib/add-mfa-dialog.js +0 -136
  562. package/dist/cjs/lib/add-mfa-dialog.js.map +0 -1
  563. package/dist/cjs/lib/admin-portal-domain-verification.d.ts +0 -16
  564. package/dist/cjs/lib/admin-portal-domain-verification.d.ts.map +0 -1
  565. package/dist/cjs/lib/admin-portal-domain-verification.js +0 -55
  566. package/dist/cjs/lib/admin-portal-domain-verification.js.map +0 -1
  567. package/dist/cjs/lib/admin-portal-sso-connection.d.ts +0 -40
  568. package/dist/cjs/lib/admin-portal-sso-connection.d.ts.map +0 -1
  569. package/dist/cjs/lib/admin-portal-sso-connection.js +0 -209
  570. package/dist/cjs/lib/admin-portal-sso-connection.js.map +0 -1
  571. package/dist/cjs/lib/api/config.d.ts.map +0 -1
  572. package/dist/cjs/lib/api/config.js +0 -12
  573. package/dist/cjs/lib/api/config.js.map +0 -1
  574. package/dist/cjs/lib/api/user.d.ts +0 -17
  575. package/dist/cjs/lib/api/user.d.ts.map +0 -1
  576. package/dist/cjs/lib/api/user.js +0 -80
  577. package/dist/cjs/lib/api/user.js.map +0 -1
  578. package/dist/cjs/lib/change-password-dialog.d.ts +0 -8
  579. package/dist/cjs/lib/change-password-dialog.d.ts.map +0 -1
  580. package/dist/cjs/lib/change-password-dialog.js +0 -97
  581. package/dist/cjs/lib/change-password-dialog.js.map +0 -1
  582. package/dist/cjs/lib/constants.d.ts +0 -4
  583. package/dist/cjs/lib/constants.d.ts.map +0 -1
  584. package/dist/cjs/lib/constants.js +0 -7
  585. package/dist/cjs/lib/constants.js.map +0 -1
  586. package/dist/cjs/lib/copy-button.d.ts +0 -8
  587. package/dist/cjs/lib/copy-button.d.ts.map +0 -1
  588. package/dist/cjs/lib/copy-button.js +0 -62
  589. package/dist/cjs/lib/copy-button.js.map +0 -1
  590. package/dist/cjs/lib/delete-domain-dialog.d.ts +0 -12
  591. package/dist/cjs/lib/delete-domain-dialog.d.ts.map +0 -1
  592. package/dist/cjs/lib/delete-domain-dialog.js +0 -26
  593. package/dist/cjs/lib/delete-domain-dialog.js.map +0 -1
  594. package/dist/cjs/lib/delete-user-dialog.d.ts +0 -12
  595. package/dist/cjs/lib/delete-user-dialog.d.ts.map +0 -1
  596. package/dist/cjs/lib/delete-user-dialog.js +0 -36
  597. package/dist/cjs/lib/delete-user-dialog.js.map +0 -1
  598. package/dist/cjs/lib/domain-actions.d.ts +0 -9
  599. package/dist/cjs/lib/domain-actions.d.ts.map +0 -1
  600. package/dist/cjs/lib/domain-actions.js +0 -22
  601. package/dist/cjs/lib/domain-actions.js.map +0 -1
  602. package/dist/cjs/lib/domain-item.d.ts +0 -9
  603. package/dist/cjs/lib/domain-item.d.ts.map +0 -1
  604. package/dist/cjs/lib/domain-item.js +0 -38
  605. package/dist/cjs/lib/domain-item.js.map +0 -1
  606. package/dist/cjs/lib/edit-user-profile-dialog.d.ts +0 -10
  607. package/dist/cjs/lib/edit-user-profile-dialog.d.ts.map +0 -1
  608. package/dist/cjs/lib/edit-user-profile-dialog.js +0 -85
  609. package/dist/cjs/lib/edit-user-profile-dialog.js.map +0 -1
  610. package/dist/cjs/lib/edit-user-role-dialog.d.ts +0 -23
  611. package/dist/cjs/lib/edit-user-role-dialog.d.ts.map +0 -1
  612. package/dist/cjs/lib/edit-user-role-dialog.js +0 -143
  613. package/dist/cjs/lib/edit-user-role-dialog.js.map +0 -1
  614. package/dist/cjs/lib/elements.d.ts +0 -46
  615. package/dist/cjs/lib/elements.d.ts.map +0 -1
  616. package/dist/cjs/lib/elements.js +0 -148
  617. package/dist/cjs/lib/elements.js.map +0 -1
  618. package/dist/cjs/lib/elevated-access.d.ts +0 -8
  619. package/dist/cjs/lib/elevated-access.d.ts.map +0 -1
  620. package/dist/cjs/lib/elevated-access.js +0 -131
  621. package/dist/cjs/lib/elevated-access.js.map +0 -1
  622. package/dist/cjs/lib/error-boundary.d.ts.map +0 -1
  623. package/dist/cjs/lib/error-boundary.js +0 -113
  624. package/dist/cjs/lib/error-boundary.js.map +0 -1
  625. package/dist/cjs/lib/errors.d.ts.map +0 -1
  626. package/dist/cjs/lib/errors.js +0 -49
  627. package/dist/cjs/lib/errors.js.map +0 -1
  628. package/dist/cjs/lib/generic-error.d.ts +0 -4
  629. package/dist/cjs/lib/generic-error.d.ts.map +0 -1
  630. package/dist/cjs/lib/generic-error.js +0 -60
  631. package/dist/cjs/lib/generic-error.js.map +0 -1
  632. package/dist/cjs/lib/icon-panel.d.ts +0 -5
  633. package/dist/cjs/lib/icon-panel.d.ts.map +0 -1
  634. package/dist/cjs/lib/icon-panel.js +0 -17
  635. package/dist/cjs/lib/icon-panel.js.map +0 -1
  636. package/dist/cjs/lib/icons.d.ts +0 -3
  637. package/dist/cjs/lib/icons.d.ts.map +0 -1
  638. package/dist/cjs/lib/icons.js +0 -8
  639. package/dist/cjs/lib/icons.js.map +0 -1
  640. package/dist/cjs/lib/identity-providers.d.ts +0 -7
  641. package/dist/cjs/lib/identity-providers.d.ts.map +0 -1
  642. package/dist/cjs/lib/identity-providers.js +0 -71
  643. package/dist/cjs/lib/identity-providers.js.map +0 -1
  644. package/dist/cjs/lib/invite-user-dialog.d.ts +0 -7
  645. package/dist/cjs/lib/invite-user-dialog.d.ts.map +0 -1
  646. package/dist/cjs/lib/invite-user-dialog.js +0 -165
  647. package/dist/cjs/lib/invite-user-dialog.js.map +0 -1
  648. package/dist/cjs/lib/logout-all-sessions-dialog.d.ts +0 -9
  649. package/dist/cjs/lib/logout-all-sessions-dialog.d.ts.map +0 -1
  650. package/dist/cjs/lib/logout-all-sessions-dialog.js +0 -52
  651. package/dist/cjs/lib/logout-all-sessions-dialog.js.map +0 -1
  652. package/dist/cjs/lib/logout-dialog.d.ts +0 -10
  653. package/dist/cjs/lib/logout-dialog.d.ts.map +0 -1
  654. package/dist/cjs/lib/logout-dialog.js +0 -58
  655. package/dist/cjs/lib/logout-dialog.js.map +0 -1
  656. package/dist/cjs/lib/marker.d.ts.map +0 -1
  657. package/dist/cjs/lib/marker.js +0 -38
  658. package/dist/cjs/lib/marker.js.map +0 -1
  659. package/dist/cjs/lib/name-server-icon.d.ts +0 -7
  660. package/dist/cjs/lib/name-server-icon.d.ts.map +0 -1
  661. package/dist/cjs/lib/name-server-icon.js +0 -38
  662. package/dist/cjs/lib/name-server-icon.js.map +0 -1
  663. package/dist/cjs/lib/oauth-icons.d.ts +0 -4
  664. package/dist/cjs/lib/oauth-icons.d.ts.map +0 -1
  665. package/dist/cjs/lib/oauth-icons.js +0 -67
  666. package/dist/cjs/lib/oauth-icons.js.map +0 -1
  667. package/dist/cjs/lib/organization-switcher.d.ts.map +0 -1
  668. package/dist/cjs/lib/organization-switcher.js +0 -62
  669. package/dist/cjs/lib/organization-switcher.js.map +0 -1
  670. package/dist/cjs/lib/otp-input.d.ts +0 -20
  671. package/dist/cjs/lib/otp-input.d.ts.map +0 -1
  672. package/dist/cjs/lib/otp-input.js +0 -174
  673. package/dist/cjs/lib/otp-input.js.map +0 -1
  674. package/dist/cjs/lib/provider-icon.d.ts.map +0 -1
  675. package/dist/cjs/lib/provider-icon.js +0 -45
  676. package/dist/cjs/lib/provider-icon.js.map +0 -1
  677. package/dist/cjs/lib/resend-invite-dialog.d.ts +0 -10
  678. package/dist/cjs/lib/resend-invite-dialog.d.ts.map +0 -1
  679. package/dist/cjs/lib/resend-invite-dialog.js +0 -70
  680. package/dist/cjs/lib/resend-invite-dialog.js.map +0 -1
  681. package/dist/cjs/lib/reset-mfa-dialog.d.ts +0 -9
  682. package/dist/cjs/lib/reset-mfa-dialog.d.ts.map +0 -1
  683. package/dist/cjs/lib/reset-mfa-dialog.js +0 -60
  684. package/dist/cjs/lib/reset-mfa-dialog.js.map +0 -1
  685. package/dist/cjs/lib/revoke-invite-dialog.d.ts +0 -10
  686. package/dist/cjs/lib/revoke-invite-dialog.d.ts.map +0 -1
  687. package/dist/cjs/lib/revoke-invite-dialog.js +0 -36
  688. package/dist/cjs/lib/revoke-invite-dialog.js.map +0 -1
  689. package/dist/cjs/lib/save-button.d.ts +0 -11
  690. package/dist/cjs/lib/save-button.d.ts.map +0 -1
  691. package/dist/cjs/lib/save-button.js +0 -47
  692. package/dist/cjs/lib/save-button.js.map +0 -1
  693. package/dist/cjs/lib/search-provider.d.ts +0 -11
  694. package/dist/cjs/lib/search-provider.d.ts.map +0 -1
  695. package/dist/cjs/lib/search-provider.js +0 -55
  696. package/dist/cjs/lib/search-provider.js.map +0 -1
  697. package/dist/cjs/lib/set-password-dialog.d.ts +0 -8
  698. package/dist/cjs/lib/set-password-dialog.d.ts.map +0 -1
  699. package/dist/cjs/lib/set-password-dialog.js +0 -80
  700. package/dist/cjs/lib/set-password-dialog.js.map +0 -1
  701. package/dist/cjs/lib/status.d.ts +0 -10
  702. package/dist/cjs/lib/status.d.ts.map +0 -1
  703. package/dist/cjs/lib/status.js +0 -48
  704. package/dist/cjs/lib/status.js.map +0 -1
  705. package/dist/cjs/lib/use-dialog-close.d.ts +0 -2
  706. package/dist/cjs/lib/use-dialog-close.d.ts.map +0 -1
  707. package/dist/cjs/lib/use-dialog-close.js +0 -43
  708. package/dist/cjs/lib/use-dialog-close.js.map +0 -1
  709. package/dist/cjs/lib/use-is-hydrated.d.ts +0 -2
  710. package/dist/cjs/lib/use-is-hydrated.d.ts.map +0 -1
  711. package/dist/cjs/lib/use-is-hydrated.js +0 -34
  712. package/dist/cjs/lib/use-is-hydrated.js.map +0 -1
  713. package/dist/cjs/lib/use-layout-effect.d.ts.map +0 -1
  714. package/dist/cjs/lib/use-layout-effect.js +0 -8
  715. package/dist/cjs/lib/use-layout-effect.js.map +0 -1
  716. package/dist/cjs/lib/use-permissions.d.ts +0 -4
  717. package/dist/cjs/lib/use-permissions.d.ts.map +0 -1
  718. package/dist/cjs/lib/use-permissions.js +0 -34
  719. package/dist/cjs/lib/use-permissions.js.map +0 -1
  720. package/dist/cjs/lib/use-security-settings.d.ts.map +0 -1
  721. package/dist/cjs/lib/use-security-settings.js +0 -39
  722. package/dist/cjs/lib/use-security-settings.js.map +0 -1
  723. package/dist/cjs/lib/user-actions-dropdown.d.ts +0 -9
  724. package/dist/cjs/lib/user-actions-dropdown.d.ts.map +0 -1
  725. package/dist/cjs/lib/user-actions-dropdown.js +0 -81
  726. package/dist/cjs/lib/user-actions-dropdown.js.map +0 -1
  727. package/dist/cjs/lib/user-profile.d.ts +0 -11
  728. package/dist/cjs/lib/user-profile.d.ts.map +0 -1
  729. package/dist/cjs/lib/user-profile.js +0 -36
  730. package/dist/cjs/lib/user-profile.js.map +0 -1
  731. package/dist/cjs/lib/user-security.d.ts +0 -11
  732. package/dist/cjs/lib/user-security.d.ts.map +0 -1
  733. package/dist/cjs/lib/user-security.js +0 -64
  734. package/dist/cjs/lib/user-security.js.map +0 -1
  735. package/dist/cjs/lib/user-sessions.d.ts +0 -12
  736. package/dist/cjs/lib/user-sessions.d.ts.map +0 -1
  737. package/dist/cjs/lib/user-sessions.js +0 -72
  738. package/dist/cjs/lib/user-sessions.js.map +0 -1
  739. package/dist/cjs/lib/users-filter.d.ts +0 -10
  740. package/dist/cjs/lib/users-filter.d.ts.map +0 -1
  741. package/dist/cjs/lib/users-filter.js +0 -56
  742. package/dist/cjs/lib/users-filter.js.map +0 -1
  743. package/dist/cjs/lib/users-management-context.d.ts +0 -14
  744. package/dist/cjs/lib/users-management-context.d.ts.map +0 -1
  745. package/dist/cjs/lib/users-management-context.js +0 -70
  746. package/dist/cjs/lib/users-management-context.js.map +0 -1
  747. package/dist/cjs/lib/users-management-state.d.ts +0 -22
  748. package/dist/cjs/lib/users-management-state.d.ts.map +0 -1
  749. package/dist/cjs/lib/users-management-state.js +0 -143
  750. package/dist/cjs/lib/users-management-state.js.map +0 -1
  751. package/dist/cjs/lib/users-management.d.ts +0 -18
  752. package/dist/cjs/lib/users-management.d.ts.map +0 -1
  753. package/dist/cjs/lib/users-management.js +0 -209
  754. package/dist/cjs/lib/users-management.js.map +0 -1
  755. package/dist/cjs/lib/users-search.d.ts +0 -3
  756. package/dist/cjs/lib/users-search.d.ts.map +0 -1
  757. package/dist/cjs/lib/users-search.js +0 -63
  758. package/dist/cjs/lib/users-search.js.map +0 -1
  759. package/dist/cjs/lib/utils.d.ts +0 -27
  760. package/dist/cjs/lib/utils.d.ts.map +0 -1
  761. package/dist/cjs/lib/utils.js +0 -116
  762. package/dist/cjs/lib/utils.js.map +0 -1
  763. package/dist/cjs/lib/view-dns-record-dialog.d.ts +0 -12
  764. package/dist/cjs/lib/view-dns-record-dialog.d.ts.map +0 -1
  765. package/dist/cjs/lib/view-dns-record-dialog.js +0 -26
  766. package/dist/cjs/lib/view-dns-record-dialog.js.map +0 -1
  767. package/dist/cjs/lib/widgets-context.d.ts +0 -11
  768. package/dist/cjs/lib/widgets-context.d.ts.map +0 -1
  769. package/dist/cjs/lib/widgets-context.js +0 -45
  770. package/dist/cjs/lib/widgets-context.js.map +0 -1
  771. package/dist/cjs/organization-switcher.client.d.ts +0 -9
  772. package/dist/cjs/organization-switcher.client.d.ts.map +0 -1
  773. package/dist/cjs/organization-switcher.client.js +0 -39
  774. package/dist/cjs/organization-switcher.client.js.map +0 -1
  775. package/dist/cjs/user-profile.client.d.ts +0 -9
  776. package/dist/cjs/user-profile.client.d.ts.map +0 -1
  777. package/dist/cjs/user-profile.client.js +0 -33
  778. package/dist/cjs/user-profile.client.js.map +0 -1
  779. package/dist/cjs/user-security.client.d.ts +0 -9
  780. package/dist/cjs/user-security.client.d.ts.map +0 -1
  781. package/dist/cjs/user-security.client.js +0 -29
  782. package/dist/cjs/user-security.client.js.map +0 -1
  783. package/dist/cjs/user-sessions.client.d.ts +0 -13
  784. package/dist/cjs/user-sessions.client.d.ts.map +0 -1
  785. package/dist/cjs/user-sessions.client.js +0 -50
  786. package/dist/cjs/user-sessions.client.js.map +0 -1
  787. package/dist/cjs/users-management.client.d.ts +0 -9
  788. package/dist/cjs/users-management.client.d.ts.map +0 -1
  789. package/dist/cjs/users-management.client.js +0 -46
  790. package/dist/cjs/users-management.client.js.map +0 -1
  791. package/dist/cjs/workos-widgets.client.d.ts.map +0 -1
  792. package/dist/cjs/workos-widgets.client.js +0 -80
  793. package/dist/cjs/workos-widgets.client.js.map +0 -1
  794. package/dist/esm/admin-portal-domain-verification.client.d.ts.map +0 -1
  795. package/dist/esm/admin-portal-sso-connection-client.d.ts.map +0 -1
  796. package/dist/esm/api/api-provider.d.ts.map +0 -1
  797. package/dist/esm/api/constants.d.ts.map +0 -1
  798. package/dist/esm/api/endpoint.d.ts.map +0 -1
  799. package/dist/esm/api/errors.d.ts.map +0 -1
  800. package/dist/esm/api/utils.d.ts.map +0 -1
  801. package/dist/esm/api/widgets-api-client.d.ts.map +0 -1
  802. package/dist/esm/card-list.d.ts.map +0 -1
  803. package/dist/esm/index.d.ts.map +0 -1
  804. package/dist/esm/lib/add-mfa-dialog.d.ts.map +0 -1
  805. package/dist/esm/lib/admin-portal-domain-verification.d.ts.map +0 -1
  806. package/dist/esm/lib/admin-portal-sso-connection.d.ts.map +0 -1
  807. package/dist/esm/lib/api/config.d.ts.map +0 -1
  808. package/dist/esm/lib/api/user.d.ts.map +0 -1
  809. package/dist/esm/lib/change-password-dialog.d.ts.map +0 -1
  810. package/dist/esm/lib/constants.d.ts.map +0 -1
  811. package/dist/esm/lib/copy-button.d.ts.map +0 -1
  812. package/dist/esm/lib/delete-domain-dialog.d.ts.map +0 -1
  813. package/dist/esm/lib/delete-user-dialog.d.ts.map +0 -1
  814. package/dist/esm/lib/domain-actions.d.ts.map +0 -1
  815. package/dist/esm/lib/domain-item.d.ts.map +0 -1
  816. package/dist/esm/lib/edit-user-profile-dialog.d.ts.map +0 -1
  817. package/dist/esm/lib/edit-user-role-dialog.d.ts.map +0 -1
  818. package/dist/esm/lib/elements.d.ts.map +0 -1
  819. package/dist/esm/lib/elevated-access.d.ts.map +0 -1
  820. package/dist/esm/lib/error-boundary.d.ts.map +0 -1
  821. package/dist/esm/lib/errors.d.ts.map +0 -1
  822. package/dist/esm/lib/generic-error.d.ts.map +0 -1
  823. package/dist/esm/lib/icon-panel.d.ts.map +0 -1
  824. package/dist/esm/lib/icons.d.ts.map +0 -1
  825. package/dist/esm/lib/identity-providers.d.ts.map +0 -1
  826. package/dist/esm/lib/invite-user-dialog.d.ts.map +0 -1
  827. package/dist/esm/lib/logout-all-sessions-dialog.d.ts.map +0 -1
  828. package/dist/esm/lib/logout-dialog.d.ts.map +0 -1
  829. package/dist/esm/lib/marker.d.ts.map +0 -1
  830. package/dist/esm/lib/name-server-icon.d.ts.map +0 -1
  831. package/dist/esm/lib/oauth-icons.d.ts.map +0 -1
  832. package/dist/esm/lib/organization-switcher.d.ts.map +0 -1
  833. package/dist/esm/lib/otp-input.d.ts.map +0 -1
  834. package/dist/esm/lib/provider-icon.d.ts.map +0 -1
  835. package/dist/esm/lib/resend-invite-dialog.d.ts.map +0 -1
  836. package/dist/esm/lib/reset-mfa-dialog.d.ts.map +0 -1
  837. package/dist/esm/lib/revoke-invite-dialog.d.ts.map +0 -1
  838. package/dist/esm/lib/save-button.d.ts.map +0 -1
  839. package/dist/esm/lib/search-provider.d.ts.map +0 -1
  840. package/dist/esm/lib/set-password-dialog.d.ts.map +0 -1
  841. package/dist/esm/lib/status.d.ts.map +0 -1
  842. package/dist/esm/lib/use-dialog-close.d.ts.map +0 -1
  843. package/dist/esm/lib/use-is-hydrated.d.ts.map +0 -1
  844. package/dist/esm/lib/use-layout-effect.d.ts.map +0 -1
  845. package/dist/esm/lib/use-permissions.d.ts.map +0 -1
  846. package/dist/esm/lib/use-security-settings.d.ts.map +0 -1
  847. package/dist/esm/lib/user-actions-dropdown.d.ts.map +0 -1
  848. package/dist/esm/lib/user-profile.d.ts.map +0 -1
  849. package/dist/esm/lib/user-security.d.ts.map +0 -1
  850. package/dist/esm/lib/user-sessions.d.ts.map +0 -1
  851. package/dist/esm/lib/users-filter.d.ts.map +0 -1
  852. package/dist/esm/lib/users-management-context.d.ts.map +0 -1
  853. package/dist/esm/lib/users-management-state.d.ts.map +0 -1
  854. package/dist/esm/lib/users-management.d.ts.map +0 -1
  855. package/dist/esm/lib/users-search.d.ts.map +0 -1
  856. package/dist/esm/lib/utils.d.ts.map +0 -1
  857. package/dist/esm/lib/view-dns-record-dialog.d.ts.map +0 -1
  858. package/dist/esm/lib/widgets-context.d.ts.map +0 -1
  859. package/dist/esm/organization-switcher.client.d.ts.map +0 -1
  860. package/dist/esm/user-profile.client.d.ts.map +0 -1
  861. package/dist/esm/user-security.client.d.ts.map +0 -1
  862. package/dist/esm/user-sessions.client.d.ts.map +0 -1
  863. package/dist/esm/users-management.client.d.ts.map +0 -1
  864. package/dist/esm/workos-widgets.client.d.ts.map +0 -1
  865. package/dist/tsconfig.cjs.tsbuildinfo +0 -1
  866. package/dist/tsconfig.esm.tsbuildinfo +0 -1
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+ "use client";
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var user_actions_dropdown_exports = {};
31
+ __export(user_actions_dropdown_exports, {
32
+ UserActionsDropdown: () => UserActionsDropdown
33
+ });
34
+ module.exports = __toCommonJS(user_actions_dropdown_exports);
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_themes = require("@radix-ui/themes");
37
+ var React = __toESM(require("react"), 1);
38
+ var import_endpoint = require("../api/endpoint.js");
39
+ var import_delete_user_dialog = require("./delete-user-dialog.js");
40
+ var import_edit_user_role_dialog = require("./edit-user-role-dialog.js");
41
+ var import_elements = require("./elements.js");
42
+ var import_resend_invite_dialog = require("./resend-invite-dialog.js");
43
+ var import_revoke_invite_dialog = require("./revoke-invite-dialog.js");
44
+ const UserActionsDropdown = ({
45
+ user,
46
+ children
47
+ }) => {
48
+ const rolesAndConfigQuery = (0, import_endpoint.useRolesAndConfig)({
49
+ query: {
50
+ initialData: { roles: [], multipleRolesEnabled: false }
51
+ }
52
+ });
53
+ const { roles, multipleRolesEnabled: isMultipleRolesEnabled } = rolesAndConfigQuery.data;
54
+ const [openDialog, setOpenDialog] = React.useState(
55
+ null
56
+ );
57
+ function getDialogKey(dialog) {
58
+ return `${dialog}-${openDialog === dialog}-${user.id}`;
59
+ }
60
+ const { actions, items } = React.useMemo(() => {
61
+ const actions2 = new Set(user.actions);
62
+ const items2 = [];
63
+ if (actions2.has("edit-role")) {
64
+ items2.push(
65
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
66
+ import_elements.PrimaryMenuItem,
67
+ {
68
+ onSelect: () => setOpenDialog("edit-role"),
69
+ disabled: rolesAndConfigQuery.isLoading || rolesAndConfigQuery.isSuccess && roles.length <= 1,
70
+ title: rolesAndConfigQuery.isSuccess && roles.length <= 1 ? "You cannot update the role for this user as there is only one role available." : void 0,
71
+ children: `Edit role${isMultipleRolesEnabled ? "s" : ""}`
72
+ },
73
+ "edit-role"
74
+ )
75
+ );
76
+ }
77
+ if (actions2.has("resend-invite")) {
78
+ items2.push(
79
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
80
+ import_elements.PrimaryMenuItem,
81
+ {
82
+ onSelect: () => setOpenDialog("resend-invite"),
83
+ children: "Resend invitation"
84
+ },
85
+ "resend-invite"
86
+ )
87
+ );
88
+ }
89
+ if (actions2.has("revoke-invite")) {
90
+ items2.push(
91
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
92
+ import_elements.DestructiveMenuItem,
93
+ {
94
+ onSelect: () => setOpenDialog("revoke-invite"),
95
+ children: "Revoke invitation"
96
+ },
97
+ "revoke-invite"
98
+ )
99
+ );
100
+ }
101
+ if (actions2.has("revoke-membership")) {
102
+ items2.push(
103
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
104
+ import_elements.DestructiveMenuItem,
105
+ {
106
+ onSelect: () => setOpenDialog("revoke-membership"),
107
+ children: "Remove user"
108
+ },
109
+ "revoke-membership"
110
+ )
111
+ );
112
+ }
113
+ return {
114
+ actions: actions2,
115
+ items: items2
116
+ };
117
+ }, [rolesAndConfigQuery, user.actions, isMultipleRolesEnabled, roles]);
118
+ if (user.isLoggedInUser || items.length === 0) {
119
+ return null;
120
+ }
121
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
122
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DropdownMenu.Root, { children: [
123
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DropdownMenu.Trigger, { children }),
124
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.DropdownMenuContent, { size: "2", align: "end", children: items })
125
+ ] }),
126
+ actions.has("edit-role") && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
127
+ import_edit_user_role_dialog.EditUserRoleDialog,
128
+ {
129
+ user,
130
+ open: openDialog === "edit-role",
131
+ onOpenChange: (open) => !open && setOpenDialog(null)
132
+ },
133
+ getDialogKey("edit-role")
134
+ ),
135
+ actions.has("revoke-membership") && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
136
+ import_delete_user_dialog.DeleteUserDialog,
137
+ {
138
+ user,
139
+ open: openDialog === "revoke-membership",
140
+ onOpenChange: (open) => !open && setOpenDialog(null)
141
+ },
142
+ getDialogKey("revoke-membership")
143
+ ),
144
+ actions.has("revoke-invite") && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
145
+ import_revoke_invite_dialog.RevokeInviteDialog,
146
+ {
147
+ user,
148
+ open: openDialog === "revoke-invite",
149
+ onOpenChange: (open) => !open && setOpenDialog(null)
150
+ },
151
+ getDialogKey("revoke-invite")
152
+ ),
153
+ actions.has("resend-invite") && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
154
+ import_resend_invite_dialog.ResendInviteDialog,
155
+ {
156
+ user,
157
+ open: openDialog === "resend-invite",
158
+ onOpenChange: (open) => !open && setOpenDialog(null)
159
+ },
160
+ getDialogKey("resend-invite")
161
+ )
162
+ ] });
163
+ };
164
+ // Annotate the CommonJS export names for ESM import in node:
165
+ 0 && (module.exports = {
166
+ UserActionsDropdown
167
+ });
168
+ //# sourceMappingURL=user-actions-dropdown.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/user-actions-dropdown.tsx"],"sourcesContent":["\"use client\";\n\nimport { DropdownMenu } from \"@radix-ui/themes\";\nimport * as React from \"react\";\nimport { Member, useRolesAndConfig } from \"../api/endpoint.js\";\nimport { DeleteUserDialog } from \"./delete-user-dialog.js\";\nimport { EditUserRoleDialog } from \"./edit-user-role-dialog.js\";\nimport {\n DestructiveMenuItem,\n DropdownMenuContent,\n PrimaryMenuItem,\n} from \"./elements.js\";\nimport { ResendInviteDialog } from \"./resend-invite-dialog.js\";\nimport { RevokeInviteDialog } from \"./revoke-invite-dialog.js\";\n\ninterface UserActionsDropdownProps {\n user: Member;\n children: React.ReactNode;\n}\n\ntype UserActionDialog =\n | \"revoke-membership\"\n | \"revoke-invite\"\n | \"resend-invite\"\n | \"edit-role\";\n\nexport const UserActionsDropdown = ({\n user,\n children,\n}: UserActionsDropdownProps) => {\n const rolesAndConfigQuery = useRolesAndConfig({\n query: {\n initialData: { roles: [], multipleRolesEnabled: false },\n },\n });\n const { roles, multipleRolesEnabled: isMultipleRolesEnabled } =\n rolesAndConfigQuery.data;\n const [openDialog, setOpenDialog] = React.useState<UserActionDialog | null>(\n null,\n );\n\n /**\n * Assigns a key for each dialog based on its open state to ensure its\n * internal state is cleared when it is closed.\n */\n function getDialogKey(dialog: UserActionDialog) {\n return `${dialog}-${openDialog === dialog}-${user.id}`;\n }\n\n const { actions, items } = React.useMemo(() => {\n const actions = new Set(user.actions);\n const items: React.ReactElement[] = [];\n if (actions.has(\"edit-role\")) {\n items.push(\n <PrimaryMenuItem\n key=\"edit-role\"\n onSelect={() => setOpenDialog(\"edit-role\")}\n disabled={\n rolesAndConfigQuery.isLoading ||\n (rolesAndConfigQuery.isSuccess && roles.length <= 1)\n }\n title={\n rolesAndConfigQuery.isSuccess && roles.length <= 1\n ? \"You cannot update the role for this user as there is only one role available.\"\n : undefined\n }\n >\n {`Edit role${isMultipleRolesEnabled ? \"s\" : \"\"}`}\n </PrimaryMenuItem>,\n );\n }\n if (actions.has(\"resend-invite\")) {\n items.push(\n <PrimaryMenuItem\n key=\"resend-invite\"\n onSelect={() => setOpenDialog(\"resend-invite\")}\n >\n Resend invitation\n </PrimaryMenuItem>,\n );\n }\n if (actions.has(\"revoke-invite\")) {\n items.push(\n <DestructiveMenuItem\n key=\"revoke-invite\"\n onSelect={() => setOpenDialog(\"revoke-invite\")}\n >\n Revoke invitation\n </DestructiveMenuItem>,\n );\n }\n if (actions.has(\"revoke-membership\")) {\n items.push(\n <DestructiveMenuItem\n key=\"revoke-membership\"\n onSelect={() => setOpenDialog(\"revoke-membership\")}\n >\n Remove user\n </DestructiveMenuItem>,\n );\n }\n return {\n actions,\n items,\n };\n }, [rolesAndConfigQuery, user.actions, isMultipleRolesEnabled, roles]);\n\n if (user.isLoggedInUser || items.length === 0) {\n return null;\n }\n\n return (\n <>\n <DropdownMenu.Root>\n <DropdownMenu.Trigger>{children}</DropdownMenu.Trigger>\n <DropdownMenuContent size=\"2\" align=\"end\">\n {items}\n </DropdownMenuContent>\n </DropdownMenu.Root>\n\n {actions.has(\"edit-role\") && (\n <EditUserRoleDialog\n key={getDialogKey(\"edit-role\")}\n user={user}\n open={openDialog === \"edit-role\"}\n onOpenChange={(open) => !open && setOpenDialog(null)}\n />\n )}\n\n {actions.has(\"revoke-membership\") && (\n <DeleteUserDialog\n key={getDialogKey(\"revoke-membership\")}\n user={user}\n open={openDialog === \"revoke-membership\"}\n onOpenChange={(open) => !open && setOpenDialog(null)}\n />\n )}\n\n {actions.has(\"revoke-invite\") && (\n <RevokeInviteDialog\n key={getDialogKey(\"revoke-invite\")}\n user={user}\n open={openDialog === \"revoke-invite\"}\n onOpenChange={(open) => !open && setOpenDialog(null)}\n />\n )}\n\n {actions.has(\"resend-invite\") && (\n <ResendInviteDialog\n key={getDialogKey(\"resend-invite\")}\n user={user}\n open={openDialog === \"resend-invite\"}\n onOpenChange={(open) => !open && setOpenDialog(null)}\n />\n )}\n </>\n );\n};\n"],"mappings":"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","names":["actions","items"]}
@@ -0,0 +1,13 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import { Member } from '../api/endpoint.cjs';
4
+ import '@tanstack/react-query';
5
+ import '../api/widgets-api-client.cjs';
6
+
7
+ interface UserActionsDropdownProps {
8
+ user: Member;
9
+ children: React.ReactNode;
10
+ }
11
+ declare const UserActionsDropdown: ({ user, children, }: UserActionsDropdownProps) => react_jsx_runtime.JSX.Element | null;
12
+
13
+ export { UserActionsDropdown };
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ "use client";
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var user_profile_exports = {};
31
+ __export(user_profile_exports, {
32
+ UserProfile: () => UserProfile,
33
+ UserProfileError: () => UserProfileError,
34
+ UserProfileLoading: () => UserProfileLoading
35
+ });
36
+ module.exports = __toCommonJS(user_profile_exports);
37
+ var import_jsx_runtime = require("react/jsx-runtime");
38
+ var import_themes = require("@radix-ui/themes");
39
+ var import_clsx = __toESM(require("clsx"), 1);
40
+ var import_elements = require("./elements.js");
41
+ var import_edit_user_profile_dialog = require("./edit-user-profile-dialog.js");
42
+ var import_utils = require("./utils.js");
43
+ var import_oauth_icons = require("./oauth-icons.js");
44
+ var import_generic_error = require("./generic-error.js");
45
+ const UserProfile = ({ userData: user }) => {
46
+ const oauthAccounts = Object.entries(user.oauthProfiles || {});
47
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
48
+ import_themes.Card,
49
+ {
50
+ className: (0, import_clsx.default)("woswidgets-widget"),
51
+ "data-woswidgets-widget-id": "user-profile",
52
+ size: "2",
53
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Root, { children: [
54
+ user.profilePictureUrl && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
55
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { align: "center", children: [
56
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { minWidth: "220px", highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: "Profile picture" }) }),
57
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
58
+ import_elements.Avatar,
59
+ {
60
+ size: "2",
61
+ fallback: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FallbackUserIcon, {}),
62
+ src: user.profilePictureUrl
63
+ }
64
+ ) })
65
+ ] }),
66
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListSeparator, {})
67
+ ] }),
68
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { align: "center", children: [
69
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: "Full name" }) }),
70
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
71
+ import_themes.Flex,
72
+ {
73
+ align: "center",
74
+ justify: "between",
75
+ width: "100%",
76
+ minHeight: "var(--space-6)",
77
+ children: [
78
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", children: (0, import_utils.getBestName)(user) || /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
79
+ import_themes.Text,
80
+ {
81
+ color: "gray",
82
+ style: { color: "var(--gray-10)", cursor: "default" },
83
+ children: "Not set"
84
+ }
85
+ ) }),
86
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_edit_user_profile_dialog.EditUserProfileDialog, { user, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Edit" }) })
87
+ ]
88
+ }
89
+ ) })
90
+ ] }),
91
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListSeparator, {}),
92
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { align: "center", children: [
93
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: "Email address" }) }),
94
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Flex, { align: "center", minHeight: "var(--space-6)", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", children: user.email }) }) })
95
+ ] }),
96
+ oauthAccounts.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
97
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListSeparator, {}),
98
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { children: [
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: "Connected accounts" }) }),
100
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Flex, { direction: "column", gap: "2", children: oauthAccounts.map(([account, data]) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
101
+ OAuthAccount,
102
+ {
103
+ account,
104
+ email: data?.email
105
+ },
106
+ account
107
+ )) }) })
108
+ ] })
109
+ ] })
110
+ ] })
111
+ }
112
+ );
113
+ };
114
+ const UserProfileLoading = () => {
115
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Card, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Root, { children: [
116
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { align: "center", children: [
117
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { minWidth: "220px", highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Full name" }) }) }),
118
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
119
+ import_themes.Flex,
120
+ {
121
+ align: "center",
122
+ justify: "between",
123
+ width: "100%",
124
+ minHeight: "var(--space-6)",
125
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Full name" }) })
126
+ }
127
+ ) })
128
+ ] }),
129
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListSeparator, {}),
130
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.DataList.Item, { align: "center", children: [
131
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Label, { highContrast: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Strong, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Email address" }) }) }),
132
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.DataList.Value, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Flex, { align: "center", minHeight: "var(--space-6)", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Email address" }) }) }) })
133
+ ] })
134
+ ] }) });
135
+ };
136
+ function UserProfileError({ error }) {
137
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Card, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_generic_error.GenericError, { error }) });
138
+ }
139
+ const ListSeparator = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Box, { asChild: true, gridColumn: "span 2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Inset, { side: "x", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Separator, { size: "4" }) }) });
140
+ const OAuthAccount = ({
141
+ account,
142
+ email
143
+ }) => {
144
+ const Icon = (0, import_oauth_icons.getOAuthIcon)(account);
145
+ const name = (0, import_oauth_icons.getOAuthName)(account);
146
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Flex, { align: "center", gap: "1", children: [
147
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, {}),
148
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", ml: "1", children: name }),
149
+ email && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Box, { display: { initial: "none", sm: "contents" }, children: [
150
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", color: "gray", children: "\u2219" }),
151
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", color: "gray", children: email })
152
+ ] })
153
+ ] });
154
+ };
155
+ const FallbackUserIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
156
+ "svg",
157
+ {
158
+ xmlns: "http://www.w3.org/2000/svg",
159
+ width: "20",
160
+ height: "20",
161
+ fill: "currentColor",
162
+ viewBox: "0 0 256 256",
163
+ children: [
164
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("title", { children: "User icon" }),
165
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M229.19,213c-15.81-27.32-40.63-46.49-69.47-54.62a70,70,0,1,0-63.44,0C67.44,166.5,42.62,185.67,26.81,213a6,6,0,1,0,10.38,6C56.4,185.81,90.34,166,128,166s71.6,19.81,90.81,53a6,6,0,1,0,10.38-6ZM70,96a58,58,0,1,1,58,58A58.07,58.07,0,0,1,70,96Z" })
166
+ ]
167
+ }
168
+ );
169
+ // Annotate the CommonJS export names for ESM import in node:
170
+ 0 && (module.exports = {
171
+ UserProfile,
172
+ UserProfileError,
173
+ UserProfileLoading
174
+ });
175
+ //# sourceMappingURL=user-profile.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/user-profile.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n Box,\n Card,\n DataList,\n Flex,\n Inset,\n Separator,\n Strong,\n Text,\n} from \"@radix-ui/themes\";\nimport clsx from \"clsx\";\nimport { Avatar, SecondaryButton, Skeleton } from \"./elements.js\";\nimport { Me } from \"../api/endpoint.js\";\nimport { EditUserProfileDialog } from \"./edit-user-profile-dialog.js\";\nimport { getBestName } from \"./utils.js\";\nimport { getOAuthIcon, getOAuthName } from \"./oauth-icons.js\";\nimport { GenericError } from \"./generic-error.js\";\n\ninterface UserProfileProps {\n userData: Me;\n}\n\nexport const UserProfile = ({ userData: user }: UserProfileProps) => {\n const oauthAccounts = Object.entries(user.oauthProfiles || {});\n\n return (\n <Card\n className={clsx(\"woswidgets-widget\")}\n data-woswidgets-widget-id=\"user-profile\"\n size=\"2\"\n >\n <DataList.Root>\n {user.profilePictureUrl && (\n <>\n <DataList.Item align=\"center\">\n <DataList.Label minWidth=\"220px\" highContrast>\n <Strong>Profile picture</Strong>\n </DataList.Label>\n <DataList.Value>\n <Avatar\n size=\"2\"\n fallback={<FallbackUserIcon />}\n src={user.profilePictureUrl}\n />\n </DataList.Value>\n </DataList.Item>\n\n <ListSeparator />\n </>\n )}\n\n <DataList.Item align=\"center\">\n <DataList.Label highContrast>\n <Strong>Full name</Strong>\n </DataList.Label>\n <DataList.Value>\n <Flex\n align=\"center\"\n justify=\"between\"\n width=\"100%\"\n minHeight=\"var(--space-6)\"\n >\n <Text size=\"2\">\n {getBestName(user) || (\n <Text\n color=\"gray\"\n style={{ color: \"var(--gray-10)\", cursor: \"default\" }}\n >\n Not set\n </Text>\n )}\n </Text>\n\n <EditUserProfileDialog user={user}>\n <SecondaryButton>Edit</SecondaryButton>\n </EditUserProfileDialog>\n </Flex>\n </DataList.Value>\n </DataList.Item>\n\n <ListSeparator />\n\n <DataList.Item align=\"center\">\n <DataList.Label highContrast>\n <Strong>Email address</Strong>\n </DataList.Label>\n <DataList.Value>\n <Flex align=\"center\" minHeight=\"var(--space-6)\">\n <Text size=\"2\">{user.email}</Text>\n </Flex>\n </DataList.Value>\n </DataList.Item>\n\n {oauthAccounts.length > 0 && (\n <>\n <ListSeparator />\n\n <DataList.Item>\n <DataList.Label highContrast>\n <Strong>Connected accounts</Strong>\n </DataList.Label>\n <DataList.Value>\n <Flex direction=\"column\" gap=\"2\">\n {oauthAccounts.map(([account, data]) => (\n <OAuthAccount\n key={account}\n account={account}\n email={data?.email}\n />\n ))}\n </Flex>\n </DataList.Value>\n </DataList.Item>\n </>\n )}\n </DataList.Root>\n </Card>\n );\n};\n\nexport const UserProfileLoading: React.FC = () => {\n return (\n <Card size=\"2\">\n <DataList.Root>\n <DataList.Item align=\"center\">\n <DataList.Label minWidth=\"220px\" highContrast>\n <Strong>\n <Skeleton>Full name</Skeleton>\n </Strong>\n </DataList.Label>\n <DataList.Value>\n <Flex\n align=\"center\"\n justify=\"between\"\n width=\"100%\"\n minHeight=\"var(--space-6)\"\n >\n <Text size=\"2\">\n <Skeleton>Full name</Skeleton>\n </Text>\n </Flex>\n </DataList.Value>\n </DataList.Item>\n\n <ListSeparator />\n\n <DataList.Item align=\"center\">\n <DataList.Label highContrast>\n <Strong>\n <Skeleton>Email address</Skeleton>\n </Strong>\n </DataList.Label>\n <DataList.Value>\n <Flex align=\"center\" minHeight=\"var(--space-6)\">\n <Text size=\"2\">\n <Skeleton>Email address</Skeleton>\n </Text>\n </Flex>\n </DataList.Value>\n </DataList.Item>\n </DataList.Root>\n </Card>\n );\n};\n\nexport function UserProfileError({ error }: { error: unknown }) {\n return (\n <Card size=\"2\">\n <GenericError error={error} />\n </Card>\n );\n}\n\nconst ListSeparator = () => (\n <Box asChild gridColumn=\"span 2\">\n <Inset side=\"x\">\n <Separator size=\"4\" />\n </Inset>\n </Box>\n);\n\nconst OAuthAccount = ({\n account,\n email,\n}: {\n account: string;\n email?: string | null;\n}) => {\n const Icon = getOAuthIcon(account);\n const name = getOAuthName(account);\n\n return (\n <Flex align=\"center\" gap=\"1\">\n <Icon />\n\n <Text size=\"2\" ml=\"1\">\n {name}\n </Text>\n\n {email && (\n <Box display={{ initial: \"none\", sm: \"contents\" }}>\n <Text size=\"2\" color=\"gray\">\n ∙\n </Text>\n <Text size=\"2\" color=\"gray\">\n {email}\n </Text>\n </Box>\n )}\n </Flex>\n );\n};\n\nconst FallbackUserIcon = () => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n fill=\"currentColor\"\n viewBox=\"0 0 256 256\"\n >\n <title>User icon</title>\n <path d=\"M229.19,213c-15.81-27.32-40.63-46.49-69.47-54.62a70,70,0,1,0-63.44,0C67.44,166.5,42.62,185.67,26.81,213a6,6,0,1,0,10.38,6C56.4,185.81,90.34,166,128,166s71.6,19.81,90.81,53a6,6,0,1,0,10.38-6ZM70,96a58,58,0,1,1,58,58A58.07,58.07,0,0,1,70,96Z\" />\n </svg>\n);\n"],"mappings":"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","names":["clsx"]}
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { Me } from '../api/endpoint.cjs';
3
+ import '@tanstack/react-query';
4
+ import '../api/widgets-api-client.cjs';
5
+
6
+ interface UserProfileProps {
7
+ userData: Me;
8
+ }
9
+ declare const UserProfile: ({ userData: user }: UserProfileProps) => react_jsx_runtime.JSX.Element;
10
+ declare const UserProfileLoading: React.FC;
11
+ declare function UserProfileError({ error }: {
12
+ error: unknown;
13
+ }): react_jsx_runtime.JSX.Element;
14
+
15
+ export { UserProfile, UserProfileError, UserProfileLoading };
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ "use client";
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var user_security_exports = {};
31
+ __export(user_security_exports, {
32
+ UserSecurity: () => UserSecurity,
33
+ UserSecurityError: () => UserSecurityError,
34
+ UserSecurityLoading: () => UserSecurityLoading
35
+ });
36
+ module.exports = __toCommonJS(user_security_exports);
37
+ var import_jsx_runtime = require("react/jsx-runtime");
38
+ var import_themes = require("@radix-ui/themes");
39
+ var import_clsx = __toESM(require("clsx"), 1);
40
+ var import_elements = require("./elements.js");
41
+ var import_icon_panel = require("./icon-panel.js");
42
+ var import_react_icons = require("@radix-ui/react-icons");
43
+ var import_set_password_dialog = require("./set-password-dialog.js");
44
+ var import_change_password_dialog = require("./change-password-dialog.js");
45
+ var import_add_mfa_dialog = require("./add-mfa-dialog.js");
46
+ var import_reset_mfa_dialog = require("./reset-mfa-dialog.js");
47
+ var CardList = __toESM(require("../card-list.js"), 1);
48
+ var import_generic_error = require("./generic-error.js");
49
+ var import_utils = require("./utils.js");
50
+ const UserSecurity = ({ settings }) => {
51
+ const passwordSettings = settings.verificationMethods.Password;
52
+ const mfaSettings = settings.verificationMethods.Mfa;
53
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
54
+ CardList.Root,
55
+ {
56
+ className: (0, import_clsx.default)("woswidgets-widget"),
57
+ "data-woswidgets-widget-id": "user-security",
58
+ children: [
59
+ passwordSettings && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CardList.Item, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PasswordSettings, { settings: passwordSettings }) }),
60
+ mfaSettings && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CardList.Item, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
61
+ MfaSettings,
62
+ {
63
+ settings: mfaSettings,
64
+ isPasswordSet: !!passwordSettings?.isSetUp
65
+ }
66
+ ) })
67
+ ]
68
+ }
69
+ );
70
+ };
71
+ function UserSecurityError({ error }) {
72
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Card, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_generic_error.GenericError, { error }) });
73
+ }
74
+ const UserSecurityLoading = () => {
75
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Card, { size: "2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [
76
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icon_panel.IconPanel, {}) }),
77
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Flex, { direction: "column", children: [
78
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Password" }) }),
79
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { as: "p", size: "2", color: "gray", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: "Set a password to access your account" }) })
80
+ ] }),
81
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_change_password_dialog.ChangePasswordDialog, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.Skeleton, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Change" }) }) })
82
+ ] }) });
83
+ };
84
+ function PasswordSettings({
85
+ settings
86
+ }) {
87
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [
88
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icon_panel.IconPanel, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_icons.LockClosedIcon, {}) }),
89
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Flex, { direction: "column", children: [
90
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: "Password" }),
91
+ settings.isSetUp ? settings.lastUsed && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Text, { size: "2", color: "gray", children: [
92
+ "Last used",
93
+ " ",
94
+ (0, import_utils.getComparativeReadableDate)(
95
+ /* @__PURE__ */ new Date(),
96
+ new Date(settings.lastUsed)
97
+ )
98
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { as: "p", size: "2", color: "gray", children: "Set a password to access your account" })
99
+ ] }),
100
+ settings.isSetUp ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_change_password_dialog.ChangePasswordDialog, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Change" }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_set_password_dialog.SetPasswordDialog, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Set a password" }) })
101
+ ] });
102
+ }
103
+ function MfaSettings({
104
+ settings,
105
+ isPasswordSet
106
+ }) {
107
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [
108
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icon_panel.IconPanel, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_icons.ButtonIcon, {}) }),
109
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Flex, { direction: "column", children: [
110
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: "Multi-factor authentication" }),
111
+ settings.isSetUp ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Text, { size: "2", children: [
112
+ "Authenticator app",
113
+ settings.lastUsed && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
114
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { size: "2", color: "gray", mx: "1", children: "\u2219" }),
115
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_themes.Text, { size: "2", color: "gray", children: [
116
+ "Last used",
117
+ " ",
118
+ (0, import_utils.getComparativeReadableDate)(
119
+ /* @__PURE__ */ new Date(),
120
+ new Date(settings.lastUsed)
121
+ )
122
+ ] })
123
+ ] })
124
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, { as: "p", size: "2", color: "gray", children: "Secure your account with an extra verification step" })
125
+ ] }),
126
+ settings.isSetUp ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_reset_mfa_dialog.ResetMfaDialog, { isPasswordSet, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Disable" }) }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_add_mfa_dialog.AddMfaDialog, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_elements.SecondaryButton, { children: "Set up authenticator app" }) })
127
+ ] });
128
+ }
129
+ // Annotate the CommonJS export names for ESM import in node:
130
+ 0 && (module.exports = {
131
+ UserSecurity,
132
+ UserSecurityError,
133
+ UserSecurityLoading
134
+ });
135
+ //# sourceMappingURL=user-security.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/user-security.tsx"],"sourcesContent":["\"use client\";\n\nimport { Card, Flex, Grid, Text } from \"@radix-ui/themes\";\nimport clsx from \"clsx\";\nimport { SecondaryButton, Skeleton } from \"./elements.js\";\nimport { IconPanel } from \"./icon-panel.js\";\nimport { ButtonIcon, LockClosedIcon } from \"@radix-ui/react-icons\";\nimport { SetPasswordDialog } from \"./set-password-dialog.js\";\nimport { ChangePasswordDialog } from \"./change-password-dialog.js\";\nimport { AddMfaDialog } from \"./add-mfa-dialog.js\";\nimport type {\n AuthenticationInformationResponseData as AuthenticationSettings,\n AuthenticationInformationResponseDataVerificationMethodsPassword as PasswordVerificationMethod,\n AuthenticationInformationResponseDataVerificationMethodsMfa as MfaVerificationMethod,\n} from \"../api/endpoint.js\";\nimport { ResetMfaDialog } from \"./reset-mfa-dialog.js\";\nimport * as CardList from \"../card-list.js\";\nimport { GenericError } from \"./generic-error.js\";\nimport { getComparativeReadableDate } from \"./utils.js\";\n\ninterface UserSecurityProps {\n settings: AuthenticationSettings;\n}\n\nexport const UserSecurity = ({ settings }: UserSecurityProps) => {\n const passwordSettings = settings.verificationMethods.Password;\n const mfaSettings = settings.verificationMethods.Mfa;\n\n return (\n <CardList.Root\n className={clsx(\"woswidgets-widget\")}\n data-woswidgets-widget-id=\"user-security\"\n >\n {passwordSettings && (\n <CardList.Item>\n <PasswordSettings settings={passwordSettings} />\n </CardList.Item>\n )}\n\n {mfaSettings && (\n <CardList.Item>\n <MfaSettings\n settings={mfaSettings}\n isPasswordSet={!!passwordSettings?.isSetUp}\n />\n </CardList.Item>\n )}\n </CardList.Root>\n );\n};\n\nexport function UserSecurityError({ error }: { error: unknown }) {\n return (\n <Card size=\"2\">\n <GenericError error={error} />\n </Card>\n );\n}\n\nexport const UserSecurityLoading: React.FC = () => {\n return (\n <Card size=\"2\">\n <Grid columns=\"auto 1fr auto\" align=\"center\" gap=\"4\">\n <Skeleton>\n <IconPanel />\n </Skeleton>\n\n <Flex direction=\"column\">\n <Text size=\"2\" highContrast weight=\"bold\" as=\"p\" mb=\"-2px\">\n <Skeleton>Password</Skeleton>\n </Text>\n <Text as=\"p\" size=\"2\" color=\"gray\">\n <Skeleton>Set a password to access your account</Skeleton>\n </Text>\n </Flex>\n\n <ChangePasswordDialog>\n <Skeleton>\n <SecondaryButton>Change</SecondaryButton>\n </Skeleton>\n </ChangePasswordDialog>\n </Grid>\n </Card>\n );\n};\n\nfunction PasswordSettings({\n settings,\n}: {\n settings: NonNullable<PasswordVerificationMethod>;\n}) {\n return (\n <Grid columns=\"auto 1fr auto\" align=\"center\" gap=\"4\">\n <IconPanel>\n <LockClosedIcon />\n </IconPanel>\n\n <Flex direction=\"column\">\n <Text size=\"2\" highContrast weight=\"bold\" as=\"p\" mb=\"-2px\">\n Password\n </Text>\n\n {settings.isSetUp ? (\n settings.lastUsed && (\n <Text size=\"2\" color=\"gray\">\n Last used{\" \"}\n {getComparativeReadableDate(\n new Date(),\n new Date(settings.lastUsed),\n )}\n </Text>\n )\n ) : (\n <Text as=\"p\" size=\"2\" color=\"gray\">\n Set a password to access your account\n </Text>\n )}\n </Flex>\n\n {settings.isSetUp ? (\n <ChangePasswordDialog>\n <SecondaryButton>Change</SecondaryButton>\n </ChangePasswordDialog>\n ) : (\n <SetPasswordDialog>\n <SecondaryButton>Set a password</SecondaryButton>\n </SetPasswordDialog>\n )}\n </Grid>\n );\n}\n\nfunction MfaSettings({\n settings,\n isPasswordSet,\n}: {\n settings: NonNullable<MfaVerificationMethod>;\n isPasswordSet: boolean;\n}) {\n return (\n <Grid columns=\"auto 1fr auto\" align=\"center\" gap=\"4\">\n <IconPanel>\n <ButtonIcon />\n </IconPanel>\n\n <Flex direction=\"column\">\n <Text size=\"2\" highContrast weight=\"bold\" as=\"p\" mb=\"-2px\">\n Multi-factor authentication\n </Text>\n\n {settings.isSetUp ? (\n <Text size=\"2\">\n Authenticator app\n {settings.lastUsed && (\n <>\n <Text size=\"2\" color=\"gray\" mx=\"1\">\n ∙\n </Text>\n <Text size=\"2\" color=\"gray\">\n Last used{\" \"}\n {getComparativeReadableDate(\n new Date(),\n new Date(settings.lastUsed),\n )}\n </Text>\n </>\n )}\n </Text>\n ) : (\n <Text as=\"p\" size=\"2\" color=\"gray\">\n Secure your account with an extra verification step\n </Text>\n )}\n </Flex>\n\n {settings.isSetUp ? (\n <ResetMfaDialog isPasswordSet={isPasswordSet}>\n <SecondaryButton>Disable</SecondaryButton>\n </ResetMfaDialog>\n ) : (\n <AddMfaDialog>\n <SecondaryButton>Set up authenticator app</SecondaryButton>\n </AddMfaDialog>\n )}\n </Grid>\n );\n}\n"],"mappings":"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","names":["clsx"]}
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { AuthenticationInformationResponseData } from '../api/endpoint.cjs';
3
+ import '@tanstack/react-query';
4
+ import '../api/widgets-api-client.cjs';
5
+
6
+ interface UserSecurityProps {
7
+ settings: AuthenticationInformationResponseData;
8
+ }
9
+ declare const UserSecurity: ({ settings }: UserSecurityProps) => react_jsx_runtime.JSX.Element;
10
+ declare function UserSecurityError({ error }: {
11
+ error: unknown;
12
+ }): react_jsx_runtime.JSX.Element;
13
+ declare const UserSecurityLoading: React.FC;
14
+
15
+ export { UserSecurity, UserSecurityError, UserSecurityLoading };