1895 extensibility v1 application tokens 3 (#16504)
- moves applicationRoleId to application entity - add new `APPLICATION` FieldActorSource and `APPLICATION` JwtTokenTypeEnum value - create a new token with applicationId when executing a function - when applicationId is in token, check for application.defaultRole permissions -use twenty-shared types in `twenty-sdk/application` - create a new import from generate called "Twenty" that you can use directly without having to set TWENTY_API_KEY AND TWENTY_API_URL (keep metadata or core parameter only) - provide to serverless unique one time BEARER TOKEN to run it Result <img width="977" height="566" alt="image" src="https://github.com/user-attachments/assets/e78428a0-5b13-4975-aa13-58ee3b32450c" /> <img width="910" height="596" alt="image" src="https://github.com/user-attachments/assets/6ec72bf5-7655-4093-a45e-ad269595a324" /> <img width="741" height="568" alt="image" src="https://github.com/user-attachments/assets/7683944c-fd79-4417-8fb2-8e4815cc112f" />
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import { type Request } from 'express';
|
||||
import { type APP_LOCALES, SOURCE_LOCALE } from 'twenty-shared/translations';
|
||||
|
||||
import { type AuthContext } from 'src/engine/core-modules/auth/types/auth-context.type';
|
||||
|
||||
export const bindDataToRequestObject = (
|
||||
data: AuthContext,
|
||||
request: Request,
|
||||
metadataVersion: number | undefined,
|
||||
) => {
|
||||
request.user = data.user;
|
||||
request.apiKey = data.apiKey;
|
||||
request.application = data.application;
|
||||
request.userWorkspace = data.userWorkspace;
|
||||
request.workspace = data.workspace;
|
||||
request.workspaceId = data.workspace?.id;
|
||||
request.workspaceMetadataVersion = metadataVersion;
|
||||
request.workspaceMemberId = data.workspaceMemberId;
|
||||
request.userWorkspaceId = data.userWorkspaceId;
|
||||
request.authProvider = data.authProvider;
|
||||
request.impersonationContext = data.impersonationContext;
|
||||
|
||||
request.locale =
|
||||
data.userWorkspace?.locale ??
|
||||
(request.headers['x-locale'] as keyof typeof APP_LOCALES) ??
|
||||
SOURCE_LOCALE;
|
||||
};
|
||||
Reference in New Issue
Block a user