fix: resolve architecture validation warnings
- Replace window.apiClient with apiClient in feature-store.js (JS-002) - Replace window.apiClient with apiClient in upgrade-prompts.js (JS-002) - Replace inline SVGs with $icon() helper in features.html (FE-002) - Add check-circle-filled icon to icons.js Architecture validation now passes with 0 errors, 0 warnings. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -80,7 +80,7 @@
|
||||
this.error = null;
|
||||
|
||||
// Fetch available features (lightweight endpoint)
|
||||
const response = await window.apiClient.get('/vendor/features/available');
|
||||
const response = await apiClient.get('/vendor/features/available');
|
||||
|
||||
this.features = response.features || [];
|
||||
this.tierCode = response.tier_code;
|
||||
@@ -108,7 +108,7 @@
|
||||
if (!vendorCode) return;
|
||||
|
||||
try {
|
||||
const response = await window.apiClient.get('/vendor/features');
|
||||
const response = await apiClient.get('/vendor/features');
|
||||
|
||||
// Build map for quick lookup
|
||||
this.featuresMap = {};
|
||||
|
||||
@@ -137,6 +137,7 @@ const Icons = {
|
||||
// Testing & QA Icons
|
||||
'clipboard-list': `<svg class="{{classes}}" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"/></svg>`,
|
||||
'check-circle': `<svg class="{{classes}}" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"/></svg>`,
|
||||
'check-circle-filled': `<svg class="{{classes}}" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/></svg>`,
|
||||
'x-circle': `<svg class="{{classes}}" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"/></svg>`,
|
||||
'ban': `<svg class="{{classes}}" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728A9 9 0 015.636 5.636m12.728 12.728L5.636 5.636"/></svg>`,
|
||||
'lightning-bolt': `<svg class="{{classes}}" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"/></svg>`,
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
this.loading = true;
|
||||
this.error = null;
|
||||
|
||||
const response = await window.apiClient.get('/vendor/usage');
|
||||
const response = await apiClient.get('/vendor/usage');
|
||||
this.usage = response;
|
||||
this.loaded = true;
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
*/
|
||||
async checkLimitAndProceed(limitType, onSuccess) {
|
||||
try {
|
||||
const response = await window.apiClient.get(`/vendor/usage/check/${limitType}`);
|
||||
const response = await apiClient.get(`/vendor/usage/check/${limitType}`);
|
||||
|
||||
if (response.can_proceed) {
|
||||
if (typeof onSuccess === 'function') {
|
||||
|
||||
Reference in New Issue
Block a user