diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml
index 50423a44..30d847de 100644
--- a/.github/workflows/CI.yml
+++ b/.github/workflows/CI.yml
@@ -30,7 +30,7 @@ jobs:
runs-on: macOS-latest
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - name: 🏗️ Setup l-breez repository
+ - name: 🏗️ Check-out l-breez repository
uses: actions/checkout@v4
with:
path: 'lbreez'
@@ -39,7 +39,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: 'breez/breez-sdk-liquid'
- ssh-key: ${{secrets.REPO_SSH_KEY}}
+ ssh-key: ${{ secrets.REPO_SSH_KEY }}
path: 'breez-sdk-liquid'
ref: ${{ inputs.liquid_sdk_ref }}
diff --git a/.github/workflows/build-android.yml b/.github/workflows/build-android.yml
index 001a58dd..08c5c58a 100644
--- a/.github/workflows/build-android.yml
+++ b/.github/workflows/build-android.yml
@@ -110,7 +110,7 @@ jobs:
df -hI
echo "::endgroup::"
- - name: 🏗️ Setup l-breez repository
+ - name: 🏗️ Check-out l-breez repository
uses: actions/checkout@v4
with:
path: 'lbreez'
@@ -234,12 +234,6 @@ jobs:
continue-on-error: true
run: just codegen
- - name: Generate FFI bindings
- if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
- working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- continue-on-error: true
- run: just ffigen
-
- name: 🔒 Install SSH Key
env:
SSH_PRIVATE_KEY: ${{ secrets.REPO_SSH_KEY }}
@@ -249,32 +243,22 @@ jobs:
sudo chmod 600 ~/.ssh/id_rsa
ssh-add ~/.ssh/id_rsa
- - name: 🔨 Build Breez Liquid SDK
- if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
- working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: |
- rm -rf ../../../target
- just build
-
- - name: 🔨 Build Android binaries
+ - name: 🔨 Build Breez Liquid SDK Android bindings
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just build-android
+ run: just build-uniffi-android
- - name: Copy the binaries to the needed location
+ - name: Link C Headers
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just copy-android
+ continue-on-error: true
+ run: just link-headers
- - name: 🔨 Build Breez Liquid SDK Android bindings
+ - name: Generate FFI bindings
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just build-uniffi-android
-
- - name: Use the production build.gradle
- if: ${{ needs.setup.outputs.use-published-plugins == 'true' }}
- working-directory: lbreez
- run: mv android/app/build.gradle.production android/app/build.gradle
+ continue-on-error: true
+ run: just ffigen
- name: 🗂️ Populate Flutter tool's cache of binary artifacts.
working-directory: lbreez
@@ -325,7 +309,7 @@ jobs:
name: Android-APK
path: lbreez/build/app/outputs/flutter-apk/app-*.apk
- - name: Remove Google Application Credentials file
+ - name: Cleanup Google Application Credentials
if: success() || failure()
run: |
if [ -d "lbreez" ] && [ -f "lbreez/google-application-credentials.json" ]; then
diff --git a/.github/workflows/build-ios.yml b/.github/workflows/build-ios.yml
index 779cf2b0..3687c2ef 100644
--- a/.github/workflows/build-ios.yml
+++ b/.github/workflows/build-ios.yml
@@ -87,13 +87,13 @@ jobs:
env:
SCHEME: Runner
BUILD_CONFIGURATION: Release
- TESTFLIGHT_USERNAME: ${{secrets.TESTFLIGHT_USERNAME}}
- TESTFLIGHT_PASSWORD: ${{secrets.TESTFLIGHT_PASSWORD}}
+ TESTFLIGHT_USERNAME: ${{ secrets.TESTFLIGHT_USERNAME }}
+ TESTFLIGHT_PASSWORD: ${{ secrets.TESTFLIGHT_PASSWORD }}
IOS_VERSION_STRING: 0.1.0
- DISTRIBUTION_CERT: ${{secrets.DISTRIBUTION_CERT}}
- P12_BASE64: ${{secrets.P12_BASE64}}
- P12_PASSWORD: ${{secrets.P12_PASSWORD}}
- GOOGLE_SERVICES_IOS: ${{secrets.GOOGLE_SERVICES_IOS}}
+ DISTRIBUTION_CERT: ${{ secrets.DISTRIBUTION_CERT }}
+ P12_BASE64: ${{ secrets.P12_BASE64 }}
+ P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
+ GOOGLE_SERVICES_IOS: ${{ secrets.GOOGLE_SERVICES_IOS }}
FIREBASE_PROJECT: breez-technology
FIREBASE_ANDROID_PACKAGE_NAME: com.breez.liquid.l_breez
FIREBASE_IOS_BUNDLE_ID: com.breez.liquid.lBreez
@@ -119,7 +119,7 @@ jobs:
df -hI
echo "::endgroup::"
- - name: 🏗️ Setup l-breez repository
+ - name: 🏗️ Check-out l-breez repository
uses: actions/checkout@v4
with:
path: 'lbreez'
@@ -210,15 +210,10 @@ jobs:
uses: actions/checkout@v4
with:
repository: 'breez/breez-sdk-liquid'
- ssh-key: ${{secrets.REPO_SSH_KEY}}
+ ssh-key: ${{ secrets.REPO_SSH_KEY }}
path: 'breez-sdk-liquid'
ref: ${{ needs.setup.outputs.liquid-sdk-ref }}
- - name: Use production .podspec
- if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
- working-directory: breez-sdk-liquid/packages/flutter/ios/
- run: mv flutter_breez_liquid.podspec.production flutter_breez_liquid.podspec
-
- name: 🏗️ Rust cache
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
uses: Swatinem/rust-cache@v2
@@ -244,47 +239,31 @@ jobs:
continue-on-error: true
run: just codegen
- - name: Generate FFI bindings
- if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
- working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- continue-on-error: true
- run: just ffigen
-
- name: 🔒 Install SSH Key
env:
- SSH_PRIVATE_KEY: ${{secrets.REPO_SSH_KEY}}
+ SSH_PRIVATE_KEY: ${{ secrets.REPO_SSH_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
sudo chmod 600 ~/.ssh/id_rsa
ssh-add ~/.ssh/id_rsa
- - name: 🔨 Build Breez Liquid SDK
- if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
- working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: |
- rm -rf ../../../target
- just build
-
- - name: 🔨 Build iOS binaries
+ - name: 🔨 Build Breez Liquid SDK Swift bindings
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just build-apple
+ run: just build-uniffi-swift
- - name: Copy the XCFramework to the needed location
+ - name: Link C Headers
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just copy-apple
+ continue-on-error: true
+ run: just link-headers
- - name: 🔨 Build Breez Liquid SDK Swift bindings
+ - name: Generate FFI bindings
if: ${{ needs.setup.outputs.use-published-plugins == 'false' }}
working-directory: breez-sdk-liquid/lib/bindings/langs/flutter/
- run: just build-uniffi-swift
-
- - name: Use the production Podfile
- if: ${{ needs.setup.outputs.use-published-plugins == 'true' }}
- working-directory: lbreez
- run: mv ios/Podfile.production ios/Podfile
+ continue-on-error: true
+ run: just ffigen
- name: 🗂️ Populate Flutter tool's cache of binary artifacts.
working-directory: lbreez
@@ -300,7 +279,7 @@ jobs:
- name: ⚙️ Setup compile-time variables
env:
- CONFIG_FILE: ${{secrets.CONFIG_FILE}}
+ CONFIG_FILE: ${{ secrets.CONFIG_FILE }}
run: echo "$CONFIG_FILE" > ./lbreez/config.json
- name: 📝 Install the Provisioning Profile
@@ -425,7 +404,7 @@ jobs:
ipa="$PWD/lbreez/build-output/ios/l_breez.ipa"
"$altool" --upload-app --type ios --file "$ipa" --username $TESTFLIGHT_USERNAME --password $TESTFLIGHT_PASSWORD
- - name: Remove Google Application Credentials file
+ - name: Cleanup Google Application Credentials
if: success() || failure()
run: |
if [ -d "lbreez" ] && [ -f "lbreez/google-application-credentials.json" ]; then
diff --git a/.gitignore b/.gitignore
index 88c0bd7d..7682c585 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,6 +30,7 @@ migrate_working_dir/
.pub-cache/
.pub/
/build/
+/build-output/
devtools_options.yaml
# Symbolication related
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 8dd636cf..c7068ca4 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -151,11 +151,9 @@ flutter {
}
dependencies {
- implementation "androidx.core:core-ktx:1.12.0"
- implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.22"
- // Import FCM
+ /* FCM */
implementation 'com.google.firebase:firebase-messaging:23.4.1'
- // Logging
+ /* Logging */
implementation 'org.tinylog:tinylog-api-kotlin:2.6.2'
implementation 'org.tinylog:tinylog-impl:2.6.2'
}
\ No newline at end of file
diff --git a/android/app/build.gradle.production b/android/app/build.gradle.production
deleted file mode 100644
index 81064651..00000000
--- a/android/app/build.gradle.production
+++ /dev/null
@@ -1,166 +0,0 @@
-plugins {
- id "com.android.application"
- id "kotlin-android"
- // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
- id "dev.flutter.flutter-gradle-plugin"
- // Add the Google services Gradle plugin
- id "com.google.gms.google-services"
-}
-
-def localProperties = new Properties()
-def localPropertiesFile = rootProject.file("local.properties")
-if (localPropertiesFile.exists()) {
- localPropertiesFile.withReader("UTF-8") { reader ->
- localProperties.load(reader)
- }
-}
-
-def flutterVersionCode = localProperties.getProperty("flutter.versionCode")
-if (flutterVersionCode == null) {
- flutterVersionCode = "1"
-}
-
-def flutterVersionName = localProperties.getProperty("flutter.versionName")
-if (flutterVersionName == null) {
- flutterVersionName = "1.0"
-}
-
-def dartDefines = [:]
-if (project.hasProperty('dart-defines')) {
- // Decode dart-defines, which are comma-separated and encoded in Base64, and store them in a variable.
- dartDefines = dartDefines + project.property('dart-defines')
- .split(',')
- .collectEntries { entry ->
- def pair = new String(entry.decodeBase64(), 'UTF-8').split('=', 2)
- [(pair.first()): pair.last()]
- }
-}
-
-def envVariables = [
- API_KEY: project.hasProperty('API_KEY')
- ? API_KEY
- : "${dartDefines.API_KEY}",
-]
-
-android {
- namespace = "com.breez.liquid.l_breez"
- compileSdkVersion 34
- ndkVersion flutter.ndkVersion
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
-
- kotlinOptions {
- jvmTarget = '1.8'
- }
-
- sourceSets {
- main.java.srcDirs += 'src/main/kotlin'
- }
-
- defaultConfig {
- applicationId = "com.breez.liquid.l_breez"
- // You can update the following values to match your application needs.
- // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
- minSdkVersion 24 // Android 7.0
- targetSdk = flutter.targetSdkVersion
- versionCode = flutterVersionCode.toInteger()
- versionName = flutterVersionName
- }
-
- // Creates a variable called keystorePropertiesFile, and initializes it to the
- // keystore.properties file.
- def keystorePropertiesFile = rootProject.file("keystore.properties")
-
- // Initializes a new Properties() object called keystoreProperties.
- def keystoreProperties = new Properties()
-
- // Loads the keystore.properties file into the keystoreProperties object.
- if (keystorePropertiesFile.exists()) {
- keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
- }
-
- signingConfigs {
- debug {
- String filePath = keystoreProperties["storeFileDebug"]
- if (filePath != null) {
- keyAlias = keystoreProperties["keyAliasDebug"]
- keyPassword = keystoreProperties["keyPasswordDebug"]
- storeFile = file(filePath)
- storePassword = keystoreProperties["storePasswordDebug"]
- } else {
- println("No storeFile provided, debug builds are using your local debug keystore")
- }
- }
-
- release {
- String filePath = keystoreProperties["storeFile"]
- if (filePath != null) {
- keyAlias = keystoreProperties['keyAlias']
- keyPassword = keystoreProperties['keyPassword']
- storeFile = file(filePath)
- storePassword = keystoreProperties['storePassword']
- } else {
- String storeFilePath = System.getenv("STORE_FILE")
- println("storeFilePath: " + storeFilePath)
- if (storeFilePath != null) {
- println("using key properties from environment")
- keyAlias = System.getenv("KEY_ALIAS")
- keyPassword = System.getenv("KEY_PASSWORD")
- storeFile = file(storeFilePath)
- storePassword = System.getenv("STORE_PASSWORD")
- } else {
- println("No storeFile provided, release builds are using your local debug keystore")
- }
- }
- }
- }
-
- buildTypes {
- debug {
- signingConfig = signingConfigs.debug
- manifestPlaceholders = [appName: "Misty Breez - Debug"]
- resValue "string", "breezApiKey", envVariables.API_KEY
- minifyEnabled = false
- shrinkResources = false
- applicationIdSuffix = ".debug"
- versionNameSuffix = "-DEBUG"
- }
- release {
- signingConfig = signingConfigs.release
- manifestPlaceholders = [appName: "Misty Breez"]
- resValue "string", "breezApiKey", envVariables.API_KEY
- // Enables code shrinking, obfuscation, and optimization for only
- // your project's release build type. Make sure to use a build
- // variant with `debuggable false`.
- minifyEnabled = true
-
- // Enables resource shrinking, which is performed by the
- // Android Gradle plugin.
- shrinkResources = true
- proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
- 'proguard-rules.pro'
- }
- }
-}
-
-flutter {
- source = "../.."
-}
-
-dependencies {
- implementation "androidx.core:core-ktx:1.12.0"
- implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.22"
- // Import FCM
- implementation 'com.google.firebase:firebase-messaging:23.4.1'
- // Import breez_sdk_liquid for notifications
- implementation("net.java.dev.jna:jna:5.14.0@aar")
- implementation("com.github.breez:breez-sdk-liquid:latest.release") {
- exclude group:"net.java.dev.jna"
- }
- // Logging
- implementation 'org.tinylog:tinylog-api-kotlin:2.6.2'
- implementation 'org.tinylog:tinylog-impl:2.6.2'
-}
\ No newline at end of file
diff --git a/android/app/src/main/kotlin/com/breez/liquid/l_breez/BreezForegroundService.kt b/android/app/src/main/kotlin/com/breez/liquid/l_breez/BreezForegroundService.kt
index cb353634..8702e4f1 100644
--- a/android/app/src/main/kotlin/com/breez/liquid/l_breez/BreezForegroundService.kt
+++ b/android/app/src/main/kotlin/com/breez/liquid/l_breez/BreezForegroundService.kt
@@ -4,16 +4,15 @@ import android.content.SharedPreferences
import breez_sdk_liquid.ConnectRequest
import breez_sdk_liquid.LiquidNetwork
import breez_sdk_liquid.LogEntry
-import breez_sdk_liquid.Logger as SdkLogger
import breez_sdk_liquid.defaultConfig
-import breez_sdk_liquid.setLogger as setSdkLogger
import breez_sdk_liquid_notification.ForegroundService
import breez_sdk_liquid_notification.NotificationHelper.Companion.registerNotificationChannels
+import com.breez.breez_sdk_liquid.SdkLogInitializer
import com.breez.liquid.l_breez.utils.FlutterSecuredStorageHelper.Companion.readSecuredValue
import io.flutter.util.PathUtils
import org.tinylog.kotlin.Logger
-class BreezForegroundService : SdkLogger, ForegroundService() {
+class BreezForegroundService : ForegroundService() {
companion object {
private const val TAG = "BreezForegroundService"
@@ -26,10 +25,19 @@ class BreezForegroundService : SdkLogger, ForegroundService() {
override fun onCreate() {
super.onCreate()
- setLogger(this)
- setSdkLogger(this)
Logger.tag(TAG).debug { "Creating Breez foreground service..." }
registerNotificationChannels(applicationContext, DEFAULT_CLICK_ACTION)
+ val listener = SdkLogInitializer.initializeListener()
+ listener.subscribe(serviceScope) { l: LogEntry ->
+ when (l.level) {
+ "ERROR" -> Logger.tag(TAG).error { l.line }
+ "WARN" -> Logger.tag(TAG).warn { l.line }
+ "INFO" -> Logger.tag(TAG).info { l.line }
+ "DEBUG" -> Logger.tag(TAG).debug { l.line }
+ "TRACE" -> Logger.tag(TAG).trace { l.line }
+ }
+ }
+ setServiceLogger(listener)
Logger.tag(TAG).debug { "Breez foreground service created." }
}
@@ -49,14 +57,4 @@ class BreezForegroundService : SdkLogger, ForegroundService() {
ConnectRequest(config, mnemonic)
}
}
-
- override fun log(l: LogEntry) {
- when (l.level) {
- "ERROR" -> Logger.tag(TAG).error { l.line }
- "WARN" -> Logger.tag(TAG).warn { l.line }
- "INFO" -> Logger.tag(TAG).info { l.line }
- "DEBUG" -> Logger.tag(TAG).debug { l.line }
- "TRACE" -> Logger.tag(TAG).trace { l.line }
- }
- }
}
diff --git a/ios/NotificationService/Info.plist b/ios/NotificationService/Info.plist
index 450fb98b..63048ded 100644
--- a/ios/NotificationService/Info.plist
+++ b/ios/NotificationService/Info.plist
@@ -11,5 +11,7 @@
NSExtensionPrincipalClass
$(PRODUCT_MODULE_NAME).NotificationService
+ FirebaseAppDelegateProxyEnabled
+
diff --git a/ios/NotificationService/KeychainHelper.swift b/ios/NotificationService/KeychainHelper.swift
index 8ac77acd..dfa37322 100644
--- a/ios/NotificationService/KeychainHelper.swift
+++ b/ios/NotificationService/KeychainHelper.swift
@@ -3,12 +3,12 @@ import KeychainAccess
import os.log
#if DEBUG && true
-fileprivate var log = Logger(
+fileprivate var log = OSLog(
subsystem: Bundle.main.bundleIdentifier!,
category: "KeychainHelper"
)
#else
-fileprivate var log = Logger(OSLog.disabled)
+fileprivate var log = OSLog.disabled
#endif
public class KeychainHelper {
@@ -25,7 +25,7 @@ public class KeychainHelper {
do {
return try keychain.getString(key)
} catch let error {
- log.error("Failed to restore \(key) from \(service) keychain. Error: \(error)")
+ os_log(.error, "Failed to restore \(key) from \(service) keychain. Error: \(error)")
}
return nil
diff --git a/ios/NotificationService/NotificationService.swift b/ios/NotificationService/NotificationService.swift
index 11c47449..dc64d535 100644
--- a/ios/NotificationService/NotificationService.swift
+++ b/ios/NotificationService/NotificationService.swift
@@ -1,6 +1,5 @@
import UserNotifications
import XCGLogger
-import BreezSDKLiquid
let accessGroup = "group.F7R2LZH3W5.com.breez.liquid.lBreez"
@@ -24,10 +23,10 @@ class NotificationService: SDKNotificationService {
// Set Notification Service Logger to SdkLogListener that utilizes XCGLogger library
let sdkLogger = SdkLogListener(logger: xcgLogger)
- self.setLogger(logger: sdkLogger)
+ self.setServiceLogger(logger: sdkLogger)
// Use the same SdkLogListener to listen in on BreezSDKLiquid node logs
do {
- try BreezSDKLiquid.setLogger(logger: sdkLogger)
+ try setLogger(logger: sdkLogger)
} catch let e {
self.logger.log(tag: TAG, line:"Failed to set log stream: \(e)", level: "ERROR")
}
diff --git a/ios/NotificationService/SdkLogListener.swift b/ios/NotificationService/SdkLogListener.swift
index f6c27114..377df7c5 100644
--- a/ios/NotificationService/SdkLogListener.swift
+++ b/ios/NotificationService/SdkLogListener.swift
@@ -1,6 +1,5 @@
import Foundation
import XCGLogger
-import BreezSDKLiquid
class SdkLogListener : Logger {
private var logger: XCGLogger
diff --git a/ios/Podfile b/ios/Podfile
index 55c94cd1..3215da66 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -40,7 +40,6 @@ end
target 'NotificationService' do
use_frameworks!
- pod 'BreezSDKLiquid', :path => '../../breez-sdk-liquid/packages/flutter/ios/breez_sdk_liquid.podspec'
pod 'KeychainAccess'
pod 'XCGLogger'
end
@@ -49,6 +48,7 @@ post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
+ config.build_settings['ENABLE_BITCODE'] = 'NO'
# Set minimum deployment target to 12.0
if config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'].to_f < 12.0
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 8faad34a..e280d3e6 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,7 +1,6 @@
PODS:
- app_group_directory (1.0.0):
- Flutter
- - BreezSDKLiquid (0.2.1)
- clipboard_watcher (0.0.1):
- Flutter
- connectivity_plus (0.0.1):
@@ -171,7 +170,6 @@ PODS:
DEPENDENCIES:
- app_group_directory (from `.symlinks/plugins/app_group_directory/ios`)
- - BreezSDKLiquid (from `../../breez-sdk-liquid/packages/flutter/ios/breez_sdk_liquid.podspec`)
- clipboard_watcher (from `.symlinks/plugins/clipboard_watcher/ios`)
- connectivity_plus (from `.symlinks/plugins/connectivity_plus/darwin`)
- device_info_plus (from `.symlinks/plugins/device_info_plus/ios`)
@@ -227,8 +225,6 @@ SPEC REPOS:
EXTERNAL SOURCES:
app_group_directory:
:path: ".symlinks/plugins/app_group_directory/ios"
- BreezSDKLiquid:
- :path: "../../breez-sdk-liquid/packages/flutter/ios/breez_sdk_liquid.podspec"
clipboard_watcher:
:path: ".symlinks/plugins/clipboard_watcher/ios"
connectivity_plus:
@@ -278,7 +274,6 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
app_group_directory: 7bf9f8f9819ead554de29da7c25fb7a680d6a9a0
- BreezSDKLiquid: 251f19328069eb73b8653c159f12196fa1cbe22f
clipboard_watcher: 86fb70421aca6f4944e0591a8292605da7784666
connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db
device_info_plus: 97af1d7e84681a90d0693e63169a5d50e0839a0d
@@ -292,7 +287,7 @@ SPEC CHECKSUMS:
FirebaseInstallations: 913cf60d0400ebd5d6b63a28b290372ab44590dd
FirebaseMessaging: 7b5d8033e183ab59eb5b852a53201559e976d366
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
- flutter_breez_liquid: 25615dbdf0dd058755f23d1b97202090fa0f49bc
+ flutter_breez_liquid: f9e825fc31b654ef3a00cf7420a0c2a691567bae
flutter_fgbg: 31c0d1140a131daea2d342121808f6aa0dcd879d
flutter_inappwebview_ios: 97215cf7d4677db55df76782dbd2930c5e1c1ea0
flutter_keyboard_visibility: 0339d06371254c3eb25eeb90ba8d17dca8f9c069
@@ -326,6 +321,6 @@ SPEC CHECKSUMS:
url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe
XCGLogger: 399c5885210b4e2ad79d9f7a29b105d672ef724f
-PODFILE CHECKSUM: c7e3aa05d64d03b1e96041369ae57f6584015526
+PODFILE CHECKSUM: bce0f66a635de639805b89b3b01316f8e9f5a71d
COCOAPODS: 1.15.2
diff --git a/ios/Podfile.production b/ios/Podfile.production
deleted file mode 100644
index 9e9b6920..00000000
--- a/ios/Podfile.production
+++ /dev/null
@@ -1,68 +0,0 @@
-# Uncomment this line to define a global platform for your project
-platform :ios, '14.0'
-
-# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
-ENV['COCOAPODS_DISABLE_STATS'] = 'true'
-
-project 'Runner', {
- 'Debug' => :debug,
- 'Profile' => :release,
- 'Release' => :release,
-}
-
-def flutter_root
- generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
- unless File.exist?(generated_xcode_build_settings_path)
- raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
- end
-
- File.foreach(generated_xcode_build_settings_path) do |line|
- matches = line.match(/FLUTTER_ROOT\=(.*)/)
- return matches[1].strip if matches
- end
- raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
-end
-
-require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
-
-flutter_ios_podfile_setup
-
-target 'Runner' do
- use_frameworks!
- use_modular_headers!
-
- flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
- target 'RunnerTests' do
- inherit! :search_paths
- end
-end
-
-target 'NotificationService' do
- use_frameworks!
-
- pod 'BreezSDKLiquid'
- pod 'KeychainAccess'
- pod 'XCGLogger'
-end
-
-post_install do |installer|
- installer.pods_project.targets.each do |target|
- flutter_additional_ios_build_settings(target)
- target.build_configurations.each do |config|
- # Set minimum deployment target to 12.0
- if config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'].to_f < 12.0
- config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
- end
- end
- end
- # Remove the -lsqlite3 linker flag
- # https://github.com/CocoaPods/CocoaPods/issues/830
- # We already include our own sqlite3 implementation via a pod,
- # so we don't want the system-provided one as well.
- installer.generated_aggregate_targets.each do |target|
- target.xcconfigs.each do |name, config|
- config.libraries.delete('sqlite3')
- config.save_as(Pathname.new(target.xcconfig_relative_path(name)))
- end
- end
-end
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index ff7eb81e..3c24513e 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -7,25 +7,47 @@
objects = {
/* Begin PBXBuildFile section */
- 1412023D6C2DB5D2F4D233CA /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9B0583BD90A340B2CE4C3A7A /* Pods_Runner.framework */; };
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
- 2C986B8F63C6AB416D0B2558 /* Pods_NotificationService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 21B0AFF006FA07EAA875429D /* Pods_NotificationService.framework */; };
+ 22246727F178B1E17E673139 /* BreezSDKLiquidConnector.swift in Resources */ = {isa = PBXBuildFile; fileRef = 64CD9507572573C8A93078E8 /* BreezSDKLiquidConnector.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
+ 442AE910DC3589D0BD9C3F38 /* BreezSDKLiquid.swift in Resources */ = {isa = PBXBuildFile; fileRef = 3DB7CA710C358B76F5CDB67F /* BreezSDKLiquid.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ 5A1B8E788210285CFD84BDA9 /* TaskProtocol.swift in Resources */ = {isa = PBXBuildFile; fileRef = 94B64D07DB5A75CA4E5809DF /* TaskProtocol.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ 619399E2500DF1F47AC77393 /* LnurlPayInfo.swift in Resources */ = {isa = PBXBuildFile; fileRef = 8BD8A8F87E52CF59156EC5B7 /* LnurlPayInfo.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ 6FDB603CAA2090C4B950F2B6 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E0937162EF1CF6AB9561B7E6 /* Pods_RunnerTests.framework */; };
+ 71047A5D4902C8ED77D1A08E /* ResourceHelper.swift in Resources */ = {isa = PBXBuildFile; fileRef = 68C3549E54F158E6F1BF215E /* ResourceHelper.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
732A3D282C6CCF13007563A8 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 732A3D272C6CCF13007563A8 /* NotificationService.swift */; };
732A3D2C2C6CCF13007563A8 /* NotificationService.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 732A3D252C6CCF13007563A8 /* NotificationService.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
732A3D362C6CD974007563A8 /* SdkLogListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 732A3D332C6CD974007563A8 /* SdkLogListener.swift */; };
732A3D372C6CD974007563A8 /* KeychainHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 732A3D342C6CD974007563A8 /* KeychainHelper.swift */; };
732A3D382C6CD974007563A8 /* KeyChainAccessGroupHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 732A3D352C6CD974007563A8 /* KeyChainAccessGroupHelper.swift */; };
+ 73A4C6CC2CA1905200F38394 /* breez_sdk_liquidFFI.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 73A4C6CB2CA1905200F38394 /* breez_sdk_liquidFFI.xcframework */; };
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
+ A09F2C75439FD441CCB45C4B /* LnurlPayInvoice.swift in Resources */ = {isa = PBXBuildFile; fileRef = 12304F0B1670756F9611DCE1 /* LnurlPayInvoice.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ A5B7FE775C5DE85F5BA030AA /* SwapUpdated.swift in Resources */ = {isa = PBXBuildFile; fileRef = 6D92E330AE9E0FFA4F342038 /* SwapUpdated.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
BB6F2C501DC9CB40C2482FD1 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C921E6B9B40EE48F3627E76B /* GoogleService-Info.plist */; };
- D60FB850C4C30FEAB3325F5C /* BuildFile in Frameworks */ = {isa = PBXBuildFile; };
- E88FB9F52C7756900037463D /* breez_sdk_liquid.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = E88FB9F42C7756900037463D /* breez_sdk_liquid.xcframework */; };
- E88FB9F62C7756900037463D /* breez_sdk_liquid.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = E88FB9F42C7756900037463D /* breez_sdk_liquid.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
- FFC771EFFE804E43DEFB0BB3 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C7F97C84ECEB66AB63470D4 /* Pods_RunnerTests.framework */; };
+ BEFD2B173AD9A8F75F4C4E70 /* Constants.swift in Resources */ = {isa = PBXBuildFile; fileRef = B5E5724CB2BA100C10032AF2 /* Constants.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ C20CE275E425F859C7E6DE4C /* String+SHA256.swift in Resources */ = {isa = PBXBuildFile; fileRef = A9EEF592AC15F5122FE4839C /* String+SHA256.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ C3850D9DB1F37D4536E0023E /* ServiceLogger.swift in Resources */ = {isa = PBXBuildFile; fileRef = 1A928177C42305FC6DA768BE /* ServiceLogger.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ CCAA181E08F3FD78F436E2F4 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3512672A4D419C343EE98C95 /* Pods_Runner.framework */; };
+ D4C739E48636480220D6264F /* Pods_NotificationService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3CE09830B5AA1194ABCBFAA9 /* Pods_NotificationService.framework */; };
+ E2882E44B007EB2A2A3DA08E /* LnurlPay.swift in Resources */ = {isa = PBXBuildFile; fileRef = B820DCA0F1919C03D6BA3896 /* LnurlPay.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
+ E81E0B282CA33D3400B1C606 /* BreezSDKLiquid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DB7CA710C358B76F5CDB67F /* BreezSDKLiquid.swift */; };
+ E81E0B292CA33D3400B1C606 /* BreezSDKLiquidConnector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64CD9507572573C8A93078E8 /* BreezSDKLiquidConnector.swift */; };
+ E81E0B2A2CA33D3400B1C606 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5E5724CB2BA100C10032AF2 /* Constants.swift */; };
+ E81E0B2B2CA33D3400B1C606 /* ResourceHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68C3549E54F158E6F1BF215E /* ResourceHelper.swift */; };
+ E81E0B2C2CA33D3400B1C606 /* SDKNotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = B05FDB7E07CF3107D1D2C0CB /* SDKNotificationService.swift */; };
+ E81E0B2D2CA33D3400B1C606 /* ServiceLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A928177C42305FC6DA768BE /* ServiceLogger.swift */; };
+ E81E0B2E2CA33D3400B1C606 /* String+SHA256.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9EEF592AC15F5122FE4839C /* String+SHA256.swift */; };
+ E81E0B2F2CA33D3400B1C606 /* TaskProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94B64D07DB5A75CA4E5809DF /* TaskProtocol.swift */; };
+ E81E0B302CA33D3400B1C606 /* LnurlPay.swift in Sources */ = {isa = PBXBuildFile; fileRef = B820DCA0F1919C03D6BA3896 /* LnurlPay.swift */; };
+ E81E0B312CA33D3400B1C606 /* LnurlPayInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8BD8A8F87E52CF59156EC5B7 /* LnurlPayInfo.swift */; };
+ E81E0B322CA33D3400B1C606 /* LnurlPayInvoice.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12304F0B1670756F9611DCE1 /* LnurlPayInvoice.swift */; };
+ E81E0B332CA33D3400B1C606 /* SwapUpdated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D92E330AE9E0FFA4F342038 /* SwapUpdated.swift */; };
+ F5AB6D9DA4E6C7BB8D096EC1 /* SDKNotificationService.swift in Resources */ = {isa = PBXBuildFile; fileRef = B05FDB7E07CF3107D1D2C0CB /* SDKNotificationService.swift */; settings = {ASSET_TAGS = (BreezSDKLiquid, ); }; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -63,7 +85,6 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
- E88FB9F62C7756900037463D /* breez_sdk_liquid.xcframework in Embed Frameworks */,
);
name = "Embed Frameworks";
runOnlyForDeploymentPostprocessing = 0;
@@ -71,21 +92,20 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
+ 12304F0B1670756F9611DCE1 /* LnurlPayInvoice.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPayInvoice.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/Task/LnurlPayInvoice.swift; sourceTree = ""; };
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; };
- 15FBC21547B00E119F1FE42E /* LnurlPay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPay.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Task/LnurlPay.swift"; sourceTree = ""; };
- 1716C2BF6131162D390D93A5 /* Pods-NotificationService.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.release.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.release.xcconfig"; sourceTree = ""; };
- 1C08D7501EA08FEEA635C1B5 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; };
- 21B0AFF006FA07EAA875429D /* Pods_NotificationService.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_NotificationService.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 307656AD6C1928A220DF8A3D /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; };
+ 1A928177C42305FC6DA768BE /* ServiceLogger.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServiceLogger.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/ServiceLogger.swift; sourceTree = ""; };
331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; };
331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
- 36136CA437BFC850907F553A /* ServiceLogger.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServiceLogger.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/ServiceLogger.swift"; sourceTree = ""; };
- 36D0B41A3417E9CC03930119 /* LnurlPayInvoice.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPayInvoice.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Task/LnurlPayInvoice.swift"; sourceTree = ""; };
+ 3512672A4D419C343EE98C95 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; };
- 3BA62FF80BBC75AD80E016C8 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; };
- 3FCE86AB511842FD78C29C16 /* BreezSDKConnector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BreezSDKConnector.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/BreezSDKConnector.swift"; sourceTree = ""; };
- 44631C1F894000A1C00B4B41 /* SDKNotificationService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SDKNotificationService.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/SDKNotificationService.swift"; sourceTree = ""; };
+ 3CE09830B5AA1194ABCBFAA9 /* Pods_NotificationService.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_NotificationService.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 3DB7CA710C358B76F5CDB67F /* BreezSDKLiquid.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BreezSDKLiquid.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/BreezSDKLiquid.swift; sourceTree = ""; };
+ 64CD9507572573C8A93078E8 /* BreezSDKLiquidConnector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BreezSDKLiquidConnector.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/BreezSDKLiquidConnector.swift; sourceTree = ""; };
+ 68C3549E54F158E6F1BF215E /* ResourceHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResourceHelper.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/ResourceHelper.swift; sourceTree = ""; };
+ 6BCF8D3BC5BE8834E9213954 /* Pods-NotificationService.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.profile.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.profile.xcconfig"; sourceTree = ""; };
+ 6D92E330AE9E0FFA4F342038 /* SwapUpdated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwapUpdated.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/Task/SwapUpdated.swift; sourceTree = ""; };
732A3D252C6CCF13007563A8 /* NotificationService.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = NotificationService.appex; sourceTree = BUILT_PRODUCTS_DIR; };
732A3D272C6CCF13007563A8 /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = ""; };
732A3D292C6CCF13007563A8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
@@ -93,11 +113,13 @@
732A3D332C6CD974007563A8 /* SdkLogListener.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SdkLogListener.swift; sourceTree = ""; };
732A3D342C6CD974007563A8 /* KeychainHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeychainHelper.swift; sourceTree = ""; };
732A3D352C6CD974007563A8 /* KeyChainAccessGroupHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyChainAccessGroupHelper.swift; sourceTree = ""; };
+ 73A4C6CB2CA1905200F38394 /* breez_sdk_liquidFFI.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = breez_sdk_liquidFFI.xcframework; path = "../../breez-sdk-liquid/packages/flutter/ios/Frameworks/breez_sdk_liquidFFI.xcframework"; sourceTree = ""; };
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; };
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; };
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; };
- 7C7F97C84ECEB66AB63470D4 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 941FBF81DE56E38CB9B607EF /* TaskProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskProtocol.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/TaskProtocol.swift"; sourceTree = ""; };
+ 8BD8A8F87E52CF59156EC5B7 /* LnurlPayInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPayInfo.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/Task/LnurlPayInfo.swift; sourceTree = ""; };
+ 8C8191A11058364B53A35B4A /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; };
+ 94B64D07DB5A75CA4E5809DF /* TaskProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskProtocol.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/TaskProtocol.swift; sourceTree = ""; };
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; };
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; };
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -105,22 +127,20 @@
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; };
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; };
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 9B0583BD90A340B2CE4C3A7A /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 9C2A04A44FDB19A00EE94C39 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; };
- A54E869D93DD243818730EC5 /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; };
- A91886188D7722C76D07717B /* LnurlPayInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPayInfo.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Task/LnurlPayInfo.swift"; sourceTree = ""; };
- ACD7135B1733C7A905A92BC5 /* ReceivePayment.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReceivePayment.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Task/ReceivePayment.swift"; sourceTree = ""; };
- BA1800BC5214E8D55214D607 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; };
- BCD162BC443C0AE50AE693BF /* RedeemSwap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RedeemSwap.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Task/RedeemSwap.swift"; sourceTree = ""; };
- BE49C1F5DD1913DD5BEAA00F /* Constants.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constants.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/Constants.swift"; sourceTree = ""; };
- C2E61D892244B37FD730BBE4 /* Pods-NotificationService.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.debug.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.debug.xcconfig"; sourceTree = ""; };
+ 98663859675A024C3E3A77BE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; };
+ 9B8020850FF5EEDC264189B0 /* Pods-NotificationService.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.debug.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.debug.xcconfig"; sourceTree = ""; };
+ A5D0EE47AA4771041A1CBC55 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; };
+ A9EEF592AC15F5122FE4839C /* String+SHA256.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+SHA256.swift"; path = "../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/String+SHA256.swift"; sourceTree = ""; };
+ AA2D2688679C6C1E85062BDC /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; };
+ AB82E2270AD8486FBE411041 /* Pods-NotificationService.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.release.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.release.xcconfig"; sourceTree = ""; };
+ B05FDB7E07CF3107D1D2C0CB /* SDKNotificationService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SDKNotificationService.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/SDKNotificationService.swift; sourceTree = ""; };
+ B5E5724CB2BA100C10032AF2 /* Constants.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constants.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/Constants.swift; sourceTree = ""; };
+ B820DCA0F1919C03D6BA3896 /* LnurlPay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LnurlPay.swift; path = ../.symlinks/plugins/flutter_breez_liquid/ios/Sources/BreezSDKLiquid/Task/LnurlPay.swift; sourceTree = ""; };
C921E6B9B40EE48F3627E76B /* GoogleService-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "Runner/GoogleService-Info.plist"; sourceTree = ""; };
- E88FB9F42C7756900037463D /* breez_sdk_liquid.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = breez_sdk_liquid.xcframework; path = ".symlinks/plugins/flutter_breez_liquid/ios/../../../../../../breez-sdk-liquid/packages/flutter/ios/Frameworks/breez_sdk_liquid.xcframework"; sourceTree = ""; };
+ DA2DB30BC09C4A357F1D46E9 /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; };
+ E0937162EF1CF6AB9561B7E6 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ E7211525E34935B102E5EFDE /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; };
E8F7D4EF2C073A890018DB5D /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; };
- F10B8BD13646D7188373EBFA /* ServiceConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServiceConfig.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/ServiceConfig.swift"; sourceTree = ""; };
- F3CDA02A2B9516E892C91FF1 /* Pods-NotificationService.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-NotificationService.profile.xcconfig"; path = "Target Support Files/Pods-NotificationService/Pods-NotificationService.profile.xcconfig"; sourceTree = ""; };
- F937E02F522B34DA0603EE0C /* BreezSDK.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BreezSDK.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/BreezSDK.swift"; sourceTree = ""; };
- FF2B4C3B077B63A01FF73FC6 /* ResourceHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResourceHelper.swift; path = "../.symlinks/plugins/breez_sdk/ios/bindings-swift/Sources/BreezSDK/ResourceHelper.swift"; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -128,8 +148,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- D60FB850C4C30FEAB3325F5C /* BuildFile in Frameworks */,
- FFC771EFFE804E43DEFB0BB3 /* Pods_RunnerTests.framework in Frameworks */,
+ 6FDB603CAA2090C4B950F2B6 /* Pods_RunnerTests.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -137,7 +156,8 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 2C986B8F63C6AB416D0B2558 /* Pods_NotificationService.framework in Frameworks */,
+ 73A4C6CC2CA1905200F38394 /* breez_sdk_liquidFFI.xcframework in Frameworks */,
+ D4C739E48636480220D6264F /* Pods_NotificationService.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -145,25 +165,13 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- E88FB9F52C7756900037463D /* breez_sdk_liquid.xcframework in Frameworks */,
- 1412023D6C2DB5D2F4D233CA /* Pods_Runner.framework in Frameworks */,
+ CCAA181E08F3FD78F436E2F4 /* Pods_Runner.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- 285B6EBEBD4F0C7E41515D0A /* Frameworks */ = {
- isa = PBXGroup;
- children = (
- E88FB9F42C7756900037463D /* breez_sdk_liquid.xcframework */,
- 21B0AFF006FA07EAA875429D /* Pods_NotificationService.framework */,
- 9B0583BD90A340B2CE4C3A7A /* Pods_Runner.framework */,
- 7C7F97C84ECEB66AB63470D4 /* Pods_RunnerTests.framework */,
- );
- name = Frameworks;
- sourceTree = "";
- };
331C8082294A63A400263BE5 /* RunnerTests */ = {
isa = PBXGroup;
children = (
@@ -172,12 +180,23 @@
path = RunnerTests;
sourceTree = "";
};
- 6ED43DD1619018FCC51A7E28 /* breez_sdk-OnDemandResources */ = {
+ 7005A252391C0C0CD86B2DAC /* BreezSDKLiquid */ = {
isa = PBXGroup;
children = (
- A347CA4BBFBCFAC48E575412 /* BreezSDK */,
- );
- name = "breez_sdk-OnDemandResources";
+ 3DB7CA710C358B76F5CDB67F /* BreezSDKLiquid.swift */,
+ 64CD9507572573C8A93078E8 /* BreezSDKLiquidConnector.swift */,
+ B5E5724CB2BA100C10032AF2 /* Constants.swift */,
+ 68C3549E54F158E6F1BF215E /* ResourceHelper.swift */,
+ B05FDB7E07CF3107D1D2C0CB /* SDKNotificationService.swift */,
+ 1A928177C42305FC6DA768BE /* ServiceLogger.swift */,
+ A9EEF592AC15F5122FE4839C /* String+SHA256.swift */,
+ 94B64D07DB5A75CA4E5809DF /* TaskProtocol.swift */,
+ B820DCA0F1919C03D6BA3896 /* LnurlPay.swift */,
+ 8BD8A8F87E52CF59156EC5B7 /* LnurlPayInfo.swift */,
+ 12304F0B1670756F9611DCE1 /* LnurlPayInvoice.swift */,
+ 6D92E330AE9E0FFA4F342038 /* SwapUpdated.swift */,
+ );
+ name = BreezSDKLiquid;
sourceTree = "";
};
732A3D262C6CCF13007563A8 /* NotificationService */ = {
@@ -193,6 +212,25 @@
path = NotificationService;
sourceTree = "";
};
+ 7E01A696FB05CBBA0BCC4F86 /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 73A4C6CB2CA1905200F38394 /* breez_sdk_liquidFFI.xcframework */,
+ 3CE09830B5AA1194ABCBFAA9 /* Pods_NotificationService.framework */,
+ 3512672A4D419C343EE98C95 /* Pods_Runner.framework */,
+ E0937162EF1CF6AB9561B7E6 /* Pods_RunnerTests.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+ 859CF8DB9DF068928BF5B359 /* flutter_breez_liquid-OnDemandResources */ = {
+ isa = PBXGroup;
+ children = (
+ 7005A252391C0C0CD86B2DAC /* BreezSDKLiquid */,
+ );
+ name = "flutter_breez_liquid-OnDemandResources";
+ sourceTree = "";
+ };
9740EEB11CF90186004384FC /* Flutter */ = {
isa = PBXGroup;
children = (
@@ -214,7 +252,7 @@
331C8082294A63A400263BE5 /* RunnerTests */,
C3419851600CFDF0D267D1CB /* Pods */,
C921E6B9B40EE48F3627E76B /* GoogleService-Info.plist */,
- 285B6EBEBD4F0C7E41515D0A /* Frameworks */,
+ 7E01A696FB05CBBA0BCC4F86 /* Frameworks */,
);
sourceTree = "";
};
@@ -244,39 +282,19 @@
path = Runner;
sourceTree = "";
};
- A347CA4BBFBCFAC48E575412 /* BreezSDK */ = {
- isa = PBXGroup;
- children = (
- F937E02F522B34DA0603EE0C /* BreezSDK.swift */,
- 3FCE86AB511842FD78C29C16 /* BreezSDKConnector.swift */,
- BE49C1F5DD1913DD5BEAA00F /* Constants.swift */,
- FF2B4C3B077B63A01FF73FC6 /* ResourceHelper.swift */,
- 44631C1F894000A1C00B4B41 /* SDKNotificationService.swift */,
- F10B8BD13646D7188373EBFA /* ServiceConfig.swift */,
- 36136CA437BFC850907F553A /* ServiceLogger.swift */,
- 941FBF81DE56E38CB9B607EF /* TaskProtocol.swift */,
- 15FBC21547B00E119F1FE42E /* LnurlPay.swift */,
- A91886188D7722C76D07717B /* LnurlPayInfo.swift */,
- 36D0B41A3417E9CC03930119 /* LnurlPayInvoice.swift */,
- ACD7135B1733C7A905A92BC5 /* ReceivePayment.swift */,
- BCD162BC443C0AE50AE693BF /* RedeemSwap.swift */,
- );
- name = BreezSDK;
- sourceTree = "";
- };
C3419851600CFDF0D267D1CB /* Pods */ = {
isa = PBXGroup;
children = (
- 6ED43DD1619018FCC51A7E28 /* breez_sdk-OnDemandResources */,
- C2E61D892244B37FD730BBE4 /* Pods-NotificationService.debug.xcconfig */,
- 1716C2BF6131162D390D93A5 /* Pods-NotificationService.release.xcconfig */,
- F3CDA02A2B9516E892C91FF1 /* Pods-NotificationService.profile.xcconfig */,
- 3BA62FF80BBC75AD80E016C8 /* Pods-Runner.debug.xcconfig */,
- BA1800BC5214E8D55214D607 /* Pods-Runner.release.xcconfig */,
- 9C2A04A44FDB19A00EE94C39 /* Pods-Runner.profile.xcconfig */,
- 307656AD6C1928A220DF8A3D /* Pods-RunnerTests.debug.xcconfig */,
- A54E869D93DD243818730EC5 /* Pods-RunnerTests.release.xcconfig */,
- 1C08D7501EA08FEEA635C1B5 /* Pods-RunnerTests.profile.xcconfig */,
+ 859CF8DB9DF068928BF5B359 /* flutter_breez_liquid-OnDemandResources */,
+ 9B8020850FF5EEDC264189B0 /* Pods-NotificationService.debug.xcconfig */,
+ AB82E2270AD8486FBE411041 /* Pods-NotificationService.release.xcconfig */,
+ 6BCF8D3BC5BE8834E9213954 /* Pods-NotificationService.profile.xcconfig */,
+ 98663859675A024C3E3A77BE /* Pods-Runner.debug.xcconfig */,
+ 8C8191A11058364B53A35B4A /* Pods-Runner.release.xcconfig */,
+ E7211525E34935B102E5EFDE /* Pods-Runner.profile.xcconfig */,
+ A5D0EE47AA4771041A1CBC55 /* Pods-RunnerTests.debug.xcconfig */,
+ DA2DB30BC09C4A357F1D46E9 /* Pods-RunnerTests.release.xcconfig */,
+ AA2D2688679C6C1E85062BDC /* Pods-RunnerTests.profile.xcconfig */,
);
path = Pods;
sourceTree = "";
@@ -288,7 +306,7 @@
isa = PBXNativeTarget;
buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */;
buildPhases = (
- 3D810D9C8E07A0B389AEE2AA /* [CP] Check Pods Manifest.lock */,
+ 071C468E0040191B8B40D618 /* [CP] Check Pods Manifest.lock */,
331C807D294A63A400263BE5 /* Sources */,
331C807F294A63A400263BE5 /* Resources */,
3FD5F7911C380DE04B2EFF62 /* Frameworks */,
@@ -307,7 +325,7 @@
isa = PBXNativeTarget;
buildConfigurationList = 732A3D312C6CCF13007563A8 /* Build configuration list for PBXNativeTarget "NotificationService" */;
buildPhases = (
- 098A740DF07CCF8A6B00A2F0 /* [CP] Check Pods Manifest.lock */,
+ 79C08E2A35A4AC93AD0FAA0A /* [CP] Check Pods Manifest.lock */,
732A3D212C6CCF13007563A8 /* Sources */,
732A3D222C6CCF13007563A8 /* Frameworks */,
732A3D232C6CCF13007563A8 /* Resources */,
@@ -325,7 +343,7 @@
isa = PBXNativeTarget;
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
buildPhases = (
- C06796464B1FA798D170315F /* [CP] Check Pods Manifest.lock */,
+ 4AC7AD913861274B225E2CC2 /* [CP] Check Pods Manifest.lock */,
9705A1C41CF9048500538489 /* Embed Frameworks */,
732A3D2D2C6CCF13007563A8 /* Embed Foundation Extensions */,
9740EEB61CF901F6004384FC /* Run Script */,
@@ -333,8 +351,8 @@
97C146EB1CF9000F007C117D /* Frameworks */,
97C146EC1CF9000F007C117D /* Resources */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
- 2116D48551372B4566A629D0 /* [CP] Embed Pods Frameworks */,
- B664D544DB004045CD9C3B74 /* [CP] Copy Pods Resources */,
+ CCC109F8563E2C39607DD623 /* [CP] Embed Pods Frameworks */,
+ BA7490DF2282900BCD7F6E01 /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@@ -355,6 +373,7 @@
BuildIndependentTargetsInParallel = YES;
KnownAssetTags = (
BreezSDK,
+ BreezSDKLiquid,
);
LastSwiftUpdateCheck = 1520;
LastUpgradeCheck = 1510;
@@ -417,13 +436,25 @@
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
BB6F2C501DC9CB40C2482FD1 /* GoogleService-Info.plist in Resources */,
+ 442AE910DC3589D0BD9C3F38 /* BreezSDKLiquid.swift in Resources */,
+ 22246727F178B1E17E673139 /* BreezSDKLiquidConnector.swift in Resources */,
+ BEFD2B173AD9A8F75F4C4E70 /* Constants.swift in Resources */,
+ 71047A5D4902C8ED77D1A08E /* ResourceHelper.swift in Resources */,
+ F5AB6D9DA4E6C7BB8D096EC1 /* SDKNotificationService.swift in Resources */,
+ C3850D9DB1F37D4536E0023E /* ServiceLogger.swift in Resources */,
+ C20CE275E425F859C7E6DE4C /* String+SHA256.swift in Resources */,
+ 5A1B8E788210285CFD84BDA9 /* TaskProtocol.swift in Resources */,
+ E2882E44B007EB2A2A3DA08E /* LnurlPay.swift in Resources */,
+ 619399E2500DF1F47AC77393 /* LnurlPayInfo.swift in Resources */,
+ A09F2C75439FD441CCB45C4B /* LnurlPayInvoice.swift in Resources */,
+ A5B7FE775C5DE85F5BA030AA /* SwapUpdated.swift in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
- 098A740DF07CCF8A6B00A2F0 /* [CP] Check Pods Manifest.lock */ = {
+ 071C468E0040191B8B40D618 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -438,47 +469,52 @@
outputFileListPaths = (
);
outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-NotificationService-checkManifestLockResult.txt",
+ "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
- 2116D48551372B4566A629D0 /* [CP] Embed Pods Frameworks */ = {
+ 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
isa = PBXShellScriptBuildPhase;
+ alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
- inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
+ inputPaths = (
+ "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
- name = "[CP] Embed Pods Frameworks";
- outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
+ name = "Thin Binary";
+ outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
- showEnvVarsInLog = 0;
+ shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin\n";
};
- 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
+ 4AC7AD913861274B225E2CC2 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
- alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
+ inputFileListPaths = (
+ );
inputPaths = (
- "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
+ "${PODS_ROOT}/Manifest.lock",
+ );
+ name = "[CP] Check Pods Manifest.lock";
+ outputFileListPaths = (
);
- name = "Thin Binary";
outputPaths = (
+ "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin\n";
+ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
+ showEnvVarsInLog = 0;
};
- 3D810D9C8E07A0B389AEE2AA /* [CP] Check Pods Manifest.lock */ = {
+ 79C08E2A35A4AC93AD0FAA0A /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -493,7 +529,7 @@
outputFileListPaths = (
);
outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt",
+ "$(DERIVED_FILE_DIR)/Pods-NotificationService-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
@@ -515,7 +551,7 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
- B664D544DB004045CD9C3B74 /* [CP] Copy Pods Resources */ = {
+ BA7490DF2282900BCD7F6E01 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -532,26 +568,21 @@
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
showEnvVarsInLog = 0;
};
- C06796464B1FA798D170315F /* [CP] Check Pods Manifest.lock */ = {
+ CCC109F8563E2C39607DD623 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
- "${PODS_ROOT}/Manifest.lock",
- );
- name = "[CP] Check Pods Manifest.lock";
+ name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
- );
- outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
@@ -569,6 +600,18 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ E81E0B282CA33D3400B1C606 /* BreezSDKLiquid.swift in Sources */,
+ E81E0B292CA33D3400B1C606 /* BreezSDKLiquidConnector.swift in Sources */,
+ E81E0B2A2CA33D3400B1C606 /* Constants.swift in Sources */,
+ E81E0B2B2CA33D3400B1C606 /* ResourceHelper.swift in Sources */,
+ E81E0B2C2CA33D3400B1C606 /* SDKNotificationService.swift in Sources */,
+ E81E0B2D2CA33D3400B1C606 /* ServiceLogger.swift in Sources */,
+ E81E0B2E2CA33D3400B1C606 /* String+SHA256.swift in Sources */,
+ E81E0B2F2CA33D3400B1C606 /* TaskProtocol.swift in Sources */,
+ E81E0B302CA33D3400B1C606 /* LnurlPay.swift in Sources */,
+ E81E0B312CA33D3400B1C606 /* LnurlPayInfo.swift in Sources */,
+ E81E0B322CA33D3400B1C606 /* LnurlPayInvoice.swift in Sources */,
+ E81E0B332CA33D3400B1C606 /* SwapUpdated.swift in Sources */,
732A3D282C6CCF13007563A8 /* NotificationService.swift in Sources */,
732A3D382C6CD974007563A8 /* KeyChainAccessGroupHelper.swift in Sources */,
732A3D372C6CD974007563A8 /* KeychainHelper.swift in Sources */,
@@ -676,7 +719,7 @@
};
249021D4217E4FDB00AE95B9 /* Profile */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 9C2A04A44FDB19A00EE94C39 /* Pods-Runner.profile.xcconfig */;
+ baseConfigurationReference = E7211525E34935B102E5EFDE /* Pods-Runner.profile.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
@@ -706,7 +749,7 @@
};
331C8088294A63A400263BE5 /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 307656AD6C1928A220DF8A3D /* Pods-RunnerTests.debug.xcconfig */;
+ baseConfigurationReference = A5D0EE47AA4771041A1CBC55 /* Pods-RunnerTests.debug.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
@@ -724,7 +767,7 @@
};
331C8089294A63A400263BE5 /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = A54E869D93DD243818730EC5 /* Pods-RunnerTests.release.xcconfig */;
+ baseConfigurationReference = DA2DB30BC09C4A357F1D46E9 /* Pods-RunnerTests.release.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
@@ -740,7 +783,7 @@
};
331C808A294A63A400263BE5 /* Profile */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 1C08D7501EA08FEEA635C1B5 /* Pods-RunnerTests.profile.xcconfig */;
+ baseConfigurationReference = AA2D2688679C6C1E85062BDC /* Pods-RunnerTests.profile.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
@@ -756,7 +799,7 @@
};
732A3D2E2C6CCF13007563A8 /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = C2E61D892244B37FD730BBE4 /* Pods-NotificationService.debug.xcconfig */;
+ baseConfigurationReference = 9B8020850FF5EEDC264189B0 /* Pods-NotificationService.debug.xcconfig */;
buildSettings = {
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
@@ -798,7 +841,7 @@
};
732A3D2F2C6CCF13007563A8 /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 1716C2BF6131162D390D93A5 /* Pods-NotificationService.release.xcconfig */;
+ baseConfigurationReference = AB82E2270AD8486FBE411041 /* Pods-NotificationService.release.xcconfig */;
buildSettings = {
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
@@ -806,11 +849,13 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
- CODE_SIGN_STYLE = Automatic;
+ CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = "";
+ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = F7R2LZH3W5;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu17;
GENERATE_INFOPLIST_FILE = YES;
@@ -828,6 +873,8 @@
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.breez.liquid.lBreez.NotificationService;
PRODUCT_NAME = "$(TARGET_NAME)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "misty breez notification extension profile";
SKIP_INSTALL = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_VERSION = 5.0;
@@ -837,7 +884,7 @@
};
732A3D302C6CCF13007563A8 /* Profile */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = F3CDA02A2B9516E892C91FF1 /* Pods-NotificationService.profile.xcconfig */;
+ baseConfigurationReference = 6BCF8D3BC5BE8834E9213954 /* Pods-NotificationService.profile.xcconfig */;
buildSettings = {
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
@@ -845,6 +892,7 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
@@ -990,7 +1038,7 @@
};
97C147061CF9000F007C117D /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 3BA62FF80BBC75AD80E016C8 /* Pods-Runner.debug.xcconfig */;
+ baseConfigurationReference = 98663859675A024C3E3A77BE /* Pods-Runner.debug.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
@@ -1021,7 +1069,7 @@
};
97C147071CF9000F007C117D /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = BA1800BC5214E8D55214D607 /* Pods-Runner.release.xcconfig */;
+ baseConfigurationReference = 8C8191A11058364B53A35B4A /* Pods-Runner.release.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index 92f0e5be..e5a16503 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -109,5 +109,7 @@
UIViewControllerBasedStatusBarAppearance
+ FirebaseAppDelegateProxyEnabled
+
diff --git a/lib/main/bootstrap.dart b/lib/main/bootstrap.dart
index bf432371..2f003670 100644
--- a/lib/main/bootstrap.dart
+++ b/lib/main/bootstrap.dart
@@ -11,6 +11,7 @@ import 'package:hydrated_bloc/hydrated_bloc.dart';
import 'package:l_breez/cubit/cubit.dart';
// ignore: uri_does_not_exist
import 'package:l_breez/firebase/firebase_options.dart';
+import 'package:l_breez/main/bootstrap_error_page.dart';
import 'package:l_breez/utils/date.dart';
import 'package:logging/logging.dart';
import 'package:path/path.dart' as p;
@@ -32,27 +33,25 @@ Future bootstrap(AppBuilder builder) async {
SystemChrome.setPreferredOrientations(
[DeviceOrientation.portraitUp, DeviceOrientation.portraitDown],
);
+ // iOS Extension requirement
+ if (defaultTargetPlatform == TargetPlatform.iOS) {
+ SharedPreferenceAppGroup.setAppGroup(
+ "group.F7R2LZH3W5.com.breez.liquid.lBreez",
+ );
+ }
+
// Initialize library
- await liquid_sdk.initialize();
- //initializeDateFormatting(Platform.localeName, null);
+ await _initializeLiquidSdk();
+ final injector = ServiceInjector();
+ final breezLogger = injector.breezLogger;
+ breezLogger.registerBreezSdkLiquidLogs(injector.liquidSDK);
BreezDateUtils.setupLocales();
await Firebase.initializeApp(
// ignore: undefined_identifier
options: DefaultFirebaseOptions.currentPlatform,
);
- final injector = ServiceInjector();
- var breezLogger = injector.breezLogger;
- breezLogger.registerBreezSdkLiquidLogs(injector.liquidSDK);
final appDir = await getApplicationDocumentsDirectory();
-
- // iOS Extension requirement
- if (defaultTargetPlatform == TargetPlatform.iOS) {
- SharedPreferenceAppGroup.setAppGroup(
- "group.F7R2LZH3W5.com.breez.liquid.lBreez",
- );
- }
-
HydratedBloc.storage = await HydratedStorage.build(
storageDirectory: Directory(p.join(appDir.path, "bloc_storage")),
);
@@ -72,3 +71,12 @@ Future bootstrap(AppBuilder builder) async {
}
});
}
+
+Future _initializeLiquidSdk() async {
+ try {
+ await liquid_sdk.initialize();
+ } catch (error, stackTrace) {
+ _log.severe("Failed to initialize Liquid SDK: $error", error, stackTrace);
+ runApp(BootstrapErrorPage(error: error, stackTrace: stackTrace));
+ }
+}
diff --git a/lib/main/bootstrap_error_page.dart b/lib/main/bootstrap_error_page.dart
new file mode 100644
index 00000000..8f356fd8
--- /dev/null
+++ b/lib/main/bootstrap_error_page.dart
@@ -0,0 +1,188 @@
+import 'dart:io';
+
+import 'package:breez_translations/breez_translations_locales.dart';
+import 'package:flutter/material.dart';
+import 'package:l_breez/theme/src/theme.dart';
+import 'package:l_breez/theme/theme.dart';
+import 'package:l_breez/widgets/error_dialog.dart';
+import 'package:l_breez/widgets/single_button_bottom_bar.dart';
+
+class BootstrapErrorPage extends StatefulWidget {
+ final Object error;
+ final StackTrace stackTrace;
+
+ const BootstrapErrorPage({super.key, required this.error, required this.stackTrace});
+
+ @override
+ State createState() => _BootstrapErrorPageState();
+}
+
+class _BootstrapErrorPageState extends State {
+ final ScrollController _errorScrollController = ScrollController();
+ final ScrollController _stackTraceScrollController = ScrollController();
+
+ @override
+ Widget build(BuildContext context) {
+ return PopScope(
+ canPop: false,
+ onPopInvoked: (bool didPop) async {
+ if (didPop) return;
+
+ final texts = context.texts();
+ final bool? shouldPop = await promptAreYouSure(
+ context,
+ texts.close_popup_title,
+ Text(texts.close_popup_message),
+ );
+ if (shouldPop ?? false) exit(0);
+ },
+ child: MaterialApp(
+ title: "Misty ${getSystemAppLocalizations().app_name}",
+ theme: breezLightTheme,
+ localizationsDelegates: localizationsDelegates(),
+ supportedLocales: supportedLocales(),
+ builder: (BuildContext context, Widget? child) {
+ const kMaxTitleTextScaleFactor = 1.3;
+
+ return MediaQuery.withClampedTextScaling(
+ maxScaleFactor: kMaxTitleTextScaleFactor,
+ child: child!,
+ );
+ },
+ home: Scaffold(
+ appBar: AppBar(),
+ body: Center(
+ child: Padding(
+ padding: const EdgeInsets.only(left: 16.0, right: 16.0, bottom: 40.0),
+ child: SingleChildScrollView(
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.center,
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ Icon(Icons.error_outline, color: breezLightTheme.iconTheme.color, size: 64),
+ Padding(
+ padding: const EdgeInsets.symmetric(vertical: 16.0),
+ child: Text(
+ "Failed to initialize Breez SDK - Liquid",
+ style: breezLightTheme.textTheme.headlineSmall?.copyWith(color: Colors.white),
+ textAlign: TextAlign.center,
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: const EdgeInsets.all(12),
+ decoration: BoxDecoration(
+ color: breezLightTheme.colorScheme.surface,
+ borderRadius: BorderRadius.circular(8),
+ ),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Text(
+ "Error:",
+ style: breezLightTheme.textTheme.labelLarge?.copyWith(
+ fontSize: 16,
+ fontWeight: FontWeight.w700,
+ ),
+ ),
+ const SizedBox(height: 8),
+ Container(
+ constraints: const BoxConstraints(
+ minHeight: 80,
+ maxHeight: 120,
+ ),
+ child: Theme(
+ data: ThemeData(),
+ child: Scrollbar(
+ thumbVisibility: true,
+ trackVisibility: true,
+ controller: _errorScrollController,
+ child: SingleChildScrollView(
+ controller: _errorScrollController,
+ child: Column(
+ children: [
+ Text(
+ widget.error.toString(),
+ style: const TextStyle(
+ fontSize: 14,
+ color: Colors.black54,
+ fontFamily: 'monospace',
+ ),
+ textAlign: TextAlign.left,
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ ),
+ ],
+ ),
+ ),
+ const SizedBox(height: 16),
+ Container(
+ width: double.infinity,
+ padding: const EdgeInsets.all(12),
+ decoration: BoxDecoration(
+ color: breezLightTheme.colorScheme.surface,
+ borderRadius: BorderRadius.circular(8),
+ ),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Text(
+ "Stack Trace:",
+ style: breezLightTheme.textTheme.labelLarge?.copyWith(
+ fontSize: 16,
+ fontWeight: FontWeight.w700,
+ ),
+ ),
+ const SizedBox(height: 8),
+ Container(
+ constraints: const BoxConstraints(
+ minHeight: 160,
+ maxHeight: 240,
+ ),
+ child: Theme(
+ data: ThemeData(),
+ child: Scrollbar(
+ controller: _stackTraceScrollController,
+ child: SingleChildScrollView(
+ controller: _stackTraceScrollController,
+ child: Column(
+ children: [
+ Text(
+ widget.stackTrace.toString(),
+ style: const TextStyle(
+ fontSize: 14,
+ color: Colors.black54,
+ fontFamily: 'monospace',
+ ),
+ textAlign: TextAlign.left,
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ ),
+ ],
+ ),
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ bottomNavigationBar: SingleButtonBottomBar(
+ stickToBottom: true,
+ text: "EXIT",
+ onPressed: () {
+ exit(1);
+ },
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/packages/breez_logger/lib/src/breez_logger.dart b/packages/breez_logger/lib/src/breez_logger.dart
index e3abfceb..671b300a 100644
--- a/packages/breez_logger/lib/src/breez_logger.dart
+++ b/packages/breez_logger/lib/src/breez_logger.dart
@@ -10,7 +10,7 @@ import 'package:flutter_breez_liquid/flutter_breez_liquid.dart' as liquid_sdk;
import 'package:logging/logging.dart';
import 'package:share_plus/share_plus.dart';
-final _log = Logger("Logger");
+final _log = Logger("BreezLogger");
final _liquidSdkLog = Logger("BreezSdkLiquid");
class BreezLogger {
@@ -26,41 +26,67 @@ class BreezLogger {
});
}
- AppConfig.instance().then((config) {
- var appDir = Directory(config.sdkConfig.workingDir);
- _pruneLogs(appDir);
- final file = File("${_logDir(appDir)}/${DateTime.now().millisecondsSinceEpoch}.app.log");
+ _createSessionLogFile();
- try {
- file.createSync(recursive: true);
- } catch (e) {
- _log.severe("Failed to create log file", e);
- return;
- }
- final sync = file.openWrite(mode: FileMode.append);
- Logger.root.onRecord.listen((record) {
- sync.writeln(_recordToString(record));
- }, onDone: () {
- sync.flush();
- sync.close();
- });
+ FlutterError.onError = (FlutterErrorDetails details) async {
+ FlutterError.presentError(details);
+ final name = details.context?.name ?? "FlutterError";
+ final exception = details.exceptionAsString();
+ _log.severe("$exception -- $name", details, details.stack);
+ };
- FlutterError.onError = (FlutterErrorDetails details) async {
- FlutterError.presentError(details);
- final name = details.context?.name ?? "FlutterError";
- final exception = details.exceptionAsString();
- _log.severe("$exception -- $name", details, details.stack);
- };
-
- DeviceInfoPlugin().deviceInfo.then((deviceInfo) {
- _log.info("Device info:");
- deviceInfo.data.forEach((key, value) => _log.info("$key: $value"));
- }, onError: (error) {
- _log.severe("Failed to get device info", error);
- });
+ DeviceInfoPlugin().deviceInfo.then((deviceInfo) {
+ _log.info("Device info:");
+ deviceInfo.data.forEach((key, value) => _log.info("$key: $value"));
+ }, onError: (error) {
+ _log.severe("Failed to get device info", error);
});
}
+ void _createSessionLogFile() async {
+ try {
+ final config = await AppConfig.instance();
+ final appDir = Directory(config.sdkConfig.workingDir);
+
+ _pruneLogs(appDir);
+
+ final logFile = File("${appDir.path}/logs/${DateTime.now().millisecondsSinceEpoch}.app.log");
+ logFile.createSync(recursive: true);
+
+ final sync = logFile.openWrite(mode: FileMode.append);
+ Logger.root.onRecord.listen(
+ (record) => sync.writeln(_recordToString(record)),
+ onDone: () async {
+ await sync.flush();
+ await sync.close();
+ },
+ );
+ } catch (e) {
+ _log.severe("Failed to create log file", e);
+ }
+ }
+
+ void _pruneLogs(Directory appDir) {
+ final loggingFolder = Directory("${appDir.path}/logs/");
+ if (!loggingFolder.existsSync()) return;
+
+ // Get and sort log files by modified date
+ final logFiles = loggingFolder
+ .listSync(followLinks: false)
+ .whereType()
+ .where((file) => file.path.endsWith('.log'))
+ .toList()
+ ..sort((a, b) => a.statSync().modified.compareTo(b.statSync().modified));
+
+ // Delete all except the last 10 log files
+ if (logFiles.length > 10) {
+ final filesToDelete = logFiles.take(logFiles.length - 10);
+ for (var file in filesToDelete) {
+ file.deleteSync();
+ }
+ }
+ }
+
void registerBreezSdkLiquidLogs(BreezSDKLiquid liquidSdk) {
liquidSdk.logStream.listen((e) => _logLiquidSdkEntries(e, _liquidSdkLog));
}
@@ -91,30 +117,6 @@ class BreezLogger {
"${record.stackTrace != null ? "\n${record.stackTrace}" : ""}";
String _formatTime(DateTime time) => time.toUtc().toIso8601String();
-
- String _logDir(Directory appDir) => "${appDir.path}/logs/";
-
- void _pruneLogs(Directory appDir) {
- final loggingFolder = Directory(_logDir(appDir));
- if (loggingFolder.existsSync()) {
- // Get and sort log files by modified date
- List filesToBePruned = loggingFolder
- .listSync(followLinks: false)
- .where((e) => e.path.endsWith('.log'))
- .toList()
- ..sort((l, r) => l.statSync().modified.compareTo(r.statSync().modified));
- // Delete all except last 10 logs
- if (filesToBePruned.length > 10) {
- filesToBePruned.removeRange(
- filesToBePruned.length - 10,
- filesToBePruned.length,
- );
- for (var logFile in filesToBePruned) {
- logFile.delete();
- }
- }
- }
- }
}
void shareLog() async {
diff --git a/packages/breez_logger/pubspec.lock b/packages/breez_logger/pubspec.lock
index 0e162040..441f6be7 100644
--- a/packages/breez_logger/pubspec.lock
+++ b/packages/breez_logger/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
app_group_directory:
dependency: transitive
description:
@@ -207,10 +207,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -231,18 +231,18 @@ packages:
dependency: transitive
description:
name: firebase_dynamic_links
- sha256: ffcae75bfbb95a5fec87e6af8a9389d32f6aadd79220a2b76ef9e220e5284a87
+ sha256: "090becd30b4cf2ba1d5d25d0162d60c32dc1a2390a0be7306e6104c3e36e1b39"
url: "https://pub.dev"
source: hosted
- version: "6.0.7"
+ version: "6.0.8"
firebase_dynamic_links_platform_interface:
dependency: transitive
description:
name: firebase_dynamic_links_platform_interface
- sha256: "74840d428d4ee5472461a2bfde57cfa3b273845474af78e80d24dae3694de456"
+ sha256: b802020cd5d3d6eed1182b743e55c3f47a11ebd57ad27adc0eb20f28375c7916
url: "https://pub.dev"
source: hosted
- version: "0.2.6+43"
+ version: "0.2.6+44"
firebase_messaging:
dependency: transitive
description:
@@ -255,18 +255,18 @@ packages:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: "69671a0f1a40c7b7c46ad0283e6f34ca2a59a0362ca14a240a4ea01c46e8a521"
+ sha256: b316c4ee10d93d32c033644207afc282d9b2b4372f3cf9c6022f3558b3873d2d
url: "https://pub.dev"
source: hosted
- version: "4.5.45"
+ version: "4.5.46"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: "6890111a9d01d7b13d0f6fe74850812c334e903d2c80a2d9356a3abb8c3a9e9a"
+ sha256: d7f0147a1a9fe4313168e20154a01fd5cf332898de1527d3930ff77b8c7f5387
url: "https://pub.dev"
source: hosted
- version: "3.9.1"
+ version: "3.9.2"
firebase_notifications_client:
dependency: "direct overridden"
description:
@@ -814,10 +814,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_math:
dependency: transitive
description:
@@ -838,10 +838,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
win32:
dependency: transitive
description:
diff --git a/packages/breez_preferences/pubspec.lock b/packages/breez_preferences/pubspec.lock
index c625ff2b..b2b5e779 100644
--- a/packages/breez_preferences/pubspec.lock
+++ b/packages/breez_preferences/pubspec.lock
@@ -196,10 +196,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
xdg_directories:
dependency: transitive
description:
diff --git a/packages/breez_sdk_liquid/lib/src/breez_sdk_liquid.dart b/packages/breez_sdk_liquid/lib/src/breez_sdk_liquid.dart
index 948222cd..69b58cbd 100644
--- a/packages/breez_sdk_liquid/lib/src/breez_sdk_liquid.dart
+++ b/packages/breez_sdk_liquid/lib/src/breez_sdk_liquid.dart
@@ -1,6 +1,8 @@
import 'dart:async';
import 'package:flutter_breez_liquid/flutter_breez_liquid.dart' as liquid_sdk;
+import 'package:flutter/foundation.dart';
+import 'package:flutter/services.dart';
import 'package:rxdart/rxdart.dart';
class BreezSDKLiquid {
@@ -68,7 +70,13 @@ class BreezSDKLiquid {
///
/// Call once on your Dart entrypoint file, e.g.; `lib/main.dart`.
void initializeLogStream() {
- _breezLogStream ??= liquid_sdk.breezLogStream().asBroadcastStream();
+ if (defaultTargetPlatform == TargetPlatform.android) {
+ _breezLogStream ??= const EventChannel('breez_sdk_liquid_logs')
+ .receiveBroadcastStream()
+ .map((log) => liquid_sdk.LogEntry(line: log["line"], level: log["level"]));
+ } else {
+ _breezLogStream ??= liquid_sdk.breezLogStream().asBroadcastStream();
+ }
}
StreamSubscription? _breezEventsSubscription;
diff --git a/packages/breez_sdk_liquid/pubspec.lock b/packages/breez_sdk_liquid/pubspec.lock
index 9dedc1ac..dbefc958 100644
--- a/packages/breez_sdk_liquid/pubspec.lock
+++ b/packages/breez_sdk_liquid/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
app_group_directory:
dependency: "direct main"
description:
@@ -207,10 +207,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -231,18 +231,18 @@ packages:
dependency: transitive
description:
name: firebase_dynamic_links
- sha256: ffcae75bfbb95a5fec87e6af8a9389d32f6aadd79220a2b76ef9e220e5284a87
+ sha256: "090becd30b4cf2ba1d5d25d0162d60c32dc1a2390a0be7306e6104c3e36e1b39"
url: "https://pub.dev"
source: hosted
- version: "6.0.7"
+ version: "6.0.8"
firebase_dynamic_links_platform_interface:
dependency: transitive
description:
name: firebase_dynamic_links_platform_interface
- sha256: "74840d428d4ee5472461a2bfde57cfa3b273845474af78e80d24dae3694de456"
+ sha256: b802020cd5d3d6eed1182b743e55c3f47a11ebd57ad27adc0eb20f28375c7916
url: "https://pub.dev"
source: hosted
- version: "0.2.6+43"
+ version: "0.2.6+44"
firebase_messaging:
dependency: transitive
description:
@@ -255,18 +255,18 @@ packages:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: "69671a0f1a40c7b7c46ad0283e6f34ca2a59a0362ca14a240a4ea01c46e8a521"
+ sha256: b316c4ee10d93d32c033644207afc282d9b2b4372f3cf9c6022f3558b3873d2d
url: "https://pub.dev"
source: hosted
- version: "4.5.45"
+ version: "4.5.46"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: "6890111a9d01d7b13d0f6fe74850812c334e903d2c80a2d9356a3abb8c3a9e9a"
+ sha256: d7f0147a1a9fe4313168e20154a01fd5cf332898de1527d3930ff77b8c7f5387
url: "https://pub.dev"
source: hosted
- version: "3.9.1"
+ version: "3.9.2"
firebase_notifications_client:
dependency: "direct overridden"
description:
@@ -814,10 +814,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_math:
dependency: transitive
description:
@@ -838,10 +838,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
win32:
dependency: transitive
description:
diff --git a/packages/deep_link_client/pubspec.lock b/packages/deep_link_client/pubspec.lock
index 66fe7087..49990e25 100644
--- a/packages/deep_link_client/pubspec.lock
+++ b/packages/deep_link_client/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
async:
dependency: transitive
description:
@@ -61,10 +61,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -85,18 +85,18 @@ packages:
dependency: "direct main"
description:
name: firebase_dynamic_links
- sha256: ffcae75bfbb95a5fec87e6af8a9389d32f6aadd79220a2b76ef9e220e5284a87
+ sha256: "090becd30b4cf2ba1d5d25d0162d60c32dc1a2390a0be7306e6104c3e36e1b39"
url: "https://pub.dev"
source: hosted
- version: "6.0.7"
+ version: "6.0.8"
firebase_dynamic_links_platform_interface:
dependency: transitive
description:
name: firebase_dynamic_links_platform_interface
- sha256: "74840d428d4ee5472461a2bfde57cfa3b273845474af78e80d24dae3694de456"
+ sha256: b802020cd5d3d6eed1182b743e55c3f47a11ebd57ad27adc0eb20f28375c7916
url: "https://pub.dev"
source: hosted
- version: "0.2.6+43"
+ version: "0.2.6+44"
flutter:
dependency: transitive
description: flutter
@@ -265,10 +265,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
sdks:
dart: ">=3.4.0 <4.0.0"
flutter: ">=3.22.0"
diff --git a/packages/device_client/pubspec.lock b/packages/device_client/pubspec.lock
index c4464411..0ff15c25 100644
--- a/packages/device_client/pubspec.lock
+++ b/packages/device_client/pubspec.lock
@@ -388,10 +388,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_math:
dependency: transitive
description:
@@ -404,10 +404,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
win32:
dependency: transitive
description:
diff --git a/packages/notifications_client/firebase_notifications_client/pubspec.lock b/packages/notifications_client/firebase_notifications_client/pubspec.lock
index 800b0373..30f228a2 100644
--- a/packages/notifications_client/firebase_notifications_client/pubspec.lock
+++ b/packages/notifications_client/firebase_notifications_client/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
async:
dependency: transitive
description:
@@ -61,10 +61,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -93,18 +93,18 @@ packages:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: "69671a0f1a40c7b7c46ad0283e6f34ca2a59a0362ca14a240a4ea01c46e8a521"
+ sha256: b316c4ee10d93d32c033644207afc282d9b2b4372f3cf9c6022f3558b3873d2d
url: "https://pub.dev"
source: hosted
- version: "4.5.45"
+ version: "4.5.46"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: "6890111a9d01d7b13d0f6fe74850812c334e903d2c80a2d9356a3abb8c3a9e9a"
+ sha256: d7f0147a1a9fe4313168e20154a01fd5cf332898de1527d3930ff77b8c7f5387
url: "https://pub.dev"
source: hosted
- version: "3.9.1"
+ version: "3.9.2"
flutter:
dependency: transitive
description: flutter
@@ -273,10 +273,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
sdks:
dart: ">=3.4.0 <4.0.0"
flutter: ">=3.22.0"
diff --git a/packages/sdk_connectivity_cubit/pubspec.lock b/packages/sdk_connectivity_cubit/pubspec.lock
index 350322ac..1ba80838 100644
--- a/packages/sdk_connectivity_cubit/pubspec.lock
+++ b/packages/sdk_connectivity_cubit/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
app_group_directory:
dependency: transitive
description:
@@ -262,10 +262,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -286,18 +286,18 @@ packages:
dependency: transitive
description:
name: firebase_dynamic_links
- sha256: ffcae75bfbb95a5fec87e6af8a9389d32f6aadd79220a2b76ef9e220e5284a87
+ sha256: "090becd30b4cf2ba1d5d25d0162d60c32dc1a2390a0be7306e6104c3e36e1b39"
url: "https://pub.dev"
source: hosted
- version: "6.0.7"
+ version: "6.0.8"
firebase_dynamic_links_platform_interface:
dependency: transitive
description:
name: firebase_dynamic_links_platform_interface
- sha256: "74840d428d4ee5472461a2bfde57cfa3b273845474af78e80d24dae3694de456"
+ sha256: b802020cd5d3d6eed1182b743e55c3f47a11ebd57ad27adc0eb20f28375c7916
url: "https://pub.dev"
source: hosted
- version: "0.2.6+43"
+ version: "0.2.6+44"
firebase_messaging:
dependency: transitive
description:
@@ -310,18 +310,18 @@ packages:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: "69671a0f1a40c7b7c46ad0283e6f34ca2a59a0362ca14a240a4ea01c46e8a521"
+ sha256: b316c4ee10d93d32c033644207afc282d9b2b4372f3cf9c6022f3558b3873d2d
url: "https://pub.dev"
source: hosted
- version: "4.5.45"
+ version: "4.5.46"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: "6890111a9d01d7b13d0f6fe74850812c334e903d2c80a2d9356a3abb8c3a9e9a"
+ sha256: d7f0147a1a9fe4313168e20154a01fd5cf332898de1527d3930ff77b8c7f5387
url: "https://pub.dev"
source: hosted
- version: "3.9.1"
+ version: "3.9.2"
firebase_notifications_client:
dependency: "direct overridden"
description:
@@ -934,10 +934,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_math:
dependency: transitive
description:
@@ -958,10 +958,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
win32:
dependency: transitive
description:
diff --git a/packages/service_injector/pubspec.lock b/packages/service_injector/pubspec.lock
index ad748d47..fff55a56 100644
--- a/packages/service_injector/pubspec.lock
+++ b/packages/service_injector/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "5fdcea390499dd26c808a3c662df5f4208d6bbc0643072eee94f1476249e2818"
+ sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2"
url: "https://pub.dev"
source: hosted
- version: "1.3.43"
+ version: "1.3.44"
app_group_directory:
dependency: transitive
description:
@@ -54,10 +54,10 @@ packages:
description:
path: "."
ref: HEAD
- resolved-ref: "27e4a7c762774cd057f06ef826f07bcaba658f25"
+ resolved-ref: "792f6c3c6a46e3747187c38cce259adb3ffb660b"
url: "https://github.com/breez/breez-sdk-liquid-dart"
source: git
- version: "0.3.1-dev4"
+ version: "0.3.5-dev1"
breez_logger:
dependency: "direct main"
description:
@@ -216,10 +216,10 @@ packages:
dependency: transitive
description:
name: firebase_core
- sha256: c7de9354eb2cd8bfe8059e1112174c9a58beda7051807207306bc48283277cfb
+ sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96"
url: "https://pub.dev"
source: hosted
- version: "3.5.0"
+ version: "3.6.0"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -240,18 +240,18 @@ packages:
dependency: transitive
description:
name: firebase_dynamic_links
- sha256: ffcae75bfbb95a5fec87e6af8a9389d32f6aadd79220a2b76ef9e220e5284a87
+ sha256: "090becd30b4cf2ba1d5d25d0162d60c32dc1a2390a0be7306e6104c3e36e1b39"
url: "https://pub.dev"
source: hosted
- version: "6.0.7"
+ version: "6.0.8"
firebase_dynamic_links_platform_interface:
dependency: transitive
description:
name: firebase_dynamic_links_platform_interface
- sha256: "74840d428d4ee5472461a2bfde57cfa3b273845474af78e80d24dae3694de456"
+ sha256: b802020cd5d3d6eed1182b743e55c3f47a11ebd57ad27adc0eb20f28375c7916
url: "https://pub.dev"
source: hosted
- version: "0.2.6+43"
+ version: "0.2.6+44"
firebase_messaging:
dependency: transitive
description:
@@ -264,18 +264,18 @@ packages:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: "69671a0f1a40c7b7c46ad0283e6f34ca2a59a0362ca14a240a4ea01c46e8a521"
+ sha256: b316c4ee10d93d32c033644207afc282d9b2b4372f3cf9c6022f3558b3873d2d
url: "https://pub.dev"
source: hosted
- version: "4.5.45"
+ version: "4.5.46"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: "6890111a9d01d7b13d0f6fe74850812c334e903d2c80a2d9356a3abb8c3a9e9a"
+ sha256: d7f0147a1a9fe4313168e20154a01fd5cf332898de1527d3930ff77b8c7f5387
url: "https://pub.dev"
source: hosted
- version: "3.9.1"
+ version: "3.9.2"
firebase_notifications_client:
dependency: "direct main"
description:
@@ -301,10 +301,10 @@ packages:
description:
path: "."
ref: HEAD
- resolved-ref: "3ac92dca25d75fed7a1cc0cd702b6c0ca059b6d8"
+ resolved-ref: daff3da01ee0043afefbb8aff0842b7f37b5ab7a
url: "https://github.com/breez/breez-sdk-liquid-flutter"
source: git
- version: "0.3.1-dev4"
+ version: "0.3.5-dev1"
flutter_rust_bridge:
dependency: transitive
description:
@@ -818,10 +818,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_math:
dependency: transitive
description:
@@ -842,10 +842,10 @@ packages:
dependency: transitive
description:
name: web
- sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
+ sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.1.0"
win32:
dependency: transitive
description:
diff --git a/pubspec.lock b/pubspec.lock
index 15475ce0..0cb4907c 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -1829,10 +1829,10 @@ packages:
dependency: transitive
description:
name: uuid
- sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
+ sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff
url: "https://pub.dev"
source: hosted
- version: "4.5.0"
+ version: "4.5.1"
vector_graphics:
dependency: transitive
description: