Minor fixes and refactor in router
This commit is contained in:
parent
f4d8f8652f
commit
18e82de549
@ -167,6 +167,7 @@ export async function init(): Promise<void> {
|
|||||||
|
|
||||||
export async function registerAllListeners() {
|
export async function registerAllListeners() {
|
||||||
const services = await Services.getInstance();
|
const services = await Services.getInstance();
|
||||||
|
const tokenService = await TokenService.getInstance();
|
||||||
|
|
||||||
const errorResponse = (errorMsg: string, origin: string) => {
|
const errorResponse = (errorMsg: string, origin: string) => {
|
||||||
window.parent.postMessage(
|
window.parent.postMessage(
|
||||||
@ -214,7 +215,6 @@ export async function registerAllListeners() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
const tokens = await tokenService.generateSessionToken(event.origin);
|
const tokens = await tokenService.generateSessionToken(event.origin);
|
||||||
const acceptedMsg: LinkAcceptedMessage = {
|
const acceptedMsg: LinkAcceptedMessage = {
|
||||||
type: MessageType.LINK_ACCEPTED,
|
type: MessageType.LINK_ACCEPTED,
|
||||||
@ -235,7 +235,6 @@ export async function registerAllListeners() {
|
|||||||
if (event.data.type !== MessageType.CREATE_PROFILE) {
|
if (event.data.type !== MessageType.CREATE_PROFILE) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
|
|
||||||
if (!services.isPaired()) {
|
if (!services.isPaired()) {
|
||||||
const errorMsg = 'Device not paired';
|
const errorMsg = 'Device not paired';
|
||||||
@ -244,9 +243,8 @@ export async function registerAllListeners() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { profileData, accessToken, refreshToken } = event.data;
|
const { profileData, accessToken } = event.data;
|
||||||
|
|
||||||
// Validate the session token
|
|
||||||
if (!accessToken || await !tokenService.validateToken(accessToken, event.origin)) {
|
if (!accessToken || await !tokenService.validateToken(accessToken, event.origin)) {
|
||||||
throw new Error('Invalid or expired session token');
|
throw new Error('Invalid or expired session token');
|
||||||
}
|
}
|
||||||
@ -278,8 +276,6 @@ export async function registerAllListeners() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
|
|
||||||
if (!services.isPaired()) {
|
if (!services.isPaired()) {
|
||||||
const errorMsg = 'Device not paired';
|
const errorMsg = 'Device not paired';
|
||||||
errorResponse(errorMsg, event.origin);
|
errorResponse(errorMsg, event.origin);
|
||||||
@ -289,7 +285,6 @@ export async function registerAllListeners() {
|
|||||||
try {
|
try {
|
||||||
const { accessToken } = event.data;
|
const { accessToken } = event.data;
|
||||||
|
|
||||||
// Validate the session token
|
|
||||||
if (!accessToken || await !tokenService.validateToken(accessToken, event.origin)) {
|
if (!accessToken || await !tokenService.validateToken(accessToken, event.origin)) {
|
||||||
throw new Error('Invalid or expired session token');
|
throw new Error('Invalid or expired session token');
|
||||||
}
|
}
|
||||||
@ -336,8 +331,6 @@ export async function registerAllListeners() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
|
|
||||||
if (!services.isPaired()) {
|
if (!services.isPaired()) {
|
||||||
const errorMsg = 'Device not paired';
|
const errorMsg = 'Device not paired';
|
||||||
errorResponse(errorMsg, event.origin);
|
errorResponse(errorMsg, event.origin);
|
||||||
@ -345,9 +338,9 @@ export async function registerAllListeners() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { folderData, token } = event.data;
|
const { folderData, accessToken } = event.data;
|
||||||
|
|
||||||
if (!token || await !tokenService.validateToken(token, event.origin)) {
|
if (!token || await !tokenService.validateToken(accessToken, event.origin)) {
|
||||||
throw new Error('Invalid or expired session token');
|
throw new Error('Invalid or expired session token');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -388,12 +381,15 @@ export async function registerAllListeners() {
|
|||||||
try {
|
try {
|
||||||
const { processId, stateId, token } = event.data;
|
const { processId, stateId, token } = event.data;
|
||||||
|
|
||||||
if (!token || !tokenService.validateToken(token, event.origin)) {
|
if (!token || await !tokenService.validateToken(token, event.origin)) {
|
||||||
throw new Error('Invalid or expired session token');
|
throw new Error('Invalid or expired session token');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Retrieve the state for the process
|
// Retrieve the state for the process
|
||||||
const process = await services.getProcess(processId);
|
const process = await services.getProcess(processId);
|
||||||
|
if (!process) {
|
||||||
|
throw new Error('Can\'t find process');
|
||||||
|
}
|
||||||
const state = services.getStateFromId(process, stateId);
|
const state = services.getStateFromId(process, stateId);
|
||||||
|
|
||||||
let res: Record<string, string> = {};
|
let res: Record<string, string> = {};
|
||||||
@ -428,26 +424,13 @@ export async function registerAllListeners() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('Received validate token msg');
|
|
||||||
|
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
|
|
||||||
const accessToken = event.data.accessToken;
|
const accessToken = event.data.accessToken;
|
||||||
const refreshToken = event.data.refreshToken;
|
const refreshToken = event.data.refreshToken;
|
||||||
try {
|
if (!accessToken || !refreshToken) {
|
||||||
if (!accessToken || !refreshToken) {
|
errorResponse('Failed to validate token: missing access, refresh token or both', event.origin);
|
||||||
// That's actually a different error
|
|
||||||
throw new Error('Missing access token or refresh token');
|
|
||||||
}
|
|
||||||
} catch (e) {
|
|
||||||
console.error('❌ Erreur:', e);
|
|
||||||
errorResponse(`Failed to get profile: ${e}`, event.origin);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let isValid = false;
|
const isValid = await tokenService.validateToken(accessToken, event.origin);
|
||||||
if (await tokenService.validateToken(accessToken, event.origin)) {
|
|
||||||
isValid = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
window.parent.postMessage(
|
window.parent.postMessage(
|
||||||
{
|
{
|
||||||
@ -466,7 +449,6 @@ export async function registerAllListeners() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
const refreshToken = event.data.refreshToken;
|
const refreshToken = event.data.refreshToken;
|
||||||
|
|
||||||
if (!refreshToken) {
|
if (!refreshToken) {
|
||||||
@ -496,8 +478,6 @@ export async function registerAllListeners() {
|
|||||||
const handleGetPairingId = async (event: MessageEvent) => {
|
const handleGetPairingId = async (event: MessageEvent) => {
|
||||||
if (event.data.type !== MessageType.GET_PAIRING_ID) return;
|
if (event.data.type !== MessageType.GET_PAIRING_ID) return;
|
||||||
|
|
||||||
const tokenService = await TokenService.getInstance();
|
|
||||||
|
|
||||||
if (!services.isPaired()) {
|
if (!services.isPaired()) {
|
||||||
const errorMsg = 'Device not paired';
|
const errorMsg = 'Device not paired';
|
||||||
errorResponse(errorMsg, event.origin);
|
errorResponse(errorMsg, event.origin);
|
||||||
@ -507,7 +487,6 @@ export async function registerAllListeners() {
|
|||||||
try {
|
try {
|
||||||
const { accessToken } = event.data;
|
const { accessToken } = event.data;
|
||||||
|
|
||||||
// Validate the session token
|
|
||||||
if (!accessToken || !tokenService.validateToken(accessToken, event.origin)) {
|
if (!accessToken || !tokenService.validateToken(accessToken, event.origin)) {
|
||||||
throw new Error('Invalid or expired session token');
|
throw new Error('Invalid or expired session token');
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user