fix: corrige erros de sintaxe ES6 - tudo para IIFE

- Converte logger.js para IIFE (remove export)
- Converte state.js para IIFE (remove export)
- Remove imports de app.js
- Corrige referências aos scripts de teste removidos
- Adiciona scripts de teste corretos
This commit is contained in:
2026-04-03 21:42:51 +00:00
parent 0d8797c80c
commit 6af3492815
4 changed files with 172 additions and 167 deletions

View File

@@ -557,6 +557,7 @@
<!-- Utils (global) -->
<script src="/js/utils/logger.js"></script>
<script src="/js/core/state.js"></script>
<!-- Main app (legacy - mantido para compatibilidade) -->
<script src="/app.js"></script>
@@ -612,11 +613,9 @@
<script src="/js/core/backup-manager.js"></script>
<script src="/js/ui/toast-manager.js"></script>
<!-- Sistema de Teste de Persistência -->
<script src="/js/tests/test-persistencia.js"></script>
<script src="/js/tests/test-persistencia-simples.js"></script>
<script src="/js/tests/verificador-persistencia.js"></script>
<script src="/js/tests/teste-manual-disponibilidade.js"></script>
<!-- Test Suite -->
<script src="/js/tests/test-backup-log.js"></script>
<script src="/js/tests/test-suite.js"></script>
<!-- Menu Mobile (Hamburger no topbar, sidebar dropdown) -->
<script type="module" src="/js/ui/mobile-menu.js"></script>

View File

