@adonis-agora/authkit-react 1.0.0-rc.0 → 1.0.0-rc.2
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 +34 -0
- package/build/index.d.ts +2 -2
- package/build/index.js +1 -1
- package/build/src/client/client.d.ts +2 -0
- package/build/src/client/client.js +2 -0
- package/build/src/client/types.d.ts +31 -12
- package/build/src/queries/admin/index.d.ts +7 -0
- package/build/src/queries/admin/index.js +7 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @adonis-agora/authkit-react
|
|
2
2
|
|
|
3
|
+
## 1.0.0-rc.2
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#460](https://github.com/DavideCarvalho/adonis-agora-authkit/pull/460) [`1858ee8`](https://github.com/DavideCarvalho/adonis-agora-authkit/commit/1858ee837bb4edcf0578f86d224693ac9a86a495) Thanks [@DavideCarvalho](https://github.com/DavideCarvalho)! - Service tenants: a client can act as one partition of another service, such as a durable control plane.
|
|
8
|
+
|
|
9
|
+
- `serviceTenants: { resources: { 'urn:agora:durable': { expiresIn: 600 } } }` in `config/authkit.ts` declares the resources (RFC 8707) that issue service-tenant tokens: JWT access tokens (RFC 9068) with `aud` = the resource and the client's `partition` and `capabilities` as claims.
|
|
10
|
+
- A service-tenant client is confidential, uses only `client_credentials` and has no redirect URIs. Create and edit it from the console (**Service tenant** kind), the Admin API and the SDKs (`serviceTenant: { partition, capabilities? }`), or `node ace authkit:clients:create --partition=acme --capability=reports`.
|
|
11
|
+
- Any client can now be disabled and enabled again (console, `POST /clients/:id/disable|enable`, SDK `clients.disable/enable`): the token endpoint answers `invalid_client` from the next request on.
|
|
12
|
+
- `authkitTenantVerifier()` (authkit-server) verifies those tokens against the local issuer and keys and returns `{ tenant, capabilities }`; `authkitTenantToken({ issuer, clientId, clientSecret, resource })` (authkit-client) fetches, caches and refreshes them on the tenant side. Both fit durable's `verifyTenant` and `tenant.token` as a function or a class, without depending on durable.
|
|
13
|
+
- New audit events: `client.disabled`, `client.enabled`, `service_tenant.token_issued`.
|
|
14
|
+
- Access-token verification (`oidcBearerGuard`, in-process and remote) now refuses a token whose `sub` is a client (a `client_credentials` token), so a service-tenant token never authenticates a user.
|
|
15
|
+
|
|
16
|
+
## 1.0.0-rc.1
|
|
17
|
+
|
|
18
|
+
### Major Changes
|
|
19
|
+
|
|
20
|
+
- [#456](https://github.com/DavideCarvalho/adonis-agora-authkit/pull/456) [`9c12ef9`](https://github.com/DavideCarvalho/adonis-agora-authkit/commit/9c12ef9c1c49db9d54a7da6d241264499ad76e18) Thanks [@DavideCarvalho](https://github.com/DavideCarvalho)! - Poppy (the Personal Agent Protocol) moves out of `@adonis-agora/authkit-server` into the new `@adonis-agora/authkit-poppy` package, and authkit-server gains a stable extension surface for personal-agent protocols. See [Install `@adonis-agora/authkit-poppy` for Poppy](https://github.com/DavideCarvalho/adonis-agora-authkit/blob/main/apps/docs/content/docs/migrating-to-1-0.mdx#install-adonis-agoraauthkit-poppy-for-poppy).
|
|
21
|
+
|
|
22
|
+
Breaking changes (`@adonis-agora/authkit-server`):
|
|
23
|
+
|
|
24
|
+
- `personalAgents.poppy` is removed: install `@adonis-agora/authkit-poppy` and use `personalAgents: { extensions: [poppy({ ... })] }` with the same options. A config that still has `personalAgents.poppy` fails at boot. Routes, tables, tokens and sessions are unchanged, so no data migration is needed.
|
|
25
|
+
- Every Poppy export (`PoppyConfigInput` and the other `Poppy*` types, `poppyEmailCodeSignIn`, `verifyPoppyRequest`, `poppyAuth`, `poppyOf`, `poppyWebSession`, `poppyWebSessionOf`, `installPoppySlots`, `POPPY_AUTHENTICATE_SLOT`, `POPPY_WEB_SESSION_KEY`, `PoppyError`, `verifyDpopProof`, `accessTokenHash`, `hmacNonceSource`, `databaseReplayStore`, `memoryReplayStore`, `redisReplayStore`, `safeFetchJson`, `isBlockedAddress`, `SafeFetchError`, `maskEmail`) now comes from `@adonis-agora/authkit-poppy`.
|
|
26
|
+
- `mail.onPoppySignInCode` is removed: pass `sendCode` to `poppyEmailCodeSignIn()`.
|
|
27
|
+
- `authkitCsrfExceptions` no longer takes `poppyPrefix`; extensions' endpoints are exempted from the config (`personalAgentExtensions: false` turns that off).
|
|
28
|
+
- `ensureAuthkitSchema()` no longer creates the `auth_poppy_*` tables (the extension's tables are ensured at boot; `ensurePoppySchema()` for migrations).
|
|
29
|
+
- Admin console API: an extension's `protocols` entry is `{ label, requireRegistration, hostResolver, allowHttpIdentifiers, identifierLabel, identifierPlaceholder }`.
|
|
30
|
+
|
|
31
|
+
New, stable for 1.x: `personalAgents.extensions` and the types `PersonalAgentExtension`, `PersonalAgentExtensionDefinition`, `PersonalAgentExtensionContext`, `PersonalAgentRouteKit`, `PersonalAgentHost`, `PersonalAgentGrantLedger`, `PersonalAgentGrant`, `PersonalAgentRefreshToken`, `PersonalAgentAccessTokens`, `PersonalAgentProtocolRuntime`, `PersonalAgentGrantSummary`, `PersonalAgentConsoleSummary`, `ResolvedPersonalAgentExtension`, `AuthkitTable`; the functions `personalAgentExtensionRuntime`, `ensureAuthkitTables`, `sendAuthkitCodeEmail`, `signInAccountSession` and `signOutAccountSession`; and the `tables` option of `ensureAuthkitSchema`.
|
|
32
|
+
|
|
33
|
+
Breaking changes (`@adonis-agora/authkit-react`):
|
|
34
|
+
|
|
35
|
+
- `PersonalAgentProtocol` is `'pact'` or any extension id, and `PersonalAgentsOverview.protocols` has one entry per extension (`PersonalAgentExtensionOverview`) instead of a fixed `poppy` key. `AccountAgentGrant.protocol` uses `PersonalAgentProtocol`.
|
|
36
|
+
|
|
3
37
|
## 1.0.0-rc.0
|
|
4
38
|
|
|
5
39
|
### Major Changes
|
package/build/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export type { AuthkitClient, AuthkitClientOptions, } from './src/client/client.j
|
|
|
4
4
|
export { AuthkitClientError, createAuthkitClient, } from './src/client/client.js';
|
|
5
5
|
export type { AuthkitClientProviderProps } from './src/client/context.js';
|
|
6
6
|
export { AuthkitClientProvider, createAuthkitQueryClient, useAuthkitClient, } from './src/client/context.js';
|
|
7
|
-
export type { AcceptOrgInvitationResult, AccountAgentGrant, AccountAgentsResult, AccountAppEntry, AccountAppsResult, AccountCapabilities, AccountLoginMethodsResult, AccountMe, AccountMfaStatus, AccountOrgDetail, AccountOrgEntry, AccountOrgInvitationsResult, AccountOrgsResult, AccountPasskeysResult, AccountSecurityOverview, AccountSessionEntry, AccountSessionsResult, AccountTokensResult, ActivateOrgResult, AdminClient, AdminClientListResult, AdminGrantEntry, AdminOrgDetail, AdminOrgEntry, AdminOrgInvitation, AdminOrgListResult, AdminOrgMember, AdminOverview, AdminSessionEntry, AdminUser, AdminUserListResult, ApiErrorBody, AuditEventEntry, AuditListParams, AuditListResult, ChangePasswordInput, CreateAccountOrgInput, CreateClientInput, CreatedAccountOrgResult, CreatedClientResult, CreatedOrgInvitationResult, CreatedPatResult, CreateOrgInput, CreateRoleInput, CreateTokenInput, CreateUserInput, DailyPoint, DeactivateOrgResult, DeletedResult, EmailChangeResult, ImpersonationPanel, InviteOrgMemberInput, KeysRotateInput, KeysRotateResult, KeysStatus, LeaveOrgResult, ListMeta, ManagedKeyInfo, MfaConfirmResult, MfaDisableResult, MfaEnrollResult, MfaRecoveryCodesResult, OkResult, PasskeyRegistrationOptions, PasskeySummaryEntry, PatEntry, PersonalAgentConnection, PersonalAgentConnectionsParams, PersonalAgentConnectionsResult, PersonalAgentEntry, PersonalAgentListStatus, PersonalAgentProtocol, PersonalAgentRegistryInput, PersonalAgentRegistryResult, PersonalAgentsOverview, RegenerateSecretResult, RemoveOrgMemberResult, RemovePasskeyResult, RequestEmailChangeInput, ResetPasswordResult, RevokeAllResult, RevokeAppResult, RevokeOrgInvitationResult, RevokeOthersResult, RevokeSessionResult, RevokeSessionsResult, RevokeTokenResult, RoleCatalogEntry, RoleListResult, SettingEntry, SettingListResult, UpdateClientInput, UpdateLoginMethodsResult, UpdateOrgInput, UpdateOrgMemberRoleResult, UpdateProfileInput, UpdateProfileResult, UpdateRoleInput, UpdateUserInput, UserLoginMethodsInput, UserSessionsResult, } from './src/client/types.js';
|
|
7
|
+
export type { AcceptOrgInvitationResult, AccountAgentGrant, AccountAgentsResult, AccountAppEntry, AccountAppsResult, AccountCapabilities, AccountLoginMethodsResult, AccountMe, AccountMfaStatus, AccountOrgDetail, AccountOrgEntry, AccountOrgInvitationsResult, AccountOrgsResult, AccountPasskeysResult, AccountSecurityOverview, AccountSessionEntry, AccountSessionsResult, AccountTokensResult, ActivateOrgResult, AdminClient, AdminClientListResult, AdminGrantEntry, AdminOrgDetail, AdminOrgEntry, AdminOrgInvitation, AdminOrgListResult, AdminOrgMember, AdminOverview, AdminSessionEntry, AdminUser, AdminUserListResult, ApiErrorBody, AuditEventEntry, AuditListParams, AuditListResult, ChangePasswordInput, CreateAccountOrgInput, CreateClientInput, CreatedAccountOrgResult, CreatedClientResult, CreatedOrgInvitationResult, CreatedPatResult, CreateOrgInput, CreateRoleInput, CreateTokenInput, CreateUserInput, DailyPoint, DeactivateOrgResult, DeletedResult, EmailChangeResult, ImpersonationPanel, InviteOrgMemberInput, KeysRotateInput, KeysRotateResult, KeysStatus, LeaveOrgResult, ListMeta, ManagedKeyInfo, MfaConfirmResult, MfaDisableResult, MfaEnrollResult, MfaRecoveryCodesResult, OkResult, PasskeyRegistrationOptions, PasskeySummaryEntry, PatEntry, PersonalAgentConnection, PersonalAgentConnectionsParams, PersonalAgentConnectionsResult, PersonalAgentEntry, PersonalAgentExtensionOverview, PersonalAgentListStatus, PersonalAgentPactOverview, PersonalAgentProtocol, PersonalAgentRegistryInput, PersonalAgentRegistryResult, PersonalAgentsOverview, RegenerateSecretResult, RemoveOrgMemberResult, RemovePasskeyResult, RequestEmailChangeInput, ResetPasswordResult, RevokeAllResult, RevokeAppResult, RevokeOrgInvitationResult, RevokeOthersResult, RevokeSessionResult, RevokeSessionsResult, RevokeTokenResult, RoleCatalogEntry, RoleListResult, ServiceTenantSettings, SettingEntry, SettingListResult, UpdateClientInput, UpdateLoginMethodsResult, UpdateOrgInput, UpdateOrgMemberRoleResult, UpdateProfileInput, UpdateProfileResult, UpdateRoleInput, UpdateUserInput, UserLoginMethodsInput, UserSessionsResult, } from './src/client/types.js';
|
|
8
8
|
export type { AuthenticatedProps, GuestProps, } from './src/components/authenticated.js';
|
|
9
9
|
export { Authenticated, Guest } from './src/components/authenticated.js';
|
|
10
10
|
export type { AuthorizedAppsProps } from './src/components/authorized_apps.js';
|
|
@@ -75,7 +75,7 @@ export { runPasskeyAssertion, runPasskeyRegistration } from './src/passkey/sudo.
|
|
|
75
75
|
export type { AuthProviderProps } from './src/provider.js';
|
|
76
76
|
export { AuthContext, AuthProvider } from './src/provider.js';
|
|
77
77
|
export { useAccountAcceptOrgInvitationMutationOptions, useAccountActivateOrgMutationOptions, useAccountAgentsQueryOptions, useAccountCreateOrgMutationOptions, useAccountDeactivateOrgMutationOptions, useAccountInviteOrgMemberMutationOptions, useAccountLeaveOrgMutationOptions, useAccountOrgInvitationsQueryOptions, useAccountOrgQueryOptions, useAccountOrgsQueryOptions, useAccountRemoveOrgMemberMutationOptions, useAccountRevokeAllSessionsMutationOptions, useAccountRevokeOrgInvitationMutationOptions, useAccountSessionsQueryOptions, useAccountUpdateOrgMemberRoleMutationOptions, useAppsQueryOptions, useCancelEmailChangeMutationOptions, useChangePasswordMutationOptions, useConfirmTotpMutationOptions, useCreateTokenMutationOptions, useDisableTotpMutationOptions, useEmailChangeMutationOptions, useEnrollTotpMutationOptions, useLoginMethodsQueryOptions, useMeQueryOptions, useMfaQueryOptions, usePasskeysQueryOptions, useRegenerateRecoveryCodesMutationOptions, useRegisterPasskeyMutationOptions, useRemovePasskeyMutationOptions, useRevokeAccountAgentMutationOptions, useRevokeAppMutationOptions, useRevokeOtherSessionsMutationOptions, useRevokeSessionMutationOptions, useRevokeTokenMutationOptions, useSecurityQueryOptions, useTokensQueryOptions, useUpdateLoginMethodsMutationOptions, useUpdateProfileMutationOptions, } from './src/queries/account/index.js';
|
|
78
|
-
export { useAddOrgMemberMutationOptions, useAuditQueryOptions, useClientQueryOptions, useClientsQueryOptions, useCreateClientMutationOptions, useCreateOrgInvitationMutationOptions, useCreateOrgMutationOptions, useCreateRoleMutationOptions, useCreateUserMutationOptions, useDeleteClientMutationOptions, useDeleteOrgMutationOptions, useDeleteRoleMutationOptions, useDeleteUserMutationOptions, useDisableUserMutationOptions, useEnableUserMutationOptions, useImpersonationQueryOptions, useKeysQueryOptions, useOrgQueryOptions, useOrgsQueryOptions, useOverviewQueryOptions, usePersonalAgentConnectionsQueryOptions, usePersonalAgentsQueryOptions, useRegenerateClientSecretMutationOptions, useRemoveOrgMemberMutationOptions, useRemovePersonalAgentEntryMutationOptions, useRemoveSettingMutationOptions, useResetPasswordMutationOptions, useRevokeAllSessionsMutationOptions, useRevokeOrgInvitationMutationOptions, useRevokePersonalAgentConnectionMutationOptions, useRevokeUserSessionsMutationOptions, useRolesQueryOptions, useRotateKeysMutationOptions, useSessionsQueryOptions, useSetPersonalAgentStatusMutationOptions, useSetSettingMutationOptions, useSettingsQueryOptions, useUpdateClientMutationOptions, useUpdateOrgMemberRoleMutationOptions, useUpdateOrgMutationOptions, useUpdateRoleMutationOptions, useUpdateUserMutationOptions, useUserQueryOptions, useUserSessionsQueryOptions, useUsersQueryOptions, } from './src/queries/admin/index.js';
|
|
78
|
+
export { useAddOrgMemberMutationOptions, useAuditQueryOptions, useClientQueryOptions, useClientsQueryOptions, useCreateClientMutationOptions, useCreateOrgInvitationMutationOptions, useCreateOrgMutationOptions, useCreateRoleMutationOptions, useCreateUserMutationOptions, useDeleteClientMutationOptions, useDeleteOrgMutationOptions, useDeleteRoleMutationOptions, useDeleteUserMutationOptions, useDisableUserMutationOptions, useEnableUserMutationOptions, useImpersonationQueryOptions, useKeysQueryOptions, useOrgQueryOptions, useOrgsQueryOptions, useOverviewQueryOptions, usePersonalAgentConnectionsQueryOptions, usePersonalAgentsQueryOptions, useRegenerateClientSecretMutationOptions, useRemoveOrgMemberMutationOptions, useRemovePersonalAgentEntryMutationOptions, useRemoveSettingMutationOptions, useResetPasswordMutationOptions, useRevokeAllSessionsMutationOptions, useRevokeOrgInvitationMutationOptions, useRevokePersonalAgentConnectionMutationOptions, useRevokeUserSessionsMutationOptions, useRolesQueryOptions, useRotateKeysMutationOptions, useSessionsQueryOptions, useSetClientDisabledMutationOptions, useSetPersonalAgentStatusMutationOptions, useSetSettingMutationOptions, useSettingsQueryOptions, useUpdateClientMutationOptions, useUpdateOrgMemberRoleMutationOptions, useUpdateOrgMutationOptions, useUpdateRoleMutationOptions, useUpdateUserMutationOptions, useUserQueryOptions, useUserSessionsQueryOptions, useUsersQueryOptions, } from './src/queries/admin/index.js';
|
|
79
79
|
export { authkitKeys } from './src/queries/keys.js';
|
|
80
80
|
export { hasAllGlobalRoles, hasAnyGlobalRole, hasGlobalRole, } from './src/roles.js';
|
|
81
81
|
export type { AuthSharedProps, AuthState, AuthUser } from './src/types.js';
|
package/build/index.js
CHANGED
|
@@ -37,7 +37,7 @@ export { registerPasskeyJson } from './src/passkey/json_registration.js';
|
|
|
37
37
|
export { runPasskeyAssertion, runPasskeyRegistration } from './src/passkey/sudo.js';
|
|
38
38
|
export { AuthContext, AuthProvider } from './src/provider.js';
|
|
39
39
|
export { useAccountAcceptOrgInvitationMutationOptions, useAccountActivateOrgMutationOptions, useAccountAgentsQueryOptions, useAccountCreateOrgMutationOptions, useAccountDeactivateOrgMutationOptions, useAccountInviteOrgMemberMutationOptions, useAccountLeaveOrgMutationOptions, useAccountOrgInvitationsQueryOptions, useAccountOrgQueryOptions, useAccountOrgsQueryOptions, useAccountRemoveOrgMemberMutationOptions, useAccountRevokeAllSessionsMutationOptions, useAccountRevokeOrgInvitationMutationOptions, useAccountSessionsQueryOptions, useAccountUpdateOrgMemberRoleMutationOptions, useAppsQueryOptions, useCancelEmailChangeMutationOptions, useChangePasswordMutationOptions, useConfirmTotpMutationOptions, useCreateTokenMutationOptions, useDisableTotpMutationOptions, useEmailChangeMutationOptions, useEnrollTotpMutationOptions, useLoginMethodsQueryOptions, useMeQueryOptions, useMfaQueryOptions, usePasskeysQueryOptions, useRegenerateRecoveryCodesMutationOptions, useRegisterPasskeyMutationOptions, useRemovePasskeyMutationOptions, useRevokeAccountAgentMutationOptions, useRevokeAppMutationOptions, useRevokeOtherSessionsMutationOptions, useRevokeSessionMutationOptions, useRevokeTokenMutationOptions, useSecurityQueryOptions, useTokensQueryOptions, useUpdateLoginMethodsMutationOptions, useUpdateProfileMutationOptions, } from './src/queries/account/index.js';
|
|
40
|
-
export { useAddOrgMemberMutationOptions, useAuditQueryOptions, useClientQueryOptions, useClientsQueryOptions, useCreateClientMutationOptions, useCreateOrgInvitationMutationOptions, useCreateOrgMutationOptions, useCreateRoleMutationOptions, useCreateUserMutationOptions, useDeleteClientMutationOptions, useDeleteOrgMutationOptions, useDeleteRoleMutationOptions, useDeleteUserMutationOptions, useDisableUserMutationOptions, useEnableUserMutationOptions, useImpersonationQueryOptions, useKeysQueryOptions, useOrgQueryOptions, useOrgsQueryOptions, useOverviewQueryOptions, usePersonalAgentConnectionsQueryOptions, usePersonalAgentsQueryOptions, useRegenerateClientSecretMutationOptions, useRemoveOrgMemberMutationOptions, useRemovePersonalAgentEntryMutationOptions, useRemoveSettingMutationOptions, useResetPasswordMutationOptions, useRevokeAllSessionsMutationOptions, useRevokeOrgInvitationMutationOptions, useRevokePersonalAgentConnectionMutationOptions, useRevokeUserSessionsMutationOptions, useRolesQueryOptions, useRotateKeysMutationOptions, useSessionsQueryOptions, useSetPersonalAgentStatusMutationOptions, useSetSettingMutationOptions, useSettingsQueryOptions, useUpdateClientMutationOptions, useUpdateOrgMemberRoleMutationOptions, useUpdateOrgMutationOptions, useUpdateRoleMutationOptions, useUpdateUserMutationOptions, useUserQueryOptions, useUserSessionsQueryOptions, useUsersQueryOptions, } from './src/queries/admin/index.js';
|
|
40
|
+
export { useAddOrgMemberMutationOptions, useAuditQueryOptions, useClientQueryOptions, useClientsQueryOptions, useCreateClientMutationOptions, useCreateOrgInvitationMutationOptions, useCreateOrgMutationOptions, useCreateRoleMutationOptions, useCreateUserMutationOptions, useDeleteClientMutationOptions, useDeleteOrgMutationOptions, useDeleteRoleMutationOptions, useDeleteUserMutationOptions, useDisableUserMutationOptions, useEnableUserMutationOptions, useImpersonationQueryOptions, useKeysQueryOptions, useOrgQueryOptions, useOrgsQueryOptions, useOverviewQueryOptions, usePersonalAgentConnectionsQueryOptions, usePersonalAgentsQueryOptions, useRegenerateClientSecretMutationOptions, useRemoveOrgMemberMutationOptions, useRemovePersonalAgentEntryMutationOptions, useRemoveSettingMutationOptions, useResetPasswordMutationOptions, useRevokeAllSessionsMutationOptions, useRevokeOrgInvitationMutationOptions, useRevokePersonalAgentConnectionMutationOptions, useRevokeUserSessionsMutationOptions, useRolesQueryOptions, useRotateKeysMutationOptions, useSessionsQueryOptions, useSetClientDisabledMutationOptions, useSetPersonalAgentStatusMutationOptions, useSetSettingMutationOptions, useSettingsQueryOptions, useUpdateClientMutationOptions, useUpdateOrgMemberRoleMutationOptions, useUpdateOrgMutationOptions, useUpdateRoleMutationOptions, useUpdateUserMutationOptions, useUserQueryOptions, useUserSessionsQueryOptions, useUsersQueryOptions, } from './src/queries/admin/index.js';
|
|
41
41
|
export { authkitKeys } from './src/queries/keys.js';
|
|
42
42
|
export { hasAllGlobalRoles, hasAnyGlobalRole, hasGlobalRole, } from './src/roles.js';
|
|
43
43
|
export { useAuth } from './src/use_auth.js';
|
|
@@ -56,6 +56,8 @@ declare class AuthkitClient {
|
|
|
56
56
|
readonly create: (data?: CreateClientInput) => Promise<CreatedClientResult>;
|
|
57
57
|
readonly update: (id: string, data?: UpdateClientInput) => Promise<AdminClient>;
|
|
58
58
|
readonly remove: (id: string) => Promise<DeletedResult>;
|
|
59
|
+
readonly disable: (id: string) => Promise<AdminClient>;
|
|
60
|
+
readonly enable: (id: string) => Promise<AdminClient>;
|
|
59
61
|
readonly regenerateSecret: (id: string) => Promise<RegenerateSecretResult>;
|
|
60
62
|
};
|
|
61
63
|
readonly roles: {
|
|
@@ -122,6 +122,8 @@ class AuthkitClient {
|
|
|
122
122
|
create: (data) => this.post(this.b('/clients'), data),
|
|
123
123
|
update: (id, data) => this.patch(this.b(`/clients/${encodeURIComponent(id)}`), data),
|
|
124
124
|
remove: (id) => this.delete(this.b(`/clients/${encodeURIComponent(id)}`)),
|
|
125
|
+
disable: (id) => this.post(this.b(`/clients/${encodeURIComponent(id)}/disable`)),
|
|
126
|
+
enable: (id) => this.post(this.b(`/clients/${encodeURIComponent(id)}/enable`)),
|
|
125
127
|
regenerateSecret: (id) => this.post(this.b(`/clients/${encodeURIComponent(id)}/regenerate-secret`)),
|
|
126
128
|
},
|
|
127
129
|
roles: {
|
|
@@ -78,6 +78,12 @@ export interface AdminClient {
|
|
|
78
78
|
backchannelLogoutSessionRequired: boolean;
|
|
79
79
|
clientName: string | null;
|
|
80
80
|
logoUri: string | null;
|
|
81
|
+
disabled?: boolean;
|
|
82
|
+
serviceTenant?: ServiceTenantSettings | null;
|
|
83
|
+
}
|
|
84
|
+
export interface ServiceTenantSettings {
|
|
85
|
+
partition: string;
|
|
86
|
+
capabilities: string[];
|
|
81
87
|
}
|
|
82
88
|
export interface AdminClientListResult {
|
|
83
89
|
data: AdminClient[];
|
|
@@ -102,11 +108,19 @@ export interface CreateClientInput {
|
|
|
102
108
|
backchannelLogoutSessionRequired?: boolean;
|
|
103
109
|
clientName?: string;
|
|
104
110
|
logoUri?: string;
|
|
111
|
+
serviceTenant?: {
|
|
112
|
+
partition: string;
|
|
113
|
+
capabilities?: string[];
|
|
114
|
+
};
|
|
105
115
|
}
|
|
106
|
-
export type UpdateClientInput = Omit<CreateClientInput, 'backchannelLogoutUri' | 'clientName' | 'logoUri'> & {
|
|
116
|
+
export type UpdateClientInput = Omit<CreateClientInput, 'backchannelLogoutUri' | 'clientName' | 'logoUri' | 'serviceTenant'> & {
|
|
107
117
|
backchannelLogoutUri?: string | null;
|
|
108
118
|
clientName?: string | null;
|
|
109
119
|
logoUri?: string | null;
|
|
120
|
+
serviceTenant?: {
|
|
121
|
+
partition: string;
|
|
122
|
+
capabilities?: string[];
|
|
123
|
+
} | null;
|
|
110
124
|
};
|
|
111
125
|
export interface RoleCatalogEntry {
|
|
112
126
|
name: string;
|
|
@@ -335,7 +349,7 @@ export interface AccountAppsResult {
|
|
|
335
349
|
export interface AccountAgentGrant {
|
|
336
350
|
id: string;
|
|
337
351
|
clientId: string;
|
|
338
|
-
protocol:
|
|
352
|
+
protocol: PersonalAgentProtocol;
|
|
339
353
|
scopes: Array<{
|
|
340
354
|
id: string;
|
|
341
355
|
description: string;
|
|
@@ -568,7 +582,7 @@ export interface KeysRotateResult {
|
|
|
568
582
|
retiredKids: string[];
|
|
569
583
|
keptKids: string[];
|
|
570
584
|
}
|
|
571
|
-
export type PersonalAgentProtocol = 'pact' |
|
|
585
|
+
export type PersonalAgentProtocol = 'pact' | (string & {});
|
|
572
586
|
export type PersonalAgentListStatus = 'allowed' | 'blocked';
|
|
573
587
|
export interface PersonalAgentEntry {
|
|
574
588
|
protocol: PersonalAgentProtocol;
|
|
@@ -587,18 +601,23 @@ export interface PersonalAgentEntry {
|
|
|
587
601
|
}
|
|
588
602
|
export interface PersonalAgentsOverview {
|
|
589
603
|
protocols: {
|
|
590
|
-
pact:
|
|
591
|
-
|
|
592
|
-
hostResolver: boolean;
|
|
593
|
-
} | null;
|
|
594
|
-
poppy: {
|
|
595
|
-
requireRegistration: boolean;
|
|
596
|
-
hostResolver: boolean;
|
|
597
|
-
allowInsecureClientIds: boolean;
|
|
598
|
-
} | null;
|
|
604
|
+
pact: PersonalAgentPactOverview | null;
|
|
605
|
+
[protocol: string]: PersonalAgentPactOverview | PersonalAgentExtensionOverview | null;
|
|
599
606
|
};
|
|
600
607
|
agents: PersonalAgentEntry[];
|
|
601
608
|
}
|
|
609
|
+
export interface PersonalAgentPactOverview {
|
|
610
|
+
open: boolean;
|
|
611
|
+
hostResolver: boolean;
|
|
612
|
+
}
|
|
613
|
+
export interface PersonalAgentExtensionOverview {
|
|
614
|
+
label: string;
|
|
615
|
+
requireRegistration: boolean;
|
|
616
|
+
hostResolver: boolean;
|
|
617
|
+
allowHttpIdentifiers: boolean;
|
|
618
|
+
identifierLabel: string;
|
|
619
|
+
identifierPlaceholder: string | null;
|
|
620
|
+
}
|
|
602
621
|
export interface PersonalAgentConnection {
|
|
603
622
|
id: string;
|
|
604
623
|
protocol: PersonalAgentProtocol;
|
|
@@ -84,6 +84,13 @@ export declare function useDeleteClientMutationOptions(id: string): {
|
|
|
84
84
|
mutationKey: string[];
|
|
85
85
|
mutationFn: () => Promise<DeletedResult>;
|
|
86
86
|
};
|
|
87
|
+
export declare function useSetClientDisabledMutationOptions(): {
|
|
88
|
+
mutationKey: string[];
|
|
89
|
+
mutationFn: ({ id, disabled }: {
|
|
90
|
+
id: string;
|
|
91
|
+
disabled: boolean;
|
|
92
|
+
}) => Promise<AdminClient>;
|
|
93
|
+
};
|
|
87
94
|
export declare function useRegenerateClientSecretMutationOptions(id: string): {
|
|
88
95
|
mutationKey: string[];
|
|
89
96
|
mutationFn: () => Promise<RegenerateSecretResult>;
|
|
@@ -129,6 +129,13 @@ export function useDeleteClientMutationOptions(id) {
|
|
|
129
129
|
mutationFn: () => client.admin.clients.remove(id),
|
|
130
130
|
};
|
|
131
131
|
}
|
|
132
|
+
export function useSetClientDisabledMutationOptions() {
|
|
133
|
+
const client = useAuthkitClient();
|
|
134
|
+
return {
|
|
135
|
+
mutationKey: ['authkit', 'admin', 'clients', 'disabled'],
|
|
136
|
+
mutationFn: ({ id, disabled }) => disabled ? client.admin.clients.disable(id) : client.admin.clients.enable(id),
|
|
137
|
+
};
|
|
138
|
+
}
|
|
132
139
|
export function useRegenerateClientSecretMutationOptions(id) {
|
|
133
140
|
const client = useAuthkitClient();
|
|
134
141
|
return {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adonis-agora/authkit-react",
|
|
3
|
-
"version": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.2",
|
|
4
4
|
"description": "Frontend ergonomics over AuthKit for AdonisJS + Inertia + React apps: a typed useAuth() hook, role-gating hooks and gating components.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "dudousxd",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"@poppinss/ts-exec": "1.5.2",
|
|
70
70
|
"@tanstack/intent": "0.5.6",
|
|
71
71
|
"@tanstack/react-query": "5.107.1",
|
|
72
|
-
"@types/node": "26.6.
|
|
72
|
+
"@types/node": "26.6.6",
|
|
73
73
|
"@types/react": "19.3.0",
|
|
74
74
|
"@types/react-dom": "19.3.0",
|
|
75
75
|
"react": "19.3.1",
|