fix(ihm_client): imports ESM explicites vers pkg/sdk_client.js et chemins relatifs
All checks were successful
Build and Push Docker image (ext) / docker (push) Successful in 50s

This commit is contained in:
4NK CI Bot 2025-09-18 15:58:44 +00:00
parent e76f2e1db9
commit 1c20450b05
10 changed files with 48 additions and 48 deletions

View File

@ -1,4 +1,4 @@
import { Device, Process, SecretsStore } from "pkg/sdk_client";
import { Device, Process, SecretsStore } from "../pkg/sdk_client.js";
export interface BackUp {
device: Device,

View File

@ -1,4 +1,4 @@
import { ProcessState } from '../../../pkg/sdk_client';
import { ProcessState } from '../../../pkg/sdk_client.js';
import Services from '../../services/service';
interface State {

View File

@ -1,4 +1,4 @@
import { ValidationRule, RoleDefinition } from '../../../pkg/sdk_client';
import { ValidationRule, RoleDefinition } from '../../../pkg/sdk_client.js';
import { showValidationRuleModal } from '../../components/validation-rule-modal/validation-rule-modal';
export function createKeyValueSection(title: string, id: string, isRoleSection = false) {

View File

@ -1,7 +1,7 @@
import { createKeyValueSection } from './key-value-section';
import { loadValidationRuleModal } from '../../components/validation-rule-modal/validation-rule-modal';
import Services from '../../services/service';
import { RoleDefinition } from '../../../pkg/sdk_client';
import { RoleDefinition } from '../../../pkg/sdk_client.js';
export async function getProcessCreation(container: HTMLElement) {
await loadValidationRuleModal();

View File

@ -5,7 +5,7 @@
}
import { membersMock } from '../../mocks/mock-signature/membersMocks';
import { ApiReturn, Device, Member, Process, RoleDefinition } from '../../../pkg/sdk_client';
import { ApiReturn, Device, Member, Process, RoleDefinition } from '../../../pkg/sdk_client.js';
import { getCorrectDOM } from '../../utils/document.utils';
import chatStyle from '../../../public/style/chat.css?inline';
import { addressToEmoji } from '../../utils/sp-address.utils';

View File

@ -1,6 +1,6 @@
import { interpolate } from '../../utils/html.utils';
import Services from '../../services/service';
import { Process } from 'pkg/sdk_client';
import { Process } from '../../pkg/sdk_client.js';
import { getCorrectDOM } from '~/utils/document.utils';
let currentPageStyle: HTMLStyleElement | null = null;

View File

@ -10,7 +10,7 @@ import { prepareAndSendPairingTx } from './utils/sp-address.utils';
import ModalService from './services/modal.service';
import { MessageType } from './models/process.model';
import { splitPrivateData, isValid32ByteHex } from './utils/service.utils';
import { MerkleProofResult } from 'pkg/sdk_client.js';
import { MerkleProofResult } from '../pkg/sdk_client.js';
const routes: { [key: string]: string } = {
home: '/src/pages/home/home.html',
@ -148,7 +148,7 @@ export async function init(): Promise<void> {
} else {
services.restoreDevice(device);
}
// If we create a new device, we most probably don't have anything in db, but just in case
await services.restoreProcessesFromDB();
await services.restoreSecretsFromDB();
@ -176,10 +176,10 @@ export async function registerAllListeners() {
const services = await Services.getInstance();
const tokenService = await TokenService.getInstance();
const errorResponse = (errorMsg: string, origin: string, messageId?: string) => {
const errorResponse = (errorMsg: string, origin: string, messageId?: string) => {
window.parent.postMessage(
{
type: MessageType.ERROR,
{
type: MessageType.ERROR,
error: errorMsg,
messageId
},
@ -213,9 +213,9 @@ export async function registerAllListeners() {
}
try {
const tokens = await tokenService.generateSessionToken(event.origin);
const tokens = await tokenService.generateSessionToken(event.origin);
const acceptedMsg = {
type: MessageType.LINK_ACCEPTED,
type: MessageType.LINK_ACCEPTED,
accessToken: tokens.accessToken,
refreshToken: tokens.refreshToken,
messageId: event.data.messageId
@ -262,7 +262,7 @@ export async function registerAllListeners() {
await services.handleApiReturn(approveChangeReturn);
await services.confirmPairing();
// Send success response
const successMsg = {
type: MessageType.PAIRING_CREATED,
@ -295,9 +295,9 @@ export async function registerAllListeners() {
}
const myProcesses = await services.getMyProcesses();
window.parent.postMessage(
{
{
type: MessageType.GET_MY_PROCESSES,
myProcesses,
messageId: event.data.messageId
@ -308,8 +308,8 @@ export async function registerAllListeners() {
const errorMsg = `Failed to get processes: ${e}`;
errorResponse(errorMsg, event.origin, event.data.messageId);
}
}
}
const handleGetProcesses = async (event: MessageEvent) => {
if (event.data.type !== MessageType.GET_PROCESSES) {
return;
@ -332,9 +332,9 @@ export async function registerAllListeners() {
}
const processes = await services.getProcesses();
window.parent.postMessage(
{
{
type: MessageType.PROCESSES_RETRIEVED,
processes,
messageId: event.data.messageId
@ -345,7 +345,7 @@ export async function registerAllListeners() {
const errorMsg = `Failed to get processes: ${e}`;
errorResponse(errorMsg, event.origin, event.data.messageId);
}
}
}
/// We got a state for some process and return as many clear attributes as we can
const handleDecryptState = async (event: MessageEvent) => {
@ -393,7 +393,7 @@ export async function registerAllListeners() {
}
window.parent.postMessage(
{
{
type: MessageType.DATA_RETRIEVED,
data: res,
messageId: event.data.messageId
@ -435,23 +435,23 @@ export async function registerAllListeners() {
if (event.data.type !== MessageType.RENEW_TOKEN) {
return;
}
try {
const refreshToken = event.data.refreshToken;
if (!refreshToken) {
throw new Error('No refresh token provided');
}
const newAccessToken = await tokenService.refreshAccessToken(refreshToken, event.origin);
if (!newAccessToken) {
throw new Error('Failed to refresh token');
}
window.parent.postMessage(
{
type: MessageType.RENEW_TOKEN,
{
type: MessageType.RENEW_TOKEN,
accessToken: newAccessToken,
refreshToken: refreshToken,
messageId: event.data.messageId
@ -481,9 +481,9 @@ export async function registerAllListeners() {
}
const userPairingId = services.getPairingProcessId();
window.parent.postMessage(
{
{
type: MessageType.GET_PAIRING_ID,
userPairingId,
messageId: event.data.messageId
@ -530,7 +530,7 @@ export async function registerAllListeners() {
}
window.parent.postMessage(
{
{
type: MessageType.PROCESS_CREATED,
processCreated: res,
messageId: event.data.messageId
@ -567,7 +567,7 @@ export async function registerAllListeners() {
await services.handleApiReturn(res);
window.parent.postMessage(
{
{
type: MessageType.UPDATE_NOTIFIED,
messageId: event.data.messageId
},
@ -599,7 +599,7 @@ export async function registerAllListeners() {
await services.handleApiReturn(res);
window.parent.postMessage(
{
{
type: MessageType.STATE_VALIDATED,
validatedProcess: res.updated_process,
messageId: event.data.messageId
@ -611,7 +611,7 @@ export async function registerAllListeners() {
errorResponse(errorMsg, event.origin, event.data.messageId);
}
}
const handleUpdateProcess = async (event: MessageEvent) => {
if (event.data.type !== MessageType.UPDATE_PROCESS) return;
@ -703,12 +703,12 @@ export async function registerAllListeners() {
}
// We'll let the wasm check if roles are consistent
const res = await services.updateProcess(process, privateData, publicData, roles);
await services.handleApiReturn(res);
window.parent.postMessage(
{
{
type: MessageType.PROCESS_UPDATED,
updatedProcess: res.updated_process,
messageId: event.data.messageId
@ -736,11 +736,11 @@ export async function registerAllListeners() {
if (!accessToken || !(await tokenService.validateToken(accessToken, event.origin))) {
throw new Error('Invalid or expired session token');
}
const decodedData = services.decodeValue(encodedData);
window.parent.postMessage(
{
{
type: MessageType.PUBLIC_DATA_DECODED,
decodedData,
messageId: event.data.messageId
@ -764,11 +764,11 @@ export async function registerAllListeners() {
if (!accessToken || !(await tokenService.validateToken(accessToken, event.origin))) {
throw new Error('Invalid or expired session token');
}
const hash = services.getHashForFile(commitedIn, label, fileBlob);
window.parent.postMessage(
{
{
type: MessageType.VALUE_HASHED,
hash,
messageId: event.data.messageId
@ -794,7 +794,7 @@ export async function registerAllListeners() {
const proof = services.getMerkleProofForFile(processState, attributeName);
window.parent.postMessage(
{
{
type: MessageType.MERKLE_PROOF_RETRIEVED,
proof,
messageId: event.data.messageId
@ -829,7 +829,7 @@ export async function registerAllListeners() {
const res = services.validateMerkleProof(parsedMerkleProof, documentHash);
window.parent.postMessage(
{
{
type: MessageType.MERKLE_PROOF_VALIDATED,
isValid: res,
messageId: event.data.messageId
@ -939,9 +939,9 @@ document.addEventListener('navigate', ((e: Event) => {
if (event.detail.page === 'chat') {
const container = document.querySelector('.container');
if (container) container.innerHTML = '';
//initChat();
const chatElement = document.querySelector('chat-element');
if (chatElement) {
chatElement.setAttribute('process-id', event.detail.processId || '');

View File

@ -4,7 +4,7 @@ import validationModalStyle from '../components/validation-modal/validation-moda
import Services from './service';
import { init, navigate } from '../router';
import { addressToEmoji } from '../utils/sp-address.utils';
import { RoleDefinition } from 'pkg/sdk_client';
import { RoleDefinition } from '../pkg/sdk_client.js';
import { initValidationModal } from '~/components/validation-modal/validation-modal';
import { interpolate } from '~/utils/html.utils';

View File

@ -58,7 +58,7 @@ export default class Services {
public async init(): Promise<void> {
this.notifications = this.getNotifications();
// SDK is now imported as ES module at the top of the file
// SDK ES module est déjà importé statiquement si nécessaire
this.sdkClient = await import('../../pkg/sdk_client.js');
this.sdkClient.setup();
for (const wsurl of Object.values(BOOTSTRAPURL)) {

View File

@ -1,4 +1,4 @@
import { AnkFlag } from 'pkg/sdk_client';
import { AnkFlag } from '../pkg/sdk_client.js';
import Services from './services/service';
let ws: WebSocket;