@workos-inc/widgets 1.0.0 → 1.1.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.
- package/README.md +68 -1
- package/dist/cjs/card-list.d.ts +6 -0
- package/dist/cjs/card-list.d.ts.map +1 -0
- package/dist/cjs/card-list.js +13 -0
- package/dist/cjs/card-list.js.map +1 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +7 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/add-mfa-dialog.d.ts +9 -0
- package/dist/cjs/lib/add-mfa-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/add-mfa-dialog.js +135 -0
- package/dist/cjs/lib/add-mfa-dialog.js.map +1 -0
- package/dist/cjs/lib/api/user.d.ts +13 -57
- package/dist/cjs/lib/api/user.d.ts.map +1 -1
- package/dist/cjs/lib/api/user.js +44 -314
- package/dist/cjs/lib/api/user.js.map +1 -1
- package/dist/cjs/lib/change-password-dialog.d.ts +8 -0
- package/dist/cjs/lib/change-password-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/change-password-dialog.js +97 -0
- package/dist/cjs/lib/change-password-dialog.js.map +1 -0
- package/dist/cjs/lib/copy-button.d.ts +8 -0
- package/dist/cjs/lib/copy-button.d.ts.map +1 -0
- package/dist/cjs/lib/copy-button.js +63 -0
- package/dist/cjs/lib/copy-button.js.map +1 -0
- package/dist/cjs/lib/delete-user-dialog.d.ts +2 -2
- package/dist/cjs/lib/delete-user-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/delete-user-dialog.js +1 -1
- package/dist/cjs/lib/delete-user-dialog.js.map +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts +10 -0
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/edit-user-profile-dialog.js +85 -0
- package/dist/cjs/lib/edit-user-profile-dialog.js.map +1 -0
- package/dist/cjs/lib/edit-user-role-dialog.d.ts +12 -0
- package/dist/cjs/lib/edit-user-role-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/{edit-user-details-dialog.js → edit-user-role-dialog.js} +11 -7
- package/dist/cjs/lib/edit-user-role-dialog.js.map +1 -0
- package/dist/cjs/lib/elements.d.ts +1 -0
- package/dist/cjs/lib/elements.d.ts.map +1 -1
- package/dist/cjs/lib/elements.js +10 -4
- package/dist/cjs/lib/elements.js.map +1 -1
- package/dist/cjs/lib/elevated-access.d.ts +8 -0
- package/dist/cjs/lib/elevated-access.d.ts.map +1 -0
- package/dist/cjs/lib/elevated-access.js +130 -0
- package/dist/cjs/lib/elevated-access.js.map +1 -0
- package/dist/cjs/lib/generic-error.d.ts +4 -0
- package/dist/cjs/lib/generic-error.d.ts.map +1 -0
- package/dist/cjs/lib/generic-error.js +57 -0
- package/dist/cjs/lib/generic-error.js.map +1 -0
- package/dist/cjs/lib/icon-panel.d.ts +3 -0
- package/dist/cjs/lib/icon-panel.d.ts.map +1 -0
- package/dist/cjs/lib/icon-panel.js +16 -0
- package/dist/cjs/lib/icon-panel.js.map +1 -0
- package/dist/cjs/lib/icons.d.ts +3 -0
- package/dist/cjs/lib/icons.d.ts.map +1 -0
- package/dist/cjs/lib/icons.js +8 -0
- package/dist/cjs/lib/icons.js.map +1 -0
- package/dist/cjs/lib/invite-user-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/invite-user-dialog.js +7 -5
- package/dist/cjs/lib/invite-user-dialog.js.map +1 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.d.ts +9 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.js +52 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.js.map +1 -0
- package/dist/cjs/lib/logout-dialog.d.ts +10 -0
- package/dist/cjs/lib/logout-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/logout-dialog.js +58 -0
- package/dist/cjs/lib/logout-dialog.js.map +1 -0
- package/dist/cjs/lib/marker.d.ts +14 -0
- package/dist/cjs/lib/marker.d.ts.map +1 -0
- package/dist/cjs/lib/marker.js +38 -0
- package/dist/cjs/lib/marker.js.map +1 -0
- package/dist/cjs/lib/oauth-icons.d.ts +4 -0
- package/dist/cjs/lib/oauth-icons.d.ts.map +1 -0
- package/dist/cjs/lib/oauth-icons.js +67 -0
- package/dist/cjs/lib/oauth-icons.js.map +1 -0
- package/dist/cjs/lib/organization-switcher.d.ts +24 -0
- package/dist/cjs/lib/organization-switcher.d.ts.map +1 -0
- package/dist/cjs/lib/organization-switcher.js +35 -0
- package/dist/cjs/lib/organization-switcher.js.map +1 -0
- package/dist/cjs/lib/otp-input.d.ts +20 -0
- package/dist/cjs/lib/otp-input.d.ts.map +1 -0
- package/dist/cjs/lib/otp-input.js +174 -0
- package/dist/cjs/lib/otp-input.js.map +1 -0
- package/dist/cjs/lib/resend-invite-dialog.d.ts +2 -2
- package/dist/cjs/lib/resend-invite-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/resend-invite-dialog.js +1 -1
- package/dist/cjs/lib/resend-invite-dialog.js.map +1 -1
- package/dist/cjs/lib/reset-mfa-dialog.d.ts +9 -0
- package/dist/cjs/lib/reset-mfa-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/reset-mfa-dialog.js +60 -0
- package/dist/cjs/lib/reset-mfa-dialog.js.map +1 -0
- package/dist/cjs/lib/revoke-invite-dialog.d.ts +2 -2
- package/dist/cjs/lib/revoke-invite-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.js +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.js.map +1 -1
- package/dist/cjs/lib/save-button.d.ts +11 -0
- package/dist/cjs/lib/save-button.d.ts.map +1 -0
- package/dist/cjs/lib/save-button.js +47 -0
- package/dist/cjs/lib/save-button.js.map +1 -0
- package/dist/cjs/lib/set-password-dialog.d.ts +8 -0
- package/dist/cjs/lib/set-password-dialog.d.ts.map +1 -0
- package/dist/cjs/lib/set-password-dialog.js +80 -0
- package/dist/cjs/lib/set-password-dialog.js.map +1 -0
- package/dist/cjs/lib/use-dialog-close.d.ts +2 -0
- package/dist/cjs/lib/use-dialog-close.d.ts.map +1 -0
- package/dist/cjs/lib/use-dialog-close.js +43 -0
- package/dist/cjs/lib/use-dialog-close.js.map +1 -0
- package/dist/cjs/lib/use-security-settings.d.ts +11 -0
- package/dist/cjs/lib/use-security-settings.d.ts.map +1 -0
- package/dist/cjs/lib/use-security-settings.js +39 -0
- package/dist/cjs/lib/use-security-settings.js.map +1 -0
- package/dist/cjs/lib/user-actions-dropdown.d.ts +2 -2
- package/dist/cjs/lib/user-actions-dropdown.d.ts.map +1 -1
- package/dist/cjs/lib/user-actions-dropdown.js +8 -4
- package/dist/cjs/lib/user-actions-dropdown.js.map +1 -1
- package/dist/cjs/lib/user-profile.d.ts +11 -0
- package/dist/cjs/lib/user-profile.d.ts.map +1 -0
- package/dist/cjs/lib/user-profile.js +36 -0
- package/dist/cjs/lib/user-profile.js.map +1 -0
- package/dist/cjs/lib/user-security.d.ts +11 -0
- package/dist/cjs/lib/user-security.d.ts.map +1 -0
- package/dist/cjs/lib/user-security.js +64 -0
- package/dist/cjs/lib/user-security.js.map +1 -0
- package/dist/cjs/lib/user-sessions.d.ts +12 -0
- package/dist/cjs/lib/user-sessions.d.ts.map +1 -0
- package/dist/cjs/lib/user-sessions.js +72 -0
- package/dist/cjs/lib/user-sessions.js.map +1 -0
- package/dist/cjs/lib/users-filter.d.ts +2 -2
- package/dist/cjs/lib/users-filter.d.ts.map +1 -1
- package/dist/cjs/lib/users-filter.js.map +1 -1
- package/dist/cjs/lib/users-management-context.d.ts +0 -9
- package/dist/cjs/lib/users-management-context.d.ts.map +1 -1
- package/dist/cjs/lib/users-management-context.js +13 -26
- package/dist/cjs/lib/users-management-context.js.map +1 -1
- package/dist/cjs/lib/users-management-state.d.ts +3 -3
- package/dist/cjs/lib/users-management-state.d.ts.map +1 -1
- package/dist/cjs/lib/users-management-state.js.map +1 -1
- package/dist/cjs/lib/users-management.d.ts +3 -4
- package/dist/cjs/lib/users-management.d.ts.map +1 -1
- package/dist/cjs/lib/users-management.js +8 -26
- package/dist/cjs/lib/users-management.js.map +1 -1
- package/dist/cjs/lib/utils.d.ts +10 -2
- package/dist/cjs/lib/utils.d.ts.map +1 -1
- package/dist/cjs/lib/utils.js +18 -0
- package/dist/cjs/lib/utils.js.map +1 -1
- package/dist/cjs/organization-switcher.client.d.ts +8 -0
- package/dist/cjs/organization-switcher.client.d.ts.map +1 -0
- package/dist/cjs/organization-switcher.client.js +37 -0
- package/dist/cjs/organization-switcher.client.js.map +1 -0
- package/dist/cjs/user-profile.client.d.ts +7 -0
- package/dist/cjs/user-profile.client.d.ts.map +1 -0
- package/dist/cjs/user-profile.client.js +31 -0
- package/dist/cjs/user-profile.client.js.map +1 -0
- package/dist/cjs/user-security.client.d.ts +7 -0
- package/dist/cjs/user-security.client.d.ts.map +1 -0
- package/dist/cjs/user-security.client.js +27 -0
- package/dist/cjs/user-security.client.js.map +1 -0
- package/dist/cjs/user-sessions.client.d.ts +12 -0
- package/dist/cjs/user-sessions.client.d.ts.map +1 -0
- package/dist/cjs/user-sessions.client.js +48 -0
- package/dist/cjs/user-sessions.client.js.map +1 -0
- package/dist/cjs/users-management.client.d.ts +2 -1
- package/dist/cjs/users-management.client.d.ts.map +1 -1
- package/dist/cjs/users-management.client.js +12 -43
- package/dist/cjs/users-management.client.js.map +1 -1
- package/dist/esm/card-list.d.ts +6 -0
- package/dist/esm/card-list.d.ts.map +1 -0
- package/dist/esm/card-list.js +9 -0
- package/dist/esm/card-list.js.map +1 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/add-mfa-dialog.d.ts +9 -0
- package/dist/esm/lib/add-mfa-dialog.d.ts.map +1 -0
- package/dist/esm/lib/add-mfa-dialog.js +109 -0
- package/dist/esm/lib/add-mfa-dialog.js.map +1 -0
- package/dist/esm/lib/api/user.d.ts +13 -57
- package/dist/esm/lib/api/user.d.ts.map +1 -1
- package/dist/esm/lib/api/user.js +44 -313
- package/dist/esm/lib/api/user.js.map +1 -1
- package/dist/esm/lib/change-password-dialog.d.ts +8 -0
- package/dist/esm/lib/change-password-dialog.d.ts.map +1 -0
- package/dist/esm/lib/change-password-dialog.js +71 -0
- package/dist/esm/lib/change-password-dialog.js.map +1 -0
- package/dist/esm/lib/copy-button.d.ts +8 -0
- package/dist/esm/lib/copy-button.d.ts.map +1 -0
- package/dist/esm/lib/copy-button.js +37 -0
- package/dist/esm/lib/copy-button.js.map +1 -0
- package/dist/esm/lib/delete-user-dialog.d.ts +2 -2
- package/dist/esm/lib/delete-user-dialog.d.ts.map +1 -1
- package/dist/esm/lib/delete-user-dialog.js +1 -1
- package/dist/esm/lib/delete-user-dialog.js.map +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts +10 -0
- package/dist/esm/lib/edit-user-profile-dialog.d.ts.map +1 -0
- package/dist/esm/lib/edit-user-profile-dialog.js +59 -0
- package/dist/esm/lib/edit-user-profile-dialog.js.map +1 -0
- package/dist/esm/lib/edit-user-role-dialog.d.ts +12 -0
- package/dist/esm/lib/edit-user-role-dialog.d.ts.map +1 -0
- package/dist/esm/lib/{edit-user-details-dialog.js → edit-user-role-dialog.js} +10 -6
- package/dist/esm/lib/edit-user-role-dialog.js.map +1 -0
- package/dist/esm/lib/elements.d.ts +1 -0
- package/dist/esm/lib/elements.d.ts.map +1 -1
- package/dist/esm/lib/elements.js +9 -3
- package/dist/esm/lib/elements.js.map +1 -1
- package/dist/esm/lib/elevated-access.d.ts +8 -0
- package/dist/esm/lib/elevated-access.d.ts.map +1 -0
- package/dist/esm/lib/elevated-access.js +104 -0
- package/dist/esm/lib/elevated-access.js.map +1 -0
- package/dist/esm/lib/generic-error.d.ts +4 -0
- package/dist/esm/lib/generic-error.d.ts.map +1 -0
- package/dist/esm/lib/generic-error.js +31 -0
- package/dist/esm/lib/generic-error.js.map +1 -0
- package/dist/esm/lib/icon-panel.d.ts +3 -0
- package/dist/esm/lib/icon-panel.d.ts.map +1 -0
- package/dist/esm/lib/icon-panel.js +13 -0
- package/dist/esm/lib/icon-panel.js.map +1 -0
- package/dist/esm/lib/icons.d.ts +3 -0
- package/dist/esm/lib/icons.d.ts.map +1 -0
- package/dist/esm/lib/icons.js +5 -0
- package/dist/esm/lib/icons.js.map +1 -0
- package/dist/esm/lib/invite-user-dialog.d.ts.map +1 -1
- package/dist/esm/lib/invite-user-dialog.js +7 -5
- package/dist/esm/lib/invite-user-dialog.js.map +1 -1
- package/dist/esm/lib/logout-all-sessions-dialog.d.ts +9 -0
- package/dist/esm/lib/logout-all-sessions-dialog.d.ts.map +1 -0
- package/dist/esm/lib/logout-all-sessions-dialog.js +26 -0
- package/dist/esm/lib/logout-all-sessions-dialog.js.map +1 -0
- package/dist/esm/lib/logout-dialog.d.ts +10 -0
- package/dist/esm/lib/logout-dialog.d.ts.map +1 -0
- package/dist/esm/lib/logout-dialog.js +32 -0
- package/dist/esm/lib/logout-dialog.js.map +1 -0
- package/dist/esm/lib/marker.d.ts +14 -0
- package/dist/esm/lib/marker.d.ts.map +1 -0
- package/dist/esm/lib/marker.js +9 -0
- package/dist/esm/lib/marker.js.map +1 -0
- package/dist/esm/lib/oauth-icons.d.ts +4 -0
- package/dist/esm/lib/oauth-icons.d.ts.map +1 -0
- package/dist/esm/lib/oauth-icons.js +39 -0
- package/dist/esm/lib/oauth-icons.js.map +1 -0
- package/dist/esm/lib/organization-switcher.d.ts +24 -0
- package/dist/esm/lib/organization-switcher.d.ts.map +1 -0
- package/dist/esm/lib/organization-switcher.js +29 -0
- package/dist/esm/lib/organization-switcher.js.map +1 -0
- package/dist/esm/lib/otp-input.d.ts +20 -0
- package/dist/esm/lib/otp-input.d.ts.map +1 -0
- package/dist/esm/lib/otp-input.js +148 -0
- package/dist/esm/lib/otp-input.js.map +1 -0
- package/dist/esm/lib/resend-invite-dialog.d.ts +2 -2
- package/dist/esm/lib/resend-invite-dialog.d.ts.map +1 -1
- package/dist/esm/lib/resend-invite-dialog.js +1 -1
- package/dist/esm/lib/resend-invite-dialog.js.map +1 -1
- package/dist/esm/lib/reset-mfa-dialog.d.ts +9 -0
- package/dist/esm/lib/reset-mfa-dialog.d.ts.map +1 -0
- package/dist/esm/lib/reset-mfa-dialog.js +34 -0
- package/dist/esm/lib/reset-mfa-dialog.js.map +1 -0
- package/dist/esm/lib/revoke-invite-dialog.d.ts +2 -2
- package/dist/esm/lib/revoke-invite-dialog.d.ts.map +1 -1
- package/dist/esm/lib/revoke-invite-dialog.js +1 -1
- package/dist/esm/lib/revoke-invite-dialog.js.map +1 -1
- package/dist/esm/lib/save-button.d.ts +11 -0
- package/dist/esm/lib/save-button.d.ts.map +1 -0
- package/dist/esm/lib/save-button.js +44 -0
- package/dist/esm/lib/save-button.js.map +1 -0
- package/dist/esm/lib/set-password-dialog.d.ts +8 -0
- package/dist/esm/lib/set-password-dialog.d.ts.map +1 -0
- package/dist/esm/lib/set-password-dialog.js +54 -0
- package/dist/esm/lib/set-password-dialog.js.map +1 -0
- package/dist/esm/lib/use-dialog-close.d.ts +2 -0
- package/dist/esm/lib/use-dialog-close.d.ts.map +1 -0
- package/dist/esm/lib/use-dialog-close.js +17 -0
- package/dist/esm/lib/use-dialog-close.js.map +1 -0
- package/dist/esm/lib/use-security-settings.d.ts +11 -0
- package/dist/esm/lib/use-security-settings.d.ts.map +1 -0
- package/dist/esm/lib/use-security-settings.js +36 -0
- package/dist/esm/lib/use-security-settings.js.map +1 -0
- package/dist/esm/lib/user-actions-dropdown.d.ts +2 -2
- package/dist/esm/lib/user-actions-dropdown.d.ts.map +1 -1
- package/dist/esm/lib/user-actions-dropdown.js +8 -4
- package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
- package/dist/esm/lib/user-profile.d.ts +11 -0
- package/dist/esm/lib/user-profile.d.ts.map +1 -0
- package/dist/esm/lib/user-profile.js +27 -0
- package/dist/esm/lib/user-profile.js.map +1 -0
- package/dist/esm/lib/user-security.d.ts +11 -0
- package/dist/esm/lib/user-security.d.ts.map +1 -0
- package/dist/esm/lib/user-security.js +32 -0
- package/dist/esm/lib/user-security.js.map +1 -0
- package/dist/esm/lib/user-sessions.d.ts +12 -0
- package/dist/esm/lib/user-sessions.d.ts.map +1 -0
- package/dist/esm/lib/user-sessions.js +40 -0
- package/dist/esm/lib/user-sessions.js.map +1 -0
- package/dist/esm/lib/users-filter.d.ts +2 -2
- package/dist/esm/lib/users-filter.d.ts.map +1 -1
- package/dist/esm/lib/users-filter.js.map +1 -1
- package/dist/esm/lib/users-management-context.d.ts +0 -9
- package/dist/esm/lib/users-management-context.d.ts.map +1 -1
- package/dist/esm/lib/users-management-context.js +13 -25
- package/dist/esm/lib/users-management-context.js.map +1 -1
- package/dist/esm/lib/users-management-state.d.ts +3 -3
- package/dist/esm/lib/users-management-state.d.ts.map +1 -1
- package/dist/esm/lib/users-management-state.js.map +1 -1
- package/dist/esm/lib/users-management.d.ts +3 -4
- package/dist/esm/lib/users-management.d.ts.map +1 -1
- package/dist/esm/lib/users-management.js +9 -27
- package/dist/esm/lib/users-management.js.map +1 -1
- package/dist/esm/lib/users-search.d.ts +1 -1
- package/dist/esm/lib/users-search.d.ts.map +1 -1
- package/dist/esm/lib/utils.d.ts +10 -2
- package/dist/esm/lib/utils.d.ts.map +1 -1
- package/dist/esm/lib/utils.js +16 -0
- package/dist/esm/lib/utils.js.map +1 -1
- package/dist/esm/organization-switcher.client.d.ts +8 -0
- package/dist/esm/organization-switcher.client.d.ts.map +1 -0
- package/dist/esm/organization-switcher.client.js +33 -0
- package/dist/esm/organization-switcher.client.js.map +1 -0
- package/dist/esm/user-profile.client.d.ts +7 -0
- package/dist/esm/user-profile.client.d.ts.map +1 -0
- package/dist/esm/user-profile.client.js +27 -0
- package/dist/esm/user-profile.client.js.map +1 -0
- package/dist/esm/user-security.client.d.ts +7 -0
- package/dist/esm/user-security.client.d.ts.map +1 -0
- package/dist/esm/user-security.client.js +23 -0
- package/dist/esm/user-security.client.js.map +1 -0
- package/dist/esm/user-sessions.client.d.ts +12 -0
- package/dist/esm/user-sessions.client.d.ts.map +1 -0
- package/dist/esm/user-sessions.client.js +44 -0
- package/dist/esm/user-sessions.client.js.map +1 -0
- package/dist/esm/users-management.client.d.ts +2 -1
- package/dist/esm/users-management.client.d.ts.map +1 -1
- package/dist/esm/users-management.client.js +12 -20
- package/dist/esm/users-management.client.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +10 -4
- package/src/card-list.tsx +26 -0
- package/src/index.ts +3 -0
- package/src/lib/add-mfa-dialog.tsx +379 -0
- package/src/lib/api/user.ts +54 -458
- package/src/lib/card-list.css +3 -0
- package/src/lib/change-password-dialog.tsx +290 -0
- package/src/lib/copy-button.tsx +53 -0
- package/src/lib/delete-user-dialog.tsx +9 -6
- package/src/lib/edit-user-profile-dialog.tsx +181 -0
- package/src/lib/{edit-user-details-dialog.tsx → edit-user-role-dialog.tsx} +12 -9
- package/src/lib/elements.tsx +34 -1
- package/src/lib/elevated-access.tsx +261 -0
- package/src/lib/generic-error.tsx +70 -0
- package/src/lib/icon-panel.tsx +26 -0
- package/src/lib/icons.tsx +21 -0
- package/src/lib/invite-user-dialog.tsx +15 -10
- package/src/lib/logout-all-sessions-dialog.tsx +82 -0
- package/src/lib/logout-dialog.tsx +89 -0
- package/src/lib/marker.css +81 -0
- package/src/lib/marker.tsx +39 -0
- package/src/lib/oauth-icons.tsx +138 -0
- package/src/lib/organization-switcher.tsx +160 -0
- package/src/lib/otp-input.tsx +276 -0
- package/src/lib/resend-invite-dialog.tsx +9 -6
- package/src/lib/reset-mfa-dialog.tsx +104 -0
- package/src/lib/revoke-invite-dialog.tsx +9 -6
- package/src/lib/save-button.css +60 -0
- package/src/lib/save-button.tsx +113 -0
- package/src/lib/set-password-dialog.tsx +204 -0
- package/src/lib/use-dialog-close.tsx +19 -0
- package/src/lib/use-security-settings.tsx +49 -0
- package/src/lib/user-actions-dropdown.tsx +10 -6
- package/src/lib/user-profile.tsx +247 -0
- package/src/lib/user-security.tsx +187 -0
- package/src/lib/user-sessions.tsx +204 -0
- package/src/lib/users-filter.tsx +2 -2
- package/src/lib/users-management-context.tsx +21 -36
- package/src/lib/users-management-state.ts +3 -3
- package/src/lib/users-management.tsx +21 -77
- package/src/lib/utils.ts +30 -2
- package/src/organization-switcher.client.tsx +77 -0
- package/src/styles.css +44 -0
- package/src/user-profile.client.tsx +51 -0
- package/src/user-security.client.tsx +55 -0
- package/src/user-sessions.client.tsx +96 -0
- package/src/users-management.client.tsx +28 -39
- package/dist/cjs/lib/api/role.d.ts +0 -9
- package/dist/cjs/lib/api/role.d.ts.map +0 -1
- package/dist/cjs/lib/api/role.js +0 -115
- package/dist/cjs/lib/api/role.js.map +0 -1
- package/dist/cjs/lib/edit-user-details-dialog.d.ts +0 -12
- package/dist/cjs/lib/edit-user-details-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/edit-user-details-dialog.js.map +0 -1
- package/dist/esm/lib/api/role.d.ts +0 -9
- package/dist/esm/lib/api/role.d.ts.map +0 -1
- package/dist/esm/lib/api/role.js +0 -110
- package/dist/esm/lib/api/role.js.map +0 -1
- package/dist/esm/lib/edit-user-details-dialog.d.ts +0 -12
- package/dist/esm/lib/edit-user-details-dialog.d.ts.map +0 -1
- package/dist/esm/lib/edit-user-details-dialog.js.map +0 -1
- package/src/lib/api/role.ts +0 -147
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useSecuritySettings = useSecuritySettings;
|
|
4
|
+
const api_1 = require("@repo/api");
|
|
5
|
+
const react_query_1 = require("@tanstack/react-query");
|
|
6
|
+
/**
|
|
7
|
+
* A hook that provides utilities for managing security settings.
|
|
8
|
+
* Allows optimistically updating verification method status (password, MFA, passkey)
|
|
9
|
+
* while also triggering a server revalidation.
|
|
10
|
+
*/
|
|
11
|
+
function useSecuritySettings() {
|
|
12
|
+
const client = (0, react_query_1.useQueryClient)();
|
|
13
|
+
const update = (method, isSetUp) => {
|
|
14
|
+
const queryKey = (0, api_1.getAuthenticationInformationQueryKey)();
|
|
15
|
+
// Optimistic update
|
|
16
|
+
client.setQueriesData({ queryKey, exact: false }, (data) => {
|
|
17
|
+
if (!data) {
|
|
18
|
+
return data;
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
...data,
|
|
22
|
+
data: {
|
|
23
|
+
...data.data,
|
|
24
|
+
verificationMethods: {
|
|
25
|
+
...data.data.verificationMethods,
|
|
26
|
+
[method]: { ...data.data.verificationMethods[method], isSetUp },
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
});
|
|
31
|
+
// Also validate it with the server
|
|
32
|
+
client.invalidateQueries({
|
|
33
|
+
queryKey: (0, api_1.getAuthenticationInformationQueryKey)(),
|
|
34
|
+
exact: false,
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
return { update };
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=use-security-settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-security-settings.js","sourceRoot":"","sources":["../../../src/lib/use-security-settings.tsx"],"names":[],"mappings":";;AAaA,kDAmCC;AAhDD,mCAGmB;AACnB,uDAAuD;AAIvD;;;;GAIG;AACH,SAAgB,mBAAmB;IACjC,MAAM,MAAM,GAAG,IAAA,4BAAc,GAAE,CAAC;IAEhC,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,OAAgB,EAAE,EAAE;QACnD,MAAM,QAAQ,GAAG,IAAA,0CAAoC,GAAE,CAAC;QAExD,oBAAoB;QACpB,MAAM,CAAC,cAAc,CACnB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAC1B,CAAC,IAAI,EAAE,EAAE;YACP,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO;gBACL,GAAG,IAAI;gBACP,IAAI,EAAE;oBACJ,GAAG,IAAI,CAAC,IAAI;oBACZ,mBAAmB,EAAE;wBACnB,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB;wBAChC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE;qBAChE;iBACF;aACF,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,mCAAmC;QACnC,MAAM,CAAC,iBAAiB,CAAC;YACvB,QAAQ,EAAE,IAAA,0CAAoC,GAAE;YAChD,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { Member } from "@repo/api";
|
|
3
3
|
interface UserActionsDropdownProps {
|
|
4
|
-
user:
|
|
4
|
+
user: Member;
|
|
5
5
|
children: React.ReactNode;
|
|
6
6
|
}
|
|
7
7
|
export declare const UserActionsDropdown: ({ user, children, }: UserActionsDropdownProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-actions-dropdown.d.ts","sourceRoot":"","sources":["../../../src/lib/user-actions-dropdown.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"user-actions-dropdown.d.ts","sourceRoot":"","sources":["../../../src/lib/user-actions-dropdown.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAYnC,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAQD,eAAO,MAAM,mBAAmB,wBAG7B,wBAAwB,mDA8H1B,CAAC"}
|
|
@@ -29,13 +29,17 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
29
29
|
const themes_1 = require("@radix-ui/themes");
|
|
30
30
|
const React = __importStar(require("react"));
|
|
31
31
|
const delete_user_dialog_1 = require("./delete-user-dialog");
|
|
32
|
-
const
|
|
32
|
+
const edit_user_role_dialog_1 = require("./edit-user-role-dialog");
|
|
33
33
|
const elements_1 = require("./elements");
|
|
34
34
|
const resend_invite_dialog_1 = require("./resend-invite-dialog");
|
|
35
35
|
const revoke_invite_dialog_1 = require("./revoke-invite-dialog");
|
|
36
|
-
const
|
|
36
|
+
const api_1 = require("@repo/api");
|
|
37
37
|
const UserActionsDropdown = ({ user, children, }) => {
|
|
38
|
-
const rolesQuery = (0,
|
|
38
|
+
const rolesQuery = (0, api_1.useRoles)({
|
|
39
|
+
query: {
|
|
40
|
+
initialData: [],
|
|
41
|
+
},
|
|
42
|
+
});
|
|
39
43
|
const [openDialog, setOpenDialog] = React.useState(null);
|
|
40
44
|
/**
|
|
41
45
|
* Assigns a key for each dialog based on its open state to ensure its
|
|
@@ -70,7 +74,7 @@ const UserActionsDropdown = ({ user, children, }) => {
|
|
|
70
74
|
if (user.isLoggedInUser || items.length === 0) {
|
|
71
75
|
return null;
|
|
72
76
|
}
|
|
73
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Root, { children: [(0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Trigger, { children: children }), (0, jsx_runtime_1.jsx)(elements_1.DropdownMenuContent, { size: "2", align: "end", children: items })] }), actions.has("edit-role") && ((0, jsx_runtime_1.jsx)(
|
|
77
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Root, { children: [(0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Trigger, { children: children }), (0, jsx_runtime_1.jsx)(elements_1.DropdownMenuContent, { size: "2", align: "end", children: items })] }), actions.has("edit-role") && ((0, jsx_runtime_1.jsx)(edit_user_role_dialog_1.EditUserRoleDialog, { user: user, open: openDialog === "edit-role", onOpenChange: (open) => !open && setOpenDialog(null) }, getDialogKey("edit-role"))), actions.has("revoke-membership") && ((0, jsx_runtime_1.jsx)(delete_user_dialog_1.DeleteUserDialog, { user: user, open: openDialog === "revoke-membership", onOpenChange: (open) => !open && setOpenDialog(null) }, getDialogKey("revoke-membership"))), actions.has("revoke-invite") && ((0, jsx_runtime_1.jsx)(revoke_invite_dialog_1.RevokeInviteDialog, { user: user, open: openDialog === "revoke-invite", onOpenChange: (open) => !open && setOpenDialog(null) }, getDialogKey("revoke-invite"))), actions.has("resend-invite") && ((0, jsx_runtime_1.jsx)(resend_invite_dialog_1.ResendInviteDialog, { user: user, open: openDialog === "resend-invite", onOpenChange: (open) => !open && setOpenDialog(null) }, getDialogKey("resend-invite")))] }));
|
|
74
78
|
};
|
|
75
79
|
exports.UserActionsDropdown = UserActionsDropdown;
|
|
76
80
|
//# sourceMappingURL=user-actions-dropdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-actions-dropdown.js","sourceRoot":"","sources":["../../../src/lib/user-actions-dropdown.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAAgD;AAChD,6CAA+B;AAE/B,6DAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"user-actions-dropdown.js","sourceRoot":"","sources":["../../../src/lib/user-actions-dropdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Me } from "@repo/api";
|
|
2
|
+
interface UserProfileProps {
|
|
3
|
+
userData: Me;
|
|
4
|
+
}
|
|
5
|
+
export declare const UserProfile: ({ userData: user }: UserProfileProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare function UserProfileLoading(): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function UserProfileError({ error }: {
|
|
8
|
+
error: unknown;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=user-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile.d.ts","sourceRoot":"","sources":["../../../src/lib/user-profile.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAM/B,UAAU,gBAAgB;IACxB,QAAQ,EAAE,EAAE,CAAC;CACd;AAED,eAAO,MAAM,WAAW,uBAAwB,gBAAgB,4CAgG/D,CAAC;AAEF,wBAAgB,kBAAkB,4CA+DjC;AAED,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,2CAM7D"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.UserProfile = void 0;
|
|
8
|
+
exports.UserProfileLoading = UserProfileLoading;
|
|
9
|
+
exports.UserProfileError = UserProfileError;
|
|
10
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
11
|
+
const themes_1 = require("@radix-ui/themes");
|
|
12
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
13
|
+
const elements_1 = require("./elements");
|
|
14
|
+
const edit_user_profile_dialog_1 = require("./edit-user-profile-dialog");
|
|
15
|
+
const utils_1 = require("./utils");
|
|
16
|
+
const oauth_icons_1 = require("./oauth-icons");
|
|
17
|
+
const generic_error_1 = require("./generic-error");
|
|
18
|
+
const UserProfile = ({ userData: user }) => {
|
|
19
|
+
const oauthAccounts = Object.entries(user.oauthProfiles || {});
|
|
20
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { className: (0, clsx_1.default)("woswidgets-widget"), "data-woswidgets-widget-id": "user-profile", size: "2", children: (0, jsx_runtime_1.jsxs)(themes_1.DataList.Root, { children: [user.profilePictureUrl && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { minWidth: "220px", highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Profile picture" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(elements_1.Avatar, { size: "2", fallback: (0, jsx_runtime_1.jsx)(FallbackUserIcon, {}), src: user.profilePictureUrl }) })] }), (0, jsx_runtime_1.jsx)(ListSeparator, {})] })), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Full name" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { align: "center", justify: "between", width: "100%", minHeight: "var(--space-6)", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", children: (0, utils_1.getBestName)(user) || ((0, jsx_runtime_1.jsx)(themes_1.Text, { color: "gray", style: { color: "var(--gray-10)", cursor: "default" }, children: "Not set" })) }), (0, jsx_runtime_1.jsx)(edit_user_profile_dialog_1.EditUserProfileDialog, { user: user, children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Edit" }) })] }) })] }), (0, jsx_runtime_1.jsx)(ListSeparator, {}), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Email address" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(themes_1.Flex, { align: "center", minHeight: "var(--space-6)", children: (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", children: user.email }) }) })] }), oauthAccounts.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(ListSeparator, {}), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Connected accounts" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(themes_1.Flex, { direction: "column", gap: "2", children: oauthAccounts.map(([account, data]) => ((0, jsx_runtime_1.jsx)(OAuthAccount, { account: account, email: data?.email }, account))) }) })] })] }))] }) }));
|
|
21
|
+
};
|
|
22
|
+
exports.UserProfile = UserProfile;
|
|
23
|
+
function UserProfileLoading() {
|
|
24
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsxs)(themes_1.DataList.Root, { children: [(0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { minWidth: "220px", highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Profile picture" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: (0, jsx_runtime_1.jsx)(elements_1.Avatar, { size: "2", fallback: (0, jsx_runtime_1.jsx)(FallbackUserIcon, {}) }) }) })] }), (0, jsx_runtime_1.jsx)(ListSeparator, {}), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Full name" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(themes_1.Flex, { align: "center", justify: "between", width: "100%", minHeight: "var(--space-6)", children: (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "Full name" }) }) }) })] }), (0, jsx_runtime_1.jsx)(ListSeparator, {}), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Email address" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(themes_1.Flex, { align: "center", minHeight: "var(--space-6)", children: (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "Email address" }) }) }) })] }), (0, jsx_runtime_1.jsx)(ListSeparator, {}), (0, jsx_runtime_1.jsxs)(themes_1.DataList.Item, { children: [(0, jsx_runtime_1.jsx)(themes_1.DataList.Label, { highContrast: true, children: (0, jsx_runtime_1.jsx)(themes_1.Strong, { children: "Connected accounts" }) }), (0, jsx_runtime_1.jsx)(themes_1.DataList.Value, { children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "Connected accounts" }) })] })] }) }));
|
|
25
|
+
}
|
|
26
|
+
function UserProfileError({ error }) {
|
|
27
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsx)(generic_error_1.GenericError, { error: error }) }));
|
|
28
|
+
}
|
|
29
|
+
const ListSeparator = () => ((0, jsx_runtime_1.jsx)(themes_1.Box, { asChild: true, gridColumn: "span 2", children: (0, jsx_runtime_1.jsx)(themes_1.Inset, { side: "x", children: (0, jsx_runtime_1.jsx)(themes_1.Separator, { size: "4" }) }) }));
|
|
30
|
+
const OAuthAccount = ({ account, email, }) => {
|
|
31
|
+
const Icon = (0, oauth_icons_1.getOAuthIcon)(account);
|
|
32
|
+
const name = (0, oauth_icons_1.getOAuthName)(account);
|
|
33
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Flex, { align: "center", gap: "1", children: [(0, jsx_runtime_1.jsx)(Icon, {}), (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", ml: "1", children: name }), email && ((0, jsx_runtime_1.jsxs)(themes_1.Box, { display: { initial: "none", sm: "contents" }, children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", children: "\u2219" }), (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", children: email })] }))] }));
|
|
34
|
+
};
|
|
35
|
+
const FallbackUserIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", fill: "currentColor", viewBox: "0 0 256 256", children: [(0, jsx_runtime_1.jsx)("title", { children: "User icon" }), (0, jsx_runtime_1.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" })] }));
|
|
36
|
+
//# sourceMappingURL=user-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile.js","sourceRoot":"","sources":["../../../src/lib/user-profile.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;AA0Hb,gDA+DC;AAED,4CAMC;;AA/LD,6CAS0B;AAC1B,gDAAwB;AACxB,yCAA+D;AAE/D,yEAAmE;AACnE,mCAAsC;AACtC,+CAA2D;AAC3D,mDAA+C;AAMxC,MAAM,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAoB,EAAE,EAAE;IAClE,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAE/D,OAAO,CACL,uBAAC,aAAI,IACH,SAAS,EAAE,IAAA,cAAI,EAAC,mBAAmB,CAAC,+BACV,cAAc,EACxC,IAAI,EAAC,GAAG,YAER,wBAAC,iBAAQ,CAAC,IAAI,eACX,IAAI,CAAC,iBAAiB,IAAI,CACzB,6DACE,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,QAAQ,EAAC,OAAO,EAAC,YAAY,kBAC3C,uBAAC,eAAM,kCAAyB,GACjB,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,iBAAM,IACL,IAAI,EAAC,GAAG,EACR,QAAQ,EAAE,uBAAC,gBAAgB,KAAG,EAC9B,GAAG,EAAE,IAAI,CAAC,iBAAiB,GAC3B,GACa,IACH,EAEhB,uBAAC,aAAa,KAAG,IAChB,CACJ,EAED,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,4BAAmB,GACX,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,wBAAC,aAAI,IACH,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,SAAS,EACjB,KAAK,EAAC,MAAM,EACZ,SAAS,EAAC,gBAAgB,aAE1B,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YACX,IAAA,mBAAW,EAAC,IAAI,CAAC,IAAI,CACpB,uBAAC,aAAI,IACH,KAAK,EAAC,MAAM,EACZ,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,wBAGhD,CACR,GACI,EAEP,uBAAC,gDAAqB,IAAC,IAAI,EAAE,IAAI,YAC/B,uBAAC,0BAAe,uBAAuB,GACjB,IACnB,GACQ,IACH,EAEhB,uBAAC,aAAa,KAAG,EAEjB,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,gCAAuB,GACf,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,aAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,SAAS,EAAC,gBAAgB,YAC7C,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YAAE,IAAI,CAAC,KAAK,GAAQ,GAC7B,GACQ,IACH,EAEf,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,6DACE,uBAAC,aAAa,KAAG,EAEjB,wBAAC,iBAAQ,CAAC,IAAI,eACZ,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,qCAA4B,GACpB,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,aAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAC,GAAG,YAC7B,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CACtC,uBAAC,YAAY,IAEX,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,IAAI,EAAE,KAAK,IAFb,OAAO,CAGZ,CACH,CAAC,GACG,GACQ,IACH,IACf,CACJ,IACa,GACX,CACR,CAAC;AACJ,CAAC,CAAC;AAhGW,QAAA,WAAW,eAgGtB;AAEF,SAAgB,kBAAkB;IAChC,OAAO,CACL,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YACZ,wBAAC,iBAAQ,CAAC,IAAI,eACZ,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,QAAQ,EAAC,OAAO,EAAC,YAAY,kBAC3C,uBAAC,eAAM,kCAAyB,GACjB,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,mBAAQ,cACP,uBAAC,iBAAM,IAAC,IAAI,EAAC,GAAG,EAAC,QAAQ,EAAE,uBAAC,gBAAgB,KAAG,GAAI,GAC1C,GACI,IACH,EAEhB,uBAAC,aAAa,KAAG,EAEjB,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,4BAAmB,GACX,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,aAAI,IACH,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,SAAS,EACjB,KAAK,EAAC,MAAM,EACZ,SAAS,EAAC,gBAAgB,YAE1B,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YACZ,uBAAC,mBAAQ,4BAAqB,GACzB,GACF,GACQ,IACH,EAEhB,uBAAC,aAAa,KAAG,EAEjB,wBAAC,iBAAQ,CAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,aAC3B,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,gCAAuB,GACf,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,aAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,SAAS,EAAC,gBAAgB,YAC7C,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YACZ,uBAAC,mBAAQ,gCAAyB,GAC7B,GACF,GACQ,IACH,EAEhB,uBAAC,aAAa,KAAG,EAEjB,wBAAC,iBAAQ,CAAC,IAAI,eACZ,uBAAC,iBAAQ,CAAC,KAAK,IAAC,YAAY,kBAC1B,uBAAC,eAAM,qCAA4B,GACpB,EACjB,uBAAC,iBAAQ,CAAC,KAAK,cACb,uBAAC,mBAAQ,qCAA8B,GACxB,IACH,IACF,GACX,CACR,CAAC;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAsB;IAC5D,OAAO,CACL,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,YACZ,uBAAC,4BAAY,IAAC,KAAK,EAAE,KAAK,GAAI,GACzB,CACR,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAC1B,uBAAC,YAAG,IAAC,OAAO,QAAC,UAAU,EAAC,QAAQ,YAC9B,uBAAC,cAAK,IAAC,IAAI,EAAC,GAAG,YACb,uBAAC,kBAAS,IAAC,IAAI,EAAC,GAAG,GAAG,GAChB,GACJ,CACP,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,EACpB,OAAO,EACP,KAAK,GAIN,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,IAAA,0BAAY,EAAC,OAAO,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,IAAA,0BAAY,EAAC,OAAO,CAAC,CAAC;IAEnC,OAAO,CACL,wBAAC,aAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAC,GAAG,aAC1B,uBAAC,IAAI,KAAG,EAER,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,YAClB,IAAI,GACA,EAEN,KAAK,IAAI,CACR,wBAAC,YAAG,IAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,aAC/C,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,MAAM,uBAEpB,EACP,uBAAC,aAAI,IAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,MAAM,YACxB,KAAK,GACD,IACH,CACP,IACI,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,CAC7B,iCACE,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,cAAc,EACnB,OAAO,EAAC,aAAa,aAErB,0DAAwB,EACxB,iCAAM,CAAC,EAAC,iPAAiP,GAAG,IACxP,CACP,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AuthenticationInformationResponseData as AuthenticationSettings } from "@repo/api";
|
|
2
|
+
interface UserSecurityProps {
|
|
3
|
+
settings: AuthenticationSettings;
|
|
4
|
+
}
|
|
5
|
+
export declare const UserSecurity: ({ settings }: UserSecurityProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare function UserSecurityError({ error }: {
|
|
7
|
+
error: unknown;
|
|
8
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare function UserSecurityLoading(): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=user-security.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-security.d.ts","sourceRoot":"","sources":["../../../src/lib/user-security.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,qCAAqC,IAAI,sBAAsB,EAGhE,MAAM,WAAW,CAAC;AAMnB,UAAU,iBAAiB;IACzB,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAED,eAAO,MAAM,YAAY,iBAAkB,iBAAiB,4CAyB3D,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,2CAM9D;AAED,wBAAgB,mBAAmB,4CAyBlC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
+
};
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.UserSecurity = void 0;
|
|
31
|
+
exports.UserSecurityError = UserSecurityError;
|
|
32
|
+
exports.UserSecurityLoading = UserSecurityLoading;
|
|
33
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
34
|
+
const themes_1 = require("@radix-ui/themes");
|
|
35
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
36
|
+
const elements_1 = require("./elements");
|
|
37
|
+
const icon_panel_1 = require("./icon-panel");
|
|
38
|
+
const react_icons_1 = require("@radix-ui/react-icons");
|
|
39
|
+
const set_password_dialog_1 = require("./set-password-dialog");
|
|
40
|
+
const change_password_dialog_1 = require("./change-password-dialog");
|
|
41
|
+
const add_mfa_dialog_1 = require("./add-mfa-dialog");
|
|
42
|
+
const reset_mfa_dialog_1 = require("./reset-mfa-dialog");
|
|
43
|
+
const CardList = __importStar(require("../card-list"));
|
|
44
|
+
const generic_error_1 = require("./generic-error");
|
|
45
|
+
const utils_1 = require("./utils");
|
|
46
|
+
const UserSecurity = ({ settings }) => {
|
|
47
|
+
const passwordSettings = settings.verificationMethods.Password;
|
|
48
|
+
const mfaSettings = settings.verificationMethods.Mfa;
|
|
49
|
+
return ((0, jsx_runtime_1.jsxs)(CardList.Root, { className: (0, clsx_1.default)("woswidgets-widget"), "data-woswidgets-widget-id": "user-security", children: [passwordSettings && ((0, jsx_runtime_1.jsx)(CardList.Item, { children: (0, jsx_runtime_1.jsx)(PasswordSettings, { settings: passwordSettings }) })), mfaSettings && ((0, jsx_runtime_1.jsx)(CardList.Item, { children: (0, jsx_runtime_1.jsx)(MfaSettings, { settings: mfaSettings, isPasswordSet: !!passwordSettings?.isSetUp }) }))] }));
|
|
50
|
+
};
|
|
51
|
+
exports.UserSecurity = UserSecurity;
|
|
52
|
+
function UserSecurityError({ error }) {
|
|
53
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsx)(generic_error_1.GenericError, { error: error }) }));
|
|
54
|
+
}
|
|
55
|
+
function UserSecurityLoading() {
|
|
56
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsxs)(themes_1.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [(0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: (0, jsx_runtime_1.jsx)(icon_panel_1.IconPanel, {}) }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "Password" }) }), (0, jsx_runtime_1.jsx)(themes_1.Text, { as: "p", size: "2", color: "gray", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "Set a password to access your account" }) })] }), (0, jsx_runtime_1.jsx)(change_password_dialog_1.ChangePasswordDialog, { children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Change" }) }) })] }) }));
|
|
57
|
+
}
|
|
58
|
+
function PasswordSettings({ settings, }) {
|
|
59
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [(0, jsx_runtime_1.jsx)(icon_panel_1.IconPanel, { children: (0, jsx_runtime_1.jsx)(react_icons_1.LockClosedIcon, {}) }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: "Password" }), settings.isSetUp ? (settings.lastUsed && ((0, jsx_runtime_1.jsxs)(themes_1.Text, { size: "2", color: "gray", children: ["Last used", " ", (0, utils_1.getComparativeReadableDate)(new Date(), new Date(settings.lastUsed))] }))) : ((0, jsx_runtime_1.jsx)(themes_1.Text, { as: "p", size: "2", color: "gray", children: "Set a password to access your account" }))] }), settings.isSetUp ? ((0, jsx_runtime_1.jsx)(change_password_dialog_1.ChangePasswordDialog, { children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Change" }) })) : ((0, jsx_runtime_1.jsx)(set_password_dialog_1.SetPasswordDialog, { children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Set a password" }) }))] }));
|
|
60
|
+
}
|
|
61
|
+
function MfaSettings({ settings, isPasswordSet, }) {
|
|
62
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Grid, { columns: "auto 1fr auto", align: "center", gap: "4", children: [(0, jsx_runtime_1.jsx)(icon_panel_1.IconPanel, { children: (0, jsx_runtime_1.jsx)(react_icons_1.ButtonIcon, {}) }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: "Multi-factor authentication" }), settings.isSetUp ? ((0, jsx_runtime_1.jsxs)(themes_1.Text, { size: "2", children: ["Authenticator app", settings.lastUsed && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", mx: "1", children: "\u2219" }), (0, jsx_runtime_1.jsxs)(themes_1.Text, { size: "2", color: "gray", children: ["Last used", " ", (0, utils_1.getComparativeReadableDate)(new Date(), new Date(settings.lastUsed))] })] }))] })) : ((0, jsx_runtime_1.jsx)(themes_1.Text, { as: "p", size: "2", color: "gray", children: "Secure your account with an extra verification step" }))] }), settings.isSetUp ? ((0, jsx_runtime_1.jsx)(reset_mfa_dialog_1.ResetMfaDialog, { isPasswordSet: isPasswordSet, children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Disable" }) })) : ((0, jsx_runtime_1.jsx)(add_mfa_dialog_1.AddMfaDialog, { children: (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { children: "Set up authenticator app" }) }))] }));
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=user-security.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-security.js","sourceRoot":"","sources":["../../../src/lib/user-security.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ActiveSession } from "@repo/api";
|
|
2
|
+
interface UserSessionsProps {
|
|
3
|
+
sessionsData: ActiveSession[];
|
|
4
|
+
currentSessionId: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const UserSessions: ({ sessionsData: sessions, currentSessionId, }: UserSessionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare function UserSessionsLoading(): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare function UserSessionsError({ error }: {
|
|
9
|
+
error: unknown;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=user-sessions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-sessions.d.ts","sourceRoot":"","sources":["../../../src/lib/user-sessions.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAO1C,UAAU,iBAAiB;IACzB,YAAY,EAAE,aAAa,EAAE,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,YAAY,kDAGtB,iBAAiB,4CA8EnB,CAAC;AAEF,wBAAgB,mBAAmB,4CAoBlC;AAED,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,2CAM9D"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
+
};
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.UserSessions = void 0;
|
|
31
|
+
exports.UserSessionsLoading = UserSessionsLoading;
|
|
32
|
+
exports.UserSessionsError = UserSessionsError;
|
|
33
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
34
|
+
const themes_1 = require("@radix-ui/themes");
|
|
35
|
+
const clsx_1 = __importDefault(require("clsx"));
|
|
36
|
+
const elements_1 = require("./elements");
|
|
37
|
+
const utils_1 = require("./utils");
|
|
38
|
+
const logout_dialog_1 = require("./logout-dialog");
|
|
39
|
+
const logout_all_sessions_dialog_1 = require("./logout-all-sessions-dialog");
|
|
40
|
+
const CardList = __importStar(require("../card-list"));
|
|
41
|
+
const icon_panel_1 = require("./icon-panel");
|
|
42
|
+
const react_1 = require("react");
|
|
43
|
+
const generic_error_1 = require("./generic-error");
|
|
44
|
+
const react_icons_1 = require("@radix-ui/react-icons");
|
|
45
|
+
const UserSessions = ({ sessionsData: sessions, currentSessionId, }) => {
|
|
46
|
+
const currentSession = sessions.find((session) => session.id === currentSessionId);
|
|
47
|
+
const otherSessions = sessions.filter((session) => session.id !== currentSessionId);
|
|
48
|
+
const [openLogoutDialog, setOpenLogoutDialog] = (0, react_1.useState)(false);
|
|
49
|
+
const [sessionToSignOut, setSessionToSignOut] = (0, react_1.useState)(null);
|
|
50
|
+
const [openLogoutAllSessionsDialog, setOpenLogoutAllSessionsDialog] = (0, react_1.useState)(false);
|
|
51
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", gap: "4", className: (0, clsx_1.default)("woswidgets-widget"), "data-woswidgets-widget-id": "user-sessions", children: [(0, jsx_runtime_1.jsxs)(CardList.Root, { children: [currentSession && ((0, jsx_runtime_1.jsx)(CardList.Item, { children: (0, jsx_runtime_1.jsx)(UserSession, { session: currentSession, isCurrentSession: true }) })), otherSessions.map((session) => ((0, jsx_runtime_1.jsx)(CardList.Item, { children: (0, jsx_runtime_1.jsx)(UserSession, { session: session, onSignOut: () => {
|
|
52
|
+
setSessionToSignOut(session);
|
|
53
|
+
setOpenLogoutDialog(true);
|
|
54
|
+
} }) }, session.id)))] }), sessions.length > 1 && ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { gap: "2", justify: "between", align: "center", children: [(0, jsx_runtime_1.jsxs)(themes_1.Box, { children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", children: "Sign out of all other devices" }), (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", as: "p", children: "Remove access from all devices except this one" })] }), (0, jsx_runtime_1.jsx)(elements_1.SecondaryButton, { onClick: () => {
|
|
55
|
+
setOpenLogoutAllSessionsDialog(true);
|
|
56
|
+
}, children: "Sign out" })] }) })), sessionToSignOut && ((0, jsx_runtime_1.jsx)(logout_dialog_1.LogoutDialog, { session: sessionToSignOut, open: openLogoutDialog, onOpenChange: setOpenLogoutDialog })), (0, jsx_runtime_1.jsx)(logout_all_sessions_dialog_1.LogoutAllSessionsDialog, { currentSessionId: currentSessionId, open: openLogoutAllSessionsDialog, onOpenChange: setOpenLogoutAllSessionsDialog })] }));
|
|
57
|
+
};
|
|
58
|
+
exports.UserSessions = UserSessions;
|
|
59
|
+
function UserSessionsLoading() {
|
|
60
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { gap: "4", align: "center", children: [(0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: (0, jsx_runtime_1.jsx)(icon_panel_1.IconPanel, {}) }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "The location" }) }), (0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", as: "p", children: (0, jsx_runtime_1.jsx)(elements_1.Skeleton, { children: "The location" }) })] })] }) }));
|
|
61
|
+
}
|
|
62
|
+
function UserSessionsError({ error }) {
|
|
63
|
+
return ((0, jsx_runtime_1.jsx)(themes_1.Card, { size: "2", children: (0, jsx_runtime_1.jsx)(generic_error_1.GenericError, { error: error }) }));
|
|
64
|
+
}
|
|
65
|
+
const UserSession = ({ session, isCurrentSession = false, onSignOut, }) => {
|
|
66
|
+
const userAgent = (0, utils_1.parseUserAgent)(session.userAgent);
|
|
67
|
+
const userLocation = (0, utils_1.getUserLocation)(session.currentLocation, session.ipAddress);
|
|
68
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Flex, { gap: "4", align: "center", children: [(0, jsx_runtime_1.jsx)(icon_panel_1.IconPanel, { children: userAgent.isMobile ? (0, jsx_runtime_1.jsx)(react_icons_1.MobileIcon, {}) : (0, jsx_runtime_1.jsx)(react_icons_1.LaptopIcon, {}) }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { direction: "column", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: userAgent.pretty }), (0, jsx_runtime_1.jsxs)(themes_1.Flex, { gap: "1", align: "center", children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", as: "p", children: userLocation }), isCurrentSession && (0, jsx_runtime_1.jsx)(elements_1.Badge, { ml: "2", children: "This device" }), !isCurrentSession && session.lastActivityAt && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(themes_1.Text, { size: "2", color: "gray", children: "\u2219" }), (0, jsx_runtime_1.jsxs)(themes_1.Text, { size: "2", color: "gray", children: ["Last seen", " ", (0, utils_1.getComparativeReadableDate)(new Date(), new Date(session.lastActivityAt))] })] }))] })] }), !isCurrentSession && ((0, jsx_runtime_1.jsx)(themes_1.Flex, { ml: "auto", mr: "2", children: (0, jsx_runtime_1.jsx)(themes_1.Button, { variant: "ghost", onClick: () => {
|
|
69
|
+
onSignOut?.(session);
|
|
70
|
+
}, children: "Sign out" }) }))] }));
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=user-sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-sessions.js","sourceRoot":"","sources":["../../../src/lib/user-sessions.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Select } from "@radix-ui/themes";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
import
|
|
3
|
+
import { MemberRole } from "@repo/api";
|
|
4
4
|
type UsersFilterProps = React.ComponentPropsWithoutRef<typeof Select.Root> & {
|
|
5
|
-
roles:
|
|
5
|
+
roles: MemberRole[] | undefined;
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
};
|
|
8
8
|
export declare const UsersFilter: React.FC<UsersFilterProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-filter.d.ts","sourceRoot":"","sources":["../../../src/lib/users-filter.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"users-filter.d.ts","sourceRoot":"","sources":["../../../src/lib/users-filter.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAKvC,KAAK,gBAAgB,GAAG,KAAK,CAAC,wBAAwB,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG;IAC3E,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-filter.js","sourceRoot":"","sources":["../../../src/lib/users-filter.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAA0C;AAC1C,6CAA+B;
|
|
1
|
+
{"version":3,"file":"users-filter.js","sourceRoot":"","sources":["../../../src/lib/users-filter.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAA0C;AAC1C,6CAA+B;AAC/B,yCAAsE;AACtE,yEAAuE;AAGvE,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,eAAe,GAAG,MAAM,CAAC;AAOxB,MAAM,WAAW,GAA+B,CAAC,EACtD,KAAK,EACL,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,EACJ,QAAQ,EACR,KAAK,EAAE,EAAE,IAAI,EAAE,GAChB,GAAG,IAAA,oDAAyB,GAAE,CAAC;IAEhC,MAAM,eAAe,GAAG,CAAC,KAAoB,EAAE,EAAE;QAC/C,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,KAAc,EAAmB,EAAE,CACtD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACxE,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;IAChE,MAAM,QAAQ,GACZ,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,IAAI,IAAI,cAAc,CAAC;IAE5E,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;QACtC,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;YAC9B,eAAe,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,eAAe,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,wBAAC,eAAM,CAAC,IAAI,IACV,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,EACpC,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,aAElB,uBAAC,wBAAa,cAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,GAAiB,EAClE,wBAAC,wBAAa,eACZ,uBAAC,qBAAU,IAAC,KAAK,EAAE,eAAe,YAAG,cAAc,GAAc,EAChE,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACpB,uBAAC,KAAK,CAAC,QAAQ,cACb,uBAAC,qBAAU,IAAC,KAAK,EAAE,IAAI,CAAC,IAAI,YAAG,IAAI,CAAC,IAAI,GAAc,IADnC,IAAI,CAAC,IAAI,CAEb,CAClB,CAAC,IACY,IACJ,CACf,CAAC;AACJ,CAAC,CAAC;AA7CW,QAAA,WAAW,eA6CtB"}
|
|
@@ -1,23 +1,14 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { UsersManagementAction, UsersManagementState } from "./users-management-state";
|
|
3
3
|
export interface UsersManagementContextType {
|
|
4
|
-
authToken: (() => Promise<string>) | null;
|
|
5
4
|
state: UsersManagementState;
|
|
6
5
|
dispatch: React.Dispatch<UsersManagementAction>;
|
|
7
6
|
}
|
|
8
7
|
export declare const UsersManagementContextProvider: React.FC<{
|
|
9
8
|
children?: React.ReactNode;
|
|
10
|
-
value: UsersManagementContextType;
|
|
11
9
|
}>;
|
|
12
10
|
/**
|
|
13
11
|
* The context may be provided if it is instantiated in the tree above the user.
|
|
14
12
|
*/
|
|
15
13
|
export declare function useUsersManagementContext(initialContext?: UsersManagementContextType | null): UsersManagementContextType;
|
|
16
|
-
/**
|
|
17
|
-
* The auth token may be provided if it is instantiated in the tree above the
|
|
18
|
-
* user management context. Otherwise we'll use the context value if it exists.
|
|
19
|
-
*/
|
|
20
|
-
export declare function useUsersManagementPagniatoin(args: {
|
|
21
|
-
authToken?: string | null;
|
|
22
|
-
} | undefined | null): string | (() => Promise<string>) | null;
|
|
23
14
|
//# sourceMappingURL=users-management-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-management-context.d.ts","sourceRoot":"","sources":["../../../src/lib/users-management-context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"users-management-context.d.ts","sourceRoot":"","sources":["../../../src/lib/users-management-context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EAErB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;CACjD;AAaD,eAAO,MAAM,8BAA8B,EAAE,KAAK,CAAC,EAAE,CAAC;IACpD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAgBA,CAAC;AAKF;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,CAAC,EAAE,0BAA0B,GAAG,IAAI,GACjD,0BAA0B,CAmB5B"}
|
|
@@ -26,13 +26,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
27
|
exports.UsersManagementContextProvider = void 0;
|
|
28
28
|
exports.useUsersManagementContext = useUsersManagementContext;
|
|
29
|
-
exports.useUsersManagementPagniatoin = useUsersManagementPagniatoin;
|
|
30
29
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
31
30
|
const React = __importStar(require("react"));
|
|
31
|
+
const users_management_state_1 = require("./users-management-state");
|
|
32
32
|
const UsersManagementContext = React.createContext(undefined);
|
|
33
33
|
UsersManagementContext.displayName = "UsersManagementContext";
|
|
34
|
-
const
|
|
35
|
-
|
|
34
|
+
const initialState = {
|
|
35
|
+
pagination: null,
|
|
36
|
+
role: null,
|
|
37
|
+
searchQuery: null,
|
|
38
|
+
};
|
|
39
|
+
const UsersManagementContextProvider = ({ children }) => {
|
|
40
|
+
const [state, dispatch] = (0, users_management_state_1.useUsersManagementState)(initialState);
|
|
41
|
+
const context = React.useMemo(() => ({
|
|
42
|
+
state,
|
|
43
|
+
dispatch,
|
|
44
|
+
}), [state, dispatch]);
|
|
45
|
+
return ((0, jsx_runtime_1.jsx)(UsersManagementContext.Provider, { value: context, children: children }));
|
|
36
46
|
};
|
|
37
47
|
exports.UsersManagementContextProvider = UsersManagementContextProvider;
|
|
38
48
|
const NOOP = () => void 0;
|
|
@@ -42,13 +52,6 @@ const EMPTY_PAGINATION = {};
|
|
|
42
52
|
*/
|
|
43
53
|
function useUsersManagementContext(initialContext) {
|
|
44
54
|
const context = React.useContext(UsersManagementContext);
|
|
45
|
-
const providedToken = initialContext?.authToken ?? null;
|
|
46
|
-
const hasContext = !!context;
|
|
47
|
-
React.useEffect(() => {
|
|
48
|
-
if (!providedToken && !hasContext) {
|
|
49
|
-
console.error("useUsersManagementContext was called from a component outside of the UsersManagementContext provider without providing an authToken directly. Resulting queries may not run as expected.");
|
|
50
|
-
}
|
|
51
|
-
}, [providedToken, hasContext]);
|
|
52
55
|
if (context) {
|
|
53
56
|
return context;
|
|
54
57
|
}
|
|
@@ -56,7 +59,6 @@ function useUsersManagementContext(initialContext) {
|
|
|
56
59
|
return initialContext;
|
|
57
60
|
}
|
|
58
61
|
return {
|
|
59
|
-
authToken: null,
|
|
60
62
|
dispatch: NOOP,
|
|
61
63
|
state: {
|
|
62
64
|
pagination: EMPTY_PAGINATION,
|
|
@@ -65,19 +67,4 @@ function useUsersManagementContext(initialContext) {
|
|
|
65
67
|
},
|
|
66
68
|
};
|
|
67
69
|
}
|
|
68
|
-
/**
|
|
69
|
-
* The auth token may be provided if it is instantiated in the tree above the
|
|
70
|
-
* user management context. Otherwise we'll use the context value if it exists.
|
|
71
|
-
*/
|
|
72
|
-
function useUsersManagementPagniatoin(args) {
|
|
73
|
-
const context = React.useContext(UsersManagementContext);
|
|
74
|
-
const providedToken = args?.authToken;
|
|
75
|
-
const hasContext = !!context;
|
|
76
|
-
React.useEffect(() => {
|
|
77
|
-
if (!providedToken && !hasContext) {
|
|
78
|
-
console.error("useUsersManagementAuthToken was called from a component outside of the UsersManagementContext provider without providing an authToken directly. Resulting queries may not run as expected.");
|
|
79
|
-
}
|
|
80
|
-
}, [providedToken, hasContext]);
|
|
81
|
-
return providedToken || context?.authToken || null;
|
|
82
|
-
}
|
|
83
70
|
//# sourceMappingURL=users-management-context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-management-context.js","sourceRoot":"","sources":["../../../src/lib/users-management-context.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"users-management-context.js","sourceRoot":"","sources":["../../../src/lib/users-management-context.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDb,8DAqBC;;AAvED,6CAA+B;AAC/B,qEAIkC;AAQlC,MAAM,sBAAsB,GAAG,KAAK,CAAC,aAAa,CAEhD,SAAS,CAAC,CAAC;AACb,sBAAsB,CAAC,WAAW,GAAG,wBAAwB,CAAC;AAE9D,MAAM,YAAY,GAAyB;IACzC,UAAU,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI;CAClB,CAAC;AAEK,MAAM,8BAA8B,GAEtC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gDAAuB,EAAC,YAAY,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC;QACL,KAAK;QACL,QAAQ;KACT,CAAC,EACF,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IAEF,OAAO,CACL,uBAAC,sBAAsB,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,YAC5C,QAAQ,GACuB,CACnC,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,8BAA8B,kCAkBzC;AAEF,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAC1B,MAAM,gBAAgB,GAAiB,EAAE,CAAC;AAE1C;;GAEG;AACH,SAAgB,yBAAyB,CACvC,cAAkD;IAElD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAEzD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE;YACL,UAAU,EAAE,gBAAgB;YAC5B,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,IAAI;SAClB;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { ListMetadata } from "@repo/api";
|
|
3
3
|
export declare function useUsersManagementState(initialState: UsersManagementState): readonly [UsersManagementState, React.Dispatch<UsersManagementAction>];
|
|
4
4
|
export interface UsersManagementState {
|
|
5
5
|
searchQuery: string | null;
|
|
6
6
|
role: string | null;
|
|
7
|
-
pagination:
|
|
7
|
+
pagination: ListMetadata | null;
|
|
8
8
|
}
|
|
9
9
|
export type UsersManagementAction = {
|
|
10
10
|
type: "INIT";
|
|
@@ -17,6 +17,6 @@ export type UsersManagementAction = {
|
|
|
17
17
|
role: string | null;
|
|
18
18
|
} | {
|
|
19
19
|
type: "SET_PAGINATION";
|
|
20
|
-
pagination:
|
|
20
|
+
pagination: ListMetadata;
|
|
21
21
|
};
|
|
22
22
|
//# sourceMappingURL=users-management-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-management-state.d.ts","sourceRoot":"","sources":["../../../src/lib/users-management-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"users-management-state.d.ts","sourceRoot":"","sources":["../../../src/lib/users-management-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,oBAAoB,0EAsBzE;AAmFD,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,UAAU,EAAE,YAAY,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-management-state.js","sourceRoot":"","sources":["../../../src/lib/users-management-state.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0DAsBC;AA1BD,6CAA+B;
|
|
1
|
+
{"version":3,"file":"users-management-state.js","sourceRoot":"","sources":["../../../src/lib/users-management-state.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0DAsBC;AA1BD,6CAA+B;AAC/B,mCAAoC;AAGpC,SAAgB,uBAAuB,CAAC,YAAkC;IACxE,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE;QAC7D,YAAY;QACZ,EAAE;KACH,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC1B,6DAA6D;YAC7D,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3D,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACrC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAU,CAAC;AACpC,CAAC;AAED,SAAS,OAAO,CACd,OAA+C,EAC/C,MAA6B;IAE7B,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,CAAC,EAAc,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvB,EAAE,EAAE,CAAC;YACP,CAAC;QACH,CAAC,CAAC;QACF,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC;IAC/B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAC1B,IAAI,IAAI,EAAE,WAAW,CAAC;YACtB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,EAAE,GAAG,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,EAAE,GAAG,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;YAC9B,IACE,CAAC,UAAU,CAAC,KAAK;gBACf,UAAU,CAAC,KAAK,KAAK,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;gBACtD,CAAC,UAAU,CAAC,MAAM;oBAChB,UAAU,CAAC,MAAM,KAAK,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,EACxD,CAAC;gBACD,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,OAAO,CAAC,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YACxB,IAAI,CAAC,GAAG,EAAE,CACR,iBAAiB,CACf,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAC7B,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CACF,CAAC;YACF,OAAO;gBACL,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC9D,OAAO;aACR,CAAC;QACJ,CAAC;QACD,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,IAAI,MAAM,CAAC,WAAW,KAAK,YAAY,CAAC,WAAW,EAAE,CAAC;gBACpD,OAAO,OAAO,CAAC;YACjB,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;YAC/B,IAAI,CAAC,GAAG,EAAE,CACR,iBAAiB,CACf,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,EACpC,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CACF,CAAC;YACF,OAAO;gBACL,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE;gBAC9D,OAAO;aACR,CAAC;YACF,EAAE;YACF,MAAM;QACR,CAAC;QACD;YACE,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC;AAqBD,SAAS,iBAAiB,CACxB,SAA2D,EAC3D,OAAmC,EAAE;IAErC,IAAI,CAAC,iBAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;QAC1B,gEAAgE;QAChE,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACjD,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,aAAa,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC9C,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE;QAC9B,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,MAAM,EAAE;QACzC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAE7B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { Paginated, User } from "./api/user";
|
|
1
|
+
import { MemberRole, MembersQueryResult } from "@repo/api";
|
|
3
2
|
interface UsersManagementProps {
|
|
4
|
-
rolesData:
|
|
5
|
-
userData:
|
|
3
|
+
rolesData: MemberRole[];
|
|
4
|
+
userData: MembersQueryResult;
|
|
6
5
|
disableRolesFilter?: boolean;
|
|
7
6
|
isPending: boolean;
|
|
8
7
|
}
|