diff --git a/image_editor/example/ios/.gitignore b/image_editor/example/ios/.gitignore
index 0ec0969..b1be6ce 100644
--- a/image_editor/example/ios/.gitignore
+++ b/image_editor/example/ios/.gitignore
@@ -18,6 +18,7 @@ Flutter/App.framework
Flutter/Flutter.framework
Flutter/Flutter.podspec
Flutter/Generated.xcconfig
+Flutter/ephemeral/
Flutter/app.flx
Flutter/app.zip
Flutter/flutter_assets/
diff --git a/image_editor/example/ios/Flutter/AppFrameworkInfo.plist b/image_editor/example/ios/Flutter/AppFrameworkInfo.plist
index f2872cf..ab8e063 100644
--- a/image_editor/example/ios/Flutter/AppFrameworkInfo.plist
+++ b/image_editor/example/ios/Flutter/AppFrameworkInfo.plist
@@ -20,7 +20,5 @@
????
CFBundleVersion
1.0
- MinimumOSVersion
- 9.0
diff --git a/image_editor/example/ios/Podfile b/image_editor/example/ios/Podfile
index 2c068c4..10f3c9b 100644
--- a/image_editor/example/ios/Podfile
+++ b/image_editor/example/ios/Podfile
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
-platform :ios, '12.0'
+platform :ios, '13.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
diff --git a/image_editor/example/ios/Runner.xcodeproj/project.pbxproj b/image_editor/example/ios/Runner.xcodeproj/project.pbxproj
index 7c53f07..4c6c72d 100644
--- a/image_editor/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/image_editor/example/ios/Runner.xcodeproj/project.pbxproj
@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 50;
+ objectVersion = 54;
objects = {
/* Begin PBXBuildFile section */
@@ -11,6 +11,7 @@
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
+ 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; };
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 */; };
@@ -38,6 +39,7 @@
682AA4769DECC1D1454DD721 /* 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 = ""; };
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 = ""; };
+ 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; };
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; 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 = ""; };
@@ -54,6 +56,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */,
13262A89481FC58192DA733D /* Pods_Runner.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -72,6 +75,7 @@
9740EEB11CF90186004384FC /* Flutter */ = {
isa = PBXGroup;
children = (
+ 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */,
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,
9740EEB21CF90195004384FC /* Debug.xcconfig */,
7AFA3C8E1D35360C0083082E /* Release.xcconfig */,
@@ -146,13 +150,15 @@
97C146EC1CF9000F007C117D /* Resources */,
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
- D1337B04A10CD6FD98489BBF /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = Runner;
+ packageProductDependencies = (
+ 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */,
+ );
productName = Runner;
productReference = 97C146EE1CF9000F007C117D /* Runner.app */;
productType = "com.apple.product-type.application";
@@ -163,7 +169,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 1300;
+ LastUpgradeCheck = 1510;
ORGANIZATIONNAME = "The Chromium Authors";
TargetAttributes = {
97C146ED1CF9000F007C117D = {
@@ -182,6 +188,9 @@
Base,
);
mainGroup = 97C146E51CF9000F007C117D;
+ packageReferences = (
+ 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */,
+ );
productRefGroup = 97C146EF1CF9000F007C117D /* Products */;
projectDirPath = "";
projectRoot = "";
@@ -208,10 +217,12 @@
/* Begin PBXShellScriptBuildPhase section */
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
isa = PBXShellScriptBuildPhase;
+ alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
+ "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
name = "Thin Binary";
outputPaths = (
@@ -244,6 +255,7 @@
};
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
+ alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
@@ -256,28 +268,6 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
- D1337B04A10CD6FD98489BBF /* [CP] Embed Pods Frameworks */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
- "${BUILT_PRODUCTS_DIR}/image_editor_common/image_editor_common.framework",
- "${BUILT_PRODUCTS_DIR}/image_picker_ios/image_picker_ios.framework",
- "${BUILT_PRODUCTS_DIR}/path_provider_foundation/path_provider_foundation.framework",
- );
- name = "[CP] Embed Pods Frameworks";
- outputPaths = (
- "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/image_editor_common.framework",
- "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/image_picker_ios.framework",
- "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_foundation.framework",
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
- showEnvVarsInLog = 0;
- };
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
@@ -353,7 +343,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 13.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -439,7 +429,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 13.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -488,7 +478,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 13.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -583,6 +573,20 @@
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
+
+/* Begin XCLocalSwiftPackageReference section */
+ 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "FlutterGeneratedPluginSwiftPackage" */ = {
+ isa = XCLocalSwiftPackageReference;
+ relativePath = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage;
+ };
+/* End XCLocalSwiftPackageReference section */
+
+/* Begin XCSwiftPackageProductDependency section */
+ 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = {
+ isa = XCSwiftPackageProductDependency;
+ productName = FlutterGeneratedPluginSwiftPackage;
+ };
+/* End XCSwiftPackageProductDependency section */
};
rootObject = 97C146E61CF9000F007C117D /* Project object */;
}
diff --git a/image_editor/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/image_editor/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
index 3db53b6..0bd6d42 100644
--- a/image_editor/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
+++ b/image_editor/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -1,10 +1,28 @@
+
+
+
+
+
+
+
+
+
+
@@ -45,11 +64,13 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
+ enableGPUValidationMode = "1"
allowLocationSimulation = "YES">
diff --git a/image_editor/example/ios/Runner/AppDelegate.swift b/image_editor/example/ios/Runner/AppDelegate.swift
index 70693e4..c30b367 100644
--- a/image_editor/example/ios/Runner/AppDelegate.swift
+++ b/image_editor/example/ios/Runner/AppDelegate.swift
@@ -1,13 +1,16 @@
-import UIKit
import Flutter
+import UIKit
-@UIApplicationMain
-@objc class AppDelegate: FlutterAppDelegate {
+@main
+@objc class AppDelegate: FlutterAppDelegate, FlutterImplicitEngineDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
- GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
+
+ func didInitializeImplicitFlutterEngine(_ engineBridge: FlutterImplicitEngineBridge) {
+ GeneratedPluginRegistrant.register(with: engineBridge.pluginRegistry)
+ }
}
diff --git a/image_editor/example/ios/Runner/Info.plist b/image_editor/example/ios/Runner/Info.plist
index 2597f68..f6fbf37 100644
--- a/image_editor/example/ios/Runner/Info.plist
+++ b/image_editor/example/ios/Runner/Info.plist
@@ -2,6 +2,8 @@
+ CADisableMinimumFrameDurationOnPhone
+
CFBundleDevelopmentRegion
$(DEVELOPMENT_LANGUAGE)
CFBundleExecutable
@@ -22,6 +24,33 @@
$(FLUTTER_BUILD_NUMBER)
LSRequiresIPhoneOS
+ NSCameraUsageDescription
+ App want to use your camera to capture photo.
+ NSPhotoLibraryUsageDescription
+ App want to pick your image from Photos.
+ UIApplicationSceneManifest
+
+ UIApplicationSupportsMultipleScenes
+
+ UISceneConfigurations
+
+ UIWindowSceneSessionRoleApplication
+
+
+ UISceneClassName
+ UIWindowScene
+ UISceneConfigurationName
+ flutter
+ UISceneDelegateClassName
+ FlutterSceneDelegate
+ UISceneStoryboardFile
+ Main
+
+
+
+
+ UIApplicationSupportsIndirectInputEvents
+
UILaunchStoryboardName
LaunchScreen
UIMainStoryboardFile
@@ -41,11 +70,5 @@
UIViewControllerBasedStatusBarAppearance
- NSPhotoLibraryUsageDescription
- App want to pick your image from Photos.
- NSCameraUsageDescription
- App want to use your camera to capture photo.
- CADisableMinimumFrameDurationOnPhone
-
diff --git a/image_editor/example/pubspec.lock b/image_editor/example/pubspec.lock
index 615849f..7710fcf 100644
--- a/image_editor/example/pubspec.lock
+++ b/image_editor/example/pubspec.lock
@@ -13,18 +13,18 @@ packages:
dependency: transitive
description:
name: characters
- sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
+ sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b
url: "https://pub.flutter-io.cn"
source: hosted
- version: "1.3.0"
+ version: "1.4.1"
collection:
dependency: transitive
description:
name: collection
- sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
+ sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
url: "https://pub.flutter-io.cn"
source: hosted
- version: "1.18.0"
+ version: "1.19.1"
cross_file:
dependency: transitive
description:
@@ -259,18 +259,18 @@ packages:
dependency: transitive
description:
name: material_color_utilities
- sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
+ sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b"
url: "https://pub.flutter-io.cn"
source: hosted
- version: "0.11.1"
+ version: "0.13.0"
meta:
dependency: transitive
description:
name: meta
- sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
+ sha256: "1741988757a65eb6b36abe716829688cf01910bbf91c34354ff7ec1c3de2b349"
url: "https://pub.flutter-io.cn"
source: hosted
- version: "1.15.0"
+ version: "1.18.0"
mime:
dependency: transitive
description:
@@ -363,7 +363,7 @@ packages:
dependency: transitive
description: flutter
source: sdk
- version: "0.0.99"
+ version: "0.0.0"
source_span:
dependency: transitive
description:
@@ -400,10 +400,10 @@ packages:
dependency: transitive
description:
name: vector_math
- sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
+ sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
url: "https://pub.flutter-io.cn"
source: hosted
- version: "2.1.4"
+ version: "2.2.0"
web:
dependency: transitive
description:
@@ -421,5 +421,5 @@ packages:
source: hosted
version: "1.1.0"
sdks:
- dart: ">=3.5.0 <4.0.0"
+ dart: ">=3.10.0-0 <4.0.0"
flutter: ">=3.24.0"
diff --git a/image_editor_common/.gitignore b/image_editor_common/.gitignore
index 9dc0d7e..99928d8 100644
--- a/image_editor_common/.gitignore
+++ b/image_editor_common/.gitignore
@@ -77,3 +77,6 @@ build/
*.lock
.env
fvm
+
+# Swift Package Manager build artifacts
+**/.build/
diff --git a/image_editor_common/ios/image_editor_common.podspec b/image_editor_common/ios/image_editor_common.podspec
index efaf6a7..67d46c2 100644
--- a/image_editor_common/ios/image_editor_common.podspec
+++ b/image_editor_common/ios/image_editor_common.podspec
@@ -13,8 +13,8 @@ Edit your image data and output to file/memory.
s.license = { :file => '../LICENSE' }
s.author = { 'Flutter Candies' => 'admin@fluttercandies.com' }
s.source = { :path => '.' }
- s.source_files = 'Classes/**/*'
- s.public_header_files = 'Classes/**/*.h'
+ s.source_files = 'image_editor_common/Sources/image_editor_common/**/*.{h,m}'
+ s.public_header_files = 'image_editor_common/Sources/image_editor_common/include/image_editor_common/**/*.h'
s.dependency 'Flutter'
s.platform = :ios, '9.0'
diff --git a/image_editor_common/ios/image_editor_common/Package.swift b/image_editor_common/ios/image_editor_common/Package.swift
new file mode 100644
index 0000000..fdb0d1a
--- /dev/null
+++ b/image_editor_common/ios/image_editor_common/Package.swift
@@ -0,0 +1,25 @@
+// swift-tools-version: 5.9
+
+import PackageDescription
+
+let packageName = "image_editor_common"
+
+let package = Package(
+ name: packageName,
+ platforms: [
+ .iOS("9.0"),
+ ],
+ products: [
+ .library(name: "image-editor-common", targets: [packageName]),
+ ],
+ dependencies: [],
+ targets: [
+ .target(
+ name: packageName,
+ dependencies: [],
+ cSettings: [
+ .headerSearchPath("include/\(packageName)"),
+ ]
+ ),
+ ]
+)
diff --git a/image_editor_common/ios/Classes/EditorUIImageHandler.m b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/EditorUIImageHandler.m
similarity index 100%
rename from image_editor_common/ios/Classes/EditorUIImageHandler.m
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/EditorUIImageHandler.m
diff --git a/image_editor_common/ios/Classes/FIConvertUtils.m b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIConvertUtils.m
similarity index 100%
rename from image_editor_common/ios/Classes/FIConvertUtils.m
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIConvertUtils.m
diff --git a/image_editor_common/ios/Classes/FIEPlugin.m b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIEPlugin.m
similarity index 100%
rename from image_editor_common/ios/Classes/FIEPlugin.m
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIEPlugin.m
diff --git a/image_editor_common/ios/Classes/FIMerger.m b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIMerger.m
similarity index 100%
rename from image_editor_common/ios/Classes/FIMerger.m
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/FIMerger.m
diff --git a/image_editor_common/ios/Classes/ImageEditorPlugin.m b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/ImageEditorPlugin.m
similarity index 100%
rename from image_editor_common/ios/Classes/ImageEditorPlugin.m
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/ImageEditorPlugin.m
diff --git a/image_editor_common/ios/Classes/EditorUIImageHandler.h b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/EditorUIImageHandler.h
similarity index 100%
rename from image_editor_common/ios/Classes/EditorUIImageHandler.h
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/EditorUIImageHandler.h
diff --git a/image_editor_common/ios/Classes/FIConvertUtils.h b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIConvertUtils.h
similarity index 100%
rename from image_editor_common/ios/Classes/FIConvertUtils.h
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIConvertUtils.h
diff --git a/image_editor_common/ios/Classes/FIEPlugin.h b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIEPlugin.h
similarity index 100%
rename from image_editor_common/ios/Classes/FIEPlugin.h
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIEPlugin.h
diff --git a/image_editor_common/ios/Classes/FIMerger.h b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIMerger.h
similarity index 100%
rename from image_editor_common/ios/Classes/FIMerger.h
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIMerger.h
diff --git a/image_editor_common/ios/Classes/ImageEditorPlugin.h b/image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/ImageEditorPlugin.h
similarity index 100%
rename from image_editor_common/ios/Classes/ImageEditorPlugin.h
rename to image_editor_common/ios/image_editor_common/Sources/image_editor_common/include/image_editor_common/ImageEditorPlugin.h
diff --git a/image_editor_common/macos/image_editor_common.podspec b/image_editor_common/macos/image_editor_common.podspec
index 468344c..64845d7 100644
--- a/image_editor_common/macos/image_editor_common.podspec
+++ b/image_editor_common/macos/image_editor_common.podspec
@@ -13,9 +13,8 @@ A new flutter plugin project.
s.license = { :file => '../LICENSE' }
s.author = { 'Your Company' => 'email@example.com' }
s.source = { :path => '.' }
-
- s.source_files = 'Classes/**/*'
- s.public_header_files = 'Classes/**/*.h'
+ s.source_files = 'image_editor_common/Sources/image_editor_common/**/*.{h,m}'
+ s.public_header_files = 'image_editor_common/Sources/image_editor_common/include/image_editor_common/**/*.h'
s.osx.dependency 'FlutterMacOS'
s.ios.dependency 'Flutter'
diff --git a/image_editor_common/macos/image_editor_common/Package.swift b/image_editor_common/macos/image_editor_common/Package.swift
new file mode 100644
index 0000000..0c124eb
--- /dev/null
+++ b/image_editor_common/macos/image_editor_common/Package.swift
@@ -0,0 +1,25 @@
+// swift-tools-version: 5.9
+
+import PackageDescription
+
+let packageName = "image_editor_common"
+
+let package = Package(
+ name: packageName,
+ platforms: [
+ .macOS("10.15"),
+ ],
+ products: [
+ .library(name: "image-editor-common", targets: [packageName]),
+ ],
+ dependencies: [],
+ targets: [
+ .target(
+ name: packageName,
+ dependencies: [],
+ cSettings: [
+ .headerSearchPath("include/\(packageName)"),
+ ]
+ ),
+ ]
+)
diff --git a/image_editor_common/macos/Classes/FICommonUtils.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/FICommonUtils.m
similarity index 100%
rename from image_editor_common/macos/Classes/FICommonUtils.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/FICommonUtils.m
diff --git a/image_editor_common/macos/Classes/FIConvertUtils.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIConvertUtils.m
similarity index 100%
rename from image_editor_common/macos/Classes/FIConvertUtils.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIConvertUtils.m
diff --git a/image_editor_common/macos/Classes/FIEPlugin.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIEPlugin.m
similarity index 100%
rename from image_editor_common/macos/Classes/FIEPlugin.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIEPlugin.m
diff --git a/image_editor_common/macos/Classes/FIMerger.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIMerger.m
similarity index 100%
rename from image_editor_common/macos/Classes/FIMerger.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIMerger.m
diff --git a/image_editor_common/macos/Classes/FIUIImageHandler.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIUIImageHandler.m
similarity index 100%
rename from image_editor_common/macos/Classes/FIUIImageHandler.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/FIUIImageHandler.m
diff --git a/image_editor_common/macos/Classes/ImageEditorPlugin.m b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/ImageEditorPlugin.m
similarity index 100%
rename from image_editor_common/macos/Classes/ImageEditorPlugin.m
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/ImageEditorPlugin.m
diff --git a/image_editor_common/macos/Classes/FICommonUtils.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FICommonUtils.h
similarity index 100%
rename from image_editor_common/macos/Classes/FICommonUtils.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FICommonUtils.h
diff --git a/image_editor_common/macos/Classes/FIConvertUtils.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIConvertUtils.h
similarity index 100%
rename from image_editor_common/macos/Classes/FIConvertUtils.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIConvertUtils.h
diff --git a/image_editor_common/macos/Classes/FIEPlugin.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIEPlugin.h
similarity index 100%
rename from image_editor_common/macos/Classes/FIEPlugin.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIEPlugin.h
diff --git a/image_editor_common/macos/Classes/FIImport.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIImport.h
similarity index 100%
rename from image_editor_common/macos/Classes/FIImport.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIImport.h
diff --git a/image_editor_common/macos/Classes/FIMerger.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIMerger.h
similarity index 100%
rename from image_editor_common/macos/Classes/FIMerger.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIMerger.h
diff --git a/image_editor_common/macos/Classes/FIUIImageHandler.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIUIImageHandler.h
similarity index 100%
rename from image_editor_common/macos/Classes/FIUIImageHandler.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/FIUIImageHandler.h
diff --git a/image_editor_common/macos/Classes/ImageEditorPlugin.h b/image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/ImageEditorPlugin.h
similarity index 100%
rename from image_editor_common/macos/Classes/ImageEditorPlugin.h
rename to image_editor_common/macos/image_editor_common/Sources/image_editor_common/include/image_editor_common/ImageEditorPlugin.h