diff --git a/Examples/FileExplorerExampleApp.xcodeproj/project.pbxproj b/Examples/FileExplorerExampleApp.xcodeproj/project.pbxproj
index 8fee7de..e4d55da 100644
--- a/Examples/FileExplorerExampleApp.xcodeproj/project.pbxproj
+++ b/Examples/FileExplorerExampleApp.xcodeproj/project.pbxproj
@@ -121,7 +121,6 @@
06A2087F1D85B9C200E51C13 /* Frameworks */,
06A208801D85B9C200E51C13 /* Resources */,
5E2BF49FC6E9CA6A83EE5B43 /* [CP] Embed Pods Frameworks */,
- 6655BCBBD66D3041AF14AA34 /* [CP] Copy Pods Resources */,
85894F727B51FF611B6B1828 /* 📦 Embed Pods Frameworks */,
41FCB9208497F02D0B8A0C13 /* 📦 Copy Pods Resources */,
);
@@ -141,18 +140,19 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0800;
- LastUpgradeCheck = 0800;
+ LastUpgradeCheck = 1120;
ORGANIZATIONNAME = "Rafał Augustyniak";
TargetAttributes = {
06A208811D85B9C200E51C13 = {
CreatedOnToolsVersion = 8.0;
- ProvisioningStyle = Automatic;
+ LastSwiftMigration = 1120;
+ ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 06A2087D1D85B9C200E51C13 /* Build configuration list for PBXProject "FileExplorerExampleApp" */;
compatibilityVersion = "Xcode 3.2";
- developmentRegion = English;
+ developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
@@ -207,13 +207,16 @@
files = (
);
inputPaths = (
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
+ "${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputPaths = (
+ "$(DERIVED_FILE_DIR)/Pods-FileExplorerExampleApp-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "diff \"${PODS_ROOT}/../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";
+ 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;
};
5A520E1584492A6DAA8FF519 /* [CP] Check Pods Manifest.lock */ = {
@@ -237,28 +240,16 @@
files = (
);
inputPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh",
+ "${BUILT_PRODUCTS_DIR}/FileExplorer/FileExplorer.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FileExplorer.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh\"\n";
- showEnvVarsInLog = 0;
- };
- 6655BCBBD66D3041AF14AA34 /* [CP] Copy Pods Resources */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputPaths = (
- );
- name = "[CP] Copy Pods Resources";
- outputPaths = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-resources.sh\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
85894F727B51FF611B6B1828 /* 📦 Embed Pods Frameworks */ = {
@@ -314,20 +305,30 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_SUSPICIOUS_MOVES = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -364,20 +365,30 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_SUSPICIOUS_MOVES = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -408,12 +419,15 @@
baseConfigurationReference = 96BCB9438D07638552D13F50 /* Pods-FileExplorerExampleApp.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ CODE_SIGN_STYLE = Manual;
+ DEVELOPMENT_TEAM = "";
INFOPLIST_FILE = FileExplorerExampleApp/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.augustyniak.FileExplorerExampleApp;
PRODUCT_NAME = "$(TARGET_NAME)";
- SWIFT_VERSION = 3.0;
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SWIFT_VERSION = 5.0;
};
name = Debug;
};
@@ -422,12 +436,15 @@
baseConfigurationReference = 77839C1FF7229F28C3A0C502 /* Pods-FileExplorerExampleApp.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+ CODE_SIGN_STYLE = Manual;
+ DEVELOPMENT_TEAM = "";
INFOPLIST_FILE = FileExplorerExampleApp/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.augustyniak.FileExplorerExampleApp;
PRODUCT_NAME = "$(TARGET_NAME)";
- SWIFT_VERSION = 3.0;
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SWIFT_VERSION = 5.0;
};
name = Release;
};
diff --git a/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..3ddf867
--- /dev/null
+++ b/Examples/FileExplorerExampleApp.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ BuildSystemType
+ Latest
+
+
diff --git a/Examples/FileExplorerExampleApp/AppDelegate.swift b/Examples/FileExplorerExampleApp/AppDelegate.swift
index ee5bc4a..9e91d35 100644
--- a/Examples/FileExplorerExampleApp/AppDelegate.swift
+++ b/Examples/FileExplorerExampleApp/AppDelegate.swift
@@ -30,18 +30,18 @@ import FileExplorer
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
- func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
+ func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let directoryURL = URL.documentDirectory
let audioURL = Bundle.main.url(forResource: "audio", withExtension: "mp3")!
let videoURL = Bundle.main.url(forResource: "video", withExtension: "mp4")!
let pdfURL = Bundle.main.url(forResource: "pdf", withExtension: "pdf")!
let image = UIImage(named: "image.jpg")!
- let imageData = UIImagePNGRepresentation(image)!
+ let imageData = image.pngData()!
let firstDirectoryURL = directoryURL.appendingPathComponent("Directory")
- try? FileManager.default.createDirectory(at: firstDirectoryURL, withIntermediateDirectories: true, attributes: [String: Any]())
+ try? FileManager.default.createDirectory(at: firstDirectoryURL, withIntermediateDirectories: true, attributes: convertToOptionalFileAttributeKeyDictionary([String: Any]()))
let items = [
(audioURL, "audio.mp3"),
@@ -57,11 +57,17 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
try? imageData.write(to: imageURL)
let subdirectoryURL = firstDirectoryURL.appendingPathComponent("Empty Directory")
- try? FileManager.default.createDirectory(at: subdirectoryURL, withIntermediateDirectories: true, attributes: [String: Any]())
+ try? FileManager.default.createDirectory(at: subdirectoryURL, withIntermediateDirectories: true, attributes: convertToOptionalFileAttributeKeyDictionary([String: Any]()))
let secondDirectoryURL = directoryURL.appendingPathComponent("Empty Directory")
- try? FileManager.default.createDirectory(at: secondDirectoryURL, withIntermediateDirectories: true, attributes: [String: Any]())
+ try? FileManager.default.createDirectory(at: secondDirectoryURL, withIntermediateDirectories: true, attributes: convertToOptionalFileAttributeKeyDictionary([String: Any]()))
return true
}
}
+
+// Helper function inserted by Swift 4.2 migrator.
+fileprivate func convertToOptionalFileAttributeKeyDictionary(_ input: [String: Any]?) -> [FileAttributeKey: Any]? {
+ guard let input = input else { return nil }
+ return Dictionary(uniqueKeysWithValues: input.map { key, value in (FileAttributeKey(rawValue: key), value)})
+}
diff --git a/Examples/FileExplorerExampleApp/ViewController.swift b/Examples/FileExplorerExampleApp/ViewController.swift
index 59ad105..df24b1d 100644
--- a/Examples/FileExplorerExampleApp/ViewController.swift
+++ b/Examples/FileExplorerExampleApp/ViewController.swift
@@ -42,7 +42,7 @@ class ViewController: UIViewController {
}
extension ViewController: FileExplorerViewControllerDelegate {
- public func fileExplorerViewController(_ controller: FileExplorerViewController, didChooseURLs urls: [URL]) {
+ @objc public func fileExplorerViewController(_ controller: FileExplorerViewController, didChooseURLs urls: [URL]) {
var message = ""
for url in urls {
message += "\(url.lastPathComponent)"
@@ -56,7 +56,7 @@ extension ViewController: FileExplorerViewControllerDelegate {
self.present(alertController, animated: true, completion: nil)
}
- public func fileExplorerViewControllerDidFinish(_ controller: FileExplorerViewController) {
+ @objc public func fileExplorerViewControllerDidFinish(_ controller: FileExplorerViewController) {
}
}
diff --git a/Examples/Podfile.lock b/Examples/Podfile.lock
index f90e1b2..cada483 100644
--- a/Examples/Podfile.lock
+++ b/Examples/Podfile.lock
@@ -1,16 +1,16 @@
PODS:
- - FileExplorer (1.0.3)
+ - FileExplorer (1.0.4)
DEPENDENCIES:
- FileExplorer (from `./../FileExplorer.podspec.json`)
EXTERNAL SOURCES:
FileExplorer:
- :path: ./../FileExplorer.podspec.json
+ :path: "./../FileExplorer.podspec.json"
SPEC CHECKSUMS:
- FileExplorer: de421e3b3e07b9cf584264efd5e19f5cdb9a9991
+ FileExplorer: 9869dc386f080fa7c05083370b07ec0c8a4ced3f
PODFILE CHECKSUM: f09ca52ba3e673398c656e083a29129ede27a7d7
-COCOAPODS: 1.2.0.beta.1
+COCOAPODS: 1.8.4
diff --git a/Examples/Pods/Local Podspecs/FileExplorer.podspec.json b/Examples/Pods/Local Podspecs/FileExplorer.podspec.json
index 418c66b..40aac70 100644
--- a/Examples/Pods/Local Podspecs/FileExplorer.podspec.json
+++ b/Examples/Pods/Local Podspecs/FileExplorer.podspec.json
@@ -1,6 +1,6 @@
{
"name": "FileExplorer",
- "version": "1.0.3",
+ "version": "1.0.4",
"summary": "FileExplorer is a powerful iOS file browser with the possiblity to choose and remove files and/or directories",
"homepage": "https://github.com/Augustyniak/FileExplorer",
"screenshots": "https://raw.github.com/Augustyniak/FileExplorer/master/Resources/Directories.gif",
@@ -13,7 +13,7 @@
},
"source": {
"git": "https://github.com/Augustyniak/FileExplorer.git",
- "tag": "v1.0.3"
+ "tag": "v1.0.4"
},
"platforms": {
"ios": "9.0"
diff --git a/Examples/Pods/Manifest.lock b/Examples/Pods/Manifest.lock
index f90e1b2..cada483 100644
--- a/Examples/Pods/Manifest.lock
+++ b/Examples/Pods/Manifest.lock
@@ -1,16 +1,16 @@
PODS:
- - FileExplorer (1.0.3)
+ - FileExplorer (1.0.4)
DEPENDENCIES:
- FileExplorer (from `./../FileExplorer.podspec.json`)
EXTERNAL SOURCES:
FileExplorer:
- :path: ./../FileExplorer.podspec.json
+ :path: "./../FileExplorer.podspec.json"
SPEC CHECKSUMS:
- FileExplorer: de421e3b3e07b9cf584264efd5e19f5cdb9a9991
+ FileExplorer: 9869dc386f080fa7c05083370b07ec0c8a4ced3f
PODFILE CHECKSUM: f09ca52ba3e673398c656e083a29129ede27a7d7
-COCOAPODS: 1.2.0.beta.1
+COCOAPODS: 1.8.4
diff --git a/Examples/Pods/Pods.xcodeproj/project.pbxproj b/Examples/Pods/Pods.xcodeproj/project.pbxproj
index 80c9167..7818e9c 100644
--- a/Examples/Pods/Pods.xcodeproj/project.pbxproj
+++ b/Examples/Pods/Pods.xcodeproj/project.pbxproj
@@ -7,382 +7,350 @@
objects = {
/* Begin PBXBuildFile section */
- 0504D7107FCC8EA22729BD3E39D63B40 /* DirectoryViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2AE6DB6E6072576AD2255F2E5276553 /* DirectoryViewController.swift */; };
- 0A8FF80D8569EED1E44F93C19209A1C7 /* Pods-FileExplorerExampleApp-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DBB259192DDC9D2341F7F7F0EA3F514A /* Pods-FileExplorerExampleApp-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 107A0CFF06C2411BAB8AC11E1E349090 /* UICollectionView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3431B31D2F1593508F2070813117A72 /* UICollectionView+Extension.swift */; };
- 120575817ADF7066F00EE035A04C0DC6 /* UITableView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = F77A016507B64ECE7C1D980618482654 /* UITableView+Extension.swift */; };
- 15AE98F776655CA5797EB414A658BE97 /* UIViewController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2EEA56454EDF773ADB3907698299B7A /* UIViewController+Extension.swift */; };
- 15D0DEC414733FE098C8AC6C05750385 /* FileExplorer.h in Headers */ = {isa = PBXBuildFile; fileRef = DE990690F786A5747E2E0C7E6D39B7C6 /* FileExplorer.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 19442A66057B2940A55C3366EB6D1EDE /* Item.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B8BD41F7DA00BBCB0643046F484BDFE /* Item.swift */; };
- 195EDAFDED5655A625BA1612BB40BD93 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; };
- 1F59664525E621A3F721760046279635 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; };
- 20789802D25F2A2DE33244F0E5C00D90 /* DirectoryItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 188D85E8F6DD86BC4200B3201DFEFEA7 /* DirectoryItemPresentationCoordinator.swift */; };
- 25238D5055A0AF8BBAFB11846D498C1E /* FileService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C6C38A372960207DA5EA5DAB4F7B343 /* FileService.swift */; };
- 2662CF18AE5FCC5E73639B664C0B6572 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 368FF4866E7A6BDD4FAA5A71CE460894 /* Configuration.swift */; };
- 290C31536B92DF513ACBDF4A4C7A6ECC /* FileExplorerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6510655ED7EF4293F38085798DC3A0D8 /* FileExplorerViewController.swift */; };
- 2D78285712248307B52CC7EDA5EEC2C0 /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB33EBB1B26C666546A24800F9AF1202 /* WebViewController.swift */; };
- 2E84417C56BE36EEA594B43FB01FB381 /* ImageAssets.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92CE3EAA76B66656BBD9321C8F36AA87 /* ImageAssets.swift */; };
- 2EC551FC9A44611D4DD2B803ED18EB44 /* UIView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 928AEDCDC4B2CB3E80BB58699E2DE9E9 /* UIView+Extension.swift */; };
- 3D77713926E8E276D832D1D3382B3B82 /* Double+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBDD5131A4C04E53584E56D76C582EDE /* Double+Extension.swift */; };
- 503F30409D188083C8398A460A8C1F49 /* UIToolbar+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88D34F7B1B7982F77E71916874616596 /* UIToolbar+Extension.swift */; };
- 5F64E50FAED3120E4C644E189C909EC3 /* UIAlertController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = C589C87B2609AFD74D2D9AC626C4009F /* UIAlertController+Extension.swift */; };
- 65CD20D430B3DAEC64000607EB1818EC /* DirectoryContentViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B791C2DFB9CB894F3CD2E712ED7615 /* DirectoryContentViewModel.swift */; };
- 6DEF3A9C5443EBE78C24092D35CB63DA /* ItemCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60624933B0C46CE3E2306E4B4634CA84 /* ItemCell.swift */; };
- 72C3C64A862476DE7F0DF97F9319E63E /* UIImage+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C779E80613EBDBC8090DD0D7A7F9F2E /* UIImage+Extension.swift */; };
- 76423CB9D00A25290404DDB6CC8DD877 /* ErrorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53FADBE07F294FDE4957D566D9893D14 /* ErrorViewController.swift */; };
- 7B7E72ECB468F0E4EA35D9199F3A9735 /* ImageAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DF63AB04F34BEC815947009ED0B5F307 /* ImageAssets.xcassets */; };
- 7C16468D139CC2D4DA98A607E9C899E9 /* ThumbnailGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 964948134436BD8831B6DDD2AA8EC4DF /* ThumbnailGenerator.swift */; };
- 8468E058D838AB49B2AFBAC82486B8CD /* FileViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 31B790F5A27AB7D17F2C622676A5F645 /* FileViewController.swift */; };
- 88A25D5FD3DD1A6E195798A51F0F207C /* FileItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C6413111B650036F2C1B4EE62F9577E /* FileItemPresentationCoordinator.swift */; };
- 93441B3D489A095D509B13F731318E1B /* URL+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DBA294F8F5DEECC99C9D7893FFB1F7B /* URL+Extension.swift */; };
- 99C61656FF8BB37B3F45C90ECD80D994 /* FileSpecificationProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A305ECD80CC8E9464C0805DBD605B89 /* FileSpecificationProvider.swift */; };
- 9D73A00289EF61DCC5A8F65B7835B236 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E56F4847F3B26805DD4BA3F6DDBEBE7 /* Result.swift */; };
- A0BD2B521D09DCAA68208F053DFB466B /* CheckmarkButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03DCEF06C07CBCA290A982EC1A2BF6AB /* CheckmarkButton.swift */; };
- A5AF49F0A16DF33F8B83E8211E9B8849 /* ActionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CBD4D1A2A353B82347201CF72A57326 /* ActionsViewController.swift */; };
- ABD1DD5D672B95D83E891A52428FB87D /* UIBezierPath+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6BCC8AC8A9FADA2B5FA5E500998B931 /* UIBezierPath+Extension.swift */; };
- AFD72DDC3778276848B0FCFC3D716968 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = FEC98877BB010FB62EEED5A76D85E721 /* Info.plist */; };
- B56659F0FB194634D35A1B72A3D68B60 /* FileExplorer-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A75877BE825261F0B6E9E271F5FB09B /* FileExplorer-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- B705726E6AE6C00BBF6F7B7BB721B87B /* FileViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0DEF9002EE3B3F599F4AFD8CAEFB1B3 /* FileViewModel.swift */; };
- D0E516A0EA2955BF3876BFCB31C246C6 /* Array+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 666A8C75D0B0E54F22EBF2DAD07D8518 /* Array+Extension.swift */; };
- D2DB21C5B1D05FB608B2229D0CAC6165 /* UISearchBar+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CED1B151C7F6EDD696632D62E5DB909 /* UISearchBar+Extension.swift */; };
- D3F5242F114D9C85A3B9213E3CE81BDF /* DirectoryContentViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DF3361FC08AE7BD8A069DD3999B156E /* DirectoryContentViewController.swift */; };
- D6645DEC60E9D474526B6EEAD623AE0B /* UknownFileTypeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA93AD559AD7598F73FE01B7FC9FD9E8 /* UknownFileTypeViewController.swift */; };
- D78BC90A273501B9A1E13336A51619D8 /* ItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB07B4305053561EA46207416A3C95ED /* ItemPresentationCoordinator.swift */; };
- E09C82684B95F3E774B8809DB9CE098B /* LoadingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C00AF9EEB72CD0D1623753D2AFDA43C3 /* LoadingViewController.swift */; };
- E64C6F5E93BAB853128338193F0B9B7C /* FileExplorer-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 15848B7FC40B661422D7A839FF06FE82 /* FileExplorer-dummy.m */; };
- EADB51E3C4C276EAADE8558B645EBD14 /* Pods-FileExplorerExampleApp-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5F0D798834FE60B48C5EDABD79427145 /* Pods-FileExplorerExampleApp-dummy.m */; };
- F7EC88949EAC71814A6D6BF80F1C3311 /* ImageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3849D8A5CF0A0DFC1A743CA097E3C8A1 /* ImageViewController.swift */; };
- F992A603FAE4C6623C1433B8457E4333 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 825328DBF1E784B191A6C7BB6EBD407E /* Errors.swift */; };
+ 062D8098A63218844F7135CD90A66F2B /* DirectoryViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 964D86431D558734C3C7528C7EDF6881 /* DirectoryViewController.swift */; };
+ 079F51EE0B2A17AA0007D64A6A8A19B8 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B6379D81851132049474940CF65F8C1 /* Errors.swift */; };
+ 0A983133574F1E4C26BCF04EEE32F45E /* Pods-FileExplorerExampleApp-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C2847FB70D86F26760860BE06EDCD49 /* Pods-FileExplorerExampleApp-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 0C521A7A5C60EF0D3376E5B2E589EF78 /* FileItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2985408795C1C928B115B00BC16F9919 /* FileItemPresentationCoordinator.swift */; };
+ 101C4AF225223FBE434DEE61D8A1C71C /* FileExplorer-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 195D86C6461BB6CAEA1F47966319EF56 /* FileExplorer-dummy.m */; };
+ 1C6222D3C6B913F0EB4FAB00E04B5098 /* Item.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E4F1A308BFEDC5FCDA1051EBB5414B0 /* Item.swift */; };
+ 1E0D235D4FB83FDEC882C287FAF13EDB /* CheckmarkButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CF79B1836EF16EE87120D6A9E16D8CE /* CheckmarkButton.swift */; };
+ 2066C3989147D928C62290461BCBA410 /* Double+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EC3F26F30895FFFD6D7FEB241477C95 /* Double+Extension.swift */; };
+ 3757B547C60616D5D073612AC493C4BE /* ItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA397FBF5484597461AF589CE723A993 /* ItemPresentationCoordinator.swift */; };
+ 379252CCC3ADEE47063DECE09267E947 /* ImageAssets.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2517266B5B8E7334A7ACFE56B0DD92B /* ImageAssets.swift */; };
+ 3A8CE2BCC76B707719378B3ACC5CB5D4 /* UIToolbar+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28FEFB4652B0F7EE308003E33DAB7EE3 /* UIToolbar+Extension.swift */; };
+ 3B1C133E421A9237950BB519DE606ACB /* ThumbnailGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5831EC37E69AE555BC6C830F82FFBF7E /* ThumbnailGenerator.swift */; };
+ 3DE7E4576238C8C887E4F76A35A094EA /* DirectoryContentViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 562E3F30F99314A70F28C5F0BB92CBED /* DirectoryContentViewModel.swift */; };
+ 3E830BC2D79A57BBD9BB90B42BCB4DA3 /* UIAlertController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 417E8F7B1500B9119B383B4E786F6CA4 /* UIAlertController+Extension.swift */; };
+ 44021276BDDCC7B254A4DA1EBD816879 /* ItemCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 053106592D8D2063785201E3CA487D8F /* ItemCell.swift */; };
+ 481F8723E4016FE22FCB9D073FCDAA12 /* FileExplorer.h in Headers */ = {isa = PBXBuildFile; fileRef = 813CE125044F482559E64CFC128EF549 /* FileExplorer.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 4C2B92E3D8B0F7ECC3518009E5306A8E /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = E8A86DBA135753138FA571DB7A970767 /* Info.plist */; };
+ 55282C8D76AB759E6E48DD6416E0B58E /* Pods-FileExplorerExampleApp-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C5ED915C976157DD9D62C40230AA0B21 /* Pods-FileExplorerExampleApp-dummy.m */; };
+ 602562D1AF6875D0928E3A69A6C064FD /* FileExplorerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 296DA964B2C356B8B317B95260D6F69F /* FileExplorerViewController.swift */; };
+ 69D81C74FF97BD4D9EA50FCBADBE6D45 /* ErrorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7707B8B9FF4C380C5735E6C65E47244 /* ErrorViewController.swift */; };
+ 7DD857AD21C4E4909D1C554E569F04EC /* UICollectionView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BDAA2EDC8CBF53A7473F01E40914EF3 /* UICollectionView+Extension.swift */; };
+ 8122B3C73098E5D7FB99594A348FB0DB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */; };
+ 865C1ED382E6F557FEDE95DA3A4AFE81 /* UISearchBar+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 415EEBFECA5F48DD3DD019DC362FCFDC /* UISearchBar+Extension.swift */; };
+ 89339D2FA5FBBE5505DEEB89B793651D /* LoadingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 078D3E29EC4743535789599354AC5F4B /* LoadingViewController.swift */; };
+ 8E78716CDE2A4DF9855F8C8E672DC7E5 /* FileViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3B7048B3232A6A9AF62002496B0B333 /* FileViewController.swift */; };
+ 90E1D980B3CB10FD4B14211BF346AE84 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66509C38694C4C512055617D66E303E7 /* Configuration.swift */; };
+ 92D2298F66AE2DCA08A5DDA3954089C8 /* FileExplorer-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AC6205BC5841D86914BC21AF9E9F8B2B /* FileExplorer-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 931CC4EC4765C45CA8FA1745CDD21299 /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86137BD43F95D8B5A087B2A31FFCAB6F /* WebViewController.swift */; };
+ 9372542569C8AE3583D0ED3CEBBDB5B8 /* ImageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 121E800FE56E9EB5EA89D341E36CEB32 /* ImageViewController.swift */; };
+ 9512E371A508D94873A0DE820B269B23 /* UIImage+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2B488CC28AE77F68B65917CE3AB5219 /* UIImage+Extension.swift */; };
+ 960465ED7BBA886E15AE856F68C31BA0 /* UIView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0619723525BAB7571C3B8FADF64DFB2C /* UIView+Extension.swift */; };
+ 99D400A31F16D83EC5F603847D2D87B3 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD428762EF03C63B784C1F5B516E3D7C /* Result.swift */; };
+ A34CF66BD7101FB78C28B6CC731433F3 /* DirectoryItemPresentationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA2267CBF9AACE7E8009FDA60C897CBF /* DirectoryItemPresentationCoordinator.swift */; };
+ AE166CC5E2CEC89FABD49139954FF4AD /* URL+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8781C3A3CFE4689C0FA805DC4094E11 /* URL+Extension.swift */; };
+ AEC3D49A8533DE9346708516F8CEF79E /* FileViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6403A17B97B966B73817DD2FB3336A /* FileViewModel.swift */; };
+ B24EBABE89FCF309361D6E4BD78AAD2E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */; };
+ B33EF2EA876CF004817FD3E0C8FB12BF /* Array+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = E12E8185138F68EFC07DEDD418DBE8DD /* Array+Extension.swift */; };
+ B3D00599B1225C41B7CAD3A582BD6F77 /* FileSpecificationProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2C81C59E230DD8C33C728FF7661E755 /* FileSpecificationProvider.swift */; };
+ C1FF958C44E2E815375B402B6C0D99DF /* ImageAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CB1C5505F2071D7F15F798818765C1BF /* ImageAssets.xcassets */; };
+ CBE6A4F7F7386C8AFA54AECA55B1F162 /* UIViewController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 280B044ACAA0BDB3BCEAC632F6D16795 /* UIViewController+Extension.swift */; };
+ CCD6B781FDB2D651A4952DB86F63E5FA /* FileService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF949D60CC4A1117510C97C44D1291FC /* FileService.swift */; };
+ CE48596E489FC08F1A05B2B0DDBAD235 /* UIBezierPath+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80AA1F90E375280F4BDE1B154A9DF144 /* UIBezierPath+Extension.swift */; };
+ D0F200617E34B9F9B6B6FDDBE7346FE1 /* ActionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57F63E65642B58671DB2C0E17B7F933C /* ActionsViewController.swift */; };
+ DFA8776331A22A4AAA659B9FAED8AD47 /* DirectoryContentViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69B5742A2945B7638A369D982563389C /* DirectoryContentViewController.swift */; };
+ EB0A73158C17B4EEEB197C2E1669CE56 /* UknownFileTypeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CFD5981CB5084F2839C1833600463CE /* UknownFileTypeViewController.swift */; };
+ F60CBE132403D6E3C9080FD532777CF7 /* UITableView+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F9890F7B043D65BB48E2F21310321A1 /* UITableView+Extension.swift */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
- 445868B02E57127061CB0E38C7C1BC6C /* PBXContainerItemProxy */ = {
+ CC295E4CD7660B890988F6A00DC0CD16 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
- containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */;
+ containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = AF46F59E23CB80804C61FBD44D106FE2;
+ remoteGlobalIDString = D95E57D4CDB0E5627A591884BE9C4114;
remoteInfo = FileExplorer;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
- 03DCEF06C07CBCA290A982EC1A2BF6AB /* CheckmarkButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CheckmarkButton.swift; sourceTree = ""; };
- 08A510F54F59061EAF82A0598B5BD916 /* Pods-FileExplorerExampleApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileExplorerExampleApp.debug.xcconfig"; sourceTree = ""; };
- 0DBA294F8F5DEECC99C9D7893FFB1F7B /* URL+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "URL+Extension.swift"; sourceTree = ""; };
- 15848B7FC40B661422D7A839FF06FE82 /* FileExplorer-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FileExplorer-dummy.m"; sourceTree = ""; };
- 188D85E8F6DD86BC4200B3201DFEFEA7 /* DirectoryItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DirectoryItemPresentationCoordinator.swift; sourceTree = ""; };
- 1DF3361FC08AE7BD8A069DD3999B156E /* DirectoryContentViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DirectoryContentViewController.swift; sourceTree = ""; };
- 20A4E3A4163C4E3D3486C84BF571B3DA /* Pods-FileExplorerExampleApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileExplorerExampleApp.release.xcconfig"; sourceTree = ""; };
- 27B89874C4609D92746D29C48173415B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 2A75877BE825261F0B6E9E271F5FB09B /* FileExplorer-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileExplorer-umbrella.h"; sourceTree = ""; };
- 2BEF2EAAE529DD69CA888B2781BDC8EA /* Pods-FileExplorerExampleApp-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-FileExplorerExampleApp-acknowledgements.markdown"; sourceTree = ""; };
- 31B790F5A27AB7D17F2C622676A5F645 /* FileViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileViewController.swift; sourceTree = ""; };
- 368FF4866E7A6BDD4FAA5A71CE460894 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = ""; };
- 3849D8A5CF0A0DFC1A743CA097E3C8A1 /* ImageViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ImageViewController.swift; sourceTree = ""; };
- 3DEED71AD5CA0F8B9F0950C9B8B9FDB8 /* FileExplorer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FileExplorer.framework; path = FileExplorer.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 4E56F4847F3B26805DD4BA3F6DDBEBE7 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = ""; };
- 53DFD71010776EDA6AE170F3359E5B3D /* Pods-FileExplorerExampleApp-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FileExplorerExampleApp-acknowledgements.plist"; sourceTree = ""; };
- 53FADBE07F294FDE4957D566D9893D14 /* ErrorViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ErrorViewController.swift; sourceTree = ""; };
- 59AF5DD1FBA2347AF0E9609C8494A193 /* Pods-FileExplorerExampleApp-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileExplorerExampleApp-frameworks.sh"; sourceTree = ""; };
- 5A305ECD80CC8E9464C0805DBD605B89 /* FileSpecificationProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSpecificationProvider.swift; sourceTree = ""; };
- 5F0D798834FE60B48C5EDABD79427145 /* Pods-FileExplorerExampleApp-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-FileExplorerExampleApp-dummy.m"; sourceTree = ""; };
- 60624933B0C46CE3E2306E4B4634CA84 /* ItemCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ItemCell.swift; sourceTree = ""; };
- 6510655ED7EF4293F38085798DC3A0D8 /* FileExplorerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileExplorerViewController.swift; sourceTree = ""; };
- 666A8C75D0B0E54F22EBF2DAD07D8518 /* Array+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "Array+Extension.swift"; sourceTree = ""; };
- 6ACB89D3A3E0DB93D56757E6BD14725A /* Pods_FileExplorerExampleApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_FileExplorerExampleApp.framework; path = "Pods-FileExplorerExampleApp.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
- 6C779E80613EBDBC8090DD0D7A7F9F2E /* UIImage+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIImage+Extension.swift"; sourceTree = ""; };
- 750A5F71AFBFF3FE436EE513BAE807BA /* FileExplorer.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = FileExplorer.modulemap; sourceTree = ""; };
- 7CED1B151C7F6EDD696632D62E5DB909 /* UISearchBar+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UISearchBar+Extension.swift"; sourceTree = ""; };
- 825328DBF1E784B191A6C7BB6EBD407E /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Errors.swift; sourceTree = ""; };
- 87B791C2DFB9CB894F3CD2E712ED7615 /* DirectoryContentViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DirectoryContentViewModel.swift; sourceTree = ""; };
- 88D34F7B1B7982F77E71916874616596 /* UIToolbar+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIToolbar+Extension.swift"; sourceTree = ""; };
- 8CBD4D1A2A353B82347201CF72A57326 /* ActionsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ActionsViewController.swift; sourceTree = ""; };
- 928AEDCDC4B2CB3E80BB58699E2DE9E9 /* UIView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIView+Extension.swift"; sourceTree = ""; };
- 92CE3EAA76B66656BBD9321C8F36AA87 /* ImageAssets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ImageAssets.swift; sourceTree = ""; };
- 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
- 964948134436BD8831B6DDD2AA8EC4DF /* ThumbnailGenerator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ThumbnailGenerator.swift; sourceTree = ""; };
- 9B8BD41F7DA00BBCB0643046F484BDFE /* Item.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Item.swift; sourceTree = ""; };
- 9C6413111B650036F2C1B4EE62F9577E /* FileItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileItemPresentationCoordinator.swift; sourceTree = ""; };
- 9C6C38A372960207DA5EA5DAB4F7B343 /* FileService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileService.swift; sourceTree = ""; };
- AA93AD559AD7598F73FE01B7FC9FD9E8 /* UknownFileTypeViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UknownFileTypeViewController.swift; sourceTree = ""; };
- AC47341F90F15D51B03C7D41CE8A52FE /* FileExplorer.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FileExplorer.xcconfig; sourceTree = ""; };
- BBDD5131A4C04E53584E56D76C582EDE /* Double+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "Double+Extension.swift"; sourceTree = ""; };
- C00AF9EEB72CD0D1623753D2AFDA43C3 /* LoadingViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LoadingViewController.swift; sourceTree = ""; };
- C2EEA56454EDF773ADB3907698299B7A /* UIViewController+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIViewController+Extension.swift"; sourceTree = ""; };
- C589C87B2609AFD74D2D9AC626C4009F /* UIAlertController+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIAlertController+Extension.swift"; sourceTree = ""; };
- CB07B4305053561EA46207416A3C95ED /* ItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ItemPresentationCoordinator.swift; sourceTree = ""; };
- CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
- CBB9BB1ACFEAC9133AF6893EB7648F1B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- D0DEF9002EE3B3F599F4AFD8CAEFB1B3 /* FileViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileViewModel.swift; sourceTree = ""; };
- D2AE6DB6E6072576AD2255F2E5276553 /* DirectoryViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DirectoryViewController.swift; sourceTree = ""; };
- D3431B31D2F1593508F2070813117A72 /* UICollectionView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UICollectionView+Extension.swift"; sourceTree = ""; };
- DB33EBB1B26C666546A24800F9AF1202 /* WebViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = WebViewController.swift; sourceTree = ""; };
- DBB259192DDC9D2341F7F7F0EA3F514A /* Pods-FileExplorerExampleApp-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-FileExplorerExampleApp-umbrella.h"; sourceTree = ""; };
- DE990690F786A5747E2E0C7E6D39B7C6 /* FileExplorer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = FileExplorer.h; sourceTree = ""; };
- DF63AB04F34BEC815947009ED0B5F307 /* ImageAssets.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; path = ImageAssets.xcassets; sourceTree = ""; };
- E157D4FCEFD1BCE54CD6F9D925ABFDAB /* FileExplorer-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileExplorer-prefix.pch"; sourceTree = ""; };
- E628AE8CD01190837B4A1401F7887735 /* Pods-FileExplorerExampleApp.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-FileExplorerExampleApp.modulemap"; sourceTree = ""; };
- E6BCC8AC8A9FADA2B5FA5E500998B931 /* UIBezierPath+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UIBezierPath+Extension.swift"; sourceTree = ""; };
- F6F744C6D98B8A0983B79805E517ED3A /* Pods-FileExplorerExampleApp-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileExplorerExampleApp-resources.sh"; sourceTree = ""; };
- F77A016507B64ECE7C1D980618482654 /* UITableView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "UITableView+Extension.swift"; sourceTree = ""; };
- FEC98877BB010FB62EEED5A76D85E721 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ 024D55F8A2E74B472DD07F69393FB7C2 /* Pods-FileExplorerExampleApp-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-FileExplorerExampleApp-acknowledgements.markdown"; sourceTree = ""; };
+ 053106592D8D2063785201E3CA487D8F /* ItemCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemCell.swift; path = FileExplorer/FileExplorer/ItemCell.swift; sourceTree = ""; };
+ 0619723525BAB7571C3B8FADF64DFB2C /* UIView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Extension.swift"; path = "FileExplorer/FileExplorer/UIView+Extension.swift"; sourceTree = ""; };
+ 06861F9E7DF291FE75136D161643BAFB /* Pods-FileExplorerExampleApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileExplorerExampleApp.debug.xcconfig"; sourceTree = ""; };
+ 078D3E29EC4743535789599354AC5F4B /* LoadingViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoadingViewController.swift; path = FileExplorer/FileExplorer/LoadingViewController.swift; sourceTree = ""; };
+ 0B6379D81851132049474940CF65F8C1 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = FileExplorer/FileExplorer/Errors.swift; sourceTree = ""; };
+ 0CF79B1836EF16EE87120D6A9E16D8CE /* CheckmarkButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CheckmarkButton.swift; path = FileExplorer/FileExplorer/CheckmarkButton.swift; sourceTree = ""; };
+ 0EC3F26F30895FFFD6D7FEB241477C95 /* Double+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Double+Extension.swift"; path = "FileExplorer/FileExplorer/Double+Extension.swift"; sourceTree = ""; };
+ 10047E32CD2BBEE9F4907B7911FDB3EF /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; };
+ 121E800FE56E9EB5EA89D341E36CEB32 /* ImageViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageViewController.swift; path = FileExplorer/FileExplorer/ImageViewController.swift; sourceTree = ""; };
+ 195D86C6461BB6CAEA1F47966319EF56 /* FileExplorer-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FileExplorer-dummy.m"; sourceTree = ""; };
+ 280B044ACAA0BDB3BCEAC632F6D16795 /* UIViewController+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Extension.swift"; path = "FileExplorer/FileExplorer/UIViewController+Extension.swift"; sourceTree = ""; };
+ 28FEFB4652B0F7EE308003E33DAB7EE3 /* UIToolbar+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIToolbar+Extension.swift"; path = "FileExplorer/FileExplorer/UIToolbar+Extension.swift"; sourceTree = ""; };
+ 296DA964B2C356B8B317B95260D6F69F /* FileExplorerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileExplorerViewController.swift; path = FileExplorer/FileExplorer/FileExplorerViewController.swift; sourceTree = ""; };
+ 2985408795C1C928B115B00BC16F9919 /* FileItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileItemPresentationCoordinator.swift; path = FileExplorer/FileExplorer/FileItemPresentationCoordinator.swift; sourceTree = ""; };
+ 2C7D8D6A7F204428BB64815C13C01651 /* Pods-FileExplorerExampleApp-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileExplorerExampleApp-frameworks.sh"; sourceTree = ""; };
+ 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
+ 334BCEEED4E69F10B8503737E4C9D722 /* FileExplorer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FileExplorer.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 348AEA27B2C3F4B39A35DA399B673A33 /* Pods-FileExplorerExampleApp.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-FileExplorerExampleApp.modulemap"; sourceTree = ""; };
+ 377C7270D16665AECB7BF73E1F3BADCF /* Pods_FileExplorerExampleApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FileExplorerExampleApp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 415EEBFECA5F48DD3DD019DC362FCFDC /* UISearchBar+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchBar+Extension.swift"; path = "FileExplorer/FileExplorer/UISearchBar+Extension.swift"; sourceTree = ""; };
+ 417E8F7B1500B9119B383B4E786F6CA4 /* UIAlertController+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIAlertController+Extension.swift"; path = "FileExplorer/FileExplorer/UIAlertController+Extension.swift"; sourceTree = ""; };
+ 4CFD5981CB5084F2839C1833600463CE /* UknownFileTypeViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UknownFileTypeViewController.swift; path = FileExplorer/FileExplorer/UknownFileTypeViewController.swift; sourceTree = ""; };
+ 527C4A0C97CA71E5FC3CB5FD220A19E5 /* FileExplorer.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FileExplorer.modulemap; sourceTree = ""; };
+ 562E3F30F99314A70F28C5F0BB92CBED /* DirectoryContentViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DirectoryContentViewModel.swift; path = FileExplorer/FileExplorer/DirectoryContentViewModel.swift; sourceTree = ""; };
+ 57F63E65642B58671DB2C0E17B7F933C /* ActionsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ActionsViewController.swift; path = FileExplorer/FileExplorer/ActionsViewController.swift; sourceTree = ""; };
+ 5831EC37E69AE555BC6C830F82FFBF7E /* ThumbnailGenerator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThumbnailGenerator.swift; path = FileExplorer/FileExplorer/ThumbnailGenerator.swift; sourceTree = ""; };
+ 5E4F1A308BFEDC5FCDA1051EBB5414B0 /* Item.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Item.swift; path = FileExplorer/FileExplorer/Item.swift; sourceTree = ""; };
+ 5F9890F7B043D65BB48E2F21310321A1 /* UITableView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITableView+Extension.swift"; path = "FileExplorer/FileExplorer/UITableView+Extension.swift"; sourceTree = ""; };
+ 66509C38694C4C512055617D66E303E7 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = FileExplorer/FileExplorer/Configuration.swift; sourceTree = ""; };
+ 69B5742A2945B7638A369D982563389C /* DirectoryContentViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DirectoryContentViewController.swift; path = FileExplorer/FileExplorer/DirectoryContentViewController.swift; sourceTree = ""; };
+ 6B28A05485A2339092EB71B8A511EC0C /* FileExplorer-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FileExplorer-Info.plist"; sourceTree = ""; };
+ 6BDAA2EDC8CBF53A7473F01E40914EF3 /* UICollectionView+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UICollectionView+Extension.swift"; path = "FileExplorer/FileExplorer/UICollectionView+Extension.swift"; sourceTree = ""; };
+ 6C2847FB70D86F26760860BE06EDCD49 /* Pods-FileExplorerExampleApp-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-FileExplorerExampleApp-umbrella.h"; sourceTree = ""; };
+ 6F6403A17B97B966B73817DD2FB3336A /* FileViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileViewModel.swift; path = FileExplorer/FileExplorer/FileViewModel.swift; sourceTree = ""; };
+ 80AA1F90E375280F4BDE1B154A9DF144 /* UIBezierPath+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIBezierPath+Extension.swift"; path = "FileExplorer/FileExplorer/UIBezierPath+Extension.swift"; sourceTree = ""; };
+ 813CE125044F482559E64CFC128EF549 /* FileExplorer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FileExplorer.h; path = FileExplorer/FileExplorer/FileExplorer.h; sourceTree = ""; };
+ 86137BD43F95D8B5A087B2A31FFCAB6F /* WebViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WebViewController.swift; path = FileExplorer/FileExplorer/WebViewController.swift; sourceTree = ""; };
+ 964D86431D558734C3C7528C7EDF6881 /* DirectoryViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DirectoryViewController.swift; path = FileExplorer/FileExplorer/DirectoryViewController.swift; sourceTree = ""; };
+ 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
+ A8781C3A3CFE4689C0FA805DC4094E11 /* URL+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URL+Extension.swift"; path = "FileExplorer/FileExplorer/URL+Extension.swift"; sourceTree = ""; };
+ AC6205BC5841D86914BC21AF9E9F8B2B /* FileExplorer-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileExplorer-umbrella.h"; sourceTree = ""; };
+ AD428762EF03C63B784C1F5B516E3D7C /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = FileExplorer/FileExplorer/Result.swift; sourceTree = ""; };
+ B0B71AD7104A75C9E7814F962D78A822 /* Pods-FileExplorerExampleApp-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FileExplorerExampleApp-acknowledgements.plist"; sourceTree = ""; };
+ B2517266B5B8E7334A7ACFE56B0DD92B /* ImageAssets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageAssets.swift; path = FileExplorer/FileExplorer/ImageAssets.swift; sourceTree = ""; };
+ B2C81C59E230DD8C33C728FF7661E755 /* FileSpecificationProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileSpecificationProvider.swift; path = FileExplorer/FileExplorer/FileSpecificationProvider.swift; sourceTree = ""; };
+ BF949D60CC4A1117510C97C44D1291FC /* FileService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileService.swift; path = FileExplorer/FileExplorer/FileService.swift; sourceTree = ""; };
+ BFB9C10A264D6AB3FFC7D23310928957 /* FileExplorer.podspec.json */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.json; path = FileExplorer.podspec.json; sourceTree = ""; };
+ C00EF4909A63DB4B9E7032ED59D765B9 /* LICENCE.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = LICENCE.md; sourceTree = ""; };
+ C2B488CC28AE77F68B65917CE3AB5219 /* UIImage+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+Extension.swift"; path = "FileExplorer/FileExplorer/UIImage+Extension.swift"; sourceTree = ""; };
+ C5ED915C976157DD9D62C40230AA0B21 /* Pods-FileExplorerExampleApp-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-FileExplorerExampleApp-dummy.m"; sourceTree = ""; };
+ CB1C5505F2071D7F15F798818765C1BF /* ImageAssets.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; name = ImageAssets.xcassets; path = FileExplorer/FileExplorer/Resources/ImageAssets.xcassets; sourceTree = ""; };
+ D7707B8B9FF4C380C5735E6C65E47244 /* ErrorViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ErrorViewController.swift; path = FileExplorer/FileExplorer/ErrorViewController.swift; sourceTree = ""; };
+ DA347B6F9F471C1D01B5500A05A28DF4 /* FileExplorer.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FileExplorer.xcconfig; sourceTree = ""; };
+ E12E8185138F68EFC07DEDD418DBE8DD /* Array+Extension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+Extension.swift"; path = "FileExplorer/FileExplorer/Array+Extension.swift"; sourceTree = ""; };
+ E3FC3D4DBFF9E2628BD775616693CC03 /* FileExplorer-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileExplorer-prefix.pch"; sourceTree = ""; };
+ E456D262DFD0D50249D7D7B8CCC68111 /* Pods-FileExplorerExampleApp-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FileExplorerExampleApp-Info.plist"; sourceTree = ""; };
+ E8A86DBA135753138FA571DB7A970767 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = Info.plist; path = FileExplorer/FileExplorer/Resources/Info.plist; sourceTree = ""; };
+ EA2267CBF9AACE7E8009FDA60C897CBF /* DirectoryItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DirectoryItemPresentationCoordinator.swift; path = FileExplorer/FileExplorer/DirectoryItemPresentationCoordinator.swift; sourceTree = ""; };
+ EA397FBF5484597461AF589CE723A993 /* ItemPresentationCoordinator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemPresentationCoordinator.swift; path = FileExplorer/FileExplorer/ItemPresentationCoordinator.swift; sourceTree = ""; };
+ F1289E190E57366F272D08EF1353C3F6 /* Pods-FileExplorerExampleApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileExplorerExampleApp.release.xcconfig"; sourceTree = ""; };
+ F3B7048B3232A6A9AF62002496B0B333 /* FileViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FileViewController.swift; path = FileExplorer/FileExplorer/FileViewController.swift; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
- 73F9FCEF5B6975F51CDE6D7E976A1CD4 /* Frameworks */ = {
+ 7243D7C86EBD84DB3FD08CA84A67BEE6 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 195EDAFDED5655A625BA1612BB40BD93 /* Foundation.framework in Frameworks */,
+ B24EBABE89FCF309361D6E4BD78AAD2E /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
- DF8AE1BFD1576D913EF69F417C82B800 /* Frameworks */ = {
+ 8DAC1F56C5A799D2B02ACECE949E6C14 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 1F59664525E621A3F721760046279635 /* Foundation.framework in Frameworks */,
+ 8122B3C73098E5D7FB99594A348FB0DB /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- 30D911885B7A108F21A323F20524EDCE /* Development Pods */ = {
+ 05B998C11DD9D4066F3803DB16B08B6F /* Pod */ = {
isa = PBXGroup;
children = (
- 8D16BCFFCDB08ADE02514BB85341394C /* FileExplorer */,
+ BFB9C10A264D6AB3FFC7D23310928957 /* FileExplorer.podspec.json */,
+ C00EF4909A63DB4B9E7032ED59D765B9 /* LICENCE.md */,
+ 10047E32CD2BBEE9F4907B7911FDB3EF /* README.md */,
);
- name = "Development Pods";
- sourceTree = "";
- };
- 315C2DA2A1195B1460F7E2CC7ACD7A9F /* Targets Support Files */ = {
- isa = PBXGroup;
- children = (
- E873877358DC26461CFCD41F342143F7 /* Pods-FileExplorerExampleApp */,
- );
- name = "Targets Support Files";
- sourceTree = "";
- };
- 4044FAF7401138A1F1F5D693A4D112BB /* Resources */ = {
- isa = PBXGroup;
- children = (
- DF63AB04F34BEC815947009ED0B5F307 /* ImageAssets.xcassets */,
- FEC98877BB010FB62EEED5A76D85E721 /* Info.plist */,
- );
- name = Resources;
- path = Resources;
+ name = Pod;
sourceTree = "";
};
- 4DB36F943DAC9B6CD70CD843635CD6E1 /* FileExplorer */ = {
+ 2E352D7181360C2720E5C977DA923467 /* Development Pods */ = {
isa = PBXGroup;
children = (
- CD4334AE5E1407159C357BF2533B6E25 /* FileExplorer */,
+ BBDFDDB797FD473FF34740D94F9BC197 /* FileExplorer */,
);
- name = FileExplorer;
- path = FileExplorer;
+ name = "Development Pods";
sourceTree = "";
};
- 50877131529725DC2E502C4FC73111F0 /* Support Files */ = {
+ 32B12230BF51E5B2383E421AC6660A17 /* Support Files */ = {
isa = PBXGroup;
children = (
- 750A5F71AFBFF3FE436EE513BAE807BA /* FileExplorer.modulemap */,
- AC47341F90F15D51B03C7D41CE8A52FE /* FileExplorer.xcconfig */,
- 15848B7FC40B661422D7A839FF06FE82 /* FileExplorer-dummy.m */,
- E157D4FCEFD1BCE54CD6F9D925ABFDAB /* FileExplorer-prefix.pch */,
- 2A75877BE825261F0B6E9E271F5FB09B /* FileExplorer-umbrella.h */,
- 27B89874C4609D92746D29C48173415B /* Info.plist */,
+ 527C4A0C97CA71E5FC3CB5FD220A19E5 /* FileExplorer.modulemap */,
+ DA347B6F9F471C1D01B5500A05A28DF4 /* FileExplorer.xcconfig */,
+ 195D86C6461BB6CAEA1F47966319EF56 /* FileExplorer-dummy.m */,
+ 6B28A05485A2339092EB71B8A511EC0C /* FileExplorer-Info.plist */,
+ E3FC3D4DBFF9E2628BD775616693CC03 /* FileExplorer-prefix.pch */,
+ AC6205BC5841D86914BC21AF9E9F8B2B /* FileExplorer-umbrella.h */,
);
name = "Support Files";
path = "Examples/Pods/Target Support Files/FileExplorer";
sourceTree = "";
};
- 7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */ = {
- isa = PBXGroup;
- children = (
- CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */,
- );
- name = iOS;
- sourceTree = "";
- };
- 7DB346D0F39D3F0E887471402A8071AB = {
+ 4632B19F33CC6D81493C5FF91369E364 /* Pods-FileExplorerExampleApp */ = {
isa = PBXGroup;
children = (
- 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */,
- 30D911885B7A108F21A323F20524EDCE /* Development Pods */,
- BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */,
- AF23E3312380325823227F3BC63D4114 /* Products */,
- 315C2DA2A1195B1460F7E2CC7ACD7A9F /* Targets Support Files */,
+ 348AEA27B2C3F4B39A35DA399B673A33 /* Pods-FileExplorerExampleApp.modulemap */,
+ 024D55F8A2E74B472DD07F69393FB7C2 /* Pods-FileExplorerExampleApp-acknowledgements.markdown */,
+ B0B71AD7104A75C9E7814F962D78A822 /* Pods-FileExplorerExampleApp-acknowledgements.plist */,
+ C5ED915C976157DD9D62C40230AA0B21 /* Pods-FileExplorerExampleApp-dummy.m */,
+ 2C7D8D6A7F204428BB64815C13C01651 /* Pods-FileExplorerExampleApp-frameworks.sh */,
+ E456D262DFD0D50249D7D7B8CCC68111 /* Pods-FileExplorerExampleApp-Info.plist */,
+ 6C2847FB70D86F26760860BE06EDCD49 /* Pods-FileExplorerExampleApp-umbrella.h */,
+ 06861F9E7DF291FE75136D161643BAFB /* Pods-FileExplorerExampleApp.debug.xcconfig */,
+ F1289E190E57366F272D08EF1353C3F6 /* Pods-FileExplorerExampleApp.release.xcconfig */,
);
+ name = "Pods-FileExplorerExampleApp";
+ path = "Target Support Files/Pods-FileExplorerExampleApp";
sourceTree = "";
};
- 8D16BCFFCDB08ADE02514BB85341394C /* FileExplorer */ = {
+ 596DCBCFD18D8B62FD8FE6CABA453AC7 /* Resources */ = {
isa = PBXGroup;
children = (
- B4FE95010568BC361F14C3B4B27C35D2 /* FileExplorer */,
- B828FC8263F238B088E86C1874216853 /* Resources */,
- 50877131529725DC2E502C4FC73111F0 /* Support Files */,
+ CB1C5505F2071D7F15F798818765C1BF /* ImageAssets.xcassets */,
+ E8A86DBA135753138FA571DB7A970767 /* Info.plist */,
);
- name = FileExplorer;
- path = ../..;
+ name = Resources;
sourceTree = "";
};
- AF23E3312380325823227F3BC63D4114 /* Products */ = {
+ 77F038867FBE061BAAF08E82479D5A02 /* Products */ = {
isa = PBXGroup;
children = (
- 3DEED71AD5CA0F8B9F0950C9B8B9FDB8 /* FileExplorer.framework */,
- 6ACB89D3A3E0DB93D56757E6BD14725A /* Pods_FileExplorerExampleApp.framework */,
+ 334BCEEED4E69F10B8503737E4C9D722 /* FileExplorer.framework */,
+ 377C7270D16665AECB7BF73E1F3BADCF /* Pods_FileExplorerExampleApp.framework */,
);
name = Products;
sourceTree = "";
};
- B4FE95010568BC361F14C3B4B27C35D2 /* FileExplorer */ = {
+ BBDFDDB797FD473FF34740D94F9BC197 /* FileExplorer */ = {
isa = PBXGroup;
children = (
- E634C03E8255A2E839D2DDD9535BC5DB /* FileExplorer */,
+ 57F63E65642B58671DB2C0E17B7F933C /* ActionsViewController.swift */,
+ E12E8185138F68EFC07DEDD418DBE8DD /* Array+Extension.swift */,
+ 0CF79B1836EF16EE87120D6A9E16D8CE /* CheckmarkButton.swift */,
+ 66509C38694C4C512055617D66E303E7 /* Configuration.swift */,
+ 69B5742A2945B7638A369D982563389C /* DirectoryContentViewController.swift */,
+ 562E3F30F99314A70F28C5F0BB92CBED /* DirectoryContentViewModel.swift */,
+ EA2267CBF9AACE7E8009FDA60C897CBF /* DirectoryItemPresentationCoordinator.swift */,
+ 964D86431D558734C3C7528C7EDF6881 /* DirectoryViewController.swift */,
+ 0EC3F26F30895FFFD6D7FEB241477C95 /* Double+Extension.swift */,
+ 0B6379D81851132049474940CF65F8C1 /* Errors.swift */,
+ D7707B8B9FF4C380C5735E6C65E47244 /* ErrorViewController.swift */,
+ 813CE125044F482559E64CFC128EF549 /* FileExplorer.h */,
+ 296DA964B2C356B8B317B95260D6F69F /* FileExplorerViewController.swift */,
+ 2985408795C1C928B115B00BC16F9919 /* FileItemPresentationCoordinator.swift */,
+ BF949D60CC4A1117510C97C44D1291FC /* FileService.swift */,
+ B2C81C59E230DD8C33C728FF7661E755 /* FileSpecificationProvider.swift */,
+ F3B7048B3232A6A9AF62002496B0B333 /* FileViewController.swift */,
+ 6F6403A17B97B966B73817DD2FB3336A /* FileViewModel.swift */,
+ B2517266B5B8E7334A7ACFE56B0DD92B /* ImageAssets.swift */,
+ 121E800FE56E9EB5EA89D341E36CEB32 /* ImageViewController.swift */,
+ 5E4F1A308BFEDC5FCDA1051EBB5414B0 /* Item.swift */,
+ 053106592D8D2063785201E3CA487D8F /* ItemCell.swift */,
+ EA397FBF5484597461AF589CE723A993 /* ItemPresentationCoordinator.swift */,
+ 078D3E29EC4743535789599354AC5F4B /* LoadingViewController.swift */,
+ AD428762EF03C63B784C1F5B516E3D7C /* Result.swift */,
+ 5831EC37E69AE555BC6C830F82FFBF7E /* ThumbnailGenerator.swift */,
+ 417E8F7B1500B9119B383B4E786F6CA4 /* UIAlertController+Extension.swift */,
+ 80AA1F90E375280F4BDE1B154A9DF144 /* UIBezierPath+Extension.swift */,
+ 6BDAA2EDC8CBF53A7473F01E40914EF3 /* UICollectionView+Extension.swift */,
+ C2B488CC28AE77F68B65917CE3AB5219 /* UIImage+Extension.swift */,
+ 415EEBFECA5F48DD3DD019DC362FCFDC /* UISearchBar+Extension.swift */,
+ 5F9890F7B043D65BB48E2F21310321A1 /* UITableView+Extension.swift */,
+ 28FEFB4652B0F7EE308003E33DAB7EE3 /* UIToolbar+Extension.swift */,
+ 0619723525BAB7571C3B8FADF64DFB2C /* UIView+Extension.swift */,
+ 280B044ACAA0BDB3BCEAC632F6D16795 /* UIViewController+Extension.swift */,
+ 4CFD5981CB5084F2839C1833600463CE /* UknownFileTypeViewController.swift */,
+ A8781C3A3CFE4689C0FA805DC4094E11 /* URL+Extension.swift */,
+ 86137BD43F95D8B5A087B2A31FFCAB6F /* WebViewController.swift */,
+ 05B998C11DD9D4066F3803DB16B08B6F /* Pod */,
+ 596DCBCFD18D8B62FD8FE6CABA453AC7 /* Resources */,
+ 32B12230BF51E5B2383E421AC6660A17 /* Support Files */,
);
name = FileExplorer;
- path = FileExplorer;
- sourceTree = "";
- };
- B828FC8263F238B088E86C1874216853 /* Resources */ = {
- isa = PBXGroup;
- children = (
- 4DB36F943DAC9B6CD70CD843635CD6E1 /* FileExplorer */,
- );
- name = Resources;
+ path = ../..;
sourceTree = "";
};
- BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = {
+ C0834CEBB1379A84116EF29F93051C60 /* iOS */ = {
isa = PBXGroup;
children = (
- 7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */,
+ 3212113385A8FBBDB272BD23C409FF61 /* Foundation.framework */,
);
- name = Frameworks;
+ name = iOS;
sourceTree = "";
};
- CD4334AE5E1407159C357BF2533B6E25 /* FileExplorer */ = {
+ CF1408CF629C7361332E53B88F7BD30C = {
isa = PBXGroup;
children = (
- 4044FAF7401138A1F1F5D693A4D112BB /* Resources */,
+ 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */,
+ 2E352D7181360C2720E5C977DA923467 /* Development Pods */,
+ D210D550F4EA176C3123ED886F8F87F5 /* Frameworks */,
+ 77F038867FBE061BAAF08E82479D5A02 /* Products */,
+ E5DE59B23133A70D84573AEA70B95D97 /* Targets Support Files */,
);
- name = FileExplorer;
- path = FileExplorer;
sourceTree = "";
};
- E634C03E8255A2E839D2DDD9535BC5DB /* FileExplorer */ = {
+ D210D550F4EA176C3123ED886F8F87F5 /* Frameworks */ = {
isa = PBXGroup;
children = (
- 8CBD4D1A2A353B82347201CF72A57326 /* ActionsViewController.swift */,
- 666A8C75D0B0E54F22EBF2DAD07D8518 /* Array+Extension.swift */,
- 03DCEF06C07CBCA290A982EC1A2BF6AB /* CheckmarkButton.swift */,
- 368FF4866E7A6BDD4FAA5A71CE460894 /* Configuration.swift */,
- 1DF3361FC08AE7BD8A069DD3999B156E /* DirectoryContentViewController.swift */,
- 87B791C2DFB9CB894F3CD2E712ED7615 /* DirectoryContentViewModel.swift */,
- 188D85E8F6DD86BC4200B3201DFEFEA7 /* DirectoryItemPresentationCoordinator.swift */,
- D2AE6DB6E6072576AD2255F2E5276553 /* DirectoryViewController.swift */,
- BBDD5131A4C04E53584E56D76C582EDE /* Double+Extension.swift */,
- 825328DBF1E784B191A6C7BB6EBD407E /* Errors.swift */,
- 53FADBE07F294FDE4957D566D9893D14 /* ErrorViewController.swift */,
- DE990690F786A5747E2E0C7E6D39B7C6 /* FileExplorer.h */,
- 6510655ED7EF4293F38085798DC3A0D8 /* FileExplorerViewController.swift */,
- 9C6413111B650036F2C1B4EE62F9577E /* FileItemPresentationCoordinator.swift */,
- 9C6C38A372960207DA5EA5DAB4F7B343 /* FileService.swift */,
- 5A305ECD80CC8E9464C0805DBD605B89 /* FileSpecificationProvider.swift */,
- 31B790F5A27AB7D17F2C622676A5F645 /* FileViewController.swift */,
- D0DEF9002EE3B3F599F4AFD8CAEFB1B3 /* FileViewModel.swift */,
- 92CE3EAA76B66656BBD9321C8F36AA87 /* ImageAssets.swift */,
- 3849D8A5CF0A0DFC1A743CA097E3C8A1 /* ImageViewController.swift */,
- 9B8BD41F7DA00BBCB0643046F484BDFE /* Item.swift */,
- 60624933B0C46CE3E2306E4B4634CA84 /* ItemCell.swift */,
- CB07B4305053561EA46207416A3C95ED /* ItemPresentationCoordinator.swift */,
- C00AF9EEB72CD0D1623753D2AFDA43C3 /* LoadingViewController.swift */,
- 4E56F4847F3B26805DD4BA3F6DDBEBE7 /* Result.swift */,
- 964948134436BD8831B6DDD2AA8EC4DF /* ThumbnailGenerator.swift */,
- C589C87B2609AFD74D2D9AC626C4009F /* UIAlertController+Extension.swift */,
- E6BCC8AC8A9FADA2B5FA5E500998B931 /* UIBezierPath+Extension.swift */,
- D3431B31D2F1593508F2070813117A72 /* UICollectionView+Extension.swift */,
- 6C779E80613EBDBC8090DD0D7A7F9F2E /* UIImage+Extension.swift */,
- 7CED1B151C7F6EDD696632D62E5DB909 /* UISearchBar+Extension.swift */,
- F77A016507B64ECE7C1D980618482654 /* UITableView+Extension.swift */,
- 88D34F7B1B7982F77E71916874616596 /* UIToolbar+Extension.swift */,
- 928AEDCDC4B2CB3E80BB58699E2DE9E9 /* UIView+Extension.swift */,
- C2EEA56454EDF773ADB3907698299B7A /* UIViewController+Extension.swift */,
- AA93AD559AD7598F73FE01B7FC9FD9E8 /* UknownFileTypeViewController.swift */,
- 0DBA294F8F5DEECC99C9D7893FFB1F7B /* URL+Extension.swift */,
- DB33EBB1B26C666546A24800F9AF1202 /* WebViewController.swift */,
+ C0834CEBB1379A84116EF29F93051C60 /* iOS */,
);
- name = FileExplorer;
- path = FileExplorer;
+ name = Frameworks;
sourceTree = "";
};
- E873877358DC26461CFCD41F342143F7 /* Pods-FileExplorerExampleApp */ = {
+ E5DE59B23133A70D84573AEA70B95D97 /* Targets Support Files */ = {
isa = PBXGroup;
children = (
- CBB9BB1ACFEAC9133AF6893EB7648F1B /* Info.plist */,
- E628AE8CD01190837B4A1401F7887735 /* Pods-FileExplorerExampleApp.modulemap */,
- 2BEF2EAAE529DD69CA888B2781BDC8EA /* Pods-FileExplorerExampleApp-acknowledgements.markdown */,
- 53DFD71010776EDA6AE170F3359E5B3D /* Pods-FileExplorerExampleApp-acknowledgements.plist */,
- 5F0D798834FE60B48C5EDABD79427145 /* Pods-FileExplorerExampleApp-dummy.m */,
- 59AF5DD1FBA2347AF0E9609C8494A193 /* Pods-FileExplorerExampleApp-frameworks.sh */,
- F6F744C6D98B8A0983B79805E517ED3A /* Pods-FileExplorerExampleApp-resources.sh */,
- DBB259192DDC9D2341F7F7F0EA3F514A /* Pods-FileExplorerExampleApp-umbrella.h */,
- 08A510F54F59061EAF82A0598B5BD916 /* Pods-FileExplorerExampleApp.debug.xcconfig */,
- 20A4E3A4163C4E3D3486C84BF571B3DA /* Pods-FileExplorerExampleApp.release.xcconfig */,
+ 4632B19F33CC6D81493C5FF91369E364 /* Pods-FileExplorerExampleApp */,
);
- name = "Pods-FileExplorerExampleApp";
- path = "Target Support Files/Pods-FileExplorerExampleApp";
+ name = "Targets Support Files";
sourceTree = "";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
- 37E9F3FA2EBE99097D566EEC77981796 /* Headers */ = {
+ CD096380F223FEF9BA859B1B47786CD3 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- B56659F0FB194634D35A1B72A3D68B60 /* FileExplorer-umbrella.h in Headers */,
- 15D0DEC414733FE098C8AC6C05750385 /* FileExplorer.h in Headers */,
+ 0A983133574F1E4C26BCF04EEE32F45E /* Pods-FileExplorerExampleApp-umbrella.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
- 53EC2E27A568EA9C92B27AE54ED794D0 /* Headers */ = {
+ F9DABDCAF665E4C1F588B68BA7814E70 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- 0A8FF80D8569EED1E44F93C19209A1C7 /* Pods-FileExplorerExampleApp-umbrella.h in Headers */,
+ 92D2298F66AE2DCA08A5DDA3954089C8 /* FileExplorer-umbrella.h in Headers */,
+ 481F8723E4016FE22FCB9D073FCDAA12 /* FileExplorer.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
- 8D5AC4E6F6554EDD7C7736222F171E18 /* Pods-FileExplorerExampleApp */ = {
+ 52B054244EDAAAAD53809B284AF62842 /* Pods-FileExplorerExampleApp */ = {
isa = PBXNativeTarget;
- buildConfigurationList = 1442B6A8C4534ECC310D7C1232C27B02 /* Build configuration list for PBXNativeTarget "Pods-FileExplorerExampleApp" */;
+ buildConfigurationList = 4320943D7F78720907F3334D79EC7A37 /* Build configuration list for PBXNativeTarget "Pods-FileExplorerExampleApp" */;
buildPhases = (
- 02BFB4E9EE3B08F68632E6AC1AD47286 /* Sources */,
- 73F9FCEF5B6975F51CDE6D7E976A1CD4 /* Frameworks */,
- 53EC2E27A568EA9C92B27AE54ED794D0 /* Headers */,
+ CD096380F223FEF9BA859B1B47786CD3 /* Headers */,
+ BA6B84ED33B9EDC0BBA2DB1DE00EAFBE /* Sources */,
+ 7243D7C86EBD84DB3FD08CA84A67BEE6 /* Frameworks */,
+ 5A6E3C9C6D7D142EFC5DBA637358880B /* Resources */,
);
buildRules = (
);
dependencies = (
- 9508345D097D4608966D9A436A2BBCD8 /* PBXTargetDependency */,
+ 8796C24F0BA358447C9785D0774D97E9 /* PBXTargetDependency */,
);
name = "Pods-FileExplorerExampleApp";
productName = "Pods-FileExplorerExampleApp";
- productReference = 6ACB89D3A3E0DB93D56757E6BD14725A /* Pods_FileExplorerExampleApp.framework */;
+ productReference = 377C7270D16665AECB7BF73E1F3BADCF /* Pods_FileExplorerExampleApp.framework */;
productType = "com.apple.product-type.framework";
};
- AF46F59E23CB80804C61FBD44D106FE2 /* FileExplorer */ = {
+ D95E57D4CDB0E5627A591884BE9C4114 /* FileExplorer */ = {
isa = PBXNativeTarget;
- buildConfigurationList = 76874E0337F4FB0C4118B6D272FAAD30 /* Build configuration list for PBXNativeTarget "FileExplorer" */;
+ buildConfigurationList = 46935E8A8BE49F101E1E56659A2D5384 /* Build configuration list for PBXNativeTarget "FileExplorer" */;
buildPhases = (
- 2E0B4E61D61BA20E4684D9F1F8B422DD /* Sources */,
- DF8AE1BFD1576D913EF69F417C82B800 /* Frameworks */,
- 37E9F3FA2EBE99097D566EEC77981796 /* Headers */,
- 3842D4F31BD295F96022DFA016038E52 /* Resources */,
+ F9DABDCAF665E4C1F588B68BA7814E70 /* Headers */,
+ F7FDC9E181AB3CDDDC6CA9ED13247801 /* Sources */,
+ 8DAC1F56C5A799D2B02ACECE949E6C14 /* Frameworks */,
+ 103D50D0FDB024B96C19005F975FB795 /* Resources */,
);
buildRules = (
);
@@ -390,256 +358,344 @@
);
name = FileExplorer;
productName = FileExplorer;
- productReference = 3DEED71AD5CA0F8B9F0950C9B8B9FDB8 /* FileExplorer.framework */;
+ productReference = 334BCEEED4E69F10B8503737E4C9D722 /* FileExplorer.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
- D41D8CD98F00B204E9800998ECF8427E /* Project object */ = {
+ BFDFE7DC352907FC980B868725387E98 /* Project object */ = {
isa = PBXProject;
attributes = {
- LastSwiftUpdateCheck = 0730;
- LastUpgradeCheck = 0700;
+ LastSwiftUpdateCheck = 1100;
+ LastUpgradeCheck = 1100;
+ TargetAttributes = {
+ D95E57D4CDB0E5627A591884BE9C4114 = {
+ LastSwiftMigration = 1120;
+ };
+ };
};
- buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */;
+ buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */;
compatibilityVersion = "Xcode 3.2";
- developmentRegion = English;
+ developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
+ Base,
);
- mainGroup = 7DB346D0F39D3F0E887471402A8071AB;
- productRefGroup = AF23E3312380325823227F3BC63D4114 /* Products */;
+ mainGroup = CF1408CF629C7361332E53B88F7BD30C;
+ productRefGroup = 77F038867FBE061BAAF08E82479D5A02 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
- AF46F59E23CB80804C61FBD44D106FE2 /* FileExplorer */,
- 8D5AC4E6F6554EDD7C7736222F171E18 /* Pods-FileExplorerExampleApp */,
+ D95E57D4CDB0E5627A591884BE9C4114 /* FileExplorer */,
+ 52B054244EDAAAAD53809B284AF62842 /* Pods-FileExplorerExampleApp */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
- 3842D4F31BD295F96022DFA016038E52 /* Resources */ = {
+ 103D50D0FDB024B96C19005F975FB795 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ C1FF958C44E2E815375B402B6C0D99DF /* ImageAssets.xcassets in Resources */,
+ 4C2B92E3D8B0F7ECC3518009E5306A8E /* Info.plist in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 5A6E3C9C6D7D142EFC5DBA637358880B /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 7B7E72ECB468F0E4EA35D9199F3A9735 /* ImageAssets.xcassets in Resources */,
- AFD72DDC3778276848B0FCFC3D716968 /* Info.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
- 02BFB4E9EE3B08F68632E6AC1AD47286 /* Sources */ = {
+ BA6B84ED33B9EDC0BBA2DB1DE00EAFBE /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- EADB51E3C4C276EAADE8558B645EBD14 /* Pods-FileExplorerExampleApp-dummy.m in Sources */,
+ 55282C8D76AB759E6E48DD6416E0B58E /* Pods-FileExplorerExampleApp-dummy.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
- 2E0B4E61D61BA20E4684D9F1F8B422DD /* Sources */ = {
+ F7FDC9E181AB3CDDDC6CA9ED13247801 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- A5AF49F0A16DF33F8B83E8211E9B8849 /* ActionsViewController.swift in Sources */,
- D0E516A0EA2955BF3876BFCB31C246C6 /* Array+Extension.swift in Sources */,
- A0BD2B521D09DCAA68208F053DFB466B /* CheckmarkButton.swift in Sources */,
- 2662CF18AE5FCC5E73639B664C0B6572 /* Configuration.swift in Sources */,
- D3F5242F114D9C85A3B9213E3CE81BDF /* DirectoryContentViewController.swift in Sources */,
- 65CD20D430B3DAEC64000607EB1818EC /* DirectoryContentViewModel.swift in Sources */,
- 20789802D25F2A2DE33244F0E5C00D90 /* DirectoryItemPresentationCoordinator.swift in Sources */,
- 0504D7107FCC8EA22729BD3E39D63B40 /* DirectoryViewController.swift in Sources */,
- 3D77713926E8E276D832D1D3382B3B82 /* Double+Extension.swift in Sources */,
- F992A603FAE4C6623C1433B8457E4333 /* Errors.swift in Sources */,
- 76423CB9D00A25290404DDB6CC8DD877 /* ErrorViewController.swift in Sources */,
- E64C6F5E93BAB853128338193F0B9B7C /* FileExplorer-dummy.m in Sources */,
- 290C31536B92DF513ACBDF4A4C7A6ECC /* FileExplorerViewController.swift in Sources */,
- 88A25D5FD3DD1A6E195798A51F0F207C /* FileItemPresentationCoordinator.swift in Sources */,
- 25238D5055A0AF8BBAFB11846D498C1E /* FileService.swift in Sources */,
- 99C61656FF8BB37B3F45C90ECD80D994 /* FileSpecificationProvider.swift in Sources */,
- 8468E058D838AB49B2AFBAC82486B8CD /* FileViewController.swift in Sources */,
- B705726E6AE6C00BBF6F7B7BB721B87B /* FileViewModel.swift in Sources */,
- 2E84417C56BE36EEA594B43FB01FB381 /* ImageAssets.swift in Sources */,
- F7EC88949EAC71814A6D6BF80F1C3311 /* ImageViewController.swift in Sources */,
- 19442A66057B2940A55C3366EB6D1EDE /* Item.swift in Sources */,
- 6DEF3A9C5443EBE78C24092D35CB63DA /* ItemCell.swift in Sources */,
- D78BC90A273501B9A1E13336A51619D8 /* ItemPresentationCoordinator.swift in Sources */,
- E09C82684B95F3E774B8809DB9CE098B /* LoadingViewController.swift in Sources */,
- 9D73A00289EF61DCC5A8F65B7835B236 /* Result.swift in Sources */,
- 7C16468D139CC2D4DA98A607E9C899E9 /* ThumbnailGenerator.swift in Sources */,
- 5F64E50FAED3120E4C644E189C909EC3 /* UIAlertController+Extension.swift in Sources */,
- ABD1DD5D672B95D83E891A52428FB87D /* UIBezierPath+Extension.swift in Sources */,
- 107A0CFF06C2411BAB8AC11E1E349090 /* UICollectionView+Extension.swift in Sources */,
- 72C3C64A862476DE7F0DF97F9319E63E /* UIImage+Extension.swift in Sources */,
- D2DB21C5B1D05FB608B2229D0CAC6165 /* UISearchBar+Extension.swift in Sources */,
- 120575817ADF7066F00EE035A04C0DC6 /* UITableView+Extension.swift in Sources */,
- 503F30409D188083C8398A460A8C1F49 /* UIToolbar+Extension.swift in Sources */,
- 2EC551FC9A44611D4DD2B803ED18EB44 /* UIView+Extension.swift in Sources */,
- 15AE98F776655CA5797EB414A658BE97 /* UIViewController+Extension.swift in Sources */,
- D6645DEC60E9D474526B6EEAD623AE0B /* UknownFileTypeViewController.swift in Sources */,
- 93441B3D489A095D509B13F731318E1B /* URL+Extension.swift in Sources */,
- 2D78285712248307B52CC7EDA5EEC2C0 /* WebViewController.swift in Sources */,
+ D0F200617E34B9F9B6B6FDDBE7346FE1 /* ActionsViewController.swift in Sources */,
+ B33EF2EA876CF004817FD3E0C8FB12BF /* Array+Extension.swift in Sources */,
+ 1E0D235D4FB83FDEC882C287FAF13EDB /* CheckmarkButton.swift in Sources */,
+ 90E1D980B3CB10FD4B14211BF346AE84 /* Configuration.swift in Sources */,
+ DFA8776331A22A4AAA659B9FAED8AD47 /* DirectoryContentViewController.swift in Sources */,
+ 3DE7E4576238C8C887E4F76A35A094EA /* DirectoryContentViewModel.swift in Sources */,
+ A34CF66BD7101FB78C28B6CC731433F3 /* DirectoryItemPresentationCoordinator.swift in Sources */,
+ 062D8098A63218844F7135CD90A66F2B /* DirectoryViewController.swift in Sources */,
+ 2066C3989147D928C62290461BCBA410 /* Double+Extension.swift in Sources */,
+ 079F51EE0B2A17AA0007D64A6A8A19B8 /* Errors.swift in Sources */,
+ 69D81C74FF97BD4D9EA50FCBADBE6D45 /* ErrorViewController.swift in Sources */,
+ 101C4AF225223FBE434DEE61D8A1C71C /* FileExplorer-dummy.m in Sources */,
+ 602562D1AF6875D0928E3A69A6C064FD /* FileExplorerViewController.swift in Sources */,
+ 0C521A7A5C60EF0D3376E5B2E589EF78 /* FileItemPresentationCoordinator.swift in Sources */,
+ CCD6B781FDB2D651A4952DB86F63E5FA /* FileService.swift in Sources */,
+ B3D00599B1225C41B7CAD3A582BD6F77 /* FileSpecificationProvider.swift in Sources */,
+ 8E78716CDE2A4DF9855F8C8E672DC7E5 /* FileViewController.swift in Sources */,
+ AEC3D49A8533DE9346708516F8CEF79E /* FileViewModel.swift in Sources */,
+ 379252CCC3ADEE47063DECE09267E947 /* ImageAssets.swift in Sources */,
+ 9372542569C8AE3583D0ED3CEBBDB5B8 /* ImageViewController.swift in Sources */,
+ 1C6222D3C6B913F0EB4FAB00E04B5098 /* Item.swift in Sources */,
+ 44021276BDDCC7B254A4DA1EBD816879 /* ItemCell.swift in Sources */,
+ 3757B547C60616D5D073612AC493C4BE /* ItemPresentationCoordinator.swift in Sources */,
+ 89339D2FA5FBBE5505DEEB89B793651D /* LoadingViewController.swift in Sources */,
+ 99D400A31F16D83EC5F603847D2D87B3 /* Result.swift in Sources */,
+ 3B1C133E421A9237950BB519DE606ACB /* ThumbnailGenerator.swift in Sources */,
+ 3E830BC2D79A57BBD9BB90B42BCB4DA3 /* UIAlertController+Extension.swift in Sources */,
+ CE48596E489FC08F1A05B2B0DDBAD235 /* UIBezierPath+Extension.swift in Sources */,
+ 7DD857AD21C4E4909D1C554E569F04EC /* UICollectionView+Extension.swift in Sources */,
+ 9512E371A508D94873A0DE820B269B23 /* UIImage+Extension.swift in Sources */,
+ 865C1ED382E6F557FEDE95DA3A4AFE81 /* UISearchBar+Extension.swift in Sources */,
+ F60CBE132403D6E3C9080FD532777CF7 /* UITableView+Extension.swift in Sources */,
+ 3A8CE2BCC76B707719378B3ACC5CB5D4 /* UIToolbar+Extension.swift in Sources */,
+ 960465ED7BBA886E15AE856F68C31BA0 /* UIView+Extension.swift in Sources */,
+ CBE6A4F7F7386C8AFA54AECA55B1F162 /* UIViewController+Extension.swift in Sources */,
+ EB0A73158C17B4EEEB197C2E1669CE56 /* UknownFileTypeViewController.swift in Sources */,
+ AE166CC5E2CEC89FABD49139954FF4AD /* URL+Extension.swift in Sources */,
+ 931CC4EC4765C45CA8FA1745CDD21299 /* WebViewController.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
- 9508345D097D4608966D9A436A2BBCD8 /* PBXTargetDependency */ = {
+ 8796C24F0BA358447C9785D0774D97E9 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = FileExplorer;
- target = AF46F59E23CB80804C61FBD44D106FE2 /* FileExplorer */;
- targetProxy = 445868B02E57127061CB0E38C7C1BC6C /* PBXContainerItemProxy */;
+ target = D95E57D4CDB0E5627A591884BE9C4114 /* FileExplorer */;
+ targetProxy = CC295E4CD7660B890988F6A00DC0CD16 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
- 1C2AA1710A8F1CD6E53B48CA7D203432 /* Release */ = {
+ 01F41DD524E4C2BFE3914EA9C3822D4E /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = AC47341F90F15D51B03C7D41CE8A52FE /* FileExplorer.xcconfig */;
+ baseConfigurationReference = DA347B6F9F471C1D01B5500A05A28DF4 /* FileExplorer.xcconfig */;
buildSettings = {
+ CODE_SIGN_IDENTITY = "";
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
- ENABLE_STRICT_OBJC_MSGSEND = YES;
- GCC_NO_COMMON_BLOCKS = YES;
GCC_PREFIX_HEADER = "Target Support Files/FileExplorer/FileExplorer-prefix.pch";
- INFOPLIST_FILE = "Target Support Files/FileExplorer/Info.plist";
+ INFOPLIST_FILE = "Target Support Files/FileExplorer/FileExplorer-Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MODULEMAP_FILE = "Target Support Files/FileExplorer/FileExplorer.modulemap";
- MTL_ENABLE_DEBUG_INFO = NO;
+ PRODUCT_MODULE_NAME = FileExplorer;
PRODUCT_NAME = FileExplorer;
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = Release;
+ };
+ 82611C80BE217C8D81E73296BB57273F /* Release */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = F1289E190E57366F272D08EF1353C3F6 /* Pods-FileExplorerExampleApp.release.xcconfig */;
+ buildSettings = {
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO;
+ CODE_SIGN_IDENTITY = "";
+ "CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
+ "CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
+ CURRENT_PROJECT_VERSION = 1;
+ DEFINES_MODULE = YES;
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-Info.plist";
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ MACH_O_TYPE = staticlib;
+ MODULEMAP_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.modulemap";
+ OTHER_LDFLAGS = "";
+ OTHER_LIBTOOLFLAGS = "";
+ PODS_ROOT = "$(SRCROOT)";
+ PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ SDKROOT = iphoneos;
+ SKIP_INSTALL = YES;
SWIFT_VERSION = 3.0;
TARGETED_DEVICE_FAMILY = "1,2";
+ VALIDATE_PRODUCT = YES;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Release;
};
- 59B042A655B7C20CBAB90E385BF4E4C7 /* Debug */ = {
+ 8F17DC3A99F99FBAD606CE6963886315 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
- CLANG_WARN_OBJC_ROOT_CLASS = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
- CODE_SIGNING_REQUIRED = NO;
COPY_PHASE_STRIP = NO;
- ENABLE_TESTABILITY = YES;
- GCC_C_LANGUAGE_STANDARD = gnu99;
- GCC_DYNAMIC_NO_PIC = NO;
- GCC_OPTIMIZATION_LEVEL = 0;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
- "POD_CONFIGURATION_DEBUG=1",
- "DEBUG=1",
+ "POD_CONFIGURATION_RELEASE=1",
"$(inherited)",
);
- GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
- GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
- GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
- ONLY_ACTIVE_ARCH = YES;
- PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
STRIP_INSTALLED_PRODUCT = NO;
+ SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+ SWIFT_VERSION = 5.0;
SYMROOT = "${SRCROOT}/../build";
};
- name = Debug;
+ name = Release;
};
- 83DF01929297494BA33AEDBB0257D895 /* Release */ = {
+ 916E0404255105F480DC4950B7625F7A /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 20A4E3A4163C4E3D3486C84BF571B3DA /* Pods-FileExplorerExampleApp.release.xcconfig */;
buildSettings = {
- "CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
- "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
- "CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
- CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
- DEFINES_MODULE = YES;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_CURRENT_VERSION = 1;
- DYLIB_INSTALL_NAME_BASE = "@rpath";
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
- INFOPLIST_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Info.plist";
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "POD_CONFIGURATION_DEBUG=1",
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
- LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
- MACH_O_TYPE = staticlib;
- MODULEMAP_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.modulemap";
- MTL_ENABLE_DEBUG_INFO = NO;
- OTHER_LDFLAGS = "";
- OTHER_LIBTOOLFLAGS = "";
- PODS_ROOT = "$(SRCROOT)";
- PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
- PRODUCT_NAME = Pods_FileExplorerExampleApp;
- SDKROOT = iphoneos;
- SKIP_INSTALL = YES;
- SWIFT_VERSION = 3.0;
- TARGETED_DEVICE_FAMILY = "1,2";
- VERSIONING_SYSTEM = "apple-generic";
- VERSION_INFO_PREFIX = "";
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ STRIP_INSTALLED_PRODUCT = NO;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ SYMROOT = "${SRCROOT}/../build";
};
- name = Release;
+ name = Debug;
};
- 92C3D3F96A716B66F0CB858429E7977D /* Debug */ = {
+ B933BD951208AA0303A5B2013CD2BDB4 /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 08A510F54F59061EAF82A0598B5BD916 /* Pods-FileExplorerExampleApp.debug.xcconfig */;
+ baseConfigurationReference = 06861F9E7DF291FE75136D161643BAFB /* Pods-FileExplorerExampleApp.debug.xcconfig */;
buildSettings = {
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO;
+ CODE_SIGN_IDENTITY = "";
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = dwarf;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
- ENABLE_STRICT_OBJC_MSGSEND = YES;
- GCC_NO_COMMON_BLOCKS = YES;
- INFOPLIST_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Info.plist";
+ INFOPLIST_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MACH_O_TYPE = staticlib;
MODULEMAP_FILE = "Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.modulemap";
- MTL_ENABLE_DEBUG_INFO = YES;
OTHER_LDFLAGS = "";
OTHER_LIBTOOLFLAGS = "";
PODS_ROOT = "$(SRCROOT)";
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}";
- PRODUCT_NAME = Pods_FileExplorerExampleApp;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
- SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 3.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
@@ -647,110 +703,68 @@
};
name = Debug;
};
- A3B2F6ABB7B3ABE7457929802A31F55B /* Debug */ = {
+ FB4D94D90D9F520E0DD5F166CF9BCB2B /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = AC47341F90F15D51B03C7D41CE8A52FE /* FileExplorer.xcconfig */;
+ baseConfigurationReference = DA347B6F9F471C1D01B5500A05A28DF4 /* FileExplorer.xcconfig */;
buildSettings = {
+ CODE_SIGN_IDENTITY = "";
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = dwarf;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
- ENABLE_STRICT_OBJC_MSGSEND = YES;
- GCC_NO_COMMON_BLOCKS = YES;
GCC_PREFIX_HEADER = "Target Support Files/FileExplorer/FileExplorer-prefix.pch";
- INFOPLIST_FILE = "Target Support Files/FileExplorer/Info.plist";
+ INFOPLIST_FILE = "Target Support Files/FileExplorer/FileExplorer-Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MODULEMAP_FILE = "Target Support Files/FileExplorer/FileExplorer.modulemap";
- MTL_ENABLE_DEBUG_INFO = YES;
+ PRODUCT_MODULE_NAME = FileExplorer;
PRODUCT_NAME = FileExplorer;
SDKROOT = iphoneos;
SKIP_INSTALL = YES;
- SWIFT_OPTIMIZATION_LEVEL = "-Onone";
- SWIFT_VERSION = 3.0;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
+ SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Debug;
};
- B7324857C38B065FEB1EEE3105C2367A /* Release */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- CLANG_ANALYZER_NONNULL = YES;
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
- CLANG_CXX_LIBRARY = "libc++";
- CLANG_ENABLE_MODULES = YES;
- CLANG_ENABLE_OBJC_ARC = YES;
- CLANG_WARN_BOOL_CONVERSION = YES;
- CLANG_WARN_CONSTANT_CONVERSION = YES;
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
- CLANG_WARN_EMPTY_BODY = YES;
- CLANG_WARN_ENUM_CONVERSION = YES;
- CLANG_WARN_INT_CONVERSION = YES;
- CLANG_WARN_OBJC_ROOT_CLASS = YES;
- CLANG_WARN_UNREACHABLE_CODE = YES;
- CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
- CODE_SIGNING_REQUIRED = NO;
- COPY_PHASE_STRIP = YES;
- ENABLE_NS_ASSERTIONS = NO;
- GCC_C_LANGUAGE_STANDARD = gnu99;
- GCC_PREPROCESSOR_DEFINITIONS = (
- "POD_CONFIGURATION_RELEASE=1",
- "$(inherited)",
- );
- GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
- GCC_WARN_ABOUT_RETURN_TYPE = YES;
- GCC_WARN_UNDECLARED_SELECTOR = YES;
- GCC_WARN_UNINITIALIZED_AUTOS = YES;
- GCC_WARN_UNUSED_FUNCTION = YES;
- GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
- PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
- STRIP_INSTALLED_PRODUCT = NO;
- SYMROOT = "${SRCROOT}/../build";
- VALIDATE_PRODUCT = YES;
- };
- name = Release;
- };
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
- 1442B6A8C4534ECC310D7C1232C27B02 /* Build configuration list for PBXNativeTarget "Pods-FileExplorerExampleApp" */ = {
+ 4320943D7F78720907F3334D79EC7A37 /* Build configuration list for PBXNativeTarget "Pods-FileExplorerExampleApp" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- 92C3D3F96A716B66F0CB858429E7977D /* Debug */,
- 83DF01929297494BA33AEDBB0257D895 /* Release */,
+ B933BD951208AA0303A5B2013CD2BDB4 /* Debug */,
+ 82611C80BE217C8D81E73296BB57273F /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = {
+ 46935E8A8BE49F101E1E56659A2D5384 /* Build configuration list for PBXNativeTarget "FileExplorer" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- 59B042A655B7C20CBAB90E385BF4E4C7 /* Debug */,
- B7324857C38B065FEB1EEE3105C2367A /* Release */,
+ FB4D94D90D9F520E0DD5F166CF9BCB2B /* Debug */,
+ 01F41DD524E4C2BFE3914EA9C3822D4E /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 76874E0337F4FB0C4118B6D272FAAD30 /* Build configuration list for PBXNativeTarget "FileExplorer" */ = {
+ 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- A3B2F6ABB7B3ABE7457929802A31F55B /* Debug */,
- 1C2AA1710A8F1CD6E53B48CA7D203432 /* Release */,
+ 916E0404255105F480DC4950B7625F7A /* Debug */,
+ 8F17DC3A99F99FBAD606CE6963886315 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
- rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */;
+ rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */;
}
diff --git a/Examples/Pods/Target Support Files/FileExplorer/FileExplorer-Info.plist b/Examples/Pods/Target Support Files/FileExplorer/FileExplorer-Info.plist
new file mode 100644
index 0000000..2660a93
--- /dev/null
+++ b/Examples/Pods/Target Support Files/FileExplorer/FileExplorer-Info.plist
@@ -0,0 +1,26 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ ${EXECUTABLE_NAME}
+ CFBundleIdentifier
+ ${PRODUCT_BUNDLE_IDENTIFIER}
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ ${PRODUCT_NAME}
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0.4
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ ${CURRENT_PROJECT_VERSION}
+ NSPrincipalClass
+
+
+
diff --git a/Examples/Pods/Target Support Files/FileExplorer/FileExplorer.xcconfig b/Examples/Pods/Target Support Files/FileExplorer/FileExplorer.xcconfig
index 87f7087..b778e0e 100644
--- a/Examples/Pods/Target Support Files/FileExplorer/FileExplorer.xcconfig
+++ b/Examples/Pods/Target Support Files/FileExplorer/FileExplorer.xcconfig
@@ -1,10 +1,10 @@
-CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/FileExplorer
+CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/FileExplorer
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public"
-OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
-PODS_BUILD_DIR = $BUILD_DIR
-PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
+OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
+PODS_BUILD_DIR = ${BUILD_DIR}
+PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_ROOT = ${SRCROOT}
PODS_TARGET_SRCROOT = ${PODS_ROOT}/../..
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
SKIP_INSTALL = YES
+USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
diff --git a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-Info.plist b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-Info.plist
new file mode 100644
index 0000000..2243fe6
--- /dev/null
+++ b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-Info.plist
@@ -0,0 +1,26 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ ${EXECUTABLE_NAME}
+ CFBundleIdentifier
+ ${PRODUCT_BUNDLE_IDENTIFIER}
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ ${PRODUCT_NAME}
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0.0
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ ${CURRENT_PROJECT_VERSION}
+ NSPrincipalClass
+
+
+
diff --git a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh
index db70aa4..05c9d77 100755
--- a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh
+++ b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp-frameworks.sh
@@ -1,11 +1,33 @@
#!/bin/sh
set -e
+set -u
+set -o pipefail
+
+function on_error {
+ echo "$(realpath -mq "${0}"):$1: error: Unexpected failure"
+}
+trap 'on_error $LINENO' ERR
+
+if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then
+ # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy
+ # frameworks to, so exit 0 (signalling the script phase was successful).
+ exit 0
+fi
echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
+COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}"
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
+# Used as a return value for each invocation of `strip_invalid_archs` function.
+STRIP_BINARY_RETVAL=0
+
+# This protects against multiple targets copying the same framework dependency at the same time. The solution
+# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
+RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
+
+# Copies and strips a vendored framework
install_framework()
{
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
@@ -19,19 +41,24 @@ install_framework()
local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
if [ -L "${source}" ]; then
- echo "Symlinked..."
- source="$(readlink "${source}")"
+ echo "Symlinked..."
+ source="$(readlink "${source}")"
fi
- # use filter instead of exclude so missing patterns dont' throw errors
- echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
- rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
+ # Use filter instead of exclude so missing patterns don't throw errors.
+ echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
+ rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
local basename
basename="$(basename -s .framework "$1")"
binary="${destination}/${basename}.framework/${basename}"
+
if ! [ -r "$binary" ]; then
binary="${destination}/${basename}"
+ elif [ -L "${binary}" ]; then
+ echo "Destination binary is symlinked..."
+ dirname="$(dirname "${binary}")"
+ binary="${dirname}/$(readlink "${binary}")"
fi
# Strip invalid architectures so "fat" simulator / device frameworks work on device
@@ -45,7 +72,7 @@ install_framework()
# Embed linked Swift runtime libraries. No longer necessary as of Xcode 7.
if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then
local swift_runtime_libs
- swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]})
+ swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u)
for lib in $swift_runtime_libs; do
echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\""
rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}"
@@ -54,12 +81,48 @@ install_framework()
fi
}
+# Copies and strips a vendored dSYM
+install_dsym() {
+ local source="$1"
+ if [ -r "$source" ]; then
+ # Copy the dSYM into a the targets temp dir.
+ echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\""
+ rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
+
+ local basename
+ basename="$(basename -s .framework.dSYM "$source")"
+ binary="${DERIVED_FILES_DIR}/${basename}.framework.dSYM/Contents/Resources/DWARF/${basename}"
+
+ # Strip invalid architectures so "fat" simulator / device frameworks work on device
+ if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then
+ strip_invalid_archs "$binary"
+ fi
+
+ if [[ $STRIP_BINARY_RETVAL == 1 ]]; then
+ # Move the stripped file into its final destination.
+ echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\""
+ rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.framework.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
+ else
+ # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
+ touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.framework.dSYM"
+ fi
+ fi
+}
+
+# Copies the bcsymbolmap files of a vendored framework
+install_bcsymbolmap() {
+ local bcsymbolmap_path="$1"
+ local destination="${BUILT_PRODUCTS_DIR}"
+ echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}""
+ rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"
+}
+
# Signs a framework with the provided identity
code_sign_if_enabled() {
- if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
- # Use the current code_sign_identitiy
+ if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
+ # Use the current code_sign_identity
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
- local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1""
+ local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'"
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
code_sign_cmd="$code_sign_cmd &"
@@ -72,27 +135,36 @@ code_sign_if_enabled() {
# Strip invalid architectures
strip_invalid_archs() {
binary="$1"
- # Get architectures for current file
- archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)"
+ # Get architectures for current target binary
+ binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
+ # Intersect them with the architectures we are building for
+ intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)"
+ # If there are no archs supported by this binary then warn the user
+ if [[ -z "$intersected_archs" ]]; then
+ echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
+ STRIP_BINARY_RETVAL=0
+ return
+ fi
stripped=""
- for arch in $archs; do
- if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then
+ for arch in $binary_archs; do
+ if ! [[ "${ARCHS}" == *"$arch"* ]]; then
# Strip non-valid architectures in-place
- lipo -remove "$arch" -output "$binary" "$binary" || exit 1
+ lipo -remove "$arch" -output "$binary" "$binary"
stripped="$stripped $arch"
fi
done
if [[ "$stripped" ]]; then
echo "Stripped $binary of architectures:$stripped"
fi
+ STRIP_BINARY_RETVAL=1
}
if [[ "$CONFIGURATION" == "Debug" ]]; then
- install_framework "$BUILT_PRODUCTS_DIR/FileExplorer/FileExplorer.framework"
+ install_framework "${BUILT_PRODUCTS_DIR}/FileExplorer/FileExplorer.framework"
fi
if [[ "$CONFIGURATION" == "Release" ]]; then
- install_framework "$BUILT_PRODUCTS_DIR/FileExplorer/FileExplorer.framework"
+ install_framework "${BUILT_PRODUCTS_DIR}/FileExplorer/FileExplorer.framework"
fi
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
wait
diff --git a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.debug.xcconfig b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.debug.xcconfig
index e213c07..e6eb181 100644
--- a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.debug.xcconfig
+++ b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.debug.xcconfig
@@ -1,10 +1,12 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
-FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileExplorer"
+FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/FileExplorer"
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
+HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/FileExplorer/FileExplorer.framework/Headers"
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
-OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileExplorer/FileExplorer.framework/Headers"
OTHER_LDFLAGS = $(inherited) -framework "FileExplorer"
-OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
-PODS_BUILD_DIR = $BUILD_DIR
-PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
+OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
+PODS_BUILD_DIR = ${BUILD_DIR}
+PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
+PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
+USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
diff --git a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.release.xcconfig b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.release.xcconfig
index e213c07..e6eb181 100644
--- a/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.release.xcconfig
+++ b/Examples/Pods/Target Support Files/Pods-FileExplorerExampleApp/Pods-FileExplorerExampleApp.release.xcconfig
@@ -1,10 +1,12 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
-FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileExplorer"
+FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/FileExplorer"
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
+HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/FileExplorer/FileExplorer.framework/Headers"
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
-OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileExplorer/FileExplorer.framework/Headers"
OTHER_LDFLAGS = $(inherited) -framework "FileExplorer"
-OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
-PODS_BUILD_DIR = $BUILD_DIR
-PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
+OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
+PODS_BUILD_DIR = ${BUILD_DIR}
+PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
+PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
PODS_ROOT = ${SRCROOT}/Pods
+USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
diff --git a/FileExplorer/FileExplorer/ActionsViewController.swift b/FileExplorer/FileExplorer/ActionsViewController.swift
index aa5e46e..34aa6e4 100644
--- a/FileExplorer/FileExplorer/ActionsViewController.swift
+++ b/FileExplorer/FileExplorer/ActionsViewController.swift
@@ -36,7 +36,7 @@ final class ActionsViewController: UIViewController {
private let toolbar = UIToolbar()
private let contentViewController: UIViewController
- init(contentViewController: UIViewController) {
+ @objc init(contentViewController: UIViewController) {
self.contentViewController = contentViewController
super.init(nibName: nil, bundle: nil)
}
diff --git a/FileExplorer/FileExplorer/Array+Extension.swift b/FileExplorer/FileExplorer/Array+Extension.swift
index 96bdff6..01c2437 100644
--- a/FileExplorer/FileExplorer/Array+Extension.swift
+++ b/FileExplorer/FileExplorer/Array+Extension.swift
@@ -28,7 +28,7 @@ import Foundation
extension Array where Element: Equatable {
@discardableResult
mutating func remove(_ item: Element) -> Bool {
- let index = self.index() { $0 == item }
+ let index = self.firstIndex() { $0 == item }
if let index = index {
remove(at: index)
return true
diff --git a/FileExplorer/FileExplorer/CheckmarkButton.swift b/FileExplorer/FileExplorer/CheckmarkButton.swift
index 64cd7b7..2918ca9 100644
--- a/FileExplorer/FileExplorer/CheckmarkButton.swift
+++ b/FileExplorer/FileExplorer/CheckmarkButton.swift
@@ -26,7 +26,7 @@
import UIKit
final class CheckmarkButton: UIButton {
- let shapeLayer: CAShapeLayer
+ @objc let shapeLayer: CAShapeLayer
private enum KeyPath {
static let strokeEnd = "strokeEnd"
@@ -78,7 +78,7 @@ final class CheckmarkButton: UIButton {
}
}
- var borderWidth: CGFloat = 1.0 {
+ @objc var borderWidth: CGFloat = 1.0 {
didSet {
setNeedsLayout()
}
@@ -93,7 +93,7 @@ final class CheckmarkButton: UIButton {
}
}
- func setSelected(_ selected: Bool, animated: Bool) {
+ @objc func setSelected(_ selected: Bool, animated: Bool) {
if isSelected == selected {
return
}
@@ -126,7 +126,7 @@ final class CheckmarkButton: UIButton {
}
extension CALayer {
- @discardableResult
+ @objc @discardableResult
func animate(keyPath: String, from fromValue: AnyObject? = nil, to toValue: AnyObject, duration: Double = 0.2) -> CAAnimation? {
if fromValue === toValue {
return nil
diff --git a/FileExplorer/FileExplorer/DirectoryContentViewController.swift b/FileExplorer/FileExplorer/DirectoryContentViewController.swift
index 30fe08c..0ba733e 100644
--- a/FileExplorer/FileExplorer/DirectoryContentViewController.swift
+++ b/FileExplorer/FileExplorer/DirectoryContentViewController.swift
@@ -97,7 +97,7 @@ final class DirectoryContentViewController: UICollectionViewController {
syncWithViewModel(false)
}
- func syncWithViewModel(_ animated: Bool) {
+ @objc func syncWithViewModel(_ animated: Bool) {
if let items = toolbar.items {
for barButtonItem in items {
barButtonItem.isEnabled = viewModel.isDeleteActionEnabled
@@ -136,7 +136,7 @@ final class DirectoryContentViewController: UICollectionViewController {
viewModel.isEditing = editing
}
- func syncToolbarWithViewModel() {
+ @objc func syncToolbarWithViewModel() {
let selectActionButton = !viewModel.isSelectActionHidden ? UIBarButtonItem(title: viewModel.selectActionTitle, style: .plain, target: self, action: #selector(handleSelectButtonTap)) : nil
selectActionButton?.isEnabled = viewModel.isSelectActionEnabled
let deleteActionButton = !viewModel.isDeleteActionHidden ? UIBarButtonItem(title: viewModel.deleteActionTitle, style: .plain, target: self, action: #selector(handleDeleteButtonTap)) : nil
@@ -145,18 +145,18 @@ final class DirectoryContentViewController: UICollectionViewController {
selectActionButton,
UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil),
deleteActionButton
- ].flatMap { $0 }
+ ].compactMap { $0 }
}
// MARK: Actions
- func handleSelectButtonTap() {
+ @objc func handleSelectButtonTap() {
viewModel.chooseItems { selectedItems in
delegate?.directoryContentViewController(self, didChooseItems: selectedItems)
}
}
- func handleDeleteButtonTap() {
+ @objc func handleDeleteButtonTap() {
showLoadingIndicator()
viewModel.deleteItems(at: viewModel.indexPathsOfSelectedCells) { [weak self] result in
guard let strongSelf = self else { return }
@@ -171,7 +171,7 @@ final class DirectoryContentViewController: UICollectionViewController {
}
}
- func handleEditButtonTap() {
+ @objc func handleEditButtonTap() {
viewModel.isEditing = !viewModel.isEditing
delegate?.directoryContentViewController(self, didChangeEditingStatus: viewModel.isEditing)
}
@@ -218,7 +218,7 @@ extension DirectoryContentViewController {
}
override func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
- if kind == UICollectionElementKindSectionHeader {
+ if kind == UICollectionView.elementKindSectionHeader {
let header = collectionView.dequeueReusableHeader(ofClass: CollectionViewHeader.self, for: indexPath) as CollectionViewHeader
header.sortModeChangeAction = viewModel.sortModeChangeAction
header.sortMode = viewModel.sortMode
@@ -226,7 +226,7 @@ extension DirectoryContentViewController {
header.layoutIfNeeded()
}
return header
- } else if kind == UICollectionElementKindSectionFooter {
+ } else if kind == UICollectionView.elementKindSectionFooter {
return collectionView.dequeueReusableFooter(ofClass: CollectionViewFooter.self, for: indexPath) as CollectionViewFooter
} else {
fatalError()
diff --git a/FileExplorer/FileExplorer/DirectoryContentViewModel.swift b/FileExplorer/FileExplorer/DirectoryContentViewModel.swift
index 627d913..f188070 100644
--- a/FileExplorer/FileExplorer/DirectoryContentViewModel.swift
+++ b/FileExplorer/FileExplorer/DirectoryContentViewModel.swift
@@ -191,7 +191,7 @@ final class DirectoryContentViewModel {
func deselect(at indexPath: IndexPath) {
let item = self.item(for: indexPath)
if isEditing {
- if let index = selectedItems.index(where: { $0 == item }) {
+ if let index = selectedItems.firstIndex(where: { $0 == item }) {
selectedItems.remove(at: index)
}
} else {
@@ -201,7 +201,7 @@ final class DirectoryContentViewModel {
}
func deleteItems(at indexPaths: [IndexPath], completionBlock: @escaping (Result) -> Void) {
- let items = indexPaths.flatMap { item(for: $0) }
+ let items = indexPaths.compactMap { item(for: $0) }
fileService.delete(items: items) { result, removedItems, itemsNotRemovedDueToFailure in
completionBlock(result)
self.delegate?.directoryViewModelDidChange(self)
diff --git a/FileExplorer/FileExplorer/DirectoryViewController.swift b/FileExplorer/FileExplorer/DirectoryViewController.swift
index 84ee28e..c3603a1 100644
--- a/FileExplorer/FileExplorer/DirectoryViewController.swift
+++ b/FileExplorer/FileExplorer/DirectoryViewController.swift
@@ -104,11 +104,11 @@ final class DirectoryViewController: UIViewController {
addContentChildViewController(directoryContentViewController, insets: UIEdgeInsets(top: searchController.searchBar.bounds.height, left: 0.0, bottom: 0.0, right: 0.0))
navigationItem.rightBarButtonItem = directoryContentViewController.navigationItem.rightBarButtonItem
navigationItem.title = directoryContentViewController.navigationItem.title
- view.sendSubview(toBack: directoryContentViewController.view)
+ view.sendSubviewToBack(directoryContentViewController.view)
setUpLeftBarButtonItem()
}
- func setUpSearchBarController() {
+ @objc func setUpSearchBarController() {
let searchBar = searchController.searchBar
searchBar.sizeToFit()
searchBar.autoresizingMask = [.flexibleWidth]
@@ -117,13 +117,13 @@ final class DirectoryViewController: UIViewController {
navigationItem.rightBarButtonItems = directoryContentViewController.navigationItem.rightBarButtonItems
}
- func setUpLeftBarButtonItem() {
+ @objc func setUpLeftBarButtonItem() {
if !viewModel.finishButtonHidden {
navigationItem.leftBarButtonItem = UIBarButtonItem(title: viewModel.finishButtonTitle, style: .plain, target: self, action: #selector(handleFinishButtonTap))
}
}
- var isSearchControllerActive: Bool {
+ @objc var isSearchControllerActive: Bool {
get {
return searchController.isActive
}
@@ -134,7 +134,7 @@ final class DirectoryViewController: UIViewController {
// MARK: Actions
- func handleFinishButtonTap() {
+ @objc func handleFinishButtonTap() {
delegate?.directoryViewControllerDidFinish(self)
}
}
@@ -147,7 +147,7 @@ extension DirectoryViewController: UISearchBarDelegate {
}
extension DirectoryViewController: DirectoryContentViewControllerDelegate {
- func directoryContentViewController(_ controller: DirectoryContentViewController, didChangeEditingStatus isEditing: Bool) {
+ @objc func directoryContentViewController(_ controller: DirectoryContentViewController, didChangeEditingStatus isEditing: Bool) {
searchController.searchBar.isEnabled = !isEditing
}
diff --git a/FileExplorer/FileExplorer/ErrorViewController.swift b/FileExplorer/FileExplorer/ErrorViewController.swift
index d3d66ee..9e22df8 100644
--- a/FileExplorer/FileExplorer/ErrorViewController.swift
+++ b/FileExplorer/FileExplorer/ErrorViewController.swift
@@ -35,7 +35,7 @@ final class ErrorViewController: UIViewController {
private let errorDescription: String
private let finishButtonHidden: Bool
- init(errorDescription: String, finishButtonHidden: Bool) {
+ @objc init(errorDescription: String, finishButtonHidden: Bool) {
self.errorDescription = errorDescription
self.finishButtonHidden = finishButtonHidden
super.init(nibName: nil, bundle: nil)
@@ -64,7 +64,7 @@ final class ErrorViewController: UIViewController {
// MARK: Actions
- func handleFinishButtonTap() {
+ @objc func handleFinishButtonTap() {
delegate?.errorViewControllerDidFinish(self)
}
}
diff --git a/FileExplorer/FileExplorer/FileExplorerViewController.swift b/FileExplorer/FileExplorer/FileExplorerViewController.swift
index 13b3691..619f756 100644
--- a/FileExplorer/FileExplorer/FileExplorerViewController.swift
+++ b/FileExplorer/FileExplorer/FileExplorerViewController.swift
@@ -46,22 +46,22 @@ public protocol FileExplorerViewControllerDelegate: class {
public final class FileExplorerViewController: UIViewController {
/// The URL of directory which is initialy presented by file explorer view controller.
- public var initialDirectoryURL: URL = URL.documentDirectory
+ @objc public var initialDirectoryURL: URL = URL.documentDirectory
/// A Boolean value indicating whether the user is allowed to remove files.
- public var canRemoveFiles: Bool = true
+ @objc public var canRemoveFiles: Bool = true
/// A Boolean value indicating whether the user is allowed to remove directories.
- public var canRemoveDirectories: Bool = true
+ @objc public var canRemoveDirectories: Bool = true
/// A Boolean value indicating whether the user is allowed to choose files.
- public var canChooseFiles: Bool = true
+ @objc public var canChooseFiles: Bool = true
/// A Boolean value indicating whether the user is allowed to choose directories.
- public var canChooseDirectories: Bool = false
+ @objc public var canChooseDirectories: Bool = false
/// A Boolean value indicating whether multiple files and/or directories can be choosen at a time.
- public var allowsMultipleSelection: Bool = true
+ @objc public var allowsMultipleSelection: Bool = true
/// Filters that determine which files are displayed by file explorer view controller.
///
diff --git a/FileExplorer/FileExplorer/FileService.swift b/FileExplorer/FileExplorer/FileService.swift
index 95b9d91..a9560ed 100644
--- a/FileExplorer/FileExplorer/FileService.swift
+++ b/FileExplorer/FileExplorer/FileService.swift
@@ -35,7 +35,7 @@ protocol FileService: class {
enum FileServiceError: Error {
case removalFailure(removedItems: [Item], itemsNotRemovedDueToFailure: [Item])
- case loadingFailure()
+ case loadingFailure
}
extension Notification.Name {
@@ -54,7 +54,7 @@ final class LocalStorageFileService: FileService {
func load(item: Item, completionBlock: @escaping (Result>) -> ()) {
DispatchQueue.global(qos: .default).async {
let result = Result>() { [weak self] in
- guard let strongSelf = self else { throw FileServiceError.loadingFailure() }
+ guard let strongSelf = self else { throw FileServiceError.loadingFailure }
let attributes = try strongSelf.fileManager.attributesOfItem(atPath: item.url.path)
let result: Any
@@ -103,7 +103,7 @@ final class LocalStorageFileService: FileService {
deletedItems,
itemsNotRemovedDueToFailure)
} else {
- completionBlock(.success(), deletedItems, itemsNotRemovedDueToFailure)
+ completionBlock(.success(()), deletedItems, itemsNotRemovedDueToFailure)
}
}
diff --git a/FileExplorer/FileExplorer/FileSpecificationProvider.swift b/FileExplorer/FileExplorer/FileSpecificationProvider.swift
index 273d884..2c7b0f1 100644
--- a/FileExplorer/FileExplorer/FileSpecificationProvider.swift
+++ b/FileExplorer/FileExplorer/FileSpecificationProvider.swift
@@ -99,7 +99,7 @@ final class DefaultFileSpecificationProvider: FileSpecificationProvider {
/// Class describing video file type. It's capable of generating thumbnails for video files and provides view controller which allows for playback of video files.
public class VideoSpecificationProvider: FileSpecificationProvider {
public class var extensions: [String] {
- return ["mp4", "avi"]
+ return ["mp4", "avi", "mkv", "mov"]
}
public class func thumbnail(forItemAt url: URL, with size: CGSize) -> UIImage? {
diff --git a/FileExplorer/FileExplorer/FileViewController.swift b/FileExplorer/FileExplorer/FileViewController.swift
index 1e6d483..e25c997 100644
--- a/FileExplorer/FileExplorer/FileViewController.swift
+++ b/FileExplorer/FileExplorer/FileViewController.swift
@@ -44,21 +44,21 @@ final class FileViewController: UIViewController {
let imageView = ImageView()
imageView.translatesAutoresizingMaskIntoConstraints = false
- imageView.setContentCompressionResistancePriority(UILayoutPriorityDefaultLow, for: .vertical)
- imageView.setContentCompressionResistancePriority(UILayoutPriorityDefaultLow, for: .horizontal)
+ imageView.setContentCompressionResistancePriority(UILayoutPriority.defaultLow, for: .vertical)
+ imageView.setContentCompressionResistancePriority(UILayoutPriority.defaultLow, for: .horizontal)
let titleView = TitleView()
titleView.translatesAutoresizingMaskIntoConstraints = false
titleView.title = viewModel.title
- titleView.setContentCompressionResistancePriority(UILayoutPriorityRequired, for: .vertical)
- titleView.setContentCompressionResistancePriority(UILayoutPriorityRequired, for: .horizontal)
+ titleView.setContentCompressionResistancePriority(UILayoutPriority.required, for: .vertical)
+ titleView.setContentCompressionResistancePriority(UILayoutPriority.required, for: .horizontal)
let attributesView = AttributesView()
attributesView.translatesAutoresizingMaskIntoConstraints = false
attributesView.numberOfAttributes = viewModel.numberOfAttributes
- attributesView.setContentCompressionResistancePriority(UILayoutPriorityRequired, for: .vertical)
- attributesView.setContentCompressionResistancePriority(UILayoutPriorityRequired, for: .horizontal)
+ attributesView.setContentCompressionResistancePriority(UILayoutPriority.required, for: .vertical)
+ attributesView.setContentCompressionResistancePriority(UILayoutPriority.required, for: .horizontal)
for (index, label) in attributesView.attributeNamesColumn.labels.enumerated() {
let attributeViewModel = viewModel.attribute(for: index)
label.text = attributeViewModel.attributeName
@@ -126,7 +126,7 @@ final class ImageView: UIView {
fatalError("init(coder:) has not been implemented")
}
- var customImage: UIImage? {
+ @objc var customImage: UIImage? {
get {
return customImageView.image
}
@@ -150,7 +150,7 @@ final class TitleView: UIView {
titleLabel.centerXAnchor.constraint(equalTo: centerXAnchor).isActive = true
titleLabel.centerYAnchor.constraint(equalTo: centerYAnchor, constant: -1.0).isActive = true
titleLabel.widthAnchor.constraint(equalTo: widthAnchor, constant: -20.0).isActive = true
- titleLabel.setContentHuggingPriority(UILayoutPriorityRequired, for: .vertical)
+ titleLabel.setContentHuggingPriority(UILayoutPriority.required, for: .vertical)
titleLabel.numberOfLines = 1
titleLabel.lineBreakMode = .byTruncatingTail
@@ -175,7 +175,7 @@ final class TitleView: UIView {
fatalError("init(coder:) has not been implemented")
}
- var title: String? {
+ @objc var title: String? {
get {
return titleLabel.text
}
@@ -185,7 +185,7 @@ final class TitleView: UIView {
}
override var intrinsicContentSize: CGSize {
- return CGSize(width: UIViewNoIntrinsicMetric, height: 42.0)
+ return CGSize(width: UIView.noIntrinsicMetric, height: 42.0)
}
}
@@ -215,7 +215,7 @@ final class AttributesView: UIView {
fatalError("init(coder:) has not been implemented")
}
- var numberOfAttributes: Int = 0 {
+ @objc var numberOfAttributes: Int = 0 {
didSet {
attributeNamesColumn.numberOfAttributes = numberOfAttributes
for label in attributeNamesColumn.labels {
@@ -237,7 +237,7 @@ final class AttributesView: UIView {
}
final class AttributesColumnView: UIView {
- var labels = [UILabel]()
+ @objc var labels = [UILabel]()
private let stackView = UIStackView()
override init(frame: CGRect) {
@@ -255,7 +255,7 @@ final class AttributesColumnView: UIView {
fatalError("init(coder:) has not been implemented")
}
- var numberOfAttributes: Int = 0 {
+ @objc var numberOfAttributes: Int = 0 {
didSet {
for view in labels {
stackView.removeArrangedSubview(view)
diff --git a/FileExplorer/FileExplorer/FileViewModel.swift b/FileExplorer/FileExplorer/FileViewModel.swift
index 423f63a..878557e 100644
--- a/FileExplorer/FileExplorer/FileViewModel.swift
+++ b/FileExplorer/FileExplorer/FileViewModel.swift
@@ -47,7 +47,7 @@ final class FileViewModel {
FileViewModel.makeFileSizeItem(fromAttributes: self.item.attributes),
FileViewModel.makeCreationDateItem(fromAttributes: self.item.attributes),
FileViewModel.makeModificationDateItem(fromAttributes: self.item.attributes)
- ].flatMap { $0 }
+ ].compactMap { $0 }
}
func thumbnailImage(with size: CGSize) -> UIImage {
diff --git a/FileExplorer/FileExplorer/ImageViewController.swift b/FileExplorer/FileExplorer/ImageViewController.swift
index 247ea64..2008f04 100644
--- a/FileExplorer/FileExplorer/ImageViewController.swift
+++ b/FileExplorer/FileExplorer/ImageViewController.swift
@@ -31,7 +31,7 @@ final class ImageViewController: UIViewController {
private let image: UIImage
- init(image: UIImage) {
+ @objc init(image: UIImage) {
self.image = image
super.init(nibName: nil, bundle: nil)
}
diff --git a/FileExplorer/FileExplorer/ItemCell.swift b/FileExplorer/FileExplorer/ItemCell.swift
index 42ce185..aac5601 100644
--- a/FileExplorer/FileExplorer/ItemCell.swift
+++ b/FileExplorer/FileExplorer/ItemCell.swift
@@ -30,8 +30,8 @@ protocol Editable {
}
enum ColorPallete {
- static let gray = UIColor(colorLiteralRed: 200/255.0, green: 199/255.0, blue: 204/255.0, alpha: 1.0)
- static let blue = UIColor(colorLiteralRed: 21/255.0, green: 126/255.0, blue: 251/255, alpha: 1.0)
+ static let gray = UIColor(red: 200/255.0, green: 199/255.0, blue: 204/255.0, alpha: 1.0)
+ static let blue = UIColor(red: 21/255.0, green: 126/255.0, blue: 251/255, alpha: 1.0)
}
enum LayoutConstants {
@@ -58,7 +58,7 @@ final class ItemCell: UICollectionViewCell, Editable {
private var containerViewLeadingConstraint: NSLayoutConstraint!
private var containerViewTrailingConstraint: NSLayoutConstraint!
- var tapAction: () -> Void = {}
+ @objc var tapAction: () -> Void = {}
override init(frame: CGRect) {
containerView = UIView()
@@ -151,26 +151,26 @@ final class ItemCell: UICollectionViewCell, Editable {
private func setupAccessoryImageViewConstraints() {
accessoryImageView.trailingAnchor.constraint(equalTo: containerView.trailingAnchor, constant: -15).isActive = true
accessoryImageView.centerYAnchor.constraint(equalTo: containerView.centerYAnchor).isActive = true
- accessoryImageView.setContentCompressionResistancePriority(UILayoutPriorityRequired, for: .horizontal)
- accessoryImageView.setContentCompressionResistancePriority(UILayoutPriorityDefaultHigh, for: .vertical)
- accessoryImageView.setContentHuggingPriority(UILayoutPriorityDefaultHigh, for: .horizontal)
+ accessoryImageView.setContentCompressionResistancePriority(UILayoutPriority.required, for: .horizontal)
+ accessoryImageView.setContentCompressionResistancePriority(UILayoutPriority.defaultHigh, for: .vertical)
+ accessoryImageView.setContentHuggingPriority(UILayoutPriority.defaultHigh, for: .horizontal)
}
private func setupTitleLabelContstraints() {
titleTextLabel.leadingAnchor.constraint(equalTo: iconImageView.trailingAnchor, constant: 12.0).isActive = true
titleTextLabel.trailingAnchor.constraint(equalTo: accessoryImageView.leadingAnchor, constant: -10.0).isActive = true
titleTextLabel.topAnchor.constraint(equalTo: containerView.topAnchor, constant: 12.0).isActive = true
- titleTextLabel.setContentCompressionResistancePriority(UILayoutPriorityDefaultHigh, for: .horizontal)
- titleTextLabel.setContentHuggingPriority(UILayoutPriorityDefaultHigh, for: .vertical)
+ titleTextLabel.setContentCompressionResistancePriority(UILayoutPriority.defaultHigh, for: .horizontal)
+ titleTextLabel.setContentHuggingPriority(UILayoutPriority.defaultHigh, for: .vertical)
}
private func setupSubtitleLabelConstraints() {
subtitleTextLabel.leadingAnchor.constraint(equalTo: titleTextLabel.leadingAnchor).isActive = true
subtitleTextLabel.trailingAnchor.constraint(equalTo: titleTextLabel.trailingAnchor).isActive = true
subtitleTextLabel.topAnchor.constraint(equalTo: titleTextLabel.bottomAnchor, constant: 3.0).isActive = true
- subtitleTextLabel.setContentCompressionResistancePriority(UILayoutPriorityDefaultHigh
+ subtitleTextLabel.setContentCompressionResistancePriority(UILayoutPriority.defaultHigh
, for: .horizontal)
- subtitleTextLabel.setContentHuggingPriority(UILayoutPriorityDefaultHigh, for: .vertical)
+ subtitleTextLabel.setContentHuggingPriority(UILayoutPriority.defaultHigh, for: .vertical)
}
private func setupCheckmarkButtonConstraints() {
@@ -178,7 +178,7 @@ final class ItemCell: UICollectionViewCell, Editable {
checkmarkButton.centerYAnchor.constraint(equalTo: centerYAnchor, constant: 1.0).isActive = true
}
- var title: String? {
+ @objc var title: String? {
get {
return titleTextLabel.text
}
@@ -187,7 +187,7 @@ final class ItemCell: UICollectionViewCell, Editable {
}
}
- var subtitle: String? {
+ @objc var subtitle: String? {
get {
return subtitleTextLabel.text
}
@@ -196,7 +196,7 @@ final class ItemCell: UICollectionViewCell, Editable {
}
}
- var iconImage: UIImage? {
+ @objc var iconImage: UIImage? {
get {
return iconImageView.image
}
@@ -216,7 +216,7 @@ final class ItemCell: UICollectionViewCell, Editable {
}
}
- var isEditing: Bool = false {
+ @objc var isEditing: Bool = false {
didSet {
containerViewLeadingConstraint.constant = isEditing ? 38.0 : 0.0
containerViewTrailingConstraint.constant = isEditing ? 38.0 : 0.0
@@ -224,7 +224,7 @@ final class ItemCell: UICollectionViewCell, Editable {
}
}
- func setEditing(_ editing: Bool, animated: Bool) {
+ @objc func setEditing(_ editing: Bool, animated: Bool) {
if animated {
UIView.animate(withDuration: 0.2) {
self.isEditing = editing
@@ -253,14 +253,14 @@ final class ItemCell: UICollectionViewCell, Editable {
}
}
- var maximumIconSize: CGSize {
+ @objc var maximumIconSize: CGSize {
let max = Swift.max(Swift.max(iconImageView.frame.width, iconImageView.frame.height), LayoutConstants.iconWidth)
return CGSize(width: max, height: max)
}
// MARK: Actions
- func handleAccessoryImageTap() {
+ @objc func handleAccessoryImageTap() {
tapAction()
}
}
@@ -318,7 +318,7 @@ final class CollectionViewHeader: UICollectionReusableView {
}
final class CollectionViewFooter: UICollectionReusableView {
- var leftInset: CGFloat = LayoutConstants.separatorLeftInset
+ @objc var leftInset: CGFloat = LayoutConstants.separatorLeftInset
private var separators = [SeparatorView]()
override init(frame: CGRect) {
diff --git a/FileExplorer/FileExplorer/UIAlertController+Extension.swift b/FileExplorer/FileExplorer/UIAlertController+Extension.swift
index 14e4b58..00ed07b 100644
--- a/FileExplorer/FileExplorer/UIAlertController+Extension.swift
+++ b/FileExplorer/FileExplorer/UIAlertController+Extension.swift
@@ -26,7 +26,7 @@
import Foundation
extension UIAlertController {
- static func presentAlert(for error: Error, in viewController: UIViewController) {
+ @objc static func presentAlert(for error: Error, in viewController: UIViewController) {
let alertController = UIAlertController(title: "Error", message: error.localizedDescription, preferredStyle: .alert)
alertController.addAction(UIAlertAction(title: NSLocalizedString("OK", comment: ""), style: .default, handler: nil))
viewController.present(alertController, animated: true, completion: nil)
diff --git a/FileExplorer/FileExplorer/UIBezierPath+Extension.swift b/FileExplorer/FileExplorer/UIBezierPath+Extension.swift
index 6be9add..d00161d 100644
--- a/FileExplorer/FileExplorer/UIBezierPath+Extension.swift
+++ b/FileExplorer/FileExplorer/UIBezierPath+Extension.swift
@@ -26,7 +26,7 @@
import UIKit
extension UIBezierPath{
- static func makeCheckmarkPath(with frame: CGRect) -> UIBezierPath {
+ @objc static func makeCheckmarkPath(with frame: CGRect) -> UIBezierPath {
let bezierPath = UIBezierPath()
bezierPath.move(to: CGPoint(x: frame.minX + 0.07692 * frame.width, y: frame.minY + 0.57143 * frame.height))
bezierPath.addLine(to: CGPoint(x: frame.minX + 0.30769 * frame.width, y: frame.minY + 0.85714 * frame.height))
diff --git a/FileExplorer/FileExplorer/UICollectionView+Extension.swift b/FileExplorer/FileExplorer/UICollectionView+Extension.swift
index fe1b876..1c9b4cb 100644
--- a/FileExplorer/FileExplorer/UICollectionView+Extension.swift
+++ b/FileExplorer/FileExplorer/UICollectionView+Extension.swift
@@ -26,7 +26,7 @@
import Foundation
extension UICollectionView {
- func registerCell(ofClass cellClass: AnyClass) {
+ @objc func registerCell(ofClass cellClass: AnyClass) {
register(cellClass, forCellWithReuseIdentifier: String(describing: cellClass))
}
@@ -41,24 +41,24 @@ extension UICollectionView {
return cell
}
- func registerFooter(ofClass viewClass: AnyClass) {
- register(viewClass, forSupplementaryViewOfKind: UICollectionElementKindSectionFooter, withReuseIdentifier: String(describing: viewClass))
+ @objc func registerFooter(ofClass viewClass: AnyClass) {
+ register(viewClass, forSupplementaryViewOfKind: UICollectionView.elementKindSectionFooter, withReuseIdentifier: String(describing: viewClass))
}
func dequeueReusableFooter(ofClass cellClass: AnyClass, for indexPath: IndexPath) -> T {
- return dequeueReusableSupplementaryView(ofKind: UICollectionElementKindSectionFooter, withReuseIdentifier: String(describing: cellClass), for: indexPath) as! T
+ return dequeueReusableSupplementaryView(ofKind: UICollectionView.elementKindSectionFooter, withReuseIdentifier: String(describing: cellClass), for: indexPath) as! T
}
- func registerHeader(ofClass viewClass: AnyClass) {
- register(viewClass, forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: String(describing: viewClass))
+ @objc func registerHeader(ofClass viewClass: AnyClass) {
+ register(viewClass, forSupplementaryViewOfKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: String(describing: viewClass))
}
func dequeueReusableHeader(ofClass cellClass: AnyClass, for indexPath: IndexPath) -> T {
- return dequeueReusableSupplementaryView(ofKind: UICollectionElementKindSectionHeader, withReuseIdentifier: String(describing: cellClass), for: indexPath) as! T
+ return dequeueReusableSupplementaryView(ofKind: UICollectionView.elementKindSectionHeader, withReuseIdentifier: String(describing: cellClass), for: indexPath) as! T
}
func header(for indexPath: IndexPath) -> T? {
- return supplementaryView(forElementKind: UICollectionElementKindSectionHeader, at: indexPath) as? T
+ return supplementaryView(forElementKind: UICollectionView.elementKindSectionHeader, at: indexPath) as? T
}
}
@@ -67,7 +67,7 @@ extension UICollectionView {
@nonobjc static var kToolbarKey = "toolbar"
@nonobjc static var kToolbarBottomConstraint = "bottomConstraint"
- var isEditing: Bool {
+ @objc var isEditing: Bool {
get {
return (objc_getAssociatedObject(self, &UICollectionView.kIsEditingKey) as? NSNumber)?.boolValue ?? false
}
@@ -76,7 +76,7 @@ extension UICollectionView {
}
}
- var toolbar: UIToolbar? {
+ @objc var toolbar: UIToolbar? {
get {
return (objc_getAssociatedObject(self, &UICollectionView.kToolbarKey)) as? UIToolbar
}
@@ -94,7 +94,7 @@ extension UICollectionView {
}
}
- func setEditing(_ editing: Bool, animated: Bool) {
+ @objc func setEditing(_ editing: Bool, animated: Bool) {
for cell in visibleCells {
guard let cell = cell as? Editable else {
continue
diff --git a/FileExplorer/FileExplorer/UIImage+Extension.swift b/FileExplorer/FileExplorer/UIImage+Extension.swift
index 9939af4..6b9850a 100644
--- a/FileExplorer/FileExplorer/UIImage+Extension.swift
+++ b/FileExplorer/FileExplorer/UIImage+Extension.swift
@@ -26,13 +26,13 @@
import Foundation
extension UIImage {
- static func make(for name: String, bundle: Bundle = Bundle(for: ItemCell.self)) -> UIImage? {
+ @objc static func make(for name: String, bundle: Bundle = Bundle(for: ItemCell.self)) -> UIImage? {
return UIImage(named: name, in: bundle, compatibleWith: nil)
}
}
extension UIImage {
- static func makeImage(withColor color: UIColor, size: CGSize = CGSize(width: 1, height: 1)) -> UIImage {
+ @objc static func makeImage(withColor color: UIColor, size: CGSize = CGSize(width: 1, height: 1)) -> UIImage {
UIGraphicsBeginImageContext(size);
guard let context = UIGraphicsGetCurrentContext() else { fatalError() }
context.setFillColor(color.cgColor)
diff --git a/FileExplorer/FileExplorer/UISearchBar+Extension.swift b/FileExplorer/FileExplorer/UISearchBar+Extension.swift
index 1c4e428..bcf7ae3 100644
--- a/FileExplorer/FileExplorer/UISearchBar+Extension.swift
+++ b/FileExplorer/FileExplorer/UISearchBar+Extension.swift
@@ -28,7 +28,7 @@ import Foundation
extension UISearchBar {
@nonobjc static var kDimmingView = "dimmingView"
- var dimmingView: UIView? {
+ @objc var dimmingView: UIView? {
get {
return objc_getAssociatedObject(self, &UISearchBar.kDimmingView) as? UIView
}
@@ -37,7 +37,7 @@ extension UISearchBar {
}
}
- var isEnabled: Bool {
+ @objc var isEnabled: Bool {
get {
return dimmingView != nil
}
diff --git a/FileExplorer/FileExplorer/UITableView+Extension.swift b/FileExplorer/FileExplorer/UITableView+Extension.swift
index dbd3e16..01c6878 100644
--- a/FileExplorer/FileExplorer/UITableView+Extension.swift
+++ b/FileExplorer/FileExplorer/UITableView+Extension.swift
@@ -26,7 +26,7 @@
import Foundation
extension UITableView {
- func registerCell(ofClass cellClass: AnyClass) {
+ @objc func registerCell(ofClass cellClass: AnyClass) {
register(cellClass, forCellReuseIdentifier: String(describing: cellClass))
}
@@ -38,7 +38,7 @@ extension UITableView {
return cell
}
- func makeCell(with style: UITableViewCellStyle) -> UITableViewCell {
+ @objc func makeCell(with style: UITableViewCell.CellStyle) -> UITableViewCell {
return UITableViewCell(style: style, reuseIdentifier: String(describing: UITableViewCell.self))
}
}
diff --git a/FileExplorer/FileExplorer/UIToolbar+Extension.swift b/FileExplorer/FileExplorer/UIToolbar+Extension.swift
index 0b2600c..4821bf5 100644
--- a/FileExplorer/FileExplorer/UIToolbar+Extension.swift
+++ b/FileExplorer/FileExplorer/UIToolbar+Extension.swift
@@ -26,7 +26,7 @@
import Foundation
extension UIToolbar {
- static func makeToolbar() -> UIToolbar {
+ @objc static func makeToolbar() -> UIToolbar {
let toolbar = UIToolbar()
toolbar.translatesAutoresizingMaskIntoConstraints = false
toolbar.sizeToFit()
diff --git a/FileExplorer/FileExplorer/UIView+Extension.swift b/FileExplorer/FileExplorer/UIView+Extension.swift
index a54f088..5a738e6 100644
--- a/FileExplorer/FileExplorer/UIView+Extension.swift
+++ b/FileExplorer/FileExplorer/UIView+Extension.swift
@@ -27,7 +27,7 @@ import Foundation
extension UIView {
- @discardableResult
+ @objc @discardableResult
func pinToBottom(of view: UIView) -> NSLayoutConstraint {
let constraint = bottomAnchor.constraint(equalTo: view.bottomAnchor)
constraint.isActive = true
@@ -37,7 +37,7 @@ extension UIView {
return constraint
}
- func edges(equalTo view: UIView, insets: UIEdgeInsets = UIEdgeInsets.zero) {
+ @objc func edges(equalTo view: UIView, insets: UIEdgeInsets = UIEdgeInsets.zero) {
leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: insets.left).isActive = true
trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: insets.right).isActive = true
topAnchor.constraint(equalTo: view.topAnchor, constant: insets.top).isActive = true
diff --git a/FileExplorer/FileExplorer/UIViewController+Extension.swift b/FileExplorer/FileExplorer/UIViewController+Extension.swift
index 3eb4f1f..d42bf8e 100644
--- a/FileExplorer/FileExplorer/UIViewController+Extension.swift
+++ b/FileExplorer/FileExplorer/UIViewController+Extension.swift
@@ -27,7 +27,7 @@ import Foundation
extension UIViewController {
@nonobjc static var kActivityIndicatorKey = "fer_activityIndicatorView"
- var activityIndicatorView: UIActivityIndicatorView? {
+ @objc var activityIndicatorView: UIActivityIndicatorView? {
get {
return objc_getAssociatedObject(self, &UIViewController.kActivityIndicatorKey) as? UIActivityIndicatorView
}
@@ -36,10 +36,10 @@ extension UIViewController {
}
}
- func showLoadingIndicator() {
+ @objc func showLoadingIndicator() {
guard self.activityIndicatorView == nil else { return }
- let activityIndicatorView = UIActivityIndicatorView(activityIndicatorStyle: .whiteLarge)
+ let activityIndicatorView = UIActivityIndicatorView(style: .whiteLarge)
activityIndicatorView.color = .gray
activityIndicatorView.hidesWhenStopped = true
activityIndicatorView.center = CGPoint(x: view.bounds.midX, y: view.bounds.midY)
@@ -49,7 +49,7 @@ extension UIViewController {
activityIndicatorView.startAnimating()
}
- func hideLoadingIndicator() {
+ @objc func hideLoadingIndicator() {
self.activityIndicatorView?.stopAnimating()
UIView.animate(withDuration: 0.2, animations: {
self.activityIndicatorView?.alpha = 0.0
@@ -61,7 +61,7 @@ extension UIViewController {
}
extension UIViewController {
- var activeRightBarButtonItem: UIBarButtonItem? {
+ @objc var activeRightBarButtonItem: UIBarButtonItem? {
get {
return activeNavigationItem?.rightBarButtonItem
}
@@ -72,7 +72,7 @@ extension UIViewController {
}
}
- var activeNavigationItemTitle: String? {
+ @objc var activeNavigationItemTitle: String? {
get {
return activeNavigationItem?.title
}
@@ -82,7 +82,7 @@ extension UIViewController {
}
}
- var activeNavigationItem: UINavigationItem? {
+ @objc var activeNavigationItem: UINavigationItem? {
guard let viewController = navigationController?.topViewController else { return nil }
if viewController.navigationItem === navigationItem {
@@ -94,11 +94,11 @@ extension UIViewController {
}
extension UIViewController {
- func addContentChildViewController(_ content: UIViewController, insets: UIEdgeInsets = UIEdgeInsets.zero) {
+ @objc func addContentChildViewController(_ content: UIViewController, insets: UIEdgeInsets = UIEdgeInsets.zero) {
view.addSubview(content.view)
- addChildViewController(content)
- content.view.frame = UIEdgeInsetsInsetRect(view.bounds, insets)
+ addChild(content)
+ content.view.frame = view.bounds.inset(by: insets)
content.view.autoresizingMask = [.flexibleHeight, .flexibleWidth]
- content.didMove(toParentViewController: self)
+ content.didMove(toParent: self)
}
}
diff --git a/FileExplorer/FileExplorer/URL+Extension.swift b/FileExplorer/FileExplorer/URL+Extension.swift
index cf66ab4..aed6d9d 100644
--- a/FileExplorer/FileExplorer/URL+Extension.swift
+++ b/FileExplorer/FileExplorer/URL+Extension.swift
@@ -43,6 +43,6 @@ extension URL {
}
func makeStandarizedFirstCharacterOfLastPathComponent() -> Character? {
- return makeStandarizedLastPathComponent().localizedUppercase.characters.first
+ return makeStandarizedLastPathComponent().localizedUppercase.first
}
}
diff --git a/FileExplorer/FileExplorer/UknownFileTypeViewController.swift b/FileExplorer/FileExplorer/UknownFileTypeViewController.swift
index e7fbd4f..7ab9ed8 100644
--- a/FileExplorer/FileExplorer/UknownFileTypeViewController.swift
+++ b/FileExplorer/FileExplorer/UknownFileTypeViewController.swift
@@ -26,10 +26,10 @@
import Foundation
final class UknownFileTypeViewController: UIViewController {
- let fileName: String
- var imageView: UIImageView = UIImageView()
+ @objc let fileName: String
+ @objc var imageView: UIImageView = UIImageView()
- init(fileName: String) {
+ @objc init(fileName: String) {
self.fileName = fileName
super.init(nibName: nil, bundle: nil)
}
diff --git a/FileExplorer/FileExplorer/WebViewController.swift b/FileExplorer/FileExplorer/WebViewController.swift
index 7ac6ae6..5216a3f 100644
--- a/FileExplorer/FileExplorer/WebViewController.swift
+++ b/FileExplorer/FileExplorer/WebViewController.swift
@@ -27,9 +27,9 @@ import Foundation
import WebKit
final class WebViewController: UIViewController {
- let url: URL
+ @objc let url: URL
- init(url: URL) {
+ @objc init(url: URL) {
self.url = url
super.init(nibName: nil, bundle: nil)
}