From 276c125dac5dc1538ef6210962f4c0879028dd53 Mon Sep 17 00:00:00 2001
From: Mustafa Merza <mustafa.merza95@gmail.com>
Date: Mon, 12 Aug 2024 13:09:37 +0300
Subject: [PATCH] - Created Image compress manager to handle images
 compression.

---
 MiniScanner.xcodeproj/project.pbxproj         |  4 ++++
 .../Managers/ImageCompressManager.swift       | 23 +++++++++++++++++++
 2 files changed, 27 insertions(+)
 create mode 100644 MiniScanner/Managers/ImageCompressManager.swift

diff --git a/MiniScanner.xcodeproj/project.pbxproj b/MiniScanner.xcodeproj/project.pbxproj
index 25ca052..d4e2ce5 100644
--- a/MiniScanner.xcodeproj/project.pbxproj
+++ b/MiniScanner.xcodeproj/project.pbxproj
@@ -231,6 +231,7 @@
 		67807F992C49320100D1F168 /* MainViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67807F982C49320100D1F168 /* MainViewModel.swift */; };
 		67807F9B2C49325A00D1F168 /* MainView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67807F9A2C49325A00D1F168 /* MainView.swift */; };
 		67807FA02C4934BD00D1F168 /* View+LayoutChanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67807F9F2C4934BD00D1F168 /* View+LayoutChanges.swift */; };
+		678809E92C6A0D0800EF9046 /* ImageCompressManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 678809E82C6A0D0800EF9046 /* ImageCompressManager.swift */; };
 		678BD70D2C4CF18300833DA5 /* CustomMenuPickerItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 678BD70C2C4CF18300833DA5 /* CustomMenuPickerItem.swift */; };
 		678BD70F2C4CF1A000833DA5 /* CustomMenuPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 678BD70E2C4CF1A000833DA5 /* CustomMenuPicker.swift */; };
 		678BD7152C4CF1EB00833DA5 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 678BD7102C4CF1EB00833DA5 /* SettingsView.swift */; };
@@ -525,6 +526,7 @@
 		67807F982C49320100D1F168 /* MainViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewModel.swift; sourceTree = "<group>"; };
 		67807F9A2C49325A00D1F168 /* MainView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainView.swift; sourceTree = "<group>"; };
 		67807F9F2C4934BD00D1F168 /* View+LayoutChanges.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "View+LayoutChanges.swift"; sourceTree = "<group>"; };
+		678809E82C6A0D0800EF9046 /* ImageCompressManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageCompressManager.swift; sourceTree = "<group>"; };
 		678BD70C2C4CF18300833DA5 /* CustomMenuPickerItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomMenuPickerItem.swift; sourceTree = "<group>"; };
 		678BD70E2C4CF1A000833DA5 /* CustomMenuPicker.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomMenuPicker.swift; sourceTree = "<group>"; };
 		678BD7102C4CF1EB00833DA5 /* SettingsView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
@@ -1471,6 +1473,7 @@
 				EC8A9B13254DC9D300F9AF99 /* LocalFileManager.swift */,
 				ECD43ED525A7BA9500B5A3F2 /* ThemeManager.swift */,
 				675FF4F42C6231D000E42214 /* PayloadType.swift */,
+				678809E82C6A0D0800EF9046 /* ImageCompressManager.swift */,
 			);
 			path = Managers;
 			sourceTree = "<group>";
@@ -1887,6 +1890,7 @@
 				677E65D82C5A28840039E2C5 /* ScanSessionsDataSource.swift in Sources */,
 				67106C942C4EAC0100874BFC /* CustomTabBarLayerProtocol.swift in Sources */,
 				539996852C27130000671340 /* ConstraintViewDSL.swift in Sources */,
+				678809E92C6A0D0800EF9046 /* ImageCompressManager.swift in Sources */,
 				EC702542254E1E7500BE1958 /* ClassicWalkthroughViewController.swift in Sources */,
 				539996882C27130000671340 /* ConstraintMakerFinalizable.swift in Sources */,
 				675FF4F32C622DEB00E42214 /* ScanSessionPayloadManager.swift in Sources */,
diff --git a/MiniScanner/Managers/ImageCompressManager.swift b/MiniScanner/Managers/ImageCompressManager.swift
new file mode 100644
index 0000000..546b009
--- /dev/null
+++ b/MiniScanner/Managers/ImageCompressManager.swift
@@ -0,0 +1,23 @@
+//
+//  ImageCompressManager.swift
+//  MiniScanner
+//
+//  Created by Mustafa Merza on 8/12/24.
+//  Copyright © 2024 AppsNectar. All rights reserved.
+//
+
+import Foundation
+
+class ImageCompressManager {
+    
+    class func compress(image: UIImage) -> UIImage {
+        wxCompress(image: image)
+    }
+}
+
+extension ImageCompressManager {
+    
+    private class func wxCompress(image: UIImage) -> UIImage {
+        image.wxCompress()
+    }
+}
-- 
GitLab