@@ -6,17 +6,7 @@
// Logger disponível globalmente (carregado antes em logger.js)
// Usar window.Logger.info('mensagem') para logs controlados
// Import state from modules (userPreferences only - appState is still global for legacy)
import { userPreferences, loadPreferences, savePreferences, adminConfig } from './js/core/state.js';
// Make available globally for legacy code
window.userPreferences = userPreferences;
window.loadPreferences = loadPreferences;
window.savePreferences = savePreferences;
window.adminConfig = adminConfig;
// In-memory data storage (legacy - still global for compatibility)
const appState = {
// State e config disponíveis globalmente via script state.js (carregado antes)
// ========================================
// CSV MAPPING AND LOADING FUNCTIONS v6.6

View File

@@ -4,7 +4,7 @@
*/
// Main application state
export const appState = {
var appState = {
history: [],
favorites: [],
budgetItems: [],
@@ -15,7 +15,7 @@ export const appState = {
};
// User preferences (persisted to localStorage)
export let userPreferences = {
var userPreferences = {
theme: 'dark',
colorScheme: 'default',
fontSize: 'medium',
@@ -23,31 +23,36 @@ export let userPreferences = {
};
// Load preferences from localStorage
export function loadPreferences() {
function loadPreferences() {
try {
const saved = localStorage.getItem('acoCalcPreferences');
var saved = localStorage.getItem('acoCalcPreferences');
if (saved) {
userPreferences = { ...userPreferences, ...JSON.parse(saved) };
var parsed = JSON.parse(saved);
for (var key in parsed) {
if (parsed.hasOwnProperty(key)) {
userPreferences[key] = parsed[key];
}
}
}
} catch (e) {
console.warn('Não foi possível carregar preferências:', e);
console.warn('Nao foi possivel carregar preferencias:', e);
}
}
// Save preferences to localStorage
export function savePreferences() {
function savePreferences() {
try {
localStorage.setItem('acoCalcPreferences', JSON.stringify(userPreferences));
} catch (e) {
console.warn('Não foi possível salvar preferências:', e);
console.warn('Nao foi possivel salvar preferencias:', e);
}
}
// Admin configuration
export const adminConfig = {
var adminConfig = {
appName: 'SteelBase',
appSubtitle: 'Plataforma Técnica com Base de Dados de Materiais Brasileiros',
footerText: '© 2025 SteelBase v7.5 PROFESSIONAL EDITION - Plataforma Técnica com Base de Dados de Materiais Brasileiros',
appSubtitle: 'Plataforma Tecnica com Base de Dados de Materiais Brasileiros',
footerText: '© 2025 SteelBase v7.5 PROFESSIONAL EDITION - Plataforma Tecnica com Base de Dados de Materiais Brasileiros',
themeDefault: 'escuro',
modeDefault: 'simples',
toolsVisibility: {
@@ -80,7 +85,7 @@ export const adminConfig = {
* @param {string} key - State key
* @param {any} value - New value
*/
export function updateState(key, value) {
function updateState(key, value) {
appState[key] = value;
}
@@ -89,7 +94,7 @@ export function updateState(key, value) {
* @param {string} key - State key
* @returns {any} State value
*/
export function getState(key) {
function getState(key) {
return appState[key];
}
@@ -98,7 +103,7 @@ export function getState(key) {
* @param {string} key - Preference key
* @param {any} value - New value
*/
export function updatePreference(key, value) {
function updatePreference(key, value) {
userPreferences[key] = value;
}
@@ -107,7 +112,7 @@ export function updatePreference(key, value) {
* @param {string} key - Preference key
* @returns {any} Preference value
*/
export function getPreference(key) {
function getPreference(key) {
return userPreferences[key];
}
@@ -115,14 +120,14 @@ export function getPreference(key) {
* Check if localStorage is available and has space
* @returns {object} Storage status
*/
export function checkStorage() {
function checkStorage() {
try {
const testKey = '__storage_test__';
var testKey = '__storage_test__';
localStorage.setItem(testKey, testKey);
localStorage.removeItem(testKey);
let totalSize = 0;
for (let key in localStorage) {
var totalSize = 0;
for (var key in localStorage) {
if (localStorage.hasOwnProperty(key)) {
totalSize += localStorage[key].length * 2;
}
@@ -133,3 +138,15 @@ export function checkStorage() {
return { available: false, error: error.message };
}
}
// Make available globally
window.appState = appState;
window.userPreferences = userPreferences;
window.loadPreferences = loadPreferences;
window.savePreferences = savePreferences;
window.adminConfig = adminConfig;
window.updateState = updateState;
window.getState = getState;
window.updatePreference = updatePreference;
window.getPreference = getPreference;
window.checkStorage = checkStorage;

View File

@@ -2,15 +2,15 @@
* Logger com níveis de debug
* Substitui console.log dispersos pelo código
*/
const Logger = (function() {
const LEVELS = {
var Logger = (function() {
var LEVELS = {
debug: 0,
info: 1,
warn: 2,
error: 3
};
let currentLevel = LEVELS.info;
var currentLevel = LEVELS.info;
function setLevel(level) {
if (LEVELS[level] !== undefined) {
@@ -22,26 +22,26 @@ const Logger = (function() {
return LEVELS[level] >= currentLevel;
}
function formatMessage(level, ...args) {
const timestamp = new Date().toISOString().slice(11, 19);
return `[${timestamp}] [${level.toUpperCase()}]`;
function formatMessage(level) {
var timestamp = new Date().toISOString().slice(11, 19);
return '[' + timestamp + '] [' + level.toUpperCase() + ']';
}
return {
debug: function(...args) {
if (shouldLog('debug')) console.debug(formatMessage('debug', ...args), ...args);
debug: function() {
if (shouldLog('debug')) console.debug(formatMessage('debug'), arguments);
},
info: function(...args) {
if (shouldLog('info')) console.info(formatMessage('info', ...args), ...args);
info: function() {
if (shouldLog('info')) console.info(formatMessage('info'), arguments);
},
warn: function(...args) {
if (shouldLog('warn')) console.warn(formatMessage('warn', ...args), ...args);
warn: function() {
if (shouldLog('warn')) console.warn(formatMessage('warn'), arguments);
},
error: function(...args) {
if (shouldLog('error')) console.error(formatMessage('error', ...args), ...args);
error: function() {
if (shouldLog('error')) console.error(formatMessage('error'), arguments);
},
setLevel: setLevel,
@@ -57,4 +57,3 @@ const Logger = (function() {
})();
window.Logger = Logger;
export default Logger;