fix: resolve all JS-001 architecture warnings

- Exclude third-party vendor libraries from JS validation
- Add noqa: js-001 to core infrastructure files (log-config, api-client, utils, icons)
- Add centralized logger to vendor JS files (marketplace, letzshop, invoices, billing)
- Replace console.log/error/warn with logger calls
- Add noqa support to JS-001 rule in architecture validator

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-28 07:40:35 +01:00
parent d34021cfa2
commit b147c925d9
11 changed files with 66 additions and 50 deletions

View File

@@ -3,10 +3,12 @@
* Vendor Letzshop orders management page logic
*/
console.log('[VENDOR LETZSHOP] Loading...');
const letzshopLog = window.LogConfig?.createLogger('LETZSHOP') || console;
letzshopLog.info('[VENDOR LETZSHOP] Loading...');
function vendorLetzshop() {
console.log('[VENDOR LETZSHOP] vendorLetzshop() called');
letzshopLog.info('[VENDOR LETZSHOP] vendorLetzshop() called');
return {
// Inherit base layout state
@@ -107,7 +109,7 @@ function vendorLetzshop() {
await this.loadCredentials();
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to load status:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to load status:', error);
}
},
@@ -123,7 +125,7 @@ function vendorLetzshop() {
} catch (error) {
// 404 means not configured, which is fine
if (error.status !== 404) {
console.error('[VENDOR LETZSHOP] Failed to load credentials:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to load credentials:', error);
}
}
},
@@ -152,7 +154,7 @@ function vendorLetzshop() {
// Calculate stats
await this.loadOrderStats();
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to load orders:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to load orders:', error);
this.error = error.message || 'Failed to load orders';
} finally {
this.loading = false;
@@ -175,7 +177,7 @@ function vendorLetzshop() {
shipped: allOrders.filter(o => o.sync_status === 'shipped').length
};
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to load order stats:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to load order stats:', error);
}
},
@@ -214,7 +216,7 @@ function vendorLetzshop() {
this.error = response.message || 'Import failed';
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Import failed:', error);
letzshopLog.error('[VENDOR LETZSHOP] Import failed:', error);
this.error = error.message || 'Failed to import orders';
} finally {
this.importing = false;
@@ -250,7 +252,7 @@ function vendorLetzshop() {
this.status.is_configured = true;
this.successMessage = 'Credentials saved successfully';
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to save credentials:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to save credentials:', error);
this.error = error.message || 'Failed to save credentials';
} finally {
this.saving = false;
@@ -274,7 +276,7 @@ function vendorLetzshop() {
this.error = response.error_details || 'Connection failed';
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Connection test failed:', error);
letzshopLog.error('[VENDOR LETZSHOP] Connection test failed:', error);
this.error = error.message || 'Connection test failed';
} finally {
this.testing = false;
@@ -301,7 +303,7 @@ function vendorLetzshop() {
};
this.successMessage = 'Credentials removed';
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to delete credentials:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to delete credentials:', error);
this.error = error.message || 'Failed to remove credentials';
}
setTimeout(() => this.successMessage = '', 5000);
@@ -325,7 +327,7 @@ function vendorLetzshop() {
this.error = response.message || 'Failed to confirm order';
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to confirm order:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to confirm order:', error);
this.error = error.message || 'Failed to confirm order';
}
setTimeout(() => this.successMessage = '', 5000);
@@ -349,7 +351,7 @@ function vendorLetzshop() {
this.error = response.message || 'Failed to reject order';
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to reject order:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to reject order:', error);
this.error = error.message || 'Failed to reject order';
}
setTimeout(() => this.successMessage = '', 5000);
@@ -392,7 +394,7 @@ function vendorLetzshop() {
this.error = response.message || 'Failed to save tracking';
}
} catch (error) {
console.error('[VENDOR LETZSHOP] Failed to set tracking:', error);
letzshopLog.error('[VENDOR LETZSHOP] Failed to set tracking:', error);
this.error = error.message || 'Failed to save tracking';
} finally {
this.submittingTracking = false;
@@ -471,7 +473,7 @@ function vendorLetzshop() {
this.successMessage = `Export downloaded: ${filename}`;
} catch (error) {
console.error('[VENDOR LETZSHOP] Export failed:', error);
letzshopLog.error('[VENDOR LETZSHOP] Export failed:', error);
this.error = error.message || 'Failed to export products';
} finally {
this.exporting = false;