@workos-inc/widgets 1.18.0 → 1.19.0-next.1790102694835
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 +12 -0
- package/dist/cjs/admin-portal-audit-log-streaming.client.cjs +16 -20
- package/dist/cjs/admin-portal-audit-log-streaming.client.cjs.map +1 -1
- package/dist/cjs/admin-portal-audit-log-streaming.client.d.cts +2 -0
- package/dist/cjs/admin-portal-domain-verification.client.cjs +42 -34
- package/dist/cjs/admin-portal-domain-verification.client.cjs.map +1 -1
- package/dist/cjs/admin-portal-domain-verification.client.d.cts +2 -0
- package/dist/cjs/admin-portal-sso-connection.client.cjs +77 -50
- package/dist/cjs/admin-portal-sso-connection.client.cjs.map +1 -1
- package/dist/cjs/api/client-graphql/client.cjs +2 -1
- package/dist/cjs/api/client-graphql/client.cjs.map +1 -1
- package/dist/cjs/api/client-graphql/generated.cjs +2295 -6
- package/dist/cjs/api/client-graphql/generated.cjs.map +1 -1
- package/dist/cjs/api/client-graphql/generated.d.cts +2989 -7
- package/dist/cjs/api/client-graphql/hooks.cjs +67 -0
- package/dist/cjs/api/client-graphql/hooks.cjs.map +1 -0
- package/dist/cjs/api/client-graphql/hooks.d.cts +44 -0
- package/dist/cjs/api/endpoint.cjs +43 -27
- package/dist/cjs/api/endpoint.cjs.map +1 -1
- package/dist/cjs/api/endpoint.d.cts +53 -20
- package/dist/cjs/api-keys.client.cjs +1 -2
- package/dist/cjs/api-keys.client.cjs.map +1 -1
- package/dist/cjs/directory-sync.client.cjs +54 -13
- package/dist/cjs/directory-sync.client.cjs.map +1 -1
- package/dist/cjs/experimental/api/fetch.cjs +44 -16
- package/dist/cjs/experimental/api/fetch.cjs.map +1 -1
- package/dist/cjs/experimental/api/fetch.d.cts +38 -9
- package/dist/cjs/experimental/api/react-query.cjs +75 -38
- package/dist/cjs/experimental/api/react-query.cjs.map +1 -1
- package/dist/cjs/experimental/api/react-query.d.cts +57 -24
- package/dist/cjs/experimental/api/swr.cjs +77 -35
- package/dist/cjs/experimental/api/swr.cjs.map +1 -1
- package/dist/cjs/experimental/api/swr.d.cts +49 -20
- package/dist/cjs/index.d.cts +4 -0
- package/dist/cjs/lib/add-mfa-dialog.cjs +39 -33
- package/dist/cjs/lib/add-mfa-dialog.cjs.map +1 -1
- package/dist/cjs/lib/admin-portal-audit-log-streaming.cjs.map +1 -1
- package/dist/cjs/lib/admin-portal-audit-log-streaming.d.cts +5 -3
- package/dist/cjs/lib/admin-portal-domain-verification.cjs.map +1 -1
- package/dist/cjs/lib/admin-portal-domain-verification.d.cts +4 -2
- package/dist/cjs/lib/api/api-key.cjs +128 -40
- package/dist/cjs/lib/api/api-key.cjs.map +1 -1
- package/dist/cjs/lib/api/api-key.d.cts +20 -9
- package/dist/cjs/lib/api/me.cjs +70 -0
- package/dist/cjs/lib/api/me.cjs.map +1 -0
- package/dist/cjs/lib/api/me.d.cts +37 -0
- package/dist/cjs/lib/api/pipes.cjs +419 -0
- package/dist/cjs/lib/api/pipes.cjs.map +1 -0
- package/dist/cjs/lib/api/pipes.d.cts +69 -0
- package/dist/cjs/lib/api/user-api-key.cjs +116 -45
- package/dist/cjs/lib/api/user-api-key.cjs.map +1 -1
- package/dist/cjs/lib/api/user-api-key.d.cts +17 -12
- package/dist/cjs/lib/api/user.cjs +170 -51
- package/dist/cjs/lib/api/user.cjs.map +1 -1
- package/dist/cjs/lib/api/user.d.cts +4 -25
- package/dist/cjs/lib/api-keys/api-key-details-dialog.cjs +2 -2
- package/dist/cjs/lib/api-keys/api-key-details-dialog.cjs.map +1 -1
- package/dist/cjs/lib/api-keys/create-api-key.cjs +1 -2
- package/dist/cjs/lib/api-keys/create-api-key.cjs.map +1 -1
- package/dist/cjs/lib/api-keys/revoke-api-key-dialog.cjs +5 -13
- package/dist/cjs/lib/api-keys/revoke-api-key-dialog.cjs.map +1 -1
- package/dist/cjs/lib/change-email-dialog.cjs +39 -26
- package/dist/cjs/lib/change-email-dialog.cjs.map +1 -1
- package/dist/cjs/lib/change-email-dialog.d.cts +4 -3
- package/dist/cjs/lib/change-password-dialog.cjs +14 -13
- package/dist/cjs/lib/change-password-dialog.cjs.map +1 -1
- package/dist/cjs/lib/client-graphql-result.cjs +116 -0
- package/dist/cjs/lib/client-graphql-result.cjs.map +1 -0
- package/dist/cjs/lib/client-graphql-result.d.cts +32 -0
- package/dist/cjs/lib/delete-domain-dialog.cjs.map +1 -1
- package/dist/cjs/lib/delete-domain-dialog.d.cts +3 -4
- package/dist/cjs/lib/delete-user-dialog.cjs.map +1 -1
- package/dist/cjs/lib/delete-user-dialog.d.cts +3 -2
- package/dist/cjs/lib/directory-sync.cjs +59 -23
- package/dist/cjs/lib/directory-sync.cjs.map +1 -1
- package/dist/cjs/lib/directory-sync.d.cts +23 -5
- package/dist/cjs/lib/domain-actions.cjs.map +1 -1
- package/dist/cjs/lib/domain-actions.d.cts +3 -4
- package/dist/cjs/lib/domain-item.cjs.map +1 -1
- package/dist/cjs/lib/domain-item.d.cts +3 -4
- package/dist/cjs/lib/edit-user-profile-dialog.cjs +19 -19
- package/dist/cjs/lib/edit-user-profile-dialog.cjs.map +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.d.cts +4 -3
- package/dist/cjs/lib/edit-user-role-dialog.cjs +3 -8
- package/dist/cjs/lib/edit-user-role-dialog.cjs.map +1 -1
- package/dist/cjs/lib/edit-user-role-dialog.d.cts +5 -4
- package/dist/cjs/lib/elevated-access.cjs +22 -13
- package/dist/cjs/lib/elevated-access.cjs.map +1 -1
- package/dist/cjs/lib/elevated-access.d.cts +1 -1
- package/dist/cjs/lib/invite-user-dialog.cjs +9 -15
- package/dist/cjs/lib/invite-user-dialog.cjs.map +1 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.cjs +13 -5
- package/dist/cjs/lib/logout-all-sessions-dialog.cjs.map +1 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.d.cts +2 -2
- package/dist/cjs/lib/logout-dialog.cjs +10 -6
- package/dist/cjs/lib/logout-dialog.cjs.map +1 -1
- package/dist/cjs/lib/logout-dialog.d.cts +3 -4
- package/dist/cjs/lib/name-server-icon.cjs.map +1 -1
- package/dist/cjs/lib/name-server-icon.d.cts +3 -4
- package/dist/cjs/lib/oauth-icons.cjs +13 -2
- package/dist/cjs/lib/oauth-icons.cjs.map +1 -1
- package/dist/cjs/lib/oauth-icons.d.cts +2 -1
- package/dist/cjs/lib/organization-switcher.cjs +3 -3
- package/dist/cjs/lib/organization-switcher.cjs.map +1 -1
- package/dist/cjs/lib/organization-switcher.d.cts +6 -3
- package/dist/cjs/lib/password-error-utils.cjs +28 -43
- package/dist/cjs/lib/password-error-utils.cjs.map +1 -1
- package/dist/cjs/lib/password-error-utils.d.cts +3 -13
- package/dist/cjs/lib/pipes-admin.cjs +109 -79
- package/dist/cjs/lib/pipes-admin.cjs.map +1 -1
- package/dist/cjs/lib/pipes-admin.d.cts +1 -1
- package/dist/cjs/lib/pipes.cjs +133 -60
- package/dist/cjs/lib/pipes.cjs.map +1 -1
- package/dist/cjs/lib/resend-invite-dialog.cjs.map +1 -1
- package/dist/cjs/lib/resend-invite-dialog.d.cts +3 -2
- package/dist/cjs/lib/reset-mfa-dialog.cjs +11 -3
- package/dist/cjs/lib/reset-mfa-dialog.cjs.map +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.cjs.map +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.d.cts +3 -2
- package/dist/cjs/lib/set-password-dialog.cjs +16 -3
- package/dist/cjs/lib/set-password-dialog.cjs.map +1 -1
- package/dist/cjs/lib/use-security-settings.cjs +5 -25
- package/dist/cjs/lib/use-security-settings.cjs.map +1 -1
- package/dist/cjs/lib/use-security-settings.d.cts +2 -2
- package/dist/cjs/lib/user-actions-dropdown.cjs +2 -6
- package/dist/cjs/lib/user-actions-dropdown.cjs.map +1 -1
- package/dist/cjs/lib/user-actions-dropdown.d.cts +3 -2
- package/dist/cjs/lib/user-api-keys/revoke-user-api-key-dialog.cjs +3 -10
- package/dist/cjs/lib/user-api-keys/revoke-user-api-key-dialog.cjs.map +1 -1
- package/dist/cjs/lib/user-profile.cjs +10 -5
- package/dist/cjs/lib/user-profile.cjs.map +1 -1
- package/dist/cjs/lib/user-profile.d.cts +5 -2
- package/dist/cjs/lib/user-security.cjs +4 -5
- package/dist/cjs/lib/user-security.cjs.map +1 -1
- package/dist/cjs/lib/user-security.d.cts +6 -2
- package/dist/cjs/lib/user-sessions.cjs +2 -2
- package/dist/cjs/lib/user-sessions.cjs.map +1 -1
- package/dist/cjs/lib/user-sessions.d.cts +6 -4
- package/dist/cjs/lib/users-filter.cjs.map +1 -1
- package/dist/cjs/lib/users-filter.d.cts +4 -3
- package/dist/cjs/lib/users-management-context.cjs.map +1 -1
- package/dist/cjs/lib/users-management-context.d.cts +4 -18
- package/dist/cjs/lib/users-management-state.cjs.map +1 -1
- package/dist/cjs/lib/users-management-state.d.cts +4 -25
- package/dist/cjs/lib/users-management.cjs.map +1 -1
- package/dist/cjs/lib/users-management.d.cts +7 -7
- package/dist/cjs/lib/view-dns-record-dialog.cjs.map +1 -1
- package/dist/cjs/lib/view-dns-record-dialog.d.cts +3 -4
- package/dist/cjs/organization-switcher.client.cjs +7 -6
- package/dist/cjs/organization-switcher.client.cjs.map +1 -1
- package/dist/cjs/organization-switcher.client.d.cts +3 -1
- package/dist/cjs/pipes-admin.client.cjs +7 -4
- package/dist/cjs/pipes-admin.client.cjs.map +1 -1
- package/dist/cjs/pipes.client.cjs +17 -16
- package/dist/cjs/pipes.client.cjs.map +1 -1
- package/dist/cjs/user-CgBDfSHl.d.cts +502 -0
- package/dist/cjs/user-profile.client.cjs +3 -3
- package/dist/cjs/user-profile.client.cjs.map +1 -1
- package/dist/cjs/user-profile.client.d.cts +4 -1
- package/dist/cjs/user-security.client.cjs +25 -14
- package/dist/cjs/user-security.client.cjs.map +1 -1
- package/dist/cjs/user-security.client.d.cts +2 -0
- package/dist/cjs/user-sessions.client.cjs +12 -29
- package/dist/cjs/user-sessions.client.cjs.map +1 -1
- package/dist/cjs/user-sessions.client.d.cts +2 -0
- package/dist/cjs/users-management.client.cjs +1 -4
- package/dist/cjs/users-management.client.cjs.map +1 -1
- package/dist/cjs/users-management.client.d.cts +4 -1
- package/dist/cjs/utils.cjs +2 -1
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/esm/admin-portal-audit-log-streaming.client.d.ts +2 -0
- package/dist/esm/admin-portal-audit-log-streaming.client.js +20 -23
- package/dist/esm/admin-portal-audit-log-streaming.client.js.map +1 -1
- package/dist/esm/admin-portal-domain-verification.client.d.ts +2 -0
- package/dist/esm/admin-portal-domain-verification.client.js +45 -39
- package/dist/esm/admin-portal-domain-verification.client.js.map +1 -1
- package/dist/esm/admin-portal-sso-connection.client.js +80 -52
- package/dist/esm/admin-portal-sso-connection.client.js.map +1 -1
- package/dist/esm/api/client-graphql/client.js +2 -1
- package/dist/esm/api/client-graphql/client.js.map +1 -1
- package/dist/esm/api/client-graphql/generated.d.ts +2989 -7
- package/dist/esm/api/client-graphql/generated.js +2203 -0
- package/dist/esm/api/client-graphql/generated.js.map +1 -1
- package/dist/esm/api/client-graphql/hooks.d.ts +44 -0
- package/dist/esm/api/client-graphql/hooks.js +43 -0
- package/dist/esm/api/client-graphql/hooks.js.map +1 -0
- package/dist/esm/api/endpoint.d.ts +53 -20
- package/dist/esm/api/endpoint.js +43 -27
- package/dist/esm/api/endpoint.js.map +1 -1
- package/dist/esm/api-keys.client.js +4 -2
- package/dist/esm/api-keys.client.js.map +1 -1
- package/dist/esm/directory-sync.client.js +56 -7
- package/dist/esm/directory-sync.client.js.map +1 -1
- package/dist/esm/experimental/api/fetch.d.ts +38 -9
- package/dist/esm/experimental/api/fetch.js +44 -16
- package/dist/esm/experimental/api/fetch.js.map +1 -1
- package/dist/esm/experimental/api/react-query.d.ts +57 -24
- package/dist/esm/experimental/api/react-query.js +75 -38
- package/dist/esm/experimental/api/react-query.js.map +1 -1
- package/dist/esm/experimental/api/swr.d.ts +49 -20
- package/dist/esm/experimental/api/swr.js +77 -35
- package/dist/esm/experimental/api/swr.js.map +1 -1
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/lib/add-mfa-dialog.js +39 -36
- package/dist/esm/lib/add-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/admin-portal-audit-log-streaming.d.ts +5 -3
- package/dist/esm/lib/admin-portal-audit-log-streaming.js.map +1 -1
- package/dist/esm/lib/admin-portal-domain-verification.d.ts +4 -2
- package/dist/esm/lib/admin-portal-domain-verification.js.map +1 -1
- package/dist/esm/lib/api/api-key.d.ts +20 -9
- package/dist/esm/lib/api/api-key.js +124 -49
- package/dist/esm/lib/api/api-key.js.map +1 -1
- package/dist/esm/lib/api/me.d.ts +37 -0
- package/dist/esm/lib/api/me.js +37 -0
- package/dist/esm/lib/api/me.js.map +1 -0
- package/dist/esm/lib/api/pipes.d.ts +69 -0
- package/dist/esm/lib/api/pipes.js +380 -0
- package/dist/esm/lib/api/pipes.js.map +1 -0
- package/dist/esm/lib/api/user-api-key.d.ts +17 -12
- package/dist/esm/lib/api/user-api-key.js +113 -52
- package/dist/esm/lib/api/user-api-key.js.map +1 -1
- package/dist/esm/lib/api/user.d.ts +4 -25
- package/dist/esm/lib/api/user.js +173 -59
- package/dist/esm/lib/api/user.js.map +1 -1
- package/dist/esm/lib/api-keys/api-key-details-dialog.js +1 -3
- package/dist/esm/lib/api-keys/api-key-details-dialog.js.map +1 -1
- package/dist/esm/lib/api-keys/create-api-key.js +2 -2
- package/dist/esm/lib/api-keys/create-api-key.js.map +1 -1
- package/dist/esm/lib/api-keys/revoke-api-key-dialog.js +5 -15
- package/dist/esm/lib/api-keys/revoke-api-key-dialog.js.map +1 -1
- package/dist/esm/lib/change-email-dialog.d.ts +4 -3
- package/dist/esm/lib/change-email-dialog.js +39 -31
- package/dist/esm/lib/change-email-dialog.js.map +1 -1
- package/dist/esm/lib/change-password-dialog.js +14 -13
- package/dist/esm/lib/change-password-dialog.js.map +1 -1
- package/dist/esm/lib/client-graphql-result.d.ts +32 -0
- package/dist/esm/lib/client-graphql-result.js +89 -0
- package/dist/esm/lib/client-graphql-result.js.map +1 -0
- package/dist/esm/lib/delete-domain-dialog.d.ts +3 -4
- package/dist/esm/lib/delete-domain-dialog.js.map +1 -1
- package/dist/esm/lib/delete-user-dialog.d.ts +3 -2
- package/dist/esm/lib/delete-user-dialog.js.map +1 -1
- package/dist/esm/lib/directory-sync.d.ts +23 -5
- package/dist/esm/lib/directory-sync.js +46 -14
- package/dist/esm/lib/directory-sync.js.map +1 -1
- package/dist/esm/lib/domain-actions.d.ts +3 -4
- package/dist/esm/lib/domain-actions.js.map +1 -1
- package/dist/esm/lib/domain-item.d.ts +3 -4
- package/dist/esm/lib/domain-item.js.map +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts +4 -3
- package/dist/esm/lib/edit-user-profile-dialog.js +19 -19
- package/dist/esm/lib/edit-user-profile-dialog.js.map +1 -1
- package/dist/esm/lib/edit-user-role-dialog.d.ts +5 -4
- package/dist/esm/lib/edit-user-role-dialog.js +7 -11
- package/dist/esm/lib/edit-user-role-dialog.js.map +1 -1
- package/dist/esm/lib/elevated-access.d.ts +1 -1
- package/dist/esm/lib/elevated-access.js +20 -11
- package/dist/esm/lib/elevated-access.js.map +1 -1
- package/dist/esm/lib/invite-user-dialog.js +10 -16
- package/dist/esm/lib/invite-user-dialog.js.map +1 -1
- package/dist/esm/lib/logout-all-sessions-dialog.d.ts +2 -2
- package/dist/esm/lib/logout-all-sessions-dialog.js +16 -5
- package/dist/esm/lib/logout-all-sessions-dialog.js.map +1 -1
- package/dist/esm/lib/logout-dialog.d.ts +3 -4
- package/dist/esm/lib/logout-dialog.js +12 -8
- package/dist/esm/lib/logout-dialog.js.map +1 -1
- package/dist/esm/lib/name-server-icon.d.ts +3 -4
- package/dist/esm/lib/name-server-icon.js.map +1 -1
- package/dist/esm/lib/oauth-icons.d.ts +2 -1
- package/dist/esm/lib/oauth-icons.js +11 -1
- package/dist/esm/lib/oauth-icons.js.map +1 -1
- package/dist/esm/lib/organization-switcher.d.ts +6 -3
- package/dist/esm/lib/organization-switcher.js +3 -3
- package/dist/esm/lib/organization-switcher.js.map +1 -1
- package/dist/esm/lib/password-error-utils.d.ts +3 -13
- package/dist/esm/lib/password-error-utils.js +28 -43
- package/dist/esm/lib/password-error-utils.js.map +1 -1
- package/dist/esm/lib/pipes-admin.d.ts +1 -1
- package/dist/esm/lib/pipes-admin.js +105 -78
- package/dist/esm/lib/pipes-admin.js.map +1 -1
- package/dist/esm/lib/pipes.js +140 -71
- package/dist/esm/lib/pipes.js.map +1 -1
- package/dist/esm/lib/resend-invite-dialog.d.ts +3 -2
- package/dist/esm/lib/resend-invite-dialog.js.map +1 -1
- package/dist/esm/lib/reset-mfa-dialog.js +11 -3
- package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/revoke-invite-dialog.d.ts +3 -2
- package/dist/esm/lib/revoke-invite-dialog.js.map +1 -1
- package/dist/esm/lib/set-password-dialog.js +16 -3
- package/dist/esm/lib/set-password-dialog.js.map +1 -1
- package/dist/esm/lib/use-security-settings.d.ts +2 -2
- package/dist/esm/lib/use-security-settings.js +5 -27
- package/dist/esm/lib/use-security-settings.js.map +1 -1
- package/dist/esm/lib/user-actions-dropdown.d.ts +3 -2
- package/dist/esm/lib/user-actions-dropdown.js +2 -6
- package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
- package/dist/esm/lib/user-api-keys/revoke-user-api-key-dialog.js +3 -11
- package/dist/esm/lib/user-api-keys/revoke-user-api-key-dialog.js.map +1 -1
- package/dist/esm/lib/user-profile.d.ts +5 -2
- package/dist/esm/lib/user-profile.js +15 -6
- package/dist/esm/lib/user-profile.js.map +1 -1
- package/dist/esm/lib/user-security.d.ts +6 -2
- package/dist/esm/lib/user-security.js +4 -5
- package/dist/esm/lib/user-security.js.map +1 -1
- package/dist/esm/lib/user-sessions.d.ts +6 -4
- package/dist/esm/lib/user-sessions.js +2 -2
- package/dist/esm/lib/user-sessions.js.map +1 -1
- package/dist/esm/lib/users-filter.d.ts +4 -3
- package/dist/esm/lib/users-filter.js.map +1 -1
- package/dist/esm/lib/users-management-context.d.ts +4 -18
- package/dist/esm/lib/users-management-context.js.map +1 -1
- package/dist/esm/lib/users-management-state.d.ts +4 -25
- package/dist/esm/lib/users-management-state.js.map +1 -1
- package/dist/esm/lib/users-management.d.ts +7 -7
- package/dist/esm/lib/users-management.js.map +1 -1
- package/dist/esm/lib/view-dns-record-dialog.d.ts +3 -4
- package/dist/esm/lib/view-dns-record-dialog.js.map +1 -1
- package/dist/esm/organization-switcher.client.d.ts +3 -1
- package/dist/esm/organization-switcher.client.js +10 -6
- package/dist/esm/organization-switcher.client.js.map +1 -1
- package/dist/esm/pipes-admin.client.js +10 -4
- package/dist/esm/pipes-admin.client.js.map +1 -1
- package/dist/esm/pipes.client.js +17 -14
- package/dist/esm/pipes.client.js.map +1 -1
- package/dist/esm/user-BE5sIud6.d.ts +502 -0
- package/dist/esm/user-profile.client.d.ts +4 -1
- package/dist/esm/user-profile.client.js +2 -2
- package/dist/esm/user-profile.client.js.map +1 -1
- package/dist/esm/user-security.client.d.ts +2 -0
- package/dist/esm/user-security.client.js +28 -14
- package/dist/esm/user-security.client.js.map +1 -1
- package/dist/esm/user-sessions.client.d.ts +2 -0
- package/dist/esm/user-sessions.client.js +16 -30
- package/dist/esm/user-sessions.client.js.map +1 -1
- package/dist/esm/users-management.client.d.ts +4 -1
- package/dist/esm/users-management.client.js +2 -5
- package/dist/esm/users-management.client.js.map +1 -1
- package/dist/esm/utils.js +2 -1
- package/dist/esm/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,74 +1,149 @@
|
|
|
1
|
+
import { keepPreviousData, useQueryClient } from "@tanstack/react-query";
|
|
1
2
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} from "../../api/
|
|
6
|
-
import {
|
|
7
|
-
keepPreviousData,
|
|
8
|
-
useMutation,
|
|
9
|
-
useQueryClient
|
|
10
|
-
} from "@tanstack/react-query";
|
|
3
|
+
clientGraphqlQueryKey,
|
|
4
|
+
useClientGraphqlMutation,
|
|
5
|
+
useClientGraphqlQuery
|
|
6
|
+
} from "../../api/client-graphql/hooks.js";
|
|
7
|
+
import { ApiError } from "../../api/errors.js";
|
|
11
8
|
import {
|
|
12
9
|
useApiKeysContext
|
|
13
10
|
} from "../api-keys/api-keys-context.js";
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
import { useListOrganizationApiKeyPermissions } from "../../api/endpoint.js";
|
|
12
|
+
const API_KEYS_PAGE_SIZE = 10;
|
|
13
|
+
const organizationApiKeysQueryKey = clientGraphqlQueryKey(
|
|
14
|
+
"ListOrganizationApiKeys"
|
|
15
|
+
);
|
|
16
|
+
function toOrganizationApiKey(apiKey) {
|
|
17
|
+
return {
|
|
18
|
+
id: apiKey.id,
|
|
19
|
+
name: apiKey.name,
|
|
20
|
+
obfuscatedValue: apiKey.obfuscatedValue,
|
|
21
|
+
createdAt: apiKey.createdAt,
|
|
22
|
+
lastUsedAt: apiKey.lastUsedAt ?? null,
|
|
23
|
+
expiresAt: apiKey.expiresAt ?? null,
|
|
24
|
+
permissions: apiKey.permissions
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function apiKeyMutationFailure(typename, message) {
|
|
28
|
+
return new ApiError({
|
|
29
|
+
message,
|
|
30
|
+
status: 400,
|
|
31
|
+
queryType: "mutation",
|
|
32
|
+
context: { typename }
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function unwrapCreateOrganizationApiKey(result) {
|
|
36
|
+
switch (result.__typename) {
|
|
37
|
+
case "OrganizationApiKeyCreated":
|
|
38
|
+
return {
|
|
39
|
+
...toOrganizationApiKey(result.apiKey),
|
|
40
|
+
value: result.value
|
|
41
|
+
};
|
|
42
|
+
case "ApiKeyPermissionsNotHeld":
|
|
43
|
+
case "ApiKeyPermissionsUnsupportedForToken":
|
|
44
|
+
case "InvalidApiKeyExpiration":
|
|
45
|
+
case "InvalidApiKeyName":
|
|
46
|
+
case "InvalidApiKeyPermissions":
|
|
47
|
+
throw apiKeyMutationFailure(result.__typename, result.message);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function unwrapExpireOrganizationApiKey(result) {
|
|
51
|
+
switch (result.__typename) {
|
|
52
|
+
case "OrganizationApiKeyExpired":
|
|
53
|
+
return toOrganizationApiKey(result.apiKey);
|
|
54
|
+
case "ApiKeyAlreadyExpired":
|
|
55
|
+
throw apiKeyMutationFailure(
|
|
56
|
+
result.__typename,
|
|
57
|
+
"API key is already expired"
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
17
61
|
const useApiKeys = (context) => {
|
|
18
62
|
const {
|
|
19
63
|
state: { pagination, searchQuery }
|
|
20
64
|
} = useApiKeysContext(context);
|
|
21
|
-
const limit = 10;
|
|
22
65
|
const { before, after } = pagination || {};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
66
|
+
const variables = {
|
|
67
|
+
after: after ?? void 0,
|
|
68
|
+
before: before ?? void 0,
|
|
69
|
+
limit: API_KEYS_PAGE_SIZE,
|
|
70
|
+
search: searchQuery || void 0
|
|
71
|
+
};
|
|
72
|
+
return useClientGraphqlQuery({
|
|
73
|
+
queryKey: clientGraphqlQueryKey("ListOrganizationApiKeys", variables),
|
|
74
|
+
queryFn: async (sdk) => {
|
|
75
|
+
const { organizationApiKeys } = await sdk.ListOrganizationApiKeys(variables);
|
|
76
|
+
return organizationApiKeys;
|
|
29
77
|
},
|
|
30
|
-
{
|
|
31
|
-
|
|
32
|
-
|
|
78
|
+
select: (list) => ({
|
|
79
|
+
data: list.data.map(toOrganizationApiKey),
|
|
80
|
+
list_metadata: {
|
|
81
|
+
after: list.listMetadata.after ?? void 0,
|
|
82
|
+
before: list.listMetadata.before ?? void 0
|
|
33
83
|
}
|
|
34
|
-
}
|
|
35
|
-
|
|
84
|
+
}),
|
|
85
|
+
placeholderData: keepPreviousData
|
|
86
|
+
});
|
|
36
87
|
};
|
|
37
|
-
const
|
|
88
|
+
const useInvalidateApiKeys = () => {
|
|
38
89
|
const queryClient = useQueryClient();
|
|
39
|
-
return
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
90
|
+
return () => queryClient.invalidateQueries({ queryKey: organizationApiKeysQueryKey });
|
|
91
|
+
};
|
|
92
|
+
const useCreateApiKey = () => {
|
|
93
|
+
const invalidate = useInvalidateApiKeys();
|
|
94
|
+
return useClientGraphqlMutation({
|
|
95
|
+
mutationFn: async (sdk, { data }) => {
|
|
96
|
+
const { createOrganizationApiKey: result } = await sdk.CreateOrganizationApiKey({
|
|
97
|
+
input: {
|
|
98
|
+
name: data.name,
|
|
99
|
+
permissions: data.permissions,
|
|
100
|
+
expiresAt: data.expiresAt ?? null
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
return unwrapCreateOrganizationApiKey(result);
|
|
104
|
+
},
|
|
105
|
+
onSuccess: invalidate
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
const useDeleteApiKey = ({
|
|
109
|
+
onSuccess
|
|
110
|
+
} = {}) => {
|
|
111
|
+
const invalidate = useInvalidateApiKeys();
|
|
112
|
+
return useClientGraphqlMutation({
|
|
113
|
+
mutationFn: async (sdk, { apiKeyId }) => {
|
|
114
|
+
const { deleteOrganizationApiKey } = await sdk.DeleteOrganizationApiKey({
|
|
115
|
+
apiKeyId
|
|
116
|
+
});
|
|
117
|
+
return toOrganizationApiKey(deleteOrganizationApiKey);
|
|
118
|
+
},
|
|
119
|
+
onSuccess: () => {
|
|
120
|
+
void invalidate();
|
|
121
|
+
onSuccess?.();
|
|
46
122
|
}
|
|
47
123
|
});
|
|
48
124
|
};
|
|
49
125
|
const useExpireApiKey = () => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
expiresAt
|
|
56
|
-
}) => expireApiKey({
|
|
57
|
-
url: `/_widgets/ApiKeys/${apiKeyId}/expire`,
|
|
58
|
-
method: "POST",
|
|
59
|
-
headers: { "Content-Type": "application/json" },
|
|
60
|
-
data: { expiresAt }
|
|
61
|
-
}),
|
|
62
|
-
onSuccess: () => {
|
|
63
|
-
queryClient.invalidateQueries({
|
|
64
|
-
queryKey: getListOrganizationApiKeysQueryKey()
|
|
126
|
+
const invalidate = useInvalidateApiKeys();
|
|
127
|
+
return useClientGraphqlMutation({
|
|
128
|
+
mutationFn: async (sdk, { apiKeyId, expiresAt }) => {
|
|
129
|
+
const { expireOrganizationApiKey: result } = await sdk.ExpireOrganizationApiKey({
|
|
130
|
+
input: { apiKeyId, expiresAt }
|
|
65
131
|
});
|
|
66
|
-
|
|
132
|
+
return unwrapExpireOrganizationApiKey(result);
|
|
133
|
+
},
|
|
134
|
+
onSuccess: invalidate
|
|
67
135
|
});
|
|
68
136
|
};
|
|
69
137
|
export {
|
|
138
|
+
API_KEYS_PAGE_SIZE,
|
|
139
|
+
apiKeyMutationFailure,
|
|
140
|
+
organizationApiKeysQueryKey,
|
|
141
|
+
toOrganizationApiKey,
|
|
70
142
|
useApiKeys,
|
|
71
143
|
useCreateApiKey,
|
|
72
|
-
|
|
144
|
+
useDeleteApiKey,
|
|
145
|
+
useExpireApiKey,
|
|
146
|
+
useInvalidateApiKeys,
|
|
147
|
+
useListOrganizationApiKeyPermissions
|
|
73
148
|
};
|
|
74
149
|
//# sourceMappingURL=api-key.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/lib/api/api-key.ts"],"sourcesContent":["import {\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/api/api-key.ts"],"sourcesContent":["import { keepPreviousData, useQueryClient } from \"@tanstack/react-query\";\nimport type {\n CreateOrganizationApiKeyRequest,\n CreateOrganizationApiKeyResponse,\n ListOrganizationApiKeysResponse,\n ListOrganizationApiKeysResponseData,\n} from \"../../api/endpoint.js\";\nimport type {\n CreateOrganizationApiKeyMutation,\n ExpireOrganizationApiKeyMutation,\n OrganizationApiKeyFieldsFragment,\n} from \"../../api/client-graphql/generated.js\";\nimport {\n clientGraphqlQueryKey,\n useClientGraphqlMutation,\n useClientGraphqlQuery,\n} from \"../../api/client-graphql/hooks.js\";\nimport { ApiError } from \"../../api/errors.js\";\nimport {\n useApiKeysContext,\n type ApiKeysContextType,\n} from \"../api-keys/api-keys-context.js\";\n\n// TODO(client-graphql): the Client GraphQL `permissions` query lists every\n// permission in the environment; the REST endpoint only returns permissions\n// enabled for API keys. Until the schema exposes that filter (or an\n// `apiKeyEnabled` field), the permission picker stays on REST.\nexport { useListOrganizationApiKeyPermissions } from \"../../api/endpoint.js\";\n\nexport const API_KEYS_PAGE_SIZE = 10;\n\nexport const organizationApiKeysQueryKey = clientGraphqlQueryKey(\n \"ListOrganizationApiKeys\",\n);\n\nexport function toOrganizationApiKey(\n apiKey: OrganizationApiKeyFieldsFragment,\n): ListOrganizationApiKeysResponseData {\n return {\n id: apiKey.id,\n name: apiKey.name,\n obfuscatedValue: apiKey.obfuscatedValue,\n createdAt: apiKey.createdAt,\n lastUsedAt: apiKey.lastUsedAt ?? null,\n expiresAt: apiKey.expiresAt ?? null,\n permissions: apiKey.permissions,\n };\n}\n\nexport function apiKeyMutationFailure(\n typename: string,\n message: string,\n): ApiError {\n return new ApiError({\n message,\n status: 400,\n queryType: \"mutation\",\n context: { typename },\n });\n}\n\nfunction unwrapCreateOrganizationApiKey(\n result: CreateOrganizationApiKeyMutation[\"createOrganizationApiKey\"],\n): CreateOrganizationApiKeyResponse {\n switch (result.__typename) {\n case \"OrganizationApiKeyCreated\":\n return {\n ...toOrganizationApiKey(result.apiKey),\n value: result.value,\n };\n case \"ApiKeyPermissionsNotHeld\":\n case \"ApiKeyPermissionsUnsupportedForToken\":\n case \"InvalidApiKeyExpiration\":\n case \"InvalidApiKeyName\":\n case \"InvalidApiKeyPermissions\":\n throw apiKeyMutationFailure(result.__typename, result.message);\n }\n}\n\nfunction unwrapExpireOrganizationApiKey(\n result: ExpireOrganizationApiKeyMutation[\"expireOrganizationApiKey\"],\n): ListOrganizationApiKeysResponseData {\n switch (result.__typename) {\n case \"OrganizationApiKeyExpired\":\n return toOrganizationApiKey(result.apiKey);\n case \"ApiKeyAlreadyExpired\":\n throw apiKeyMutationFailure(\n result.__typename,\n \"API key is already expired\",\n );\n }\n}\n\nexport const useApiKeys = (context?: ApiKeysContextType) => {\n const {\n state: { pagination, searchQuery },\n } = useApiKeysContext(context);\n const { before, after } = pagination || {};\n const variables = {\n after: after ?? undefined,\n before: before ?? undefined,\n limit: API_KEYS_PAGE_SIZE,\n search: searchQuery || undefined,\n };\n\n return useClientGraphqlQuery({\n queryKey: clientGraphqlQueryKey(\"ListOrganizationApiKeys\", variables),\n queryFn: async (sdk) => {\n const { organizationApiKeys } =\n await sdk.ListOrganizationApiKeys(variables);\n return organizationApiKeys;\n },\n select: (list): ListOrganizationApiKeysResponse => ({\n data: list.data.map(toOrganizationApiKey),\n list_metadata: {\n after: list.listMetadata.after ?? undefined,\n before: list.listMetadata.before ?? undefined,\n },\n }),\n placeholderData: keepPreviousData,\n });\n};\n\nexport const useInvalidateApiKeys = () => {\n const queryClient = useQueryClient();\n return () =>\n queryClient.invalidateQueries({ queryKey: organizationApiKeysQueryKey });\n};\n\nexport const useCreateApiKey = () => {\n const invalidate = useInvalidateApiKeys();\n\n return useClientGraphqlMutation({\n mutationFn: async (\n sdk,\n { data }: { data: CreateOrganizationApiKeyRequest },\n ) => {\n const { createOrganizationApiKey: result } =\n await sdk.CreateOrganizationApiKey({\n input: {\n name: data.name,\n permissions: data.permissions,\n expiresAt: data.expiresAt ?? null,\n },\n });\n return unwrapCreateOrganizationApiKey(result);\n },\n onSuccess: invalidate,\n });\n};\n\nexport const useDeleteApiKey = ({\n onSuccess,\n}: { onSuccess?: () => void } = {}) => {\n const invalidate = useInvalidateApiKeys();\n\n return useClientGraphqlMutation({\n mutationFn: async (sdk, { apiKeyId }: { apiKeyId: string }) => {\n const { deleteOrganizationApiKey } = await sdk.DeleteOrganizationApiKey({\n apiKeyId,\n });\n return toOrganizationApiKey(deleteOrganizationApiKey);\n },\n onSuccess: () => {\n void invalidate();\n onSuccess?.();\n },\n });\n};\n\nexport const useExpireApiKey = () => {\n const invalidate = useInvalidateApiKeys();\n\n return useClientGraphqlMutation({\n mutationFn: async (\n sdk,\n { apiKeyId, expiresAt }: { apiKeyId: string; expiresAt: string | null },\n ) => {\n const { expireOrganizationApiKey: result } =\n await sdk.ExpireOrganizationApiKey({\n input: { apiKeyId, expiresAt },\n });\n return unwrapExpireOrganizationApiKey(result);\n },\n onSuccess: invalidate,\n });\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
2
|
+
import { MeQuery, OAuthProvider } from '../../api/client-graphql/generated.js';
|
|
3
|
+
import 'graphql-request';
|
|
4
|
+
|
|
5
|
+
type CurrentUser = MeQuery["me"];
|
|
6
|
+
declare const meQueryKey: () => readonly unknown[];
|
|
7
|
+
declare function useMe(): _tanstack_react_query.UseQueryResult<NoInfer<{
|
|
8
|
+
__typename?: "User";
|
|
9
|
+
id: string;
|
|
10
|
+
email: string;
|
|
11
|
+
emailVerified: boolean;
|
|
12
|
+
firstName?: string | null;
|
|
13
|
+
lastName?: string | null;
|
|
14
|
+
profilePictureUrl?: string | null;
|
|
15
|
+
mfaEnabled: boolean;
|
|
16
|
+
mfaLastUsedAt?: string | null;
|
|
17
|
+
passwordSet: boolean;
|
|
18
|
+
passwordLastUsedAt?: string | null;
|
|
19
|
+
createdAt: string;
|
|
20
|
+
updatedAt: string;
|
|
21
|
+
connectedAccounts: Array<{
|
|
22
|
+
__typename?: "ConnectedAccount";
|
|
23
|
+
id: string;
|
|
24
|
+
provider: OAuthProvider;
|
|
25
|
+
email?: string | null;
|
|
26
|
+
firstName?: string | null;
|
|
27
|
+
lastName?: string | null;
|
|
28
|
+
profilePictureUrl?: string | null;
|
|
29
|
+
lastLoginAt?: string | null;
|
|
30
|
+
}>;
|
|
31
|
+
}>, Error>;
|
|
32
|
+
declare function useMeCache(): {
|
|
33
|
+
update(user: Partial<CurrentUser>): void;
|
|
34
|
+
invalidate(): Promise<void>;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { type CurrentUser, meQueryKey, useMe, useMeCache };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useQueryClient } from "@tanstack/react-query";
|
|
3
|
+
import {
|
|
4
|
+
clientGraphqlQueryKey,
|
|
5
|
+
useClientGraphqlQuery
|
|
6
|
+
} from "../../api/client-graphql/hooks.js";
|
|
7
|
+
const meQueryKey = () => clientGraphqlQueryKey("Me");
|
|
8
|
+
function useMe() {
|
|
9
|
+
return useClientGraphqlQuery({
|
|
10
|
+
queryKey: meQueryKey(),
|
|
11
|
+
queryFn: (sdk) => sdk.Me(),
|
|
12
|
+
select: (data) => data.me
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function useMeCache() {
|
|
16
|
+
const client = useQueryClient();
|
|
17
|
+
return React.useMemo(
|
|
18
|
+
() => ({
|
|
19
|
+
update(user) {
|
|
20
|
+
client.setQueryData(
|
|
21
|
+
meQueryKey(),
|
|
22
|
+
(old) => old ? { ...old, me: { ...old.me, ...user } } : old
|
|
23
|
+
);
|
|
24
|
+
},
|
|
25
|
+
invalidate() {
|
|
26
|
+
return client.invalidateQueries({ queryKey: meQueryKey() });
|
|
27
|
+
}
|
|
28
|
+
}),
|
|
29
|
+
[client]
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
meQueryKey,
|
|
34
|
+
useMe,
|
|
35
|
+
useMeCache
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=me.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/lib/api/me.ts"],"sourcesContent":["import * as React from \"react\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport type { MeQuery } from \"../../api/client-graphql/generated.js\";\nimport {\n clientGraphqlQueryKey,\n useClientGraphqlQuery,\n} from \"../../api/client-graphql/hooks.js\";\n\nexport type CurrentUser = MeQuery[\"me\"];\n\nexport const meQueryKey = () => clientGraphqlQueryKey(\"Me\");\n\nexport function useMe() {\n return useClientGraphqlQuery({\n queryKey: meQueryKey(),\n queryFn: (sdk) => sdk.Me(),\n select: (data) => data.me,\n });\n}\n\nexport function useMeCache() {\n const client = useQueryClient();\n\n return React.useMemo(\n () => ({\n update(user: Partial<CurrentUser>) {\n client.setQueryData<MeQuery>(meQueryKey(), (old) =>\n old ? { ...old, me: { ...old.me, ...user } } : old,\n );\n },\n invalidate() {\n return client.invalidateQueries({ queryKey: meQueryKey() });\n },\n }),\n [client],\n );\n}\n"],"mappings":"AAAA,YAAY,WAAW;AACvB,SAAS,sBAAsB;AAE/B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAIA,MAAM,aAAa,MAAM,sBAAsB,IAAI;AAEnD,SAAS,QAAQ;AACtB,SAAO,sBAAsB;AAAA,IAC3B,UAAU,WAAW;AAAA,IACrB,SAAS,CAAC,QAAQ,IAAI,GAAG;AAAA,IACzB,QAAQ,CAAC,SAAS,KAAK;AAAA,EACzB,CAAC;AACH;AAEO,SAAS,aAAa;AAC3B,QAAM,SAAS,eAAe;AAE9B,SAAO,MAAM;AAAA,IACX,OAAO;AAAA,MACL,OAAO,MAA4B;AACjC,eAAO;AAAA,UAAsB,WAAW;AAAA,UAAG,CAAC,QAC1C,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI;AAAA,QACjD;AAAA,MACF;AAAA,MACA,aAAa;AACX,eAAO,OAAO,kBAAkB,EAAE,UAAU,WAAW,EAAE,CAAC;AAAA,MAC5D;AAAA,IACF;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACF;","names":[]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { DataInstallation, DataIntegrationWithConnections, SharedDataConnection, DataIntegrationConfiguration, OrganizationDataIntegration } from '../../api/endpoint.js';
|
|
2
|
+
import { DataProviderConnectionFieldsFragment, DataProviderFieldsFragment, SharedDataProviderFieldsFragment, ConfigurableDataProviderFieldsFragment, OrganizationDataProviderFieldsFragment, Sdk } from '../../api/client-graphql/generated.js';
|
|
3
|
+
import '@tanstack/react-query';
|
|
4
|
+
import '../../api/widgets-api-client.js';
|
|
5
|
+
import 'graphql-request';
|
|
6
|
+
|
|
7
|
+
declare function toDataInstallation(connection: DataProviderConnectionFieldsFragment): DataInstallation;
|
|
8
|
+
/**
|
|
9
|
+
* Joins the member's providers with their own connections the way
|
|
10
|
+
* `GET /_widgets/DataIntegrations/mine` did: the member's connection sits
|
|
11
|
+
* inline as `installation` and is repeated in `connected_accounts`.
|
|
12
|
+
*/
|
|
13
|
+
declare function toMyDataIntegrations(providers: readonly DataProviderFieldsFragment[], connections: readonly DataProviderConnectionFieldsFragment[]): DataIntegrationWithConnections[];
|
|
14
|
+
/**
|
|
15
|
+
* Presents a shared provider the way
|
|
16
|
+
* `GET /_widgets/DataIntegrations/shared-connections` did for any active
|
|
17
|
+
* member: identity, presentation and the state of each shared connection,
|
|
18
|
+
* without credentials or account identifiers.
|
|
19
|
+
*/
|
|
20
|
+
declare function toSharedDataConnection(provider: SharedDataProviderFieldsFragment): SharedDataConnection;
|
|
21
|
+
/**
|
|
22
|
+
* Presents the organization's policy configuration of a member-connectable
|
|
23
|
+
* provider the way `GET /_widgets/DataIntegrations/configurations` did.
|
|
24
|
+
*/
|
|
25
|
+
declare function toDataIntegrationConfiguration(provider: ConfigurableDataProviderFieldsFragment): DataIntegrationConfiguration;
|
|
26
|
+
/**
|
|
27
|
+
* Presents an organization-owned provider the way
|
|
28
|
+
* `GET /_widgets/DataIntegrations/organization` did. The GraphQL type
|
|
29
|
+
* resolves the organization's override into the effective `enabled` /
|
|
30
|
+
* `disabledSource`, so the raw override fields are derived from those.
|
|
31
|
+
*/
|
|
32
|
+
declare function toOrganizationDataIntegration(provider: OrganizationDataProviderFieldsFragment): OrganizationDataIntegration;
|
|
33
|
+
declare function listAllDataProviders(sdk: Sdk): Promise<DataProviderFieldsFragment[]>;
|
|
34
|
+
declare function listAllDataProviderConnections(sdk: Sdk): Promise<DataProviderConnectionFieldsFragment[]>;
|
|
35
|
+
declare function listAllOrganizationDataProviders(sdk: Sdk): Promise<OrganizationDataProviderFieldsFragment[]>;
|
|
36
|
+
declare function listAllSharedDataProviders(sdk: Sdk): Promise<SharedDataProviderFieldsFragment[]>;
|
|
37
|
+
declare function listAllConfigurableDataProviders(sdk: Sdk): Promise<ConfigurableDataProviderFieldsFragment[]>;
|
|
38
|
+
declare const sharedDataConnectionsQueryKey: readonly unknown[];
|
|
39
|
+
declare const dataIntegrationConfigurationsQueryKey: readonly unknown[];
|
|
40
|
+
declare const myDataIntegrationsQueryKeys: (readonly unknown[])[];
|
|
41
|
+
declare const organizationDataIntegrationsQueryKey: readonly unknown[];
|
|
42
|
+
interface ListResult<T> {
|
|
43
|
+
data: T[];
|
|
44
|
+
isLoading: boolean;
|
|
45
|
+
isPending: boolean;
|
|
46
|
+
isSuccess: boolean;
|
|
47
|
+
isError: boolean;
|
|
48
|
+
error: Error | null;
|
|
49
|
+
failureCount: number;
|
|
50
|
+
refetch: () => void;
|
|
51
|
+
}
|
|
52
|
+
/** The member's connectable providers joined with their own connections. */
|
|
53
|
+
declare function useMyDataIntegrations({ enabled, }?: {
|
|
54
|
+
enabled?: boolean;
|
|
55
|
+
}): ListResult<DataIntegrationWithConnections>;
|
|
56
|
+
/** The organization's provider inventory with its shared connections. */
|
|
57
|
+
declare function useOrganizationDataIntegrations({ enabled, }?: {
|
|
58
|
+
enabled?: boolean;
|
|
59
|
+
}): ListResult<OrganizationDataIntegration>;
|
|
60
|
+
/** The organization's shared connections, readable by any active member. */
|
|
61
|
+
declare function useSharedDataConnections(): ListResult<SharedDataConnection>;
|
|
62
|
+
/** The organization's policy configuration of each connectable provider. */
|
|
63
|
+
declare function useDataIntegrationConfigurations({ enabled, }?: {
|
|
64
|
+
enabled?: boolean;
|
|
65
|
+
}): ListResult<DataIntegrationConfiguration>;
|
|
66
|
+
/** Refreshes the member's own lists after one of their connections changed. */
|
|
67
|
+
declare function useInvalidateMyDataIntegrations(): () => void;
|
|
68
|
+
|
|
69
|
+
export { dataIntegrationConfigurationsQueryKey, listAllConfigurableDataProviders, listAllDataProviderConnections, listAllDataProviders, listAllOrganizationDataProviders, listAllSharedDataProviders, myDataIntegrationsQueryKeys, organizationDataIntegrationsQueryKey, sharedDataConnectionsQueryKey, toDataInstallation, toDataIntegrationConfiguration, toMyDataIntegrations, toOrganizationDataIntegration, toSharedDataConnection, useDataIntegrationConfigurations, useInvalidateMyDataIntegrations, useMyDataIntegrations, useOrganizationDataIntegrations, useSharedDataConnections };
|