From 0734dd7aa0590161397c43f9496d4af1f40ee313 Mon Sep 17 00:00:00 2001 From: godpp Date: Tue, 12 Mar 2019 00:58:14 +0900 Subject: [PATCH] UPDATE : 0.1.0 - Booster has been rebuilt into Cocoa Touch Framework. - Add Travis CI - Add Examples Files (not yet) --- Booster.podspec | 116 +--- Booster.xcodeproj/project.pbxproj | 641 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../UserInterfaceState.xcuserstate | Bin 0 -> 22481 bytes .../xcshareddata/xcschemes/Booster.xcscheme | 99 +++ .../xcschemes/xcschememanagement.plist | 32 + BoosterExamples/AppDelegate.swift | 46 ++ .../AppIcon.appiconset/Contents.json | 98 +++ BoosterExamples/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 + BoosterExamples/Base.lproj/Main.storyboard | 24 + BoosterExamples/Info.plist | 45 ++ BoosterExamples/ViewController.swift | 20 + BoosterTests/BoosterTests.swift | 34 + BoosterTests/Info.plist | 22 + Sources/Supporting Files/Booster.h | 19 + Sources/Supporting Files/Info.plist | 22 + 18 files changed, 1155 insertions(+), 109 deletions(-) create mode 100644 Booster.xcodeproj/project.pbxproj create mode 100644 Booster.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Booster.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Booster.xcodeproj/project.xcworkspace/xcuserdata/godpp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Booster.xcodeproj/xcshareddata/xcschemes/Booster.xcscheme create mode 100644 Booster.xcodeproj/xcuserdata/godpp.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 BoosterExamples/AppDelegate.swift create mode 100644 BoosterExamples/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 BoosterExamples/Assets.xcassets/Contents.json create mode 100644 BoosterExamples/Base.lproj/LaunchScreen.storyboard create mode 100644 BoosterExamples/Base.lproj/Main.storyboard create mode 100644 BoosterExamples/Info.plist create mode 100644 BoosterExamples/ViewController.swift create mode 100644 BoosterTests/BoosterTests.swift create mode 100644 BoosterTests/Info.plist create mode 100644 Sources/Supporting Files/Booster.h create mode 100644 Sources/Supporting Files/Info.plist diff --git a/Booster.podspec b/Booster.podspec index 662e954..42b5087 100644 --- a/Booster.podspec +++ b/Booster.podspec @@ -8,131 +8,29 @@ Pod::Spec.new do |s| - # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # These will help people to find your library, and whilst it - # can feel like a chore to fill in it's definitely to your advantage. The - # summary should be tweet-length, and the description more in depth. - # - s.name = "Booster" - s.version = "0.0.4" - s.summary = "Booster is an HTTP networking librart written in Swift." + s.version = "0.1.0" + s.summary = "Booster is an REST API Networking Library written in Swift." - # This description is used to generate tags and improve search results. - # * Think: What does it do? Why did you write it? What is the focus? - # * Try to keep it short, snappy and to the point. - # * Write the description between the DESC delimiters below. - # * Finally, don't worry about the indent, CocoaPods strips it! s.description = <<-DESC - "Booster was developed during Naver Connect Foundation's the BoostCamp 3rd iOS process." - "Booster is an Simple HTTP Networking Library written in Swift." + "Booster was developed during NAVER CONNECT Foundation's the BoostCamp 3rd iOS process." + "Booster is an Simple REST API Networking Library written in Swift." "Booster was created using only the Apple frameworks." DESC s.homepage = "https://github.com/godpp/Booster" - # s.screenshots = "www.example.com/screenshots_1.gif", "www.example.com/screenshots_2.gif" - - - # ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Licensing your code is important. See http://choosealicense.com for more info. - # CocoaPods will detect a license file if there is a named LICENSE* - # Popular ones are 'MIT', 'BSD' and 'Apache License, Version 2.0'. - # s.license = { :type => "MIT", :file => "LICENSE" } - # s.license = { :type => "MIT", :file => "FILE_LICENSE" } - # ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Specify the authors of the library, with email addresses. Email addresses - # of the authors are extracted from the SCM log. E.g. $ git log. CocoaPods also - # accepts just a name if you'd rather not provide an email address. - # - # Specify a social_media_url where others can refer to, for example a twitter - # profile URL. - # - s.author = { "godpp" => "taylored@naver.com" } - # Or just: s.author = "godpp" - # s.authors = { "godpp" => "taylored@naver.com" } - # s.social_media_url = "http://twitter.com/godpp" - - # ――― Platform Specifics ――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # If this Pod runs only on iOS or OS X, then specify the platform and - # the deployment target. You can optionally include the target after the platform. - # - # s.platform = :ios s.platform = :ios, "10.0" - # When using multiple platforms - # s.ios.deployment_target = "5.0" - # s.osx.deployment_target = "10.7" - # s.watchos.deployment_target = "2.0" - # s.tvos.deployment_target = "9.0" - - - # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Specify the location from where the source should be retrieved. - # Supports git, hg, bzr, svn and HTTP. - # + s.ios.deployment_target = "12.0" + s.swift_version = "4.2" s.source = { :git => "https://github.com/godpp/Booster.git", :tag => "#{s.version}" } - - # ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # CocoaPods is smart about how it includes source code. For source files - # giving a folder will include any swift, h, m, mm, c & cpp files. - # For header files it will include any header in the folder. - # Not including the public_header_files will make all headers public. - # - - s.source_files = "Sources", "Sources/*.swift" - - # s.public_header_files = "Classes/**/*.h" - - - # ――― Resources ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # A list of resources included with the Pod. These are copied into the - # target bundle with a build phase script. Anything else will be cleaned. - # You can preserve files from being cleaned, please don't preserve - # non-essential files like tests, examples and documentation. - # - - # s.resource = "icon.png" - # s.resources = "Resources/*.png" - - # s.preserve_paths = "FilesToSave", "MoreFilesToSave" - - - # ――― Project Linking ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Link your library with frameworks, or libraries. Libraries do not include - # the lib prefix of their name. - # - - # s.framework = "SomeFramework" - # s.frameworks = "SomeFramework", "AnotherFramework" - - # s.library = "iconv" - # s.libraries = "iconv", "xml2" - - - # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # If your library depends on compiler flags you can set them in the xcconfig hash - # where they will only apply to your library. If you depend on other Podspecs - # you can include multiple dependencies to ensure it works. - - # s.requires_arc = true - - # s.xcconfig = { "HEADER_SEARCH_PATHS" => "$(SDKROOT)/usr/include/libxml2" } - # s.dependency "JSONKit", "~> 1.4" + s.source_files = "Sources/**/*.{h,m,swift}" end diff --git a/Booster.xcodeproj/project.pbxproj b/Booster.xcodeproj/project.pbxproj new file mode 100644 index 0000000..53b507f --- /dev/null +++ b/Booster.xcodeproj/project.pbxproj @@ -0,0 +1,641 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + BCE85AB82236A972009B9EA7 /* Booster.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCE85AAE2236A972009B9EA7 /* Booster.framework */; }; + BCE85ABD2236A972009B9EA7 /* BoosterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ABC2236A972009B9EA7 /* BoosterTests.swift */; }; + BCE85ABF2236A972009B9EA7 /* Booster.h in Headers */ = {isa = PBXBuildFile; fileRef = BCE85AB12236A972009B9EA7 /* Booster.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BCE85AD12236A9B4009B9EA7 /* BoosterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACA2236A9B4009B9EA7 /* BoosterService.swift */; }; + BCE85AD22236A9B4009B9EA7 /* BoosterResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACB2236A9B4009B9EA7 /* BoosterResult.swift */; }; + BCE85AD32236A9B4009B9EA7 /* BoosterEncoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACC2236A9B4009B9EA7 /* BoosterEncoder.swift */; }; + BCE85AD42236A9B4009B9EA7 /* BoosterError.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACD2236A9B4009B9EA7 /* BoosterError.swift */; }; + BCE85AD52236A9B4009B9EA7 /* URL+Booster.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACE2236A9B4009B9EA7 /* URL+Booster.swift */; }; + BCE85AD62236A9B4009B9EA7 /* BoosterResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85ACF2236A9B4009B9EA7 /* BoosterResponse.swift */; }; + BCE85AD72236A9B4009B9EA7 /* BoosterCenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85AD02236A9B4009B9EA7 /* BoosterCenter.swift */; }; + BCE85AE12236ADF0009B9EA7 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85AE02236ADF0009B9EA7 /* AppDelegate.swift */; }; + BCE85AE32236ADF0009B9EA7 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCE85AE22236ADF0009B9EA7 /* ViewController.swift */; }; + BCE85AE62236ADF0009B9EA7 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BCE85AE42236ADF0009B9EA7 /* Main.storyboard */; }; + BCE85AE82236ADF1009B9EA7 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BCE85AE72236ADF1009B9EA7 /* Assets.xcassets */; }; + BCE85AEB2236ADF1009B9EA7 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BCE85AE92236ADF1009B9EA7 /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + BCE85AB92236A972009B9EA7 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BCE85AA52236A972009B9EA7 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BCE85AAD2236A972009B9EA7; + remoteInfo = Booster; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + BCE85AAE2236A972009B9EA7 /* Booster.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Booster.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BCE85AB12236A972009B9EA7 /* Booster.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Booster.h; sourceTree = ""; }; + BCE85AB22236A972009B9EA7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + BCE85AB72236A972009B9EA7 /* BoosterTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BoosterTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + BCE85ABC2236A972009B9EA7 /* BoosterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BoosterTests.swift; sourceTree = ""; }; + BCE85ABE2236A972009B9EA7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + BCE85ACA2236A9B4009B9EA7 /* BoosterService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterService.swift; sourceTree = ""; }; + BCE85ACB2236A9B4009B9EA7 /* BoosterResult.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterResult.swift; sourceTree = ""; }; + BCE85ACC2236A9B4009B9EA7 /* BoosterEncoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterEncoder.swift; sourceTree = ""; }; + BCE85ACD2236A9B4009B9EA7 /* BoosterError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterError.swift; sourceTree = ""; }; + BCE85ACE2236A9B4009B9EA7 /* URL+Booster.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "URL+Booster.swift"; sourceTree = ""; }; + BCE85ACF2236A9B4009B9EA7 /* BoosterResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterResponse.swift; sourceTree = ""; }; + BCE85AD02236A9B4009B9EA7 /* BoosterCenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BoosterCenter.swift; sourceTree = ""; }; + BCE85ADE2236ADF0009B9EA7 /* BoosterExamples.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BoosterExamples.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BCE85AE02236ADF0009B9EA7 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + BCE85AE22236ADF0009B9EA7 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + BCE85AE52236ADF0009B9EA7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + BCE85AE72236ADF1009B9EA7 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + BCE85AEA2236ADF1009B9EA7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + BCE85AEC2236ADF1009B9EA7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + BCE85AAB2236A972009B9EA7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85AB42236A972009B9EA7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85AB82236A972009B9EA7 /* Booster.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85ADB2236ADF0009B9EA7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + BCE85AA42236A972009B9EA7 = { + isa = PBXGroup; + children = ( + BCE85ADF2236ADF0009B9EA7 /* BoosterExamples */, + BCE85AAF2236A972009B9EA7 /* Products */, + BCE85AC82236A979009B9EA7 /* Sources */, + BCE85ABB2236A972009B9EA7 /* BoosterTests */, + ); + sourceTree = ""; + }; + BCE85AAF2236A972009B9EA7 /* Products */ = { + isa = PBXGroup; + children = ( + BCE85AAE2236A972009B9EA7 /* Booster.framework */, + BCE85AB72236A972009B9EA7 /* BoosterTests.xctest */, + BCE85ADE2236ADF0009B9EA7 /* BoosterExamples.app */, + ); + name = Products; + sourceTree = ""; + }; + BCE85ABB2236A972009B9EA7 /* BoosterTests */ = { + isa = PBXGroup; + children = ( + BCE85ABC2236A972009B9EA7 /* BoosterTests.swift */, + BCE85ABE2236A972009B9EA7 /* Info.plist */, + ); + path = BoosterTests; + sourceTree = ""; + }; + BCE85AC82236A979009B9EA7 /* Sources */ = { + isa = PBXGroup; + children = ( + BCE85AC92236A98C009B9EA7 /* Supporting Files */, + BCE85AD02236A9B4009B9EA7 /* BoosterCenter.swift */, + BCE85ACC2236A9B4009B9EA7 /* BoosterEncoder.swift */, + BCE85ACD2236A9B4009B9EA7 /* BoosterError.swift */, + BCE85ACF2236A9B4009B9EA7 /* BoosterResponse.swift */, + BCE85ACB2236A9B4009B9EA7 /* BoosterResult.swift */, + BCE85ACA2236A9B4009B9EA7 /* BoosterService.swift */, + BCE85ACE2236A9B4009B9EA7 /* URL+Booster.swift */, + ); + path = Sources; + sourceTree = ""; + }; + BCE85AC92236A98C009B9EA7 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + BCE85AB12236A972009B9EA7 /* Booster.h */, + BCE85AB22236A972009B9EA7 /* Info.plist */, + ); + path = "Supporting Files"; + sourceTree = ""; + }; + BCE85ADF2236ADF0009B9EA7 /* BoosterExamples */ = { + isa = PBXGroup; + children = ( + BCE85AE02236ADF0009B9EA7 /* AppDelegate.swift */, + BCE85AE22236ADF0009B9EA7 /* ViewController.swift */, + BCE85AE42236ADF0009B9EA7 /* Main.storyboard */, + BCE85AE72236ADF1009B9EA7 /* Assets.xcassets */, + BCE85AE92236ADF1009B9EA7 /* LaunchScreen.storyboard */, + BCE85AEC2236ADF1009B9EA7 /* Info.plist */, + ); + path = BoosterExamples; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + BCE85AA92236A972009B9EA7 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85ABF2236A972009B9EA7 /* Booster.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + BCE85AAD2236A972009B9EA7 /* Booster */ = { + isa = PBXNativeTarget; + buildConfigurationList = BCE85AC22236A972009B9EA7 /* Build configuration list for PBXNativeTarget "Booster" */; + buildPhases = ( + BCE85AA92236A972009B9EA7 /* Headers */, + BCE85AAA2236A972009B9EA7 /* Sources */, + BCE85AAB2236A972009B9EA7 /* Frameworks */, + BCE85AAC2236A972009B9EA7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Booster; + productName = Booster; + productReference = BCE85AAE2236A972009B9EA7 /* Booster.framework */; + productType = "com.apple.product-type.framework"; + }; + BCE85AB62236A972009B9EA7 /* BoosterTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = BCE85AC52236A972009B9EA7 /* Build configuration list for PBXNativeTarget "BoosterTests" */; + buildPhases = ( + BCE85AB32236A972009B9EA7 /* Sources */, + BCE85AB42236A972009B9EA7 /* Frameworks */, + BCE85AB52236A972009B9EA7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + BCE85ABA2236A972009B9EA7 /* PBXTargetDependency */, + ); + name = BoosterTests; + productName = BoosterTests; + productReference = BCE85AB72236A972009B9EA7 /* BoosterTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + BCE85ADD2236ADF0009B9EA7 /* BoosterExamples */ = { + isa = PBXNativeTarget; + buildConfigurationList = BCE85AEF2236ADF1009B9EA7 /* Build configuration list for PBXNativeTarget "BoosterExamples" */; + buildPhases = ( + BCE85ADA2236ADF0009B9EA7 /* Sources */, + BCE85ADB2236ADF0009B9EA7 /* Frameworks */, + BCE85ADC2236ADF0009B9EA7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = BoosterExamples; + productName = BoosterExamples; + productReference = BCE85ADE2236ADF0009B9EA7 /* BoosterExamples.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + BCE85AA52236A972009B9EA7 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1000; + LastUpgradeCheck = 1000; + ORGANIZATIONNAME = "Park Sung Joon"; + TargetAttributes = { + BCE85AAD2236A972009B9EA7 = { + CreatedOnToolsVersion = 10.0; + LastSwiftMigration = 1000; + }; + BCE85AB62236A972009B9EA7 = { + CreatedOnToolsVersion = 10.0; + }; + BCE85ADD2236ADF0009B9EA7 = { + CreatedOnToolsVersion = 10.0; + }; + }; + }; + buildConfigurationList = BCE85AA82236A972009B9EA7 /* Build configuration list for PBXProject "Booster" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = BCE85AA42236A972009B9EA7; + productRefGroup = BCE85AAF2236A972009B9EA7 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + BCE85AAD2236A972009B9EA7 /* Booster */, + BCE85AB62236A972009B9EA7 /* BoosterTests */, + BCE85ADD2236ADF0009B9EA7 /* BoosterExamples */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + BCE85AAC2236A972009B9EA7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85AB52236A972009B9EA7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85ADC2236ADF0009B9EA7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85AEB2236ADF1009B9EA7 /* LaunchScreen.storyboard in Resources */, + BCE85AE82236ADF1009B9EA7 /* Assets.xcassets in Resources */, + BCE85AE62236ADF0009B9EA7 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + BCE85AAA2236A972009B9EA7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85AD12236A9B4009B9EA7 /* BoosterService.swift in Sources */, + BCE85AD72236A9B4009B9EA7 /* BoosterCenter.swift in Sources */, + BCE85AD42236A9B4009B9EA7 /* BoosterError.swift in Sources */, + BCE85AD52236A9B4009B9EA7 /* URL+Booster.swift in Sources */, + BCE85AD62236A9B4009B9EA7 /* BoosterResponse.swift in Sources */, + BCE85AD32236A9B4009B9EA7 /* BoosterEncoder.swift in Sources */, + BCE85AD22236A9B4009B9EA7 /* BoosterResult.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85AB32236A972009B9EA7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85ABD2236A972009B9EA7 /* BoosterTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BCE85ADA2236ADF0009B9EA7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BCE85AE32236ADF0009B9EA7 /* ViewController.swift in Sources */, + BCE85AE12236ADF0009B9EA7 /* AppDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + BCE85ABA2236A972009B9EA7 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BCE85AAD2236A972009B9EA7 /* Booster */; + targetProxy = BCE85AB92236A972009B9EA7 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + BCE85AE42236ADF0009B9EA7 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + BCE85AE52236ADF0009B9EA7 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + BCE85AE92236ADF1009B9EA7 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + BCE85AEA2236ADF1009B9EA7 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + BCE85AC02236A972009B9EA7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + BCE85AC12236A972009B9EA7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + BCE85AC32236A972009B9EA7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = ""; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = 86PPC52X64; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Sources/Supporting Files/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.Booster; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + BCE85AC42236A972009B9EA7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = ""; + CODE_SIGN_STYLE = Automatic; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = 86PPC52X64; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Sources/Supporting Files/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.Booster; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + BCE85AC62236A972009B9EA7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 86PPC52X64; + INFOPLIST_FILE = BoosterTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.BoosterTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + BCE85AC72236A972009B9EA7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 86PPC52X64; + INFOPLIST_FILE = BoosterTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.BoosterTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + BCE85AED2236ADF1009B9EA7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 86PPC52X64; + INFOPLIST_FILE = BoosterExamples/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.BoosterExamples; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + BCE85AEE2236ADF1009B9EA7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 86PPC52X64; + INFOPLIST_FILE = BoosterExamples/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.SungJoonPark.BoosterExamples; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + BCE85AA82236A972009B9EA7 /* Build configuration list for PBXProject "Booster" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BCE85AC02236A972009B9EA7 /* Debug */, + BCE85AC12236A972009B9EA7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BCE85AC22236A972009B9EA7 /* Build configuration list for PBXNativeTarget "Booster" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BCE85AC32236A972009B9EA7 /* Debug */, + BCE85AC42236A972009B9EA7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BCE85AC52236A972009B9EA7 /* Build configuration list for PBXNativeTarget "BoosterTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BCE85AC62236A972009B9EA7 /* Debug */, + BCE85AC72236A972009B9EA7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BCE85AEF2236ADF1009B9EA7 /* Build configuration list for PBXNativeTarget "BoosterExamples" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BCE85AED2236ADF1009B9EA7 /* Debug */, + BCE85AEE2236ADF1009B9EA7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = BCE85AA52236A972009B9EA7 /* Project object */; +} diff --git a/Booster.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Booster.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..f951711 --- /dev/null +++ b/Booster.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Booster.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Booster.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Booster.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Booster.xcodeproj/project.xcworkspace/xcuserdata/godpp.xcuserdatad/UserInterfaceState.xcuserstate b/Booster.xcodeproj/project.xcworkspace/xcuserdata/godpp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..664e0321e61c5a77f2e134cc65eceae09e8467a3 GIT binary patch literal 22481 zcmd6P2Y6G}`|vsU-Xu-B(k3aRE9o9dnl322yR_+|i%kh_+6KBvQZ{m;3>h*7MHFeN zY(ZHvM209sM7Dy02qH@mMTQ{qz4zXx1JIwp@A-ev_ivvzH)p-?dCz;^dCnbHTWPXb zb-GgsBMQ-oK>{Qc6bbtF3m9cITTC_8{Q_!+4L6opE&T%w=8_5%6c+?oYiivQp1N#< z8=iwi$N|Za94SyR3PGVL422^#(jYC0M+qnqC81=Lf>Kc$>W$J-AC!mkQ2{DNMpTB% zQ3W!g;iwjkM5ECdG!;!lucGN_2AYZHqu0?}XeoLZEki5NI zZ{Q{PZM+QEU*Ti;JA58rz~AGG_%gnZZ{R!l z9)3z83R8}h6Xi^~QSGSqls6Sjg;1eXG!;X|Qaz|NDvQde`cea_VrnQ=N|~rCY9v)h zjiSa;FHx^k3#moa8`PWBV(Kkw3H3Jh4z-e6MXjdRP#;j6sV&rQY7e!S+DCm(9iqOZ zj#6i+bJVxg_tZt|XX+MpoBD;iL*1tyP=C@wT0}e0Vp>8w(hAyxZb!GLy=Xt$pAMk4 zbOf!VBk3qQn(j=e(Y@((I)m2JnRFK2hc2Z1(`B@YuB2;dGhIiIp~urN(KdQAJ)NFI z&!y+l^>hQhoNlDwqgT)?=~eW4dK0~i{)FC5AEFP_U(iSBWArKdEPal?L|>+Vq_5D| z>3j4a^dtH&`YA&*3?pUS7``3`_-6%Zy|uGA}Wc7{b_?DaNW;?Tk z*~xs&>|#D)4l;+B!^{`VN#;Crf%%@f$o#-uVlFecnA^-R%pK+t^O*UQc_I)A90X#4 zlfX;hE$|We3Y3BXL9if15Gv3Jq6M7=T?I*kG(m4crXW|)M^IQ8P+eD9c@l|{1UVun zmsCwcQf!q6}Sk#F)6Bpu2q{NN56WK}>2h{6|x}omy*^|hDdLAT(#KC78 zOGS?aiv=XEq1u{KYJv$^G7V#E>a4|5DFDx}s2QDY7-cFqKn-8i{58RBgbA{((yJ}C zAdqX!e36>P+P>~>W}9rZn98f!R{0?2twko|=oUDIRuhz&jF!RBpT~u5DMe!YY%@?6 z3Ti-llu6o=_6;Z-<&X}fBRdPXd}Ae`U@UD$uUM+=S5i}I)WT?blU3VXq0P6N>q@M3 zW?1t7*u)OH5Dh{>D^L;Yi~6DdXaE{WJc$?aCO*WMC|97tXb7;X3K`Haq9Ph#&cRh9y?5kRw4YR0KeeWJ0f#%xSARa%W^U^>3J7c|dL%3@io z&eB|$QqA&PX|YrV)p^De*kJaJ_G}xL-J94M8p8UzvLiN8jfG*K>IhVY-0M*#@vBGG z#Gl>pY||n`Wu4KIz+rE1YDQKRRF5nqpdQtcKoZ_Jv8KiXXxkf%MUzm_duSXQk0zjr z=p_$u@Di&UwsJrI(P$}_%Chsb>Z~l0l1;D;YpML#j{Td|qM z)}yVY6U$?&I*ZYqYc`e{&1Pe15{RGj8uQqcF;-(WYci!L1D#lLzXR=DMmqCz+=V_F z(oCHMv)KTI*@bqad7uusuXaTCqEA_P`$(61w4Ze4wp(&hLGu>on3^B|AlkVc9YTlE z7o;0WAjzb&eUPK*1ae=FzCy>)anhaiAU&6(lOT~!lU^W+;)!}N44GaE3~VYh8O?*( zZ!LmQ3SU`ik!2{aHd*URVgIm#r+NRdg2F$3B;tPTAkU*8o&$LaK>kP)0b~+@gdti4 zjeq=1Wt;xj(XHqD--iBoNDA~%Wj6+kM6=xDk*JMtGsr#k6a}qD_t69N5dDE3p~vV? z^aTAydXsdLLG&b(WRYx=LvmLm6~-`p9E!sNEW{%0079e>fRe-StK=QBl&oZlFJ+~2 zvT;~ldAYGk5^rV;@pT!V9ttrfPew9}a>A!~Qq`2a+Pv zm-JhXgMpf%q(4w_D!X8zZNPDgIv?~~bvgIgEDt~n6-yOu+ct^HXUo%!HC0Bdc`Ua9 za0HI5$2u~A*exs^jk|%0#xXb+cfy@<9PWaY z6Ui`ALM-HEGMcso|H^JW}quPe;U1d&=>H>}cBqP2`Rm02|wPCDCHAPeUq_ePwJb8s&1 zLrRH}l#%jAoR14&9g0W=se+ZLW>=ykFV~ZR1Nk{=EgXe`or5}VCAI$?mOI82RX(W)3^%PBKHPdjcZ5^scpa`v6+k{W}+@E19+AprA;<) zrm?!*TEPPwjU$(lN;mgzr}20^0XgD{_$53E6KumTqd3^?cG_pwlyG}(NQ;onHCQXS z7FDnbT8fLorUYYSOir1-Z%Z9{iPRAru@ZT)G@{u)YQqo7HSBQOW(%&_T;dU)iX)ff zY4}w+=$=9D+byZ2Y9@{)l>zx1=t^C5+MW?OM8{U9_$(s5m5+w))G-(Q(9Xa0rm(R zhlpsJSOm{$7W?M=+ z_%s_Ufn!G*2_jR-Bz_{>@s7gme4udy-j3$+9Q84~|8|jSq_T|-71t?Ft?Z)f(riQF zz4&t!)QI=tPw{^I8JSLIkeOswBR+r+0_zOI&VCRdtt>SgtBYz4@ZUPHgdMlq z%CZr#pk3zuogf)lV>a1sJb?58*+^Em(otsg8=)m9X64QCqtLnCKX4EGvIYA@Y>t#sm+uhte@cGXh~u?7s}5 zOWj2dVu_=Zvr9W~AK$=mwMG}sM-72x00TfEGFHh#XT`Hp2fvYBqTrt{wzIMbB4J&l zqhGA=f%97vg%6$Of<+Cbb_LTC#XIRLb#s?{{C#w?UPc`16%ZJdo^0R2t)r(GSj5@+ z`6aNWs`*tcEKE=4EeQbKwkqE=&d3KEA)uMsIXR(oLSl+0CMG#X(UJg85Ham5*h~PS#~}@ zbsot!K}g@Wb*;zZ!jyb;?;n`~6h})W!j5w+%Oy&cHUbcA4ZJ}c0L76}ZK5F!kpV+= zV>*`^JC(*nN0ydE>mV+Zov$~JHJ0+S!f5_p>e{JuT$irhy7%bWD?TAHDLExIt#^7x zdS+I3PHvyP{K0lW9Nw^s1tx1HNF6ue5FP_QVrn!)+!=OYq8Y+d&@9~oaEic4NKa1& z+NE1q7Z1$b?EF-d*#e%YrM3plTQis#NoFU>O12XouOn z=hKsUuxaL64h~?DUOJ|kI@xtq!;EHv2~C6!Vgfn~5r&AQt`L8AgIIX@JxDUSLFC#W z5=&7KhRuXDQXPb}=A)Hp6{Lg?K&;~&L?AAsE07Ahj&7pgAO++HzG)B+0sm+aHb63` z4w5+2@LWjWY{IAU*Z3^{7C(d}j0Y762^bC46_PKR)DUVC^%^8uRzou7W9n1t2&7JK zQhz~`L`jF!F?1500_hMw8Inb3)46mWT|gJn{pbPoAWjKEf`|WvL|2<1x|nR`h1Pg# z0xX$5S_U#?IW?Y|h~~jku(52r9-c%^hkyn}C>!-M^$InannF#brctkwZDc#yL3Wal z$u9B<*-iGW2IV@Fngy88rshy{sd*G@HSM+GJ~mun!^3R&6&s#x!&7Z|8mrFbi4bfU zQCnlGwpzHDIfStwwAryK_`qvF&I7ch)|kPDv<%`y>-i-WMmB&i=fCFFRf8F2HC1!| zQn6H*X|Pz6YS?HZ4A>H4;JYP)wOYz`G+D=j9SuepFuPqE@r(-6yd(d_2F9w(0U88a z*$7N}br~oVS9=__xp{j&7|Y{qAB;uWPR6BF0}5JBy-O{l>d8LxDcQfAT23`m?~%{Q zF&o4$fFQyDXos_TQhxkmX=lDA_dmMHFUhZ~Whe8j{oba{e{JjYo-VbPdY?7M){)Qa zsrBR_#3oyu0BRF#l_}&vu{8ZfUK1?M2*}pjy`*NZsR>r?u_s6k4<+yoFb_6Ex5Mkq?pPfyHD$%A3oF?h4$Q|hyNYCrjs9Ob_sXo;;- zhp8_>pf>HLe4}+alpI0x!1aMI&wDxG>NI;f)K}CA$Z}A}sN>`~IoUv+q)w63Htg7z z$Y(hspD32b{u?4UIe6MJZ1AHN{MOd%b%7h|)ZYyCte5-zP)$7X0|hQfBXxK8PH zNcSjHO`WB{U@kW{Z30dgKw9Mm&F#C>z7OqgH*9O()wOS#rtQQJkyr<&Gb|SflJX|2 z+|Gu-Qg>PQ|BZZGPyJ55V`ubtzQ{w?7x{yFM9!1TExyPT8iPMU{Y5>c5xGFVCl{B~ z6bhgj@&ky-OaFZ|T-8FnX2+Hd{Ix`5{Ns)BoaAqs1nopipTofoaFCH70f#F@o$DVz zF@ZBDa^*VW1M#{7S-$_$4jkIi*Y;9m|?F$tKtghOvC$qJy24l^k~}n;LTA z>VUtUTALyKTQ#%8;Q|(ITO~oX)ldtnu`Q&r%BJKJ2hzLMSZ#L-i!M*3Y_zkU&LNN3 zw38#)CHZtge{fPPTzro_2F;3d4J9KC<*>~rOi0g8&EbW2YIcl%p$)@^Q31NC#Gj7?%UFd(?`k0iG}Hz$)LRo3evOF^6fxJ z{zsbe$XTC5t_46&LGP5j;@rHH+`OEml>B^9lBt;qEigv2ef?jITuxy@Zec-jYEE8O zLV+ErasL3U4H$3|(zDZ9W!yZWiT?l$`lhD$EAE|=0O@TzFv50Fz8Jd}VD{Fpu&o1I zw}we47lI~FEX+>MgvEj=X+e5wItu{81N0PnYO%D5vzwIPvx;LmJ&k^qb=?2C*^48( zcG)$9o&`#To@vA4dipgRmauB1wG?Q(qrfDBxH-5+15D4FMf7}nF)MZ!(67@A=|%J# z^qV&9WW&xj>|(>NHY~Maw-xkT^b-1Q`W<>H{jLqW+px@rJ#E;_hP`b#fCc^{WoTEm zO_bopX_Kz~f2YO6dBM^KXmOh|);4TX*Z-}~4{9?|8=c?Upn!;6n}#hA?JKyNUTY6Y z((7y(qOQCY+5kGA{(%0_h7~s4zFF(jo9S)OMiJ@lpmBHFum^#r?btZtztQBSLpil< z$72t@|G9BLgK-boa0hnWj+`!^%JqR{hC4s4)^oLw^d)_ikGk>`InFA$6E;Y-wo>b- z=`+*?T4lpZ8}=oqK%KK{xnJ5_?IziW`If!_CM^9Oecpzlpek9XDEJn*pV;HJ3VVA z*@tf$t99O~X+anPBLTuOLPo?mFk&0l*s#`yBWzgL$T+gOSq20}B%7SIVK{;UN|_(@ z|9^ItQ2-Az9yT1+l%8e4)Ocaf$GOPa1W+|5p!9zYt_zGQzn+mf{}?I#hK zWG0O#O)5*89u4>`lTPN_a8IIshBj{anw>n^Og>AV9443P!{pg;ybUMVaH0(-H8KSp zdHULLGEbh=|6Sx6!jh-hhEwe18TOClF)@`qc}B40N&5%#*lA;CMzgfBFjl6H8D+!i zHk@I@dK=DcWX5o`8E?Z`JZ*CRchTl$mNpQ6%eK=7()$0ft6pQ~^0b-5(k2&Z14kR? zvqu}A;T$_@7BO$aaX01-8_ug|7Ta(>f7*(5Xn1?w?n&7@EM-lgv0*rUm9yX4e19R*_#qqVK#BLAF8!5l$5-($XHjxt{{$C%?bTyDeF zHf*+G*gxZ%O(o_O^9_soY32;`wGCI;u*rspFK5m&=a_G8c!UjC+He(%I(ullEwDD2 z=9*2A!?eQ6g#UBHMDRiLjgTefPdbPGb88+3=QjJtJMe~82~q}9Nck*d|Hxc>(M+y0 zH`qmh-Bimhf`2?e3hJXQfZwdT<$|ocy8zgUhSUqsC2ax|_f!ADdnKrn?9bP))Fc??0^0 zYP7(e1SO&S=hu~#7>%XI(vxoP5}8Mb7vu^X5|fAw>;?rKZ-GAc0omjAHRhIhBDhD*wd`?%mKrIN3QuI{GqYZlA8ngw z%*+OAHyymr(C7Af_CRuOUN$TgcN!T+EGXpWZ%hkPJcp^rR#hms1B)Fgxo3&wY8NLa90&vV@bL01XtxLc#+F)2su0565fWW1sWn>>5(hxJ|7dG1``jCz ziXiV{oG0C*08=Y|SnI=fCl zGy1T}n$9L&0UmwZT$9JP4?~FQUTREE;met_5jA=i2R|s^Y#Ei$mUB3dt4Lz;1X#?O z;f9P{cm@H){BEpFW81?xf{wM;Ty{+OE=aDf%x2-n!}B7eg_|#Y7o4$H6tHU+g^BGE-_gJg36*m|IiJOcS&l2X!oN+{~GFjE;$hzix0-um_`q@-!I7fW{&XSKgf~vqNo}IXk!O z%}_@It}FzWYV7RUrxwcaG~NsJvO;Mk%&@wNJ{G{{Pv|qEsdwu>FweOi>q2U47tQXI zK4b-lF*|qV%jRNJ$yamkG|l@(tM)u}O`CPgY0VcLr<6X&7XV9eLU2rQL2wEw;qynq zX~8vk`d08A{GM&bCl~Oy^8-tJo(APW2mV_NXO(az>{?X9FS{5XE_Q+J22tn_DFeV)}BL1xlX$M zVDs#hr1C%D+upuX!~cd~TXPJ%V*d`K)+@^II{TjBSBKjRF8(f&E+UsO zmspns7wn>f-zb-Oc=C7gbIEjR2erLjf?bkbJe%o}#;qfZ2fss2+$XzVTBKNisI_wf zJHHC3GjlBrP4jKNzgQkp!eOBndB#dKQ|n!YondG4ka(H!Ea!0hvDFBbs1P8T&}hKJ z40L68do{=sWt%pvBxa=$a3mhct>FuH0^`F(GU*_ha*&cqfLqP+P0y^f>JGoGtl}k$ zhUo>hJt3eJ$I7wRGl0=sB-)FyZ@n{&!mh$#VTv%A8=IS*Fj?4Jn2MCbNVZ%UAC|x9IH`Zoi+aPqe4`&Nuk0T{@=23hZ z!+r?hP^c@C!?j}{Um0*Z}>BV9H$6>k5}MGN8f z|GTIWF6^y`yZ;}-&Hue{^ZyID(sml|{9gq9braozt6q;WhTB`t+%11!9Eii=c7GgP z@JWF?{dsVwe<KxU``?!51y56~y+ix5Nq0|LS_M#*Sk6?-#!Dzu$!6Ly5!4|=1Afc}a?hA!N4_Kehux|Z@ z!-eC8vxM&mHwgC#j|(pg?}v9C4#~hxjY;74c(aJD+nc3$oLsq+Qrhb}S~txLK~smmmnB`#ZCPPp856}twyCb$l9 z9p}2pb(8B?u0Kn~(jaM))F6FHx#19L3_{k@$HT6XSCnY{&f3C9h4nX zI*jNrufs%v!~p%n`epV49|_8=e#JdFt0qX@m|Zlj(FYk z_VG^huJvB*{i*lQJ{~^tKEr)p_xZ%H2-H=2b zTUDp3R~=P7_6zna^n2NFgWq|7iGQ4bng8ql`~2?&_y%MJObA#Ta4t|B7#CO(_(tG? zzz0FWL4AX!1$`8BEx3Jfdhod5wZY$oIEVBK85z9 zu&=_Y@J`{T@OQ$Gs|D&V>S}d^`fH7oCP6bwvsUwi)4aW6aW+Z(?P!S+Ub% z_r*Tx)VY(n)A~-=I|p-}}QcX~hwDqoiiq8?AJT#^Yw4(FJ*>hnlpD~QCS&T3$nh;4$Q93{wN3K zq~|QiIiDMxJ2H1?A7P)|K1=%iloy#dA@4xGEWbE^P5%9Y#DX~m-xh`x))nq6axEHE zw7Td)-{ijY`(Er9(QjhEFZy@vZ|c8ofM`I`fE5Go4NMuhaNw0ev4f@#Ix{$U@R-4e zhIAZKIb>I{Yq6nt(@??CzC+gx{nLZa8FFskRMC8HjW zE*iaQjN6#%F-OLRjh#OB>bTT#?~P~1myF*xK{dfP;fIL{6YF2XFAaNX-z5J@lP6sv zX=Ig6VjE%m@@3u2^I!h`mAq1@zn<1@+PkkZubN&xIz4*& z;^}|QD4lV5rf%kqwCtPuwEC?LK@E$R3zv^t{!?R7&1=!3csZhScO z!!sN88~1IB+q8aj;O4it$hOSbinos4dgr5xk1lTOzwP+;jP3h&blb6Ir*`Mck5wNp z*`?Su=M%{%lRtU7d))4OdusRmytjPs<$cBbzWub{r>FM!*?;si{bvV1PyPJU0|^Iq zAMA1P<3n8!Z9g1$_@gg6eX;dO?2#>B#(ufwXs4rFzv}$ewqsq6?Ks~3_$McNo!EOa z`Q+!P(ocPHI{WnTGlgfq`FhaT7r!a}=GxiHv%j7jb?))E1dR9@=cVTtUGTcl@O|j_ z8!mRbxa)`HAC6qgzx3_plFK)LwEXzzmB~Lj|Fr0;@72}UqON^>J@xvr8v}1#xmkPj z@y}Clx!rpEcF66`zr_D?W{cT4m|4n=<4Iqe~SKm^GWEF9e?Tn`tE7f)2GB6LO&MkGY6e5b=eRMVoy0k?dUOW z!aWURv)g=!7UL&C=!T2^G>m5hPcKd4VnWTqwo*Pk+(01o1h)>JE$0q1wK+?F{FTWC z?3EybpE*=M5UjQecoWeWGzH#6G##vvh48|GMtC#8Mzk4ig|`pw*ERB9T&qJhn(SULq2dBIvywDWUPlH=Y4QKE(H5yARdg1u>tIl`FIQ5o;w2X208}! z-Oj?>fi7@w2D*Z;;_H-%Qc?bJ5Iqdu0n`(0k8G+hHHaEP)lj3U3DkUe=g$&qJ@p~A zAKvP749=-upnjt6g8iZ3-r3^=hyVQGES`?;ME9iQ=|nmij;QyM?~?D9@0XvDpOK%J zUy}bK|4sf>!6=**t_ry#RH0TRDDpus4&*I13iF>Z|2990!DMSwP#eq>xEZ#BIW2G% zNSUt%?gBX20vQ9yy-k3mfelZz;g?o0XYm|CJ3)K6C^!ca2m}J%lWf=qr|`zGX#~H2 zj`#ETrT#-B;2#JMvNwhPAtAvw;_fB<$Cd?f36*PkLZCv90zZL28!%+ArgG;k60U6M zV8etvvm^)<1n~@PY!C#p2b0_iYDyvcX0R$Fqq^#1lnGhV8(acL5C-S*kTb;3?XPAK zXazbr#=@4>3nFcJO4BhGK}>T?zGqz10cW^VCFq7DSKvhIxS*$?mmpq{KqixuHvFm$ z&#+-Q(exU7;j8&ts34U;&@laf;6OvmsI-zDm0WKPD2E3$>wom@c?(EE0YCoi|Jy?( zFWCBEQ}-|AZZ&YbzXQYo!{IePT~RMMyjV_K=?QSyY&Ll83*lVX+i-Ym8Cda$z<$3) z|4IMFAclhXQVHQ$hlJ_CcrxDbUMdyi&jiBTsY03I%veaKe#!hIa1;c=+n^E!$%0gP z7gPqk4JsSn2URRE2ucJ-uym+G|*|V({!hLr|nMroIZ0p;B?68jMEjTt4`OQZaUp^ z`o-y2@QNsB##!j>;4E>5TYt_{XLn~`=Wyp#@RLS4zwW%uc`JBIN1Ts3A9Ft8e9HN} z^Y_j_IA3`&{wJw`o z_PTuTa?s_l%U3SPT~4~3cKO!jhRa=--(Bvz{Nd{2s&du2Cb<^78eB_UjjrXcCf6md zjjn55-*?^M`XP8=dtAS8J??ta^|b5PuD4u&aeXLlC-stcllGQoNHe9`(p>3aX)$+0wbv`O?>=XQbat?@1rIN!>cQCA+1&S>0ZC+vv92?SR`!x6^K4yPb8r zJ#m-2tK7rf)$Uq%oqLpfH}@Xyz1$PrlfbXbcJJq2;y&K}Rrh)B z3)~mFzu~^vy}`ZFeTDlf_ciY8+z-27l}W(kQ_D262w8VoFIj>tS(Ym6EgK{=$tq>l zvXL^2tWNe4_=8hq(`3_Si)8P}-j&tMmdn=2*2&h(K9Fsc?Ue189hZG0J16^2c0qPU zc2#y=c2jms_CSv0&T<#ItK3cQBUj1&MXJWZY{&z9%P^W??yGI<5~mz8ph zyiPt^K2|Q|3|G9SSPVYtJBoJ|^@^>EZHgU=j}@ON_9zZ1jwwzkPASePzENCJTvc3G+*CYN zJW~9r_{+o5!`Z{t!_A`uc(EZKVIFFa6pu9UXZ0Rg9z`DgJqCIV_9*k1>#@*dx5q(` z+a7n@b!gYAU9Wa&o@P(0=S0t$p7T8yd#>=@?zz)*m*;NJy`G>b=%`z4r&+o4mJpf8@R2`*ZJu-iN^l_V)?%QTu3pbUvMZy7+YS z>EYAMXQ+?Or_twqpAURC`fT>u1s?JqpF=)pe9rq^_Iczh@^$ic@s;{2eB1eU^!4%$ z^$qvc_(u4a`&xZR`Ht}&=erU7=!3q8eUJDa^*!c$*7sZA^S>8k9htWv(C zT%&wnxk0&6xmmeYd02T;`Hk|N@;l`PyI)Vgc)v8ibU(dcmS2uvk>6nO zU_xLxxx9tMZx`p%Yse8mBBT^=HR;EF%WTB6MQ;^ z35g0Zgv&33lGzT>B6GJ zI)(KLOAJd1>m8;K%L*G1HYjXJm?3O&*ov@KVQa$P4|^Cc2p5Hm!=1vj!v}_!hL?vA z53dTZ4IdjmA^fFq68=i~l<KJt=b(}gyouSTD z=co(RMe2U)0cw+alzNi-W%U&GtLmBR*VS*R7ps@3m#UYkcd0LHM4BK?geFQ8tLdzX z*Q9Ionk-F@rjI6HGgM>Llxv1-YBVD?R*1w*(Y&fzs9CD1*EDKYYSw5rX|`&%X?AFK zX?APA(^A?XZHhKq+ecfVEz%ZiE40J4mD*};t=6oaq@Apts-3Q#t(~h~pk1hK)PAVl zq1~n3qy1F-x%MmV3GFHE8SPo^x7vphJ`sr#hKS)2RS~rj=7{kTlOv`^yc#hhVphcL zh$RurA{rvzi&zt}E@FMe2NAm?jzoMFaU$Y$#5WP=BCbW;iFl%O(Yfj5x^}vbI&Zj? z?yn2db=Gy&b=UROCFqiMX}SzurY>98PgkOwpj)6@rP~F0lH0n+k&%&ckzFE_Bl|@5 ziyRm^B+?LB5ji5VI&x&BC2~dN-pF&2mm_aS{u=pvR~jFrlZBt9?{;> z%4q-SplD6BE;<_CL>U*I5S<)d6kQTMJi02nHrf(BE_z}#iGC$|O7!gLh0#khLNmfM z;xbY)dS~b}vNQT*6lCL_yp^##rMI*`Z4nEGnZ$s$h?qwC-YwB<0e0i P;y(p!2E5fz=9B*e+vBH& literal 0 HcmV?d00001 diff --git a/Booster.xcodeproj/xcshareddata/xcschemes/Booster.xcscheme b/Booster.xcodeproj/xcshareddata/xcschemes/Booster.xcscheme new file mode 100644 index 0000000..cfbfea4 --- /dev/null +++ b/Booster.xcodeproj/xcshareddata/xcschemes/Booster.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Booster.xcodeproj/xcuserdata/godpp.xcuserdatad/xcschemes/xcschememanagement.plist b/Booster.xcodeproj/xcuserdata/godpp.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..2d5a2c5 --- /dev/null +++ b/Booster.xcodeproj/xcuserdata/godpp.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,32 @@ + + + + + SchemeUserState + + Booster.xcscheme_^#shared#^_ + + orderHint + 0 + + BoosterExamples.xcscheme + + orderHint + 1 + + + SuppressBuildableAutocreation + + BCE85AAD2236A972009B9EA7 + + primary + + + BCE85AB62236A972009B9EA7 + + primary + + + + + diff --git a/BoosterExamples/AppDelegate.swift b/BoosterExamples/AppDelegate.swift new file mode 100644 index 0000000..293ff84 --- /dev/null +++ b/BoosterExamples/AppDelegate.swift @@ -0,0 +1,46 @@ +// +// AppDelegate.swift +// BoosterExamples +// +// Created by ParkSungJoon on 11/03/2019. +// Copyright © 2019 Park Sung Joon. All rights reserved. +// + +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + func applicationWillResignActive(_ application: UIApplication) { + // 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. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. + } + + func applicationDidEnterBackground(_ application: UIApplication) { + // 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. + // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. + } + + func applicationWillEnterForeground(_ application: UIApplication) { + // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. + } + + func applicationDidBecomeActive(_ application: UIApplication) { + // 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. + } + + func applicationWillTerminate(_ application: UIApplication) { + // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. + } + + +} + diff --git a/BoosterExamples/Assets.xcassets/AppIcon.appiconset/Contents.json b/BoosterExamples/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d8db8d6 --- /dev/null +++ b/BoosterExamples/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/BoosterExamples/Assets.xcassets/Contents.json b/BoosterExamples/Assets.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/BoosterExamples/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/BoosterExamples/Base.lproj/LaunchScreen.storyboard b/BoosterExamples/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..bfa3612 --- /dev/null +++ b/BoosterExamples/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BoosterExamples/Base.lproj/Main.storyboard b/BoosterExamples/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f1bcf38 --- /dev/null +++ b/BoosterExamples/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BoosterExamples/Info.plist b/BoosterExamples/Info.plist new file mode 100644 index 0000000..16be3b6 --- /dev/null +++ b/BoosterExamples/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/BoosterExamples/ViewController.swift b/BoosterExamples/ViewController.swift new file mode 100644 index 0000000..ed28be5 --- /dev/null +++ b/BoosterExamples/ViewController.swift @@ -0,0 +1,20 @@ +// +// ViewController.swift +// BoosterExamples +// +// Created by ParkSungJoon on 11/03/2019. +// Copyright © 2019 Park Sung Joon. All rights reserved. +// + +import UIKit + +class ViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + // Do any additional setup after loading the view, typically from a nib. + } + + +} + diff --git a/BoosterTests/BoosterTests.swift b/BoosterTests/BoosterTests.swift new file mode 100644 index 0000000..8a2b9ef --- /dev/null +++ b/BoosterTests/BoosterTests.swift @@ -0,0 +1,34 @@ +// +// BoosterTests.swift +// BoosterTests +// +// Created by ParkSungJoon on 11/03/2019. +// Copyright © 2019 Park Sung Joon. All rights reserved. +// + +import XCTest +@testable import Booster + +class BoosterTests: XCTestCase { + + override func setUp() { + // Put setup code here. This method is called before the invocation of each test method in the class. + } + + override func tearDown() { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() { + // This is an example of a functional test case. + // Use XCTAssert and related functions to verify your tests produce the correct results. + } + + func testPerformanceExample() { + // This is an example of a performance test case. + self.measure { + // Put the code you want to measure the time of here. + } + } + +} diff --git a/BoosterTests/Info.plist b/BoosterTests/Info.plist new file mode 100644 index 0000000..6c40a6c --- /dev/null +++ b/BoosterTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/Sources/Supporting Files/Booster.h b/Sources/Supporting Files/Booster.h new file mode 100644 index 0000000..3f7a05f --- /dev/null +++ b/Sources/Supporting Files/Booster.h @@ -0,0 +1,19 @@ +// +// Booster.h +// Booster +// +// Created by ParkSungJoon on 11/03/2019. +// Copyright © 2019 Park Sung Joon. All rights reserved. +// + +#import + +//! Project version number for Booster. +FOUNDATION_EXPORT double BoosterVersionNumber; + +//! Project version string for Booster. +FOUNDATION_EXPORT const unsigned char BoosterVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/Sources/Supporting Files/Info.plist b/Sources/Supporting Files/Info.plist new file mode 100644 index 0000000..e1fe4cf --- /dev/null +++ b/Sources/Supporting Files/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + +