name: RiotNSE

schemes:
  RiotNSE:
    analyze:
      config: Debug
    archive:
      config: Release
    build:
      targets:
        RiotNSE:
        - running
        - testing
        - profiling
        - analyzing
        - archiving
    profile:
      config: Release
    run:
      askForAppToLaunch: true
      config: Debug
      debugEnabled: false
      disableMainThreadChecker: true
      launchAutomaticallySubstyle: 2
    test:
      config: Debug
      disableMainThreadChecker: true

targets:
  RiotNSE:
    platform: iOS
    type: app-extension

    dependencies:
    - package: AnalyticsEvents
    - package: DeviceKit
    - package: DTCoreText

    configFiles:
      Debug: Debug.xcconfig
      Release: Release.xcconfig

    sources: 
    - path: .
    - path: ../bwi/AppConfig
    - path: ../bwi/ServerURLs
    - path: ../bwi/SecureStorage
    - path: ../bwi/Mentions/Mentions.swift
    - path: ../bwi/NotificationTimes/NotificationTimes.swift
    - path: ../bwi/NotificationTimes/NotificationTimesRoomSettings.swift
    - path: ../bwi/NotificationTimes/NotificationTimesWeekday.swift
    - path: ../bwi/NotificationTimes/Date+fromHourMinute.swift
    - path: ../bwi/MatomoAnalytics/BWIAnalytics.swift
    - path: ../bwi/MatomoAnalytics/BWIAnalyticsAccountDataService.swift
    - path: ../bwi/MatomoAnalytics/AnalyticsConfiguration.swift
    - path: ../bwi/MatomoAnalytics/E2EEError.swift
    - path: ../Riot/Managers/Settings/RiotSettings.swift
    - path: ../Config/BuildSettings.swift
    - path: ../Config/BWIBuildSettings.swift
    - path: ../Config/BuM/BWIBuildSettings+BuM.swift
    - path: ../bwi/UserAgent/UserAgentService.swift
    - path: ../bwi/LoginProtection/LoginProtectionService.swift
    - path: ../Riot/Utils/DataProtectionHelper.swift
    - path: ../Config/CommonConfiguration.swift
    - path: ../Riot/Experiments/
    - path: ../Riot/Managers/PushNotification/PushNotificationStore.swift
    - path: ../Riot/Modules/SetPinCode/PinCodePreferences.swift
    - path: ../Riot/Modules/SetPinCode/SetupBiometrics/BiometricsAuthenticationPresenter.swift
    - path: ../Riot/Categories/UNUserNotificationCenter.swift
    - path: ../Riot/Managers/Locale/LocaleProvider.swift
    - path: ../Riot/Managers/Locale/LocaleProviderType.swift
    - path: ../Riot/Managers/EncryptionKeyManager/EncryptionKeyManager.swift
    - path: ../Riot/Managers/Serialization/SerializationService.swift
    - path: ../Riot/Managers/Serialization/SerializationServiceType.swift
    - path: ../Riot/Categories/Bundle.swift
    - path: ../Riot/Categories/MXEvent.swift
    - path: ../Riot/Generated/Strings.swift
    - path: ../Riot/Generated/BWIStrings.swift
    - path: ../Riot/Generated/Images.swift
    - path: ../Riot/Managers/LocalAuthentication/LocalAuthenticationService.swift
    - path: ../Config/Configurable.swift
    - path: ../Riot/Utils/Constants.swift
    - path: ../Riot/Utils/HTMLFormatter.swift
    - path: ../Riot/Categories/String.swift
    - path: ../Riot/Categories/Character.swift
    - path: ../Riot/Managers/Widgets/WidgetConstants.m
    - path: ../Riot/PropertyWrappers/UserDefaultsBackedPropertyWrapper.swift
    - path: ../Riot/Modules/MatrixKit
      excludes:
        - "Controllers/**"
        - "Models/*List/**"
        - "Views/**"
        
    - path: ../Riot/Modules/Analytics
    - path: ../Riot/Managers/UserSessions
    - path: ../Riot/Managers/AppInfo/
      excludes:
        - "**/*.md" # excludes all files with the .md extension
    - path: ../Riot/Modules/Room/TimelineCells/Styles/RoomTimelineStyleIdentifier.swift
    - path: ../Riot/Modules/VoiceBroadcast/VoiceBroadcastSDK/MatrixSDK
    - path: ../Riot/Managers/Theme
    - path: ../Riot/Categories/UIColor.swift
