├── .gitignore ├── .travis.yml ├── Example ├── FileManager-Swift.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── FileManager-Swift-Example.xcscheme ├── FileManager-Swift.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── FileManager-Swift │ ├── AppDelegate.swift │ ├── Assets │ │ ├── 3gp.png │ │ ├── file.png │ │ ├── jpg.png │ │ ├── json.png │ │ ├── messageindicator1.png │ │ ├── messageindicator1@2x.png │ │ ├── messageindicator1@3x.png │ │ ├── messageindicatorchecked1.png │ │ ├── messageindicatorchecked1@2x.png │ │ ├── messageindicatorchecked1@3x.png │ │ ├── mp4.png │ │ ├── pdf.png │ │ ├── png.png │ │ ├── send_btn.png │ │ ├── send_btn@2x.png │ │ ├── send_btn@3x.png │ │ ├── send_snap.png │ │ ├── send_snap@2x.png │ │ ├── send_snap@3x.png │ │ ├── trash.png │ │ ├── txt.png │ │ ├── xml.png │ │ └── zip.png │ ├── Base.lproj │ │ ├── LaunchScreen.xib │ │ └── Main.storyboard │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Info.plist │ └── ViewController.swift ├── Podfile ├── Podfile.lock ├── Pods │ ├── Local Podspecs │ │ └── FileManager-Swift.podspec.json │ ├── Manifest.lock │ ├── Pods.xcodeproj │ │ └── project.pbxproj │ └── Target Support Files │ │ ├── FileManager-Swift │ │ ├── FileManager-Swift-dummy.m │ │ ├── FileManager-Swift-prefix.pch │ │ ├── FileManager-Swift-umbrella.h │ │ ├── FileManager-Swift.modulemap │ │ ├── FileManager-Swift.xcconfig │ │ └── Info.plist │ │ ├── Pods-FileManager-Swift_Example │ │ ├── Info.plist │ │ ├── Pods-FileManager-Swift_Example-acknowledgements.markdown │ │ ├── Pods-FileManager-Swift_Example-acknowledgements.plist │ │ ├── Pods-FileManager-Swift_Example-dummy.m │ │ ├── Pods-FileManager-Swift_Example-frameworks.sh │ │ ├── Pods-FileManager-Swift_Example-resources.sh │ │ ├── Pods-FileManager-Swift_Example-umbrella.h │ │ ├── Pods-FileManager-Swift_Example.debug.xcconfig │ │ ├── Pods-FileManager-Swift_Example.modulemap │ │ └── Pods-FileManager-Swift_Example.release.xcconfig │ │ └── Pods-FileManager-Swift_Tests │ │ ├── Info.plist │ │ ├── Pods-FileManager-Swift_Tests-acknowledgements.markdown │ │ ├── Pods-FileManager-Swift_Tests-acknowledgements.plist │ │ ├── Pods-FileManager-Swift_Tests-dummy.m │ │ ├── Pods-FileManager-Swift_Tests-frameworks.sh │ │ ├── Pods-FileManager-Swift_Tests-resources.sh │ │ ├── Pods-FileManager-Swift_Tests-umbrella.h │ │ ├── Pods-FileManager-Swift_Tests.debug.xcconfig │ │ ├── Pods-FileManager-Swift_Tests.modulemap │ │ └── Pods-FileManager-Swift_Tests.release.xcconfig └── Tests │ ├── Info.plist │ └── Tests.swift ├── FileManager-Swift.podspec ├── FileManager-Swift ├── Assets │ ├── .gitkeep │ ├── icons.xcassets │ │ ├── 3gp.imageset │ │ │ ├── 3gp.png │ │ │ └── Contents.json │ │ ├── Contents.json │ │ ├── file.imageset │ │ │ ├── Contents.json │ │ │ └── file.png │ │ ├── jpg.imageset │ │ │ ├── Contents.json │ │ │ └── jpg.png │ │ ├── json_file.imageset │ │ │ ├── Contents.json │ │ │ └── json_file.png │ │ ├── messageindicator1.imageset │ │ │ ├── Contents.json │ │ │ ├── messageindicator1.png │ │ │ ├── messageindicator1@2x.png │ │ │ └── messageindicator1@3x.png │ │ ├── messageindicatorchecked1.imageset │ │ │ ├── Contents.json │ │ │ ├── messageindicatorchecked1.png │ │ │ ├── messageindicatorchecked1@2x.png │ │ │ └── messageindicatorchecked1@3x.png │ │ ├── mp4.imageset │ │ │ ├── Contents.json │ │ │ └── mp4.png │ │ ├── pdf.imageset │ │ │ ├── Contents.json │ │ │ └── pdf.png │ │ ├── png.imageset │ │ │ ├── Contents.json │ │ │ └── png.png │ │ ├── send_btn.imageset │ │ │ ├── Contents.json │ │ │ ├── send_btn.png │ │ │ ├── send_btn@2x.png │ │ │ └── send_btn@3x.png │ │ ├── send_snap.imageset │ │ │ ├── Contents.json │ │ │ ├── send_snap.png │ │ │ ├── send_snap@2x.png │ │ │ └── send_snap@3x.png │ │ ├── trash.imageset │ │ │ ├── Contents.json │ │ │ └── trash.png │ │ ├── txt.imageset │ │ │ ├── Contents.json │ │ │ └── txt.png │ │ ├── xml.imageset │ │ │ ├── Contents.json │ │ │ └── xml.png │ │ └── zip.imageset │ │ │ ├── Contents.json │ │ │ └── zip.png │ └── send_btn.png ├── Classes │ ├── .gitkeep │ ├── DropShadow+Protocol.swift │ ├── FileManagerVC+Constraints.swift │ ├── FileManagerVC.swift │ ├── Utilities.swift │ ├── enums.swift │ └── options.swift └── send_btn.png ├── LICENSE ├── README.md ├── _Pods.xcodeproj ├── screen1.PNG ├── screen2.PNG ├── screen3.PNG ├── screen4.PNG └── screen5.PNG /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata/ 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | Carthage 26 | # We recommend against adding the Pods directory to your .gitignore. However 27 | # you should judge for yourself, the pros and cons are mentioned at: 28 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 29 | # 30 | # Note: if you ignore the Pods directory, make sure to uncomment 31 | # `pod install` in .travis.yml 32 | # 33 | # Pods/ 34 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | osx_image: xcode7.3 6 | language: objective-c 7 | # cache: cocoapods 8 | # podfile: Example/Podfile 9 | # before_install: 10 | # - gem install cocoapods # Since Travis is not always on latest version 11 | # - pod install --project-directory=Example 12 | script: 13 | - set -o pipefail && xcodebuild test -workspace Example/FileManager-Swift.xcworkspace -scheme FileManager-Swift-Example -sdk iphonesimulator9.3 ONLY_ACTIVE_ARCH=NO | xcpretty 14 | - pod lib lint 15 | -------------------------------------------------------------------------------- /Example/FileManager-Swift.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1EB2A4901F1D855F00819A41 /* 3gp.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4791F1D855F00819A41 /* 3gp.png */; }; 11 | 1EB2A4911F1D855F00819A41 /* file.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47A1F1D855F00819A41 /* file.png */; }; 12 | 1EB2A4921F1D855F00819A41 /* jpg.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47B1F1D855F00819A41 /* jpg.png */; }; 13 | 1EB2A4931F1D855F00819A41 /* json.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47C1F1D855F00819A41 /* json.png */; }; 14 | 1EB2A4941F1D855F00819A41 /* messageindicator1.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47D1F1D855F00819A41 /* messageindicator1.png */; }; 15 | 1EB2A4951F1D855F00819A41 /* messageindicator1@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47E1F1D855F00819A41 /* messageindicator1@2x.png */; }; 16 | 1EB2A4961F1D855F00819A41 /* messageindicator1@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A47F1F1D855F00819A41 /* messageindicator1@3x.png */; }; 17 | 1EB2A4971F1D855F00819A41 /* messageindicatorchecked1.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4801F1D855F00819A41 /* messageindicatorchecked1.png */; }; 18 | 1EB2A4981F1D855F00819A41 /* messageindicatorchecked1@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4811F1D855F00819A41 /* messageindicatorchecked1@2x.png */; }; 19 | 1EB2A4991F1D855F00819A41 /* messageindicatorchecked1@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4821F1D855F00819A41 /* messageindicatorchecked1@3x.png */; }; 20 | 1EB2A49A1F1D855F00819A41 /* mp4.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4831F1D855F00819A41 /* mp4.png */; }; 21 | 1EB2A49B1F1D855F00819A41 /* pdf.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4841F1D855F00819A41 /* pdf.png */; }; 22 | 1EB2A49C1F1D855F00819A41 /* png.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4851F1D855F00819A41 /* png.png */; }; 23 | 1EB2A49D1F1D855F00819A41 /* send_btn.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4861F1D855F00819A41 /* send_btn.png */; }; 24 | 1EB2A49E1F1D855F00819A41 /* send_btn@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4871F1D855F00819A41 /* send_btn@2x.png */; }; 25 | 1EB2A49F1F1D855F00819A41 /* send_btn@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4881F1D855F00819A41 /* send_btn@3x.png */; }; 26 | 1EB2A4A01F1D855F00819A41 /* send_snap.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4891F1D855F00819A41 /* send_snap.png */; }; 27 | 1EB2A4A11F1D855F00819A41 /* send_snap@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48A1F1D855F00819A41 /* send_snap@2x.png */; }; 28 | 1EB2A4A21F1D855F00819A41 /* send_snap@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48B1F1D855F00819A41 /* send_snap@3x.png */; }; 29 | 1EB2A4A31F1D855F00819A41 /* trash.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48C1F1D855F00819A41 /* trash.png */; }; 30 | 1EB2A4A41F1D855F00819A41 /* txt.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48D1F1D855F00819A41 /* txt.png */; }; 31 | 1EB2A4A51F1D855F00819A41 /* xml.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48E1F1D855F00819A41 /* xml.png */; }; 32 | 1EB2A4A61F1D855F00819A41 /* zip.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A48F1F1D855F00819A41 /* zip.png */; }; 33 | 607FACD61AFB9204008FA782 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACD51AFB9204008FA782 /* AppDelegate.swift */; }; 34 | 607FACD81AFB9204008FA782 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACD71AFB9204008FA782 /* ViewController.swift */; }; 35 | 607FACDB1AFB9204008FA782 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 607FACD91AFB9204008FA782 /* Main.storyboard */; }; 36 | 607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDC1AFB9204008FA782 /* Images.xcassets */; }; 37 | 607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */; }; 38 | 607FACEC1AFB9204008FA782 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACEB1AFB9204008FA782 /* Tests.swift */; }; 39 | E55E5DD43D64FCF729B19171 /* Pods_FileManager_Swift_Example.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F62EF0D85D3FCE196B221D03 /* Pods_FileManager_Swift_Example.framework */; }; 40 | FD8E744312F0C280ADC4AD38 /* Pods_FileManager_Swift_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDD5C31B884B83F0065B706B /* Pods_FileManager_Swift_Tests.framework */; }; 41 | /* End PBXBuildFile section */ 42 | 43 | /* Begin PBXContainerItemProxy section */ 44 | 607FACE61AFB9204008FA782 /* PBXContainerItemProxy */ = { 45 | isa = PBXContainerItemProxy; 46 | containerPortal = 607FACC81AFB9204008FA782 /* Project object */; 47 | proxyType = 1; 48 | remoteGlobalIDString = 607FACCF1AFB9204008FA782; 49 | remoteInfo = "FileManager-Swift"; 50 | }; 51 | /* End PBXContainerItemProxy section */ 52 | 53 | /* Begin PBXFileReference section */ 54 | 12852D802058A90E375D79A7 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 55 | 177526D137F5D62D5E74C9AB /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 56 | 1EB2A4791F1D855F00819A41 /* 3gp.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 3gp.png; sourceTree = ""; }; 57 | 1EB2A47A1F1D855F00819A41 /* file.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = file.png; sourceTree = ""; }; 58 | 1EB2A47B1F1D855F00819A41 /* jpg.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = jpg.png; sourceTree = ""; }; 59 | 1EB2A47C1F1D855F00819A41 /* json.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = json.png; sourceTree = ""; }; 60 | 1EB2A47D1F1D855F00819A41 /* messageindicator1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = messageindicator1.png; sourceTree = ""; }; 61 | 1EB2A47E1F1D855F00819A41 /* messageindicator1@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "messageindicator1@2x.png"; sourceTree = ""; }; 62 | 1EB2A47F1F1D855F00819A41 /* messageindicator1@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "messageindicator1@3x.png"; sourceTree = ""; }; 63 | 1EB2A4801F1D855F00819A41 /* messageindicatorchecked1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = messageindicatorchecked1.png; sourceTree = ""; }; 64 | 1EB2A4811F1D855F00819A41 /* messageindicatorchecked1@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "messageindicatorchecked1@2x.png"; sourceTree = ""; }; 65 | 1EB2A4821F1D855F00819A41 /* messageindicatorchecked1@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "messageindicatorchecked1@3x.png"; sourceTree = ""; }; 66 | 1EB2A4831F1D855F00819A41 /* mp4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mp4.png; sourceTree = ""; }; 67 | 1EB2A4841F1D855F00819A41 /* pdf.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = pdf.png; sourceTree = ""; }; 68 | 1EB2A4851F1D855F00819A41 /* png.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = png.png; sourceTree = ""; }; 69 | 1EB2A4861F1D855F00819A41 /* send_btn.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = send_btn.png; sourceTree = ""; }; 70 | 1EB2A4871F1D855F00819A41 /* send_btn@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "send_btn@2x.png"; sourceTree = ""; }; 71 | 1EB2A4881F1D855F00819A41 /* send_btn@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "send_btn@3x.png"; sourceTree = ""; }; 72 | 1EB2A4891F1D855F00819A41 /* send_snap.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = send_snap.png; sourceTree = ""; }; 73 | 1EB2A48A1F1D855F00819A41 /* send_snap@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "send_snap@2x.png"; sourceTree = ""; }; 74 | 1EB2A48B1F1D855F00819A41 /* send_snap@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "send_snap@3x.png"; sourceTree = ""; }; 75 | 1EB2A48C1F1D855F00819A41 /* trash.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = trash.png; sourceTree = ""; }; 76 | 1EB2A48D1F1D855F00819A41 /* txt.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = txt.png; sourceTree = ""; }; 77 | 1EB2A48E1F1D855F00819A41 /* xml.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = xml.png; sourceTree = ""; }; 78 | 1EB2A48F1F1D855F00819A41 /* zip.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = zip.png; sourceTree = ""; }; 79 | 3C57CA0EE72EC4945E5B6204 /* FileManager-Swift.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = "FileManager-Swift.podspec"; path = "../FileManager-Swift.podspec"; sourceTree = ""; }; 80 | 607FACD01AFB9204008FA782 /* FileManager-Swift_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "FileManager-Swift_Example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 81 | 607FACD41AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 82 | 607FACD51AFB9204008FA782 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 83 | 607FACD71AFB9204008FA782 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; 84 | 607FACDA1AFB9204008FA782 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 85 | 607FACDC1AFB9204008FA782 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 86 | 607FACDF1AFB9204008FA782 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; 87 | 607FACE51AFB9204008FA782 /* FileManager-Swift_Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "FileManager-Swift_Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 88 | 607FACEA1AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 89 | 607FACEB1AFB9204008FA782 /* Tests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests.swift; sourceTree = ""; }; 90 | 65BD4FAA19E744A7DA6D1366 /* Pods-FileManager-Swift_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FileManager-Swift_Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.release.xcconfig"; sourceTree = ""; }; 91 | ABC5882F3E5A212746AEE5E8 /* Pods-FileManager-Swift_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FileManager-Swift_Example.release.xcconfig"; path = "Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.release.xcconfig"; sourceTree = ""; }; 92 | C09B123AE0A5383DAED82228 /* Pods-FileManager-Swift_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FileManager-Swift_Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.debug.xcconfig"; sourceTree = ""; }; 93 | CB750CB8FAE38943220109EA /* Pods-FileManager-Swift_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FileManager-Swift_Example.debug.xcconfig"; path = "Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.debug.xcconfig"; sourceTree = ""; }; 94 | DDD5C31B884B83F0065B706B /* Pods_FileManager_Swift_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FileManager_Swift_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 95 | F62EF0D85D3FCE196B221D03 /* Pods_FileManager_Swift_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FileManager_Swift_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 96 | /* End PBXFileReference section */ 97 | 98 | /* Begin PBXFrameworksBuildPhase section */ 99 | 607FACCD1AFB9204008FA782 /* Frameworks */ = { 100 | isa = PBXFrameworksBuildPhase; 101 | buildActionMask = 2147483647; 102 | files = ( 103 | E55E5DD43D64FCF729B19171 /* Pods_FileManager_Swift_Example.framework in Frameworks */, 104 | ); 105 | runOnlyForDeploymentPostprocessing = 0; 106 | }; 107 | 607FACE21AFB9204008FA782 /* Frameworks */ = { 108 | isa = PBXFrameworksBuildPhase; 109 | buildActionMask = 2147483647; 110 | files = ( 111 | FD8E744312F0C280ADC4AD38 /* Pods_FileManager_Swift_Tests.framework in Frameworks */, 112 | ); 113 | runOnlyForDeploymentPostprocessing = 0; 114 | }; 115 | /* End PBXFrameworksBuildPhase section */ 116 | 117 | /* Begin PBXGroup section */ 118 | 01CFC73A9FBF59C018963753 /* Pods */ = { 119 | isa = PBXGroup; 120 | children = ( 121 | CB750CB8FAE38943220109EA /* Pods-FileManager-Swift_Example.debug.xcconfig */, 122 | ABC5882F3E5A212746AEE5E8 /* Pods-FileManager-Swift_Example.release.xcconfig */, 123 | C09B123AE0A5383DAED82228 /* Pods-FileManager-Swift_Tests.debug.xcconfig */, 124 | 65BD4FAA19E744A7DA6D1366 /* Pods-FileManager-Swift_Tests.release.xcconfig */, 125 | ); 126 | name = Pods; 127 | sourceTree = ""; 128 | }; 129 | 1EB2A4781F1D855F00819A41 /* Assets */ = { 130 | isa = PBXGroup; 131 | children = ( 132 | 1EB2A4791F1D855F00819A41 /* 3gp.png */, 133 | 1EB2A47A1F1D855F00819A41 /* file.png */, 134 | 1EB2A47B1F1D855F00819A41 /* jpg.png */, 135 | 1EB2A47C1F1D855F00819A41 /* json.png */, 136 | 1EB2A47D1F1D855F00819A41 /* messageindicator1.png */, 137 | 1EB2A47E1F1D855F00819A41 /* messageindicator1@2x.png */, 138 | 1EB2A47F1F1D855F00819A41 /* messageindicator1@3x.png */, 139 | 1EB2A4801F1D855F00819A41 /* messageindicatorchecked1.png */, 140 | 1EB2A4811F1D855F00819A41 /* messageindicatorchecked1@2x.png */, 141 | 1EB2A4821F1D855F00819A41 /* messageindicatorchecked1@3x.png */, 142 | 1EB2A4831F1D855F00819A41 /* mp4.png */, 143 | 1EB2A4841F1D855F00819A41 /* pdf.png */, 144 | 1EB2A4851F1D855F00819A41 /* png.png */, 145 | 1EB2A4861F1D855F00819A41 /* send_btn.png */, 146 | 1EB2A4871F1D855F00819A41 /* send_btn@2x.png */, 147 | 1EB2A4881F1D855F00819A41 /* send_btn@3x.png */, 148 | 1EB2A4891F1D855F00819A41 /* send_snap.png */, 149 | 1EB2A48A1F1D855F00819A41 /* send_snap@2x.png */, 150 | 1EB2A48B1F1D855F00819A41 /* send_snap@3x.png */, 151 | 1EB2A48C1F1D855F00819A41 /* trash.png */, 152 | 1EB2A48D1F1D855F00819A41 /* txt.png */, 153 | 1EB2A48E1F1D855F00819A41 /* xml.png */, 154 | 1EB2A48F1F1D855F00819A41 /* zip.png */, 155 | ); 156 | path = Assets; 157 | sourceTree = ""; 158 | }; 159 | 607FACC71AFB9204008FA782 = { 160 | isa = PBXGroup; 161 | children = ( 162 | 607FACF51AFB993E008FA782 /* Podspec Metadata */, 163 | 607FACD21AFB9204008FA782 /* Example for FileManager-Swift */, 164 | 607FACE81AFB9204008FA782 /* Tests */, 165 | 607FACD11AFB9204008FA782 /* Products */, 166 | 01CFC73A9FBF59C018963753 /* Pods */, 167 | DDA800A1909EC4244EE2B8DD /* Frameworks */, 168 | ); 169 | sourceTree = ""; 170 | }; 171 | 607FACD11AFB9204008FA782 /* Products */ = { 172 | isa = PBXGroup; 173 | children = ( 174 | 607FACD01AFB9204008FA782 /* FileManager-Swift_Example.app */, 175 | 607FACE51AFB9204008FA782 /* FileManager-Swift_Tests.xctest */, 176 | ); 177 | name = Products; 178 | sourceTree = ""; 179 | }; 180 | 607FACD21AFB9204008FA782 /* Example for FileManager-Swift */ = { 181 | isa = PBXGroup; 182 | children = ( 183 | 1EB2A4781F1D855F00819A41 /* Assets */, 184 | 607FACD51AFB9204008FA782 /* AppDelegate.swift */, 185 | 607FACD71AFB9204008FA782 /* ViewController.swift */, 186 | 607FACD91AFB9204008FA782 /* Main.storyboard */, 187 | 607FACDC1AFB9204008FA782 /* Images.xcassets */, 188 | 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */, 189 | 607FACD31AFB9204008FA782 /* Supporting Files */, 190 | ); 191 | name = "Example for FileManager-Swift"; 192 | path = "FileManager-Swift"; 193 | sourceTree = ""; 194 | }; 195 | 607FACD31AFB9204008FA782 /* Supporting Files */ = { 196 | isa = PBXGroup; 197 | children = ( 198 | 607FACD41AFB9204008FA782 /* Info.plist */, 199 | ); 200 | name = "Supporting Files"; 201 | sourceTree = ""; 202 | }; 203 | 607FACE81AFB9204008FA782 /* Tests */ = { 204 | isa = PBXGroup; 205 | children = ( 206 | 607FACEB1AFB9204008FA782 /* Tests.swift */, 207 | 607FACE91AFB9204008FA782 /* Supporting Files */, 208 | ); 209 | path = Tests; 210 | sourceTree = ""; 211 | }; 212 | 607FACE91AFB9204008FA782 /* Supporting Files */ = { 213 | isa = PBXGroup; 214 | children = ( 215 | 607FACEA1AFB9204008FA782 /* Info.plist */, 216 | ); 217 | name = "Supporting Files"; 218 | sourceTree = ""; 219 | }; 220 | 607FACF51AFB993E008FA782 /* Podspec Metadata */ = { 221 | isa = PBXGroup; 222 | children = ( 223 | 3C57CA0EE72EC4945E5B6204 /* FileManager-Swift.podspec */, 224 | 177526D137F5D62D5E74C9AB /* README.md */, 225 | 12852D802058A90E375D79A7 /* LICENSE */, 226 | ); 227 | name = "Podspec Metadata"; 228 | sourceTree = ""; 229 | }; 230 | DDA800A1909EC4244EE2B8DD /* Frameworks */ = { 231 | isa = PBXGroup; 232 | children = ( 233 | F62EF0D85D3FCE196B221D03 /* Pods_FileManager_Swift_Example.framework */, 234 | DDD5C31B884B83F0065B706B /* Pods_FileManager_Swift_Tests.framework */, 235 | ); 236 | name = Frameworks; 237 | sourceTree = ""; 238 | }; 239 | /* End PBXGroup section */ 240 | 241 | /* Begin PBXNativeTarget section */ 242 | 607FACCF1AFB9204008FA782 /* FileManager-Swift_Example */ = { 243 | isa = PBXNativeTarget; 244 | buildConfigurationList = 607FACEF1AFB9204008FA782 /* Build configuration list for PBXNativeTarget "FileManager-Swift_Example" */; 245 | buildPhases = ( 246 | 6F46ADB0762C80B7C87C10CB /* [CP] Check Pods Manifest.lock */, 247 | 607FACCC1AFB9204008FA782 /* Sources */, 248 | 607FACCD1AFB9204008FA782 /* Frameworks */, 249 | 607FACCE1AFB9204008FA782 /* Resources */, 250 | DA685D6B9EFF3E5D575B7045 /* [CP] Embed Pods Frameworks */, 251 | AAC30C88EFCE6306D3B1A8E1 /* [CP] Copy Pods Resources */, 252 | ); 253 | buildRules = ( 254 | ); 255 | dependencies = ( 256 | ); 257 | name = "FileManager-Swift_Example"; 258 | productName = "FileManager-Swift"; 259 | productReference = 607FACD01AFB9204008FA782 /* FileManager-Swift_Example.app */; 260 | productType = "com.apple.product-type.application"; 261 | }; 262 | 607FACE41AFB9204008FA782 /* FileManager-Swift_Tests */ = { 263 | isa = PBXNativeTarget; 264 | buildConfigurationList = 607FACF21AFB9204008FA782 /* Build configuration list for PBXNativeTarget "FileManager-Swift_Tests" */; 265 | buildPhases = ( 266 | 70ECCE625C2251D70B88BFB9 /* [CP] Check Pods Manifest.lock */, 267 | 607FACE11AFB9204008FA782 /* Sources */, 268 | 607FACE21AFB9204008FA782 /* Frameworks */, 269 | 607FACE31AFB9204008FA782 /* Resources */, 270 | E814275C03DDD2DD4F0B341F /* [CP] Embed Pods Frameworks */, 271 | 78AF806C9F3DECCA9FEED301 /* [CP] Copy Pods Resources */, 272 | ); 273 | buildRules = ( 274 | ); 275 | dependencies = ( 276 | 607FACE71AFB9204008FA782 /* PBXTargetDependency */, 277 | ); 278 | name = "FileManager-Swift_Tests"; 279 | productName = Tests; 280 | productReference = 607FACE51AFB9204008FA782 /* FileManager-Swift_Tests.xctest */; 281 | productType = "com.apple.product-type.bundle.unit-test"; 282 | }; 283 | /* End PBXNativeTarget section */ 284 | 285 | /* Begin PBXProject section */ 286 | 607FACC81AFB9204008FA782 /* Project object */ = { 287 | isa = PBXProject; 288 | attributes = { 289 | LastSwiftUpdateCheck = 0720; 290 | LastUpgradeCheck = 0820; 291 | ORGANIZATIONNAME = CocoaPods; 292 | TargetAttributes = { 293 | 607FACCF1AFB9204008FA782 = { 294 | CreatedOnToolsVersion = 6.3.1; 295 | LastSwiftMigration = 0820; 296 | }; 297 | 607FACE41AFB9204008FA782 = { 298 | CreatedOnToolsVersion = 6.3.1; 299 | LastSwiftMigration = 0820; 300 | TestTargetID = 607FACCF1AFB9204008FA782; 301 | }; 302 | }; 303 | }; 304 | buildConfigurationList = 607FACCB1AFB9204008FA782 /* Build configuration list for PBXProject "FileManager-Swift" */; 305 | compatibilityVersion = "Xcode 3.2"; 306 | developmentRegion = English; 307 | hasScannedForEncodings = 0; 308 | knownRegions = ( 309 | en, 310 | Base, 311 | ); 312 | mainGroup = 607FACC71AFB9204008FA782; 313 | productRefGroup = 607FACD11AFB9204008FA782 /* Products */; 314 | projectDirPath = ""; 315 | projectRoot = ""; 316 | targets = ( 317 | 607FACCF1AFB9204008FA782 /* FileManager-Swift_Example */, 318 | 607FACE41AFB9204008FA782 /* FileManager-Swift_Tests */, 319 | ); 320 | }; 321 | /* End PBXProject section */ 322 | 323 | /* Begin PBXResourcesBuildPhase section */ 324 | 607FACCE1AFB9204008FA782 /* Resources */ = { 325 | isa = PBXResourcesBuildPhase; 326 | buildActionMask = 2147483647; 327 | files = ( 328 | 1EB2A4A31F1D855F00819A41 /* trash.png in Resources */, 329 | 1EB2A4901F1D855F00819A41 /* 3gp.png in Resources */, 330 | 1EB2A4A11F1D855F00819A41 /* send_snap@2x.png in Resources */, 331 | 1EB2A49F1F1D855F00819A41 /* send_btn@3x.png in Resources */, 332 | 1EB2A49D1F1D855F00819A41 /* send_btn.png in Resources */, 333 | 1EB2A4A51F1D855F00819A41 /* xml.png in Resources */, 334 | 1EB2A4911F1D855F00819A41 /* file.png in Resources */, 335 | 607FACDB1AFB9204008FA782 /* Main.storyboard in Resources */, 336 | 1EB2A49A1F1D855F00819A41 /* mp4.png in Resources */, 337 | 1EB2A4A61F1D855F00819A41 /* zip.png in Resources */, 338 | 1EB2A4941F1D855F00819A41 /* messageindicator1.png in Resources */, 339 | 1EB2A4921F1D855F00819A41 /* jpg.png in Resources */, 340 | 1EB2A4A21F1D855F00819A41 /* send_snap@3x.png in Resources */, 341 | 1EB2A49B1F1D855F00819A41 /* pdf.png in Resources */, 342 | 607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */, 343 | 1EB2A4931F1D855F00819A41 /* json.png in Resources */, 344 | 1EB2A4A01F1D855F00819A41 /* send_snap.png in Resources */, 345 | 1EB2A4991F1D855F00819A41 /* messageindicatorchecked1@3x.png in Resources */, 346 | 1EB2A4971F1D855F00819A41 /* messageindicatorchecked1.png in Resources */, 347 | 1EB2A4961F1D855F00819A41 /* messageindicator1@3x.png in Resources */, 348 | 1EB2A4A41F1D855F00819A41 /* txt.png in Resources */, 349 | 1EB2A4951F1D855F00819A41 /* messageindicator1@2x.png in Resources */, 350 | 1EB2A4981F1D855F00819A41 /* messageindicatorchecked1@2x.png in Resources */, 351 | 607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */, 352 | 1EB2A49C1F1D855F00819A41 /* png.png in Resources */, 353 | 1EB2A49E1F1D855F00819A41 /* send_btn@2x.png in Resources */, 354 | ); 355 | runOnlyForDeploymentPostprocessing = 0; 356 | }; 357 | 607FACE31AFB9204008FA782 /* Resources */ = { 358 | isa = PBXResourcesBuildPhase; 359 | buildActionMask = 2147483647; 360 | files = ( 361 | ); 362 | runOnlyForDeploymentPostprocessing = 0; 363 | }; 364 | /* End PBXResourcesBuildPhase section */ 365 | 366 | /* Begin PBXShellScriptBuildPhase section */ 367 | 6F46ADB0762C80B7C87C10CB /* [CP] Check Pods Manifest.lock */ = { 368 | isa = PBXShellScriptBuildPhase; 369 | buildActionMask = 2147483647; 370 | files = ( 371 | ); 372 | inputPaths = ( 373 | ); 374 | name = "[CP] Check Pods Manifest.lock"; 375 | outputPaths = ( 376 | ); 377 | runOnlyForDeploymentPostprocessing = 0; 378 | shellPath = /bin/sh; 379 | 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"; 380 | showEnvVarsInLog = 0; 381 | }; 382 | 70ECCE625C2251D70B88BFB9 /* [CP] Check Pods Manifest.lock */ = { 383 | isa = PBXShellScriptBuildPhase; 384 | buildActionMask = 2147483647; 385 | files = ( 386 | ); 387 | inputPaths = ( 388 | ); 389 | name = "[CP] Check Pods Manifest.lock"; 390 | outputPaths = ( 391 | ); 392 | runOnlyForDeploymentPostprocessing = 0; 393 | shellPath = /bin/sh; 394 | 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"; 395 | showEnvVarsInLog = 0; 396 | }; 397 | 78AF806C9F3DECCA9FEED301 /* [CP] Copy Pods Resources */ = { 398 | isa = PBXShellScriptBuildPhase; 399 | buildActionMask = 2147483647; 400 | files = ( 401 | ); 402 | inputPaths = ( 403 | ); 404 | name = "[CP] Copy Pods Resources"; 405 | outputPaths = ( 406 | ); 407 | runOnlyForDeploymentPostprocessing = 0; 408 | shellPath = /bin/sh; 409 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-resources.sh\"\n"; 410 | showEnvVarsInLog = 0; 411 | }; 412 | AAC30C88EFCE6306D3B1A8E1 /* [CP] Copy Pods Resources */ = { 413 | isa = PBXShellScriptBuildPhase; 414 | buildActionMask = 2147483647; 415 | files = ( 416 | ); 417 | inputPaths = ( 418 | ); 419 | name = "[CP] Copy Pods Resources"; 420 | outputPaths = ( 421 | ); 422 | runOnlyForDeploymentPostprocessing = 0; 423 | shellPath = /bin/sh; 424 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-resources.sh\"\n"; 425 | showEnvVarsInLog = 0; 426 | }; 427 | DA685D6B9EFF3E5D575B7045 /* [CP] Embed Pods Frameworks */ = { 428 | isa = PBXShellScriptBuildPhase; 429 | buildActionMask = 2147483647; 430 | files = ( 431 | ); 432 | inputPaths = ( 433 | ); 434 | name = "[CP] Embed Pods Frameworks"; 435 | outputPaths = ( 436 | ); 437 | runOnlyForDeploymentPostprocessing = 0; 438 | shellPath = /bin/sh; 439 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-frameworks.sh\"\n"; 440 | showEnvVarsInLog = 0; 441 | }; 442 | E814275C03DDD2DD4F0B341F /* [CP] Embed Pods Frameworks */ = { 443 | isa = PBXShellScriptBuildPhase; 444 | buildActionMask = 2147483647; 445 | files = ( 446 | ); 447 | inputPaths = ( 448 | ); 449 | name = "[CP] Embed Pods Frameworks"; 450 | outputPaths = ( 451 | ); 452 | runOnlyForDeploymentPostprocessing = 0; 453 | shellPath = /bin/sh; 454 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-frameworks.sh\"\n"; 455 | showEnvVarsInLog = 0; 456 | }; 457 | /* End PBXShellScriptBuildPhase section */ 458 | 459 | /* Begin PBXSourcesBuildPhase section */ 460 | 607FACCC1AFB9204008FA782 /* Sources */ = { 461 | isa = PBXSourcesBuildPhase; 462 | buildActionMask = 2147483647; 463 | files = ( 464 | 607FACD81AFB9204008FA782 /* ViewController.swift in Sources */, 465 | 607FACD61AFB9204008FA782 /* AppDelegate.swift in Sources */, 466 | ); 467 | runOnlyForDeploymentPostprocessing = 0; 468 | }; 469 | 607FACE11AFB9204008FA782 /* Sources */ = { 470 | isa = PBXSourcesBuildPhase; 471 | buildActionMask = 2147483647; 472 | files = ( 473 | 607FACEC1AFB9204008FA782 /* Tests.swift in Sources */, 474 | ); 475 | runOnlyForDeploymentPostprocessing = 0; 476 | }; 477 | /* End PBXSourcesBuildPhase section */ 478 | 479 | /* Begin PBXTargetDependency section */ 480 | 607FACE71AFB9204008FA782 /* PBXTargetDependency */ = { 481 | isa = PBXTargetDependency; 482 | target = 607FACCF1AFB9204008FA782 /* FileManager-Swift_Example */; 483 | targetProxy = 607FACE61AFB9204008FA782 /* PBXContainerItemProxy */; 484 | }; 485 | /* End PBXTargetDependency section */ 486 | 487 | /* Begin PBXVariantGroup section */ 488 | 607FACD91AFB9204008FA782 /* Main.storyboard */ = { 489 | isa = PBXVariantGroup; 490 | children = ( 491 | 607FACDA1AFB9204008FA782 /* Base */, 492 | ); 493 | name = Main.storyboard; 494 | sourceTree = ""; 495 | }; 496 | 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */ = { 497 | isa = PBXVariantGroup; 498 | children = ( 499 | 607FACDF1AFB9204008FA782 /* Base */, 500 | ); 501 | name = LaunchScreen.xib; 502 | sourceTree = ""; 503 | }; 504 | /* End PBXVariantGroup section */ 505 | 506 | /* Begin XCBuildConfiguration section */ 507 | 607FACED1AFB9204008FA782 /* Debug */ = { 508 | isa = XCBuildConfiguration; 509 | buildSettings = { 510 | ALWAYS_SEARCH_USER_PATHS = NO; 511 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 512 | CLANG_CXX_LIBRARY = "libc++"; 513 | CLANG_ENABLE_MODULES = YES; 514 | CLANG_ENABLE_OBJC_ARC = YES; 515 | CLANG_WARN_BOOL_CONVERSION = YES; 516 | CLANG_WARN_CONSTANT_CONVERSION = YES; 517 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 518 | CLANG_WARN_EMPTY_BODY = YES; 519 | CLANG_WARN_ENUM_CONVERSION = YES; 520 | CLANG_WARN_INFINITE_RECURSION = YES; 521 | CLANG_WARN_INT_CONVERSION = YES; 522 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 523 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 524 | CLANG_WARN_UNREACHABLE_CODE = YES; 525 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 526 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 527 | COPY_PHASE_STRIP = NO; 528 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 529 | ENABLE_STRICT_OBJC_MSGSEND = YES; 530 | ENABLE_TESTABILITY = YES; 531 | GCC_C_LANGUAGE_STANDARD = gnu99; 532 | GCC_DYNAMIC_NO_PIC = NO; 533 | GCC_NO_COMMON_BLOCKS = YES; 534 | GCC_OPTIMIZATION_LEVEL = 0; 535 | GCC_PREPROCESSOR_DEFINITIONS = ( 536 | "DEBUG=1", 537 | "$(inherited)", 538 | ); 539 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 540 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 541 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 542 | GCC_WARN_UNDECLARED_SELECTOR = YES; 543 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 544 | GCC_WARN_UNUSED_FUNCTION = YES; 545 | GCC_WARN_UNUSED_VARIABLE = YES; 546 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 547 | MTL_ENABLE_DEBUG_INFO = YES; 548 | ONLY_ACTIVE_ARCH = YES; 549 | SDKROOT = iphoneos; 550 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 551 | }; 552 | name = Debug; 553 | }; 554 | 607FACEE1AFB9204008FA782 /* Release */ = { 555 | isa = XCBuildConfiguration; 556 | buildSettings = { 557 | ALWAYS_SEARCH_USER_PATHS = NO; 558 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 559 | CLANG_CXX_LIBRARY = "libc++"; 560 | CLANG_ENABLE_MODULES = YES; 561 | CLANG_ENABLE_OBJC_ARC = YES; 562 | CLANG_WARN_BOOL_CONVERSION = YES; 563 | CLANG_WARN_CONSTANT_CONVERSION = YES; 564 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 565 | CLANG_WARN_EMPTY_BODY = YES; 566 | CLANG_WARN_ENUM_CONVERSION = YES; 567 | CLANG_WARN_INFINITE_RECURSION = YES; 568 | CLANG_WARN_INT_CONVERSION = YES; 569 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 570 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 571 | CLANG_WARN_UNREACHABLE_CODE = YES; 572 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 573 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 574 | COPY_PHASE_STRIP = NO; 575 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 576 | ENABLE_NS_ASSERTIONS = NO; 577 | ENABLE_STRICT_OBJC_MSGSEND = YES; 578 | GCC_C_LANGUAGE_STANDARD = gnu99; 579 | GCC_NO_COMMON_BLOCKS = YES; 580 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 581 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 582 | GCC_WARN_UNDECLARED_SELECTOR = YES; 583 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 584 | GCC_WARN_UNUSED_FUNCTION = YES; 585 | GCC_WARN_UNUSED_VARIABLE = YES; 586 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 587 | MTL_ENABLE_DEBUG_INFO = NO; 588 | SDKROOT = iphoneos; 589 | SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; 590 | VALIDATE_PRODUCT = YES; 591 | }; 592 | name = Release; 593 | }; 594 | 607FACF01AFB9204008FA782 /* Debug */ = { 595 | isa = XCBuildConfiguration; 596 | baseConfigurationReference = CB750CB8FAE38943220109EA /* Pods-FileManager-Swift_Example.debug.xcconfig */; 597 | buildSettings = { 598 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 599 | INFOPLIST_FILE = "FileManager-Swift/Info.plist"; 600 | IPHONEOS_DEPLOYMENT_TARGET = 9.0; 601 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 602 | MODULE_NAME = ExampleApp; 603 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; 604 | PRODUCT_NAME = "$(TARGET_NAME)"; 605 | SWIFT_VERSION = 3.0; 606 | }; 607 | name = Debug; 608 | }; 609 | 607FACF11AFB9204008FA782 /* Release */ = { 610 | isa = XCBuildConfiguration; 611 | baseConfigurationReference = ABC5882F3E5A212746AEE5E8 /* Pods-FileManager-Swift_Example.release.xcconfig */; 612 | buildSettings = { 613 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 614 | INFOPLIST_FILE = "FileManager-Swift/Info.plist"; 615 | IPHONEOS_DEPLOYMENT_TARGET = 9.0; 616 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 617 | MODULE_NAME = ExampleApp; 618 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; 619 | PRODUCT_NAME = "$(TARGET_NAME)"; 620 | SWIFT_VERSION = 3.0; 621 | }; 622 | name = Release; 623 | }; 624 | 607FACF31AFB9204008FA782 /* Debug */ = { 625 | isa = XCBuildConfiguration; 626 | baseConfigurationReference = C09B123AE0A5383DAED82228 /* Pods-FileManager-Swift_Tests.debug.xcconfig */; 627 | buildSettings = { 628 | FRAMEWORK_SEARCH_PATHS = ( 629 | "$(SDKROOT)/Developer/Library/Frameworks", 630 | "$(inherited)", 631 | ); 632 | GCC_PREPROCESSOR_DEFINITIONS = ( 633 | "DEBUG=1", 634 | "$(inherited)", 635 | ); 636 | INFOPLIST_FILE = Tests/Info.plist; 637 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 638 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; 639 | PRODUCT_NAME = "$(TARGET_NAME)"; 640 | SWIFT_VERSION = 3.0; 641 | }; 642 | name = Debug; 643 | }; 644 | 607FACF41AFB9204008FA782 /* Release */ = { 645 | isa = XCBuildConfiguration; 646 | baseConfigurationReference = 65BD4FAA19E744A7DA6D1366 /* Pods-FileManager-Swift_Tests.release.xcconfig */; 647 | buildSettings = { 648 | FRAMEWORK_SEARCH_PATHS = ( 649 | "$(SDKROOT)/Developer/Library/Frameworks", 650 | "$(inherited)", 651 | ); 652 | INFOPLIST_FILE = Tests/Info.plist; 653 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 654 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; 655 | PRODUCT_NAME = "$(TARGET_NAME)"; 656 | SWIFT_VERSION = 3.0; 657 | }; 658 | name = Release; 659 | }; 660 | /* End XCBuildConfiguration section */ 661 | 662 | /* Begin XCConfigurationList section */ 663 | 607FACCB1AFB9204008FA782 /* Build configuration list for PBXProject "FileManager-Swift" */ = { 664 | isa = XCConfigurationList; 665 | buildConfigurations = ( 666 | 607FACED1AFB9204008FA782 /* Debug */, 667 | 607FACEE1AFB9204008FA782 /* Release */, 668 | ); 669 | defaultConfigurationIsVisible = 0; 670 | defaultConfigurationName = Release; 671 | }; 672 | 607FACEF1AFB9204008FA782 /* Build configuration list for PBXNativeTarget "FileManager-Swift_Example" */ = { 673 | isa = XCConfigurationList; 674 | buildConfigurations = ( 675 | 607FACF01AFB9204008FA782 /* Debug */, 676 | 607FACF11AFB9204008FA782 /* Release */, 677 | ); 678 | defaultConfigurationIsVisible = 0; 679 | defaultConfigurationName = Release; 680 | }; 681 | 607FACF21AFB9204008FA782 /* Build configuration list for PBXNativeTarget "FileManager-Swift_Tests" */ = { 682 | isa = XCConfigurationList; 683 | buildConfigurations = ( 684 | 607FACF31AFB9204008FA782 /* Debug */, 685 | 607FACF41AFB9204008FA782 /* Release */, 686 | ); 687 | defaultConfigurationIsVisible = 0; 688 | defaultConfigurationName = Release; 689 | }; 690 | /* End XCConfigurationList section */ 691 | }; 692 | rootObject = 607FACC81AFB9204008FA782 /* Project object */; 693 | } 694 | -------------------------------------------------------------------------------- /Example/FileManager-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/FileManager-Swift.xcodeproj/xcshareddata/xcschemes/FileManager-Swift-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 47 | 53 | 54 | 55 | 56 | 57 | 63 | 64 | 65 | 66 | 67 | 68 | 78 | 80 | 86 | 87 | 88 | 89 | 90 | 91 | 97 | 99 | 105 | 106 | 107 | 108 | 110 | 111 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /Example/FileManager-Swift.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/FileManager-Swift.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/FileManager-Swift/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // FileManager-Swift 4 | // 5 | // Created by Mahmoud333 on 07/16/2017. 6 | // Copyright (c) 2017 Mahmoud333. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | @UIApplicationMain 12 | class AppDelegate: UIResponder, UIApplicationDelegate { 13 | 14 | var window: UIWindow? 15 | 16 | 17 | func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 18 | // Override point for customization after application launch. 19 | return true 20 | } 21 | 22 | func applicationWillResignActive(_ application: UIApplication) { 23 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 24 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 25 | } 26 | 27 | func applicationDidEnterBackground(_ application: UIApplication) { 28 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 29 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 30 | } 31 | 32 | func applicationWillEnterForeground(_ application: UIApplication) { 33 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 34 | } 35 | 36 | func applicationDidBecomeActive(_ application: UIApplication) { 37 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 38 | } 39 | 40 | func applicationWillTerminate(_ application: UIApplication) { 41 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 42 | } 43 | 44 | 45 | } 46 | 47 | -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/3gp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/3gp.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/file.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/jpg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/jpg.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/json.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/json.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicator1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicator1.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicator1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicator1@2x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicator1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicator1@3x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicatorchecked1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicatorchecked1.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicatorchecked1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicatorchecked1@2x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/messageindicatorchecked1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/messageindicatorchecked1@3x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/mp4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/mp4.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/pdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/pdf.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/png.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_btn.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_btn@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_btn@2x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_btn@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_btn@3x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_snap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_snap.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_snap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_snap@2x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/send_snap@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/send_snap@3x.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/trash.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/txt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/txt.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/xml.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/xml.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Assets/zip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/Example/FileManager-Swift/Assets/zip.png -------------------------------------------------------------------------------- /Example/FileManager-Swift/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 20 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Example/FileManager-Swift/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /Example/FileManager-Swift/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "20x20", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "20x20", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "29x29", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "29x29", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "40x40", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "40x40", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "size" : "60x60", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "iphone", 40 | "size" : "60x60", 41 | "scale" : "3x" 42 | } 43 | ], 44 | "info" : { 45 | "version" : 1, 46 | "author" : "xcode" 47 | } 48 | } -------------------------------------------------------------------------------- /Example/FileManager-Swift/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /Example/FileManager-Swift/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // FileManager-Swift 4 | // 5 | // Created by Mahmoud333 on 07/16/2017. 6 | // Copyright (c) 2017 Mahmoud333. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import FileManager_Swift 11 | 12 | class ViewController: UIViewController { 13 | 14 | override func viewDidLoad() { 15 | super.viewDidLoad() 16 | // Do any additional setup after loading the view, typically from a nib. 17 | } 18 | 19 | 20 | @IBAction func presentFileManager(_ sender: Any) { 21 | 22 | //customizations.cellType = CellType.titleAndSize And CellType.title 23 | //customizations.headerViewColor = UIColor.green 24 | 25 | let fileManager = FileManagerVC() 26 | 27 | /*//Old Code to pass the Images 28 | fileManager.passImages = [ 29 | "file" : UIImage(named: "file")!, 30 | "zip" : UIImage(named: "zip")!, 31 | "3gp" : UIImage(named: "3gp")!, 32 | "jpg" : UIImage(named: "jpg")!, 33 | "json" : UIImage(named: "json")!, 34 | "mp4" : UIImage(named: "mp4")!, 35 | "pdf" : UIImage(named: "pdf")!, 36 | "png" : UIImage(named: "png")!, 37 | "txt" : UIImage(named: "txt")!, 38 | "xml" : UIImage(named: "xml")!, 39 | 40 | "trash" : UIImage(named: "trash")!, 41 | "mark" : UIImage(named: "messageindicator1")!, 42 | "markChecked" : UIImage(named: "messageindicatorchecked1")!, 43 | "back" : UIImage(named: "send_btn")! 44 | ]*/ 45 | 46 | 47 | present(fileManager, animated: true, completion: nil) 48 | 49 | } 50 | 51 | override func didReceiveMemoryWarning() { 52 | super.didReceiveMemoryWarning() 53 | // Dispose of any resources that can be recreated. 54 | } 55 | 56 | } 57 | 58 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | use_frameworks! 2 | 3 | target 'FileManager-Swift_Example' do 4 | pod 'FileManager-Swift', :path => '../' 5 | 6 | target 'FileManager-Swift_Tests' do 7 | inherit! :search_paths 8 | 9 | 10 | end 11 | end 12 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - FileManager-Swift (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - FileManager-Swift (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | FileManager-Swift: 9 | :path: ../ 10 | 11 | SPEC CHECKSUMS: 12 | FileManager-Swift: 44783a328fe2feb2ab656bb23285a57e4210174d 13 | 14 | PODFILE CHECKSUM: 8e1fe8fa21e810f46d1baaba82147f7eb00dcf9d 15 | 16 | COCOAPODS: 1.2.1 17 | -------------------------------------------------------------------------------- /Example/Pods/Local Podspecs/FileManager-Swift.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "FileManager-Swift", 3 | "version": "0.1.0", 4 | "summary": "A short description of FileManager-Swift.", 5 | "description": "TODO: Add long description of the pod here.", 6 | "homepage": "https://github.com/Mahmoud333/FileManager-Swift", 7 | "license": { 8 | "type": "MIT", 9 | "file": "LICENSE" 10 | }, 11 | "authors": { 12 | "Mahmoud333": "mahmoud_smgl@hotmail.com" 13 | }, 14 | "source": { 15 | "git": "https://github.com/Mahmoud333/FileManager-Swift.git", 16 | "tag": "0.1.0" 17 | }, 18 | "platforms": { 19 | "ios": "8.0" 20 | }, 21 | "source_files": "FileManager-Swift/Classes/**/*" 22 | } 23 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - FileManager-Swift (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - FileManager-Swift (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | FileManager-Swift: 9 | :path: ../ 10 | 11 | SPEC CHECKSUMS: 12 | FileManager-Swift: 44783a328fe2feb2ab656bb23285a57e4210174d 13 | 14 | PODFILE CHECKSUM: 8e1fe8fa21e810f46d1baaba82147f7eb00dcf9d 15 | 16 | COCOAPODS: 1.2.1 17 | -------------------------------------------------------------------------------- /Example/Pods/Pods.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 098F35531514D6EDFB78210E5ADAA5F6 /* Pods-FileManager-Swift_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7681E1E082FB36868D2020C5FE299576 /* Pods-FileManager-Swift_Tests-dummy.m */; }; 11 | 1EB2A4A81F1D8FAC00819A41 /* send_btn.png in Resources */ = {isa = PBXBuildFile; fileRef = 1EB2A4A71F1D8FAC00819A41 /* send_btn.png */; }; 12 | 1ED8FDE91F1C21E60047F1E5 /* icons.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1ED8FDE51F1BE2330047F1E5 /* icons.xcassets */; }; 13 | 1ED8FDEB1F1C2BB90047F1E5 /* send_btn.png in Resources */ = {isa = PBXBuildFile; fileRef = 1ED8FDEA1F1C2BB90047F1E5 /* send_btn.png */; }; 14 | 1EFD3F7320FD4AC1008910BE /* DropShadow+Protocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F6D20FD4AC0008910BE /* DropShadow+Protocol.swift */; }; 15 | 1EFD3F7420FD4AC1008910BE /* FileManagerVC+Constraints.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F6E20FD4AC1008910BE /* FileManagerVC+Constraints.swift */; }; 16 | 1EFD3F7520FD4AC1008910BE /* options.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F6F20FD4AC1008910BE /* options.swift */; }; 17 | 1EFD3F7620FD4AC1008910BE /* enums.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F7020FD4AC1008910BE /* enums.swift */; }; 18 | 1EFD3F7720FD4AC1008910BE /* FileManagerVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F7120FD4AC1008910BE /* FileManagerVC.swift */; }; 19 | 1EFD3F7820FD4AC1008910BE /* Utilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFD3F7220FD4AC1008910BE /* Utilities.swift */; }; 20 | 38F537BA9C4E904B0AEF479766CBDFD6 /* Pods-FileManager-Swift_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 90CA04006D50111FACEF1FC77F432F52 /* Pods-FileManager-Swift_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 21 | 567A0A00801D4AFA43A01A4E3A58B86E /* FileManager-Swift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 381D25D21CFAEF6C6A7F122A83830210 /* FileManager-Swift-dummy.m */; }; 22 | 5A9885078C3562C436980E62F4F8A2D4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; }; 23 | 68F4B23F25F515A4C49DC4A70C4F16B3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; }; 24 | 6E6E984837AF9857760542B68E77BCAD /* FileManager-Swift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C405500B7CC3D45A77BA04D05607A9D2 /* FileManager-Swift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 25 | 751782BB348B93B8CC785F89B03ED18F /* Pods-FileManager-Swift_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A7DD256CEEA6620EFC64BFB29BFBDA1E /* Pods-FileManager-Swift_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 26 | 893A38FB5E7B4ED3E8381BB439B089EA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; }; 27 | A622F957B22D80BE91519D801199E828 /* Pods-FileManager-Swift_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 763F94A1B51CBBE819EB160DABD5DEBD /* Pods-FileManager-Swift_Example-dummy.m */; }; 28 | /* End PBXBuildFile section */ 29 | 30 | /* Begin PBXContainerItemProxy section */ 31 | 61247B7CBDAE1313C54030EED23AF1D5 /* PBXContainerItemProxy */ = { 32 | isa = PBXContainerItemProxy; 33 | containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; 34 | proxyType = 1; 35 | remoteGlobalIDString = 04082D5C6D71C6E77ED10E276F9B7A75; 36 | remoteInfo = "FileManager-Swift"; 37 | }; 38 | /* End PBXContainerItemProxy section */ 39 | 40 | /* Begin PBXFileReference section */ 41 | 07CEC8A0A83B1135142940B81AB1A04E /* Pods-FileManager-Swift_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FileManager-Swift_Example-acknowledgements.plist"; sourceTree = ""; }; 42 | 13B3027573FC96B84CAB8581B7EFFF2C /* Pods-FileManager-Swift_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-FileManager-Swift_Example.modulemap"; sourceTree = ""; }; 43 | 14C984E53638CBE0E3082430D9FBF5F1 /* Pods-FileManager-Swift_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-FileManager-Swift_Tests-acknowledgements.markdown"; sourceTree = ""; }; 44 | 1EB2A4A71F1D8FAC00819A41 /* send_btn.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = send_btn.png; sourceTree = ""; }; 45 | 1ED8FDE51F1BE2330047F1E5 /* icons.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = icons.xcassets; path = Assets/icons.xcassets; sourceTree = ""; }; 46 | 1ED8FDEA1F1C2BB90047F1E5 /* send_btn.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = send_btn.png; sourceTree = ""; }; 47 | 1EFD3F6D20FD4AC0008910BE /* DropShadow+Protocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "DropShadow+Protocol.swift"; sourceTree = ""; }; 48 | 1EFD3F6E20FD4AC1008910BE /* FileManagerVC+Constraints.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "FileManagerVC+Constraints.swift"; sourceTree = ""; }; 49 | 1EFD3F6F20FD4AC1008910BE /* options.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = options.swift; sourceTree = ""; }; 50 | 1EFD3F7020FD4AC1008910BE /* enums.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = enums.swift; sourceTree = ""; }; 51 | 1EFD3F7120FD4AC1008910BE /* FileManagerVC.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FileManagerVC.swift; sourceTree = ""; }; 52 | 1EFD3F7220FD4AC1008910BE /* Utilities.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Utilities.swift; sourceTree = ""; }; 53 | 27C8B6B72E9DEB61EE210933A6969691 /* FileManager-Swift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "FileManager-Swift.modulemap"; sourceTree = ""; }; 54 | 29BE4591C9FB6739FBFAE4F2482B5120 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 55 | 2F8604A4A5A140BDD2EECFFEB1F586D6 /* Pods-FileManager-Swift_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-FileManager-Swift_Example-acknowledgements.markdown"; sourceTree = ""; }; 56 | 381D25D21CFAEF6C6A7F122A83830210 /* FileManager-Swift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FileManager-Swift-dummy.m"; sourceTree = ""; }; 57 | 38F871938F3E9B5DE7AE4976045FB00F /* Pods-FileManager-Swift_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileManager-Swift_Example.debug.xcconfig"; sourceTree = ""; }; 58 | 445AB5944DB92C550BF8EB9BEF9198A2 /* Pods_FileManager_Swift_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FileManager_Swift_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 59 | 45291E255874335C89BA2E23A0F989E3 /* FileManager_Swift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FileManager_Swift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 60 | 53C924E7EC524E2091FECF7FBFC1B654 /* Pods-FileManager-Swift_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FileManager-Swift_Tests-acknowledgements.plist"; sourceTree = ""; }; 61 | 58B9EB024E9B86713DF421658D888E8B /* Pods-FileManager-Swift_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileManager-Swift_Example-frameworks.sh"; sourceTree = ""; }; 62 | 6421C660FB170A426B7E221FE866BAF5 /* Pods_FileManager_Swift_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FileManager_Swift_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 63 | 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 64 | 73CA960079669E842C9F299505BBD465 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 65 | 763F94A1B51CBBE819EB160DABD5DEBD /* Pods-FileManager-Swift_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-FileManager-Swift_Example-dummy.m"; sourceTree = ""; }; 66 | 7681E1E082FB36868D2020C5FE299576 /* Pods-FileManager-Swift_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-FileManager-Swift_Tests-dummy.m"; sourceTree = ""; }; 67 | 7C2D3F9B10459AA5811140B109B00DDC /* Pods-FileManager-Swift_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-FileManager-Swift_Tests.modulemap"; sourceTree = ""; }; 68 | 90CA04006D50111FACEF1FC77F432F52 /* Pods-FileManager-Swift_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-FileManager-Swift_Tests-umbrella.h"; sourceTree = ""; }; 69 | 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 70 | 962396F7698287D845C60EC2D67025F3 /* Pods-FileManager-Swift_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileManager-Swift_Tests.release.xcconfig"; sourceTree = ""; }; 71 | 9C2DF80CBC1719D58EE5A6F5EBC905EB /* Pods-FileManager-Swift_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileManager-Swift_Tests.debug.xcconfig"; sourceTree = ""; }; 72 | 9ED765C779898156785C4F17ABEA1CFE /* Pods-FileManager-Swift_Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileManager-Swift_Tests-resources.sh"; sourceTree = ""; }; 73 | A448D74E4692CBA006F2C6BC4B2782DE /* FileManager-Swift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileManager-Swift-prefix.pch"; sourceTree = ""; }; 74 | A7DD256CEEA6620EFC64BFB29BFBDA1E /* Pods-FileManager-Swift_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-FileManager-Swift_Example-umbrella.h"; sourceTree = ""; }; 75 | A861F1B0ABD4312D7CF95E654AF7AD43 /* Pods-FileManager-Swift_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FileManager-Swift_Example.release.xcconfig"; sourceTree = ""; }; 76 | BFD86435FB505107E393773031AFD554 /* Pods-FileManager-Swift_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileManager-Swift_Tests-frameworks.sh"; sourceTree = ""; }; 77 | C405500B7CC3D45A77BA04D05607A9D2 /* FileManager-Swift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FileManager-Swift-umbrella.h"; sourceTree = ""; }; 78 | CBAB24972C5B0B6AE7FF2411D93869F6 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 79 | DFE9A6EDD54F241148DEF6469900209A /* Pods-FileManager-Swift_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-FileManager-Swift_Example-resources.sh"; sourceTree = ""; }; 80 | E029EC31AB075BE74EA63B62AFCCF5F2 /* FileManager-Swift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "FileManager-Swift.xcconfig"; sourceTree = ""; }; 81 | /* End PBXFileReference section */ 82 | 83 | /* Begin PBXFrameworksBuildPhase section */ 84 | 13F360B15355873601A5323F86326748 /* Frameworks */ = { 85 | isa = PBXFrameworksBuildPhase; 86 | buildActionMask = 2147483647; 87 | files = ( 88 | 68F4B23F25F515A4C49DC4A70C4F16B3 /* Foundation.framework in Frameworks */, 89 | ); 90 | runOnlyForDeploymentPostprocessing = 0; 91 | }; 92 | 221893611FBD55DB41DBAFFFBD0659CA /* Frameworks */ = { 93 | isa = PBXFrameworksBuildPhase; 94 | buildActionMask = 2147483647; 95 | files = ( 96 | 893A38FB5E7B4ED3E8381BB439B089EA /* Foundation.framework in Frameworks */, 97 | ); 98 | runOnlyForDeploymentPostprocessing = 0; 99 | }; 100 | 80735C6F3E74067FF0EC497C9A0375F2 /* Frameworks */ = { 101 | isa = PBXFrameworksBuildPhase; 102 | buildActionMask = 2147483647; 103 | files = ( 104 | 5A9885078C3562C436980E62F4F8A2D4 /* Foundation.framework in Frameworks */, 105 | ); 106 | runOnlyForDeploymentPostprocessing = 0; 107 | }; 108 | /* End PBXFrameworksBuildPhase section */ 109 | 110 | /* Begin PBXGroup section */ 111 | 1ED8FDE41F1BE1FC0047F1E5 /* Assets */ = { 112 | isa = PBXGroup; 113 | children = ( 114 | 1ED8FDEA1F1C2BB90047F1E5 /* send_btn.png */, 115 | 1ED8FDE51F1BE2330047F1E5 /* icons.xcassets */, 116 | ); 117 | name = Assets; 118 | sourceTree = ""; 119 | }; 120 | 34D01939F79FA7EA867257E6D332D436 /* Pods-FileManager-Swift_Example */ = { 121 | isa = PBXGroup; 122 | children = ( 123 | CBAB24972C5B0B6AE7FF2411D93869F6 /* Info.plist */, 124 | 13B3027573FC96B84CAB8581B7EFFF2C /* Pods-FileManager-Swift_Example.modulemap */, 125 | 2F8604A4A5A140BDD2EECFFEB1F586D6 /* Pods-FileManager-Swift_Example-acknowledgements.markdown */, 126 | 07CEC8A0A83B1135142940B81AB1A04E /* Pods-FileManager-Swift_Example-acknowledgements.plist */, 127 | 763F94A1B51CBBE819EB160DABD5DEBD /* Pods-FileManager-Swift_Example-dummy.m */, 128 | 58B9EB024E9B86713DF421658D888E8B /* Pods-FileManager-Swift_Example-frameworks.sh */, 129 | DFE9A6EDD54F241148DEF6469900209A /* Pods-FileManager-Swift_Example-resources.sh */, 130 | A7DD256CEEA6620EFC64BFB29BFBDA1E /* Pods-FileManager-Swift_Example-umbrella.h */, 131 | 38F871938F3E9B5DE7AE4976045FB00F /* Pods-FileManager-Swift_Example.debug.xcconfig */, 132 | A861F1B0ABD4312D7CF95E654AF7AD43 /* Pods-FileManager-Swift_Example.release.xcconfig */, 133 | ); 134 | name = "Pods-FileManager-Swift_Example"; 135 | path = "Target Support Files/Pods-FileManager-Swift_Example"; 136 | sourceTree = ""; 137 | }; 138 | 385F3BF70A14FAA03725CC719D337DBA /* FileManager-Swift */ = { 139 | isa = PBXGroup; 140 | children = ( 141 | 1EB2A4A71F1D8FAC00819A41 /* send_btn.png */, 142 | 1ED8FDE41F1BE1FC0047F1E5 /* Assets */, 143 | DF801BE831BA843194349C3D49D40849 /* Classes */, 144 | ); 145 | path = "FileManager-Swift"; 146 | sourceTree = ""; 147 | }; 148 | 56C167341ED22560644D596F0C6AA3F8 /* Products */ = { 149 | isa = PBXGroup; 150 | children = ( 151 | 45291E255874335C89BA2E23A0F989E3 /* FileManager_Swift.framework */, 152 | 445AB5944DB92C550BF8EB9BEF9198A2 /* Pods_FileManager_Swift_Example.framework */, 153 | 6421C660FB170A426B7E221FE866BAF5 /* Pods_FileManager_Swift_Tests.framework */, 154 | ); 155 | name = Products; 156 | sourceTree = ""; 157 | }; 158 | 7659F4EC137C842596662A481936422D /* FileManager-Swift */ = { 159 | isa = PBXGroup; 160 | children = ( 161 | 385F3BF70A14FAA03725CC719D337DBA /* FileManager-Swift */, 162 | EF7846C699F6FD7B1E510CD380B49C47 /* Support Files */, 163 | ); 164 | name = "FileManager-Swift"; 165 | path = ../..; 166 | sourceTree = ""; 167 | }; 168 | 78F8C0820E51F82DD315FC2C4A56E708 /* Targets Support Files */ = { 169 | isa = PBXGroup; 170 | children = ( 171 | 34D01939F79FA7EA867257E6D332D436 /* Pods-FileManager-Swift_Example */, 172 | 9EA83138D8C81C389D4ACA3610A9AB12 /* Pods-FileManager-Swift_Tests */, 173 | ); 174 | name = "Targets Support Files"; 175 | sourceTree = ""; 176 | }; 177 | 7DB346D0F39D3F0E887471402A8071AB = { 178 | isa = PBXGroup; 179 | children = ( 180 | 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, 181 | E1372FF07198A31D71EAD848783C5D80 /* Development Pods */, 182 | BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */, 183 | 56C167341ED22560644D596F0C6AA3F8 /* Products */, 184 | 78F8C0820E51F82DD315FC2C4A56E708 /* Targets Support Files */, 185 | ); 186 | sourceTree = ""; 187 | }; 188 | 9EA83138D8C81C389D4ACA3610A9AB12 /* Pods-FileManager-Swift_Tests */ = { 189 | isa = PBXGroup; 190 | children = ( 191 | 29BE4591C9FB6739FBFAE4F2482B5120 /* Info.plist */, 192 | 7C2D3F9B10459AA5811140B109B00DDC /* Pods-FileManager-Swift_Tests.modulemap */, 193 | 14C984E53638CBE0E3082430D9FBF5F1 /* Pods-FileManager-Swift_Tests-acknowledgements.markdown */, 194 | 53C924E7EC524E2091FECF7FBFC1B654 /* Pods-FileManager-Swift_Tests-acknowledgements.plist */, 195 | 7681E1E082FB36868D2020C5FE299576 /* Pods-FileManager-Swift_Tests-dummy.m */, 196 | BFD86435FB505107E393773031AFD554 /* Pods-FileManager-Swift_Tests-frameworks.sh */, 197 | 9ED765C779898156785C4F17ABEA1CFE /* Pods-FileManager-Swift_Tests-resources.sh */, 198 | 90CA04006D50111FACEF1FC77F432F52 /* Pods-FileManager-Swift_Tests-umbrella.h */, 199 | 9C2DF80CBC1719D58EE5A6F5EBC905EB /* Pods-FileManager-Swift_Tests.debug.xcconfig */, 200 | 962396F7698287D845C60EC2D67025F3 /* Pods-FileManager-Swift_Tests.release.xcconfig */, 201 | ); 202 | name = "Pods-FileManager-Swift_Tests"; 203 | path = "Target Support Files/Pods-FileManager-Swift_Tests"; 204 | sourceTree = ""; 205 | }; 206 | BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = { 207 | isa = PBXGroup; 208 | children = ( 209 | D35AF013A5F0BAD4F32504907A52519E /* iOS */, 210 | ); 211 | name = Frameworks; 212 | sourceTree = ""; 213 | }; 214 | D35AF013A5F0BAD4F32504907A52519E /* iOS */ = { 215 | isa = PBXGroup; 216 | children = ( 217 | 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */, 218 | ); 219 | name = iOS; 220 | sourceTree = ""; 221 | }; 222 | DF801BE831BA843194349C3D49D40849 /* Classes */ = { 223 | isa = PBXGroup; 224 | children = ( 225 | 1EFD3F6D20FD4AC0008910BE /* DropShadow+Protocol.swift */, 226 | 1EFD3F7020FD4AC1008910BE /* enums.swift */, 227 | 1EFD3F7120FD4AC1008910BE /* FileManagerVC.swift */, 228 | 1EFD3F6E20FD4AC1008910BE /* FileManagerVC+Constraints.swift */, 229 | 1EFD3F6F20FD4AC1008910BE /* options.swift */, 230 | 1EFD3F7220FD4AC1008910BE /* Utilities.swift */, 231 | ); 232 | path = Classes; 233 | sourceTree = ""; 234 | }; 235 | E1372FF07198A31D71EAD848783C5D80 /* Development Pods */ = { 236 | isa = PBXGroup; 237 | children = ( 238 | 7659F4EC137C842596662A481936422D /* FileManager-Swift */, 239 | ); 240 | name = "Development Pods"; 241 | sourceTree = ""; 242 | }; 243 | EF7846C699F6FD7B1E510CD380B49C47 /* Support Files */ = { 244 | isa = PBXGroup; 245 | children = ( 246 | 27C8B6B72E9DEB61EE210933A6969691 /* FileManager-Swift.modulemap */, 247 | E029EC31AB075BE74EA63B62AFCCF5F2 /* FileManager-Swift.xcconfig */, 248 | 381D25D21CFAEF6C6A7F122A83830210 /* FileManager-Swift-dummy.m */, 249 | A448D74E4692CBA006F2C6BC4B2782DE /* FileManager-Swift-prefix.pch */, 250 | C405500B7CC3D45A77BA04D05607A9D2 /* FileManager-Swift-umbrella.h */, 251 | 73CA960079669E842C9F299505BBD465 /* Info.plist */, 252 | ); 253 | name = "Support Files"; 254 | path = "Example/Pods/Target Support Files/FileManager-Swift"; 255 | sourceTree = ""; 256 | }; 257 | /* End PBXGroup section */ 258 | 259 | /* Begin PBXHeadersBuildPhase section */ 260 | 6F15F1A6A991840E9A222FD598A053E1 /* Headers */ = { 261 | isa = PBXHeadersBuildPhase; 262 | buildActionMask = 2147483647; 263 | files = ( 264 | 38F537BA9C4E904B0AEF479766CBDFD6 /* Pods-FileManager-Swift_Tests-umbrella.h in Headers */, 265 | ); 266 | runOnlyForDeploymentPostprocessing = 0; 267 | }; 268 | 8F44FDFC80AF149BE07FD858E59DE15C /* Headers */ = { 269 | isa = PBXHeadersBuildPhase; 270 | buildActionMask = 2147483647; 271 | files = ( 272 | 6E6E984837AF9857760542B68E77BCAD /* FileManager-Swift-umbrella.h in Headers */, 273 | ); 274 | runOnlyForDeploymentPostprocessing = 0; 275 | }; 276 | CFBAF8C972EF9E1F4D0164071CCA75A1 /* Headers */ = { 277 | isa = PBXHeadersBuildPhase; 278 | buildActionMask = 2147483647; 279 | files = ( 280 | 751782BB348B93B8CC785F89B03ED18F /* Pods-FileManager-Swift_Example-umbrella.h in Headers */, 281 | ); 282 | runOnlyForDeploymentPostprocessing = 0; 283 | }; 284 | /* End PBXHeadersBuildPhase section */ 285 | 286 | /* Begin PBXNativeTarget section */ 287 | 04082D5C6D71C6E77ED10E276F9B7A75 /* FileManager-Swift */ = { 288 | isa = PBXNativeTarget; 289 | buildConfigurationList = C85A5783DFEA9EA31BC8CC4B77F87EF6 /* Build configuration list for PBXNativeTarget "FileManager-Swift" */; 290 | buildPhases = ( 291 | 6FDE9C3695DDBC8650F89839B4EE1610 /* Sources */, 292 | 13F360B15355873601A5323F86326748 /* Frameworks */, 293 | 8F44FDFC80AF149BE07FD858E59DE15C /* Headers */, 294 | 1ED8FDE81F1C21DE0047F1E5 /* Resources */, 295 | ); 296 | buildRules = ( 297 | ); 298 | dependencies = ( 299 | ); 300 | name = "FileManager-Swift"; 301 | productName = "FileManager-Swift"; 302 | productReference = 45291E255874335C89BA2E23A0F989E3 /* FileManager_Swift.framework */; 303 | productType = "com.apple.product-type.framework"; 304 | }; 305 | 350840F260D09F6A388FAFF5CB056873 /* Pods-FileManager-Swift_Example */ = { 306 | isa = PBXNativeTarget; 307 | buildConfigurationList = 3DF08B5BC0C9ADDFB03FE59B6389041E /* Build configuration list for PBXNativeTarget "Pods-FileManager-Swift_Example" */; 308 | buildPhases = ( 309 | 9382F952AC1BA05131366424C377CFA5 /* Sources */, 310 | 80735C6F3E74067FF0EC497C9A0375F2 /* Frameworks */, 311 | CFBAF8C972EF9E1F4D0164071CCA75A1 /* Headers */, 312 | ); 313 | buildRules = ( 314 | ); 315 | dependencies = ( 316 | FCDF5E637B853A19E33F677954F39C06 /* PBXTargetDependency */, 317 | ); 318 | name = "Pods-FileManager-Swift_Example"; 319 | productName = "Pods-FileManager-Swift_Example"; 320 | productReference = 445AB5944DB92C550BF8EB9BEF9198A2 /* Pods_FileManager_Swift_Example.framework */; 321 | productType = "com.apple.product-type.framework"; 322 | }; 323 | DA17B26491D64F2299CB58ECE8389C89 /* Pods-FileManager-Swift_Tests */ = { 324 | isa = PBXNativeTarget; 325 | buildConfigurationList = 9677DFA8EABA8B945EE105B4C47928F3 /* Build configuration list for PBXNativeTarget "Pods-FileManager-Swift_Tests" */; 326 | buildPhases = ( 327 | F10A3817024814982341B0D26E77BDC1 /* Sources */, 328 | 221893611FBD55DB41DBAFFFBD0659CA /* Frameworks */, 329 | 6F15F1A6A991840E9A222FD598A053E1 /* Headers */, 330 | ); 331 | buildRules = ( 332 | ); 333 | dependencies = ( 334 | ); 335 | name = "Pods-FileManager-Swift_Tests"; 336 | productName = "Pods-FileManager-Swift_Tests"; 337 | productReference = 6421C660FB170A426B7E221FE866BAF5 /* Pods_FileManager_Swift_Tests.framework */; 338 | productType = "com.apple.product-type.framework"; 339 | }; 340 | /* End PBXNativeTarget section */ 341 | 342 | /* Begin PBXProject section */ 343 | D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { 344 | isa = PBXProject; 345 | attributes = { 346 | LastSwiftUpdateCheck = 0830; 347 | LastUpgradeCheck = 0700; 348 | TargetAttributes = { 349 | 04082D5C6D71C6E77ED10E276F9B7A75 = { 350 | LastSwiftMigration = 0940; 351 | }; 352 | }; 353 | }; 354 | buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; 355 | compatibilityVersion = "Xcode 3.2"; 356 | developmentRegion = English; 357 | hasScannedForEncodings = 0; 358 | knownRegions = ( 359 | en, 360 | ); 361 | mainGroup = 7DB346D0F39D3F0E887471402A8071AB; 362 | productRefGroup = 56C167341ED22560644D596F0C6AA3F8 /* Products */; 363 | projectDirPath = ""; 364 | projectRoot = ""; 365 | targets = ( 366 | 04082D5C6D71C6E77ED10E276F9B7A75 /* FileManager-Swift */, 367 | 350840F260D09F6A388FAFF5CB056873 /* Pods-FileManager-Swift_Example */, 368 | DA17B26491D64F2299CB58ECE8389C89 /* Pods-FileManager-Swift_Tests */, 369 | ); 370 | }; 371 | /* End PBXProject section */ 372 | 373 | /* Begin PBXResourcesBuildPhase section */ 374 | 1ED8FDE81F1C21DE0047F1E5 /* Resources */ = { 375 | isa = PBXResourcesBuildPhase; 376 | buildActionMask = 2147483647; 377 | files = ( 378 | 1ED8FDEB1F1C2BB90047F1E5 /* send_btn.png in Resources */, 379 | 1EB2A4A81F1D8FAC00819A41 /* send_btn.png in Resources */, 380 | 1ED8FDE91F1C21E60047F1E5 /* icons.xcassets in Resources */, 381 | ); 382 | runOnlyForDeploymentPostprocessing = 0; 383 | }; 384 | /* End PBXResourcesBuildPhase section */ 385 | 386 | /* Begin PBXSourcesBuildPhase section */ 387 | 6FDE9C3695DDBC8650F89839B4EE1610 /* Sources */ = { 388 | isa = PBXSourcesBuildPhase; 389 | buildActionMask = 2147483647; 390 | files = ( 391 | 1EFD3F7520FD4AC1008910BE /* options.swift in Sources */, 392 | 1EFD3F7620FD4AC1008910BE /* enums.swift in Sources */, 393 | 1EFD3F7820FD4AC1008910BE /* Utilities.swift in Sources */, 394 | 1EFD3F7720FD4AC1008910BE /* FileManagerVC.swift in Sources */, 395 | 1EFD3F7320FD4AC1008910BE /* DropShadow+Protocol.swift in Sources */, 396 | 1EFD3F7420FD4AC1008910BE /* FileManagerVC+Constraints.swift in Sources */, 397 | 567A0A00801D4AFA43A01A4E3A58B86E /* FileManager-Swift-dummy.m in Sources */, 398 | ); 399 | runOnlyForDeploymentPostprocessing = 0; 400 | }; 401 | 9382F952AC1BA05131366424C377CFA5 /* Sources */ = { 402 | isa = PBXSourcesBuildPhase; 403 | buildActionMask = 2147483647; 404 | files = ( 405 | A622F957B22D80BE91519D801199E828 /* Pods-FileManager-Swift_Example-dummy.m in Sources */, 406 | ); 407 | runOnlyForDeploymentPostprocessing = 0; 408 | }; 409 | F10A3817024814982341B0D26E77BDC1 /* Sources */ = { 410 | isa = PBXSourcesBuildPhase; 411 | buildActionMask = 2147483647; 412 | files = ( 413 | 098F35531514D6EDFB78210E5ADAA5F6 /* Pods-FileManager-Swift_Tests-dummy.m in Sources */, 414 | ); 415 | runOnlyForDeploymentPostprocessing = 0; 416 | }; 417 | /* End PBXSourcesBuildPhase section */ 418 | 419 | /* Begin PBXTargetDependency section */ 420 | FCDF5E637B853A19E33F677954F39C06 /* PBXTargetDependency */ = { 421 | isa = PBXTargetDependency; 422 | name = "FileManager-Swift"; 423 | target = 04082D5C6D71C6E77ED10E276F9B7A75 /* FileManager-Swift */; 424 | targetProxy = 61247B7CBDAE1313C54030EED23AF1D5 /* PBXContainerItemProxy */; 425 | }; 426 | /* End PBXTargetDependency section */ 427 | 428 | /* Begin XCBuildConfiguration section */ 429 | 0497A7AF675EE14219DBD3E3A658B17B /* Release */ = { 430 | isa = XCBuildConfiguration; 431 | baseConfigurationReference = E029EC31AB075BE74EA63B62AFCCF5F2 /* FileManager-Swift.xcconfig */; 432 | buildSettings = { 433 | CLANG_ENABLE_MODULES = YES; 434 | CODE_SIGN_IDENTITY = ""; 435 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 436 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 437 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 438 | CURRENT_PROJECT_VERSION = 1; 439 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 440 | DEFINES_MODULE = YES; 441 | DYLIB_COMPATIBILITY_VERSION = 1; 442 | DYLIB_CURRENT_VERSION = 1; 443 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 444 | ENABLE_STRICT_OBJC_MSGSEND = YES; 445 | GCC_NO_COMMON_BLOCKS = YES; 446 | GCC_PREFIX_HEADER = "Target Support Files/FileManager-Swift/FileManager-Swift-prefix.pch"; 447 | INFOPLIST_FILE = "Target Support Files/FileManager-Swift/Info.plist"; 448 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 449 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 450 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 451 | MODULEMAP_FILE = "Target Support Files/FileManager-Swift/FileManager-Swift.modulemap"; 452 | MTL_ENABLE_DEBUG_INFO = NO; 453 | PRODUCT_NAME = FileManager_Swift; 454 | SDKROOT = iphoneos; 455 | SKIP_INSTALL = YES; 456 | SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; 457 | SWIFT_VERSION = 3.0; 458 | TARGETED_DEVICE_FAMILY = "1,2"; 459 | VERSIONING_SYSTEM = "apple-generic"; 460 | VERSION_INFO_PREFIX = ""; 461 | }; 462 | name = Release; 463 | }; 464 | 0EA6A2CBE293B03B81F6E4B527B088B5 /* Debug */ = { 465 | isa = XCBuildConfiguration; 466 | baseConfigurationReference = 9C2DF80CBC1719D58EE5A6F5EBC905EB /* Pods-FileManager-Swift_Tests.debug.xcconfig */; 467 | buildSettings = { 468 | CODE_SIGN_IDENTITY = ""; 469 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 470 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 471 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 472 | CURRENT_PROJECT_VERSION = 1; 473 | DEBUG_INFORMATION_FORMAT = dwarf; 474 | DEFINES_MODULE = YES; 475 | DYLIB_COMPATIBILITY_VERSION = 1; 476 | DYLIB_CURRENT_VERSION = 1; 477 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 478 | ENABLE_STRICT_OBJC_MSGSEND = YES; 479 | GCC_NO_COMMON_BLOCKS = YES; 480 | INFOPLIST_FILE = "Target Support Files/Pods-FileManager-Swift_Tests/Info.plist"; 481 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 482 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 483 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 484 | MACH_O_TYPE = staticlib; 485 | MODULEMAP_FILE = "Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.modulemap"; 486 | MTL_ENABLE_DEBUG_INFO = YES; 487 | OTHER_LDFLAGS = ""; 488 | OTHER_LIBTOOLFLAGS = ""; 489 | PODS_ROOT = "$(SRCROOT)"; 490 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 491 | PRODUCT_NAME = Pods_FileManager_Swift_Tests; 492 | SDKROOT = iphoneos; 493 | SKIP_INSTALL = YES; 494 | TARGETED_DEVICE_FAMILY = "1,2"; 495 | VERSIONING_SYSTEM = "apple-generic"; 496 | VERSION_INFO_PREFIX = ""; 497 | }; 498 | name = Debug; 499 | }; 500 | 2065F8D701AD200471863EF0456A0F1E /* Debug */ = { 501 | isa = XCBuildConfiguration; 502 | baseConfigurationReference = E029EC31AB075BE74EA63B62AFCCF5F2 /* FileManager-Swift.xcconfig */; 503 | buildSettings = { 504 | CLANG_ENABLE_MODULES = YES; 505 | CODE_SIGN_IDENTITY = ""; 506 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 507 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 508 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 509 | CURRENT_PROJECT_VERSION = 1; 510 | DEBUG_INFORMATION_FORMAT = dwarf; 511 | DEFINES_MODULE = YES; 512 | DYLIB_COMPATIBILITY_VERSION = 1; 513 | DYLIB_CURRENT_VERSION = 1; 514 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 515 | ENABLE_STRICT_OBJC_MSGSEND = YES; 516 | GCC_NO_COMMON_BLOCKS = YES; 517 | GCC_PREFIX_HEADER = "Target Support Files/FileManager-Swift/FileManager-Swift-prefix.pch"; 518 | INFOPLIST_FILE = "Target Support Files/FileManager-Swift/Info.plist"; 519 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 520 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 521 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 522 | MODULEMAP_FILE = "Target Support Files/FileManager-Swift/FileManager-Swift.modulemap"; 523 | MTL_ENABLE_DEBUG_INFO = YES; 524 | PRODUCT_NAME = FileManager_Swift; 525 | SDKROOT = iphoneos; 526 | SKIP_INSTALL = YES; 527 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; 528 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 529 | SWIFT_VERSION = 3.0; 530 | TARGETED_DEVICE_FAMILY = "1,2"; 531 | VERSIONING_SYSTEM = "apple-generic"; 532 | VERSION_INFO_PREFIX = ""; 533 | }; 534 | name = Debug; 535 | }; 536 | 345CC476DF4A7516DBD2220CF5035FF3 /* Debug */ = { 537 | isa = XCBuildConfiguration; 538 | buildSettings = { 539 | ALWAYS_SEARCH_USER_PATHS = NO; 540 | CLANG_ANALYZER_NONNULL = YES; 541 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; 542 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 543 | CLANG_CXX_LIBRARY = "libc++"; 544 | CLANG_ENABLE_MODULES = YES; 545 | CLANG_ENABLE_OBJC_ARC = YES; 546 | CLANG_WARN_BOOL_CONVERSION = YES; 547 | CLANG_WARN_CONSTANT_CONVERSION = YES; 548 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; 549 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 550 | CLANG_WARN_EMPTY_BODY = YES; 551 | CLANG_WARN_ENUM_CONVERSION = YES; 552 | CLANG_WARN_INFINITE_RECURSION = YES; 553 | CLANG_WARN_INT_CONVERSION = YES; 554 | CLANG_WARN_OBJC_ROOT_CLASS = YES; 555 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 556 | CLANG_WARN_UNREACHABLE_CODE = YES; 557 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 558 | CODE_SIGNING_REQUIRED = NO; 559 | COPY_PHASE_STRIP = NO; 560 | ENABLE_TESTABILITY = YES; 561 | GCC_C_LANGUAGE_STANDARD = gnu99; 562 | GCC_DYNAMIC_NO_PIC = NO; 563 | GCC_OPTIMIZATION_LEVEL = 0; 564 | GCC_PREPROCESSOR_DEFINITIONS = ( 565 | "POD_CONFIGURATION_DEBUG=1", 566 | "DEBUG=1", 567 | "$(inherited)", 568 | ); 569 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 570 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 571 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 572 | GCC_WARN_UNDECLARED_SELECTOR = YES; 573 | GCC_WARN_UNINITIALIZED_AUTOS = YES; 574 | GCC_WARN_UNUSED_FUNCTION = YES; 575 | GCC_WARN_UNUSED_VARIABLE = YES; 576 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 577 | ONLY_ACTIVE_ARCH = YES; 578 | PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; 579 | STRIP_INSTALLED_PRODUCT = NO; 580 | SYMROOT = "${SRCROOT}/../build"; 581 | }; 582 | name = Debug; 583 | }; 584 | 717E77604BFBB04BEAF56608A1CB2EDE /* Release */ = { 585 | isa = XCBuildConfiguration; 586 | buildSettings = { 587 | ALWAYS_SEARCH_USER_PATHS = NO; 588 | CLANG_ANALYZER_NONNULL = YES; 589 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; 590 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 591 | CLANG_CXX_LIBRARY = "libc++"; 592 | CLANG_ENABLE_MODULES = YES; 593 | CLANG_ENABLE_OBJC_ARC = YES; 594 | CLANG_WARN_BOOL_CONVERSION = YES; 595 | CLANG_WARN_CONSTANT_CONVERSION = YES; 596 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; 597 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 598 | CLANG_WARN_EMPTY_BODY = YES; 599 | CLANG_WARN_ENUM_CONVERSION = YES; 600 | CLANG_WARN_INFINITE_RECURSION = YES; 601 | CLANG_WARN_INT_CONVERSION = YES; 602 | CLANG_WARN_OBJC_ROOT_CLASS = YES; 603 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 604 | CLANG_WARN_UNREACHABLE_CODE = YES; 605 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 606 | CODE_SIGNING_REQUIRED = NO; 607 | COPY_PHASE_STRIP = YES; 608 | ENABLE_NS_ASSERTIONS = NO; 609 | GCC_C_LANGUAGE_STANDARD = gnu99; 610 | GCC_PREPROCESSOR_DEFINITIONS = ( 611 | "POD_CONFIGURATION_RELEASE=1", 612 | "$(inherited)", 613 | ); 614 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 615 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 616 | GCC_WARN_UNDECLARED_SELECTOR = YES; 617 | GCC_WARN_UNINITIALIZED_AUTOS = YES; 618 | GCC_WARN_UNUSED_FUNCTION = YES; 619 | GCC_WARN_UNUSED_VARIABLE = YES; 620 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 621 | PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; 622 | STRIP_INSTALLED_PRODUCT = NO; 623 | SYMROOT = "${SRCROOT}/../build"; 624 | VALIDATE_PRODUCT = YES; 625 | }; 626 | name = Release; 627 | }; 628 | 965E6646604FDD91E17194510799B088 /* Debug */ = { 629 | isa = XCBuildConfiguration; 630 | baseConfigurationReference = 38F871938F3E9B5DE7AE4976045FB00F /* Pods-FileManager-Swift_Example.debug.xcconfig */; 631 | buildSettings = { 632 | CODE_SIGN_IDENTITY = ""; 633 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 634 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 635 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 636 | CURRENT_PROJECT_VERSION = 1; 637 | DEBUG_INFORMATION_FORMAT = dwarf; 638 | DEFINES_MODULE = YES; 639 | DYLIB_COMPATIBILITY_VERSION = 1; 640 | DYLIB_CURRENT_VERSION = 1; 641 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 642 | ENABLE_STRICT_OBJC_MSGSEND = YES; 643 | GCC_NO_COMMON_BLOCKS = YES; 644 | INFOPLIST_FILE = "Target Support Files/Pods-FileManager-Swift_Example/Info.plist"; 645 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 646 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 647 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 648 | MACH_O_TYPE = staticlib; 649 | MODULEMAP_FILE = "Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.modulemap"; 650 | MTL_ENABLE_DEBUG_INFO = YES; 651 | OTHER_LDFLAGS = ""; 652 | OTHER_LIBTOOLFLAGS = ""; 653 | PODS_ROOT = "$(SRCROOT)"; 654 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 655 | PRODUCT_NAME = Pods_FileManager_Swift_Example; 656 | SDKROOT = iphoneos; 657 | SKIP_INSTALL = YES; 658 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; 659 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 660 | SWIFT_VERSION = 3.0; 661 | TARGETED_DEVICE_FAMILY = "1,2"; 662 | VERSIONING_SYSTEM = "apple-generic"; 663 | VERSION_INFO_PREFIX = ""; 664 | }; 665 | name = Debug; 666 | }; 667 | B1B0BAD6C713735641AB08A89B0F9C65 /* Release */ = { 668 | isa = XCBuildConfiguration; 669 | baseConfigurationReference = 962396F7698287D845C60EC2D67025F3 /* Pods-FileManager-Swift_Tests.release.xcconfig */; 670 | buildSettings = { 671 | CODE_SIGN_IDENTITY = ""; 672 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 673 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 674 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 675 | CURRENT_PROJECT_VERSION = 1; 676 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 677 | DEFINES_MODULE = YES; 678 | DYLIB_COMPATIBILITY_VERSION = 1; 679 | DYLIB_CURRENT_VERSION = 1; 680 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 681 | ENABLE_STRICT_OBJC_MSGSEND = YES; 682 | GCC_NO_COMMON_BLOCKS = YES; 683 | INFOPLIST_FILE = "Target Support Files/Pods-FileManager-Swift_Tests/Info.plist"; 684 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 685 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 686 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 687 | MACH_O_TYPE = staticlib; 688 | MODULEMAP_FILE = "Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.modulemap"; 689 | MTL_ENABLE_DEBUG_INFO = NO; 690 | OTHER_LDFLAGS = ""; 691 | OTHER_LIBTOOLFLAGS = ""; 692 | PODS_ROOT = "$(SRCROOT)"; 693 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 694 | PRODUCT_NAME = Pods_FileManager_Swift_Tests; 695 | SDKROOT = iphoneos; 696 | SKIP_INSTALL = YES; 697 | TARGETED_DEVICE_FAMILY = "1,2"; 698 | VERSIONING_SYSTEM = "apple-generic"; 699 | VERSION_INFO_PREFIX = ""; 700 | }; 701 | name = Release; 702 | }; 703 | FC4AFDA9F5A4C94FAF575ADAAFE6B017 /* Release */ = { 704 | isa = XCBuildConfiguration; 705 | baseConfigurationReference = A861F1B0ABD4312D7CF95E654AF7AD43 /* Pods-FileManager-Swift_Example.release.xcconfig */; 706 | buildSettings = { 707 | CODE_SIGN_IDENTITY = ""; 708 | "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; 709 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; 710 | "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; 711 | CURRENT_PROJECT_VERSION = 1; 712 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 713 | DEFINES_MODULE = YES; 714 | DYLIB_COMPATIBILITY_VERSION = 1; 715 | DYLIB_CURRENT_VERSION = 1; 716 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 717 | ENABLE_STRICT_OBJC_MSGSEND = YES; 718 | GCC_NO_COMMON_BLOCKS = YES; 719 | INFOPLIST_FILE = "Target Support Files/Pods-FileManager-Swift_Example/Info.plist"; 720 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 721 | IPHONEOS_DEPLOYMENT_TARGET = 8.3; 722 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 723 | MACH_O_TYPE = staticlib; 724 | MODULEMAP_FILE = "Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.modulemap"; 725 | MTL_ENABLE_DEBUG_INFO = NO; 726 | OTHER_LDFLAGS = ""; 727 | OTHER_LIBTOOLFLAGS = ""; 728 | PODS_ROOT = "$(SRCROOT)"; 729 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; 730 | PRODUCT_NAME = Pods_FileManager_Swift_Example; 731 | SDKROOT = iphoneos; 732 | SKIP_INSTALL = YES; 733 | SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; 734 | SWIFT_VERSION = 3.0; 735 | TARGETED_DEVICE_FAMILY = "1,2"; 736 | VERSIONING_SYSTEM = "apple-generic"; 737 | VERSION_INFO_PREFIX = ""; 738 | }; 739 | name = Release; 740 | }; 741 | /* End XCBuildConfiguration section */ 742 | 743 | /* Begin XCConfigurationList section */ 744 | 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { 745 | isa = XCConfigurationList; 746 | buildConfigurations = ( 747 | 345CC476DF4A7516DBD2220CF5035FF3 /* Debug */, 748 | 717E77604BFBB04BEAF56608A1CB2EDE /* Release */, 749 | ); 750 | defaultConfigurationIsVisible = 0; 751 | defaultConfigurationName = Release; 752 | }; 753 | 3DF08B5BC0C9ADDFB03FE59B6389041E /* Build configuration list for PBXNativeTarget "Pods-FileManager-Swift_Example" */ = { 754 | isa = XCConfigurationList; 755 | buildConfigurations = ( 756 | 965E6646604FDD91E17194510799B088 /* Debug */, 757 | FC4AFDA9F5A4C94FAF575ADAAFE6B017 /* Release */, 758 | ); 759 | defaultConfigurationIsVisible = 0; 760 | defaultConfigurationName = Release; 761 | }; 762 | 9677DFA8EABA8B945EE105B4C47928F3 /* Build configuration list for PBXNativeTarget "Pods-FileManager-Swift_Tests" */ = { 763 | isa = XCConfigurationList; 764 | buildConfigurations = ( 765 | 0EA6A2CBE293B03B81F6E4B527B088B5 /* Debug */, 766 | B1B0BAD6C713735641AB08A89B0F9C65 /* Release */, 767 | ); 768 | defaultConfigurationIsVisible = 0; 769 | defaultConfigurationName = Release; 770 | }; 771 | C85A5783DFEA9EA31BC8CC4B77F87EF6 /* Build configuration list for PBXNativeTarget "FileManager-Swift" */ = { 772 | isa = XCConfigurationList; 773 | buildConfigurations = ( 774 | 2065F8D701AD200471863EF0456A0F1E /* Debug */, 775 | 0497A7AF675EE14219DBD3E3A658B17B /* Release */, 776 | ); 777 | defaultConfigurationIsVisible = 0; 778 | defaultConfigurationName = Release; 779 | }; 780 | /* End XCConfigurationList section */ 781 | }; 782 | rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; 783 | } 784 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/FileManager-Swift-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_FileManager_Swift : NSObject 3 | @end 4 | @implementation PodsDummy_FileManager_Swift 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/FileManager-Swift-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/FileManager-Swift-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double FileManager_SwiftVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char FileManager_SwiftVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/FileManager-Swift.modulemap: -------------------------------------------------------------------------------- 1 | framework module FileManager_Swift { 2 | umbrella header "FileManager-Swift-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/FileManager-Swift.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" 4 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 5 | PODS_BUILD_DIR = $BUILD_DIR 6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_ROOT = ${SRCROOT} 8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. 9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 10 | SKIP_INSTALL = YES 11 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/FileManager-Swift/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 0.1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## FileManager-Swift 5 | 6 | Copyright (c) 2017 Mahmoud333 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining a copy 9 | of this software and associated documentation files (the "Software"), to deal 10 | in the Software without restriction, including without limitation the rights 11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | copies of the Software, and to permit persons to whom the Software is 13 | furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in 16 | all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | THE SOFTWARE. 25 | 26 | Generated by CocoaPods - https://cocoapods.org 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Copyright (c) 2017 Mahmoud333 <mahmoud_smgl@hotmail.com> 18 | 19 | Permission is hereby granted, free of charge, to any person obtaining a copy 20 | of this software and associated documentation files (the "Software"), to deal 21 | in the Software without restriction, including without limitation the rights 22 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 23 | copies of the Software, and to permit persons to whom the Software is 24 | furnished to do so, subject to the following conditions: 25 | 26 | The above copyright notice and this permission notice shall be included in 27 | all copies or substantial portions of the Software. 28 | 29 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 30 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 31 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 32 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 33 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 34 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 35 | THE SOFTWARE. 36 | 37 | License 38 | MIT 39 | Title 40 | FileManager-Swift 41 | Type 42 | PSGroupSpecifier 43 | 44 | 45 | FooterText 46 | Generated by CocoaPods - https://cocoapods.org 47 | Title 48 | 49 | Type 50 | PSGroupSpecifier 51 | 52 | 53 | StringsTable 54 | Acknowledgements 55 | Title 56 | Acknowledgements 57 | 58 | 59 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_FileManager_Swift_Example : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_FileManager_Swift_Example 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-frameworks.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 5 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 6 | 7 | SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" 8 | 9 | install_framework() 10 | { 11 | if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then 12 | local source="${BUILT_PRODUCTS_DIR}/$1" 13 | elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then 14 | local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" 15 | elif [ -r "$1" ]; then 16 | local source="$1" 17 | fi 18 | 19 | local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 20 | 21 | if [ -L "${source}" ]; then 22 | echo "Symlinked..." 23 | source="$(readlink "${source}")" 24 | fi 25 | 26 | # use filter instead of exclude so missing patterns dont' throw errors 27 | echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" 28 | rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" 29 | 30 | local basename 31 | basename="$(basename -s .framework "$1")" 32 | binary="${destination}/${basename}.framework/${basename}" 33 | if ! [ -r "$binary" ]; then 34 | binary="${destination}/${basename}" 35 | fi 36 | 37 | # Strip invalid architectures so "fat" simulator / device frameworks work on device 38 | if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then 39 | strip_invalid_archs "$binary" 40 | fi 41 | 42 | # Resign the code if required by the build settings to avoid unstable apps 43 | code_sign_if_enabled "${destination}/$(basename "$1")" 44 | 45 | # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. 46 | if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then 47 | local swift_runtime_libs 48 | swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) 49 | for lib in $swift_runtime_libs; do 50 | echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" 51 | rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" 52 | code_sign_if_enabled "${destination}/${lib}" 53 | done 54 | fi 55 | } 56 | 57 | # Signs a framework with the provided identity 58 | code_sign_if_enabled() { 59 | if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then 60 | # Use the current code_sign_identitiy 61 | echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" 62 | local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'" 63 | 64 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 65 | code_sign_cmd="$code_sign_cmd &" 66 | fi 67 | echo "$code_sign_cmd" 68 | eval "$code_sign_cmd" 69 | fi 70 | } 71 | 72 | # Strip invalid architectures 73 | strip_invalid_archs() { 74 | binary="$1" 75 | # Get architectures for current file 76 | archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" 77 | stripped="" 78 | for arch in $archs; do 79 | if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then 80 | # Strip non-valid architectures in-place 81 | lipo -remove "$arch" -output "$binary" "$binary" || exit 1 82 | stripped="$stripped $arch" 83 | fi 84 | done 85 | if [[ "$stripped" ]]; then 86 | echo "Stripped $binary of architectures:$stripped" 87 | fi 88 | } 89 | 90 | 91 | if [[ "$CONFIGURATION" == "Debug" ]]; then 92 | install_framework "$BUILT_PRODUCTS_DIR/FileManager-Swift/FileManager_Swift.framework" 93 | fi 94 | if [[ "$CONFIGURATION" == "Release" ]]; then 95 | install_framework "$BUILT_PRODUCTS_DIR/FileManager-Swift/FileManager_Swift.framework" 96 | fi 97 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 98 | wait 99 | fi 100 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | XCASSET_FILES=() 10 | 11 | case "${TARGETED_DEVICE_FAMILY}" in 12 | 1,2) 13 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 14 | ;; 15 | 1) 16 | TARGET_DEVICE_ARGS="--target-device iphone" 17 | ;; 18 | 2) 19 | TARGET_DEVICE_ARGS="--target-device ipad" 20 | ;; 21 | 3) 22 | TARGET_DEVICE_ARGS="--target-device tv" 23 | ;; 24 | 4) 25 | TARGET_DEVICE_ARGS="--target-device watch" 26 | ;; 27 | *) 28 | TARGET_DEVICE_ARGS="--target-device mac" 29 | ;; 30 | esac 31 | 32 | install_resource() 33 | { 34 | if [[ "$1" = /* ]] ; then 35 | RESOURCE_PATH="$1" 36 | else 37 | RESOURCE_PATH="${PODS_ROOT}/$1" 38 | fi 39 | if [[ ! -e "$RESOURCE_PATH" ]] ; then 40 | cat << EOM 41 | error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. 42 | EOM 43 | exit 1 44 | fi 45 | case $RESOURCE_PATH in 46 | *.storyboard) 47 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" 48 | ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} 49 | ;; 50 | *.xib) 51 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" 52 | ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} 53 | ;; 54 | *.framework) 55 | echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 56 | mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 57 | echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 58 | rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 59 | ;; 60 | *.xcdatamodel) 61 | echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" 62 | xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" 63 | ;; 64 | *.xcdatamodeld) 65 | echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" 66 | xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" 67 | ;; 68 | *.xcmappingmodel) 69 | echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" 70 | xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" 71 | ;; 72 | *.xcassets) 73 | ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" 74 | XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") 75 | ;; 76 | *) 77 | echo "$RESOURCE_PATH" 78 | echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" 79 | ;; 80 | esac 81 | } 82 | 83 | mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 84 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 85 | if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then 86 | mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 87 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 88 | fi 89 | rm -f "$RESOURCES_TO_COPY" 90 | 91 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] 92 | then 93 | # Find all other xcassets (this unfortunately includes those of path pods and other targets). 94 | OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) 95 | while read line; do 96 | if [[ $line != "${PODS_ROOT}*" ]]; then 97 | XCASSET_FILES+=("$line") 98 | fi 99 | done <<<"$OTHER_XCASSETS" 100 | 101 | printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 102 | fi 103 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_FileManager_Swift_ExampleVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_FileManager_Swift_ExampleVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.debug.xcconfig: -------------------------------------------------------------------------------- 1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 5 | OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift/FileManager_Swift.framework/Headers" 6 | OTHER_LDFLAGS = $(inherited) -framework "FileManager_Swift" 7 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 8 | PODS_BUILD_DIR = $BUILD_DIR 9 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 10 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 11 | PODS_ROOT = ${SRCROOT}/Pods 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_FileManager_Swift_Example { 2 | umbrella header "Pods-FileManager-Swift_Example-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Example/Pods-FileManager-Swift_Example.release.xcconfig: -------------------------------------------------------------------------------- 1 | ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 5 | OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift/FileManager_Swift.framework/Headers" 6 | OTHER_LDFLAGS = $(inherited) -framework "FileManager_Swift" 7 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 8 | PODS_BUILD_DIR = $BUILD_DIR 9 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 10 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 11 | PODS_ROOT = ${SRCROOT}/Pods 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | Generated by CocoaPods - https://cocoapods.org 4 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Generated by CocoaPods - https://cocoapods.org 18 | Title 19 | 20 | Type 21 | PSGroupSpecifier 22 | 23 | 24 | StringsTable 25 | Acknowledgements 26 | Title 27 | Acknowledgements 28 | 29 | 30 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_FileManager_Swift_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_FileManager_Swift_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-frameworks.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 5 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 6 | 7 | SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" 8 | 9 | install_framework() 10 | { 11 | if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then 12 | local source="${BUILT_PRODUCTS_DIR}/$1" 13 | elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then 14 | local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" 15 | elif [ -r "$1" ]; then 16 | local source="$1" 17 | fi 18 | 19 | local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 20 | 21 | if [ -L "${source}" ]; then 22 | echo "Symlinked..." 23 | source="$(readlink "${source}")" 24 | fi 25 | 26 | # use filter instead of exclude so missing patterns dont' throw errors 27 | echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" 28 | rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" 29 | 30 | local basename 31 | basename="$(basename -s .framework "$1")" 32 | binary="${destination}/${basename}.framework/${basename}" 33 | if ! [ -r "$binary" ]; then 34 | binary="${destination}/${basename}" 35 | fi 36 | 37 | # Strip invalid architectures so "fat" simulator / device frameworks work on device 38 | if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then 39 | strip_invalid_archs "$binary" 40 | fi 41 | 42 | # Resign the code if required by the build settings to avoid unstable apps 43 | code_sign_if_enabled "${destination}/$(basename "$1")" 44 | 45 | # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. 46 | if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then 47 | local swift_runtime_libs 48 | swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) 49 | for lib in $swift_runtime_libs; do 50 | echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" 51 | rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" 52 | code_sign_if_enabled "${destination}/${lib}" 53 | done 54 | fi 55 | } 56 | 57 | # Signs a framework with the provided identity 58 | code_sign_if_enabled() { 59 | if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then 60 | # Use the current code_sign_identitiy 61 | echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" 62 | local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'" 63 | 64 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 65 | code_sign_cmd="$code_sign_cmd &" 66 | fi 67 | echo "$code_sign_cmd" 68 | eval "$code_sign_cmd" 69 | fi 70 | } 71 | 72 | # Strip invalid architectures 73 | strip_invalid_archs() { 74 | binary="$1" 75 | # Get architectures for current file 76 | archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" 77 | stripped="" 78 | for arch in $archs; do 79 | if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then 80 | # Strip non-valid architectures in-place 81 | lipo -remove "$arch" -output "$binary" "$binary" || exit 1 82 | stripped="$stripped $arch" 83 | fi 84 | done 85 | if [[ "$stripped" ]]; then 86 | echo "Stripped $binary of architectures:$stripped" 87 | fi 88 | } 89 | 90 | if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then 91 | wait 92 | fi 93 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | XCASSET_FILES=() 10 | 11 | case "${TARGETED_DEVICE_FAMILY}" in 12 | 1,2) 13 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 14 | ;; 15 | 1) 16 | TARGET_DEVICE_ARGS="--target-device iphone" 17 | ;; 18 | 2) 19 | TARGET_DEVICE_ARGS="--target-device ipad" 20 | ;; 21 | 3) 22 | TARGET_DEVICE_ARGS="--target-device tv" 23 | ;; 24 | 4) 25 | TARGET_DEVICE_ARGS="--target-device watch" 26 | ;; 27 | *) 28 | TARGET_DEVICE_ARGS="--target-device mac" 29 | ;; 30 | esac 31 | 32 | install_resource() 33 | { 34 | if [[ "$1" = /* ]] ; then 35 | RESOURCE_PATH="$1" 36 | else 37 | RESOURCE_PATH="${PODS_ROOT}/$1" 38 | fi 39 | if [[ ! -e "$RESOURCE_PATH" ]] ; then 40 | cat << EOM 41 | error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. 42 | EOM 43 | exit 1 44 | fi 45 | case $RESOURCE_PATH in 46 | *.storyboard) 47 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" 48 | ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} 49 | ;; 50 | *.xib) 51 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" 52 | ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} 53 | ;; 54 | *.framework) 55 | echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 56 | mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 57 | echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 58 | rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 59 | ;; 60 | *.xcdatamodel) 61 | echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" 62 | xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" 63 | ;; 64 | *.xcdatamodeld) 65 | echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" 66 | xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" 67 | ;; 68 | *.xcmappingmodel) 69 | echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" 70 | xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" 71 | ;; 72 | *.xcassets) 73 | ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" 74 | XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") 75 | ;; 76 | *) 77 | echo "$RESOURCE_PATH" 78 | echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" 79 | ;; 80 | esac 81 | } 82 | 83 | mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 84 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 85 | if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then 86 | mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 87 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 88 | fi 89 | rm -f "$RESOURCES_TO_COPY" 90 | 91 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] 92 | then 93 | # Find all other xcassets (this unfortunately includes those of path pods and other targets). 94 | OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) 95 | while read line; do 96 | if [[ $line != "${PODS_ROOT}*" ]]; then 97 | XCASSET_FILES+=("$line") 98 | fi 99 | done <<<"$OTHER_XCASSETS" 100 | 101 | printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 102 | fi 103 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_FileManager_Swift_TestsVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_FileManager_Swift_TestsVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.debug.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 4 | OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift/FileManager_Swift.framework/Headers" 5 | PODS_BUILD_DIR = $BUILD_DIR 6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_FileManager_Swift_Tests { 2 | umbrella header "Pods-FileManager-Swift_Tests-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-FileManager-Swift_Tests/Pods-FileManager-Swift_Tests.release.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 4 | OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/FileManager-Swift/FileManager_Swift.framework/Headers" 5 | PODS_BUILD_DIR = $BUILD_DIR 6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Example/Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /Example/Tests/Tests.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | import XCTest 3 | //import FileManager-Swift 4 | 5 | class Tests: XCTestCase { 6 | 7 | override func setUp() { 8 | super.setUp() 9 | // Put setup code here. This method is called before the invocation of each test method in the class. 10 | } 11 | 12 | override func tearDown() { 13 | // Put teardown code here. This method is called after the invocation of each test method in the class. 14 | super.tearDown() 15 | } 16 | 17 | func testExample() { 18 | // This is an example of a functional test case. 19 | XCTAssert(true, "Pass") 20 | } 21 | 22 | func testPerformanceExample() { 23 | // This is an example of a performance test case. 24 | self.measure() { 25 | // Put the code you want to measure the time of here. 26 | } 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /FileManager-Swift.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint FileManager-Swift.podspec' to ensure this is a 3 | # valid spec before submitting. 4 | # 5 | # Any lines starting with a # are optional, but their use is encouraged 6 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 7 | # 8 | 9 | Pod::Spec.new do |s| 10 | s.name = 'FileManager-Swift' 11 | s.version = '0.4.1' 12 | s.summary = 'FileManager for ios apps that involves downloading contents.' 13 | 14 | # This description is used to generate tags and improve search results. 15 | # * Think: What does it do? Why did you write it? What is the focus? 16 | # * Try to keep it short, snappy and to the point. 17 | # * Write the description between the DESC delimiters below. 18 | # * Finally, don't worry about the indent, CocoaPods strips it! 19 | 20 | s.description = <<-DESC 21 | FileManager for ios apps that involves downloading contents, Install library to project, never have to write and make your file manager, pod made entirely by code without using storyboard which makes it easier for anyone to use, implement, support all screen sizes and can work for projects that doesn't use storyboards! 22 | DESC 23 | 24 | s.homepage = 'https://github.com/Mahmoud333/FileManager-Swift' 25 | #s.screenshots = 'https://ibb.co/kW3dsv', 'https://ibb.co/d2tYQF','https://ibb.co/mbk2Ka' 26 | s.license = { :type => 'MIT', :file => 'LICENSE' } 27 | s.author = { 'Mahmoud333' => 'mahmoud_smgl@hotmail.com' } 28 | s.source = { :git => 'https://github.com/Mahmoud333/FileManager-Swift.git', :tag => s.version.to_s } 29 | s.social_media_url = 'https://twitter.com/MahmoudSMGL' 30 | 31 | s.ios.deployment_target = '9.0' 32 | 33 | s.source_files = 'FileManager-Swift/Classes/**/*' 34 | 35 | s.resource_bundles = { 36 | #'FileManager-Swift' => ['FileManager-Swift/Assets/*.png', 'FileManager-Swift/Assets/icons.xcassets'] 37 | #'FileManager-Swift' => ['FileManager-Swift/Assets/icons.xcassets'] 38 | } 39 | 40 | # s.public_header_files = 'Pod/Classes/**/*.h' 41 | s.frameworks = 'UIKit' 42 | # s.dependency 'AFNetworking', '~> 2.3' 43 | end 44 | -------------------------------------------------------------------------------- /FileManager-Swift/Assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/.gitkeep -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/3gp.imageset/3gp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/3gp.imageset/3gp.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/3gp.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "3gp.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/file.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "file.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/file.imageset/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/file.imageset/file.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/jpg.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "jpg.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/jpg.imageset/jpg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/jpg.imageset/jpg.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/json_file.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "json_file.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/json_file.imageset/json_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/json_file.imageset/json_file.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "messageindicator1.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "messageindicator1@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "messageindicator1@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1@2x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicator1.imageset/messageindicator1@3x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "messageindicatorchecked1.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "messageindicatorchecked1@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "messageindicatorchecked1@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1@2x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/messageindicatorchecked1.imageset/messageindicatorchecked1@3x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/mp4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "mp4.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/mp4.imageset/mp4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/mp4.imageset/mp4.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/pdf.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "pdf.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/pdf.imageset/pdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/pdf.imageset/pdf.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/png.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "png.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/png.imageset/png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/png.imageset/png.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "send_btn.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "send_btn@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "send_btn@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn@2x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_btn.imageset/send_btn@3x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "send_snap.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "send_snap@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "send_snap@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap@2x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/send_snap.imageset/send_snap@3x.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/trash.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "trash.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/trash.imageset/trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/trash.imageset/trash.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/txt.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "txt.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/txt.imageset/txt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/txt.imageset/txt.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/xml.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "xml.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/xml.imageset/xml.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/xml.imageset/xml.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/zip.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "zip.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /FileManager-Swift/Assets/icons.xcassets/zip.imageset/zip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/icons.xcassets/zip.imageset/zip.png -------------------------------------------------------------------------------- /FileManager-Swift/Assets/send_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Assets/send_btn.png -------------------------------------------------------------------------------- /FileManager-Swift/Classes/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/Classes/.gitkeep -------------------------------------------------------------------------------- /FileManager-Swift/Classes/DropShadow+Protocol.swift: -------------------------------------------------------------------------------- 1 | // 2 | // DropShadow+Protocol.swift 3 | // Pods 4 | // 5 | // Created by Mahmoud Hamad on 7/16/17. 6 | // 7 | // 8 | 9 | import UIKit 10 | 11 | protocol DropShadow{} 12 | 13 | extension DropShadow where Self: UIView { 14 | 15 | func addDropShadowSMGL(){ 16 | let SHADOW_GRAY: CGFloat = 120.0/255.0 //Color For Shadow 17 | 18 | layer.shadowColor = UIColor(red: SHADOW_GRAY, green: SHADOW_GRAY, blue: SHADOW_GRAY, alpha: 0.6).cgColor 19 | layer.shadowOpacity = 0.8 20 | layer.shadowRadius = 5.0 //How far it blurs out / shadow spans out 21 | layer.shadowOffset = CGSize(width: 1.0, height: 1.0) //ta5od curve lt7t 22 | } 23 | } 24 | 25 | 26 | class FancyView: UIView, DropShadow { 27 | 28 | @IBInspectable var addShadow: Bool = false { 29 | didSet { 30 | if addShadow == true { 31 | addDropShadowSMGL() 32 | } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /FileManager-Swift/Classes/FileManagerVC+Constraints.swift: -------------------------------------------------------------------------------- 1 | // 2 | // FileManagerVC+Constraints.swift 3 | // NoorMagazine 4 | // 5 | // Created by Mahmoud Hamad on 7/13/17. 6 | // Copyright © 2017 yassin abdelmaguid. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | //Configuer Our views 12 | @available(iOS 9.0, *) 13 | extension FileManagerVC { 14 | 15 | func configuerHeaderView() -> FancyView { 16 | let view = FancyView() 17 | view.backgroundColor = customizations.headerViewColor ?? UIColor.purple 18 | view.translatesAutoresizingMaskIntoConstraints = false 19 | view.addShadow = true 20 | return view 21 | } 22 | 23 | func configuerCollectionView() -> UICollectionView { 24 | let flow = UICollectionViewFlowLayout() 25 | flow.sectionInset = UIEdgeInsetsMake(14, 20, 14, 20) 26 | //let width = UIScreen.main.bounds.size.width 27 | //flow?.itemSize = CGSize(width: width/3, height: width/3) 28 | flow.itemSize = CGSize(width: 140, height: 140) 29 | flow.minimumLineSpacing = 14 30 | flow.minimumInteritemSpacing = 14 31 | flow.scrollDirection = .vertical 32 | let cV = UICollectionView(frame: CGRect(x: 0, y: 0, width: 0, height: 0), collectionViewLayout: flow) 33 | cV.allowsMultipleSelection = true 34 | cV.translatesAutoresizingMaskIntoConstraints = false 35 | cV.backgroundColor = UIColor.clear 36 | 37 | return cV 38 | } 39 | 40 | func configuerMarkBtn() -> UIButton { 41 | let btn = UIButton(type: .system) 42 | btn.setTitle(" Mark", for: .normal) 43 | btn.setTitleColor( UIColor.lightGray, for: .normal) 44 | btn.frame.size = CGSize(width: 48, height: 38) 45 | 46 | 47 | btn.translatesAutoresizingMaskIntoConstraints = false 48 | //btn.titleLabel?.font = UIFont(name: "Avenir", size: 18) 49 | btn.titleLabel?.font = UIFont.systemFont(ofSize: 19) 50 | btn.setImage( UIImage(named: "messageindicator1.png"), for: .normal) 51 | btn.layer.cornerRadius = 5 52 | btn.backgroundColor = UIColor.clear 53 | btn.addTarget(self, action: #selector(markTapped), for: .touchUpInside) 54 | btn.tintColor = UIColor.gray 55 | return btn 56 | } 57 | 58 | func configuerDeleteBtn() -> UIButton { 59 | let btn = UIButton(type: .system) 60 | btn.setTitle("Delete", for: .normal) 61 | btn.setTitleColor( UIColor.lightGray, for: .normal) 62 | btn.frame.size = CGSize(width: 48, height: 38) 63 | btn.setImage( UIImage(named: "trash"), for: .normal) 64 | 65 | btn.translatesAutoresizingMaskIntoConstraints = false 66 | //btn.titleLabel?.font = UIFont(name: "Avenir", size: 18) 67 | btn.titleLabel?.font = UIFont.systemFont(ofSize: 19) 68 | btn.layer.cornerRadius = 5 69 | btn.backgroundColor = UIColor.clear 70 | btn.addTarget(self, action: #selector(deleteFilesPressed), for: .touchUpInside) 71 | btn.tintColor = UIColor.gray 72 | return btn 73 | } 74 | 75 | func configuerBackBtn() -> UIButton { 76 | let btn = UIButton(type: .system) 77 | btn.setTitle(" Back", for: .normal) 78 | btn.setTitleColor( UIColor.lightGray, for: .normal) 79 | btn.contentVerticalAlignment = .fill 80 | btn.contentHorizontalAlignment = .fill 81 | //btn.setImage(UIImage.make(name: "send_btn"), for: .normal) 82 | btn.setImage(UIImage(named: "send_btn"), for: .normal) 83 | //btn.setImage(FileManagerVC._imagess["back"], for: .normal) 84 | 85 | btn.frame.size = CGSize(width: 48, height: 38) 86 | 87 | btn.translatesAutoresizingMaskIntoConstraints = false 88 | //btn.titleLabel?.font = UIFont(name: "Avenir", size: 18) 89 | btn.titleLabel?.font = UIFont.systemFont(ofSize: 19) 90 | btn.layer.cornerRadius = 5 91 | btn.backgroundColor = UIColor.clear 92 | btn.addTarget(self, action: #selector(backTapped), for: .touchUpInside) 93 | btn.tintColor = UIColor.gray 94 | return btn 95 | } 96 | } 97 | 98 | //Constraints 99 | @available(iOS 9.0, *) 100 | extension FileManagerVC { 101 | 102 | //Important 103 | func setCollectionViewConstraints() { //handle x , y, width and height 104 | collectionView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor).isActive = true 105 | collectionView.topAnchor.constraint(equalTo: headerView.bottomAnchor).isActive = true 106 | collectionView.bottomAnchor.constraint(equalTo: self.view.bottomAnchor).isActive = true 107 | collectionView.widthAnchor.constraint(equalTo: view.widthAnchor).isActive = true 108 | } 109 | 110 | func setButtonsContrainsts() { //handle x , y, width and height 111 | backBtn.bottomAnchor.constraint(equalTo: headerView.bottomAnchor, constant: -8).isActive = true 112 | backBtn.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 13).isActive = true 113 | 114 | deleteBtn.bottomAnchor.constraint(equalTo: headerView.bottomAnchor, constant: -8).isActive = true 115 | deleteBtn.rightAnchor.constraint(equalTo: view.rightAnchor, constant: -14).isActive = true 116 | 117 | markBTN.bottomAnchor.constraint(equalTo: headerView.bottomAnchor, constant: -8).isActive = true 118 | markBTN.rightAnchor.constraint(equalTo: deleteBtn.leftAnchor, constant: -17).isActive = true 119 | } 120 | 121 | func setHeaderViewConstraints(){ //handle x , y, width and height 122 | headerView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor).isActive = true 123 | headerView.topAnchor.constraint(equalTo: view.topAnchor).isActive = true 124 | headerView.widthAnchor.constraint(equalTo: view.widthAnchor).isActive = true 125 | headerView.heightAnchor.constraint(equalToConstant: 70).isActive = true 126 | } 127 | } 128 | 129 | @available(iOS 9.0, *) 130 | extension FileManagerVC { 131 | ///////////////////////////////////// 132 | func AlertDismiss(t: String, msg: String, yesCompletion: @escaping () -> ()) { 133 | let ac = UIAlertController(title: t, message: msg, preferredStyle: .alert) 134 | ac.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil)) 135 | ac.addAction(UIAlertAction(title: "Yes", style: .default, handler: { (alert: UIAlertAction) in 136 | //self.dismiss(animated: true, completion: nil) 137 | yesCompletion() 138 | })) 139 | self.present(ac, animated: true, completion: nil) 140 | } 141 | } 142 | 143 | @available(iOS 9.0, *) 144 | public extension UIImage { 145 | static func make(name: String) -> UIImage? { 146 | let bundle = Bundle(for: FileManagerVC.self) 147 | 148 | debugFM("\(contentsOfDirectoryAtPath(path: "\(Bundle(for: FileManagerVC.self).bundlePath)"))") 149 | debugFM("\(Bundle(for: FileManagerVC.self).bundlePath)/FileManager_Swift") 150 | debugFM("FileManager_Swift/Assets/\(name).xcassets/\(name)") 151 | 152 | 153 | 154 | //return UIImage(named: "FileManager-Swift/Assets/\(name).xcassets/\(name).imageset/\(name)", in: bundle, compatibleWith: nil) 155 | 156 | //return UIImage(named: "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/send_btn.png", in: bundle, compatibleWith: nil) 157 | 158 | let url = URL(fileURLWithPath: "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/").appendingPathComponent(name) 159 | return UIImage(contentsOfFile: "\(url)") 160 | } 161 | } 162 | 163 | 164 | /* 165 | ["/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/976A33C2-21DA-4EAF-94B5-2652C9B23A15/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/_CodeSignature", 166 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/976A33C2-21DA-4EAF-94B5-2652C9B23A15/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/FileManager_Swift", 167 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/976A33C2-21DA-4EAF-94B5-2652C9B23A15/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/Info.plist"] 168 | 169 | */ 170 | /* 171 | ["/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/_CodeSignature", 172 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/Assets.car", 173 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/FileManager_Swift", 174 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/Info.plist", 175 | "/Users/Mahmoud/Library/Developer/CoreSimulator/Devices/57E06727-662D-44F0-8A8D-83DA6B8776A9/data/Containers/Bundle/Application/10B539AB-038D-482B-A6B8-476CD929B841/FileManager-Swift_Example.app/Frameworks/FileManager_Swift.framework/send_btn.png"]) 176 | */ 177 | 178 | -------------------------------------------------------------------------------- /FileManager-Swift/Classes/FileManagerVC.swift: -------------------------------------------------------------------------------- 1 | // 2 | // FileManagerVC.swift 3 | // NoorMagazine 4 | // 5 | // Created by mac on 7/12/17. 6 | // Copyright © 2017 yassin abdelmaguid. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | 12 | //Controller - FileManagerVC 13 | @available(iOS 9.0, *) 14 | public class FileManagerVC: UIViewController { 15 | 16 | var filess = [File]() 17 | 18 | var ourDirectory: String? //our app my computer 19 | 20 | var ourPathSteps = [String]() //every time we go inside folder will append its path & when press back will remove last path from array and go to last path before deleted one 21 | //acts like a history for us 22 | 23 | var currentPath: String? 24 | //switches 25 | var markIs = false { 26 | didSet { 27 | markBTN.setTitleColor(markIs == true ? UIColor.white : UIColor.lightGray, for: .normal) 28 | markBTN.setImage(markIs == true ? UIImage(named: "messageindicatorchecked1") : UIImage(named: "messageindicator1"), for: .normal) 29 | } 30 | } 31 | 32 | var markedFiles = [File]() { //files we marked and will deleted them 33 | didSet { 34 | deleteBtn.setTitleColor(markedFiles.count > 0 ? UIColor.white : UIColor.lightGray, for: .normal) 35 | } 36 | } 37 | 38 | lazy var headerView: FancyView = self.configuerHeaderView() 39 | lazy var collectionView: UICollectionView = self.configuerCollectionView() 40 | lazy var markBTN: UIButton = self.configuerMarkBtn() 41 | lazy var deleteBtn: UIButton = self.configuerDeleteBtn() 42 | lazy var backBtn: UIButton = self.configuerBackBtn() 43 | 44 | override public func viewDidLoad() { 45 | super.viewDidLoad() 46 | view.backgroundColor = UIColor.white 47 | 48 | collectionView.delegate = self; collectionView.dataSource = self 49 | view.addSubview(collectionView) 50 | view.addSubview(headerView) 51 | view.addSubview(markBTN) 52 | view.addSubview(backBtn) 53 | view.addSubview(deleteBtn) 54 | 55 | setHeaderViewConstraints() 56 | setCollectionViewConstraints() 57 | setButtonsContrainsts() 58 | 59 | //register our cell 60 | collectionView.register(FileCell.self, forCellWithReuseIdentifier: "FileCell") 61 | 62 | ourDirectory = getDirectoryPath() 63 | //ourPathSteps.append(ourDirectory!) dont need it but keep it 27teate 64 | 65 | debugFM("\(ourDirectory)") 66 | 67 | readFilesHere(path: ourDirectory!) 68 | } 69 | 70 | func readFilesHere(path: String) { //dont add nil or a path again to our list we did one 71 | if currentPath != nil, !ourPathSteps.contains(currentPath!) { 72 | 73 | } 74 | 75 | //get the files inside this new path 76 | let filesNames = contentsOfDirectoryAtPath(path: path) 77 | 78 | 79 | currentPath = path //currentPath = the new path 80 | 81 | 82 | ourPathSteps.append(currentPath!) //add our currentPath to history 83 | 84 | printFM("currentPath \(currentPath)") 85 | 86 | var thisPathFiles = [File]() 87 | for file in filesNames! { 88 | 89 | let cleanedFileName = file.replacingOccurrences(of: "\(currentPath!)/", with: "") //remove first path 90 | 91 | var file: File? 92 | 93 | //let fileType = cleanedFileName.remove before the . 94 | if !cleanedFileName.contains(".") { 95 | file = File(fileName: cleanedFileName, fileType: "file", filePath: currentPath!) 96 | 97 | } else { 98 | let fileType = cleanedFileName.components(separatedBy: ".").last 99 | 100 | file = File(fileName: cleanedFileName, fileType: fileType!, filePath: currentPath!) 101 | 102 | } 103 | 104 | debugFM("fileName \(file?.fileName), filetype \(file?.fileType)") 105 | 106 | thisPathFiles.append(file!) 107 | } 108 | filess = thisPathFiles 109 | collectionView.reloadData() 110 | } 111 | 112 | @IBAction func markTapped(_ sender: Any) { 113 | markIs = markIs == false ? true : false 114 | } 115 | 116 | @IBAction func deleteFilesPressed(_ sender: Any){ 117 | 118 | AlertDismiss(t: "Deleting Files", msg: "Are you sure you wanna delete this files") { [unowned self] _ in 119 | 120 | debugFM("User tapped yes delete") 121 | 122 | if self.markIs == true { 123 | if (self.collectionView.indexPathsForSelectedItems?.count)! > 0 { 124 | //if markedFiles.count > 0 { 125 | 126 | 127 | let selectedCellsIndex = self.collectionView.indexPathsForSelectedItems 128 | 129 | for index in selectedCellsIndex! { 130 | let file = self.filess[index.row] 131 | self.markedFiles.append(file) 132 | 133 | } 134 | 135 | 136 | for markedFile in self.markedFiles { //loop through markedFiles 137 | 138 | var fileName: String! 139 | //get its name.type 140 | if markedFile.fileType != "file" { 141 | fileName = markedFile.fileName 142 | } else { 143 | fileName = markedFile.fileName 144 | } 145 | 146 | //get its path mycomputer/name.type 147 | let fullMarkedFilePath = "\(self.currentPath!)/\(fileName!)" 148 | 149 | 150 | //start deleting operation 151 | do { 152 | let fileManager = FileManager.default 153 | 154 | // Check if file exists 155 | if fileManager.fileExists(atPath: fullMarkedFilePath) { 156 | 157 | // Delete file 158 | try fileManager.removeItem(atPath: fullMarkedFilePath) 159 | printFM("File deleted") 160 | 161 | } else { 162 | printFM("File does not exist at path \(fullMarkedFilePath)") 163 | 164 | } 165 | } 166 | catch let error as NSError { 167 | printFM("error with deleting -- \(error)") 168 | } 169 | } 170 | //after delete cV will select cell instead of the removed one 171 | for cell in self.collectionView.visibleCells { 172 | cell.backgroundColor = UIColor(white: 0.92, alpha: 1.0) 173 | } 174 | self.readFilesHere(path: self.currentPath!) 175 | self.collectionView.reloadData() 176 | self.markIs = false 177 | } 178 | } 179 | } 180 | } 181 | 182 | @IBAction func backTapped(_ sender: Any) { 183 | if ourPathSteps.count <= 1 { //we are in mycomputer cant go more back 184 | debugFM("backButton count \(ourPathSteps.count)") 185 | //AlertDismiss(t: "Leaving File Manager", msg: "Are you sure?") 186 | AlertDismiss(t: "Leaving File Manager", msg: "Are you sure?", yesCompletion: { 187 | self.dismiss(animated: true, completion: nil) 188 | 189 | }) 190 | 191 | ;return 192 | } 193 | 194 | 195 | ourPathSteps.removeLast() //remove the last(our current) 196 | debugFM("backButton ourPathSteps after last one removed \(ourPathSteps)") 197 | readFilesHere(path: ourPathSteps.last!) //go to the one before our current 198 | debugFM("backButton ourPathSteps.last! \(ourPathSteps.last!)") 199 | markedFiles.removeAll() 200 | ourPathSteps.removeLast() //remove again, had a bug that when we enter folder and back from it it will add the documents address, + 1, 2 , 3, 4 so have to do it twice, remove current, remove the new back(opened) 201 | } 202 | 203 | 204 | } 205 | @available(iOS 9.0, *) 206 | extension FileManagerVC: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout { 207 | 208 | public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { 209 | if let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "FileCell", for: indexPath) as? FileCell { 210 | 211 | let fileName = filess[indexPath.row].fileName 212 | let fileType = filess[indexPath.row].fileType 213 | let filePath = filess[indexPath.row].filePath 214 | 215 | cell.configuerCell(fileName: fileName, fileType: fileType, filePath: filePath) 216 | 217 | //People Decide the images by code Version 218 | /* 219 | //New Edit 220 | //Set Image 221 | switch fileType { 222 | case "file" : cell.fileImageV.image = FileManagerVC._imagess["file"] 223 | case "zip" : cell.fileImageV.image = FileManagerVC._imagess["zip"] 224 | case "3gp" : cell.fileImageV.image = FileManagerVC._imagess["3gp"] 225 | case "jpg" : cell.fileImageV.image = FileManagerVC._imagess["jpg"] 226 | case "json" : cell.fileImageV.image = FileManagerVC._imagess["json"] 227 | case "mp4" : cell.fileImageV.image = FileManagerVC._imagess["mp4"] 228 | case "pdf" : cell.fileImageV.image = FileManagerVC._imagess["pdf"] 229 | case "png" : cell.fileImageV.image = FileManagerVC._imagess["png"] 230 | case "txt" : cell.fileImageV.image = FileManagerVC._imagess["txt"] 231 | case "xml" : cell.fileImageV.image = FileManagerVC._imagess["xml"] 232 | case "zip" : cell.fileImageV.image = FileManagerVC._imagess["zip"] 233 | default: 234 | break; 235 | }*/ 236 | 237 | return cell 238 | } 239 | return UICollectionViewCell() 240 | } 241 | 242 | public func numberOfSections(in collectionView: UICollectionView) -> Int { 243 | return 1 244 | } 245 | 246 | public func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { 247 | return filess.count 248 | } 249 | 250 | public func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { 251 | let selectedFile = filess[indexPath.row] 252 | 253 | if markIs == false { 254 | 255 | if selectedFile.fileType == "file" { 256 | 257 | readFilesHere(path: "\(currentPath!)/\(selectedFile.fileName)") 258 | //currentPath + . + selectedFile type 259 | //go to this path, show whats inside it, update collectionV 260 | 261 | } 262 | } else { 263 | let cell = collectionView.cellForItem(at: indexPath) 264 | cell?.backgroundColor = UIColor.darkGray 265 | 266 | } 267 | } 268 | 269 | public func collectionView(_ collectionView: UICollectionView, didDeselectItemAt indexPath: IndexPath) { 270 | let cell = collectionView.cellForItem(at: indexPath) 271 | cell?.backgroundColor = UIColor(white: 0.92, alpha: 1.0) 272 | 273 | 274 | } 275 | 276 | public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { 277 | if customizations.cellType == .titleAndSize { 278 | return CGSize(width: 114, height: 130) 279 | } else { 280 | return CGSize(width: 114, height: 114) 281 | } 282 | } 283 | /* 284 | func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat { 285 | return 50.0 286 | } 287 | func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat { 288 | return 100.0 289 | }*/ 290 | 291 | public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets { 292 | return UIEdgeInsetsMake(14, 20, 14, 20) 293 | } 294 | } 295 | 296 | //Model - File 297 | class File { 298 | private var _fileName: String? 299 | private var _fileType: String? 300 | private var _filePath: String? 301 | 302 | 303 | init(fileName: String, fileType: String,filePath: String) { 304 | _fileName = fileName 305 | _fileType = fileType 306 | _filePath = filePath 307 | } 308 | 309 | var fileName: String { 310 | get { if _fileName == nil { return "" } 311 | return _fileName! 312 | } set { 313 | _fileName = newValue 314 | } 315 | } 316 | 317 | var fileType: String { 318 | get { if _fileType == nil { return "" } 319 | return _fileType! 320 | } set { 321 | _fileType = newValue 322 | } 323 | } 324 | 325 | var filePath: String { 326 | get { if _filePath == nil { return "" } 327 | return _filePath! 328 | } set { 329 | _filePath = newValue 330 | } 331 | } 332 | } 333 | 334 | //View - FileCell 335 | @available(iOS 9.0, *) 336 | class FileCell: UICollectionViewCell { 337 | 338 | 339 | var fileImageV: UIImageView = { 340 | let piv = UIImageView() 341 | piv.translatesAutoresizingMaskIntoConstraints = false 342 | piv.clipsToBounds = true 343 | piv.contentMode = .scaleAspectFit 344 | return piv 345 | }() 346 | var fileNameLbl: UILabel = { 347 | let lbl = UILabel() 348 | lbl.translatesAutoresizingMaskIntoConstraints = false 349 | lbl.font = UIFont(name: "Avenir", size: 18) 350 | lbl.minimumScaleFactor = 0.5 351 | lbl.textAlignment = .center 352 | lbl.numberOfLines = 0 353 | return lbl 354 | }() 355 | var fileSubTitleLbl: UILabel = { 356 | let lbl = UILabel() 357 | lbl.translatesAutoresizingMaskIntoConstraints = false 358 | lbl.font = UIFont(name: "Avenir", size: 12) 359 | lbl.textColor = .darkGray 360 | lbl.minimumScaleFactor = 0.5 361 | lbl.textAlignment = .center 362 | lbl.numberOfLines = 0 363 | return lbl 364 | }() 365 | 366 | var cellTitle: CellType = customizations.cellType ?? .title 367 | 368 | override init(frame: CGRect) { 369 | super.init(frame: frame) 370 | 371 | self.addSubview(fileImageV) 372 | self.addSubview(fileNameLbl) 373 | 374 | self.contentMode = .center 375 | self.clipsToBounds = true 376 | 377 | if customizations.cellType == .titleAndSize { 378 | self.addSubview(fileSubTitleLbl) 379 | 380 | 381 | //fileSize label constraints 382 | fileSubTitleLbl.bottomAnchor.constraint(equalTo: self.contentView.bottomAnchor).isActive = true 383 | fileSubTitleLbl.topAnchor.constraint(equalTo: fileNameLbl.bottomAnchor).isActive = true 384 | fileSubTitleLbl.widthAnchor.constraint(equalTo: self.contentView.widthAnchor, constant: -6).isActive = true 385 | fileSubTitleLbl.heightAnchor.constraint(greaterThanOrEqualTo: self.contentView.heightAnchor, multiplier: 0.20).isActive = true 386 | 387 | 388 | //fileName label constraints 389 | fileNameLbl.bottomAnchor.constraint(equalTo: fileSubTitleLbl.topAnchor, constant: 2).isActive = true 390 | fileNameLbl.widthAnchor.constraint(equalTo: self.contentView.widthAnchor, constant: -6).isActive = true 391 | fileNameLbl.heightAnchor.constraint(greaterThanOrEqualTo: self.contentView.heightAnchor, multiplier: 0.18).isActive = true 392 | 393 | 394 | //Image constraints 395 | fileImageV.topAnchor.constraint(equalTo: self.topAnchor, constant: 2).isActive = true 396 | fileImageV.widthAnchor.constraint(equalTo: self.contentView.widthAnchor, constant: -6).isActive = true 397 | fileImageV.bottomAnchor.constraint(equalTo: fileNameLbl.topAnchor, constant: -5).isActive = true 398 | //fileImageV.heightAnchor.constraint(equalTo: contentView.heightAnchor, multiplier: 0.67).isActive = true 399 | 400 | 401 | } else { 402 | //Image constraints 403 | fileImageV.centerXAnchor.constraint(equalTo: self.contentView.centerXAnchor).isActive = true 404 | fileImageV.topAnchor.constraint(equalTo: self.topAnchor).isActive = true 405 | fileImageV.widthAnchor.constraint(equalTo: self.contentView.widthAnchor, constant: -6).isActive = true 406 | fileImageV.heightAnchor.constraint(equalTo: contentView.heightAnchor, multiplier: 0.75).isActive = true 407 | 408 | //fileName label constraints 409 | fileNameLbl.centerXAnchor.constraint(equalTo: self.contentView.centerXAnchor).isActive = true 410 | fileNameLbl.topAnchor.constraint(equalTo: fileImageV.bottomAnchor).isActive = true 411 | fileNameLbl.widthAnchor.constraint(equalTo: self.contentView.widthAnchor, constant: -6).isActive = true 412 | fileNameLbl.heightAnchor.constraint(greaterThanOrEqualTo: self.contentView.heightAnchor, multiplier: 0.25).isActive = true 413 | } 414 | 415 | } 416 | 417 | 418 | required init?(coder aDecoder: NSCoder) { 419 | fatalError("init(coder:) has not been implemented") 420 | } 421 | 422 | func configuerCell(fileName: String, fileType: String, filePath: String) { 423 | self.backgroundColor = UIColor(white: 0.92, alpha: 1.0) 424 | self.layer.cornerRadius = 7 425 | self.layer.masksToBounds = true 426 | 427 | switch cellTitle { 428 | case .title: 429 | fileNameLbl.text = fileName 430 | case .titleAndSize: 431 | //Get File Size 432 | //let filePath = "\(filePath)/\(fileName).\(fileType)" 433 | let filePath = "\(filePath)/\(fileName)" 434 | 435 | //Set Title 436 | switch fileType { 437 | case "file": 438 | fileNameLbl.text = fileName 439 | fileSubTitleLbl.text = "Directory" 440 | case "zip", "3gp", "jpg", "json", "mp4", "pdf", "txt", "xml", "zip", "png","jpg","jpeg": 441 | let size = fileSize(fromPath: filePath) 442 | fileNameLbl.text = fileName 443 | fileSubTitleLbl.text = size ?? String() 444 | default: 445 | fileNameLbl.text = fileName 446 | break; 447 | } 448 | } 449 | 450 | //Set Image Part 451 | switch fileType { 452 | case "file" : fileImageV.image = UIImage(named: "file") 453 | case "zip" : fileImageV.image = UIImage(named: "zip") 454 | case "3gp" : fileImageV.image = UIImage(named: "3gp") 455 | case "jpg" : fileImageV.image = UIImage(named: "jpg") 456 | case "json" : fileImageV.image = UIImage(named: "json") 457 | case "mp4" : fileImageV.image = UIImage(named: "mp4") 458 | case "pdf" : fileImageV.image = UIImage(named: "pdf") 459 | case "txt" : fileImageV.image = UIImage(named: "txt") 460 | case "xml" : fileImageV.image = UIImage(named: "xml") 461 | case "zip" : fileImageV.image = UIImage(named: "zip") 462 | case "png","jpg","jpeg": 463 | //debugFM("\(filePath)/\(fileName).\(fileType)") 464 | let url = URL(fileURLWithPath: "\(filePath)/\(fileName).\(fileType)") 465 | fileImageV.image = UIImage(contentsOfFile: url.path) 466 | default: 467 | break; 468 | } 469 | 470 | } 471 | } 472 | 473 | -------------------------------------------------------------------------------- /FileManager-Swift/Classes/Utilities.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Utilities.swift 3 | // FileManager-Swift 4 | // 5 | // Created by Algorithm on 7/16/18. 6 | // 7 | 8 | import Foundation 9 | 10 | internal func printFM(_ msg: String) { 11 | print("FileManager: \(msg)") 12 | } 13 | 14 | internal func debugFM(_ msg: String) { 15 | print("FM Debug: \(msg)") 16 | //NSLog("FM Debug: %@", msg) 17 | } 18 | 19 | //Get File Size 20 | func fileSize(fromPath path: String) -> String? { 21 | var size: Any? 22 | do { 23 | size = try FileManager.default.attributesOfItem(atPath: path)[FileAttributeKey.size] 24 | } catch (let error) { 25 | printFM("File size error: \(error)") 26 | return nil 27 | } 28 | guard let fileSize = size as? UInt64 else { 29 | return nil 30 | } 31 | 32 | // bytes 33 | if fileSize < 1023 { 34 | return String(format: "%lu bytes", CUnsignedLong(fileSize)) 35 | } 36 | // KB 37 | var floatSize = Float(fileSize / 1024) 38 | if floatSize < 1023 { 39 | return String(format: "%.1f KB", floatSize) 40 | } 41 | // MB 42 | floatSize = floatSize / 1024 43 | if floatSize < 1023 { 44 | return String(format: "%.1f MB", floatSize) 45 | } 46 | // GB 47 | floatSize = floatSize / 1024 48 | return String(format: "%.1f GB", floatSize) 49 | } 50 | 51 | //getDirectoryPath 52 | func getDirectoryPath() -> String { 53 | debugFM("VC getDirectoryPath") 54 | 55 | let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) 56 | let documentsDirectory = paths[0] 57 | return documentsDirectory 58 | } 59 | 60 | //get the contents of the file at path 61 | func contentsOfDirectoryAtPath(path: String) -> [String]? { 62 | debugFM("VC contentsOfDirectoryAtPath") 63 | 64 | 65 | guard let paths = try? FileManager.default.contentsOfDirectory(atPath: path) else { return nil} 66 | return paths.map { aContent in (path as NSString).appendingPathComponent(aContent)} 67 | } 68 | 69 | -------------------------------------------------------------------------------- /FileManager-Swift/Classes/enums.swift: -------------------------------------------------------------------------------- 1 | // 2 | // enums.swift 3 | // FileManager-Swift 4 | // 5 | // Created by Algorithm on 7/16/18. 6 | // 7 | 8 | import Foundation 9 | 10 | public enum CellType { 11 | case title 12 | case titleAndSize 13 | } 14 | -------------------------------------------------------------------------------- /FileManager-Swift/Classes/options.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Customize.swift 3 | // FileManager-Swift 4 | // 5 | // Created by Algorithm on 7/16/18. 6 | // 7 | 8 | import UIKit 9 | 10 | public struct customizations { 11 | public static var cellType: CellType? 12 | public static var headerViewColor: UIColor? 13 | } 14 | -------------------------------------------------------------------------------- /FileManager-Swift/send_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/FileManager-Swift/send_btn.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2017 Mahmoud333 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # FileManager-Swift 2 | 3 | [![CI Status](http://img.shields.io/travis/Mahmoud333/FileManager-Swift.svg?style=flat)](https://travis-ci.org/Mahmoud333/FileManager-Swift) 4 | [![Version](https://img.shields.io/cocoapods/v/FileManager-Swift.svg?style=flat)](http://cocoapods.org/pods/FileManager-Swift) 5 | [![License](https://img.shields.io/cocoapods/l/FileManager-Swift.svg?style=flat)](http://cocoapods.org/pods/FileManager-Swift) 6 | [![Platform](https://img.shields.io/cocoapods/p/FileManager-Swift.svg?style=flat)](http://cocoapods.org/pods/FileManager-Swift) 7 | 8 | ## ScreenShots 9 | ![ScreenShot](https://github.com/Mahmoud333/FileManager-Swift/blob/master/screen1.PNG) 10 | ![ScreenShot](https://github.com/Mahmoud333/FileManager-Swift/blob/master/screen2.PNG) 11 | ![ScreenShot](https://github.com/Mahmoud333/FileManager-Swift/blob/master/screen3.PNG) 12 | ![ScreenShot](https://github.com/Mahmoud333/FileManager-Swift/blob/master/screen4.PNG) 13 | ![ScreenShot](https://github.com/Mahmoud333/FileManager-Swift/blob/master/screen5.PNG) 14 | 15 | ## Example 16 | 17 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 18 | 19 | ## Why is it usefull 20 | - Made entirely by code without using storyboard which makes it easier for anyone to use, implement and support all screen sizes 21 | 22 | - useful for testing and released apps incase your app involves downloading contents/assets/files from url and you wanna see them or make the user able to delete any of the app contents if your app involves large assets like videos,3D objects 23 | 24 | - you can enter folders/files and delete them 25 | 26 | - you can see the real jpg, jepg, png images instead of image icons 27 | 28 | - supports 3gp, files, jpg, json, mp4, pdf, png, txt, xml, zip images icon to be easier for you to navigate through the files 29 | 30 | - Future features: 31 | 32 | - Better UI with good animations 33 | ✓✓✓ you will get to see the real images instead of image icons 34 | - will be able to play/watch the videos, songs 35 | - will be able to open and see what is inside json, xml, txt files 36 | 37 | 38 | ## How To Use 39 | 40 | ```ruby 41 | import FileManager_Swift 42 | 43 | let fileManager = FileManagerVC() 44 | present(fileManager, animated: true, completion: nil) 45 | ``` 46 | download the "Assets" folder in the example project and add it in your project if you want ur UI looks better those images are the images for json,txt,png and buttons images 47 | -incase you want to change the image all you have to do is delete the original and add yours BUT WITH SAME NAME of the last image 48 | 49 | also you can do 50 | 51 | ```ruby 52 | //Shows subtitle that contains the size of file 53 | customizations.cellType = CellType.titleAndSize 54 | 55 | //Customize the header View Color 56 | customizations.headerViewColor = UIColor.green 57 | ``` 58 | 59 | You don't need to do anything more 60 | 61 | ## Requirements 62 | Swift 3 and 4 and IOS 9+ because its using NSLayoutAnchor 63 | 64 | ## Installation 65 | 66 | FileManager-Swift is available through [CocoaPods](http://cocoapods.org). To install 67 | it, simply add the following line to your Podfile: 68 | 69 | ```ruby 70 | pod 'FileManager-Swift' 71 | ``` 72 | 73 | 74 | ## Author 75 | 76 | Mahmoud333, mahmoud_smgl@hotmail.com 77 | 78 | ## License 79 | 80 | FileManager-Swift is available under the MIT license. See the LICENSE file for more info. 81 | -------------------------------------------------------------------------------- /_Pods.xcodeproj: -------------------------------------------------------------------------------- 1 | Example/Pods/Pods.xcodeproj -------------------------------------------------------------------------------- /screen1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/screen1.PNG -------------------------------------------------------------------------------- /screen2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/screen2.PNG -------------------------------------------------------------------------------- /screen3.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/screen3.PNG -------------------------------------------------------------------------------- /screen4.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/screen4.PNG -------------------------------------------------------------------------------- /screen5.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mahmoud333/FileManager-Swift/ab1cdd6484320977375d4ae131e92c901b33b210/screen5.PNG --------------------------------------------------------------------------------