@geekapps/auth-nextjs 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/connections.d.ts +42 -6
- package/dist/connections.js +885 -5
- package/dist/connections.js.map +1 -1
- package/package.json +1 -1
package/dist/connections.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* App Connections — chamar ações de negócio de OUTRA Application.
|
|
3
3
|
*
|
|
4
|
-
* Uma conexão liga
|
|
5
|
-
*
|
|
6
|
-
* sob a qual elas rodam.
|
|
7
|
-
*
|
|
8
|
-
* sempre com a mesma identidade e as mesmas permissões.
|
|
4
|
+
* Uma conexão liga um USUÁRIO desta app (X) a uma app alvo (Y). Ele a aprova
|
|
5
|
+
* uma vez no consent, escolhendo as ações liberadas e a organização dentro do
|
|
6
|
+
* Y sob a qual elas rodam. A chamada vai com o access token desse usuário (o
|
|
7
|
+
* da sessão, por padrão): é ele que diz ao proxy qual conexão usar.
|
|
9
8
|
*
|
|
10
9
|
* Nada aqui fala com a API do Y diretamente: tudo passa pelo proxy do
|
|
11
10
|
* auth-server, que valida a conexão e injeta a credencial. Esta app nunca vê
|
|
@@ -14,6 +13,10 @@
|
|
|
14
13
|
* O catálogo tipado (`GeekappsConnections`) vem do arquivo gerado por
|
|
15
14
|
* `npx geekapps-connections`.
|
|
16
15
|
*/
|
|
16
|
+
/** Opções por chamada. Sem `userToken`, usa o access token do usuário logado na sessão. */
|
|
17
|
+
type ConnectionCallOptions = {
|
|
18
|
+
userToken?: string;
|
|
19
|
+
};
|
|
17
20
|
type AppConnectionsConfig = {
|
|
18
21
|
issuer?: string;
|
|
19
22
|
/** client_id/secret desta app (a consumidora, X). */
|
|
@@ -43,6 +46,8 @@ declare function callAppConnection<T = unknown>(params: {
|
|
|
43
46
|
targetAppId: string;
|
|
44
47
|
actionKey: string;
|
|
45
48
|
payload?: unknown;
|
|
49
|
+
/** Access token do usuário dono da conexão. Padrão: o do usuário logado. */
|
|
50
|
+
userToken?: string;
|
|
46
51
|
config?: AppConnectionsConfig;
|
|
47
52
|
}): Promise<T>;
|
|
48
53
|
/**
|
|
@@ -74,5 +79,36 @@ type ConnectionsCatalog = Record<string, ConnectionRegistryEntry | {
|
|
|
74
79
|
declare function defineAppConnections<T>(catalog: ConnectionsCatalog, config?: AppConnectionsConfig): T;
|
|
75
80
|
/** Cliente padrão, lendo GEEKAPPS_AUTH_CLIENT_ID / _SECRET do ambiente. */
|
|
76
81
|
declare const appConnections: AppConnectionsClient;
|
|
82
|
+
type ConnectAppParams = {
|
|
83
|
+
/** client_id da app ALVO (a que expõe as ações). */
|
|
84
|
+
targetAppId: string;
|
|
85
|
+
/** AppAction.key das ações pedidas — as mesmas que aparecem no consent. */
|
|
86
|
+
actions: string[];
|
|
87
|
+
/** URL desta app que recebe o retorno do consent (rota que chama `completeAppConnection`). Precisa estar nos redirect URIs desta app. */
|
|
88
|
+
redirectUri: string;
|
|
89
|
+
/** Para onde `completeAppConnection` manda o usuário depois (padrão "/"). */
|
|
90
|
+
returnTo?: string;
|
|
91
|
+
/** Nome desta app exibido no consent. */
|
|
92
|
+
displayName?: string;
|
|
93
|
+
config?: AppConnectionsConfig;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Inicia a conexão desta app com `targetAppId`: guarda PKCE/state em cookies
|
|
97
|
+
* httpOnly e redireciona para o consent. Chame de um Server Action ou Route
|
|
98
|
+
* Handler — não retorna (o `redirect` do Next interrompe a execução).
|
|
99
|
+
*/
|
|
100
|
+
declare function connectApp(params: ConnectAppParams): Promise<never>;
|
|
101
|
+
/**
|
|
102
|
+
* Fecha o fluxo de `connectApp`. Chame no callback com o `code` e o `state`
|
|
103
|
+
* da query; devolve o `returnTo` para você redirecionar. Lança
|
|
104
|
+
* AppConnectionError se o state não bater ou o auth-server recusar.
|
|
105
|
+
*/
|
|
106
|
+
declare function completeAppConnection(params: {
|
|
107
|
+
code: string;
|
|
108
|
+
state: string;
|
|
109
|
+
config?: AppConnectionsConfig;
|
|
110
|
+
}): Promise<{
|
|
111
|
+
returnTo: string;
|
|
112
|
+
}>;
|
|
77
113
|
|
|
78
|
-
export { AppConnectionError, type AppConnectionsClient, type AppConnectionsConfig, type ConnectionsCatalog, type GeekappsConnections, appConnections, callAppConnection, createAppConnections, defineAppConnections, registerConnections };
|
|
114
|
+
export { AppConnectionError, type AppConnectionsClient, type AppConnectionsConfig, type ConnectAppParams, type ConnectionCallOptions, type ConnectionsCatalog, type GeekappsConnections, appConnections, callAppConnection, completeAppConnection, connectApp, createAppConnections, defineAppConnections, registerConnections };
|