@workos-inc/widgets 1.3.1 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/dist/cjs/admin-portal-domain-verification.client.cjs +115 -0
- package/dist/cjs/admin-portal-domain-verification.client.cjs.map +1 -0
- package/dist/cjs/admin-portal-domain-verification.client.d.cts +14 -0
- package/dist/cjs/admin-portal-sso-connection-client.cjs +269 -0
- package/dist/cjs/admin-portal-sso-connection-client.cjs.map +1 -0
- package/dist/cjs/admin-portal-sso-connection-client.d.cts +12 -0
- package/dist/cjs/api/api-provider.cjs +118 -0
- package/dist/cjs/api/api-provider.cjs.map +1 -0
- package/dist/cjs/api/api-provider.d.cts +31 -0
- package/dist/cjs/api/constants.cjs +29 -0
- package/dist/cjs/api/constants.cjs.map +1 -0
- package/dist/cjs/api/constants.d.cts +3 -0
- package/dist/cjs/api/endpoint.cjs +1252 -0
- package/dist/cjs/api/endpoint.cjs.map +1 -0
- package/dist/cjs/api/endpoint.d.cts +1302 -0
- package/dist/cjs/api/errors.cjs +57 -0
- package/dist/cjs/api/errors.cjs.map +1 -0
- package/dist/cjs/api/{errors.d.ts → errors.d.cts} +5 -5
- package/dist/cjs/api/utils.cjs +68 -0
- package/dist/cjs/api/utils.cjs.map +1 -0
- package/dist/cjs/api/utils.d.cts +11 -0
- package/dist/cjs/api/widgets-api-client.cjs +86 -0
- package/dist/cjs/api/widgets-api-client.cjs.map +1 -0
- package/dist/cjs/api/{widgets-api-client.d.ts → widgets-api-client.d.cts} +8 -7
- package/dist/cjs/card-list.cjs +47 -0
- package/dist/cjs/card-list.cjs.map +1 -0
- package/dist/cjs/card-list.d.cts +9 -0
- package/dist/cjs/index.cjs +64 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.d.cts +25 -0
- package/dist/cjs/lib/add-mfa-dialog.cjs +335 -0
- package/dist/cjs/lib/add-mfa-dialog.cjs.map +1 -0
- package/dist/cjs/lib/add-mfa-dialog.d.cts +11 -0
- package/dist/cjs/lib/admin-portal-domain-verification.cjs +126 -0
- package/dist/cjs/lib/admin-portal-domain-verification.cjs.map +1 -0
- package/dist/cjs/lib/admin-portal-domain-verification.d.cts +20 -0
- package/dist/cjs/lib/admin-portal-sso-connection.cjs +334 -0
- package/dist/cjs/lib/admin-portal-sso-connection.cjs.map +1 -0
- package/dist/cjs/lib/admin-portal-sso-connection.d.cts +42 -0
- package/dist/cjs/lib/api/config.cjs +38 -0
- package/dist/cjs/lib/api/config.cjs.map +1 -0
- package/dist/cjs/lib/api/{config.d.ts → config.d.cts} +4 -3
- package/dist/cjs/lib/api/user.cjs +113 -0
- package/dist/cjs/lib/api/user.cjs.map +1 -0
- package/dist/cjs/lib/api/user.d.cts +26 -0
- package/dist/cjs/lib/change-password-dialog.cjs +238 -0
- package/dist/cjs/lib/change-password-dialog.cjs.map +1 -0
- package/dist/cjs/lib/change-password-dialog.d.cts +10 -0
- package/dist/cjs/lib/constants.cjs +35 -0
- package/dist/cjs/lib/constants.cjs.map +1 -0
- package/dist/cjs/lib/constants.d.cts +5 -0
- package/dist/cjs/lib/copy-button.cjs +74 -0
- package/dist/cjs/lib/copy-button.cjs.map +1 -0
- package/dist/cjs/lib/copy-button.d.cts +9 -0
- package/dist/cjs/lib/delete-domain-dialog.cjs +72 -0
- package/dist/cjs/lib/delete-domain-dialog.cjs.map +1 -0
- package/dist/cjs/lib/delete-domain-dialog.d.cts +16 -0
- package/dist/cjs/lib/delete-user-dialog.cjs +96 -0
- package/dist/cjs/lib/delete-user-dialog.cjs.map +1 -0
- package/dist/cjs/lib/delete-user-dialog.d.cts +16 -0
- package/dist/cjs/lib/domain-actions.cjs +89 -0
- package/dist/cjs/lib/domain-actions.cjs.map +1 -0
- package/dist/cjs/lib/domain-actions.d.cts +13 -0
- package/dist/cjs/lib/domain-item.cjs +86 -0
- package/dist/cjs/lib/domain-item.cjs.map +1 -0
- package/dist/cjs/lib/domain-item.d.cts +13 -0
- package/dist/cjs/lib/edit-user-profile-dialog.cjs +170 -0
- package/dist/cjs/lib/edit-user-profile-dialog.cjs.map +1 -0
- package/dist/cjs/lib/edit-user-profile-dialog.d.cts +14 -0
- package/dist/cjs/lib/edit-user-role-dialog.cjs +321 -0
- package/dist/cjs/lib/edit-user-role-dialog.cjs.map +1 -0
- package/dist/cjs/lib/edit-user-role-dialog.d.cts +27 -0
- package/dist/cjs/lib/elements.cjs +396 -0
- package/dist/cjs/lib/elements.cjs.map +1 -0
- package/dist/cjs/lib/elements.d.cts +47 -0
- package/dist/cjs/lib/elevated-access.cjs +208 -0
- package/dist/cjs/lib/elevated-access.cjs.map +1 -0
- package/dist/cjs/lib/elevated-access.d.cts +10 -0
- package/dist/cjs/lib/error-boundary.cjs +115 -0
- package/dist/cjs/lib/error-boundary.cjs.map +1 -0
- package/dist/cjs/lib/{error-boundary.d.ts → error-boundary.d.cts} +13 -11
- package/dist/cjs/lib/errors.cjs +66 -0
- package/dist/cjs/lib/errors.cjs.map +1 -0
- package/dist/cjs/lib/{errors.d.ts → errors.d.cts} +6 -6
- package/dist/cjs/lib/generic-error.cjs +109 -0
- package/dist/cjs/lib/generic-error.cjs.map +1 -0
- package/dist/cjs/lib/generic-error.d.cts +7 -0
- package/dist/cjs/lib/icon-panel.cjs +53 -0
- package/dist/cjs/lib/icon-panel.cjs.map +1 -0
- package/dist/cjs/lib/icon-panel.d.cts +8 -0
- package/dist/cjs/lib/icons.cjs +51 -0
- package/dist/cjs/lib/icons.cjs.map +1 -0
- package/dist/cjs/lib/icons.d.cts +6 -0
- package/dist/cjs/lib/identity-providers.cjs +95 -0
- package/dist/cjs/lib/identity-providers.cjs.map +1 -0
- package/dist/cjs/lib/{identity-providers.d.ts → identity-providers.d.cts} +5 -5
- package/dist/cjs/lib/invite-user-dialog.cjs +277 -0
- package/dist/cjs/lib/invite-user-dialog.cjs.map +1 -0
- package/dist/cjs/lib/invite-user-dialog.d.cts +9 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.cjs +97 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.cjs.map +1 -0
- package/dist/cjs/lib/logout-all-sessions-dialog.d.cts +11 -0
- package/dist/cjs/lib/logout-dialog.cjs +109 -0
- package/dist/cjs/lib/logout-dialog.cjs.map +1 -0
- package/dist/cjs/lib/logout-dialog.d.cts +14 -0
- package/dist/cjs/lib/marker.cjs +56 -0
- package/dist/cjs/lib/marker.cjs.map +1 -0
- package/dist/cjs/lib/{marker.d.ts → marker.d.cts} +7 -6
- package/dist/cjs/lib/name-server-icon.cjs +101 -0
- package/dist/cjs/lib/name-server-icon.cjs.map +1 -0
- package/dist/cjs/lib/name-server-icon.d.cts +11 -0
- package/dist/cjs/lib/oauth-icons.cjs +175 -0
- package/dist/cjs/lib/oauth-icons.cjs.map +1 -0
- package/dist/cjs/lib/oauth-icons.d.cts +6 -0
- package/dist/cjs/lib/organization-switcher.cjs +188 -0
- package/dist/cjs/lib/organization-switcher.cjs.map +1 -0
- package/dist/cjs/lib/{organization-switcher.d.ts → organization-switcher.d.cts} +12 -11
- package/dist/cjs/lib/otp-input.cjs +246 -0
- package/dist/cjs/lib/otp-input.cjs.map +1 -0
- package/dist/cjs/lib/otp-input.d.cts +22 -0
- package/dist/cjs/lib/provider-icon.cjs +69 -0
- package/dist/cjs/lib/provider-icon.cjs.map +1 -0
- package/dist/cjs/lib/{provider-icon.d.ts → provider-icon.d.cts} +5 -4
- package/dist/cjs/lib/resend-invite-dialog.cjs +149 -0
- package/dist/cjs/lib/resend-invite-dialog.cjs.map +1 -0
- package/dist/cjs/lib/resend-invite-dialog.d.cts +14 -0
- package/dist/cjs/lib/reset-mfa-dialog.cjs +111 -0
- package/dist/cjs/lib/reset-mfa-dialog.cjs.map +1 -0
- package/dist/cjs/lib/reset-mfa-dialog.d.cts +11 -0
- package/dist/cjs/lib/revoke-invite-dialog.cjs +103 -0
- package/dist/cjs/lib/revoke-invite-dialog.cjs.map +1 -0
- package/dist/cjs/lib/revoke-invite-dialog.d.cts +14 -0
- package/dist/cjs/lib/save-button.cjs +119 -0
- package/dist/cjs/lib/save-button.cjs.map +1 -0
- package/dist/cjs/lib/save-button.d.cts +13 -0
- package/dist/cjs/lib/search-provider.cjs +79 -0
- package/dist/cjs/lib/search-provider.cjs.map +1 -0
- package/dist/cjs/lib/search-provider.d.cts +12 -0
- package/dist/cjs/lib/set-password-dialog.cjs +165 -0
- package/dist/cjs/lib/set-password-dialog.cjs.map +1 -0
- package/dist/cjs/lib/set-password-dialog.d.cts +10 -0
- package/dist/cjs/lib/status.cjs +72 -0
- package/dist/cjs/lib/status.cjs.map +1 -0
- package/dist/cjs/lib/status.d.cts +11 -0
- package/dist/cjs/lib/use-dialog-close.cjs +53 -0
- package/dist/cjs/lib/use-dialog-close.cjs.map +1 -0
- package/dist/cjs/lib/use-dialog-close.d.cts +3 -0
- package/dist/cjs/lib/use-is-hydrated.cjs +50 -0
- package/dist/cjs/lib/use-is-hydrated.cjs.map +1 -0
- package/dist/cjs/lib/use-is-hydrated.d.cts +3 -0
- package/dist/cjs/lib/use-layout-effect.cjs +31 -0
- package/dist/cjs/lib/use-layout-effect.cjs.map +1 -0
- package/dist/cjs/lib/{use-layout-effect.d.ts → use-layout-effect.d.cts} +3 -2
- package/dist/cjs/lib/use-permissions.cjs +55 -0
- package/dist/cjs/lib/use-permissions.cjs.map +1 -0
- package/dist/cjs/lib/use-permissions.d.cts +6 -0
- package/dist/cjs/lib/use-security-settings.cjs +59 -0
- package/dist/cjs/lib/use-security-settings.cjs.map +1 -0
- package/dist/cjs/lib/{use-security-settings.d.ts → use-security-settings.d.cts} +3 -3
- package/dist/cjs/lib/user-actions-dropdown.cjs +168 -0
- package/dist/cjs/lib/user-actions-dropdown.cjs.map +1 -0
- package/dist/cjs/lib/user-actions-dropdown.d.cts +13 -0
- package/dist/cjs/lib/user-profile.cjs +175 -0
- package/dist/cjs/lib/user-profile.cjs.map +1 -0
- package/dist/cjs/lib/user-profile.d.cts +15 -0
- package/dist/cjs/lib/user-security.cjs +135 -0
- package/dist/cjs/lib/user-security.cjs.map +1 -0
- package/dist/cjs/lib/user-security.d.cts +15 -0
- package/dist/cjs/lib/user-sessions.cjs +178 -0
- package/dist/cjs/lib/user-sessions.cjs.map +1 -0
- package/dist/cjs/lib/user-sessions.d.cts +16 -0
- package/dist/cjs/lib/users-filter.cjs +85 -0
- package/dist/cjs/lib/users-filter.cjs.map +1 -0
- package/dist/cjs/lib/users-filter.d.cts +13 -0
- package/dist/cjs/lib/users-management-context.cjs +81 -0
- package/dist/cjs/lib/users-management-context.cjs.map +1 -0
- package/dist/cjs/lib/users-management-context.d.cts +19 -0
- package/dist/cjs/lib/users-management-state.cjs +154 -0
- package/dist/cjs/lib/users-management-state.cjs.map +1 -0
- package/dist/cjs/lib/users-management-state.d.cts +26 -0
- package/dist/cjs/lib/users-management.cjs +485 -0
- package/dist/cjs/lib/users-management.cjs.map +1 -0
- package/dist/cjs/lib/users-management.d.cts +22 -0
- package/dist/cjs/lib/users-search.cjs +101 -0
- package/dist/cjs/lib/users-search.cjs.map +1 -0
- package/dist/cjs/lib/users-search.d.cts +6 -0
- package/dist/cjs/lib/utils.cjs +148 -0
- package/dist/cjs/lib/utils.cjs.map +1 -0
- package/dist/cjs/lib/utils.d.cts +31 -0
- package/dist/cjs/lib/view-dns-record-dialog.cjs +101 -0
- package/dist/cjs/lib/view-dns-record-dialog.cjs.map +1 -0
- package/dist/cjs/lib/view-dns-record-dialog.d.cts +16 -0
- package/dist/cjs/lib/widgets-context.cjs +59 -0
- package/dist/cjs/lib/widgets-context.cjs.map +1 -0
- package/dist/cjs/lib/widgets-context.d.cts +15 -0
- package/dist/cjs/organization-switcher.client.cjs +81 -0
- package/dist/cjs/organization-switcher.client.cjs.map +1 -0
- package/dist/cjs/organization-switcher.client.d.cts +15 -0
- package/dist/cjs/user-profile.client.cjs +65 -0
- package/dist/cjs/user-profile.client.cjs.map +1 -0
- package/dist/cjs/user-profile.client.d.cts +14 -0
- package/dist/cjs/user-security.client.cjs +67 -0
- package/dist/cjs/user-security.client.cjs.map +1 -0
- package/dist/cjs/user-security.client.d.cts +14 -0
- package/dist/cjs/user-sessions.client.cjs +98 -0
- package/dist/cjs/user-sessions.client.cjs.map +1 -0
- package/dist/cjs/user-sessions.client.d.cts +18 -0
- package/dist/cjs/users-management.client.cjs +88 -0
- package/dist/cjs/users-management.client.cjs.map +1 -0
- package/dist/cjs/users-management.client.d.cts +14 -0
- package/dist/cjs/workos-widgets.client.cjs +106 -0
- package/dist/cjs/workos-widgets.client.cjs.map +1 -0
- package/dist/cjs/{workos-widgets.client.d.ts → workos-widgets.client.d.cts} +10 -7
- package/dist/esm/admin-portal-domain-verification.client.d.ts +12 -5
- package/dist/esm/admin-portal-domain-verification.client.js +87 -52
- package/dist/esm/admin-portal-domain-verification.client.js.map +1 -1
- package/dist/esm/admin-portal-sso-connection-client.d.ts +10 -5
- package/dist/esm/admin-portal-sso-connection-client.js +221 -173
- package/dist/esm/admin-portal-sso-connection-client.js.map +1 -1
- package/dist/esm/api/api-provider.d.ts +10 -8
- package/dist/esm/api/api-provider.js +74 -93
- package/dist/esm/api/api-provider.js.map +1 -1
- package/dist/esm/api/constants.d.ts +3 -2
- package/dist/esm/api/constants.js +4 -1
- package/dist/esm/api/constants.js.map +1 -1
- package/dist/esm/api/endpoint.d.ts +471 -431
- package/dist/esm/api/endpoint.js +1098 -994
- package/dist/esm/api/endpoint.js.map +1 -1
- package/dist/esm/api/errors.d.ts +5 -5
- package/dist/esm/api/errors.js +27 -30
- package/dist/esm/api/errors.js.map +1 -1
- package/dist/esm/api/utils.d.ts +6 -5
- package/dist/esm/api/utils.js +34 -29
- package/dist/esm/api/utils.js.map +1 -1
- package/dist/esm/api/widgets-api-client.d.ts +8 -7
- package/dist/esm/api/widgets-api-client.js +54 -50
- package/dist/esm/api/widgets-api-client.js.map +1 -1
- package/dist/esm/card-list.d.ts +8 -5
- package/dist/esm/card-list.js +18 -5
- package/dist/esm/card-list.js.map +1 -1
- package/dist/esm/index.d.ts +25 -9
- package/dist/esm/index.js +48 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/add-mfa-dialog.d.ts +7 -5
- package/dist/esm/lib/add-mfa-dialog.js +290 -86
- package/dist/esm/lib/add-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/admin-portal-domain-verification.d.ts +12 -7
- package/dist/esm/lib/admin-portal-domain-verification.js +77 -10
- package/dist/esm/lib/admin-portal-domain-verification.js.map +1 -1
- package/dist/esm/lib/admin-portal-sso-connection.d.ts +14 -12
- package/dist/esm/lib/admin-portal-sso-connection.js +277 -150
- package/dist/esm/lib/admin-portal-sso-connection.js.map +1 -1
- package/dist/esm/lib/api/config.d.ts +4 -3
- package/dist/esm/lib/api/config.js +11 -7
- package/dist/esm/lib/api/config.js.map +1 -1
- package/dist/esm/lib/api/user.d.ts +19 -10
- package/dist/esm/lib/api/user.js +85 -62
- package/dist/esm/lib/api/user.js.map +1 -1
- package/dist/esm/lib/change-password-dialog.d.ts +7 -5
- package/dist/esm/lib/change-password-dialog.js +197 -58
- package/dist/esm/lib/change-password-dialog.js.map +1 -1
- package/dist/esm/lib/constants.d.ts +5 -4
- package/dist/esm/lib/constants.js +8 -3
- package/dist/esm/lib/constants.js.map +1 -1
- package/dist/esm/lib/copy-button.d.ts +5 -4
- package/dist/esm/lib/copy-button.js +29 -25
- package/dist/esm/lib/copy-button.js.map +1 -1
- package/dist/esm/lib/delete-domain-dialog.d.ts +9 -5
- package/dist/esm/lib/delete-domain-dialog.js +44 -18
- package/dist/esm/lib/delete-domain-dialog.js.map +1 -1
- package/dist/esm/lib/delete-user-dialog.d.ts +10 -6
- package/dist/esm/lib/delete-user-dialog.js +75 -26
- package/dist/esm/lib/delete-user-dialog.js.map +1 -1
- package/dist/esm/lib/domain-actions.d.ts +8 -4
- package/dist/esm/lib/domain-actions.js +57 -10
- package/dist/esm/lib/domain-actions.js.map +1 -1
- package/dist/esm/lib/domain-item.d.ts +8 -4
- package/dist/esm/lib/domain-item.js +49 -21
- package/dist/esm/lib/domain-item.js.map +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts +10 -6
- package/dist/esm/lib/edit-user-profile-dialog.js +128 -45
- package/dist/esm/lib/edit-user-profile-dialog.js.map +1 -1
- package/dist/esm/lib/edit-user-role-dialog.d.ts +21 -6
- package/dist/esm/lib/edit-user-role-dialog.js +296 -44
- package/dist/esm/lib/edit-user-role-dialog.js.map +1 -1
- package/dist/esm/lib/elements.d.ts +27 -26
- package/dist/esm/lib/elements.js +325 -88
- package/dist/esm/lib/elements.js.map +1 -1
- package/dist/esm/lib/elevated-access.d.ts +6 -4
- package/dist/esm/lib/elevated-access.js +159 -90
- package/dist/esm/lib/elevated-access.js.map +1 -1
- package/dist/esm/lib/error-boundary.d.ts +13 -11
- package/dist/esm/lib/error-boundary.js +69 -74
- package/dist/esm/lib/error-boundary.js.map +1 -1
- package/dist/esm/lib/errors.d.ts +6 -6
- package/dist/esm/lib/errors.js +34 -37
- package/dist/esm/lib/errors.js.map +1 -1
- package/dist/esm/lib/generic-error.d.ts +6 -3
- package/dist/esm/lib/generic-error.js +75 -29
- package/dist/esm/lib/generic-error.js.map +1 -1
- package/dist/esm/lib/icon-panel.d.ts +7 -4
- package/dist/esm/lib/icon-panel.js +25 -10
- package/dist/esm/lib/icon-panel.js.map +1 -1
- package/dist/esm/lib/icons.d.ts +6 -3
- package/dist/esm/lib/icons.js +25 -3
- package/dist/esm/lib/icons.js.map +1 -1
- package/dist/esm/lib/identity-providers.d.ts +5 -5
- package/dist/esm/lib/identity-providers.js +66 -63
- package/dist/esm/lib/identity-providers.js.map +1 -1
- package/dist/esm/lib/invite-user-dialog.d.ts +6 -4
- package/dist/esm/lib/invite-user-dialog.js +236 -117
- package/dist/esm/lib/invite-user-dialog.js.map +1 -1
- package/dist/esm/lib/logout-all-sessions-dialog.d.ts +7 -5
- package/dist/esm/lib/logout-all-sessions-dialog.js +59 -18
- package/dist/esm/lib/logout-all-sessions-dialog.js.map +1 -1
- package/dist/esm/lib/logout-dialog.d.ts +10 -6
- package/dist/esm/lib/logout-dialog.js +74 -24
- package/dist/esm/lib/logout-dialog.js.map +1 -1
- package/dist/esm/lib/marker.d.ts +7 -6
- package/dist/esm/lib/marker.js +17 -4
- package/dist/esm/lib/marker.js.map +1 -1
- package/dist/esm/lib/name-server-icon.d.ts +8 -4
- package/dist/esm/lib/name-server-icon.js +60 -4
- package/dist/esm/lib/name-server-icon.js.map +1 -1
- package/dist/esm/lib/oauth-icons.d.ts +6 -4
- package/dist/esm/lib/oauth-icons.js +132 -31
- package/dist/esm/lib/oauth-icons.js.map +1 -1
- package/dist/esm/lib/organization-switcher.d.ts +12 -11
- package/dist/esm/lib/organization-switcher.js +156 -42
- package/dist/esm/lib/organization-switcher.js.map +1 -1
- package/dist/esm/lib/otp-input.d.ts +9 -7
- package/dist/esm/lib/otp-input.js +163 -100
- package/dist/esm/lib/otp-input.js.map +1 -1
- package/dist/esm/lib/provider-icon.d.ts +5 -4
- package/dist/esm/lib/provider-icon.js +29 -8
- package/dist/esm/lib/provider-icon.js.map +1 -1
- package/dist/esm/lib/resend-invite-dialog.d.ts +10 -6
- package/dist/esm/lib/resend-invite-dialog.js +120 -36
- package/dist/esm/lib/resend-invite-dialog.js.map +1 -1
- package/dist/esm/lib/reset-mfa-dialog.d.ts +7 -5
- package/dist/esm/lib/reset-mfa-dialog.js +70 -23
- package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/revoke-invite-dialog.d.ts +10 -6
- package/dist/esm/lib/revoke-invite-dialog.js +82 -26
- package/dist/esm/lib/revoke-invite-dialog.js.map +1 -1
- package/dist/esm/lib/save-button.d.ts +6 -4
- package/dist/esm/lib/save-button.js +92 -35
- package/dist/esm/lib/save-button.js.map +1 -1
- package/dist/esm/lib/search-provider.d.ts +7 -6
- package/dist/esm/lib/search-provider.js +37 -20
- package/dist/esm/lib/search-provider.js.map +1 -1
- package/dist/esm/lib/set-password-dialog.d.ts +7 -5
- package/dist/esm/lib/set-password-dialog.js +122 -39
- package/dist/esm/lib/set-password-dialog.js.map +1 -1
- package/dist/esm/lib/status.d.ts +7 -6
- package/dist/esm/lib/status.js +31 -12
- package/dist/esm/lib/status.js.map +1 -1
- package/dist/esm/lib/use-dialog-close.d.ts +3 -2
- package/dist/esm/lib/use-dialog-close.js +16 -14
- package/dist/esm/lib/use-dialog-close.js.map +1 -1
- package/dist/esm/lib/use-is-hydrated.d.ts +3 -2
- package/dist/esm/lib/use-is-hydrated.js +11 -3
- package/dist/esm/lib/use-is-hydrated.js.map +1 -1
- package/dist/esm/lib/use-layout-effect.d.ts +3 -2
- package/dist/esm/lib/use-layout-effect.js +3 -1
- package/dist/esm/lib/use-layout-effect.js.map +1 -1
- package/dist/esm/lib/use-permissions.d.ts +5 -3
- package/dist/esm/lib/use-permissions.js +25 -25
- package/dist/esm/lib/use-permissions.js.map +1 -1
- package/dist/esm/lib/use-security-settings.d.ts +3 -3
- package/dist/esm/lib/use-security-settings.js +33 -32
- package/dist/esm/lib/use-security-settings.js.map +1 -1
- package/dist/esm/lib/user-actions-dropdown.d.ts +9 -5
- package/dist/esm/lib/user-actions-dropdown.js +127 -42
- package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
- package/dist/esm/lib/user-profile.d.ts +11 -7
- package/dist/esm/lib/user-profile.js +137 -16
- package/dist/esm/lib/user-profile.js.map +1 -1
- package/dist/esm/lib/user-security.d.ts +12 -8
- package/dist/esm/lib/user-security.js +81 -14
- package/dist/esm/lib/user-security.js.map +1 -1
- package/dist/esm/lib/user-sessions.d.ts +11 -7
- package/dist/esm/lib/user-sessions.js +131 -25
- package/dist/esm/lib/user-sessions.js.map +1 -1
- package/dist/esm/lib/users-filter.d.ts +9 -6
- package/dist/esm/lib/users-filter.js +42 -20
- package/dist/esm/lib/users-filter.js.map +1 -1
- package/dist/esm/lib/users-management-context.d.ts +11 -6
- package/dist/esm/lib/users-management-context.js +37 -31
- package/dist/esm/lib/users-management-context.js.map +1 -1
- package/dist/esm/lib/users-management-state.d.ts +10 -6
- package/dist/esm/lib/users-management-state.js +108 -105
- package/dist/esm/lib/users-management-state.js.map +1 -1
- package/dist/esm/lib/users-management.d.ts +16 -8
- package/dist/esm/lib/users-management.js +444 -143
- package/dist/esm/lib/users-management.js.map +1 -1
- package/dist/esm/lib/users-search.d.ts +6 -3
- package/dist/esm/lib/users-search.js +48 -15
- package/dist/esm/lib/users-search.js.map +1 -1
- package/dist/esm/lib/utils.d.ts +18 -13
- package/dist/esm/lib/utils.js +92 -84
- package/dist/esm/lib/utils.js.map +1 -1
- package/dist/esm/lib/view-dns-record-dialog.d.ts +9 -5
- package/dist/esm/lib/view-dns-record-dialog.js +80 -14
- package/dist/esm/lib/view-dns-record-dialog.js.map +1 -1
- package/dist/esm/lib/widgets-context.d.ts +11 -7
- package/dist/esm/lib/widgets-context.js +17 -11
- package/dist/esm/lib/widgets-context.js.map +1 -1
- package/dist/esm/organization-switcher.client.d.ts +13 -6
- package/dist/esm/organization-switcher.client.js +47 -21
- package/dist/esm/organization-switcher.client.js.map +1 -1
- package/dist/esm/user-profile.client.d.ts +12 -5
- package/dist/esm/user-profile.client.js +33 -17
- package/dist/esm/user-profile.client.js.map +1 -1
- package/dist/esm/user-security.client.d.ts +12 -5
- package/dist/esm/user-security.client.js +36 -14
- package/dist/esm/user-security.client.js.map +1 -1
- package/dist/esm/user-sessions.client.d.ts +10 -4
- package/dist/esm/user-sessions.client.js +62 -30
- package/dist/esm/user-sessions.client.js.map +1 -1
- package/dist/esm/users-management.client.d.ts +12 -5
- package/dist/esm/users-management.client.js +54 -24
- package/dist/esm/users-management.client.js.map +1 -1
- package/dist/esm/workos-widgets.client.d.ts +10 -7
- package/dist/esm/workos-widgets.client.js +64 -38
- package/dist/esm/workos-widgets.client.js.map +1 -1
- package/package.json +55 -48
- package/LICENSE +0 -21
- package/dist/cjs/admin-portal-domain-verification.client.d.ts +0 -7
- package/dist/cjs/admin-portal-domain-verification.client.d.ts.map +0 -1
- package/dist/cjs/admin-portal-domain-verification.client.js +0 -69
- package/dist/cjs/admin-portal-domain-verification.client.js.map +0 -1
- package/dist/cjs/admin-portal-sso-connection-client.d.ts +0 -7
- package/dist/cjs/admin-portal-sso-connection-client.d.ts.map +0 -1
- package/dist/cjs/admin-portal-sso-connection-client.js +0 -221
- package/dist/cjs/admin-portal-sso-connection-client.js.map +0 -1
- package/dist/cjs/api/api-provider.d.ts +0 -29
- package/dist/cjs/api/api-provider.d.ts.map +0 -1
- package/dist/cjs/api/api-provider.js +0 -130
- package/dist/cjs/api/api-provider.js.map +0 -1
- package/dist/cjs/api/constants.d.ts +0 -2
- package/dist/cjs/api/constants.d.ts.map +0 -1
- package/dist/cjs/api/constants.js +0 -5
- package/dist/cjs/api/constants.js.map +0 -1
- package/dist/cjs/api/endpoint.d.ts +0 -1262
- package/dist/cjs/api/endpoint.d.ts.map +0 -1
- package/dist/cjs/api/endpoint.js +0 -1108
- package/dist/cjs/api/endpoint.js.map +0 -1
- package/dist/cjs/api/errors.d.ts.map +0 -1
- package/dist/cjs/api/errors.js +0 -40
- package/dist/cjs/api/errors.js.map +0 -1
- package/dist/cjs/api/utils.d.ts +0 -10
- package/dist/cjs/api/utils.d.ts.map +0 -1
- package/dist/cjs/api/utils.js +0 -42
- package/dist/cjs/api/utils.js.map +0 -1
- package/dist/cjs/api/widgets-api-client.d.ts.map +0 -1
- package/dist/cjs/api/widgets-api-client.js +0 -62
- package/dist/cjs/api/widgets-api-client.js.map +0 -1
- package/dist/cjs/card-list.d.ts +0 -6
- package/dist/cjs/card-list.d.ts.map +0 -1
- package/dist/cjs/card-list.js +0 -13
- package/dist/cjs/card-list.js.map +0 -1
- package/dist/cjs/index.d.ts +0 -9
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -20
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/lib/add-mfa-dialog.d.ts +0 -9
- package/dist/cjs/lib/add-mfa-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/add-mfa-dialog.js +0 -136
- package/dist/cjs/lib/add-mfa-dialog.js.map +0 -1
- package/dist/cjs/lib/admin-portal-domain-verification.d.ts +0 -15
- package/dist/cjs/lib/admin-portal-domain-verification.d.ts.map +0 -1
- package/dist/cjs/lib/admin-portal-domain-verification.js +0 -55
- package/dist/cjs/lib/admin-portal-domain-verification.js.map +0 -1
- package/dist/cjs/lib/admin-portal-sso-connection.d.ts +0 -40
- package/dist/cjs/lib/admin-portal-sso-connection.d.ts.map +0 -1
- package/dist/cjs/lib/admin-portal-sso-connection.js +0 -209
- package/dist/cjs/lib/admin-portal-sso-connection.js.map +0 -1
- package/dist/cjs/lib/api/config.d.ts.map +0 -1
- package/dist/cjs/lib/api/config.js +0 -12
- package/dist/cjs/lib/api/config.js.map +0 -1
- package/dist/cjs/lib/api/user.d.ts +0 -17
- package/dist/cjs/lib/api/user.d.ts.map +0 -1
- package/dist/cjs/lib/api/user.js +0 -80
- package/dist/cjs/lib/api/user.js.map +0 -1
- package/dist/cjs/lib/change-password-dialog.d.ts +0 -8
- package/dist/cjs/lib/change-password-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/change-password-dialog.js +0 -97
- package/dist/cjs/lib/change-password-dialog.js.map +0 -1
- package/dist/cjs/lib/constants.d.ts +0 -4
- package/dist/cjs/lib/constants.d.ts.map +0 -1
- package/dist/cjs/lib/constants.js +0 -7
- package/dist/cjs/lib/constants.js.map +0 -1
- package/dist/cjs/lib/copy-button.d.ts +0 -8
- package/dist/cjs/lib/copy-button.d.ts.map +0 -1
- package/dist/cjs/lib/copy-button.js +0 -62
- package/dist/cjs/lib/copy-button.js.map +0 -1
- package/dist/cjs/lib/delete-domain-dialog.d.ts +0 -12
- package/dist/cjs/lib/delete-domain-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/delete-domain-dialog.js +0 -26
- package/dist/cjs/lib/delete-domain-dialog.js.map +0 -1
- package/dist/cjs/lib/delete-user-dialog.d.ts +0 -12
- package/dist/cjs/lib/delete-user-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/delete-user-dialog.js +0 -36
- package/dist/cjs/lib/delete-user-dialog.js.map +0 -1
- package/dist/cjs/lib/domain-actions.d.ts +0 -9
- package/dist/cjs/lib/domain-actions.d.ts.map +0 -1
- package/dist/cjs/lib/domain-actions.js +0 -22
- package/dist/cjs/lib/domain-actions.js.map +0 -1
- package/dist/cjs/lib/domain-item.d.ts +0 -9
- package/dist/cjs/lib/domain-item.d.ts.map +0 -1
- package/dist/cjs/lib/domain-item.js +0 -38
- package/dist/cjs/lib/domain-item.js.map +0 -1
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts +0 -10
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/edit-user-profile-dialog.js +0 -85
- package/dist/cjs/lib/edit-user-profile-dialog.js.map +0 -1
- package/dist/cjs/lib/edit-user-role-dialog.d.ts +0 -12
- package/dist/cjs/lib/edit-user-role-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/edit-user-role-dialog.js +0 -82
- package/dist/cjs/lib/edit-user-role-dialog.js.map +0 -1
- package/dist/cjs/lib/elements.d.ts +0 -46
- package/dist/cjs/lib/elements.d.ts.map +0 -1
- package/dist/cjs/lib/elements.js +0 -148
- package/dist/cjs/lib/elements.js.map +0 -1
- package/dist/cjs/lib/elevated-access.d.ts +0 -8
- package/dist/cjs/lib/elevated-access.d.ts.map +0 -1
- package/dist/cjs/lib/elevated-access.js +0 -131
- package/dist/cjs/lib/elevated-access.js.map +0 -1
- package/dist/cjs/lib/error-boundary.d.ts.map +0 -1
- package/dist/cjs/lib/error-boundary.js +0 -113
- package/dist/cjs/lib/error-boundary.js.map +0 -1
- package/dist/cjs/lib/errors.d.ts.map +0 -1
- package/dist/cjs/lib/errors.js +0 -49
- package/dist/cjs/lib/errors.js.map +0 -1
- package/dist/cjs/lib/generic-error.d.ts +0 -4
- package/dist/cjs/lib/generic-error.d.ts.map +0 -1
- package/dist/cjs/lib/generic-error.js +0 -60
- package/dist/cjs/lib/generic-error.js.map +0 -1
- package/dist/cjs/lib/icon-panel.d.ts +0 -5
- package/dist/cjs/lib/icon-panel.d.ts.map +0 -1
- package/dist/cjs/lib/icon-panel.js +0 -17
- package/dist/cjs/lib/icon-panel.js.map +0 -1
- package/dist/cjs/lib/icons.d.ts +0 -3
- package/dist/cjs/lib/icons.d.ts.map +0 -1
- package/dist/cjs/lib/icons.js +0 -8
- package/dist/cjs/lib/icons.js.map +0 -1
- package/dist/cjs/lib/identity-providers.d.ts.map +0 -1
- package/dist/cjs/lib/identity-providers.js +0 -71
- package/dist/cjs/lib/identity-providers.js.map +0 -1
- package/dist/cjs/lib/invite-user-dialog.d.ts +0 -7
- package/dist/cjs/lib/invite-user-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/invite-user-dialog.js +0 -165
- package/dist/cjs/lib/invite-user-dialog.js.map +0 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.d.ts +0 -9
- package/dist/cjs/lib/logout-all-sessions-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.js +0 -52
- package/dist/cjs/lib/logout-all-sessions-dialog.js.map +0 -1
- package/dist/cjs/lib/logout-dialog.d.ts +0 -10
- package/dist/cjs/lib/logout-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/logout-dialog.js +0 -58
- package/dist/cjs/lib/logout-dialog.js.map +0 -1
- package/dist/cjs/lib/marker.d.ts.map +0 -1
- package/dist/cjs/lib/marker.js +0 -38
- package/dist/cjs/lib/marker.js.map +0 -1
- package/dist/cjs/lib/name-server-icon.d.ts +0 -7
- package/dist/cjs/lib/name-server-icon.d.ts.map +0 -1
- package/dist/cjs/lib/name-server-icon.js +0 -38
- package/dist/cjs/lib/name-server-icon.js.map +0 -1
- package/dist/cjs/lib/oauth-icons.d.ts +0 -4
- package/dist/cjs/lib/oauth-icons.d.ts.map +0 -1
- package/dist/cjs/lib/oauth-icons.js +0 -67
- package/dist/cjs/lib/oauth-icons.js.map +0 -1
- package/dist/cjs/lib/organization-switcher.d.ts.map +0 -1
- package/dist/cjs/lib/organization-switcher.js +0 -63
- package/dist/cjs/lib/organization-switcher.js.map +0 -1
- package/dist/cjs/lib/otp-input.d.ts +0 -20
- package/dist/cjs/lib/otp-input.d.ts.map +0 -1
- package/dist/cjs/lib/otp-input.js +0 -174
- package/dist/cjs/lib/otp-input.js.map +0 -1
- package/dist/cjs/lib/provider-icon.d.ts.map +0 -1
- package/dist/cjs/lib/provider-icon.js +0 -45
- package/dist/cjs/lib/provider-icon.js.map +0 -1
- package/dist/cjs/lib/resend-invite-dialog.d.ts +0 -10
- package/dist/cjs/lib/resend-invite-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/resend-invite-dialog.js +0 -70
- package/dist/cjs/lib/resend-invite-dialog.js.map +0 -1
- package/dist/cjs/lib/reset-mfa-dialog.d.ts +0 -9
- package/dist/cjs/lib/reset-mfa-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/reset-mfa-dialog.js +0 -60
- package/dist/cjs/lib/reset-mfa-dialog.js.map +0 -1
- package/dist/cjs/lib/revoke-invite-dialog.d.ts +0 -10
- package/dist/cjs/lib/revoke-invite-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/revoke-invite-dialog.js +0 -36
- package/dist/cjs/lib/revoke-invite-dialog.js.map +0 -1
- package/dist/cjs/lib/save-button.d.ts +0 -11
- package/dist/cjs/lib/save-button.d.ts.map +0 -1
- package/dist/cjs/lib/save-button.js +0 -47
- package/dist/cjs/lib/save-button.js.map +0 -1
- package/dist/cjs/lib/search-provider.d.ts +0 -11
- package/dist/cjs/lib/search-provider.d.ts.map +0 -1
- package/dist/cjs/lib/search-provider.js +0 -55
- package/dist/cjs/lib/search-provider.js.map +0 -1
- package/dist/cjs/lib/set-password-dialog.d.ts +0 -8
- package/dist/cjs/lib/set-password-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/set-password-dialog.js +0 -80
- package/dist/cjs/lib/set-password-dialog.js.map +0 -1
- package/dist/cjs/lib/status.d.ts +0 -10
- package/dist/cjs/lib/status.d.ts.map +0 -1
- package/dist/cjs/lib/status.js +0 -48
- package/dist/cjs/lib/status.js.map +0 -1
- package/dist/cjs/lib/use-dialog-close.d.ts +0 -2
- package/dist/cjs/lib/use-dialog-close.d.ts.map +0 -1
- package/dist/cjs/lib/use-dialog-close.js +0 -43
- package/dist/cjs/lib/use-dialog-close.js.map +0 -1
- package/dist/cjs/lib/use-is-hydrated.d.ts +0 -2
- package/dist/cjs/lib/use-is-hydrated.d.ts.map +0 -1
- package/dist/cjs/lib/use-is-hydrated.js +0 -34
- package/dist/cjs/lib/use-is-hydrated.js.map +0 -1
- package/dist/cjs/lib/use-layout-effect.d.ts.map +0 -1
- package/dist/cjs/lib/use-layout-effect.js +0 -8
- package/dist/cjs/lib/use-layout-effect.js.map +0 -1
- package/dist/cjs/lib/use-permissions.d.ts +0 -4
- package/dist/cjs/lib/use-permissions.d.ts.map +0 -1
- package/dist/cjs/lib/use-permissions.js +0 -34
- package/dist/cjs/lib/use-permissions.js.map +0 -1
- package/dist/cjs/lib/use-security-settings.d.ts.map +0 -1
- package/dist/cjs/lib/use-security-settings.js +0 -39
- package/dist/cjs/lib/use-security-settings.js.map +0 -1
- package/dist/cjs/lib/user-actions-dropdown.d.ts +0 -9
- package/dist/cjs/lib/user-actions-dropdown.d.ts.map +0 -1
- package/dist/cjs/lib/user-actions-dropdown.js +0 -80
- package/dist/cjs/lib/user-actions-dropdown.js.map +0 -1
- package/dist/cjs/lib/user-profile.d.ts +0 -11
- package/dist/cjs/lib/user-profile.d.ts.map +0 -1
- package/dist/cjs/lib/user-profile.js +0 -36
- package/dist/cjs/lib/user-profile.js.map +0 -1
- package/dist/cjs/lib/user-security.d.ts +0 -11
- package/dist/cjs/lib/user-security.d.ts.map +0 -1
- package/dist/cjs/lib/user-security.js +0 -64
- package/dist/cjs/lib/user-security.js.map +0 -1
- package/dist/cjs/lib/user-sessions.d.ts +0 -12
- package/dist/cjs/lib/user-sessions.d.ts.map +0 -1
- package/dist/cjs/lib/user-sessions.js +0 -72
- package/dist/cjs/lib/user-sessions.js.map +0 -1
- package/dist/cjs/lib/users-filter.d.ts +0 -10
- package/dist/cjs/lib/users-filter.d.ts.map +0 -1
- package/dist/cjs/lib/users-filter.js +0 -56
- package/dist/cjs/lib/users-filter.js.map +0 -1
- package/dist/cjs/lib/users-management-context.d.ts +0 -14
- package/dist/cjs/lib/users-management-context.d.ts.map +0 -1
- package/dist/cjs/lib/users-management-context.js +0 -70
- package/dist/cjs/lib/users-management-context.js.map +0 -1
- package/dist/cjs/lib/users-management-state.d.ts +0 -22
- package/dist/cjs/lib/users-management-state.d.ts.map +0 -1
- package/dist/cjs/lib/users-management-state.js +0 -143
- package/dist/cjs/lib/users-management-state.js.map +0 -1
- package/dist/cjs/lib/users-management.d.ts +0 -14
- package/dist/cjs/lib/users-management.d.ts.map +0 -1
- package/dist/cjs/lib/users-management.js +0 -201
- package/dist/cjs/lib/users-management.js.map +0 -1
- package/dist/cjs/lib/users-search.d.ts +0 -3
- package/dist/cjs/lib/users-search.d.ts.map +0 -1
- package/dist/cjs/lib/users-search.js +0 -63
- package/dist/cjs/lib/users-search.js.map +0 -1
- package/dist/cjs/lib/utils.d.ts +0 -26
- package/dist/cjs/lib/utils.d.ts.map +0 -1
- package/dist/cjs/lib/utils.js +0 -108
- package/dist/cjs/lib/utils.js.map +0 -1
- package/dist/cjs/lib/view-dns-record-dialog.d.ts +0 -12
- package/dist/cjs/lib/view-dns-record-dialog.d.ts.map +0 -1
- package/dist/cjs/lib/view-dns-record-dialog.js +0 -26
- package/dist/cjs/lib/view-dns-record-dialog.js.map +0 -1
- package/dist/cjs/lib/widgets-context.d.ts +0 -11
- package/dist/cjs/lib/widgets-context.d.ts.map +0 -1
- package/dist/cjs/lib/widgets-context.js +0 -45
- package/dist/cjs/lib/widgets-context.js.map +0 -1
- package/dist/cjs/organization-switcher.client.d.ts +0 -8
- package/dist/cjs/organization-switcher.client.d.ts.map +0 -1
- package/dist/cjs/organization-switcher.client.js +0 -38
- package/dist/cjs/organization-switcher.client.js.map +0 -1
- package/dist/cjs/user-profile.client.d.ts +0 -7
- package/dist/cjs/user-profile.client.d.ts.map +0 -1
- package/dist/cjs/user-profile.client.js +0 -32
- package/dist/cjs/user-profile.client.js.map +0 -1
- package/dist/cjs/user-security.client.d.ts +0 -7
- package/dist/cjs/user-security.client.d.ts.map +0 -1
- package/dist/cjs/user-security.client.js +0 -28
- package/dist/cjs/user-security.client.js.map +0 -1
- package/dist/cjs/user-sessions.client.d.ts +0 -12
- package/dist/cjs/user-sessions.client.d.ts.map +0 -1
- package/dist/cjs/user-sessions.client.js +0 -49
- package/dist/cjs/user-sessions.client.js.map +0 -1
- package/dist/cjs/users-management.client.d.ts +0 -7
- package/dist/cjs/users-management.client.d.ts.map +0 -1
- package/dist/cjs/users-management.client.js +0 -41
- package/dist/cjs/users-management.client.js.map +0 -1
- package/dist/cjs/workos-widgets.client.d.ts.map +0 -1
- package/dist/cjs/workos-widgets.client.js +0 -80
- package/dist/cjs/workos-widgets.client.js.map +0 -1
- package/dist/esm/admin-portal-domain-verification.client.d.ts.map +0 -1
- package/dist/esm/admin-portal-sso-connection-client.d.ts.map +0 -1
- package/dist/esm/api/api-provider.d.ts.map +0 -1
- package/dist/esm/api/constants.d.ts.map +0 -1
- package/dist/esm/api/endpoint.d.ts.map +0 -1
- package/dist/esm/api/errors.d.ts.map +0 -1
- package/dist/esm/api/utils.d.ts.map +0 -1
- package/dist/esm/api/widgets-api-client.d.ts.map +0 -1
- package/dist/esm/card-list.d.ts.map +0 -1
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/lib/add-mfa-dialog.d.ts.map +0 -1
- package/dist/esm/lib/admin-portal-domain-verification.d.ts.map +0 -1
- package/dist/esm/lib/admin-portal-sso-connection.d.ts.map +0 -1
- package/dist/esm/lib/api/config.d.ts.map +0 -1
- package/dist/esm/lib/api/user.d.ts.map +0 -1
- package/dist/esm/lib/change-password-dialog.d.ts.map +0 -1
- package/dist/esm/lib/constants.d.ts.map +0 -1
- package/dist/esm/lib/copy-button.d.ts.map +0 -1
- package/dist/esm/lib/delete-domain-dialog.d.ts.map +0 -1
- package/dist/esm/lib/delete-user-dialog.d.ts.map +0 -1
- package/dist/esm/lib/domain-actions.d.ts.map +0 -1
- package/dist/esm/lib/domain-item.d.ts.map +0 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts.map +0 -1
- package/dist/esm/lib/edit-user-role-dialog.d.ts.map +0 -1
- package/dist/esm/lib/elements.d.ts.map +0 -1
- package/dist/esm/lib/elevated-access.d.ts.map +0 -1
- package/dist/esm/lib/error-boundary.d.ts.map +0 -1
- package/dist/esm/lib/errors.d.ts.map +0 -1
- package/dist/esm/lib/generic-error.d.ts.map +0 -1
- package/dist/esm/lib/icon-panel.d.ts.map +0 -1
- package/dist/esm/lib/icons.d.ts.map +0 -1
- package/dist/esm/lib/identity-providers.d.ts.map +0 -1
- package/dist/esm/lib/invite-user-dialog.d.ts.map +0 -1
- package/dist/esm/lib/logout-all-sessions-dialog.d.ts.map +0 -1
- package/dist/esm/lib/logout-dialog.d.ts.map +0 -1
- package/dist/esm/lib/marker.d.ts.map +0 -1
- package/dist/esm/lib/name-server-icon.d.ts.map +0 -1
- package/dist/esm/lib/oauth-icons.d.ts.map +0 -1
- package/dist/esm/lib/organization-switcher.d.ts.map +0 -1
- package/dist/esm/lib/otp-input.d.ts.map +0 -1
- package/dist/esm/lib/provider-icon.d.ts.map +0 -1
- package/dist/esm/lib/resend-invite-dialog.d.ts.map +0 -1
- package/dist/esm/lib/reset-mfa-dialog.d.ts.map +0 -1
- package/dist/esm/lib/revoke-invite-dialog.d.ts.map +0 -1
- package/dist/esm/lib/save-button.d.ts.map +0 -1
- package/dist/esm/lib/search-provider.d.ts.map +0 -1
- package/dist/esm/lib/set-password-dialog.d.ts.map +0 -1
- package/dist/esm/lib/status.d.ts.map +0 -1
- package/dist/esm/lib/use-dialog-close.d.ts.map +0 -1
- package/dist/esm/lib/use-is-hydrated.d.ts.map +0 -1
- package/dist/esm/lib/use-layout-effect.d.ts.map +0 -1
- package/dist/esm/lib/use-permissions.d.ts.map +0 -1
- package/dist/esm/lib/use-security-settings.d.ts.map +0 -1
- package/dist/esm/lib/user-actions-dropdown.d.ts.map +0 -1
- package/dist/esm/lib/user-profile.d.ts.map +0 -1
- package/dist/esm/lib/user-security.d.ts.map +0 -1
- package/dist/esm/lib/user-sessions.d.ts.map +0 -1
- package/dist/esm/lib/users-filter.d.ts.map +0 -1
- package/dist/esm/lib/users-management-context.d.ts.map +0 -1
- package/dist/esm/lib/users-management-state.d.ts.map +0 -1
- package/dist/esm/lib/users-management.d.ts.map +0 -1
- package/dist/esm/lib/users-search.d.ts.map +0 -1
- package/dist/esm/lib/utils.d.ts.map +0 -1
- package/dist/esm/lib/view-dns-record-dialog.d.ts.map +0 -1
- package/dist/esm/lib/widgets-context.d.ts.map +0 -1
- package/dist/esm/organization-switcher.client.d.ts.map +0 -1
- package/dist/esm/user-profile.client.d.ts.map +0 -1
- package/dist/esm/user-security.client.d.ts.map +0 -1
- package/dist/esm/user-sessions.client.d.ts.map +0 -1
- package/dist/esm/users-management.client.d.ts.map +0 -1
- package/dist/esm/workos-widgets.client.d.ts.map +0 -1
- package/dist/tsconfig.cjs.tsbuildinfo +0 -1
- package/dist/tsconfig.esm.tsbuildinfo +0 -1
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx
|
|
3
|
-
import {
|
|
2
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import {
|
|
4
|
+
Box,
|
|
5
|
+
Code,
|
|
6
|
+
Dialog,
|
|
7
|
+
Flex,
|
|
8
|
+
Grid,
|
|
9
|
+
Link,
|
|
10
|
+
Separator,
|
|
11
|
+
Text,
|
|
12
|
+
VisuallyHidden
|
|
13
|
+
} from "@radix-ui/themes";
|
|
4
14
|
import * as React from "react";
|
|
5
15
|
import * as Otp from "./otp-input.js";
|
|
6
16
|
import { DialogContent, PrimaryButton, SecondaryButton } from "./elements.js";
|
|
7
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
useCreateTotpFactor,
|
|
19
|
+
useVerifyTotpFactor
|
|
20
|
+
} from "../api/endpoint.js";
|
|
8
21
|
import { useElevatedAccessToken } from "../api/api-provider.js";
|
|
9
22
|
import * as Form from "@radix-ui/react-form";
|
|
10
23
|
import { Marker } from "./marker.js";
|
|
@@ -13,98 +26,289 @@ import { useSecuritySettings } from "./use-security-settings.js";
|
|
|
13
26
|
import { ElevatedAccess } from "./elevated-access.js";
|
|
14
27
|
import { SaveButton } from "./save-button.js";
|
|
15
28
|
import { useDialogClose } from "./use-dialog-close.js";
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
function AddMfaDialog({
|
|
30
|
+
children,
|
|
31
|
+
onSuccess,
|
|
32
|
+
...props
|
|
33
|
+
}) {
|
|
34
|
+
const [open, setOpen] = React.useState(false);
|
|
35
|
+
const [manuallyTriggered, setManuallyTriggered] = React.useState(false);
|
|
36
|
+
const { elevatedAccess } = useElevatedAccessToken();
|
|
37
|
+
const createAuthFactor = useCreateTotpFactor();
|
|
38
|
+
const handleVerified = async () => {
|
|
39
|
+
await createAuthFactor.mutateAsync(void 0);
|
|
40
|
+
};
|
|
41
|
+
const onTriggerClick = (event) => {
|
|
42
|
+
if (elevatedAccess && !createAuthFactor.data) {
|
|
43
|
+
event.preventDefault();
|
|
44
|
+
setManuallyTriggered(true);
|
|
45
|
+
createAuthFactor.mutate(void 0, {
|
|
46
|
+
onSuccess: () => {
|
|
47
|
+
setOpen(true);
|
|
33
48
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
49
|
+
});
|
|
50
|
+
} else {
|
|
51
|
+
setManuallyTriggered(false);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
const handleClose = React.useCallback(() => {
|
|
55
|
+
setOpen(false);
|
|
56
|
+
}, []);
|
|
57
|
+
return /* @__PURE__ */ jsxs(
|
|
58
|
+
Dialog.Root,
|
|
59
|
+
{
|
|
60
|
+
...props,
|
|
61
|
+
open: props.open || open,
|
|
62
|
+
onOpenChange: props.onOpenChange || setOpen,
|
|
63
|
+
children: [
|
|
64
|
+
/* @__PURE__ */ jsx(
|
|
65
|
+
Dialog.Trigger,
|
|
66
|
+
{
|
|
67
|
+
onClick: onTriggerClick,
|
|
68
|
+
loading: manuallyTriggered && createAuthFactor.isPending,
|
|
69
|
+
children
|
|
70
|
+
}
|
|
71
|
+
),
|
|
72
|
+
/* @__PURE__ */ jsx(DialogContent, { maxWidth: "480px", children: /* @__PURE__ */ jsx(ElevatedAccess, { onVerified: handleVerified, children: /* @__PURE__ */ jsx(Content, { onClose: handleClose, totpFactor: createAuthFactor.data }) }) })
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
);
|
|
44
76
|
}
|
|
45
77
|
function Content({ onClose, totpFactor }) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
code: otpCode ?? "",
|
|
71
|
-
},
|
|
72
|
-
});
|
|
73
|
-
};
|
|
74
|
-
useDialogClose(isSuccess, () => {
|
|
75
|
-
securitySettings.update("Mfa", true);
|
|
78
|
+
const securitySettings = useSecuritySettings();
|
|
79
|
+
const [customError, setCustomError] = React.useState(null);
|
|
80
|
+
const totp = hasQrCode(totpFactor) ? totpFactor.authenticationFactor.totp : void 0;
|
|
81
|
+
const verifyTotp = useVerifyTotpFactor({
|
|
82
|
+
mutation: {
|
|
83
|
+
onSuccess: ({ success }) => {
|
|
84
|
+
if (!success) {
|
|
85
|
+
setCustomError("Invalid passcode");
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
const serverError = verifyTotp.error || customError;
|
|
91
|
+
const isSuccess = verifyTotp.isSuccess && !serverError;
|
|
92
|
+
const handleSubmit = async (event) => {
|
|
93
|
+
event.preventDefault();
|
|
94
|
+
setCustomError(null);
|
|
95
|
+
const formData = new FormData(event.currentTarget);
|
|
96
|
+
const otpCode = formData.get("otp-code")?.toString();
|
|
97
|
+
verifyTotp.mutate({
|
|
98
|
+
data: {
|
|
99
|
+
authenticationChallengeId: totpFactor?.authenticationChallenge.id ?? "",
|
|
100
|
+
code: otpCode ?? ""
|
|
101
|
+
}
|
|
76
102
|
});
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
103
|
+
};
|
|
104
|
+
useDialogClose(isSuccess, () => {
|
|
105
|
+
securitySettings.update("Mfa", true);
|
|
106
|
+
});
|
|
107
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
108
|
+
/* @__PURE__ */ jsx(Dialog.Title, { mb: "5", children: "Set up an authenticator app" }),
|
|
109
|
+
/* @__PURE__ */ jsxs(Form.Root, { onSubmit: handleSubmit, children: [
|
|
110
|
+
/* @__PURE__ */ jsxs(Grid, { columns: "auto 1fr", rows: "repeat(4, auto)", gapX: "3", gapY: "1", children: [
|
|
111
|
+
/* @__PURE__ */ jsxs(
|
|
112
|
+
Grid,
|
|
113
|
+
{
|
|
114
|
+
rows: "subgrid",
|
|
115
|
+
gridRow: "span 4",
|
|
116
|
+
style: { placeItems: "center" },
|
|
117
|
+
children: [
|
|
118
|
+
/* @__PURE__ */ jsx(Marker, { children: "1" }),
|
|
119
|
+
/* @__PURE__ */ jsx(
|
|
120
|
+
Separator,
|
|
121
|
+
{
|
|
122
|
+
orientation: "vertical",
|
|
123
|
+
size: "4",
|
|
124
|
+
style: { width: "2px" }
|
|
125
|
+
}
|
|
126
|
+
),
|
|
127
|
+
/* @__PURE__ */ jsx(Marker, { children: "2" }),
|
|
128
|
+
/* @__PURE__ */ jsx("div", {})
|
|
129
|
+
]
|
|
130
|
+
}
|
|
131
|
+
),
|
|
132
|
+
/* @__PURE__ */ jsxs(Grid, { rows: "subgrid", gridRow: "span 4", children: [
|
|
133
|
+
/* @__PURE__ */ jsx(Text, { as: "p", size: "3", weight: "bold", children: "Scan the QR code" }),
|
|
134
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "1", children: [
|
|
135
|
+
/* @__PURE__ */ jsxs(Text, { as: "p", size: "2", children: [
|
|
136
|
+
"Use an authenticator app like",
|
|
137
|
+
" ",
|
|
138
|
+
/* @__PURE__ */ jsx(
|
|
139
|
+
Link,
|
|
140
|
+
{
|
|
141
|
+
href: "https://1password.com/",
|
|
142
|
+
rel: "noopener noreferrer",
|
|
143
|
+
target: "_blank",
|
|
144
|
+
children: "1Password"
|
|
145
|
+
}
|
|
146
|
+
),
|
|
147
|
+
",",
|
|
148
|
+
" ",
|
|
149
|
+
/* @__PURE__ */ jsx(
|
|
150
|
+
Link,
|
|
151
|
+
{
|
|
152
|
+
href: "https://apps.apple.com/us/app/google-authenticator/id388497605",
|
|
153
|
+
rel: "noopener noreferrer",
|
|
154
|
+
target: "_blank",
|
|
155
|
+
children: "Google Authenticator"
|
|
156
|
+
}
|
|
157
|
+
),
|
|
158
|
+
",",
|
|
159
|
+
" ",
|
|
160
|
+
/* @__PURE__ */ jsx(
|
|
161
|
+
Link,
|
|
162
|
+
{
|
|
163
|
+
href: "https://authy.com/",
|
|
164
|
+
rel: "noopener noreferrer",
|
|
165
|
+
target: "_blank",
|
|
166
|
+
children: "Authy"
|
|
167
|
+
}
|
|
168
|
+
),
|
|
169
|
+
", or",
|
|
170
|
+
" ",
|
|
171
|
+
/* @__PURE__ */ jsx(
|
|
172
|
+
Link,
|
|
173
|
+
{
|
|
174
|
+
href: "https://www.microsoft.com/en-gb/security/mobile-authenticator-app",
|
|
175
|
+
rel: "noopener noreferrer",
|
|
176
|
+
target: "_blank",
|
|
177
|
+
children: "Microsoft Authenticator"
|
|
178
|
+
}
|
|
179
|
+
),
|
|
180
|
+
" ",
|
|
181
|
+
"to scan the QR code below."
|
|
182
|
+
] }),
|
|
183
|
+
/* @__PURE__ */ jsxs(Flex, { align: "center", gap: "5", my: "5", children: [
|
|
184
|
+
/* @__PURE__ */ jsx(
|
|
185
|
+
Grid,
|
|
186
|
+
{
|
|
187
|
+
position: "relative",
|
|
188
|
+
width: "160px",
|
|
189
|
+
height: "160px",
|
|
190
|
+
p: "2",
|
|
191
|
+
style: {
|
|
192
|
+
border: "1px solid var(--gray-7)",
|
|
193
|
+
borderRadius: "var(--radius-4)",
|
|
194
|
+
background: "var(--gray-2)",
|
|
195
|
+
overflow: "hidden"
|
|
196
|
+
},
|
|
197
|
+
children: totp?.qr_code && /* @__PURE__ */ jsx(Box, { asChild: true, width: "100%", height: "auto", children: /* @__PURE__ */ jsx(
|
|
198
|
+
"img",
|
|
199
|
+
{
|
|
200
|
+
alt: "Scan this QR code to enroll",
|
|
201
|
+
"aria-describedby": "secret-note",
|
|
202
|
+
height: "160",
|
|
203
|
+
src: totp.qr_code,
|
|
204
|
+
style: { userSelect: "none", background: "white" },
|
|
205
|
+
width: "160"
|
|
206
|
+
}
|
|
207
|
+
) })
|
|
208
|
+
}
|
|
209
|
+
),
|
|
210
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "1", align: "start", children: [
|
|
211
|
+
/* @__PURE__ */ jsxs(Text, { color: "gray", id: "secret-note", size: "2", children: [
|
|
212
|
+
"Can\u2018t scan the code?",
|
|
213
|
+
" "
|
|
214
|
+
] }),
|
|
215
|
+
/* @__PURE__ */ jsx(SecretDialog, { setupKey: totp?.secret ?? "", children: /* @__PURE__ */ jsx(
|
|
216
|
+
SecondaryButton,
|
|
217
|
+
{
|
|
218
|
+
size: "1",
|
|
219
|
+
disabled: verifyTotp.isPending || isSuccess,
|
|
220
|
+
children: "View setup key"
|
|
221
|
+
}
|
|
222
|
+
) })
|
|
223
|
+
] })
|
|
224
|
+
] })
|
|
225
|
+
] }),
|
|
226
|
+
/* @__PURE__ */ jsx(Text, { as: "p", size: "3", weight: "bold", children: "Get verification passcode" }),
|
|
227
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "4", children: [
|
|
228
|
+
/* @__PURE__ */ jsx(Text, { as: "p", size: "2", children: "Enter the 6-digit passcode from your authenticator app." }),
|
|
229
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "2", children: [
|
|
230
|
+
/* @__PURE__ */ jsxs(
|
|
231
|
+
Otp.Root,
|
|
232
|
+
{
|
|
233
|
+
autoSubmit: true,
|
|
234
|
+
gap: "3",
|
|
235
|
+
justify: "start",
|
|
236
|
+
name: "otp-code",
|
|
237
|
+
rows: "48px",
|
|
238
|
+
columns: "repeat(6, 48px)",
|
|
239
|
+
readOnly: verifyTotp.isPending || isSuccess,
|
|
240
|
+
children: [
|
|
241
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true, autoFocus: true, autoComplete: "off" }),
|
|
242
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true }),
|
|
243
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true }),
|
|
244
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true }),
|
|
245
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true }),
|
|
246
|
+
/* @__PURE__ */ jsx(Otp.Input, { required: true })
|
|
247
|
+
]
|
|
248
|
+
}
|
|
249
|
+
),
|
|
250
|
+
serverError && /* @__PURE__ */ jsx(Text, { size: "2", color: "red", children: getMutationErrorMessage(serverError) })
|
|
251
|
+
] })
|
|
252
|
+
] })
|
|
253
|
+
] })
|
|
254
|
+
] }),
|
|
255
|
+
/* @__PURE__ */ jsxs(Flex, { mt: "5", gap: "3", justify: "end", children: [
|
|
256
|
+
/* @__PURE__ */ jsx(Dialog.Close, { children: /* @__PURE__ */ jsx(SecondaryButton, { disabled: verifyTotp.isPending || isSuccess, children: "Cancel" }) }),
|
|
257
|
+
/* @__PURE__ */ jsx(
|
|
258
|
+
SaveButton,
|
|
259
|
+
{
|
|
260
|
+
asChild: true,
|
|
261
|
+
loading: verifyTotp.isPending,
|
|
262
|
+
done: isSuccess,
|
|
263
|
+
onDone: onClose,
|
|
264
|
+
children: /* @__PURE__ */ jsx(PrimaryButton, { type: "submit", children: "Confirm" })
|
|
265
|
+
}
|
|
266
|
+
)
|
|
267
|
+
] })
|
|
268
|
+
] }),
|
|
269
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { asChild: true, children: /* @__PURE__ */ jsx("section", { "aria-live": "polite", children: getMutationErrorMessage(serverError) }) })
|
|
270
|
+
] });
|
|
83
271
|
}
|
|
84
272
|
function SecretDialog({ children, setupKey }) {
|
|
85
|
-
|
|
273
|
+
return /* @__PURE__ */ jsxs(Dialog.Root, { children: [
|
|
274
|
+
/* @__PURE__ */ jsx(Dialog.Trigger, { children }),
|
|
275
|
+
/* @__PURE__ */ jsxs(
|
|
276
|
+
Dialog.Content,
|
|
277
|
+
{
|
|
278
|
+
maxWidth: "90vw",
|
|
279
|
+
size: { initial: "3", sm: "4" },
|
|
280
|
+
minWidth: "300px",
|
|
281
|
+
width: "fit-content",
|
|
282
|
+
children: [
|
|
283
|
+
/* @__PURE__ */ jsx(Dialog.Title, { size: "2", weight: "regular", children: "Your setup key" }),
|
|
284
|
+
/* @__PURE__ */ jsx(Dialog.Description, { children: /* @__PURE__ */ jsx(Text, { size: "6", children: /* @__PURE__ */ jsx(Code, { variant: "ghost", style: { letterSpacing: "0.15rem" }, children: setupKey }) }) }),
|
|
285
|
+
/* @__PURE__ */ jsx(Flex, { align: "center", gap: "3", justify: "end", mt: "5", children: /* @__PURE__ */ jsx(Dialog.Close, { children: /* @__PURE__ */ jsx(CopyButton, { asChild: true, value: setupKey, children: /* @__PURE__ */ jsx(PrimaryButton, { children: "Copy and close" }) }) }) })
|
|
286
|
+
]
|
|
287
|
+
}
|
|
288
|
+
)
|
|
289
|
+
] });
|
|
86
290
|
}
|
|
87
291
|
function getMutationErrorMessage(error) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
message = "Invalid passcode, please try again";
|
|
103
|
-
}
|
|
104
|
-
return message;
|
|
292
|
+
let message = "Something went wrong, please try again";
|
|
293
|
+
if (typeof error === "string") {
|
|
294
|
+
message = error;
|
|
295
|
+
}
|
|
296
|
+
if (error instanceof Error) {
|
|
297
|
+
message = error.message;
|
|
298
|
+
}
|
|
299
|
+
if (typeof error === "object" && error !== null && "message" in error && typeof error.message === "string") {
|
|
300
|
+
message = error.message;
|
|
301
|
+
}
|
|
302
|
+
if (message === "Invalid passcode") {
|
|
303
|
+
message = "Invalid passcode, please try again";
|
|
304
|
+
}
|
|
305
|
+
return message;
|
|
105
306
|
}
|
|
106
307
|
function hasQrCode(response) {
|
|
107
|
-
|
|
108
|
-
|
|
308
|
+
const totp = response?.authenticationFactor.totp;
|
|
309
|
+
return totp != null && "qr_code" in totp;
|
|
109
310
|
}
|
|
311
|
+
export {
|
|
312
|
+
AddMfaDialog
|
|
313
|
+
};
|
|
110
314
|
//# sourceMappingURL=add-mfa-dialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-mfa-dialog.js","sourceRoot":"","sources":["../../../src/lib/add-mfa-dialog.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/add-mfa-dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n Box,\n Code,\n Dialog,\n Flex,\n Grid,\n Link,\n Separator,\n Text,\n VisuallyHidden,\n} from \"@radix-ui/themes\";\nimport * as React from \"react\";\nimport { type ReactNode } from \"react\";\nimport * as Otp from \"./otp-input.js\";\nimport { DialogContent, PrimaryButton, SecondaryButton } from \"./elements.js\";\nimport {\n CreateTotpFactorResponse,\n CreateTotpFactorResponseAuthenticationFactorAllOfTotpAnyOf,\n useCreateTotpFactor,\n useVerifyTotpFactor,\n} from \"../api/endpoint.js\";\nimport { useElevatedAccessToken } from \"../api/api-provider.js\";\nimport * as Form from \"@radix-ui/react-form\";\nimport { Marker } from \"./marker.js\";\nimport { CopyButton } from \"./copy-button.js\";\nimport { useSecuritySettings } from \"./use-security-settings.js\";\nimport { ElevatedAccess } from \"./elevated-access.js\";\nimport { SaveButton } from \"./save-button.js\";\nimport { useDialogClose } from \"./use-dialog-close.js\";\n\ninterface AddMfaDialogProps extends Dialog.RootProps {\n children?: ReactNode;\n onSuccess?: () => void;\n}\n\nexport function AddMfaDialog({\n children,\n onSuccess,\n ...props\n}: AddMfaDialogProps) {\n const [open, setOpen] = React.useState(false);\n const [manuallyTriggered, setManuallyTriggered] = React.useState(false);\n const { elevatedAccess } = useElevatedAccessToken();\n const createAuthFactor = useCreateTotpFactor();\n\n const handleVerified = async () => {\n await createAuthFactor.mutateAsync(undefined);\n };\n\n const onTriggerClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n if (elevatedAccess && !createAuthFactor.data) {\n event.preventDefault();\n setManuallyTriggered(true);\n createAuthFactor.mutate(undefined, {\n onSuccess: () => {\n setOpen(true);\n },\n });\n } else {\n setManuallyTriggered(false);\n }\n };\n\n const handleClose = React.useCallback(() => {\n setOpen(false);\n }, []);\n\n return (\n <Dialog.Root\n {...props}\n open={props.open || open}\n onOpenChange={props.onOpenChange || setOpen}\n >\n <Dialog.Trigger\n onClick={onTriggerClick}\n // @ts-ignore I've to find a way to pass the loading state to the trigger\n loading={manuallyTriggered && createAuthFactor.isPending}\n >\n {children}\n </Dialog.Trigger>\n\n <DialogContent maxWidth=\"480px\">\n <ElevatedAccess onVerified={handleVerified}>\n <Content onClose={handleClose} totpFactor={createAuthFactor.data} />\n </ElevatedAccess>\n </DialogContent>\n </Dialog.Root>\n );\n}\n\ninterface ContentProps {\n totpFactor?: CreateTotpFactorResponse;\n onClose?: () => void;\n}\n\nfunction Content({ onClose, totpFactor }: ContentProps) {\n const securitySettings = useSecuritySettings();\n\n const [customError, setCustomError] = React.useState<string | null>(null);\n const totp = hasQrCode(totpFactor)\n ? totpFactor.authenticationFactor.totp\n : undefined;\n\n const verifyTotp = useVerifyTotpFactor({\n mutation: {\n onSuccess: ({ success }) => {\n if (!success) {\n setCustomError(\"Invalid passcode\");\n }\n },\n },\n });\n\n const serverError = verifyTotp.error || customError;\n const isSuccess = verifyTotp.isSuccess && !serverError;\n\n const handleSubmit = async (event: React.FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n setCustomError(null);\n\n const formData = new FormData(event.currentTarget);\n const otpCode = formData.get(\"otp-code\")?.toString();\n\n verifyTotp.mutate({\n data: {\n authenticationChallengeId: totpFactor?.authenticationChallenge.id ?? \"\",\n code: otpCode ?? \"\",\n },\n });\n };\n\n useDialogClose(isSuccess, () => {\n securitySettings.update(\"Mfa\", true);\n });\n\n return (\n <>\n <Dialog.Title mb=\"5\">Set up an authenticator app</Dialog.Title>\n\n <Form.Root onSubmit={handleSubmit}>\n <Grid columns=\"auto 1fr\" rows=\"repeat(4, auto)\" gapX=\"3\" gapY=\"1\">\n <Grid\n rows=\"subgrid\"\n gridRow=\"span 4\"\n style={{ placeItems: \"center\" }}\n >\n <Marker>1</Marker>\n <Separator\n orientation=\"vertical\"\n size=\"4\"\n style={{ width: \"2px\" }}\n />\n <Marker>2</Marker>\n <div />\n </Grid>\n\n <Grid rows=\"subgrid\" gridRow=\"span 4\">\n <Text as=\"p\" size=\"3\" weight=\"bold\">\n Scan the QR code\n </Text>\n <Flex direction=\"column\" gap=\"1\">\n <Text as=\"p\" size=\"2\">\n Use an authenticator app like{\" \"}\n <Link\n href=\"https://1password.com/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n 1Password\n </Link>\n ,{\" \"}\n <Link\n href=\"https://apps.apple.com/us/app/google-authenticator/id388497605\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Google Authenticator\n </Link>\n ,{\" \"}\n <Link\n href=\"https://authy.com/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Authy\n </Link>\n , or{\" \"}\n <Link\n href=\"https://www.microsoft.com/en-gb/security/mobile-authenticator-app\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Microsoft Authenticator\n </Link>{\" \"}\n to scan the QR code below.\n </Text>\n <Flex align=\"center\" gap=\"5\" my=\"5\">\n <Grid\n position=\"relative\"\n width=\"160px\"\n height=\"160px\"\n p=\"2\"\n style={{\n border: \"1px solid var(--gray-7)\",\n borderRadius: \"var(--radius-4)\",\n background: \"var(--gray-2)\",\n overflow: \"hidden\",\n }}\n >\n {totp?.qr_code && (\n <Box asChild width=\"100%\" height=\"auto\">\n <img\n alt=\"Scan this QR code to enroll\"\n aria-describedby=\"secret-note\"\n height=\"160\"\n src={totp.qr_code}\n style={{ userSelect: \"none\", background: \"white\" }}\n width=\"160\"\n />\n </Box>\n )}\n </Grid>\n\n <Flex direction=\"column\" gap=\"1\" align=\"start\">\n <Text color=\"gray\" id=\"secret-note\" size=\"2\">\n Can‘t scan the code?{\" \"}\n </Text>\n\n <SecretDialog setupKey={totp?.secret ?? \"\"}>\n <SecondaryButton\n size=\"1\"\n disabled={verifyTotp.isPending || isSuccess}\n >\n View setup key\n </SecondaryButton>\n </SecretDialog>\n </Flex>\n </Flex>\n </Flex>\n <Text as=\"p\" size=\"3\" weight=\"bold\">\n Get verification passcode\n </Text>\n <Flex direction=\"column\" gap=\"4\">\n <Text as=\"p\" size=\"2\">\n Enter the 6-digit passcode from your authenticator app.\n </Text>\n\n <Flex direction=\"column\" gap=\"2\">\n <Otp.Root\n autoSubmit\n gap=\"3\"\n justify=\"start\"\n name=\"otp-code\"\n rows=\"48px\"\n columns=\"repeat(6, 48px)\"\n readOnly={verifyTotp.isPending || isSuccess}\n >\n <Otp.Input required autoFocus autoComplete=\"off\" />\n <Otp.Input required />\n <Otp.Input required />\n <Otp.Input required />\n <Otp.Input required />\n <Otp.Input required />\n </Otp.Root>\n\n {serverError && (\n <Text size=\"2\" color=\"red\">\n {getMutationErrorMessage(serverError)}\n </Text>\n )}\n </Flex>\n </Flex>\n </Grid>\n </Grid>\n\n <Flex mt=\"5\" gap=\"3\" justify=\"end\">\n <Dialog.Close>\n <SecondaryButton disabled={verifyTotp.isPending || isSuccess}>\n Cancel\n </SecondaryButton>\n </Dialog.Close>\n\n <SaveButton\n asChild\n loading={verifyTotp.isPending}\n done={isSuccess}\n onDone={onClose}\n >\n <PrimaryButton type=\"submit\">Confirm</PrimaryButton>\n </SaveButton>\n </Flex>\n </Form.Root>\n\n {/* mirror errors in a live region */}\n <VisuallyHidden asChild>\n <section aria-live=\"polite\">\n {getMutationErrorMessage(serverError)}\n </section>\n </VisuallyHidden>\n </>\n );\n}\n\ninterface SecretDialogProps extends React.PropsWithChildren {\n setupKey: string;\n}\n\nfunction SecretDialog({ children, setupKey }: SecretDialogProps) {\n return (\n <Dialog.Root>\n <Dialog.Trigger>{children}</Dialog.Trigger>\n <Dialog.Content\n maxWidth=\"90vw\"\n size={{ initial: \"3\", sm: \"4\" }}\n minWidth=\"300px\"\n width=\"fit-content\"\n >\n <Dialog.Title size=\"2\" weight=\"regular\">\n Your setup key\n </Dialog.Title>\n <Dialog.Description>\n <Text size=\"6\">\n <Code variant=\"ghost\" style={{ letterSpacing: \"0.15rem\" }}>\n {setupKey}\n </Code>\n </Text>\n </Dialog.Description>\n\n <Flex align=\"center\" gap=\"3\" justify=\"end\" mt=\"5\">\n <Dialog.Close>\n <CopyButton asChild value={setupKey}>\n <PrimaryButton>Copy and close</PrimaryButton>\n </CopyButton>\n </Dialog.Close>\n </Flex>\n </Dialog.Content>\n </Dialog.Root>\n );\n}\n\nfunction getMutationErrorMessage(error: unknown) {\n let message = \"Something went wrong, please try again\";\n\n if (typeof error === \"string\") {\n message = error;\n }\n\n if (error instanceof Error) {\n message = error.message;\n }\n\n if (\n typeof error === \"object\" &&\n error !== null &&\n \"message\" in error &&\n typeof error.message === \"string\"\n ) {\n message = error.message;\n }\n\n if (message === \"Invalid passcode\") {\n message = \"Invalid passcode, please try again\";\n }\n\n return message;\n}\n\nfunction hasQrCode(\n response?: CreateTotpFactorResponse,\n): response is CreateTotpFactorResponse & {\n authenticationFactor: {\n totp: NonNullable<CreateTotpFactorResponseAuthenticationFactorAllOfTotpAnyOf>;\n };\n} {\n const totp = response?.authenticationFactor.totp;\n return totp != null && \"qr_code\" in totp;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { OrganizationDomain } from '../api/endpoint.js';
|
|
4
|
+
import '@tanstack/react-query';
|
|
5
|
+
import '../api/widgets-api-client.js';
|
|
6
|
+
|
|
2
7
|
interface AdminPortalDomainVerificationProps {
|
|
3
8
|
organizationDomains: OrganizationDomain[];
|
|
4
9
|
onAddDomain: () => void;
|
|
@@ -6,10 +11,10 @@ interface AdminPortalDomainVerificationProps {
|
|
|
6
11
|
onReverifyDomain: (domainId: string) => void;
|
|
7
12
|
isPending?: boolean;
|
|
8
13
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
14
|
+
declare const AdminPortalDomainVerification: ({ organizationDomains, onAddDomain, onDeleteDomain, onReverifyDomain, isPending, }: AdminPortalDomainVerificationProps) => react_jsx_runtime.JSX.Element;
|
|
15
|
+
declare const AdminPortalDomainVerificationLoading: React.FC;
|
|
16
|
+
declare function AdminPortalDomainVerificationError({ error, }: {
|
|
12
17
|
error: unknown;
|
|
13
|
-
}):
|
|
14
|
-
|
|
15
|
-
|
|
18
|
+
}): react_jsx_runtime.JSX.Element;
|
|
19
|
+
|
|
20
|
+
export { AdminPortalDomainVerification, AdminPortalDomainVerificationError, AdminPortalDomainVerificationLoading };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Box, Button, Card, Flex, Text } from "@radix-ui/themes";
|
|
4
4
|
import { Skeleton } from "./elements.js";
|
|
5
5
|
import { IconPanel } from "./icon-panel.js";
|
|
@@ -8,16 +8,83 @@ import { ExternalLinkIcon } from "@radix-ui/react-icons";
|
|
|
8
8
|
import * as CardList from "../card-list.js";
|
|
9
9
|
import { DomainItem } from "./domain-item.js";
|
|
10
10
|
import clsx from "clsx";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
const AdminPortalDomainVerification = ({
|
|
12
|
+
organizationDomains,
|
|
13
|
+
onAddDomain,
|
|
14
|
+
onDeleteDomain,
|
|
15
|
+
onReverifyDomain,
|
|
16
|
+
isPending = false
|
|
17
|
+
}) => {
|
|
18
|
+
if (organizationDomains.length === 0) {
|
|
19
|
+
return /* @__PURE__ */ jsx(Card, { size: "2", children: /* @__PURE__ */ jsxs(Flex, { direction: "row", justify: "between", align: "center", children: [
|
|
20
|
+
/* @__PURE__ */ jsx(Text, { size: "2", color: "gray", children: "You haven't added any verified domains yet." }),
|
|
21
|
+
/* @__PURE__ */ jsxs(
|
|
22
|
+
Button,
|
|
23
|
+
{
|
|
24
|
+
variant: "outline",
|
|
25
|
+
color: "gray",
|
|
26
|
+
loading: isPending,
|
|
27
|
+
disabled: isPending,
|
|
28
|
+
onClick: onAddDomain,
|
|
29
|
+
children: [
|
|
30
|
+
"Add domain ",
|
|
31
|
+
/* @__PURE__ */ jsx(ExternalLinkIcon, {})
|
|
32
|
+
]
|
|
33
|
+
}
|
|
34
|
+
)
|
|
35
|
+
] }) });
|
|
36
|
+
}
|
|
37
|
+
return /* @__PURE__ */ jsxs(
|
|
38
|
+
Flex,
|
|
39
|
+
{
|
|
40
|
+
direction: "column",
|
|
41
|
+
gap: "4",
|
|
42
|
+
className: clsx("woswidgets-widget"),
|
|
43
|
+
"data-woswidgets-widget-id": "admin-portal-domain-verification",
|
|
44
|
+
children: [
|
|
45
|
+
/* @__PURE__ */ jsx(CardList.Root, { children: organizationDomains.map((domain) => /* @__PURE__ */ jsx(CardList.Item, { children: /* @__PURE__ */ jsx(
|
|
46
|
+
DomainItem,
|
|
47
|
+
{
|
|
48
|
+
domain,
|
|
49
|
+
onDeleteDomain,
|
|
50
|
+
onReverifyDomain
|
|
51
|
+
}
|
|
52
|
+
) }, domain.id)) }),
|
|
53
|
+
/* @__PURE__ */ jsx(Box, { children: /* @__PURE__ */ jsxs(
|
|
54
|
+
Button,
|
|
55
|
+
{
|
|
56
|
+
loading: isPending,
|
|
57
|
+
disabled: isPending,
|
|
58
|
+
color: "gray",
|
|
59
|
+
variant: "outline",
|
|
60
|
+
onClick: onAddDomain,
|
|
61
|
+
children: [
|
|
62
|
+
"Add domain ",
|
|
63
|
+
/* @__PURE__ */ jsx(ExternalLinkIcon, {})
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
) })
|
|
67
|
+
]
|
|
14
68
|
}
|
|
15
|
-
|
|
69
|
+
);
|
|
16
70
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
71
|
+
const AdminPortalDomainVerificationLoading = () => {
|
|
72
|
+
return /* @__PURE__ */ jsx(Card, { size: "2", children: /* @__PURE__ */ jsxs(Flex, { gap: "4", align: "center", children: [
|
|
73
|
+
/* @__PURE__ */ jsx(Skeleton, { children: /* @__PURE__ */ jsx(IconPanel, {}) }),
|
|
74
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", children: [
|
|
75
|
+
/* @__PURE__ */ jsx(Text, { size: "2", highContrast: true, weight: "bold", as: "p", mb: "-2px", children: /* @__PURE__ */ jsx(Skeleton, { children: "Domain name" }) }),
|
|
76
|
+
/* @__PURE__ */ jsx(Text, { size: "2", color: "gray", as: "p", children: /* @__PURE__ */ jsx(Skeleton, { children: "Added recently" }) })
|
|
77
|
+
] })
|
|
78
|
+
] }) });
|
|
79
|
+
};
|
|
80
|
+
function AdminPortalDomainVerificationError({
|
|
81
|
+
error
|
|
82
|
+
}) {
|
|
83
|
+
return /* @__PURE__ */ jsx(Card, { size: "2", children: /* @__PURE__ */ jsx(GenericError, { error }) });
|
|
22
84
|
}
|
|
85
|
+
export {
|
|
86
|
+
AdminPortalDomainVerification,
|
|
87
|
+
AdminPortalDomainVerificationError,
|
|
88
|
+
AdminPortalDomainVerificationLoading
|
|
89
|
+
};
|
|
23
90
|
//# sourceMappingURL=admin-portal-domain-verification.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/admin-portal-domain-verification.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Box, Button, Card, Flex, Text } from \"@radix-ui/themes\";\nimport { Skeleton } from \"./elements.js\";\nimport { IconPanel } from \"./icon-panel.js\";\nimport { GenericError } from \"./generic-error.js\";\nimport { ExternalLinkIcon } from \"@radix-ui/react-icons\";\nimport * as CardList from \"../card-list.js\";\nimport { OrganizationDomain } from \"../api/endpoint.js\";\nimport { DomainItem } from \"./domain-item.js\";\n\nimport clsx from \"clsx\";\n\ninterface AdminPortalDomainVerificationProps {\n organizationDomains: OrganizationDomain[];\n onAddDomain: () => void;\n onDeleteDomain: (domainId: string) => void;\n onReverifyDomain: (domainId: string) => void;\n isPending?: boolean;\n}\n\nexport const AdminPortalDomainVerification = ({\n organizationDomains,\n onAddDomain,\n onDeleteDomain,\n onReverifyDomain,\n isPending = false,\n}: AdminPortalDomainVerificationProps) => {\n if (organizationDomains.length === 0) {\n return (\n <Card size=\"2\">\n <Flex direction=\"row\" justify=\"between\" align=\"center\">\n <Text size=\"2\" color=\"gray\">\n You haven't added any verified domains yet.\n </Text>\n <Button\n variant=\"outline\"\n color=\"gray\"\n loading={isPending}\n disabled={isPending}\n onClick={onAddDomain}\n >\n Add domain <ExternalLinkIcon />\n </Button>\n </Flex>\n </Card>\n );\n }\n\n return (\n <Flex\n direction=\"column\"\n gap=\"4\"\n className={clsx(\"woswidgets-widget\")}\n data-woswidgets-widget-id=\"admin-portal-domain-verification\"\n >\n <CardList.Root>\n {organizationDomains.map((domain) => (\n <CardList.Item key={domain.id}>\n <DomainItem\n domain={domain}\n onDeleteDomain={onDeleteDomain}\n onReverifyDomain={onReverifyDomain}\n />\n </CardList.Item>\n ))}\n </CardList.Root>\n\n <Box>\n <Button\n loading={isPending}\n disabled={isPending}\n color=\"gray\"\n variant=\"outline\"\n onClick={onAddDomain}\n >\n Add domain <ExternalLinkIcon />\n </Button>\n </Box>\n </Flex>\n );\n};\n\nexport const AdminPortalDomainVerificationLoading: React.FC = () => {\n return (\n <Card size=\"2\">\n <Flex gap=\"4\" align=\"center\">\n <Skeleton>\n <IconPanel />\n </Skeleton>\n\n <Flex direction=\"column\">\n <Text size=\"2\" highContrast weight=\"bold\" as=\"p\" mb=\"-2px\">\n <Skeleton>Domain name</Skeleton>\n </Text>\n\n <Text size=\"2\" color=\"gray\" as=\"p\">\n <Skeleton>Added recently</Skeleton>\n </Text>\n </Flex>\n </Flex>\n </Card>\n );\n};\n\nexport function AdminPortalDomainVerificationError({\n error,\n}: {\n error: unknown;\n}) {\n return (\n <Card size=\"2\">\n <GenericError error={error} />\n </Card>\n );\n}\n"],"mappings":";AAiCU,cAGA,YAHA;AA9BV,SAAS,KAAK,QAAQ,MAAM,MAAM,YAAY;AAC9C,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AACjC,YAAY,cAAc;AAE1B,SAAS,kBAAkB;AAE3B,OAAO,UAAU;AAUV,MAAM,gCAAgC,CAAC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,MAA0C;AACxC,MAAI,oBAAoB,WAAW,GAAG;AACpC,WACE,oBAAC,QAAK,MAAK,KACT,+BAAC,QAAK,WAAU,OAAM,SAAQ,WAAU,OAAM,UAC5C;AAAA,0BAAC,QAAK,MAAK,KAAI,OAAM,QAAO,yDAE5B;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,SAAQ;AAAA,UACR,OAAM;AAAA,UACN,SAAS;AAAA,UACT,UAAU;AAAA,UACV,SAAS;AAAA,UACV;AAAA;AAAA,YACY,oBAAC,oBAAiB;AAAA;AAAA;AAAA,MAC/B;AAAA,OACF,GACF;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,KAAI;AAAA,MACJ,WAAW,KAAK,mBAAmB;AAAA,MACnC,6BAA0B;AAAA,MAE1B;AAAA,4BAAC,SAAS,MAAT,EACE,8BAAoB,IAAI,CAAC,WACxB,oBAAC,SAAS,MAAT,EACC;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACF,KALkB,OAAO,EAM3B,CACD,GACH;AAAA,QAEA,oBAAC,OACC;AAAA,UAAC;AAAA;AAAA,YACC,SAAS;AAAA,YACT,UAAU;AAAA,YACV,OAAM;AAAA,YACN,SAAQ;AAAA,YACR,SAAS;AAAA,YACV;AAAA;AAAA,cACY,oBAAC,oBAAiB;AAAA;AAAA;AAAA,QAC/B,GACF;AAAA;AAAA;AAAA,EACF;AAEJ;AAEO,MAAM,uCAAiD,MAAM;AAClE,SACE,oBAAC,QAAK,MAAK,KACT,+BAAC,QAAK,KAAI,KAAI,OAAM,UAClB;AAAA,wBAAC,YACC,8BAAC,aAAU,GACb;AAAA,IAEA,qBAAC,QAAK,WAAU,UACd;AAAA,0BAAC,QAAK,MAAK,KAAI,cAAY,MAAC,QAAO,QAAO,IAAG,KAAI,IAAG,QAClD,8BAAC,YAAS,yBAAW,GACvB;AAAA,MAEA,oBAAC,QAAK,MAAK,KAAI,OAAM,QAAO,IAAG,KAC7B,8BAAC,YAAS,4BAAc,GAC1B;AAAA,OACF;AAAA,KACF,GACF;AAEJ;AAEO,SAAS,mCAAmC;AAAA,EACjD;AACF,GAEG;AACD,SACE,oBAAC,QAAK,MAAK,KACT,8BAAC,gBAAa,OAAc,GAC9B;AAEJ;","names":[]}
|