Some checks failed
CI/CD Pipeline - Xpeditis PreProd / Backend - Build & Test (push) Failing after 5m53s
CI/CD Pipeline - Xpeditis PreProd / Backend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Frontend - Build & Test (push) Successful in 10m59s
CI/CD Pipeline - Xpeditis PreProd / Frontend - Docker Build & Push (push) Failing after 9m47s
CI/CD Pipeline - Xpeditis PreProd / Deploy to PreProd Server (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Run Smoke Tests (push) Has been skipped
103 lines
4.7 KiB
JavaScript
103 lines
4.7 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Script to fix relative imports to domain/ports/out
|
|
* Replaces ../../domain/ports/out/ with @domain/ports/out/
|
|
* Replaces ../../../domain/ports/out/ with @domain/ports/out/
|
|
*/
|
|
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
const files = [
|
|
'apps/backend/src/infrastructure/pdf/pdf.adapter.ts',
|
|
'apps/backend/src/infrastructure/carriers/base-carrier.connector.ts',
|
|
'apps/backend/src/infrastructure/storage/s3-storage.adapter.ts',
|
|
'apps/backend/src/application/services/csv-booking.service.ts',
|
|
'apps/backend/src/infrastructure/storage/storage.module.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-webhook.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-user.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-rate-quote.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-port.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-organization.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-notification.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-carrier.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-booking.repository.ts',
|
|
'apps/backend/src/infrastructure/persistence/typeorm/repositories/typeorm-audit-log.repository.ts',
|
|
'apps/backend/src/infrastructure/pdf/pdf.module.ts',
|
|
'apps/backend/src/infrastructure/email/email.module.ts',
|
|
'apps/backend/src/infrastructure/email/email.adapter.ts',
|
|
'apps/backend/src/infrastructure/carriers/one/one.mapper.ts',
|
|
'apps/backend/src/infrastructure/carriers/one/one.connector.ts',
|
|
'apps/backend/src/infrastructure/carriers/msc/msc.mapper.ts',
|
|
'apps/backend/src/infrastructure/carriers/msc/msc.connector.ts',
|
|
'apps/backend/src/infrastructure/carriers/maersk/maersk.connector.ts',
|
|
'apps/backend/src/infrastructure/carriers/maersk/maersk-request.mapper.ts',
|
|
'apps/backend/src/infrastructure/carriers/hapag-lloyd/hapag-lloyd.mapper.ts',
|
|
'apps/backend/src/infrastructure/carriers/hapag-lloyd/hapag-lloyd.connector.ts',
|
|
'apps/backend/src/infrastructure/carriers/cma-cgm/cma-cgm.mapper.ts',
|
|
'apps/backend/src/infrastructure/carriers/cma-cgm/cma-cgm.connector.ts',
|
|
'apps/backend/src/infrastructure/cache/redis-cache.adapter.ts',
|
|
'apps/backend/src/infrastructure/cache/cache.module.ts',
|
|
'apps/backend/src/application/webhooks/webhooks.module.ts',
|
|
'apps/backend/src/application/users/users.module.ts',
|
|
'apps/backend/src/application/services/webhook.service.ts',
|
|
'apps/backend/src/application/services/notification.service.ts',
|
|
'apps/backend/src/application/services/booking-automation.service.ts',
|
|
'apps/backend/src/application/services/audit.service.ts',
|
|
'apps/backend/src/application/services/analytics.service.ts',
|
|
'apps/backend/src/application/rates/rates.module.ts',
|
|
'apps/backend/src/application/organizations/organizations.module.ts',
|
|
'apps/backend/src/application/notifications/notifications.module.ts',
|
|
'apps/backend/src/application/controllers/users.controller.ts',
|
|
'apps/backend/src/application/controllers/organizations.controller.ts',
|
|
'apps/backend/src/application/controllers/bookings.controller.ts',
|
|
'apps/backend/src/application/controllers/auth.controller.ts',
|
|
'apps/backend/src/application/bookings/bookings.module.ts',
|
|
'apps/backend/src/application/auth/auth.service.ts',
|
|
'apps/backend/src/application/auth/auth.module.ts',
|
|
'apps/backend/src/application/audit/audit.module.ts',
|
|
];
|
|
|
|
let totalReplacements = 0;
|
|
|
|
files.forEach((filePath) => {
|
|
const fullPath = path.join(__dirname, filePath);
|
|
|
|
if (!fs.existsSync(fullPath)) {
|
|
console.log(`⚠️ File not found: ${filePath}`);
|
|
return;
|
|
}
|
|
|
|
let content = fs.readFileSync(fullPath, 'utf-8');
|
|
const originalContent = content;
|
|
|
|
// Replace ../../../../domain/ports/out/ with @domain/ports/out/
|
|
content = content.replace(
|
|
/from ['"]\.\.\/\.\.\/\.\.\/\.\.\/domain\/ports\/out\//g,
|
|
"from '@domain/ports/out/"
|
|
);
|
|
|
|
// Replace ../../../domain/ports/out/ with @domain/ports/out/
|
|
content = content.replace(
|
|
/from ['"]\.\.\/\.\.\/\.\.\/domain\/ports\/out\//g,
|
|
"from '@domain/ports/out/"
|
|
);
|
|
|
|
// Replace ../../domain/ports/out/ with @domain/ports/out/
|
|
content = content.replace(
|
|
/from ['"]\.\.\/\.\.\/domain\/ports\/out\//g,
|
|
"from '@domain/ports/out/"
|
|
);
|
|
|
|
if (content !== originalContent) {
|
|
fs.writeFileSync(fullPath, content, 'utf-8');
|
|
totalReplacements++;
|
|
console.log(`✅ Fixed: ${filePath}`);
|
|
} else {
|
|
console.log(`⏭️ No changes: ${filePath}`);
|
|
}
|
|
});
|
|
|
|
console.log(`\n✨ Done! Fixed ${totalReplacements} files.`);
|