├── .gitmodules ├── Rakefile ├── Podfile ├── PodioPlatformKit └── Common │ ├── PodioPlatformKit.h │ └── Models │ ├── PKTComment+Platform.h │ ├── PKTComment+Platform.m │ ├── PKTSpace.h │ ├── PKTItem+Platform.m │ ├── PKTSpace.m │ └── PKTItem+Platform.h ├── Podfile.lock ├── Documentation ├── 6-DebuggingAndErrorHandling.md ├── 1-GettingStarted.md ├── 4-LocalStorage.md ├── 5-Files.md ├── 2-BasicPrinciples.md └── 3-Authentication.md ├── .gitignore ├── Scripts ├── prepare_framework.sh └── build_framework.sh ├── PodioPlatformKitTests ├── Info.plist └── PodioPlatformKitTests.m ├── LICENSE ├── README.md ├── PodioPlatformKit.podspec └── PodioPlatformKit.xcodeproj ├── xcshareddata └── xcschemes │ ├── Framework.xcscheme │ └── PodioPlatformKit.xcscheme └── project.pbxproj /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "Vendor/podio-objc-core"] 2 | path = Vendor/podio-objc-core 3 | url = https://github.com/podio/podio-objc-core.git 4 | -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- 1 | WORKSPACE = 'PodioPlatformKit.xcworkspace' 2 | SCHEME = 'PodioPlatformKit' 3 | 4 | desc 'Run unit tests' 5 | task :test do 6 | sh "xcodebuild -workspace #{WORKSPACE} -scheme #{SCHEME} clean build test" 7 | end -------------------------------------------------------------------------------- /Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | 3 | target 'PodioPlatformKit' do 4 | 5 | pod 'DDCometClient', '~> 1.1' 6 | pod 'FXReachability', '~> 1.3' 7 | end 8 | 9 | target 'PodioPlatformKitTests' do 10 | 11 | pod 'Expecta' 12 | end -------------------------------------------------------------------------------- /PodioPlatformKit/Common/PodioPlatformKit.h: -------------------------------------------------------------------------------- 1 | // 2 | // PodioPlatformKit.h 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 15/02/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PodioKitCore.h" 10 | 11 | #import "PKTSpace.h" 12 | #import "PKTItem+Platform.h" 13 | #import "PKTComment+Platform.h" 14 | -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTComment+Platform.h: -------------------------------------------------------------------------------- 1 | // 2 | // PKTComment+Platform.h 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTComment.h" 10 | 11 | @interface PKTComment (Platform) 12 | 13 | + (PKTAsyncTask *)addCommentWithText:(NSString *)text itemID:(NSUInteger)itemID; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - DDCometClient (1.0.1) 3 | - Expecta (0.4.2) 4 | - FXReachability (1.3.1) 5 | 6 | DEPENDENCIES: 7 | - DDCometClient (~> 1.0) 8 | - Expecta 9 | - FXReachability (~> 1.3) 10 | 11 | SPEC CHECKSUMS: 12 | DDCometClient: d0c81b6bf58c74b29114440b94ef7027f450f055 13 | Expecta: 78b4e8b0c8291fa4524d7f74016b6065c2e391ec 14 | FXReachability: 1d9a83617474f2a4e1b53c11a13ec4337428c126 15 | 16 | COCOAPODS: 0.36.3 17 | -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTComment+Platform.m: -------------------------------------------------------------------------------- 1 | // 2 | // PKTComment+Platform.m 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTComment+Platform.h" 10 | 11 | @implementation PKTComment (Platform) 12 | 13 | + (PKTAsyncTask *)addCommentWithText:(NSString *)text itemID:(NSUInteger)itemID { 14 | return [PKTComment addCommentForObjectWithText:text referenceID:itemID referenceType:PKTReferenceTypeItem]; 15 | } 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Documentation/6-DebuggingAndErrorHandling.md: -------------------------------------------------------------------------------- 1 | # Debugging & Errors 2 | 3 | Error handling in PodioPlatformKit follows the normal Cocoa error handling patterns, which means it uses exceptions for programmatic errors and `NSError` for runtime errors. For errors that occur during a network requests, the error is provided in the `PKCRequestCompletionBlock` callback together with the [PKCResponse](https://github.com/podio/podio-objc-core/blob/master/PodioKitCore/Common/Core/PKCResponse.h) object. 4 | 5 | You can inspect the `statusCode` and `body` properties of the response object to determine if the error was a client or server side error. -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | build/* 3 | DerivedData/* 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | *.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | 18 | .DS_Store? 19 | Icon? 20 | 21 | # Thumbnails 22 | ._* 23 | 24 | # Files that might appear on external disk 25 | .Spotlight-V100 26 | .Trashes 27 | .DS_Store 28 | 29 | # appledoc 30 | docset-installed.txt 31 | */docset 32 | 33 | # Generated documentation 34 | Docs 35 | 36 | # AppCode 37 | .idea 38 | 39 | # CocoaPods 40 | Pods 41 | 42 | # Test coverage 43 | Coverage -------------------------------------------------------------------------------- /Scripts/prepare_framework.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | export FRAMEWORK_LOCN="${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework" 6 | 7 | # Create the path to the real Headers die 8 | mkdir -p "${FRAMEWORK_LOCN}/Versions/A/Headers" 9 | 10 | # Create the required symlinks 11 | /bin/ln -sfh A "${FRAMEWORK_LOCN}/Versions/Current" 12 | /bin/ln -sfh Versions/Current/Headers "${FRAMEWORK_LOCN}/Headers" 13 | /bin/ln -sfh "Versions/Current/${PRODUCT_NAME}" \ 14 | "${FRAMEWORK_LOCN}/${PRODUCT_NAME}" 15 | 16 | # Copy the public headers into the framework 17 | /bin/cp -a "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/" \ 18 | "${FRAMEWORK_LOCN}/Versions/A/Headers" 19 | 20 | # Copy Pods public headers 21 | find -L "${PODS_ROOT}/Headers/Public/" -name "*.h" -exec cp "{}" "${FRAMEWORK_LOCN}/Versions/A/Headers" \; -------------------------------------------------------------------------------- /PodioPlatformKitTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.podio.$(PRODUCT_NAME:rfc1034identifier) 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 | -------------------------------------------------------------------------------- /PodioPlatformKitTests/PodioPlatformKitTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // PodioPlatformKitTests.m 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 21/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface PodioPlatformKitTests : XCTestCase 13 | 14 | @end 15 | 16 | @implementation PodioPlatformKitTests 17 | 18 | - (void)setUp { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown { 24 | // Put teardown code here. This method is called after the invocation of each test method in the class. 25 | [super tearDown]; 26 | } 27 | 28 | - (void)testExample { 29 | // This is an example of a functional test case. 30 | XCTAssert(YES, @"Pass"); 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2014 Copyright Citrix Systems, Inc. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 7 | of the Software, and to permit persons to whom the Software is furnished to 8 | do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | 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 THE 19 | SOFTWARE. -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTSpace.h: -------------------------------------------------------------------------------- 1 | // 2 | // PKTSpace.h 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTWorkspace.h" 10 | 11 | @interface PKTSpace : PKTWorkspace 12 | 13 | /** 14 | * Returns an array of spaces (PKTSpace) the user is a member of. 15 | * 16 | * @return An task providing the spaces on success. 17 | */ 18 | + (PKTAsyncTask *)fetchAllSpaces; 19 | 20 | /** 21 | * Fetches the personal space of the user. The name of a personal 22 | * space will be "{user_id}-{project_id}-personal". 23 | * 24 | * @return A task providing the personal space (PKTSpace) on success. 25 | */ 26 | + (PKTAsyncTask *)fetchPersonalSpace; 27 | 28 | /** 29 | * Fetches the public space of the project. 30 | * 31 | * @return A task providign the public space (PKTSpace) in success. 32 | */ 33 | + (PKTAsyncTask *)fetchPublicSpace; 34 | 35 | /** 36 | * Creates a new space with a given name. 37 | * 38 | * @return A task which succeeds if the space is created. 39 | */ 40 | + (PKTAsyncTask *)createSpaceWithName:(NSString *)name; 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTItem+Platform.m: -------------------------------------------------------------------------------- 1 | // 2 | // PKTItem+Platform.m 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTItem+Platform.h" 10 | #import "PKTAsyncTask.h" 11 | #import "PKTItemFilters.h" 12 | 13 | @implementation PKTItem (Platform) 14 | 15 | + (PKTAsyncTask *)fetchItemsInSpaceWithID:(NSUInteger)spaceID templateID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(PKTItemFilters *)filters { 16 | return [self fetchItemsInAppWithID:templateID spaceID:spaceID offset:offset limit:limit sortBy:sortBy descending:descending filters:filters.filtersDictionary]; 17 | } 18 | 19 | + (PKTAsyncTask *)fetchItemsInPersonalSpaceForTemplateWithID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(NSDictionary *)filters { 20 | return [self fetchItemsInPersonalSpaceForAppWithID:templateID offset:offset limit:limit sortBy:sortBy descending:descending filters:filters]; 21 | } 22 | 23 | + (PKTAsyncTask *)fetchItemsInPublicSpaceForTemplateWithID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(NSDictionary *)filters { 24 | return [self fetchItemsInPublicSpaceForAppWithID:templateID offset:offset limit:limit sortBy:sortBy descending:descending filters:filters]; 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PodioPlatformKit 2 | 3 | PodioPlatformKit is a Objective-C client library for the [Podio Platform API](https://developers.podio.com/). It provides an easy way to build iOS and Mac apps on top of the Podio Platform. 4 | 5 | PodioPlatformKit uses ARC and is based on NSURLSession, which means it supports iOS 7.0 and above and Mac OS X 10.9 and above. 6 | 7 | PodioPlatformKit is being actively developed by the Podio team. We encourage contributions through pull requests and the Github issue tracker. 8 | 9 | ## Integrate with an existing project 10 | 11 | To use PodioPlatformKit, perform the following steps: 12 | 13 | 1. Clone this repo by running `git clone --recurse-submodules git@github.com:podio/podio-objc-platform.git` 14 | 2. Enter the cloned directory `cd podio-objc-platform` 15 | 3. Run `./build.sh` to build the framework 16 | 4. You can now find the built framework as `PodioPlatformKit.framework` in your desktop folder at `~/Desktop` 17 | 5. Drag the framework into your Xcode project 18 | 6. Import the umbrella header wherever with `#import ` 19 | 20 | Done! 21 | 22 | ## Using PodioPlatformKit 23 | 24 | ### Set up your API key and secret 25 | 26 | Before you can talk to the Podio Platform API, you need to generate a new API key. You can find instructions on how to do so [here](https://developers.podio.com/api-key). 27 | 28 | Once you have a key and secret, you need to configure PodioPlatformKit to use it. To do so, add the following code to your `application:didFinishLaunching:options:` method in your app delegate: 29 | 30 | ```objective-c 31 | [Podio setupWithAPIKey:@"my-api-key" secret:@"my-secret"]; 32 | ``` 33 | 34 | That's it! You are now good to start using PodioPlatformKit. 35 | 36 | ## Getting Started & Documentation 37 | 38 | You can find a getting started guide and full documentation [here](Documentation). -------------------------------------------------------------------------------- /Documentation/1-GettingStarted.md: -------------------------------------------------------------------------------- 1 | # PodioPlatformKit 2 | 3 | PodioPlatformKit is a Objective-C client library for the [Podio Platform API](https://developers.podio.com/). It provides an easy way to build iOS and Mac apps on top of the Podio Platform. 4 | 5 | PodioPlatformKit uses ARC and is based on NSURLSession, which means it supports iOS 7.0 and above and Mac OS X 10.9 and above. 6 | 7 | PodioPlatformKit is being actively developed by the Podio team. We encourage contributions through pull requests and the Github issue tracker. 8 | 9 | ## Integrate with an existing project 10 | 11 | To use PodioPlatformKit, perform the following steps: 12 | 13 | 1. Clone this repo by running `git clone --recurse-submodules git@github.com:podio/podio-objc-platform.git` 14 | 2. Enter the cloned directory `cd podio-objc-platform` 15 | 3. Run `pod install` to install dependencies 16 | 4. Open the `PodioPlatformKit.xcworkspace` file created 17 | 5. Select the *Framework* scheme, then press `cmd+B` to build 18 | 6. You can now find the built framework as `PodioPlatformKit.framework` in your desktop folder at `~/Desktop` 19 | 7. Drag the framework into your Xcode project 20 | 8. Import the umbrella header wherever with `#import ` 21 | 22 | Done! 23 | 24 | ## Using PodioPlatformKit 25 | 26 | ### Set up your API key and secret 27 | 28 | Before you can talk to the Podio Platform API, you need to generate a new API key. You can find instructions on how to do so [here](https://developers.podio.com/api-key). 29 | 30 | Once you have a key and secret, you need to configure PodioPlatformKit to use it. To do so, add the following code to your `application:didFinishLaunching:options:` method in your app delegate: 31 | 32 | ```objective-c 33 | [Podio setupWithAPIKey:@"my-api-key" secret:@"my-secret"]; 34 | ``` 35 | 36 | That's it! You are now good to start using PodioPlatformKit. -------------------------------------------------------------------------------- /PodioPlatformKit.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | 3 | s.name = 'PodioPlatformKit' 4 | s.version = '0.1.8' 5 | s.source = { :git => 'https://github.com/podio/podio-objc-platform.git', :tag => s.version.to_s, :submodules => true } 6 | 7 | s.summary = "PodioPlatformKit is an Objective-C client library for the Podio Platform API." 8 | s.homepage = "https://github.com/podio/podio-objc-platform" 9 | s.license = 'MIT' 10 | s.authors = { 11 | "Sebastian Rehnby" => "sebastian@podio.com", 12 | "Romain Briche" => "briche@podio.com", 13 | "Lauge Jepsen" => "lauge@podio.com" 14 | } 15 | 16 | s.ios.deployment_target = '7.0' 17 | s.osx.deployment_target = '10.9' 18 | s.requires_arc = true 19 | 20 | s.default_subspec = 'Common' 21 | 22 | core_path = 'Vendor/podio-objc-core/PodioKitCore' 23 | 24 | s.subspec 'Common' do |sp| 25 | 26 | sp.source_files = [ 27 | "PodioPlatformKit/Common/**/*.{h,m}", 28 | "#{core_path}/Common/**/*.{h,m}" 29 | ] 30 | 31 | sp.public_header_files = [ 32 | "PodioPlatformKit/Common/**/*.h", 33 | "#{core_path}/Common/**/*.h" 34 | ] 35 | 36 | # iOS only 37 | sp.ios.source_files = [ 38 | 'PodioPlatformKit/UIKit/**/*.{h,m}', 39 | "#{core_path}/UIKit/**/*.{h,m}" 40 | ] 41 | 42 | sp.ios.public_header_files = [ 43 | 'PodioPlatformKit/UIKit/*.h', 44 | "#{core_path}/UIKit/*.h" 45 | ] 46 | 47 | sp.ios.frameworks = 'UIKit' 48 | end 49 | 50 | # Push (real-time) functionality needs to be explicitly included 51 | # due to additional dependencies 52 | s.subspec 'Push' do |sp| 53 | sp.source_files = "#{core_path}/Push/**/*.{h,m}" 54 | sp.public_header_files = "#{core_path}/Push/**/*.h" 55 | 56 | sp.dependency 'PodioPlatformKit/Common' 57 | sp.dependency 'DDCometClient', '~> 1.1' 58 | sp.dependency 'FXReachability', '~> 1.3' 59 | end 60 | end 61 | -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTSpace.m: -------------------------------------------------------------------------------- 1 | // 2 | // PKTSpace.m 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTSpace.h" 10 | #import "PKTClient.h" 11 | #import "PKTOrganizationsAPI.h" 12 | #import "PKTAsyncTask.h" 13 | #import "NSArray+PKTAdditions.h" 14 | 15 | @implementation PKTSpace 16 | 17 | + (PKTAsyncTask *)fetchAllSpaces { 18 | PKTRequest *request = [PKTOrganizationsAPI requestForAllOrganizations]; 19 | PKTAsyncTask *requestTask = [[PKTClient currentClient] performRequest:request]; 20 | 21 | return [requestTask map:^id(PKTResponse *response) { 22 | NSMutableArray *spaces = [NSMutableArray new]; 23 | 24 | NSArray *orgs = response.body; 25 | for (NSDictionary *org in orgs) { 26 | NSArray *spaceDicts = [org objectForKey:@"spaces"]; 27 | 28 | NSArray *orgSpaces = [spaceDicts pkt_mappedArrayWithBlock:^id(NSDictionary *spaceDict) { 29 | return [[PKTSpace alloc] initWithDictionary:spaceDict]; 30 | }]; 31 | 32 | [spaces addObjectsFromArray:orgSpaces]; 33 | } 34 | 35 | return spaces; 36 | }]; 37 | } 38 | 39 | + (PKTAsyncTask *)fetchPersonalSpace { 40 | PKTRequest *request = [PKTRequest GETRequestWithPath:@"/space/personal" parameters:nil]; 41 | 42 | return [[[PKTClient currentClient] performRequest:request] map:^id(PKTResponse *response) { 43 | return [[PKTSpace alloc] initWithDictionary:response.body]; 44 | }]; 45 | } 46 | 47 | + (PKTAsyncTask *)fetchPublicSpace { 48 | PKTRequest *request = [PKTRequest GETRequestWithPath:@"/space/public" parameters:nil]; 49 | 50 | return [[[PKTClient currentClient] performRequest:request] map:^id(PKTResponse *response) { 51 | return [[PKTSpace alloc] initWithDictionary:response.body]; 52 | }]; 53 | } 54 | 55 | + (PKTAsyncTask *)createSpaceWithName:(NSString *)name { 56 | return [self createWorkspaceWithName:name organizationID:0]; 57 | } 58 | 59 | @end 60 | -------------------------------------------------------------------------------- /Documentation/4-LocalStorage.md: -------------------------------------------------------------------------------- 1 | # Local storage & caching 2 | 3 | Sometimes only relying on in-memory data is not enough. For example, you might want to persist fetched Podio content to disk across application launches. 4 | 5 | All domain objects in PodioPlatformKit inherits from `PKCModel`. This class is conforms to the `NSCoding` protocol, meaning every subclass can be serialized, for example using `NSKeyedArchiver`/`NSKeyedUnarchiver`. Using PodioPlatformKit in your application, this gives you a lot of flexibility on how to persist these domain objects should you find the need. 6 | 7 | For convenience, PodioPlatformKit provides a very simple key/value solution for storing objects conforming to `NSCoding` on disk with the `PKCDatastore` class. 8 | 9 | ## Using PKCDatastore 10 | 11 | `PKCDatastore` is a thread-safe, disk based key/value store. It can persist any object conforming to `NSCoding` and does so by simply archiving it to disk on a background thread. It also contains its own internal caching mechanism to avoid hitting the disk on every access. This internal cache will, on iOS only, be cleared if a low memory warning is issued. 12 | 13 | To use `PKCDatastore`, you can either use the singleton instance or create your own store: 14 | 15 | {% highlight objective-c %} 16 | PKCDatastore *store = [PKCDatastore sharedStore]; 17 | // or... 18 | PKCDatastore *store = [PKCDatastore storeWithName:@"MyStore"]; 19 | {% endhighlight %} 20 | 21 | The latter will create a seperate location on disk where all objects will be stored. To store an object for a specific key, use the `storeObject:forKey:` method or subscripting: 22 | 23 | {% highlight objective-c %} 24 | NSArray *numbers = @[@1, @2, @3]; 25 | 26 | [[PKCDatastore sharedStore] storeObject:numbers forKey:@"MyNumbers"]; 27 | // or... 28 | [PKCDatastore sharedStore][@"MyNumbers"] = numbers; 29 | {% endhighlight %} 30 | 31 | To retrieve an object from the store, you can use either the synchronous `storedObjectForKey:` or the asynchronous `fetchStoredObjectForKey:`. We encourage using the latter to keep your application responsive and istead register a completion handler on the `PKCAsyncTask` returned from the method: 32 | 33 | {% highlight objective-c %} 34 | NSArray *numbers = [[PKCDatastore sharedStore] storedObjectForKey:@"MyNumbers"]; 35 | 36 | // or... 37 | 38 | [[PKCDatastore sharedStore] fetchStoredObjectForKey:@"MyNumbers"] onComplete:^(NSArray *numbers, NSError *error) ^{ 39 | // Use the numbers... 40 | }]; 41 | {% endhighlight %} -------------------------------------------------------------------------------- /Scripts/build_framework.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | # If we're already inside this script then die 6 | if [ -n "$RW_MULTIPLATFORM_BUILD_IN_PROGRESS" ]; then 7 | exit 0 8 | fi 9 | export RW_MULTIPLATFORM_BUILD_IN_PROGRESS=1 10 | 11 | RW_FRAMEWORK_NAME=${PROJECT_NAME} 12 | RW_INPUT_STATIC_LIB="lib${PROJECT_NAME}.a" 13 | RW_FRAMEWORK_LOCATION="${BUILT_PRODUCTS_DIR}/${RW_FRAMEWORK_NAME}.framework" 14 | 15 | function build_static_library { 16 | # Will rebuild the static library as specified 17 | # build_static_library sdk 18 | 19 | xcrun xcodebuild -workspace "${PROJECT_NAME}.xcworkspace" \ 20 | -scheme "${TARGET_NAME}" \ 21 | -configuration "${CONFIGURATION}" \ 22 | -sdk "${1}" \ 23 | ONLY_ACTIVE_ARCH=NO \ 24 | BUILD_DIR="${BUILD_DIR}" \ 25 | OBJROOT="${OBJROOT}" \ 26 | BUILD_ROOT="${BUILD_ROOT}" \ 27 | SYMROOT="${SYMROOT}" $ACTION 28 | } 29 | 30 | function make_fat_library { 31 | # Will smash 2 static libs together 32 | # make_fat_library in1 in2 out 33 | xcrun lipo -create "${1}" "${2}" -output "${3}" 34 | } 35 | 36 | # 1 - Extract the platform (iphoneos/iphonesimulator) from the SDK name 37 | if [[ "$SDK_NAME" =~ ([A-Za-z]+) ]]; then 38 | RW_SDK_PLATFORM=${BASH_REMATCH[1]} 39 | else 40 | echo "Could not find platform name from SDK_NAME: $SDK_NAME" 41 | exit 1 42 | fi 43 | 44 | # 2 - Extract the version from the SDK 45 | if [[ "$SDK_NAME" =~ ([0-9]+.*$) ]]; then 46 | RW_SDK_VERSION=${BASH_REMATCH[1]} 47 | else 48 | echo "Could not find sdk version from SDK_NAME: $SDK_NAME" 49 | exit 1 50 | fi 51 | 52 | # 3 - Determine the other platform 53 | if [ "$RW_SDK_PLATFORM" == "iphoneos" ]; then 54 | RW_OTHER_PLATFORM=iphonesimulator 55 | else 56 | RW_OTHER_PLATFORM=iphoneos 57 | fi 58 | 59 | # 4 - Find the build directory 60 | if [[ "$BUILT_PRODUCTS_DIR" =~ (.*)$RW_SDK_PLATFORM$ ]]; then 61 | RW_OTHER_BUILT_PRODUCTS_DIR="${BASH_REMATCH[1]}${RW_OTHER_PLATFORM}" 62 | else 63 | echo "Could not find other platform build directory." 64 | exit 1 65 | fi 66 | 67 | # Build the other platform. 68 | build_static_library "${RW_OTHER_PLATFORM}${RW_SDK_VERSION}" 69 | 70 | # If we're currently building for iphonesimulator, then need to rebuild 71 | # to ensure that we get both i386 and x86_64 72 | if [ "$RW_SDK_PLATFORM" == "iphonesimulator" ]; then 73 | build_static_library "${SDK_NAME}" 74 | fi 75 | 76 | # Join the 2 static libs into 1 and push into the .framework 77 | make_fat_library "${BUILT_PRODUCTS_DIR}/${RW_INPUT_STATIC_LIB}" \ 78 | "${RW_OTHER_BUILT_PRODUCTS_DIR}/${RW_INPUT_STATIC_LIB}" \ 79 | "${RW_FRAMEWORK_LOCATION}/Versions/A/${RW_FRAMEWORK_NAME}" 80 | 81 | # Ensure that the framework is present in both platform's build directories 82 | cp -a "${RW_FRAMEWORK_LOCATION}/Versions/A/${RW_FRAMEWORK_NAME}" \ 83 | "${RW_OTHER_BUILT_PRODUCTS_DIR}/${RW_FRAMEWORK_NAME}.framework/Versions/A/${RW_FRAMEWORK_NAME}" 84 | 85 | # Copy the framework to the user's desktop 86 | ditto "${RW_FRAMEWORK_LOCATION}" "${HOME}/Desktop/${RW_FRAMEWORK_NAME}.framework" -------------------------------------------------------------------------------- /PodioPlatformKit.xcodeproj/xcshareddata/xcschemes/Framework.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 60 | 61 | 67 | 68 | 69 | 70 | 72 | 73 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /Documentation/5-Files.md: -------------------------------------------------------------------------------- 1 | # Working with Files 2 | 3 | Files on Podio are represented by the `PKCFile` class in PodioPlatformKit. It will be the type returned for the files of any object that can have associated files such as items, tasks or comments etc. 4 | 5 | ## Download a file 6 | 7 | To download the contents of a file from Podio you have two options. The first one is to download the content directly into memory and get an `NSData` object back. This is appropriate for smaller files and can be done with the following code: 8 | 9 | {% highlight objective-c %} 10 | PKCFile *file = ...; 11 | 12 | PKCAsyncTask *downloadTask = [file download]; 13 | 14 | [downloadTask onComplete:^(NSData *data, NSError *error) { 15 | if (data) { 16 | // Success, do something the data... 17 | } else { 18 | // Something went wrong, handle error... 19 | } 20 | }]; 21 | {% endhighlight %} 22 | 23 | The second option is to save the file directly to disk to avoid keeping its data in memory and risking termination by the OS due to excessive memory use. To do this, there is a second download method on `PKCFile` which allows you to specify a save path: 24 | 25 | {% highlight objective-c %} 26 | PKCFile *file = ...; 27 | NSString *savePath = ...; // The local file path where you wish to save the file 28 | 29 | PKCAsyncTask *downloadTask = [file downloadToFileWithPath:savePath]; 30 | 31 | [downloadTask onComplete:^(BOOL success, NSError *error) { 32 | if (success) { 33 | // Success, now we can load it from disk as needed... 34 | NSData *data = [NSData dataWithContentsOfFile:savePath]; 35 | } else { 36 | // Something went wrong, handle error... 37 | } 38 | }]; 39 | {% endhighlight %} 40 | 41 | ## Upload a file 42 | 43 | You can easily upload a file to Podio to attach to an item or comment. To do so, just use the upload methods provided by the `PKCFile` class. Here is an example on how you can upload a UIImage instance as a JPEG to Podio on iOS: 44 | 45 | {% highlight objective-c %} 46 | UIImage *image = [UIImage imageNamed:@"some-image.jpg"]; 47 | NSData *data = UIImageJPEGRepresentation(image, 0.8f); 48 | 49 | PKCAsyncTask *uploadTask = [PKCFile uploadWithData:data fileName:@"image.jpg"]; 50 | 51 | [uploadTask onComplete:^(PKCFile *file, NSError *error) { 52 | if (!error) { 53 | NSLog(@"File uploaded with ID: %@", @(file.fileID)); 54 | } 55 | }]; 56 | {% endhighlight %} 57 | 58 | To add a file to an item, use the `addFile:` method on `PKCItem`: 59 | 60 | {% highlight objective-c %} 61 | PKCItem *item = ... 62 | PKCFile *file = ... 63 | 64 | [item addFile:file]; 65 | 66 | [[item save] onComplete:^(PKCResponse *response, NSError *error){ 67 | // Item saved with the file added 68 | }]; 69 | {% endhighlight %} 70 | 71 | You can also attach a file to any object by supplying its reference type and ID: 72 | 73 | {% highlight objective-c %} 74 | PKCFile *file = ... 75 | 76 | PKCAsyncTask *attachTask = [file attachWithReferenceID:1234 referenceType:PKCReferenceTypeItem]; 77 | 78 | [attachTask onComplete:^(PKCResponse *response, NSError *error) { 79 | if (!error) { 80 | // File successfully attached to item with ID 1234 81 | } 82 | }]; 83 | {% endhighlight %} -------------------------------------------------------------------------------- /PodioPlatformKit/Common/Models/PKTItem+Platform.h: -------------------------------------------------------------------------------- 1 | // 2 | // PKTItem+Platform.h 3 | // PodioPlatformKit 4 | // 5 | // Created by Sebastian Rehnby on 26/04/15. 6 | // Copyright (c) 2015 Citrix Systems, Inc. All rights reserved. 7 | // 8 | 9 | #import "PKTItem.h" 10 | 11 | @class PKTAsyncTask, PKTItemFilters; 12 | 13 | @interface PKTItem (Platform) 14 | 15 | /** 16 | * Retrieve existing items in a given space for a specific template. 17 | * 18 | * @param spaceID The space ID 19 | * @param templateID The template ID of the template used to create these items. 20 | * @param offset The page offset. Used for pagination. 21 | * @param limit The page limit. Used for pagination. Passing 0 will use the default page size. 22 | * @param sortBy Sort order of the returned items. Permitted values available here https://developers.podio.com/doc/filters 23 | * @param descending YES if the items should be returned in descending order, NO if ascending. 24 | * @param filters Optional filters to to limit the set of items returned. 25 | * 26 | * @return A task delivering the items on success. 27 | */ 28 | + (PKTAsyncTask *)fetchItemsInSpaceWithID:(NSUInteger)spaceID templateID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(PKTItemFilters *)filters; 29 | 30 | /** 31 | * Retrieve existing items in the user's personal space for a specific template. 32 | * 33 | * @param templateID The template ID of the template used to create these items. 34 | * @param offset The page offset. Used for pagination. 35 | * @param limit The page limit. Used for pagination. Passing 0 will use the default page size. 36 | * @param sortBy Sort order of the returned items. Permitted values available here https://developers.podio.com/doc/filters 37 | * @param descending YES if the items should be returned in descending order, NO if ascending. 38 | * @param filters Optional filters to to limit the set of items returned. 39 | * 40 | * @return A task delivering the items on success. 41 | */ 42 | + (PKTAsyncTask *)fetchItemsInPersonalSpaceForTemplateWithID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(NSDictionary *)filters; 43 | 44 | /** 45 | * Retrieve existing items in the project's public space for a specific template. 46 | * 47 | * @param templateID The template ID of the template used to create these items. 48 | * @param offset The page offset. Used for pagination. 49 | * @param limit The page limit. Used for pagination. Passing 0 will use the default page size. 50 | * @param sortBy Sort order of the returned items. Permitted values available here https://developers.podio.com/doc/filters 51 | * @param descending YES if the items should be returned in descending order, NO if ascending. 52 | * @param filters Optional filters to to limit the set of items returned. 53 | * 54 | * @return A task delivering the items on success. 55 | */ 56 | 57 | + (PKTAsyncTask *)fetchItemsInPublicSpaceForTemplateWithID:(NSUInteger)templateID offset:(NSUInteger)offset limit:(NSUInteger)limit sortBy:(NSString *)sortBy descending:(BOOL)descending filters:(NSDictionary *)filters; 58 | 59 | @end 60 | -------------------------------------------------------------------------------- /Documentation/2-BasicPrinciples.md: -------------------------------------------------------------------------------- 1 | # Basic Principles of Asynchronicity 2 | 3 | PodioPlatformKit's main responsibility os making request to the Podio API. To do so, it needs to provide a mean of handling asynchronous 4 | method calls. PodioPlatformKit uses a [future](http://en.wikipedia.org/wiki/Futures_and_promises)-based approach where each asynchronous method returns an instance of `PKCAsyncTask`. You can then register callbacks (`onSuccess:`, `onError:` and `onComplete:`) on this tasks that will be called according to the following rules: 5 | 6 | * If the task has not yet completed, the callback will be kept and executed on the main thread upon the completion of the task. Registered callbacks on a task are not guaranteed to be called in the order they were registerd. 7 | * If the task has alread completed, the callback will be executed immediately with the result of the task. 8 | * A task can only succeed or fail, not both. 9 | * a task can only succeed or fail once, it cannot be retried or reset. 10 | 11 | To register a callback, you have three options: 12 | 13 | The `onSuccess:` method is used to register callbacks to be executed if the task succeeds, meaning it does not generate an error: 14 | 15 | {% highlight objective-c %} 16 | PKCAsyncTask *task = [SomeClass someAsynchronousMethod]; 17 | 18 | [task onSuccess:^(PKCResponse *response) { 19 | // The task finished successfully 20 | }]; 21 | {% endhighlight %} 22 | 23 | The `onError:` method can be used to register callbacks for the error case: 24 | 25 | {% highlight objective-c %} 26 | PKCAsyncTask *task = [SomeClass someAsynchronousMethod]; 27 | 28 | [task onError:^(NSError *error) { 29 | // The task failed and returned an error 30 | }]; 31 | {% endhighlight %} 32 | 33 | If you are interested in both the success and error case at the same time, you can use the `onComplete:` method to register a callback for when either happens: 34 | 35 | {% highlight objective-c %} 36 | PKCAsyncTask *task = [SomeClass someAsynchronousMethod]; 37 | 38 | [task onComplete:^(PKCResponse *response, NSError *error) { 39 | if (!error) { 40 | // Task succeeded 41 | } else { 42 | // Task failed 43 | } 44 | }]; 45 | {% endhighlight %} 46 | 47 | The main advantage of modelling asynchronisity with futures is that you can chain tasks together to acheive some things. PodioPlatformKit provides a few combinator methods to combine sub-tasks in to bigger tasks. Consider for example if you first want to upload a task, then attach it to an object. With a callback approach you would have to nest your callback handlers: 48 | 49 | {% highlight objective-c %} 50 | NSData *data = ...; // Some image data 51 | 52 | [PKCFile uploadWithData:data fileName:@"image.jpg" completion:(PKCFile *file, NSError *error) { 53 | if (!error) { 54 | [file attachWithReferenceID:1234 referenceType:PKCReferenceTypeItem completion:^(PKCResponse *response, NSError *error) { 55 | if (!error) { 56 | // Handle success... 57 | } else { 58 | // Handle failure... 59 | } 60 | }]; 61 | } else { 62 | // Handle failure... 63 | } 64 | }]; 65 | {% endhighlight %} 66 | 67 | You can see that we have to handle the error case twice. With a task based approach, we can instead use the `pipe:` combinator method which takes a block that generates a new task based on the result of the first task once completed: 68 | 69 | {% highlight objective-c %} 70 | NSData *data = ...; // Some image data 71 | 72 | PKCAsyncTask *uploadTask = [PKCFile uploadWithData:data fileName:@"image.jpg"]; 73 | 74 | PKCASyncTask *task = [uploadTask pipe:^PKCAsyncTask *(PKCFile *file) { 75 | return [file attachWithReferenceID:1234 referenceType:PKCReferenceTypeItem]; 76 | }]; 77 | 78 | [task onComplete:^(PKCResponse *response, NSError *error) { 79 | if (!error) { 80 | // Handle success... 81 | } else { 82 | // Handle failure... 83 | } 84 | }]; 85 | 86 | {% endhighlight %} 87 | 88 | Here, we only have to handle the error case once and we do not end up with deeply nested code blocks. There are also other useful combinator methods such as `when:`, `then:` and `map:` available. -------------------------------------------------------------------------------- /PodioPlatformKit.xcodeproj/xcshareddata/xcschemes/PodioPlatformKit.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 | 75 | 76 | 82 | 83 | 84 | 85 | 86 | 87 | 93 | 94 | 100 | 101 | 102 | 103 | 105 | 106 | 109 | 110 | 111 | -------------------------------------------------------------------------------- /Documentation/3-Authentication.md: -------------------------------------------------------------------------------- 1 | # Authentication & Session Management 2 | 3 | The Podio API supports multiple ways of authenticating a client. PodioPlatformKit provides three primary options: 4 | 5 | * Authenticate with user/password 6 | * Authenticate as an app 7 | * Automatically authenticate as an app 8 | 9 | Each of them are described below. The client is considered to be authenticated once it has obtained a valid OAuth2 token. You can easily check if the client is authenticated: 10 | 11 | {% highlight objective-c %} 12 | if ([Podio isAuthenticated]) { 13 | // The client is authenticated 14 | } 15 | {% endhighlight %} 16 | 17 | The authentication state is kept by a singleton instance of [`PKCClient`](https://github.com/podio/podio-objc/blob/master/PodioPlatformKit/Core/PKCClient.h). 18 | 19 | Whenver the the authentication state of the client changes, meaning the token is updated, the `PKCClientAuthenticationStateDidChangeNotification` notification is posted. This can be useful to observe for changing the state of your UI or show a login screen. 20 | 21 | For more details about authentication and the Podio API, more information can be found [here](https://developers.podio.com/authentication). 22 | 23 | ## Authenticate as a user 24 | 25 | This option is great when you want to have every user of your client app to log in using their own Podio account and as such have access to the content of their entire Podio account. 26 | 27 | Here is how to authenticate as a user: 28 | 29 | {% highlight objective-c %} 30 | PKCAsyncTask *authTask = [Podio authenticateAsUserWithEmail:@"myname@mydomain.com" password:@"p4$$w0rD"]; 31 | 32 | [authTask onComplete:^(PKCResponse *response, NSError *error) { 33 | if (!error) { 34 | // Successfully authenticated 35 | } else { 36 | // Failed to authenticate, double check your credentials 37 | } 38 | }]; 39 | {% endhighlight %} 40 | 41 | ## Authenticate as an app 42 | 43 | Most people know that you can log into Podio using an email and password. But it is also possible for any individual Podio app to authenticate as itself using it's unique app token. The client will then be able to create new items within that app, without ever being authenticated as a user. 44 | 45 | This option is useful when you want any user of your client app to interact with the same [Podio app](https://developers.podio.com/doc/applications), regardless of who they are. This might be an app that you our someone else created. 46 | 47 | The major benefit of this method is that it requires no log in action for the user of your app, as they will be authenticated as the Podio app itself. 48 | 49 | To authenticate as the app, you need to find the app ID and token for your app. When logged into Podio, navigate to the app and click the small wrench icon in the top right. Then click "Developer" in the drop down menu that appears. That should take you to a page showing your app's ID and token. 50 | 51 | Here is an example of how to authenticate as an app: 52 | 53 | {% highlight objective-c %} 54 | PKCAsyncTask *authTask = [Podio authenticateAsAppWithID:123456 token:@"my-app-token"]; 55 | 56 | [authTask onComplete:^(PKCResponse *response, NSError *error) { 57 | if (!error) { 58 | // Successfully authenticated 59 | } else { 60 | // Failed to authenticate, double check your credentials 61 | } 62 | }]; 63 | {% endhighlight %} 64 | 65 | ## Automatically authenticate as an app 66 | 67 | Instead of explicitly authenticating as an app as shown in the example above, there is also an option to automatically authenticate as an app. This means that instead of choosing yourself when to authenticate the app, you simply provide PodioPlatformKit with the app ID and token and it will automatatically handle the authentication step when you try to make an API operation. This is usually the prefereable option as it means you do not have to handle the authentication step yourself. To authenticate automatically, just make the following call after setting up your API key and secret: 68 | 69 | {% highlight objective-c %} 70 | [Podio authenticateAutomaticallyAsAppWithID:123456 token:@"my-app-token"]; 71 | {% endhighlight %} 72 | 73 | ## Saving and restoring a session across app launches 74 | 75 | If your app is terminated, the shared `PKCClient` instance will no longer have a token once your app is re-launced. This means that if you want the previous user session to live on, you need to store the authentication token in the Keychain when it changes and restore it from the Keychain when the app is re-launced. Luckily, PodioPlatformKit can take care of that for you! 76 | 77 | PodioKit provides a protocol called `PKCTokenStore` and a concrete class `PKCKeychainTokenStore` which stores the token in the iOS or OS X Keychain. All you need to do is add the following line after your call to `-setupWithAPIKey:secret:` in `-application:didFinishLaunchingWithOptions:`: 78 | 79 | {% highlight objective-c %} 80 | ... 81 | // [Podio setupWithAPIKey:PODIO_API_KEY secret:]; 82 | 83 | [Podio automaticallyStoreTokenInKeychainForCurrentApp]; 84 | // or 85 | [Podio automaticallyStoreTokenInKeychainForServiceWithName:@"MyApp"]; 86 | ... 87 | {% endhighlight %} 88 | 89 | This line takes care of configuring the shared `PKCClient` instance with an instance of `PKCKeychainTokenStore` and restores any previous token from the Keychain. If you want to expliticly restore the token, you can call the `restoreTokenIfNeeded` method on `PKCClient` directly. If you are feeling real adventurous you can even implement your own class conforming to `PKCTokenStore` to store the token anywhere other than the Keychain. You can then set the `tokenStore` property on the shared `PKCClient` instance like: 90 | 91 | {% highlight objective-c %} 92 | ... 93 | [PKCClient currentClient].tokenStore = [[MYOwnTokenStore alloc] init]; 94 | [[PKCClient currentClient] restoreTokenIfNeeded]; 95 | ... 96 | {% endhighlight %} 97 | 98 | Note that we would not recommend doing this as the Keychain is the most secure container available. -------------------------------------------------------------------------------- /PodioPlatformKit.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXAggregateTarget section */ 10 | 501224DD1A9120B5005BFDA1 /* Framework */ = { 11 | isa = PBXAggregateTarget; 12 | buildConfigurationList = 501224DE1A9120B5005BFDA1 /* Build configuration list for PBXAggregateTarget "Framework" */; 13 | buildPhases = ( 14 | 501224E31A9120CF005BFDA1 /* Build Framework */, 15 | ); 16 | dependencies = ( 17 | 501224E21A9120BC005BFDA1 /* PBXTargetDependency */, 18 | ); 19 | name = Framework; 20 | productName = Framework; 21 | }; 22 | /* End PBXAggregateTarget section */ 23 | 24 | /* Begin PBXBuildFile section */ 25 | 501224B21A90BBA5005BFDA1 /* PodioPlatformKit.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 501224B11A90BBA5005BFDA1 /* PodioPlatformKit.h */; }; 26 | 501224BA1A90BBA6005BFDA1 /* libPodioPlatformKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 501224AE1A90BBA5005BFDA1 /* libPodioPlatformKit.a */; }; 27 | 5022DC921AEA797D00426AB3 /* PKTAppsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBB31AEA797C00426AB3 /* PKTAppsAPI.m */; }; 28 | 5022DC931AEA797D00426AB3 /* PKTAuthenticationAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBB51AEA797C00426AB3 /* PKTAuthenticationAPI.m */; }; 29 | 5022DC941AEA797D00426AB3 /* PKTBaseAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBB71AEA797C00426AB3 /* PKTBaseAPI.m */; }; 30 | 5022DC951AEA797D00426AB3 /* PKTCommentsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBB91AEA797C00426AB3 /* PKTCommentsAPI.m */; }; 31 | 5022DC961AEA797D00426AB3 /* PKTContactsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBBB1AEA797C00426AB3 /* PKTContactsAPI.m */; }; 32 | 5022DC971AEA797D00426AB3 /* PKTEmbedsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBBD1AEA797C00426AB3 /* PKTEmbedsAPI.m */; }; 33 | 5022DC981AEA797D00426AB3 /* PKTFilesAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBBF1AEA797C00426AB3 /* PKTFilesAPI.m */; }; 34 | 5022DC991AEA797D00426AB3 /* PKTItemsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBC11AEA797C00426AB3 /* PKTItemsAPI.m */; }; 35 | 5022DC9A1AEA797D00426AB3 /* PKTOrganizationsAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBC31AEA797C00426AB3 /* PKTOrganizationsAPI.m */; }; 36 | 5022DC9B1AEA797D00426AB3 /* PKTReferenceAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBC51AEA797C00426AB3 /* PKTReferenceAPI.m */; }; 37 | 5022DC9C1AEA797D00426AB3 /* PKTSearchAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBC81AEA797C00426AB3 /* PKTSearchAPI.m */; }; 38 | 5022DC9D1AEA797D00426AB3 /* PKTSearchQuery.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBCA1AEA797C00426AB3 /* PKTSearchQuery.m */; }; 39 | 5022DC9E1AEA797D00426AB3 /* PKTUsersAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBCC1AEA797C00426AB3 /* PKTUsersAPI.m */; }; 40 | 5022DC9F1AEA797D00426AB3 /* PKTWorkspaceMembersAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBCE1AEA797C00426AB3 /* PKTWorkspaceMembersAPI.m */; }; 41 | 5022DCA01AEA797D00426AB3 /* PKTWorkspacesAPI.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBD01AEA797C00426AB3 /* PKTWorkspacesAPI.m */; }; 42 | 5022DCA11AEA797D00426AB3 /* PKTAsyncTask.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBD31AEA797C00426AB3 /* PKTAsyncTask.m */; }; 43 | 5022DCA21AEA797D00426AB3 /* PKTClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBD51AEA797C00426AB3 /* PKTClient.m */; }; 44 | 5022DCA31AEA797D00426AB3 /* PKTDatastore.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBD71AEA797C00426AB3 /* PKTDatastore.m */; }; 45 | 5022DCA41AEA797D00426AB3 /* PKTHTTPClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBD91AEA797C00426AB3 /* PKTHTTPClient.m */; }; 46 | 5022DCA51AEA797D00426AB3 /* PKTKeychain.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBDB1AEA797C00426AB3 /* PKTKeychain.m */; }; 47 | 5022DCA61AEA797D00426AB3 /* PKTKeychainTokenStore.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBDD1AEA797C00426AB3 /* PKTKeychainTokenStore.m */; }; 48 | 5022DCA71AEA797D00426AB3 /* PKTMultipartFormData.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBDF1AEA797C00426AB3 /* PKTMultipartFormData.m */; }; 49 | 5022DCA81AEA797D00426AB3 /* PKTRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBE11AEA797C00426AB3 /* PKTRequest.m */; }; 50 | 5022DCA91AEA797D00426AB3 /* PKTRequestFileData.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBE31AEA797C00426AB3 /* PKTRequestFileData.m */; }; 51 | 5022DCAA1AEA797D00426AB3 /* PKTRequestSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBE51AEA797C00426AB3 /* PKTRequestSerializer.m */; }; 52 | 5022DCAB1AEA797D00426AB3 /* PKTResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBE71AEA797C00426AB3 /* PKTResponse.m */; }; 53 | 5022DCAC1AEA797D00426AB3 /* PKTResponseSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBE91AEA797C00426AB3 /* PKTResponseSerializer.m */; }; 54 | 5022DCAD1AEA797D00426AB3 /* PKTSecurity.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBEB1AEA797C00426AB3 /* PKTSecurity.m */; }; 55 | 5022DCAE1AEA797D00426AB3 /* PKTURLSessionTaskDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBEE1AEA797C00426AB3 /* PKTURLSessionTaskDelegate.m */; }; 56 | 5022DCAF1AEA797D00426AB3 /* Podio.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBF01AEA797C00426AB3 /* Podio.m */; }; 57 | 5022DCB01AEA797D00426AB3 /* PKTApp.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBF31AEA797C00426AB3 /* PKTApp.m */; }; 58 | 5022DCB11AEA797D00426AB3 /* PKTAppField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBF51AEA797C00426AB3 /* PKTAppField.m */; }; 59 | 5022DCB21AEA797D00426AB3 /* PKTAppFieldConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBF71AEA797C00426AB3 /* PKTAppFieldConfig.m */; }; 60 | 5022DCB31AEA797D00426AB3 /* PKTAppItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBF91AEA797C00426AB3 /* PKTAppItemFieldValue.m */; }; 61 | 5022DCB41AEA797D00426AB3 /* PKTByLine.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBFB1AEA797D00426AB3 /* PKTByLine.m */; }; 62 | 5022DCB51AEA797D00426AB3 /* PKTCalculationItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBFD1AEA797D00426AB3 /* PKTCalculationItemFieldValue.m */; }; 63 | 5022DCB61AEA797D00426AB3 /* PKTCategoryItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DBFF1AEA797D00426AB3 /* PKTCategoryItemFieldValue.m */; }; 64 | 5022DCB71AEA797D00426AB3 /* PKTCategoryOption.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC011AEA797D00426AB3 /* PKTCategoryOption.m */; }; 65 | 5022DCB81AEA797D00426AB3 /* PKTComment.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC031AEA797D00426AB3 /* PKTComment.m */; }; 66 | 5022DCB91AEA797D00426AB3 /* PKTDateItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC051AEA797D00426AB3 /* PKTDateItemFieldValue.m */; }; 67 | 5022DCBA1AEA797D00426AB3 /* PKTDateRange.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC071AEA797D00426AB3 /* PKTDateRange.m */; }; 68 | 5022DCBB1AEA797D00426AB3 /* PKTDuration.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC091AEA797D00426AB3 /* PKTDuration.m */; }; 69 | 5022DCBC1AEA797D00426AB3 /* PKTDurationItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC0B1AEA797D00426AB3 /* PKTDurationItemFieldValue.m */; }; 70 | 5022DCBD1AEA797D00426AB3 /* PKTEmbed.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC0D1AEA797D00426AB3 /* PKTEmbed.m */; }; 71 | 5022DCBE1AEA797D00426AB3 /* PKTEmbedItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC0F1AEA797D00426AB3 /* PKTEmbedItemFieldValue.m */; }; 72 | 5022DCBF1AEA797D00426AB3 /* PKTFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC111AEA797D00426AB3 /* PKTFile.m */; }; 73 | 5022DCC01AEA797D00426AB3 /* PKTFileItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC131AEA797D00426AB3 /* PKTFileItemFieldValue.m */; }; 74 | 5022DCC11AEA797D00426AB3 /* PKTItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC151AEA797D00426AB3 /* PKTItem.m */; }; 75 | 5022DCC21AEA797D00426AB3 /* PKTItemField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC171AEA797D00426AB3 /* PKTItemField.m */; }; 76 | 5022DCC31AEA797D00426AB3 /* PKTItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC191AEA797D00426AB3 /* PKTItemFieldValue.m */; }; 77 | 5022DCC41AEA797D00426AB3 /* PKTLocation.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC1B1AEA797D00426AB3 /* PKTLocation.m */; }; 78 | 5022DCC51AEA797D00426AB3 /* PKTLocationItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC1D1AEA797D00426AB3 /* PKTLocationItemFieldValue.m */; }; 79 | 5022DCC61AEA797D00426AB3 /* PKTModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC1F1AEA797D00426AB3 /* PKTModel.m */; }; 80 | 5022DCC71AEA797D00426AB3 /* PKTMoney.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC211AEA797D00426AB3 /* PKTMoney.m */; }; 81 | 5022DCC81AEA797D00426AB3 /* PKTMoneyItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC231AEA797D00426AB3 /* PKTMoneyItemFieldValue.m */; }; 82 | 5022DCC91AEA797D00426AB3 /* PKTNumberItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC251AEA797D00426AB3 /* PKTNumberItemFieldValue.m */; }; 83 | 5022DCCA1AEA797D00426AB3 /* PKTOAuth2Token.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC271AEA797D00426AB3 /* PKTOAuth2Token.m */; }; 84 | 5022DCCB1AEA797D00426AB3 /* PKTOrganization.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC291AEA797D00426AB3 /* PKTOrganization.m */; }; 85 | 5022DCCC1AEA797D00426AB3 /* PKTProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC2B1AEA797D00426AB3 /* PKTProfile.m */; }; 86 | 5022DCCD1AEA797D00426AB3 /* PKTProfileItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC2D1AEA797D00426AB3 /* PKTProfileItemFieldValue.m */; }; 87 | 5022DCCE1AEA797D00426AB3 /* PKTProgressItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC2F1AEA797D00426AB3 /* PKTProgressItemFieldValue.m */; }; 88 | 5022DCCF1AEA797D00426AB3 /* PKTPushCredential.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC311AEA797D00426AB3 /* PKTPushCredential.m */; }; 89 | 5022DCD01AEA797D00426AB3 /* PKTReferenceIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC331AEA797D00426AB3 /* PKTReferenceIdentifier.m */; }; 90 | 5022DCD11AEA797D00426AB3 /* PKTStringItemFieldValue.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC351AEA797D00426AB3 /* PKTStringItemFieldValue.m */; }; 91 | 5022DCD21AEA797D00426AB3 /* PKTUser.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC371AEA797D00426AB3 /* PKTUser.m */; }; 92 | 5022DCD31AEA797D00426AB3 /* PKTUserStatus.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC391AEA797D00426AB3 /* PKTUserStatus.m */; }; 93 | 5022DCD41AEA797D00426AB3 /* PKTWorkspace.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC3B1AEA797D00426AB3 /* PKTWorkspace.m */; }; 94 | 5022DCD51AEA797D00426AB3 /* NSArray+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC3F1AEA797D00426AB3 /* NSArray+PKTAdditions.m */; }; 95 | 5022DCD61AEA797D00426AB3 /* NSDate+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC411AEA797D00426AB3 /* NSDate+PKTAdditions.m */; }; 96 | 5022DCD71AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC431AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.m */; }; 97 | 5022DCD81AEA797D00426AB3 /* NSDictionary+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC451AEA797D00426AB3 /* NSDictionary+PKTAdditions.m */; }; 98 | 5022DCD91AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC471AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.m */; }; 99 | 5022DCDA1AEA797D00426AB3 /* NSError+PKTErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC491AEA797D00426AB3 /* NSError+PKTErrors.m */; }; 100 | 5022DCDB1AEA797D00426AB3 /* NSFileManager+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC4B1AEA797D00426AB3 /* NSFileManager+PKTAdditions.m */; }; 101 | 5022DCDC1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC4D1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.m */; }; 102 | 5022DCDD1AEA797D00426AB3 /* NSNumber+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC4F1AEA797D00426AB3 /* NSNumber+PKTAdditions.m */; }; 103 | 5022DCDE1AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC511AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.m */; }; 104 | 5022DCDF1AEA797D00426AB3 /* NSObject+PKTIntrospection.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC531AEA797D00426AB3 /* NSObject+PKTIntrospection.m */; }; 105 | 5022DCE01AEA797D00426AB3 /* NSSet+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC551AEA797D00426AB3 /* NSSet+PKTAdditions.m */; }; 106 | 5022DCE11AEA797D00426AB3 /* NSString+ PKTURLEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC561AEA797D00426AB3 /* NSString+ PKTURLEncode.m */; }; 107 | 5022DCE21AEA797D00426AB3 /* NSString+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC581AEA797D00426AB3 /* NSString+PKTAdditions.m */; }; 108 | 5022DCE31AEA797D00426AB3 /* NSString+PKTBase64.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC5A1AEA797D00426AB3 /* NSString+PKTBase64.m */; }; 109 | 5022DCE41AEA797D00426AB3 /* NSString+PKTRandom.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC5C1AEA797D00426AB3 /* NSString+PKTRandom.m */; }; 110 | 5022DCE51AEA797D00426AB3 /* NSString+PKTURL.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC5E1AEA797D00426AB3 /* NSString+PKTURL.m */; }; 111 | 5022DCE61AEA797D00426AB3 /* NSURL+PKTAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC611AEA797D00426AB3 /* NSURL+PKTAdditions.m */; }; 112 | 5022DCE71AEA797D00426AB3 /* NSURL+PKTImageURL.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC631AEA797D00426AB3 /* NSURL+PKTImageURL.m */; }; 113 | 5022DCE81AEA797D00426AB3 /* NSValueTransformer+PKTConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC651AEA797D00426AB3 /* NSValueTransformer+PKTConstants.m */; }; 114 | 5022DCE91AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC671AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.m */; }; 115 | 5022DCEA1AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC691AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.m */; }; 116 | 5022DCEB1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC6B1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.m */; }; 117 | 5022DCEC1AEA797D00426AB3 /* PKTBlockValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC6D1AEA797D00426AB3 /* PKTBlockValueTransformer.m */; }; 118 | 5022DCED1AEA797D00426AB3 /* PKTDateValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC701AEA797D00426AB3 /* PKTDateValueTransformer.m */; }; 119 | 5022DCEE1AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC721AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.m */; }; 120 | 5022DCEF1AEA797D00426AB3 /* PKTModelValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC751AEA797D00426AB3 /* PKTModelValueTransformer.m */; }; 121 | 5022DCF01AEA797D00426AB3 /* PKTNumberValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC771AEA797D00426AB3 /* PKTNumberValueTransformer.m */; }; 122 | 5022DCF11AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC791AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.m */; }; 123 | 5022DCF21AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC7B1AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.m */; }; 124 | 5022DCF31AEA797D00426AB3 /* PKTRightValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC7D1AEA797D00426AB3 /* PKTRightValueTransformer.m */; }; 125 | 5022DCF41AEA797D00426AB3 /* PKTURLValueTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC7F1AEA797D00426AB3 /* PKTURLValueTransformer.m */; }; 126 | 5022DCF51AEA797D00426AB3 /* PKTPushClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC821AEA797D00426AB3 /* PKTPushClient.m */; }; 127 | 5022DCF61AEA797D00426AB3 /* PKTPushEvent.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC841AEA797D00426AB3 /* PKTPushEvent.m */; }; 128 | 5022DCF81AEA797D00426AB3 /* PKTFile+UIImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC891AEA797D00426AB3 /* PKTFile+UIImage.m */; }; 129 | 5022DCF91AEA797D00426AB3 /* PKTImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC8B1AEA797D00426AB3 /* PKTImageCache.m */; }; 130 | 5022DCFA1AEA797D00426AB3 /* PKTImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC8D1AEA797D00426AB3 /* PKTImageDownloader.m */; }; 131 | 5022DCFB1AEA797D00426AB3 /* UIButton+PKTRemoteImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC8F1AEA797D00426AB3 /* UIButton+PKTRemoteImage.m */; }; 132 | 5022DCFC1AEA797D00426AB3 /* UIImageView+PKTRemoteImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 5022DC911AEA797D00426AB3 /* UIImageView+PKTRemoteImage.m */; }; 133 | 505B962B1AED4BF9007EDB42 /* PKTItem+Platform.m in Sources */ = {isa = PBXBuildFile; fileRef = 505B962A1AED4BF9007EDB42 /* PKTItem+Platform.m */; }; 134 | 505B962E1AED4CAD007EDB42 /* PKTItemFilters.m in Sources */ = {isa = PBXBuildFile; fileRef = 505B962D1AED4CAD007EDB42 /* PKTItemFilters.m */; }; 135 | 505B96351AED5028007EDB42 /* PKTSpace.m in Sources */ = {isa = PBXBuildFile; fileRef = 505B96341AED5028007EDB42 /* PKTSpace.m */; }; 136 | 505B96381AED529A007EDB42 /* PKTComment+Platform.m in Sources */ = {isa = PBXBuildFile; fileRef = 505B96371AED529A007EDB42 /* PKTComment+Platform.m */; }; 137 | 50F2761D1AE63B1900CA33C7 /* PodioPlatformKitTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 50F2761C1AE63B1900CA33C7 /* PodioPlatformKitTests.m */; }; 138 | 5E589DA30EA2F28F1C27C737 /* libPods-PodioPlatformKit.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5922D88386DF2B43A88B1BB6 /* libPods-PodioPlatformKit.a */; }; 139 | F754EC857CA51E6276353C7E /* libPods-PodioPlatformKitTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 89C1D0BE53DB514EE04F1149 /* libPods-PodioPlatformKitTests.a */; }; 140 | /* End PBXBuildFile section */ 141 | 142 | /* Begin PBXContainerItemProxy section */ 143 | 501224BB1A90BBA6005BFDA1 /* PBXContainerItemProxy */ = { 144 | isa = PBXContainerItemProxy; 145 | containerPortal = 501224A61A90BBA5005BFDA1 /* Project object */; 146 | proxyType = 1; 147 | remoteGlobalIDString = 501224AD1A90BBA5005BFDA1; 148 | remoteInfo = PodioPlatformKit; 149 | }; 150 | 501224E11A9120BC005BFDA1 /* PBXContainerItemProxy */ = { 151 | isa = PBXContainerItemProxy; 152 | containerPortal = 501224A61A90BBA5005BFDA1 /* Project object */; 153 | proxyType = 1; 154 | remoteGlobalIDString = 501224AD1A90BBA5005BFDA1; 155 | remoteInfo = PodioPlatformKit; 156 | }; 157 | /* End PBXContainerItemProxy section */ 158 | 159 | /* Begin PBXCopyFilesBuildPhase section */ 160 | 501224AC1A90BBA5005BFDA1 /* CopyFiles */ = { 161 | isa = PBXCopyFilesBuildPhase; 162 | buildActionMask = 2147483647; 163 | dstPath = "include/$(PRODUCT_NAME)"; 164 | dstSubfolderSpec = 16; 165 | files = ( 166 | 501224B21A90BBA5005BFDA1 /* PodioPlatformKit.h in CopyFiles */, 167 | ); 168 | runOnlyForDeploymentPostprocessing = 0; 169 | }; 170 | /* End PBXCopyFilesBuildPhase section */ 171 | 172 | /* Begin PBXFileReference section */ 173 | 23E560BC807100A42DCCAABF /* Pods-PodioPlatformKitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodioPlatformKitTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PodioPlatformKitTests/Pods-PodioPlatformKitTests.debug.xcconfig"; sourceTree = ""; }; 174 | 501224AE1A90BBA5005BFDA1 /* libPodioPlatformKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPodioPlatformKit.a; sourceTree = BUILT_PRODUCTS_DIR; }; 175 | 501224B11A90BBA5005BFDA1 /* PodioPlatformKit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PodioPlatformKit.h; sourceTree = ""; }; 176 | 501224B91A90BBA6005BFDA1 /* PodioPlatformKitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PodioPlatformKitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 177 | 501224BF1A90BBA6005BFDA1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 178 | 5022DBB21AEA797C00426AB3 /* PKTAppsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAppsAPI.h; sourceTree = ""; }; 179 | 5022DBB31AEA797C00426AB3 /* PKTAppsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAppsAPI.m; sourceTree = ""; }; 180 | 5022DBB41AEA797C00426AB3 /* PKTAuthenticationAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAuthenticationAPI.h; sourceTree = ""; }; 181 | 5022DBB51AEA797C00426AB3 /* PKTAuthenticationAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAuthenticationAPI.m; sourceTree = ""; }; 182 | 5022DBB61AEA797C00426AB3 /* PKTBaseAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTBaseAPI.h; sourceTree = ""; }; 183 | 5022DBB71AEA797C00426AB3 /* PKTBaseAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTBaseAPI.m; sourceTree = ""; }; 184 | 5022DBB81AEA797C00426AB3 /* PKTCommentsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTCommentsAPI.h; sourceTree = ""; }; 185 | 5022DBB91AEA797C00426AB3 /* PKTCommentsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTCommentsAPI.m; sourceTree = ""; }; 186 | 5022DBBA1AEA797C00426AB3 /* PKTContactsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTContactsAPI.h; sourceTree = ""; }; 187 | 5022DBBB1AEA797C00426AB3 /* PKTContactsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTContactsAPI.m; sourceTree = ""; }; 188 | 5022DBBC1AEA797C00426AB3 /* PKTEmbedsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTEmbedsAPI.h; sourceTree = ""; }; 189 | 5022DBBD1AEA797C00426AB3 /* PKTEmbedsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTEmbedsAPI.m; sourceTree = ""; }; 190 | 5022DBBE1AEA797C00426AB3 /* PKTFilesAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTFilesAPI.h; sourceTree = ""; }; 191 | 5022DBBF1AEA797C00426AB3 /* PKTFilesAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTFilesAPI.m; sourceTree = ""; }; 192 | 5022DBC01AEA797C00426AB3 /* PKTItemsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTItemsAPI.h; sourceTree = ""; }; 193 | 5022DBC11AEA797C00426AB3 /* PKTItemsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTItemsAPI.m; sourceTree = ""; }; 194 | 5022DBC21AEA797C00426AB3 /* PKTOrganizationsAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTOrganizationsAPI.h; sourceTree = ""; }; 195 | 5022DBC31AEA797C00426AB3 /* PKTOrganizationsAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTOrganizationsAPI.m; sourceTree = ""; }; 196 | 5022DBC41AEA797C00426AB3 /* PKTReferenceAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTReferenceAPI.h; sourceTree = ""; }; 197 | 5022DBC51AEA797C00426AB3 /* PKTReferenceAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTReferenceAPI.m; sourceTree = ""; }; 198 | 5022DBC61AEA797C00426AB3 /* PKTRequestParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTRequestParameters.h; sourceTree = ""; }; 199 | 5022DBC71AEA797C00426AB3 /* PKTSearchAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTSearchAPI.h; sourceTree = ""; }; 200 | 5022DBC81AEA797C00426AB3 /* PKTSearchAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTSearchAPI.m; sourceTree = ""; }; 201 | 5022DBC91AEA797C00426AB3 /* PKTSearchQuery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTSearchQuery.h; sourceTree = ""; }; 202 | 5022DBCA1AEA797C00426AB3 /* PKTSearchQuery.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTSearchQuery.m; sourceTree = ""; }; 203 | 5022DBCB1AEA797C00426AB3 /* PKTUsersAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTUsersAPI.h; sourceTree = ""; }; 204 | 5022DBCC1AEA797C00426AB3 /* PKTUsersAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTUsersAPI.m; sourceTree = ""; }; 205 | 5022DBCD1AEA797C00426AB3 /* PKTWorkspaceMembersAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTWorkspaceMembersAPI.h; sourceTree = ""; }; 206 | 5022DBCE1AEA797C00426AB3 /* PKTWorkspaceMembersAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTWorkspaceMembersAPI.m; sourceTree = ""; }; 207 | 5022DBCF1AEA797C00426AB3 /* PKTWorkspacesAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTWorkspacesAPI.h; sourceTree = ""; }; 208 | 5022DBD01AEA797C00426AB3 /* PKTWorkspacesAPI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTWorkspacesAPI.m; sourceTree = ""; }; 209 | 5022DBD21AEA797C00426AB3 /* PKTAsyncTask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAsyncTask.h; sourceTree = ""; }; 210 | 5022DBD31AEA797C00426AB3 /* PKTAsyncTask.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAsyncTask.m; sourceTree = ""; }; 211 | 5022DBD41AEA797C00426AB3 /* PKTClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTClient.h; sourceTree = ""; }; 212 | 5022DBD51AEA797C00426AB3 /* PKTClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTClient.m; sourceTree = ""; }; 213 | 5022DBD61AEA797C00426AB3 /* PKTDatastore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDatastore.h; sourceTree = ""; }; 214 | 5022DBD71AEA797C00426AB3 /* PKTDatastore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDatastore.m; sourceTree = ""; }; 215 | 5022DBD81AEA797C00426AB3 /* PKTHTTPClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTHTTPClient.h; sourceTree = ""; }; 216 | 5022DBD91AEA797C00426AB3 /* PKTHTTPClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTHTTPClient.m; sourceTree = ""; }; 217 | 5022DBDA1AEA797C00426AB3 /* PKTKeychain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTKeychain.h; sourceTree = ""; }; 218 | 5022DBDB1AEA797C00426AB3 /* PKTKeychain.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTKeychain.m; sourceTree = ""; }; 219 | 5022DBDC1AEA797C00426AB3 /* PKTKeychainTokenStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTKeychainTokenStore.h; sourceTree = ""; }; 220 | 5022DBDD1AEA797C00426AB3 /* PKTKeychainTokenStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTKeychainTokenStore.m; sourceTree = ""; }; 221 | 5022DBDE1AEA797C00426AB3 /* PKTMultipartFormData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTMultipartFormData.h; sourceTree = ""; }; 222 | 5022DBDF1AEA797C00426AB3 /* PKTMultipartFormData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTMultipartFormData.m; sourceTree = ""; }; 223 | 5022DBE01AEA797C00426AB3 /* PKTRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTRequest.h; sourceTree = ""; }; 224 | 5022DBE11AEA797C00426AB3 /* PKTRequest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTRequest.m; sourceTree = ""; }; 225 | 5022DBE21AEA797C00426AB3 /* PKTRequestFileData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTRequestFileData.h; sourceTree = ""; }; 226 | 5022DBE31AEA797C00426AB3 /* PKTRequestFileData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTRequestFileData.m; sourceTree = ""; }; 227 | 5022DBE41AEA797C00426AB3 /* PKTRequestSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTRequestSerializer.h; sourceTree = ""; }; 228 | 5022DBE51AEA797C00426AB3 /* PKTRequestSerializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTRequestSerializer.m; sourceTree = ""; }; 229 | 5022DBE61AEA797C00426AB3 /* PKTResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTResponse.h; sourceTree = ""; }; 230 | 5022DBE71AEA797C00426AB3 /* PKTResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTResponse.m; sourceTree = ""; }; 231 | 5022DBE81AEA797C00426AB3 /* PKTResponseSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTResponseSerializer.h; sourceTree = ""; }; 232 | 5022DBE91AEA797C00426AB3 /* PKTResponseSerializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTResponseSerializer.m; sourceTree = ""; }; 233 | 5022DBEA1AEA797C00426AB3 /* PKTSecurity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTSecurity.h; sourceTree = ""; }; 234 | 5022DBEB1AEA797C00426AB3 /* PKTSecurity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTSecurity.m; sourceTree = ""; }; 235 | 5022DBEC1AEA797C00426AB3 /* PKTTokenStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTTokenStore.h; sourceTree = ""; }; 236 | 5022DBED1AEA797C00426AB3 /* PKTURLSessionTaskDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTURLSessionTaskDelegate.h; sourceTree = ""; }; 237 | 5022DBEE1AEA797C00426AB3 /* PKTURLSessionTaskDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTURLSessionTaskDelegate.m; sourceTree = ""; }; 238 | 5022DBEF1AEA797C00426AB3 /* Podio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Podio.h; sourceTree = ""; }; 239 | 5022DBF01AEA797C00426AB3 /* Podio.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Podio.m; sourceTree = ""; }; 240 | 5022DBF21AEA797C00426AB3 /* PKTApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTApp.h; sourceTree = ""; }; 241 | 5022DBF31AEA797C00426AB3 /* PKTApp.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTApp.m; sourceTree = ""; }; 242 | 5022DBF41AEA797C00426AB3 /* PKTAppField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAppField.h; sourceTree = ""; }; 243 | 5022DBF51AEA797C00426AB3 /* PKTAppField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAppField.m; sourceTree = ""; }; 244 | 5022DBF61AEA797C00426AB3 /* PKTAppFieldConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAppFieldConfig.h; sourceTree = ""; }; 245 | 5022DBF71AEA797C00426AB3 /* PKTAppFieldConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAppFieldConfig.m; sourceTree = ""; }; 246 | 5022DBF81AEA797C00426AB3 /* PKTAppItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAppItemFieldValue.h; sourceTree = ""; }; 247 | 5022DBF91AEA797C00426AB3 /* PKTAppItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAppItemFieldValue.m; sourceTree = ""; }; 248 | 5022DBFA1AEA797D00426AB3 /* PKTByLine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTByLine.h; sourceTree = ""; }; 249 | 5022DBFB1AEA797D00426AB3 /* PKTByLine.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTByLine.m; sourceTree = ""; }; 250 | 5022DBFC1AEA797D00426AB3 /* PKTCalculationItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTCalculationItemFieldValue.h; sourceTree = ""; }; 251 | 5022DBFD1AEA797D00426AB3 /* PKTCalculationItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTCalculationItemFieldValue.m; sourceTree = ""; }; 252 | 5022DBFE1AEA797D00426AB3 /* PKTCategoryItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTCategoryItemFieldValue.h; sourceTree = ""; }; 253 | 5022DBFF1AEA797D00426AB3 /* PKTCategoryItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTCategoryItemFieldValue.m; sourceTree = ""; }; 254 | 5022DC001AEA797D00426AB3 /* PKTCategoryOption.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTCategoryOption.h; sourceTree = ""; }; 255 | 5022DC011AEA797D00426AB3 /* PKTCategoryOption.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTCategoryOption.m; sourceTree = ""; }; 256 | 5022DC021AEA797D00426AB3 /* PKTComment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTComment.h; sourceTree = ""; }; 257 | 5022DC031AEA797D00426AB3 /* PKTComment.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTComment.m; sourceTree = ""; }; 258 | 5022DC041AEA797D00426AB3 /* PKTDateItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDateItemFieldValue.h; sourceTree = ""; }; 259 | 5022DC051AEA797D00426AB3 /* PKTDateItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDateItemFieldValue.m; sourceTree = ""; }; 260 | 5022DC061AEA797D00426AB3 /* PKTDateRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDateRange.h; sourceTree = ""; }; 261 | 5022DC071AEA797D00426AB3 /* PKTDateRange.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDateRange.m; sourceTree = ""; }; 262 | 5022DC081AEA797D00426AB3 /* PKTDuration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDuration.h; sourceTree = ""; }; 263 | 5022DC091AEA797D00426AB3 /* PKTDuration.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDuration.m; sourceTree = ""; }; 264 | 5022DC0A1AEA797D00426AB3 /* PKTDurationItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDurationItemFieldValue.h; sourceTree = ""; }; 265 | 5022DC0B1AEA797D00426AB3 /* PKTDurationItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDurationItemFieldValue.m; sourceTree = ""; }; 266 | 5022DC0C1AEA797D00426AB3 /* PKTEmbed.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTEmbed.h; sourceTree = ""; }; 267 | 5022DC0D1AEA797D00426AB3 /* PKTEmbed.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTEmbed.m; sourceTree = ""; }; 268 | 5022DC0E1AEA797D00426AB3 /* PKTEmbedItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTEmbedItemFieldValue.h; sourceTree = ""; }; 269 | 5022DC0F1AEA797D00426AB3 /* PKTEmbedItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTEmbedItemFieldValue.m; sourceTree = ""; }; 270 | 5022DC101AEA797D00426AB3 /* PKTFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTFile.h; sourceTree = ""; }; 271 | 5022DC111AEA797D00426AB3 /* PKTFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTFile.m; sourceTree = ""; }; 272 | 5022DC121AEA797D00426AB3 /* PKTFileItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTFileItemFieldValue.h; sourceTree = ""; }; 273 | 5022DC131AEA797D00426AB3 /* PKTFileItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTFileItemFieldValue.m; sourceTree = ""; }; 274 | 5022DC141AEA797D00426AB3 /* PKTItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTItem.h; sourceTree = ""; }; 275 | 5022DC151AEA797D00426AB3 /* PKTItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTItem.m; sourceTree = ""; }; 276 | 5022DC161AEA797D00426AB3 /* PKTItemField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTItemField.h; sourceTree = ""; }; 277 | 5022DC171AEA797D00426AB3 /* PKTItemField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTItemField.m; sourceTree = ""; }; 278 | 5022DC181AEA797D00426AB3 /* PKTItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTItemFieldValue.h; sourceTree = ""; }; 279 | 5022DC191AEA797D00426AB3 /* PKTItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTItemFieldValue.m; sourceTree = ""; }; 280 | 5022DC1A1AEA797D00426AB3 /* PKTLocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTLocation.h; sourceTree = ""; }; 281 | 5022DC1B1AEA797D00426AB3 /* PKTLocation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTLocation.m; sourceTree = ""; }; 282 | 5022DC1C1AEA797D00426AB3 /* PKTLocationItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTLocationItemFieldValue.h; sourceTree = ""; }; 283 | 5022DC1D1AEA797D00426AB3 /* PKTLocationItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTLocationItemFieldValue.m; sourceTree = ""; }; 284 | 5022DC1E1AEA797D00426AB3 /* PKTModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTModel.h; sourceTree = ""; }; 285 | 5022DC1F1AEA797D00426AB3 /* PKTModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTModel.m; sourceTree = ""; }; 286 | 5022DC201AEA797D00426AB3 /* PKTMoney.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTMoney.h; sourceTree = ""; }; 287 | 5022DC211AEA797D00426AB3 /* PKTMoney.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTMoney.m; sourceTree = ""; }; 288 | 5022DC221AEA797D00426AB3 /* PKTMoneyItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTMoneyItemFieldValue.h; sourceTree = ""; }; 289 | 5022DC231AEA797D00426AB3 /* PKTMoneyItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTMoneyItemFieldValue.m; sourceTree = ""; }; 290 | 5022DC241AEA797D00426AB3 /* PKTNumberItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTNumberItemFieldValue.h; sourceTree = ""; }; 291 | 5022DC251AEA797D00426AB3 /* PKTNumberItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTNumberItemFieldValue.m; sourceTree = ""; }; 292 | 5022DC261AEA797D00426AB3 /* PKTOAuth2Token.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTOAuth2Token.h; sourceTree = ""; }; 293 | 5022DC271AEA797D00426AB3 /* PKTOAuth2Token.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTOAuth2Token.m; sourceTree = ""; }; 294 | 5022DC281AEA797D00426AB3 /* PKTOrganization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTOrganization.h; sourceTree = ""; }; 295 | 5022DC291AEA797D00426AB3 /* PKTOrganization.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTOrganization.m; sourceTree = ""; }; 296 | 5022DC2A1AEA797D00426AB3 /* PKTProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTProfile.h; sourceTree = ""; }; 297 | 5022DC2B1AEA797D00426AB3 /* PKTProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTProfile.m; sourceTree = ""; }; 298 | 5022DC2C1AEA797D00426AB3 /* PKTProfileItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTProfileItemFieldValue.h; sourceTree = ""; }; 299 | 5022DC2D1AEA797D00426AB3 /* PKTProfileItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTProfileItemFieldValue.m; sourceTree = ""; }; 300 | 5022DC2E1AEA797D00426AB3 /* PKTProgressItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTProgressItemFieldValue.h; sourceTree = ""; }; 301 | 5022DC2F1AEA797D00426AB3 /* PKTProgressItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTProgressItemFieldValue.m; sourceTree = ""; }; 302 | 5022DC301AEA797D00426AB3 /* PKTPushCredential.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTPushCredential.h; sourceTree = ""; }; 303 | 5022DC311AEA797D00426AB3 /* PKTPushCredential.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTPushCredential.m; sourceTree = ""; }; 304 | 5022DC321AEA797D00426AB3 /* PKTReferenceIdentifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTReferenceIdentifier.h; sourceTree = ""; }; 305 | 5022DC331AEA797D00426AB3 /* PKTReferenceIdentifier.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTReferenceIdentifier.m; sourceTree = ""; }; 306 | 5022DC341AEA797D00426AB3 /* PKTStringItemFieldValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTStringItemFieldValue.h; sourceTree = ""; }; 307 | 5022DC351AEA797D00426AB3 /* PKTStringItemFieldValue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTStringItemFieldValue.m; sourceTree = ""; }; 308 | 5022DC361AEA797D00426AB3 /* PKTUser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTUser.h; sourceTree = ""; }; 309 | 5022DC371AEA797D00426AB3 /* PKTUser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTUser.m; sourceTree = ""; }; 310 | 5022DC381AEA797D00426AB3 /* PKTUserStatus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTUserStatus.h; sourceTree = ""; }; 311 | 5022DC391AEA797D00426AB3 /* PKTUserStatus.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTUserStatus.m; sourceTree = ""; }; 312 | 5022DC3A1AEA797D00426AB3 /* PKTWorkspace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTWorkspace.h; sourceTree = ""; }; 313 | 5022DC3B1AEA797D00426AB3 /* PKTWorkspace.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTWorkspace.m; sourceTree = ""; }; 314 | 5022DC3C1AEA797D00426AB3 /* PodioKitCore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PodioKitCore.h; sourceTree = ""; }; 315 | 5022DC3E1AEA797D00426AB3 /* NSArray+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+PKTAdditions.h"; sourceTree = ""; }; 316 | 5022DC3F1AEA797D00426AB3 /* NSArray+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+PKTAdditions.m"; sourceTree = ""; }; 317 | 5022DC401AEA797D00426AB3 /* NSDate+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate+PKTAdditions.h"; sourceTree = ""; }; 318 | 5022DC411AEA797D00426AB3 /* NSDate+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDate+PKTAdditions.m"; sourceTree = ""; }; 319 | 5022DC421AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDateFormatter+PKTAdditions.h"; sourceTree = ""; }; 320 | 5022DC431AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDateFormatter+PKTAdditions.m"; sourceTree = ""; }; 321 | 5022DC441AEA797D00426AB3 /* NSDictionary+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+PKTAdditions.h"; sourceTree = ""; }; 322 | 5022DC451AEA797D00426AB3 /* NSDictionary+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+PKTAdditions.m"; sourceTree = ""; }; 323 | 5022DC461AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+PKTQueryParameters.h"; sourceTree = ""; }; 324 | 5022DC471AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+PKTQueryParameters.m"; sourceTree = ""; }; 325 | 5022DC481AEA797D00426AB3 /* NSError+PKTErrors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError+PKTErrors.h"; sourceTree = ""; }; 326 | 5022DC491AEA797D00426AB3 /* NSError+PKTErrors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSError+PKTErrors.m"; sourceTree = ""; }; 327 | 5022DC4A1AEA797D00426AB3 /* NSFileManager+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager+PKTAdditions.h"; sourceTree = ""; }; 328 | 5022DC4B1AEA797D00426AB3 /* NSFileManager+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSFileManager+PKTAdditions.m"; sourceTree = ""; }; 329 | 5022DC4C1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSMutableURLRequest+PKTHeaders.h"; sourceTree = ""; }; 330 | 5022DC4D1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSMutableURLRequest+PKTHeaders.m"; sourceTree = ""; }; 331 | 5022DC4E1AEA797D00426AB3 /* NSNumber+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+PKTAdditions.h"; sourceTree = ""; }; 332 | 5022DC4F1AEA797D00426AB3 /* NSNumber+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+PKTAdditions.m"; sourceTree = ""; }; 333 | 5022DC501AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumberFormatter+PKTAdditions.h"; sourceTree = ""; }; 334 | 5022DC511AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumberFormatter+PKTAdditions.m"; sourceTree = ""; }; 335 | 5022DC521AEA797D00426AB3 /* NSObject+PKTIntrospection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+PKTIntrospection.h"; sourceTree = ""; }; 336 | 5022DC531AEA797D00426AB3 /* NSObject+PKTIntrospection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+PKTIntrospection.m"; sourceTree = ""; }; 337 | 5022DC541AEA797D00426AB3 /* NSSet+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSSet+PKTAdditions.h"; sourceTree = ""; }; 338 | 5022DC551AEA797D00426AB3 /* NSSet+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSSet+PKTAdditions.m"; sourceTree = ""; }; 339 | 5022DC561AEA797D00426AB3 /* NSString+ PKTURLEncode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+ PKTURLEncode.m"; sourceTree = ""; }; 340 | 5022DC571AEA797D00426AB3 /* NSString+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+PKTAdditions.h"; sourceTree = ""; }; 341 | 5022DC581AEA797D00426AB3 /* NSString+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+PKTAdditions.m"; sourceTree = ""; }; 342 | 5022DC591AEA797D00426AB3 /* NSString+PKTBase64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+PKTBase64.h"; sourceTree = ""; }; 343 | 5022DC5A1AEA797D00426AB3 /* NSString+PKTBase64.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+PKTBase64.m"; sourceTree = ""; }; 344 | 5022DC5B1AEA797D00426AB3 /* NSString+PKTRandom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+PKTRandom.h"; sourceTree = ""; }; 345 | 5022DC5C1AEA797D00426AB3 /* NSString+PKTRandom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+PKTRandom.m"; sourceTree = ""; }; 346 | 5022DC5D1AEA797D00426AB3 /* NSString+PKTURL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+PKTURL.h"; sourceTree = ""; }; 347 | 5022DC5E1AEA797D00426AB3 /* NSString+PKTURL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+PKTURL.m"; sourceTree = ""; }; 348 | 5022DC5F1AEA797D00426AB3 /* NSString+PKTURLEncode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+PKTURLEncode.h"; sourceTree = ""; }; 349 | 5022DC601AEA797D00426AB3 /* NSURL+PKTAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+PKTAdditions.h"; sourceTree = ""; }; 350 | 5022DC611AEA797D00426AB3 /* NSURL+PKTAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+PKTAdditions.m"; sourceTree = ""; }; 351 | 5022DC621AEA797D00426AB3 /* NSURL+PKTImageURL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+PKTImageURL.h"; sourceTree = ""; }; 352 | 5022DC631AEA797D00426AB3 /* NSURL+PKTImageURL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+PKTImageURL.m"; sourceTree = ""; }; 353 | 5022DC641AEA797D00426AB3 /* NSValueTransformer+PKTConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSValueTransformer+PKTConstants.h"; sourceTree = ""; }; 354 | 5022DC651AEA797D00426AB3 /* NSValueTransformer+PKTConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSValueTransformer+PKTConstants.m"; sourceTree = ""; }; 355 | 5022DC661AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSValueTransformer+PKTTransformers.h"; sourceTree = ""; }; 356 | 5022DC671AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSValueTransformer+PKTTransformers.m"; sourceTree = ""; }; 357 | 5022DC681AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAppFieldTypeValueTransformer.h; sourceTree = ""; }; 358 | 5022DC691AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAppFieldTypeValueTransformer.m; sourceTree = ""; }; 359 | 5022DC6A1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTAvatarTypeValueTransformer.h; sourceTree = ""; }; 360 | 5022DC6B1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTAvatarTypeValueTransformer.m; sourceTree = ""; }; 361 | 5022DC6C1AEA797D00426AB3 /* PKTBlockValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTBlockValueTransformer.h; sourceTree = ""; }; 362 | 5022DC6D1AEA797D00426AB3 /* PKTBlockValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTBlockValueTransformer.m; sourceTree = ""; }; 363 | 5022DC6E1AEA797D00426AB3 /* PKTConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTConstants.h; sourceTree = ""; }; 364 | 5022DC6F1AEA797D00426AB3 /* PKTDateValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDateValueTransformer.h; sourceTree = ""; }; 365 | 5022DC701AEA797D00426AB3 /* PKTDateValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDateValueTransformer.m; sourceTree = ""; }; 366 | 5022DC711AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTDictionaryMappingValueTransformer.h; sourceTree = ""; }; 367 | 5022DC721AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTDictionaryMappingValueTransformer.m; sourceTree = ""; }; 368 | 5022DC731AEA797D00426AB3 /* PKTMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTMacros.h; sourceTree = ""; }; 369 | 5022DC741AEA797D00426AB3 /* PKTModelValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTModelValueTransformer.h; sourceTree = ""; }; 370 | 5022DC751AEA797D00426AB3 /* PKTModelValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTModelValueTransformer.m; sourceTree = ""; }; 371 | 5022DC761AEA797D00426AB3 /* PKTNumberValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTNumberValueTransformer.h; sourceTree = ""; }; 372 | 5022DC771AEA797D00426AB3 /* PKTNumberValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTNumberValueTransformer.m; sourceTree = ""; }; 373 | 5022DC781AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTReferenceTypeValueTransformer.h; sourceTree = ""; }; 374 | 5022DC791AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTReferenceTypeValueTransformer.m; sourceTree = ""; }; 375 | 5022DC7A1AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTReversibleBlockValueTransformer.h; sourceTree = ""; }; 376 | 5022DC7B1AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTReversibleBlockValueTransformer.m; sourceTree = ""; }; 377 | 5022DC7C1AEA797D00426AB3 /* PKTRightValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTRightValueTransformer.h; sourceTree = ""; }; 378 | 5022DC7D1AEA797D00426AB3 /* PKTRightValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTRightValueTransformer.m; sourceTree = ""; }; 379 | 5022DC7E1AEA797D00426AB3 /* PKTURLValueTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTURLValueTransformer.h; sourceTree = ""; }; 380 | 5022DC7F1AEA797D00426AB3 /* PKTURLValueTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTURLValueTransformer.m; sourceTree = ""; }; 381 | 5022DC811AEA797D00426AB3 /* PKTPushClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTPushClient.h; sourceTree = ""; }; 382 | 5022DC821AEA797D00426AB3 /* PKTPushClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTPushClient.m; sourceTree = ""; }; 383 | 5022DC831AEA797D00426AB3 /* PKTPushEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTPushEvent.h; sourceTree = ""; }; 384 | 5022DC841AEA797D00426AB3 /* PKTPushEvent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTPushEvent.m; sourceTree = ""; }; 385 | 5022DC881AEA797D00426AB3 /* PKTFile+UIImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "PKTFile+UIImage.h"; sourceTree = ""; }; 386 | 5022DC891AEA797D00426AB3 /* PKTFile+UIImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "PKTFile+UIImage.m"; sourceTree = ""; }; 387 | 5022DC8A1AEA797D00426AB3 /* PKTImageCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTImageCache.h; sourceTree = ""; }; 388 | 5022DC8B1AEA797D00426AB3 /* PKTImageCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTImageCache.m; sourceTree = ""; }; 389 | 5022DC8C1AEA797D00426AB3 /* PKTImageDownloader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTImageDownloader.h; sourceTree = ""; }; 390 | 5022DC8D1AEA797D00426AB3 /* PKTImageDownloader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTImageDownloader.m; sourceTree = ""; }; 391 | 5022DC8E1AEA797D00426AB3 /* UIButton+PKTRemoteImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIButton+PKTRemoteImage.h"; sourceTree = ""; }; 392 | 5022DC8F1AEA797D00426AB3 /* UIButton+PKTRemoteImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIButton+PKTRemoteImage.m"; sourceTree = ""; }; 393 | 5022DC901AEA797D00426AB3 /* UIImageView+PKTRemoteImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImageView+PKTRemoteImage.h"; sourceTree = ""; }; 394 | 5022DC911AEA797D00426AB3 /* UIImageView+PKTRemoteImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImageView+PKTRemoteImage.m"; sourceTree = ""; }; 395 | 505B96291AED4BF9007EDB42 /* PKTItem+Platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "PKTItem+Platform.h"; path = "PodioPlatformKit/Common/Models/PKTItem+Platform.h"; sourceTree = SOURCE_ROOT; }; 396 | 505B962A1AED4BF9007EDB42 /* PKTItem+Platform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "PKTItem+Platform.m"; path = "PodioPlatformKit/Common/Models/PKTItem+Platform.m"; sourceTree = SOURCE_ROOT; }; 397 | 505B962C1AED4CAD007EDB42 /* PKTItemFilters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTItemFilters.h; sourceTree = ""; }; 398 | 505B962D1AED4CAD007EDB42 /* PKTItemFilters.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTItemFilters.m; sourceTree = ""; }; 399 | 505B96331AED5028007EDB42 /* PKTSpace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PKTSpace.h; sourceTree = ""; }; 400 | 505B96341AED5028007EDB42 /* PKTSpace.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PKTSpace.m; sourceTree = ""; }; 401 | 505B96361AED529A007EDB42 /* PKTComment+Platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "PKTComment+Platform.h"; sourceTree = ""; }; 402 | 505B96371AED529A007EDB42 /* PKTComment+Platform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "PKTComment+Platform.m"; sourceTree = ""; }; 403 | 50F2761C1AE63B1900CA33C7 /* PodioPlatformKitTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PodioPlatformKitTests.m; sourceTree = ""; }; 404 | 5922D88386DF2B43A88B1BB6 /* libPods-PodioPlatformKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-PodioPlatformKit.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 405 | 89C1D0BE53DB514EE04F1149 /* libPods-PodioPlatformKitTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-PodioPlatformKitTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 406 | 99BB32EE99A8DB193A2FF4C8 /* Pods-PodioPlatformKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodioPlatformKit.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PodioPlatformKit/Pods-PodioPlatformKit.debug.xcconfig"; sourceTree = ""; }; 407 | B0D0F9AFC684191AE2A485F2 /* Pods-PodioPlatformKitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodioPlatformKitTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-PodioPlatformKitTests/Pods-PodioPlatformKitTests.release.xcconfig"; sourceTree = ""; }; 408 | FD58F4274F4A31925B97AA49 /* Pods-PodioPlatformKit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodioPlatformKit.release.xcconfig"; path = "Pods/Target Support Files/Pods-PodioPlatformKit/Pods-PodioPlatformKit.release.xcconfig"; sourceTree = ""; }; 409 | /* End PBXFileReference section */ 410 | 411 | /* Begin PBXFrameworksBuildPhase section */ 412 | 501224AB1A90BBA5005BFDA1 /* Frameworks */ = { 413 | isa = PBXFrameworksBuildPhase; 414 | buildActionMask = 2147483647; 415 | files = ( 416 | 5E589DA30EA2F28F1C27C737 /* libPods-PodioPlatformKit.a in Frameworks */, 417 | ); 418 | runOnlyForDeploymentPostprocessing = 0; 419 | }; 420 | 501224B61A90BBA6005BFDA1 /* Frameworks */ = { 421 | isa = PBXFrameworksBuildPhase; 422 | buildActionMask = 2147483647; 423 | files = ( 424 | 501224BA1A90BBA6005BFDA1 /* libPodioPlatformKit.a in Frameworks */, 425 | F754EC857CA51E6276353C7E /* libPods-PodioPlatformKitTests.a in Frameworks */, 426 | ); 427 | runOnlyForDeploymentPostprocessing = 0; 428 | }; 429 | /* End PBXFrameworksBuildPhase section */ 430 | 431 | /* Begin PBXGroup section */ 432 | 501224A51A90BBA5005BFDA1 = { 433 | isa = PBXGroup; 434 | children = ( 435 | 501224B01A90BBA5005BFDA1 /* PodioPlatformKit */, 436 | 501224BD1A90BBA6005BFDA1 /* PodioPlatformKitTests */, 437 | 501224AF1A90BBA5005BFDA1 /* Products */, 438 | 63DF32D009A47907B16FF04E /* Pods */, 439 | D9BADC73FB80238A4B2389C6 /* Frameworks */, 440 | ); 441 | sourceTree = ""; 442 | }; 443 | 501224AF1A90BBA5005BFDA1 /* Products */ = { 444 | isa = PBXGroup; 445 | children = ( 446 | 501224AE1A90BBA5005BFDA1 /* libPodioPlatformKit.a */, 447 | 501224B91A90BBA6005BFDA1 /* PodioPlatformKitTests.xctest */, 448 | ); 449 | name = Products; 450 | sourceTree = ""; 451 | }; 452 | 501224B01A90BBA5005BFDA1 /* PodioPlatformKit */ = { 453 | isa = PBXGroup; 454 | children = ( 455 | 5022DBAF1AEA797C00426AB3 /* PodioKitCore */, 456 | 50F276E01AE6580F00CA33C7 /* Common */, 457 | ); 458 | path = PodioPlatformKit; 459 | sourceTree = ""; 460 | }; 461 | 501224BD1A90BBA6005BFDA1 /* PodioPlatformKitTests */ = { 462 | isa = PBXGroup; 463 | children = ( 464 | 501224BE1A90BBA6005BFDA1 /* Supporting Files */, 465 | 50F2761C1AE63B1900CA33C7 /* PodioPlatformKitTests.m */, 466 | ); 467 | path = PodioPlatformKitTests; 468 | sourceTree = ""; 469 | }; 470 | 501224BE1A90BBA6005BFDA1 /* Supporting Files */ = { 471 | isa = PBXGroup; 472 | children = ( 473 | 501224BF1A90BBA6005BFDA1 /* Info.plist */, 474 | ); 475 | name = "Supporting Files"; 476 | sourceTree = ""; 477 | }; 478 | 5022DBAF1AEA797C00426AB3 /* PodioKitCore */ = { 479 | isa = PBXGroup; 480 | children = ( 481 | 5022DBB01AEA797C00426AB3 /* Common */, 482 | 5022DC801AEA797D00426AB3 /* Push */, 483 | 5022DC871AEA797D00426AB3 /* UIKit */, 484 | ); 485 | name = PodioKitCore; 486 | path = "Vendor/podio-objc-core/PodioKitCore"; 487 | sourceTree = SOURCE_ROOT; 488 | }; 489 | 5022DBB01AEA797C00426AB3 /* Common */ = { 490 | isa = PBXGroup; 491 | children = ( 492 | 5022DBB11AEA797C00426AB3 /* API */, 493 | 5022DBD11AEA797C00426AB3 /* Core */, 494 | 5022DBF11AEA797C00426AB3 /* Models */, 495 | 5022DC3C1AEA797D00426AB3 /* PodioKitCore.h */, 496 | 5022DC3D1AEA797D00426AB3 /* Support */, 497 | ); 498 | path = Common; 499 | sourceTree = ""; 500 | }; 501 | 5022DBB11AEA797C00426AB3 /* API */ = { 502 | isa = PBXGroup; 503 | children = ( 504 | 505B962C1AED4CAD007EDB42 /* PKTItemFilters.h */, 505 | 505B962D1AED4CAD007EDB42 /* PKTItemFilters.m */, 506 | 5022DBB21AEA797C00426AB3 /* PKTAppsAPI.h */, 507 | 5022DBB31AEA797C00426AB3 /* PKTAppsAPI.m */, 508 | 5022DBB41AEA797C00426AB3 /* PKTAuthenticationAPI.h */, 509 | 5022DBB51AEA797C00426AB3 /* PKTAuthenticationAPI.m */, 510 | 5022DBB61AEA797C00426AB3 /* PKTBaseAPI.h */, 511 | 5022DBB71AEA797C00426AB3 /* PKTBaseAPI.m */, 512 | 5022DBB81AEA797C00426AB3 /* PKTCommentsAPI.h */, 513 | 5022DBB91AEA797C00426AB3 /* PKTCommentsAPI.m */, 514 | 5022DBBA1AEA797C00426AB3 /* PKTContactsAPI.h */, 515 | 5022DBBB1AEA797C00426AB3 /* PKTContactsAPI.m */, 516 | 5022DBBC1AEA797C00426AB3 /* PKTEmbedsAPI.h */, 517 | 5022DBBD1AEA797C00426AB3 /* PKTEmbedsAPI.m */, 518 | 5022DBBE1AEA797C00426AB3 /* PKTFilesAPI.h */, 519 | 5022DBBF1AEA797C00426AB3 /* PKTFilesAPI.m */, 520 | 5022DBC01AEA797C00426AB3 /* PKTItemsAPI.h */, 521 | 5022DBC11AEA797C00426AB3 /* PKTItemsAPI.m */, 522 | 5022DBC21AEA797C00426AB3 /* PKTOrganizationsAPI.h */, 523 | 5022DBC31AEA797C00426AB3 /* PKTOrganizationsAPI.m */, 524 | 5022DBC41AEA797C00426AB3 /* PKTReferenceAPI.h */, 525 | 5022DBC51AEA797C00426AB3 /* PKTReferenceAPI.m */, 526 | 5022DBC61AEA797C00426AB3 /* PKTRequestParameters.h */, 527 | 5022DBC71AEA797C00426AB3 /* PKTSearchAPI.h */, 528 | 5022DBC81AEA797C00426AB3 /* PKTSearchAPI.m */, 529 | 5022DBC91AEA797C00426AB3 /* PKTSearchQuery.h */, 530 | 5022DBCA1AEA797C00426AB3 /* PKTSearchQuery.m */, 531 | 5022DBCB1AEA797C00426AB3 /* PKTUsersAPI.h */, 532 | 5022DBCC1AEA797C00426AB3 /* PKTUsersAPI.m */, 533 | 5022DBCD1AEA797C00426AB3 /* PKTWorkspaceMembersAPI.h */, 534 | 5022DBCE1AEA797C00426AB3 /* PKTWorkspaceMembersAPI.m */, 535 | 5022DBCF1AEA797C00426AB3 /* PKTWorkspacesAPI.h */, 536 | 5022DBD01AEA797C00426AB3 /* PKTWorkspacesAPI.m */, 537 | ); 538 | path = API; 539 | sourceTree = ""; 540 | }; 541 | 5022DBD11AEA797C00426AB3 /* Core */ = { 542 | isa = PBXGroup; 543 | children = ( 544 | 5022DBD21AEA797C00426AB3 /* PKTAsyncTask.h */, 545 | 5022DBD31AEA797C00426AB3 /* PKTAsyncTask.m */, 546 | 5022DBD41AEA797C00426AB3 /* PKTClient.h */, 547 | 5022DBD51AEA797C00426AB3 /* PKTClient.m */, 548 | 5022DBD61AEA797C00426AB3 /* PKTDatastore.h */, 549 | 5022DBD71AEA797C00426AB3 /* PKTDatastore.m */, 550 | 5022DBD81AEA797C00426AB3 /* PKTHTTPClient.h */, 551 | 5022DBD91AEA797C00426AB3 /* PKTHTTPClient.m */, 552 | 5022DBDA1AEA797C00426AB3 /* PKTKeychain.h */, 553 | 5022DBDB1AEA797C00426AB3 /* PKTKeychain.m */, 554 | 5022DBDC1AEA797C00426AB3 /* PKTKeychainTokenStore.h */, 555 | 5022DBDD1AEA797C00426AB3 /* PKTKeychainTokenStore.m */, 556 | 5022DBDE1AEA797C00426AB3 /* PKTMultipartFormData.h */, 557 | 5022DBDF1AEA797C00426AB3 /* PKTMultipartFormData.m */, 558 | 5022DBE01AEA797C00426AB3 /* PKTRequest.h */, 559 | 5022DBE11AEA797C00426AB3 /* PKTRequest.m */, 560 | 5022DBE21AEA797C00426AB3 /* PKTRequestFileData.h */, 561 | 5022DBE31AEA797C00426AB3 /* PKTRequestFileData.m */, 562 | 5022DBE41AEA797C00426AB3 /* PKTRequestSerializer.h */, 563 | 5022DBE51AEA797C00426AB3 /* PKTRequestSerializer.m */, 564 | 5022DBE61AEA797C00426AB3 /* PKTResponse.h */, 565 | 5022DBE71AEA797C00426AB3 /* PKTResponse.m */, 566 | 5022DBE81AEA797C00426AB3 /* PKTResponseSerializer.h */, 567 | 5022DBE91AEA797C00426AB3 /* PKTResponseSerializer.m */, 568 | 5022DBEA1AEA797C00426AB3 /* PKTSecurity.h */, 569 | 5022DBEB1AEA797C00426AB3 /* PKTSecurity.m */, 570 | 5022DBEC1AEA797C00426AB3 /* PKTTokenStore.h */, 571 | 5022DBED1AEA797C00426AB3 /* PKTURLSessionTaskDelegate.h */, 572 | 5022DBEE1AEA797C00426AB3 /* PKTURLSessionTaskDelegate.m */, 573 | 5022DBEF1AEA797C00426AB3 /* Podio.h */, 574 | 5022DBF01AEA797C00426AB3 /* Podio.m */, 575 | ); 576 | path = Core; 577 | sourceTree = ""; 578 | }; 579 | 5022DBF11AEA797C00426AB3 /* Models */ = { 580 | isa = PBXGroup; 581 | children = ( 582 | 5022DBF21AEA797C00426AB3 /* PKTApp.h */, 583 | 5022DBF31AEA797C00426AB3 /* PKTApp.m */, 584 | 5022DBF41AEA797C00426AB3 /* PKTAppField.h */, 585 | 5022DBF51AEA797C00426AB3 /* PKTAppField.m */, 586 | 5022DBF61AEA797C00426AB3 /* PKTAppFieldConfig.h */, 587 | 5022DBF71AEA797C00426AB3 /* PKTAppFieldConfig.m */, 588 | 5022DBF81AEA797C00426AB3 /* PKTAppItemFieldValue.h */, 589 | 5022DBF91AEA797C00426AB3 /* PKTAppItemFieldValue.m */, 590 | 5022DBFA1AEA797D00426AB3 /* PKTByLine.h */, 591 | 5022DBFB1AEA797D00426AB3 /* PKTByLine.m */, 592 | 5022DBFC1AEA797D00426AB3 /* PKTCalculationItemFieldValue.h */, 593 | 5022DBFD1AEA797D00426AB3 /* PKTCalculationItemFieldValue.m */, 594 | 5022DBFE1AEA797D00426AB3 /* PKTCategoryItemFieldValue.h */, 595 | 5022DBFF1AEA797D00426AB3 /* PKTCategoryItemFieldValue.m */, 596 | 5022DC001AEA797D00426AB3 /* PKTCategoryOption.h */, 597 | 5022DC011AEA797D00426AB3 /* PKTCategoryOption.m */, 598 | 5022DC021AEA797D00426AB3 /* PKTComment.h */, 599 | 5022DC031AEA797D00426AB3 /* PKTComment.m */, 600 | 5022DC041AEA797D00426AB3 /* PKTDateItemFieldValue.h */, 601 | 5022DC051AEA797D00426AB3 /* PKTDateItemFieldValue.m */, 602 | 5022DC061AEA797D00426AB3 /* PKTDateRange.h */, 603 | 5022DC071AEA797D00426AB3 /* PKTDateRange.m */, 604 | 5022DC081AEA797D00426AB3 /* PKTDuration.h */, 605 | 5022DC091AEA797D00426AB3 /* PKTDuration.m */, 606 | 5022DC0A1AEA797D00426AB3 /* PKTDurationItemFieldValue.h */, 607 | 5022DC0B1AEA797D00426AB3 /* PKTDurationItemFieldValue.m */, 608 | 5022DC0C1AEA797D00426AB3 /* PKTEmbed.h */, 609 | 5022DC0D1AEA797D00426AB3 /* PKTEmbed.m */, 610 | 5022DC0E1AEA797D00426AB3 /* PKTEmbedItemFieldValue.h */, 611 | 5022DC0F1AEA797D00426AB3 /* PKTEmbedItemFieldValue.m */, 612 | 5022DC101AEA797D00426AB3 /* PKTFile.h */, 613 | 5022DC111AEA797D00426AB3 /* PKTFile.m */, 614 | 5022DC121AEA797D00426AB3 /* PKTFileItemFieldValue.h */, 615 | 5022DC131AEA797D00426AB3 /* PKTFileItemFieldValue.m */, 616 | 5022DC141AEA797D00426AB3 /* PKTItem.h */, 617 | 5022DC151AEA797D00426AB3 /* PKTItem.m */, 618 | 5022DC161AEA797D00426AB3 /* PKTItemField.h */, 619 | 5022DC171AEA797D00426AB3 /* PKTItemField.m */, 620 | 5022DC181AEA797D00426AB3 /* PKTItemFieldValue.h */, 621 | 5022DC191AEA797D00426AB3 /* PKTItemFieldValue.m */, 622 | 5022DC1A1AEA797D00426AB3 /* PKTLocation.h */, 623 | 5022DC1B1AEA797D00426AB3 /* PKTLocation.m */, 624 | 5022DC1C1AEA797D00426AB3 /* PKTLocationItemFieldValue.h */, 625 | 5022DC1D1AEA797D00426AB3 /* PKTLocationItemFieldValue.m */, 626 | 5022DC1E1AEA797D00426AB3 /* PKTModel.h */, 627 | 5022DC1F1AEA797D00426AB3 /* PKTModel.m */, 628 | 5022DC201AEA797D00426AB3 /* PKTMoney.h */, 629 | 5022DC211AEA797D00426AB3 /* PKTMoney.m */, 630 | 5022DC221AEA797D00426AB3 /* PKTMoneyItemFieldValue.h */, 631 | 5022DC231AEA797D00426AB3 /* PKTMoneyItemFieldValue.m */, 632 | 5022DC241AEA797D00426AB3 /* PKTNumberItemFieldValue.h */, 633 | 5022DC251AEA797D00426AB3 /* PKTNumberItemFieldValue.m */, 634 | 5022DC261AEA797D00426AB3 /* PKTOAuth2Token.h */, 635 | 5022DC271AEA797D00426AB3 /* PKTOAuth2Token.m */, 636 | 5022DC281AEA797D00426AB3 /* PKTOrganization.h */, 637 | 5022DC291AEA797D00426AB3 /* PKTOrganization.m */, 638 | 5022DC2A1AEA797D00426AB3 /* PKTProfile.h */, 639 | 5022DC2B1AEA797D00426AB3 /* PKTProfile.m */, 640 | 5022DC2C1AEA797D00426AB3 /* PKTProfileItemFieldValue.h */, 641 | 5022DC2D1AEA797D00426AB3 /* PKTProfileItemFieldValue.m */, 642 | 5022DC2E1AEA797D00426AB3 /* PKTProgressItemFieldValue.h */, 643 | 5022DC2F1AEA797D00426AB3 /* PKTProgressItemFieldValue.m */, 644 | 5022DC301AEA797D00426AB3 /* PKTPushCredential.h */, 645 | 5022DC311AEA797D00426AB3 /* PKTPushCredential.m */, 646 | 5022DC321AEA797D00426AB3 /* PKTReferenceIdentifier.h */, 647 | 5022DC331AEA797D00426AB3 /* PKTReferenceIdentifier.m */, 648 | 5022DC341AEA797D00426AB3 /* PKTStringItemFieldValue.h */, 649 | 5022DC351AEA797D00426AB3 /* PKTStringItemFieldValue.m */, 650 | 5022DC361AEA797D00426AB3 /* PKTUser.h */, 651 | 5022DC371AEA797D00426AB3 /* PKTUser.m */, 652 | 5022DC381AEA797D00426AB3 /* PKTUserStatus.h */, 653 | 5022DC391AEA797D00426AB3 /* PKTUserStatus.m */, 654 | 5022DC3A1AEA797D00426AB3 /* PKTWorkspace.h */, 655 | 5022DC3B1AEA797D00426AB3 /* PKTWorkspace.m */, 656 | ); 657 | path = Models; 658 | sourceTree = ""; 659 | }; 660 | 5022DC3D1AEA797D00426AB3 /* Support */ = { 661 | isa = PBXGroup; 662 | children = ( 663 | 5022DC3E1AEA797D00426AB3 /* NSArray+PKTAdditions.h */, 664 | 5022DC3F1AEA797D00426AB3 /* NSArray+PKTAdditions.m */, 665 | 5022DC401AEA797D00426AB3 /* NSDate+PKTAdditions.h */, 666 | 5022DC411AEA797D00426AB3 /* NSDate+PKTAdditions.m */, 667 | 5022DC421AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.h */, 668 | 5022DC431AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.m */, 669 | 5022DC441AEA797D00426AB3 /* NSDictionary+PKTAdditions.h */, 670 | 5022DC451AEA797D00426AB3 /* NSDictionary+PKTAdditions.m */, 671 | 5022DC461AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.h */, 672 | 5022DC471AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.m */, 673 | 5022DC481AEA797D00426AB3 /* NSError+PKTErrors.h */, 674 | 5022DC491AEA797D00426AB3 /* NSError+PKTErrors.m */, 675 | 5022DC4A1AEA797D00426AB3 /* NSFileManager+PKTAdditions.h */, 676 | 5022DC4B1AEA797D00426AB3 /* NSFileManager+PKTAdditions.m */, 677 | 5022DC4C1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.h */, 678 | 5022DC4D1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.m */, 679 | 5022DC4E1AEA797D00426AB3 /* NSNumber+PKTAdditions.h */, 680 | 5022DC4F1AEA797D00426AB3 /* NSNumber+PKTAdditions.m */, 681 | 5022DC501AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.h */, 682 | 5022DC511AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.m */, 683 | 5022DC521AEA797D00426AB3 /* NSObject+PKTIntrospection.h */, 684 | 5022DC531AEA797D00426AB3 /* NSObject+PKTIntrospection.m */, 685 | 5022DC541AEA797D00426AB3 /* NSSet+PKTAdditions.h */, 686 | 5022DC551AEA797D00426AB3 /* NSSet+PKTAdditions.m */, 687 | 5022DC561AEA797D00426AB3 /* NSString+ PKTURLEncode.m */, 688 | 5022DC571AEA797D00426AB3 /* NSString+PKTAdditions.h */, 689 | 5022DC581AEA797D00426AB3 /* NSString+PKTAdditions.m */, 690 | 5022DC591AEA797D00426AB3 /* NSString+PKTBase64.h */, 691 | 5022DC5A1AEA797D00426AB3 /* NSString+PKTBase64.m */, 692 | 5022DC5B1AEA797D00426AB3 /* NSString+PKTRandom.h */, 693 | 5022DC5C1AEA797D00426AB3 /* NSString+PKTRandom.m */, 694 | 5022DC5D1AEA797D00426AB3 /* NSString+PKTURL.h */, 695 | 5022DC5E1AEA797D00426AB3 /* NSString+PKTURL.m */, 696 | 5022DC5F1AEA797D00426AB3 /* NSString+PKTURLEncode.h */, 697 | 5022DC601AEA797D00426AB3 /* NSURL+PKTAdditions.h */, 698 | 5022DC611AEA797D00426AB3 /* NSURL+PKTAdditions.m */, 699 | 5022DC621AEA797D00426AB3 /* NSURL+PKTImageURL.h */, 700 | 5022DC631AEA797D00426AB3 /* NSURL+PKTImageURL.m */, 701 | 5022DC641AEA797D00426AB3 /* NSValueTransformer+PKTConstants.h */, 702 | 5022DC651AEA797D00426AB3 /* NSValueTransformer+PKTConstants.m */, 703 | 5022DC661AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.h */, 704 | 5022DC671AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.m */, 705 | 5022DC681AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.h */, 706 | 5022DC691AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.m */, 707 | 5022DC6A1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.h */, 708 | 5022DC6B1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.m */, 709 | 5022DC6C1AEA797D00426AB3 /* PKTBlockValueTransformer.h */, 710 | 5022DC6D1AEA797D00426AB3 /* PKTBlockValueTransformer.m */, 711 | 5022DC6E1AEA797D00426AB3 /* PKTConstants.h */, 712 | 5022DC6F1AEA797D00426AB3 /* PKTDateValueTransformer.h */, 713 | 5022DC701AEA797D00426AB3 /* PKTDateValueTransformer.m */, 714 | 5022DC711AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.h */, 715 | 5022DC721AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.m */, 716 | 5022DC731AEA797D00426AB3 /* PKTMacros.h */, 717 | 5022DC741AEA797D00426AB3 /* PKTModelValueTransformer.h */, 718 | 5022DC751AEA797D00426AB3 /* PKTModelValueTransformer.m */, 719 | 5022DC761AEA797D00426AB3 /* PKTNumberValueTransformer.h */, 720 | 5022DC771AEA797D00426AB3 /* PKTNumberValueTransformer.m */, 721 | 5022DC781AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.h */, 722 | 5022DC791AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.m */, 723 | 5022DC7A1AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.h */, 724 | 5022DC7B1AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.m */, 725 | 5022DC7C1AEA797D00426AB3 /* PKTRightValueTransformer.h */, 726 | 5022DC7D1AEA797D00426AB3 /* PKTRightValueTransformer.m */, 727 | 5022DC7E1AEA797D00426AB3 /* PKTURLValueTransformer.h */, 728 | 5022DC7F1AEA797D00426AB3 /* PKTURLValueTransformer.m */, 729 | ); 730 | path = Support; 731 | sourceTree = ""; 732 | }; 733 | 5022DC801AEA797D00426AB3 /* Push */ = { 734 | isa = PBXGroup; 735 | children = ( 736 | 5022DC811AEA797D00426AB3 /* PKTPushClient.h */, 737 | 5022DC821AEA797D00426AB3 /* PKTPushClient.m */, 738 | 5022DC831AEA797D00426AB3 /* PKTPushEvent.h */, 739 | 5022DC841AEA797D00426AB3 /* PKTPushEvent.m */, 740 | ); 741 | path = Push; 742 | sourceTree = ""; 743 | }; 744 | 5022DC871AEA797D00426AB3 /* UIKit */ = { 745 | isa = PBXGroup; 746 | children = ( 747 | 5022DC881AEA797D00426AB3 /* PKTFile+UIImage.h */, 748 | 5022DC891AEA797D00426AB3 /* PKTFile+UIImage.m */, 749 | 5022DC8A1AEA797D00426AB3 /* PKTImageCache.h */, 750 | 5022DC8B1AEA797D00426AB3 /* PKTImageCache.m */, 751 | 5022DC8C1AEA797D00426AB3 /* PKTImageDownloader.h */, 752 | 5022DC8D1AEA797D00426AB3 /* PKTImageDownloader.m */, 753 | 5022DC8E1AEA797D00426AB3 /* UIButton+PKTRemoteImage.h */, 754 | 5022DC8F1AEA797D00426AB3 /* UIButton+PKTRemoteImage.m */, 755 | 5022DC901AEA797D00426AB3 /* UIImageView+PKTRemoteImage.h */, 756 | 5022DC911AEA797D00426AB3 /* UIImageView+PKTRemoteImage.m */, 757 | ); 758 | path = UIKit; 759 | sourceTree = ""; 760 | }; 761 | 505B96321AED4DDD007EDB42 /* Models */ = { 762 | isa = PBXGroup; 763 | children = ( 764 | 505B96331AED5028007EDB42 /* PKTSpace.h */, 765 | 505B96341AED5028007EDB42 /* PKTSpace.m */, 766 | 505B96291AED4BF9007EDB42 /* PKTItem+Platform.h */, 767 | 505B962A1AED4BF9007EDB42 /* PKTItem+Platform.m */, 768 | 505B96361AED529A007EDB42 /* PKTComment+Platform.h */, 769 | 505B96371AED529A007EDB42 /* PKTComment+Platform.m */, 770 | ); 771 | path = Models; 772 | sourceTree = ""; 773 | }; 774 | 50F276E01AE6580F00CA33C7 /* Common */ = { 775 | isa = PBXGroup; 776 | children = ( 777 | 501224B11A90BBA5005BFDA1 /* PodioPlatformKit.h */, 778 | 505B96321AED4DDD007EDB42 /* Models */, 779 | ); 780 | path = Common; 781 | sourceTree = ""; 782 | }; 783 | 63DF32D009A47907B16FF04E /* Pods */ = { 784 | isa = PBXGroup; 785 | children = ( 786 | 99BB32EE99A8DB193A2FF4C8 /* Pods-PodioPlatformKit.debug.xcconfig */, 787 | FD58F4274F4A31925B97AA49 /* Pods-PodioPlatformKit.release.xcconfig */, 788 | 23E560BC807100A42DCCAABF /* Pods-PodioPlatformKitTests.debug.xcconfig */, 789 | B0D0F9AFC684191AE2A485F2 /* Pods-PodioPlatformKitTests.release.xcconfig */, 790 | ); 791 | name = Pods; 792 | sourceTree = ""; 793 | }; 794 | D9BADC73FB80238A4B2389C6 /* Frameworks */ = { 795 | isa = PBXGroup; 796 | children = ( 797 | 5922D88386DF2B43A88B1BB6 /* libPods-PodioPlatformKit.a */, 798 | 89C1D0BE53DB514EE04F1149 /* libPods-PodioPlatformKitTests.a */, 799 | ); 800 | name = Frameworks; 801 | sourceTree = ""; 802 | }; 803 | /* End PBXGroup section */ 804 | 805 | /* Begin PBXNativeTarget section */ 806 | 501224AD1A90BBA5005BFDA1 /* PodioPlatformKit */ = { 807 | isa = PBXNativeTarget; 808 | buildConfigurationList = 501224C21A90BBA6005BFDA1 /* Build configuration list for PBXNativeTarget "PodioPlatformKit" */; 809 | buildPhases = ( 810 | B8AE385C52406F929C1BB572 /* Check Pods Manifest.lock */, 811 | 501224AA1A90BBA5005BFDA1 /* Sources */, 812 | 501224AB1A90BBA5005BFDA1 /* Frameworks */, 813 | 501224AC1A90BBA5005BFDA1 /* CopyFiles */, 814 | 501224D61A90D79F005BFDA1 /* Prepare Framework */, 815 | 155B92BB7EEFD0B8A1310D7C /* Copy Pods Resources */, 816 | ); 817 | buildRules = ( 818 | ); 819 | dependencies = ( 820 | ); 821 | name = PodioPlatformKit; 822 | productName = PodioPlatformKit; 823 | productReference = 501224AE1A90BBA5005BFDA1 /* libPodioPlatformKit.a */; 824 | productType = "com.apple.product-type.library.static"; 825 | }; 826 | 501224B81A90BBA6005BFDA1 /* PodioPlatformKitTests */ = { 827 | isa = PBXNativeTarget; 828 | buildConfigurationList = 501224C51A90BBA6005BFDA1 /* Build configuration list for PBXNativeTarget "PodioPlatformKitTests" */; 829 | buildPhases = ( 830 | DB186B5B65FC61BEA2B10843 /* Check Pods Manifest.lock */, 831 | 501224B51A90BBA6005BFDA1 /* Sources */, 832 | 501224B61A90BBA6005BFDA1 /* Frameworks */, 833 | 501224B71A90BBA6005BFDA1 /* Resources */, 834 | 960849BF4179DA6F3F2FE225 /* Copy Pods Resources */, 835 | ); 836 | buildRules = ( 837 | ); 838 | dependencies = ( 839 | 501224BC1A90BBA6005BFDA1 /* PBXTargetDependency */, 840 | ); 841 | name = PodioPlatformKitTests; 842 | productName = PodioPlatformKitTests; 843 | productReference = 501224B91A90BBA6005BFDA1 /* PodioPlatformKitTests.xctest */; 844 | productType = "com.apple.product-type.bundle.unit-test"; 845 | }; 846 | /* End PBXNativeTarget section */ 847 | 848 | /* Begin PBXProject section */ 849 | 501224A61A90BBA5005BFDA1 /* Project object */ = { 850 | isa = PBXProject; 851 | attributes = { 852 | LastUpgradeCheck = 0610; 853 | ORGANIZATIONNAME = "Citrix Systems, Inc."; 854 | TargetAttributes = { 855 | 501224AD1A90BBA5005BFDA1 = { 856 | CreatedOnToolsVersion = 6.1.1; 857 | }; 858 | 501224B81A90BBA6005BFDA1 = { 859 | CreatedOnToolsVersion = 6.1.1; 860 | }; 861 | 501224DD1A9120B5005BFDA1 = { 862 | CreatedOnToolsVersion = 6.1.1; 863 | }; 864 | }; 865 | }; 866 | buildConfigurationList = 501224A91A90BBA5005BFDA1 /* Build configuration list for PBXProject "PodioPlatformKit" */; 867 | compatibilityVersion = "Xcode 3.2"; 868 | developmentRegion = English; 869 | hasScannedForEncodings = 0; 870 | knownRegions = ( 871 | en, 872 | ); 873 | mainGroup = 501224A51A90BBA5005BFDA1; 874 | productRefGroup = 501224AF1A90BBA5005BFDA1 /* Products */; 875 | projectDirPath = ""; 876 | projectRoot = ""; 877 | targets = ( 878 | 501224AD1A90BBA5005BFDA1 /* PodioPlatformKit */, 879 | 501224B81A90BBA6005BFDA1 /* PodioPlatformKitTests */, 880 | 501224DD1A9120B5005BFDA1 /* Framework */, 881 | ); 882 | }; 883 | /* End PBXProject section */ 884 | 885 | /* Begin PBXResourcesBuildPhase section */ 886 | 501224B71A90BBA6005BFDA1 /* Resources */ = { 887 | isa = PBXResourcesBuildPhase; 888 | buildActionMask = 2147483647; 889 | files = ( 890 | ); 891 | runOnlyForDeploymentPostprocessing = 0; 892 | }; 893 | /* End PBXResourcesBuildPhase section */ 894 | 895 | /* Begin PBXShellScriptBuildPhase section */ 896 | 155B92BB7EEFD0B8A1310D7C /* Copy Pods Resources */ = { 897 | isa = PBXShellScriptBuildPhase; 898 | buildActionMask = 2147483647; 899 | files = ( 900 | ); 901 | inputPaths = ( 902 | ); 903 | name = "Copy Pods Resources"; 904 | outputPaths = ( 905 | ); 906 | runOnlyForDeploymentPostprocessing = 0; 907 | shellPath = /bin/sh; 908 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PodioPlatformKit/Pods-PodioPlatformKit-resources.sh\"\n"; 909 | showEnvVarsInLog = 0; 910 | }; 911 | 501224D61A90D79F005BFDA1 /* Prepare Framework */ = { 912 | isa = PBXShellScriptBuildPhase; 913 | buildActionMask = 2147483647; 914 | files = ( 915 | ); 916 | inputPaths = ( 917 | ); 918 | name = "Prepare Framework"; 919 | outputPaths = ( 920 | ); 921 | runOnlyForDeploymentPostprocessing = 0; 922 | shellPath = /bin/sh; 923 | shellScript = ./Scripts/prepare_framework.sh; 924 | }; 925 | 501224E31A9120CF005BFDA1 /* Build Framework */ = { 926 | isa = PBXShellScriptBuildPhase; 927 | buildActionMask = 2147483647; 928 | files = ( 929 | ); 930 | inputPaths = ( 931 | ); 932 | name = "Build Framework"; 933 | outputPaths = ( 934 | ); 935 | runOnlyForDeploymentPostprocessing = 0; 936 | shellPath = /bin/sh; 937 | shellScript = ./Scripts/build_framework.sh; 938 | }; 939 | 960849BF4179DA6F3F2FE225 /* Copy Pods Resources */ = { 940 | isa = PBXShellScriptBuildPhase; 941 | buildActionMask = 2147483647; 942 | files = ( 943 | ); 944 | inputPaths = ( 945 | ); 946 | name = "Copy Pods Resources"; 947 | outputPaths = ( 948 | ); 949 | runOnlyForDeploymentPostprocessing = 0; 950 | shellPath = /bin/sh; 951 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PodioPlatformKitTests/Pods-PodioPlatformKitTests-resources.sh\"\n"; 952 | showEnvVarsInLog = 0; 953 | }; 954 | B8AE385C52406F929C1BB572 /* Check Pods Manifest.lock */ = { 955 | isa = PBXShellScriptBuildPhase; 956 | buildActionMask = 2147483647; 957 | files = ( 958 | ); 959 | inputPaths = ( 960 | ); 961 | name = "Check Pods Manifest.lock"; 962 | outputPaths = ( 963 | ); 964 | runOnlyForDeploymentPostprocessing = 0; 965 | shellPath = /bin/sh; 966 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 967 | showEnvVarsInLog = 0; 968 | }; 969 | DB186B5B65FC61BEA2B10843 /* Check Pods Manifest.lock */ = { 970 | isa = PBXShellScriptBuildPhase; 971 | buildActionMask = 2147483647; 972 | files = ( 973 | ); 974 | inputPaths = ( 975 | ); 976 | name = "Check Pods Manifest.lock"; 977 | outputPaths = ( 978 | ); 979 | runOnlyForDeploymentPostprocessing = 0; 980 | shellPath = /bin/sh; 981 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 982 | showEnvVarsInLog = 0; 983 | }; 984 | /* End PBXShellScriptBuildPhase section */ 985 | 986 | /* Begin PBXSourcesBuildPhase section */ 987 | 501224AA1A90BBA5005BFDA1 /* Sources */ = { 988 | isa = PBXSourcesBuildPhase; 989 | buildActionMask = 2147483647; 990 | files = ( 991 | 5022DC931AEA797D00426AB3 /* PKTAuthenticationAPI.m in Sources */, 992 | 5022DCB31AEA797D00426AB3 /* PKTAppItemFieldValue.m in Sources */, 993 | 5022DCDB1AEA797D00426AB3 /* NSFileManager+PKTAdditions.m in Sources */, 994 | 5022DCB81AEA797D00426AB3 /* PKTComment.m in Sources */, 995 | 5022DCDA1AEA797D00426AB3 /* NSError+PKTErrors.m in Sources */, 996 | 5022DCF41AEA797D00426AB3 /* PKTURLValueTransformer.m in Sources */, 997 | 5022DCE21AEA797D00426AB3 /* NSString+PKTAdditions.m in Sources */, 998 | 5022DCE81AEA797D00426AB3 /* NSValueTransformer+PKTConstants.m in Sources */, 999 | 5022DC941AEA797D00426AB3 /* PKTBaseAPI.m in Sources */, 1000 | 5022DCE91AEA797D00426AB3 /* NSValueTransformer+PKTTransformers.m in Sources */, 1001 | 505B96351AED5028007EDB42 /* PKTSpace.m in Sources */, 1002 | 5022DCC91AEA797D00426AB3 /* PKTNumberItemFieldValue.m in Sources */, 1003 | 5022DCD91AEA797D00426AB3 /* NSDictionary+PKTQueryParameters.m in Sources */, 1004 | 5022DCF51AEA797D00426AB3 /* PKTPushClient.m in Sources */, 1005 | 5022DCD71AEA797D00426AB3 /* NSDateFormatter+PKTAdditions.m in Sources */, 1006 | 5022DCAE1AEA797D00426AB3 /* PKTURLSessionTaskDelegate.m in Sources */, 1007 | 5022DCAF1AEA797D00426AB3 /* Podio.m in Sources */, 1008 | 5022DCC41AEA797D00426AB3 /* PKTLocation.m in Sources */, 1009 | 5022DC9D1AEA797D00426AB3 /* PKTSearchQuery.m in Sources */, 1010 | 5022DC981AEA797D00426AB3 /* PKTFilesAPI.m in Sources */, 1011 | 5022DCD11AEA797D00426AB3 /* PKTStringItemFieldValue.m in Sources */, 1012 | 5022DCB51AEA797D00426AB3 /* PKTCalculationItemFieldValue.m in Sources */, 1013 | 5022DCD31AEA797D00426AB3 /* PKTUserStatus.m in Sources */, 1014 | 5022DCD41AEA797D00426AB3 /* PKTWorkspace.m in Sources */, 1015 | 5022DCEC1AEA797D00426AB3 /* PKTBlockValueTransformer.m in Sources */, 1016 | 5022DCAB1AEA797D00426AB3 /* PKTResponse.m in Sources */, 1017 | 5022DC991AEA797D00426AB3 /* PKTItemsAPI.m in Sources */, 1018 | 5022DCBC1AEA797D00426AB3 /* PKTDurationItemFieldValue.m in Sources */, 1019 | 5022DCB61AEA797D00426AB3 /* PKTCategoryItemFieldValue.m in Sources */, 1020 | 5022DCA31AEA797D00426AB3 /* PKTDatastore.m in Sources */, 1021 | 5022DCA81AEA797D00426AB3 /* PKTRequest.m in Sources */, 1022 | 5022DCF31AEA797D00426AB3 /* PKTRightValueTransformer.m in Sources */, 1023 | 5022DCA01AEA797D00426AB3 /* PKTWorkspacesAPI.m in Sources */, 1024 | 5022DCE31AEA797D00426AB3 /* NSString+PKTBase64.m in Sources */, 1025 | 5022DCB91AEA797D00426AB3 /* PKTDateItemFieldValue.m in Sources */, 1026 | 505B96381AED529A007EDB42 /* PKTComment+Platform.m in Sources */, 1027 | 5022DCE71AEA797D00426AB3 /* NSURL+PKTImageURL.m in Sources */, 1028 | 5022DCFB1AEA797D00426AB3 /* UIButton+PKTRemoteImage.m in Sources */, 1029 | 5022DC9C1AEA797D00426AB3 /* PKTSearchAPI.m in Sources */, 1030 | 5022DCF11AEA797D00426AB3 /* PKTReferenceTypeValueTransformer.m in Sources */, 1031 | 5022DC951AEA797D00426AB3 /* PKTCommentsAPI.m in Sources */, 1032 | 5022DCCA1AEA797D00426AB3 /* PKTOAuth2Token.m in Sources */, 1033 | 5022DCEA1AEA797D00426AB3 /* PKTAppFieldTypeValueTransformer.m in Sources */, 1034 | 5022DCD01AEA797D00426AB3 /* PKTReferenceIdentifier.m in Sources */, 1035 | 505B962E1AED4CAD007EDB42 /* PKTItemFilters.m in Sources */, 1036 | 5022DCDC1AEA797D00426AB3 /* NSMutableURLRequest+PKTHeaders.m in Sources */, 1037 | 5022DCCE1AEA797D00426AB3 /* PKTProgressItemFieldValue.m in Sources */, 1038 | 5022DC9E1AEA797D00426AB3 /* PKTUsersAPI.m in Sources */, 1039 | 5022DCC81AEA797D00426AB3 /* PKTMoneyItemFieldValue.m in Sources */, 1040 | 5022DCED1AEA797D00426AB3 /* PKTDateValueTransformer.m in Sources */, 1041 | 5022DCA11AEA797D00426AB3 /* PKTAsyncTask.m in Sources */, 1042 | 5022DCF91AEA797D00426AB3 /* PKTImageCache.m in Sources */, 1043 | 5022DCC51AEA797D00426AB3 /* PKTLocationItemFieldValue.m in Sources */, 1044 | 5022DC921AEA797D00426AB3 /* PKTAppsAPI.m in Sources */, 1045 | 5022DCDD1AEA797D00426AB3 /* NSNumber+PKTAdditions.m in Sources */, 1046 | 5022DCE11AEA797D00426AB3 /* NSString+ PKTURLEncode.m in Sources */, 1047 | 5022DCA71AEA797D00426AB3 /* PKTMultipartFormData.m in Sources */, 1048 | 5022DCFA1AEA797D00426AB3 /* PKTImageDownloader.m in Sources */, 1049 | 5022DCD61AEA797D00426AB3 /* NSDate+PKTAdditions.m in Sources */, 1050 | 5022DCC21AEA797D00426AB3 /* PKTItemField.m in Sources */, 1051 | 5022DCCD1AEA797D00426AB3 /* PKTProfileItemFieldValue.m in Sources */, 1052 | 5022DCE41AEA797D00426AB3 /* NSString+PKTRandom.m in Sources */, 1053 | 5022DCA41AEA797D00426AB3 /* PKTHTTPClient.m in Sources */, 1054 | 5022DCF81AEA797D00426AB3 /* PKTFile+UIImage.m in Sources */, 1055 | 5022DCB21AEA797D00426AB3 /* PKTAppFieldConfig.m in Sources */, 1056 | 5022DCC61AEA797D00426AB3 /* PKTModel.m in Sources */, 1057 | 5022DCCF1AEA797D00426AB3 /* PKTPushCredential.m in Sources */, 1058 | 5022DCB71AEA797D00426AB3 /* PKTCategoryOption.m in Sources */, 1059 | 5022DC971AEA797D00426AB3 /* PKTEmbedsAPI.m in Sources */, 1060 | 5022DC9A1AEA797D00426AB3 /* PKTOrganizationsAPI.m in Sources */, 1061 | 5022DCEF1AEA797D00426AB3 /* PKTModelValueTransformer.m in Sources */, 1062 | 5022DCD51AEA797D00426AB3 /* NSArray+PKTAdditions.m in Sources */, 1063 | 5022DCC71AEA797D00426AB3 /* PKTMoney.m in Sources */, 1064 | 5022DCBA1AEA797D00426AB3 /* PKTDateRange.m in Sources */, 1065 | 5022DCDE1AEA797D00426AB3 /* NSNumberFormatter+PKTAdditions.m in Sources */, 1066 | 5022DCA91AEA797D00426AB3 /* PKTRequestFileData.m in Sources */, 1067 | 5022DCFC1AEA797D00426AB3 /* UIImageView+PKTRemoteImage.m in Sources */, 1068 | 5022DC9B1AEA797D00426AB3 /* PKTReferenceAPI.m in Sources */, 1069 | 5022DCDF1AEA797D00426AB3 /* NSObject+PKTIntrospection.m in Sources */, 1070 | 5022DCAC1AEA797D00426AB3 /* PKTResponseSerializer.m in Sources */, 1071 | 5022DCA21AEA797D00426AB3 /* PKTClient.m in Sources */, 1072 | 5022DCF21AEA797D00426AB3 /* PKTReversibleBlockValueTransformer.m in Sources */, 1073 | 5022DCD81AEA797D00426AB3 /* NSDictionary+PKTAdditions.m in Sources */, 1074 | 5022DCC01AEA797D00426AB3 /* PKTFileItemFieldValue.m in Sources */, 1075 | 5022DCE01AEA797D00426AB3 /* NSSet+PKTAdditions.m in Sources */, 1076 | 5022DCC11AEA797D00426AB3 /* PKTItem.m in Sources */, 1077 | 5022DCBD1AEA797D00426AB3 /* PKTEmbed.m in Sources */, 1078 | 5022DCCB1AEA797D00426AB3 /* PKTOrganization.m in Sources */, 1079 | 505B962B1AED4BF9007EDB42 /* PKTItem+Platform.m in Sources */, 1080 | 5022DCEB1AEA797D00426AB3 /* PKTAvatarTypeValueTransformer.m in Sources */, 1081 | 5022DCCC1AEA797D00426AB3 /* PKTProfile.m in Sources */, 1082 | 5022DCAA1AEA797D00426AB3 /* PKTRequestSerializer.m in Sources */, 1083 | 5022DCB01AEA797D00426AB3 /* PKTApp.m in Sources */, 1084 | 5022DCAD1AEA797D00426AB3 /* PKTSecurity.m in Sources */, 1085 | 5022DCBF1AEA797D00426AB3 /* PKTFile.m in Sources */, 1086 | 5022DCE51AEA797D00426AB3 /* NSString+PKTURL.m in Sources */, 1087 | 5022DC9F1AEA797D00426AB3 /* PKTWorkspaceMembersAPI.m in Sources */, 1088 | 5022DCEE1AEA797D00426AB3 /* PKTDictionaryMappingValueTransformer.m in Sources */, 1089 | 5022DCF01AEA797D00426AB3 /* PKTNumberValueTransformer.m in Sources */, 1090 | 5022DCB11AEA797D00426AB3 /* PKTAppField.m in Sources */, 1091 | 5022DCC31AEA797D00426AB3 /* PKTItemFieldValue.m in Sources */, 1092 | 5022DC961AEA797D00426AB3 /* PKTContactsAPI.m in Sources */, 1093 | 5022DCB41AEA797D00426AB3 /* PKTByLine.m in Sources */, 1094 | 5022DCD21AEA797D00426AB3 /* PKTUser.m in Sources */, 1095 | 5022DCBB1AEA797D00426AB3 /* PKTDuration.m in Sources */, 1096 | 5022DCBE1AEA797D00426AB3 /* PKTEmbedItemFieldValue.m in Sources */, 1097 | 5022DCE61AEA797D00426AB3 /* NSURL+PKTAdditions.m in Sources */, 1098 | 5022DCA51AEA797D00426AB3 /* PKTKeychain.m in Sources */, 1099 | 5022DCA61AEA797D00426AB3 /* PKTKeychainTokenStore.m in Sources */, 1100 | 5022DCF61AEA797D00426AB3 /* PKTPushEvent.m in Sources */, 1101 | ); 1102 | runOnlyForDeploymentPostprocessing = 0; 1103 | }; 1104 | 501224B51A90BBA6005BFDA1 /* Sources */ = { 1105 | isa = PBXSourcesBuildPhase; 1106 | buildActionMask = 2147483647; 1107 | files = ( 1108 | 50F2761D1AE63B1900CA33C7 /* PodioPlatformKitTests.m in Sources */, 1109 | ); 1110 | runOnlyForDeploymentPostprocessing = 0; 1111 | }; 1112 | /* End PBXSourcesBuildPhase section */ 1113 | 1114 | /* Begin PBXTargetDependency section */ 1115 | 501224BC1A90BBA6005BFDA1 /* PBXTargetDependency */ = { 1116 | isa = PBXTargetDependency; 1117 | target = 501224AD1A90BBA5005BFDA1 /* PodioPlatformKit */; 1118 | targetProxy = 501224BB1A90BBA6005BFDA1 /* PBXContainerItemProxy */; 1119 | }; 1120 | 501224E21A9120BC005BFDA1 /* PBXTargetDependency */ = { 1121 | isa = PBXTargetDependency; 1122 | target = 501224AD1A90BBA5005BFDA1 /* PodioPlatformKit */; 1123 | targetProxy = 501224E11A9120BC005BFDA1 /* PBXContainerItemProxy */; 1124 | }; 1125 | /* End PBXTargetDependency section */ 1126 | 1127 | /* Begin XCBuildConfiguration section */ 1128 | 501224C01A90BBA6005BFDA1 /* Debug */ = { 1129 | isa = XCBuildConfiguration; 1130 | buildSettings = { 1131 | ALWAYS_SEARCH_USER_PATHS = NO; 1132 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 1133 | CLANG_CXX_LIBRARY = "libc++"; 1134 | CLANG_ENABLE_MODULES = YES; 1135 | CLANG_ENABLE_OBJC_ARC = YES; 1136 | CLANG_WARN_BOOL_CONVERSION = YES; 1137 | CLANG_WARN_CONSTANT_CONVERSION = YES; 1138 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 1139 | CLANG_WARN_EMPTY_BODY = YES; 1140 | CLANG_WARN_ENUM_CONVERSION = YES; 1141 | CLANG_WARN_INT_CONVERSION = YES; 1142 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 1143 | CLANG_WARN_UNREACHABLE_CODE = YES; 1144 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 1145 | COPY_PHASE_STRIP = NO; 1146 | ENABLE_STRICT_OBJC_MSGSEND = YES; 1147 | GCC_C_LANGUAGE_STANDARD = gnu99; 1148 | GCC_DYNAMIC_NO_PIC = NO; 1149 | GCC_OPTIMIZATION_LEVEL = 0; 1150 | GCC_PREPROCESSOR_DEFINITIONS = ( 1151 | "DEBUG=1", 1152 | "$(inherited)", 1153 | ); 1154 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 1155 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 1156 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 1157 | GCC_WARN_UNDECLARED_SELECTOR = YES; 1158 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 1159 | GCC_WARN_UNUSED_FUNCTION = YES; 1160 | GCC_WARN_UNUSED_VARIABLE = YES; 1161 | IPHONEOS_DEPLOYMENT_TARGET = 8.1; 1162 | MTL_ENABLE_DEBUG_INFO = YES; 1163 | SDKROOT = iphoneos; 1164 | }; 1165 | name = Debug; 1166 | }; 1167 | 501224C11A90BBA6005BFDA1 /* Release */ = { 1168 | isa = XCBuildConfiguration; 1169 | buildSettings = { 1170 | ALWAYS_SEARCH_USER_PATHS = NO; 1171 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 1172 | CLANG_CXX_LIBRARY = "libc++"; 1173 | CLANG_ENABLE_MODULES = YES; 1174 | CLANG_ENABLE_OBJC_ARC = YES; 1175 | CLANG_WARN_BOOL_CONVERSION = YES; 1176 | CLANG_WARN_CONSTANT_CONVERSION = YES; 1177 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 1178 | CLANG_WARN_EMPTY_BODY = YES; 1179 | CLANG_WARN_ENUM_CONVERSION = YES; 1180 | CLANG_WARN_INT_CONVERSION = YES; 1181 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 1182 | CLANG_WARN_UNREACHABLE_CODE = YES; 1183 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 1184 | COPY_PHASE_STRIP = YES; 1185 | ENABLE_NS_ASSERTIONS = NO; 1186 | ENABLE_STRICT_OBJC_MSGSEND = YES; 1187 | GCC_C_LANGUAGE_STANDARD = gnu99; 1188 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 1189 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 1190 | GCC_WARN_UNDECLARED_SELECTOR = YES; 1191 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 1192 | GCC_WARN_UNUSED_FUNCTION = YES; 1193 | GCC_WARN_UNUSED_VARIABLE = YES; 1194 | IPHONEOS_DEPLOYMENT_TARGET = 8.1; 1195 | MTL_ENABLE_DEBUG_INFO = NO; 1196 | SDKROOT = iphoneos; 1197 | VALIDATE_PRODUCT = YES; 1198 | }; 1199 | name = Release; 1200 | }; 1201 | 501224C31A90BBA6005BFDA1 /* Debug */ = { 1202 | isa = XCBuildConfiguration; 1203 | baseConfigurationReference = 99BB32EE99A8DB193A2FF4C8 /* Pods-PodioPlatformKit.debug.xcconfig */; 1204 | buildSettings = { 1205 | COPY_PHASE_STRIP = NO; 1206 | DEAD_CODE_STRIPPING = NO; 1207 | PRODUCT_NAME = "$(TARGET_NAME)"; 1208 | PUBLIC_HEADERS_FOLDER_PATH = "include/$(PROJECT_NAME)"; 1209 | SKIP_INSTALL = YES; 1210 | STRIP_STYLE = "non-global"; 1211 | }; 1212 | name = Debug; 1213 | }; 1214 | 501224C41A90BBA6005BFDA1 /* Release */ = { 1215 | isa = XCBuildConfiguration; 1216 | baseConfigurationReference = FD58F4274F4A31925B97AA49 /* Pods-PodioPlatformKit.release.xcconfig */; 1217 | buildSettings = { 1218 | COPY_PHASE_STRIP = NO; 1219 | DEAD_CODE_STRIPPING = NO; 1220 | PRODUCT_NAME = "$(TARGET_NAME)"; 1221 | PUBLIC_HEADERS_FOLDER_PATH = "include/$(PROJECT_NAME)"; 1222 | SKIP_INSTALL = YES; 1223 | STRIP_STYLE = "non-global"; 1224 | }; 1225 | name = Release; 1226 | }; 1227 | 501224C61A90BBA6005BFDA1 /* Debug */ = { 1228 | isa = XCBuildConfiguration; 1229 | baseConfigurationReference = 23E560BC807100A42DCCAABF /* Pods-PodioPlatformKitTests.debug.xcconfig */; 1230 | buildSettings = { 1231 | FRAMEWORK_SEARCH_PATHS = ( 1232 | "$(SDKROOT)/Developer/Library/Frameworks", 1233 | "$(inherited)", 1234 | ); 1235 | GCC_PREPROCESSOR_DEFINITIONS = ( 1236 | "DEBUG=1", 1237 | "$(inherited)", 1238 | ); 1239 | INFOPLIST_FILE = PodioPlatformKitTests/Info.plist; 1240 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 1241 | PRODUCT_NAME = "$(TARGET_NAME)"; 1242 | }; 1243 | name = Debug; 1244 | }; 1245 | 501224C71A90BBA6005BFDA1 /* Release */ = { 1246 | isa = XCBuildConfiguration; 1247 | baseConfigurationReference = B0D0F9AFC684191AE2A485F2 /* Pods-PodioPlatformKitTests.release.xcconfig */; 1248 | buildSettings = { 1249 | FRAMEWORK_SEARCH_PATHS = ( 1250 | "$(SDKROOT)/Developer/Library/Frameworks", 1251 | "$(inherited)", 1252 | ); 1253 | INFOPLIST_FILE = PodioPlatformKitTests/Info.plist; 1254 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 1255 | PRODUCT_NAME = "$(TARGET_NAME)"; 1256 | }; 1257 | name = Release; 1258 | }; 1259 | 501224DF1A9120B5005BFDA1 /* Debug */ = { 1260 | isa = XCBuildConfiguration; 1261 | buildSettings = { 1262 | PRODUCT_NAME = "$(TARGET_NAME)"; 1263 | }; 1264 | name = Debug; 1265 | }; 1266 | 501224E01A9120B5005BFDA1 /* Release */ = { 1267 | isa = XCBuildConfiguration; 1268 | buildSettings = { 1269 | PRODUCT_NAME = "$(TARGET_NAME)"; 1270 | }; 1271 | name = Release; 1272 | }; 1273 | /* End XCBuildConfiguration section */ 1274 | 1275 | /* Begin XCConfigurationList section */ 1276 | 501224A91A90BBA5005BFDA1 /* Build configuration list for PBXProject "PodioPlatformKit" */ = { 1277 | isa = XCConfigurationList; 1278 | buildConfigurations = ( 1279 | 501224C01A90BBA6005BFDA1 /* Debug */, 1280 | 501224C11A90BBA6005BFDA1 /* Release */, 1281 | ); 1282 | defaultConfigurationIsVisible = 0; 1283 | defaultConfigurationName = Release; 1284 | }; 1285 | 501224C21A90BBA6005BFDA1 /* Build configuration list for PBXNativeTarget "PodioPlatformKit" */ = { 1286 | isa = XCConfigurationList; 1287 | buildConfigurations = ( 1288 | 501224C31A90BBA6005BFDA1 /* Debug */, 1289 | 501224C41A90BBA6005BFDA1 /* Release */, 1290 | ); 1291 | defaultConfigurationIsVisible = 0; 1292 | defaultConfigurationName = Release; 1293 | }; 1294 | 501224C51A90BBA6005BFDA1 /* Build configuration list for PBXNativeTarget "PodioPlatformKitTests" */ = { 1295 | isa = XCConfigurationList; 1296 | buildConfigurations = ( 1297 | 501224C61A90BBA6005BFDA1 /* Debug */, 1298 | 501224C71A90BBA6005BFDA1 /* Release */, 1299 | ); 1300 | defaultConfigurationIsVisible = 0; 1301 | defaultConfigurationName = Release; 1302 | }; 1303 | 501224DE1A9120B5005BFDA1 /* Build configuration list for PBXAggregateTarget "Framework" */ = { 1304 | isa = XCConfigurationList; 1305 | buildConfigurations = ( 1306 | 501224DF1A9120B5005BFDA1 /* Debug */, 1307 | 501224E01A9120B5005BFDA1 /* Release */, 1308 | ); 1309 | defaultConfigurationIsVisible = 0; 1310 | defaultConfigurationName = Release; 1311 | }; 1312 | /* End XCConfigurationList section */ 1313 | }; 1314 | rootObject = 501224A61A90BBA5005BFDA1 /* Project object */; 1315 | } 1316 | --------------------------------------------------------------------------------