mirror of
https://github.com/aljazceru/breez-sdk-liquid.git
synced 2025-12-21 16:04:27 +01:00
Allow working with local library on iOS (#434)
* Update SDK range and update dependencies to latest * Correct the output folder creation on codegen just recipe * Create a podspec for local development * Use production podspec when publishing * Remove spec.platform as deployment targets are already set
This commit is contained in:
1
.github/workflows/publish-flutter.yml
vendored
1
.github/workflows/publish-flutter.yml
vendored
@@ -58,6 +58,7 @@ jobs:
|
|||||||
rm -rf lib
|
rm -rf lib
|
||||||
cp -r ../build/packages/flutter/android .
|
cp -r ../build/packages/flutter/android .
|
||||||
cp -r ../build/packages/flutter/ios .
|
cp -r ../build/packages/flutter/ios .
|
||||||
|
mv ios/flutter_breez_liquid.podspec.production ios/flutter_breez_liquid.podspec
|
||||||
cp -r ../build/packages/flutter/lib .
|
cp -r ../build/packages/flutter/lib .
|
||||||
cp -r ../build/lib/bindings/langs/flutter/breez_sdk_liquid/include/breez_sdk_liquid.h ios/Classes
|
cp -r ../build/lib/bindings/langs/flutter/breez_sdk_liquid/include/breez_sdk_liquid.h ios/Classes
|
||||||
cp ../build/packages/flutter/analysis_options.yaml .
|
cp ../build/packages/flutter/analysis_options.yaml .
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ gen: codegen && ffigen
|
|||||||
|
|
||||||
# Generate Dart/Flutter bindings && softlink C headers
|
# Generate Dart/Flutter bindings && softlink C headers
|
||||||
codegen:
|
codegen:
|
||||||
mkdir -p ../../../../packages/flutter/lib/src
|
mkdir -p ../../../../packages/dart/lib/src
|
||||||
{{frb_bin}}
|
{{frb_bin}}
|
||||||
cd ../../../../packages/dart/lib/src && dart format -l 110 .
|
cd ../../../../packages/dart/lib/src && dart format -l 110 .
|
||||||
-ln -sf $(pwd)/breez_sdk_liquid/include/breez_sdk_liquid.h ../../../../packages/flutter/ios/Classes/breez_sdk_liquid.h
|
-ln -sf $(pwd)/breez_sdk_liquid/include/breez_sdk_liquid.h ../../../../packages/flutter/ios/Classes/breez_sdk_liquid.h
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ class _HomePageState extends State<HomePage> {
|
|||||||
} on Exception catch (e) {
|
} on Exception catch (e) {
|
||||||
final errMsg = "Failed to sync wallet. $e";
|
final errMsg = "Failed to sync wallet. $e";
|
||||||
debugPrint(errMsg);
|
debugPrint(errMsg);
|
||||||
if (context.mounted) {
|
if (mounted) {
|
||||||
final snackBar = SnackBar(behavior: SnackBarBehavior.floating, content: Text(errMsg));
|
final snackBar = SnackBar(behavior: SnackBarBehavior.floating, content: Text(errMsg));
|
||||||
ScaffoldMessenger.of(context).showSnackBar(snackBar);
|
ScaffoldMessenger.of(context).showSnackBar(snackBar);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -266,18 +266,18 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker
|
name: leak_tracker
|
||||||
sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a"
|
sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "10.0.4"
|
version: "10.0.5"
|
||||||
leak_tracker_flutter_testing:
|
leak_tracker_flutter_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: leak_tracker_flutter_testing
|
name: leak_tracker_flutter_testing
|
||||||
sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8"
|
sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.0.3"
|
version: "3.0.5"
|
||||||
leak_tracker_testing:
|
leak_tracker_testing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -314,18 +314,18 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: material_color_utilities
|
name: material_color_utilities
|
||||||
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
|
sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.8.0"
|
version: "0.11.1"
|
||||||
meta:
|
meta:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: meta
|
name: meta
|
||||||
sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
|
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.12.0"
|
version: "1.15.0"
|
||||||
mobile_scanner:
|
mobile_scanner:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
@@ -503,10 +503,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: test_api
|
name: test_api
|
||||||
sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
|
sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.7.0"
|
version: "0.7.2"
|
||||||
typed_data:
|
typed_data:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -527,10 +527,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: vm_service
|
name: vm_service
|
||||||
sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec"
|
sha256: f652077d0bdf60abe4c1f6377448e8655008eef28f128bc023f7b5e8dfeb48fc
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "14.2.1"
|
version: "14.2.4"
|
||||||
web:
|
web:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -572,5 +572,5 @@ packages:
|
|||||||
source: hosted
|
source: hosted
|
||||||
version: "2.2.1"
|
version: "2.2.1"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=3.4.0 <4.0.0"
|
dart: ">=3.5.0 <4.0.0"
|
||||||
flutter: ">=3.22.0"
|
flutter: ">=3.24.0"
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ publish_to: 'none'
|
|||||||
version: 0.2.1
|
version: 0.2.1
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.4.0 <4.0.0'
|
sdk: '>=3.5.0 <4.0.0'
|
||||||
flutter: ">=3.10.0"
|
flutter: ">=3.24.0"
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
flutter:
|
flutter:
|
||||||
|
|||||||
@@ -6,9 +6,10 @@ release_tag_name = "breez_liquid-#{tag_name}"
|
|||||||
# so we have to fetch the correct version here.
|
# so we have to fetch the correct version here.
|
||||||
framework_name = 'breez_sdk_liquid.xcframework'
|
framework_name = 'breez_sdk_liquid.xcframework'
|
||||||
remote_zip_name = "#{framework_name}.zip"
|
remote_zip_name = "#{framework_name}.zip"
|
||||||
url = "https://github.com/breez/breez-sdk-liquid-flutter/releases/download/#{tag_name}/#{remote_zip_name}"
|
|
||||||
local_zip_name = "#{release_tag_name}.zip"
|
local_zip_name = "#{release_tag_name}.zip"
|
||||||
|
|
||||||
|
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html.
|
||||||
|
# Run `pod lib lint flutter_breez_liquid.podspec` to validate before publishing.
|
||||||
Pod::Spec.new do |spec|
|
Pod::Spec.new do |spec|
|
||||||
spec.name = 'flutter_breez_liquid'
|
spec.name = 'flutter_breez_liquid'
|
||||||
spec.version = "#{version}"
|
spec.version = "#{version}"
|
||||||
@@ -25,16 +26,17 @@ Pod::Spec.new do |spec|
|
|||||||
spec.prepare_command = <<-CMD
|
spec.prepare_command = <<-CMD
|
||||||
cd Frameworks
|
cd Frameworks
|
||||||
rm -rf #{framework_name}
|
rm -rf #{framework_name}
|
||||||
|
|
||||||
if [ ! -f #{local_zip_name} ]
|
|
||||||
then
|
|
||||||
wget #{url} -O #{local_zip_name} || curl -L #{url} -o #{local_zip_name}
|
|
||||||
fi
|
|
||||||
|
|
||||||
unzip #{local_zip_name}
|
unzip #{local_zip_name}
|
||||||
cd -
|
cd -
|
||||||
CMD
|
CMD
|
||||||
|
|
||||||
spec.ios.deployment_target = '12.0'
|
spec.ios.deployment_target = '12.0'
|
||||||
spec.osx.deployment_target = '10.11'
|
spec.osx.deployment_target = '10.11'
|
||||||
|
|
||||||
|
spec.dependency 'Flutter'
|
||||||
|
spec.static_framework = true
|
||||||
|
|
||||||
|
# Flutter.framework does not contain a i386 slice.
|
||||||
|
spec.pod_target_xcconfig = {'STRIP_STYLE' => 'non-global', 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' }
|
||||||
|
spec.swift_version = '5.0'
|
||||||
end
|
end
|
||||||
|
|||||||
40
packages/flutter/ios/flutter_breez_liquid.podspec.production
Normal file
40
packages/flutter/ios/flutter_breez_liquid.podspec.production
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
version = '0.1.0' # generated; do not edit
|
||||||
|
tag_name = "v#{version}"
|
||||||
|
release_tag_name = "breez_liquid-#{tag_name}"
|
||||||
|
|
||||||
|
# We cannot distribute the XCFramework alongside the library directly,
|
||||||
|
# so we have to fetch the correct version here.
|
||||||
|
framework_name = 'breez_sdk_liquid.xcframework'
|
||||||
|
remote_zip_name = "#{framework_name}.zip"
|
||||||
|
url = "https://github.com/breez/breez-sdk-liquid-flutter/releases/download/#{tag_name}/#{remote_zip_name}"
|
||||||
|
local_zip_name = "#{release_tag_name}.zip"
|
||||||
|
|
||||||
|
Pod::Spec.new do |spec|
|
||||||
|
spec.name = 'flutter_breez_liquid'
|
||||||
|
spec.version = "#{version}"
|
||||||
|
spec.license = { :file => '../LICENSE' }
|
||||||
|
spec.homepage = 'https://breez.technology'
|
||||||
|
spec.authors = { 'Breez' => 'contact@breez.technology' }
|
||||||
|
spec.summary = 'iOS/macOS Flutter bindings for Breez Liquid'
|
||||||
|
|
||||||
|
spec.source = { :path => '.' }
|
||||||
|
spec.source_files = 'Classes/**/*'
|
||||||
|
spec.public_header_files = 'Classes/**/*.h'
|
||||||
|
spec.vendored_frameworks = "Frameworks/#{framework_name}"
|
||||||
|
|
||||||
|
spec.prepare_command = <<-CMD
|
||||||
|
cd Frameworks
|
||||||
|
rm -rf #{framework_name}
|
||||||
|
|
||||||
|
if [ ! -f #{local_zip_name} ]
|
||||||
|
then
|
||||||
|
wget #{url} -O #{local_zip_name} || curl -L #{url} -o #{local_zip_name}
|
||||||
|
fi
|
||||||
|
|
||||||
|
unzip #{local_zip_name}
|
||||||
|
cd -
|
||||||
|
CMD
|
||||||
|
|
||||||
|
spec.ios.deployment_target = '12.0'
|
||||||
|
spec.osx.deployment_target = '10.11'
|
||||||
|
end
|
||||||
@@ -6,8 +6,8 @@ repository: https://github.com/breez/breez-sdk-liquid-flutter
|
|||||||
publish_to: 'none'
|
publish_to: 'none'
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.4.0 <4.0.0'
|
sdk: '>=3.5.0 <4.0.0'
|
||||||
flutter: ">=3.10.0"
|
flutter: ">=3.24.0"
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
flutter:
|
flutter:
|
||||||
|
|||||||
Reference in New Issue
Block a user