import type { CapacitorConfig } from '@capacitor/cli';

// Live reload configuration
// Set CAPACITOR_LIVE_RELOAD=true and CAPACITOR_SERVER_URL to enable
const isLiveReload = false; // process.env.CAPACITOR_LIVE_RELOAD === 'true';
const serverUrl = process.env.CAPACITOR_SERVER_URL || 'http://192.168.1.100:5000';

const config: CapacitorConfig = {
  appId: 'com.aethex.os',
  appName: 'AeThex OS',
  webDir: 'dist/public',
  server: {
    // androidScheme: 'http', // Disable explicit http scheme, let it fall back to file or default
    url: undefined, // Ensure no server URL is set
    cleartext: true,
  },
  plugins: {
    SplashScreen: {
      launchShowDuration: 0,
      launchAutoHide: true,
      backgroundColor: '#000000',
      splashFullScreen: true,
      splashImmersive: true
    },
    StatusBar: {
      style: 'DARK',
      backgroundColor: '#00000000',
      overlaysWebView: true
    },
    App: {
      backButtonEnabled: true
    },
    PushNotifications: {
      presentationOptions: ['badge', 'sound', 'alert']
    },
    LocalNotifications: {
      smallIcon: 'ic_stat_icon_config_sample',
      iconColor: '#DC2626',
      sound: 'beep.wav'
    },
    Keyboard: {
      resize: 'body',
      resizeOnFullScreen: true,
      style: 'dark'
    },
    Haptics: {
      selectionStart: true,
      selectionChanged: true,
      selectionEnd: true
    }
  },
  android: {
    allowMixedContent: true,
    captureInput: true,
    webContentsDebuggingEnabled: true,
    // Allow cleartext (HTTP) for live reload
    ...(isLiveReload ? {
      allowMixedContent: true,
    } : {}),
  },
  ios: {
    // iOS-specific live reload settings
    ...(isLiveReload ? {
      limitsNavigationsToAppBoundDomains: false,
    } : {}),
  },
};

export default config;
