import * as SASjsModule from '@sasjs/adapter' const SASjsImport = (SASjsModule as any).default || SASjsModule const SASjs = SASjsImport.default import { appContext } from './core/AppContext' import { type ConfigWithCredentials, loadConfig } from './config/loader' import type { TestSuite } from './types' // Import custom elements (this registers them) import './components/LoginForm' import './components/TestCard' import './components/TestSuite' import './components/TestsView' import './components/RequestsModal' import type { LoginForm } from './components/LoginForm' import type { TestsView } from './components/TestsView' import type { RequestsModal } from './components/RequestsModal' // Import test suites import { basicTests } from './testSuites/Basic' import { sendArrTests, sendObjTests } from './testSuites/RequestData' import { fileUploadTests } from './testSuites/FileUpload' import { computeTests } from './testSuites/Compute' import { sasjsRequestTests } from './testSuites/SasjsRequests' async function init() { const appContainer = document.getElementById('app') if (!appContainer) { console.error('App container not found') return } try { // Load config const config = await loadConfig() // Initialize adapter const adapter = new SASjs(config.sasJsConfig) appContext.setAdapter(adapter) appContext.setConfig(config) // Check session try { const sessionResponse = await adapter.checkSession() if (sessionResponse && sessionResponse.isLoggedIn) { appContext.setIsLoggedIn(true) showTests(appContainer, adapter, config) return } } catch { console.log('No active session, showing login') } // Show login showLogin(appContainer) } catch (error) { console.error('Failed to initialize app:', error) appContainer.innerHTML = `
Failed to load configuration. Please check config.json file.
${error}